barsa-novin-ray-core 2.3.93 → 2.3.94
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/barsa-novin-ray-core.mjs +122 -130
- package/fesm2022/barsa-novin-ray-core.mjs.map +1 -1
- package/index.d.ts +10 -6
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, inject, ElementRef, Input, ChangeDetectionStrategy, Component, Pipe, ComponentFactoryResolver, Injector, ApplicationRef, Compiler, DOCUMENT, NgModuleFactory, InjectionToken, NgZone, EventEmitter, ChangeDetectorRef, Renderer2, HostBinding, Output, HostListener, ViewContainerRef, ViewChild, signal, Directive, TemplateRef, input, NgModule, NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA, provideAppInitializer, ErrorHandler } from '@angular/core';
|
|
3
|
-
import { Subject, from, BehaviorSubject, of, exhaustMap, map as map$1, combineLatest, withLatestFrom as withLatestFrom$1, fromEvent, forkJoin, takeUntil as takeUntil$1, filter as filter$1, throwError, merge, interval, tap as tap$1, concatMap as concatMap$1, catchError as catchError$1, finalize as finalize$1,
|
|
3
|
+
import { Subject, from, BehaviorSubject, of, exhaustMap, map as map$1, combineLatest, withLatestFrom as withLatestFrom$1, fromEvent, forkJoin, takeUntil as takeUntil$1, filter as filter$1, throwError, merge, interval, tap as tap$1, concatMap as concatMap$1, catchError as catchError$1, finalize as finalize$1, take, debounceTime as debounceTime$1, skip, Observable, timer, mergeWith, Subscription } from 'rxjs';
|
|
4
4
|
import * as i1 from '@angular/router';
|
|
5
5
|
import { Router, NavigationEnd, ActivatedRoute, RouterEvent, NavigationStart, RouterModule } from '@angular/router';
|
|
6
6
|
import { DomSanitizer, Title } from '@angular/platform-browser';
|
|
@@ -9328,7 +9328,7 @@ class ContainerComponent extends BaseComponent {
|
|
|
9328
9328
|
this._cdr = inject(ChangeDetectorRef);
|
|
9329
9329
|
this._renderer2 = inject(Renderer2);
|
|
9330
9330
|
this._dialogService = inject(DIALOG_SERVICE, { optional: true });
|
|
9331
|
-
this.
|
|
9331
|
+
this._containerServiceParent = inject(ContainerService, { self: true, optional: true });
|
|
9332
9332
|
this._formDialogComponent = inject(FORM_DIALOG_COMPONENT, { optional: true });
|
|
9333
9333
|
this.oldContainerContainer = this._barsaDialogService.containerComponent;
|
|
9334
9334
|
this._barsaDialogService.containerComponent = this;
|
|
@@ -9348,11 +9348,11 @@ class ContainerComponent extends BaseComponent {
|
|
|
9348
9348
|
BarsaApi.Bw.FormHandler = this;
|
|
9349
9349
|
this.oldNavigation = BarsaApi.Bw.Navigate;
|
|
9350
9350
|
BarsaApi.Bw.Navigate = (navigation, isRelative, queryParams, data) => {
|
|
9351
|
-
this.
|
|
9351
|
+
this._containerServiceParent?.navigate(navigation, isRelative, queryParams, data);
|
|
9352
9352
|
};
|
|
9353
9353
|
super.ngOnInit();
|
|
9354
|
-
if (this.
|
|
9355
|
-
this.
|
|
9354
|
+
if (this._containerServiceParent) {
|
|
9355
|
+
this._containerServiceParent.setViewContainerRef(this._vcr);
|
|
9356
9356
|
}
|
|
9357
9357
|
}
|
|
9358
9358
|
ngOnDestroy() {
|
|
@@ -9936,57 +9936,6 @@ class FilesValidationHelper {
|
|
|
9936
9936
|
}
|
|
9937
9937
|
}
|
|
9938
9938
|
|
|
9939
|
-
var IntersectionStatus;
|
|
9940
|
-
(function (IntersectionStatus) {
|
|
9941
|
-
IntersectionStatus["Visible"] = "Visible";
|
|
9942
|
-
IntersectionStatus["Pending"] = "Pending";
|
|
9943
|
-
IntersectionStatus["NotVisible"] = "NotVisible";
|
|
9944
|
-
})(IntersectionStatus || (IntersectionStatus = {}));
|
|
9945
|
-
/* eslint-disable */
|
|
9946
|
-
const fromIntersectionObserver = (element, config, debounce = 0, autoStop = true) => new Observable((subscriber) => {
|
|
9947
|
-
const subject$ = new Subject();
|
|
9948
|
-
const intersectionObserver = new IntersectionObserver((entries, observer) => {
|
|
9949
|
-
entries.forEach((entry) => {
|
|
9950
|
-
if (isIntersecting(entry)) {
|
|
9951
|
-
subject$.next({ entry, observer });
|
|
9952
|
-
}
|
|
9953
|
-
});
|
|
9954
|
-
}, config);
|
|
9955
|
-
subject$.subscribe(() => {
|
|
9956
|
-
subscriber.next(IntersectionStatus.Pending);
|
|
9957
|
-
});
|
|
9958
|
-
subject$.pipe(debounceTime(debounce), filter(Boolean)).subscribe(async (x) => {
|
|
9959
|
-
const { entry, observer } = x;
|
|
9960
|
-
const isEntryVisible = await isVisible(entry.target);
|
|
9961
|
-
if (isEntryVisible) {
|
|
9962
|
-
subscriber.next(IntersectionStatus.Visible);
|
|
9963
|
-
autoStop && observer.unobserve(entry.target);
|
|
9964
|
-
}
|
|
9965
|
-
else {
|
|
9966
|
-
subscriber.next(IntersectionStatus.NotVisible);
|
|
9967
|
-
}
|
|
9968
|
-
});
|
|
9969
|
-
intersectionObserver.observe(element);
|
|
9970
|
-
return {
|
|
9971
|
-
unsubscribe() {
|
|
9972
|
-
intersectionObserver.disconnect();
|
|
9973
|
-
subject$.unsubscribe();
|
|
9974
|
-
}
|
|
9975
|
-
};
|
|
9976
|
-
});
|
|
9977
|
-
async function isVisible(element) {
|
|
9978
|
-
return new Promise((resolve) => {
|
|
9979
|
-
const observer = new IntersectionObserver(([entry]) => {
|
|
9980
|
-
resolve(entry.isIntersecting);
|
|
9981
|
-
observer.disconnect();
|
|
9982
|
-
});
|
|
9983
|
-
observer.observe(element);
|
|
9984
|
-
});
|
|
9985
|
-
}
|
|
9986
|
-
function isIntersecting(entry) {
|
|
9987
|
-
return true; // entry.isIntersecting || entry.intersectionRatio > 0;
|
|
9988
|
-
}
|
|
9989
|
-
|
|
9990
9939
|
class ReportViewBaseComponent extends BaseComponent {
|
|
9991
9940
|
constructor() {
|
|
9992
9941
|
super(...arguments);
|
|
@@ -10035,6 +9984,8 @@ class ReportViewBaseComponent extends BaseComponent {
|
|
|
10035
9984
|
this._groupByService = inject(GroupByService, { skipSelf: true, optional: true });
|
|
10036
9985
|
this._containerWidth = 0;
|
|
10037
9986
|
this._firstVisible = false;
|
|
9987
|
+
this._onVisible$ = new Subject();
|
|
9988
|
+
this.$resize = new Subject();
|
|
10038
9989
|
}
|
|
10039
9990
|
set containerWidth(val) {
|
|
10040
9991
|
this._containerWidth = val;
|
|
@@ -10067,16 +10018,20 @@ class ReportViewBaseComponent extends BaseComponent {
|
|
|
10067
10018
|
});
|
|
10068
10019
|
}
|
|
10069
10020
|
this._setRowIndicator(this.columns);
|
|
10070
|
-
|
|
10071
|
-
|
|
10072
|
-
|
|
10073
|
-
|
|
10074
|
-
|
|
10075
|
-
|
|
10076
|
-
.
|
|
10077
|
-
.
|
|
10078
|
-
this.
|
|
10079
|
-
|
|
10021
|
+
this._handleResize();
|
|
10022
|
+
this.$resize
|
|
10023
|
+
.asObservable()
|
|
10024
|
+
.pipe(takeUntil$1(this._onDestroy$), take(1), debounceTime$1(50))
|
|
10025
|
+
.subscribe(() => this.onVisible());
|
|
10026
|
+
this.$resize
|
|
10027
|
+
.asObservable()
|
|
10028
|
+
.pipe(takeUntil$1(this._onDestroy$), skip(1), debounceTime$1(50))
|
|
10029
|
+
.subscribe(() => this.onResize());
|
|
10030
|
+
}
|
|
10031
|
+
ngOnDestroy() {
|
|
10032
|
+
if (this._ro) {
|
|
10033
|
+
this._ro.disconnect();
|
|
10034
|
+
}
|
|
10080
10035
|
}
|
|
10081
10036
|
ngOnChanges(changes) {
|
|
10082
10037
|
super.ngOnChanges(changes);
|
|
@@ -10091,12 +10046,6 @@ class ReportViewBaseComponent extends BaseComponent {
|
|
|
10091
10046
|
this.detectChanges();
|
|
10092
10047
|
}
|
|
10093
10048
|
}
|
|
10094
|
-
onVisibilityChange(e, ..._args) {
|
|
10095
|
-
if (e === 'Visible') {
|
|
10096
|
-
this._visibility = 'visible';
|
|
10097
|
-
this._renderer2.setStyle(this._el.nativeElement, 'visibility', 'visible');
|
|
10098
|
-
}
|
|
10099
|
-
}
|
|
10100
10049
|
onDeselectAll() {
|
|
10101
10050
|
this.deselectAll.emit();
|
|
10102
10051
|
}
|
|
@@ -10189,6 +10138,35 @@ class ReportViewBaseComponent extends BaseComponent {
|
|
|
10189
10138
|
_trackByRow(index, row) {
|
|
10190
10139
|
return `${row.$Group ? row.$Group : row.Id}${index}`;
|
|
10191
10140
|
}
|
|
10141
|
+
onVisible() {
|
|
10142
|
+
this._visibility = 'visible';
|
|
10143
|
+
this._renderer2.setStyle(this._el.nativeElement, 'visibility', 'visible');
|
|
10144
|
+
this._onVisible$.next();
|
|
10145
|
+
}
|
|
10146
|
+
onResize() { }
|
|
10147
|
+
_handleResize() {
|
|
10148
|
+
fromEvent(window, 'resize')
|
|
10149
|
+
.pipe(takeUntil$1(this._onDestroy$))
|
|
10150
|
+
.subscribe(() => {
|
|
10151
|
+
this.$resize.next();
|
|
10152
|
+
});
|
|
10153
|
+
// اگر container تغییر اندازه پیدا کرد (مثلاً parent تغییر کنه)
|
|
10154
|
+
try {
|
|
10155
|
+
this._ro = new ResizeObserver(() => {
|
|
10156
|
+
requestAnimationFrame(() => {
|
|
10157
|
+
this.$resize.next();
|
|
10158
|
+
});
|
|
10159
|
+
});
|
|
10160
|
+
if (this._el?.nativeElement) {
|
|
10161
|
+
this._ro.observe(this._el.nativeElement);
|
|
10162
|
+
}
|
|
10163
|
+
}
|
|
10164
|
+
catch {
|
|
10165
|
+
// مرورگرهای خیلی قدیمی ممکنه ResizeObserver نداشته باشند
|
|
10166
|
+
// در آنصورت rely به window resize میکنیم
|
|
10167
|
+
// no-op
|
|
10168
|
+
}
|
|
10169
|
+
}
|
|
10192
10170
|
onActionListClick(mo, index, itemId) {
|
|
10193
10171
|
if (itemId === 'Show') {
|
|
10194
10172
|
this.onRowClick({ mo, index });
|
|
@@ -10715,8 +10693,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
10715
10693
|
class FormPageBaseComponent extends ContainerComponent {
|
|
10716
10694
|
constructor() {
|
|
10717
10695
|
super(...arguments);
|
|
10718
|
-
this
|
|
10719
|
-
this._containerService = inject(ContainerService, { skipSelf: true, optional: true });
|
|
10696
|
+
this._containerServiceParent = inject(ContainerService, { skipSelf: true, optional: true });
|
|
10720
10697
|
/* eslint-disable */
|
|
10721
10698
|
this.ShowFormPanelControl = (formpanelCtrlr) => {
|
|
10722
10699
|
this._portalService.ShowFormPanelControl(formpanelCtrlr, this._router, this._activatedRoute, this._formDialogComponent, false, this._vcr);
|
|
@@ -10743,17 +10720,13 @@ class FormPageBaseComponent extends ContainerComponent {
|
|
|
10743
10720
|
const state = this._router.getCurrentNavigation()?.extras.state;
|
|
10744
10721
|
this.prepareIds(state?.formPanelCtrlrId, params);
|
|
10745
10722
|
});
|
|
10746
|
-
this
|
|
10747
|
-
.asObservable()
|
|
10748
|
-
.pipe(takeUntil(this._onDestroy$), debounceTime$1(200))
|
|
10749
|
-
.subscribe(() => this._resize());
|
|
10723
|
+
this.hideAllPageContent();
|
|
10750
10724
|
}
|
|
10751
10725
|
ngAfterViewInit() {
|
|
10752
10726
|
super.ngAfterViewInit();
|
|
10753
10727
|
if (!this.formPanelCtrlr) {
|
|
10754
10728
|
this.formPanelCtrlr = this._portalService.formPanels[this.formpanelCtrlrId];
|
|
10755
10729
|
}
|
|
10756
|
-
this.$resize.next();
|
|
10757
10730
|
if (BarsaApi.LoginFormData.IsServiceDesk) {
|
|
10758
10731
|
setTimeout(() => {
|
|
10759
10732
|
window.scrollTo({ top: 0 });
|
|
@@ -10768,50 +10741,11 @@ class FormPageBaseComponent extends ContainerComponent {
|
|
|
10768
10741
|
_resize() {
|
|
10769
10742
|
this.hideAllPageContent();
|
|
10770
10743
|
}
|
|
10771
|
-
_handleResize() {
|
|
10772
|
-
fromEvent(window, 'resize')
|
|
10773
|
-
.pipe(takeUntil(this._onDestroy$))
|
|
10774
|
-
.subscribe(() => {
|
|
10775
|
-
this.$resize.next();
|
|
10776
|
-
});
|
|
10777
|
-
// اگر container تغییر اندازه پیدا کرد (مثلاً parent تغییر کنه)
|
|
10778
|
-
try {
|
|
10779
|
-
this._ro = new ResizeObserver(() => {
|
|
10780
|
-
requestAnimationFrame(() => {
|
|
10781
|
-
this.$resize.next();
|
|
10782
|
-
});
|
|
10783
|
-
});
|
|
10784
|
-
if (this._el?.nativeElement) {
|
|
10785
|
-
this._ro.observe(this._el.nativeElement);
|
|
10786
|
-
}
|
|
10787
|
-
}
|
|
10788
|
-
catch {
|
|
10789
|
-
// مرورگرهای خیلی قدیمی ممکنه ResizeObserver نداشته باشند
|
|
10790
|
-
// در آنصورت rely به window resize میکنیم
|
|
10791
|
-
// no-op
|
|
10792
|
-
}
|
|
10793
|
-
}
|
|
10794
10744
|
hideAllPageContent() {
|
|
10795
|
-
this.
|
|
10796
|
-
// const pages = document.querySelectorAll('.absolute-page');
|
|
10797
|
-
// pages?.forEach((pageEl) => {
|
|
10798
|
-
// if (pageEl !== this._el.nativeElement) {
|
|
10799
|
-
// (pageEl as HTMLElement).classList.remove('absolute-page');
|
|
10800
|
-
// (pageEl as HTMLElement).classList.add('absolute-page-removed');
|
|
10801
|
-
// }
|
|
10802
|
-
// });
|
|
10803
|
-
// if (pages && pages.length > 0) {
|
|
10804
|
-
// (pages[pages.length - 1]?.firstChild as HTMLElement)?.classList?.remove('hide');
|
|
10805
|
-
// }
|
|
10745
|
+
this._containerServiceParent?.hideFormPage();
|
|
10806
10746
|
}
|
|
10807
10747
|
removeLastHidePage() {
|
|
10808
|
-
this.
|
|
10809
|
-
// const pages = document.querySelectorAll('.absolute-page-removed');
|
|
10810
|
-
// if (pages && pages.length > 0) {
|
|
10811
|
-
// const last: null | Element = pages[pages.length - 1];
|
|
10812
|
-
// last?.classList?.add('absolute-page');
|
|
10813
|
-
// last?.classList?.remove('absolute-page-removed');
|
|
10814
|
-
// }
|
|
10748
|
+
this._containerServiceParent?.showFormPage();
|
|
10815
10749
|
}
|
|
10816
10750
|
onFormClose() {
|
|
10817
10751
|
if (this._activatedRoute.snapshot.params.isFirst &&
|
|
@@ -11050,11 +10984,11 @@ class FormComponent extends BaseComponent {
|
|
|
11050
10984
|
});
|
|
11051
10985
|
}
|
|
11052
10986
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11053
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: FormComponent, isStandalone: false, selector: "bnrc-form", inputs: { params: "params", customFormPanelUi: "customFormPanelUi", formPanelCtrl: "formPanelCtrl", UlvMainCtrlr: "UlvMainCtrlr", formPanelCtrlId: "formPanelCtrlId", saveOnChange: "saveOnChange", inlineEditInReport: "inlineEditInReport" }, outputs: { titleChanged: "titleChanged", moChanged: "moChanged", formClose: "formClose", uiComponent: "uiComponent", formRendered: "formRendered", bruleAction: "bruleAction", beforeTransition: "beforeTransition", afterTransition: "afterTransition" }, viewQueries: [{ propertyName: "vcr", first: true, predicate: ["placeholder"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '<ng-container #placeholder> </ng-container>', isInline: true, styles: [":host{display:block;width:100%}:host ::ng-deep bsu-ly-layout-container-of-root.ismobile bnrc-field-ui{padding:.3rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
10987
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: FormComponent, isStandalone: false, selector: "bnrc-form", inputs: { params: "params", customFormPanelUi: "customFormPanelUi", formPanelCtrl: "formPanelCtrl", UlvMainCtrlr: "UlvMainCtrlr", formPanelCtrlId: "formPanelCtrlId", saveOnChange: "saveOnChange", inlineEditInReport: "inlineEditInReport" }, outputs: { titleChanged: "titleChanged", moChanged: "moChanged", formClose: "formClose", uiComponent: "uiComponent", formRendered: "formRendered", bruleAction: "bruleAction", beforeTransition: "beforeTransition", afterTransition: "afterTransition" }, viewQueries: [{ propertyName: "vcr", first: true, predicate: ["placeholder"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '<ng-container #placeholder> </ng-container>', isInline: true, styles: [":host{display:block;width:100%;min-height:100%}:host ::ng-deep bsu-ly-layout-container-of-root.ismobile bnrc-field-ui{padding:.3rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11054
10988
|
}
|
|
11055
10989
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormComponent, decorators: [{
|
|
11056
10990
|
type: Component,
|
|
11057
|
-
args: [{ selector: 'bnrc-form', template: '<ng-container #placeholder> </ng-container>', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block;width:100%}:host ::ng-deep bsu-ly-layout-container-of-root.ismobile bnrc-field-ui{padding:.3rem}\n"] }]
|
|
10991
|
+
args: [{ selector: 'bnrc-form', template: '<ng-container #placeholder> </ng-container>', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block;width:100%;min-height:100%}:host ::ng-deep bsu-ly-layout-container-of-root.ismobile bnrc-field-ui{padding:.3rem}\n"] }]
|
|
11058
10992
|
}], ctorParameters: () => [], propDecorators: { params: [{
|
|
11059
10993
|
type: Input
|
|
11060
10994
|
}], customFormPanelUi: [{
|
|
@@ -11173,12 +11107,18 @@ class FormPageComponent extends FormPageBaseComponent {
|
|
|
11173
11107
|
constructor() {
|
|
11174
11108
|
super(...arguments);
|
|
11175
11109
|
this.sectionClass = true;
|
|
11176
|
-
this.absolutePageClass =
|
|
11110
|
+
this.absolutePageClass = false;
|
|
11177
11111
|
}
|
|
11178
11112
|
ngOnInit() {
|
|
11179
11113
|
this.containerRef = this.formRef.vcr; // it must be first because we change containerRef
|
|
11180
11114
|
super.ngOnInit();
|
|
11181
11115
|
}
|
|
11116
|
+
ngAfterViewInit() {
|
|
11117
|
+
super.ngAfterViewInit();
|
|
11118
|
+
if (!this._el.nativeElement.classList.contains('absolute-page-removed')) {
|
|
11119
|
+
this.absolutePageClass = true;
|
|
11120
|
+
}
|
|
11121
|
+
}
|
|
11182
11122
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11183
11123
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: FormPageComponent, isStandalone: false, selector: "bnrc-form-page", inputs: { formPanelCtrlr: "formPanelCtrlr" }, host: { properties: { "class.section": "this.sectionClass", "class.absolute-page": "this.absolutePageClass" } }, providers: [FormService, ContainerService], viewQueries: [{ propertyName: "formRef", first: true, predicate: FormComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
11184
11124
|
<bnrc-form
|
|
@@ -11405,8 +11345,8 @@ class EmptyPageComponent extends PageWithFormHandlerBaseComponent {
|
|
|
11405
11345
|
const isModal = this.settings?.IsModal;
|
|
11406
11346
|
const isRelativePage = this._activatedRoute.snapshot.data?.pageData?.Component?.Settings?.IsRelativePage;
|
|
11407
11347
|
if (isRelativePage || isModal) {
|
|
11408
|
-
if (this.
|
|
11409
|
-
this.
|
|
11348
|
+
if (this._containerServiceParent) {
|
|
11349
|
+
this._containerServiceParent.detachParent = false;
|
|
11410
11350
|
}
|
|
11411
11351
|
else {
|
|
11412
11352
|
this._log.error(nullOrUndefinedString('EmptyPageComponent=> _containerService'));
|
|
@@ -11460,8 +11400,8 @@ class MasterDetailsPageComponent extends PageWithFormHandlerBaseComponent {
|
|
|
11460
11400
|
this.settings = BarsaApi.Common.Util.TryGetValue(this._activatedRoute, 'data._value.pageData.Component.Settings', null);
|
|
11461
11401
|
const isModal = this.settings?.IsModal;
|
|
11462
11402
|
if (isModal) {
|
|
11463
|
-
if (this.
|
|
11464
|
-
this.
|
|
11403
|
+
if (this._containerServiceParent) {
|
|
11404
|
+
this._containerServiceParent.detachParent = false;
|
|
11465
11405
|
}
|
|
11466
11406
|
else {
|
|
11467
11407
|
this._log.error(nullOrUndefinedString('EmptyPageComponent=> _containerService'));
|
|
@@ -11470,7 +11410,7 @@ class MasterDetailsPageComponent extends PageWithFormHandlerBaseComponent {
|
|
|
11470
11410
|
this.ismodal = true;
|
|
11471
11411
|
}
|
|
11472
11412
|
super.ngOnInit();
|
|
11473
|
-
this.
|
|
11413
|
+
this._containerServiceParent && (this._containerServiceParent.masterDetails = true);
|
|
11474
11414
|
// if (!BarsaApi.LoginFormData.IsServiceDesk && !isModal) {
|
|
11475
11415
|
// this._position = 'initial';
|
|
11476
11416
|
// }
|
|
@@ -13508,6 +13448,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
13508
13448
|
type: Input
|
|
13509
13449
|
}] } });
|
|
13510
13450
|
|
|
13451
|
+
var IntersectionStatus;
|
|
13452
|
+
(function (IntersectionStatus) {
|
|
13453
|
+
IntersectionStatus["Visible"] = "Visible";
|
|
13454
|
+
IntersectionStatus["Pending"] = "Pending";
|
|
13455
|
+
IntersectionStatus["NotVisible"] = "NotVisible";
|
|
13456
|
+
})(IntersectionStatus || (IntersectionStatus = {}));
|
|
13457
|
+
/* eslint-disable */
|
|
13458
|
+
const fromIntersectionObserver = (element, config, debounce = 0, autoStop = true) => new Observable((subscriber) => {
|
|
13459
|
+
const subject$ = new Subject();
|
|
13460
|
+
const intersectionObserver = new IntersectionObserver((entries, observer) => {
|
|
13461
|
+
entries.forEach((entry) => {
|
|
13462
|
+
if (isIntersecting(entry)) {
|
|
13463
|
+
subject$.next({ entry, observer });
|
|
13464
|
+
}
|
|
13465
|
+
});
|
|
13466
|
+
}, config);
|
|
13467
|
+
subject$.subscribe(() => {
|
|
13468
|
+
subscriber.next(IntersectionStatus.Pending);
|
|
13469
|
+
});
|
|
13470
|
+
subject$.pipe(debounceTime(debounce), filter(Boolean)).subscribe(async (x) => {
|
|
13471
|
+
const { entry, observer } = x;
|
|
13472
|
+
const isEntryVisible = await isVisible(entry.target);
|
|
13473
|
+
if (isEntryVisible) {
|
|
13474
|
+
subscriber.next(IntersectionStatus.Visible);
|
|
13475
|
+
autoStop && observer.unobserve(entry.target);
|
|
13476
|
+
}
|
|
13477
|
+
else {
|
|
13478
|
+
subscriber.next(IntersectionStatus.NotVisible);
|
|
13479
|
+
}
|
|
13480
|
+
});
|
|
13481
|
+
intersectionObserver.observe(element);
|
|
13482
|
+
return {
|
|
13483
|
+
unsubscribe() {
|
|
13484
|
+
intersectionObserver.disconnect();
|
|
13485
|
+
subject$.unsubscribe();
|
|
13486
|
+
}
|
|
13487
|
+
};
|
|
13488
|
+
});
|
|
13489
|
+
async function isVisible(element) {
|
|
13490
|
+
return new Promise((resolve) => {
|
|
13491
|
+
const observer = new IntersectionObserver(([entry]) => {
|
|
13492
|
+
resolve(entry.isIntersecting);
|
|
13493
|
+
observer.disconnect();
|
|
13494
|
+
});
|
|
13495
|
+
observer.observe(element);
|
|
13496
|
+
});
|
|
13497
|
+
}
|
|
13498
|
+
function isIntersecting(entry) {
|
|
13499
|
+
return true; // entry.isIntersecting || entry.intersectionRatio > 0;
|
|
13500
|
+
}
|
|
13501
|
+
|
|
13511
13502
|
class IntersectionObserverDirective {
|
|
13512
13503
|
constructor() {
|
|
13513
13504
|
this.intersectionDebounce = 0;
|
|
@@ -15253,7 +15244,8 @@ class ColumnValueDirective extends BaseDirective {
|
|
|
15253
15244
|
}
|
|
15254
15245
|
_setInnerHtml(value) {
|
|
15255
15246
|
if (value) {
|
|
15256
|
-
|
|
15247
|
+
const formattedValue = `\u202B${value}\u202C`;
|
|
15248
|
+
this._renderer2.setProperty(this._el.nativeElement, 'textContent', formattedValue);
|
|
15257
15249
|
}
|
|
15258
15250
|
}
|
|
15259
15251
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ColumnValueDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
@@ -15518,7 +15510,7 @@ class ResizeHandlerDirective extends BaseDirective {
|
|
|
15518
15510
|
this._handleResize();
|
|
15519
15511
|
this.$resize
|
|
15520
15512
|
.asObservable()
|
|
15521
|
-
.pipe(takeUntil$1(this._onDestroy$), debounceTime$1(
|
|
15513
|
+
.pipe(takeUntil$1(this._onDestroy$), debounceTime$1(50))
|
|
15522
15514
|
.subscribe(() => this._resize());
|
|
15523
15515
|
}
|
|
15524
15516
|
ngOnDestroy() {
|