barsa-sap-ui 0.0.6 → 0.0.7

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 (197) hide show
  1. package/esm2020/lib/apply-conditional-formmatings.directive.mjs +1 -1
  2. package/esm2020/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +2 -2
  3. package/esm2020/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +1 -1
  4. package/esm2020/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +4 -4
  5. package/esm2020/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +14 -14
  6. package/esm2020/lib/barsa-network-offline/barsa-network-offline.component.mjs +20 -12
  7. package/esm2020/lib/barsa-sap-ui-routing.module.mjs +1 -1
  8. package/esm2020/lib/barsa-sap-ui.module.mjs +25 -16
  9. package/esm2020/lib/barsa-search-form/barsa-search-form.component.mjs +3 -3
  10. package/esm2020/lib/barsa-table-header/barsa-table-header.component.mjs +4 -4
  11. package/esm2020/lib/barsa-table-row/barsa-table-row.component.mjs +3 -3
  12. package/esm2020/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +6 -6
  13. package/esm2020/lib/barsa-tree-item/barsa-tree-item.component.mjs +23 -12
  14. package/esm2020/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +8 -7
  15. package/esm2020/lib/blob-viewer/blob-viewer.component.mjs +60 -0
  16. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +3 -3
  17. package/esm2020/lib/captcha-field/captcha-field.component.mjs +1 -1
  18. package/esm2020/lib/card-item/card-item.component.mjs +4 -4
  19. package/esm2020/lib/card-view-content/card-view-content.component.mjs +3 -3
  20. package/esm2020/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +3 -3
  21. package/esm2020/lib/column-matrix-renderer/matrix-value.pipe.mjs +1 -1
  22. package/esm2020/lib/column-renderer/column-renderer.component.mjs +6 -5
  23. package/esm2020/lib/constants.mjs +1 -1
  24. package/esm2020/lib/custom-date-time/custom-date-time.component.mjs +1 -1
  25. package/esm2020/lib/device-info-field-base.mjs +1 -1
  26. package/esm2020/lib/download-files.directive.mjs +33 -0
  27. package/esm2020/lib/empty-page/empty-page.component.mjs +3 -3
  28. package/esm2020/lib/file-in-dialog/file-in-dialog.component.mjs +1 -1
  29. package/esm2020/lib/file-viewer/file-viewer.component.mjs +47 -0
  30. package/esm2020/lib/file-viewer-content/file-viewer-content.component.mjs +49 -0
  31. package/esm2020/lib/file-viewer-popover/file-viewer-popover.component.mjs +34 -0
  32. package/esm2020/lib/form-dialog/form-dialog.component.mjs +3 -3
  33. package/esm2020/lib/form-dialog-less/form-dialog-less.component.mjs +1 -1
  34. package/esm2020/lib/form-page/form-page.component.mjs +17 -17
  35. package/esm2020/lib/form-page-base.mjs +1 -1
  36. package/esm2020/lib/form-toolbar-button/form-toolbar-button.component.mjs +3 -3
  37. package/esm2020/lib/form-wizard/form-wizard.component.mjs +3 -3
  38. package/esm2020/lib/fullscreen-dialog.directive.mjs +1 -1
  39. package/esm2020/lib/fullscreen-files.directive.mjs +39 -0
  40. package/esm2020/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +3 -3
  41. package/esm2020/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +1 -1
  42. package/esm2020/lib/global-search/global-search.component.mjs +1 -1
  43. package/esm2020/lib/global-search-module/global-search-module.component.mjs +1 -1
  44. package/esm2020/lib/global-search-panel/global-search-panel.component.mjs +1 -1
  45. package/esm2020/lib/header-avatar/header-avatar.component.mjs +1 -1
  46. package/esm2020/lib/header-facet-form/header-facet-form.component.mjs +1 -1
  47. package/esm2020/lib/header-facet-key-value/header-facet-key-value.component.mjs +1 -1
  48. package/esm2020/lib/header-facet-microchart/header-facet-microchart.component.mjs +3 -3
  49. package/esm2020/lib/header-facet-plain-text/header-facet-plain-text.component.mjs +3 -3
  50. package/esm2020/lib/header-facet-rate/header-facet-rate.component.mjs +1 -1
  51. package/esm2020/lib/hyperlink/hyperlink.component.mjs +1 -1
  52. package/esm2020/lib/index.mjs +18 -3
  53. package/esm2020/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +1 -1
  54. package/esm2020/lib/layout-actions/layout-actions.component.mjs +1 -1
  55. package/esm2020/lib/layout-control/layout-control.component.mjs +4 -4
  56. package/esm2020/lib/layout-wizard/layout-wizard.component.mjs +25 -3
  57. package/esm2020/lib/list-item/list-item.component.mjs +3 -3
  58. package/esm2020/lib/ly-empty-space/ly-empty-space.component.mjs +5 -7
  59. package/esm2020/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +8 -7
  60. package/esm2020/lib/ly-layout-container/ly-layout-container.component.mjs +3 -3
  61. package/esm2020/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +3 -3
  62. package/esm2020/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +1 -1
  63. package/esm2020/lib/ly-layout-panel/ly-layout-panel.component.mjs +9 -3
  64. package/esm2020/lib/ly-line/ly-line.component.mjs +1 -1
  65. package/esm2020/lib/ly-simple-label/ly-simple-label.component.mjs +6 -10
  66. package/esm2020/lib/ly-tab-container/ly-tab-container.component.mjs +7 -3
  67. package/esm2020/lib/ly-tab-page/ly-tab-page.component.mjs +3 -3
  68. package/esm2020/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +8 -7
  69. package/esm2020/lib/mask/mask.component.mjs +3 -3
  70. package/esm2020/lib/message-strip/message-strip.component.mjs +1 -1
  71. package/esm2020/lib/models/grid-data-provider.mjs +2 -2
  72. package/esm2020/lib/models/grid-view.mjs +1 -1
  73. package/esm2020/lib/no-data/no-data.component.mjs +3 -3
  74. package/esm2020/lib/page-with-form-handler-base.mjs +1 -1
  75. package/esm2020/lib/page-with-header/page-with-header.component.mjs +1 -1
  76. package/esm2020/lib/progress-indicator/progress-indicator.component.mjs +1 -1
  77. package/esm2020/lib/report-navigator/report-navigator.component.mjs +3 -3
  78. package/esm2020/lib/report-new-top-form/report-new-top-form.component.mjs +3 -3
  79. package/esm2020/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +3 -3
  80. package/esm2020/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +3 -3
  81. package/esm2020/lib/report-tree-base.mjs +4 -1
  82. package/esm2020/lib/report-view-renderer.directive.mjs +32 -2
  83. package/esm2020/lib/responsive-toolbar/responsive-toolbar.component.mjs +1 -1
  84. package/esm2020/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +1 -1
  85. package/esm2020/lib/rich-text-static/rich-text-static.component.mjs +1 -1
  86. package/esm2020/lib/sap-ui-report-base.component.mjs +87 -64
  87. package/esm2020/lib/search-panel/search-panel.component.mjs +1 -1
  88. package/esm2020/lib/static-text/static-text.component.mjs +3 -3
  89. package/esm2020/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +3 -3
  90. package/esm2020/lib/ui-button/ui-button.component.mjs +3 -3
  91. package/esm2020/lib/ui-calendar/ui-calendar.component.mjs +3 -3
  92. package/esm2020/lib/ui-card-view/ui-card-view.component.mjs +3 -3
  93. package/esm2020/lib/ui-check-box/ui-check-box.component.mjs +3 -3
  94. package/esm2020/lib/ui-color-ui/ui-color-ui.component.mjs +1 -1
  95. package/esm2020/lib/ui-container-with-button/ui-container-with-button.component.mjs +3 -3
  96. package/esm2020/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +3 -3
  97. package/esm2020/lib/ui-date-time/ui-date-time.component.mjs +3 -3
  98. package/esm2020/lib/ui-editable-grid/ui-editable-grid.component.mjs +3 -3
  99. package/esm2020/lib/ui-exception-form/ui-exception-form.component.mjs +1 -1
  100. package/esm2020/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +29 -90
  101. package/esm2020/lib/ui-form-panel/ui-form-panel.component.mjs +3 -3
  102. package/esm2020/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +3 -3
  103. package/esm2020/lib/ui-graph/ui-graph.component.mjs +1 -1
  104. package/esm2020/lib/ui-grid/ui-grid.component.mjs +3 -3
  105. package/esm2020/lib/ui-grid-columns/ui-grid-columns.component.mjs +3 -3
  106. package/esm2020/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +1 -1
  107. package/esm2020/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +1 -1
  108. package/esm2020/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +1 -1
  109. package/esm2020/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +1 -1
  110. package/esm2020/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +1 -1
  111. package/esm2020/lib/ui-label/ui-label.component.mjs +3 -3
  112. package/esm2020/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +2 -2
  113. package/esm2020/lib/ui-list-view/ui-list-view.component.mjs +4 -3
  114. package/esm2020/lib/ui-matrix-view/ui-matrix-view.component.mjs +3 -3
  115. package/esm2020/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +3 -3
  116. package/esm2020/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +1 -1
  117. package/esm2020/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +3 -3
  118. package/esm2020/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +19 -14
  119. package/esm2020/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +3 -3
  120. package/esm2020/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +26 -9
  121. package/esm2020/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +1 -1
  122. package/esm2020/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +3 -3
  123. package/esm2020/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +19 -20
  124. package/esm2020/lib/ui-picture-file/ui-picture-file.component.mjs +26 -30
  125. package/esm2020/lib/ui-pictures-info/ui-pictures-info.component.mjs +39 -31
  126. package/esm2020/lib/ui-radio-group/ui-radio-group.component.mjs +3 -3
  127. package/esm2020/lib/ui-read-only-field/ui-read-only-field.component.mjs +3 -3
  128. package/esm2020/lib/ui-report-container/ui-report-container.component.mjs +3 -3
  129. package/esm2020/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +1 -1
  130. package/esm2020/lib/ui-simple-combo/ui-simple-combo.component.mjs +3 -3
  131. package/esm2020/lib/ui-single-picture/ui-single-picture.component.mjs +1 -1
  132. package/esm2020/lib/ui-switch-button/ui-switch-button.component.mjs +3 -3
  133. package/esm2020/lib/ui-table-view/ui-table-view.component.mjs +8 -3
  134. package/esm2020/lib/ui-text-area/ui-text-area.component.mjs +3 -3
  135. package/esm2020/lib/ui-text-field/ui-text-field.component.mjs +1 -1
  136. package/esm2020/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +3 -3
  137. package/esm2020/lib/ui-time-span/ui-time-span.component.mjs +1 -1
  138. package/esm2020/lib/ui-tinymce/ui-tinymce.component.mjs +1 -1
  139. package/esm2020/lib/ui-tree/ui-tree.component.mjs +26 -3
  140. package/esm2020/lib/ui-tree-view/ui-tree-view.component.mjs +9 -3
  141. package/esm2020/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +2 -2
  142. package/esm2020/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +6 -3
  143. package/esm2020/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +1 -1
  144. package/esm2020/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +7 -2
  145. package/esm2020/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +3 -3
  146. package/esm2020/lib/ul-notify-popup/ul-notify-popup.component.mjs +1 -1
  147. package/esm2020/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +1 -1
  148. package/esm2020/lib/ulv-column-settings/ulv-column-settings.component.mjs +3 -3
  149. package/esm2020/lib/ulv-context-menu/ulv-context-menu.component.mjs +3 -3
  150. package/esm2020/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +3 -3
  151. package/esm2020/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +5 -5
  152. package/esm2020/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +3 -3
  153. package/esm2020/lib/ulv-paging/ulv-paging.component.mjs +1 -1
  154. package/esm2020/lib/ulv-selection/ulv-selection.component.mjs +2 -2
  155. package/esm2020/lib/ulv-settings/ulv-settings.component.mjs +1 -1
  156. package/esm2020/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +3 -3
  157. package/esm2020/lib/ulv-toolbar/ulv-toolbar.component.mjs +11 -5
  158. package/esm2020/lib/wizard-layout.directive.mjs +1 -1
  159. package/esm2020/public-api.mjs +7 -1
  160. package/fesm2015/barsa-sap-ui.mjs +888 -542
  161. package/fesm2015/barsa-sap-ui.mjs.map +1 -1
  162. package/fesm2020/barsa-sap-ui.mjs +879 -541
  163. package/fesm2020/barsa-sap-ui.mjs.map +1 -1
  164. package/lib/barsa-network-offline/barsa-network-offline.component.d.ts +3 -2
  165. package/lib/barsa-sap-ui.module.d.ts +31 -25
  166. package/lib/barsa-tree-item/barsa-tree-item.component.d.ts +7 -1
  167. package/lib/barsa-ulv-main/barsa-ulv-main.component.d.ts +3 -1
  168. package/lib/blob-viewer/blob-viewer.component.d.ts +20 -0
  169. package/lib/download-files.directive.d.ts +9 -0
  170. package/lib/file-viewer/file-viewer.component.d.ts +21 -0
  171. package/lib/file-viewer-content/file-viewer-content.component.d.ts +18 -0
  172. package/lib/file-viewer-popover/file-viewer-popover.component.d.ts +13 -0
  173. package/lib/fullscreen-files.directive.d.ts +15 -0
  174. package/lib/index.d.ts +8 -4
  175. package/lib/layout-control/layout-control.component.d.ts +5 -5
  176. package/lib/layout-wizard/layout-wizard.component.d.ts +1 -0
  177. package/lib/ly-empty-space/ly-empty-space.component.d.ts +1 -3
  178. package/lib/ly-horizontal-layout/ly-horizontal-layout.component.d.ts +4 -3
  179. package/lib/ly-simple-label/ly-simple-label.component.d.ts +1 -3
  180. package/lib/ly-tab-container/ly-tab-container.component.d.ts +3 -1
  181. package/lib/ly-vertical-layout/ly-vertical-layout.component.d.ts +4 -3
  182. package/lib/report-tree-base.d.ts +2 -1
  183. package/lib/report-view-renderer.directive.d.ts +10 -1
  184. package/lib/sap-ui-report-base.component.d.ts +13 -4
  185. package/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.d.ts +15 -18
  186. package/lib/ui-multi-select-combo/ui-multi-select-combo.component.d.ts +9 -3
  187. package/lib/ui-pdf-viewer/ui-pdf-viewer.component.d.ts +5 -6
  188. package/lib/ui-picture-file/ui-picture-file.component.d.ts +4 -6
  189. package/lib/ui-pictures-info/ui-pictures-info.component.d.ts +8 -7
  190. package/lib/ui-table-view/ui-table-view.component.d.ts +1 -0
  191. package/lib/ui-tree/ui-tree.component.d.ts +5 -0
  192. package/lib/ui-tree-view/ui-tree-view.component.d.ts +7 -1
  193. package/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.d.ts +2 -1
  194. package/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.d.ts +2 -1
  195. package/lib/ulv-toolbar/ulv-toolbar.component.d.ts +4 -1
  196. package/package.json +1 -1
  197. package/public-api.d.ts +6 -0
@@ -1,8 +1,8 @@
1
1
  import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
2
- import { BehaviorSubject, Subject, forkJoin } from 'rxjs';
3
- import { filter, finalize, map, mergeMap, takeUntil, tap } from 'rxjs/operators';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { takeUntil } from 'rxjs/operators';
4
4
  import { FileUploaderComponent } from '@fundamental-ngx/core';
5
- import { BarsaApi, getImagePath, getUniqueId, UploadService, FilesValidationHelper, isImage, getIcon, getValidExtension } from 'barsa-novin-ray-core';
5
+ import { UploadService, FilesValidationHelper, getValidExtension, LinearListHelper } from 'barsa-novin-ray-core';
6
6
  import { DeviceInfoFieldBaseComponent } from '../device-info-field-base';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "@angular/common";
@@ -20,7 +20,6 @@ import * as i12 from "../upload-file-status.pipe";
20
20
  export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
21
21
  constructor() {
22
22
  super(...arguments);
23
- this.valueExtra = {};
24
23
  this.validExtension = '';
25
24
  this.loading = false;
26
25
  this._fileCountSource = new BehaviorSubject(0);
@@ -30,18 +29,28 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
30
29
  this.context.on({
31
30
  ShowUploadWindow: this._showUploadWindow.bind(this)
32
31
  });
33
- this.filesValidationHelper = new FilesValidationHelper(this.Setting.MaxFileCount, this.Setting.MaxFileSizeKb, this.Setting.MaxTotalFileSizeKb);
34
- if (this.value) {
35
- this.value.forEach((c) => this._setIconAndImage(c));
36
- }
32
+ this._filesValidationHelper = new FilesValidationHelper(this.Setting.MaxFileCount, this.Setting.MaxFileSizeKb, this.Setting.MaxTotalFileSizeKb);
33
+ this._linearHelper = new LinearListHelper(this._uploadService, this._filesValidationHelper, this.Setting.FieldDefId);
34
+ this.valueExtra$ = this._linearHelper.valueExtra$;
35
+ this._linearHelper.loading$.pipe(takeUntil(this._onDestroy$)).subscribe((loading) => this._setLoading(loading));
36
+ this._linearHelper.delete$.pipe(takeUntil(this._onDestroy$)).subscribe((fileAttachment) => {
37
+ this._deleteFileAttachment(fileAttachment);
38
+ });
39
+ this._linearHelper.newFileUploaded$.pipe(takeUntil(this._onDestroy$)).subscribe((fileAttachment) => {
40
+ this._newFileUploaded(fileAttachment);
41
+ });
42
+ this.value &&
43
+ this.value.forEach((c) => {
44
+ this._linearHelper.init(c);
45
+ });
37
46
  if (!this.Setting.IsMultiSelect) {
38
- this.filesValidationHelper.maxFileCount = 1;
47
+ this._filesValidationHelper.maxFileCount = 1;
39
48
  }
40
- this.maxFileCount = this.filesValidationHelper.maxFileCount;
49
+ this.maxFileCount = this._filesValidationHelper.maxFileCount;
41
50
  this.validExtension = getValidExtension(this.Setting.ValidExtensions);
42
51
  }
43
52
  ngOnDestroy() {
44
- this.valueExtra = {};
53
+ // this.valueExtra = {};
45
54
  this.context.un('ShowUploadWindow', this._showUploadWindow);
46
55
  super.ngOnDestroy();
47
56
  }
@@ -59,14 +68,17 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
59
68
  }
60
69
  onTerminate(fileAttachment) {
61
70
  this.fireContextEvent('CommandRequest', this.context, 'Delete', fileAttachment.Id);
62
- this.valueExtra[fileAttachment.Id].cancelation$?.next();
71
+ this._linearHelper.cancel(fileAttachment);
63
72
  }
64
73
  onFileSelection(files) {
65
- this._uploadToServer(files);
74
+ this._linearHelper.uploadToServer(files);
66
75
  }
67
76
  trackById(file, index) {
68
77
  return file ? file.Id : index;
69
78
  }
