barsa-sap-ui 0.0.6 → 0.0.7
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/esm2020/lib/apply-conditional-formmatings.directive.mjs +1 -1
- package/esm2020/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +2 -2
- package/esm2020/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +1 -1
- package/esm2020/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +4 -4
- package/esm2020/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +14 -14
- package/esm2020/lib/barsa-network-offline/barsa-network-offline.component.mjs +20 -12
- package/esm2020/lib/barsa-sap-ui-routing.module.mjs +1 -1
- package/esm2020/lib/barsa-sap-ui.module.mjs +25 -16
- package/esm2020/lib/barsa-search-form/barsa-search-form.component.mjs +3 -3
- package/esm2020/lib/barsa-table-header/barsa-table-header.component.mjs +4 -4
- package/esm2020/lib/barsa-table-row/barsa-table-row.component.mjs +3 -3
- package/esm2020/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +6 -6
- package/esm2020/lib/barsa-tree-item/barsa-tree-item.component.mjs +23 -12
- package/esm2020/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +8 -7
- package/esm2020/lib/blob-viewer/blob-viewer.component.mjs +60 -0
- package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2020/lib/captcha-field/captcha-field.component.mjs +1 -1
- package/esm2020/lib/card-item/card-item.component.mjs +4 -4
- package/esm2020/lib/card-view-content/card-view-content.component.mjs +3 -3
- package/esm2020/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +3 -3
- package/esm2020/lib/column-matrix-renderer/matrix-value.pipe.mjs +1 -1
- package/esm2020/lib/column-renderer/column-renderer.component.mjs +6 -5
- package/esm2020/lib/constants.mjs +1 -1
- package/esm2020/lib/custom-date-time/custom-date-time.component.mjs +1 -1
- package/esm2020/lib/device-info-field-base.mjs +1 -1
- package/esm2020/lib/download-files.directive.mjs +33 -0
- package/esm2020/lib/empty-page/empty-page.component.mjs +3 -3
- package/esm2020/lib/file-in-dialog/file-in-dialog.component.mjs +1 -1
- package/esm2020/lib/file-viewer/file-viewer.component.mjs +47 -0
- package/esm2020/lib/file-viewer-content/file-viewer-content.component.mjs +49 -0
- package/esm2020/lib/file-viewer-popover/file-viewer-popover.component.mjs +34 -0
- package/esm2020/lib/form-dialog/form-dialog.component.mjs +3 -3
- package/esm2020/lib/form-dialog-less/form-dialog-less.component.mjs +1 -1
- package/esm2020/lib/form-page/form-page.component.mjs +17 -17
- package/esm2020/lib/form-page-base.mjs +1 -1
- package/esm2020/lib/form-toolbar-button/form-toolbar-button.component.mjs +3 -3
- package/esm2020/lib/form-wizard/form-wizard.component.mjs +3 -3
- package/esm2020/lib/fullscreen-dialog.directive.mjs +1 -1
- package/esm2020/lib/fullscreen-files.directive.mjs +39 -0
- package/esm2020/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +3 -3
- package/esm2020/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +1 -1
- package/esm2020/lib/global-search/global-search.component.mjs +1 -1
- package/esm2020/lib/global-search-module/global-search-module.component.mjs +1 -1
- package/esm2020/lib/global-search-panel/global-search-panel.component.mjs +1 -1
- package/esm2020/lib/header-avatar/header-avatar.component.mjs +1 -1
- package/esm2020/lib/header-facet-form/header-facet-form.component.mjs +1 -1
- package/esm2020/lib/header-facet-key-value/header-facet-key-value.component.mjs +1 -1
- package/esm2020/lib/header-facet-microchart/header-facet-microchart.component.mjs +3 -3
- package/esm2020/lib/header-facet-plain-text/header-facet-plain-text.component.mjs +3 -3
- package/esm2020/lib/header-facet-rate/header-facet-rate.component.mjs +1 -1
- package/esm2020/lib/hyperlink/hyperlink.component.mjs +1 -1
- package/esm2020/lib/index.mjs +18 -3
- package/esm2020/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +1 -1
- package/esm2020/lib/layout-actions/layout-actions.component.mjs +1 -1
- package/esm2020/lib/layout-control/layout-control.component.mjs +4 -4
- package/esm2020/lib/layout-wizard/layout-wizard.component.mjs +25 -3
- package/esm2020/lib/list-item/list-item.component.mjs +3 -3
- package/esm2020/lib/ly-empty-space/ly-empty-space.component.mjs +5 -7
- package/esm2020/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +8 -7
- package/esm2020/lib/ly-layout-container/ly-layout-container.component.mjs +3 -3
- package/esm2020/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +3 -3
- package/esm2020/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +1 -1
- package/esm2020/lib/ly-layout-panel/ly-layout-panel.component.mjs +9 -3
- package/esm2020/lib/ly-line/ly-line.component.mjs +1 -1
- package/esm2020/lib/ly-simple-label/ly-simple-label.component.mjs +6 -10
- package/esm2020/lib/ly-tab-container/ly-tab-container.component.mjs +7 -3
- package/esm2020/lib/ly-tab-page/ly-tab-page.component.mjs +3 -3
- package/esm2020/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +8 -7
- package/esm2020/lib/mask/mask.component.mjs +3 -3
- package/esm2020/lib/message-strip/message-strip.component.mjs +1 -1
- package/esm2020/lib/models/grid-data-provider.mjs +2 -2
- package/esm2020/lib/models/grid-view.mjs +1 -1
- package/esm2020/lib/no-data/no-data.component.mjs +3 -3
- package/esm2020/lib/page-with-form-handler-base.mjs +1 -1
- package/esm2020/lib/page-with-header/page-with-header.component.mjs +1 -1
- package/esm2020/lib/progress-indicator/progress-indicator.component.mjs +1 -1
- package/esm2020/lib/report-navigator/report-navigator.component.mjs +3 -3
- package/esm2020/lib/report-new-top-form/report-new-top-form.component.mjs +3 -3
- package/esm2020/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +3 -3
- package/esm2020/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +3 -3
- package/esm2020/lib/report-tree-base.mjs +4 -1
- package/esm2020/lib/report-view-renderer.directive.mjs +32 -2
- package/esm2020/lib/responsive-toolbar/responsive-toolbar.component.mjs +1 -1
- package/esm2020/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +1 -1
- package/esm2020/lib/rich-text-static/rich-text-static.component.mjs +1 -1
- package/esm2020/lib/sap-ui-report-base.component.mjs +87 -64
- package/esm2020/lib/search-panel/search-panel.component.mjs +1 -1
- package/esm2020/lib/static-text/static-text.component.mjs +3 -3
- package/esm2020/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +3 -3
- package/esm2020/lib/ui-button/ui-button.component.mjs +3 -3
- package/esm2020/lib/ui-calendar/ui-calendar.component.mjs +3 -3
- package/esm2020/lib/ui-card-view/ui-card-view.component.mjs +3 -3
- package/esm2020/lib/ui-check-box/ui-check-box.component.mjs +3 -3
- package/esm2020/lib/ui-color-ui/ui-color-ui.component.mjs +1 -1
- package/esm2020/lib/ui-container-with-button/ui-container-with-button.component.mjs +3 -3
- package/esm2020/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +3 -3
- package/esm2020/lib/ui-date-time/ui-date-time.component.mjs +3 -3
- package/esm2020/lib/ui-editable-grid/ui-editable-grid.component.mjs +3 -3
- package/esm2020/lib/ui-exception-form/ui-exception-form.component.mjs +1 -1
- package/esm2020/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +29 -90
- package/esm2020/lib/ui-form-panel/ui-form-panel.component.mjs +3 -3
- package/esm2020/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +3 -3
- package/esm2020/lib/ui-graph/ui-graph.component.mjs +1 -1
- package/esm2020/lib/ui-grid/ui-grid.component.mjs +3 -3
- package/esm2020/lib/ui-grid-columns/ui-grid-columns.component.mjs +3 -3
- package/esm2020/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +1 -1
- package/esm2020/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +1 -1
- package/esm2020/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +1 -1
- package/esm2020/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +1 -1
- package/esm2020/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +1 -1
- package/esm2020/lib/ui-label/ui-label.component.mjs +3 -3
- package/esm2020/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +2 -2
- package/esm2020/lib/ui-list-view/ui-list-view.component.mjs +4 -3
- package/esm2020/lib/ui-matrix-view/ui-matrix-view.component.mjs +3 -3
- package/esm2020/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +3 -3
- package/esm2020/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +1 -1
- package/esm2020/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +3 -3
- package/esm2020/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +19 -14
- package/esm2020/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +3 -3
- package/esm2020/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +26 -9
- package/esm2020/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +1 -1
- package/esm2020/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +3 -3
- package/esm2020/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +19 -20
- package/esm2020/lib/ui-picture-file/ui-picture-file.component.mjs +26 -30
- package/esm2020/lib/ui-pictures-info/ui-pictures-info.component.mjs +39 -31
- package/esm2020/lib/ui-radio-group/ui-radio-group.component.mjs +3 -3
- package/esm2020/lib/ui-read-only-field/ui-read-only-field.component.mjs +3 -3
- package/esm2020/lib/ui-report-container/ui-report-container.component.mjs +3 -3
- package/esm2020/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +1 -1
- package/esm2020/lib/ui-simple-combo/ui-simple-combo.component.mjs +3 -3
- package/esm2020/lib/ui-single-picture/ui-single-picture.component.mjs +1 -1
- package/esm2020/lib/ui-switch-button/ui-switch-button.component.mjs +3 -3
- package/esm2020/lib/ui-table-view/ui-table-view.component.mjs +8 -3
- package/esm2020/lib/ui-text-area/ui-text-area.component.mjs +3 -3
- package/esm2020/lib/ui-text-field/ui-text-field.component.mjs +1 -1
- package/esm2020/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +3 -3
- package/esm2020/lib/ui-time-span/ui-time-span.component.mjs +1 -1
- package/esm2020/lib/ui-tinymce/ui-tinymce.component.mjs +1 -1
- package/esm2020/lib/ui-tree/ui-tree.component.mjs +26 -3
- package/esm2020/lib/ui-tree-view/ui-tree-view.component.mjs +9 -3
- package/esm2020/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +2 -2
- package/esm2020/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +6 -3
- package/esm2020/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +1 -1
- package/esm2020/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +7 -2
- package/esm2020/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +3 -3
- package/esm2020/lib/ul-notify-popup/ul-notify-popup.component.mjs +1 -1
- package/esm2020/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +1 -1
- package/esm2020/lib/ulv-column-settings/ulv-column-settings.component.mjs +3 -3
- package/esm2020/lib/ulv-context-menu/ulv-context-menu.component.mjs +3 -3
- package/esm2020/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +3 -3
- package/esm2020/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +5 -5
- package/esm2020/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +3 -3
- package/esm2020/lib/ulv-paging/ulv-paging.component.mjs +1 -1
- package/esm2020/lib/ulv-selection/ulv-selection.component.mjs +2 -2
- package/esm2020/lib/ulv-settings/ulv-settings.component.mjs +1 -1
- package/esm2020/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +3 -3
- package/esm2020/lib/ulv-toolbar/ulv-toolbar.component.mjs +11 -5
- package/esm2020/lib/wizard-layout.directive.mjs +1 -1
- package/esm2020/public-api.mjs +7 -1
- package/fesm2015/barsa-sap-ui.mjs +888 -542
- package/fesm2015/barsa-sap-ui.mjs.map +1 -1
- package/fesm2020/barsa-sap-ui.mjs +879 -541
- package/fesm2020/barsa-sap-ui.mjs.map +1 -1
- package/lib/barsa-network-offline/barsa-network-offline.component.d.ts +3 -2
- package/lib/barsa-sap-ui.module.d.ts +31 -25
- package/lib/barsa-tree-item/barsa-tree-item.component.d.ts +7 -1
- package/lib/barsa-ulv-main/barsa-ulv-main.component.d.ts +3 -1
- package/lib/blob-viewer/blob-viewer.component.d.ts +20 -0
- package/lib/download-files.directive.d.ts +9 -0
- package/lib/file-viewer/file-viewer.component.d.ts +21 -0
- package/lib/file-viewer-content/file-viewer-content.component.d.ts +18 -0
- package/lib/file-viewer-popover/file-viewer-popover.component.d.ts +13 -0
- package/lib/fullscreen-files.directive.d.ts +15 -0
- package/lib/index.d.ts +8 -4
- package/lib/layout-control/layout-control.component.d.ts +5 -5
- package/lib/layout-wizard/layout-wizard.component.d.ts +1 -0
- package/lib/ly-empty-space/ly-empty-space.component.d.ts +1 -3
- package/lib/ly-horizontal-layout/ly-horizontal-layout.component.d.ts +4 -3
- package/lib/ly-simple-label/ly-simple-label.component.d.ts +1 -3
- package/lib/ly-tab-container/ly-tab-container.component.d.ts +3 -1
- package/lib/ly-vertical-layout/ly-vertical-layout.component.d.ts +4 -3
- package/lib/report-tree-base.d.ts +2 -1
- package/lib/report-view-renderer.directive.d.ts +10 -1
- package/lib/sap-ui-report-base.component.d.ts +13 -4
- package/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.d.ts +15 -18
- package/lib/ui-multi-select-combo/ui-multi-select-combo.component.d.ts +9 -3
- package/lib/ui-pdf-viewer/ui-pdf-viewer.component.d.ts +5 -6
- package/lib/ui-picture-file/ui-picture-file.component.d.ts +4 -6
- package/lib/ui-pictures-info/ui-pictures-info.component.d.ts +8 -7
- package/lib/ui-table-view/ui-table-view.component.d.ts +1 -0
- package/lib/ui-tree/ui-tree.component.d.ts +5 -0
- package/lib/ui-tree-view/ui-tree-view.component.d.ts +7 -1
- package/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.d.ts +2 -1
- package/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.d.ts +2 -1
- package/lib/ulv-toolbar/ulv-toolbar.component.d.ts +4 -1
- package/package.json +1 -1
- package/public-api.d.ts +6 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject
|
|
3
|
-
import {
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { takeUntil } from 'rxjs/operators';
|
|
4
4
|
import { FileUploaderComponent } from '@fundamental-ngx/core';
|
|
5
|
-
import {
|
|
5
|
+
import { UploadService, FilesValidationHelper, getValidExtension, LinearListHelper } from 'barsa-novin-ray-core';
|
|
6
6
|
import { DeviceInfoFieldBaseComponent } from '../device-info-field-base';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "@angular/common";
|
|
@@ -20,7 +20,6 @@ import * as i12 from "../upload-file-status.pipe";
|
|
|
20
20
|
export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
21
21
|
constructor() {
|
|
22
22
|
super(...arguments);
|
|
23
|
-
this.valueExtra = {};
|
|
24
23
|
this.validExtension = '';
|
|
25
24
|
this.loading = false;
|
|
26
25
|
this._fileCountSource = new BehaviorSubject(0);
|
|
@@ -30,18 +29,28 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
|
30
29
|
this.context.on({
|
|
31
30
|
ShowUploadWindow: this._showUploadWindow.bind(this)
|
|
32
31
|
});
|
|
33
|
-
this.
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
this._filesValidationHelper = new FilesValidationHelper(this.Setting.MaxFileCount, this.Setting.MaxFileSizeKb, this.Setting.MaxTotalFileSizeKb);
|
|
33
|
+
this._linearHelper = new LinearListHelper(this._uploadService, this._filesValidationHelper, this.Setting.FieldDefId);
|
|
34
|
+
this.valueExtra$ = this._linearHelper.valueExtra$;
|
|
35
|
+
this._linearHelper.loading$.pipe(takeUntil(this._onDestroy$)).subscribe((loading) => this._setLoading(loading));
|
|
36
|
+
this._linearHelper.delete$.pipe(takeUntil(this._onDestroy$)).subscribe((fileAttachment) => {
|
|
37
|
+
this._deleteFileAttachment(fileAttachment);
|
|
38
|
+
});
|
|
39
|
+
this._linearHelper.newFileUploaded$.pipe(takeUntil(this._onDestroy$)).subscribe((fileAttachment) => {
|
|
40
|
+
this._newFileUploaded(fileAttachment);
|
|
41
|
+
});
|
|
42
|
+
this.value &&
|
|
43
|
+
this.value.forEach((c) => {
|
|
44
|
+
this._linearHelper.init(c);
|
|
45
|
+
});
|
|
37
46
|
if (!this.Setting.IsMultiSelect) {
|
|
38
|
-
this.
|
|
47
|
+
this._filesValidationHelper.maxFileCount = 1;
|
|
39
48
|
}
|
|
40
|
-
this.maxFileCount = this.
|
|
49
|
+
this.maxFileCount = this._filesValidationHelper.maxFileCount;
|
|
41
50
|
this.validExtension = getValidExtension(this.Setting.ValidExtensions);
|
|
42
51
|
}
|
|
43
52
|
ngOnDestroy() {
|
|
44
|
-
this.valueExtra = {};
|
|
53
|
+
// this.valueExtra = {};
|
|
45
54
|
this.context.un('ShowUploadWindow', this._showUploadWindow);
|
|
46
55
|
super.ngOnDestroy();
|
|
47
56
|
}
|
|
@@ -59,14 +68,17 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
|
59
68
|
}
|
|
60
69
|
onTerminate(fileAttachment) {
|
|
61
70
|
this.fireContextEvent('CommandRequest', this.context, 'Delete', fileAttachment.Id);
|
|
62
|
-
this.
|
|
71
|
+
this._linearHelper.cancel(fileAttachment);
|
|
63
72
|
}
|
|
64
73
|
onFileSelection(files) {
|
|
65
|
-
this.
|
|
74
|
+
this._linearHelper.uploadToServer(files);
|
|
66
75
|
}
|
|
67
76
|
trackById(file, index) {
|
|
68
77
|
return file ? file.Id : index;
|
|
69
78
|
}
|
|
79
|
+
retry(fileAttachment) {
|
|
80
|
+
this._linearHelper.retry(fileAttachment);
|
|
81
|
+
}
|
|
70
82
|
_setValue(value) {
|
|
71
83
|
super._setValue(value);
|
|
72
84
|
this._setFileCount(value);
|
|
@@ -74,30 +86,6 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
|
74
86
|
_showUploadWindow() {
|
|
75
87
|
this.fileUploadComponent.open();
|
|
76
88
|
}
|
|
77
|
-
_getFileValueExtra(fileId) {
|
|
78
|
-
const fileValueExtra = this.valueExtra[fileId];
|
|
79
|
-
if (!fileValueExtra) {
|
|
80
|
-
this.valueExtra[fileId] = {};
|
|
81
|
-
}
|
|
82
|
-
return this.valueExtra[fileId];
|
|
83
|
-
}
|
|
84
|
-
_setIconAndImage(fileAttachment) {
|
|
85
|
-
const fileType = fileAttachment.Type;
|
|
86
|
-
const fileId = fileAttachment.Id;
|
|
87
|
-
const fileValueExtra = this._getFileValueExtra(fileId);
|
|
88
|
-
if (fileAttachment.IsNew && !fileValueExtra.UploadState) {
|
|
89
|
-
fileValueExtra.FileUrl = 'document';
|
|
90
|
-
fileValueExtra.IsIcon = true;
|
|
91
|
-
}
|
|
92
|
-
else if (isImage(fileType)) {
|
|
93
|
-
fileValueExtra.FileUrl = getImagePath('ID', '', fileId);
|
|
94
|
-
fileValueExtra.IsIcon = false;
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
fileValueExtra.FileUrl = getIcon(fileType);
|
|
98
|
-
fileValueExtra.IsIcon = true;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
89
|
_fileDelete(id) {
|
|
102
90
|
const fileAttachment = this.value.find((c) => c.Id === id);
|
|
103
91
|
if (fileAttachment) {
|
|
@@ -107,60 +95,11 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
|
107
95
|
_deleteFileAttachment(fileAttachment) {
|
|
108
96
|
this.fireContextEvent('CommandRequest', this.context, 'Delete', fileAttachment.Id);
|
|
109
97
|
}
|
|
110
|
-
_uploadToServer(selectedFiles) {
|
|
111
|
-
this.filesValidationHelper
|
|
112
|
-
.validateFiles(selectedFiles)
|
|
113
|
-
.pipe(takeUntil(this._onDestroy$), filter((files) => files.length > 0), tap(() => this._setLoading(true)), map((files) => files.map((c) => this._createFileAttachment(c))), mergeMap((files) => forkJoin(files.map((file) => this.uploadFile(file)))), finalize(() => {
|
|
114
|
-
this._setLoading(false);
|
|
115
|
-
}))
|
|
116
|
-
.subscribe();
|
|
117
|
-
}
|
|
118
98
|
_setLoading(loading) {
|
|
119
99
|
this.loading = loading;
|
|
120
100
|
this._cdr.markForCheck();
|
|
121
101
|
}
|
|
122
|
-
|
|
123
|
-
const id = getUniqueId(4);
|
|
124
|
-
const temp = file.name.split('.');
|
|
125
|
-
const ext = temp[temp.length - 1];
|
|
126
|
-
const newFileAttachment = {
|
|
127
|
-
FileName: file.name,
|
|
128
|
-
Id: id,
|
|
129
|
-
FileId: id,
|
|
130
|
-
IsDeleted: false,
|
|
131
|
-
IsNew: true,
|
|
132
|
-
Type: ext
|
|
133
|
-
};
|
|
134
|
-
this._setIconAndImage(newFileAttachment);
|
|
135
|
-
const fileValueExtra = this.valueExtra[newFileAttachment.Id];
|
|
136
|
-
fileValueExtra.UploadState = 'Ready';
|
|
137
|
-
fileValueExtra.binary = file;
|
|
138
|
-
fileValueExtra.cancelation$ = new Subject();
|
|
139
|
-
return newFileAttachment;
|
|
140
|
-
}
|
|
141
|
-
uploadFile(fileAttachment) {
|
|
142
|
-
const formData = new FormData();
|
|
143
|
-
formData.append('unicFileName', 'x' + BarsaApi.Common.Util.GetNewMetaGuid() + ';;;' + fileAttachment.FileName);
|
|
144
|
-
formData.append('file', this.valueExtra[fileAttachment.Id].binary);
|
|
145
|
-
return this._uploadService.upload(formData, this.Setting.FieldDefId).pipe(tap((res) => {
|
|
146
|
-
if (Array.isArray(res)) {
|
|
147
|
-
this._updateValue(fileAttachment, res);
|
|
148
|
-
}
|
|
149
|
-
}));
|
|
150
|
-
}
|
|
151
|
-
_updateValue(fileAttachment, res) {
|
|
152
|
-
this._deleteFileAttachment(fileAttachment);
|
|
153
|
-
const id = res[0].FileId;
|
|
154
|
-
const newFileAttachment = {
|
|
155
|
-
...fileAttachment,
|
|
156
|
-
Id: id,
|
|
157
|
-
FileId: id,
|
|
158
|
-
FileName: res[0].FileName,
|
|
159
|
-
IsDeleted: false
|
|
160
|
-
};
|
|
161
|
-
const fileValueExtra = this._getFileValueExtra(id);
|
|
162
|
-
fileValueExtra.binary = null;
|
|
163
|
-
this._setIconAndImage(newFileAttachment);
|
|
102
|
+
_newFileUploaded(newFileAttachment) {
|
|
164
103
|
this.fireContextEvent('CommandRequest', this.context, 'FileUpload', newFileAttachment);
|
|
165
104
|
}
|
|
166
105
|
_setFileCount(value) {
|
|
@@ -168,14 +107,14 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
|
|
|
168
107
|
}
|
|
169
108
|
}
|
|
170
109
|
UiFileLinearListBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFileLinearListBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
171
|
-
UiFileLinearListBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFileLinearListBoxComponent, selector: "bsu-ui-file-linear-list-box", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"value\">\n <div class=\"token-container\">\n <div class=\"token-wrapper\">\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\n <fd-popover *ngIf=\"!file.IsDeleted\">\n <fd-popover-control>\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\n >{{ file.FileName }}\n <ng-container *ngIf=\"file.IsNew\">\n <span\n
|
|
110
|
+
UiFileLinearListBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFileLinearListBoxComponent, selector: "bsu-ui-file-linear-list-box", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"value\">\r\n <div class=\"token-container\">\r\n <div class=\"token-wrapper\">\r\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\r\n <fd-popover *ngIf=\"!file.IsDeleted\">\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n <ng-container *ngIf=\"file.IsNew\">\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <span\r\n *ngIf=\"valueExtra[file.Id].UploadState !== 'Complete'\"\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n <fd-object-number\r\n *ngIf=\"valueExtra[file.Id].Progress\"\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n <ng-container *ngIf=\"valueExtra[file.Id].UploadState === 'Uploading'\">\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <ul\r\n fd-list\r\n *ngIf=\"\r\n valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete'\r\n \"\r\n >\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </ng-container>\r\n <div style=\"display: flex\">\r\n <div style=\"position: relative; width: 3rem\" *ngIf=\"loading\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n <fd-file-uploader\r\n *ngIf=\"value | canUploadFile: maxFileCount:(disable$ | async)!!:(readonly$ | async)!!\"\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i3.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i4.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i4.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i4.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i4.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "class", "role"] }, { kind: "directive", type: i4.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i5.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i6.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }, { kind: "component", type: i7.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i7.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i7.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "component", type: i9.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly", "deleteButtonLabel", "ariaRoleDescription"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown"] }, { kind: "component", type: i10.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.CanUploadFilePipe, name: "canUploadFile" }, { kind: "pipe", type: i11.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i12.UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
172
111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFileLinearListBoxComponent, decorators: [{
|
|
173
112
|
type: Component,
|
|
174
|
-
args: [{ selector: 'bsu-ui-file-linear-list-box', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"value\">\n <div class=\"token-container\">\n <div class=\"token-wrapper\">\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\n <fd-popover *ngIf=\"!file.IsDeleted\">\n <fd-popover-control>\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\n >{{ file.FileName }}\n <ng-container *ngIf=\"file.IsNew\">\n <span\n
|
|
113
|
+
args: [{ selector: 'bsu-ui-file-linear-list-box', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"value\">\r\n <div class=\"token-container\">\r\n <div class=\"token-wrapper\">\r\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\r\n <fd-popover *ngIf=\"!file.IsDeleted\">\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n <ng-container *ngIf=\"file.IsNew\">\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <span\r\n *ngIf=\"valueExtra[file.Id].UploadState !== 'Complete'\"\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n <fd-object-number\r\n *ngIf=\"valueExtra[file.Id].Progress\"\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n <ng-container *ngIf=\"valueExtra[file.Id].UploadState === 'Uploading'\">\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <ul\r\n fd-list\r\n *ngIf=\"\r\n valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete'\r\n \"\r\n >\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </ng-container>\r\n <div style=\"display: flex\">\r\n <div style=\"position: relative; width: 3rem\" *ngIf=\"loading\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n <fd-file-uploader\r\n *ngIf=\"value | canUploadFile: maxFileCount:(disable$ | async)!!:(readonly$ | async)!!\"\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"] }]
|
|
175
114
|
}], propDecorators: { fileUploadComponent: [{
|
|
176
115
|
type: ViewChild,
|
|
177
116
|
args: [FileUploaderComponent, { static: false }]
|
|
178
117
|
}], value: [{
|
|
179
118
|
type: Input
|
|
180
119
|
}] } });
|
|
181
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFDSCxRQUFRLEVBQ1IsWUFBWSxFQUNaLFdBQVcsRUFDWCxhQUFhLEVBQ2IscUJBQXFCLEVBRXJCLE9BQU8sRUFDUCxPQUFPLEVBQ1AsaUJBQWlCLEVBQ3BCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBZ0J6RSxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsNEJBQTRCO0lBUDlFOztRQVlJLGVBQVUsR0FBdUMsRUFBRSxDQUFDO1FBR3BELG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBR3BCLFlBQU8sR0FBRyxLQUFLLENBQUM7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QUFFLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDUyxhQUFhLENBQUMsS0FBSztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pFLENBQUM7O3lIQTdLUSw0QkFBNEI7NkdBQTVCLDRCQUE0QixrRkFIMUIsQ0FBQyxhQUFhLENBQUMsK0VBSWYscUJBQXFCLHVFQ2pDcEMsNi9IQXlFQTsyRkR6Q2EsNEJBQTRCO2tCQVB4QyxTQUFTOytCQUNJLDZCQUE2QixhQUc1QixDQUFDLGFBQWEsQ0FBQyxtQkFDVCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUdNLG1CQUFtQjtzQkFBdkUsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQzFDLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIGZvcmtKb2luIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpbmFsaXplLCBtYXAsIG1lcmdlTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBGaWxlVXBsb2FkZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQge1xuICAgIEJhcnNhQXBpLFxuICAgIGdldEltYWdlUGF0aCxcbiAgICBnZXRVbmlxdWVJZCxcbiAgICBVcGxvYWRTZXJ2aWNlLFxuICAgIEZpbGVzVmFsaWRhdGlvbkhlbHBlcixcbiAgICBGaWxlQXR0YWNobWVudEluZm8sXG4gICAgaXNJbWFnZSxcbiAgICBnZXRJY29uLFxuICAgIGdldFZhbGlkRXh0ZW5zaW9uXG59IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IERldmljZUluZm9GaWVsZEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9kZXZpY2UtaW5mby1maWVsZC1iYXNlJztcbmludGVyZmFjZSBVcGxvYWRGaWxlUHJvcHMge1xuICAgIEZpbGVVcmw/OiBzdHJpbmc7XG4gICAgY2FuY2VsYXRpb24kPzogU3ViamVjdDx2b2lkPjtcbiAgICBiaW5hcnk/OiBhbnk7XG4gICAgVXBsb2FkU3RhdGU/OiBzdHJpbmc7XG4gICAgUHJvZ3Jlc3M/OiBudW1iZXI7XG4gICAgSXNJY29uPzogYm9vbGVhbjtcbn1cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVpLWZpbGUtbGluZWFyLWxpc3QtYm94JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbVXBsb2FkU2VydmljZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWlGaWxlTGluZWFyTGlzdEJveENvbXBvbmVudCBleHRlbmRzIERldmljZUluZm9GaWVsZEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQFZpZXdDaGlsZChGaWxlVXBsb2FkZXJDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBmaWxlVXBsb2FkQ29tcG9uZW50OiBGaWxlVXBsb2FkZXJDb21wb25lbnQ7XG4gICAgQElucHV0KCkgdmFsdWU6IEZpbGVBdHRhY2htZW50SW5mb1tdO1xuICAgIGZpbGVDb3VudCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICAgIHZhbHVlRXh0cmE6IHsgW2tleTogc3RyaW5nXTogVXBsb2FkRmlsZVByb3BzIH0gPSB7fTtcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xuICAgIGZpbGVEb3dubG9hZGluZzogYm9vbGVhbjtcbiAgICB2YWxpZEV4dGVuc2lvbiA9ICcnO1xuICAgIGZpbGVzVmFsaWRhdGlvbkhlbHBlcjogRmlsZXNWYWxpZGF0aW9uSGVscGVyO1xuICAgIG1heEZpbGVDb3VudDogbnVtYmVyO1xuICAgIGxvYWRpbmcgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9maWxlQ291bnRTb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCk7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5jb250ZXh0Lm9uKHtcbiAgICAgICAgICAgIFNob3dVcGxvYWRXaW5kb3c6IHRoaXMuX3Nob3dVcGxvYWRXaW5kb3cuYmluZCh0aGlzKVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5maWxlc1ZhbGlkYXRpb25IZWxwZXIgPSBuZXcgRmlsZXNWYWxpZGF0aW9uSGVscGVyKFxuICAgICAgICAgICAgdGhpcy5TZXR0aW5nLk1heEZpbGVDb3VudCxcbiAgICAgICAgICAgIHRoaXMuU2V0dGluZy5NYXhGaWxlU2l6ZUtiLFxuICAgICAgICAgICAgdGhpcy5TZXR0aW5nLk1heFRvdGFsRmlsZVNpemVLYlxuICAgICAgICApO1xuXG4gICAgICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlLmZvckVhY2goKGMpID0+IHRoaXMuX3NldEljb25BbmRJbWFnZShjKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMuU2V0dGluZy5Jc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVzVmFsaWRhdGlvbkhlbHBlci5tYXhGaWxlQ291bnQgPSAxO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubWF4RmlsZUNvdW50ID0gdGhpcy5maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50O1xuICAgICAgICB0aGlzLnZhbGlkRXh0ZW5zaW9uID0gZ2V0VmFsaWRFeHRlbnNpb24odGhpcy5TZXR0aW5nLlZhbGlkRXh0ZW5zaW9ucyk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWVFeHRyYSA9IHt9O1xuICAgICAgICB0aGlzLmNvbnRleHQudW4oJ1Nob3dVcGxvYWRXaW5kb3cnLCB0aGlzLl9zaG93VXBsb2FkV2luZG93KTtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBvbkRvd25sb2FkRmlsZShmaWxlOiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFmaWxlLklzTmV3IHx8IGZpbGUuVXBsb2FkU3RhdGUgPT09ICdDb21wbGV0ZScgfHwgIWZpbGUuVXBsb2FkU3RhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuZmlyZUNvbnRleHRFdmVudCgnQ29tbWFuZFJlcXVlc3QnLCB0aGlzLmNvbnRleHQsICdEb3dubG9hZCcsIGZpbGUuSWQpO1xuICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgb25GaWxlRGVsZXRlZChmaWxlSWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZmlsZURlbGV0ZShmaWxlSWQpO1xuICAgIH1cblxuICAgIG9uVGVybWluYXRlKGZpbGVBdHRhY2htZW50OiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0RlbGV0ZScsIGZpbGVBdHRhY2htZW50LklkKTtcbiAgICAgICAgdGhpcy52YWx1ZUV4dHJhW2ZpbGVBdHRhY2htZW50LklkXS5jYW5jZWxhdGlvbiQ/Lm5leHQoKTtcbiAgICB9XG4gICAgb25GaWxlU2VsZWN0aW9uKGZpbGVzOiBGaWxlW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdXBsb2FkVG9TZXJ2ZXIoZmlsZXMpO1xuICAgIH1cbiAgICB0cmFja0J5SWQoZmlsZSwgaW5kZXgpOiBzdHJpbmcgfCBudW1iZXIge1xuICAgICAgICByZXR1cm4gZmlsZSA/IGZpbGUuSWQgOiBpbmRleDtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHN1cGVyLl9zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuX3NldEZpbGVDb3VudCh2YWx1ZSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfc2hvd1VwbG9hZFdpbmRvdygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWxlVXBsb2FkQ29tcG9uZW50Lm9wZW4oKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9nZXRGaWxlVmFsdWVFeHRyYShmaWxlSWQpOiBVcGxvYWRGaWxlUHJvcHMge1xuICAgICAgICBjb25zdCBmaWxlVmFsdWVFeHRyYSA9IHRoaXMudmFsdWVFeHRyYVtmaWxlSWRdO1xuICAgICAgICBpZiAoIWZpbGVWYWx1ZUV4dHJhKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlRXh0cmFbZmlsZUlkXSA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlRXh0cmFbZmlsZUlkXSBhcyBVcGxvYWRGaWxlUHJvcHM7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfc2V0SWNvbkFuZEltYWdlKGZpbGVBdHRhY2htZW50OiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmlsZVR5cGUgPSBmaWxlQXR0YWNobWVudC5UeXBlO1xuICAgICAgICBjb25zdCBmaWxlSWQgPSBmaWxlQXR0YWNobWVudC5JZDtcbiAgICAgICAgY29uc3QgZmlsZVZhbHVlRXh0cmEgPSB0aGlzLl9nZXRGaWxlVmFsdWVFeHRyYShmaWxlSWQpO1xuICAgICAgICBpZiAoZmlsZUF0dGFjaG1lbnQuSXNOZXcgJiYgIWZpbGVWYWx1ZUV4dHJhLlVwbG9hZFN0YXRlKSB7XG4gICAgICAgICAgICBmaWxlVmFsdWVFeHRyYS5GaWxlVXJsID0gJ2RvY3VtZW50JztcbiAgICAgICAgICAgIGZpbGVWYWx1ZUV4dHJhLklzSWNvbiA9IHRydWU7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNJbWFnZShmaWxlVHlwZSkpIHtcbiAgICAgICAgICAgIGZpbGVWYWx1ZUV4dHJhLkZpbGVVcmwgPSBnZXRJbWFnZVBhdGgoJ0lEJywgJycsIGZpbGVJZCk7XG4gICAgICAgICAgICBmaWxlVmFsdWVFeHRyYS5Jc0ljb24gPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpbGVWYWx1ZUV4dHJhLkZpbGVVcmwgPSBnZXRJY29uKGZpbGVUeXBlKTtcbiAgICAgICAgICAgIGZpbGVWYWx1ZUV4dHJhLklzSWNvbiA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2ZpbGVEZWxldGUoaWQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmlsZUF0dGFjaG1lbnQgPSB0aGlzLnZhbHVlLmZpbmQoKGMpID0+IGMuSWQgPT09IGlkKTtcbiAgICAgICAgaWYgKGZpbGVBdHRhY2htZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHJvdGVjdGVkIF9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlyZUNvbnRleHRFdmVudCgnQ29tbWFuZFJlcXVlc3QnLCB0aGlzLmNvbnRleHQsICdEZWxldGUnLCBmaWxlQXR0YWNobWVudC5JZCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF91cGxvYWRUb1NlcnZlcihzZWxlY3RlZEZpbGVzOiBGaWxlW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWxlc1ZhbGlkYXRpb25IZWxwZXJcbiAgICAgICAgICAgIC52YWxpZGF0ZUZpbGVzKHNlbGVjdGVkRmlsZXMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksXG4gICAgICAgICAgICAgICAgZmlsdGVyKChmaWxlcykgPT4gZmlsZXMubGVuZ3RoID4gMCksXG4gICAgICAgICAgICAgICAgdGFwKCgpID0+IHRoaXMuX3NldExvYWRpbmcodHJ1ZSkpLFxuICAgICAgICAgICAgICAgIG1hcCgoZmlsZXM6IEZpbGVbXSkgPT4gZmlsZXMubWFwKChjKSA9PiB0aGlzLl9jcmVhdGVGaWxlQXR0YWNobWVudChjKSkpLFxuICAgICAgICAgICAgICAgIG1lcmdlTWFwKChmaWxlczogRmlsZUF0dGFjaG1lbnRJbmZvW10pID0+IGZvcmtKb2luKGZpbGVzLm1hcCgoZmlsZSkgPT4gdGhpcy51cGxvYWRGaWxlKGZpbGUpKSkpLFxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gbG9hZGluZztcbiAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX2NyZWF0ZUZpbGVBdHRhY2htZW50KGZpbGU6IEZpbGUpOiBhbnkge1xuICAgICAgICBjb25zdCBpZDogc3RyaW5nID0gZ2V0VW5pcXVlSWQoNCk7XG4gICAgICAgIGNvbnN0IHRlbXA6IHN0cmluZ1tdID0gZmlsZS5uYW1lLnNwbGl0KCcuJyk7XG4gICAgICAgIGNvbnN0IGV4dCA9IHRlbXBbdGVtcC5sZW5ndGggLSAxXTtcbiAgICAgICAgY29uc3QgbmV3RmlsZUF0dGFjaG1lbnQgPSB7XG4gICAgICAgICAgICBGaWxlTmFtZTogZmlsZS5uYW1lLFxuICAgICAgICAgICAgSWQ6IGlkLFxuICAgICAgICAgICAgRmlsZUlkOiBpZCxcbiAgICAgICAgICAgIElzRGVsZXRlZDogZmFsc2UsXG4gICAgICAgICAgICBJc05ldzogdHJ1ZSxcbiAgICAgICAgICAgIFR5cGU6IGV4dFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLl9zZXRJY29uQW5kSW1hZ2UobmV3RmlsZUF0dGFjaG1lbnQpO1xuICAgICAgICBjb25zdCBmaWxlVmFsdWVFeHRyYSA9IHRoaXMudmFsdWVFeHRyYVtuZXdGaWxlQXR0YWNobWVudC5JZF07XG4gICAgICAgIGZpbGVWYWx1ZUV4dHJhLlVwbG9hZFN0YXRlID0gJ1JlYWR5JztcbiAgICAgICAgZmlsZVZhbHVlRXh0cmEuYmluYXJ5ID0gZmlsZTtcbiAgICAgICAgZmlsZVZhbHVlRXh0cmEuY2FuY2VsYXRpb24kID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICAgICAgcmV0dXJuIG5ld0ZpbGVBdHRhY2htZW50O1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgdXBsb2FkRmlsZShmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKCd1bmljRmlsZU5hbWUnLCAneCcgKyBCYXJzYUFwaS5Db21tb24uVXRpbC5HZXROZXdNZXRhR3VpZCgpICsgJzs7OycgKyBmaWxlQXR0YWNobWVudC5GaWxlTmFtZSk7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIHRoaXMudmFsdWVFeHRyYVtmaWxlQXR0YWNobWVudC5JZF0uYmluYXJ5KTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VwbG9hZFNlcnZpY2UudXBsb2FkKGZvcm1EYXRhLCB0aGlzLlNldHRpbmcuRmllbGREZWZJZCkucGlwZShcbiAgICAgICAgICAgIHRhcCgocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVWYWx1ZShmaWxlQXR0YWNobWVudCwgcmVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBfdXBkYXRlVmFsdWUoZmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbywgcmVzOiBhbnlbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudCk7XG4gICAgICAgIGNvbnN0IGlkID0gcmVzWzBdLkZpbGVJZDtcbiAgICAgICAgY29uc3QgbmV3RmlsZUF0dGFjaG1lbnQgPSB7XG4gICAgICAgICAgICAuLi5maWxlQXR0YWNobWVudCxcbiAgICAgICAgICAgIElkOiBpZCxcbiAgICAgICAgICAgIEZpbGVJZDogaWQsXG4gICAgICAgICAgICBGaWxlTmFtZTogcmVzWzBdLkZpbGVOYW1lLFxuICAgICAgICAgICAgSXNEZWxldGVkOiBmYWxzZVxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBmaWxlVmFsdWVFeHRyYSA9IHRoaXMuX2dldEZpbGVWYWx1ZUV4dHJhKGlkKTtcbiAgICAgICAgZmlsZVZhbHVlRXh0cmEuYmluYXJ5ID0gbnVsbDtcbiAgICAgICAgdGhpcy5fc2V0SWNvbkFuZEltYWdlKG5ld0ZpbGVBdHRhY2htZW50KTtcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0ZpbGVVcGxvYWQnLCBuZXdGaWxlQXR0YWNobWVudCk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfc2V0RmlsZUNvdW50KHZhbHVlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZpbGVDb3VudFNvdXJjZS5uZXh0KHZhbHVlLmZpbHRlcigoYykgPT4gIWMuSXNEZWxldGVkKS5sZW5ndGgpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0b2tlbi1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRva2VuLXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpbGUgb2YgdmFsdWU7IHRyYWNrQnk6IHRyYWNrQnlJZFwiPlxuICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyICpuZ0lmPVwiIWZpbGUuSXNEZWxldGVkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtdG9rZW4gKG9uQ2xvc2VDbGljayk9XCJvbkZpbGVEZWxldGVkKGZpbGUuSWQpXCIgW3JlYWRPbmx5XT1cIihkaXNhYmxlT3JSZWFkb25seSQgfCBhc3luYykhIVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGZpbGUuRmlsZU5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmlsZS5Jc05ld1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlICE9PSAnQ29tcGxldGUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLW9iamVjdC1zdGF0dXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdGF0dXNdPVwiZmlsZS5JZCB8IHVwbG9hZEZpbGVTdGF0dXM6IHZhbHVlRXh0cmFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInZhbHVlRXh0cmFbZmlsZS5JZF0/LlVwbG9hZFN0YXRlIHx8ICcnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdPy5VcGxvYWRTdGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXJpYS1sYWJlbF09XCInRmlsZSBVcGxvYWQgU3RhdHVzIElzICcgKyB2YWx1ZUV4dHJhW2ZpbGUuSWRdPy5VcGxvYWRTdGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1vYmplY3QtbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInZhbHVlRXh0cmFbZmlsZS5JZF0uUHJvZ3Jlc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW251bWJlcl09XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlByb2dyZXNzIHx8IDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdD1cIiVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzPVwiaW5mb3JtYXRpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9mZC1vYmplY3QtbnVtYmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlID09PSAnVXBsb2FkaW5nJ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWJ1c3ktaW5kaWNhdG9yIFtsb2FkaW5nXT1cInRydWVcIiBbc2l6ZV09XCIncydcIj48L2ZkLWJ1c3ktaW5kaWNhdG9yPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtdG9rZW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1ib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtbGlzdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlRXh0cmFbZmlsZS5JZF0uVXBsb2FkU3RhdGUgIT09ICdFcnJvcicgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVFeHRyYVtmaWxlLklkXS5VcGxvYWRTdGF0ZSA9PT0gJ0NvbXBsZXRlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGZkLWxpc3QtaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZmQtbGlzdC1saW5rIChjbGljayk9XCJvbkRvd25sb2FkRmlsZShmaWxlKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgZmQtbGlzdC1pY29uIGdseXBoPVwiZG93bmxvYWRcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1saXN0LXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdEb3dubG9hZCcgfCBiYmJUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1idXN5LWluZGljYXRvciBbbG9hZGluZ109XCJmaWxlRG93bmxvYWRpbmdcIiBbc2l6ZV09XCIncydcIj48L2ZkLWJ1c3ktaW5kaWNhdG9yPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1ib2R5PlxuICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXhcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogM3JlbVwiICpuZ0lmPVwibG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICA8YnN1LW1hc2sgW3NpemVdPVwiJ3MnXCIgc3R5bGU9XCJiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudFwiPjwvYnN1LW1hc2s+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGZkLWZpbGUtdXBsb2FkZXJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZSB8IGNhblVwbG9hZEZpbGU6IG1heEZpbGVDb3VudDooZGlzYWJsZSQgfCBhc3luYykhIToocmVhZG9ubHkkIHwgYXN5bmMpISFcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZpbGUtbGluZWFyLXVwbG9hZFwiXG4gICAgICAgICAgICAgICAgICAgIGZkLXRvb2xiYXItaXRlbVxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCInbGluZWFyXycgKyBpZFwiXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQXR0YWNoRmlsZScgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbYnV0dG9uTGFiZWxdPVwiJ0F0dGFjaEZpbGUnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgW2J1dHRvbkFyaWFMYWJlbF09XCInQXR0YWNoRmlsZScgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbYWNjZXB0XT1cInZhbGlkRXh0ZW5zaW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW211bHRpcGxlXT1cIm1heEZpbGVDb3VudCA+IDEgfHwgU2V0dGluZy5Jc011bHRpU2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbGVjdGVkRmlsZXNDaGFuZ2VkKT1cIm9uRmlsZVNlbGVjdGlvbigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIihjb250ZW50RGVuc2l0eSQgfCBhc3luYykhIVwiXG4gICAgICAgICAgICAgICAgPjwvZmQtZmlsZS11cGxvYWRlcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUF1QixNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFDSCxhQUFhLEVBQ2IscUJBQXFCLEVBRXJCLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFTekUsTUFBTSxPQUFPLDRCQUE2QixTQUFRLDRCQUE0QjtJQVA5RTs7UUFlSSxtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUVwQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBR1IscUJBQWdCLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUM7S0E4RjdEO0lBNUZHLFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFD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QztJQUNMLENBQUM7SUFDUyxxQkFBcUIsQ0FBQyxjQUFrQztRQUM5RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFUyxXQUFXLENBQUMsT0FBZ0I7UUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBQ1MsZ0JBQWdCLENBQUMsaUJBQXFDO1FBQzVELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDUyxhQUFhLENBQUMsS0FBSztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pFLENBQUM7O3lIQTFHUSw0QkFBNEI7NkdBQTVCLDRCQUE0QixrRkFIMUIsQ0FBQyxhQUFhLENBQUMsK0VBSWYscUJBQXFCLHVFQ3RCcEMscWlKQTRFQTsyRkR2RGEsNEJBQTRCO2tCQVB4QyxTQUFTOytCQUNJLDZCQUE2QixhQUc1QixDQUFDLGFBQWEsQ0FBQyxtQkFDVCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUdNLG1CQUFtQjtzQkFBdkUsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQzFDLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBGaWxlVXBsb2FkZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICAgIFVwbG9hZFNlcnZpY2UsXHJcbiAgICBGaWxlc1ZhbGlkYXRpb25IZWxwZXIsXHJcbiAgICBGaWxlQXR0YWNobWVudEluZm8sXHJcbiAgICBnZXRWYWxpZEV4dGVuc2lvbixcclxuICAgIExpbmVhckxpc3RIZWxwZXJcclxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IERldmljZUluZm9GaWVsZEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9kZXZpY2UtaW5mby1maWVsZC1iYXNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktZmlsZS1saW5lYXItbGlzdC1ib3gnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBwcm92aWRlcnM6IFtVcGxvYWRTZXJ2aWNlXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaUZpbGVMaW5lYXJMaXN0Qm94Q29tcG9uZW50IGV4dGVuZHMgRGV2aWNlSW5mb0ZpZWxkQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIEBWaWV3Q2hpbGQoRmlsZVVwbG9hZGVyQ29tcG9uZW50LCB7IHN0YXRpYzogZmFsc2UgfSkgZmlsZVVwbG9hZENvbXBvbmVudDogRmlsZVVwbG9hZGVyQ29tcG9uZW50O1xyXG4gICAgQElucHV0KCkgdmFsdWU6IEZpbGVBdHRhY2htZW50SW5mb1tdO1xyXG4gICAgZmlsZUNvdW50JDogT2JzZXJ2YWJsZTxudW1iZXI+O1xyXG5cclxuICAgIHZhbHVlRXh0cmEkOiBPYnNlcnZhYmxlPHsgW2tleTogc3RyaW5nXTogVXBsb2FkRmlsZVByb3BzIH0+O1xyXG4gICAgY29udGVudERlbnNpdHkkOiBPYnNlcnZhYmxlPENvbnRlbnREZW5zaXR5PjtcclxuICAgIGZpbGVEb3dubG9hZGluZzogYm9vbGVhbjtcclxuICAgIHZhbGlkRXh0ZW5zaW9uID0gJyc7XHJcbiAgICBtYXhGaWxlQ291bnQ6IG51bWJlcjtcclxuICAgIGxvYWRpbmcgPSBmYWxzZTtcclxuICAgIHByb3RlY3RlZCBfbGluZWFySGVscGVyOiBMaW5lYXJMaXN0SGVscGVyO1xyXG4gICAgcHJvdGVjdGVkIF9maWxlc1ZhbGlkYXRpb25IZWxwZXI6IEZpbGVzVmFsaWRhdGlvbkhlbHBlcjtcclxuICAgIHByaXZhdGUgX2ZpbGVDb3VudFNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIHRoaXMuY29udGV4dC5vbih7XHJcbiAgICAgICAgICAgIFNob3dVcGxvYWRXaW5kb3c6IHRoaXMuX3Nob3dVcGxvYWRXaW5kb3cuYmluZCh0aGlzKVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2ZpbGVzVmFsaWRhdGlvbkhlbHBlciA9IG5ldyBGaWxlc1ZhbGlkYXRpb25IZWxwZXIoXHJcbiAgICAgICAgICAgIHRoaXMuU2V0dGluZy5NYXhGaWxlQ291bnQsXHJcbiAgICAgICAgICAgIHRoaXMuU2V0dGluZy5NYXhGaWxlU2l6ZUtiLFxyXG4gICAgICAgICAgICB0aGlzLlNldHRpbmcuTWF4VG90YWxGaWxlU2l6ZUtiXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIgPSBuZXcgTGluZWFyTGlzdEhlbHBlcihcclxuICAgICAgICAgICAgdGhpcy5fdXBsb2FkU2VydmljZSxcclxuICAgICAgICAgICAgdGhpcy5fZmlsZXNWYWxpZGF0aW9uSGVscGVyLFxyXG4gICAgICAgICAgICB0aGlzLlNldHRpbmcuRmllbGREZWZJZFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy52YWx1ZUV4dHJhJCA9IHRoaXMuX2xpbmVhckhlbHBlci52YWx1ZUV4dHJhJDtcclxuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIubG9hZGluZyQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgobG9hZGluZykgPT4gdGhpcy5fc2V0TG9hZGluZyhsb2FkaW5nKSk7XHJcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLmRlbGV0ZSQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZmlsZUF0dGFjaG1lbnQpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fZGVsZXRlRmlsZUF0dGFjaG1lbnQoZmlsZUF0dGFjaG1lbnQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2xpbmVhckhlbHBlci5uZXdGaWxlVXBsb2FkZWQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGZpbGVBdHRhY2htZW50KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX25ld0ZpbGVVcGxvYWRlZChmaWxlQXR0YWNobWVudCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy52YWx1ZSAmJlxyXG4gICAgICAgICAgICB0aGlzLnZhbHVlLmZvckVhY2goKGMpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2xpbmVhckhlbHBlci5pbml0KGMpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLlNldHRpbmcuSXNNdWx0aVNlbGVjdCkge1xyXG4gICAgICAgICAgICB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50ID0gMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5tYXhGaWxlQ291bnQgPSB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50O1xyXG4gICAgICAgIHRoaXMudmFsaWRFeHRlbnNpb24gPSBnZXRWYWxpZEV4dGVuc2lvbih0aGlzLlNldHRpbmcuVmFsaWRFeHRlbnNpb25zKTtcclxuICAgIH1cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIHRoaXMudmFsdWVFeHRyYSA9IHt9O1xyXG4gICAgICAgIHRoaXMuY29udGV4dC51bignU2hvd1VwbG9hZFdpbmRvdycsIHRoaXMuX3Nob3dVcGxvYWRXaW5kb3cpO1xyXG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB9XHJcbiAgICBvbkRvd25sb2FkRmlsZShmaWxlOiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcclxuICAgICAgICBpZiAoIWZpbGUuSXNOZXcgfHwgZmlsZS5VcGxvYWRTdGF0ZSA9PT0gJ0NvbXBsZXRlJyB8fCAhZmlsZS5VcGxvYWRTdGF0ZSkge1xyXG4gICAgICAgICAgICB0aGlzLmZpcmVDb250ZXh0RXZlbnQoJ0NvbW1hbmRSZXF1ZXN0JywgdGhpcy5jb250ZXh0LCAnRG93bmxvYWQnLCBmaWxlLklkKTtcclxuICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25GaWxlRGVsZXRlZChmaWxlSWQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9maWxlRGVsZXRlKGZpbGVJZCk7XHJcbiAgICB9XHJcbiAgICBvblRlcm1pbmF0ZShmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0RlbGV0ZScsIGZpbGVBdHRhY2htZW50LklkKTtcclxuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIuY2FuY2VsKGZpbGVBdHRhY2htZW50KTtcclxuICAgIH1cclxuICAgIG9uRmlsZVNlbGVjdGlvbihmaWxlczogRmlsZVtdKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLnVwbG9hZFRvU2VydmVyKGZpbGVzKTtcclxuICAgIH1cclxuXHJcbiAgICB0cmFja0J5SWQoZmlsZSwgaW5kZXgpOiBzdHJpbmcgfCBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiBmaWxlID8gZmlsZS5JZCA6IGluZGV4O1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIHJldHJ5KGZpbGVBdHRhY2htZW50OiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIucmV0cnkoZmlsZUF0dGFjaG1lbnQpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9zZXRWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIuX3NldFZhbHVlKHZhbHVlKTtcclxuICAgICAgICB0aGlzLl9zZXRGaWxlQ291bnQodmFsdWUpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9zaG93VXBsb2FkV2luZG93KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZmlsZVVwbG9hZENvbXBvbmVudC5vcGVuKCk7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgX2ZpbGVEZWxldGUoaWQpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmaWxlQXR0YWNobWVudCA9IHRoaXMudmFsdWUuZmluZCgoYykgPT4gYy5JZCA9PT0gaWQpO1xyXG4gICAgICAgIGlmIChmaWxlQXR0YWNobWVudCkge1xyXG4gICAgICAgICAgICB0aGlzLl9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0RlbGV0ZScsIGZpbGVBdHRhY2htZW50LklkKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgX3NldExvYWRpbmcobG9hZGluZzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGxvYWRpbmc7XHJcbiAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9uZXdGaWxlVXBsb2FkZWQobmV3RmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZmlyZUNvbnRleHRFdmVudCgnQ29tbWFuZFJlcXVlc3QnLCB0aGlzLmNvbnRleHQsICdGaWxlVXBsb2FkJywgbmV3RmlsZUF0dGFjaG1lbnQpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9zZXRGaWxlQ291bnQodmFsdWUpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9maWxlQ291bnRTb3VyY2UubmV4dCh2YWx1ZS5maWx0ZXIoKGMpID0+ICFjLklzRGVsZXRlZCkubGVuZ3RoKTtcclxuICAgIH1cclxufVxyXG5cclxuaW50ZXJmYWNlIFVwbG9hZEZpbGVQcm9wcyB7XHJcbiAgICBGaWxlVXJsPzogc3RyaW5nO1xyXG4gICAgY2FuY2VsYXRpb24kPzogU3ViamVjdDx2b2lkPjtcclxuICAgIGJpbmFyeT86IGFueTtcclxuICAgIFVwbG9hZFN0YXRlPzogc3RyaW5nO1xyXG4gICAgUHJvZ3Jlc3M/OiBudW1iZXI7XHJcbiAgICBJc0ljb24/OiBib29sZWFuO1xyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInRva2VuLWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0b2tlbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpbGUgb2YgdmFsdWU7IHRyYWNrQnk6IHRyYWNrQnlJZFwiPlxyXG4gICAgICAgICAgICAgICAgPGZkLXBvcG92ZXIgKm5nSWY9XCIhZmlsZS5Jc0RlbGV0ZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1jb250cm9sPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtdG9rZW4gKG9uQ2xvc2VDbGljayk9XCJvbkZpbGVEZWxldGVkKGZpbGUuSWQpXCIgW3JlYWRPbmx5XT1cIihkaXNhYmxlT3JSZWFkb25seSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgZmlsZS5GaWxlTmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpbGUuSXNOZXdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidmFsdWVFeHRyYSQgfCBhc3luYyBhcyB2YWx1ZUV4dHJhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInZhbHVlRXh0cmFbZmlsZS5JZF0uVXBsb2FkU3RhdGUgIT09ICdDb21wbGV0ZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtb2JqZWN0LXN0YXR1c1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0YXR1c109XCJmaWxlLklkIHwgdXBsb2FkRmlsZVN0YXR1czogdmFsdWVFeHRyYVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwidmFsdWVFeHRyYVtmaWxlLklkXT8uVXBsb2FkU3RhdGUgfHwgJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInZhbHVlRXh0cmFbZmlsZS5JZF0/LlVwbG9hZFN0YXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhLWxhYmVsXT1cIidGaWxlIFVwbG9hZCBTdGF0dXMgSXMgJyArIHZhbHVlRXh0cmFbZmlsZS5JZF0/LlVwbG9hZFN0YXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW9iamVjdC1udW1iZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidmFsdWVFeHRyYVtmaWxlLklkXS5Qcm9ncmVzc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbnVtYmVyXT1cInZhbHVlRXh0cmFbZmlsZS5JZF0uUHJvZ3Jlc3MgfHwgMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0PVwiJVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM9XCJpbmZvcm1hdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2ZkLW9iamVjdC1udW1iZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlID09PSAnVXBsb2FkaW5nJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWJ1c3ktaW5kaWNhdG9yIFtsb2FkaW5nXT1cInRydWVcIiBbc2l6ZV09XCIncydcIj48L2ZkLWJ1c3ktaW5kaWNhdG9yPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXRva2VuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZUV4dHJhJCB8IGFzeW5jIGFzIHZhbHVlRXh0cmFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWxpc3RcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlICE9PSAnRXJyb3InIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlRXh0cmFbZmlsZS5JZF0uVXBsb2FkU3RhdGUgPT09ICdDb21wbGV0ZSdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBmZC1saXN0LWl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGZkLWxpc3QtbGluayAoY2xpY2spPVwib25Eb3dubG9hZEZpbGUoZmlsZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGZkLWxpc3QtaWNvbiBnbHlwaD1cImRvd25sb2FkXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnRG93bmxvYWQnIHwgYmJiVHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtYnVzeS1pbmRpY2F0b3IgW2xvYWRpbmddPVwiZmlsZURvd25sb2FkaW5nXCIgW3NpemVdPVwiJ3MnXCI+PC9mZC1idXN5LWluZGljYXRvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cclxuICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogM3JlbVwiICpuZ0lmPVwibG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxic3UtbWFzayBbc2l6ZV09XCIncydcIiBzdHlsZT1cImJhY2tncm91bmQ6IHRyYW5zcGFyZW50XCI+PC9ic3UtbWFzaz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGZkLWZpbGUtdXBsb2FkZXJcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInZhbHVlIHwgY2FuVXBsb2FkRmlsZTogbWF4RmlsZUNvdW50OihkaXNhYmxlJCB8IGFzeW5jKSEhOihyZWFkb25seSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmaWxlLWxpbmVhci11cGxvYWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIGZkLXRvb2xiYXItaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCJpZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiJ2xpbmVhcl8nICsgaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQXR0YWNoRmlsZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtidXR0b25MYWJlbF09XCInQXR0YWNoRmlsZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtidXR0b25BcmlhTGFiZWxdPVwiJ0F0dGFjaEZpbGUnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbYWNjZXB0XT1cInZhbGlkRXh0ZW5zaW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbbXVsdGlwbGVdPVwibWF4RmlsZUNvdW50ID4gMSB8fCBTZXR0aW5nLklzTXVsdGlTZWxlY3RcIlxyXG4gICAgICAgICAgICAgICAgICAgIChzZWxlY3RlZEZpbGVzQ2hhbmdlZCk9XCJvbkZpbGVTZWxlY3Rpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIihjb250ZW50RGVuc2l0eSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgICAgICAgICA+PC9mZC1maWxlLXVwbG9hZGVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
@@ -30,14 +30,14 @@ export class UiFormPanelComponent extends FormBaseComponent {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
UiFormPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFormPanelComponent, deps: [{ token: i1.BreadcrumbService }, { token: i2.ContentDensityService }, { token: i1.PortalService }, { token: i3.ActivatedRoute }, { token: i3.Router }, { token: i1.FormPanelService, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
UiFormPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFormPanelComponent, selector: "bsu-ui-form-panel", host: { properties: { "attr.typeDefName": "this._typeDefName" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\n <bsu-mask *ngIf=\"mask$ | async\"> </bsu-mask>\n <div>\n <bsu-ly-layout-container-of-root\n [config]=\"layout94$ | async\"\n [isPanel]=\"false\"\n [isRoot]=\"true\"\n ></bsu-ly-layout-container-of-root>\n <div class=\"workflow-buttons\" *ngIf=\"workflowPanelUi$ | async as workflowPanelUi\">\n <div style=\"flex-grow: 1\"></div>\n <bsu-layout-actions\n [simple]=\"true\"\n [buttons]=\"[]\"\n [workflowButtons]=\"workflowPanelUi?.buttonList ?? []\"\n (toolClick)=\"onToolbarClick($event)\"\n >\n </bsu-layout-actions>\n </div>\n </div>\n <!-- <div fd-bar barDesign=\"floating-footer\">\n <div\n *ngIf=\"context.WorkflowPanelUi\"\n fd-bar-right\n [footerActions]=\"context.WorkflowPanelUi\"\n ></div>\n <div\n *ngIf=\"\n !context.WorkflowPanelUi &&\n showToolbar &&\n \n toolbar.items.length > 0\n \"\n fd-bar-right\n [footerActions]=\"toolbar\"\n ></div>\n </div> -->\n</ng-container>\n<ng-template #dynamicPage>\n <bsu-fundamental-dynamic-form\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\n [canSend]=\"(canSend$ | async) === true\"\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\n [breadCrumbs]=\"breadCrumbs$ | async\"\n [description]=\"(headerDescription$ | async)!!\"\n [hideClose]=\"(hideClose$ | async)!!\"\n [hideTitle]=\"(hideTitle$ | async)!!\"\n [hidePin]=\"(hidePin$ | async)!!\"\n [title]=\"(title$ | async)!!\"\n [subtitle]=\"(headerSubtitle$ | async)!!\"\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\n [parameters]=\"parameters\"\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\n [isMobile]=\"isMobile\"\n [layout94]=\"layout94$ | async\"\n [rtl]=\"(rtl$ | async)!!\"\n [mask]=\"(mask$ | async)!!\"\n [mo]=\"(mo$ | async)!!\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n [modernTabs]=\"(modernTabs$ | async)!!\"\n [avatar]=\"(avatar$ | async)!!\"\n [fieldDict]=\"(fieldDict$ | async)!!\"\n (close)=\"onClose()\"\n (toolbarClick)=\"onToolbarClick($event)\"\n [contentIsPage]=\"parameters?.ContentIsPage\"\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\n ></bsu-fundamental-dynamic-form>\n</ng-template>\n", styles: [":host{display:block;width:100%;min-height:100%}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i6.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "component", type: i7.FundamentalDynamicFormComponent, selector: "bsu-fundamental-dynamic-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "hideTitle", "hideClose", "hidePin", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "modernTabs"], outputs: ["toolbarClick", "workflowChoiceClick", "close"] }, { kind: "component", type: i8.LayoutActionsComponent, selector: "bsu-layout-actions", inputs: ["workflowButtons", "workflowButtonsComboMode", "canSend", "simple"], outputs: ["workflowChoiceSelect"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TlbButtonsPipe, name: "tlbButtons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
33
|
+
UiFormPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFormPanelComponent, selector: "bsu-ui-form-panel", host: { properties: { "attr.typeDefName": "this._typeDefName" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\r\n <bsu-mask *ngIf=\"mask$ | async\"> </bsu-mask>\r\n <div>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n <div class=\"workflow-buttons\" *ngIf=\"workflowPanelUi$ | async as workflowPanelUi\">\r\n <div style=\"flex-grow: 1\"></div>\r\n <bsu-layout-actions\r\n style=\"display: flex; column-gap: 1rem\"\r\n [simple]=\"true\"\r\n [buttons]=\"[]\"\r\n [workflowButtons]=\"workflowPanelUi?.buttonList ?? []\"\r\n (toolClick)=\"onToolbarClick($event)\"\r\n >\r\n </bsu-layout-actions>\r\n </div>\r\n </div>\r\n <!-- <div fd-bar barDesign=\"floating-footer\">\r\n <div\r\n *ngIf=\"context.WorkflowPanelUi\"\r\n fd-bar-right\r\n [footerActions]=\"context.WorkflowPanelUi\"\r\n ></div>\r\n <div\r\n *ngIf=\"\r\n !context.WorkflowPanelUi &&\r\n showToolbar &&\r\n \r\n toolbar.items.length > 0\r\n \"\r\n fd-bar-right\r\n [footerActions]=\"toolbar\"\r\n ></div>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #dynamicPage>\r\n <bsu-fundamental-dynamic-form\r\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\r\n [canSend]=\"(canSend$ | async) === true\"\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [hideClose]=\"(hideClose$ | async)!!\"\r\n [hideTitle]=\"(hideTitle$ | async)!!\"\r\n [hidePin]=\"(hidePin$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"layout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [mo]=\"(mo$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n (close)=\"onClose()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n ></bsu-fundamental-dynamic-form>\r\n</ng-template>\r\n", styles: [":host{display:block;width:100%;min-height:100%}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i6.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "component", type: i7.FundamentalDynamicFormComponent, selector: "bsu-fundamental-dynamic-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "hideTitle", "hideClose", "hidePin", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "modernTabs"], outputs: ["toolbarClick", "workflowChoiceClick", "close"] }, { kind: "component", type: i8.LayoutActionsComponent, selector: "bsu-layout-actions", inputs: ["workflowButtons", "workflowButtonsComboMode", "canSend", "simple"], outputs: ["workflowChoiceSelect"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TlbButtonsPipe, name: "tlbButtons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
34
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFormPanelComponent, decorators: [{
|
|
35
35
|
type: Component,
|
|
36
|
-
args: [{ selector: 'bsu-ui-form-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\n <bsu-mask *ngIf=\"mask$ | async\"> </bsu-mask>\n <div>\n <bsu-ly-layout-container-of-root\n [config]=\"layout94$ | async\"\n [isPanel]=\"false\"\n [isRoot]=\"true\"\n ></bsu-ly-layout-container-of-root>\n <div class=\"workflow-buttons\" *ngIf=\"workflowPanelUi$ | async as workflowPanelUi\">\n <div style=\"flex-grow: 1\"></div>\n <bsu-layout-actions\n [simple]=\"true\"\n [buttons]=\"[]\"\n [workflowButtons]=\"workflowPanelUi?.buttonList ?? []\"\n (toolClick)=\"onToolbarClick($event)\"\n >\n </bsu-layout-actions>\n </div>\n </div>\n <!-- <div fd-bar barDesign=\"floating-footer\">\n <div\n *ngIf=\"context.WorkflowPanelUi\"\n fd-bar-right\n [footerActions]=\"context.WorkflowPanelUi\"\n ></div>\n <div\n *ngIf=\"\n !context.WorkflowPanelUi &&\n showToolbar &&\n \n toolbar.items.length > 0\n \"\n fd-bar-right\n [footerActions]=\"toolbar\"\n ></div>\n </div> -->\n</ng-container>\n<ng-template #dynamicPage>\n <bsu-fundamental-dynamic-form\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\n [canSend]=\"(canSend$ | async) === true\"\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\n [breadCrumbs]=\"breadCrumbs$ | async\"\n [description]=\"(headerDescription$ | async)!!\"\n [hideClose]=\"(hideClose$ | async)!!\"\n [hideTitle]=\"(hideTitle$ | async)!!\"\n [hidePin]=\"(hidePin$ | async)!!\"\n [title]=\"(title$ | async)!!\"\n [subtitle]=\"(headerSubtitle$ | async)!!\"\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\n [parameters]=\"parameters\"\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\n [isMobile]=\"isMobile\"\n [layout94]=\"layout94$ | async\"\n [rtl]=\"(rtl$ | async)!!\"\n [mask]=\"(mask$ | async)!!\"\n [mo]=\"(mo$ | async)!!\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n [modernTabs]=\"(modernTabs$ | async)!!\"\n [avatar]=\"(avatar$ | async)!!\"\n [fieldDict]=\"(fieldDict$ | async)!!\"\n (close)=\"onClose()\"\n (toolbarClick)=\"onToolbarClick($event)\"\n [contentIsPage]=\"parameters?.ContentIsPage\"\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\n ></bsu-fundamental-dynamic-form>\n</ng-template>\n", styles: [":host{display:block;width:100%;min-height:100%}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"] }]
|
|
36
|
+
args: [{ selector: 'bsu-ui-form-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\r\n <bsu-mask *ngIf=\"mask$ | async\"> </bsu-mask>\r\n <div>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n <div class=\"workflow-buttons\" *ngIf=\"workflowPanelUi$ | async as workflowPanelUi\">\r\n <div style=\"flex-grow: 1\"></div>\r\n <bsu-layout-actions\r\n style=\"display: flex; column-gap: 1rem\"\r\n [simple]=\"true\"\r\n [buttons]=\"[]\"\r\n [workflowButtons]=\"workflowPanelUi?.buttonList ?? []\"\r\n (toolClick)=\"onToolbarClick($event)\"\r\n >\r\n </bsu-layout-actions>\r\n </div>\r\n </div>\r\n <!-- <div fd-bar barDesign=\"floating-footer\">\r\n <div\r\n *ngIf=\"context.WorkflowPanelUi\"\r\n fd-bar-right\r\n [footerActions]=\"context.WorkflowPanelUi\"\r\n ></div>\r\n <div\r\n *ngIf=\"\r\n !context.WorkflowPanelUi &&\r\n showToolbar &&\r\n \r\n toolbar.items.length > 0\r\n \"\r\n fd-bar-right\r\n [footerActions]=\"toolbar\"\r\n ></div>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #dynamicPage>\r\n <bsu-fundamental-dynamic-form\r\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\r\n [canSend]=\"(canSend$ | async) === true\"\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [hideClose]=\"(hideClose$ | async)!!\"\r\n [hideTitle]=\"(hideTitle$ | async)!!\"\r\n [hidePin]=\"(hidePin$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"layout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [mo]=\"(mo$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n (close)=\"onClose()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n ></bsu-fundamental-dynamic-form>\r\n</ng-template>\r\n", styles: [":host{display:block;width:100%;min-height:100%}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"] }]
|
|
37
37
|
}], ctorParameters: function () { return [{ type: i1.BreadcrumbService }, { type: i2.ContentDensityService }, { type: i1.PortalService }, { type: i3.ActivatedRoute }, { type: i3.Router }, { type: i1.FormPanelService, decorators: [{
|
|
38
38
|
type: Self
|
|
39
39
|
}] }]; }, propDecorators: { _typeDefName: [{
|
|
40
40
|
type: HostBinding,
|
|
41
41
|
args: ['attr.typeDefName']
|
|
42
42
|
}] } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZm9ybS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91aS1mb3JtLXBhbmVsL3VpLWZvcm0tcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZm9ybS1wYW5lbC91aS1mb3JtLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFVLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUk5RixPQUFPLEVBQ0gsaUJBQWlCLEVBR2pCLGdCQUFnQixFQUVuQixNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7O0FBVTlCLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxpQkFBaUI7SUFRdkQsWUFDYyxrQkFBcUMsRUFDckMsc0JBQTZDLEVBQzdDLGNBQTZCLEVBQzdCLGVBQStCLEVBQy9CLE9BQWUsRUFDUCxpQkFBbUMsQ0FBQyx1Q0FBdUM7O1FBRTdGLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBUGYsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXVCO1FBQzdDLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ1Asc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQWJ4QixpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQWdCL0MsSUFBSSxDQUFDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7UUFDcEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxzQkFBc0IsQ0FBQyxjQUFjLENBQUM7UUFDN0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDO1FBQzlDLElBQUksQ0FBQyxTQUFTLEdBQUcsY0FBYyxDQUFDLFNBQVMsQ0FBQztRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUM7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDO1FBQ2hELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxFQUFFLFlBQVksSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdGLENBQUM7O2lIQXhCUSxvQkFBb0I7cUdBQXBCLG9CQUFvQiwrR0FGbEIsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENsQmpDLGdtR0F5RUE7MkZEckRhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDSSxtQkFBbUIsbUJBR1osdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGdCQUFnQixDQUFDOzswQkFnQnhCLElBQUk7NENBYndCLFlBQVk7c0JBQTVDLFdBQVc7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBDb250ZW50RGVuc2l0eVNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICAgIEZvcm1CYXNlQ29tcG9uZW50LFxyXG4gICAgUG9ydGFsU2VydmljZSxcclxuICAgIEJyZWFkQ3J1bWJJbmZvLFxyXG4gICAgRm9ybVBhbmVsU2VydmljZSxcclxuICAgIEJyZWFkY3J1bWJTZXJ2aWNlXHJcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktZm9ybS1wYW5lbCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZm9ybS1wYW5lbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1mb3JtLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHByb3ZpZGVyczogW0Zvcm1QYW5lbFNlcnZpY2VdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaUZvcm1QYW5lbENvbXBvbmVudCBleHRlbmRzIEZvcm1CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBIb3N0QmluZGluZygnYXR0ci50eXBlRGVmTmFtZScpIF90eXBlRGVmTmFtZSA9ICcnO1xyXG4gICAgYnJlYWRDcnVtYnMkOiBPYnNlcnZhYmxlPEJyZWFkQ3J1bWJJbmZvW10+O1xyXG4gICAgY29udGVudERlbnNpdHkkOiBPYnNlcnZhYmxlPENvbnRlbnREZW5zaXR5PjtcclxuICAgIGRldmljZVNpemUkOiBPYnNlcnZhYmxlPCdzJyB8ICdtJyB8ICdsJyB8ICd4bCc+O1xyXG4gICAgZGlyVmFsdWUkOiBPYnNlcnZhYmxlPCdydGwnIHwgJ2x0cic+O1xyXG4gICAgcnRsJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICAgIGNhblNlbmQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJvdGVjdGVkIF9icmVhZGNydW1iU2VydmljZTogQnJlYWRjcnVtYlNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9hY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9yb3V0ZXI6IFJvdXRlcixcclxuICAgICAgICBAU2VsZigpIHByb3RlY3RlZCBfZm9ybVBhbmVsU2VydmljZTogRm9ybVBhbmVsU2VydmljZSAvLyBwcml2YXRlIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2VcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKF9mb3JtUGFuZWxTZXJ2aWNlKTtcclxuICAgICAgICB0aGlzLmJyZWFkQ3J1bWJzJCA9IF9icmVhZGNydW1iU2VydmljZS5icmVhZGNydW1icyQ7XHJcbiAgICAgICAgdGhpcy5jb250ZW50RGVuc2l0eSQgPSBfY29udGVudERlbnNpdHlTZXJ2aWNlLmNvbnRlbnREZW5zaXR5O1xyXG4gICAgICAgIHRoaXMuZGV2aWNlU2l6ZSQgPSBfcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJDtcclxuICAgICAgICB0aGlzLmRpclZhbHVlJCA9IF9wb3J0YWxTZXJ2aWNlLmRpclZhbHVlJDtcclxuICAgICAgICB0aGlzLnJ0bCQgPSBfcG9ydGFsU2VydmljZS5ydGwkO1xyXG4gICAgICAgIHRoaXMuY2FuU2VuZCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmNhblNlbmQkO1xyXG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UubW8kLnN1YnNjcmliZSgoYykgPT4gKHRoaXMuX3R5cGVEZWZOYW1lID0gYz8uJFR5cGVEZWZOYW1lID8/ICcnKSk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzU2VhcmNoUGFuZWwgfHwgKGlzU2ltcGxlJCB8IGFzeW5jKSB8fCBpc1N1YkZvcm0gfHwgaXNNb2RhbCB8fCBpc0Zvcm1SZXBvcnQ7IGVsc2UgZHluYW1pY1BhZ2VcIj5cclxuICAgIDxic3UtbWFzayAqbmdJZj1cIm1hc2skIHwgYXN5bmNcIj4gPC9ic3UtbWFzaz5cclxuICAgIDxkaXY+XHJcbiAgICAgICAgPGJzdS1seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3RcclxuICAgICAgICAgICAgW2NvbmZpZ109XCJsYXlvdXQ5NCQgfCBhc3luY1wiXHJcbiAgICAgICAgICAgIFtpc1BhbmVsXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgW2lzUm9vdF09XCJ0cnVlXCJcclxuICAgICAgICA+PC9ic3UtbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3b3JrZmxvdy1idXR0b25zXCIgKm5nSWY9XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmMgYXMgd29ya2Zsb3dQYW5lbFVpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJmbGV4LWdyb3c6IDFcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGJzdS1sYXlvdXQtYWN0aW9uc1xyXG4gICAgICAgICAgICAgICAgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBjb2x1bW4tZ2FwOiAxcmVtXCJcclxuICAgICAgICAgICAgICAgIFtzaW1wbGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICBbYnV0dG9uc109XCJbXVwiXHJcbiAgICAgICAgICAgICAgICBbd29ya2Zsb3dCdXR0b25zXT1cIndvcmtmbG93UGFuZWxVaT8uYnV0dG9uTGlzdCA/PyBbXVwiXHJcbiAgICAgICAgICAgICAgICAodG9vbENsaWNrKT1cIm9uVG9vbGJhckNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvYnN1LWxheW91dC1hY3Rpb25zPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIDxkaXYgZmQtYmFyIGJhckRlc2lnbj1cImZsb2F0aW5nLWZvb3RlclwiPlxyXG4gICAgPGRpdlxyXG4gICAgICAqbmdJZj1cImNvbnRleHQuV29ya2Zsb3dQYW5lbFVpXCJcclxuICAgICAgZmQtYmFyLXJpZ2h0XHJcbiAgICAgIFtmb290ZXJBY3Rpb25zXT1cImNvbnRleHQuV29ya2Zsb3dQYW5lbFVpXCJcclxuICAgID48L2Rpdj5cclxuICAgIDxkaXZcclxuICAgICAgKm5nSWY9XCJcclxuICAgICAgICAhY29udGV4dC5Xb3JrZmxvd1BhbmVsVWkgJiZcclxuICAgICAgICBzaG93VG9vbGJhciAmJlxyXG4gICAgICAgIFxyXG4gICAgICAgIHRvb2xiYXIuaXRlbXMubGVuZ3RoID4gMFxyXG4gICAgICBcIlxyXG4gICAgICBmZC1iYXItcmlnaHRcclxuICAgICAgW2Zvb3RlckFjdGlvbnNdPVwidG9vbGJhclwiXHJcbiAgICA+PC9kaXY+XHJcbiAgPC9kaXY+IC0tPlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLXRlbXBsYXRlICNkeW5hbWljUGFnZT5cclxuICAgIDxic3UtZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtXHJcbiAgICAgICAgW3N0eWxlLnBvc2l0aW9uXT1cIihtYXNrJCB8IGFzeW5jKSA/ICdyZWxhdGl2ZScgOiBudWxsXCJcclxuICAgICAgICBbY2FuU2VuZF09XCIoY2FuU2VuZCQgfCBhc3luYykgPT09IHRydWVcIlxyXG4gICAgICAgIFtyZW1vdmVDb250ZW50UGFkZGluZ109XCIoaGVhZGVyUmVtb3ZlQ29udGVudFBhZGRpbmckIHwgYXN5bmMpISFcIlxyXG4gICAgICAgIFticmVhZENydW1ic109XCJicmVhZENydW1icyQgfCBhc3luY1wiXHJcbiAgICAgICAgW2Rlc2NyaXB0aW9uXT1cIihoZWFkZXJEZXNjcmlwdGlvbiQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW2hpZGVDbG9zZV09XCIoaGlkZUNsb3NlJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbaGlkZVRpdGxlXT1cIihoaWRlVGl0bGUkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgIFtoaWRlUGluXT1cIihoaWRlUGluJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbdGl0bGVdPVwiKHRpdGxlJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbc3VidGl0bGVdPVwiKGhlYWRlclN1YnRpdGxlJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbdG9vbGJhckl0ZW1zXT1cInRvb2xiYXJJdGVtcyQgfCBhc3luYyB8IHRsYkJ1dHRvbnM6ICdpbkZvb3Rlcic6ZmFsc2VcIlxyXG4gICAgICAgIFtsYXlvdXRBY3Rpb25zXT1cInRvb2xiYXJJdGVtcyQgfCBhc3luYyB8IHRsYkJ1dHRvbnM6ICdpbkZvb3Rlcic6dHJ1ZVwiXHJcbiAgICAgICAgW3Rvb2xiYXJWaXNpYmxlXT1cIih0b29sYmFyVmlzaWJsZSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW2ZhY2V0TGlzdF09XCIoaGVhZGVyTGF5b3V0JCB8IGFzeW5jKT8uRmFjZXRMaXN0MlwiXHJcbiAgICAgICAgW3BhcmFtZXRlcnNdPVwicGFyYW1ldGVyc1wiXHJcbiAgICAgICAgW3dvcmtmbG93UGFuZWxVaV09XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmNcIlxyXG4gICAgICAgIFtpc01vYmlsZV09XCJpc01vYmlsZVwiXHJcbiAgICAgICAgW2xheW91dDk0XT1cImxheW91dDk0JCB8IGFzeW5jXCJcclxuICAgICAgICBbcnRsXT1cIihydGwkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgIFttYXNrXT1cIihtYXNrJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbbW9dPVwiKG1vJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbZGlyVmFsdWVdPVwiKGRpclZhbHVlJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbZGV2aWNlU2l6ZV09XCIoZGV2aWNlU2l6ZSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIihjb250ZW50RGVuc2l0eSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW21vZGVyblRhYnNdPVwiKG1vZGVyblRhYnMkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgIFthdmF0YXJdPVwiKGF2YXRhciQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW2ZpZWxkRGljdF09XCIoZmllbGREaWN0JCB8IGFzeW5jKSEhXCJcclxuICAgICAgICAoY2xvc2UpPVwib25DbG9zZSgpXCJcclxuICAgICAgICAodG9vbGJhckNsaWNrKT1cIm9uVG9vbGJhckNsaWNrKCRldmVudClcIlxyXG4gICAgICAgIFtjb250ZW50SXNQYWdlXT1cInBhcmFtZXRlcnM/LkNvbnRlbnRJc1BhZ2VcIlxyXG4gICAgICAgICh3b3JrZmxvd0Nob2ljZUNsaWNrKT1cIm9uV29ya2Zsb3dDaG9pY2VDbGljaygkZXZlbnQpXCJcclxuICAgID48L2JzdS1mdW5kYW1lbnRhbC1keW5hbWljLWZvcm0+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
|
@@ -24,9 +24,9 @@ export class UiGanttChartComponent extends SapUiReportBaseComponent {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
UiGanttChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiGanttChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
-
UiGanttChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiGanttChartComponent, selector: "bsu-ui-gantt-chart", usesInheritance: true, ngImport: i0, template: "<ng-container\n *ngTemplateOutlet=\"\n renderContainer;\n context: {\n $implicit: moDataList$ | async,\n allChecked: allChecked$ | async,\n groupby: groupby$ | async,\n isCheckList: context.Setting.View?.IsCheckList,\n columns: columns$ | async,\n columnsCount: columnsCount$ | async,\n allowInlineEdit: allowInlineEdit$ | async,\n inlineEditMode: inlineEditMode$ | async,\n onlyInlineEdit: onlyInlineEdit$ | async,\n secondaryColumns: secondaryColumns$ | async,\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\n conditionalFormats: conditionalFormats$ | async,\n deviceName: deviceName$ | async,\n deviceSize: deviceSize$ | async,\n mobileOrTablet: mobileOrTablet$ | async,\n access: context.Setting.Extra?.DefaultCommandsAccess,\n title: title$ | async,\n rtl: rtl$ | async,\n hideToolbar: hideToolbar$ | async,\n allColumns: allColumns,\n gridSetting: gridSetting$ | async,\n contentDensity: contentDensity$ | async,\n formLayout: layout$ | async,\n hasSelected: hasSelected$ | async,\n showOkCancelButtons: showOkCancelButtons,\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\n navigationArrow: navigationArrow$ | async,\n mode: mode$ | async,\n ganttFields: context.Setting.View.GanttFields,\n ganttChartHelper: context._ganttChartHelper\n }\n \"\n></ng-container>\n<ng-template\n #renderContainer\n let-moDataList\n let-allChecked=\"allChecked\"\n let-isCheckList=\"isCheckList\"\n let-columns=\"columns\"\n let-columnsCount=\"columnsCount\"\n let-groupby=\"groupby\"\n let-secondaryColumns=\"secondaryColumns\"\n let-contextMenuItems=\"contextMenuItems\"\n let-conditionalFormats=\"conditionalFormats\"\n let-deviceName=\"deviceName\"\n let-deviceSize=\"deviceSize\"\n let-access=\"access\"\n let-toolbarButtons=\"toolbarButtons\"\n let-popin=\"popin\"\n let-mobileOrTablet=\"mobileOrTablet\"\n let-title=\"title\"\n let-inlineEditMode=\"inlineEditMode\"\n let-allowInlineEdit=\"allowInlineEdit\"\n let-hideToolbar=\"hideToolbar\"\n let-gridSetting=\"gridSetting\"\n let-contentDensity=\"contentDensity\"\n let-formLayout=\"formLayout\"\n let-hasSelected=\"hasSelected\"\n let-showOkCancelButtons=\"showOkCancelButtons\"\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\n let-navigationArrow=\"navigationArrow\"\n let-mode=\"mode\"\n let-ganttFields=\"ganttFields\"\n let-ganttChartHelper=\"ganttChartHelper\"\n>\n <bsu-ulv-toolbar\n [hideToolbar]=\"hideToolbar\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [toolbarButtons]=\"toolbarButtons\"\n [gridSetting]=\"gridSetting\"\n [title]=\"title\"\n [hasSelected]=\"hasSelected\"\n [access]=\"access\"\n [contentDensity]=\"contentDensity\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n ></bsu-ulv-toolbar>\n <bsu-gantt-dhtml-chart-view\n [isCheckList]=\"isCheckList\"\n [allChecked]=\"allChecked\"\n [moDataList]=\"moDataList\"\n [access]=\"access\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [navigationArrow]=\"navigationArrow\"\n [title]=\"title\"\n [mobileOrTablet]=\"mobileOrTablet\"\n [contextMenuItems]=\"contextMenuItems\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n [mode]=\"mode\"\n [showOkCancelButtons]=\"showOkCancelButtons\"\n [ganttFields]=\"ganttFields\"\n [ganttChartHelper]=\"ganttChartHelper\"\n (ulvCommandClick)=\"onUlvCommand($event)\"\n (filter)=\"onFilter($event)\"\n (rowClick)=\"onRowClick($event)\"\n (rowCheck)=\"onRowCheck($event)\"\n >\n </bsu-gantt-dhtml-chart-view>\n</ng-template>\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.UlvToolbarComponent, selector: "bsu-ulv-toolbar", inputs: ["useLayoutItemTextForControl", "enableSearch", "hideTitle", "title", "deviceName", "deviceSize", "access", "hideToolbar", "toolbarButtons", "contentDensity", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "reportView", "hasSelected", "config", "hidden", "buttons"], outputs: ["search", "groupbyClick", "sortClick", "columnClick", "editModeClick", "viewClick"] }, { kind: "component", type: i3.GanttDhtmlChartViewComponent, selector: "bsu-gantt-dhtml-chart-view", inputs: ["mode", "ganttFields", "ganttChartHelper"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.SeperatorFixPipe, name: "seperatorFix" }, { kind: "pipe", type: i4.ContextMenuPipe, name: "contextMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
27
|
+
UiGanttChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiGanttChartComponent, selector: "bsu-ui-gantt-chart", usesInheritance: true, ngImport: i0, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n renderContainer;\r\n context: {\r\n $implicit: moDataList$ | async,\r\n allChecked: allChecked$ | async,\r\n groupby: groupby$ | async,\r\n isCheckList: context.Setting.View?.IsCheckList,\r\n columns: columns$ | async,\r\n columnsCount: columnsCount$ | async,\r\n allowInlineEdit: allowInlineEdit$ | async,\r\n inlineEditMode: inlineEditMode$ | async,\r\n onlyInlineEdit: onlyInlineEdit$ | async,\r\n secondaryColumns: secondaryColumns$ | async,\r\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\r\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\r\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\r\n conditionalFormats: conditionalFormats$ | async,\r\n deviceName: deviceName$ | async,\r\n deviceSize: deviceSize$ | async,\r\n mobileOrTablet: mobileOrTablet$ | async,\r\n access: context.Setting.Extra?.DefaultCommandsAccess,\r\n title: title$ | async,\r\n rtl: rtl$ | async,\r\n hideToolbar: hideToolbar$ | async,\r\n allColumns: allColumns,\r\n gridSetting: gridSetting$ | async,\r\n contentDensity: contentDensity$ | async,\r\n formLayout: layout$ | async,\r\n hasSelected: hasSelected$ | async,\r\n showOkCancelButtons: showOkCancelButtons,\r\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\r\n navigationArrow: navigationArrow$ | async,\r\n mode: mode$ | async,\r\n ganttFields: context.Setting.View.GanttFields,\r\n ganttChartHelper: context._ganttChartHelper\r\n }\r\n \"\r\n></ng-container>\r\n<ng-template\r\n #renderContainer\r\n let-moDataList\r\n let-allChecked=\"allChecked\"\r\n let-isCheckList=\"isCheckList\"\r\n let-columns=\"columns\"\r\n let-columnsCount=\"columnsCount\"\r\n let-groupby=\"groupby\"\r\n let-secondaryColumns=\"secondaryColumns\"\r\n let-contextMenuItems=\"contextMenuItems\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-deviceSize=\"deviceSize\"\r\n let-access=\"access\"\r\n let-toolbarButtons=\"toolbarButtons\"\r\n let-popin=\"popin\"\r\n let-mobileOrTablet=\"mobileOrTablet\"\r\n let-title=\"title\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-allowInlineEdit=\"allowInlineEdit\"\r\n let-hideToolbar=\"hideToolbar\"\r\n let-gridSetting=\"gridSetting\"\r\n let-contentDensity=\"contentDensity\"\r\n let-formLayout=\"formLayout\"\r\n let-hasSelected=\"hasSelected\"\r\n let-showOkCancelButtons=\"showOkCancelButtons\"\r\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\r\n let-navigationArrow=\"navigationArrow\"\r\n let-mode=\"mode\"\r\n let-ganttFields=\"ganttFields\"\r\n let-ganttChartHelper=\"ganttChartHelper\"\r\n>\r\n <bsu-ulv-toolbar\r\n [hideToolbar]=\"hideToolbar\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [toolbarButtons]=\"toolbarButtons\"\r\n [gridSetting]=\"gridSetting\"\r\n [title]=\"title\"\r\n [hasSelected]=\"hasSelected\"\r\n [access]=\"access\"\r\n [contentDensity]=\"contentDensity\"\r\n [inlineEditMode]=\"false\"\r\n [allowInlineEdit]=\"false\"\r\n ></bsu-ulv-toolbar>\r\n <bsu-gantt-dhtml-chart-view\r\n [isCheckList]=\"isCheckList\"\r\n [allChecked]=\"allChecked\"\r\n [moDataList]=\"moDataList\"\r\n [access]=\"access\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [title]=\"title\"\r\n [mobileOrTablet]=\"mobileOrTablet\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [inlineEditMode]=\"false\"\r\n [allowInlineEdit]=\"false\"\r\n [mode]=\"mode\"\r\n [showOkCancelButtons]=\"showOkCancelButtons\"\r\n [ganttFields]=\"ganttFields\"\r\n [ganttChartHelper]=\"ganttChartHelper\"\r\n (ulvCommandClick)=\"onUlvCommand($event)\"\r\n (filter)=\"onFilter($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n >\r\n </bsu-gantt-dhtml-chart-view>\r\n</ng-template>\r\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.UlvToolbarComponent, selector: "bsu-ulv-toolbar", inputs: ["useLayoutItemTextForControl", "enableSearch", "hideTitle", "title", "deviceName", "deviceSize", "access", "hideToolbar", "toolbarButtons", "contentDensity", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "reportView", "inDialog", "isMultiSelect", "hasSelected", "config", "hidden", "buttons"], outputs: ["search", "groupbyClick", "sortClick", "columnClick", "editModeClick", "viewClick", "createNewInlineMo"] }, { kind: "component", type: i3.GanttDhtmlChartViewComponent, selector: "bsu-gantt-dhtml-chart-view", inputs: ["mode", "ganttFields", "ganttChartHelper"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.SeperatorFixPipe, name: "seperatorFix" }, { kind: "pipe", type: i4.ContextMenuPipe, name: "contextMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
28
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiGanttChartComponent, decorators: [{
|
|
29
29
|
type: Component,
|
|
30
|
-
args: [{ selector: 'bsu-ui-gantt-chart', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container\n *ngTemplateOutlet=\"\n renderContainer;\n context: {\n $implicit: moDataList$ | async,\n allChecked: allChecked$ | async,\n groupby: groupby$ | async,\n isCheckList: context.Setting.View?.IsCheckList,\n columns: columns$ | async,\n columnsCount: columnsCount$ | async,\n allowInlineEdit: allowInlineEdit$ | async,\n inlineEditMode: inlineEditMode$ | async,\n onlyInlineEdit: onlyInlineEdit$ | async,\n secondaryColumns: secondaryColumns$ | async,\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\n conditionalFormats: conditionalFormats$ | async,\n deviceName: deviceName$ | async,\n deviceSize: deviceSize$ | async,\n mobileOrTablet: mobileOrTablet$ | async,\n access: context.Setting.Extra?.DefaultCommandsAccess,\n title: title$ | async,\n rtl: rtl$ | async,\n hideToolbar: hideToolbar$ | async,\n allColumns: allColumns,\n gridSetting: gridSetting$ | async,\n contentDensity: contentDensity$ | async,\n formLayout: layout$ | async,\n hasSelected: hasSelected$ | async,\n showOkCancelButtons: showOkCancelButtons,\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\n navigationArrow: navigationArrow$ | async,\n mode: mode$ | async,\n ganttFields: context.Setting.View.GanttFields,\n ganttChartHelper: context._ganttChartHelper\n }\n \"\n></ng-container>\n<ng-template\n #renderContainer\n let-moDataList\n let-allChecked=\"allChecked\"\n let-isCheckList=\"isCheckList\"\n let-columns=\"columns\"\n let-columnsCount=\"columnsCount\"\n let-groupby=\"groupby\"\n let-secondaryColumns=\"secondaryColumns\"\n let-contextMenuItems=\"contextMenuItems\"\n let-conditionalFormats=\"conditionalFormats\"\n let-deviceName=\"deviceName\"\n let-deviceSize=\"deviceSize\"\n let-access=\"access\"\n let-toolbarButtons=\"toolbarButtons\"\n let-popin=\"popin\"\n let-mobileOrTablet=\"mobileOrTablet\"\n let-title=\"title\"\n let-inlineEditMode=\"inlineEditMode\"\n let-allowInlineEdit=\"allowInlineEdit\"\n let-hideToolbar=\"hideToolbar\"\n let-gridSetting=\"gridSetting\"\n let-contentDensity=\"contentDensity\"\n let-formLayout=\"formLayout\"\n let-hasSelected=\"hasSelected\"\n let-showOkCancelButtons=\"showOkCancelButtons\"\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\n let-navigationArrow=\"navigationArrow\"\n let-mode=\"mode\"\n let-ganttFields=\"ganttFields\"\n let-ganttChartHelper=\"ganttChartHelper\"\n>\n <bsu-ulv-toolbar\n [hideToolbar]=\"hideToolbar\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [toolbarButtons]=\"toolbarButtons\"\n [gridSetting]=\"gridSetting\"\n [title]=\"title\"\n [hasSelected]=\"hasSelected\"\n [access]=\"access\"\n [contentDensity]=\"contentDensity\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n ></bsu-ulv-toolbar>\n <bsu-gantt-dhtml-chart-view\n [isCheckList]=\"isCheckList\"\n [allChecked]=\"allChecked\"\n [moDataList]=\"moDataList\"\n [access]=\"access\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [navigationArrow]=\"navigationArrow\"\n [title]=\"title\"\n [mobileOrTablet]=\"mobileOrTablet\"\n [contextMenuItems]=\"contextMenuItems\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n [mode]=\"mode\"\n [showOkCancelButtons]=\"showOkCancelButtons\"\n [ganttFields]=\"ganttFields\"\n [ganttChartHelper]=\"ganttChartHelper\"\n (ulvCommandClick)=\"onUlvCommand($event)\"\n (filter)=\"onFilter($event)\"\n (rowClick)=\"onRowClick($event)\"\n (rowCheck)=\"onRowCheck($event)\"\n >\n </bsu-gantt-dhtml-chart-view>\n</ng-template>\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"] }]
|
|
30
|
+
args: [{ selector: 'bsu-ui-gantt-chart', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n renderContainer;\r\n context: {\r\n $implicit: moDataList$ | async,\r\n allChecked: allChecked$ | async,\r\n groupby: groupby$ | async,\r\n isCheckList: context.Setting.View?.IsCheckList,\r\n columns: columns$ | async,\r\n columnsCount: columnsCount$ | async,\r\n allowInlineEdit: allowInlineEdit$ | async,\r\n inlineEditMode: inlineEditMode$ | async,\r\n onlyInlineEdit: onlyInlineEdit$ | async,\r\n secondaryColumns: secondaryColumns$ | async,\r\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\r\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\r\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\r\n conditionalFormats: conditionalFormats$ | async,\r\n deviceName: deviceName$ | async,\r\n deviceSize: deviceSize$ | async,\r\n mobileOrTablet: mobileOrTablet$ | async,\r\n access: context.Setting.Extra?.DefaultCommandsAccess,\r\n title: title$ | async,\r\n rtl: rtl$ | async,\r\n hideToolbar: hideToolbar$ | async,\r\n allColumns: allColumns,\r\n gridSetting: gridSetting$ | async,\r\n contentDensity: contentDensity$ | async,\r\n formLayout: layout$ | async,\r\n hasSelected: hasSelected$ | async,\r\n showOkCancelButtons: showOkCancelButtons,\r\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\r\n navigationArrow: navigationArrow$ | async,\r\n mode: mode$ | async,\r\n ganttFields: context.Setting.View.GanttFields,\r\n ganttChartHelper: context._ganttChartHelper\r\n }\r\n \"\r\n></ng-container>\r\n<ng-template\r\n #renderContainer\r\n let-moDataList\r\n let-allChecked=\"allChecked\"\r\n let-isCheckList=\"isCheckList\"\r\n let-columns=\"columns\"\r\n let-columnsCount=\"columnsCount\"\r\n let-groupby=\"groupby\"\r\n let-secondaryColumns=\"secondaryColumns\"\r\n let-contextMenuItems=\"contextMenuItems\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-deviceSize=\"deviceSize\"\r\n let-access=\"access\"\r\n let-toolbarButtons=\"toolbarButtons\"\r\n let-popin=\"popin\"\r\n let-mobileOrTablet=\"mobileOrTablet\"\r\n let-title=\"title\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-allowInlineEdit=\"allowInlineEdit\"\r\n let-hideToolbar=\"hideToolbar\"\r\n let-gridSetting=\"gridSetting\"\r\n let-contentDensity=\"contentDensity\"\r\n let-formLayout=\"formLayout\"\r\n let-hasSelected=\"hasSelected\"\r\n let-showOkCancelButtons=\"showOkCancelButtons\"\r\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\r\n let-navigationArrow=\"navigationArrow\"\r\n let-mode=\"mode\"\r\n let-ganttFields=\"ganttFields\"\r\n let-ganttChartHelper=\"ganttChartHelper\"\r\n>\r\n <bsu-ulv-toolbar\r\n [hideToolbar]=\"hideToolbar\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [toolbarButtons]=\"toolbarButtons\"\r\n [gridSetting]=\"gridSetting\"\r\n [title]=\"title\"\r\n [hasSelected]=\"hasSelected\"\r\n [access]=\"access\"\r\n [contentDensity]=\"contentDensity\"\r\n [inlineEditMode]=\"false\"\r\n [allowInlineEdit]=\"false\"\r\n ></bsu-ulv-toolbar>\r\n <bsu-gantt-dhtml-chart-view\r\n [isCheckList]=\"isCheckList\"\r\n [allChecked]=\"allChecked\"\r\n [moDataList]=\"moDataList\"\r\n [access]=\"access\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [title]=\"title\"\r\n [mobileOrTablet]=\"mobileOrTablet\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [inlineEditMode]=\"false\"\r\n [allowInlineEdit]=\"false\"\r\n [mode]=\"mode\"\r\n [showOkCancelButtons]=\"showOkCancelButtons\"\r\n [ganttFields]=\"ganttFields\"\r\n [ganttChartHelper]=\"ganttChartHelper\"\r\n (ulvCommandClick)=\"onUlvCommand($event)\"\r\n (filter)=\"onFilter($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n >\r\n </bsu-gantt-dhtml-chart-view>\r\n</ng-template>\r\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"] }]
|
|
31
31
|
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ2FudHQtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUUzRSxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7O0FBUTNFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSx3QkFBaUQ7SUFONUY7O1FBUVksZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBWSxLQUFLLENBQUMsQ0FBQztLQVkvRDtJQVZHLFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNaLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDM0MsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNTLFlBQVksQ0FBQyxJQUFlO1FBQ2xDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O2tIQWJRLHFCQUFxQjtzR0FBckIscUJBQXFCLGlGQ1psQywwK0lBNEdBOzJGRGhHYSxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0ksb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9zYXAtdWktcmVwb3J0LWJhc2UuY29tcG9uZW50JztcclxuZGVjbGFyZSB0eXBlIEdhbnR0TW9kZSA9ICdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJztcclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11aS1nYW50dC1jaGFydCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZ2FudHQtY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktZ2FudHQtY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaUdhbnR0Q2hhcnRDb21wb25lbnQgZXh0ZW5kcyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQ8VWlSZXBvcnRWaWV3QmFzZVNldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIG1vZGUkOiBPYnNlcnZhYmxlPEdhbnR0TW9kZT47XHJcbiAgICBwcml2YXRlIF9tb2RlU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxHYW50dE1vZGU+KCdkYXknKTtcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm1vZGUkID0gdGhpcy5fbW9kZVNvdXJjZS5hc09ic2VydmFibGUoKS5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLmNvbnRleHQub24oe1xyXG4gICAgICAgICAgICBNb2RlQ2hhbmdlOiB0aGlzLl9tb2RlQ2hhbmdlZC5iaW5kKHRoaXMpXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgX21vZGVDaGFuZ2VkKG1vZGU6IEdhbnR0TW9kZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX21vZGVTb3VyY2UubmV4dChtb2RlKTtcclxuICAgIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyXHJcbiAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgIHJlbmRlckNvbnRhaW5lcjtcclxuICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICRpbXBsaWNpdDogbW9EYXRhTGlzdCQgfCBhc3luYyxcclxuICAgICAgICAgICAgYWxsQ2hlY2tlZDogYWxsQ2hlY2tlZCQgfCBhc3luYyxcclxuICAgICAgICAgICAgZ3JvdXBieTogZ3JvdXBieSQgfCBhc3luYyxcclxuICAgICAgICAgICAgaXNDaGVja0xpc3Q6IGNvbnRleHQuU2V0dGluZy5WaWV3Py5Jc0NoZWNrTGlzdCxcclxuICAgICAgICAgICAgY29sdW1uczogY29sdW1ucyQgfCBhc3luYyxcclxuICAgICAgICAgICAgY29sdW1uc0NvdW50OiBjb2x1bW5zQ291bnQkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGFsbG93SW5saW5lRWRpdDogYWxsb3dJbmxpbmVFZGl0JCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBpbmxpbmVFZGl0TW9kZTogaW5saW5lRWRpdE1vZGUkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIG9ubHlJbmxpbmVFZGl0OiBvbmx5SW5saW5lRWRpdCQgfCBhc3luYyxcclxuICAgICAgICAgICAgc2Vjb25kYXJ5Q29sdW1uczogc2Vjb25kYXJ5Q29sdW1ucyQgfCBhc3luYyxcclxuICAgICAgICAgICAgdG9vbGJhckJ1dHRvbnM6ICh0b29sYmFyQnV0dG9ucyQgfCBhc3luYykhISB8IHNlcGVyYXRvckZpeCxcclxuICAgICAgICAgICAgcG9waW46IChtb2JpbGVPclRhYmxldCQgfCBhc3luYykgfHwgKHNlY29uZGFyeUNvbHVtbnNDb3VudCQgfCBhc3luYykgPyB0cnVlIDogZmFsc2UsXHJcbiAgICAgICAgICAgIGNvbnRleHRNZW51SXRlbXM6IG1lbnVJdGVtcyQgfCBhc3luYyB8IGNvbnRleHRNZW51OiBjb250ZXh0LlNldHRpbmcuVmlldz8uSXNDaGVja0xpc3QsXHJcbiAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0czogY29uZGl0aW9uYWxGb3JtYXRzJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBkZXZpY2VOYW1lOiBkZXZpY2VOYW1lJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBkZXZpY2VTaXplOiBkZXZpY2VTaXplJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBtb2JpbGVPclRhYmxldDogbW9iaWxlT3JUYWJsZXQkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGFjY2VzczogY29udGV4dC5TZXR0aW5nLkV4dHJhPy5EZWZhdWx0Q29tbWFuZHNBY2Nlc3MsXHJcbiAgICAgICAgICAgIHRpdGxlOiB0aXRsZSQgfCBhc3luYyxcclxuICAgICAgICAgICAgcnRsOiBydGwkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGhpZGVUb29sYmFyOiBoaWRlVG9vbGJhciQgfCBhc3luYyxcclxuICAgICAgICAgICAgYWxsQ29sdW1uczogYWxsQ29sdW1ucyxcclxuICAgICAgICAgICAgZ3JpZFNldHRpbmc6IGdyaWRTZXR0aW5nJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBjb250ZW50RGVuc2l0eTogY29udGVudERlbnNpdHkkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGZvcm1MYXlvdXQ6IGxheW91dCQgfCBhc3luYyxcclxuICAgICAgICAgICAgaGFzU2VsZWN0ZWQ6IGhhc1NlbGVjdGVkJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBzaG93T2tDYW5jZWxCdXR0b25zOiBzaG93T2tDYW5jZWxCdXR0b25zLFxyXG4gICAgICAgICAgICBkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudTogdmlld1NldHRpbmc/LkRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51LFxyXG4gICAgICAgICAgICBuYXZpZ2F0aW9uQXJyb3c6IG5hdmlnYXRpb25BcnJvdyQgfCBhc3luYyxcclxuICAgICAgICAgICAgbW9kZTogbW9kZSQgfCBhc3luYyxcclxuICAgICAgICAgICAgZ2FudHRGaWVsZHM6IGNvbnRleHQuU2V0dGluZy5WaWV3LkdhbnR0RmllbGRzLFxyXG4gICAgICAgICAgICBnYW50dENoYXJ0SGVscGVyOiBjb250ZXh0Ll9nYW50dENoYXJ0SGVscGVyXHJcbiAgICAgICAgfVxyXG4gICAgXCJcclxuPjwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGVcclxuICAgICNyZW5kZXJDb250YWluZXJcclxuICAgIGxldC1tb0RhdGFMaXN0XHJcbiAgICBsZXQtYWxsQ2hlY2tlZD1cImFsbENoZWNrZWRcIlxyXG4gICAgbGV0LWlzQ2hlY2tMaXN0PVwiaXNDaGVja0xpc3RcIlxyXG4gICAgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCJcclxuICAgIGxldC1jb2x1bW5zQ291bnQ9XCJjb2x1bW5zQ291bnRcIlxyXG4gICAgbGV0LWdyb3VwYnk9XCJncm91cGJ5XCJcclxuICAgIGxldC1zZWNvbmRhcnlDb2x1bW5zPVwic2Vjb25kYXJ5Q29sdW1uc1wiXHJcbiAgICBsZXQtY29udGV4dE1lbnVJdGVtcz1cImNvbnRleHRNZW51SXRlbXNcIlxyXG4gICAgbGV0LWNvbmRpdGlvbmFsRm9ybWF0cz1cImNvbmRpdGlvbmFsRm9ybWF0c1wiXHJcbiAgICBsZXQtZGV2aWNlTmFtZT1cImRldmljZU5hbWVcIlxyXG4gICAgbGV0LWRldmljZVNpemU9XCJkZXZpY2VTaXplXCJcclxuICAgIGxldC1hY2Nlc3M9XCJhY2Nlc3NcIlxyXG4gICAgbGV0LXRvb2xiYXJCdXR0b25zPVwidG9vbGJhckJ1dHRvbnNcIlxyXG4gICAgbGV0LXBvcGluPVwicG9waW5cIlxyXG4gICAgbGV0LW1vYmlsZU9yVGFibGV0PVwibW9iaWxlT3JUYWJsZXRcIlxyXG4gICAgbGV0LXRpdGxlPVwidGl0bGVcIlxyXG4gICAgbGV0LWlubGluZUVkaXRNb2RlPVwiaW5saW5lRWRpdE1vZGVcIlxyXG4gICAgbGV0LWFsbG93SW5saW5lRWRpdD1cImFsbG93SW5saW5lRWRpdFwiXHJcbiAgICBsZXQtaGlkZVRvb2xiYXI9XCJoaWRlVG9vbGJhclwiXHJcbiAgICBsZXQtZ3JpZFNldHRpbmc9XCJncmlkU2V0dGluZ1wiXHJcbiAgICBsZXQtY29udGVudERlbnNpdHk9XCJjb250ZW50RGVuc2l0eVwiXHJcbiAgICBsZXQtZm9ybUxheW91dD1cImZvcm1MYXlvdXRcIlxyXG4gICAgbGV0LWhhc1NlbGVjdGVkPVwiaGFzU2VsZWN0ZWRcIlxyXG4gICAgbGV0LXNob3dPa0NhbmNlbEJ1dHRvbnM9XCJzaG93T2tDYW5jZWxCdXR0b25zXCJcclxuICAgIGxldC1kaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcclxuICAgIGxldC1uYXZpZ2F0aW9uQXJyb3c9XCJuYXZpZ2F0aW9uQXJyb3dcIlxyXG4gICAgbGV0LW1vZGU9XCJtb2RlXCJcclxuICAgIGxldC1nYW50dEZpZWxkcz1cImdhbnR0RmllbGRzXCJcclxuICAgIGxldC1nYW50dENoYXJ0SGVscGVyPVwiZ2FudHRDaGFydEhlbHBlclwiXHJcbj5cclxuICAgIDxic3UtdWx2LXRvb2xiYXJcclxuICAgICAgICBbaGlkZVRvb2xiYXJdPVwiaGlkZVRvb2xiYXJcIlxyXG4gICAgICAgIFtkZXZpY2VOYW1lXT1cImRldmljZU5hbWVcIlxyXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgICAgIFt0b29sYmFyQnV0dG9uc109XCJ0b29sYmFyQnV0dG9uc1wiXHJcbiAgICAgICAgW2dyaWRTZXR0aW5nXT1cImdyaWRTZXR0aW5nXCJcclxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgICAgIFtoYXNTZWxlY3RlZF09XCJoYXNTZWxlY3RlZFwiXHJcbiAgICAgICAgW2FjY2Vzc109XCJhY2Nlc3NcIlxyXG4gICAgICAgIFtjb250ZW50RGVuc2l0eV09XCJjb250ZW50RGVuc2l0eVwiXHJcbiAgICAgICAgW2lubGluZUVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICBbYWxsb3dJbmxpbmVFZGl0XT1cImZhbHNlXCJcclxuICAgID48L2JzdS11bHYtdG9vbGJhcj5cclxuICAgIDxic3UtZ2FudHQtZGh0bWwtY2hhcnQtdmlld1xyXG4gICAgICAgIFtpc0NoZWNrTGlzdF09XCJpc0NoZWNrTGlzdFwiXHJcbiAgICAgICAgW2FsbENoZWNrZWRdPVwiYWxsQ2hlY2tlZFwiXHJcbiAgICAgICAgW21vRGF0YUxpc3RdPVwibW9EYXRhTGlzdFwiXHJcbiAgICAgICAgW2FjY2Vzc109XCJhY2Nlc3NcIlxyXG4gICAgICAgIFtkZXZpY2VOYW1lXT1cImRldmljZU5hbWVcIlxyXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgICAgIFtuYXZpZ2F0aW9uQXJyb3ddPVwibmF2aWdhdGlvbkFycm93XCJcclxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgICAgIFttb2JpbGVPclRhYmxldF09XCJtb2JpbGVPclRhYmxldFwiXHJcbiAgICAgICAgW2NvbnRleHRNZW51SXRlbXNdPVwiY29udGV4dE1lbnVJdGVtc1wiXHJcbiAgICAgICAgW2lubGluZUVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICBbYWxsb3dJbmxpbmVFZGl0XT1cImZhbHNlXCJcclxuICAgICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgICBbc2hvd09rQ2FuY2VsQnV0dG9uc109XCJzaG93T2tDYW5jZWxCdXR0b25zXCJcclxuICAgICAgICBbZ2FudHRGaWVsZHNdPVwiZ2FudHRGaWVsZHNcIlxyXG4gICAgICAgIFtnYW50dENoYXJ0SGVscGVyXT1cImdhbnR0Q2hhcnRIZWxwZXJcIlxyXG4gICAgICAgICh1bHZDb21tYW5kQ2xpY2spPVwib25VbHZDb21tYW5kKCRldmVudClcIlxyXG4gICAgICAgIChmaWx0ZXIpPVwib25GaWx0ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgKHJvd0NsaWNrKT1cIm9uUm93Q2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgKHJvd0NoZWNrKT1cIm9uUm93Q2hlY2soJGV2ZW50KVwiXHJcbiAgICA+XHJcbiAgICA8L2JzdS1nYW50dC1kaHRtbC1jaGFydC12aWV3PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -13,4 +13,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
|
|
|
13
13
|
type: Component,
|
|
14
14
|
args: [{ selector: 'bsu-ui-graph', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div id=\"graph\"></div>\r\n", styles: [":host{display:block}:host div{min-height:800px;width:100%}\n"] }]
|
|
15
15
|
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ3JhcGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBUTNFLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSx3QkFBaUQ7SUFDbkYsZUFBZTtRQUNYLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQixDQUFDOzs2R0FKUSxnQkFBZ0I7aUdBQWhCLGdCQUFnQiwyRUNYN0IsOEJBQ0E7MkZEVWEsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNJLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9zYXAtdWktcmVwb3J0LWJhc2UuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktZ3JhcGgnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLWdyYXBoLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLWdyYXBoLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlHcmFwaENvbXBvbmVudCBleHRlbmRzIFNhcFVpUmVwb3J0QmFzZUNvbXBvbmVudDxVaVJlcG9ydFZpZXdCYXNlU2V0dGluZz4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgICAgICB0aGlzLmNvbnRleHQuRHJhdygnZ3JhcGgnKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGlkPVwiZ3JhcGhcIj48L2Rpdj5cclxuIl19
|