barsa-novin-ray-core 2.3.101 → 2.3.103
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-barsa-report-page.module-Bml7rVqA.mjs +55 -0
- package/fesm2022/barsa-novin-ray-core-barsa-report-page.module-Bml7rVqA.mjs.map +1 -0
- package/fesm2022/barsa-novin-ray-core.mjs +533 -365
- package/fesm2022/barsa-novin-ray-core.mjs.map +1 -1
- package/index.d.ts +91 -49
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, inject, ElementRef, Input, ChangeDetectionStrategy, Component, Pipe, ComponentFactoryResolver, Injector, ApplicationRef, Compiler, DOCUMENT, NgModuleFactory, InjectionToken, NgZone, signal,
|
|
3
|
-
import { Subject, from, BehaviorSubject, of, exhaustMap, map as map$1, combineLatest, withLatestFrom as withLatestFrom$1, fromEvent, forkJoin,
|
|
2
|
+
import { Injectable, inject, ElementRef, Input, ChangeDetectionStrategy, Component, Pipe, ComponentFactoryResolver, Injector, ApplicationRef, Compiler, DOCUMENT, NgModuleFactory, InjectionToken, NgZone, signal, ViewContainerRef, EventEmitter, ChangeDetectorRef, Renderer2, HostBinding, Output, HostListener, ViewChild, 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, throwError, merge, interval, filter as filter$1, lastValueFrom, timeout, catchError as catchError$1, takeUntil as takeUntil$1, take, debounceTime as debounceTime$1, skip, Observable, tap as tap$1, timer, mergeWith, Subscription } from 'rxjs';
|
|
4
4
|
import * as i1 from '@angular/router';
|
|
5
|
-
import { Router, NavigationEnd, ActivatedRoute, RouterEvent, NavigationStart, RouterModule } from '@angular/router';
|
|
5
|
+
import { Router, NavigationEnd, ActivatedRoute, RouterEvent, NavigationStart, RouterModule, RouteReuseStrategy } from '@angular/router';
|
|
6
6
|
import { DomSanitizer, Title } from '@angular/platform-browser';
|
|
7
7
|
import { filter, startWith, map, tap, takeUntil, withLatestFrom, delay, debounceTime, distinctUntilChanged, exhaustMap as exhaustMap$1, concatMap, finalize, publishReplay, refCount, shareReplay, switchMap, catchError, merge as merge$1, pluck, mergeWith as mergeWith$1 } from 'rxjs/operators';
|
|
8
8
|
import moment from 'moment';
|
|
@@ -1344,6 +1344,7 @@ const _getSystem = () => {
|
|
|
1344
1344
|
oSystem.desktop = !!((!oSystem.tablet && !oSystem.phone) || isWin8Upwards);
|
|
1345
1345
|
oSystem.combi = oSystem.desktop && oSystem.tablet;
|
|
1346
1346
|
oSystem.SYSTEMTYPE = SYSTEMTYPE;
|
|
1347
|
+
oSystem.phone = oSystem.phone && window.innerWidth < 768;
|
|
1347
1348
|
return oSystem;
|
|
1348
1349
|
};
|
|
1349
1350
|
const _setSystem = () => {
|
|
@@ -4473,6 +4474,8 @@ class FormPanelService extends BaseComponent {
|
|
|
4473
4474
|
this._headerDescriptionSource = new BehaviorSubject('');
|
|
4474
4475
|
this._hideFooter$ = new BehaviorSubject(false);
|
|
4475
4476
|
this._canSend$ = new BehaviorSubject(false);
|
|
4477
|
+
this._router = inject(Router);
|
|
4478
|
+
this._activatedRoute = inject(ActivatedRoute);
|
|
4476
4479
|
this.context$ = this._contextSource.asObservable().pipe(tap((context) => this._prepareContext(context)), takeUntil(this._onDestroy$));
|
|
4477
4480
|
this.searchPanelIsObject$ = this._searchPanelIsObjectSource.asObservable().pipe(takeUntil(this._onDestroy$));
|
|
4478
4481
|
this.isSearchPanel$ = this._isSearchPanelSource.asObservable().pipe(takeUntil(this._onDestroy$));
|
|
@@ -4821,7 +4824,38 @@ class FormPanelService extends BaseComponent {
|
|
|
4821
4824
|
}
|
|
4822
4825
|
_refresh() {
|
|
4823
4826
|
this._initialize(this._context);
|
|
4824
|
-
|
|
4827
|
+
const mo = this._moSource.getValue();
|
|
4828
|
+
if (!mo) {
|
|
4829
|
+
return;
|
|
4830
|
+
}
|
|
4831
|
+
const breadCrumb = this._headerLayoutSource.getValue();
|
|
4832
|
+
const mainChild = this._activatedRoute.children.find((c) => c.outlet === 'main');
|
|
4833
|
+
const currentParams = mainChild?.snapshot.params ?? {};
|
|
4834
|
+
const queryParamsToUpdate = {
|
|
4835
|
+
id: mo.$State === 'New' ? '0' : mo.Id,
|
|
4836
|
+
tyid: mo.$TypeDefId,
|
|
4837
|
+
tycp: mo.$Caption ? mo.$Caption : null,
|
|
4838
|
+
repid: mo.$ReportId,
|
|
4839
|
+
vid: this._viewSource.getValue()?.TypeViewId,
|
|
4840
|
+
bc: breadCrumb ? breadCrumb : mo.$State === 'New' ? mo.$TypeDefName : mo.$Caption
|
|
4841
|
+
};
|
|
4842
|
+
if (currentParams.id === queryParamsToUpdate.id &&
|
|
4843
|
+
currentParams.tyid === queryParamsToUpdate.tyid &&
|
|
4844
|
+
currentParams.repid === queryParamsToUpdate.repid &&
|
|
4845
|
+
currentParams.vid === queryParamsToUpdate.vid) {
|
|
4846
|
+
return;
|
|
4847
|
+
}
|
|
4848
|
+
const newParams = {
|
|
4849
|
+
...currentParams,
|
|
4850
|
+
...queryParamsToUpdate // پارامترهایی که میخواهی تغییر دهی
|
|
4851
|
+
};
|
|
4852
|
+
this._router.navigate([
|
|
4853
|
+
{
|
|
4854
|
+
outlets: {
|
|
4855
|
+
main: ['show', newParams]
|
|
4856
|
+
}
|
|
4857
|
+
}
|
|
4858
|
+
], { relativeTo: this._activatedRoute.parent, skipLocationChange: false });
|
|
4825
4859
|
}
|
|
4826
4860
|
_forceClose() {
|
|
4827
4861
|
this._forceCloseSource.next();
|
|
@@ -4871,6 +4905,128 @@ class FormService {
|
|
|
4871
4905
|
}
|
|
4872
4906
|
}
|
|
4873
4907
|
|
|
4908
|
+
class ContainerService {
|
|
4909
|
+
constructor() {
|
|
4910
|
+
this.detachParent = true;
|
|
4911
|
+
this.state = 'attach';
|
|
4912
|
+
this.addModules = new Subject();
|
|
4913
|
+
this._onDestroy$ = new Subject();
|
|
4914
|
+
this._parentService = inject(ContainerService, { skipSelf: true, optional: true });
|
|
4915
|
+
this._scrollTop = 0;
|
|
4916
|
+
this._el = inject(ElementRef);
|
|
4917
|
+
}
|
|
4918
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
4919
|
+
ngOnDestroy() {
|
|
4920
|
+
this._onDestroy$.next();
|
|
4921
|
+
this._onDestroy$.complete();
|
|
4922
|
+
if (this._parentService && this.detachParent) {
|
|
4923
|
+
this._parentService.insert();
|
|
4924
|
+
}
|
|
4925
|
+
}
|
|
4926
|
+
setViewContainerRef(viewContainerRef) {
|
|
4927
|
+
this._viewContainerRef = viewContainerRef;
|
|
4928
|
+
this.state = 'attach';
|
|
4929
|
+
if (this._parentService && this.detachParent) {
|
|
4930
|
+
this._parentService.detach();
|
|
4931
|
+
}
|
|
4932
|
+
}
|
|
4933
|
+
detach() {
|
|
4934
|
+
this._setScrollPosition();
|
|
4935
|
+
this.state = 'detach';
|
|
4936
|
+
this._viewRef = this._viewContainerRef.detach();
|
|
4937
|
+
}
|
|
4938
|
+
_setScrollPosition() {
|
|
4939
|
+
const elDom = this._el.nativeElement;
|
|
4940
|
+
if (elDom) {
|
|
4941
|
+
const x1 = elDom.querySelector('fd-dynamic-page-content');
|
|
4942
|
+
const x2 = elDom.querySelector('.fd-scrollbar[fd-scrollbar]');
|
|
4943
|
+
const scrollTopPage = x1?.scrollTop;
|
|
4944
|
+
const scrollTopScrollbar = x2?.scrollTop;
|
|
4945
|
+
if (scrollTopPage && scrollTopPage > 0) {
|
|
4946
|
+
this._scrollTop = scrollTopPage;
|
|
4947
|
+
this._elDomScrollbar = x1;
|
|
4948
|
+
}
|
|
4949
|
+
else if (scrollTopScrollbar && scrollTopScrollbar > 0) {
|
|
4950
|
+
this._scrollTop = scrollTopScrollbar;
|
|
4951
|
+
this._elDomScrollbar = x2;
|
|
4952
|
+
}
|
|
4953
|
+
}
|
|
4954
|
+
}
|
|
4955
|
+
_restoreScrollPostion() {
|
|
4956
|
+
if (this._scrollTop && this._scrollTop > 0) {
|
|
4957
|
+
if (this._elDomScrollbar) {
|
|
4958
|
+
this._elDomScrollbar.scrollTop = this._scrollTop;
|
|
4959
|
+
}
|
|
4960
|
+
}
|
|
4961
|
+
}
|
|
4962
|
+
insert() {
|
|
4963
|
+
if (this._viewRef) {
|
|
4964
|
+
this._viewContainerRef.insert(this._viewRef);
|
|
4965
|
+
this._restoreScrollPostion();
|
|
4966
|
+
}
|
|
4967
|
+
else {
|
|
4968
|
+
this.addModules.next();
|
|
4969
|
+
}
|
|
4970
|
+
}
|
|
4971
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ContainerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4972
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ContainerService }); }
|
|
4973
|
+
}
|
|
4974
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ContainerService, decorators: [{
|
|
4975
|
+
type: Injectable
|
|
4976
|
+
}] });
|
|
4977
|
+
|
|
4978
|
+
class HorizontalLayoutService {
|
|
4979
|
+
constructor() {
|
|
4980
|
+
this.controlFlexColumnSource = new BehaviorSubject({});
|
|
4981
|
+
this.displayTextFlexColumn$ = this.controlFlexColumnSource
|
|
4982
|
+
.asObservable()
|
|
4983
|
+
.pipe(map((controlFlexColumn) => Object.keys(controlFlexColumn).some((c) => controlFlexColumn[c])));
|
|
4984
|
+
}
|
|
4985
|
+
setFlexColumn(id, val) {
|
|
4986
|
+
const flexColumn = this.controlFlexColumnSource.getValue();
|
|
4987
|
+
flexColumn[id] = val;
|
|
4988
|
+
this.controlFlexColumnSource.next(flexColumn);
|
|
4989
|
+
}
|
|
4990
|
+
}
|
|
4991
|
+
|
|
4992
|
+
class LayoutService {
|
|
4993
|
+
constructor() {
|
|
4994
|
+
this.rendered = new BehaviorSubject(false);
|
|
4995
|
+
this.maxWidth = new BehaviorSubject(0);
|
|
4996
|
+
this.refreshLayoutSource = new Subject();
|
|
4997
|
+
this.horizontalSource = new Subject();
|
|
4998
|
+
this._listOfHorizontal = [];
|
|
4999
|
+
this.rootRendered$ = this.rendered.asObservable();
|
|
5000
|
+
this.maxWidth$ = this.maxWidth.asObservable();
|
|
5001
|
+
this.refreshLayout$ = this.refreshLayoutSource.asObservable();
|
|
5002
|
+
this.horizontal$ = this.horizontalSource.asObservable().pipe(distinctUntilChanged((a, b) => a === b));
|
|
5003
|
+
}
|
|
5004
|
+
setRendered(val) {
|
|
5005
|
+
this.rendered.next(val);
|
|
5006
|
+
}
|
|
5007
|
+
setMaxWidth(val) {
|
|
5008
|
+
if (this.maxWidth.value < val) {
|
|
5009
|
+
this.maxWidth.next(val);
|
|
5010
|
+
}
|
|
5011
|
+
}
|
|
5012
|
+
refreshLayout() {
|
|
5013
|
+
this.refreshLayoutSource.next();
|
|
5014
|
+
}
|
|
5015
|
+
addHorizontal(id) {
|
|
5016
|
+
this._listOfHorizontal = [...this._listOfHorizontal, id];
|
|
5017
|
+
this.horizontalSource.next(this._listOfHorizontal);
|
|
5018
|
+
}
|
|
5019
|
+
removeHorizontal(id) {
|
|
5020
|
+
this._listOfHorizontal = this._listOfHorizontal.filter((c) => c !== id);
|
|
5021
|
+
this.horizontalSource.next(this._listOfHorizontal);
|
|
5022
|
+
}
|
|
5023
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
5024
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LayoutService }); }
|
|
5025
|
+
}
|
|
5026
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LayoutService, decorators: [{
|
|
5027
|
+
type: Injectable
|
|
5028
|
+
}], ctorParameters: () => [] });
|
|
5029
|
+
|
|
4874
5030
|
class PortalPageResolver {
|
|
4875
5031
|
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
4876
5032
|
constructor() {
|
|
@@ -5286,6 +5442,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
5286
5442
|
type: Injectable
|
|
5287
5443
|
}] });
|
|
5288
5444
|
|
|
5445
|
+
function reportRoutes(authGuard = false) {
|
|
5446
|
+
return {
|
|
5447
|
+
path: 'report/:id',
|
|
5448
|
+
canActivate: authGuard ? [AuthGuard] : [],
|
|
5449
|
+
loadChildren: () => import('./barsa-novin-ray-core-barsa-report-page.module-Bml7rVqA.mjs').then((m) => m.BarsaReportPageModule)
|
|
5450
|
+
};
|
|
5451
|
+
}
|
|
5452
|
+
|
|
5289
5453
|
class PortalService {
|
|
5290
5454
|
constructor() {
|
|
5291
5455
|
this.offsetTop = 0;
|
|
@@ -5850,7 +6014,7 @@ class PortalService {
|
|
|
5850
6014
|
...cpage
|
|
5851
6015
|
}
|
|
5852
6016
|
},
|
|
5853
|
-
children:
|
|
6017
|
+
children: [reportRoutes(), formRoutes()]
|
|
5854
6018
|
};
|
|
5855
6019
|
children.push(newRoute);
|
|
5856
6020
|
// Recursively process each MetaObjectModel inside MoDataList
|
|
@@ -6276,169 +6440,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
6276
6440
|
}]
|
|
6277
6441
|
}], ctorParameters: () => [] });
|
|
6278
6442
|
|
|
6279
|
-
class ContainerService {
|
|
6280
|
-
constructor() {
|
|
6281
|
-
this.oldActiveSystem = null;
|
|
6282
|
-
this.detachParent = true;
|
|
6283
|
-
this.masterDetails = false;
|
|
6284
|
-
this.state = 'attach';
|
|
6285
|
-
this.isMobile = getDeviceIsMobile();
|
|
6286
|
-
this.addModules = new Subject();
|
|
6287
|
-
this._activatedRoute = inject(ActivatedRoute);
|
|
6288
|
-
this._router = inject(Router);
|
|
6289
|
-
this._portalService = inject(PortalService);
|
|
6290
|
-
this._onDestroy$ = new Subject();
|
|
6291
|
-
this._parentService = inject(ContainerService, { skipSelf: true, optional: true });
|
|
6292
|
-
this._scrollTop = 0;
|
|
6293
|
-
this._el = inject(ElementRef);
|
|
6294
|
-
this.paramId$ = this._activatedRoute.paramMap.pipe(takeUntil$1(this._onDestroy$));
|
|
6295
|
-
this.routeEvents$ = this._router.events.pipe(takeUntil$1(this._onDestroy$), filter$1((event) => event instanceof NavigationEnd && event instanceof RouterEvent));
|
|
6296
|
-
}
|
|
6297
|
-
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
6298
|
-
ngOnDestroy() {
|
|
6299
|
-
this._onDestroy$.next();
|
|
6300
|
-
this._onDestroy$.complete();
|
|
6301
|
-
if (this._parentService && this.detachParent) {
|
|
6302
|
-
this._parentService.insert();
|
|
6303
|
-
}
|
|
6304
|
-
}
|
|
6305
|
-
setViewContainerRef(viewContainerRef) {
|
|
6306
|
-
this._viewContainerRef = viewContainerRef;
|
|
6307
|
-
this.state = 'attach';
|
|
6308
|
-
if (this._parentService && this.detachParent) {
|
|
6309
|
-
this._parentService.detach();
|
|
6310
|
-
}
|
|
6311
|
-
}
|
|
6312
|
-
hideFormPage() {
|
|
6313
|
-
const pageEl = this._el.nativeElement;
|
|
6314
|
-
pageEl.classList.remove('absolute-page');
|
|
6315
|
-
pageEl.classList.add('absolute-page-removed');
|
|
6316
|
-
}
|
|
6317
|
-
showFormPage() {
|
|
6318
|
-
const pageEl = this._el.nativeElement;
|
|
6319
|
-
pageEl.classList.remove('absolute-page-removed');
|
|
6320
|
-
pageEl.classList.add('absolute-page');
|
|
6321
|
-
}
|
|
6322
|
-
navigate(navigation, isRelative, queryParams, state) {
|
|
6323
|
-
if (this.masterDetails && !this.isMobile) {
|
|
6324
|
-
this.navigateMasterDetails(navigation, isRelative, queryParams, state);
|
|
6325
|
-
return;
|
|
6326
|
-
}
|
|
6327
|
-
this._router.navigate(navigation, {
|
|
6328
|
-
relativeTo: isRelative ? this._activatedRoute : null,
|
|
6329
|
-
queryParams,
|
|
6330
|
-
preserveFragment: true,
|
|
6331
|
-
state
|
|
6332
|
-
});
|
|
6333
|
-
}
|
|
6334
|
-
navigateMasterDetails(navigation, isRelative, queryParams, data) {
|
|
6335
|
-
if (this._portalService.deviceSize !== 's') {
|
|
6336
|
-
navigation = [{ outlets: { details: [...navigation.filter((_c, index) => index > 0)] } }];
|
|
6337
|
-
}
|
|
6338
|
-
this._router.navigate(navigation, {
|
|
6339
|
-
relativeTo: isRelative ? this._activatedRoute : null,
|
|
6340
|
-
queryParams,
|
|
6341
|
-
preserveFragment: true,
|
|
6342
|
-
state: { ...data }
|
|
6343
|
-
});
|
|
6344
|
-
}
|
|
6345
|
-
detach() {
|
|
6346
|
-
this._setScrollPosition();
|
|
6347
|
-
this.state = 'detach';
|
|
6348
|
-
this._viewRef = this._viewContainerRef.detach();
|
|
6349
|
-
}
|
|
6350
|
-
_setScrollPosition() {
|
|
6351
|
-
const elDom = this._el.nativeElement;
|
|
6352
|
-
if (elDom) {
|
|
6353
|
-
const x1 = elDom.querySelector('fd-dynamic-page-content');
|
|
6354
|
-
const x2 = elDom.querySelector('.fd-scrollbar[fd-scrollbar]');
|
|
6355
|
-
const scrollTopPage = x1?.scrollTop;
|
|
6356
|
-
const scrollTopScrollbar = x2?.scrollTop;
|
|
6357
|
-
if (scrollTopPage && scrollTopPage > 0) {
|
|
6358
|
-
this._scrollTop = scrollTopPage;
|
|
6359
|
-
this._elDomScrollbar = x1;
|
|
6360
|
-
}
|
|
6361
|
-
else if (scrollTopScrollbar && scrollTopScrollbar > 0) {
|
|
6362
|
-
this._scrollTop = scrollTopScrollbar;
|
|
6363
|
-
this._elDomScrollbar = x2;
|
|
6364
|
-
}
|
|
6365
|
-
}
|
|
6366
|
-
}
|
|
6367
|
-
_restoreScrollPostion() {
|
|
6368
|
-
if (this._scrollTop && this._scrollTop > 0) {
|
|
6369
|
-
if (this._elDomScrollbar) {
|
|
6370
|
-
this._elDomScrollbar.scrollTop = this._scrollTop;
|
|
6371
|
-
}
|
|
6372
|
-
}
|
|
6373
|
-
}
|
|
6374
|
-
insert() {
|
|
6375
|
-
if (this._viewRef) {
|
|
6376
|
-
this._viewContainerRef.insert(this._viewRef);
|
|
6377
|
-
this._restoreScrollPostion();
|
|
6378
|
-
}
|
|
6379
|
-
else {
|
|
6380
|
-
this.addModules.next();
|
|
6381
|
-
}
|
|
6382
|
-
}
|
|
6383
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ContainerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6384
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ContainerService }); }
|
|
6385
|
-
}
|
|
6386
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ContainerService, decorators: [{
|
|
6387
|
-
type: Injectable
|
|
6388
|
-
}], ctorParameters: () => [] });
|
|
6389
|
-
|
|
6390
|
-
class HorizontalLayoutService {
|
|
6391
|
-
constructor() {
|
|
6392
|
-
this.controlFlexColumnSource = new BehaviorSubject({});
|
|
6393
|
-
this.displayTextFlexColumn$ = this.controlFlexColumnSource
|
|
6394
|
-
.asObservable()
|
|
6395
|
-
.pipe(map((controlFlexColumn) => Object.keys(controlFlexColumn).some((c) => controlFlexColumn[c])));
|
|
6396
|
-
}
|
|
6397
|
-
setFlexColumn(id, val) {
|
|
6398
|
-
const flexColumn = this.controlFlexColumnSource.getValue();
|
|
6399
|
-
flexColumn[id] = val;
|
|
6400
|
-
this.controlFlexColumnSource.next(flexColumn);
|
|
6401
|
-
}
|
|
6402
|
-
}
|
|
6403
|
-
|
|
6404
|
-
class LayoutService {
|
|
6405
|
-
constructor() {
|
|
6406
|
-
this.rendered = new BehaviorSubject(false);
|
|
6407
|
-
this.maxWidth = new BehaviorSubject(0);
|
|
6408
|
-
this.refreshLayoutSource = new Subject();
|
|
6409
|
-
this.horizontalSource = new Subject();
|
|
6410
|
-
this._listOfHorizontal = [];
|
|
6411
|
-
this.rootRendered$ = this.rendered.asObservable();
|
|
6412
|
-
this.maxWidth$ = this.maxWidth.asObservable();
|
|
6413
|
-
this.refreshLayout$ = this.refreshLayoutSource.asObservable();
|
|
6414
|
-
this.horizontal$ = this.horizontalSource.asObservable().pipe(distinctUntilChanged((a, b) => a === b));
|
|
6415
|
-
}
|
|
6416
|
-
setRendered(val) {
|
|
6417
|
-
this.rendered.next(val);
|
|
6418
|
-
}
|
|
6419
|
-
setMaxWidth(val) {
|
|
6420
|
-
if (this.maxWidth.value < val) {
|
|
6421
|
-
this.maxWidth.next(val);
|
|
6422
|
-
}
|
|
6423
|
-
}
|
|
6424
|
-
refreshLayout() {
|
|
6425
|
-
this.refreshLayoutSource.next();
|
|
6426
|
-
}
|
|
6427
|
-
addHorizontal(id) {
|
|
6428
|
-
this._listOfHorizontal = [...this._listOfHorizontal, id];
|
|
6429
|
-
this.horizontalSource.next(this._listOfHorizontal);
|
|
6430
|
-
}
|
|
6431
|
-
removeHorizontal(id) {
|
|
6432
|
-
this._listOfHorizontal = this._listOfHorizontal.filter((c) => c !== id);
|
|
6433
|
-
this.horizontalSource.next(this._listOfHorizontal);
|
|
6434
|
-
}
|
|
6435
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6436
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LayoutService }); }
|
|
6437
|
-
}
|
|
6438
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: LayoutService, decorators: [{
|
|
6439
|
-
type: Injectable
|
|
6440
|
-
}], ctorParameters: () => [] });
|
|
6441
|
-
|
|
6442
6443
|
class UiService {
|
|
6443
6444
|
constructor() {
|
|
6444
6445
|
this.tabSelected = new Subject();
|
|
@@ -8168,66 +8169,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
8168
8169
|
type: Injectable
|
|
8169
8170
|
}], ctorParameters: () => [] });
|
|
8170
8171
|
|
|
8171
|
-
class PushCheckService {
|
|
8172
|
-
async checkPushReady() {
|
|
8173
|
-
if (!this.baseSupport()) {
|
|
8174
|
-
return 'مرورگر شما Push API را پشتیبانی نمیکند';
|
|
8175
|
-
}
|
|
8176
|
-
const iosCheck = this.iosSupport();
|
|
8177
|
-
if (iosCheck !== true) {
|
|
8178
|
-
return iosCheck;
|
|
8179
|
-
}
|
|
8180
|
-
if (Notification.permission === 'denied') {
|
|
8181
|
-
return 'شما قبلاً اجازه نوتیفیکیشن را رد کردهاید. از تنظیمات مرورگر آن را فعال کنید';
|
|
8182
|
-
}
|
|
8183
|
-
const regs = await navigator.serviceWorker.getRegistrations();
|
|
8184
|
-
if (!regs.length) {
|
|
8185
|
-
return 'Service Worker ثبت نشده است';
|
|
8186
|
-
}
|
|
8187
|
-
return true;
|
|
8188
|
-
}
|
|
8189
|
-
getIosVersion() {
|
|
8190
|
-
const ua = navigator.userAgent;
|
|
8191
|
-
if (/iP(hone|od|ad)/.test(ua)) {
|
|
8192
|
-
const v = ua.match(/OS (\d+)_/);
|
|
8193
|
-
return v ? parseInt(v[1], 10) : null;
|
|
8194
|
-
}
|
|
8195
|
-
return null;
|
|
8196
|
-
}
|
|
8197
|
-
isIosStandalone() {
|
|
8198
|
-
return 'standalone' in navigator && navigator.standalone === true;
|
|
8199
|
-
}
|
|
8200
|
-
isSafari() {
|
|
8201
|
-
const ua = navigator.userAgent.toLowerCase();
|
|
8202
|
-
return ua.includes('safari') && !ua.includes('chrome');
|
|
8203
|
-
}
|
|
8204
|
-
baseSupport() {
|
|
8205
|
-
return 'Notification' in window && 'serviceWorker' in navigator && 'PushManager' in window;
|
|
8206
|
-
}
|
|
8207
|
-
iosSupport() {
|
|
8208
|
-
const v = this.getIosVersion();
|
|
8209
|
-
if (v && v < 16) {
|
|
8210
|
-
return 'نسخه iOS کمتر از 16 است (Push پشتیبانی نمیشود)';
|
|
8211
|
-
}
|
|
8212
|
-
if (v && v < 16.4) {
|
|
8213
|
-
return 'iOS باید حداقل نسخه 16.4 باشد تا Push فعال شود';
|
|
8214
|
-
}
|
|
8215
|
-
if (v && !this.isSafari()) {
|
|
8216
|
-
return 'Push فقط در Safari iOS پشتیبانی میشود';
|
|
8217
|
-
}
|
|
8218
|
-
if (v && !this.isIosStandalone()) {
|
|
8219
|
-
return 'برای فعال شدن Push، برنامه را با Add to Home Screen نصب کنید';
|
|
8220
|
-
}
|
|
8221
|
-
return true;
|
|
8222
|
-
}
|
|
8223
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: PushCheckService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8224
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: PushCheckService, providedIn: 'root' }); }
|
|
8225
|
-
}
|
|
8226
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: PushCheckService, decorators: [{
|
|
8227
|
-
type: Injectable,
|
|
8228
|
-
args: [{ providedIn: 'root' }]
|
|
8229
|
-
}] });
|
|
8230
|
-
|
|
8231
8172
|
// src/app/services/idb.service.ts
|
|
8232
8173
|
class IdbService {
|
|
8233
8174
|
constructor() {
|
|
@@ -8347,7 +8288,9 @@ class PushNotificationService {
|
|
|
8347
8288
|
}
|
|
8348
8289
|
async unsubscribe() {
|
|
8349
8290
|
try {
|
|
8350
|
-
const sub = await lastValueFrom(this.swPush.subscription)
|
|
8291
|
+
const sub = await lastValueFrom(this.swPush.subscription.pipe(timeout(500), // اگر در 500ms چیزی نداد
|
|
8292
|
+
catchError$1(() => of(null)) // مقدار null برگردان
|
|
8293
|
+
));
|
|
8351
8294
|
if (!sub) {
|
|
8352
8295
|
return;
|
|
8353
8296
|
}
|
|
@@ -8438,7 +8381,6 @@ class ServiceWorkerCommuncationService {
|
|
|
8438
8381
|
this._toastService = inject(TOAST_SERVICE, { optional: true });
|
|
8439
8382
|
this._localStorage = inject(LocalStorageService);
|
|
8440
8383
|
this._portalService = inject(PortalService);
|
|
8441
|
-
this._pushCheckService = inject(PushCheckService);
|
|
8442
8384
|
this._pushNotificatioService = inject(PushNotificationService);
|
|
8443
8385
|
}
|
|
8444
8386
|
get token2() {
|
|
@@ -8464,19 +8406,6 @@ class ServiceWorkerCommuncationService {
|
|
|
8464
8406
|
BarsaApi.Ul.ApplicationCtrlr.on({
|
|
8465
8407
|
UserLoggedout: (_, doReturn) => this._handlePushUnSubscription(doReturn)
|
|
8466
8408
|
});
|
|
8467
|
-
// automatic effect: update operationName based on subscription
|
|
8468
|
-
effect(() => {
|
|
8469
|
-
const sub = this._pushNotificatioService.push().isSubscribed;
|
|
8470
|
-
// اینجا میتونی متغیر operationName یا UI رو اتوماتیک آپدیت کنی
|
|
8471
|
-
console.log('Push subscription changed:', sub);
|
|
8472
|
-
});
|
|
8473
|
-
// automatic effect: show toast on errors
|
|
8474
|
-
effect(() => {
|
|
8475
|
-
const err = this._pushNotificatioService.push().errorMessage;
|
|
8476
|
-
if (err) {
|
|
8477
|
-
this.toast(err);
|
|
8478
|
-
}
|
|
8479
|
-
});
|
|
8480
8409
|
}
|
|
8481
8410
|
_subscribe() {
|
|
8482
8411
|
this._portalService.userLoggedIn$.pipe().subscribe((isLoggedIn) => this._isLoggedIn(isLoggedIn));
|
|
@@ -8552,10 +8481,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
8552
8481
|
}] });
|
|
8553
8482
|
|
|
8554
8483
|
class RoutingService {
|
|
8555
|
-
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
8556
8484
|
constructor() {
|
|
8557
8485
|
this.oldActiveSystem = null;
|
|
8558
|
-
this._activatedRoute = inject(ActivatedRoute);
|
|
8559
8486
|
this.router = inject(Router);
|
|
8560
8487
|
this.isSidebar = false;
|
|
8561
8488
|
this._Object = {
|
|
@@ -8591,11 +8518,84 @@ class RoutingService {
|
|
|
8591
8518
|
}
|
|
8592
8519
|
}
|
|
8593
8520
|
};
|
|
8521
|
+
this.isFirstPage = true;
|
|
8522
|
+
this.masterDetails = false;
|
|
8523
|
+
this.isMobile = getDeviceIsMobile();
|
|
8524
|
+
this._activatedRoute = inject(ActivatedRoute);
|
|
8525
|
+
this._router = inject(Router);
|
|
8526
|
+
this._portalService = inject(PortalService);
|
|
8527
|
+
this._parentRoutingService = inject(RoutingService, { skipSelf: true, optional: true });
|
|
8528
|
+
this._onDestroy$ = new Subject();
|
|
8529
|
+
this._formDialogComponent = inject(FORM_DIALOG_COMPONENT, { optional: true });
|
|
8530
|
+
this._dialogService = inject(DIALOG_SERVICE, { optional: true });
|
|
8531
|
+
this._vcr = inject(ViewContainerRef);
|
|
8532
|
+
/* eslint-disable */
|
|
8533
|
+
this.ForceClose = () => {
|
|
8534
|
+
this.parentContainer.ForceCloseChild();
|
|
8535
|
+
};
|
|
8536
|
+
this.ShowFormPanelControl = (formpanelCtrlr) => {
|
|
8537
|
+
this.formpanelCtrlr = formpanelCtrlr;
|
|
8538
|
+
this._showFormPanel();
|
|
8539
|
+
};
|
|
8540
|
+
/* eslint-disable */
|
|
8541
|
+
this.ForceCloseChild = () => {
|
|
8542
|
+
this._router.navigate(['../'], { relativeTo: this._activatedRoute });
|
|
8543
|
+
};
|
|
8544
|
+
/* eslint-disable */
|
|
8545
|
+
this.RefreshFormPanelControl = (formpanelCtrlr) => {
|
|
8546
|
+
if (!this.formpanelCtrlr) {
|
|
8547
|
+
this.formpanelCtrlr = formpanelCtrlr;
|
|
8548
|
+
}
|
|
8549
|
+
else {
|
|
8550
|
+
formpanelCtrlr = this._portalService.formPanels[this.formpanelCtrlrId];
|
|
8551
|
+
}
|
|
8552
|
+
this._showFormPanel(true);
|
|
8553
|
+
};
|
|
8594
8554
|
this.oldActiveSystem = BarsaApi.Bw.App.GetActiveSystem;
|
|
8555
|
+
this._activatedRoute.params.pipe(takeUntil$1(this._onDestroy$)).subscribe((_params) => {
|
|
8556
|
+
const state = this._router.getCurrentNavigation()?.extras.state;
|
|
8557
|
+
this.formpanelCtrlrId = state?.formPanelCtrlrId;
|
|
8558
|
+
});
|
|
8559
|
+
this.paramId$ = this._activatedRoute.paramMap.pipe(takeUntil$1(this._onDestroy$));
|
|
8560
|
+
this.routeEvents$ = this._router.events.pipe(takeUntil$1(this._onDestroy$), filter$1((event) => event instanceof NavigationEnd && event instanceof RouterEvent));
|
|
8595
8561
|
BarsaApi.Bw.App.GetActiveSystem = () => this;
|
|
8562
|
+
this.parentContainer = BarsaApi.Bw.FormHandler;
|
|
8563
|
+
BarsaApi.Bw.FormHandler = this;
|
|
8564
|
+
this.oldNavigation = BarsaApi.Bw.Navigate;
|
|
8565
|
+
BarsaApi.Bw.Navigate = (navigation, isRelative, queryParams, data) => {
|
|
8566
|
+
this._parentRoutingService?.navigate(navigation, isRelative, queryParams, data);
|
|
8567
|
+
};
|
|
8596
8568
|
}
|
|
8597
8569
|
ngOnDestroy() {
|
|
8598
8570
|
BarsaApi.Bw.App.GetActiveSystem = this.oldActiveSystem;
|
|
8571
|
+
BarsaApi.Bw.Navigate = this.oldNavigation;
|
|
8572
|
+
BarsaApi.Bw.FormHandler = this.parentContainer;
|
|
8573
|
+
}
|
|
8574
|
+
_showFormPanel(refreshOnly = false) {
|
|
8575
|
+
this._portalService.ShowFormPanelControl(this.formpanelCtrlr, this._router, this._activatedRoute, this._formDialogComponent, this.isFirstPage, this._vcr, refreshOnly);
|
|
8576
|
+
}
|
|
8577
|
+
navigate(navigation, isRelative, queryParams, state) {
|
|
8578
|
+
if (this.masterDetails && !this.isMobile) {
|
|
8579
|
+
this.navigateMasterDetails(navigation, isRelative, queryParams, state);
|
|
8580
|
+
return;
|
|
8581
|
+
}
|
|
8582
|
+
this._router.navigate(navigation, {
|
|
8583
|
+
relativeTo: isRelative ? this._activatedRoute : null,
|
|
8584
|
+
queryParams,
|
|
8585
|
+
preserveFragment: true,
|
|
8586
|
+
state
|
|
8587
|
+
});
|
|
8588
|
+
}
|
|
8589
|
+
navigateMasterDetails(navigation, isRelative, queryParams, data) {
|
|
8590
|
+
if (this._portalService.deviceSize !== 's') {
|
|
8591
|
+
navigation = [{ outlets: { details: [...navigation.filter((_c, index) => index > 0)] } }];
|
|
8592
|
+
}
|
|
8593
|
+
this._router.navigate(navigation, {
|
|
8594
|
+
relativeTo: isRelative ? this._activatedRoute : null,
|
|
8595
|
+
queryParams,
|
|
8596
|
+
preserveFragment: true,
|
|
8597
|
+
state: { ...data }
|
|
8598
|
+
});
|
|
8599
8599
|
}
|
|
8600
8600
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: RoutingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8601
8601
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: RoutingService }); }
|
|
@@ -8694,6 +8694,87 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
8694
8694
|
args: [{ providedIn: 'root' }]
|
|
8695
8695
|
}], ctorParameters: () => [] });
|
|
8696
8696
|
|
|
8697
|
+
class PushCheckService {
|
|
8698
|
+
async checkPushReady() {
|
|
8699
|
+
if (!this.baseSupport()) {
|
|
8700
|
+
return 'مرورگر شما Push API را پشتیبانی نمیکند';
|
|
8701
|
+
}
|
|
8702
|
+
const iosCheck = this.iosSupport();
|
|
8703
|
+
if (iosCheck !== true) {
|
|
8704
|
+
return iosCheck;
|
|
8705
|
+
}
|
|
8706
|
+
if (Notification.permission === 'denied') {
|
|
8707
|
+
return 'شما قبلاً اجازه نوتیفیکیشن را رد کردهاید. از تنظیمات مرورگر آن را فعال کنید';
|
|
8708
|
+
}
|
|
8709
|
+
const regs = await navigator.serviceWorker.getRegistrations();
|
|
8710
|
+
if (!regs.length) {
|
|
8711
|
+
return 'Service Worker ثبت نشده است';
|
|
8712
|
+
}
|
|
8713
|
+
return true;
|
|
8714
|
+
}
|
|
8715
|
+
getIosVersion() {
|
|
8716
|
+
const ua = navigator.userAgent;
|
|
8717
|
+
if (/iP(hone|od|ad)/.test(ua)) {
|
|
8718
|
+
const v = ua.match(/OS (\d+)_/);
|
|
8719
|
+
return v ? parseInt(v[1], 10) : null;
|
|
8720
|
+
}
|
|
8721
|
+
return null;
|
|
8722
|
+
}
|
|
8723
|
+
isIosStandalone() {
|
|
8724
|
+
return 'standalone' in navigator && navigator.standalone === true;
|
|
8725
|
+
}
|
|
8726
|
+
isSafari() {
|
|
8727
|
+
const ua = navigator.userAgent.toLowerCase();
|
|
8728
|
+
return ua.includes('safari') && !ua.includes('chrome');
|
|
8729
|
+
}
|
|
8730
|
+
baseSupport() {
|
|
8731
|
+
return 'Notification' in window && 'serviceWorker' in navigator && 'PushManager' in window;
|
|
8732
|
+
}
|
|
8733
|
+
iosSupport() {
|
|
8734
|
+
const v = this.getIosVersion();
|
|
8735
|
+
if (v && v < 16) {
|
|
8736
|
+
return 'نسخه iOS کمتر از 16 است (Push پشتیبانی نمیشود)';
|
|
8737
|
+
}
|
|
8738
|
+
if (v && v < 16.4) {
|
|
8739
|
+
return 'iOS باید حداقل نسخه 16.4 باشد تا Push فعال شود';
|
|
8740
|
+
}
|
|
8741
|
+
if (v && !this.isSafari()) {
|
|
8742
|
+
return 'Push فقط در Safari iOS پشتیبانی میشود';
|
|
8743
|
+
}
|
|
8744
|
+
if (v && !this.isIosStandalone()) {
|
|
8745
|
+
return 'برای فعال شدن Push، برنامه را با Add to Home Screen نصب کنید';
|
|
8746
|
+
}
|
|
8747
|
+
return true;
|
|
8748
|
+
}
|
|
8749
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: PushCheckService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8750
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: PushCheckService, providedIn: 'root' }); }
|
|
8751
|
+
}
|
|
8752
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: PushCheckService, decorators: [{
|
|
8753
|
+
type: Injectable,
|
|
8754
|
+
args: [{ providedIn: 'root' }]
|
|
8755
|
+
}] });
|
|
8756
|
+
|
|
8757
|
+
class CardViewService {
|
|
8758
|
+
constructor() {
|
|
8759
|
+
this._maxHeaderTitleHeight$ = new BehaviorSubject(0);
|
|
8760
|
+
this._ulvMainService = inject(UlvMainService);
|
|
8761
|
+
}
|
|
8762
|
+
get maxHeaderTitleHeight$() {
|
|
8763
|
+
return this._maxHeaderTitleHeight$.asObservable();
|
|
8764
|
+
}
|
|
8765
|
+
setHeaderHeight(height) {
|
|
8766
|
+
const currHeight = this._maxHeaderTitleHeight$.getValue();
|
|
8767
|
+
if (currHeight < height) {
|
|
8768
|
+
this._maxHeaderTitleHeight$.next(height);
|
|
8769
|
+
}
|
|
8770
|
+
}
|
|
8771
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CardViewService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8772
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CardViewService }); }
|
|
8773
|
+
}
|
|
8774
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: CardViewService, decorators: [{
|
|
8775
|
+
type: Injectable
|
|
8776
|
+
}] });
|
|
8777
|
+
|
|
8697
8778
|
class FieldBaseComponent extends BaseComponent {
|
|
8698
8779
|
get customFieldInfo() {
|
|
8699
8780
|
return this.context.Setting.CustomFieldInfo;
|
|
@@ -9613,7 +9694,7 @@ class ContainerComponent extends BaseComponent {
|
|
|
9613
9694
|
this._cdr = inject(ChangeDetectorRef);
|
|
9614
9695
|
this._renderer2 = inject(Renderer2);
|
|
9615
9696
|
this._dialogService = inject(DIALOG_SERVICE, { optional: true });
|
|
9616
|
-
this.
|
|
9697
|
+
this._parentContainerService = inject(ContainerService, { self: false, optional: true });
|
|
9617
9698
|
this._containerService = inject(ContainerService, { self: true, optional: true });
|
|
9618
9699
|
this._formDialogComponent = inject(FORM_DIALOG_COMPONENT, { optional: true });
|
|
9619
9700
|
this.oldContainerContainer = this._barsaDialogService.containerComponent;
|
|
@@ -9630,20 +9711,12 @@ class ContainerComponent extends BaseComponent {
|
|
|
9630
9711
|
return this.containerRef;
|
|
9631
9712
|
}
|
|
9632
9713
|
ngOnInit() {
|
|
9633
|
-
this.parentContainer = BarsaApi.Bw.FormHandler;
|
|
9634
|
-
BarsaApi.Bw.FormHandler = this;
|
|
9635
|
-
this.oldNavigation = BarsaApi.Bw.Navigate;
|
|
9636
|
-
BarsaApi.Bw.Navigate = (navigation, isRelative, queryParams, data) => {
|
|
9637
|
-
this._containerServiceParent?.navigate(navigation, isRelative, queryParams, data);
|
|
9638
|
-
};
|
|
9639
9714
|
super.ngOnInit();
|
|
9640
9715
|
this._containerService?.setViewContainerRef(this.containerRef);
|
|
9641
9716
|
}
|
|
9642
9717
|
ngOnDestroy() {
|
|
9643
|
-
BarsaApi.Bw.FormHandler = this.parentContainer;
|
|
9644
9718
|
super.ngOnDestroy();
|
|
9645
9719
|
this._barsaDialogService.containerComponent = this.oldContainerContainer;
|
|
9646
|
-
BarsaApi.Bw.Navigate = this.oldNavigation;
|
|
9647
9720
|
}
|
|
9648
9721
|
detach() {
|
|
9649
9722
|
this._viewRef = this.containerRef.detach();
|
|
@@ -9680,6 +9753,8 @@ class PageBaseComponent extends ContainerComponent {
|
|
|
9680
9753
|
this.hasRoute = true;
|
|
9681
9754
|
this.fullscreen = true;
|
|
9682
9755
|
this.componentsAddedToPage = false;
|
|
9756
|
+
this._parentRoutingService = inject(RoutingService, { skipSelf: true, optional: true });
|
|
9757
|
+
this._routingService = inject(RoutingService, { self: true, optional: true });
|
|
9683
9758
|
}
|
|
9684
9759
|
ngAfterViewInit() {
|
|
9685
9760
|
super.ngAfterViewInit();
|
|
@@ -9740,8 +9815,8 @@ class PageBaseComponent extends ContainerComponent {
|
|
|
9740
9815
|
controlUi.instance.settings = module.Component.Settings;
|
|
9741
9816
|
controlUi.instance.activatedRoute = this._activatedRoute;
|
|
9742
9817
|
let containerRef = this.containerRef;
|
|
9743
|
-
if (module.
|
|
9744
|
-
containerRef = this[module.
|
|
9818
|
+
if (module.PlaceholderName && this[module.PlaceholderName]) {
|
|
9819
|
+
containerRef = this[module.PlaceholderName];
|
|
9745
9820
|
} // توسط ماژول مشخص شده کامپوننت در کدام کانتینر پیج قرار گیرد
|
|
9746
9821
|
if (containerRef) {
|
|
9747
9822
|
containerRef.insert(controlUi.hostView);
|
|
@@ -11013,34 +11088,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
11013
11088
|
class FormPageBaseComponent extends ContainerComponent {
|
|
11014
11089
|
constructor() {
|
|
11015
11090
|
super(...arguments);
|
|
11091
|
+
this._routingService = inject(RoutingService, { self: true, optional: true });
|
|
11016
11092
|
this._containerServiceParent = inject(ContainerService, { skipSelf: true, optional: true });
|
|
11017
|
-
/* eslint-disable */
|
|
11018
|
-
this.ShowFormPanelControl = (formpanelCtrlr) => {
|
|
11019
|
-
this._portalService.ShowFormPanelControl(formpanelCtrlr, this._router, this._activatedRoute, this._formDialogComponent, false, this._vcr);
|
|
11020
|
-
};
|
|
11021
|
-
/* eslint-disable */
|
|
11022
|
-
this.RefreshFormPanelControl = () => {
|
|
11023
|
-
const formpanelCtrlr = this._portalService.formPanels[this.formpanelCtrlrId];
|
|
11024
|
-
this.parentContainer.RefreshFormPanelControl(formpanelCtrlr);
|
|
11025
|
-
};
|
|
11026
|
-
/* eslint-disable */
|
|
11027
|
-
this.ForceCloseChild = () => {
|
|
11028
|
-
this._router.navigate([{ outlets: { popup: null } }], {
|
|
11029
|
-
relativeTo: this._activatedRoute
|
|
11030
|
-
});
|
|
11031
|
-
};
|
|
11032
|
-
/* eslint-disable */
|
|
11033
|
-
this.ForceClose = () => {
|
|
11034
|
-
this.parentContainer.ForceCloseChild();
|
|
11035
|
-
};
|
|
11036
11093
|
}
|
|
11037
11094
|
ngOnInit() {
|
|
11038
11095
|
super.ngOnInit();
|
|
11096
|
+
this._routingService && (this._routingService.isFirstPage = false);
|
|
11039
11097
|
this._activatedRoute.params.pipe(takeUntil(this._onDestroy$)).subscribe((params) => {
|
|
11040
11098
|
const state = this._router.getCurrentNavigation()?.extras.state;
|
|
11041
11099
|
this.prepareIds(state?.formPanelCtrlrId, params);
|
|
11042
11100
|
});
|
|
11043
|
-
this.hideAllPageContent();
|
|
11044
11101
|
}
|
|
11045
11102
|
ngAfterViewInit() {
|
|
11046
11103
|
super.ngAfterViewInit();
|
|
@@ -11056,16 +11113,6 @@ class FormPageBaseComponent extends ContainerComponent {
|
|
|
11056
11113
|
ngOnDestroy() {
|
|
11057
11114
|
super.ngOnDestroy();
|
|
11058
11115
|
this._portalService.formPanels[this.formpanelCtrlrId] = null;
|
|
11059
|
-
this.removeLastHidePage();
|
|
11060
|
-
}
|
|
11061
|
-
_resize() {
|
|
11062
|
-
this.hideAllPageContent();
|
|
11063
|
-
}
|
|
11064
|
-
hideAllPageContent() {
|
|
11065
|
-
this._containerServiceParent?.hideFormPage();
|
|
11066
|
-
}
|
|
11067
|
-
removeLastHidePage() {
|
|
11068
|
-
this._containerServiceParent?.showFormPage();
|
|
11069
11116
|
}
|
|
11070
11117
|
onFormClose() {
|
|
11071
11118
|
if (this._activatedRoute.snapshot.params.isFirst &&
|
|
@@ -11085,12 +11132,6 @@ class FormPageBaseComponent extends ContainerComponent {
|
|
|
11085
11132
|
replaceUrl: true
|
|
11086
11133
|
});
|
|
11087
11134
|
}
|
|
11088
|
-
return;
|
|
11089
|
-
const outlet = this._activatedRoute.outlet;
|
|
11090
|
-
// let outlets = {};
|
|
11091
|
-
// outlets[outlet] = null;
|
|
11092
|
-
// if(this.location.getState())
|
|
11093
|
-
this._router.navigate([{ outlets: { main: null } }]);
|
|
11094
11135
|
}
|
|
11095
11136
|
prepareIds(formpanelCtrlrId, params) {
|
|
11096
11137
|
this.formpanelCtrlrId = formpanelCtrlrId || params.formPanelCtrlrId;
|
|
@@ -11105,7 +11146,7 @@ class FormPageBaseComponent extends ContainerComponent {
|
|
|
11105
11146
|
this._cdr.detectChanges();
|
|
11106
11147
|
}
|
|
11107
11148
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormPageBaseComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11108
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: FormPageBaseComponent, isStandalone: false, selector: "bnrc-form-page-base", inputs: { formPanelCtrlr: "formPanelCtrlr"
|
|
11149
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: FormPageBaseComponent, isStandalone: false, selector: "bnrc-form-page-base", inputs: { formPanelCtrlr: "formPanelCtrlr" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11109
11150
|
}
|
|
11110
11151
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormPageBaseComponent, decorators: [{
|
|
11111
11152
|
type: Component,
|
|
@@ -11117,14 +11158,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
11117
11158
|
}]
|
|
11118
11159
|
}], propDecorators: { formPanelCtrlr: [{
|
|
11119
11160
|
type: Input
|
|
11120
|
-
}], ShowFormPanelControl: [{
|
|
11121
|
-
type: Input
|
|
11122
|
-
}], RefreshFormPanelControl: [{
|
|
11123
|
-
type: Input
|
|
11124
|
-
}], ForceCloseChild: [{
|
|
11125
|
-
type: Input
|
|
11126
|
-
}], ForceClose: [{
|
|
11127
|
-
type: Input
|
|
11128
11161
|
}] } });
|
|
11129
11162
|
|
|
11130
11163
|
class FormComponent extends BaseComponent {
|
|
@@ -11146,6 +11179,7 @@ class FormComponent extends BaseComponent {
|
|
|
11146
11179
|
this._activatedRoute = inject(ActivatedRoute);
|
|
11147
11180
|
this._router = inject(Router);
|
|
11148
11181
|
this._containerService = inject(ContainerService, { self: false, optional: true });
|
|
11182
|
+
this._routingService = inject(RoutingService, { skipSelf: true, optional: true });
|
|
11149
11183
|
el.nativeElement.id = this.uniqueId = getUniqueId(4);
|
|
11150
11184
|
}
|
|
11151
11185
|
ngOnInit() {
|
|
@@ -11162,8 +11196,8 @@ class FormComponent extends BaseComponent {
|
|
|
11162
11196
|
const currVal = JSON.stringify(params.currentValue);
|
|
11163
11197
|
const prevVal = JSON.stringify(params.previousValue);
|
|
11164
11198
|
if (currVal !== prevVal) {
|
|
11165
|
-
this.vcr.clear();
|
|
11166
|
-
this.appendForm(currVal);
|
|
11199
|
+
// this.vcr.clear();
|
|
11200
|
+
// this.appendForm(currVal);
|
|
11167
11201
|
}
|
|
11168
11202
|
}
|
|
11169
11203
|
}
|
|
@@ -11227,9 +11261,9 @@ class FormComponent extends BaseComponent {
|
|
|
11227
11261
|
formpanelCtrlr.UlvMainCtrlr = this.UlvMainCtrlr;
|
|
11228
11262
|
formpanelCtrlr.Setting = formSetting;
|
|
11229
11263
|
formpanelCtrlr.InlineEditInReport = this.inlineEditInReport;
|
|
11230
|
-
if (this.
|
|
11231
|
-
this.
|
|
11232
|
-
formpanelCtrlr.Page = this.
|
|
11264
|
+
if (this._routingService) {
|
|
11265
|
+
this._routingService.FormPanelCtrlr = formpanelCtrlr;
|
|
11266
|
+
formpanelCtrlr.Page = this._routingService;
|
|
11233
11267
|
}
|
|
11234
11268
|
const nav = this._router.getCurrentNavigation();
|
|
11235
11269
|
formpanelCtrlr.FormRequestParams.state = nav?.extras.state;
|
|
@@ -11434,7 +11468,7 @@ class FormPageComponent extends FormPageBaseComponent {
|
|
|
11434
11468
|
super.ngOnInit();
|
|
11435
11469
|
}
|
|
11436
11470
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: FormPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11437
|
-
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: "_placeHolderTemplate", first: true, predicate: ["placeHolderTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
11471
|
+
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, RoutingService, ContainerService], viewQueries: [{ propertyName: "_placeHolderTemplate", first: true, predicate: ["placeHolderTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
11438
11472
|
<ng-template #placeHolderTemplate>
|
|
11439
11473
|
<bnrc-form
|
|
11440
11474
|
[formPanelCtrl]="formPanelCtrlr"
|
|
@@ -11460,7 +11494,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
11460
11494
|
</ng-template>
|
|
11461
11495
|
<ng-container #containerRef> </ng-container>
|
|
11462
11496
|
<router-outlet></router-outlet>
|
|
11463
|
-
`, providers: [FormService, ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block;background:var(--sapBackgroundColor)}\n"] }]
|
|
11497
|
+
`, providers: [FormService, RoutingService, ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block;background:var(--sapBackgroundColor)}\n"] }]
|
|
11464
11498
|
}], propDecorators: { _placeHolderTemplate: [{
|
|
11465
11499
|
type: ViewChild,
|
|
11466
11500
|
args: ['placeHolderTemplate', { static: true }]
|
|
@@ -11665,8 +11699,8 @@ class EmptyPageComponent extends PageWithFormHandlerBaseComponent {
|
|
|
11665
11699
|
const isModal = this.settings?.IsModal;
|
|
11666
11700
|
const isRelativePage = this._activatedRoute.snapshot.data?.pageData?.Component?.Settings?.IsRelativePage;
|
|
11667
11701
|
if (isRelativePage || isModal) {
|
|
11668
|
-
if (this.
|
|
11669
|
-
this.
|
|
11702
|
+
if (this._parentContainerService) {
|
|
11703
|
+
this._parentContainerService.detachParent = false;
|
|
11670
11704
|
}
|
|
11671
11705
|
else {
|
|
11672
11706
|
this._log.error(nullOrUndefinedString('EmptyPageComponent=> _containerService'));
|
|
@@ -11685,7 +11719,7 @@ class EmptyPageComponent extends PageWithFormHandlerBaseComponent {
|
|
|
11685
11719
|
}
|
|
11686
11720
|
}
|
|
11687
11721
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: EmptyPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11688
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: EmptyPageComponent, isStandalone: false, selector: "bnrc-empty-page", host: { properties: { "style.position": "this._position", "class.section": "this.sectionClass", "class.absolute-page": "this.absolutePageClass", "class.modal": "this.ismodal" } }, providers: [ContainerService], usesInheritance: true, ngImport: i0, template: `<ng-container #containerRef></ng-container>
|
|
11722
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: EmptyPageComponent, isStandalone: false, selector: "bnrc-empty-page", host: { properties: { "style.position": "this._position", "class.section": "this.sectionClass", "class.absolute-page": "this.absolutePageClass", "class.modal": "this.ismodal" } }, providers: [RoutingService, ContainerService], usesInheritance: true, ngImport: i0, template: `<ng-container #containerRef></ng-container>
|
|
11689
11723
|
<router-outlet></router-outlet>
|
|
11690
11724
|
<router-outlet name="dialog"></router-outlet>`, isInline: true, styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11691
11725
|
}
|
|
@@ -11693,7 +11727,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
11693
11727
|
type: Component,
|
|
11694
11728
|
args: [{ selector: 'bnrc-empty-page', template: `<ng-container #containerRef></ng-container>
|
|
11695
11729
|
<router-outlet></router-outlet>
|
|
11696
|
-
<router-outlet name="dialog"></router-outlet>`, providers: [ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block}\n"] }]
|
|
11730
|
+
<router-outlet name="dialog"></router-outlet>`, providers: [RoutingService, ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block}\n"] }]
|
|
11697
11731
|
}], propDecorators: { _position: [{
|
|
11698
11732
|
type: HostBinding,
|
|
11699
11733
|
args: ['style.position']
|
|
@@ -11720,8 +11754,8 @@ class MasterDetailsPageComponent extends PageWithFormHandlerBaseComponent {
|
|
|
11720
11754
|
this.settings = BarsaApi.Common.Util.TryGetValue(this._activatedRoute, 'data._value.pageData.Component.Settings', null);
|
|
11721
11755
|
const isModal = this.settings?.IsModal;
|
|
11722
11756
|
if (isModal) {
|
|
11723
|
-
if (this.
|
|
11724
|
-
this.
|
|
11757
|
+
if (this._parentContainerService) {
|
|
11758
|
+
this._parentContainerService.detachParent = false;
|
|
11725
11759
|
}
|
|
11726
11760
|
else {
|
|
11727
11761
|
this._log.error(nullOrUndefinedString('EmptyPageComponent=> _containerService'));
|
|
@@ -11730,7 +11764,7 @@ class MasterDetailsPageComponent extends PageWithFormHandlerBaseComponent {
|
|
|
11730
11764
|
this.ismodal = true;
|
|
11731
11765
|
}
|
|
11732
11766
|
super.ngOnInit();
|
|
11733
|
-
this.
|
|
11767
|
+
this._routingService && (this._routingService.masterDetails = true);
|
|
11734
11768
|
// if (!BarsaApi.LoginFormData.IsServiceDesk && !isModal) {
|
|
11735
11769
|
// this._position = 'initial';
|
|
11736
11770
|
// }
|
|
@@ -11739,7 +11773,7 @@ class MasterDetailsPageComponent extends PageWithFormHandlerBaseComponent {
|
|
|
11739
11773
|
}
|
|
11740
11774
|
}
|
|
11741
11775
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: MasterDetailsPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11742
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: MasterDetailsPageComponent, isStandalone: false, selector: "bnrc-master-details-page", host: { properties: { "style.position": "this._position", "class.section": "this.sectionClass", "class.absolute-page": "this.absolutePageClass", "class.modal": "this.ismodal" } }, providers: [ContainerService], usesInheritance: true, ngImport: i0, template: `
|
|
11776
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: MasterDetailsPageComponent, isStandalone: false, selector: "bnrc-master-details-page", host: { properties: { "style.position": "this._position", "class.section": "this.sectionClass", "class.absolute-page": "this.absolutePageClass", "class.modal": "this.ismodal" } }, providers: [RoutingService, ContainerService], usesInheritance: true, ngImport: i0, template: `
|
|
11743
11777
|
<div class="tw-flex tw-h-full tw-w-full tw-flex-col md:tw-flex-row">
|
|
11744
11778
|
<!-- لیست -->
|
|
11745
11779
|
<div
|
|
@@ -11775,7 +11809,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
11775
11809
|
</div>
|
|
11776
11810
|
<router-outlet></router-outlet>
|
|
11777
11811
|
<router-outlet name="dialog"></router-outlet>
|
|
11778
|
-
`, providers: [ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block}\n"] }]
|
|
11812
|
+
`, providers: [RoutingService, ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block}\n"] }]
|
|
11779
11813
|
}], propDecorators: { _position: [{
|
|
11780
11814
|
type: HostBinding,
|
|
11781
11815
|
args: ['style.position']
|
|
@@ -11790,20 +11824,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
11790
11824
|
args: ['class.modal']
|
|
11791
11825
|
}] } });
|
|
11792
11826
|
|
|
11793
|
-
class RedirectReportNavigatorCommandComponent extends BaseComponent {
|
|
11794
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: RedirectReportNavigatorCommandComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11795
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: RedirectReportNavigatorCommandComponent, isStandalone: false, selector: "bnrc-redirect-report-navigator-command", usesInheritance: true, ngImport: i0, template: "", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11796
|
-
}
|
|
11797
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: RedirectReportNavigatorCommandComponent, decorators: [{
|
|
11798
|
-
type: Component,
|
|
11799
|
-
args: [{ selector: 'bnrc-redirect-report-navigator-command', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "" }]
|
|
11800
|
-
}] });
|
|
11801
|
-
|
|
11802
11827
|
class PortalPageComponent extends PageWithFormHandlerBaseComponent {
|
|
11803
|
-
constructor() {
|
|
11804
|
-
super(...arguments);
|
|
11805
|
-
this._routingService = inject(RoutingService);
|
|
11806
|
-
}
|
|
11807
11828
|
ngOnInit() {
|
|
11808
11829
|
super.ngOnInit();
|
|
11809
11830
|
this.addModulesToDom();
|
|
@@ -12107,7 +12128,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
12107
12128
|
|
|
12108
12129
|
class DynamicItemComponent extends BaseDynamicComponent {
|
|
12109
12130
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: DynamicItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
12110
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: DynamicItemComponent, isStandalone: false, selector: "bnrc-dynamic-item-component", inputs: { mo: "mo", allColumns: "allColumns", moDataList: "moDataList", columns: "columns", column: "column", index: "index", last: "last", hideOpenIcon: "hideOpenIcon", deviceName: "deviceName", deviceSize: "deviceSize", rtl: "rtl", editMode: "editMode", setting: "setting", parameters: "parameters", contextMenuItems: "contextMenuItems", canView: "canView", showRowNumber: "showRowNumber", rowNumber: "rowNumber", formSetting: "formSetting", conditionalFormats: "conditionalFormats", disableOverflowContextMenu: "disableOverflowContextMenu", navigationArrow: "navigationArrow", isCheckList: "isCheckList", fields: "fields", isChecked: "isChecked", layout94$: "layout94$", inlineEditMode: "inlineEditMode", isNewInlineMo: "isNewInlineMo", allowInlineEdit: "allowInlineEdit", typeDefId: "typeDefId", rowIndicator: "rowIndicator", rowIndicatorColor: "rowIndicatorColor", UlvMainCtrlr: "UlvMainCtrlr" }, usesInheritance: true, ngImport: i0, template: `<ng-container #componentContainer></ng-container>`, isInline: true, styles: [":host{display:contents}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12131
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: DynamicItemComponent, isStandalone: false, selector: "bnrc-dynamic-item-component", inputs: { mo: "mo", allColumns: "allColumns", moDataList: "moDataList", columns: "columns", column: "column", index: "index", last: "last", hideOpenIcon: "hideOpenIcon", deviceName: "deviceName", deviceSize: "deviceSize", rtl: "rtl", editMode: "editMode", setting: "setting", parameters: "parameters", contextMenuItems: "contextMenuItems", canView: "canView", showRowNumber: "showRowNumber", rowNumber: "rowNumber", formSetting: "formSetting", conditionalFormats: "conditionalFormats", disableOverflowContextMenu: "disableOverflowContextMenu", navigationArrow: "navigationArrow", isCheckList: "isCheckList", maxHeightHeader: "maxHeightHeader", fields: "fields", isChecked: "isChecked", layout94$: "layout94$", inlineEditMode: "inlineEditMode", isNewInlineMo: "isNewInlineMo", allowInlineEdit: "allowInlineEdit", typeDefId: "typeDefId", rowIndicator: "rowIndicator", rowIndicatorColor: "rowIndicatorColor", UlvMainCtrlr: "UlvMainCtrlr" }, usesInheritance: true, ngImport: i0, template: `<ng-container #componentContainer></ng-container>`, isInline: true, styles: [":host{display:contents}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12111
12132
|
}
|
|
12112
12133
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: DynamicItemComponent, decorators: [{
|
|
12113
12134
|
type: Component,
|
|
@@ -12158,6 +12179,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
12158
12179
|
type: Input
|
|
12159
12180
|
}], isCheckList: [{
|
|
12160
12181
|
type: Input
|
|
12182
|
+
}], maxHeightHeader: [{
|
|
12183
|
+
type: Input
|
|
12161
12184
|
}], fields: [{
|
|
12162
12185
|
type: Input
|
|
12163
12186
|
}], isChecked: [{
|
|
@@ -12346,7 +12369,7 @@ class BaseViewContentPropsComponent extends BaseViewPropsComponent {
|
|
|
12346
12369
|
this.actionListClick = new EventEmitter();
|
|
12347
12370
|
}
|
|
12348
12371
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BaseViewContentPropsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
12349
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BaseViewContentPropsComponent, isStandalone: false, selector: "bnrc-base-view-content-props", inputs: { moDataList: "moDataList", setting: "setting" }, outputs: { actionListClick: "actionListClick" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12372
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BaseViewContentPropsComponent, isStandalone: false, selector: "bnrc-base-view-content-props", inputs: { moDataList: "moDataList", maxHeightHeader: "maxHeightHeader", setting: "setting" }, outputs: { actionListClick: "actionListClick" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12350
12373
|
}
|
|
12351
12374
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BaseViewContentPropsComponent, decorators: [{
|
|
12352
12375
|
type: Component,
|
|
@@ -12358,6 +12381,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
12358
12381
|
}]
|
|
12359
12382
|
}], propDecorators: { moDataList: [{
|
|
12360
12383
|
type: Input
|
|
12384
|
+
}], maxHeightHeader: [{
|
|
12385
|
+
type: Input
|
|
12361
12386
|
}], setting: [{
|
|
12362
12387
|
type: Input
|
|
12363
12388
|
}], actionListClick: [{
|
|
@@ -12803,7 +12828,7 @@ class BaseViewItemPropsComponent extends BaseViewPropsComponent {
|
|
|
12803
12828
|
});
|
|
12804
12829
|
}
|
|
12805
12830
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BaseViewItemPropsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12806
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BaseViewItemPropsComponent, isStandalone: false, selector: "bnrc-base-view-item-props", inputs: { checkboxComponent: "checkboxComponent", disableEllapsis: "disableEllapsis", isslider: "isslider", attachmentViewType: "attachmentViewType", contextMenuOverflowText: "contextMenuOverflowText", detailsComponent: "detailsComponent", detailsColumns: "detailsColumns", detailsText: "detailsText", mo: "mo", moDataListCount: "moDataListCount", index: "index", last: "last", isdirty: "isdirty", isChecked: "isChecked", hideDetailsText: "hideDetailsText", showViewButton: "showViewButton", isNewInlineMo: "isNewInlineMo", extraRelation: "extraRelation", hideOpenIcon: "hideOpenIcon", inlineEditWithoutSelection: "inlineEditWithoutSelection", inDialog: "inDialog", isMobile: "isMobile", isMultiSelect: "isMultiSelect", rowIndicator: "rowIndicator", groupSummary: "groupSummary", isLastChildGroup: "isLastChildGroup", showRowNumber: "showRowNumber", rowNumber: "rowNumber", coloringRow: "coloringRow", noSaveInlineEditInServer: "noSaveInlineEditInServer", rowIndicatorColor: "rowIndicatorColor", UlvMainCtrlr: "UlvMainCtrlr", fieldDict: "fieldDict", actionList: "actionList", serializedRelatedMo: "serializedRelatedMo", cartableTemplate: "cartableTemplate", cartableMo: "cartableMo", cartableWorkflowData: "cartableWorkflowData" }, outputs: { actionListClick: "actionListClick", events: "events" }, viewQueries: [{ propertyName: "_cartableFormRef", first: true, predicate: ["cartableFormRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12831
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BaseViewItemPropsComponent, isStandalone: false, selector: "bnrc-base-view-item-props", inputs: { checkboxComponent: "checkboxComponent", disableEllapsis: "disableEllapsis", isslider: "isslider", attachmentViewType: "attachmentViewType", contextMenuOverflowText: "contextMenuOverflowText", detailsComponent: "detailsComponent", detailsColumns: "detailsColumns", detailsText: "detailsText", mo: "mo", moDataListCount: "moDataListCount", index: "index", last: "last", isdirty: "isdirty", isChecked: "isChecked", hideDetailsText: "hideDetailsText", showViewButton: "showViewButton", isNewInlineMo: "isNewInlineMo", extraRelation: "extraRelation", hideOpenIcon: "hideOpenIcon", inlineEditWithoutSelection: "inlineEditWithoutSelection", inDialog: "inDialog", isMobile: "isMobile", isMultiSelect: "isMultiSelect", rowIndicator: "rowIndicator", groupSummary: "groupSummary", isLastChildGroup: "isLastChildGroup", showRowNumber: "showRowNumber", rowNumber: "rowNumber", coloringRow: "coloringRow", noSaveInlineEditInServer: "noSaveInlineEditInServer", rowIndicatorColor: "rowIndicatorColor", maxHeightHeader: "maxHeightHeader", UlvMainCtrlr: "UlvMainCtrlr", fieldDict: "fieldDict", actionList: "actionList", serializedRelatedMo: "serializedRelatedMo", cartableTemplate: "cartableTemplate", cartableMo: "cartableMo", cartableWorkflowData: "cartableWorkflowData" }, outputs: { actionListClick: "actionListClick", events: "events" }, viewQueries: [{ propertyName: "_cartableFormRef", first: true, predicate: ["cartableFormRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12807
12832
|
}
|
|
12808
12833
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BaseViewItemPropsComponent, decorators: [{
|
|
12809
12834
|
type: Component,
|
|
@@ -12882,6 +12907,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
12882
12907
|
type: Input
|
|
12883
12908
|
}], rowIndicatorColor: [{
|
|
12884
12909
|
type: Input
|
|
12910
|
+
}], maxHeightHeader: [{
|
|
12911
|
+
type: Input
|
|
12885
12912
|
}], UlvMainCtrlr: [{
|
|
12886
12913
|
type: Input
|
|
12887
12914
|
}], fieldDict: [{
|
|
@@ -12907,9 +12934,26 @@ class BaseItemContentPropsComponent extends BaseComponent {
|
|
|
12907
12934
|
this._cdr = inject(ChangeDetectorRef);
|
|
12908
12935
|
this._el = inject(ElementRef);
|
|
12909
12936
|
this._renderer2 = inject(Renderer2);
|
|
12937
|
+
this._ulvMainService = inject(UlvMainService);
|
|
12938
|
+
}
|
|
12939
|
+
ngOnChanges(changes) {
|
|
12940
|
+
super.ngOnChanges(changes);
|
|
12941
|
+
let detectChanges = false;
|
|
12942
|
+
Object.keys(changes).forEach((key) => {
|
|
12943
|
+
if (!changes[key].firstChange) {
|
|
12944
|
+
this[key] = changes[key].currentValue;
|
|
12945
|
+
detectChanges = true;
|
|
12946
|
+
}
|
|
12947
|
+
});
|
|
12948
|
+
if (detectChanges) {
|
|
12949
|
+
this.detectChanges();
|
|
12950
|
+
}
|
|
12951
|
+
}
|
|
12952
|
+
detectChanges() {
|
|
12953
|
+
this._cdr.detectChanges();
|
|
12910
12954
|
}
|
|
12911
12955
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BaseItemContentPropsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
12912
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BaseItemContentPropsComponent, isStandalone: false, selector: "bnrc-base-item-content-props", inputs: { mo: "mo", allColumns: "allColumns", column: "column", index: "index", styleIndex: "styleIndex", deviceName: "deviceName", deviceSize: "deviceSize", rtl: "rtl", editMode: "editMode", setting: "setting", parameters: "parameters", contextMenuItems: "contextMenuItems", canView: "canView", conditionalFormats: "conditionalFormats", disableOverflowContextMenu: "disableOverflowContextMenu", navigationArrow: "navigationArrow", isCheckList: "isCheckList", fields: "fields", isChecked: "isChecked", hideOpenIcon: "hideOpenIcon", layout94$: "layout94$", inlineEditMode: "inlineEditMode", allowInlineEdit: "allowInlineEdit", isNewInlineMo: "isNewInlineMo", formSetting: "formSetting", typeDefId: "typeDefId", UlvMainCtrlr: "UlvMainCtrlr" }, outputs: { events: "events" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12956
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: BaseItemContentPropsComponent, isStandalone: false, selector: "bnrc-base-item-content-props", inputs: { mo: "mo", allColumns: "allColumns", column: "column", index: "index", styleIndex: "styleIndex", deviceName: "deviceName", deviceSize: "deviceSize", rtl: "rtl", editMode: "editMode", setting: "setting", parameters: "parameters", contextMenuItems: "contextMenuItems", canView: "canView", conditionalFormats: "conditionalFormats", disableOverflowContextMenu: "disableOverflowContextMenu", navigationArrow: "navigationArrow", isCheckList: "isCheckList", fields: "fields", isChecked: "isChecked", hideOpenIcon: "hideOpenIcon", layout94$: "layout94$", inlineEditMode: "inlineEditMode", allowInlineEdit: "allowInlineEdit", isNewInlineMo: "isNewInlineMo", formSetting: "formSetting", typeDefId: "typeDefId", maxHeightHeader: "maxHeightHeader", UlvMainCtrlr: "UlvMainCtrlr" }, outputs: { events: "events" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
12913
12957
|
}
|
|
12914
12958
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: BaseItemContentPropsComponent, decorators: [{
|
|
12915
12959
|
type: Component,
|
|
@@ -12973,6 +13017,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
12973
13017
|
type: Input
|
|
12974
13018
|
}], typeDefId: [{
|
|
12975
13019
|
type: Input
|
|
13020
|
+
}], maxHeightHeader: [{
|
|
13021
|
+
type: Input
|
|
12976
13022
|
}], UlvMainCtrlr: [{
|
|
12977
13023
|
type: Input
|
|
12978
13024
|
}] } });
|
|
@@ -13326,6 +13372,7 @@ class RootPortalComponent extends PageBaseComponent {
|
|
|
13326
13372
|
}
|
|
13327
13373
|
ngOnInit() {
|
|
13328
13374
|
super.ngOnInit();
|
|
13375
|
+
this.addModulesToDom();
|
|
13329
13376
|
this.inLocalMode = isInLocalMode();
|
|
13330
13377
|
this._portalService.rtl$.subscribe((c) => {
|
|
13331
13378
|
this._dir = c ? 'rtl' : 'ltr';
|
|
@@ -13402,7 +13449,7 @@ class RootPortalComponent extends PageBaseComponent {
|
|
|
13402
13449
|
}
|
|
13403
13450
|
}
|
|
13404
13451
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: RootPortalComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
13405
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: RootPortalComponent, isStandalone: false, selector: "bnrc-root-portal", host: { properties: { "attr.dir": "this._dir", "attr.devicesize": "this._deviceSize" } },
|
|
13452
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: RootPortalComponent, isStandalone: false, selector: "bnrc-root-portal", host: { properties: { "attr.dir": "this._dir", "attr.devicesize": "this._deviceSize" } }, viewQueries: [{ propertyName: "sectionRef", first: true, predicate: ["sectionRef"], descendants: true }, { propertyName: "footerRefVcr", first: true, predicate: ["footerRef"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: `
|
|
13406
13453
|
<div
|
|
13407
13454
|
class="tw-hidden grid-cols-0 tw-grid-cols-1 tw-grid-cols-2 tw-grid-cols-3 tw-grid-cols-4 tw-grid-cols-5
|
|
13408
13455
|
tw-grid-cols-6 tw-grid-cols-7 tw-grid-cols-8 tw-grid-cols-9 tw-grid-cols-10 tw-grid-cols-11 tw-grid-cols-12"
|
|
@@ -13457,7 +13504,7 @@ class RootPortalComponent extends PageBaseComponent {
|
|
|
13457
13504
|
</div>
|
|
13458
13505
|
</div>
|
|
13459
13506
|
}
|
|
13460
|
-
<section loadExternalFiles class="section" id="mainpage" #sectionRef>
|
|
13507
|
+
<section loadExternalFiles class="tw-invisible section" id="mainpage" #sectionRef>
|
|
13461
13508
|
<div #containerRef></div>
|
|
13462
13509
|
</section>
|
|
13463
13510
|
<div class="page-wrapper">
|
|
@@ -13530,7 +13577,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
13530
13577
|
</div>
|
|
13531
13578
|
</div>
|
|
13532
13579
|
}
|
|
13533
|
-
<section loadExternalFiles class="section" id="mainpage" #sectionRef>
|
|
13580
|
+
<section loadExternalFiles class="tw-invisible section" id="mainpage" #sectionRef>
|
|
13534
13581
|
<div #containerRef></div>
|
|
13535
13582
|
</section>
|
|
13536
13583
|
<div class="page-wrapper">
|
|
@@ -13544,7 +13591,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
13544
13591
|
<bnrc-push-banner></bnrc-push-banner>
|
|
13545
13592
|
`,
|
|
13546
13593
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
13547
|
-
providers: [ContainerService],
|
|
13548
13594
|
standalone: false
|
|
13549
13595
|
}]
|
|
13550
13596
|
}], propDecorators: { sectionRef: [{
|
|
@@ -16445,6 +16491,102 @@ var barsaSapUiFormPage_module = /*#__PURE__*/Object.freeze({
|
|
|
16445
16491
|
BarsaSapUiFormPageModule: BarsaSapUiFormPageModule
|
|
16446
16492
|
});
|
|
16447
16493
|
|
|
16494
|
+
class ReportNavigatorComponent extends BaseComponent {
|
|
16495
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
16496
|
+
constructor() {
|
|
16497
|
+
super();
|
|
16498
|
+
this.minheight = '100svh';
|
|
16499
|
+
this._activatedRoute = inject(ActivatedRoute);
|
|
16500
|
+
this._portalService = inject(PortalService);
|
|
16501
|
+
this._applicationCtrlService = inject(ApplicationCtrlrService);
|
|
16502
|
+
this._injector = inject(Injector);
|
|
16503
|
+
this._cdr = inject(ChangeDetectorRef);
|
|
16504
|
+
this._loadingSource = new BehaviorSubject(false);
|
|
16505
|
+
this.loading$ = this._loadingSource.asObservable().pipe(takeUntil(this._onDestroy$), debounceTime(200));
|
|
16506
|
+
}
|
|
16507
|
+
ngOnInit() {
|
|
16508
|
+
super.ngOnInit();
|
|
16509
|
+
this._activatedRoute.params
|
|
16510
|
+
.pipe(takeUntil(this._onDestroy$), tap(() => this._setLoading(true)), map((params) => ({
|
|
16511
|
+
Id: params.id.split('__')[0],
|
|
16512
|
+
ReportId: params.id.split('__').length > 2 ? params.id.split('__')[2] : '',
|
|
16513
|
+
ReportId2: params.id.split('__').length > 1 ? params.id.split('__')[1] : '',
|
|
16514
|
+
isReportPage: params.id.split('__').length > 3 ? params.id.split('__')[3] : null
|
|
16515
|
+
})), tap((c) => (c.isReportPage ? (this.minheight = 'auto') : '100vh')), tap((c) => (c.ReportId = !c.ReportId ? c.ReportId2 : c.ReportId)), tap((_c) => this.containerRef.clear()), tap((navItem) => this._applicationCtrlService.selectNavGroupItem(navItem.Id)), tap((navItem) => this._applicationCtrlService.selectedReportId(navItem.ReportId || navItem.ReportId2)), switchMap((navItem) => this._portalService
|
|
16516
|
+
.renderUlvMainUi(navItem, this.containerRef, this._injector, navItem.isReportPage ? false : true)
|
|
16517
|
+
.pipe(catchError((_err) =>
|
|
16518
|
+
// this._location.back();
|
|
16519
|
+
// return throwError(() => new Error(err));
|
|
16520
|
+
of(true)))), tap((ulv) => this._setActiveReport(ulv)), finalize(() => {
|
|
16521
|
+
this._setLoading(false);
|
|
16522
|
+
}))
|
|
16523
|
+
.subscribe(() => {
|
|
16524
|
+
this._setLoading(false);
|
|
16525
|
+
});
|
|
16526
|
+
}
|
|
16527
|
+
ngOnDestroy() {
|
|
16528
|
+
super.ngOnDestroy();
|
|
16529
|
+
// this._applicationCtrlService.selectNavGroupItem('');
|
|
16530
|
+
this._setActiveReport(null);
|
|
16531
|
+
}
|
|
16532
|
+
_setLoading(val) {
|
|
16533
|
+
this._loadingSource.next(val);
|
|
16534
|
+
this._cdr.detectChanges();
|
|
16535
|
+
}
|
|
16536
|
+
_setActiveReport(ulv) {
|
|
16537
|
+
BarsaApi.Bw.App.GetActiveReport = () => {
|
|
16538
|
+
if (ulv === null) {
|
|
16539
|
+
return ulv;
|
|
16540
|
+
}
|
|
16541
|
+
return BarsaApi.Bw._wrap(ulv);
|
|
16542
|
+
};
|
|
16543
|
+
}
|
|
16544
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ReportNavigatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16545
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: ReportNavigatorComponent, isStandalone: false, selector: "bnrc-report-navigator", host: { properties: { "style.min-height": "this.minheight" } }, viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["containerRef"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: `<ng-container #containerRef></ng-container>`, isInline: true, styles: [":host{display:block;width:100%;background:var(--sapBaseColor)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
16546
|
+
}
|
|
16547
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ReportNavigatorComponent, decorators: [{
|
|
16548
|
+
type: Component,
|
|
16549
|
+
args: [{ selector: 'bnrc-report-navigator', template: `<ng-container #containerRef></ng-container>`, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block;width:100%;background:var(--sapBaseColor)}\n"] }]
|
|
16550
|
+
}], ctorParameters: () => [], propDecorators: { containerRef: [{
|
|
16551
|
+
type: ViewChild,
|
|
16552
|
+
args: ['containerRef', { static: true, read: ViewContainerRef }]
|
|
16553
|
+
}], minheight: [{
|
|
16554
|
+
type: HostBinding,
|
|
16555
|
+
args: ['style.min-height']
|
|
16556
|
+
}] } });
|
|
16557
|
+
|
|
16558
|
+
class ReportEmptyPageComponent extends PageWithFormHandlerBaseComponent {
|
|
16559
|
+
constructor() {
|
|
16560
|
+
super(...arguments);
|
|
16561
|
+
this._injecotr = inject(Injector);
|
|
16562
|
+
}
|
|
16563
|
+
ngOnInit() {
|
|
16564
|
+
this.containerRef.insert(this.blockTemplate.createEmbeddedView(this, this._injecotr));
|
|
16565
|
+
super.ngOnInit();
|
|
16566
|
+
}
|
|
16567
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ReportEmptyPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
16568
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: ReportEmptyPageComponent, isStandalone: false, selector: "bnrc-report-empty-page", providers: [RoutingService, ContainerService], viewQueries: [{ propertyName: "blockTemplate", first: true, predicate: ["block"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
16569
|
+
<ng-template #block>
|
|
16570
|
+
<bnrc-report-navigator></bnrc-report-navigator>
|
|
16571
|
+
</ng-template>
|
|
16572
|
+
<ng-container #containerRef></ng-container>
|
|
16573
|
+
<router-outlet></router-outlet>
|
|
16574
|
+
`, isInline: true, styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: ReportNavigatorComponent, selector: "bnrc-report-navigator" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
16575
|
+
}
|
|
16576
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: ReportEmptyPageComponent, decorators: [{
|
|
16577
|
+
type: Component,
|
|
16578
|
+
args: [{ selector: 'bnrc-report-empty-page', template: `
|
|
16579
|
+
<ng-template #block>
|
|
16580
|
+
<bnrc-report-navigator></bnrc-report-navigator>
|
|
16581
|
+
</ng-template>
|
|
16582
|
+
<ng-container #containerRef></ng-container>
|
|
16583
|
+
<router-outlet></router-outlet>
|
|
16584
|
+
`, providers: [RoutingService, ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block}\n"] }]
|
|
16585
|
+
}], propDecorators: { blockTemplate: [{
|
|
16586
|
+
type: ViewChild,
|
|
16587
|
+
args: ['block', { static: true }]
|
|
16588
|
+
}] } });
|
|
16589
|
+
|
|
16448
16590
|
class BaseController {
|
|
16449
16591
|
/**
|
|
16450
16592
|
*
|
|
@@ -16533,35 +16675,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
16533
16675
|
args: ['class.mobile']
|
|
16534
16676
|
}] } });
|
|
16535
16677
|
|
|
16536
|
-
|
|
16537
|
-
|
|
16538
|
-
|
|
16539
|
-
|
|
16678
|
+
// دیکشنری برای نگهداری کامپوننتهای Detach شده
|
|
16679
|
+
const routeStorage = {};
|
|
16680
|
+
const REUSE_PROPERTY = 'ReuseRoute';
|
|
16681
|
+
class CustomRouteReuseStrategy {
|
|
16682
|
+
// تصمیم میگیرد که آیا یک روَت باید Detach و ذخیره شود یا نه.
|
|
16683
|
+
// ما فقط روَتهایی را که در data مشخص شدهاند، Detach میکنیم.
|
|
16540
16684
|
shouldDetach(route) {
|
|
16541
|
-
|
|
16685
|
+
// برای روَتهای اصلی که میخواهید حفظ شوند
|
|
16686
|
+
const isReuse = !!BarsaApi.Common.Util.TryGetValue(route, `data.pageData.${REUSE_PROPERTY}`);
|
|
16687
|
+
return isReuse;
|
|
16542
16688
|
}
|
|
16689
|
+
// کامپوننت Detach شده را ذخیره میکند.
|
|
16543
16690
|
store(route, handle) {
|
|
16544
|
-
|
|
16545
|
-
|
|
16691
|
+
const isReuse = !!BarsaApi.Common.Util.TryGetValue(route, `data.pageData.${REUSE_PROPERTY}`);
|
|
16692
|
+
if (route.routeConfig && isReuse) {
|
|
16693
|
+
const keyPath = this._getKeyOfPath(route);
|
|
16694
|
+
routeStorage[keyPath] = handle;
|
|
16546
16695
|
}
|
|
16547
16696
|
}
|
|
16697
|
+
// تصمیم میگیرد که آیا کامپوننت ذخیره شده باید بازیابی (Attach) شود یا نه.
|
|
16548
16698
|
shouldAttach(route) {
|
|
16549
|
-
|
|
16550
|
-
|
|
16551
|
-
|
|
16552
|
-
// return !!route.routeConfig && !!this.handlers[route.routeConfig.path];
|
|
16553
|
-
return false;
|
|
16699
|
+
// اگر روَت در حافظه ذخیره شده و قرار بوده حفظ شود
|
|
16700
|
+
const keyPath = this._getKeyOfPath(route);
|
|
16701
|
+
return !!route.routeConfig && !!routeStorage[keyPath];
|
|
16554
16702
|
}
|
|
16703
|
+
// کامپوننت ذخیره شده را بازیابی میکند.
|
|
16555
16704
|
retrieve(route) {
|
|
16556
|
-
|
|
16705
|
+
const isReuse = !!BarsaApi.Common.Util.TryGetValue(route, `data.pageData.${REUSE_PROPERTY}`);
|
|
16706
|
+
if (!route.routeConfig || !isReuse) {
|
|
16557
16707
|
return null;
|
|
16558
16708
|
}
|
|
16559
|
-
|
|
16709
|
+
const keyPath = this._getKeyOfPath(route);
|
|
16710
|
+
return routeStorage[keyPath] || null;
|
|
16560
16711
|
}
|
|
16561
|
-
|
|
16562
|
-
//
|
|
16563
|
-
|
|
16564
|
-
|
|
16712
|
+
// مهمترین بخش: تصمیم میگیرد که آیا روَت فعلی باید برای روَت آینده بازاستفاده شود یا نه.
|
|
16713
|
+
// اگر از یک روَت به روَت دیگری برویم (مثل 'Page1' به 'Page2')، این باید 'false' باشد تا بتواند Detach شود.
|
|
16714
|
+
// اما اگر پارامترها و Query Params یکسان باشند، شاید بخواهید 'true' باشد.
|
|
16715
|
+
// برای حالت شما (نویگیشن بین روَتهای اصلی)، معمولاً 'false' است مگر اینکه روَتها کاملاً یکسان باشند.
|
|
16716
|
+
shouldReuseRoute(future, curr) {
|
|
16717
|
+
// این کار باعث میشود روَتهای خواهر (sibling) به عنوان روَتهای جدید در نظر گرفته شوند
|
|
16718
|
+
// تا بتوانند Detach و Attach شوند.
|
|
16719
|
+
return future.routeConfig === curr.routeConfig;
|
|
16720
|
+
}
|
|
16721
|
+
_getKeyOfPath(route) {
|
|
16722
|
+
const x = BarsaApi.Common.Util.TryGetValue(route, `data.pageData.ParentRoute`);
|
|
16723
|
+
const y = BarsaApi.Common.Util.TryGetValue(route, `data.pageData.Route`);
|
|
16724
|
+
const keyPath = `${x}${y}`;
|
|
16725
|
+
return keyPath;
|
|
16565
16726
|
}
|
|
16566
16727
|
}
|
|
16567
16728
|
|
|
@@ -16572,11 +16733,11 @@ class RootPageComponent extends BaseComponent {
|
|
|
16572
16733
|
this.viewContainerRef = inject(ViewContainerRef);
|
|
16573
16734
|
}
|
|
16574
16735
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: RootPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
16575
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: RootPageComponent, isStandalone: false, selector: "bnrc-root-page", host: { properties: { "class.page-content": "this._pageContent" } }, usesInheritance: true, ngImport: i0, template:
|
|
16736
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: RootPageComponent, isStandalone: false, selector: "bnrc-root-page", host: { properties: { "class.page-content": "this._pageContent" } }, providers: [RoutingService], usesInheritance: true, ngImport: i0, template: `<router-outlet></router-outlet><router-outlet name="main"></router-outlet>`, isInline: true, styles: [":host{position:relative;display:block}\n"], dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
16576
16737
|
}
|
|
16577
16738
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: RootPageComponent, decorators: [{
|
|
16578
16739
|
type: Component,
|
|
16579
|
-
args: [{ selector: 'bnrc-root-page',
|
|
16740
|
+
args: [{ selector: 'bnrc-root-page', template: `<router-outlet></router-outlet><router-outlet name="main"></router-outlet>`, changeDetection: ChangeDetectionStrategy.OnPush, providers: [RoutingService], standalone: false, styles: [":host{position:relative;display:block}\n"] }]
|
|
16580
16741
|
}], propDecorators: { _pageContent: [{
|
|
16581
16742
|
type: HostBinding,
|
|
16582
16743
|
args: ['class.page-content']
|
|
@@ -17047,7 +17208,6 @@ const components = [
|
|
|
17047
17208
|
ModalRootComponent,
|
|
17048
17209
|
PortalPageComponent,
|
|
17049
17210
|
PortalPageSidebarComponent,
|
|
17050
|
-
RedirectReportNavigatorCommandComponent,
|
|
17051
17211
|
EmptyPageWithRouterAndRouterOutletComponent,
|
|
17052
17212
|
DynamicItemComponent,
|
|
17053
17213
|
DynamicFormComponent,
|
|
@@ -17055,13 +17215,15 @@ const components = [
|
|
|
17055
17215
|
DynamicFormToolbaritemComponent,
|
|
17056
17216
|
DynamicLayoutComponent,
|
|
17057
17217
|
EmptyPageComponent,
|
|
17218
|
+
ReportEmptyPageComponent,
|
|
17058
17219
|
MasterDetailsPageComponent,
|
|
17059
17220
|
FormPageComponent,
|
|
17060
17221
|
FormFieldReportPageComponent,
|
|
17061
17222
|
ButtonLoadingComponent,
|
|
17062
17223
|
UnlimitSessionComponent,
|
|
17063
17224
|
DynamicTileGroupComponent,
|
|
17064
|
-
PushBannerComponent
|
|
17225
|
+
PushBannerComponent,
|
|
17226
|
+
ReportNavigatorComponent
|
|
17065
17227
|
];
|
|
17066
17228
|
const directives = [
|
|
17067
17229
|
PlaceHolderDirective,
|
|
@@ -17292,6 +17454,10 @@ class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
17292
17454
|
})(inject(NotificationService));
|
|
17293
17455
|
return initializerFn();
|
|
17294
17456
|
}),
|
|
17457
|
+
{
|
|
17458
|
+
provide: RouteReuseStrategy,
|
|
17459
|
+
useClass: CustomRouteReuseStrategy
|
|
17460
|
+
},
|
|
17295
17461
|
...pipes,
|
|
17296
17462
|
...services
|
|
17297
17463
|
]
|
|
@@ -17308,7 +17474,6 @@ class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
17308
17474
|
ModalRootComponent,
|
|
17309
17475
|
PortalPageComponent,
|
|
17310
17476
|
PortalPageSidebarComponent,
|
|
17311
|
-
RedirectReportNavigatorCommandComponent,
|
|
17312
17477
|
EmptyPageWithRouterAndRouterOutletComponent,
|
|
17313
17478
|
DynamicItemComponent,
|
|
17314
17479
|
DynamicFormComponent,
|
|
@@ -17316,13 +17481,15 @@ class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
17316
17481
|
DynamicFormToolbaritemComponent,
|
|
17317
17482
|
DynamicLayoutComponent,
|
|
17318
17483
|
EmptyPageComponent,
|
|
17484
|
+
ReportEmptyPageComponent,
|
|
17319
17485
|
MasterDetailsPageComponent,
|
|
17320
17486
|
FormPageComponent,
|
|
17321
17487
|
FormFieldReportPageComponent,
|
|
17322
17488
|
ButtonLoadingComponent,
|
|
17323
17489
|
UnlimitSessionComponent,
|
|
17324
17490
|
DynamicTileGroupComponent,
|
|
17325
|
-
PushBannerComponent,
|
|
17491
|
+
PushBannerComponent,
|
|
17492
|
+
ReportNavigatorComponent, NumeralPipe,
|
|
17326
17493
|
CanUploadFilePipe,
|
|
17327
17494
|
RemoveNewlinePipe,
|
|
17328
17495
|
ConvertToStylePipe,
|
|
@@ -17445,7 +17612,6 @@ class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
17445
17612
|
ModalRootComponent,
|
|
17446
17613
|
PortalPageComponent,
|
|
17447
17614
|
PortalPageSidebarComponent,
|
|
17448
|
-
RedirectReportNavigatorCommandComponent,
|
|
17449
17615
|
EmptyPageWithRouterAndRouterOutletComponent,
|
|
17450
17616
|
DynamicItemComponent,
|
|
17451
17617
|
DynamicFormComponent,
|
|
@@ -17453,13 +17619,15 @@ class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
17453
17619
|
DynamicFormToolbaritemComponent,
|
|
17454
17620
|
DynamicLayoutComponent,
|
|
17455
17621
|
EmptyPageComponent,
|
|
17622
|
+
ReportEmptyPageComponent,
|
|
17456
17623
|
MasterDetailsPageComponent,
|
|
17457
17624
|
FormPageComponent,
|
|
17458
17625
|
FormFieldReportPageComponent,
|
|
17459
17626
|
ButtonLoadingComponent,
|
|
17460
17627
|
UnlimitSessionComponent,
|
|
17461
17628
|
DynamicTileGroupComponent,
|
|
17462
|
-
PushBannerComponent,
|
|
17629
|
+
PushBannerComponent,
|
|
17630
|
+
ReportNavigatorComponent, NumeralPipe,
|
|
17463
17631
|
CanUploadFilePipe,
|
|
17464
17632
|
RemoveNewlinePipe,
|
|
17465
17633
|
ConvertToStylePipe,
|
|
@@ -17597,5 +17765,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
17597
17765
|
* Generated bundle index. Do not edit.
|
|
17598
17766
|
*/
|
|
17599
17767
|
|
|
17600
|
-
export { APP_VERSION, AbsoluteDivBodyDirective, AddDynamicFormStyles, AffixRespondEvents, AllFilesMimeType, AnchorScrollDirective, ApiService, ApplicationBaseComponent, ApplicationCtrlrService, AttrRtlDirective, AudioMimeType, AudioRecordingService, AuthGuard, BarsaApi, BarsaDialogService, BarsaIconDictPipe, BarsaNovinRayCoreModule, BarsaReadonlyDirective, BarsaSapUiFormPageModule, BarsaStorageService, BaseColumnPropsComponent, BaseComponent, BaseController, BaseDirective, BaseDynamicComponent, BaseFormToolbaritemPropsComponent, BaseItemContentPropsComponent, BaseModule, BaseReportModel, BaseUlvSettingComponent, BaseViewContentPropsComponent, BaseViewItemPropsComponent, BaseViewPropsComponent, BbbTranslatePipe, BodyClickDirective, BoolControlInfoModel, BreadcrumbService, ButtonLoadingComponent, CalculateControlInfoModel, CanUploadFilePipe, CardMediaSizePipe, ChangeLayoutInfoCustomUi, ChunkArrayPipe, CodeEditorControlInfoModel, ColSetting, ColumnCustomComponentPipe, ColumnCustomUiPipe, ColumnIconPipe, ColumnResizerDirective, ColumnService, ColumnValueDirective, ColumnValueOfParametersPipe, ColumnValuePipe, ComboRowImagePipe, CommandControlInfoModel, ContainerComponent, ContainerService, ContextMenuPipe, ControlUiPipe, ConvertToStylePipe, CopyDirective, CountDownDirective, CustomCommand, CustomInjector,
|
|
17768
|
+
export { APP_VERSION, AbsoluteDivBodyDirective, AddDynamicFormStyles, AffixRespondEvents, AllFilesMimeType, AnchorScrollDirective, ApiService, ApplicationBaseComponent, ApplicationCtrlrService, AttrRtlDirective, AudioMimeType, AudioRecordingService, AuthGuard, BarsaApi, BarsaDialogService, BarsaIconDictPipe, BarsaNovinRayCoreModule, BarsaReadonlyDirective, BarsaSapUiFormPageModule, BarsaStorageService, BaseColumnPropsComponent, BaseComponent, BaseController, BaseDirective, BaseDynamicComponent, BaseFormToolbaritemPropsComponent, BaseItemContentPropsComponent, BaseModule, BaseReportModel, BaseUlvSettingComponent, BaseViewContentPropsComponent, BaseViewItemPropsComponent, BaseViewPropsComponent, BbbTranslatePipe, BodyClickDirective, BoolControlInfoModel, BreadcrumbService, ButtonLoadingComponent, CalculateControlInfoModel, CanUploadFilePipe, CardMediaSizePipe, CardViewService, ChangeLayoutInfoCustomUi, ChunkArrayPipe, CodeEditorControlInfoModel, ColSetting, ColumnCustomComponentPipe, ColumnCustomUiPipe, ColumnIconPipe, ColumnResizerDirective, ColumnService, ColumnValueDirective, ColumnValueOfParametersPipe, ColumnValuePipe, ComboRowImagePipe, CommandControlInfoModel, ContainerComponent, ContainerService, ContextMenuPipe, ControlUiPipe, ConvertToStylePipe, CopyDirective, CountDownDirective, CustomCommand, CustomInjector, CustomRouteReuseStrategy, DIALOG_SERVICE, DateHijriService, DateMiladiService, DateRanges, DateService, DateShamsiService, DateTimeControlInfoModel, DeviceWidth, DialogParams, DynamicCommandDirective, DynamicComponentService, DynamicDarkColorPipe, DynamicFormComponent, DynamicFormToolbaritemComponent, DynamicItemComponent, DynamicLayoutComponent, DynamicRootVariableDirective, DynamicStyleDirective, DynamicTileGroupComponent, EllapsisTextDirective, EllipsifyDirective, EmptyPageComponent, EmptyPageWithRouterAndRouterOutletComponent, EnumControlInfoModel, ExecuteDynamicCommand, ExecuteWorkflowChoiceDef, FORM_DIALOG_COMPONENT, FieldBaseComponent, FieldDirective, FieldInfoTypeEnum, FieldUiComponent, FileControlInfoModel, FileInfoCountPipe, FilePictureInfoModel, FilesValidationHelper, FillAllLayoutControls, FillEmptySpaceDirective, FilterColumnsByDetailsPipe, FilterInlineActionListPipe, FilterPipe, FilterStringPipe, FilterTabPipe, FilterToolbarControlPipe, FilterWorkflowInMobilePipe, FindColumnByDbNamePipe, FindGroup, FindLayoutSettingFromLayout94, FindPreviewColumnPipe, FindToolbarItem, FioriIconPipe, FormBaseComponent, FormCloseDirective, FormComponent, FormFieldReportPageComponent, FormNewComponent, FormPageBaseComponent, FormPageComponent, FormPanelService, FormPropsBaseComponent, FormService, FormToolbarBaseComponent, GaugeControlInfoModel, GeneralControlInfoModel, GetAllColumnsSorted, GetAllHorizontalFromLayout94, GetDefaultMoObjectInfo, GetImgTags, GetVisibleValue, GridSetting, GroupBy, GroupByPipe, GroupByService, HeaderFacetValuePipe, HideAcceptCancelButtonsPipe, HideColumnsInmobilePipe, HistoryControlInfoModel, HorizontalLayoutService, HorizontalResponsiveDirective, IconControlInfoModel, IdbService, ImageLazyDirective, ImageMimeType, ImagetoPrint, InMemoryStorageService, IndexedDbService, InputNumber, IntersectionObserverDirective, IntersectionStatus, IsDarkMode, IsExpandedNodePipe, IsImagePipe, ItemsRendererDirective, LabelStarTrimPipe, LabelmandatoryDirective, LayoutItemBaseComponent, LayoutMainContentService, LayoutPanelBaseComponent, LayoutService, LeafletLongPressDirective, LinearListControlInfoModel, LinearListHelper, ListCountPipe, ListRelationModel, LoadExternalFilesDirective, LocalStorageService, LogService, LoginSettingsResolver, MapToChatMessagePipe, MasterDetailsPageComponent, MeasureFormTitleWidthDirective, MergeFieldsToColumnsPipe, MetaobjectDataModel, MetaobjectRelationModel, MoForReportModel, MoForReportModelBase, MoInfoUlvMoListPipe, MoInfoUlvPagingPipe, MoReportValueConcatPipe, MoReportValuePipe, MoValuePipe, MobileDirective, ModalRootComponent, MultipleGroupByPipe, NOTIFICATAION_POPUP_SERVER, NOTIFICATION_WEBWORKER_FACTORY, NetworkStatusService, NotFoundComponent, NotificationService, NowraptextDirective, NumberBaseComponent, NumberControlInfoModel, NumbersOnlyInputDirective, NumeralPipe, OverflowTextDirective, PageBaseComponent, PageWithFormHandlerBaseComponent, PdfMimeType, PictureFieldSourcePipe, PictureFileControlInfoModel, PlaceHolderDirective, PortalDynamicPageResolver, PortalFormPageResolver, PortalPageComponent, PortalPageResolver, PortalPageSidebarComponent, PortalReportPageResolver, PortalService, PreventDefaulEvent, PreventDefaultDirective, PrintFilesDirective, PrintImage, PromptUpdateService, PushBannerComponent, PushCheckService, PushNotificationService, RabetehAkseTakiListiControlInfoModel, RedirectHomeGuard, RelatedReportControlInfoModel, RelationListControlInfoModel, RemoveDynamicFormStyles, RemoveNewlinePipe, RenderUlvDirective, RenderUlvPaginDirective, RenderUlvViewerDirective, ReplacePipe, ReportBaseComponent, ReportBaseInfo, ReportCalendarModel, ReportContainerComponent, ReportEmptyPageComponent, ReportExtraInfo, ReportField, ReportFormModel, ReportItemBaseComponent, ReportListModel, ReportModel, ReportNavigatorComponent, ReportTreeModel, ReportViewBaseComponent, ReportViewColumn, ResizableComponent, ResizableDirective, ResizableModule, ResizeHandlerDirective, ResizeObserverDirective, ReversePipe, RichStringControlInfoModel, RootPageComponent, RootPortalComponent, RouteFormChangeDirective, RoutingService, RowDataOption, RowNumberPipe, SafeBottomDirective, SanitizeTextPipe, SaveImageDirective, SaveImageToFile, SaveScrollPositionService, ScrollPersistDirective, ScrollToSelectedDirective, SelectionMode, SeperatorFixPipe, ServiceWorkerCommuncationService, ServiceWorkerNotificationService, ShellbarHeightService, ShortcutHandlerDirective, ShortcutRegisterDirective, SimplebarDirective, SingleRelationControlInfoModel, SortDirection, SortPipe, SortSetting, SplideSliderDirective, SplitPipe, StopPropagationDirective, StringControlInfoModel, StringToNumberPipe, SubformControlInfoModel, SystemBaseComponent, TOAST_SERVICE, TableHeaderWidthMode, TableResizerDirective, TabpageService, ThImageOrIconePipe, TileGroupBreadcrumResolver, TilePropsComponent, TlbButtonsPipe, ToolbarSettingsPipe, TooltipDirective, TotalSummaryPipe, UiService, UlvCommandDirective, UlvMainService, UnlimitSessionComponent, UntilInViewDirective, UploadService, VideoMimeType, VideoRecordingService, ViewBase, VisibleValuePipe, WebOtpDirective, WordMimeType, WorfkflowwChoiceCommandDirective, addCssVariableToRoot, availablePrefixes, calcContextMenuWidth, calculateColumnContent, calculateColumnWidth, calculateColumnWidthFitToContainer, calculateFreeColumnSize, calculateMoDataListContentWidthByColumnName, cancelRequestAnimationFrame, createFormPanelMetaConditions, createGridEditorFormPanel, easeInOutCubic, elementInViewport2, enumValueToStringSize, executeUlvCommandHandler, flattenTree, forbiddenValidator, formRoutes, formatBytes, fromEntries, fromIntersectionObserver, genrateInlineMoId, getAllItemsPerChildren, getColumnValueOfMoDataList, getComponentDefined, getControlList, getControlSizeMode, getDateService, getDeviceIsDesktop, getDeviceIsMobile, getDeviceIsPhone, getDeviceIsTablet, getFieldValue, getFocusableTagNames, getFormSettings, getGridSettings, getHeaderValue, getIcon, getImagePath, getLabelWidth, getLayout94ObjectInfo, getLayoutControl, getNewMoGridEditor, getParentHeight, getRequestAnimationFrame, getResetGridSettings, getTargetRect, getUniqueId, getValidExtension, isFF, isFirefox, isFunction, isImage, isInLocalMode, isSafari, isTargetWindow, measureText, measureText2, measureTextBy, mobile_regex, nullOrUndefinedString, number_only, requestAnimationFramePolyfill, setColumnWidthByMaxMoContentWidth, setOneDepthLevel, setTableThWidth, shallowEqual, stopPropagation, throwIfAlreadyLoaded, toNumber, validateAllFormFields };
|
|
17601
17769
|
//# sourceMappingURL=barsa-novin-ray-core.mjs.map
|