barsa-novin-ray-core 2.3.107 → 2.3.108

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.
@@ -1777,6 +1777,24 @@ function getImagePath(type, moId, fileId, fieldDefId, size, sizeH) {
1777
1777
  const url = `/IH.ashx?ty=${type}&moId=${moId}&id=${fileId}&fdId=${fieldDefId}&si=${size}&siH=${sizeH}`;
1778
1778
  return url;
1779
1779
  }
1780
+ function checkPermission() {
1781
+ const windowRef = window;
1782
+ // ابتدا چک می‌کنیم که آیا کلاً این قابلیت در این مرورگر وجود دارد یا خیر
1783
+ if ('Notification' in windowRef) {
1784
+ return windowRef.Notification.permission;
1785
+ }
1786
+ // اگر نبود (مثل سفاری موبایل)، مقدار default یا denied برمی‌گردانیم
1787
+ return 'denied';
1788
+ }
1789
+ function fixUnclosedParentheses(url) {
1790
+ const openCount = (url.match(/\(/g) || []).length;
1791
+ const closeCount = (url.match(/\)/g) || []).length;
1792
+ if (openCount > closeCount) {
1793
+ // به تعداد اختلاف، پرانتز بسته اضافه می‌کند
1794
+ return url + ')'.repeat(openCount - closeCount);
1795
+ }
1796
+ return url;
1797
+ }
1780
1798
  function isFunction(functionToCheck) {
1781
1799
  return functionToCheck && {}.toString.call(functionToCheck) === '[object Function]';
1782
1800
  }
@@ -4924,6 +4942,9 @@ class FormPanelService extends BaseComponent {
4924
4942
  }