79
+ retry(fileAttachment) {
80
+ this._linearHelper.retry(fileAttachment);
81
+ }
70
82
  _setValue(value) {
71
83
  super._setValue(value);
72
84
  this._setFileCount(value);
@@ -74,30 +86,6 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
74
86
  _showUploadWindow() {
75
87
  this.fileUploadComponent.open();
76
88
  }
77
- _getFileValueExtra(fileId) {
78
- const fileValueExtra = this.valueExtra[fileId];
79
- if (!fileValueExtra) {
80
- this.valueExtra[fileId] = {};
81
- }
82
- return this.valueExtra[fileId];
83
- }
84
- _setIconAndImage(fileAttachment) {
85
- const fileType = fileAttachment.Type;
86
- const fileId = fileAttachment.Id;
87
- const fileValueExtra = this._getFileValueExtra(fileId);
88
- if (fileAttachment.IsNew && !fileValueExtra.UploadState) {
89
- fileValueExtra.FileUrl = 'document';
90
- fileValueExtra.IsIcon = true;
91
- }
92
- else if (isImage(fileType)) {
93
- fileValueExtra.FileUrl = getImagePath('ID', '', fileId);
94
- fileValueExtra.IsIcon = false;
95
- }
96
- else {
97
- fileValueExtra.FileUrl = getIcon(fileType);
98
- fileValueExtra.IsIcon = true;
99
- }
100
- }
101
89
  _fileDelete(id) {
102
90
  const fileAttachment = this.value.find((c) => c.Id === id);
103
91
  if (fileAttachment) {
@@ -107,60 +95,11 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
107
95
  _deleteFileAttachment(fileAttachment) {
108
96
  this.fireContextEvent('CommandRequest', this.context, 'Delete', fileAttachment.Id);
109
97
  }
110
- _uploadToServer(selectedFiles) {
111
- this.filesValidationHelper
112
- .validateFiles(selectedFiles)
113
- .pipe(takeUntil(this._onDestroy$), filter((files) => files.length > 0), tap(() => this._setLoading(true)), map((files) => files.map((c) => this._createFileAttachment(c))), mergeMap((files) => forkJoin(files.map((file) => this.uploadFile(file)))), finalize(() => {
114
- this._setLoading(false);
115
- }))
116
- .subscribe();
117
- }
118
98
  _setLoading(loading) {
119
99
  this.loading = loading;
120
100
  this._cdr.markForCheck();
121
101
  }
122
- _createFileAttachment(file) {
123
- const id = getUniqueId(4);
124
- const temp = file.name.split('.');
125
- const ext = temp[temp.length - 1];
126
- const newFileAttachment = {
127
- FileName: file.name,
128
- Id: id,
129
- FileId: id,
130
- IsDeleted: false,
131
- IsNew: true,
132
- Type: ext
133
- };
134
- this._setIconAndImage(newFileAttachment);
135
- const fileValueExtra = this.valueExtra[newFileAttachment.Id];
136
- fileValueExtra.UploadState = 'Ready';
137
- fileValueExtra.binary = file;
138
- fileValueExtra.cancelation$ = new Subject();
139
- return newFileAttachment;
140
- }
141
- uploadFile(fileAttachment) {
142
- const formData = new FormData();
143
- formData.append('unicFileName', 'x' + BarsaApi.Common.Util.GetNewMetaGuid() + ';;;' + fileAttachment.FileName);
144
- formData.append('file', this.valueExtra[fileAttachment.Id].binary);
145
- return this._uploadService.upload(formData, this.Setting.FieldDefId).pipe(tap((res) => {
146
- if (Array.isArray(res)) {
147
- this._updateValue(fileAttachment, res);
148
- }
149
- }));
150
- }
151
- _updateValue(fileAttachment, res) {
152
- this._deleteFileAttachment(fileAttachment);
153
- const id = res[0].FileId;
154
- const newFileAttachment = {
155
- ...fileAttachment,
156
- Id: id,
157
- FileId: id,
158
- FileName: res[0].FileName,
159
- IsDeleted: false
160
- };
161
- const fileValueExtra = this._getFileValueExtra(id);
162
- fileValueExtra.binary = null;
163
- this._setIconAndImage(newFileAttachment);
102
+ _newFileUploaded(newFileAttachment) {
164
103
  this.fireContextEvent('CommandRequest', this.context, 'FileUpload', newFileAttachment);
165
104
  }
166
105
  _setFileCount(value) {
@@ -168,14 +107,14 @@ export class UiFileLinearListBoxComponent extends DeviceInfoFieldBaseComponent {
168
107
  }
169
108
  }
170
109
  UiFileLinearListBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFileLinearListBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
171
- UiFileLinearListBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFileLinearListBoxComponent, selector: "bsu-ui-file-linear-list-box", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"value\">\n <div class=\"token-container\">\n <div class=\"token-wrapper\">\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\n <fd-popover *ngIf=\"!file.IsDeleted\">\n <fd-popover-control>\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\n >{{ file.FileName }}\n <ng-container *ngIf=\"file.IsNew\">\n <span\n *ngIf=\"valueExtra[file.Id].UploadState !== 'Complete'\"\n fd-object-status\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\n [title]=\"valueExtra[file.Id]?.UploadState\"\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\n ></span>\n <fd-object-number\n *ngIf=\"valueExtra[file.Id].Progress\"\n [number]=\"valueExtra[file.Id].Progress || 0\"\n unit=\"%\"\n status=\"informative\"\n ></fd-object-number>\n\n <ng-container *ngIf=\"valueExtra[file.Id].UploadState === 'Uploading'\">\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\n </ng-container>\n </ng-container>\n </fd-token>\n </fd-popover-control>\n <fd-popover-body>\n <ul\n fd-list\n *ngIf=\"\n valueExtra[file.Id].UploadState !== 'Error' ||\n valueExtra[file.Id].UploadState === 'Complete'\n \"\n >\n <li fd-list-item>\n <a fd-list-link (click)=\"onDownloadFile(file)\">\n <i fd-list-icon glyph=\"download\"></i>\n <span fd-list-title>\n {{ 'Download' | bbbTranslate }}\n </span>\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\n </a>\n </li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n </ng-container>\n <div style=\"display: flex\">\n <div style=\"position: relative; width: 3rem\" *ngIf=\"loading\">\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\n </div>\n <fd-file-uploader\n *ngIf=\"value | canUploadFile: maxFileCount:(disable$ | async)!!:(readonly$ | async)!!\"\n class=\"file-linear-upload\"\n fd-toolbar-item\n [id]=\"id\"\n [name]=\"'linear_' + id\"\n [placeholder]=\"'AttachFile' | bbbTranslate\"\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\n [accept]=\"validExtension\"\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\n (selectedFilesChanged)=\"onFileSelection($event)\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n ></fd-file-uploader>\n </div>\n </div>\n </div>\n</ng-container>\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i3.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i4.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i4.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i4.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i4.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "class", "role"] }, { kind: "directive", type: i4.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i5.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i6.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }, { kind: "component", type: i7.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i7.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i7.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "component", type: i9.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly", "deleteButtonLabel", "ariaRoleDescription"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown"] }, { kind: "component", type: i10.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.CanUploadFilePipe, name: "canUploadFile" }, { kind: "pipe", type: i11.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i12.UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
110
+ UiFileLinearListBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFileLinearListBoxComponent, selector: "bsu-ui-file-linear-list-box", inputs: { value: "value" }, providers: [UploadService], viewQueries: [{ propertyName: "fileUploadComponent", first: true, predicate: FileUploaderComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"value\">\r\n <div class=\"token-container\">\r\n <div class=\"token-wrapper\">\r\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\r\n <fd-popover *ngIf=\"!file.IsDeleted\">\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n <ng-container *ngIf=\"file.IsNew\">\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <span\r\n *ngIf=\"valueExtra[file.Id].UploadState !== 'Complete'\"\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n <fd-object-number\r\n *ngIf=\"valueExtra[file.Id].Progress\"\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n <ng-container *ngIf=\"valueExtra[file.Id].UploadState === 'Uploading'\">\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <ul\r\n fd-list\r\n *ngIf=\"\r\n valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete'\r\n \"\r\n >\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </ng-container>\r\n <div style=\"display: flex\">\r\n <div style=\"position: relative; width: 3rem\" *ngIf=\"loading\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n <fd-file-uploader\r\n *ngIf=\"value | canUploadFile: maxFileCount:(disable$ | async)!!:(readonly$ | async)!!\"\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.BusyIndicatorComponent, selector: "fd-busy-indicator", inputs: ["loading", "size", "block", "ariaLabel", "title", "label", "ariaLive"] }, { kind: "component", type: i3.FileUploaderComponent, selector: "fd-file-uploader", inputs: ["disabled", "required", "multiple", "accept", "dragndrop", "maxFileSize", "minFileSize", "id", "ariaLabel", "ariaLabelledBy", "placeholder", "buttonLabel", "buttonAriaLabel", "state", "fileLimit", "inputHidden", "width"], outputs: ["selectedFilesChanged", "selectedInvalidFiles", "onDragEnter", "onDragLeave"] }, { kind: "component", type: i4.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i4.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i4.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i4.ListIconDirective, selector: "[fdListIcon], [fd-list-icon]", inputs: ["glyph", "class", "role"] }, { kind: "directive", type: i4.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i5.ObjectNumberComponent, selector: "fd-object-number", inputs: ["number", "decimal", "unit", "emphasized", "large", "status", "class", "ariaLabelledBy", "ariaLabel"] }, { kind: "component", type: i6.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }, { kind: "component", type: i7.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i7.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i7.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "directive", type: i8.ToolbarItemDirective, selector: "[fd-toolbar-item]" }, { kind: "component", type: i9.TokenComponent, selector: "fd-token", inputs: ["disabled", "selected", "readOnly", "deleteButtonLabel", "ariaRoleDescription"], outputs: ["onCloseClick", "onRemove", "onTokenClick", "onTokenKeydown"] }, { kind: "component", type: i10.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.CanUploadFilePipe, name: "canUploadFile" }, { kind: "pipe", type: i11.BbbTranslatePipe, name: "bbbTranslate" }, { kind: "pipe", type: i12.UploadFileStatusPipe, name: "uploadFileStatus" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
172
111
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFileLinearListBoxComponent, decorators: [{
173
112
  type: Component,
174
- args: [{ selector: 'bsu-ui-file-linear-list-box', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"value\">\n <div class=\"token-container\">\n <div class=\"token-wrapper\">\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\n <fd-popover *ngIf=\"!file.IsDeleted\">\n <fd-popover-control>\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\n >{{ file.FileName }}\n <ng-container *ngIf=\"file.IsNew\">\n <span\n *ngIf=\"valueExtra[file.Id].UploadState !== 'Complete'\"\n fd-object-status\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\n [title]=\"valueExtra[file.Id]?.UploadState\"\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\n ></span>\n <fd-object-number\n *ngIf=\"valueExtra[file.Id].Progress\"\n [number]=\"valueExtra[file.Id].Progress || 0\"\n unit=\"%\"\n status=\"informative\"\n ></fd-object-number>\n\n <ng-container *ngIf=\"valueExtra[file.Id].UploadState === 'Uploading'\">\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\n </ng-container>\n </ng-container>\n </fd-token>\n </fd-popover-control>\n <fd-popover-body>\n <ul\n fd-list\n *ngIf=\"\n valueExtra[file.Id].UploadState !== 'Error' ||\n valueExtra[file.Id].UploadState === 'Complete'\n \"\n >\n <li fd-list-item>\n <a fd-list-link (click)=\"onDownloadFile(file)\">\n <i fd-list-icon glyph=\"download\"></i>\n <span fd-list-title>\n {{ 'Download' | bbbTranslate }}\n </span>\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\n </a>\n </li>\n </ul>\n </fd-popover-body>\n </fd-popover>\n </ng-container>\n <div style=\"display: flex\">\n <div style=\"position: relative; width: 3rem\" *ngIf=\"loading\">\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\n </div>\n <fd-file-uploader\n *ngIf=\"value | canUploadFile: maxFileCount:(disable$ | async)!!:(readonly$ | async)!!\"\n class=\"file-linear-upload\"\n fd-toolbar-item\n [id]=\"id\"\n [name]=\"'linear_' + id\"\n [placeholder]=\"'AttachFile' | bbbTranslate\"\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\n [accept]=\"validExtension\"\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\n (selectedFilesChanged)=\"onFileSelection($event)\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n ></fd-file-uploader>\n </div>\n </div>\n </div>\n</ng-container>\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"] }]
113
+ args: [{ selector: 'bsu-ui-file-linear-list-box', providers: [UploadService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"value\">\r\n <div class=\"token-container\">\r\n <div class=\"token-wrapper\">\r\n <ng-container *ngFor=\"let file of value; trackBy: trackById\">\r\n <fd-popover *ngIf=\"!file.IsDeleted\">\r\n <fd-popover-control>\r\n <fd-token (onCloseClick)=\"onFileDeleted(file.Id)\" [readOnly]=\"(disableOrReadonly$ | async)!!\"\r\n >{{ file.FileName }}\r\n <ng-container *ngIf=\"file.IsNew\">\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <span\r\n *ngIf=\"valueExtra[file.Id].UploadState !== 'Complete'\"\r\n fd-object-status\r\n [status]=\"file.Id | uploadFileStatus: valueExtra\"\r\n [label]=\"valueExtra[file.Id]?.UploadState || ''\"\r\n [title]=\"valueExtra[file.Id]?.UploadState\"\r\n [aria-label]=\"'File Upload Status Is ' + valueExtra[file.Id]?.UploadState\"\r\n ></span>\r\n <fd-object-number\r\n *ngIf=\"valueExtra[file.Id].Progress\"\r\n [number]=\"valueExtra[file.Id].Progress || 0\"\r\n unit=\"%\"\r\n status=\"informative\"\r\n ></fd-object-number>\r\n <ng-container *ngIf=\"valueExtra[file.Id].UploadState === 'Uploading'\">\r\n <fd-busy-indicator [loading]=\"true\" [size]=\"'s'\"></fd-busy-indicator>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </fd-token>\r\n </fd-popover-control>\r\n <fd-popover-body>\r\n <ng-container *ngIf=\"valueExtra$ | async as valueExtra\">\r\n <ul\r\n fd-list\r\n *ngIf=\"\r\n valueExtra[file.Id].UploadState !== 'Error' ||\r\n valueExtra[file.Id].UploadState === 'Complete'\r\n \"\r\n >\r\n <li fd-list-item>\r\n <a fd-list-link (click)=\"onDownloadFile(file)\">\r\n <i fd-list-icon glyph=\"download\"></i>\r\n <span fd-list-title>\r\n {{ 'Download' | bbbTranslate }}\r\n </span>\r\n <fd-busy-indicator [loading]=\"fileDownloading\" [size]=\"'s'\"></fd-busy-indicator>\r\n </a>\r\n </li>\r\n </ul>\r\n </ng-container>\r\n </fd-popover-body>\r\n </fd-popover>\r\n </ng-container>\r\n <div style=\"display: flex\">\r\n <div style=\"position: relative; width: 3rem\" *ngIf=\"loading\">\r\n <bsu-mask [size]=\"'s'\" style=\"background: transparent\"></bsu-mask>\r\n </div>\r\n <fd-file-uploader\r\n *ngIf=\"value | canUploadFile: maxFileCount:(disable$ | async)!!:(readonly$ | async)!!\"\r\n class=\"file-linear-upload\"\r\n fd-toolbar-item\r\n [id]=\"id\"\r\n [name]=\"'linear_' + id\"\r\n [placeholder]=\"'AttachFile' | bbbTranslate\"\r\n [buttonLabel]=\"'AttachFile' | bbbTranslate\"\r\n [buttonAriaLabel]=\"'AttachFile' | bbbTranslate\"\r\n [accept]=\"validExtension\"\r\n [multiple]=\"maxFileCount > 1 || Setting.IsMultiSelect\"\r\n (selectedFilesChanged)=\"onFileSelection($event)\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n ></fd-file-uploader>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:block;width:100%;height:100%}:host ::ng-deep .fd-slider__handle{display:none}:host ::ng-deep .fd-file-uploader input{display:none}.token-container{background:transparent;padding:3px;display:flex}.token-wrapper{align-items:center;flex-grow:1;display:flex;flex-wrap:wrap}.token-wrapper fd-token,.token-wrapper .file-linear-upload{padding:4px}\n"] }]
175
114
  }], propDecorators: { fileUploadComponent: [{
176
115
  type: ViewChild,
177
116
  args: [FileUploaderComponent, { static: false }]
178
117
  }], value: [{
179
118
  type: Input
180
119
  }] } });
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakYsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFDSCxRQUFRLEVBQ1IsWUFBWSxFQUNaLFdBQVcsRUFDWCxhQUFhLEVBQ2IscUJBQXFCLEVBRXJCLE9BQU8sRUFDUCxPQUFPLEVBQ1AsaUJBQWlCLEVBQ3BCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBZ0J6RSxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsNEJBQTRCO0lBUDlFOztRQVlJLGVBQVUsR0FBdUMsRUFBRSxDQUFDO1FBR3BELG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBR3BCLFlBQU8sR0FBRyxLQUFLLENBQUM7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QUFFLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDUyxhQUFhLENBQUMsS0FBSztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pFLENBQUM7O3lIQTdLUSw0QkFBNEI7NkdBQTVCLDRCQUE0QixrRkFIMUIsQ0FBQyxhQUFhLENBQUMsK0VBSWYscUJBQXFCLHVFQ2pDcEMsNi9IQXlFQTsyRkR6Q2EsNEJBQTRCO2tCQVB4QyxTQUFTOytCQUNJLDZCQUE2QixhQUc1QixDQUFDLGFBQWEsQ0FBQyxtQkFDVCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUdNLG1CQUFtQjtzQkFBdkUsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQzFDLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIGZvcmtKb2luIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpbmFsaXplLCBtYXAsIG1lcmdlTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBGaWxlVXBsb2FkZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQge1xuICAgIEJhcnNhQXBpLFxuICAgIGdldEltYWdlUGF0aCxcbiAgICBnZXRVbmlxdWVJZCxcbiAgICBVcGxvYWRTZXJ2aWNlLFxuICAgIEZpbGVzVmFsaWRhdGlvbkhlbHBlcixcbiAgICBGaWxlQXR0YWNobWVudEluZm8sXG4gICAgaXNJbWFnZSxcbiAgICBnZXRJY29uLFxuICAgIGdldFZhbGlkRXh0ZW5zaW9uXG59IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IERldmljZUluZm9GaWVsZEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9kZXZpY2UtaW5mby1maWVsZC1iYXNlJztcbmludGVyZmFjZSBVcGxvYWRGaWxlUHJvcHMge1xuICAgIEZpbGVVcmw/OiBzdHJpbmc7XG4gICAgY2FuY2VsYXRpb24kPzogU3ViamVjdDx2b2lkPjtcbiAgICBiaW5hcnk/OiBhbnk7XG4gICAgVXBsb2FkU3RhdGU/OiBzdHJpbmc7XG4gICAgUHJvZ3Jlc3M/OiBudW1iZXI7XG4gICAgSXNJY29uPzogYm9vbGVhbjtcbn1cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVpLWZpbGUtbGluZWFyLWxpc3QtYm94JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbVXBsb2FkU2VydmljZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWlGaWxlTGluZWFyTGlzdEJveENvbXBvbmVudCBleHRlbmRzIERldmljZUluZm9GaWVsZEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQFZpZXdDaGlsZChGaWxlVXBsb2FkZXJDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBmaWxlVXBsb2FkQ29tcG9uZW50OiBGaWxlVXBsb2FkZXJDb21wb25lbnQ7XG4gICAgQElucHV0KCkgdmFsdWU6IEZpbGVBdHRhY2htZW50SW5mb1tdO1xuICAgIGZpbGVDb3VudCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICAgIHZhbHVlRXh0cmE6IHsgW2tleTogc3RyaW5nXTogVXBsb2FkRmlsZVByb3BzIH0gPSB7fTtcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xuICAgIGZpbGVEb3dubG9hZGluZzogYm9vbGVhbjtcbiAgICB2YWxpZEV4dGVuc2lvbiA9ICcnO1xuICAgIGZpbGVzVmFsaWRhdGlvbkhlbHBlcjogRmlsZXNWYWxpZGF0aW9uSGVscGVyO1xuICAgIG1heEZpbGVDb3VudDogbnVtYmVyO1xuICAgIGxvYWRpbmcgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9maWxlQ291bnRTb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCk7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5jb250ZXh0Lm9uKHtcbiAgICAgICAgICAgIFNob3dVcGxvYWRXaW5kb3c6IHRoaXMuX3Nob3dVcGxvYWRXaW5kb3cuYmluZCh0aGlzKVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5maWxlc1ZhbGlkYXRpb25IZWxwZXIgPSBuZXcgRmlsZXNWYWxpZGF0aW9uSGVscGVyKFxuICAgICAgICAgICAgdGhpcy5TZXR0aW5nLk1heEZpbGVDb3VudCxcbiAgICAgICAgICAgIHRoaXMuU2V0dGluZy5NYXhGaWxlU2l6ZUtiLFxuICAgICAgICAgICAgdGhpcy5TZXR0aW5nLk1heFRvdGFsRmlsZVNpemVLYlxuICAgICAgICApO1xuXG4gICAgICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlLmZvckVhY2goKGMpID0+IHRoaXMuX3NldEljb25BbmRJbWFnZShjKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMuU2V0dGluZy5Jc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVzVmFsaWRhdGlvbkhlbHBlci5tYXhGaWxlQ291bnQgPSAxO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubWF4RmlsZUNvdW50ID0gdGhpcy5maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50O1xuICAgICAgICB0aGlzLnZhbGlkRXh0ZW5zaW9uID0gZ2V0VmFsaWRFeHRlbnNpb24odGhpcy5TZXR0aW5nLlZhbGlkRXh0ZW5zaW9ucyk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWVFeHRyYSA9IHt9O1xuICAgICAgICB0aGlzLmNvbnRleHQudW4oJ1Nob3dVcGxvYWRXaW5kb3cnLCB0aGlzLl9zaG93VXBsb2FkV2luZG93KTtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBvbkRvd25sb2FkRmlsZShmaWxlOiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFmaWxlLklzTmV3IHx8IGZpbGUuVXBsb2FkU3RhdGUgPT09ICdDb21wbGV0ZScgfHwgIWZpbGUuVXBsb2FkU3RhdGUpIHtcbiAgICAgICAgICAgIHRoaXMuZmlyZUNvbnRleHRFdmVudCgnQ29tbWFuZFJlcXVlc3QnLCB0aGlzLmNvbnRleHQsICdEb3dubG9hZCcsIGZpbGUuSWQpO1xuICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH0sIDUwMCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgb25GaWxlRGVsZXRlZChmaWxlSWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZmlsZURlbGV0ZShmaWxlSWQpO1xuICAgIH1cblxuICAgIG9uVGVybWluYXRlKGZpbGVBdHRhY2htZW50OiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0RlbGV0ZScsIGZpbGVBdHRhY2htZW50LklkKTtcbiAgICAgICAgdGhpcy52YWx1ZUV4dHJhW2ZpbGVBdHRhY2htZW50LklkXS5jYW5jZWxhdGlvbiQ/Lm5leHQoKTtcbiAgICB9XG4gICAgb25GaWxlU2VsZWN0aW9uKGZpbGVzOiBGaWxlW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdXBsb2FkVG9TZXJ2ZXIoZmlsZXMpO1xuICAgIH1cbiAgICB0cmFja0J5SWQoZmlsZSwgaW5kZXgpOiBzdHJpbmcgfCBudW1iZXIge1xuICAgICAgICByZXR1cm4gZmlsZSA/IGZpbGUuSWQgOiBpbmRleDtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHN1cGVyLl9zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuX3NldEZpbGVDb3VudCh2YWx1ZSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfc2hvd1VwbG9hZFdpbmRvdygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWxlVXBsb2FkQ29tcG9uZW50Lm9wZW4oKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9nZXRGaWxlVmFsdWVFeHRyYShmaWxlSWQpOiBVcGxvYWRGaWxlUHJvcHMge1xuICAgICAgICBjb25zdCBmaWxlVmFsdWVFeHRyYSA9IHRoaXMudmFsdWVFeHRyYVtmaWxlSWRdO1xuICAgICAgICBpZiAoIWZpbGVWYWx1ZUV4dHJhKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlRXh0cmFbZmlsZUlkXSA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlRXh0cmFbZmlsZUlkXSBhcyBVcGxvYWRGaWxlUHJvcHM7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfc2V0SWNvbkFuZEltYWdlKGZpbGVBdHRhY2htZW50OiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmlsZVR5cGUgPSBmaWxlQXR0YWNobWVudC5UeXBlO1xuICAgICAgICBjb25zdCBmaWxlSWQgPSBmaWxlQXR0YWNobWVudC5JZDtcbiAgICAgICAgY29uc3QgZmlsZVZhbHVlRXh0cmEgPSB0aGlzLl9nZXRGaWxlVmFsdWVFeHRyYShmaWxlSWQpO1xuICAgICAgICBpZiAoZmlsZUF0dGFjaG1lbnQuSXNOZXcgJiYgIWZpbGVWYWx1ZUV4dHJhLlVwbG9hZFN0YXRlKSB7XG4gICAgICAgICAgICBmaWxlVmFsdWVFeHRyYS5GaWxlVXJsID0gJ2RvY3VtZW50JztcbiAgICAgICAgICAgIGZpbGVWYWx1ZUV4dHJhLklzSWNvbiA9IHRydWU7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNJbWFnZShmaWxlVHlwZSkpIHtcbiAgICAgICAgICAgIGZpbGVWYWx1ZUV4dHJhLkZpbGVVcmwgPSBnZXRJbWFnZVBhdGgoJ0lEJywgJycsIGZpbGVJZCk7XG4gICAgICAgICAgICBmaWxlVmFsdWVFeHRyYS5Jc0ljb24gPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpbGVWYWx1ZUV4dHJhLkZpbGVVcmwgPSBnZXRJY29uKGZpbGVUeXBlKTtcbiAgICAgICAgICAgIGZpbGVWYWx1ZUV4dHJhLklzSWNvbiA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2ZpbGVEZWxldGUoaWQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmlsZUF0dGFjaG1lbnQgPSB0aGlzLnZhbHVlLmZpbmQoKGMpID0+IGMuSWQgPT09IGlkKTtcbiAgICAgICAgaWYgKGZpbGVBdHRhY2htZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHJvdGVjdGVkIF9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlyZUNvbnRleHRFdmVudCgnQ29tbWFuZFJlcXVlc3QnLCB0aGlzLmNvbnRleHQsICdEZWxldGUnLCBmaWxlQXR0YWNobWVudC5JZCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF91cGxvYWRUb1NlcnZlcihzZWxlY3RlZEZpbGVzOiBGaWxlW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWxlc1ZhbGlkYXRpb25IZWxwZXJcbiAgICAgICAgICAgIC52YWxpZGF0ZUZpbGVzKHNlbGVjdGVkRmlsZXMpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksXG4gICAgICAgICAgICAgICAgZmlsdGVyKChmaWxlcykgPT4gZmlsZXMubGVuZ3RoID4gMCksXG4gICAgICAgICAgICAgICAgdGFwKCgpID0+IHRoaXMuX3NldExvYWRpbmcodHJ1ZSkpLFxuICAgICAgICAgICAgICAgIG1hcCgoZmlsZXM6IEZpbGVbXSkgPT4gZmlsZXMubWFwKChjKSA9PiB0aGlzLl9jcmVhdGVGaWxlQXR0YWNobWVudChjKSkpLFxuICAgICAgICAgICAgICAgIG1lcmdlTWFwKChmaWxlczogRmlsZUF0dGFjaG1lbnRJbmZvW10pID0+IGZvcmtKb2luKGZpbGVzLm1hcCgoZmlsZSkgPT4gdGhpcy51cGxvYWRGaWxlKGZpbGUpKSkpLFxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gbG9hZGluZztcbiAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX2NyZWF0ZUZpbGVBdHRhY2htZW50KGZpbGU6IEZpbGUpOiBhbnkge1xuICAgICAgICBjb25zdCBpZDogc3RyaW5nID0gZ2V0VW5pcXVlSWQoNCk7XG4gICAgICAgIGNvbnN0IHRlbXA6IHN0cmluZ1tdID0gZmlsZS5uYW1lLnNwbGl0KCcuJyk7XG4gICAgICAgIGNvbnN0IGV4dCA9IHRlbXBbdGVtcC5sZW5ndGggLSAxXTtcbiAgICAgICAgY29uc3QgbmV3RmlsZUF0dGFjaG1lbnQgPSB7XG4gICAgICAgICAgICBGaWxlTmFtZTogZmlsZS5uYW1lLFxuICAgICAgICAgICAgSWQ6IGlkLFxuICAgICAgICAgICAgRmlsZUlkOiBpZCxcbiAgICAgICAgICAgIElzRGVsZXRlZDogZmFsc2UsXG4gICAgICAgICAgICBJc05ldzogdHJ1ZSxcbiAgICAgICAgICAgIFR5cGU6IGV4dFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLl9zZXRJY29uQW5kSW1hZ2UobmV3RmlsZUF0dGFjaG1lbnQpO1xuICAgICAgICBjb25zdCBmaWxlVmFsdWVFeHRyYSA9IHRoaXMudmFsdWVFeHRyYVtuZXdGaWxlQXR0YWNobWVudC5JZF07XG4gICAgICAgIGZpbGVWYWx1ZUV4dHJhLlVwbG9hZFN0YXRlID0gJ1JlYWR5JztcbiAgICAgICAgZmlsZVZhbHVlRXh0cmEuYmluYXJ5ID0gZmlsZTtcbiAgICAgICAgZmlsZVZhbHVlRXh0cmEuY2FuY2VsYXRpb24kID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICAgICAgcmV0dXJuIG5ld0ZpbGVBdHRhY2htZW50O1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgdXBsb2FkRmlsZShmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKCd1bmljRmlsZU5hbWUnLCAneCcgKyBCYXJzYUFwaS5Db21tb24uVXRpbC5HZXROZXdNZXRhR3VpZCgpICsgJzs7OycgKyBmaWxlQXR0YWNobWVudC5GaWxlTmFtZSk7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIHRoaXMudmFsdWVFeHRyYVtmaWxlQXR0YWNobWVudC5JZF0uYmluYXJ5KTtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VwbG9hZFNlcnZpY2UudXBsb2FkKGZvcm1EYXRhLCB0aGlzLlNldHRpbmcuRmllbGREZWZJZCkucGlwZShcbiAgICAgICAgICAgIHRhcCgocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVWYWx1ZShmaWxlQXR0YWNobWVudCwgcmVzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBfdXBkYXRlVmFsdWUoZmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbywgcmVzOiBhbnlbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudCk7XG4gICAgICAgIGNvbnN0IGlkID0gcmVzWzBdLkZpbGVJZDtcbiAgICAgICAgY29uc3QgbmV3RmlsZUF0dGFjaG1lbnQgPSB7XG4gICAgICAgICAgICAuLi5maWxlQXR0YWNobWVudCxcbiAgICAgICAgICAgIElkOiBpZCxcbiAgICAgICAgICAgIEZpbGVJZDogaWQsXG4gICAgICAgICAgICBGaWxlTmFtZTogcmVzWzBdLkZpbGVOYW1lLFxuICAgICAgICAgICAgSXNEZWxldGVkOiBmYWxzZVxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBmaWxlVmFsdWVFeHRyYSA9IHRoaXMuX2dldEZpbGVWYWx1ZUV4dHJhKGlkKTtcbiAgICAgICAgZmlsZVZhbHVlRXh0cmEuYmluYXJ5ID0gbnVsbDtcbiAgICAgICAgdGhpcy5fc2V0SWNvbkFuZEltYWdlKG5ld0ZpbGVBdHRhY2htZW50KTtcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0ZpbGVVcGxvYWQnLCBuZXdGaWxlQXR0YWNobWVudCk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfc2V0RmlsZUNvdW50KHZhbHVlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZpbGVDb3VudFNvdXJjZS5uZXh0KHZhbHVlLmZpbHRlcigoYykgPT4gIWMuSXNEZWxldGVkKS5sZW5ndGgpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0b2tlbi1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRva2VuLXdyYXBwZXJcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpbGUgb2YgdmFsdWU7IHRyYWNrQnk6IHRyYWNrQnlJZFwiPlxuICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyICpuZ0lmPVwiIWZpbGUuSXNEZWxldGVkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtdG9rZW4gKG9uQ2xvc2VDbGljayk9XCJvbkZpbGVEZWxldGVkKGZpbGUuSWQpXCIgW3JlYWRPbmx5XT1cIihkaXNhYmxlT3JSZWFkb25seSQgfCBhc3luYykhIVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPnt7IGZpbGUuRmlsZU5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmlsZS5Jc05ld1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlICE9PSAnQ29tcGxldGUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLW9iamVjdC1zdGF0dXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdGF0dXNdPVwiZmlsZS5JZCB8IHVwbG9hZEZpbGVTdGF0dXM6IHZhbHVlRXh0cmFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInZhbHVlRXh0cmFbZmlsZS5JZF0/LlVwbG9hZFN0YXRlIHx8ICcnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdPy5VcGxvYWRTdGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXJpYS1sYWJlbF09XCInRmlsZSBVcGxvYWQgU3RhdHVzIElzICcgKyB2YWx1ZUV4dHJhW2ZpbGUuSWRdPy5VcGxvYWRTdGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1vYmplY3QtbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInZhbHVlRXh0cmFbZmlsZS5JZF0uUHJvZ3Jlc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW251bWJlcl09XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlByb2dyZXNzIHx8IDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdD1cIiVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzPVwiaW5mb3JtYXRpdmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9mZC1vYmplY3QtbnVtYmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlID09PSAnVXBsb2FkaW5nJ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWJ1c3ktaW5kaWNhdG9yIFtsb2FkaW5nXT1cInRydWVcIiBbc2l6ZV09XCIncydcIj48L2ZkLWJ1c3ktaW5kaWNhdG9yPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtdG9rZW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1ib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtbGlzdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlRXh0cmFbZmlsZS5JZF0uVXBsb2FkU3RhdGUgIT09ICdFcnJvcicgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVFeHRyYVtmaWxlLklkXS5VcGxvYWRTdGF0ZSA9PT0gJ0NvbXBsZXRlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGZkLWxpc3QtaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZmQtbGlzdC1saW5rIChjbGljayk9XCJvbkRvd25sb2FkRmlsZShmaWxlKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgZmQtbGlzdC1pY29uIGdseXBoPVwiZG93bmxvYWRcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1saXN0LXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdEb3dubG9hZCcgfCBiYmJUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1idXN5LWluZGljYXRvciBbbG9hZGluZ109XCJmaWxlRG93bmxvYWRpbmdcIiBbc2l6ZV09XCIncydcIj48L2ZkLWJ1c3ktaW5kaWNhdG9yPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1ib2R5PlxuICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXhcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogM3JlbVwiICpuZ0lmPVwibG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICA8YnN1LW1hc2sgW3NpemVdPVwiJ3MnXCIgc3R5bGU9XCJiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudFwiPjwvYnN1LW1hc2s+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGZkLWZpbGUtdXBsb2FkZXJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ2YWx1ZSB8IGNhblVwbG9hZEZpbGU6IG1heEZpbGVDb3VudDooZGlzYWJsZSQgfCBhc3luYykhIToocmVhZG9ubHkkIHwgYXN5bmMpISFcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZpbGUtbGluZWFyLXVwbG9hZFwiXG4gICAgICAgICAgICAgICAgICAgIGZkLXRvb2xiYXItaXRlbVxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICAgICAgICAgICAgICBbbmFtZV09XCInbGluZWFyXycgKyBpZFwiXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQXR0YWNoRmlsZScgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbYnV0dG9uTGFiZWxdPVwiJ0F0dGFjaEZpbGUnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgW2J1dHRvbkFyaWFMYWJlbF09XCInQXR0YWNoRmlsZScgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbYWNjZXB0XT1cInZhbGlkRXh0ZW5zaW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW211bHRpcGxlXT1cIm1heEZpbGVDb3VudCA+IDEgfHwgU2V0dGluZy5Jc011bHRpU2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbGVjdGVkRmlsZXNDaGFuZ2VkKT1cIm9uRmlsZVNlbGVjdGlvbigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIihjb250ZW50RGVuc2l0eSQgfCBhc3luYykhIVwiXG4gICAgICAgICAgICAgICAgPjwvZmQtZmlsZS11cGxvYWRlcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZmlsZS1saW5lYXItbGlzdC1ib3gvdWktZmlsZS1saW5lYXItbGlzdC1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZUFBZSxFQUF1QixNQUFNLE1BQU0sQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlFLE9BQU8sRUFDSCxhQUFhLEVBQ2IscUJBQXFCLEVBRXJCLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFTekUsTUFBTSxPQUFPLDRCQUE2QixTQUFRLDRCQUE0QjtJQVA5RTs7UUFlSSxtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUVwQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBR1IscUJBQWdCLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUM7S0E4RjdEO0lBNUZHLFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFD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QztJQUNMLENBQUM7SUFDUyxxQkFBcUIsQ0FBQyxjQUFrQztRQUM5RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFUyxXQUFXLENBQUMsT0FBZ0I7UUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBQ1MsZ0JBQWdCLENBQUMsaUJBQXFDO1FBQzVELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDUyxhQUFhLENBQUMsS0FBSztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pFLENBQUM7O3lIQTFHUSw0QkFBNEI7NkdBQTVCLDRCQUE0QixrRkFIMUIsQ0FBQyxhQUFhLENBQUMsK0VBSWYscUJBQXFCLHVFQ3RCcEMscWlKQTRFQTsyRkR2RGEsNEJBQTRCO2tCQVB4QyxTQUFTOytCQUNJLDZCQUE2QixhQUc1QixDQUFDLGFBQWEsQ0FBQyxtQkFDVCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUdNLG1CQUFtQjtzQkFBdkUsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQzFDLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBGaWxlVXBsb2FkZXJDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICAgIFVwbG9hZFNlcnZpY2UsXHJcbiAgICBGaWxlc1ZhbGlkYXRpb25IZWxwZXIsXHJcbiAgICBGaWxlQXR0YWNobWVudEluZm8sXHJcbiAgICBnZXRWYWxpZEV4dGVuc2lvbixcclxuICAgIExpbmVhckxpc3RIZWxwZXJcclxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IERldmljZUluZm9GaWVsZEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9kZXZpY2UtaW5mby1maWVsZC1iYXNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktZmlsZS1saW5lYXItbGlzdC1ib3gnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLWZpbGUtbGluZWFyLWxpc3QtYm94LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBwcm92aWRlcnM6IFtVcGxvYWRTZXJ2aWNlXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaUZpbGVMaW5lYXJMaXN0Qm94Q29tcG9uZW50IGV4dGVuZHMgRGV2aWNlSW5mb0ZpZWxkQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIEBWaWV3Q2hpbGQoRmlsZVVwbG9hZGVyQ29tcG9uZW50LCB7IHN0YXRpYzogZmFsc2UgfSkgZmlsZVVwbG9hZENvbXBvbmVudDogRmlsZVVwbG9hZGVyQ29tcG9uZW50O1xyXG4gICAgQElucHV0KCkgdmFsdWU6IEZpbGVBdHRhY2htZW50SW5mb1tdO1xyXG4gICAgZmlsZUNvdW50JDogT2JzZXJ2YWJsZTxudW1iZXI+O1xyXG5cclxuICAgIHZhbHVlRXh0cmEkOiBPYnNlcnZhYmxlPHsgW2tleTogc3RyaW5nXTogVXBsb2FkRmlsZVByb3BzIH0+O1xyXG4gICAgY29udGVudERlbnNpdHkkOiBPYnNlcnZhYmxlPENvbnRlbnREZW5zaXR5PjtcclxuICAgIGZpbGVEb3dubG9hZGluZzogYm9vbGVhbjtcclxuICAgIHZhbGlkRXh0ZW5zaW9uID0gJyc7XHJcbiAgICBtYXhGaWxlQ291bnQ6IG51bWJlcjtcclxuICAgIGxvYWRpbmcgPSBmYWxzZTtcclxuICAgIHByb3RlY3RlZCBfbGluZWFySGVscGVyOiBMaW5lYXJMaXN0SGVscGVyO1xyXG4gICAgcHJvdGVjdGVkIF9maWxlc1ZhbGlkYXRpb25IZWxwZXI6IEZpbGVzVmFsaWRhdGlvbkhlbHBlcjtcclxuICAgIHByaXZhdGUgX2ZpbGVDb3VudFNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIHRoaXMuY29udGV4dC5vbih7XHJcbiAgICAgICAgICAgIFNob3dVcGxvYWRXaW5kb3c6IHRoaXMuX3Nob3dVcGxvYWRXaW5kb3cuYmluZCh0aGlzKVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2ZpbGVzVmFsaWRhdGlvbkhlbHBlciA9IG5ldyBGaWxlc1ZhbGlkYXRpb25IZWxwZXIoXHJcbiAgICAgICAgICAgIHRoaXMuU2V0dGluZy5NYXhGaWxlQ291bnQsXHJcbiAgICAgICAgICAgIHRoaXMuU2V0dGluZy5NYXhGaWxlU2l6ZUtiLFxyXG4gICAgICAgICAgICB0aGlzLlNldHRpbmcuTWF4VG90YWxGaWxlU2l6ZUtiXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIgPSBuZXcgTGluZWFyTGlzdEhlbHBlcihcclxuICAgICAgICAgICAgdGhpcy5fdXBsb2FkU2VydmljZSxcclxuICAgICAgICAgICAgdGhpcy5fZmlsZXNWYWxpZGF0aW9uSGVscGVyLFxyXG4gICAgICAgICAgICB0aGlzLlNldHRpbmcuRmllbGREZWZJZFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy52YWx1ZUV4dHJhJCA9IHRoaXMuX2xpbmVhckhlbHBlci52YWx1ZUV4dHJhJDtcclxuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIubG9hZGluZyQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgobG9hZGluZykgPT4gdGhpcy5fc2V0TG9hZGluZyhsb2FkaW5nKSk7XHJcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLmRlbGV0ZSQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZmlsZUF0dGFjaG1lbnQpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fZGVsZXRlRmlsZUF0dGFjaG1lbnQoZmlsZUF0dGFjaG1lbnQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2xpbmVhckhlbHBlci5uZXdGaWxlVXBsb2FkZWQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGZpbGVBdHRhY2htZW50KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX25ld0ZpbGVVcGxvYWRlZChmaWxlQXR0YWNobWVudCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy52YWx1ZSAmJlxyXG4gICAgICAgICAgICB0aGlzLnZhbHVlLmZvckVhY2goKGMpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2xpbmVhckhlbHBlci5pbml0KGMpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLlNldHRpbmcuSXNNdWx0aVNlbGVjdCkge1xyXG4gICAgICAgICAgICB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50ID0gMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5tYXhGaWxlQ291bnQgPSB0aGlzLl9maWxlc1ZhbGlkYXRpb25IZWxwZXIubWF4RmlsZUNvdW50O1xyXG4gICAgICAgIHRoaXMudmFsaWRFeHRlbnNpb24gPSBnZXRWYWxpZEV4dGVuc2lvbih0aGlzLlNldHRpbmcuVmFsaWRFeHRlbnNpb25zKTtcclxuICAgIH1cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIHRoaXMudmFsdWVFeHRyYSA9IHt9O1xyXG4gICAgICAgIHRoaXMuY29udGV4dC51bignU2hvd1VwbG9hZFdpbmRvdycsIHRoaXMuX3Nob3dVcGxvYWRXaW5kb3cpO1xyXG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB9XHJcbiAgICBvbkRvd25sb2FkRmlsZShmaWxlOiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcclxuICAgICAgICBpZiAoIWZpbGUuSXNOZXcgfHwgZmlsZS5VcGxvYWRTdGF0ZSA9PT0gJ0NvbXBsZXRlJyB8fCAhZmlsZS5VcGxvYWRTdGF0ZSkge1xyXG4gICAgICAgICAgICB0aGlzLmZpcmVDb250ZXh0RXZlbnQoJ0NvbW1hbmRSZXF1ZXN0JywgdGhpcy5jb250ZXh0LCAnRG93bmxvYWQnLCBmaWxlLklkKTtcclxuICAgICAgICAgICAgdGhpcy5maWxlRG93bmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmlsZURvd25sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb25GaWxlRGVsZXRlZChmaWxlSWQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9maWxlRGVsZXRlKGZpbGVJZCk7XHJcbiAgICB9XHJcbiAgICBvblRlcm1pbmF0ZShmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0RlbGV0ZScsIGZpbGVBdHRhY2htZW50LklkKTtcclxuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIuY2FuY2VsKGZpbGVBdHRhY2htZW50KTtcclxuICAgIH1cclxuICAgIG9uRmlsZVNlbGVjdGlvbihmaWxlczogRmlsZVtdKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fbGluZWFySGVscGVyLnVwbG9hZFRvU2VydmVyKGZpbGVzKTtcclxuICAgIH1cclxuXHJcbiAgICB0cmFja0J5SWQoZmlsZSwgaW5kZXgpOiBzdHJpbmcgfCBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiBmaWxlID8gZmlsZS5JZCA6IGluZGV4O1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIHJldHJ5KGZpbGVBdHRhY2htZW50OiBGaWxlQXR0YWNobWVudEluZm8pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9saW5lYXJIZWxwZXIucmV0cnkoZmlsZUF0dGFjaG1lbnQpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9zZXRWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIuX3NldFZhbHVlKHZhbHVlKTtcclxuICAgICAgICB0aGlzLl9zZXRGaWxlQ291bnQodmFsdWUpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9zaG93VXBsb2FkV2luZG93KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZmlsZVVwbG9hZENvbXBvbmVudC5vcGVuKCk7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgX2ZpbGVEZWxldGUoaWQpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmaWxlQXR0YWNobWVudCA9IHRoaXMudmFsdWUuZmluZCgoYykgPT4gYy5JZCA9PT0gaWQpO1xyXG4gICAgICAgIGlmIChmaWxlQXR0YWNobWVudCkge1xyXG4gICAgICAgICAgICB0aGlzLl9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9kZWxldGVGaWxlQXR0YWNobWVudChmaWxlQXR0YWNobWVudDogRmlsZUF0dGFjaG1lbnRJbmZvKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5maXJlQ29udGV4dEV2ZW50KCdDb21tYW5kUmVxdWVzdCcsIHRoaXMuY29udGV4dCwgJ0RlbGV0ZScsIGZpbGVBdHRhY2htZW50LklkKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgX3NldExvYWRpbmcobG9hZGluZzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGxvYWRpbmc7XHJcbiAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9uZXdGaWxlVXBsb2FkZWQobmV3RmlsZUF0dGFjaG1lbnQ6IEZpbGVBdHRhY2htZW50SW5mbyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZmlyZUNvbnRleHRFdmVudCgnQ29tbWFuZFJlcXVlc3QnLCB0aGlzLmNvbnRleHQsICdGaWxlVXBsb2FkJywgbmV3RmlsZUF0dGFjaG1lbnQpO1xyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIF9zZXRGaWxlQ291bnQodmFsdWUpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9maWxlQ291bnRTb3VyY2UubmV4dCh2YWx1ZS5maWx0ZXIoKGMpID0+ICFjLklzRGVsZXRlZCkubGVuZ3RoKTtcclxuICAgIH1cclxufVxyXG5cclxuaW50ZXJmYWNlIFVwbG9hZEZpbGVQcm9wcyB7XHJcbiAgICBGaWxlVXJsPzogc3RyaW5nO1xyXG4gICAgY2FuY2VsYXRpb24kPzogU3ViamVjdDx2b2lkPjtcclxuICAgIGJpbmFyeT86IGFueTtcclxuICAgIFVwbG9hZFN0YXRlPzogc3RyaW5nO1xyXG4gICAgUHJvZ3Jlc3M/OiBudW1iZXI7XHJcbiAgICBJc0ljb24/OiBib29sZWFuO1xyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInRva2VuLWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0b2tlbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpbGUgb2YgdmFsdWU7IHRyYWNrQnk6IHRyYWNrQnlJZFwiPlxyXG4gICAgICAgICAgICAgICAgPGZkLXBvcG92ZXIgKm5nSWY9XCIhZmlsZS5Jc0RlbGV0ZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmQtcG9wb3Zlci1jb250cm9sPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtdG9rZW4gKG9uQ2xvc2VDbGljayk9XCJvbkZpbGVEZWxldGVkKGZpbGUuSWQpXCIgW3JlYWRPbmx5XT1cIihkaXNhYmxlT3JSZWFkb25seSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgZmlsZS5GaWxlTmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpbGUuSXNOZXdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidmFsdWVFeHRyYSQgfCBhc3luYyBhcyB2YWx1ZUV4dHJhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInZhbHVlRXh0cmFbZmlsZS5JZF0uVXBsb2FkU3RhdGUgIT09ICdDb21wbGV0ZSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtb2JqZWN0LXN0YXR1c1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0YXR1c109XCJmaWxlLklkIHwgdXBsb2FkRmlsZVN0YXR1czogdmFsdWVFeHRyYVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwidmFsdWVFeHRyYVtmaWxlLklkXT8uVXBsb2FkU3RhdGUgfHwgJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInZhbHVlRXh0cmFbZmlsZS5JZF0/LlVwbG9hZFN0YXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhLWxhYmVsXT1cIidGaWxlIFVwbG9hZCBTdGF0dXMgSXMgJyArIHZhbHVlRXh0cmFbZmlsZS5JZF0/LlVwbG9hZFN0YXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW9iamVjdC1udW1iZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidmFsdWVFeHRyYVtmaWxlLklkXS5Qcm9ncmVzc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbnVtYmVyXT1cInZhbHVlRXh0cmFbZmlsZS5JZF0uUHJvZ3Jlc3MgfHwgMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0PVwiJVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM9XCJpbmZvcm1hdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2ZkLW9iamVjdC1udW1iZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlID09PSAnVXBsb2FkaW5nJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWJ1c3ktaW5kaWNhdG9yIFtsb2FkaW5nXT1cInRydWVcIiBbc2l6ZV09XCIncydcIj48L2ZkLWJ1c3ktaW5kaWNhdG9yPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLXRva2VuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlci1jb250cm9sPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2YWx1ZUV4dHJhJCB8IGFzeW5jIGFzIHZhbHVlRXh0cmFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWxpc3RcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUV4dHJhW2ZpbGUuSWRdLlVwbG9hZFN0YXRlICE9PSAnRXJyb3InIHx8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlRXh0cmFbZmlsZS5JZF0uVXBsb2FkU3RhdGUgPT09ICdDb21wbGV0ZSdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBmZC1saXN0LWl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGZkLWxpc3QtbGluayAoY2xpY2spPVwib25Eb3dubG9hZEZpbGUoZmlsZSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGZkLWxpc3QtaWNvbiBnbHlwaD1cImRvd25sb2FkXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnRG93bmxvYWQnIHwgYmJiVHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtYnVzeS1pbmRpY2F0b3IgW2xvYWRpbmddPVwiZmlsZURvd25sb2FkaW5nXCIgW3NpemVdPVwiJ3MnXCI+PC9mZC1idXN5LWluZGljYXRvcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cclxuICAgICAgICAgICAgICAgIDwvZmQtcG9wb3Zlcj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogM3JlbVwiICpuZ0lmPVwibG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxic3UtbWFzayBbc2l6ZV09XCIncydcIiBzdHlsZT1cImJhY2tncm91bmQ6IHRyYW5zcGFyZW50XCI+PC9ic3UtbWFzaz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGZkLWZpbGUtdXBsb2FkZXJcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInZhbHVlIHwgY2FuVXBsb2FkRmlsZTogbWF4RmlsZUNvdW50OihkaXNhYmxlJCB8IGFzeW5jKSEhOihyZWFkb25seSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmaWxlLWxpbmVhci11cGxvYWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIGZkLXRvb2xiYXItaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCJpZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwiJ2xpbmVhcl8nICsgaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQXR0YWNoRmlsZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtidXR0b25MYWJlbF09XCInQXR0YWNoRmlsZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtidXR0b25BcmlhTGFiZWxdPVwiJ0F0dGFjaEZpbGUnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBbYWNjZXB0XT1cInZhbGlkRXh0ZW5zaW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbbXVsdGlwbGVdPVwibWF4RmlsZUNvdW50ID4gMSB8fCBTZXR0aW5nLklzTXVsdGlTZWxlY3RcIlxyXG4gICAgICAgICAgICAgICAgICAgIChzZWxlY3RlZEZpbGVzQ2hhbmdlZCk9XCJvbkZpbGVTZWxlY3Rpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIihjb250ZW50RGVuc2l0eSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgICAgICAgICA+PC9mZC1maWxlLXVwbG9hZGVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
@@ -30,14 +30,14 @@ export class UiFormPanelComponent extends FormBaseComponent {
30
30
  }
31
31
  }
32
32
  UiFormPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFormPanelComponent, deps: [{ token: i1.BreadcrumbService }, { token: i2.ContentDensityService }, { token: i1.PortalService }, { token: i3.ActivatedRoute }, { token: i3.Router }, { token: i1.FormPanelService, self: true }], target: i0.ɵɵFactoryTarget.Component });
