barsa-sap-ui 1.0.322 → 1.0.324
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-cartable-form/barsa-cartable-form.component.mjs +2 -2
- package/esm2020/lib/barsa-group-cartable/barsa-cartable-group.component.mjs +2 -2
- package/esm2020/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.mjs +129 -11
- package/esm2020/lib/barsa-table-column/barsa-table-column.component.mjs +3 -3
- package/esm2020/lib/blob-viewer/blob-viewer.component.mjs +25 -7
- package/esm2020/lib/card-item/card-item.component.mjs +1 -1
- package/esm2020/lib/column-renderer/column-renderer.component.mjs +14 -5
- package/esm2020/lib/file-viewer-popover/file-viewer-popover.component.mjs +11 -4
- package/esm2020/lib/form-toolbar-button/form-toolbar-button.component.mjs +5 -6
- package/esm2020/lib/layout-control/layout-control.component.mjs +3 -2
- package/esm2020/lib/list-item/list-item.component.mjs +1 -1
- package/esm2020/lib/ly-layout-panel/ly-layout-panel.component.mjs +3 -3
- package/esm2020/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +7 -6
- package/esm2020/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +3 -3
- package/esm2020/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +3 -3
- package/esm2020/lib/ui-read-only-field/ui-read-only-field.component.mjs +3 -3
- package/esm2020/lib/ulv-context-menu/ulv-context-menu.component.mjs +2 -2
- package/fesm2015/barsa-sap-ui.mjs +425 -279
- package/fesm2015/barsa-sap-ui.mjs.map +1 -1
- package/fesm2020/barsa-sap-ui.mjs +421 -276
- package/fesm2020/barsa-sap-ui.mjs.map +1 -1
- package/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.d.ts +56 -6
- package/lib/blob-viewer/blob-viewer.component.d.ts +6 -2
- package/lib/column-renderer/column-renderer.component.d.ts +5 -3
- package/lib/file-viewer-popover/file-viewer-popover.component.d.ts +5 -1
- package/package.json +1 -1
|
@@ -86,4 +86,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
|
|
|
86
86
|
type: HostBinding,
|
|
87
87
|
args: ['style']
|
|
88
88
|
}] } });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHktY29uZGl0aW9uYWwtZm9ybW1hdGluZ3MuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYXBwbHktY29uZGl0aW9uYWwtZm9ybW1hdGluZ3MuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsV0FBVyxFQUFFLEtBQUssRUFBK0MsTUFBTSxlQUFlLENBQUM7QUFDdkgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUtyRCxNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsYUFBYTtJQWEvRCxZQUFzQixHQUFlLEVBQVUsU0FBb0I7UUFDL0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRE8sUUFBRyxHQUFILEdBQUcsQ0FBWTtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFEN0MsVUFBSyxHQUFHLEVBQUUsQ0FBQztJQUdqQyxDQUFDO0lBQ0QsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUNELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQy9CLElBQUksVUFBVSxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRTtZQUN2QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDakI7SUFDTCxDQUFDO0lBRU8sTUFBTTtRQUNWLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztRQUM1QyxNQUFNLFdBQVcsR0FDYixJQUFJLENBQUMsTUFBTSxZQUFZLFdBQVc7WUFDOUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNO1lBQ2IsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEtB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LEtBQUs7Z0JBQ2dCLEtBQUs7c0JBQTFCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgUmVuZGVyZXIyLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VEaXJlY3RpdmUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnW2FwcGx5Q29uZGl0aW9uYWxGb3JtYXRzXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcGx5Q29uZGl0aW9uYWxGb3JtYXRzRGlyZWN0aXZlIGV4dGVuZHMgQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICAgIEBJbnB1dCgpIGFwcGx5Q29uZGl0aW9uYWxGb3JtYXRzOiB7XHJcbiAgICAgICAgQ2xzOiBzdHJpbmc7XHJcbiAgICAgICAgQ29sdW1uPzogc3RyaW5nO1xyXG4gICAgICAgIFN0eWxlOiBzdHJpbmc7XHJcbiAgICAgICAgSXNDb21tYW5kOiBib29sZWFuO1xyXG4gICAgICAgIEFsaWFzOiBzdHJpbmc7XHJcbiAgICAgICAgQ3NzQ2xhc3M6IHN0cmluZztcclxuICAgIH1bXTtcclxuICAgIEBJbnB1dCgpIHN0eWxlSW5kZXg6IG51bWJlcltdO1xyXG4gICAgQElucHV0KCkgaG9zdEVsOiBhbnk7XHJcbiAgICBASW5wdXQoKSBkYk5hbWU6IHN0cmluZztcclxuICAgIEBIb3N0QmluZGluZygnc3R5bGUnKSBzdHlsZSA9ICcnO1xyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9lbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjI6IFJlbmRlcmVyMikge1xyXG4gICAgICAgIHN1cGVyKF9lbCk7XHJcbiAgICB9XHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIHRoaXMuX2FwcGx5KCk7XHJcbiAgICB9XHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgeyBzdHlsZUluZGV4IH0gPSBjaGFuZ2VzO1xyXG4gICAgICAgIGlmIChzdHlsZUluZGV4ICYmICFzdHlsZUluZGV4LmZpcnN0Q2hhbmdlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2FwcGx5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2FwcGx5KCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHN0eWxlcyA9IHRoaXMuYXBwbHlDb25kaXRpb25hbEZvcm1hdHM7XHJcbiAgICAgICAgY29uc3QgaHRtbEVsZW1lbnQ6IEhUTUxFbGVtZW50ID1cclxuICAgICAgICAgICAgdGhpcy5ob3N0RWwgaW5zdGFuY2VvZiBIVE1MRWxlbWVudFxyXG4gICAgICAgICAgICAgICAgPyB0aGlzLmhvc3RFbFxyXG4gICAgICAgICAgICAgICAgOiB0eXBlb2YgdGhpcy5ob3N0RWwuZWxlbWVudFJlZiA9PT0gJ2Z1bmN0aW9uJ1xyXG4gICAgICAgICAgICAgICAgPyB0aGlzLmhvc3RFbC5lbGVtZW50UmVmKCkubmF0aXZlRWxlbWVudFxyXG4gICAgICAgICAgICAgICAgOiB0aGlzLmhvc3RFbC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcblxyXG4gICAgICAgIHN0eWxlcz8uZm9yRWFjaCgoc3R5bGUpID0+IHtcclxuICAgICAgICAgICAgaWYgKHN0eWxlLklzQ29tbWFuZCAmJiB0aGlzLmRiTmFtZSA9PT0gc3R5bGUuQWxpYXMpIHtcclxuICAgICAgICAgICAgICAgIGlmIChodG1sRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoc3R5bGUuQ3NzQ2xhc3MpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlcjIucmVtb3ZlQ2xhc3MoaHRtbEVsZW1lbnQsIHN0eWxlLkNzc0NsYXNzKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoc3R5bGUuU3R5bGUpIHtcclxuICAgICAgICAgICAgICAgIGh0bWxFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnc3R5bGUnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoc3R5bGUuQ3NzQ2xhc3MpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIyLnJlbW92ZUNsYXNzKHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQsIHN0eWxlLkNzc0NsYXNzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlmICghdGhpcy5zdHlsZUluZGV4Py5sZW5ndGgpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnN0eWxlSW5kZXguZm9yRWFjaCgodmFsKSA9PiB7XHJcbiAgICAgICAgICAgIHN0eWxlcy5mb3JFYWNoKChzdHlsZSwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gdmFsICYmIHN0eWxlLklzQ29tbWFuZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmRiTmFtZSA9PT0gc3R5bGUuQWxpYXMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlcjIuYWRkQ2xhc3ModGhpcy5fZWwubmF0aXZlRWxlbWVudCwgc3R5bGUuQ3NzQ2xhc3MpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsID09PSBpbmRleCAmJiB0aGlzLmRiTmFtZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChzdHlsZS5Db2x1bW4gPT09IHRoaXMuZGJOYW1lKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIyLnNldEF0dHJpYnV0ZShodG1sRWxlbWVudCwgJ3N0eWxlJywgc3R5bGUuU3R5bGUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3R5bGUuQ3NzQ2xhc3MpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKGh0bWxFbGVtZW50LCBzdHlsZS5Dc3NDbGFzcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHZhbCA9PT0gaW5kZXggJiYgIXN0eWxlLkNvbHVtbikge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIyLnNldEF0dHJpYnV0ZShodG1sRWxlbWVudCwgJ3N0eWxlJywgc3R5bGUuU3R5bGUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChzdHlsZS5Dc3NDbGFzcykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyMi5hZGRDbGFzcyhodG1sRWxlbWVudCwgc3R5bGUuQ3NzQ2xhc3MpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAvLyBodG1sRWxlbWVudC5zdHlsZS5jc3NUZXh0ID0gc3R5bGUuU3R5bGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -30,10 +30,10 @@ export class BarsaCartableFormComponent extends FormBaseComponent {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
BarsaCartableFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaCartableFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
BarsaCartableFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaCartableFormComponent, selector: "bsu-barsa-cartable-form", host: { properties: { "class.smallDevice": "this._isSmallDevice" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"layout94$ | async as layout94\">\n <div class=\"groups-wrapper\">\n <bsu-layout-control\n class=\"search-group\"\n *ngIf=\"'\u062C\u0633\u062A\u062C\u0648 \u06AF\u0631\u0648\u0647' | controlUi: layout94 as configUi\"\n [caption]=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n <bsu-layout-control\n class=\"cartable-groups\"\n *ngIf=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644 \u06A9\u0627\u0631\u0628\u0631' | controlUi: layout94 as configUi\"\n [caption]=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n </div>\n <bsu-layout-control\n class=\"cartable-radif\"\n *ngIf=\"'\u0631\u062F\u06CC\u0641\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644' | controlUi: layout94 as configUi\"\n [caption]=\"'\u0631\u062F\u06CC\u0641\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n</ng-container>\n", styles: [":host{display:flex;width:100%;height:100%;border:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);background-color:#fff}:host.smallDevice{flex-direction:column;min-height:100vh}:host.smallDevice ::ng-deep bnrc-field-ui{margin:unset!important}:host .groups-wrapper{display:flex;flex-direction:column;min-width:280px;max-width:280px;border-left:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host .cartable-groups{flex:1}:host.smallDevice .groups-wrapper{flex:unset;width:100%;min-width:100%;max-width:100%}:host.smallDevice .search-group{display:none}:host.smallDevice .cartable-groups{flex:unset}div{flex:1}:host ::ng-deep .viewer-container{height:100%!important}:host ::ng-deep tbody{border:none!important}:host ::ng-deep bnrc-field-ui{padding:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
33
|
+
BarsaCartableFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaCartableFormComponent, selector: "bsu-barsa-cartable-form", host: { properties: { "class.smallDevice": "this._isSmallDevice" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"layout94$ | async as layout94\">\n <div class=\"groups-wrapper\">\n <bsu-layout-control\n class=\"search-group\"\n *ngIf=\"'\u062C\u0633\u062A\u062C\u0648 \u06AF\u0631\u0648\u0647' | controlUi: layout94 as configUi\"\n [caption]=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n <bsu-layout-control\n class=\"cartable-groups\"\n *ngIf=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644 \u06A9\u0627\u0631\u0628\u0631' | controlUi: layout94 as configUi\"\n [caption]=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n </div>\n <bsu-layout-control\n class=\"cartable-radif\"\n *ngIf=\"'\u0631\u062F\u06CC\u0641\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644' | controlUi: layout94 as configUi\"\n [caption]=\"'\u0631\u062F\u06CC\u0641\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n</ng-container>\n", styles: [":host{display:flex;width:100%;height:100%;border:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);background-color:#fff}:host.smallDevice{flex-direction:column;min-height:100vh}:host.smallDevice ::ng-deep bnrc-field-ui{margin:unset!important}:host .groups-wrapper{display:flex;flex-direction:column;min-width:280px;max-width:280px;border-left:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host .cartable-groups{flex:1}:host.smallDevice .groups-wrapper{flex:unset;width:100%;min-width:100%;max-width:100%}:host.smallDevice .search-group{display:none}:host.smallDevice .cartable-groups{flex:unset}div{flex:1}:host ::ng-deep .viewer-container{min-height:100%!important}:host ::ng-deep .viewer-container fd-layout-panel{box-shadow:none}:host ::ng-deep tbody{border:none!important}:host ::ng-deep bnrc-field-ui{padding:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
34
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaCartableFormComponent, decorators: [{
|
|
35
35
|
type: Component,
|
|
36
|
-
args: [{ selector: 'bsu-barsa-cartable-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"layout94$ | async as layout94\">\n <div class=\"groups-wrapper\">\n <bsu-layout-control\n class=\"search-group\"\n *ngIf=\"'\u062C\u0633\u062A\u062C\u0648 \u06AF\u0631\u0648\u0647' | controlUi: layout94 as configUi\"\n [caption]=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n <bsu-layout-control\n class=\"cartable-groups\"\n *ngIf=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644 \u06A9\u0627\u0631\u0628\u0631' | controlUi: layout94 as configUi\"\n [caption]=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n </div>\n <bsu-layout-control\n class=\"cartable-radif\"\n *ngIf=\"'\u0631\u062F\u06CC\u0641\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644' | controlUi: layout94 as configUi\"\n [caption]=\"'\u0631\u062F\u06CC\u0641\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n</ng-container>\n", styles: [":host{display:flex;width:100%;height:100%;border:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);background-color:#fff}:host.smallDevice{flex-direction:column;min-height:100vh}:host.smallDevice ::ng-deep bnrc-field-ui{margin:unset!important}:host .groups-wrapper{display:flex;flex-direction:column;min-width:280px;max-width:280px;border-left:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host .cartable-groups{flex:1}:host.smallDevice .groups-wrapper{flex:unset;width:100%;min-width:100%;max-width:100%}:host.smallDevice .search-group{display:none}:host.smallDevice .cartable-groups{flex:unset}div{flex:1}:host ::ng-deep .viewer-container{height:100%!important}:host ::ng-deep tbody{border:none!important}:host ::ng-deep bnrc-field-ui{padding:0!important}\n"] }]
|
|
36
|
+
args: [{ selector: 'bsu-barsa-cartable-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"layout94$ | async as layout94\">\n <div class=\"groups-wrapper\">\n <bsu-layout-control\n class=\"search-group\"\n *ngIf=\"'\u062C\u0633\u062A\u062C\u0648 \u06AF\u0631\u0648\u0647' | controlUi: layout94 as configUi\"\n [caption]=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n <bsu-layout-control\n class=\"cartable-groups\"\n *ngIf=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644 \u06A9\u0627\u0631\u0628\u0631' | controlUi: layout94 as configUi\"\n [caption]=\"'\u06AF\u0631\u0648\u0647\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n </div>\n <bsu-layout-control\n class=\"cartable-radif\"\n *ngIf=\"'\u0631\u062F\u06CC\u0641\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644' | controlUi: layout94 as configUi\"\n [caption]=\"'\u0631\u062F\u06CC\u0641\u0647\u0627\u06CC \u06A9\u0627\u0631\u062A\u0627\u0628\u0644'\"\n [config]=\"configUi\"\n [showLabel]=\"false\"\n ></bsu-layout-control>\n</ng-container>\n", styles: [":host{display:flex;width:100%;height:100%;border:var(--sapList_BorderWidth) solid var(--sapList_BorderColor);background-color:#fff}:host.smallDevice{flex-direction:column;min-height:100vh}:host.smallDevice ::ng-deep bnrc-field-ui{margin:unset!important}:host .groups-wrapper{display:flex;flex-direction:column;min-width:280px;max-width:280px;border-left:var(--sapList_BorderWidth) solid var(--sapList_BorderColor)}:host .cartable-groups{flex:1}:host.smallDevice .groups-wrapper{flex:unset;width:100%;min-width:100%;max-width:100%}:host.smallDevice .search-group{display:none}:host.smallDevice .cartable-groups{flex:unset}div{flex:1}:host ::ng-deep .viewer-container{min-height:100%!important}:host ::ng-deep .viewer-container fd-layout-panel{box-shadow:none}:host ::ng-deep tbody{border:none!important}:host ::ng-deep bnrc-field-ui{padding:0!important}\n"] }]
|
|
37
37
|
}], propDecorators: { _isSmallDevice: [{
|
|
38
38
|
type: HostBinding,
|
|
39
39
|
args: ['class.smallDevice']
|
|
@@ -87,10 +87,10 @@ export class BarsaCartableGroupComponent extends BaseViewItemPropsComponent {
|
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
BarsaCartableGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaCartableGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
90
|
-
BarsaCartableGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaCartableGroupComponent, selector: "bsu-barsa-cartable-group", outputs: { events: "events" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<!-- <li\n [interactive]=\"true\"\n fd-list-item\n [selected]=\"allItemChecked ? true : false\"\n (click)=\"onRowCheckAll()\"\n *ngIf=\"allItem\"\n>\n <div class=\"title-container\">\n <div style=\"background-color: transparent; width: 0.2rem; height: 100%\"></div>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center\">\n <span [style.fontSize]=\"allItem.unreadCount > 0 ? 'bold' : null\">{{ '\u0647\u0645\u0647 \u0645\u0648\u0627\u0631\u062F' | bbbTranslate }}</span>\n <ng-container *ngIf=\"allItem.unreadCount > 0\">\n <strong style=\"padding: 0 2px; direction: ltr\">({{ allItem.unreadCount }})</strong>\n </ng-container>\n <span style=\"padding: 0 5px\" *ngIf=\"allItem.allCount > 0\">{{ allItem.allCount }}</span>\n </div>\n </span>\n </div>\n</li> -->\n\n<ng-container>\n <ng-container *ngIf=\"allItem\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: '\u0647\u0645\u0647 \u0645\u0648\u0627\u0631\u062F' | bbbTranslate,\n unreadCount: allItem.unreadCount,\n allCount: allItem.allCount,\n backColor: 'transparent',\n isAll: true,\n isChecked: allItemChecked\n }\n \"\n ></ng-container>\n </ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: parameters.CartableGroupField | rval: mo:allColumns:true,\n unreadCount: parameters.UnreadCountField | rval: mo:allColumns,\n allCount: parameters.AllCountField | rval: mo:allColumns,\n backColor: (columns[0].Caption | rval: mo:columns),\n isChecked: isChecked,\n icon: parameters.IconField | rval: mo:allColumns:true,\n isBuiltin: isBuiltin\n }\n \"\n ></ng-container>\n</ng-container>\n<ng-container *ngIf=\"isLastBuiltin\">\n <li fd-list-item class=\"space\">\n <span fd-list-title></span>\n </li>\n</ng-container>\n<!-- <ng-container *ngIf=\"last\">\n <ul fd-list>\n <li fd-list-group-header>\n <span fd-list-title style=\"background:#f7f7f7\"></span>\n </li>\n <ng-container *ngFor=\"let mo2 of moDataList\">\n <ng-container *ngIf=\"'\u0633\u06CC\u0633\u062A\u0645\u06CC' | rval: mo2:allColumns\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: parameters.CartableGroupField | rval: mo2:allColumns:true,\n unreadCount: parameters.UnreadCountField | rval: mo2:allColumns,\n allCount: parameters.AllCountField | rval: mo2:allColumns,\n backColor: columns[0].Caption | rval: mo2:columns,\n isChecked: isChecked\n }\n \"\n ></ng-container>\n </ng-container>\n </ng-container>\n </ul>\n</ng-container> -->\n\n<!-- <li fd-list-item [selected]=\"isChecked ? true : false\" (click)=\"onRowCheck()\" [interactive]=\"true\">\n <div class=\"title-container\">\n <div [style.backgroundColor]=\"columns[0].Caption | rval: mo:columns\" style=\"width: 0.2rem; height: 100%\"></div>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center\">\n <span [style.fontSize]=\"parameters.UnreadCountField | rval: mo:allColumns:(true ? 'bold' : null)\"\n >{{ parameters.CartableGroupField | rval: mo:allColumns:true }}\n </span>\n <ng-container *ngIf=\"parameters.UnreadCountField | rval: mo:allColumns:true\">\n <strong style=\"padding: 0 2px; direction: ltr\"\n >({{ parameters.UnreadCountField | rval: mo:allColumns:true }})</strong\n >\n </ng-container>\n <span style=\"padding: 0 5px\">{{ parameters.AllCountField | rval: mo:allColumns:true }}</span>\n </div>\n </span>\n </div>\n</li> -->\n<ng-template\n #itemTemplate\n let-caption\n let-unreadCount=\"unreadCount\"\n let-allCount=\"allCount\"\n let-backColor=\"backColor\"\n let-isAll=\"isAll\"\n let-isChecked=\"isChecked\"\n let-icon=\"icon\"\n let-isBuiltin=\"isBuiltin\"\n>\n <li\n *ngIf=\"isBuiltin || allCount > 0 || isAll\"\n fd-list-item\n [selected]=\"isChecked ? true : false\"\n (click)=\"onClick(isAll)\"\n [interactive]=\"true\"\n >\n <div class=\"title-container\">\n <div [style.backgroundColor]=\"backColor\" style=\"width: 0.2rem; height: 100%\"></div>\n <i *ngIf=\"icon\" fd-list-icon [glyph]=\"icon\"></i>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center; column-gap: 5px\">\n <ng-container *ngIf=\"unreadCount && unreadCount > 0; else spanTemplate\">\n <strong>{{ caption }}</strong>\n <strong style=\"padding: 0 2px; direction: ltr\">({{ unreadCount }})</strong>\n </ng-container>\n <ng-template #spanTemplate>\n <span>{{ caption }}</span>\n </ng-template>\n <span style=\"padding: 0 5px\" *ngIf=\"allCount && allCount > 0\">{{ allCount }}</span>\n </div>\n </span>\n </div>\n </li>\n</ng-template>\n", styles: [":host{display:contents;width:100%;height:100%;cursor:pointer}.title-container{align-items:center;display:flex;column-gap:
|
|
90
|
+
BarsaCartableGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaCartableGroupComponent, selector: "bsu-barsa-cartable-group", outputs: { events: "events" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<!-- <li\n [interactive]=\"true\"\n fd-list-item\n [selected]=\"allItemChecked ? true : false\"\n (click)=\"onRowCheckAll()\"\n *ngIf=\"allItem\"\n>\n <div class=\"title-container\">\n <div style=\"background-color: transparent; width: 0.2rem; height: 100%\"></div>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center\">\n <span [style.fontSize]=\"allItem.unreadCount > 0 ? 'bold' : null\">{{ '\u0647\u0645\u0647 \u0645\u0648\u0627\u0631\u062F' | bbbTranslate }}</span>\n <ng-container *ngIf=\"allItem.unreadCount > 0\">\n <strong style=\"padding: 0 2px; direction: ltr\">({{ allItem.unreadCount }})</strong>\n </ng-container>\n <span style=\"padding: 0 5px\" *ngIf=\"allItem.allCount > 0\">{{ allItem.allCount }}</span>\n </div>\n </span>\n </div>\n</li> -->\n\n<ng-container>\n <ng-container *ngIf=\"allItem\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: '\u0647\u0645\u0647 \u0645\u0648\u0627\u0631\u062F' | bbbTranslate,\n unreadCount: allItem.unreadCount,\n allCount: allItem.allCount,\n backColor: 'transparent',\n isAll: true,\n isChecked: allItemChecked\n }\n \"\n ></ng-container>\n </ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: parameters.CartableGroupField | rval: mo:allColumns:true,\n unreadCount: parameters.UnreadCountField | rval: mo:allColumns,\n allCount: parameters.AllCountField | rval: mo:allColumns,\n backColor: (columns[0].Caption | rval: mo:columns),\n isChecked: isChecked,\n icon: parameters.IconField | rval: mo:allColumns:true,\n isBuiltin: isBuiltin\n }\n \"\n ></ng-container>\n</ng-container>\n<ng-container *ngIf=\"isLastBuiltin\">\n <li fd-list-item class=\"space\">\n <span fd-list-title></span>\n </li>\n</ng-container>\n<!-- <ng-container *ngIf=\"last\">\n <ul fd-list>\n <li fd-list-group-header>\n <span fd-list-title style=\"background:#f7f7f7\"></span>\n </li>\n <ng-container *ngFor=\"let mo2 of moDataList\">\n <ng-container *ngIf=\"'\u0633\u06CC\u0633\u062A\u0645\u06CC' | rval: mo2:allColumns\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: parameters.CartableGroupField | rval: mo2:allColumns:true,\n unreadCount: parameters.UnreadCountField | rval: mo2:allColumns,\n allCount: parameters.AllCountField | rval: mo2:allColumns,\n backColor: columns[0].Caption | rval: mo2:columns,\n isChecked: isChecked\n }\n \"\n ></ng-container>\n </ng-container>\n </ng-container>\n </ul>\n</ng-container> -->\n\n<!-- <li fd-list-item [selected]=\"isChecked ? true : false\" (click)=\"onRowCheck()\" [interactive]=\"true\">\n <div class=\"title-container\">\n <div [style.backgroundColor]=\"columns[0].Caption | rval: mo:columns\" style=\"width: 0.2rem; height: 100%\"></div>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center\">\n <span [style.fontSize]=\"parameters.UnreadCountField | rval: mo:allColumns:(true ? 'bold' : null)\"\n >{{ parameters.CartableGroupField | rval: mo:allColumns:true }}\n </span>\n <ng-container *ngIf=\"parameters.UnreadCountField | rval: mo:allColumns:true\">\n <strong style=\"padding: 0 2px; direction: ltr\"\n >({{ parameters.UnreadCountField | rval: mo:allColumns:true }})</strong\n >\n </ng-container>\n <span style=\"padding: 0 5px\">{{ parameters.AllCountField | rval: mo:allColumns:true }}</span>\n </div>\n </span>\n </div>\n</li> -->\n<ng-template\n #itemTemplate\n let-caption\n let-unreadCount=\"unreadCount\"\n let-allCount=\"allCount\"\n let-backColor=\"backColor\"\n let-isAll=\"isAll\"\n let-isChecked=\"isChecked\"\n let-icon=\"icon\"\n let-isBuiltin=\"isBuiltin\"\n>\n <li\n *ngIf=\"isBuiltin || allCount > 0 || isAll\"\n fd-list-item\n [selected]=\"isChecked ? true : false\"\n (click)=\"onClick(isAll)\"\n [interactive]=\"true\"\n >\n <div class=\"title-container\">\n <div [style.backgroundColor]=\"backColor\" style=\"width: 0.2rem; height: 100%\"></div>\n <i *ngIf=\"icon\" fd-list-icon [glyph]=\"icon\"></i>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center; column-gap: 5px\">\n <ng-container *ngIf=\"unreadCount && unreadCount > 0; else spanTemplate\">\n <strong>{{ caption }}</strong>\n <strong style=\"padding: 0 2px; direction: ltr\">({{ unreadCount }})</strong>\n </ng-container>\n <ng-template #spanTemplate>\n <span>{{ caption }}</span>\n </ng-template>\n <span style=\"padding: 0 5px\" *ngIf=\"allCount && allCount > 0\">{{ allCount }}</span>\n </div>\n </span>\n </div>\n </li>\n</ng-template>\n", styles: [":host{display:contents;width:100%;height:100%;cursor:pointer}.title-container{align-items:center;display:flex;column-gap:5px;height:100%;width:100%}li{padding:0}.space{cursor:default;background-color:var(--sapBackgroundColor);pointer-events:none}.space:focus:before{border:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i2.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i2.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "class", "role"] }, { kind: "pipe", type: i3.MoReportValuePipe, name: "rval" }, { kind: "pipe", type: i3.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
91
91
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaCartableGroupComponent, decorators: [{
|
|
92
92
|
type: Component,
|
|
93
|
-
args: [{ selector: 'bsu-barsa-cartable-group', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- <li\n [interactive]=\"true\"\n fd-list-item\n [selected]=\"allItemChecked ? true : false\"\n (click)=\"onRowCheckAll()\"\n *ngIf=\"allItem\"\n>\n <div class=\"title-container\">\n <div style=\"background-color: transparent; width: 0.2rem; height: 100%\"></div>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center\">\n <span [style.fontSize]=\"allItem.unreadCount > 0 ? 'bold' : null\">{{ '\u0647\u0645\u0647 \u0645\u0648\u0627\u0631\u062F' | bbbTranslate }}</span>\n <ng-container *ngIf=\"allItem.unreadCount > 0\">\n <strong style=\"padding: 0 2px; direction: ltr\">({{ allItem.unreadCount }})</strong>\n </ng-container>\n <span style=\"padding: 0 5px\" *ngIf=\"allItem.allCount > 0\">{{ allItem.allCount }}</span>\n </div>\n </span>\n </div>\n</li> -->\n\n<ng-container>\n <ng-container *ngIf=\"allItem\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: '\u0647\u0645\u0647 \u0645\u0648\u0627\u0631\u062F' | bbbTranslate,\n unreadCount: allItem.unreadCount,\n allCount: allItem.allCount,\n backColor: 'transparent',\n isAll: true,\n isChecked: allItemChecked\n }\n \"\n ></ng-container>\n </ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: parameters.CartableGroupField | rval: mo:allColumns:true,\n unreadCount: parameters.UnreadCountField | rval: mo:allColumns,\n allCount: parameters.AllCountField | rval: mo:allColumns,\n backColor: (columns[0].Caption | rval: mo:columns),\n isChecked: isChecked,\n icon: parameters.IconField | rval: mo:allColumns:true,\n isBuiltin: isBuiltin\n }\n \"\n ></ng-container>\n</ng-container>\n<ng-container *ngIf=\"isLastBuiltin\">\n <li fd-list-item class=\"space\">\n <span fd-list-title></span>\n </li>\n</ng-container>\n<!-- <ng-container *ngIf=\"last\">\n <ul fd-list>\n <li fd-list-group-header>\n <span fd-list-title style=\"background:#f7f7f7\"></span>\n </li>\n <ng-container *ngFor=\"let mo2 of moDataList\">\n <ng-container *ngIf=\"'\u0633\u06CC\u0633\u062A\u0645\u06CC' | rval: mo2:allColumns\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: parameters.CartableGroupField | rval: mo2:allColumns:true,\n unreadCount: parameters.UnreadCountField | rval: mo2:allColumns,\n allCount: parameters.AllCountField | rval: mo2:allColumns,\n backColor: columns[0].Caption | rval: mo2:columns,\n isChecked: isChecked\n }\n \"\n ></ng-container>\n </ng-container>\n </ng-container>\n </ul>\n</ng-container> -->\n\n<!-- <li fd-list-item [selected]=\"isChecked ? true : false\" (click)=\"onRowCheck()\" [interactive]=\"true\">\n <div class=\"title-container\">\n <div [style.backgroundColor]=\"columns[0].Caption | rval: mo:columns\" style=\"width: 0.2rem; height: 100%\"></div>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center\">\n <span [style.fontSize]=\"parameters.UnreadCountField | rval: mo:allColumns:(true ? 'bold' : null)\"\n >{{ parameters.CartableGroupField | rval: mo:allColumns:true }}\n </span>\n <ng-container *ngIf=\"parameters.UnreadCountField | rval: mo:allColumns:true\">\n <strong style=\"padding: 0 2px; direction: ltr\"\n >({{ parameters.UnreadCountField | rval: mo:allColumns:true }})</strong\n >\n </ng-container>\n <span style=\"padding: 0 5px\">{{ parameters.AllCountField | rval: mo:allColumns:true }}</span>\n </div>\n </span>\n </div>\n</li> -->\n<ng-template\n #itemTemplate\n let-caption\n let-unreadCount=\"unreadCount\"\n let-allCount=\"allCount\"\n let-backColor=\"backColor\"\n let-isAll=\"isAll\"\n let-isChecked=\"isChecked\"\n let-icon=\"icon\"\n let-isBuiltin=\"isBuiltin\"\n>\n <li\n *ngIf=\"isBuiltin || allCount > 0 || isAll\"\n fd-list-item\n [selected]=\"isChecked ? true : false\"\n (click)=\"onClick(isAll)\"\n [interactive]=\"true\"\n >\n <div class=\"title-container\">\n <div [style.backgroundColor]=\"backColor\" style=\"width: 0.2rem; height: 100%\"></div>\n <i *ngIf=\"icon\" fd-list-icon [glyph]=\"icon\"></i>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center; column-gap: 5px\">\n <ng-container *ngIf=\"unreadCount && unreadCount > 0; else spanTemplate\">\n <strong>{{ caption }}</strong>\n <strong style=\"padding: 0 2px; direction: ltr\">({{ unreadCount }})</strong>\n </ng-container>\n <ng-template #spanTemplate>\n <span>{{ caption }}</span>\n </ng-template>\n <span style=\"padding: 0 5px\" *ngIf=\"allCount && allCount > 0\">{{ allCount }}</span>\n </div>\n </span>\n </div>\n </li>\n</ng-template>\n", styles: [":host{display:contents;width:100%;height:100%;cursor:pointer}.title-container{align-items:center;display:flex;column-gap:
|
|
93
|
+
args: [{ selector: 'bsu-barsa-cartable-group', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- <li\n [interactive]=\"true\"\n fd-list-item\n [selected]=\"allItemChecked ? true : false\"\n (click)=\"onRowCheckAll()\"\n *ngIf=\"allItem\"\n>\n <div class=\"title-container\">\n <div style=\"background-color: transparent; width: 0.2rem; height: 100%\"></div>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center\">\n <span [style.fontSize]=\"allItem.unreadCount > 0 ? 'bold' : null\">{{ '\u0647\u0645\u0647 \u0645\u0648\u0627\u0631\u062F' | bbbTranslate }}</span>\n <ng-container *ngIf=\"allItem.unreadCount > 0\">\n <strong style=\"padding: 0 2px; direction: ltr\">({{ allItem.unreadCount }})</strong>\n </ng-container>\n <span style=\"padding: 0 5px\" *ngIf=\"allItem.allCount > 0\">{{ allItem.allCount }}</span>\n </div>\n </span>\n </div>\n</li> -->\n\n<ng-container>\n <ng-container *ngIf=\"allItem\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: '\u0647\u0645\u0647 \u0645\u0648\u0627\u0631\u062F' | bbbTranslate,\n unreadCount: allItem.unreadCount,\n allCount: allItem.allCount,\n backColor: 'transparent',\n isAll: true,\n isChecked: allItemChecked\n }\n \"\n ></ng-container>\n </ng-container>\n\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: parameters.CartableGroupField | rval: mo:allColumns:true,\n unreadCount: parameters.UnreadCountField | rval: mo:allColumns,\n allCount: parameters.AllCountField | rval: mo:allColumns,\n backColor: (columns[0].Caption | rval: mo:columns),\n isChecked: isChecked,\n icon: parameters.IconField | rval: mo:allColumns:true,\n isBuiltin: isBuiltin\n }\n \"\n ></ng-container>\n</ng-container>\n<ng-container *ngIf=\"isLastBuiltin\">\n <li fd-list-item class=\"space\">\n <span fd-list-title></span>\n </li>\n</ng-container>\n<!-- <ng-container *ngIf=\"last\">\n <ul fd-list>\n <li fd-list-group-header>\n <span fd-list-title style=\"background:#f7f7f7\"></span>\n </li>\n <ng-container *ngFor=\"let mo2 of moDataList\">\n <ng-container *ngIf=\"'\u0633\u06CC\u0633\u062A\u0645\u06CC' | rval: mo2:allColumns\">\n <ng-container\n *ngTemplateOutlet=\"\n itemTemplate;\n context: {\n $implicit: parameters.CartableGroupField | rval: mo2:allColumns:true,\n unreadCount: parameters.UnreadCountField | rval: mo2:allColumns,\n allCount: parameters.AllCountField | rval: mo2:allColumns,\n backColor: columns[0].Caption | rval: mo2:columns,\n isChecked: isChecked\n }\n \"\n ></ng-container>\n </ng-container>\n </ng-container>\n </ul>\n</ng-container> -->\n\n<!-- <li fd-list-item [selected]=\"isChecked ? true : false\" (click)=\"onRowCheck()\" [interactive]=\"true\">\n <div class=\"title-container\">\n <div [style.backgroundColor]=\"columns[0].Caption | rval: mo:columns\" style=\"width: 0.2rem; height: 100%\"></div>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center\">\n <span [style.fontSize]=\"parameters.UnreadCountField | rval: mo:allColumns:(true ? 'bold' : null)\"\n >{{ parameters.CartableGroupField | rval: mo:allColumns:true }}\n </span>\n <ng-container *ngIf=\"parameters.UnreadCountField | rval: mo:allColumns:true\">\n <strong style=\"padding: 0 2px; direction: ltr\"\n >({{ parameters.UnreadCountField | rval: mo:allColumns:true }})</strong\n >\n </ng-container>\n <span style=\"padding: 0 5px\">{{ parameters.AllCountField | rval: mo:allColumns:true }}</span>\n </div>\n </span>\n </div>\n</li> -->\n<ng-template\n #itemTemplate\n let-caption\n let-unreadCount=\"unreadCount\"\n let-allCount=\"allCount\"\n let-backColor=\"backColor\"\n let-isAll=\"isAll\"\n let-isChecked=\"isChecked\"\n let-icon=\"icon\"\n let-isBuiltin=\"isBuiltin\"\n>\n <li\n *ngIf=\"isBuiltin || allCount > 0 || isAll\"\n fd-list-item\n [selected]=\"isChecked ? true : false\"\n (click)=\"onClick(isAll)\"\n [interactive]=\"true\"\n >\n <div class=\"title-container\">\n <div [style.backgroundColor]=\"backColor\" style=\"width: 0.2rem; height: 100%\"></div>\n <i *ngIf=\"icon\" fd-list-icon [glyph]=\"icon\"></i>\n <span fd-list-title>\n <div style=\"height: 100%; display: flex; align-items: center; column-gap: 5px\">\n <ng-container *ngIf=\"unreadCount && unreadCount > 0; else spanTemplate\">\n <strong>{{ caption }}</strong>\n <strong style=\"padding: 0 2px; direction: ltr\">({{ unreadCount }})</strong>\n </ng-container>\n <ng-template #spanTemplate>\n <span>{{ caption }}</span>\n </ng-template>\n <span style=\"padding: 0 5px\" *ngIf=\"allCount && allCount > 0\">{{ allCount }}</span>\n </div>\n </span>\n </div>\n </li>\n</ng-template>\n", styles: [":host{display:contents;width:100%;height:100%;cursor:pointer}.title-container{align-items:center;display:flex;column-gap:5px;height:100%;width:100%}li{padding:0}.space{cursor:default;background-color:var(--sapBackgroundColor);pointer-events:none}.space:focus:before{border:none}\n"] }]
|
|
94
94
|
}], propDecorators: { events: [{
|
|
95
95
|
type: Output
|
|
96
96
|
}] } });
|
|
@@ -1,14 +1,21 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { FieldBaseComponent } from 'barsa-novin-ray-core';
|
|
2
|
+
import { FieldBaseComponent, DateService, getDateService, LogService, BarsaApi } from 'barsa-novin-ray-core';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
5
|
import * as i2 from "@fundamental-ngx/core/avatar";
|
|
6
6
|
import * as i3 from "@fundamental-ngx/core/link";
|
|
7
7
|
import * as i4 from "@fundamental-ngx/core/button";
|
|
8
8
|
import * as i5 from "@fundamental-ngx/core/card";
|
|
9
|
-
import * as i6 from "@fundamental-ngx/core/
|
|
10
|
-
import * as i7 from "@fundamental-ngx/core/
|
|
11
|
-
import * as i8 from "@fundamental-ngx/core/
|
|
9
|
+
import * as i6 from "@fundamental-ngx/core/info-label";
|
|
10
|
+
import * as i7 from "@fundamental-ngx/core/list";
|
|
11
|
+
import * as i8 from "@fundamental-ngx/core/title";
|
|
12
|
+
import * as i9 from "@fundamental-ngx/core/message-strip";
|
|
13
|
+
import * as i10 from "@fundamental-ngx/core/object-identifier";
|
|
14
|
+
import * as i11 from "@fundamental-ngx/core/panel";
|
|
15
|
+
import * as i12 from "@fundamental-ngx/core/popover";
|
|
16
|
+
import * as i13 from "../file-viewer-popover/file-viewer-popover.component";
|
|
17
|
+
import * as i14 from "../download-files.directive";
|
|
18
|
+
import * as i15 from "barsa-novin-ray-core";
|
|
12
19
|
export class BarsaPishnamayeshPayamComponent extends FieldBaseComponent {
|
|
13
20
|
constructor() {
|
|
14
21
|
super(...arguments);
|
|
@@ -18,15 +25,126 @@ export class BarsaPishnamayeshPayamComponent extends FieldBaseComponent {
|
|
|
18
25
|
super.ngOnInit();
|
|
19
26
|
const mo = this.context.formControl.Mo;
|
|
20
27
|
const { $FieldDict } = mo;
|
|
21
|
-
this.data = mo[$FieldDict['محتوای پیام']];
|
|
22
|
-
this.data.$ContentHtml = this._domSanitizer.bypassSecurityTrustHtml(this.data.ContentHtml);
|
|
23
|
-
this.data.$SendDate = 'امروز 11:45';
|
|
28
|
+
this.data = new PayamClassType(mo[$FieldDict['محتوای پیام']], this._domSanitizer, this._dateService);
|
|
24
29
|
}
|
|
25
30
|
}
|
|
26
31
|
BarsaPishnamayeshPayamComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaPishnamayeshPayamComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
-
BarsaPishnamayeshPayamComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaPishnamayeshPayamComponent, selector: "bsu-barsa-pishnamayesh-payam",
|
|
32
|
+
BarsaPishnamayeshPayamComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaPishnamayeshPayamComponent, selector: "bsu-barsa-pishnamayesh-payam", providers: [
|
|
33
|
+
{
|
|
34
|
+
provide: DateService,
|
|
35
|
+
useFactory: getDateService,
|
|
36
|
+
deps: [LogService]
|
|
37
|
+
}
|
|
38
|
+
], usesInheritance: true, ngImport: i0, template: "<ng-container\n *ngTemplateOutlet=\"\n showPayamClass;\n context: {\n $implicit: data,\n primary: !data.$details?.length,\n isFirst: true\n }\n \"\n>\n</ng-container>\n<ng-template #showPayamClass let-data let-primary=\"primary\" let-isFirst=\"isFirst\">\n <ng-container\n *ngTemplateOutlet=\"\n namayeshPayam;\n context: {\n $implicit: data.payam.Subject,\n fromText: data.payam.FromText,\n toText: data.$toText,\n importance: data.$importance,\n readDate: data.$readDate,\n sendDate: data.$sendDate,\n ccText: data.$ccText,\n bccText: data.$bccText,\n accessLevel: data.$accessLevel,\n content: data.$content,\n fromPhoto: data.$fromPhoto,\n details: data.$details,\n attachments: data.$attachments,\n todo: data.$todo,\n customText: data.payam.CustomText,\n primary: primary,\n isFirst: isFirst\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template\n #namayeshPayam\n let-subject\n let-content=\"content\"\n let-fromText=\"fromText\"\n let-toText=\"toText\"\n let-importance=\"importance\"\n let-readDate=\"readDate\"\n let-sendDate=\"sendDate\"\n let-ccText=\"ccText\"\n let-bccText=\"bccText\"\n let-fromPhoto=\"fromPhoto\"\n let-details=\"details\"\n let-accessLevel=\"accessLevel\"\n let-primary=\"primary\"\n let-isFirst=\"isFirst\"\n let-attachments=\"attachments\"\n let-todo=\"todo\"\n let-customText=\"customText\"\n>\n <fd-card cardType=\"object\">\n <fd-card-header>\n <fd-avatar\n [image]=\"fromPhoto\"\n [circle]=\"true\"\n size=\"s\"\n [ariaLabel]=\"fromText\"\n [label]=\"fromText\"\n [title]=\"fromText\"\n ></fd-avatar>\n <div fd-card-title class=\"header-fields\">\n <h5 fd-title>\n <a fd-link [emphasized]=\"true\" aria-label=\"Sender\"> {{ fromText }}</a>\n </h5>\n <fd-object-identifier [description]=\"'(' + sendDate + ')'\"> </fd-object-identifier>\n </div>\n <div fd-card-subtitle>\n <h5 fd-title>{{ subject }}</h5>\n <fd-popover>\n <fd-popover-control>\n <button fd-button fdType=\"transparent\" [fdMenu]=\"true\">{{ 'Recievers' | bbbTranslate }}</button>\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item *ngFor=\"let rec of toText\">\n <a fd-list-link>{{ rec }}</a>\n </li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n </div>\n </fd-card-header>\n <fd-card-content>\n <fd-panel [expanded]=\"isFirst\">\n <div fd-panel-title id=\"panel-expandable-title-1\">\n <h5 fd-title>{{ '\u0645\u062D\u062A\u0648\u0627\u06CC \u067E\u06CC\u0627\u0645' | bbbTranslate }}</h5>\n <div class=\"payamIcons\">\n <fd-popover *ngIf=\"importance.icon\">\n <fd-popover-control>\n <img [src]=\"'/Customization/Mail/' + importance.icon\" />\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>{{ importance.text }}</li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n <fd-popover *ngIf=\"accessLevel.icon\">\n <fd-popover-control>\n <img [src]=\"'/Customization/Mail/' + accessLevel.icon\" />\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>{{ accessLevel.text }}</li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n <fd-info-label\n *ngIf=\"todo\"\n [label]=\"todo.text\"\n [color]=\"todo.color\"\n [title]=\"todo.text\"\n ></fd-info-label>\n </div>\n </div>\n <div fd-panel-content>\n <div *ngIf=\"customText\">\n <fd-message-strip type=\"information\" [noIcon]=\"true\" [dismissible]=\"false\">\n {{ customText }}\n </fd-message-strip>\n </div>\n <div [innerHtml]=\"content\" [disable]=\"!primary || attachments?.length\"></div>\n\n <div *ngIf=\"attachments?.length\" class=\"file-viewer-attachments\">\n <ng-container *ngFor=\"let file of attachments\">\n <bsu-file-viewer-popover\n *ngIf=\"!file.IsDeleted\"\n [file]=\"file\"\n [files]=\"attachments\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [canDownload]=\"true\"\n [disableRemove]=\"true\"\n ></bsu-file-viewer-popover>\n </ng-container>\n <ng-container *ngIf=\"attachments.length > 1\">\n <button\n fd-button\n [title]=\"'Download' | bbbTranslate\"\n [glyph]=\"'download'\"\n downloadFiles\n [files]=\"attachments\"\n ></button>\n </ng-container>\n </div>\n <div class=\"readAt\">\n <fd-object-identifier\n *ngIf=\"readDate\"\n [description]=\"('ReadAt' | bbbTranslate) + ': (' + readDate + ')'\"\n >\n </fd-object-identifier>\n </div>\n </div>\n </fd-panel>\n </fd-card-content>\n <!-- <fd-card-footer>\n <button *fdCardFooterActionItem fd-button fdCompact>Assign to Project</button>\n </fd-card-footer> -->\n </fd-card>\n <ng-contianer *ngFor=\"let detail of details\">\n <ng-container\n *ngTemplateOutlet=\"\n showPayamClass;\n context: {\n $implicit: detail\n }\n \"\n >\n </ng-container>\n </ng-contianer>\n</ng-template>\n", styles: [":host{display:block;position:relative;width:100%;height:100%}:host ::ng-deep .fd-panel__content{border-bottom:none;padding-bottom:5px}:host ::ng-deep .fd-card__subtitle{display:flex;align-items:center;column-gap:5px;justify-content:start}:host ::ng-deep .fd-object-identifier__text{margin-top:0}:host ::ng-deep .fd-panel__header{border-bottom:none}fd-card-header{cursor:default;border-bottom:none!important}fd-card-header:before{position:relative!important;display:none!important}fd-card-header:hover{background:var(--fdCard_Background_Color)!important}.readAt{padding-top:2rem}.readAt ::ng-deep p{color:var(--sapButton_BorderColor)!important}.payamIcons{display:flex;column-gap:5px}.payamIcons img{width:16px}@media (max-width: 410px){h5{max-width:210px}}@media (max-width: 1040px){.h5{max-width:600px}}\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: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "backgroundImage", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i3.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "component", type: i4.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.CardComponent, selector: "fd-card", inputs: ["badge", "isLoading", "cardType", "id", "role"] }, { kind: "component", type: i5.CardHeaderComponent, selector: "fd-card-header", inputs: ["interactive", "tabindex"] }, { kind: "component", type: i5.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i5.CardTitleDirective, selector: "[fd-card-title]" }, { kind: "directive", type: i5.CardSubtitleDirective, selector: "[fd-card-subtitle]" }, { kind: "component", type: i6.InfoLabelComponent, selector: "fd-info-label", inputs: ["class", "type", "glyph", "font", "color", "label", "title", "ariaLabel", "ariaLabelledBy"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i7.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i8.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i9.MessageStripComponent, selector: "fd-message-strip", inputs: ["class", "dismissible", "noIcon", "type", "id", "ariaLabelledBy", "ariaLabel", "dismissLabel", "width", "minWidth", "marginBottom"], outputs: ["onDismiss"] }, { kind: "component", type: i10.ObjectIdentifierComponent, selector: "fd-object-identifier", inputs: ["description", "bold", "medium"] }, { kind: "component", type: i11.PanelComponent, selector: "fd-panel", inputs: ["class", "fixed", "id", "expandId", "expandAriaLabel", "expandAriaLabelledBy", "expanded"], outputs: ["expandedChange"] }, { kind: "directive", type: i11.PanelContentDirective, selector: "[fd-panel-content]", inputs: ["height", "minHeight", "maxHeight", "ariaLabel", "ariaLabelledBy", "role", "id"] }, { kind: "directive", type: i11.PanelTitleDirective, selector: "[fd-panel-title]", inputs: ["id"] }, { kind: "component", type: i12.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i12.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i12.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "component", type: i13.FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "deviceSize", "canDownload", "disableRemove", "fdType"], outputs: ["remove"] }, { kind: "directive", type: i14.DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i15.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
28
39
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaPishnamayeshPayamComponent, decorators: [{
|
|
29
40
|
type: Component,
|
|
30
|
-
args: [{ selector: 'bsu-barsa-pishnamayesh-payam', changeDetection: ChangeDetectionStrategy.OnPush,
|
|
41
|
+
args: [{ selector: 'bsu-barsa-pishnamayesh-payam', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
42
|
+
{
|
|
43
|
+
provide: DateService,
|
|
44
|
+
useFactory: getDateService,
|
|
45
|
+
deps: [LogService]
|
|
46
|
+
}
|
|
47
|
+
], template: "<ng-container\n *ngTemplateOutlet=\"\n showPayamClass;\n context: {\n $implicit: data,\n primary: !data.$details?.length,\n isFirst: true\n }\n \"\n>\n</ng-container>\n<ng-template #showPayamClass let-data let-primary=\"primary\" let-isFirst=\"isFirst\">\n <ng-container\n *ngTemplateOutlet=\"\n namayeshPayam;\n context: {\n $implicit: data.payam.Subject,\n fromText: data.payam.FromText,\n toText: data.$toText,\n importance: data.$importance,\n readDate: data.$readDate,\n sendDate: data.$sendDate,\n ccText: data.$ccText,\n bccText: data.$bccText,\n accessLevel: data.$accessLevel,\n content: data.$content,\n fromPhoto: data.$fromPhoto,\n details: data.$details,\n attachments: data.$attachments,\n todo: data.$todo,\n customText: data.payam.CustomText,\n primary: primary,\n isFirst: isFirst\n }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template\n #namayeshPayam\n let-subject\n let-content=\"content\"\n let-fromText=\"fromText\"\n let-toText=\"toText\"\n let-importance=\"importance\"\n let-readDate=\"readDate\"\n let-sendDate=\"sendDate\"\n let-ccText=\"ccText\"\n let-bccText=\"bccText\"\n let-fromPhoto=\"fromPhoto\"\n let-details=\"details\"\n let-accessLevel=\"accessLevel\"\n let-primary=\"primary\"\n let-isFirst=\"isFirst\"\n let-attachments=\"attachments\"\n let-todo=\"todo\"\n let-customText=\"customText\"\n>\n <fd-card cardType=\"object\">\n <fd-card-header>\n <fd-avatar\n [image]=\"fromPhoto\"\n [circle]=\"true\"\n size=\"s\"\n [ariaLabel]=\"fromText\"\n [label]=\"fromText\"\n [title]=\"fromText\"\n ></fd-avatar>\n <div fd-card-title class=\"header-fields\">\n <h5 fd-title>\n <a fd-link [emphasized]=\"true\" aria-label=\"Sender\"> {{ fromText }}</a>\n </h5>\n <fd-object-identifier [description]=\"'(' + sendDate + ')'\"> </fd-object-identifier>\n </div>\n <div fd-card-subtitle>\n <h5 fd-title>{{ subject }}</h5>\n <fd-popover>\n <fd-popover-control>\n <button fd-button fdType=\"transparent\" [fdMenu]=\"true\">{{ 'Recievers' | bbbTranslate }}</button>\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item *ngFor=\"let rec of toText\">\n <a fd-list-link>{{ rec }}</a>\n </li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n </div>\n </fd-card-header>\n <fd-card-content>\n <fd-panel [expanded]=\"isFirst\">\n <div fd-panel-title id=\"panel-expandable-title-1\">\n <h5 fd-title>{{ '\u0645\u062D\u062A\u0648\u0627\u06CC \u067E\u06CC\u0627\u0645' | bbbTranslate }}</h5>\n <div class=\"payamIcons\">\n <fd-popover *ngIf=\"importance.icon\">\n <fd-popover-control>\n <img [src]=\"'/Customization/Mail/' + importance.icon\" />\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>{{ importance.text }}</li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n <fd-popover *ngIf=\"accessLevel.icon\">\n <fd-popover-control>\n <img [src]=\"'/Customization/Mail/' + accessLevel.icon\" />\n </fd-popover-control>\n <fd-popover-body>\n <ul fd-list>\n <li fd-list-item>{{ accessLevel.text }}</li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n <fd-info-label\n *ngIf=\"todo\"\n [label]=\"todo.text\"\n [color]=\"todo.color\"\n [title]=\"todo.text\"\n ></fd-info-label>\n </div>\n </div>\n <div fd-panel-content>\n <div *ngIf=\"customText\">\n <fd-message-strip type=\"information\" [noIcon]=\"true\" [dismissible]=\"false\">\n {{ customText }}\n </fd-message-strip>\n </div>\n <div [innerHtml]=\"content\" [disable]=\"!primary || attachments?.length\"></div>\n\n <div *ngIf=\"attachments?.length\" class=\"file-viewer-attachments\">\n <ng-container *ngFor=\"let file of attachments\">\n <bsu-file-viewer-popover\n *ngIf=\"!file.IsDeleted\"\n [file]=\"file\"\n [files]=\"attachments\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [canDownload]=\"true\"\n [disableRemove]=\"true\"\n ></bsu-file-viewer-popover>\n </ng-container>\n <ng-container *ngIf=\"attachments.length > 1\">\n <button\n fd-button\n [title]=\"'Download' | bbbTranslate\"\n [glyph]=\"'download'\"\n downloadFiles\n [files]=\"attachments\"\n ></button>\n </ng-container>\n </div>\n <div class=\"readAt\">\n <fd-object-identifier\n *ngIf=\"readDate\"\n [description]=\"('ReadAt' | bbbTranslate) + ': (' + readDate + ')'\"\n >\n </fd-object-identifier>\n </div>\n </div>\n </fd-panel>\n </fd-card-content>\n <!-- <fd-card-footer>\n <button *fdCardFooterActionItem fd-button fdCompact>Assign to Project</button>\n </fd-card-footer> -->\n </fd-card>\n <ng-contianer *ngFor=\"let detail of details\">\n <ng-container\n *ngTemplateOutlet=\"\n showPayamClass;\n context: {\n $implicit: detail\n }\n \"\n >\n </ng-container>\n </ng-contianer>\n</ng-template>\n", styles: [":host{display:block;position:relative;width:100%;height:100%}:host ::ng-deep .fd-panel__content{border-bottom:none;padding-bottom:5px}:host ::ng-deep .fd-card__subtitle{display:flex;align-items:center;column-gap:5px;justify-content:start}:host ::ng-deep .fd-object-identifier__text{margin-top:0}:host ::ng-deep .fd-panel__header{border-bottom:none}fd-card-header{cursor:default;border-bottom:none!important}fd-card-header:before{position:relative!important;display:none!important}fd-card-header:hover{background:var(--fdCard_Background_Color)!important}.readAt{padding-top:2rem}.readAt ::ng-deep p{color:var(--sapButton_BorderColor)!important}.payamIcons{display:flex;column-gap:5px}.payamIcons img{width:16px}@media (max-width: 410px){h5{max-width:210px}}@media (max-width: 1040px){.h5{max-width:600px}}\n"] }]
|
|
31
48
|
}] });
|
|
32
|
-
|
|
49
|
+
class PayamClassType {
|
|
50
|
+
constructor(payam, _domSanitizer, _dateService) {
|
|
51
|
+
this.payam = payam;
|
|
52
|
+
this._domSanitizer = _domSanitizer;
|
|
53
|
+
this._dateService = _dateService;
|
|
54
|
+
this.$content = this._domSanitizer.bypassSecurityTrustHtml(payam.ContentHtml);
|
|
55
|
+
this.$sendDate = this._getDateString(payam.SendDate);
|
|
56
|
+
this.$readDate = !payam.ReadDate ? '' : this._getDateString(payam.ReadDate);
|
|
57
|
+
this.$toText = payam.ToText.split(';');
|
|
58
|
+
this.$ccText = payam.CcText?.split(';');
|
|
59
|
+
this.$bccText = payam.BccText?.split(';');
|
|
60
|
+
this.$fromPhoto = BarsaApi.Common.Util.GetIconUrl(payam.FromPhoto, null, null, 64);
|
|
61
|
+
this.$details = payam.Details?.map((c) => new PayamClassType(c, _domSanitizer, _dateService));
|
|
62
|
+
this.$attachments = payam.Attachments?.map((c) => ({
|
|
63
|
+
Id: c.Id,
|
|
64
|
+
IsNew: false,
|
|
65
|
+
IsDeleted: false,
|
|
66
|
+
Type: c.Extension,
|
|
67
|
+
FileName: `${c.Name}.${c.Extension}`
|
|
68
|
+
}));
|
|
69
|
+
this.$importance = {
|
|
70
|
+
icon: this._iconImportance(payam.Importance),
|
|
71
|
+
text: this._textImportance(payam.Importance)
|
|
72
|
+
};
|
|
73
|
+
this.$accessLevel = {
|
|
74
|
+
icon: this._iconAccessLevel(payam.AccessLevel),
|
|
75
|
+
text: this._textAccessLevel(payam.AccessLevel)
|
|
76
|
+
};
|
|
77
|
+
if (payam.Todo?.DueDate) {
|
|
78
|
+
this.$todo = this._textTodo(payam.Todo);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
_textTodo(todo) {
|
|
82
|
+
if (!todo || !todo.DueDate) {
|
|
83
|
+
return { text: '', color: '10' };
|
|
84
|
+
}
|
|
85
|
+
let dueDateStr = '';
|
|
86
|
+
let doneDateStr = '';
|
|
87
|
+
if (BarsaApi.Ext.isString(todo.DueDate)) {
|
|
88
|
+
dueDateStr = this._getDateString(todo.DueDate);
|
|
89
|
+
}
|
|
90
|
+
if (todo.DoneDate) {
|
|
91
|
+
doneDateStr = this._getDateString(todo.DoneDate);
|
|
92
|
+
}
|
|
93
|
+
// eslint-disable-next-line no-eval
|
|
94
|
+
const dueDate = eval(todo.DueDate);
|
|
95
|
+
if (todo.State === 2) {
|
|
96
|
+
return { text: BarsaApi.BBB.Mail_TodoCompleted + ': ' + doneDateStr, color: '8' };
|
|
97
|
+
}
|
|
98
|
+
else if (new Date().getTime() < dueDate.getTime()) {
|
|
99
|
+
return { text: BarsaApi.BBB.Mail_TodoDueDate + ': ' + dueDateStr, color: '1' };
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
return {
|
|
103
|
+
text: BarsaApi.BBB.Mail_TodoOverdue + ': ' + (doneDateStr ? doneDateStr : dueDateStr),
|
|
104
|
+
color: '2'
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
_textImportance(i) {
|
|
109
|
+
if (i) {
|
|
110
|
+
return BarsaApi.BBB['Mail_Importance' + i];
|
|
111
|
+
}
|
|
112
|
+
return null;
|
|
113
|
+
}
|
|
114
|
+
_textAccessLevel(i) {
|
|
115
|
+
if (i) {
|
|
116
|
+
return BarsaApi.BBB['Mail_Sensitivity' + i];
|
|
117
|
+
}
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
120
|
+
_iconImportance(i) {
|
|
121
|
+
if (i) {
|
|
122
|
+
return 'priority_' + i.toString() + '.png';
|
|
123
|
+
}
|
|
124
|
+
return null;
|
|
125
|
+
}
|
|
126
|
+
_iconAccessLevel(i) {
|
|
127
|
+
if (i) {
|
|
128
|
+
return 'lock_' + i.toString() + '.png';
|
|
129
|
+
}
|
|
130
|
+
return null;
|
|
131
|
+
}
|
|
132
|
+
_getSize(size) {
|
|
133
|
+
size = size.replace('KB', 'کیلوبایت');
|
|
134
|
+
size = size.replace('MB', 'مگابایت');
|
|
135
|
+
size = size.replace('B', 'بایت');
|
|
136
|
+
return size;
|
|
137
|
+
}
|
|
138
|
+
_getAttachmentIcon(extension) {
|
|
139
|
+
if (BarsaApi.Ext.isEmpty(extension) === false) {
|
|
140
|
+
return '/assets/Images/FileTypeIcons/' + '_' + extension + '.PNG';
|
|
141
|
+
}
|
|
142
|
+
return null;
|
|
143
|
+
}
|
|
144
|
+
_getDateString(date) {
|
|
145
|
+
// eslint-disable-next-line no-eval
|
|
146
|
+
const dateInfo = this._dateService.getDateInfo(eval(date));
|
|
147
|
+
return `${dateInfo.dayName} ${dateInfo.monthName} ${dateInfo.year} ${dateInfo.hour}:${dateInfo.minutes}`;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLXBpc2huYW1heWVzaC1wYXlhbS9iYXJzYS1waXNobmFtYXllc2gtcGF5YW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtcGlzaG5hbWF5ZXNoLXBheWFtL2JhcnNhLXBpc2huYW1heWVzaC1wYXlhbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRzNFLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsV0FBVyxFQUNYLGNBQWMsRUFDZCxVQUFVLEVBRVYsUUFBUSxFQUVYLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBYzlCLE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxrQkFBa0I7SUFidkU7O1FBZUksYUFBUSxHQUFHLElBQUksQ0FBQztLQU9uQjtJQU5HLFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLGNBQWMsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDekcsQ0FBQzs7NEhBUlEsK0JBQStCO2dIQUEvQiwrQkFBK0IsdURBUjdCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsV0FBVztZ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LGtCQUFrQixDQUFDLFNBQVM7UUFDaEMsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxLQUFLLEVBQUU7WUFDM0MsT0FBTywrQkFBK0IsR0FBRyxHQUFHLEdBQUcsU0FBUyxHQUFHLE1BQU0sQ0FBQztTQUNyRTtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDTyxjQUFjLENBQUMsSUFBWTtRQUMvQixtQ0FBbUM7UUFDbkMsTUFBTSxRQUFRLEdBQWEsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDckUsT0FBTyxHQUFHLFFBQVEsQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdHLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5pbXBvcnQge1xuICAgIEZpZWxkQmFzZUNvbXBvbmVudCxcbiAgICBEYXRlU2VydmljZSxcbiAgICBnZXREYXRlU2VydmljZSxcbiAgICBMb2dTZXJ2aWNlLFxuICAgIERhdGVJbmZvLFxuICAgIEJhcnNhQXBpLFxuICAgIEZpbGVBdHRhY2htZW50SW5mb1xufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS1iYXJzYS1waXNobmFtYXllc2gtcGF5YW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXJzYS1waXNobmFtYXllc2gtcGF5YW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JhcnNhLXBpc2huYW1heWVzaC1wYXlhbS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBEYXRlU2VydmljZSxcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IGdldERhdGVTZXJ2aWNlLFxuICAgICAgICAgICAgZGVwczogW0xvZ1NlcnZpY2VdXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhUGlzaG5hbWF5ZXNoUGF5YW1Db21wb25lbnQgZXh0ZW5kcyBGaWVsZEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGRhdGE6IFBheWFtQ2xhc3NUeXBlO1xuICAgIGV4cGFuZGVkID0gdHJ1ZTtcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgY29uc3QgbW8gPSB0aGlzLmNvbnRleHQuZm9ybUNvbnRyb2wuTW87XG4gICAgICAgIGNvbnN0IHsgJEZpZWxkRGljdCB9ID0gbW87XG4gICAgICAgIHRoaXMuZGF0YSA9IG5ldyBQYXlhbUNsYXNzVHlwZShtb1skRmllbGREaWN0WyfZhdit2KrZiNin24wg2b7bjNin2YUnXV0sIHRoaXMuX2RvbVNhbml0aXplciwgdGhpcy5fZGF0ZVNlcnZpY2UpO1xuICAgIH1cbn1cblxudHlwZSBQYXlhbVR5cGUgPSB7XG4gICAgQWNjZXNzTGV2ZWw6IG51bWJlcjtcbiAgICBBdHRhY2htZW50cz86IFBheWFtQXR0YWNobWVudFtdOyAvLyBudWxsXG4gICAgQmNjVGV4dDogc3RyaW5nO1xuICAgIFN1YmplY3Q6IHN0cmluZztcbiAgICBDYXRlZ29yeVN0cmluZzogc3RyaW5nO1xuICAgIENjVGV4dDogc3RyaW5nO1xuICAgIENvbnRlbnRIdG1sOiBzdHJpbmc7XG4gICAgQ3VzdG9tVGV4dDogc3RyaW5nO1xuICAgIEZyb21UZXh0OiBzdHJpbmc7XG4gICAgRnJvbVBob3RvOiBzdHJpbmc7XG4gICAgT3JkZXI6IG51bWJlcjsgLy8gMVxuICAgIEltcG9ydGFuY2U6IG51bWJlcjtcbiAgICBSZWFkRGF0ZTogc3RyaW5nOyAvLyBcIm5ldyBEYXRlKDIwMjMsNiwyMCwxMSwyMSwxOSlcIlxuICAgIFNlbmREYXRlOiBzdHJpbmc7IC8vIFwibmV3IERhdGUoMjAyMyw2LDIwLDExLDIwLDU1KVwiXG4gICAgVG9UZXh0OiBzdHJpbmc7XG4gICAgVG9kbzogUGF5YW1Ub2RvOyAvLyBudWxsXG4gICAgRGV0YWlscz86IFBheWFtVHlwZVtdO1xufTtcbmNsYXNzIFBheWFtQ2xhc3NUeXBlIHtcbiAgICAkY29udGVudD86IFNhZmVIdG1sO1xuICAgICRzZW5kRGF0ZT86IHN0cmluZztcbiAgICAkcmVhZERhdGU/OiBzdHJpbmc7XG4gICAgJGZyb21QaG90bz86IHN0cmluZztcbiAgICAkdG9UZXh0Pzogc3RyaW5nW107XG4gICAgJGNjVGV4dD86IHN0cmluZ1tdO1xuICAgICRiY2NUZXh0Pzogc3RyaW5nW107XG4gICAgJGRldGFpbHM/OiBQYXlhbUNsYXNzVHlwZVtdO1xuICAgICRhdHRhY2htZW50cz86IEZpbGVBdHRhY2htZW50SW5mb1tdO1xuICAgICRpbXBvcnRhbmNlOiB7IGljb246IHN0cmluZyB8IG51bGw7IHRleHQ6IHN0cmluZyB8IG51bGwgfTtcbiAgICAkYWNjZXNzTGV2ZWw6IHsgaWNvbjogc3RyaW5nIHwgbnVsbDsgdGV4dDogc3RyaW5nIHwgbnVsbCB9O1xuICAgICR0b2RvOiB7IHRleHQ6IHN0cmluZzsgY29sb3I6IHN0cmluZyB9O1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIHBheWFtOiBQYXlhbVR5cGUsIHByaXZhdGUgX2RvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLCBwcml2YXRlIF9kYXRlU2VydmljZTogRGF0ZVNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy4kY29udGVudCA9IHRoaXMuX2RvbVNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChwYXlhbS5Db250ZW50SHRtbCk7XG4gICAgICAgIHRoaXMuJHNlbmREYXRlID0gdGhpcy5fZ2V0RGF0ZVN0cmluZyhwYXlhbS5TZW5kRGF0ZSk7XG4gICAgICAgIHRoaXMuJHJlYWREYXRlID0gIXBheWFtLlJlYWREYXRlID8gJycgOiB0aGlzLl9nZXREYXRlU3RyaW5nKHBheWFtLlJlYWREYXRlKTtcblxuICAgICAgICB0aGlzLiR0b1RleHQgPSBwYXlhbS5Ub1RleHQuc3BsaXQoJzsnKTtcbiAgICAgICAgdGhpcy4kY2NUZXh0ID0gcGF5YW0uQ2NUZXh0Py5zcGxpdCgnOycpO1xuICAgICAgICB0aGlzLiRiY2NUZXh0ID0gcGF5YW0uQmNjVGV4dD8uc3BsaXQoJzsnKTtcbiAgICAgICAgdGhpcy4kZnJvbVBob3RvID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuR2V0SWNvblVybChwYXlhbS5Gcm9tUGhvdG8sIG51bGwsIG51bGwsIDY0KTtcbiAgICAgICAgdGhpcy4kZGV0YWlscyA9IHBheWFtLkRldGFpbHM/Lm1hcCgoYykgPT4gbmV3IFBheWFtQ2xhc3NUeXBlKGMsIF9kb21TYW5pdGl6ZXIsIF9kYXRlU2VydmljZSkpO1xuICAgICAgICB0aGlzLiRhdHRhY2htZW50cyA9IHBheWFtLkF0dGFjaG1lbnRzPy5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICBJZDogYy5JZCxcbiAgICAgICAgICAgIElzTmV3OiBmYWxzZSxcbiAgICAgICAgICAgIElzRGVsZXRlZDogZmFsc2UsXG4gICAgICAgICAgICBUeXBlOiBjLkV4dGVuc2lvbixcbiAgICAgICAgICAgIEZpbGVOYW1lOiBgJHtjLk5hbWV9LiR7Yy5FeHRlbnNpb259YFxuICAgICAgICB9KSk7XG4gICAgICAgIHRoaXMuJGltcG9ydGFuY2UgPSB7XG4gICAgICAgICAgICBpY29uOiB0aGlzLl9pY29uSW1wb3J0YW5jZShwYXlhbS5JbXBvcnRhbmNlKSxcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuX3RleHRJbXBvcnRhbmNlKHBheWFtLkltcG9ydGFuY2UpXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuJGFjY2Vzc0xldmVsID0ge1xuICAgICAgICAgICAgaWNvbjogdGhpcy5faWNvbkFjY2Vzc0xldmVsKHBheWFtLkFjY2Vzc0xldmVsKSxcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuX3RleHRBY2Nlc3NMZXZlbChwYXlhbS5BY2Nlc3NMZXZlbClcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAocGF5YW0uVG9kbz8uRHVlRGF0ZSkge1xuICAgICAgICAgICAgdGhpcy4kdG9kbyA9IHRoaXMuX3RleHRUb2RvKHBheWFtLlRvZG8pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByaXZhdGUgX3RleHRUb2RvKHRvZG86IFBheWFtVG9kbyk6IHsgdGV4dDogc3RyaW5nOyBjb2xvcjogc3RyaW5nIH0ge1xuICAgICAgICBpZiAoIXRvZG8gfHwgIXRvZG8uRHVlRGF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHsgdGV4dDogJycsIGNvbG9yOiAnMTAnIH07XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGR1ZURhdGVTdHIgPSAnJztcbiAgICAgICAgbGV0IGRvbmVEYXRlU3RyID0gJyc7XG4gICAgICAgIGlmIChCYXJzYUFwaS5FeHQuaXNTdHJpbmcodG9kby5EdWVEYXRlKSkge1xuICAgICAgICAgICAgZHVlRGF0ZVN0ciA9IHRoaXMuX2dldERhdGVTdHJpbmcodG9kby5EdWVEYXRlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodG9kby5Eb25lRGF0ZSkge1xuICAgICAgICAgICAgZG9uZURhdGVTdHIgPSB0aGlzLl9nZXREYXRlU3RyaW5nKHRvZG8uRG9uZURhdGUpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1ldmFsXG4gICAgICAgIGNvbnN0IGR1ZURhdGUgPSBldmFsKHRvZG8uRHVlRGF0ZSk7XG4gICAgICAgIGlmICh0b2RvLlN0YXRlID09PSAyKSB7XG4gICAgICAgICAgICByZXR1cm4geyB0ZXh0OiBCYXJzYUFwaS5CQkIuTWFpbF9Ub2RvQ29tcGxldGVkICsgJzogJyArIGRvbmVEYXRlU3RyLCBjb2xvcjogJzgnIH07XG4gICAgICAgIH0gZWxzZSBpZiAobmV3IERhdGUoKS5nZXRUaW1lKCkgPCBkdWVEYXRlLmdldFRpbWUoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHsgdGV4dDogQmFyc2FBcGkuQkJCLk1haWxfVG9kb0R1ZURhdGUgKyAnOiAnICsgZHVlRGF0ZVN0ciwgY29sb3I6ICcxJyB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBCYXJzYUFwaS5CQkIuTWFpbF9Ub2RvT3ZlcmR1ZSArICc6ICcgKyAoZG9uZURhdGVTdHIgPyBkb25lRGF0ZVN0ciA6IGR1ZURhdGVTdHIpLFxuICAgICAgICAgICAgICAgIGNvbG9yOiAnMidcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHJpdmF0ZSBfdGV4dEltcG9ydGFuY2UoaSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuIEJhcnNhQXBpLkJCQlsnTWFpbF9JbXBvcnRhbmNlJyArIGldO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBwcml2YXRlIF90ZXh0QWNjZXNzTGV2ZWwoaSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuIEJhcnNhQXBpLkJCQlsnTWFpbF9TZW5zaXRpdml0eScgKyBpXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaWNvbkltcG9ydGFuY2UoaSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuICdwcmlvcml0eV8nICsgaS50b1N0cmluZygpICsgJy5wbmcnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBwcml2YXRlIF9pY29uQWNjZXNzTGV2ZWwoaSk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoaSkge1xuICAgICAgICAgICAgcmV0dXJuICdsb2NrXycgKyBpLnRvU3RyaW5nKCkgKyAnLnBuZyc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHByaXZhdGUgX2dldFNpemUoc2l6ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgc2l6ZSA9IHNpemUucmVwbGFjZSgnS0InLCAn2qnbjNmE2YjYqNin24zYqicpO1xuICAgICAgICBzaXplID0gc2l6ZS5yZXBsYWNlKCdNQicsICfZhdqv2KfYqNin24zYqicpO1xuICAgICAgICBzaXplID0gc2l6ZS5yZXBsYWNlKCdCJywgJ9io2KfbjNiqJyk7XG4gICAgICAgIHJldHVybiBzaXplO1xuICAgIH1cbiAgICBwcml2YXRlIF9nZXRBdHRhY2htZW50SWNvbihleHRlbnNpb24pOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgaWYgKEJhcnNhQXBpLkV4dC5pc0VtcHR5KGV4dGVuc2lvbikgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICByZXR1cm4gJy9hc3NldHMvSW1hZ2VzL0ZpbGVUeXBlSWNvbnMvJyArICdfJyArIGV4dGVuc2lvbiArICcuUE5HJztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcHJpdmF0ZSBfZ2V0RGF0ZVN0cmluZyhkYXRlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZXZhbFxuICAgICAgICBjb25zdCBkYXRlSW5mbzogRGF0ZUluZm8gPSB0aGlzLl9kYXRlU2VydmljZS5nZXREYXRlSW5mbyhldmFsKGRhdGUpKTtcbiAgICAgICAgcmV0dXJuIGAke2RhdGVJbmZvLmRheU5hbWV9ICR7ZGF0ZUluZm8ubW9udGhOYW1lfSAke2RhdGVJbmZvLnllYXJ9ICR7ZGF0ZUluZm8uaG91cn06JHtkYXRlSW5mby5taW51dGVzfWA7XG4gICAgfVxufVxuXG50eXBlIFBheWFtQXR0YWNobWVudCA9IHtcbiAgICBBdHRhY2h0eXBlOiBzdHJpbmc7IC8vIFwiYXR0YWNoQ29udGVudFwiXG4gICAgRXh0ZW5zaW9uOiBzdHJpbmc7IC8vIFwiZG9jeFwiXG4gICAgSWQ6IHN0cmluZzsgLy8gXCJfT1EyWF9TTjBvZzJZNFMtWF9BQ3hCdEpNZjVvaWcxXCJcbiAgICBOYW1lOiBzdHJpbmc7IC8vIFwiRG9jdW1lbnQgMTBcIlxuICAgIFNpemU6IHN0cmluZzsgLy8gXCIxNC45IEtCXCJcbn07XG50eXBlIFBheWFtVG9kbyA9IHsgRHVlRGF0ZTogc3RyaW5nOyBTdGF0ZTogbnVtYmVyOyBEb25lRGF0ZT86IHN0cmluZyB9O1xuIiwiPG5nLWNvbnRhaW5lclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgIHNob3dQYXlhbUNsYXNzO1xuICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IGRhdGEsXG4gICAgICAgICAgICBwcmltYXJ5OiAhZGF0YS4kZGV0YWlscz8ubGVuZ3RoLFxuICAgICAgICAgICAgaXNGaXJzdDogdHJ1ZVxuICAgICAgICB9XG4gICAgXCJcbj5cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICNzaG93UGF5YW1DbGFzcyBsZXQtZGF0YSBsZXQtcHJpbWFyeT1cInByaW1hcnlcIiBsZXQtaXNGaXJzdD1cImlzRmlyc3RcIj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICBuYW1heWVzaFBheWFtO1xuICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDogZGF0YS5wYXlhbS5TdWJqZWN0LFxuICAgICAgICAgICAgICAgIGZyb21UZXh0OiBkYXRhLnBheWFtLkZyb21UZXh0LFxuICAgICAgICAgICAgICAgIHRvVGV4dDogZGF0YS4kdG9UZXh0LFxuICAgICAgICAgICAgICAgIGltcG9ydGFuY2U6IGRhdGEuJGltcG9ydGFuY2UsXG4gICAgICAgICAgICAgICAgcmVhZERhdGU6IGRhdGEuJHJlYWREYXRlLFxuICAgICAgICAgICAgICAgIHNlbmREYXRlOiBkYXRhLiRzZW5kRGF0ZSxcbiAgICAgICAgICAgICAgICBjY1RleHQ6IGRhdGEuJGNjVGV4dCxcbiAgICAgICAgICAgICAgICBiY2NUZXh0OiBkYXRhLiRiY2NUZXh0LFxuICAgICAgICAgICAgICAgIGFjY2Vzc0xldmVsOiBkYXRhLiRhY2Nlc3NMZXZlbCxcbiAgICAgICAgICAgICAgICBjb250ZW50OiBkYXRhLiRjb250ZW50LFxuICAgICAgICAgICAgICAgIGZyb21QaG90bzogZGF0YS4kZnJvbVBob3RvLFxuICAgICAgICAgICAgICAgIGRldGFpbHM6IGRhdGEuJGRldGFpbHMsXG4gICAgICAgICAgICAgICAgYXR0YWNobWVudHM6IGRhdGEuJGF0dGFjaG1lbnRzLFxuICAgICAgICAgICAgICAgIHRvZG86IGRhdGEuJHRvZG8sXG4gICAgICAgICAgICAgICAgY3VzdG9tVGV4dDogZGF0YS5wYXlhbS5DdXN0b21UZXh0LFxuICAgICAgICAgICAgICAgIHByaW1hcnk6IHByaW1hcnksXG4gICAgICAgICAgICAgICAgaXNGaXJzdDogaXNGaXJzdFxuICAgICAgICAgICAgfVxuICAgICAgICBcIlxuICAgID5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAgICNuYW1heWVzaFBheWFtXG4gICAgbGV0LXN1YmplY3RcbiAgICBsZXQtY29udGVudD1cImNvbnRlbnRcIlxuICAgIGxldC1mcm9tVGV4dD1cImZyb21UZXh0XCJcbiAgICBsZXQtdG9UZXh0PVwidG9UZXh0XCJcbiAgICBsZXQtaW1wb3J0YW5jZT1cImltcG9ydGFuY2VcIlxuICAgIGxldC1yZWFkRGF0ZT1cInJlYWREYXRlXCJcbiAgICBsZXQtc2VuZERhdGU9XCJzZW5kRGF0ZVwiXG4gICAgbGV0LWNjVGV4dD1cImNjVGV4dFwiXG4gICAgbGV0LWJjY1RleHQ9XCJiY2NUZXh0XCJcbiAgICBsZXQtZnJvbVBob3RvPVwiZnJvbVBob3RvXCJcbiAgICBsZXQtZGV0YWlscz1cImRldGFpbHNcIlxuICAgIGxldC1hY2Nlc3NMZXZlbD1cImFjY2Vzc0xldmVsXCJcbiAgICBsZXQtcHJpbWFyeT1cInByaW1hcnlcIlxuICAgIGxldC1pc0ZpcnN0PVwiaXNGaXJzdFwiXG4gICAgbGV0LWF0dGFjaG1lbnRzPVwiYXR0YWNobWVudHNcIlxuICAgIGxldC10b2RvPVwidG9kb1wiXG4gICAgbGV0LWN1c3RvbVRleHQ9XCJjdXN0b21UZXh0XCJcbj5cbiAgICA8ZmQtY2FyZCBjYXJkVHlwZT1cIm9iamVjdFwiPlxuICAgICAgICA8ZmQtY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICA8ZmQtYXZhdGFyXG4gICAgICAgICAgICAgICAgW2ltYWdlXT1cImZyb21QaG90b1wiXG4gICAgICAgICAgICAgICAgW2NpcmNsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBzaXplPVwic1wiXG4gICAgICAgICAgICAgICAgW2FyaWFMYWJlbF09XCJmcm9tVGV4dFwiXG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cImZyb21UZXh0XCJcbiAgICAgICAgICAgICAgICBbdGl0bGVdPVwiZnJvbVRleHRcIlxuICAgICAgICAgICAgPjwvZmQtYXZhdGFyPlxuICAgICAgICAgICAgPGRpdiBmZC1jYXJkLXRpdGxlIGNsYXNzPVwiaGVhZGVyLWZpZWxkc1wiPlxuICAgICAgICAgICAgICAgIDxoNSBmZC10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgPGEgZmQtbGluayBbZW1waGFzaXplZF09XCJ0cnVlXCIgYXJpYS1sYWJlbD1cIlNlbmRlclwiPiB7eyBmcm9tVGV4dCB9fTwvYT5cbiAgICAgICAgICAgICAgICA8L2g1PlxuICAgICAgICAgICAgICAgIDxmZC1vYmplY3QtaWRlbnRpZmllciBbZGVzY3JpcHRpb25dPVwiJygnICsgc2VuZERhdGUgKyAnKSdcIj4gPC9mZC1vYmplY3QtaWRlbnRpZmllcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBmZC1jYXJkLXN1YnRpdGxlPlxuICAgICAgICAgICAgICAgIDxoNSBmZC10aXRsZT57eyBzdWJqZWN0IH19PC9oNT5cbiAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgICAgICAgICAgPGZkLXBvcG92ZXItY29udHJvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gZmQtYnV0dG9uIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgW2ZkTWVudV09XCJ0cnVlXCI+e3sgJ1JlY2lldmVycycgfCBiYmJUcmFuc2xhdGUgfX08L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dWwgZmQtbGlzdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgZmQtbGlzdC1pdGVtICpuZ0Zvcj1cImxldCByZWMgb2YgdG9UZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGZkLWxpc3QtbGluaz57eyByZWMgfX08L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1ib2R5PlxuICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZkLWNhcmQtaGVhZGVyPlxuICAgICAgICA8ZmQtY2FyZC1jb250ZW50PlxuICAgICAgICAgICAgPGZkLXBhbmVsIFtleHBhbmRlZF09XCJpc0ZpcnN0XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBmZC1wYW5lbC10aXRsZSBpZD1cInBhbmVsLWV4cGFuZGFibGUtdGl0bGUtMVwiPlxuICAgICAgICAgICAgICAgICAgICA8aDUgZmQtdGl0bGU+e3sgJ9mF2K3YqtmI2KfbjCDZvtuM2KfZhScgfCBiYmJUcmFuc2xhdGUgfX08L2g1PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5YW1JY29uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXBvcG92ZXIgKm5nSWY9XCJpbXBvcnRhbmNlLmljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiJy9DdXN0b21pemF0aW9uL01haWwvJyArIGltcG9ydGFuY2UuaWNvblwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLXBvcG92ZXItYm9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGZkLWxpc3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgZmQtbGlzdC1pdGVtPnt7IGltcG9ydGFuY2UudGV4dCB9fTwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3ZlciAqbmdJZj1cImFjY2Vzc0xldmVsLmljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiJy9DdXN0b21pemF0aW9uL01haWwvJyArIGFjY2Vzc0xldmVsLmljb25cIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBmZC1saXN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGZkLWxpc3QtaXRlbT57eyBhY2Nlc3NMZXZlbC50ZXh0IH19PC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1pbmZvLWxhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0b2RvXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwidG9kby50ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwidG9kby5jb2xvclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInRvZG8udGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9mZC1pbmZvLWxhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGZkLXBhbmVsLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjdXN0b21UZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtbWVzc2FnZS1zdHJpcCB0eXBlPVwiaW5mb3JtYXRpb25cIiBbbm9JY29uXT1cInRydWVcIiBbZGlzbWlzc2libGVdPVwiZmFsc2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjdXN0b21UZXh0IH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLW1lc3NhZ2Utc3RyaXA+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckh0bWxdPVwiY29udGVudFwiIFtkaXNhYmxlXT1cIiFwcmltYXJ5IHx8IGF0dGFjaG1lbnRzPy5sZW5ndGhcIj48L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0YWNobWVudHM/Lmxlbmd0aFwiIGNsYXNzPVwiZmlsZS12aWV3ZXItYXR0YWNobWVudHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpbGUgb2YgYXR0YWNobWVudHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnN1LWZpbGUtdmlld2VyLXBvcG92ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhZmlsZS5Jc0RlbGV0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmlsZV09XCJmaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ZpbGVzXT1cImF0dGFjaG1lbnRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RldmljZVNpemVdPVwiKGRldmljZVNpemUkIHwgYXN5bmMpISFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2FuRG93bmxvYWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlUmVtb3ZlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2JzdS1maWxlLXZpZXdlci1wb3BvdmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0YWNobWVudHMubGVuZ3RoID4gMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInRG93bmxvYWQnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cIidkb3dubG9hZCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3dubG9hZEZpbGVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWxlc109XCJhdHRhY2htZW50c1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVhZEF0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtb2JqZWN0LWlkZW50aWZpZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInJlYWREYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGVzY3JpcHRpb25dPVwiKCdSZWFkQXQnIHwgYmJiVHJhbnNsYXRlKSArICc6ICgnICsgcmVhZERhdGUgKyAnKSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1vYmplY3QtaWRlbnRpZmllcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2ZkLXBhbmVsPlxuICAgICAgICA8L2ZkLWNhcmQtY29udGVudD5cbiAgICAgICAgPCEtLSA8ZmQtY2FyZC1mb290ZXI+XG4gICAgICAgICAgICA8YnV0dG9uICpmZENhcmRGb290ZXJBY3Rpb25JdGVtIGZkLWJ1dHRvbiBmZENvbXBhY3Q+QXNzaWduIHRvIFByb2plY3Q8L2J1dHRvbj5cbiAgICAgICAgPC9mZC1jYXJkLWZvb3Rlcj4gLS0+XG4gICAgPC9mZC1jYXJkPlxuICAgIDxuZy1jb250aWFuZXIgKm5nRm9yPVwibGV0IGRldGFpbCBvZiBkZXRhaWxzXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgc2hvd1BheWFtQ2xhc3M7XG4gICAgICAgICAgICAgICAgY29udGV4dDoge1xuICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGRldGFpbFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFwiXG4gICAgICAgID5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250aWFuZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -18,9 +18,9 @@ export class BarsaTableColumnComponent extends BaseColumnPropsComponent {
|
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
BarsaTableColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaTableColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
-
BarsaTableColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaTableColumnComponent, selector: "bsu-barsa-table-column", providers: [FormPanelService, ColumnService], usesInheritance: true, ngImport: i0, template: "<div\n [class.editMode]=\"editMode\"\n style=\"display: flex; width: 100%\"\n [style.column-gap]=\"column.$MergedFieldsToColumn?.length ? '0.2rem' : null\"\n>\n <ng-container *ngIf=\"customComponent; else columnRendererTpl\">\n <bnrc-dynamic-item-component\n [component]=\"customComponent\"\n [mo]=\"mo\"\n [isChecked]=\"isChecked\"\n [setting]=\"detailsComponentSetting\"\n [parameters]=\"customComponent.Settings\"\n [column]=\"column\"\n [value]=\"value\"\n [icon]=\"icon\"\n [editMode]=\"editMode\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n ></bnrc-dynamic-item-component>\n </ng-container>\n <ng-template #columnRendererTpl>\n <bsu-column-renderer\n [mo]=\"mo\"\n [column]=\"column\"\n [value]=\"value\"\n [icon]=\"icon\"\n [editMode]=\"editMode\"\n [isChecked]=\"isChecked\"\n [index]=\"index\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [formLayoutShowLabel]=\"false\"\n [deviceSize]=\"deviceSize\"\n [controlUi]=\"column.Caption | controlUi: layout94\"\n (keyup.control.enter)=\"save.emit($event)\"\n (keyup.esc)=\"cancel.emit($event)\"\n (keydown.Tab)=\"tab.emit($event)\"\n ></bsu-column-renderer>\n </ng-template>\n\n <ng-container *ngIf=\"editMode\">\n <ng-container *ngFor=\"let fieldCaption of column.$MergedFieldsToColumn\">\n <ng-container *ngIf=\"fieldCaption | controlUi: layout94 as layoutConfig\">\n <bsu-layout-control\n [caption]=\"fieldCaption\"\n [config]=\"layoutConfig\"\n [showLabel]=\"false\"\n [inlineEdit]=\"true\"\n (keyup.control.enter)=\"save.emit($event)\"\n (keyup.esc)=\"cancel.emit($event)\"\n (keydown.Tab)=\"tab.emit($event)\"\n ></bsu-layout-control>\n </ng-container>\n </ng-container>\n </ng-container>\n</div>\n", styles: [":host{display:contents;width:100%}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .editMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .editMode bsu-ui-simple-combo{margin:0!important}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}td{vertical-align:middle}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.showdetails-on td{border-bottom:none!important}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}\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.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor"] }, { kind: "component", type: i3.LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"] }, { kind: "component", type: i4.ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: ["column", "mo", "index", "editMode", "customRowHeight", "controlUi", "formLayoutShowLabel", "isChecked", "isNewInlineMo", "rtl", "deviceName", "deviceSize", "value", "icon"] }, { kind: "pipe", type: i2.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
21
|
+
BarsaTableColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: BarsaTableColumnComponent, selector: "bsu-barsa-table-column", providers: [FormPanelService, ColumnService], usesInheritance: true, ngImport: i0, template: "<div\n [class.editMode]=\"editMode\"\n #divDom\n style=\"display: flex; width: 100%\"\n [style.column-gap]=\"column.$MergedFieldsToColumn?.length ? '0.2rem' : null\"\n>\n <ng-container *ngIf=\"customComponent; else columnRendererTpl\">\n <bnrc-dynamic-item-component\n [component]=\"customComponent\"\n [mo]=\"mo\"\n [isChecked]=\"isChecked\"\n [setting]=\"detailsComponentSetting\"\n [parameters]=\"customComponent.Settings\"\n [column]=\"column\"\n [value]=\"value\"\n [icon]=\"icon\"\n [editMode]=\"editMode\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n [containerDom]=\"divDom\"\n ></bnrc-dynamic-item-component>\n </ng-container>\n <ng-template #columnRendererTpl>\n <bsu-column-renderer\n [mo]=\"mo\"\n [containerDom]=\"divDom\"\n [column]=\"column\"\n [value]=\"value\"\n [icon]=\"icon\"\n [editMode]=\"editMode\"\n [isChecked]=\"isChecked\"\n [index]=\"index\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [formLayoutShowLabel]=\"false\"\n [deviceSize]=\"deviceSize\"\n [controlUi]=\"column.Caption | controlUi: layout94\"\n (keyup.control.enter)=\"save.emit($event)\"\n (keyup.esc)=\"cancel.emit($event)\"\n (keydown.Tab)=\"tab.emit($event)\"\n ></bsu-column-renderer>\n </ng-template>\n\n <ng-container *ngIf=\"editMode\">\n <ng-container *ngFor=\"let fieldCaption of column.$MergedFieldsToColumn\">\n <ng-container *ngIf=\"fieldCaption | controlUi: layout94 as layoutConfig\">\n <bsu-layout-control\n [caption]=\"fieldCaption\"\n [config]=\"layoutConfig\"\n [showLabel]=\"false\"\n [inlineEdit]=\"true\"\n (keyup.control.enter)=\"save.emit($event)\"\n (keyup.esc)=\"cancel.emit($event)\"\n (keydown.Tab)=\"tab.emit($event)\"\n ></bsu-layout-control>\n </ng-container>\n </ng-container>\n </ng-container>\n</div>\n", styles: [":host{display:contents;width:100%}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .editMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .editMode bsu-ui-simple-combo{margin:0!important}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}td{vertical-align:middle}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.showdetails-on td{border-bottom:none!important}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}\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.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor"] }, { kind: "component", type: i3.LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"] }, { kind: "component", type: i4.ColumnRendererComponent, selector: "bsu-column-renderer,[colRenderer]", inputs: ["column", "mo", "index", "editMode", "customRowHeight", "controlUi", "formLayoutShowLabel", "isChecked", "isNewInlineMo", "containerDom", "rtl", "deviceName", "deviceSize", "value", "icon"] }, { kind: "pipe", type: i2.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
22
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaTableColumnComponent, decorators: [{
|
|
23
23
|
type: Component,
|
|
24
|
-
args: [{ selector: 'bsu-barsa-table-column', providers: [FormPanelService, ColumnService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [class.editMode]=\"editMode\"\n style=\"display: flex; width: 100%\"\n [style.column-gap]=\"column.$MergedFieldsToColumn?.length ? '0.2rem' : null\"\n>\n <ng-container *ngIf=\"customComponent; else columnRendererTpl\">\n <bnrc-dynamic-item-component\n [component]=\"customComponent\"\n [mo]=\"mo\"\n [isChecked]=\"isChecked\"\n [setting]=\"detailsComponentSetting\"\n [parameters]=\"customComponent.Settings\"\n [column]=\"column\"\n [value]=\"value\"\n [icon]=\"icon\"\n [editMode]=\"editMode\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n ></bnrc-dynamic-item-component>\n </ng-container>\n <ng-template #columnRendererTpl>\n <bsu-column-renderer\n [mo]=\"mo\"\n [column]=\"column\"\n [value]=\"value\"\n [icon]=\"icon\"\n [editMode]=\"editMode\"\n [isChecked]=\"isChecked\"\n [index]=\"index\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [formLayoutShowLabel]=\"false\"\n [deviceSize]=\"deviceSize\"\n [controlUi]=\"column.Caption | controlUi: layout94\"\n (keyup.control.enter)=\"save.emit($event)\"\n (keyup.esc)=\"cancel.emit($event)\"\n (keydown.Tab)=\"tab.emit($event)\"\n ></bsu-column-renderer>\n </ng-template>\n\n <ng-container *ngIf=\"editMode\">\n <ng-container *ngFor=\"let fieldCaption of column.$MergedFieldsToColumn\">\n <ng-container *ngIf=\"fieldCaption | controlUi: layout94 as layoutConfig\">\n <bsu-layout-control\n [caption]=\"fieldCaption\"\n [config]=\"layoutConfig\"\n [showLabel]=\"false\"\n [inlineEdit]=\"true\"\n (keyup.control.enter)=\"save.emit($event)\"\n (keyup.esc)=\"cancel.emit($event)\"\n (keydown.Tab)=\"tab.emit($event)\"\n ></bsu-layout-control>\n </ng-container>\n </ng-container>\n </ng-container>\n</div>\n", styles: [":host{display:contents;width:100%}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .editMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .editMode bsu-ui-simple-combo{margin:0!important}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}td{vertical-align:middle}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.showdetails-on td{border-bottom:none!important}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}\n"] }]
|
|
24
|
+
args: [{ selector: 'bsu-barsa-table-column', providers: [FormPanelService, ColumnService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [class.editMode]=\"editMode\"\n #divDom\n style=\"display: flex; width: 100%\"\n [style.column-gap]=\"column.$MergedFieldsToColumn?.length ? '0.2rem' : null\"\n>\n <ng-container *ngIf=\"customComponent; else columnRendererTpl\">\n <bnrc-dynamic-item-component\n [component]=\"customComponent\"\n [mo]=\"mo\"\n [isChecked]=\"isChecked\"\n [setting]=\"detailsComponentSetting\"\n [parameters]=\"customComponent.Settings\"\n [column]=\"column\"\n [value]=\"value\"\n [icon]=\"icon\"\n [editMode]=\"editMode\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [index]=\"index\"\n [allColumns]=\"allColumns\"\n [containerDom]=\"divDom\"\n ></bnrc-dynamic-item-component>\n </ng-container>\n <ng-template #columnRendererTpl>\n <bsu-column-renderer\n [mo]=\"mo\"\n [containerDom]=\"divDom\"\n [column]=\"column\"\n [value]=\"value\"\n [icon]=\"icon\"\n [editMode]=\"editMode\"\n [isChecked]=\"isChecked\"\n [index]=\"index\"\n [rtl]=\"rtl\"\n [deviceName]=\"deviceName\"\n [formLayoutShowLabel]=\"false\"\n [deviceSize]=\"deviceSize\"\n [controlUi]=\"column.Caption | controlUi: layout94\"\n (keyup.control.enter)=\"save.emit($event)\"\n (keyup.esc)=\"cancel.emit($event)\"\n (keydown.Tab)=\"tab.emit($event)\"\n ></bsu-column-renderer>\n </ng-template>\n\n <ng-container *ngIf=\"editMode\">\n <ng-container *ngFor=\"let fieldCaption of column.$MergedFieldsToColumn\">\n <ng-container *ngIf=\"fieldCaption | controlUi: layout94 as layoutConfig\">\n <bsu-layout-control\n [caption]=\"fieldCaption\"\n [config]=\"layoutConfig\"\n [showLabel]=\"false\"\n [inlineEdit]=\"true\"\n (keyup.control.enter)=\"save.emit($event)\"\n (keyup.esc)=\"cancel.emit($event)\"\n (keydown.Tab)=\"tab.emit($event)\"\n ></bsu-layout-control>\n </ng-container>\n </ng-container>\n </ng-container>\n</div>\n", styles: [":host{display:contents;width:100%}:host ::ng-deep .row-group.mobile-mode{border-bottom:var(--sapList_BorderWidth, .0625rem) solid var(--sapList_BorderColor, #e4e4e4)!important}:host ::ng-deep .editMode bnrc-field-ui{padding:0;margin:0}:host ::ng-deep .editMode bsu-ui-simple-combo{margin:0!important}bsu-layout-control:not(.hide-form-item){align-items:center;height:100%;min-width:auto;width:auto}td{vertical-align:middle}tr.brule-message td{border:0}.row-group{background-color:var(--sapBackgroundColor, \"#f7f7ff\")}.cell-expand{cursor:pointer;display:inline-flex;justify-content:center;align-items:center;font-size:.75rem;color:#0854a0;color:var(--sapContent_IconColor, #0854a0);min-width:2rem;max-width:2rem}.save-error{color:var(--sapField_InvalidColor)}.save-success{color:var(--sapField_SuccessColor)}.showdetails-on td{border-bottom:none!important}.flow{max-width:100%}.flow-item{display:flex}.flow-item fd-micro-process-flow-icon{width:1.375rem;height:1.375rem}.flow-item h5{padding-right:.3rem}.cartable-template{padding:.5rem 0}\n"] }]
|
|
25
25
|
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtdGFibGUtY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLXRhYmxlLWNvbHVtbi9iYXJzYS10YWJsZS1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtdGFibGUtY29sdW1uL2JhcnNhLXRhYmxlLWNvbHVtbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBYSx3QkFBd0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7O0FBUzVHLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSx3QkFBd0I7SUFDbkUsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksV0FBVyxFQUFFO1lBQ3RDLE1BQU0sZUFBZSxHQUFjLFdBQVcsQ0FBQztZQUMvQyxJQUFJLGVBQWUsQ0FBQyxRQUFRLElBQUksZUFBZSxDQUFDLE1BQU0sRUFBRTtnQkFDcEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7YUFDMUM7U0FDSjtJQUNMLENBQUM7O3NIQVZRLHlCQUF5QjswR0FBekIseUJBQXlCLGlEQUh2QixDQUFDLGdCQUFnQixFQUFFLGFBQWEsQ0FBQyxpRENQaEQsMjJFQThEQTsyRkRwRGEseUJBQXlCO2tCQVByQyxTQUFTOytCQUNJLHdCQUF3QixhQUd2QixDQUFDLGdCQUFnQixFQUFFLGFBQWEsQ0FBQyxtQkFDM0IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1QYW5lbFNlcnZpY2UsIEVqcmF5T2xnbywgQmFzZUNvbHVtblByb3BzQ29tcG9uZW50LCBDb2x1bW5TZXJ2aWNlIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS1iYXJzYS10YWJsZS1jb2x1bW4nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXJzYS10YWJsZS1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JhcnNhLXRhYmxlLWNvbHVtbi5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW0Zvcm1QYW5lbFNlcnZpY2UsIENvbHVtblNlcnZpY2VdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhVGFibGVDb2x1bW5Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ29sdW1uUHJvcHNDb21wb25lbnQge1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICBjb25zdCBjb2x1bW5WYWx1ZSA9IHRoaXMubW9bdGhpcy5jb2x1bW4uTmFtZV07XG4gICAgICAgIGlmICghdGhpcy5jdXN0b21Db21wb25lbnQgJiYgY29sdW1uVmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbUNvbXBvbmVudCA9IDxFanJheU9sZ28+Y29sdW1uVmFsdWU7XG4gICAgICAgICAgICBpZiAoY3VzdG9tQ29tcG9uZW50LlNlbGVjdG9yICYmIGN1c3RvbUNvbXBvbmVudC5Nb2R1bGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbUNvbXBvbmVudCA9IGN1c3RvbUNvbXBvbmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBbY2xhc3MuZWRpdE1vZGVdPVwiZWRpdE1vZGVcIlxuICAgICNkaXZEb21cbiAgICBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IHdpZHRoOiAxMDAlXCJcbiAgICBbc3R5bGUuY29sdW1uLWdhcF09XCJjb2x1bW4uJE1lcmdlZEZpZWxkc1RvQ29sdW1uPy5sZW5ndGggPyAnMC4ycmVtJyA6IG51bGxcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXN0b21Db21wb25lbnQ7IGVsc2UgY29sdW1uUmVuZGVyZXJUcGxcIj5cbiAgICAgICAgPGJucmMtZHluYW1pYy1pdGVtLWNvbXBvbmVudFxuICAgICAgICAgICAgW2NvbXBvbmVudF09XCJjdXN0b21Db21wb25lbnRcIlxuICAgICAgICAgICAgW21vXT1cIm1vXCJcbiAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwiaXNDaGVja2VkXCJcbiAgICAgICAgICAgIFtzZXR0aW5nXT1cImRldGFpbHNDb21wb25lbnRTZXR0aW5nXCJcbiAgICAgICAgICAgIFtwYXJhbWV0ZXJzXT1cImN1c3RvbUNvbXBvbmVudC5TZXR0aW5nc1wiXG4gICAgICAgICAgICBbY29sdW1uXT1cImNvbHVtblwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICAgW2ljb25dPVwiaWNvblwiXG4gICAgICAgICAgICBbZWRpdE1vZGVdPVwiZWRpdE1vZGVcIlxuICAgICAgICAgICAgW3J0bF09XCJydGxcIlxuICAgICAgICAgICAgW2RldmljZU5hbWVdPVwiZGV2aWNlTmFtZVwiXG4gICAgICAgICAgICBbZGV2aWNlU2l6ZV09XCJkZXZpY2VTaXplXCJcbiAgICAgICAgICAgIFtpbmRleF09XCJpbmRleFwiXG4gICAgICAgICAgICBbYWxsQ29sdW1uc109XCJhbGxDb2x1bW5zXCJcbiAgICAgICAgICAgIFtjb250YWluZXJEb21dPVwiZGl2RG9tXCJcbiAgICAgICAgPjwvYm5yYy1keW5hbWljLWl0ZW0tY29tcG9uZW50PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjY29sdW1uUmVuZGVyZXJUcGw+XG4gICAgICAgIDxic3UtY29sdW1uLXJlbmRlcmVyXG4gICAgICAgICAgICBbbW9dPVwibW9cIlxuICAgICAgICAgICAgW2NvbnRhaW5lckRvbV09XCJkaXZEb21cIlxuICAgICAgICAgICAgW2NvbHVtbl09XCJjb2x1bW5cIlxuICAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICAgIFtpY29uXT1cImljb25cIlxuICAgICAgICAgICAgW2VkaXRNb2RlXT1cImVkaXRNb2RlXCJcbiAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwiaXNDaGVja2VkXCJcbiAgICAgICAgICAgIFtpbmRleF09XCJpbmRleFwiXG4gICAgICAgICAgICBbcnRsXT1cInJ0bFwiXG4gICAgICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcbiAgICAgICAgICAgIFtmb3JtTGF5b3V0U2hvd0xhYmVsXT1cImZhbHNlXCJcbiAgICAgICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxuICAgICAgICAgICAgW2NvbnRyb2xVaV09XCJjb2x1bW4uQ2FwdGlvbiB8IGNvbnRyb2xVaTogbGF5b3V0OTRcIlxuICAgICAgICAgICAgKGtleXVwLmNvbnRyb2wuZW50ZXIpPVwic2F2ZS5lbWl0KCRldmVudClcIlxuICAgICAgICAgICAgKGtleXVwLmVzYyk9XCJjYW5jZWwuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChrZXlkb3duLlRhYik9XCJ0YWIuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgPjwvYnN1LWNvbHVtbi1yZW5kZXJlcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImVkaXRNb2RlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpZWxkQ2FwdGlvbiBvZiBjb2x1bW4uJE1lcmdlZEZpZWxkc1RvQ29sdW1uXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGRDYXB0aW9uIHwgY29udHJvbFVpOiBsYXlvdXQ5NCBhcyBsYXlvdXRDb25maWdcIj5cbiAgICAgICAgICAgICAgICA8YnN1LWxheW91dC1jb250cm9sXG4gICAgICAgICAgICAgICAgICAgIFtjYXB0aW9uXT1cImZpZWxkQ2FwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIFtjb25maWddPVwibGF5b3V0Q29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dMYWJlbF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgIFtpbmxpbmVFZGl0XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAoa2V5dXAuY29udHJvbC5lbnRlcik9XCJzYXZlLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIChrZXl1cC5lc2MpPVwiY2FuY2VsLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIChrZXlkb3duLlRhYik9XCJ0YWIuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICA+PC9ic3UtbGF5b3V0LWNvbnRyb2w+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
|