4925
4943
  _refresh() {
4926
4944
  this._initialize(this._context);
4945
+ if (this._context?.IsSubForm) {
4946
+ return;
4947
+ }
4927
4948
  const mo = this._moSource.getValue();
4928
4949
  if (!mo) {
4929
4950
  return;
@@ -6009,6 +6030,7 @@ class PortalService {
6009
6030
  const _ismobile = getDeviceIsMobile();
6010
6031
  if (_ismobile) {
6011
6032
  BarsaApi.Bw.IsMobile = true;
6033
+ this._document.body.classList.add('mobile');
6012
6034
  }
6013
6035
  const _isTablet = getDeviceIsTablet();
6014
6036
  let _windoWSize = 's';
@@ -8528,6 +8550,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
8528
8550
 
8529
8551
  class PushNotificationService {
8530
8552
  constructor() {
8553
+ this.BANNER_DISMISS_KEY = 'push_banner_dismissed_until';
8531
8554
  this.swPush = inject(SwPush);
8532
8555
  this.http = inject(HttpClient);
8533
8556
  this.idb = inject(IdbService);
@@ -8536,7 +8559,7 @@ class PushNotificationService {
8536
8559
  this._push = signal({
8537
8560
  bannerVisible: false,
8538
8561
  isSubscribed: false,
8539
- permission: Notification.permission,
8562
+ permission: checkPermission(),
8540
8563
  errorMessage: null
8541
8564
  });
8542
8565
  this.registerServiceWorkerMessageListener = () => {
@@ -8562,6 +8585,9 @@ class PushNotificationService {
8562
8585
  return this._push.asReadonly();
8563
8586
  }
8564
8587
  hideBanner() {
8588
+ // ۲. ذخیره زمان فعلی + ۲۴ ساعت (یا هر بازه مد نظر) در LocalStorage
8589
+ const tomorrow = Date.now() + 24 * 60 * 60 * 1000;
8590
+ this.local.setItem(this.BANNER_DISMISS_KEY, tomorrow.toString());
8565
8591
  this.update({ bannerVisible: false });
8566
8592
  }
8567
8593
  async setup() {
@@ -8571,7 +8597,7 @@ class PushNotificationService {
8571
8597
  this.swPush.subscription.subscribe((sub) => {
8572
8598
  this.update({
8573
8599
  isSubscribed: !!sub,
8574
- permission: Notification.permission
8600
+ permission: checkPermission()
8575
8601
  });
8576
8602
  if (sub) {
8577
8603
  const json = sub.toJSON?.() ?? sub;
@@ -8597,7 +8623,7 @@ class PushNotificationService {
8597
8623
  await this.idb.set('subscription', 'push-subscription', sub.toJSON());
8598
8624
  this.update({
8599
8625
  isSubscribed: true,
8600
- permission: Notification.permission,
8626
+ permission: checkPermission(),
8601
8627
  bannerVisible: false,
8602
8628
  errorMessage: null
8603
8629
  });
@@ -8637,7 +8663,7 @@ class PushNotificationService {
8637
8663
  }
8638
8664
  this.update({
8639
8665
  isSubscribed: true,
8640
- permission: Notification.permission,
8666
+ permission: checkPermission(),
8641
8667
  errorMessage: null
8642
8668
  });
8643
8669
  }
@@ -8652,30 +8678,34 @@ class PushNotificationService {
8652
8678
  }
8653
8679
  async initPushBanner() {
8654
8680
  let saved = await this.loadSubscription();
8655
- const perm = Notification.permission;
8656
- this.update({
8657
- permission: perm
8658
- });
8681
+ const perm = checkPermission();
8682
+ // ۳. بررسی امن بودن پروتکل (HTTPS یا Localhost)
8683
+ const isSecureContext = window.isSecureContext;
8684
+ this.update({ permission: perm });
8659
8685
  if (saved) {
8660
- // اگر پرمیشن اکنون revoked یا default شد، subscription قبلی را حذف کن
8661
8686
  if (perm === 'default' || perm === 'denied') {
8662
- console.log('Permission reset detected, removing old subscription');
8663
8687
  await this.deleteSubscription();
8664
8688
  saved = null;
8665
8689
  }
8666
8690
  }
8667
8691
  if (saved) {
8668
- this.update({
8669
- isSubscribed: true,
8670
- bannerVisible: false
8671
- });
8692
+ this.update({ isSubscribed: true, bannerVisible: false });
8672
8693
  }
8673
8694
  else {
8695
+ // ۴. منطق جدید برای نمایش بنر
8696
+ const dismissUntil = Number(this.local.getItem(this.BANNER_DISMISS_KEY) || 0);
8697
+ const isWaitPeriodOver = Date.now() > dismissUntil;
8698
+ const shouldShow = isSecureContext && // حتما HTTPS باشد
8699
+ perm !== 'denied' && // قبلا بلاک نکرده باشد
8700
+ perm !== 'granted' && // قبلا اکسپت نکرده باشد (اگر saved نال بود)
8701
+ isWaitPeriodOver && // زمان انتظار تمام شده باشد
8702
+ 'PushManager' in window; // مرورگر پشتیبانی کند
8674
8703
  this.update({
8675
8704
  isSubscribed: false,
8676
- bannerVisible: perm !== 'denied' && 'PushManager' in window
8705
+ bannerVisible: shouldShow
8677
8706
  });
8678
8707
  }
8708
+ // بقیه کدها...
8679
8709
  this.registerServiceWorkerMessageListener();
8680
8710
  const publicKey = await this.loadPublicKey();
8681
8711
  if (publicKey) {
@@ -11441,7 +11471,8 @@ class FormPageBaseComponent extends ContainerComponent {
11441
11471
  onFormClose() {
11442
11472
  if (this._activatedRoute.snapshot.params.isFirst &&
11443
11473
  this._activatedRoute.parent?.parent?.routeConfig?.path === 'form') {
11444
- const parentUrl = this._router.url.split('/form/')[0];
11474
+ let parentUrl = this._router.url.split('/form/')[0];
11475
+ parentUrl = fixUnclosedParentheses(parentUrl);
11445
11476
  this._router.navigateByUrl(parentUrl, {
11446
11477
  replaceUrl: true
11447
11478
  });
@@ -11648,9 +11679,6 @@ class FormComponent extends BaseComponent {
11648
11679
  componentInstance.forceClose$.pipe(takeUntil(this._onDestroy$)).subscribe(() => {
11649
11680
  this.formClose.emit();
11650
11681
  });
11651
- componentInstance.forceClose$.pipe(takeUntil(this._onDestroy$)).subscribe(() => {
11652
- this.formClose.emit();
11653
- });
11654
11682
  // this.formPanelCtrl.on('ValueChange', () => this.moChanged.emit(this.formPanelCtrl.Mo));
11655
11683
  // component.instance.addEventListener('formClose', this.close);
11656
11684
  // el.appendChild(htmlElement);
@@ -12100,14 +12128,12 @@ class MasterDetailsPageComponent extends PageWithFormHandlerBaseComponent {
12100
12128
  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: `
12101
12129
  <div class="tw-flex tw-h-full tw-w-full tw-flex-col md:tw-flex-row">
12102
12130
  <!-- لیست -->
12103
- <div
12104
- class="tw-w-full md:tw-w-96"
12105
- >
12131
+ <div class="tw-w-full md:tw-w-96 master">
12106
12132
  <ng-container #containerRef></ng-container>
12107
12133
  </div>
12108
12134
 
12109
12135
  <!-- جزئیات -->
12110
- <div class="tw-w-full md:tw-flex-1 tw-overflow-hidden">
12136
+ <div class="tw-w-full md:tw-flex-1 tw-overflow-hidden details">
12111
12137
  <router-outlet name="details"></router-outlet>
12112
12138
  </div>
12113
12139
  </div>
@@ -12120,14 +12146,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
12120
12146
  args: [{ selector: 'bnrc-master-details-page', template: `
12121
12147
  <div class="tw-flex tw-h-full tw-w-full tw-flex-col md:tw-flex-row">
12122
12148
  <!-- لیست -->
12123
- <div
12124
- class="tw-w-full md:tw-w-96"
12125
- >
12149
+ <div class="tw-w-full md:tw-w-96 master">
12126
12150
  <ng-container #containerRef></ng-container>
12127
12151
  </div>
12128
12152
 
12129
12153
  <!-- جزئیات -->
12130
- <div class="tw-w-full md:tw-flex-1 tw-overflow-hidden">
12154
+ <div class="tw-w-full md:tw-flex-1 tw-overflow-hidden details">
12131
12155
  <router-outlet name="details"></router-outlet>
12132
12156
  </div>
12133
12157
  </div>
@@ -16514,6 +16538,7 @@ class FormNewComponent extends BaseComponent {
16514
16538
  super(...arguments);
16515
16539
  this._router = inject(Router);
16516
16540
  this._activatedRoute = inject(ActivatedRoute);
16541
+ this._back$ = new Subject();
16517
16542
  }
16518
16543
  ngOnInit() {
16519
16544
  super.ngOnInit();
@@ -16521,9 +16546,20 @@ class FormNewComponent extends BaseComponent {
16521
16546
  const typeDefId = this.settings?.MetaTypeDef?.Id;
16522
16547
  const viewId = this.settings?.MetaView?.Id;
16523
16548
  this.params = { moId, typeDefId, viewId };
16549
+ this._back$
16550
+ .asObservable()
16551
+ .pipe(debounceTime$1(100))
16552
+ .subscribe(() => this._navigateBack());
16524
16553
  }
16525
16554
  onFormClose() {
16526
- this._router.navigate(['../'], {
16555
+ this._back$.next();
16556
+ }
16557
+ _navigateBack() {
16558
+ const pathPattern = this._activatedRoute.snapshot.routeConfig?.path || '';
16559
+ const segmentsCount = pathPattern.split('/').filter((segment) => segment.length > 0).length;
16560
+ const backSteps = '../'.repeat(segmentsCount);
16561
+ // const path = this._activatedRoute.snapshot.routeConfig?.path;
16562
+ this._router.navigate([backSteps], {
16527
16563
  relativeTo: this._activatedRoute,
16528
16564
  replaceUrl: true
16529
16565
  });
@@ -18122,5 +18158,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
18122
18158
  * Generated bundle index. Do not edit.
18123
18159
  */
18124
18160
 
18125
- 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, CardBaseItemContentPropsComponent, CardDynamicItemComponent, 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, ReportBreadcrumbResolver, ReportCalendarModel, ReportContainerComponent, ReportEmptyPageComponent, ReportExtraInfo, ReportField, ReportFormModel, ReportItemBaseComponent, ReportListModel, ReportModel, ReportNavigatorComponent, ReportTreeModel, ReportViewBaseComponent, ReportViewColumn, ResizableComponent, ResizableDirective, ResizableModule, ResizeHandlerDirective, ResizeObserverDirective, ReversePipe, RichStringControlInfoModel, RootPageComponent, RootPortalComponent, RotateImage, 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, compareVersions, 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, isVersionBiggerThan, measureText, measureText2, measureTextBy, mobile_regex, nullOrUndefinedString, number_only, requestAnimationFramePolyfill, scrollToElement, setColumnWidthByMaxMoContentWidth, setOneDepthLevel, setTableThWidth, shallowEqual, stopPropagation, throwIfAlreadyLoaded, toNumber, validateAllFormFields };
18161
+ 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, CardBaseItemContentPropsComponent, CardDynamicItemComponent, 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, ReportBreadcrumbResolver, ReportCalendarModel, ReportContainerComponent, ReportEmptyPageComponent, ReportExtraInfo, ReportField, ReportFormModel, ReportItemBaseComponent, ReportListModel, ReportModel, ReportNavigatorComponent, ReportTreeModel, ReportViewBaseComponent, ReportViewColumn, ResizableComponent, ResizableDirective, ResizableModule, ResizeHandlerDirective, ResizeObserverDirective, ReversePipe, RichStringControlInfoModel, RootPageComponent, RootPortalComponent, RotateImage, 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, checkPermission, compareVersions, createFormPanelMetaConditions, createGridEditorFormPanel, easeInOutCubic, elementInViewport2, enumValueToStringSize, executeUlvCommandHandler, fixUnclosedParentheses, 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, isVersionBiggerThan, measureText, measureText2, measureTextBy, mobile_regex, nullOrUndefinedString, number_only, requestAnimationFramePolyfill, scrollToElement, setColumnWidthByMaxMoContentWidth, setOneDepthLevel, setTableThWidth, shallowEqual, stopPropagation, throwIfAlreadyLoaded, toNumber, validateAllFormFields };
18126
18162
  //# sourceMappingURL=barsa-novin-ray-core.mjs.map