33
- UiFormPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFormPanelComponent, selector: "bsu-ui-form-panel", host: { properties: { "attr.typeDefName": "this._typeDefName" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\n <bsu-mask *ngIf=\"mask$ | async\"> </bsu-mask>\n <div>\n <bsu-ly-layout-container-of-root\n [config]=\"layout94$ | async\"\n [isPanel]=\"false\"\n [isRoot]=\"true\"\n ></bsu-ly-layout-container-of-root>\n <div class=\"workflow-buttons\" *ngIf=\"workflowPanelUi$ | async as workflowPanelUi\">\n <div style=\"flex-grow: 1\"></div>\n <bsu-layout-actions\n [simple]=\"true\"\n [buttons]=\"[]\"\n [workflowButtons]=\"workflowPanelUi?.buttonList ?? []\"\n (toolClick)=\"onToolbarClick($event)\"\n >\n </bsu-layout-actions>\n </div>\n </div>\n <!-- <div fd-bar barDesign=\"floating-footer\">\n <div\n *ngIf=\"context.WorkflowPanelUi\"\n fd-bar-right\n [footerActions]=\"context.WorkflowPanelUi\"\n ></div>\n <div\n *ngIf=\"\n !context.WorkflowPanelUi &&\n showToolbar &&\n \n toolbar.items.length > 0\n \"\n fd-bar-right\n [footerActions]=\"toolbar\"\n ></div>\n </div> -->\n</ng-container>\n<ng-template #dynamicPage>\n <bsu-fundamental-dynamic-form\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\n [canSend]=\"(canSend$ | async) === true\"\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\n [breadCrumbs]=\"breadCrumbs$ | async\"\n [description]=\"(headerDescription$ | async)!!\"\n [hideClose]=\"(hideClose$ | async)!!\"\n [hideTitle]=\"(hideTitle$ | async)!!\"\n [hidePin]=\"(hidePin$ | async)!!\"\n [title]=\"(title$ | async)!!\"\n [subtitle]=\"(headerSubtitle$ | async)!!\"\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\n [parameters]=\"parameters\"\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\n [isMobile]=\"isMobile\"\n [layout94]=\"layout94$ | async\"\n [rtl]=\"(rtl$ | async)!!\"\n [mask]=\"(mask$ | async)!!\"\n [mo]=\"(mo$ | async)!!\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n [modernTabs]=\"(modernTabs$ | async)!!\"\n [avatar]=\"(avatar$ | async)!!\"\n [fieldDict]=\"(fieldDict$ | async)!!\"\n (close)=\"onClose()\"\n (toolbarClick)=\"onToolbarClick($event)\"\n [contentIsPage]=\"parameters?.ContentIsPage\"\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\n ></bsu-fundamental-dynamic-form>\n</ng-template>\n", styles: [":host{display:block;width:100%;min-height:100%}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i6.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "component", type: i7.FundamentalDynamicFormComponent, selector: "bsu-fundamental-dynamic-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "hideTitle", "hideClose", "hidePin", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "modernTabs"], outputs: ["toolbarClick", "workflowChoiceClick", "close"] }, { kind: "component", type: i8.LayoutActionsComponent, selector: "bsu-layout-actions", inputs: ["workflowButtons", "workflowButtonsComboMode", "canSend", "simple"], outputs: ["workflowChoiceSelect"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TlbButtonsPipe, name: "tlbButtons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
33
+ UiFormPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiFormPanelComponent, selector: "bsu-ui-form-panel", host: { properties: { "attr.typeDefName": "this._typeDefName" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\r\n <bsu-mask *ngIf=\"mask$ | async\"> </bsu-mask>\r\n <div>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n <div class=\"workflow-buttons\" *ngIf=\"workflowPanelUi$ | async as workflowPanelUi\">\r\n <div style=\"flex-grow: 1\"></div>\r\n <bsu-layout-actions\r\n style=\"display: flex; column-gap: 1rem\"\r\n [simple]=\"true\"\r\n [buttons]=\"[]\"\r\n [workflowButtons]=\"workflowPanelUi?.buttonList ?? []\"\r\n (toolClick)=\"onToolbarClick($event)\"\r\n >\r\n </bsu-layout-actions>\r\n </div>\r\n </div>\r\n <!-- <div fd-bar barDesign=\"floating-footer\">\r\n <div\r\n *ngIf=\"context.WorkflowPanelUi\"\r\n fd-bar-right\r\n [footerActions]=\"context.WorkflowPanelUi\"\r\n ></div>\r\n <div\r\n *ngIf=\"\r\n !context.WorkflowPanelUi &&\r\n showToolbar &&\r\n \r\n toolbar.items.length > 0\r\n \"\r\n fd-bar-right\r\n [footerActions]=\"toolbar\"\r\n ></div>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #dynamicPage>\r\n <bsu-fundamental-dynamic-form\r\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\r\n [canSend]=\"(canSend$ | async) === true\"\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [hideClose]=\"(hideClose$ | async)!!\"\r\n [hideTitle]=\"(hideTitle$ | async)!!\"\r\n [hidePin]=\"(hidePin$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"layout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [mo]=\"(mo$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n (close)=\"onClose()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n ></bsu-fundamental-dynamic-form>\r\n</ng-template>\r\n", styles: [":host{display:block;width:100%;min-height:100%}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i6.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "component", type: i7.FundamentalDynamicFormComponent, selector: "bsu-fundamental-dynamic-form", inputs: ["breadCrumbs", "toolbarVisible", "toolbarItems", "layoutActions", "layout94", "parameters", "workflowPanelUi", "context", "title", "subtitle", "description", "facetList", "fieldDict", "removeHeaderBorder", "removeContentPadding", "isMobile", "mo", "avatar", "rtl", "hideTitle", "hideClose", "hidePin", "mask", "canSend", "contentIsPage", "contentDensity", "deviceSize", "dirValue", "modernTabs"], outputs: ["toolbarClick", "workflowChoiceClick", "close"] }, { kind: "component", type: i8.LayoutActionsComponent, selector: "bsu-layout-actions", inputs: ["workflowButtons", "workflowButtonsComboMode", "canSend", "simple"], outputs: ["workflowChoiceSelect"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TlbButtonsPipe, name: "tlbButtons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiFormPanelComponent, decorators: [{
35
35
  type: Component,
36
- args: [{ selector: 'bsu-ui-form-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\n <bsu-mask *ngIf=\"mask$ | async\"> </bsu-mask>\n <div>\n <bsu-ly-layout-container-of-root\n [config]=\"layout94$ | async\"\n [isPanel]=\"false\"\n [isRoot]=\"true\"\n ></bsu-ly-layout-container-of-root>\n <div class=\"workflow-buttons\" *ngIf=\"workflowPanelUi$ | async as workflowPanelUi\">\n <div style=\"flex-grow: 1\"></div>\n <bsu-layout-actions\n [simple]=\"true\"\n [buttons]=\"[]\"\n [workflowButtons]=\"workflowPanelUi?.buttonList ?? []\"\n (toolClick)=\"onToolbarClick($event)\"\n >\n </bsu-layout-actions>\n </div>\n </div>\n <!-- <div fd-bar barDesign=\"floating-footer\">\n <div\n *ngIf=\"context.WorkflowPanelUi\"\n fd-bar-right\n [footerActions]=\"context.WorkflowPanelUi\"\n ></div>\n <div\n *ngIf=\"\n !context.WorkflowPanelUi &&\n showToolbar &&\n \n toolbar.items.length > 0\n \"\n fd-bar-right\n [footerActions]=\"toolbar\"\n ></div>\n </div> -->\n</ng-container>\n<ng-template #dynamicPage>\n <bsu-fundamental-dynamic-form\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\n [canSend]=\"(canSend$ | async) === true\"\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\n [breadCrumbs]=\"breadCrumbs$ | async\"\n [description]=\"(headerDescription$ | async)!!\"\n [hideClose]=\"(hideClose$ | async)!!\"\n [hideTitle]=\"(hideTitle$ | async)!!\"\n [hidePin]=\"(hidePin$ | async)!!\"\n [title]=\"(title$ | async)!!\"\n [subtitle]=\"(headerSubtitle$ | async)!!\"\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\n [parameters]=\"parameters\"\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\n [isMobile]=\"isMobile\"\n [layout94]=\"layout94$ | async\"\n [rtl]=\"(rtl$ | async)!!\"\n [mask]=\"(mask$ | async)!!\"\n [mo]=\"(mo$ | async)!!\"\n [dirValue]=\"(dirValue$ | async)!!\"\n [deviceSize]=\"(deviceSize$ | async)!!\"\n [contentDensity]=\"(contentDensity$ | async)!!\"\n [modernTabs]=\"(modernTabs$ | async)!!\"\n [avatar]=\"(avatar$ | async)!!\"\n [fieldDict]=\"(fieldDict$ | async)!!\"\n (close)=\"onClose()\"\n (toolbarClick)=\"onToolbarClick($event)\"\n [contentIsPage]=\"parameters?.ContentIsPage\"\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\n ></bsu-fundamental-dynamic-form>\n</ng-template>\n", styles: [":host{display:block;width:100%;min-height:100%}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"] }]
36
+ args: [{ selector: 'bsu-ui-form-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], template: "<ng-container *ngIf=\"isSearchPanel || (isSimple$ | async) || isSubForm || isModal || isFormReport; else dynamicPage\">\r\n <bsu-mask *ngIf=\"mask$ | async\"> </bsu-mask>\r\n <div>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n <div class=\"workflow-buttons\" *ngIf=\"workflowPanelUi$ | async as workflowPanelUi\">\r\n <div style=\"flex-grow: 1\"></div>\r\n <bsu-layout-actions\r\n style=\"display: flex; column-gap: 1rem\"\r\n [simple]=\"true\"\r\n [buttons]=\"[]\"\r\n [workflowButtons]=\"workflowPanelUi?.buttonList ?? []\"\r\n (toolClick)=\"onToolbarClick($event)\"\r\n >\r\n </bsu-layout-actions>\r\n </div>\r\n </div>\r\n <!-- <div fd-bar barDesign=\"floating-footer\">\r\n <div\r\n *ngIf=\"context.WorkflowPanelUi\"\r\n fd-bar-right\r\n [footerActions]=\"context.WorkflowPanelUi\"\r\n ></div>\r\n <div\r\n *ngIf=\"\r\n !context.WorkflowPanelUi &&\r\n showToolbar &&\r\n \r\n toolbar.items.length > 0\r\n \"\r\n fd-bar-right\r\n [footerActions]=\"toolbar\"\r\n ></div>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #dynamicPage>\r\n <bsu-fundamental-dynamic-form\r\n [style.position]=\"(mask$ | async) ? 'relative' : null\"\r\n [canSend]=\"(canSend$ | async) === true\"\r\n [removeContentPadding]=\"(headerRemoveContentPadding$ | async)!!\"\r\n [breadCrumbs]=\"breadCrumbs$ | async\"\r\n [description]=\"(headerDescription$ | async)!!\"\r\n [hideClose]=\"(hideClose$ | async)!!\"\r\n [hideTitle]=\"(hideTitle$ | async)!!\"\r\n [hidePin]=\"(hidePin$ | async)!!\"\r\n [title]=\"(title$ | async)!!\"\r\n [subtitle]=\"(headerSubtitle$ | async)!!\"\r\n [toolbarItems]=\"toolbarItems$ | async | tlbButtons: 'inFooter':false\"\r\n [layoutActions]=\"toolbarItems$ | async | tlbButtons: 'inFooter':true\"\r\n [toolbarVisible]=\"(toolbarVisible$ | async)!!\"\r\n [facetList]=\"(headerLayout$ | async)?.FacetList2\"\r\n [parameters]=\"parameters\"\r\n [workflowPanelUi]=\"workflowPanelUi$ | async\"\r\n [isMobile]=\"isMobile\"\r\n [layout94]=\"layout94$ | async\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [mask]=\"(mask$ | async)!!\"\r\n [mo]=\"(mo$ | async)!!\"\r\n [dirValue]=\"(dirValue$ | async)!!\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [contentDensity]=\"(contentDensity$ | async)!!\"\r\n [modernTabs]=\"(modernTabs$ | async)!!\"\r\n [avatar]=\"(avatar$ | async)!!\"\r\n [fieldDict]=\"(fieldDict$ | async)!!\"\r\n (close)=\"onClose()\"\r\n (toolbarClick)=\"onToolbarClick($event)\"\r\n [contentIsPage]=\"parameters?.ContentIsPage\"\r\n (workflowChoiceClick)=\"onWorkflowChoiceClick($event)\"\r\n ></bsu-fundamental-dynamic-form>\r\n</ng-template>\r\n", styles: [":host{display:block;width:100%;min-height:100%}.workflow-buttons{display:flex;margin-top:5px;padding:5px}\n"] }]
37
37
  }], ctorParameters: function () { return [{ type: i1.BreadcrumbService }, { type: i2.ContentDensityService }, { type: i1.PortalService }, { type: i3.ActivatedRoute }, { type: i3.Router }, { type: i1.FormPanelService, decorators: [{
38
38
  type: Self
39
39
  }] }]; }, propDecorators: { _typeDefName: [{
40
40
  type: HostBinding,
41
41
  args: ['attr.typeDefName']
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZm9ybS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91aS1mb3JtLXBhbmVsL3VpLWZvcm0tcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZm9ybS1wYW5lbC91aS1mb3JtLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFVLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUk5RixPQUFPLEVBQ0gsaUJBQWlCLEVBR2pCLGdCQUFnQixFQUVuQixNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7O0FBVTlCLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxpQkFBaUI7SUFRdkQsWUFDYyxrQkFBcUMsRUFDckMsc0JBQTZDLEVBQzdDLGNBQTZCLEVBQzdCLGVBQStCLEVBQy9CLE9BQWUsRUFDUCxpQkFBbUMsQ0FBQyx1Q0FBdUM7O1FBRTdGLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBUGYsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXVCO1FBQzdDLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ1Asc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQWJ4QixpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQWdCL0MsSUFBSSxDQUFDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7UUFDcEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxzQkFBc0IsQ0FBQyxjQUFjLENBQUM7UUFDN0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDO1FBQzlDLElBQUksQ0FBQyxTQUFTLEdBQUcsY0FBYyxDQUFDLFNBQVMsQ0FBQztRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUM7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDO1FBQ2hELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxFQUFFLFlBQVksSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdGLENBQUM7O2lIQXhCUSxvQkFBb0I7cUdBQXBCLG9CQUFvQiwrR0FGbEIsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENsQmpDLG01RkF3RUE7MkZEcERhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDSSxtQkFBbUIsbUJBR1osdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGdCQUFnQixDQUFDOzswQkFnQnhCLElBQUk7NENBYndCLFlBQVk7c0JBQTVDLFdBQVc7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHksIENvbnRlbnREZW5zaXR5U2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5cbmltcG9ydCB7XG4gICAgRm9ybUJhc2VDb21wb25lbnQsXG4gICAgUG9ydGFsU2VydmljZSxcbiAgICBCcmVhZENydW1iSW5mbyxcbiAgICBGb3JtUGFuZWxTZXJ2aWNlLFxuICAgIEJyZWFkY3J1bWJTZXJ2aWNlXG59IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS11aS1mb3JtLXBhbmVsJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZm9ybS1wYW5lbC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktZm9ybS1wYW5lbC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW0Zvcm1QYW5lbFNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIFVpRm9ybVBhbmVsQ29tcG9uZW50IGV4dGVuZHMgRm9ybUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBIb3N0QmluZGluZygnYXR0ci50eXBlRGVmTmFtZScpIF90eXBlRGVmTmFtZSA9ICcnO1xuICAgIGJyZWFkQ3J1bWJzJDogT2JzZXJ2YWJsZTxCcmVhZENydW1iSW5mb1tdPjtcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xuICAgIGRldmljZVNpemUkOiBPYnNlcnZhYmxlPCdzJyB8ICdtJyB8ICdsJyB8ICd4bCc+O1xuICAgIGRpclZhbHVlJDogT2JzZXJ2YWJsZTwncnRsJyB8ICdsdHInPjtcbiAgICBydGwkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGNhblNlbmQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2JyZWFkY3J1bWJTZXJ2aWNlOiBCcmVhZGNydW1iU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJvdGVjdGVkIF9yb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgQFNlbGYoKSBwcm90ZWN0ZWQgX2Zvcm1QYW5lbFNlcnZpY2U6IEZvcm1QYW5lbFNlcnZpY2UgLy8gcHJpdmF0ZSBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9mb3JtUGFuZWxTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5icmVhZENydW1icyQgPSBfYnJlYWRjcnVtYlNlcnZpY2UuYnJlYWRjcnVtYnMkO1xuICAgICAgICB0aGlzLmNvbnRlbnREZW5zaXR5JCA9IF9jb250ZW50RGVuc2l0eVNlcnZpY2UuY29udGVudERlbnNpdHk7XG4gICAgICAgIHRoaXMuZGV2aWNlU2l6ZSQgPSBfcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJDtcbiAgICAgICAgdGhpcy5kaXJWYWx1ZSQgPSBfcG9ydGFsU2VydmljZS5kaXJWYWx1ZSQ7XG4gICAgICAgIHRoaXMucnRsJCA9IF9wb3J0YWxTZXJ2aWNlLnJ0bCQ7XG4gICAgICAgIHRoaXMuY2FuU2VuZCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmNhblNlbmQkO1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLm1vJC5zdWJzY3JpYmUoKGMpID0+ICh0aGlzLl90eXBlRGVmTmFtZSA9IGM/LiRUeXBlRGVmTmFtZSA/PyAnJykpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJpc1NlYXJjaFBhbmVsIHx8IChpc1NpbXBsZSQgfCBhc3luYykgfHwgaXNTdWJGb3JtIHx8IGlzTW9kYWwgfHwgaXNGb3JtUmVwb3J0OyBlbHNlIGR5bmFtaWNQYWdlXCI+XG4gICAgPGJzdS1tYXNrICpuZ0lmPVwibWFzayQgfCBhc3luY1wiPiA8L2JzdS1tYXNrPlxuICAgIDxkaXY+XG4gICAgICAgIDxic3UtbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290XG4gICAgICAgICAgICBbY29uZmlnXT1cImxheW91dDk0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtpc1BhbmVsXT1cImZhbHNlXCJcbiAgICAgICAgICAgIFtpc1Jvb3RdPVwidHJ1ZVwiXG4gICAgICAgID48L2JzdS1seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3Q+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3b3JrZmxvdy1idXR0b25zXCIgKm5nSWY9XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmMgYXMgd29ya2Zsb3dQYW5lbFVpXCI+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZmxleC1ncm93OiAxXCI+PC9kaXY+XG4gICAgICAgICAgICA8YnN1LWxheW91dC1hY3Rpb25zXG4gICAgICAgICAgICAgICAgW3NpbXBsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBbYnV0dG9uc109XCJbXVwiXG4gICAgICAgICAgICAgICAgW3dvcmtmbG93QnV0dG9uc109XCJ3b3JrZmxvd1BhbmVsVWk/LmJ1dHRvbkxpc3QgPz8gW11cIlxuICAgICAgICAgICAgICAgICh0b29sQ2xpY2spPVwib25Ub29sYmFyQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L2JzdS1sYXlvdXQtYWN0aW9ucz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPCEtLSA8ZGl2IGZkLWJhciBiYXJEZXNpZ249XCJmbG9hdGluZy1mb290ZXJcIj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cImNvbnRleHQuV29ya2Zsb3dQYW5lbFVpXCJcbiAgICAgIGZkLWJhci1yaWdodFxuICAgICAgW2Zvb3RlckFjdGlvbnNdPVwiY29udGV4dC5Xb3JrZmxvd1BhbmVsVWlcIlxuICAgID48L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIlxuICAgICAgICAhY29udGV4dC5Xb3JrZmxvd1BhbmVsVWkgJiZcbiAgICAgICAgc2hvd1Rvb2xiYXIgJiZcbiAgICAgICAgXG4gICAgICAgIHRvb2xiYXIuaXRlbXMubGVuZ3RoID4gMFxuICAgICAgXCJcbiAgICAgIGZkLWJhci1yaWdodFxuICAgICAgW2Zvb3RlckFjdGlvbnNdPVwidG9vbGJhclwiXG4gICAgPjwvZGl2PlxuICA8L2Rpdj4gLS0+XG48L25nLWNvbnRhaW5lcj5cbjxuZy10ZW1wbGF0ZSAjZHluYW1pY1BhZ2U+XG4gICAgPGJzdS1mdW5kYW1lbnRhbC1keW5hbWljLWZvcm1cbiAgICAgICAgW3N0eWxlLnBvc2l0aW9uXT1cIihtYXNrJCB8IGFzeW5jKSA/ICdyZWxhdGl2ZScgOiBudWxsXCJcbiAgICAgICAgW2NhblNlbmRdPVwiKGNhblNlbmQkIHwgYXN5bmMpID09PSB0cnVlXCJcbiAgICAgICAgW3JlbW92ZUNvbnRlbnRQYWRkaW5nXT1cIihoZWFkZXJSZW1vdmVDb250ZW50UGFkZGluZyQgfCBhc3luYykhIVwiXG4gICAgICAgIFticmVhZENydW1ic109XCJicmVhZENydW1icyQgfCBhc3luY1wiXG4gICAgICAgIFtkZXNjcmlwdGlvbl09XCIoaGVhZGVyRGVzY3JpcHRpb24kIHwgYXN5bmMpISFcIlxuICAgICAgICBbaGlkZUNsb3NlXT1cIihoaWRlQ2xvc2UkIHwgYXN5bmMpISFcIlxuICAgICAgICBbaGlkZVRpdGxlXT1cIihoaWRlVGl0bGUkIHwgYXN5bmMpISFcIlxuICAgICAgICBbaGlkZVBpbl09XCIoaGlkZVBpbiQgfCBhc3luYykhIVwiXG4gICAgICAgIFt0aXRsZV09XCIodGl0bGUkIHwgYXN5bmMpISFcIlxuICAgICAgICBbc3VidGl0bGVdPVwiKGhlYWRlclN1YnRpdGxlJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW3Rvb2xiYXJJdGVtc109XCJ0b29sYmFySXRlbXMkIHwgYXN5bmMgfCB0bGJCdXR0b25zOiAnaW5Gb290ZXInOmZhbHNlXCJcbiAgICAgICAgW2xheW91dEFjdGlvbnNdPVwidG9vbGJhckl0ZW1zJCB8IGFzeW5jIHwgdGxiQnV0dG9uczogJ2luRm9vdGVyJzp0cnVlXCJcbiAgICAgICAgW3Rvb2xiYXJWaXNpYmxlXT1cIih0b29sYmFyVmlzaWJsZSQgfCBhc3luYykhIVwiXG4gICAgICAgIFtmYWNldExpc3RdPVwiKGhlYWRlckxheW91dCQgfCBhc3luYyk/LkZhY2V0TGlzdDJcIlxuICAgICAgICBbcGFyYW1ldGVyc109XCJwYXJhbWV0ZXJzXCJcbiAgICAgICAgW3dvcmtmbG93UGFuZWxVaV09XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmNcIlxuICAgICAgICBbaXNNb2JpbGVdPVwiaXNNb2JpbGVcIlxuICAgICAgICBbbGF5b3V0OTRdPVwibGF5b3V0OTQkIHwgYXN5bmNcIlxuICAgICAgICBbcnRsXT1cIihydGwkIHwgYXN5bmMpISFcIlxuICAgICAgICBbbWFza109XCIobWFzayQgfCBhc3luYykhIVwiXG4gICAgICAgIFttb109XCIobW8kIHwgYXN5bmMpISFcIlxuICAgICAgICBbZGlyVmFsdWVdPVwiKGRpclZhbHVlJCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW2RldmljZVNpemVdPVwiKGRldmljZVNpemUkIHwgYXN5bmMpISFcIlxuICAgICAgICBbY29udGVudERlbnNpdHldPVwiKGNvbnRlbnREZW5zaXR5JCB8IGFzeW5jKSEhXCJcbiAgICAgICAgW21vZGVyblRhYnNdPVwiKG1vZGVyblRhYnMkIHwgYXN5bmMpISFcIlxuICAgICAgICBbYXZhdGFyXT1cIihhdmF0YXIkIHwgYXN5bmMpISFcIlxuICAgICAgICBbZmllbGREaWN0XT1cIihmaWVsZERpY3QkIHwgYXN5bmMpISFcIlxuICAgICAgICAoY2xvc2UpPVwib25DbG9zZSgpXCJcbiAgICAgICAgKHRvb2xiYXJDbGljayk9XCJvblRvb2xiYXJDbGljaygkZXZlbnQpXCJcbiAgICAgICAgW2NvbnRlbnRJc1BhZ2VdPVwicGFyYW1ldGVycz8uQ29udGVudElzUGFnZVwiXG4gICAgICAgICh3b3JrZmxvd0Nob2ljZUNsaWNrKT1cIm9uV29ya2Zsb3dDaG9pY2VDbGljaygkZXZlbnQpXCJcbiAgICA+PC9ic3UtZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZm9ybS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi91aS1mb3JtLXBhbmVsL3VpLWZvcm0tcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZm9ybS1wYW5lbC91aS1mb3JtLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFVLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUk5RixPQUFPLEVBQ0gsaUJBQWlCLEVBR2pCLGdCQUFnQixFQUVuQixNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7O0FBVTlCLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxpQkFBaUI7SUFRdkQsWUFDYyxrQkFBcUMsRUFDckMsc0JBQTZDLEVBQzdDLGNBQTZCLEVBQzdCLGVBQStCLEVBQy9CLE9BQWUsRUFDUCxpQkFBbUMsQ0FBQyx1Q0FBdUM7O1FBRTdGLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBUGYsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXVCO1FBQzdDLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ1Asc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQWJ4QixpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQWdCL0MsSUFBSSxDQUFDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7UUFDcEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxzQkFBc0IsQ0FBQyxjQUFjLENBQUM7UUFDN0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDO1FBQzlDLElBQUksQ0FBQyxTQUFTLEdBQUcsY0FBYyxDQUFDLFNBQVMsQ0FBQztRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUM7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDO1FBQ2hELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxFQUFFLFlBQVksSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdGLENBQUM7O2lIQXhCUSxvQkFBb0I7cUdBQXBCLG9CQUFvQiwrR0FGbEIsQ0FBQyxnQkFBZ0IsQ0FBQyxpRENsQmpDLGdtR0F5RUE7MkZEckRhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDSSxtQkFBbUIsbUJBR1osdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGdCQUFnQixDQUFDOzswQkFnQnhCLElBQUk7NENBYndCLFlBQVk7c0JBQTVDLFdBQVc7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uSW5pdCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBDb250ZW50RGVuc2l0eVNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICAgIEZvcm1CYXNlQ29tcG9uZW50LFxyXG4gICAgUG9ydGFsU2VydmljZSxcclxuICAgIEJyZWFkQ3J1bWJJbmZvLFxyXG4gICAgRm9ybVBhbmVsU2VydmljZSxcclxuICAgIEJyZWFkY3J1bWJTZXJ2aWNlXHJcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktZm9ybS1wYW5lbCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZm9ybS1wYW5lbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91aS1mb3JtLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHByb3ZpZGVyczogW0Zvcm1QYW5lbFNlcnZpY2VdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaUZvcm1QYW5lbENvbXBvbmVudCBleHRlbmRzIEZvcm1CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBIb3N0QmluZGluZygnYXR0ci50eXBlRGVmTmFtZScpIF90eXBlRGVmTmFtZSA9ICcnO1xyXG4gICAgYnJlYWRDcnVtYnMkOiBPYnNlcnZhYmxlPEJyZWFkQ3J1bWJJbmZvW10+O1xyXG4gICAgY29udGVudERlbnNpdHkkOiBPYnNlcnZhYmxlPENvbnRlbnREZW5zaXR5PjtcclxuICAgIGRldmljZVNpemUkOiBPYnNlcnZhYmxlPCdzJyB8ICdtJyB8ICdsJyB8ICd4bCc+O1xyXG4gICAgZGlyVmFsdWUkOiBPYnNlcnZhYmxlPCdydGwnIHwgJ2x0cic+O1xyXG4gICAgcnRsJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICAgIGNhblNlbmQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJvdGVjdGVkIF9icmVhZGNydW1iU2VydmljZTogQnJlYWRjcnVtYlNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9hY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgcHJvdGVjdGVkIF9yb3V0ZXI6IFJvdXRlcixcclxuICAgICAgICBAU2VsZigpIHByb3RlY3RlZCBfZm9ybVBhbmVsU2VydmljZTogRm9ybVBhbmVsU2VydmljZSAvLyBwcml2YXRlIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2VcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKF9mb3JtUGFuZWxTZXJ2aWNlKTtcclxuICAgICAgICB0aGlzLmJyZWFkQ3J1bWJzJCA9IF9icmVhZGNydW1iU2VydmljZS5icmVhZGNydW1icyQ7XHJcbiAgICAgICAgdGhpcy5jb250ZW50RGVuc2l0eSQgPSBfY29udGVudERlbnNpdHlTZXJ2aWNlLmNvbnRlbnREZW5zaXR5O1xyXG4gICAgICAgIHRoaXMuZGV2aWNlU2l6ZSQgPSBfcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJDtcclxuICAgICAgICB0aGlzLmRpclZhbHVlJCA9IF9wb3J0YWxTZXJ2aWNlLmRpclZhbHVlJDtcclxuICAgICAgICB0aGlzLnJ0bCQgPSBfcG9ydGFsU2VydmljZS5ydGwkO1xyXG4gICAgICAgIHRoaXMuY2FuU2VuZCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmNhblNlbmQkO1xyXG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UubW8kLnN1YnNjcmliZSgoYykgPT4gKHRoaXMuX3R5cGVEZWZOYW1lID0gYz8uJFR5cGVEZWZOYW1lID8/ICcnKSk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzU2VhcmNoUGFuZWwgfHwgKGlzU2ltcGxlJCB8IGFzeW5jKSB8fCBpc1N1YkZvcm0gfHwgaXNNb2RhbCB8fCBpc0Zvcm1SZXBvcnQ7IGVsc2UgZHluYW1pY1BhZ2VcIj5cclxuICAgIDxic3UtbWFzayAqbmdJZj1cIm1hc2skIHwgYXN5bmNcIj4gPC9ic3UtbWFzaz5cclxuICAgIDxkaXY+XHJcbiAgICAgICAgPGJzdS1seS1sYXlvdXQtY29udGFpbmVyLW9mLXJvb3RcclxuICAgICAgICAgICAgW2NvbmZpZ109XCJsYXlvdXQ5NCQgfCBhc3luY1wiXHJcbiAgICAgICAgICAgIFtpc1BhbmVsXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgW2lzUm9vdF09XCJ0cnVlXCJcclxuICAgICAgICA+PC9ic3UtbHktbGF5b3V0LWNvbnRhaW5lci1vZi1yb290PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3b3JrZmxvdy1idXR0b25zXCIgKm5nSWY9XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmMgYXMgd29ya2Zsb3dQYW5lbFVpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJmbGV4LWdyb3c6IDFcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGJzdS1sYXlvdXQtYWN0aW9uc1xyXG4gICAgICAgICAgICAgICAgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBjb2x1bW4tZ2FwOiAxcmVtXCJcclxuICAgICAgICAgICAgICAgIFtzaW1wbGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICBbYnV0dG9uc109XCJbXVwiXHJcbiAgICAgICAgICAgICAgICBbd29ya2Zsb3dCdXR0b25zXT1cIndvcmtmbG93UGFuZWxVaT8uYnV0dG9uTGlzdCA/PyBbXVwiXHJcbiAgICAgICAgICAgICAgICAodG9vbENsaWNrKT1cIm9uVG9vbGJhckNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDwvYnN1LWxheW91dC1hY3Rpb25zPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIDxkaXYgZmQtYmFyIGJhckRlc2lnbj1cImZsb2F0aW5nLWZvb3RlclwiPlxyXG4gICAgPGRpdlxyXG4gICAgICAqbmdJZj1cImNvbnRleHQuV29ya2Zsb3dQYW5lbFVpXCJcclxuICAgICAgZmQtYmFyLXJpZ2h0XHJcbiAgICAgIFtmb290ZXJBY3Rpb25zXT1cImNvbnRleHQuV29ya2Zsb3dQYW5lbFVpXCJcclxuICAgID48L2Rpdj5cclxuICAgIDxkaXZcclxuICAgICAgKm5nSWY9XCJcclxuICAgICAgICAhY29udGV4dC5Xb3JrZmxvd1BhbmVsVWkgJiZcclxuICAgICAgICBzaG93VG9vbGJhciAmJlxyXG4gICAgICAgIFxyXG4gICAgICAgIHRvb2xiYXIuaXRlbXMubGVuZ3RoID4gMFxyXG4gICAgICBcIlxyXG4gICAgICBmZC1iYXItcmlnaHRcclxuICAgICAgW2Zvb3RlckFjdGlvbnNdPVwidG9vbGJhclwiXHJcbiAgICA+PC9kaXY+XHJcbiAgPC9kaXY+IC0tPlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLXRlbXBsYXRlICNkeW5hbWljUGFnZT5cclxuICAgIDxic3UtZnVuZGFtZW50YWwtZHluYW1pYy1mb3JtXHJcbiAgICAgICAgW3N0eWxlLnBvc2l0aW9uXT1cIihtYXNrJCB8IGFzeW5jKSA/ICdyZWxhdGl2ZScgOiBudWxsXCJcclxuICAgICAgICBbY2FuU2VuZF09XCIoY2FuU2VuZCQgfCBhc3luYykgPT09IHRydWVcIlxyXG4gICAgICAgIFtyZW1vdmVDb250ZW50UGFkZGluZ109XCIoaGVhZGVyUmVtb3ZlQ29udGVudFBhZGRpbmckIHwgYXN5bmMpISFcIlxyXG4gICAgICAgIFticmVhZENydW1ic109XCJicmVhZENydW1icyQgfCBhc3luY1wiXHJcbiAgICAgICAgW2Rlc2NyaXB0aW9uXT1cIihoZWFkZXJEZXNjcmlwdGlvbiQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW2hpZGVDbG9zZV09XCIoaGlkZUNsb3NlJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbaGlkZVRpdGxlXT1cIihoaWRlVGl0bGUkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgIFtoaWRlUGluXT1cIihoaWRlUGluJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbdGl0bGVdPVwiKHRpdGxlJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbc3VidGl0bGVdPVwiKGhlYWRlclN1YnRpdGxlJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbdG9vbGJhckl0ZW1zXT1cInRvb2xiYXJJdGVtcyQgfCBhc3luYyB8IHRsYkJ1dHRvbnM6ICdpbkZvb3Rlcic6ZmFsc2VcIlxyXG4gICAgICAgIFtsYXlvdXRBY3Rpb25zXT1cInRvb2xiYXJJdGVtcyQgfCBhc3luYyB8IHRsYkJ1dHRvbnM6ICdpbkZvb3Rlcic6dHJ1ZVwiXHJcbiAgICAgICAgW3Rvb2xiYXJWaXNpYmxlXT1cIih0b29sYmFyVmlzaWJsZSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW2ZhY2V0TGlzdF09XCIoaGVhZGVyTGF5b3V0JCB8IGFzeW5jKT8uRmFjZXRMaXN0MlwiXHJcbiAgICAgICAgW3BhcmFtZXRlcnNdPVwicGFyYW1ldGVyc1wiXHJcbiAgICAgICAgW3dvcmtmbG93UGFuZWxVaV09XCJ3b3JrZmxvd1BhbmVsVWkkIHwgYXN5bmNcIlxyXG4gICAgICAgIFtpc01vYmlsZV09XCJpc01vYmlsZVwiXHJcbiAgICAgICAgW2xheW91dDk0XT1cImxheW91dDk0JCB8IGFzeW5jXCJcclxuICAgICAgICBbcnRsXT1cIihydGwkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgIFttYXNrXT1cIihtYXNrJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbbW9dPVwiKG1vJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbZGlyVmFsdWVdPVwiKGRpclZhbHVlJCB8IGFzeW5jKSEhXCJcclxuICAgICAgICBbZGV2aWNlU2l6ZV09XCIoZGV2aWNlU2l6ZSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cIihjb250ZW50RGVuc2l0eSQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW21vZGVyblRhYnNdPVwiKG1vZGVyblRhYnMkIHwgYXN5bmMpISFcIlxyXG4gICAgICAgIFthdmF0YXJdPVwiKGF2YXRhciQgfCBhc3luYykhIVwiXHJcbiAgICAgICAgW2ZpZWxkRGljdF09XCIoZmllbGREaWN0JCB8IGFzeW5jKSEhXCJcclxuICAgICAgICAoY2xvc2UpPVwib25DbG9zZSgpXCJcclxuICAgICAgICAodG9vbGJhckNsaWNrKT1cIm9uVG9vbGJhckNsaWNrKCRldmVudClcIlxyXG4gICAgICAgIFtjb250ZW50SXNQYWdlXT1cInBhcmFtZXRlcnM/LkNvbnRlbnRJc1BhZ2VcIlxyXG4gICAgICAgICh3b3JrZmxvd0Nob2ljZUNsaWNrKT1cIm9uV29ya2Zsb3dDaG9pY2VDbGljaygkZXZlbnQpXCJcclxuICAgID48L2JzdS1mdW5kYW1lbnRhbC1keW5hbWljLWZvcm0+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -24,9 +24,9 @@ export class UiGanttChartComponent extends SapUiReportBaseComponent {
24
24
  }
25
25
  }
26
26
  UiGanttChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiGanttChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
27
- UiGanttChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiGanttChartComponent, selector: "bsu-ui-gantt-chart", usesInheritance: true, ngImport: i0, template: "<ng-container\n *ngTemplateOutlet=\"\n renderContainer;\n context: {\n $implicit: moDataList$ | async,\n allChecked: allChecked$ | async,\n groupby: groupby$ | async,\n isCheckList: context.Setting.View?.IsCheckList,\n columns: columns$ | async,\n columnsCount: columnsCount$ | async,\n allowInlineEdit: allowInlineEdit$ | async,\n inlineEditMode: inlineEditMode$ | async,\n onlyInlineEdit: onlyInlineEdit$ | async,\n secondaryColumns: secondaryColumns$ | async,\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\n conditionalFormats: conditionalFormats$ | async,\n deviceName: deviceName$ | async,\n deviceSize: deviceSize$ | async,\n mobileOrTablet: mobileOrTablet$ | async,\n access: context.Setting.Extra?.DefaultCommandsAccess,\n title: title$ | async,\n rtl: rtl$ | async,\n hideToolbar: hideToolbar$ | async,\n allColumns: allColumns,\n gridSetting: gridSetting$ | async,\n contentDensity: contentDensity$ | async,\n formLayout: layout$ | async,\n hasSelected: hasSelected$ | async,\n showOkCancelButtons: showOkCancelButtons,\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\n navigationArrow: navigationArrow$ | async,\n mode: mode$ | async,\n ganttFields: context.Setting.View.GanttFields,\n ganttChartHelper: context._ganttChartHelper\n }\n \"\n></ng-container>\n<ng-template\n #renderContainer\n let-moDataList\n let-allChecked=\"allChecked\"\n let-isCheckList=\"isCheckList\"\n let-columns=\"columns\"\n let-columnsCount=\"columnsCount\"\n let-groupby=\"groupby\"\n let-secondaryColumns=\"secondaryColumns\"\n let-contextMenuItems=\"contextMenuItems\"\n let-conditionalFormats=\"conditionalFormats\"\n let-deviceName=\"deviceName\"\n let-deviceSize=\"deviceSize\"\n let-access=\"access\"\n let-toolbarButtons=\"toolbarButtons\"\n let-popin=\"popin\"\n let-mobileOrTablet=\"mobileOrTablet\"\n let-title=\"title\"\n let-inlineEditMode=\"inlineEditMode\"\n let-allowInlineEdit=\"allowInlineEdit\"\n let-hideToolbar=\"hideToolbar\"\n let-gridSetting=\"gridSetting\"\n let-contentDensity=\"contentDensity\"\n let-formLayout=\"formLayout\"\n let-hasSelected=\"hasSelected\"\n let-showOkCancelButtons=\"showOkCancelButtons\"\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\n let-navigationArrow=\"navigationArrow\"\n let-mode=\"mode\"\n let-ganttFields=\"ganttFields\"\n let-ganttChartHelper=\"ganttChartHelper\"\n>\n <bsu-ulv-toolbar\n [hideToolbar]=\"hideToolbar\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [toolbarButtons]=\"toolbarButtons\"\n [gridSetting]=\"gridSetting\"\n [title]=\"title\"\n [hasSelected]=\"hasSelected\"\n [access]=\"access\"\n [contentDensity]=\"contentDensity\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n ></bsu-ulv-toolbar>\n <bsu-gantt-dhtml-chart-view\n [isCheckList]=\"isCheckList\"\n [allChecked]=\"allChecked\"\n [moDataList]=\"moDataList\"\n [access]=\"access\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [navigationArrow]=\"navigationArrow\"\n [title]=\"title\"\n [mobileOrTablet]=\"mobileOrTablet\"\n [contextMenuItems]=\"contextMenuItems\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n [mode]=\"mode\"\n [showOkCancelButtons]=\"showOkCancelButtons\"\n [ganttFields]=\"ganttFields\"\n [ganttChartHelper]=\"ganttChartHelper\"\n (ulvCommandClick)=\"onUlvCommand($event)\"\n (filter)=\"onFilter($event)\"\n (rowClick)=\"onRowClick($event)\"\n (rowCheck)=\"onRowCheck($event)\"\n >\n </bsu-gantt-dhtml-chart-view>\n</ng-template>\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.UlvToolbarComponent, selector: "bsu-ulv-toolbar", inputs: ["useLayoutItemTextForControl", "enableSearch", "hideTitle", "title", "deviceName", "deviceSize", "access", "hideToolbar", "toolbarButtons", "contentDensity", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "reportView", "hasSelected", "config", "hidden", "buttons"], outputs: ["search", "groupbyClick", "sortClick", "columnClick", "editModeClick", "viewClick"] }, { kind: "component", type: i3.GanttDhtmlChartViewComponent, selector: "bsu-gantt-dhtml-chart-view", inputs: ["mode", "ganttFields", "ganttChartHelper"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.SeperatorFixPipe, name: "seperatorFix" }, { kind: "pipe", type: i4.ContextMenuPipe, name: "contextMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
27
+ UiGanttChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UiGanttChartComponent, selector: "bsu-ui-gantt-chart", usesInheritance: true, ngImport: i0, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n renderContainer;\r\n context: {\r\n $implicit: moDataList$ | async,\r\n allChecked: allChecked$ | async,\r\n groupby: groupby$ | async,\r\n isCheckList: context.Setting.View?.IsCheckList,\r\n columns: columns$ | async,\r\n columnsCount: columnsCount$ | async,\r\n allowInlineEdit: allowInlineEdit$ | async,\r\n inlineEditMode: inlineEditMode$ | async,\r\n onlyInlineEdit: onlyInlineEdit$ | async,\r\n secondaryColumns: secondaryColumns$ | async,\r\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\r\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\r\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\r\n conditionalFormats: conditionalFormats$ | async,\r\n deviceName: deviceName$ | async,\r\n deviceSize: deviceSize$ | async,\r\n mobileOrTablet: mobileOrTablet$ | async,\r\n access: context.Setting.Extra?.DefaultCommandsAccess,\r\n title: title$ | async,\r\n rtl: rtl$ | async,\r\n hideToolbar: hideToolbar$ | async,\r\n allColumns: allColumns,\r\n gridSetting: gridSetting$ | async,\r\n contentDensity: contentDensity$ | async,\r\n formLayout: layout$ | async,\r\n hasSelected: hasSelected$ | async,\r\n showOkCancelButtons: showOkCancelButtons,\r\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\r\n navigationArrow: navigationArrow$ | async,\r\n mode: mode$ | async,\r\n ganttFields: context.Setting.View.GanttFields,\r\n ganttChartHelper: context._ganttChartHelper\r\n }\r\n \"\r\n></ng-container>\r\n<ng-template\r\n #renderContainer\r\n let-moDataList\r\n let-allChecked=\"allChecked\"\r\n let-isCheckList=\"isCheckList\"\r\n let-columns=\"columns\"\r\n let-columnsCount=\"columnsCount\"\r\n let-groupby=\"groupby\"\r\n let-secondaryColumns=\"secondaryColumns\"\r\n let-contextMenuItems=\"contextMenuItems\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-deviceSize=\"deviceSize\"\r\n let-access=\"access\"\r\n let-toolbarButtons=\"toolbarButtons\"\r\n let-popin=\"popin\"\r\n let-mobileOrTablet=\"mobileOrTablet\"\r\n let-title=\"title\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-allowInlineEdit=\"allowInlineEdit\"\r\n let-hideToolbar=\"hideToolbar\"\r\n let-gridSetting=\"gridSetting\"\r\n let-contentDensity=\"contentDensity\"\r\n let-formLayout=\"formLayout\"\r\n let-hasSelected=\"hasSelected\"\r\n let-showOkCancelButtons=\"showOkCancelButtons\"\r\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\r\n let-navigationArrow=\"navigationArrow\"\r\n let-mode=\"mode\"\r\n let-ganttFields=\"ganttFields\"\r\n let-ganttChartHelper=\"ganttChartHelper\"\r\n>\r\n <bsu-ulv-toolbar\r\n [hideToolbar]=\"hideToolbar\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [toolbarButtons]=\"toolbarButtons\"\r\n [gridSetting]=\"gridSetting\"\r\n [title]=\"title\"\r\n [hasSelected]=\"hasSelected\"\r\n [access]=\"access\"\r\n [contentDensity]=\"contentDensity\"\r\n [inlineEditMode]=\"false\"\r\n [allowInlineEdit]=\"false\"\r\n ></bsu-ulv-toolbar>\r\n <bsu-gantt-dhtml-chart-view\r\n [isCheckList]=\"isCheckList\"\r\n [allChecked]=\"allChecked\"\r\n [moDataList]=\"moDataList\"\r\n [access]=\"access\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [title]=\"title\"\r\n [mobileOrTablet]=\"mobileOrTablet\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [inlineEditMode]=\"false\"\r\n [allowInlineEdit]=\"false\"\r\n [mode]=\"mode\"\r\n [showOkCancelButtons]=\"showOkCancelButtons\"\r\n [ganttFields]=\"ganttFields\"\r\n [ganttChartHelper]=\"ganttChartHelper\"\r\n (ulvCommandClick)=\"onUlvCommand($event)\"\r\n (filter)=\"onFilter($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n >\r\n </bsu-gantt-dhtml-chart-view>\r\n</ng-template>\r\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.UlvToolbarComponent, selector: "bsu-ulv-toolbar", inputs: ["useLayoutItemTextForControl", "enableSearch", "hideTitle", "title", "deviceName", "deviceSize", "access", "hideToolbar", "toolbarButtons", "contentDensity", "inlineEditMode", "allowInlineEdit", "gridSetting", "viewCollection", "reportView", "inDialog", "isMultiSelect", "hasSelected", "config", "hidden", "buttons"], outputs: ["search", "groupbyClick", "sortClick", "columnClick", "editModeClick", "viewClick", "createNewInlineMo"] }, { kind: "component", type: i3.GanttDhtmlChartViewComponent, selector: "bsu-gantt-dhtml-chart-view", inputs: ["mode", "ganttFields", "ganttChartHelper"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.SeperatorFixPipe, name: "seperatorFix" }, { kind: "pipe", type: i4.ContextMenuPipe, name: "contextMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
28
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UiGanttChartComponent, decorators: [{
29
29
  type: Component,
30
- args: [{ selector: 'bsu-ui-gantt-chart', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container\n *ngTemplateOutlet=\"\n renderContainer;\n context: {\n $implicit: moDataList$ | async,\n allChecked: allChecked$ | async,\n groupby: groupby$ | async,\n isCheckList: context.Setting.View?.IsCheckList,\n columns: columns$ | async,\n columnsCount: columnsCount$ | async,\n allowInlineEdit: allowInlineEdit$ | async,\n inlineEditMode: inlineEditMode$ | async,\n onlyInlineEdit: onlyInlineEdit$ | async,\n secondaryColumns: secondaryColumns$ | async,\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\n conditionalFormats: conditionalFormats$ | async,\n deviceName: deviceName$ | async,\n deviceSize: deviceSize$ | async,\n mobileOrTablet: mobileOrTablet$ | async,\n access: context.Setting.Extra?.DefaultCommandsAccess,\n title: title$ | async,\n rtl: rtl$ | async,\n hideToolbar: hideToolbar$ | async,\n allColumns: allColumns,\n gridSetting: gridSetting$ | async,\n contentDensity: contentDensity$ | async,\n formLayout: layout$ | async,\n hasSelected: hasSelected$ | async,\n showOkCancelButtons: showOkCancelButtons,\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\n navigationArrow: navigationArrow$ | async,\n mode: mode$ | async,\n ganttFields: context.Setting.View.GanttFields,\n ganttChartHelper: context._ganttChartHelper\n }\n \"\n></ng-container>\n<ng-template\n #renderContainer\n let-moDataList\n let-allChecked=\"allChecked\"\n let-isCheckList=\"isCheckList\"\n let-columns=\"columns\"\n let-columnsCount=\"columnsCount\"\n let-groupby=\"groupby\"\n let-secondaryColumns=\"secondaryColumns\"\n let-contextMenuItems=\"contextMenuItems\"\n let-conditionalFormats=\"conditionalFormats\"\n let-deviceName=\"deviceName\"\n let-deviceSize=\"deviceSize\"\n let-access=\"access\"\n let-toolbarButtons=\"toolbarButtons\"\n let-popin=\"popin\"\n let-mobileOrTablet=\"mobileOrTablet\"\n let-title=\"title\"\n let-inlineEditMode=\"inlineEditMode\"\n let-allowInlineEdit=\"allowInlineEdit\"\n let-hideToolbar=\"hideToolbar\"\n let-gridSetting=\"gridSetting\"\n let-contentDensity=\"contentDensity\"\n let-formLayout=\"formLayout\"\n let-hasSelected=\"hasSelected\"\n let-showOkCancelButtons=\"showOkCancelButtons\"\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\n let-navigationArrow=\"navigationArrow\"\n let-mode=\"mode\"\n let-ganttFields=\"ganttFields\"\n let-ganttChartHelper=\"ganttChartHelper\"\n>\n <bsu-ulv-toolbar\n [hideToolbar]=\"hideToolbar\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [toolbarButtons]=\"toolbarButtons\"\n [gridSetting]=\"gridSetting\"\n [title]=\"title\"\n [hasSelected]=\"hasSelected\"\n [access]=\"access\"\n [contentDensity]=\"contentDensity\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n ></bsu-ulv-toolbar>\n <bsu-gantt-dhtml-chart-view\n [isCheckList]=\"isCheckList\"\n [allChecked]=\"allChecked\"\n [moDataList]=\"moDataList\"\n [access]=\"access\"\n [deviceName]=\"deviceName\"\n [deviceSize]=\"deviceSize\"\n [navigationArrow]=\"navigationArrow\"\n [title]=\"title\"\n [mobileOrTablet]=\"mobileOrTablet\"\n [contextMenuItems]=\"contextMenuItems\"\n [inlineEditMode]=\"false\"\n [allowInlineEdit]=\"false\"\n [mode]=\"mode\"\n [showOkCancelButtons]=\"showOkCancelButtons\"\n [ganttFields]=\"ganttFields\"\n [ganttChartHelper]=\"ganttChartHelper\"\n (ulvCommandClick)=\"onUlvCommand($event)\"\n (filter)=\"onFilter($event)\"\n (rowClick)=\"onRowClick($event)\"\n (rowCheck)=\"onRowCheck($event)\"\n >\n </bsu-gantt-dhtml-chart-view>\n</ng-template>\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"] }]
30
+ args: [{ selector: 'bsu-ui-gantt-chart', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container\r\n *ngTemplateOutlet=\"\r\n renderContainer;\r\n context: {\r\n $implicit: moDataList$ | async,\r\n allChecked: allChecked$ | async,\r\n groupby: groupby$ | async,\r\n isCheckList: context.Setting.View?.IsCheckList,\r\n columns: columns$ | async,\r\n columnsCount: columnsCount$ | async,\r\n allowInlineEdit: allowInlineEdit$ | async,\r\n inlineEditMode: inlineEditMode$ | async,\r\n onlyInlineEdit: onlyInlineEdit$ | async,\r\n secondaryColumns: secondaryColumns$ | async,\r\n toolbarButtons: (toolbarButtons$ | async)!! | seperatorFix,\r\n popin: (mobileOrTablet$ | async) || (secondaryColumnsCount$ | async) ? true : false,\r\n contextMenuItems: menuItems$ | async | contextMenu: context.Setting.View?.IsCheckList,\r\n conditionalFormats: conditionalFormats$ | async,\r\n deviceName: deviceName$ | async,\r\n deviceSize: deviceSize$ | async,\r\n mobileOrTablet: mobileOrTablet$ | async,\r\n access: context.Setting.Extra?.DefaultCommandsAccess,\r\n title: title$ | async,\r\n rtl: rtl$ | async,\r\n hideToolbar: hideToolbar$ | async,\r\n allColumns: allColumns,\r\n gridSetting: gridSetting$ | async,\r\n contentDensity: contentDensity$ | async,\r\n formLayout: layout$ | async,\r\n hasSelected: hasSelected$ | async,\r\n showOkCancelButtons: showOkCancelButtons,\r\n disableOverflowContextMenu: viewSetting?.DisableOverflowContextMenu,\r\n navigationArrow: navigationArrow$ | async,\r\n mode: mode$ | async,\r\n ganttFields: context.Setting.View.GanttFields,\r\n ganttChartHelper: context._ganttChartHelper\r\n }\r\n \"\r\n></ng-container>\r\n<ng-template\r\n #renderContainer\r\n let-moDataList\r\n let-allChecked=\"allChecked\"\r\n let-isCheckList=\"isCheckList\"\r\n let-columns=\"columns\"\r\n let-columnsCount=\"columnsCount\"\r\n let-groupby=\"groupby\"\r\n let-secondaryColumns=\"secondaryColumns\"\r\n let-contextMenuItems=\"contextMenuItems\"\r\n let-conditionalFormats=\"conditionalFormats\"\r\n let-deviceName=\"deviceName\"\r\n let-deviceSize=\"deviceSize\"\r\n let-access=\"access\"\r\n let-toolbarButtons=\"toolbarButtons\"\r\n let-popin=\"popin\"\r\n let-mobileOrTablet=\"mobileOrTablet\"\r\n let-title=\"title\"\r\n let-inlineEditMode=\"inlineEditMode\"\r\n let-allowInlineEdit=\"allowInlineEdit\"\r\n let-hideToolbar=\"hideToolbar\"\r\n let-gridSetting=\"gridSetting\"\r\n let-contentDensity=\"contentDensity\"\r\n let-formLayout=\"formLayout\"\r\n let-hasSelected=\"hasSelected\"\r\n let-showOkCancelButtons=\"showOkCancelButtons\"\r\n let-disableOverflowContextMenu=\"disableOverflowContextMenu\"\r\n let-navigationArrow=\"navigationArrow\"\r\n let-mode=\"mode\"\r\n let-ganttFields=\"ganttFields\"\r\n let-ganttChartHelper=\"ganttChartHelper\"\r\n>\r\n <bsu-ulv-toolbar\r\n [hideToolbar]=\"hideToolbar\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [toolbarButtons]=\"toolbarButtons\"\r\n [gridSetting]=\"gridSetting\"\r\n [title]=\"title\"\r\n [hasSelected]=\"hasSelected\"\r\n [access]=\"access\"\r\n [contentDensity]=\"contentDensity\"\r\n [inlineEditMode]=\"false\"\r\n [allowInlineEdit]=\"false\"\r\n ></bsu-ulv-toolbar>\r\n <bsu-gantt-dhtml-chart-view\r\n [isCheckList]=\"isCheckList\"\r\n [allChecked]=\"allChecked\"\r\n [moDataList]=\"moDataList\"\r\n [access]=\"access\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [title]=\"title\"\r\n [mobileOrTablet]=\"mobileOrTablet\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [inlineEditMode]=\"false\"\r\n [allowInlineEdit]=\"false\"\r\n [mode]=\"mode\"\r\n [showOkCancelButtons]=\"showOkCancelButtons\"\r\n [ganttFields]=\"ganttFields\"\r\n [ganttChartHelper]=\"ganttChartHelper\"\r\n (ulvCommandClick)=\"onUlvCommand($event)\"\r\n (filter)=\"onFilter($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (rowCheck)=\"onRowCheck($event)\"\r\n >\r\n </bsu-gantt-dhtml-chart-view>\r\n</ng-template>\r\n", styles: [":host{display:block}:host.gantt_rtl{direction:ltr}::ng-deep .gantt_rtl>.gantt_layout_root>.gantt_layout{display:flex;flex-direction:row-reverse}::ng-deep .gantt-fix-grid{direction:ltr}::ng-deep .gantt_grid_scale{direction:ltr}::ng-deep .gantt_tree_content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gantt_container,::ng-deep .gantt_tooltip{font-family:var(--sapFontFamily)!important}\n"] }]
31
31
  }] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ2FudHQtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUUzRSxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7O0FBUTNFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSx3QkFBaUQ7SUFONUY7O1FBUVksZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBWSxLQUFLLENBQUMsQ0FBQztLQVkvRDtJQVZHLFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNaLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDM0MsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNTLFlBQVksQ0FBQyxJQUFlO1FBQ2xDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O2tIQWJRLHFCQUFxQjtzR0FBckIscUJBQXFCLGlGQ1psQyxreElBNEdBOzJGRGhHYSxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0ksb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU2FwVWlSZXBvcnRCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vc2FwLXVpLXJlcG9ydC1iYXNlLmNvbXBvbmVudCc7XG5kZWNsYXJlIHR5cGUgR2FudHRNb2RlID0gJ2RheScgfCAnbW9udGgnIHwgJ3llYXInO1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtdWktZ2FudHQtY2hhcnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1nYW50dC1jaGFydC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktZ2FudHQtY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBVaUdhbnR0Q2hhcnRDb21wb25lbnQgZXh0ZW5kcyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQ8VWlSZXBvcnRWaWV3QmFzZVNldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBtb2RlJDogT2JzZXJ2YWJsZTxHYW50dE1vZGU+O1xuICAgIHByaXZhdGUgX21vZGVTb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEdhbnR0TW9kZT4oJ2RheScpO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW9kZSQgPSB0aGlzLl9tb2RlU291cmNlLmFzT2JzZXJ2YWJsZSgpLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5jb250ZXh0Lm9uKHtcbiAgICAgICAgICAgIE1vZGVDaGFuZ2U6IHRoaXMuX21vZGVDaGFuZ2VkLmJpbmQodGhpcylcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfbW9kZUNoYW5nZWQobW9kZTogR2FudHRNb2RlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX21vZGVTb3VyY2UubmV4dChtb2RlKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyXG4gICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgcmVuZGVyQ29udGFpbmVyO1xuICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IG1vRGF0YUxpc3QkIHwgYXN5bmMsXG4gICAgICAgICAgICBhbGxDaGVja2VkOiBhbGxDaGVja2VkJCB8IGFzeW5jLFxuICAgICAgICAgICAgZ3JvdXBieTogZ3JvdXBieSQgfCBhc3luYyxcbiAgICAgICAgICAgIGlzQ2hlY2tMaXN0OiBjb250ZXh0LlNldHRpbmcuVmlldz8uSXNDaGVja0xpc3QsXG4gICAgICAgICAgICBjb2x1bW5zOiBjb2x1bW5zJCB8IGFzeW5jLFxuICAgICAgICAgICAgY29sdW1uc0NvdW50OiBjb2x1bW5zQ291bnQkIHwgYXN5bmMsXG4gICAgICAgICAgICBhbGxvd0lubGluZUVkaXQ6IGFsbG93SW5saW5lRWRpdCQgfCBhc3luYyxcbiAgICAgICAgICAgIGlubGluZUVkaXRNb2RlOiBpbmxpbmVFZGl0TW9kZSQgfCBhc3luYyxcbiAgICAgICAgICAgIG9ubHlJbmxpbmVFZGl0OiBvbmx5SW5saW5lRWRpdCQgfCBhc3luYyxcbiAgICAgICAgICAgIHNlY29uZGFyeUNvbHVtbnM6IHNlY29uZGFyeUNvbHVtbnMkIHwgYXN5bmMsXG4gICAgICAgICAgICB0b29sYmFyQnV0dG9uczogKHRvb2xiYXJCdXR0b25zJCB8IGFzeW5jKSEhIHwgc2VwZXJhdG9yRml4LFxuICAgICAgICAgICAgcG9waW46IChtb2JpbGVPclRhYmxldCQgfCBhc3luYykgfHwgKHNlY29uZGFyeUNvbHVtbnNDb3VudCQgfCBhc3luYykgPyB0cnVlIDogZmFsc2UsXG4gICAgICAgICAgICBjb250ZXh0TWVudUl0ZW1zOiBtZW51SXRlbXMkIHwgYXN5bmMgfCBjb250ZXh0TWVudTogY29udGV4dC5TZXR0aW5nLlZpZXc/LklzQ2hlY2tMaXN0LFxuICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXRzOiBjb25kaXRpb25hbEZvcm1hdHMkIHwgYXN5bmMsXG4gICAgICAgICAgICBkZXZpY2VOYW1lOiBkZXZpY2VOYW1lJCB8IGFzeW5jLFxuICAgICAgICAgICAgZGV2aWNlU2l6ZTogZGV2aWNlU2l6ZSQgfCBhc3luYyxcbiAgICAgICAgICAgIG1vYmlsZU9yVGFibGV0OiBtb2JpbGVPclRhYmxldCQgfCBhc3luYyxcbiAgICAgICAgICAgIGFjY2VzczogY29udGV4dC5TZXR0aW5nLkV4dHJhPy5EZWZhdWx0Q29tbWFuZHNBY2Nlc3MsXG4gICAgICAgICAgICB0aXRsZTogdGl0bGUkIHwgYXN5bmMsXG4gICAgICAgICAgICBydGw6IHJ0bCQgfCBhc3luYyxcbiAgICAgICAgICAgIGhpZGVUb29sYmFyOiBoaWRlVG9vbGJhciQgfCBhc3luYyxcbiAgICAgICAgICAgIGFsbENvbHVtbnM6IGFsbENvbHVtbnMsXG4gICAgICAgICAgICBncmlkU2V0dGluZzogZ3JpZFNldHRpbmckIHwgYXN5bmMsXG4gICAgICAgICAgICBjb250ZW50RGVuc2l0eTogY29udGVudERlbnNpdHkkIHwgYXN5bmMsXG4gICAgICAgICAgICBmb3JtTGF5b3V0OiBsYXlvdXQkIHwgYXN5bmMsXG4gICAgICAgICAgICBoYXNTZWxlY3RlZDogaGFzU2VsZWN0ZWQkIHwgYXN5bmMsXG4gICAgICAgICAgICBzaG93T2tDYW5jZWxCdXR0b25zOiBzaG93T2tDYW5jZWxCdXR0b25zLFxuICAgICAgICAgICAgZGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnU6IHZpZXdTZXR0aW5nPy5EaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudSxcbiAgICAgICAgICAgIG5hdmlnYXRpb25BcnJvdzogbmF2aWdhdGlvbkFycm93JCB8IGFzeW5jLFxuICAgICAgICAgICAgbW9kZTogbW9kZSQgfCBhc3luYyxcbiAgICAgICAgICAgIGdhbnR0RmllbGRzOiBjb250ZXh0LlNldHRpbmcuVmlldy5HYW50dEZpZWxkcyxcbiAgICAgICAgICAgIGdhbnR0Q2hhcnRIZWxwZXI6IGNvbnRleHQuX2dhbnR0Q2hhcnRIZWxwZXJcbiAgICAgICAgfVxuICAgIFwiXG4+PC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGVcbiAgICAjcmVuZGVyQ29udGFpbmVyXG4gICAgbGV0LW1vRGF0YUxpc3RcbiAgICBsZXQtYWxsQ2hlY2tlZD1cImFsbENoZWNrZWRcIlxuICAgIGxldC1pc0NoZWNrTGlzdD1cImlzQ2hlY2tMaXN0XCJcbiAgICBsZXQtY29sdW1ucz1cImNvbHVtbnNcIlxuICAgIGxldC1jb2x1bW5zQ291bnQ9XCJjb2x1bW5zQ291bnRcIlxuICAgIGxldC1ncm91cGJ5PVwiZ3JvdXBieVwiXG4gICAgbGV0LXNlY29uZGFyeUNvbHVtbnM9XCJzZWNvbmRhcnlDb2x1bW5zXCJcbiAgICBsZXQtY29udGV4dE1lbnVJdGVtcz1cImNvbnRleHRNZW51SXRlbXNcIlxuICAgIGxldC1jb25kaXRpb25hbEZvcm1hdHM9XCJjb25kaXRpb25hbEZvcm1hdHNcIlxuICAgIGxldC1kZXZpY2VOYW1lPVwiZGV2aWNlTmFtZVwiXG4gICAgbGV0LWRldmljZVNpemU9XCJkZXZpY2VTaXplXCJcbiAgICBsZXQtYWNjZXNzPVwiYWNjZXNzXCJcbiAgICBsZXQtdG9vbGJhckJ1dHRvbnM9XCJ0b29sYmFyQnV0dG9uc1wiXG4gICAgbGV0LXBvcGluPVwicG9waW5cIlxuICAgIGxldC1tb2JpbGVPclRhYmxldD1cIm1vYmlsZU9yVGFibGV0XCJcbiAgICBsZXQtdGl0bGU9XCJ0aXRsZVwiXG4gICAgbGV0LWlubGluZUVkaXRNb2RlPVwiaW5saW5lRWRpdE1vZGVcIlxuICAgIGxldC1hbGxvd0lubGluZUVkaXQ9XCJhbGxvd0lubGluZUVkaXRcIlxuICAgIGxldC1oaWRlVG9vbGJhcj1cImhpZGVUb29sYmFyXCJcbiAgICBsZXQtZ3JpZFNldHRpbmc9XCJncmlkU2V0dGluZ1wiXG4gICAgbGV0LWNvbnRlbnREZW5zaXR5PVwiY29udGVudERlbnNpdHlcIlxuICAgIGxldC1mb3JtTGF5b3V0PVwiZm9ybUxheW91dFwiXG4gICAgbGV0LWhhc1NlbGVjdGVkPVwiaGFzU2VsZWN0ZWRcIlxuICAgIGxldC1zaG93T2tDYW5jZWxCdXR0b25zPVwic2hvd09rQ2FuY2VsQnV0dG9uc1wiXG4gICAgbGV0LWRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51PVwiZGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnVcIlxuICAgIGxldC1uYXZpZ2F0aW9uQXJyb3c9XCJuYXZpZ2F0aW9uQXJyb3dcIlxuICAgIGxldC1tb2RlPVwibW9kZVwiXG4gICAgbGV0LWdhbnR0RmllbGRzPVwiZ2FudHRGaWVsZHNcIlxuICAgIGxldC1nYW50dENoYXJ0SGVscGVyPVwiZ2FudHRDaGFydEhlbHBlclwiXG4+XG4gICAgPGJzdS11bHYtdG9vbGJhclxuICAgICAgICBbaGlkZVRvb2xiYXJdPVwiaGlkZVRvb2xiYXJcIlxuICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcbiAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXG4gICAgICAgIFt0b29sYmFyQnV0dG9uc109XCJ0b29sYmFyQnV0dG9uc1wiXG4gICAgICAgIFtncmlkU2V0dGluZ109XCJncmlkU2V0dGluZ1wiXG4gICAgICAgIFt0aXRsZV09XCJ0aXRsZVwiXG4gICAgICAgIFtoYXNTZWxlY3RlZF09XCJoYXNTZWxlY3RlZFwiXG4gICAgICAgIFthY2Nlc3NdPVwiYWNjZXNzXCJcbiAgICAgICAgW2NvbnRlbnREZW5zaXR5XT1cImNvbnRlbnREZW5zaXR5XCJcbiAgICAgICAgW2lubGluZUVkaXRNb2RlXT1cImZhbHNlXCJcbiAgICAgICAgW2FsbG93SW5saW5lRWRpdF09XCJmYWxzZVwiXG4gICAgPjwvYnN1LXVsdi10b29sYmFyPlxuICAgIDxic3UtZ2FudHQtZGh0bWwtY2hhcnQtdmlld1xuICAgICAgICBbaXNDaGVja0xpc3RdPVwiaXNDaGVja0xpc3RcIlxuICAgICAgICBbYWxsQ2hlY2tlZF09XCJhbGxDaGVja2VkXCJcbiAgICAgICAgW21vRGF0YUxpc3RdPVwibW9EYXRhTGlzdFwiXG4gICAgICAgIFthY2Nlc3NdPVwiYWNjZXNzXCJcbiAgICAgICAgW2RldmljZU5hbWVdPVwiZGV2aWNlTmFtZVwiXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxuICAgICAgICBbbmF2aWdhdGlvbkFycm93XT1cIm5hdmlnYXRpb25BcnJvd1wiXG4gICAgICAgIFt0aXRsZV09XCJ0aXRsZVwiXG4gICAgICAgIFttb2JpbGVPclRhYmxldF09XCJtb2JpbGVPclRhYmxldFwiXG4gICAgICAgIFtjb250ZXh0TWVudUl0ZW1zXT1cImNvbnRleHRNZW51SXRlbXNcIlxuICAgICAgICBbaW5saW5lRWRpdE1vZGVdPVwiZmFsc2VcIlxuICAgICAgICBbYWxsb3dJbmxpbmVFZGl0XT1cImZhbHNlXCJcbiAgICAgICAgW21vZGVdPVwibW9kZVwiXG4gICAgICAgIFtzaG93T2tDYW5jZWxCdXR0b25zXT1cInNob3dPa0NhbmNlbEJ1dHRvbnNcIlxuICAgICAgICBbZ2FudHRGaWVsZHNdPVwiZ2FudHRGaWVsZHNcIlxuICAgICAgICBbZ2FudHRDaGFydEhlbHBlcl09XCJnYW50dENoYXJ0SGVscGVyXCJcbiAgICAgICAgKHVsdkNvbW1hbmRDbGljayk9XCJvblVsdkNvbW1hbmQoJGV2ZW50KVwiXG4gICAgICAgIChmaWx0ZXIpPVwib25GaWx0ZXIoJGV2ZW50KVwiXG4gICAgICAgIChyb3dDbGljayk9XCJvblJvd0NsaWNrKCRldmVudClcIlxuICAgICAgICAocm93Q2hlY2spPVwib25Sb3dDaGVjaygkZXZlbnQpXCJcbiAgICA+XG4gICAgPC9ic3UtZ2FudHQtZGh0bWwtY2hhcnQtdmlldz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ2FudHQtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ2FudHQtY2hhcnQvdWktZ2FudHQtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUUzRSxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7O0FBUTNFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSx3QkFBaUQ7SUFONUY7O1FBUVksZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBWSxLQUFLLENBQUMsQ0FBQztLQVkvRDtJQVZHLFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNaLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDM0MsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNTLFlBQVksQ0FBQyxJQUFlO1FBQ2xDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O2tIQWJRLHFCQUFxQjtzR0FBckIscUJBQXFCLGlGQ1psQywwK0lBNEdBOzJGRGhHYSxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0ksb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9zYXAtdWktcmVwb3J0LWJhc2UuY29tcG9uZW50JztcclxuZGVjbGFyZSB0eXBlIEdhbnR0TW9kZSA9ICdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJztcclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11aS1nYW50dC1jaGFydCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktZ2FudHQtY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktZ2FudHQtY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaUdhbnR0Q2hhcnRDb21wb25lbnQgZXh0ZW5kcyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQ8VWlSZXBvcnRWaWV3QmFzZVNldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIG1vZGUkOiBPYnNlcnZhYmxlPEdhbnR0TW9kZT47XHJcbiAgICBwcml2YXRlIF9tb2RlU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxHYW50dE1vZGU+KCdkYXknKTtcclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm1vZGUkID0gdGhpcy5fbW9kZVNvdXJjZS5hc09ic2VydmFibGUoKS5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLmNvbnRleHQub24oe1xyXG4gICAgICAgICAgICBNb2RlQ2hhbmdlOiB0aGlzLl9tb2RlQ2hhbmdlZC5iaW5kKHRoaXMpXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgX21vZGVDaGFuZ2VkKG1vZGU6IEdhbnR0TW9kZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX21vZGVTb3VyY2UubmV4dChtb2RlKTtcclxuICAgIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyXHJcbiAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICAgIHJlbmRlckNvbnRhaW5lcjtcclxuICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICRpbXBsaWNpdDogbW9EYXRhTGlzdCQgfCBhc3luYyxcclxuICAgICAgICAgICAgYWxsQ2hlY2tlZDogYWxsQ2hlY2tlZCQgfCBhc3luYyxcclxuICAgICAgICAgICAgZ3JvdXBieTogZ3JvdXBieSQgfCBhc3luYyxcclxuICAgICAgICAgICAgaXNDaGVja0xpc3Q6IGNvbnRleHQuU2V0dGluZy5WaWV3Py5Jc0NoZWNrTGlzdCxcclxuICAgICAgICAgICAgY29sdW1uczogY29sdW1ucyQgfCBhc3luYyxcclxuICAgICAgICAgICAgY29sdW1uc0NvdW50OiBjb2x1bW5zQ291bnQkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGFsbG93SW5saW5lRWRpdDogYWxsb3dJbmxpbmVFZGl0JCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBpbmxpbmVFZGl0TW9kZTogaW5saW5lRWRpdE1vZGUkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIG9ubHlJbmxpbmVFZGl0OiBvbmx5SW5saW5lRWRpdCQgfCBhc3luYyxcclxuICAgICAgICAgICAgc2Vjb25kYXJ5Q29sdW1uczogc2Vjb25kYXJ5Q29sdW1ucyQgfCBhc3luYyxcclxuICAgICAgICAgICAgdG9vbGJhckJ1dHRvbnM6ICh0b29sYmFyQnV0dG9ucyQgfCBhc3luYykhISB8IHNlcGVyYXRvckZpeCxcclxuICAgICAgICAgICAgcG9waW46IChtb2JpbGVPclRhYmxldCQgfCBhc3luYykgfHwgKHNlY29uZGFyeUNvbHVtbnNDb3VudCQgfCBhc3luYykgPyB0cnVlIDogZmFsc2UsXHJcbiAgICAgICAgICAgIGNvbnRleHRNZW51SXRlbXM6IG1lbnVJdGVtcyQgfCBhc3luYyB8IGNvbnRleHRNZW51OiBjb250ZXh0LlNldHRpbmcuVmlldz8uSXNDaGVja0xpc3QsXHJcbiAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0czogY29uZGl0aW9uYWxGb3JtYXRzJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBkZXZpY2VOYW1lOiBkZXZpY2VOYW1lJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBkZXZpY2VTaXplOiBkZXZpY2VTaXplJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBtb2JpbGVPclRhYmxldDogbW9iaWxlT3JUYWJsZXQkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGFjY2VzczogY29udGV4dC5TZXR0aW5nLkV4dHJhPy5EZWZhdWx0Q29tbWFuZHNBY2Nlc3MsXHJcbiAgICAgICAgICAgIHRpdGxlOiB0aXRsZSQgfCBhc3luYyxcclxuICAgICAgICAgICAgcnRsOiBydGwkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGhpZGVUb29sYmFyOiBoaWRlVG9vbGJhciQgfCBhc3luYyxcclxuICAgICAgICAgICAgYWxsQ29sdW1uczogYWxsQ29sdW1ucyxcclxuICAgICAgICAgICAgZ3JpZFNldHRpbmc6IGdyaWRTZXR0aW5nJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBjb250ZW50RGVuc2l0eTogY29udGVudERlbnNpdHkkIHwgYXN5bmMsXHJcbiAgICAgICAgICAgIGZvcm1MYXlvdXQ6IGxheW91dCQgfCBhc3luYyxcclxuICAgICAgICAgICAgaGFzU2VsZWN0ZWQ6IGhhc1NlbGVjdGVkJCB8IGFzeW5jLFxyXG4gICAgICAgICAgICBzaG93T2tDYW5jZWxCdXR0b25zOiBzaG93T2tDYW5jZWxCdXR0b25zLFxyXG4gICAgICAgICAgICBkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudTogdmlld1NldHRpbmc/LkRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51LFxyXG4gICAgICAgICAgICBuYXZpZ2F0aW9uQXJyb3c6IG5hdmlnYXRpb25BcnJvdyQgfCBhc3luYyxcclxuICAgICAgICAgICAgbW9kZTogbW9kZSQgfCBhc3luYyxcclxuICAgICAgICAgICAgZ2FudHRGaWVsZHM6IGNvbnRleHQuU2V0dGluZy5WaWV3LkdhbnR0RmllbGRzLFxyXG4gICAgICAgICAgICBnYW50dENoYXJ0SGVscGVyOiBjb250ZXh0Ll9nYW50dENoYXJ0SGVscGVyXHJcbiAgICAgICAgfVxyXG4gICAgXCJcclxuPjwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGVcclxuICAgICNyZW5kZXJDb250YWluZXJcclxuICAgIGxldC1tb0RhdGFMaXN0XHJcbiAgICBsZXQtYWxsQ2hlY2tlZD1cImFsbENoZWNrZWRcIlxyXG4gICAgbGV0LWlzQ2hlY2tMaXN0PVwiaXNDaGVja0xpc3RcIlxyXG4gICAgbGV0LWNvbHVtbnM9XCJjb2x1bW5zXCJcclxuICAgIGxldC1jb2x1bW5zQ291bnQ9XCJjb2x1bW5zQ291bnRcIlxyXG4gICAgbGV0LWdyb3VwYnk9XCJncm91cGJ5XCJcclxuICAgIGxldC1zZWNvbmRhcnlDb2x1bW5zPVwic2Vjb25kYXJ5Q29sdW1uc1wiXHJcbiAgICBsZXQtY29udGV4dE1lbnVJdGVtcz1cImNvbnRleHRNZW51SXRlbXNcIlxyXG4gICAgbGV0LWNvbmRpdGlvbmFsRm9ybWF0cz1cImNvbmRpdGlvbmFsRm9ybWF0c1wiXHJcbiAgICBsZXQtZGV2aWNlTmFtZT1cImRldmljZU5hbWVcIlxyXG4gICAgbGV0LWRldmljZVNpemU9XCJkZXZpY2VTaXplXCJcclxuICAgIGxldC1hY2Nlc3M9XCJhY2Nlc3NcIlxyXG4gICAgbGV0LXRvb2xiYXJCdXR0b25zPVwidG9vbGJhckJ1dHRvbnNcIlxyXG4gICAgbGV0LXBvcGluPVwicG9waW5cIlxyXG4gICAgbGV0LW1vYmlsZU9yVGFibGV0PVwibW9iaWxlT3JUYWJsZXRcIlxyXG4gICAgbGV0LXRpdGxlPVwidGl0bGVcIlxyXG4gICAgbGV0LWlubGluZUVkaXRNb2RlPVwiaW5saW5lRWRpdE1vZGVcIlxyXG4gICAgbGV0LWFsbG93SW5saW5lRWRpdD1cImFsbG93SW5saW5lRWRpdFwiXHJcbiAgICBsZXQtaGlkZVRvb2xiYXI9XCJoaWRlVG9vbGJhclwiXHJcbiAgICBsZXQtZ3JpZFNldHRpbmc9XCJncmlkU2V0dGluZ1wiXHJcbiAgICBsZXQtY29udGVudERlbnNpdHk9XCJjb250ZW50RGVuc2l0eVwiXHJcbiAgICBsZXQtZm9ybUxheW91dD1cImZvcm1MYXlvdXRcIlxyXG4gICAgbGV0LWhhc1NlbGVjdGVkPVwiaGFzU2VsZWN0ZWRcIlxyXG4gICAgbGV0LXNob3dPa0NhbmNlbEJ1dHRvbnM9XCJzaG93T2tDYW5jZWxCdXR0b25zXCJcclxuICAgIGxldC1kaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcclxuICAgIGxldC1uYXZpZ2F0aW9uQXJyb3c9XCJuYXZpZ2F0aW9uQXJyb3dcIlxyXG4gICAgbGV0LW1vZGU9XCJtb2RlXCJcclxuICAgIGxldC1nYW50dEZpZWxkcz1cImdhbnR0RmllbGRzXCJcclxuICAgIGxldC1nYW50dENoYXJ0SGVscGVyPVwiZ2FudHRDaGFydEhlbHBlclwiXHJcbj5cclxuICAgIDxic3UtdWx2LXRvb2xiYXJcclxuICAgICAgICBbaGlkZVRvb2xiYXJdPVwiaGlkZVRvb2xiYXJcIlxyXG4gICAgICAgIFtkZXZpY2VOYW1lXT1cImRldmljZU5hbWVcIlxyXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgICAgIFt0b29sYmFyQnV0dG9uc109XCJ0b29sYmFyQnV0dG9uc1wiXHJcbiAgICAgICAgW2dyaWRTZXR0aW5nXT1cImdyaWRTZXR0aW5nXCJcclxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgICAgIFtoYXNTZWxlY3RlZF09XCJoYXNTZWxlY3RlZFwiXHJcbiAgICAgICAgW2FjY2Vzc109XCJhY2Nlc3NcIlxyXG4gICAgICAgIFtjb250ZW50RGVuc2l0eV09XCJjb250ZW50RGVuc2l0eVwiXHJcbiAgICAgICAgW2lubGluZUVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICBbYWxsb3dJbmxpbmVFZGl0XT1cImZhbHNlXCJcclxuICAgID48L2JzdS11bHYtdG9vbGJhcj5cclxuICAgIDxic3UtZ2FudHQtZGh0bWwtY2hhcnQtdmlld1xyXG4gICAgICAgIFtpc0NoZWNrTGlzdF09XCJpc0NoZWNrTGlzdFwiXHJcbiAgICAgICAgW2FsbENoZWNrZWRdPVwiYWxsQ2hlY2tlZFwiXHJcbiAgICAgICAgW21vRGF0YUxpc3RdPVwibW9EYXRhTGlzdFwiXHJcbiAgICAgICAgW2FjY2Vzc109XCJhY2Nlc3NcIlxyXG4gICAgICAgIFtkZXZpY2VOYW1lXT1cImRldmljZU5hbWVcIlxyXG4gICAgICAgIFtkZXZpY2VTaXplXT1cImRldmljZVNpemVcIlxyXG4gICAgICAgIFtuYXZpZ2F0aW9uQXJyb3ddPVwibmF2aWdhdGlvbkFycm93XCJcclxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgICAgIFttb2JpbGVPclRhYmxldF09XCJtb2JpbGVPclRhYmxldFwiXHJcbiAgICAgICAgW2NvbnRleHRNZW51SXRlbXNdPVwiY29udGV4dE1lbnVJdGVtc1wiXHJcbiAgICAgICAgW2lubGluZUVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICBbYWxsb3dJbmxpbmVFZGl0XT1cImZhbHNlXCJcclxuICAgICAgICBbbW9kZV09XCJtb2RlXCJcclxuICAgICAgICBbc2hvd09rQ2FuY2VsQnV0dG9uc109XCJzaG93T2tDYW5jZWxCdXR0b25zXCJcclxuICAgICAgICBbZ2FudHRGaWVsZHNdPVwiZ2FudHRGaWVsZHNcIlxyXG4gICAgICAgIFtnYW50dENoYXJ0SGVscGVyXT1cImdhbnR0Q2hhcnRIZWxwZXJcIlxyXG4gICAgICAgICh1bHZDb21tYW5kQ2xpY2spPVwib25VbHZDb21tYW5kKCRldmVudClcIlxyXG4gICAgICAgIChmaWx0ZXIpPVwib25GaWx0ZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgKHJvd0NsaWNrKT1cIm9uUm93Q2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgKHJvd0NoZWNrKT1cIm9uUm93Q2hlY2soJGV2ZW50KVwiXHJcbiAgICA+XHJcbiAgICA8L2JzdS1nYW50dC1kaHRtbC1jaGFydC12aWV3PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
@@ -13,4 +13,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
13
13
  type: Component,
14
14
  args: [{ selector: 'bsu-ui-graph', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div id=\"graph\"></div>\r\n", styles: [":host{display:block}:host div{min-height:800px;width:100%}\n"] }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ3JhcGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBUTNFLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSx3QkFBaUQ7SUFDbkYsZUFBZTtRQUNYLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQixDQUFDOzs2R0FKUSxnQkFBZ0I7aUdBQWhCLGdCQUFnQiwyRUNYN0IsOEJBQ0E7MkZEVWEsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNJLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5pbXBvcnQgeyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9zYXAtdWktcmVwb3J0LWJhc2UuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdic3UtdWktZ3JhcGgnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi91aS1ncmFwaC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktZ3JhcGguY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBVaUdyYXBoQ29tcG9uZW50IGV4dGVuZHMgU2FwVWlSZXBvcnRCYXNlQ29tcG9uZW50PFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgICAgIHRoaXMuY29udGV4dC5EcmF3KCdncmFwaCcpO1xuICAgIH1cbn1cbiIsIjxkaXYgaWQ9XCJncmFwaFwiPjwvZGl2PlxyXG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZ3JhcGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktZ3JhcGgvdWktZ3JhcGguY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBUTNFLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSx3QkFBaUQ7SUFDbkYsZUFBZTtRQUNYLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQixDQUFDOzs2R0FKUSxnQkFBZ0I7aUdBQWhCLGdCQUFnQiwyRUNYN0IsOEJBQ0E7MkZEVWEsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNJLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBTYXBVaVJlcG9ydEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9zYXAtdWktcmVwb3J0LWJhc2UuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktZ3JhcGgnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLWdyYXBoLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLWdyYXBoLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVWlHcmFwaENvbXBvbmVudCBleHRlbmRzIFNhcFVpUmVwb3J0QmFzZUNvbXBvbmVudDxVaVJlcG9ydFZpZXdCYXNlU2V0dGluZz4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgICAgICB0aGlzLmNvbnRleHQuRHJhdygnZ3JhcGgnKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGlkPVwiZ3JhcGhcIj48L2Rpdj5cclxuIl19