barsa-novin-ray-core 2.0.135 → 2.1.2

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.
Files changed (214) hide show
  1. package/fesm2022/barsa-novin-ray-core.mjs +818 -694
  2. package/fesm2022/barsa-novin-ray-core.mjs.map +1 -1
  3. package/lib/abstract-classes/form-base.d.ts +1 -0
  4. package/lib/abstract-classes/report-view-base.component.d.ts +2 -2
  5. package/lib/barsa-novin-ray-core.module.d.ts +5 -6
  6. package/lib/dynamic-component/base-view-props.d.ts +2 -2
  7. package/package.json +3 -5
  8. package/esm2022/barsa-novin-ray-core.mjs +0 -5
  9. package/esm2022/lib/abstract-classes/application-base.mjs +0 -24
  10. package/esm2022/lib/abstract-classes/barsa-api.mjs +0 -43
  11. package/esm2022/lib/abstract-classes/base-column-props.mjs +0 -84
  12. package/esm2022/lib/abstract-classes/base.component.mjs +0 -59
  13. package/esm2022/lib/abstract-classes/field-base.mjs +0 -232
  14. package/esm2022/lib/abstract-classes/files-validation-helper.mjs +0 -75
  15. package/esm2022/lib/abstract-classes/form-base.mjs +0 -156
  16. package/esm2022/lib/abstract-classes/form-field-report-page.component.mjs +0 -54
  17. package/esm2022/lib/abstract-classes/form-page-base.mjs +0 -129
  18. package/esm2022/lib/abstract-classes/form-page.component.mjs +0 -53
  19. package/esm2022/lib/abstract-classes/form-props.base.mjs +0 -97
  20. package/esm2022/lib/abstract-classes/form-toolbar-base.mjs +0 -56
  21. package/esm2022/lib/abstract-classes/index.mjs +0 -25
  22. package/esm2022/lib/abstract-classes/layout-item-base.mjs +0 -48
  23. package/esm2022/lib/abstract-classes/layout-panel-base.mjs +0 -63
  24. package/esm2022/lib/abstract-classes/linear-list-helper.mjs +0 -135
  25. package/esm2022/lib/abstract-classes/models.mjs +0 -184
  26. package/esm2022/lib/abstract-classes/module-with-dynamic-components.mjs +0 -2
  27. package/esm2022/lib/abstract-classes/number-base.mjs +0 -200
  28. package/esm2022/lib/abstract-classes/page-base.mjs +0 -97
  29. package/esm2022/lib/abstract-classes/page-with-form-handler-base.mjs +0 -40
  30. package/esm2022/lib/abstract-classes/report-base.mjs +0 -254
  31. package/esm2022/lib/abstract-classes/report-item-base.mjs +0 -53
  32. package/esm2022/lib/abstract-classes/report-view-base.component.mjs +0 -428
  33. package/esm2022/lib/abstract-classes/system-base.mjs +0 -24
  34. package/esm2022/lib/abstract-classes/tile-props.mjs +0 -46
  35. package/esm2022/lib/auth-guard.mjs +0 -48
  36. package/esm2022/lib/barsa-novin-ray-core-routing.module.mjs +0 -292
  37. package/esm2022/lib/barsa-novin-ray-core.module.mjs +0 -489
  38. package/esm2022/lib/base-ulv-setting.component.mjs +0 -45
  39. package/esm2022/lib/base.module.mjs +0 -28
  40. package/esm2022/lib/button-loading/button-loading.component.mjs +0 -18
  41. package/esm2022/lib/constants.mjs +0 -898
  42. package/esm2022/lib/container.component.mjs +0 -99
  43. package/esm2022/lib/controllers/base-controller.mjs +0 -30
  44. package/esm2022/lib/controllers/index.mjs +0 -5
  45. package/esm2022/lib/controllers/login-controller.mjs +0 -54
  46. package/esm2022/lib/controllers/login-verification-controller.mjs +0 -56
  47. package/esm2022/lib/controllers/models.mjs +0 -2
  48. package/esm2022/lib/custom-route-reuse-strategy.mjs +0 -32
  49. package/esm2022/lib/date-services/date-hijri.service.mjs +0 -146
  50. package/esm2022/lib/date-services/date-info.mjs +0 -2
  51. package/esm2022/lib/date-services/date-miladi.service.mjs +0 -124
  52. package/esm2022/lib/date-services/date-shamsi.service.mjs +0 -148
  53. package/esm2022/lib/date-services/date.service.mjs +0 -149
  54. package/esm2022/lib/date-services/index.mjs +0 -6
  55. package/esm2022/lib/device.mjs +0 -663
  56. package/esm2022/lib/directives/absolute-div-body.directive.mjs +0 -45
  57. package/esm2022/lib/directives/anchor-scroll.directive.mjs +0 -24
  58. package/esm2022/lib/directives/attr-rtl.directive.mjs +0 -35
  59. package/esm2022/lib/directives/base.directive.mjs +0 -55
  60. package/esm2022/lib/directives/body-click.directive.mjs +0 -35
  61. package/esm2022/lib/directives/column-resizer.directive.mjs +0 -39
  62. package/esm2022/lib/directives/copy.directive.mjs +0 -59
  63. package/esm2022/lib/directives/count-down.directive.mjs +0 -108
  64. package/esm2022/lib/directives/dynamic-command.directive.mjs +0 -42
  65. package/esm2022/lib/directives/dynamic-style.directive.mjs +0 -57
  66. package/esm2022/lib/directives/ellapsis-text.directive.mjs +0 -69
  67. package/esm2022/lib/directives/ellipsify.directive.mjs +0 -72
  68. package/esm2022/lib/directives/field-binding.directive.mjs +0 -17
  69. package/esm2022/lib/directives/fill-empty-space.mjs +0 -83
  70. package/esm2022/lib/directives/form-close.directive.mjs +0 -32
  71. package/esm2022/lib/directives/img-lazy.directive.mjs +0 -81
  72. package/esm2022/lib/directives/index.mjs +0 -35
  73. package/esm2022/lib/directives/intersection-observer.directive.mjs +0 -51
  74. package/esm2022/lib/directives/items-renderer.directive.mjs +0 -59
  75. package/esm2022/lib/directives/label-mandatory.directive.mjs +0 -48
  76. package/esm2022/lib/directives/load-external-files.directive.mjs +0 -37
  77. package/esm2022/lib/directives/mobile.directive.mjs +0 -29
  78. package/esm2022/lib/directives/nowraptext.directive.mjs +0 -26
  79. package/esm2022/lib/directives/numbers-only-input.directive.mjs +0 -26
  80. package/esm2022/lib/directives/placeHolder.directive.mjs +0 -15
  81. package/esm2022/lib/directives/prevent-default.directive.mjs +0 -20
  82. package/esm2022/lib/directives/render-ulv-paging.directive.mjs +0 -80
  83. package/esm2022/lib/directives/render-ulv-viewer.directive.mjs +0 -75
  84. package/esm2022/lib/directives/route-form-change.directive.mjs +0 -37
  85. package/esm2022/lib/directives/stop-propagation.directive.mjs +0 -20
  86. package/esm2022/lib/directives/table-resizer.directive.mjs +0 -235
  87. package/esm2022/lib/directives/ulv-command.directive.mjs +0 -42
  88. package/esm2022/lib/directives/until-inview.directive.mjs +0 -52
  89. package/esm2022/lib/directives/workflow-choice-command.directive.mjs +0 -60
  90. package/esm2022/lib/dynamic-component/base-dynamic.component.mjs +0 -96
  91. package/esm2022/lib/dynamic-component/base-form-toolbaritem-props.mjs +0 -52
  92. package/esm2022/lib/dynamic-component/base-item-content-props.mjs +0 -80
  93. package/esm2022/lib/dynamic-component/base-view-content-props.mjs +0 -20
  94. package/esm2022/lib/dynamic-component/base-view-item-props.mjs +0 -525
  95. package/esm2022/lib/dynamic-component/base-view-props.mjs +0 -162
  96. package/esm2022/lib/dynamic-component/dynamic-form-toolbar-item.component.mjs +0 -38
  97. package/esm2022/lib/dynamic-component/dynamic-form.component.mjs +0 -66
  98. package/esm2022/lib/dynamic-component/dynamic-item.component.mjs +0 -76
  99. package/esm2022/lib/dynamic-component/dynamic-layout.component.mjs +0 -63
  100. package/esm2022/lib/dynamic-component/index.mjs +0 -11
  101. package/esm2022/lib/empty-page/empty-page.component.mjs +0 -44
  102. package/esm2022/lib/empty-page-with-router-and-router-outlet/empty-page-with-router-and-router-outlet.component.mjs +0 -16
  103. package/esm2022/lib/field-ui/field-ui.component.mjs +0 -146
  104. package/esm2022/lib/form/form.component.mjs +0 -211
  105. package/esm2022/lib/form-new/form-new.component.mjs +0 -30
  106. package/esm2022/lib/form-page-routing/barsa-sap-ui-form-page-routing.module.mjs +0 -54
  107. package/esm2022/lib/form-page-routing/barsa-sap-ui-form-page.module.mjs +0 -29
  108. package/esm2022/lib/form-page-routing/constants.mjs +0 -9
  109. package/esm2022/lib/form-page-routing/index.mjs +0 -3
  110. package/esm2022/lib/from-intersection-observer.mjs +0 -53
  111. package/esm2022/lib/global-error-handler.mjs +0 -26
  112. package/esm2022/lib/injdection-tokens.mjs +0 -8
  113. package/esm2022/lib/login-enter-mobile/login-enter-mobile.component.mjs +0 -64
  114. package/esm2022/lib/login-verification/login-verification.component.mjs +0 -79
  115. package/esm2022/lib/login2/login2.component.mjs +0 -60
  116. package/esm2022/lib/modal-root.component.mjs +0 -33
  117. package/esm2022/lib/not-found/not-found.component.mjs +0 -16
  118. package/esm2022/lib/not-internet/not-internet.component.mjs +0 -21
  119. package/esm2022/lib/pipes/barsa-icon-dict.pipe.mjs +0 -19
  120. package/esm2022/lib/pipes/bbb-translate.pipe.mjs +0 -35
  121. package/esm2022/lib/pipes/can-upload.pipe.mjs +0 -30
  122. package/esm2022/lib/pipes/column-custom-component.pipe.mjs +0 -40
  123. package/esm2022/lib/pipes/column-customui.pipe.mjs +0 -32
  124. package/esm2022/lib/pipes/column-icon.pipe.mjs +0 -22
  125. package/esm2022/lib/pipes/column-value.pipe.mjs +0 -34
  126. package/esm2022/lib/pipes/combo-row-img.pipe.mjs +0 -16
  127. package/esm2022/lib/pipes/context-menu.pipe.mjs +0 -40
  128. package/esm2022/lib/pipes/control-ui.pipe.mjs +0 -31
  129. package/esm2022/lib/pipes/convert-to-style.pipe.mjs +0 -32
  130. package/esm2022/lib/pipes/date-time-to-caption.pipe.mjs +0 -34
  131. package/esm2022/lib/pipes/fileinfo-count.pipe.mjs +0 -20
  132. package/esm2022/lib/pipes/filter-columns-by-details.pipe.mjs +0 -22
  133. package/esm2022/lib/pipes/filter-string.pipe.mjs +0 -44
  134. package/esm2022/lib/pipes/filter-tab.pipe.mjs +0 -19
  135. package/esm2022/lib/pipes/filter-toolbar-control.pipe.mjs +0 -16
  136. package/esm2022/lib/pipes/filter-workflow-mobile.pipe.mjs +0 -24
  137. package/esm2022/lib/pipes/filter.pipe.mjs +0 -33
  138. package/esm2022/lib/pipes/find-column-by-db-name.pipe.mjs +0 -27
  139. package/esm2022/lib/pipes/find-preview-column.pipe.mjs +0 -19
  140. package/esm2022/lib/pipes/fiori-icon.pipe.mjs +0 -42
  141. package/esm2022/lib/pipes/groupby.pipe.mjs +0 -63
  142. package/esm2022/lib/pipes/header-facet-value.pipe.mjs +0 -22
  143. package/esm2022/lib/pipes/hide-columns-inmobile.pipe.mjs +0 -22
  144. package/esm2022/lib/pipes/index.mjs +0 -48
  145. package/esm2022/lib/pipes/list-count.pipe.mjs +0 -17
  146. package/esm2022/lib/pipes/merge-fields-to-columns.pipe.mjs +0 -42
  147. package/esm2022/lib/pipes/mo-info-ulv-data.pipe.mjs +0 -58
  148. package/esm2022/lib/pipes/mo-info-ulv-paging.pipe.mjs +0 -16
  149. package/esm2022/lib/pipes/mo-report-value-concat.pipe.mjs +0 -35
  150. package/esm2022/lib/pipes/mo-report-value.pipe.mjs +0 -17
  151. package/esm2022/lib/pipes/mo-value.pipe.mjs +0 -18
  152. package/esm2022/lib/pipes/multiple-groupby.pipe.mjs +0 -90
  153. package/esm2022/lib/pipes/numeral.pipe.mjs +0 -43
  154. package/esm2022/lib/pipes/picture-field-source.pipe.mjs +0 -22
  155. package/esm2022/lib/pipes/remove-newline.pipe.mjs +0 -20
  156. package/esm2022/lib/pipes/replace.pipe.mjs +0 -17
  157. package/esm2022/lib/pipes/reverse.pipe.mjs +0 -22
  158. package/esm2022/lib/pipes/rownumber.pipe.mjs +0 -25
  159. package/esm2022/lib/pipes/sanitize-text.pipe.mjs +0 -20
  160. package/esm2022/lib/pipes/seperator-fix.pipe.mjs +0 -23
  161. package/esm2022/lib/pipes/sort.pipe.mjs +0 -48
  162. package/esm2022/lib/pipes/th-image-icon.pipe.mjs +0 -22
  163. package/esm2022/lib/pipes/tlbButtons.pipe.mjs +0 -59
  164. package/esm2022/lib/pipes/total-summary.pipe.mjs +0 -16
  165. package/esm2022/lib/pipes/tree-item-isexpanded.pipe.mjs +0 -25
  166. package/esm2022/lib/pipes/visible-value.pipe.mjs +0 -18
  167. package/esm2022/lib/portal-page/portal-page.component.mjs +0 -23
  168. package/esm2022/lib/portal-page/portal-sidebar.component.mjs +0 -36
  169. package/esm2022/lib/redirect-home-guard.mjs +0 -51
  170. package/esm2022/lib/redirect-report-navigator-command/redirect-report-navigator-command.component.mjs +0 -12
  171. package/esm2022/lib/report-container/report-container.component.mjs +0 -63
  172. package/esm2022/lib/resizable-module/resizable.component.mjs +0 -31
  173. package/esm2022/lib/resizable-module/resizable.directive.mjs +0 -41
  174. package/esm2022/lib/resizable-module/resizable.module.mjs +0 -17
  175. package/esm2022/lib/resolvers/index.mjs +0 -6
  176. package/esm2022/lib/resolvers/portal-dynamic-page.resolver.mjs +0 -49
  177. package/esm2022/lib/resolvers/portal-form-page.resolver.mjs +0 -18
  178. package/esm2022/lib/resolvers/portal-page.resolver.mjs +0 -30
  179. package/esm2022/lib/resolvers/portal-report-page.resolver.mjs +0 -37
  180. package/esm2022/lib/resolvers/tile-group-breadcrumb.resolver.mjs +0 -30
  181. package/esm2022/lib/root-page/root-page.component.mjs +0 -21
  182. package/esm2022/lib/root-portal/root-portal.component.mjs +0 -164
  183. package/esm2022/lib/server-connection-error/server-connection-error.component.mjs +0 -19
  184. package/esm2022/lib/services/api.service.mjs +0 -63
  185. package/esm2022/lib/services/audio-recording.service.mjs +0 -95
  186. package/esm2022/lib/services/barsa-dialog.service.mjs +0 -80
  187. package/esm2022/lib/services/barsa-storage.service.mjs +0 -78
  188. package/esm2022/lib/services/breadcrumb.service.mjs +0 -64
  189. package/esm2022/lib/services/column.service.mjs +0 -20
  190. package/esm2022/lib/services/container.service.mjs +0 -69
  191. package/esm2022/lib/services/dynamic-component.service.mjs +0 -55
  192. package/esm2022/lib/services/form-panel.service.mjs +0 -380
  193. package/esm2022/lib/services/form.service.mjs +0 -14
  194. package/esm2022/lib/services/horizontal-layout.service.mjs +0 -16
  195. package/esm2022/lib/services/index.mjs +0 -29
  196. package/esm2022/lib/services/indexeddb.service.mjs +0 -34
  197. package/esm2022/lib/services/layout.service.mjs +0 -42
  198. package/esm2022/lib/services/local-storage.service.mjs +0 -32
  199. package/esm2022/lib/services/log.service.mjs +0 -50
  200. package/esm2022/lib/services/network-status.service.mjs +0 -15
  201. package/esm2022/lib/services/notification-popup.service.mjs +0 -2
  202. package/esm2022/lib/services/notification-sw.service.mjs +0 -180
  203. package/esm2022/lib/services/notification.service.mjs +0 -308
  204. package/esm2022/lib/services/portal.service.mjs +0 -929
  205. package/esm2022/lib/services/prompt-update.service.mjs +0 -56
  206. package/esm2022/lib/services/routing.service.mjs +0 -60
  207. package/esm2022/lib/services/save-scoll-position.service.mjs +0 -29
  208. package/esm2022/lib/services/service-worker-communication.service.mjs +0 -120
  209. package/esm2022/lib/services/toast.service.mjs +0 -2
  210. package/esm2022/lib/services/ui.service.mjs +0 -23
  211. package/esm2022/lib/services/ulvmain.service.mjs +0 -810
  212. package/esm2022/lib/services/upload.service.mjs +0 -161
  213. package/esm2022/lib/services/video-recording.service.mjs +0 -115
  214. package/esm2022/public-api.mjs +0 -44
@@ -1,129 +0,0 @@
1
- import { Input, Component, ChangeDetectionStrategy } from '@angular/core';
2
- import { takeUntil } from 'rxjs/operators';
3
- import { ContainerComponent } from '../container.component';
4
- import { BarsaApi } from './barsa-api';
5
- import * as i0 from "@angular/core";
6
- export class FormPageBaseComponent extends ContainerComponent {
7
- constructor() {
8
- super(...arguments);
9
- /* eslint-disable */
10
- this.ShowFormPanelControl = (formpanelCtrlr) => {
11
- this._portalService.ShowFormPanelControl(formpanelCtrlr, this._router, this._activatedRoute, this._formDialogComponent, false, this._vcr);
12
- };
13
- /* eslint-disable */
14
- this.RefreshFormPanelControl = () => {
15
- const formpanelCtrlr = this._portalService.formPanels[this.formpanelCtrlrId];
16
- this.parentContainer.RefreshFormPanelControl(formpanelCtrlr);
17
- };
18
- /* eslint-disable */
19
- this.ForceCloseChild = () => {
20
- this._router.navigate([{ outlets: { popup: null } }], {
21
- relativeTo: this._activatedRoute
22
- });
23
- };
24
- /* eslint-disable */
25
- this.ForceClose = () => {
26
- this.parentContainer.ForceCloseChild();
27
- };
28
- }
29
- ngOnInit() {
30
- super.ngOnInit();
31
- this._activatedRoute.params.pipe(takeUntil(this._onDestroy$)).subscribe((params) => {
32
- const state = this._router.getCurrentNavigation()?.extras.state;
33
- this.prepareIds(state?.formPanelCtrlrId, params);
34
- });
35
- }
36
- ngAfterViewInit() {
37
- super.ngAfterViewInit();
38
- if (!this.formPanelCtrlr) {
39
- this.formPanelCtrlr = this._portalService.formPanels[this.formpanelCtrlrId];
40
- }
41
- this.hideAllPageContent();
42
- if (BarsaApi.LoginFormData.IsServiceDesk) {
43
- setTimeout(() => {
44
- window.scrollTo({ top: 0 });
45
- }, 0);
46
- }
47
- }
48
- ngOnDestroy() {
49
- super.ngOnDestroy();
50
- this._portalService.formPanels[this.formpanelCtrlrId] = null;
51
- this.removeLastHidePage();
52
- }
53
- hideAllPageContent() {
54
- // const pages = document.querySelectorAll('.section.absolute-page');
55
- // pages?.forEach((pageEl) => {
56
- // if (pageEl !== this._el.nativeElement) {
57
- // // (pageEl as HTMLElement).classList.add('hide');
58
- // }
59
- // });
60
- // if (pages && pages.length > 0) {
61
- // (pages[pages.length - 1]?.firstChild as HTMLElement)?.classList?.remove('hide');
62
- // }
63
- }
64
- removeLastHidePage() {
65
- // const pages = document.querySelectorAll('.section.absolute-page');
66
- // if (pages && pages.length > 0) {
67
- // const last: null | Element = pages[pages.length - 2];
68
- // last.classList?.remove('hide');
69
- // }
70
- }
71
- onFormClose() {
72
- if (this._activatedRoute.snapshot.params.isFirst &&
73
- this._activatedRoute.parent?.parent?.routeConfig?.path === 'form') {
74
- const parentUrl = this._router.url.split('/form/')[0];
75
- this._router.navigateByUrl(parentUrl, {
76
- replaceUrl: true
77
- });
78
- // this.router.navigate(['../']);
79
- // this.router.navigate([{ outlets: { main: null } }], {
80
- // relativeTo: this.activatedRoute,
81
- // });
82
- }
83
- else {
84
- this._router.navigate(['../'], {
85
- relativeTo: this._activatedRoute,
86
- replaceUrl: true
87
- });
88
- }
89
- return;
90
- const outlet = this._activatedRoute.outlet;
91
- // let outlets = {};
92
- // outlets[outlet] = null;
93
- // if(this.location.getState())
94
- this._router.navigate([{ outlets: { main: null } }]);
95
- }
96
- prepareIds(formpanelCtrlrId, params) {
97
- this.formpanelCtrlrId = formpanelCtrlrId || params.formPanelCtrlrId;
98
- if (this.formpanelCtrlrId) {
99
- this.formPanelCtrlr = this._portalService.formPanels[this.formpanelCtrlrId];
100
- }
101
- const moId = params.id;
102
- const typeDefId = params.tyid;
103
- const reportId = params.repid;
104
- const viewId = params.vid;
105
- this.params = Object.assign({}, { moId, typeDefId, reportId, viewId });
106
- this._cdr.detectChanges();
107
- }
108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormPageBaseComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
109
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: FormPageBaseComponent, selector: "bnrc-form-page-base", inputs: { formPanelCtrlr: "formPanelCtrlr", ShowFormPanelControl: "ShowFormPanelControl", RefreshFormPanelControl: "RefreshFormPanelControl", ForceCloseChild: "ForceCloseChild", ForceClose: "ForceClose" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
110
- }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormPageBaseComponent, decorators: [{
112
- type: Component,
113
- args: [{
114
- selector: 'bnrc-form-page-base',
115
- template: '',
116
- changeDetection: ChangeDetectionStrategy.OnPush
117
- }]
118
- }], propDecorators: { formPanelCtrlr: [{
119
- type: Input
120
- }], ShowFormPanelControl: [{
121
- type: Input
122
- }], RefreshFormPanelControl: [{
123
- type: Input
124
- }], ForceCloseChild: [{
125
- type: Input
126
- }], ForceClose: [{
127
- type: Input
128
- }] } });
129
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1wYWdlLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvZm9ybS1wYWdlLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQStDLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQU92QyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsa0JBQWtCO0lBTDdEOztRQTBESSxvQkFBb0I7UUFDWCx5QkFBb0IsR0FBRyxDQUFDLGNBQWMsRUFBRSxFQUFFO1lBQy9DLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLENBQ3BDLGNBQWMsRUFDZCxJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQyxvQkFBb0IsRUFDekIsS0FBSyxFQUNMLElBQUksQ0FBQyxJQUFJLENBQ1osQ0FBQztRQUNOLENBQUMsQ0FBQztRQUNGLG9CQUFvQjtRQUNYLDRCQUF1QixHQUFHLEdBQUcsRUFBRTtZQUNwQyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUM3RSxJQUFJLENBQUMsZUFBZSxDQUFDLHVCQUF1QixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2pFLENBQUMsQ0FBQztRQUNGLG9CQUFvQjtRQUNYLG9CQUFlLEdBQUcsR0FBRyxFQUFFO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxP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QUFFLEVBQUU7b0JBQ1osZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzhCQUVZLGNBQWM7c0JBQXRCLEtBQUs7Z0JBcURHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFXRyx1QkFBdUI7c0JBQS9CLEtBQUs7Z0JBS0csZUFBZTtzQkFBdkIsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5wdXQsIENvbXBvbmVudCwgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFyc2FBcGkgfSBmcm9tICcuL2JhcnNhLWFwaSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYm5yYy1mb3JtLXBhZ2UtYmFzZScsXHJcbiAgICB0ZW1wbGF0ZTogJycsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybVBhZ2VCYXNlQ29tcG9uZW50IGV4dGVuZHMgQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBmb3JtUGFuZWxDdHJscjogYW55O1xyXG4gICAgcGFyYW1zOiB7XHJcbiAgICAgICAgbW9JZDogc3RyaW5nO1xyXG4gICAgICAgIHR5cGVEZWZJZDogc3RyaW5nO1xyXG4gICAgICAgIHJlcG9ydElkOiBzdHJpbmc7XHJcbiAgICAgICAgdmlld0lkOiBzdHJpbmc7XHJcbiAgICB9O1xyXG4gICAgZm9ybXBhbmVsQ3RybHJJZDogc3RyaW5nO1xyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLl9hY3RpdmF0ZWRSb3V0ZS5wYXJhbXMucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgocGFyYW1zKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5fcm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk/LmV4dHJhcy5zdGF0ZTtcclxuICAgICAgICAgICAgdGhpcy5wcmVwYXJlSWRzKHN0YXRlPy5mb3JtUGFuZWxDdHJscklkLCBwYXJhbXMpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgICAgICBpZiAoIXRoaXMuZm9ybVBhbmVsQ3RybHIpIHtcclxuICAgICAgICAgICAgdGhpcy5mb3JtUGFuZWxDdHJsciA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuZm9ybVBhbmVsc1t0aGlzLmZvcm1wYW5lbEN0cmxySWRdO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmhpZGVBbGxQYWdlQ29udGVudCgpO1xyXG4gICAgICAgIGlmIChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzU2VydmljZURlc2spIHtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IDAgfSk7XHJcbiAgICAgICAgICAgIH0sIDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5mb3JtUGFuZWxzW3RoaXMuZm9ybXBhbmVsQ3RybHJJZF0gPSBudWxsO1xyXG4gICAgICAgIHRoaXMucmVtb3ZlTGFzdEhpZGVQYWdlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaGlkZUFsbFBhZ2VDb250ZW50KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIGNvbnN0IHBhZ2VzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnNlY3Rpb24uYWJzb2x1dGUtcGFnZScpO1xyXG4gICAgICAgIC8vIHBhZ2VzPy5mb3JFYWNoKChwYWdlRWwpID0+IHtcclxuICAgICAgICAvLyAgICAgaWYgKHBhZ2VFbCAhPT0gdGhpcy5fZWwubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAgIC8vICAgICAgICAgLy8gKHBhZ2VFbCBhcyBIVE1MRWxlbWVudCkuY2xhc3NMaXN0LmFkZCgnaGlkZScpO1xyXG4gICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgLy8gfSk7XHJcbiAgICAgICAgLy8gaWYgKHBhZ2VzICYmIHBhZ2VzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAvLyAgICAgKHBhZ2VzW3BhZ2VzLmxlbmd0aCAtIDFdPy5maXJzdENoaWxkIGFzIEhUTUxFbGVtZW50KT8uY2xhc3NMaXN0Py5yZW1vdmUoJ2hpZGUnKTtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcbiAgICByZW1vdmVMYXN0SGlkZVBhZ2UoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gY29uc3QgcGFnZXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuc2VjdGlvbi5hYnNvbHV0ZS1wYWdlJyk7XHJcbiAgICAgICAgLy8gaWYgKHBhZ2VzICYmIHBhZ2VzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAvLyAgICAgY29uc3QgbGFzdDogbnVsbCB8IEVsZW1lbnQgPSBwYWdlc1twYWdlcy5sZW5ndGggLSAyXTtcclxuICAgICAgICAvLyAgICAgIGxhc3QuY2xhc3NMaXN0Py5yZW1vdmUoJ2hpZGUnKTtcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcbiAgICAvKiBlc2xpbnQtZGlzYWJsZSAqL1xyXG4gICAgQElucHV0KCkgU2hvd0Zvcm1QYW5lbENvbnRyb2wgPSAoZm9ybXBhbmVsQ3RybHIpID0+IHtcclxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLlNob3dGb3JtUGFuZWxDb250cm9sKFxyXG4gICAgICAgICAgICBmb3JtcGFuZWxDdHJscixcclxuICAgICAgICAgICAgdGhpcy5fcm91dGVyLFxyXG4gICAgICAgICAgICB0aGlzLl9hY3RpdmF0ZWRSb3V0ZSxcclxuICAgICAgICAgICAgdGhpcy5fZm9ybURpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICAgICAgZmFsc2UsXHJcbiAgICAgICAgICAgIHRoaXMuX3ZjclxyXG4gICAgICAgICk7XHJcbiAgICB9O1xyXG4gICAgLyogZXNsaW50LWRpc2FibGUgKi9cclxuICAgIEBJbnB1dCgpIFJlZnJlc2hGb3JtUGFuZWxDb250cm9sID0gKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGZvcm1wYW5lbEN0cmxyID0gdGhpcy5fcG9ydGFsU2VydmljZS5mb3JtUGFuZWxzW3RoaXMuZm9ybXBhbmVsQ3RybHJJZF07XHJcbiAgICAgICAgdGhpcy5wYXJlbnRDb250YWluZXIuUmVmcmVzaEZvcm1QYW5lbENvbnRyb2woZm9ybXBhbmVsQ3RybHIpO1xyXG4gICAgfTtcclxuICAgIC8qIGVzbGludC1kaXNhYmxlICovXHJcbiAgICBASW5wdXQoKSBGb3JjZUNsb3NlQ2hpbGQgPSAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKFt7IG91dGxldHM6IHsgcG9wdXA6IG51bGwgfSB9XSwge1xyXG4gICAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLl9hY3RpdmF0ZWRSb3V0ZVxyXG4gICAgICAgIH0pO1xyXG4gICAgfTtcclxuICAgIC8qIGVzbGludC1kaXNhYmxlICovXHJcbiAgICBASW5wdXQoKSBGb3JjZUNsb3NlID0gKCkgPT4ge1xyXG4gICAgICAgIHRoaXMucGFyZW50Q29udGFpbmVyLkZvcmNlQ2xvc2VDaGlsZCgpO1xyXG4gICAgfTtcclxuICAgIG9uRm9ybUNsb3NlKCk6IHZvaWQge1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgdGhpcy5fYWN0aXZhdGVkUm91dGUuc25hcHNob3QucGFyYW1zLmlzRmlyc3QgJiZcclxuICAgICAgICAgICAgdGhpcy5fYWN0aXZhdGVkUm91dGUucGFyZW50Py5wYXJlbnQ/LnJvdXRlQ29uZmlnPy5wYXRoID09PSAnZm9ybSdcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgY29uc3QgcGFyZW50VXJsID0gdGhpcy5fcm91dGVyLnVybC5zcGxpdCgnL2Zvcm0vJylbMF07XHJcbiAgICAgICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZUJ5VXJsKHBhcmVudFVybCwge1xyXG4gICAgICAgICAgICAgICAgcmVwbGFjZVVybDogdHJ1ZVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgLy8gdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycuLi8nXSk7XHJcbiAgICAgICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFt7IG91dGxldHM6IHsgbWFpbjogbnVsbCB9IH1dLCB7XHJcbiAgICAgICAgICAgIC8vICAgcmVsYXRpdmVUbzogdGhpcy5hY3RpdmF0ZWRSb3V0ZSxcclxuICAgICAgICAgICAgLy8gfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKFsnLi4vJ10sIHtcclxuICAgICAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMuX2FjdGl2YXRlZFJvdXRlLFxyXG4gICAgICAgICAgICAgICAgcmVwbGFjZVVybDogdHJ1ZVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGNvbnN0IG91dGxldCA9IHRoaXMuX2FjdGl2YXRlZFJvdXRlLm91dGxldDtcclxuICAgICAgICAvLyAgIGxldCBvdXRsZXRzID0ge307XHJcbiAgICAgICAgLy8gICBvdXRsZXRzW291dGxldF0gPSBudWxsO1xyXG4gICAgICAgIC8vICBpZih0aGlzLmxvY2F0aW9uLmdldFN0YXRlKCkpXHJcbiAgICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKFt7IG91dGxldHM6IHsgbWFpbjogbnVsbCB9IH1dKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBwcmVwYXJlSWRzKGZvcm1wYW5lbEN0cmxySWQ6IHN0cmluZywgcGFyYW1zKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JtcGFuZWxDdHJscklkID0gZm9ybXBhbmVsQ3RybHJJZCB8fCBwYXJhbXMuZm9ybVBhbmVsQ3RybHJJZDtcclxuICAgICAgICBpZiAodGhpcy5mb3JtcGFuZWxDdHJscklkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybVBhbmVsQ3RybHIgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmZvcm1QYW5lbHNbdGhpcy5mb3JtcGFuZWxDdHJscklkXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgbW9JZCA9IHBhcmFtcy5pZDtcclxuICAgICAgICBjb25zdCB0eXBlRGVmSWQgPSBwYXJhbXMudHlpZDtcclxuICAgICAgICBjb25zdCByZXBvcnRJZCA9IHBhcmFtcy5yZXBpZDtcclxuICAgICAgICBjb25zdCB2aWV3SWQgPSBwYXJhbXMudmlkO1xyXG4gICAgICAgIHRoaXMucGFyYW1zID0gT2JqZWN0LmFzc2lnbih7fSwgeyBtb0lkLCB0eXBlRGVmSWQsIHJlcG9ydElkLCB2aWV3SWQgfSk7XHJcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,53 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewChild } from '@angular/core';
2
- import { FormPageBaseComponent } from '../abstract-classes';
3
- import { FormComponent } from '../form/form.component';
4
- import { ContainerService, FormService } from '../services';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/router";
7
- import * as i2 from "../form/form.component";
8
- import * as i3 from "../directives/form-close.directive";
9
- export class FormPageComponent extends FormPageBaseComponent {
10
- constructor() {
11
- super(...arguments);
12
- this.sectionClass = true;
13
- this.absolutePageClass = true;
14
- }
15
- ngOnInit() {
16
- this.containerRef = this.formRef.vcr; // it must be first because we change containerRef
17
- super.ngOnInit();
18
- }
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
20
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: FormPageComponent, selector: "bnrc-form-page", inputs: { formPanelCtrlr: "formPanelCtrlr" }, host: { properties: { "class.section": "this.sectionClass", "class.absolute-page": "this.absolutePageClass" } }, providers: [FormService, ContainerService], viewQueries: [{ propertyName: "formRef", first: true, predicate: FormComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
21
- <bnrc-form
22
- [formPanelCtrl]="formPanelCtrlr"
23
- [formPanelCtrlId]="formpanelCtrlrId"
24
- [params]="params"
25
- (formClose)="onFormClose()"
26
- ></bnrc-form>
27
- <router-outlet></router-outlet>
28
- `, isInline: true, styles: [":host{display:block;background:var(--sapBackgroundColor)}\n"], dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i2.FormComponent, selector: "bnrc-form", inputs: ["params", "customFormPanelUi", "formPanelCtrl", "UlvMainCtrlr", "formPanelCtrlId", "saveOnChange", "inlineEditInReport"], outputs: ["titleChanged", "moChanged", "formClose", "uiComponent", "formRendered", "bruleAction", "beforeTransition", "afterTransition"] }, { kind: "directive", type: i3.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
29
- }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormPageComponent, decorators: [{
31
- type: Component,
32
- args: [{ selector: 'bnrc-form-page', template: `
33
- <bnrc-form
34
- [formPanelCtrl]="formPanelCtrlr"
35
- [formPanelCtrlId]="formpanelCtrlrId"
36
- [params]="params"
37
- (formClose)="onFormClose()"
38
- ></bnrc-form>
39
- <router-outlet></router-outlet>
40
- `, providers: [FormService, ContainerService], changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;background:var(--sapBackgroundColor)}\n"] }]
41
- }], propDecorators: { formRef: [{
42
- type: ViewChild,
43
- args: [FormComponent, { static: true }]
44
- }], formPanelCtrlr: [{
45
- type: Input
46
- }], sectionClass: [{
47
- type: HostBinding,
48
- args: ['class.section']
49
- }], absolutePageClass: [{
50
- type: HostBinding,
51
- args: ['class.absolute-page']
52
- }] } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvYWJzdHJhY3QtY2xhc3Nlcy9mb3JtLXBhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7O0FBd0I1RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEscUJBQXFCO0lBdEI1RDs7UUF5QmtDLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ2Qsc0JBQWlCLEdBQUcsSUFBSSxDQUFDO0tBVWhFO0lBSkcsUUFBUTtRQUNKLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxrREFBa0Q7UUFDeEYsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3JCLENBQUM7OEdBYlEsaUJBQWlCO2tHQUFqQixpQkFBaUIsd01BSGYsQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsbUVBSS9CLGFBQWEscUZBckJkOzs7Ozs7OztLQVFUOzsyRkFZUSxpQkFBaUI7a0JBdEI3QixTQUFTOytCQUNJLGdCQUFnQixZQUNoQjs7Ozs7Ozs7S0FRVCxhQVNVLENBQUMsV0FBVyxFQUFFLGdCQUFnQixDQUFDLG1CQUN6Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQUdILE9BQU87c0JBQWxELFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDakMsY0FBYztzQkFBdEIsS0FBSztnQkFDd0IsWUFBWTtzQkFBekMsV0FBVzt1QkFBQyxlQUFlO2dCQUNRLGlCQUFpQjtzQkFBcEQsV0FBVzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtUGFnZUJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9hYnN0cmFjdC1jbGFzc2VzJztcclxuaW1wb3J0IHsgRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb250YWluZXJTZXJ2aWNlLCBGb3JtU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdibnJjLWZvcm0tcGFnZScsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxibnJjLWZvcm1cclxuICAgICAgICAgICAgW2Zvcm1QYW5lbEN0cmxdPVwiZm9ybVBhbmVsQ3RybHJcIlxyXG4gICAgICAgICAgICBbZm9ybVBhbmVsQ3RybElkXT1cImZvcm1wYW5lbEN0cmxySWRcIlxyXG4gICAgICAgICAgICBbcGFyYW1zXT1cInBhcmFtc1wiXHJcbiAgICAgICAgICAgIChmb3JtQ2xvc2UpPVwib25Gb3JtQ2xvc2UoKVwiXHJcbiAgICAgICAgPjwvYm5yYy1mb3JtPlxyXG4gICAgICAgIDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cclxuICAgIGAsXHJcbiAgICBzdHlsZXM6IFtcclxuICAgICAgICBgXHJcbiAgICAgICAgICAgIDpob3N0IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2FwQmFja2dyb3VuZENvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIGBcclxuICAgIF0sXHJcbiAgICBwcm92aWRlcnM6IFtGb3JtU2VydmljZSwgQ29udGFpbmVyU2VydmljZV0sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybVBhZ2VDb21wb25lbnQgZXh0ZW5kcyBGb3JtUGFnZUJhc2VDb21wb25lbnQge1xyXG4gICAgQFZpZXdDaGlsZChGb3JtQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBmb3JtUmVmOiBGb3JtQ29tcG9uZW50O1xyXG4gICAgQElucHV0KCkgZm9ybVBhbmVsQ3RybHI6IGFueTtcclxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2VjdGlvbicpIHNlY3Rpb25DbGFzcyA9IHRydWU7XHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFic29sdXRlLXBhZ2UnKSBhYnNvbHV0ZVBhZ2VDbGFzcyA9IHRydWU7XHJcbiAgICBtb0lkOiBzdHJpbmc7XHJcbiAgICB0eXBlRGVmSWQ6IHN0cmluZztcclxuICAgIHJlcG9ydElkOiBzdHJpbmc7XHJcbiAgICB2aWV3SWQ6IHN0cmluZztcclxuICAgIGZvcm1wYW5lbEN0cmxySWQ6IHN0cmluZztcclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY29udGFpbmVyUmVmID0gdGhpcy5mb3JtUmVmLnZjcjsgLy8gaXQgbXVzdCBiZSBmaXJzdCBiZWNhdXNlIHdlIGNoYW5nZSBjb250YWluZXJSZWZcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,97 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { BaseComponent } from './base.component';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../pipes";
5
- import * as i2 from "../services";
6
- import * as i3 from "@angular/platform-browser";
7
- export class FormPropsBaseComponent extends BaseComponent {
8
- constructor(_controlUiPipe, _formPanelService, _sanitizer, _cdr, _renderer2, _vcr, _factoryResolver) {
9
- super();
10
- this._controlUiPipe = _controlUiPipe;
11
- this._formPanelService = _formPanelService;
12
- this._sanitizer = _sanitizer;
13
- this._cdr = _cdr;
14
- this._renderer2 = _renderer2;
15
- this._vcr = _vcr;
16
- this._factoryResolver = _factoryResolver;
17
- this.events = new EventEmitter();
18
- }
19
- ngOnInit() {
20
- // this.mo = this._formPanelService.mo;
21
- super.ngOnInit();
22
- }
23
- onEvents(title, data) {
24
- this.events.emit({ title, data });
25
- }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormPropsBaseComponent, deps: [{ token: i1.ControlUiPipe }, { token: i2.FormPanelService }, { token: i3.DomSanitizer }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: FormPropsBaseComponent, selector: "bnrc-form-props-base", inputs: { breadCrumbs: "breadCrumbs", toolbarVisible: "toolbarVisible", toolbarItems: "toolbarItems", layoutActions: "layoutActions", layout94: "layout94", settings: "settings", workflowPanelUi: "workflowPanelUi", title: "title", subtitle: "subtitle", description: "description", facetList: "facetList", removeHeaderBorder: "removeHeaderBorder", removeContentPadding: "removeContentPadding", isMobile: "isMobile", avatar: "avatar", rtl: "rtl", mask: "mask", canSend: "canSend", landscape: "landscape", standalone: "standalone", footerDesign: "footerDesign", workflowButtons: "workflowButtons", workflowButtonsComboMode: "workflowButtonsComboMode", fieldDict: "fieldDict", contentDensity: "contentDensity", deviceSize: "deviceSize", dirValue: "dirValue", modernTabs: "modernTabs", mo: "mo" }, outputs: { events: "events" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
- }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormPropsBaseComponent, decorators: [{
30
- type: Component,
31
- args: [{
32
- selector: 'bnrc-form-props-base',
33
- template: '',
34
- changeDetection: ChangeDetectionStrategy.OnPush
35
- }]
36
- }], ctorParameters: () => [{ type: i1.ControlUiPipe }, { type: i2.FormPanelService }, { type: i3.DomSanitizer }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: { breadCrumbs: [{
37
- type: Input
38
- }], toolbarVisible: [{
39
- type: Input
40
- }], toolbarItems: [{
41
- type: Input
42
- }], layoutActions: [{
43
- type: Input
44
- }], layout94: [{
45
- type: Input
46
- }], settings: [{
47
- type: Input
48
- }], workflowPanelUi: [{
49
- type: Input
50
- }], title: [{
51
- type: Input
52
- }], subtitle: [{
53
- type: Input
54
- }], description: [{
55
- type: Input
56
- }], facetList: [{
57
- type: Input
58
- }], removeHeaderBorder: [{
59
- type: Input
60
- }], removeContentPadding: [{
61
- type: Input
62
- }], isMobile: [{
63
- type: Input
64
- }], avatar: [{
65
- type: Input
66
- }], rtl: [{
67
- type: Input
68
- }], mask: [{
69
- type: Input
70
- }], canSend: [{
71
- type: Input
72
- }], landscape: [{
73
- type: Input
74
- }], standalone: [{
75
- type: Input
76
- }], footerDesign: [{
77
- type: Input
78
- }], workflowButtons: [{
79
- type: Input
80
- }], workflowButtonsComboMode: [{
81
- type: Input
82
- }], fieldDict: [{
83
- type: Input
84
- }], contentDensity: [{
85
- type: Input
86
- }], deviceSize: [{
87
- type: Input
88
- }], dirValue: [{
89
- type: Input
90
- }], modernTabs: [{
91
- type: Input
92
- }], mo: [{
93
- type: Input
94
- }], events: [{
95
- type: Output
96
- }] } });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1wcm9wcy5iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9hYnN0cmFjdC1jbGFzc2VzL2Zvcm0tcHJvcHMuYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFHVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7O0FBV2pELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhO0lBK0JyRCxZQUNjLGNBQTZCLEVBQzdCLGlCQUFtQyxFQUNuQyxVQUF3QixFQUN4QixJQUF1QixFQUN2QixVQUFxQixFQUNyQixJQUFzQixFQUN0QixnQkFBMEM7UUFFcEQsS0FBSyxFQUFFLENBQUM7UUFSRSxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLGVBQVUsR0FBVixVQUFVLENBQWM7UUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdkIsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUNyQixTQUFJLEdBQUosSUFBSSxDQUFrQjtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTBCO1FBUjlDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBaUMsQ0FBQztJQVdyRSxDQUFDO0lBQ0QsUUFBUTtRQUNKLHVDQUF1QztRQUN2QyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNELFFBQVEsQ0FBQyxLQUFhLEVBQUUsSUFBVTtRQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7OEdBaERRLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDA0QkFIckIsRUFBRTs7MkZBR0gsc0JBQXNCO2tCQUxsQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDswUUFFWSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csd0JBQXdCO3NCQUFoQyxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0ksTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFJlbmRlcmVyMixcbiAgICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXNlLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IENvbnRyb2xVaVBpcGUgfSBmcm9tICcuLi9waXBlcyc7XG5pbXBvcnQgeyBCcmVhZENydW1iSW5mbywgRm9ybVBhbmVsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IExheW91dFNldHRpbmcsIE1ldGFvYmplY3REYXRhTW9kZWwgfSBmcm9tICcuL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYm5yYy1mb3JtLXByb3BzLWJhc2UnLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtUHJvcHNCYXNlQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgYnJlYWRDcnVtYnM6IEJyZWFkQ3J1bWJJbmZvW10gfCBudWxsO1xuICAgIEBJbnB1dCgpIHRvb2xiYXJWaXNpYmxlOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHRvb2xiYXJJdGVtczogYW55W107XG4gICAgQElucHV0KCkgbGF5b3V0QWN0aW9uczogYW55W107XG4gICAgQElucHV0KCkgbGF5b3V0OTQ7XG4gICAgQElucHV0KCkgc2V0dGluZ3M6IE1ldGFvYmplY3REYXRhTW9kZWw7XG4gICAgQElucHV0KCkgd29ya2Zsb3dQYW5lbFVpOiBhbnk7XG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgICBASW5wdXQoKSBzdWJ0aXRsZTogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgQElucHV0KCkgZmFjZXRMaXN0OiBhbnlbXTtcbiAgICBASW5wdXQoKSByZW1vdmVIZWFkZXJCb3JkZXI6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcmVtb3ZlQ29udGVudFBhZGRpbmc6IGJvb2xlYW47XG4gICAgQElucHV0KCkgaXNNb2JpbGU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgYXZhdGFyOiBhbnk7XG4gICAgQElucHV0KCkgcnRsOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIG1hc2s6IGJvb2xlYW47XG4gICAgQElucHV0KCkgY2FuU2VuZDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBsYW5kc2NhcGU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgc3RhbmRhbG9uZTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBmb290ZXJEZXNpZ246IGFueTtcbiAgICBASW5wdXQoKSB3b3JrZmxvd0J1dHRvbnM6IGFueVtdO1xuICAgIEBJbnB1dCgpIHdvcmtmbG93QnV0dG9uc0NvbWJvTW9kZTogYW55O1xuICAgIEBJbnB1dCgpIGZpZWxkRGljdDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSB8IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBjb250ZW50RGVuc2l0eTogYW55O1xuICAgIEBJbnB1dCgpIGRldmljZVNpemU6ICdzJyB8ICdtJyB8ICdsJyB8ICd4bCc7XG4gICAgQElucHV0KCkgZGlyVmFsdWU6ICdydGwnIHwgJ2x0cic7XG4gICAgQElucHV0KCkgbW9kZXJuVGFiczogTGF5b3V0U2V0dGluZ1tdO1xuICAgIEBJbnB1dCgpIG1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xuICAgIEBPdXRwdXQoKSBldmVudHMgPSBuZXcgRXZlbnRFbWl0dGVyPHsgdGl0bGU6IHN0cmluZzsgZGF0YT86IGFueSB9PigpO1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2NvbnRyb2xVaVBpcGU6IENvbnRyb2xVaVBpcGUsXG4gICAgICAgIHByb3RlY3RlZCBfZm9ybVBhbmVsU2VydmljZTogRm9ybVBhbmVsU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9zYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICAgICAgcHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcm90ZWN0ZWQgX3JlbmRlcmVyMjogUmVuZGVyZXIyLFxuICAgICAgICBwcm90ZWN0ZWQgX3ZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJvdGVjdGVkIF9mYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlclxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5tbyA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UubW87XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgfVxuICAgIG9uRXZlbnRzKHRpdGxlOiBzdHJpbmcsIGRhdGE/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ldmVudHMuZW1pdCh7IHRpdGxlLCBkYXRhIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,56 +0,0 @@
1
- import { Input, Component, EventEmitter, Output, HostBinding, ChangeDetectionStrategy, ChangeDetectorRef, inject } from '@angular/core';
2
- import { BaseComponent } from './base.component';
3
- import * as i0 from "@angular/core";
4
- export class FormToolbarBaseComponent extends BaseComponent {
5
- constructor() {
6
- super(...arguments);
7
- this.visible = true;
8
- this.toolClick = new EventEmitter();
9
- this._cdr = inject(ChangeDetectorRef);
10
- }
11
- ngOnInit() {
12
- super.ngOnInit();
13
- this._rtl = this.rtl;
14
- }
15
- onToolClick(btn) {
16
- this.toolClick.emit(btn);
17
- }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormToolbarBaseComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: FormToolbarBaseComponent, selector: "bnrc-form-toolbar-base", inputs: { buttons: "buttons", visible: "visible", size: "size", device: "device", deviceSize: "deviceSize", rtl: "rtl", landscape: "landscape", standalone: "standalone", toolbarVisible: "toolbarVisible", isFirefox: "isFirefox", dirValue: "dirValue" }, outputs: { toolClick: "toolClick" }, host: { properties: { "attr.rtl": "this._rtl" } }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
20
- }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: FormToolbarBaseComponent, decorators: [{
22
- type: Component,
23
- args: [{
24
- selector: 'bnrc-form-toolbar-base',
25
- template: '',
26
- changeDetection: ChangeDetectionStrategy.OnPush
27
- }]
28
- }], propDecorators: { buttons: [{
29
- type: Input
30
- }], visible: [{
31
- type: Input
32
- }], size: [{
33
- type: Input
34
- }], device: [{
35
- type: Input
36
- }], deviceSize: [{
37
- type: Input
38
- }], rtl: [{
39
- type: Input
40
- }], landscape: [{
41
- type: Input
42
- }], standalone: [{
43
- type: Input
44
- }], toolbarVisible: [{
45
- type: Input
46
- }], isFirefox: [{
47
- type: Input
48
- }], dirValue: [{
49
- type: Input
50
- }], toolClick: [{
51
- type: Output
52
- }], _rtl: [{
53
- type: HostBinding,
54
- args: ['attr.rtl']
55
- }] } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS10b29sYmFyLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvZm9ybS10b29sYmFyLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILEtBQUssRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixXQUFXLEVBRVgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQU9qRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsYUFBYTtJQUwzRDs7UUFPYSxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBVWQsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFcEMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0tBUzlDO0lBUkcsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFHO1FBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs4R0F0QlEsd0JBQXdCO2tHQUF4Qix3QkFBd0IseWFBSHZCLEVBQUU7OzJGQUdILHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7OEJBRVksT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNrQixJQUFJO3NCQUE1QixXQUFXO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIElucHV0LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgT3V0cHV0LFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIE9uSW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBpbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEaXJlY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JucmMtZm9ybS10b29sYmFyLWJhc2UnLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtVG9vbGJhckJhc2VDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKSBidXR0b25zOiBhbnlbXTtcbiAgICBASW5wdXQoKSB2aXNpYmxlID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBzaXplOiBhbnk7XG4gICAgQElucHV0KCkgZGV2aWNlOiBhbnk7XG4gICAgQElucHV0KCkgZGV2aWNlU2l6ZTogYW55O1xuICAgIEBJbnB1dCgpIHJ0bDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBsYW5kc2NhcGU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgc3RhbmRhbG9uZTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSB0b29sYmFyVmlzaWJsZTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBpc0ZpcmVmb3g6IGJvb2xlYW47XG4gICAgQElucHV0KCkgZGlyVmFsdWU6ICdhdXRvJyB8IERpcmVjdGlvbjtcbiAgICBAT3V0cHV0KCkgdG9vbENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnJ0bCcpIF9ydGw7XG4gICAgcHJvdGVjdGVkIF9jZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLl9ydGwgPSB0aGlzLnJ0bDtcbiAgICB9XG5cbiAgICBvblRvb2xDbGljayhidG4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy50b29sQ2xpY2suZW1pdChidG4pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,25 +0,0 @@
1
- export * from './field-base';
2
- export * from './form-base';
3
- export * from './form-toolbar-base';
4
- export * from './system-base';
5
- export * from './report-base';
6
- export * from './report-item-base';
7
- export * from './application-base';
8
- export * from './layout-item-base';
9
- export * from './layout-panel-base';
10
- export * from './page-base';
11
- export * from './number-base';
12
- export * from './models';
13
- export * from './module-with-dynamic-components';
14
- export * from './files-validation-helper';
15
- export * from './barsa-api';
16
- export * from './report-view-base.component';
17
- export * from './form-props.base';
18
- export * from './linear-list-helper';
19
- export * from './page-with-form-handler-base';
20
- export * from './form-page-base';
21
- export * from './form-page.component';
22
- export * from './base-column-props';
23
- export * from './tile-props';
24
- export * from './form-field-report-page.component';
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ZpZWxkLWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLXRvb2xiYXItYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL3N5c3RlbS1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vcmVwb3J0LWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9yZXBvcnQtaXRlbS1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vYXBwbGljYXRpb24tYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL2xheW91dC1pdGVtLWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQtcGFuZWwtYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL3BhZ2UtYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL251bWJlci1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kdWxlLXdpdGgtZHluYW1pYy1jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZXMtdmFsaWRhdGlvbi1oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9iYXJzYS1hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9yZXBvcnQtdmlldy1iYXNlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tcHJvcHMuYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmVhci1saXN0LWhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL3BhZ2Utd2l0aC1mb3JtLWhhbmRsZXItYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tcGFnZS1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1wYWdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Jhc2UtY29sdW1uLXByb3BzJztcbmV4cG9ydCAqIGZyb20gJy4vdGlsZS1wcm9wcyc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tZmllbGQtcmVwb3J0LXBhZ2UuY29tcG9uZW50JztcbiJdfQ==
@@ -1,48 +0,0 @@
1
- import { Input, Component, ChangeDetectionStrategy } from '@angular/core';
2
- import { BaseComponent } from './base.component';
3
- import { getUniqueId } from '../constants';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../services/form-panel.service";
6
- export class LayoutItemBaseComponent extends BaseComponent {
7
- constructor(formPanelService, _cdr) {
8
- super();
9
- this.formPanelService = formPanelService;
10
- this._cdr = _cdr;
11
- this.id = getUniqueId(4);
12
- this.formPanelService.isSearchPanel$.subscribe((isSearchPanel) => {
13
- this.isSearchPanel = isSearchPanel;
14
- });
15
- this.formPanelService.isSearcPanelInSideContent$.subscribe((isSearcPanelInSideContent) => {
16
- this.isSearcPanelInSideContent = isSearcPanelInSideContent;
17
- });
18
- this.formPanelService.searchPanelIsObject$.subscribe((searchPanelIsObject) => {
19
- this.searchPanelIsObject = searchPanelIsObject;
20
- });
21
- }
22
- ngOnChanges(changes) {
23
- super.ngOnChanges(changes);
24
- const { maxLabelWidth } = changes;
25
- if (maxLabelWidth && !maxLabelWidth.firstChange) {
26
- this.maxLabelWidth = maxLabelWidth.currentValue;
27
- }
28
- }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LayoutItemBaseComponent, deps: [{ token: i1.FormPanelService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: LayoutItemBaseComponent, selector: "bnrc-layout-item-base", inputs: { config: "config", isPanel: "isPanel", maxLabelWidth: "maxLabelWidth", rtl: "rtl" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
31
- }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LayoutItemBaseComponent, decorators: [{
33
- type: Component,
34
- args: [{
35
- selector: 'bnrc-layout-item-base',
36
- template: '',
37
- changeDetection: ChangeDetectionStrategy.OnPush
38
- }]
39
- }], ctorParameters: () => [{ type: i1.FormPanelService }, { type: i0.ChangeDetectorRef }], propDecorators: { config: [{
40
- type: Input
41
- }], isPanel: [{
42
- type: Input
43
- }], maxLabelWidth: [{
44
- type: Input
45
- }], rtl: [{
46
- type: Input
47
- }] } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWl0ZW0tYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvYWJzdHJhY3QtY2xhc3Nlcy9sYXlvdXQtaXRlbS1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLHVCQUF1QixFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUM1RyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBUzNDLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxhQUFhO0lBU3RELFlBQXNCLGdCQUFrQyxFQUFZLElBQXVCO1FBQ3ZGLEtBQUssRUFBRSxDQUFDO1FBRFUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUFZLFNBQUksR0FBSixJQUFJLENBQW1CO1FBR3ZGLElBQUksQ0FBQyxFQUFFLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDN0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsMEJBQTBCLENBQUMsU0FBUyxDQUFDLENBQUMseUJBQXlCLEVBQUUsRUFBRTtZQUNyRixJQUFJLENBQUMseUJBQXlCLEdBQUcseUJBQXlCLENBQUM7UUFDL0QsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLENBQUMsbUJBQW1CLEVBQUUsRUFBRTtZQUN6RSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0IsTUFBTSxFQUFFLGFBQWEsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUNsQyxJQUFJLGFBQWEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUM7UUFDcEQsQ0FBQztJQUNMLENBQUM7OEdBN0JRLHVCQUF1QjtrR0FBdkIsdUJBQXVCLHVNQUh0QixFQUFFOzsyRkFHSCx1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsUUFBUSxFQUFFLEVBQUU7b0JBQ1osZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEO3FIQUVZLE1BQU07c0JBQWQsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dCwgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IGdldFVuaXF1ZUlkIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEZvcm1QYW5lbFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9mb3JtLXBhbmVsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTGF5b3V0U2V0dGluZyB9IGZyb20gJy4vbW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdibnJjLWxheW91dC1pdGVtLWJhc2UnLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRJdGVtQmFzZUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIGNvbmZpZzogTGF5b3V0U2V0dGluZztcbiAgICBASW5wdXQoKSBpc1BhbmVsOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIG1heExhYmVsV2lkdGg6IG51bWJlcjtcbiAgICBASW5wdXQoKSBydGw6IGJvb2xlYW47XG4gICAgaXNTZWFyY2hQYW5lbDogYm9vbGVhbjtcbiAgICBpc1NlYXJjUGFuZWxJblNpZGVDb250ZW50OiBib29sZWFuO1xuICAgIHNlYXJjaFBhbmVsSXNPYmplY3Q6IGJvb2xlYW47XG4gICAgaWQ6IHN0cmluZztcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZm9ybVBhbmVsU2VydmljZTogRm9ybVBhbmVsU2VydmljZSwgcHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgICAgIHN1cGVyKCk7XG5cbiAgICAgICAgdGhpcy5pZCA9IGdldFVuaXF1ZUlkKDQpO1xuICAgICAgICB0aGlzLmZvcm1QYW5lbFNlcnZpY2UuaXNTZWFyY2hQYW5lbCQuc3Vic2NyaWJlKChpc1NlYXJjaFBhbmVsKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzU2VhcmNoUGFuZWwgPSBpc1NlYXJjaFBhbmVsO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5mb3JtUGFuZWxTZXJ2aWNlLmlzU2VhcmNQYW5lbEluU2lkZUNvbnRlbnQkLnN1YnNjcmliZSgoaXNTZWFyY1BhbmVsSW5TaWRlQ29udGVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc1NlYXJjUGFuZWxJblNpZGVDb250ZW50ID0gaXNTZWFyY1BhbmVsSW5TaWRlQ29udGVudDtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZm9ybVBhbmVsU2VydmljZS5zZWFyY2hQYW5lbElzT2JqZWN0JC5zdWJzY3JpYmUoKHNlYXJjaFBhbmVsSXNPYmplY3QpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2VhcmNoUGFuZWxJc09iamVjdCA9IHNlYXJjaFBhbmVsSXNPYmplY3Q7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25DaGFuZ2VzKGNoYW5nZXMpO1xuICAgICAgICBjb25zdCB7IG1heExhYmVsV2lkdGggfSA9IGNoYW5nZXM7XG4gICAgICAgIGlmIChtYXhMYWJlbFdpZHRoICYmICFtYXhMYWJlbFdpZHRoLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICB0aGlzLm1heExhYmVsV2lkdGggPSBtYXhMYWJlbFdpZHRoLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -1,63 +0,0 @@
1
- import { Input, Component, Self, ChangeDetectionStrategy } from '@angular/core';
2
- import { getLabelWidth, getUniqueId } from '../constants';
3
- import { LayoutItemBaseComponent } from './layout-item-base';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../services/form-panel.service";
6
- import * as i2 from "../services/layout.service";
7
- export class LayoutPanelBaseComponent extends LayoutItemBaseComponent {
8
- constructor(el, formPanelService, layoutService, _cdr) {
9
- super(formPanelService, _cdr);
10
- this.el = el;
11
- this.formPanelService = formPanelService;
12
- this.layoutService = layoutService;
13
- this._cdr = _cdr;
14
- this.id = getUniqueId(4);
15
- layoutService.id = 'panel' + this.id;
16
- this.formPanelService.isSearchPanel$.subscribe((isSearchPanel) => {
17
- this.isSearchPanel = isSearchPanel;
18
- });
19
- }
20
- ngOnInit() {
21
- super.ngOnInit();
22
- this.formPanelService.formContainerDom = this.parentDom;
23
- this.maxLabelWidth$ = this.layoutService.maxWidth$;
24
- this._calcWidth(this.config);
25
- }
26
- _calcWidth(config) {
27
- config.items.forEach((item) => {
28
- switch (item.xtype) {
29
- case 'Ly.LayoutJoin':
30
- this._calcWidth(item);
31
- break;
32
- case 'Ly.LayoutControl':
33
- this._setLabelWidth(item);
34
- break;
35
- }
36
- });
37
- }
38
- _setLabelWidth(item) {
39
- const controlWidth = getLabelWidth(item);
40
- if (controlWidth) {
41
- this.layoutService.setMaxWidth(controlWidth);
42
- }
43
- }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LayoutPanelBaseComponent, deps: [{ token: i0.ElementRef }, { token: i1.FormPanelService }, { token: i2.LayoutService, self: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
45
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: LayoutPanelBaseComponent, selector: "bnrc-layout-panel-base", inputs: { parentDom: "parentDom", isPanel: "isPanel", config: "config" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
46
- }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LayoutPanelBaseComponent, decorators: [{
48
- type: Component,
49
- args: [{
50
- selector: 'bnrc-layout-panel-base',
51
- template: '',
52
- changeDetection: ChangeDetectionStrategy.OnPush
53
- }]
54
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FormPanelService }, { type: i2.LayoutService, decorators: [{
55
- type: Self
56
- }] }, { type: i0.ChangeDetectorRef }], propDecorators: { parentDom: [{
57
- type: Input
58
- }], isPanel: [{
59
- type: Input
60
- }], config: [{
61
- type: Input
62
- }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LXBhbmVsLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvbGF5b3V0LXBhbmVsLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFzQix1QkFBdUIsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFdkgsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHMUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFRN0QsTUFBTSxPQUFPLHdCQUF5QixTQUFRLHVCQUF1QjtJQU9qRSxZQUNXLEVBQWMsRUFDWCxnQkFBa0MsRUFDMUIsYUFBNEIsRUFDcEMsSUFBdUI7UUFFakMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBTHZCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDWCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQ3BDLFNBQUksR0FBSixJQUFJLENBQW1CO1FBR2pDLElBQUksQ0FBQyxFQUFFLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLGFBQWEsQ0FBQyxFQUFFLEdBQUcsT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRTtZQUM3RCxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7UUFDbkQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUNTLFVBQVUsQ0FBQyxNQUFNO1FBQ3ZCLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDMUIsUUFBUSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssZUFBZTtvQkFDaEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDdEIsTUFBTTtnQkFDVixLQUFLLGtCQUFrQjtvQkFDbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDMUIsTUFBTTtZQUNkLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDUyxjQUFjLENBQUMsSUFBUztRQUM5QixNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2pELENBQUM7SUFDTCxDQUFDOzhHQTNDUSx3QkFBd0I7a0dBQXhCLHdCQUF3QiwrSkFIdkIsRUFBRTs7MkZBR0gsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs7MEJBV1EsSUFBSTt5RUFUQSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnB1dCwgQ29tcG9uZW50LCBTZWxmLCBFbGVtZW50UmVmLCBPbkluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZ2V0TGFiZWxXaWR0aCwgZ2V0VW5pcXVlSWQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRm9ybVBhbmVsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zvcm0tcGFuZWwuc2VydmljZSc7XG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbGF5b3V0LnNlcnZpY2UnO1xuaW1wb3J0IHsgTGF5b3V0SXRlbUJhc2VDb21wb25lbnQgfSBmcm9tICcuL2xheW91dC1pdGVtLWJhc2UnO1xuaW1wb3J0IHsgTGF5b3V0U2V0dGluZyB9IGZyb20gJy4vbW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdibnJjLWxheW91dC1wYW5lbC1iYXNlJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0UGFuZWxCYXNlQ29tcG9uZW50IGV4dGVuZHMgTGF5b3V0SXRlbUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIHBhcmVudERvbTogSFRNTEVsZW1lbnQ7XG4gICAgQElucHV0KCkgaXNQYW5lbDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBjb25maWc6IExheW91dFNldHRpbmc7XG4gICAgbWF4TGFiZWxXaWR0aCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgICBpc1NlYXJjaFBhbmVsOiBib29sZWFuO1xuICAgIGlkOiBzdHJpbmc7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBlbDogRWxlbWVudFJlZixcbiAgICAgICAgcHJvdGVjdGVkIGZvcm1QYW5lbFNlcnZpY2U6IEZvcm1QYW5lbFNlcnZpY2UsXG4gICAgICAgIEBTZWxmKCkgcHJvdGVjdGVkIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxuICAgICkge1xuICAgICAgICBzdXBlcihmb3JtUGFuZWxTZXJ2aWNlLCBfY2RyKTtcbiAgICAgICAgdGhpcy5pZCA9IGdldFVuaXF1ZUlkKDQpO1xuICAgICAgICBsYXlvdXRTZXJ2aWNlLmlkID0gJ3BhbmVsJyArIHRoaXMuaWQ7XG4gICAgICAgIHRoaXMuZm9ybVBhbmVsU2VydmljZS5pc1NlYXJjaFBhbmVsJC5zdWJzY3JpYmUoKGlzU2VhcmNoUGFuZWwpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNTZWFyY2hQYW5lbCA9IGlzU2VhcmNoUGFuZWw7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5mb3JtUGFuZWxTZXJ2aWNlLmZvcm1Db250YWluZXJEb20gPSB0aGlzLnBhcmVudERvbTtcbiAgICAgICAgdGhpcy5tYXhMYWJlbFdpZHRoJCA9IHRoaXMubGF5b3V0U2VydmljZS5tYXhXaWR0aCQ7XG4gICAgICAgIHRoaXMuX2NhbGNXaWR0aCh0aGlzLmNvbmZpZyk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfY2FsY1dpZHRoKGNvbmZpZyk6IHZvaWQge1xuICAgICAgICBjb25maWcuaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgc3dpdGNoIChpdGVtLnh0eXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnTHkuTGF5b3V0Sm9pbic6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2NhbGNXaWR0aChpdGVtKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnTHkuTGF5b3V0Q29udHJvbCc6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3NldExhYmVsV2lkdGgoaXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRMYWJlbFdpZHRoKGl0ZW06IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb250cm9sV2lkdGggPSBnZXRMYWJlbFdpZHRoKGl0ZW0pO1xuICAgICAgICBpZiAoY29udHJvbFdpZHRoKSB7XG4gICAgICAgICAgICB0aGlzLmxheW91dFNlcnZpY2Uuc2V0TWF4V2lkdGgoY29udHJvbFdpZHRoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==