raise-common-lib-new 0.0.3

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 (64) hide show
  1. package/README.md +24 -0
  2. package/esm2022/lib/common-grid/index.component.mjs +439 -0
  3. package/esm2022/lib/constant/index.mjs +11 -0
  4. package/esm2022/lib/float-box/index.component.mjs +217 -0
  5. package/esm2022/lib/form/checkbox-group/index.component.mjs +57 -0
  6. package/esm2022/lib/form/radio-group/index.component.mjs +42 -0
  7. package/esm2022/lib/form/switch-input/index.component.mjs +42 -0
  8. package/esm2022/lib/form/tag-input/index.component.mjs +62 -0
  9. package/esm2022/lib/layout/common-list/index.component.mjs +43 -0
  10. package/esm2022/lib/layout/main-container/index.component.mjs +18 -0
  11. package/esm2022/lib/layout/rs-aside/index.component.mjs +31 -0
  12. package/esm2022/lib/layout/rs-footer/index.component.mjs +16 -0
  13. package/esm2022/lib/layout/rs-header/index.component.mjs +47 -0
  14. package/esm2022/lib/raise-common-lib.module.mjs +385 -0
  15. package/esm2022/lib/service/common-function.service.mjs +17 -0
  16. package/esm2022/lib/service/icon-loader.service.mjs +20 -0
  17. package/esm2022/public-api.mjs +18 -0
  18. package/esm2022/raise-common-lib-new.mjs +5 -0
  19. package/fesm2022/raise-common-lib-new.mjs +1391 -0
  20. package/fesm2022/raise-common-lib-new.mjs.map +1 -0
  21. package/index.d.ts +5 -0
  22. package/lib/common-grid/index.component.d.ts +119 -0
  23. package/lib/constant/index.d.ts +54 -0
  24. package/lib/float-box/index.component.d.ts +33 -0
  25. package/lib/form/checkbox-group/index.component.d.ts +22 -0
  26. package/lib/form/radio-group/index.component.d.ts +19 -0
  27. package/lib/form/switch-input/index.component.d.ts +15 -0
  28. package/lib/form/tag-input/index.component.d.ts +19 -0
  29. package/lib/layout/common-list/index.component.d.ts +15 -0
  30. package/lib/layout/main-container/index.component.d.ts +8 -0
  31. package/lib/layout/rs-aside/index.component.d.ts +14 -0
  32. package/lib/layout/rs-footer/index.component.d.ts +8 -0
  33. package/lib/layout/rs-header/index.component.d.ts +21 -0
  34. package/lib/raise-common-lib.module.d.ts +35 -0
  35. package/lib/service/common-function.service.d.ts +7 -0
  36. package/lib/service/icon-loader.service.d.ts +9 -0
  37. package/package.json +25 -0
  38. package/public-api.d.ts +14 -0
  39. package/src/assets/img/arrow_right.svg +4 -0
  40. package/src/assets/img/calendar.svg +6 -0
  41. package/src/assets/img/calendar_arrow_left.svg +3 -0
  42. package/src/assets/img/calendar_arrow_right.svg +3 -0
  43. package/src/assets/img/checked-vector.svg +3 -0
  44. package/src/assets/img/delete.svg +14 -0
  45. package/src/assets/img/dropdown-arrow-disabled.svg +3 -0
  46. package/src/assets/img/dropdown-arrow.svg +3 -0
  47. package/src/assets/img/export.svg +5 -0
  48. package/src/assets/img/notification-close.svg +4 -0
  49. package/src/assets/img/notification-collapse.svg +14 -0
  50. package/src/assets/img/notification-status-error.svg +5 -0
  51. package/src/assets/img/notification-status-loading.svg +9 -0
  52. package/src/assets/img/notification-status-success.svg +4 -0
  53. package/src/assets/img/notification-status-warning.svg +5 -0
  54. package/src/assets/img/plus.svg +4 -0
  55. package/src/assets/img/raise_logo_main.svg +13 -0
  56. package/src/assets/img/search.svg +4 -0
  57. package/src/assets/img/tag-remove.svg +4 -0
  58. package/src/assets/img/toggle-menu-icon.svg +3 -0
  59. package/src/assets/style/reset/button.scss +119 -0
  60. package/src/assets/style/reset/dropdown.scss +514 -0
  61. package/src/assets/style/reset/input.scss +32 -0
  62. package/src/assets/style/style.scss +29 -0
  63. package/src/assets/style/syncfusion.min.css +1 -0
  64. package/src/assets/style/variables.scss +58 -0
@@ -0,0 +1,1391 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, Component, ViewChild, Input, Output, ContentChild, Injectable, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i2 from '@syncfusion/ej2-angular-grids';
6
+ import { GridModule, PagerModule, GridAllModule, PageService, SortService, FilterService, ExcelExportService, EditService, ResizeService, ToolbarService, ColumnChooserService, AggregateService, ColumnMenuService, DetailRowService, SelectionService, GroupService } from '@syncfusion/ej2-angular-grids';
7
+ import * as i3 from '@syncfusion/ej2-angular-charts';
8
+ import { ChartAllModule, AccumulationChartAllModule, RangeNavigatorAllModule, AccumulationChartModule, PieSeriesService, AccumulationLegendService, AccumulationTooltipService, AccumulationAnnotationService, AccumulationDataLabelService } from '@syncfusion/ej2-angular-charts';
9
+ import { debounce } from 'lodash';
10
+ import * as i2$1 from '@angular/forms';
11
+ import { ReactiveFormsModule, FormsModule } from '@angular/forms';
12
+ import * as i3$1 from '@syncfusion/ej2-angular-inputs';
13
+ import { TextBoxModule, ColorPickerModule, UploaderModule, NumericTextBoxModule } from '@syncfusion/ej2-angular-inputs';
14
+ import * as i1$1 from '@syncfusion/ej2-angular-splitbuttons';
15
+ import { DropDownButtonModule } from '@syncfusion/ej2-angular-splitbuttons';
16
+ import * as i1$2 from '@angular/router';
17
+ import * as i1$3 from 'angular-svg-icon';
18
+ import { AngularSvgIconModule } from 'angular-svg-icon';
19
+ import * as i3$2 from '@syncfusion/ej2-angular-buttons';
20
+ import { SwitchModule, CheckBoxModule, RadioButtonModule, ButtonModule } from '@syncfusion/ej2-angular-buttons';
21
+ import { HttpClientModule } from '@angular/common/http';
22
+ import { DiagramModule } from '@syncfusion/ej2-angular-diagrams';
23
+ import { TooltipModule, DialogModule } from '@syncfusion/ej2-angular-popups';
24
+ import { DatePickerModule, DateRangePickerModule, DateTimePickerModule } from '@syncfusion/ej2-angular-calendars';
25
+ import { DropDownListModule, DropDownTreeModule, MultiSelectAllModule, AutoCompleteModule, ListBoxModule } from '@syncfusion/ej2-angular-dropdowns';
26
+ import { PivotViewAllModule, PivotFieldListAllModule } from '@syncfusion/ej2-angular-pivotview';
27
+ import { DashboardLayoutModule } from '@syncfusion/ej2-angular-layouts';
28
+ import { CarouselAllModule, ToolbarModule } from '@syncfusion/ej2-angular-navigations';
29
+ import { PdfViewerModule, LinkAnnotationService, BookmarkViewService, MagnificationService, ThumbnailViewService, ToolbarService as ToolbarService$1, NavigationService, TextSearchService, TextSelectionService, PrintService } from '@syncfusion/ej2-angular-pdfviewer';
30
+ import { RichTextEditorAllModule, HtmlEditorService, ToolbarService as ToolbarService$2 } from '@syncfusion/ej2-angular-richtexteditor';
31
+
32
+ class CommonGridComponent {
33
+ ref;
34
+ grid;
35
+ showCheckBox = true;
36
+ loaded = true;
37
+ hiddenLoaded = false;
38
+ authorized = true; // Dataset是否授权,未授权则显示权限错误提示
39
+ // only use for local data pagination
40
+ selectedDiffKey = '';
41
+ gridHeight = '';
42
+ // 这玩意必填,不然filter columnChooser都会报错
43
+ gridId = 'grid';
44
+ resizeSettings = { mode: 'Auto' };
45
+ filterSettings = { type: 'Menu' };
46
+ template;
47
+ fields = [];
48
+ dataSource = [];
49
+ editSettings;
50
+ columnTemplate;
51
+ pageSettings;
52
+ allowPaging = true;
53
+ clipMode = 'EllipsisWithTooltip';
54
+ checkBoxWidth = 32; // col 数量过少的时候,check宽度会拉伸,这时候设置null
55
+ childGrid;
56
+ /**
57
+ * Sample: [
58
+ {
59
+ text: "Preview",
60
+ target: ".e-content",
61
+ id: "preview-icon",
62
+ iconCss: "preview",
63
+ },
64
+ {
65
+ text: "Download",
66
+ target: ".e-content",
67
+ id: "download-icon",
68
+ iconCss: "download",
69
+ }
70
+ ]
71
+ 用于定义row中 点击事件
72
+ */
73
+ contextMenuItems = [];
74
+ // @Input() selectionSettings = { checkboxOnly: true, type: "Multiple" };
75
+ selectionSettings = {
76
+ type: 'Multiple',
77
+ // persistSelection: true,
78
+ checkboxOnly: true,
79
+ };
80
+ alwaysShowCheckbox = false;
81
+ defaultRecord;
82
+ disableSystemRow = false; // 禁用IsSytem = true的整行
83
+ recordDoubleClick = new EventEmitter();
84
+ actionComplete = new EventEmitter();
85
+ rowSelected = new EventEmitter();
86
+ rowDeselected = new EventEmitter();
87
+ onContextMenu = new EventEmitter();
88
+ actionHandler = new EventEmitter();
89
+ queryCellInfo = new EventEmitter();
90
+ recordClick = new EventEmitter();
91
+ actionBegin = new EventEmitter();
92
+ rowDataBound = new EventEmitter();
93
+ dataBound = new EventEmitter();
94
+ exportQueryCellInfo = new EventEmitter();
95
+ rowSelecting = new EventEmitter();
96
+ selectId = [];
97
+ startPaging = false;
98
+ indexList = [];
99
+ className = 'grid-loading';
100
+ translation;
101
+ constructor(ref) {
102
+ this.ref = ref;
103
+ this.translation = JSON.parse(localStorage.getItem('translation'));
104
+ }
105
+ ngOnInit() {
106
+ if (this.hiddenLoaded)
107
+ this.className = '';
108
+ this.ref && this.ref.markForCheck();
109
+ }
110
+ trackByFn(index, item) {
111
+ return index; // or a unique identifier in your object
112
+ }
113
+ ngOnChanges(changes) {
114
+ if (changes.dataSource && changes.dataSource.currentValue) {
115
+ if (this.allowPaging &&
116
+ changes.dataSource.currentValue.length &&
117
+ !this.pageSettings) {
118
+ this.pageSettings =
119
+ changes.dataSource.currentValue.length > 9
120
+ ? {
121
+ pageSizes: ['All', '25', '50', '100'],
122
+ pageSize: 50,
123
+ }
124
+ : null;
125
+ }
126
+ }
127
+ }
128
+ _load() {
129
+ if (!this.authorized) {
130
+ this.grid.localeObj.localeStrings.EmptyRecord =
131
+ this.translation.YOU_DO_NOT_HAVE_THE_DATASET_PERMISSION ||
132
+ "You don't have the dataset permission to view the record.";
133
+ }
134
+ }
135
+ _dataBound(args) {
136
+ // 整个组件加载完成时的回调函数
137
+ var pagerContainer = document.querySelector('.e-pagercontainer');
138
+ if (pagerContainer) {
139
+ var linkElements = pagerContainer.querySelectorAll('.e-link');
140
+ linkElements.forEach(function (element) {
141
+ element.removeAttribute('href'); // SMP2-10310 删除分页器的href属性
142
+ });
143
+ }
144
+ if (this.selectedDiffKey) {
145
+ setTimeout(() => {
146
+ this.chooseRecords();
147
+ });
148
+ }
149
+ this.dataBound.emit(args);
150
+ }
151
+ _exportQueryCellInfo(args) {
152
+ this.exportQueryCellInfo.emit(args);
153
+ }
154
+ _recordDoubleClick($event) {
155
+ this.recordDoubleClick.emit($event);
156
+ }
157
+ /**
158
+ * [selectionSettings]="{ checkboxOnly: true }"
159
+ [showCheckBox]="true"
160
+ 控件使用时,必须配置上面两个属性,否则,全选会失效
161
+ */
162
+ _rowSelected($event) {
163
+ if (this.selectedDiffKey) {
164
+ if ($event.isHeaderCheckboxClicked && Array.isArray($event.data)) {
165
+ if ($event.data && $event.data.length) {
166
+ $event.data.forEach((item) => {
167
+ item.isSelected = true;
168
+ this.selectId.push(item);
169
+ });
170
+ this.dataSource.forEach((data) => {
171
+ $event.data.forEach((_data) => {
172
+ if (_data[this.selectedDiffKey] === data[this.selectedDiffKey]) {
173
+ data.isSelected = true;
174
+ }
175
+ });
176
+ });
177
+ }
178
+ }
179
+ else {
180
+ $event.data.isSelected = true;
181
+ this.selectId.push($event.data);
182
+ this.dataSource.forEach((data) => {
183
+ if (data[this.selectedDiffKey] === $event.data[this.selectedDiffKey]) {
184
+ data.isSelected = true;
185
+ }
186
+ });
187
+ }
188
+ this.ref && this.ref.markForCheck();
189
+ }
190
+ this.rowSelected.emit($event);
191
+ }
192
+ _rowDeselected($event) {
193
+ if (this.selectedDiffKey) {
194
+ if (this.startPaging) {
195
+ return;
196
+ }
197
+ if ($event.isHeaderCheckboxClicked && Array.isArray($event.data)) {
198
+ $event.data.forEach((item) => {
199
+ item.isSelected = false;
200
+ });
201
+ this.selectId = [];
202
+ this.dataSource.forEach((data) => {
203
+ $event.data.forEach((_data) => {
204
+ if (_data[this.selectedDiffKey] === data[this.selectedDiffKey]) {
205
+ data.isSelected = false;
206
+ }
207
+ });
208
+ });
209
+ }
210
+ else {
211
+ $event.data.isSelected = false;
212
+ this.selectId = this.selectId.filter((item) => item[this.selectedDiffKey] !== $event.data[this.selectedDiffKey]);
213
+ this.dataSource.forEach((data) => {
214
+ if (data[this.selectedDiffKey] === $event.data[this.selectedDiffKey]) {
215
+ data.isSelected = false;
216
+ }
217
+ });
218
+ }
219
+ this.ref && this.ref.markForCheck();
220
+ }
221
+ this.rowDeselected.emit($event);
222
+ }
223
+ _onContextMenu(args) {
224
+ this.onContextMenu.emit(args);
225
+ }
226
+ _actionBegin(args) {
227
+ if (this.selectedDiffKey &&
228
+ (args.requestType === 'paging' ||
229
+ args.requestType === 'searching' ||
230
+ args.requestType === 'filtering' ||
231
+ args.requestType === 'sorting')) {
232
+ this.startPaging = true;
233
+ }
234
+ this.actionBegin.emit(args);
235
+ }
236
+ search(keywords) {
237
+ this.grid.search(keywords);
238
+ }
239
+ selectRows(indexList) {
240
+ this.grid.selectRows(indexList);
241
+ }
242
+ selectRow(index) {
243
+ this.grid.selectRow(index);
244
+ }
245
+ getCurrentViewRecords() {
246
+ return this.grid.getCurrentViewRecords();
247
+ }
248
+ customiseCell($event) {
249
+ this.queryCellInfo.emit($event);
250
+ }
251
+ contextMenuOpen(args) {
252
+ const data = args.rowInfo.rowData;
253
+ if (!data) {
254
+ args.cancel = true;
255
+ return;
256
+ }
257
+ let enableItems = [];
258
+ let hideItems = [];
259
+ this.grid.contextMenuModule.contextMenu.refresh(); // 每次点击按钮弹窗前需再次初始化状态 否则不更新;
260
+ this.contextMenuItems.forEach((item) => {
261
+ // 用于处理部分按钮disabled的情况
262
+ if (item.disabled ||
263
+ (data.disableItem && data.disableItem.includes(item.iconCss))) {
264
+ enableItems.push(item.text);
265
+ // this.grid.contextMenuModule.contextMenu.enableItems(
266
+ // [item.text],
267
+ // false
268
+ // );
269
+ }
270
+ // 用于处理部分按钮需要hide的情况
271
+ if (item.isHide ||
272
+ (data.hideItem && data.hideItem.includes(item.iconCss))) {
273
+ hideItems.push(item.text);
274
+ // this.grid.contextMenuModule.contextMenu.hideItems(
275
+ // [item.text],
276
+ // false
277
+ // );
278
+ }
279
+ });
280
+ this.grid.contextMenuModule.contextMenu.enableItems(enableItems, false);
281
+ this.grid.contextMenuModule.contextMenu.hideItems(hideItems, false);
282
+ }
283
+ _actionHandler($event) {
284
+ if (this.selectedDiffKey &&
285
+ ($event.requestType === 'paging' ||
286
+ $event.requestType === 'searching' ||
287
+ $event.requestType === 'filtering' ||
288
+ $event.requestType === 'sorting')) {
289
+ this.indexList = [];
290
+ setTimeout(() => {
291
+ this.chooseRecords();
292
+ this.startPaging = false;
293
+ this.ref && this.ref.detectChanges();
294
+ this.ref && this.ref.markForCheck();
295
+ });
296
+ }
297
+ this.actionHandler.emit($event);
298
+ this.actionComplete.emit($event);
299
+ }
300
+ chooseRecords() {
301
+ this.indexList = [];
302
+ this.dataSource.forEach((data) => {
303
+ this.grid.getCurrentViewRecords().forEach((row, i) => {
304
+ if (row &&
305
+ data[this.selectedDiffKey] === row[this.selectedDiffKey] &&
306
+ data.isSelected) {
307
+ this.indexList.push(i);
308
+ }
309
+ });
310
+ });
311
+ this.grid.selectRows(this.indexList);
312
+ }
313
+ _recordClick($event) {
314
+ this.recordClick.emit($event);
315
+ }
316
+ refresh() {
317
+ this.grid.refresh();
318
+ }
319
+ _rowSelecting(e) {
320
+ this.rowSelecting.emit(e);
321
+ }
322
+ refreshColumns() {
323
+ this.grid.refreshColumns();
324
+ }
325
+ refreshHeader() {
326
+ this.grid.refreshHeader();
327
+ }
328
+ export(excelExportProperties) {
329
+ this.grid.excelExport(excelExportProperties);
330
+ }
331
+ getSelectedRecords() {
332
+ return this.grid.getSelectedRecords();
333
+ }
334
+ _rowDataBound($event) {
335
+ if (this.disableSystemRow && $event.data && $event.data.IsSystem) {
336
+ $event.row.classList.add('e-disabled');
337
+ }
338
+ this.rowDataBound.emit($event);
339
+ }
340
+ clearSelection() {
341
+ this.grid.clearSelection();
342
+ }
343
+ excelExport() {
344
+ this.grid.excelExport();
345
+ }
346
+ addItem() {
347
+ this.grid.addRecord({ ...this.defaultRecord, isNew: true }, 0);
348
+ setTimeout(() => {
349
+ this.grid.selectRow(0);
350
+ this.grid.startEdit();
351
+ }, 30);
352
+ }
353
+ saveItem() {
354
+ this.grid.endEdit();
355
+ }
356
+ editItem(index) {
357
+ setTimeout(() => {
358
+ this.grid.selectRow(Number(index));
359
+ this.grid.startEdit();
360
+ }, 30);
361
+ }
362
+ deleteItem(index) {
363
+ this.grid.selectRow(Number(index));
364
+ var selectedRecord = this.grid.getSelectedRecords()[0];
365
+ this.grid.deleteRecord(selectedRecord);
366
+ }
367
+ cancelItem(index) {
368
+ this.grid.closeEdit();
369
+ this.deleteItem(index);
370
+ }
371
+ showLoading() {
372
+ this.className = 'grid-loading';
373
+ this.ref && this.ref.markForCheck();
374
+ this.ref && this.ref.detectChanges();
375
+ }
376
+ hideLoading() {
377
+ this.className = '';
378
+ this.ref && this.ref.markForCheck();
379
+ this.ref && this.ref.detectChanges();
380
+ }
381
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonGridComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
382
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CommonGridComponent, selector: "rs-common-grid", inputs: { showCheckBox: "showCheckBox", loaded: "loaded", hiddenLoaded: "hiddenLoaded", authorized: "authorized", selectedDiffKey: "selectedDiffKey", gridHeight: "gridHeight", gridId: "gridId", resizeSettings: "resizeSettings", filterSettings: "filterSettings", template: "template", fields: "fields", dataSource: "dataSource", editSettings: "editSettings", columnTemplate: "columnTemplate", pageSettings: "pageSettings", allowPaging: "allowPaging", clipMode: "clipMode", checkBoxWidth: "checkBoxWidth", childGrid: "childGrid", contextMenuItems: "contextMenuItems", selectionSettings: "selectionSettings", alwaysShowCheckbox: "alwaysShowCheckbox", defaultRecord: "defaultRecord", disableSystemRow: "disableSystemRow" }, outputs: { recordDoubleClick: "recordDoubleClick", actionComplete: "actionComplete", rowSelected: "rowSelected", rowDeselected: "rowDeselected", onContextMenu: "onContextMenu", actionHandler: "actionHandler", queryCellInfo: "queryCellInfo", recordClick: "recordClick", actionBegin: "actionBegin", rowDataBound: "rowDataBound", dataBound: "dataBound", exportQueryCellInfo: "exportQueryCellInfo", rowSelecting: "rowSelecting" }, viewQueries: [{ propertyName: "grid", first: true, predicate: ["grid"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ejs-grid\r\n\t#grid\r\n\t[id]=\"gridId\"\r\n\t[ngClass]=\"{\r\n\t\t'hide-Check-box': !alwaysShowCheckbox,\r\n\t\t'grid-loading': className === 'grid-loading'\r\n\t}\"\r\n\t[dataSource]=\"dataSource\"\r\n\t[allowPaging]=\"allowPaging && pageSettings\"\r\n\t[allowResizing]=\"true\"\r\n\t[pageSettings]=\"pageSettings\"\r\n\t[showColumnMenu]=\"true\"\r\n\t[allowSorting]=\"true\"\r\n\t[allowFiltering]=\"true\"\r\n\t[allowExcelExport]=\"true\"\r\n\t[filterSettings]=\"filterSettings\"\r\n\t[resizeSettings]=\"resizeSettings\"\r\n\t[allowSelection]=\"true\"\r\n\t[editSettings]=\"editSettings\"\r\n\t[childGrid]=\"childGrid\"\r\n\t[contextMenuItems]=\"\r\n\t\tdataSource && dataSource.length ? contextMenuItems : null\r\n\t\"\r\n\t[selectionSettings]=\"selectionSettings\"\r\n\t(recordClick)=\"_recordClick($event)\"\r\n\t(recordDoubleClick)=\"_recordDoubleClick($event)\"\r\n\t(actionBegin)=\"_actionBegin($event)\"\r\n\t(actionComplete)=\"_actionHandler($event)\"\r\n\t(rowSelected)=\"_rowSelected($event)\"\r\n\t(rowDeselected)=\"_rowDeselected($event)\"\r\n\tstyle=\"border: none\"\r\n\t(contextMenuClick)=\"_onContextMenu($event)\"\r\n\t(contextMenuOpen)=\"contextMenuOpen($event)\"\r\n\t(queryCellInfo)=\"customiseCell($event)\"\r\n\t(dataBound)=\"_dataBound($event)\"\r\n\t(rowDataBound)=\"_rowDataBound($event)\"\r\n\t(rowSelecting)=\"_rowSelecting($event)\"\r\n\t(excelQueryCellInfo)=\"_exportQueryCellInfo($event)\"\r\n\t(load)=\"_load()\"\r\n>\r\n\t<e-columns>\r\n\t\t<e-column\r\n\t\t\t*ngIf=\"showCheckBox\"\r\n\t\t\ttype=\"checkbox\"\r\n\t\t\t[width]=\"checkBoxWidth\"\r\n\t\t\t[showColumnMenu]=\"false\"\r\n\t\t></e-column>\r\n\t\t<e-column\r\n\t\t\t*ngFor=\"let item of fields; trackBy: trackByFn\"\r\n\t\t\t[field]=\"item.columnName\"\r\n\t\t\t[filter]=\"item.filter ? item.filter : { type: 'CheckBox' }\"\r\n\t\t\t[customAttributes]=\"\r\n\t\t\t\titem.colName === 'entityUserList' ||\r\n\t\t\t\titem.colName === 'kycProgress'\r\n\t\t\t\t\t? { class: 'hideColumnFilterClass' }\r\n\t\t\t\t\t: {}\r\n\t\t\t\"\r\n\t\t\t[headerText]=\"item.columnDisplayName\"\r\n\t\t\t[textAlign]=\"item.textAlign\"\r\n\t\t\t[showColumnMenu]=\"item.showColumnMenu === undefined ? true : false\"\r\n\t\t\t[allowFiltering]=\"item.allowFiltering === undefined ? true : false\"\r\n\t\t\t[allowSorting]=\"item.allowSorting === undefined ? true : false\"\r\n\t\t\t[editType]=\"item.editType\"\r\n\t\t\t[validationRules]=\"item.validationRules\"\r\n\t\t\t[type]=\"item.dataType\"\r\n\t\t\t[width]=\"item.width\"\r\n\t\t\t[minWidth]=\"item.minWidth\"\r\n\t\t\t[format]=\"item.format\"\r\n\t\t\t[visible]=\"item.visible\"\r\n\t\t\t[template]=\"item.showTemplate ? columnTemplate : undefined\"\r\n\t\t\t[clipMode]=\"\r\n\t\t\t\titem.clipMode\r\n\t\t\t\t\t? item.clipMode\r\n\t\t\t\t\t: clipMode || 'EllipsisWithTooltip'\r\n\t\t\t\"\r\n\t\t\t[sortComparer]=\"item.dateComparer\"\r\n\t\t>\r\n\t\t</e-column>\r\n\t</e-columns>\r\n</ejs-grid>\r\n", styles: ["::ng-deep .e-grid{font-family:var(--rs-font-family);height:100%;display:flex;flex-direction:column}::ng-deep .e-grid .e-headercell{height:32px}::ng-deep .e-grid .e-headercell .e-headercelldiv{color:#44566c;font-family:Arial;font-size:var(--rs-grid-header-cell-font-size);font-weight:700;line-height:29px;height:29px}::ng-deep .e-grid .e-headercell .e-rhandler{border-right:0!important}::ng-deep .e-grid .e-headercell .e-icons{color:#929dab!important;margin:-22px}::ng-deep .e-grid .e-headercell .e-checkbox-wrapper .e-icons{margin:0}::ng-deep .e-grid .e-headercell .e-checkbox-wrapper .e-icons.e-check,::ng-deep .e-grid .e-headercell .e-checkbox-wrapper .e-icons.e-stop{color:#fff!important;background-color:var(--rs-active-color);border-color:var(--rs-active-color)}::ng-deep .e-grid .e-gridheader{border-bottom-color:transparent}::ng-deep .e-grid .e-gridheader .e-fltr-icon .e-sortfilterdiv{color:#929dab!important;font-size:13px!important;margin:-31px 10px -29px 0}::ng-deep .e-grid .e-rowcell{padding:2px 8px 3px}::ng-deep .e-grid .e-rowcell:not(.e-editedbatchcell):not(.e-updatedtd){color:var(--rs-text-color);font-family:Arial;font-size:var(--rs-grid-row-cell-font-size);font-weight:400;line-height:23px}::ng-deep .e-grid .e-rowcell.e-active{background:#1f7bff14}::ng-deep .e-grid .e-rowcell .e-checkbox-wrapper .e-icons.e-check{color:#fff!important;background-color:var(--rs-active-color);border-color:var(--rs-active-color)}::ng-deep .e-grid .e-row:not(.e-disable-gridhover):not(.e-editedrow):not(.e-detailrow):hover .e-rowcell:not(.e-cellselectionbackground):not(.e-active):not(.e-updatedtd):not(.e-indentcell){background-color:var(--rs-grid-row-hover-bg)!important}::ng-deep .e-grid .e-row:not(.e-disable-gridhover):not(.e-editedrow):not(.e-detailrow):hover .e-rowcell.e-active:not(.e-cellselectionbackground):not(.e-updatedtd):not(.e-indentcell){background-color:#1f7bff1f!important}::ng-deep .e-grid .e-focused:not(.e-menu-item):not(.e-editedbatchcell){box-shadow:none!important}::ng-deep .e-grid .e-gridcontent{flex:1;height:0}::ng-deep .e-grid .e-gridcontent .e-content{height:100%!important;overflow:auto}::ng-deep .e-pager{padding:12px 0;height:48px;font-family:Arial}::ng-deep .e-pager .e-pp,::ng-deep .e-pager .e-pp:hover,::ng-deep .e-pager .e-np,::ng-deep .e-pager .e-np:hover,::ng-deep .e-pager .e-parentmsgbar{padding:0!important}::ng-deep .e-pager .e-icons{padding:5px!important;min-width:20px!important;border:0!important}::ng-deep .e-pager .e-pagercontainer,::ng-deep .e-pager .e-parentmsgbar{height:24px;line-height:24px;border:0;color:#929dab;font-size:10px}::ng-deep .e-pager .e-numericitem{min-width:24px;width:24px;height:24px;padding:0!important;line-height:24px!important;border:0;color:#6c7c90;font-size:12px}::ng-deep .e-pager .e-numericitem:hover{padding:0!important}::ng-deep .e-pager .e-numericitem.e-active{color:#1f3f5c;border-radius:6px;border:1px solid rgba(31,123,255,.66)}::ng-deep .e-pager .e-numericitem.e-focused{background:#fff!important;box-shadow:none!important}::ng-deep .e-pager .e-numericcontainer div{height:24px}::ng-deep .e-pager .e-numericcontainer .e-currentitem{padding:0;background:#fff}::ng-deep .e-pager .e-pagerconstant{margin:0 0 0 16px;line-height:24px;color:#929dab;font-size:11px}::ng-deep .e-pager div.e-icons.e-pager-default{color:#6b6b6b}::ng-deep .e-pager .e-icons:not(.e-btn-icon){color:#adb5bd}::ng-deep .e-pager .e-currentitem{font-size:11px;font-family:Arial}::ng-deep .e-pager .e-pagerdropdown{height:24px!important;margin-top:-14px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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.GridComponent, selector: "ejs-grid", inputs: ["adaptiveUIMode", "aggregates", "allowExcelExport", "allowFiltering", "allowGrouping", "allowKeyboard", "allowMultiSorting", "allowPaging", "allowPdfExport", "allowReordering", "allowResizing", "allowRowDragAndDrop", "allowSelection", "allowSorting", "allowTextWrap", "autoFit", "childGrid", "clipMode", "columnChooserSettings", "columnMenuItems", "columnQueryMode", "columns", "contextMenuItems", "cssClass", "currencyCode", "currentAction", "currentViewData", "dataSource", "detailTemplate", "editSettings", "ej2StatePersistenceVersion", "emptyRecordTemplate", "enableAdaptiveUI", "enableAltRow", "enableAutoFill", "enableColumnVirtualization", "enableHeaderFocus", "enableHover", "enableHtmlSanitizer", "enableImmutableMode", "enableInfiniteScrolling", "enablePersistence", "enableRtl", "enableStickyHeader", "enableVirtualMaskRow", "enableVirtualization", "exportGrids", "filterSettings", "frozenColumns", "frozenRows", "gridLines", "groupSettings", "height", "hierarchyPrintMode", "infiniteScrollSettings", "loadingIndicator", "locale", "pageSettings", "pagerTemplate", "parentDetails", "printMode", "query", "queryString", "resizeSettings", "rowDropSettings", "rowHeight", "rowRenderingMode", "rowTemplate", "searchSettings", "selectedRowIndex", "selectionSettings", "showColumnChooser", "showColumnMenu", "showHider", "sortSettings", "textWrapSettings", "toolbar", "toolbarTemplate", "width"], outputs: ["actionBegin", "actionComplete", "actionFailure", "batchAdd", "batchCancel", "batchDelete", "beforeAutoFill", "beforeBatchAdd", "beforeBatchDelete", "beforeBatchSave", "beforeCopy", "beforeDataBound", "beforeExcelExport", "beforeOpenAdaptiveDialog", "beforeOpenColumnChooser", "beforePaste", "beforePdfExport", "beforePrint", "beginEdit", "cellDeselected", "cellDeselecting", "cellEdit", "cellSave", "cellSaved", "cellSelected", "cellSelecting", "checkBoxChange", "columnDataStateChange", "columnDeselected", "columnDeselecting", "columnDrag", "columnDragStart", "columnDrop", "columnMenuClick", "columnMenuOpen", "columnSelected", "columnSelecting", "commandClick", "contextMenuClick", "contextMenuOpen", "created", "dataBound", "dataSourceChanged", "dataStateChange", "destroyed", "detailDataBound", "excelAggregateQueryCellInfo", "excelExportComplete", "excelHeaderQueryCellInfo", "excelQueryCellInfo", "exportDetailDataBound", "exportDetailTemplate", "exportGroupCaption", "headerCellInfo", "keyPressed", "lazyLoadGroupCollapse", "lazyLoadGroupExpand", "load", "pdfAggregateQueryCellInfo", "pdfExportComplete", "pdfHeaderQueryCellInfo", "pdfQueryCellInfo", "printComplete", "queryCellInfo", "recordClick", "recordDoubleClick", "resizeStart", "resizeStop", "resizing", "rowDataBound", "rowDeselected", "rowDeselecting", "rowDrag", "rowDragStart", "rowDragStartHelper", "rowDrop", "rowSelected", "rowSelecting", "toolbarClick", "dataSourceChange"] }, { kind: "directive", type: i2.ColumnDirective, selector: "ejs-grid>e-columns>e-column", inputs: ["allowEditing", "allowFiltering", "allowGrouping", "allowReordering", "allowResizing", "allowSearching", "allowSorting", "autoFit", "clipMode", "columns", "commands", "customAttributes", "dataSource", "defaultValue", "disableHtmlEncode", "displayAsCheckBox", "edit", "editTemplate", "editType", "enableGroupByFormat", "field", "filter", "filterBarTemplate", "filterTemplate", "foreignKeyField", "foreignKeyValue", "format", "formatter", "freeze", "headerTemplate", "headerText", "headerTextAlign", "headerValueAccessor", "hideAtMedia", "index", "isFrozen", "isIdentity", "isPrimaryKey", "lockColumn", "maxWidth", "minWidth", "showColumnMenu", "showInColumnChooser", "sortComparer", "template", "textAlign", "type", "uid", "validationRules", "valueAccessor", "visible", "width"] }, { kind: "directive", type: i2.ColumnsDirective, selector: "ejs-grid>e-columns" }, { kind: "directive", type: i2.AggregateColumnDirective, selector: "ejs-grid>e-aggregates>e-aggregate>e-columns>e-column", inputs: ["columnName", "customAggregate", "field", "footerTemplate", "format", "groupCaptionTemplate", "groupFooterTemplate", "type"] }, { kind: "directive", type: i2.AggregateColumnsDirective, selector: "ejs-grid>e-aggregates>e-aggregate>e-columns" }, { kind: "directive", type: i3.ColumnDirective, selector: "e-columns>e-column", inputs: ["border", "width"] }, { kind: "directive", type: i3.ColumnsDirective, selector: "ejs-chart>e-columns" }] });
383
+ }
384
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonGridComponent, decorators: [{
385
+ type: Component,
386
+ args: [{ selector: 'rs-common-grid', template: "<ejs-grid\r\n\t#grid\r\n\t[id]=\"gridId\"\r\n\t[ngClass]=\"{\r\n\t\t'hide-Check-box': !alwaysShowCheckbox,\r\n\t\t'grid-loading': className === 'grid-loading'\r\n\t}\"\r\n\t[dataSource]=\"dataSource\"\r\n\t[allowPaging]=\"allowPaging && pageSettings\"\r\n\t[allowResizing]=\"true\"\r\n\t[pageSettings]=\"pageSettings\"\r\n\t[showColumnMenu]=\"true\"\r\n\t[allowSorting]=\"true\"\r\n\t[allowFiltering]=\"true\"\r\n\t[allowExcelExport]=\"true\"\r\n\t[filterSettings]=\"filterSettings\"\r\n\t[resizeSettings]=\"resizeSettings\"\r\n\t[allowSelection]=\"true\"\r\n\t[editSettings]=\"editSettings\"\r\n\t[childGrid]=\"childGrid\"\r\n\t[contextMenuItems]=\"\r\n\t\tdataSource && dataSource.length ? contextMenuItems : null\r\n\t\"\r\n\t[selectionSettings]=\"selectionSettings\"\r\n\t(recordClick)=\"_recordClick($event)\"\r\n\t(recordDoubleClick)=\"_recordDoubleClick($event)\"\r\n\t(actionBegin)=\"_actionBegin($event)\"\r\n\t(actionComplete)=\"_actionHandler($event)\"\r\n\t(rowSelected)=\"_rowSelected($event)\"\r\n\t(rowDeselected)=\"_rowDeselected($event)\"\r\n\tstyle=\"border: none\"\r\n\t(contextMenuClick)=\"_onContextMenu($event)\"\r\n\t(contextMenuOpen)=\"contextMenuOpen($event)\"\r\n\t(queryCellInfo)=\"customiseCell($event)\"\r\n\t(dataBound)=\"_dataBound($event)\"\r\n\t(rowDataBound)=\"_rowDataBound($event)\"\r\n\t(rowSelecting)=\"_rowSelecting($event)\"\r\n\t(excelQueryCellInfo)=\"_exportQueryCellInfo($event)\"\r\n\t(load)=\"_load()\"\r\n>\r\n\t<e-columns>\r\n\t\t<e-column\r\n\t\t\t*ngIf=\"showCheckBox\"\r\n\t\t\ttype=\"checkbox\"\r\n\t\t\t[width]=\"checkBoxWidth\"\r\n\t\t\t[showColumnMenu]=\"false\"\r\n\t\t></e-column>\r\n\t\t<e-column\r\n\t\t\t*ngFor=\"let item of fields; trackBy: trackByFn\"\r\n\t\t\t[field]=\"item.columnName\"\r\n\t\t\t[filter]=\"item.filter ? item.filter : { type: 'CheckBox' }\"\r\n\t\t\t[customAttributes]=\"\r\n\t\t\t\titem.colName === 'entityUserList' ||\r\n\t\t\t\titem.colName === 'kycProgress'\r\n\t\t\t\t\t? { class: 'hideColumnFilterClass' }\r\n\t\t\t\t\t: {}\r\n\t\t\t\"\r\n\t\t\t[headerText]=\"item.columnDisplayName\"\r\n\t\t\t[textAlign]=\"item.textAlign\"\r\n\t\t\t[showColumnMenu]=\"item.showColumnMenu === undefined ? true : false\"\r\n\t\t\t[allowFiltering]=\"item.allowFiltering === undefined ? true : false\"\r\n\t\t\t[allowSorting]=\"item.allowSorting === undefined ? true : false\"\r\n\t\t\t[editType]=\"item.editType\"\r\n\t\t\t[validationRules]=\"item.validationRules\"\r\n\t\t\t[type]=\"item.dataType\"\r\n\t\t\t[width]=\"item.width\"\r\n\t\t\t[minWidth]=\"item.minWidth\"\r\n\t\t\t[format]=\"item.format\"\r\n\t\t\t[visible]=\"item.visible\"\r\n\t\t\t[template]=\"item.showTemplate ? columnTemplate : undefined\"\r\n\t\t\t[clipMode]=\"\r\n\t\t\t\titem.clipMode\r\n\t\t\t\t\t? item.clipMode\r\n\t\t\t\t\t: clipMode || 'EllipsisWithTooltip'\r\n\t\t\t\"\r\n\t\t\t[sortComparer]=\"item.dateComparer\"\r\n\t\t>\r\n\t\t</e-column>\r\n\t</e-columns>\r\n</ejs-grid>\r\n", styles: ["::ng-deep .e-grid{font-family:var(--rs-font-family);height:100%;display:flex;flex-direction:column}::ng-deep .e-grid .e-headercell{height:32px}::ng-deep .e-grid .e-headercell .e-headercelldiv{color:#44566c;font-family:Arial;font-size:var(--rs-grid-header-cell-font-size);font-weight:700;line-height:29px;height:29px}::ng-deep .e-grid .e-headercell .e-rhandler{border-right:0!important}::ng-deep .e-grid .e-headercell .e-icons{color:#929dab!important;margin:-22px}::ng-deep .e-grid .e-headercell .e-checkbox-wrapper .e-icons{margin:0}::ng-deep .e-grid .e-headercell .e-checkbox-wrapper .e-icons.e-check,::ng-deep .e-grid .e-headercell .e-checkbox-wrapper .e-icons.e-stop{color:#fff!important;background-color:var(--rs-active-color);border-color:var(--rs-active-color)}::ng-deep .e-grid .e-gridheader{border-bottom-color:transparent}::ng-deep .e-grid .e-gridheader .e-fltr-icon .e-sortfilterdiv{color:#929dab!important;font-size:13px!important;margin:-31px 10px -29px 0}::ng-deep .e-grid .e-rowcell{padding:2px 8px 3px}::ng-deep .e-grid .e-rowcell:not(.e-editedbatchcell):not(.e-updatedtd){color:var(--rs-text-color);font-family:Arial;font-size:var(--rs-grid-row-cell-font-size);font-weight:400;line-height:23px}::ng-deep .e-grid .e-rowcell.e-active{background:#1f7bff14}::ng-deep .e-grid .e-rowcell .e-checkbox-wrapper .e-icons.e-check{color:#fff!important;background-color:var(--rs-active-color);border-color:var(--rs-active-color)}::ng-deep .e-grid .e-row:not(.e-disable-gridhover):not(.e-editedrow):not(.e-detailrow):hover .e-rowcell:not(.e-cellselectionbackground):not(.e-active):not(.e-updatedtd):not(.e-indentcell){background-color:var(--rs-grid-row-hover-bg)!important}::ng-deep .e-grid .e-row:not(.e-disable-gridhover):not(.e-editedrow):not(.e-detailrow):hover .e-rowcell.e-active:not(.e-cellselectionbackground):not(.e-updatedtd):not(.e-indentcell){background-color:#1f7bff1f!important}::ng-deep .e-grid .e-focused:not(.e-menu-item):not(.e-editedbatchcell){box-shadow:none!important}::ng-deep .e-grid .e-gridcontent{flex:1;height:0}::ng-deep .e-grid .e-gridcontent .e-content{height:100%!important;overflow:auto}::ng-deep .e-pager{padding:12px 0;height:48px;font-family:Arial}::ng-deep .e-pager .e-pp,::ng-deep .e-pager .e-pp:hover,::ng-deep .e-pager .e-np,::ng-deep .e-pager .e-np:hover,::ng-deep .e-pager .e-parentmsgbar{padding:0!important}::ng-deep .e-pager .e-icons{padding:5px!important;min-width:20px!important;border:0!important}::ng-deep .e-pager .e-pagercontainer,::ng-deep .e-pager .e-parentmsgbar{height:24px;line-height:24px;border:0;color:#929dab;font-size:10px}::ng-deep .e-pager .e-numericitem{min-width:24px;width:24px;height:24px;padding:0!important;line-height:24px!important;border:0;color:#6c7c90;font-size:12px}::ng-deep .e-pager .e-numericitem:hover{padding:0!important}::ng-deep .e-pager .e-numericitem.e-active{color:#1f3f5c;border-radius:6px;border:1px solid rgba(31,123,255,.66)}::ng-deep .e-pager .e-numericitem.e-focused{background:#fff!important;box-shadow:none!important}::ng-deep .e-pager .e-numericcontainer div{height:24px}::ng-deep .e-pager .e-numericcontainer .e-currentitem{padding:0;background:#fff}::ng-deep .e-pager .e-pagerconstant{margin:0 0 0 16px;line-height:24px;color:#929dab;font-size:11px}::ng-deep .e-pager div.e-icons.e-pager-default{color:#6b6b6b}::ng-deep .e-pager .e-icons:not(.e-btn-icon){color:#adb5bd}::ng-deep .e-pager .e-currentitem{font-size:11px;font-family:Arial}::ng-deep .e-pager .e-pagerdropdown{height:24px!important;margin-top:-14px}\n"] }]
387
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { grid: [{
388
+ type: ViewChild,
389
+ args: ['grid', { static: false }]
390
+ }], showCheckBox: [{
391
+ type: Input
392
+ }], loaded: [{
393
+ type: Input
394
+ }], hiddenLoaded: [{
395
+ type: Input
396
+ }], authorized: [{
397
+ type: Input
398
+ }], selectedDiffKey: [{
399
+ type: Input
400
+ }], gridHeight: [{
401
+ type: Input
402
+ }], gridId: [{
403
+ type: Input
404
+ }], resizeSettings: [{
405
+ type: Input
406
+ }], filterSettings: [{
407
+ type: Input
408
+ }], template: [{
409
+ type: Input
410
+ }], fields: [{
411
+ type: Input
412
+ }], dataSource: [{
413
+ type: Input
414
+ }], editSettings: [{
415
+ type: Input
416
+ }], columnTemplate: [{
417
+ type: Input
418
+ }], pageSettings: [{
419
+ type: Input
420
+ }], allowPaging: [{
421
+ type: Input
422
+ }], clipMode: [{
423
+ type: Input
424
+ }], checkBoxWidth: [{
425
+ type: Input
426
+ }], childGrid: [{
427
+ type: Input
428
+ }], contextMenuItems: [{
429
+ type: Input
430
+ }], selectionSettings: [{
431
+ type: Input
432
+ }], alwaysShowCheckbox: [{
433
+ type: Input
434
+ }], defaultRecord: [{
435
+ type: Input
436
+ }], disableSystemRow: [{
437
+ type: Input
438
+ }], recordDoubleClick: [{
439
+ type: Output
440
+ }], actionComplete: [{
441
+ type: Output
442
+ }], rowSelected: [{
443
+ type: Output
444
+ }], rowDeselected: [{
445
+ type: Output
446
+ }], onContextMenu: [{
447
+ type: Output
448
+ }], actionHandler: [{
449
+ type: Output
450
+ }], queryCellInfo: [{
451
+ type: Output
452
+ }], recordClick: [{
453
+ type: Output
454
+ }], actionBegin: [{
455
+ type: Output
456
+ }], rowDataBound: [{
457
+ type: Output
458
+ }], dataBound: [{
459
+ type: Output
460
+ }], exportQueryCellInfo: [{
461
+ type: Output
462
+ }], rowSelecting: [{
463
+ type: Output
464
+ }] } });
465
+
466
+ class FloatBoxComponent {
467
+ ref;
468
+ _placement;
469
+ _position;
470
+ _trigger = "hover";
471
+ _animation = "no";
472
+ _fixed = "no";
473
+ get placement() {
474
+ if (["top", "left", "right", "bottom"].includes(this._placement)) {
475
+ return this._placement;
476
+ }
477
+ return "bottom";
478
+ }
479
+ get position() {
480
+ if (["start", "center", "end"].includes(this._position)) {
481
+ return this._position;
482
+ }
483
+ return "center";
484
+ }
485
+ get trigger() {
486
+ if (this._trigger === "click") {
487
+ return "click";
488
+ }
489
+ return "hover";
490
+ }
491
+ get animation() {
492
+ if (this._animation === "yes") {
493
+ return "yes";
494
+ }
495
+ return "no";
496
+ }
497
+ get fixed() {
498
+ if (this._fixed === "yes") {
499
+ return "yes";
500
+ }
501
+ return "no";
502
+ }
503
+ openChange = new EventEmitter();
504
+ rootElement;
505
+ contentElement;
506
+ constructor(ref) {
507
+ this.ref = ref;
508
+ }
509
+ ngAfterViewInit() {
510
+ this.fixedContainerEl = this.getFixedContainer();
511
+ if (this.fixed === "yes") {
512
+ this.fixedContainerEl.append(this.contentElement.nativeElement);
513
+ }
514
+ }
515
+ ngOnDestroy() {
516
+ this.contentElement.nativeElement.remove();
517
+ }
518
+ FIXED_CONTAINER_ID = "kt-float-box-fixed-container";
519
+ fixedContainerEl;
520
+ getFixedContainer() {
521
+ let containerElement = document.getElementById(this.FIXED_CONTAINER_ID);
522
+ if (!containerElement) {
523
+ containerElement = document.createElement("div");
524
+ containerElement.setAttribute("id", this.FIXED_CONTAINER_ID);
525
+ document.body.append(containerElement);
526
+ }
527
+ return containerElement;
528
+ }
529
+ setFixedContentPosition() {
530
+ if (this.fixed === "no") {
531
+ return;
532
+ }
533
+ const { top: y, left: x, width, height, } = this.rootElement.nativeElement.getBoundingClientRect();
534
+ let top = "0";
535
+ let left = "0";
536
+ let translateX = "0";
537
+ let translateY = "0";
538
+ switch (this.placement + "_" + this.position) {
539
+ case "top_start":
540
+ top = y + "px";
541
+ left = x - 8 + "px";
542
+ translateY = "-100%";
543
+ break;
544
+ case "top_center":
545
+ top = y + "px";
546
+ left = x + width / 2 + "px";
547
+ translateX = "-50%";
548
+ translateY = "-100%";
549
+ break;
550
+ case "top_end":
551
+ top = y + "px";
552
+ left = x + width + 8 + "px";
553
+ translateX = "-100%";
554
+ translateY = "-100%";
555
+ break;
556
+ case "left_start":
557
+ top = y - 8 + "px";
558
+ left = x + "px";
559
+ translateX = "-100%";
560
+ break;
561
+ case "left_center":
562
+ top = y + height / 2 + "px";
563
+ left = x + "px";
564
+ translateX = "-100%";
565
+ translateY = "-50%";
566
+ break;
567
+ case "left_end":
568
+ top = y + height + 8 + "px";
569
+ left = x + "px";
570
+ translateX = "-100%";
571
+ translateY = "-100%";
572
+ break;
573
+ case "right_start":
574
+ top = y - 8 + "px";
575
+ left = x + width + "px";
576
+ break;
577
+ case "right_center":
578
+ top = y + height / 2 + "px";
579
+ left = x + width + "px";
580
+ translateY = "-50%";
581
+ break;
582
+ case "right_end":
583
+ top = y + height + 8 + "px";
584
+ left = x + width + "px";
585
+ translateY = "-100%";
586
+ break;
587
+ case "bottom_start":
588
+ top = y + height + "px";
589
+ left = x - 8 + "px";
590
+ break;
591
+ case "bottom_center":
592
+ top = y + height + "px";
593
+ left = x + width / 2 + "px";
594
+ translateX = "-50%";
595
+ break;
596
+ case "bottom_end":
597
+ top = y + height + "px";
598
+ left = x + width + 8 + "px";
599
+ translateX = "-100%";
600
+ break;
601
+ }
602
+ this.contentElement.nativeElement.style.top = top;
603
+ this.contentElement.nativeElement.style.left = left;
604
+ this.contentElement.nativeElement.style.transform = `translate(${translateX}, ${translateY})`;
605
+ }
606
+ opened = "no";
607
+ onClickContainer() {
608
+ if (this.trigger !== "click") {
609
+ return;
610
+ }
611
+ this.opened = "yes";
612
+ this.openChange.emit(true);
613
+ this.setFixedContentPosition();
614
+ window.addEventListener("click", this.onClickOutside);
615
+ }
616
+ onClickOutside = (event) => {
617
+ if (!this.rootElement.nativeElement.contains(event.target) &&
618
+ !this.fixedContainerEl.contains(event.target)) {
619
+ this.opened = "no";
620
+ this.openChange.emit(false);
621
+ window.removeEventListener("click", this.onClickOutside);
622
+ this.ref.markForCheck();
623
+ }
624
+ };
625
+ onMouseEnter() {
626
+ if (this.fixed === "no" || this.trigger !== "hover") {
627
+ return;
628
+ }
629
+ this.opened = "yes";
630
+ this.openChange.emit(true);
631
+ this.setFixedContentPosition();
632
+ window.addEventListener("mousemove", this.onMoveOutside);
633
+ }
634
+ onMoveOutside = (event) => {
635
+ if (!this.rootElement.nativeElement.contains(event.target) &&
636
+ !this.contentElement.nativeElement.contains(event.target)) {
637
+ this.opened = "no";
638
+ this.openChange.emit(false);
639
+ window.removeEventListener("click", this.onMoveOutside);
640
+ this.ref.markForCheck();
641
+ }
642
+ };
643
+ close() {
644
+ setTimeout(() => {
645
+ this.opened = "no";
646
+ this.openChange.emit(false);
647
+ }, 0);
648
+ }
649
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FloatBoxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
650
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FloatBoxComponent, selector: "rs-float-box", inputs: { _placement: ["placement", "_placement"], _position: ["position", "_position"], _trigger: ["trigger", "_trigger"], _animation: ["animation", "_animation"], _fixed: ["fixed", "_fixed"] }, outputs: { openChange: "openChange" }, viewQueries: [{ propertyName: "rootElement", first: true, predicate: ["element"], descendants: true }, { propertyName: "contentElement", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "<div\r\n #element\r\n class=\"float-box-container\"\r\n [attr.data-trigger]=\"trigger\"\r\n (click)=\"onClickContainer()\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n>\r\n <ng-content></ng-content>\r\n <div\r\n #content\r\n class=\"float-box-content\"\r\n [attr.data-placement]=\"placement\"\r\n [attr.data-position]=\"position\"\r\n [attr.data-animation]=\"animation\"\r\n [attr.data-fixed]=\"fixed\"\r\n [attr.data-opened]=\"opened\"\r\n >\r\n <div class=\"float-box-show-content\">\r\n <ng-content select=\"[float-content]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".float-box-container{position:relative}.float-box-container[data-trigger=hover]:not(:hover)>.float-box-content,.float-box-container[data-trigger=click]>.float-box-content[data-opened=no]{display:none}.float-box-container>.float-box-content[data-fixed=no]{padding:8px;--top: 0;--left: 0;--translate-x: 0;--translate-y: 0;position:absolute;top:var(--top);left:var(--left);transform:translate(var(--translate-x),var(--translate-y));z-index:10}.float-box-container>.float-box-content[data-fixed=no][data-animation=yes]{animation:ease-in-out .25s}.float-box-container>.float-box-content[data-fixed=no][data-placement=top]{--translate-y: -100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=top][data-animation=true]{animation-name:open-from-top}.float-box-container>.float-box-content[data-fixed=no][data-placement=left]{--translate-x: -100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=right]{--left: 100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom]{--top: 100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom][data-animation=yes]{animation-name:open-from-bottom}.float-box-container>.float-box-content[data-fixed=no][data-placement=top][data-position=start],.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom][data-position=start]{--left: -8px}.float-box-container>.float-box-content[data-fixed=no][data-placement=top][data-position=center],.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom][data-position=center]{--left: 50%;--translate-x: -50%}.float-box-container>.float-box-content[data-fixed=no][data-placement=top][data-position=end],.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom][data-position=end]{--left: calc(100% + 8px) ;--translate-x: -100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=start],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=start]{--top: -8px}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=start][data-animation=yes],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=start][data-animation=yes]{animation-name:open-from-bottom}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=center],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=center]{--top: 50%;--translate-y: -50%}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=center][data-animation=yes],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=center][data-animation=yes]{animation-name:open-from-bottom}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=end],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=end]{--top: calc(100% + 8px) ;--translate-y: -100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=end][data-animation=yes],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=end][data-animation=yes]{animation-name:open-from-top}@keyframes open-from-top{0%{margin-top:-8px;opacity:.4}to{margin:0;opacity:1}}@keyframes open-from-bottom{0%{margin-top:8px;opacity:.4}to{margin:0;opacity:1}}::ng-deep #kt-float-box-fixed-container{width:0;height:0;z-index:100000}::ng-deep #kt-float-box-fixed-container .float-box-content[data-fixed=yes]{padding:8px;position:fixed;z-index:10}::ng-deep #kt-float-box-fixed-container .float-box-content[data-fixed=yes][data-opened=no]{display:none}.float-box-show-content{padding:8px 8px 12px;border-radius:8px;background:#fff;box-shadow:0 0 8px #00000040}\n"] });
651
+ }
652
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FloatBoxComponent, decorators: [{
653
+ type: Component,
654
+ args: [{ selector: "rs-float-box", template: "<div\r\n #element\r\n class=\"float-box-container\"\r\n [attr.data-trigger]=\"trigger\"\r\n (click)=\"onClickContainer()\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n>\r\n <ng-content></ng-content>\r\n <div\r\n #content\r\n class=\"float-box-content\"\r\n [attr.data-placement]=\"placement\"\r\n [attr.data-position]=\"position\"\r\n [attr.data-animation]=\"animation\"\r\n [attr.data-fixed]=\"fixed\"\r\n [attr.data-opened]=\"opened\"\r\n >\r\n <div class=\"float-box-show-content\">\r\n <ng-content select=\"[float-content]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".float-box-container{position:relative}.float-box-container[data-trigger=hover]:not(:hover)>.float-box-content,.float-box-container[data-trigger=click]>.float-box-content[data-opened=no]{display:none}.float-box-container>.float-box-content[data-fixed=no]{padding:8px;--top: 0;--left: 0;--translate-x: 0;--translate-y: 0;position:absolute;top:var(--top);left:var(--left);transform:translate(var(--translate-x),var(--translate-y));z-index:10}.float-box-container>.float-box-content[data-fixed=no][data-animation=yes]{animation:ease-in-out .25s}.float-box-container>.float-box-content[data-fixed=no][data-placement=top]{--translate-y: -100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=top][data-animation=true]{animation-name:open-from-top}.float-box-container>.float-box-content[data-fixed=no][data-placement=left]{--translate-x: -100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=right]{--left: 100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom]{--top: 100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom][data-animation=yes]{animation-name:open-from-bottom}.float-box-container>.float-box-content[data-fixed=no][data-placement=top][data-position=start],.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom][data-position=start]{--left: -8px}.float-box-container>.float-box-content[data-fixed=no][data-placement=top][data-position=center],.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom][data-position=center]{--left: 50%;--translate-x: -50%}.float-box-container>.float-box-content[data-fixed=no][data-placement=top][data-position=end],.float-box-container>.float-box-content[data-fixed=no][data-placement=bottom][data-position=end]{--left: calc(100% + 8px) ;--translate-x: -100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=start],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=start]{--top: -8px}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=start][data-animation=yes],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=start][data-animation=yes]{animation-name:open-from-bottom}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=center],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=center]{--top: 50%;--translate-y: -50%}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=center][data-animation=yes],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=center][data-animation=yes]{animation-name:open-from-bottom}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=end],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=end]{--top: calc(100% + 8px) ;--translate-y: -100%}.float-box-container>.float-box-content[data-fixed=no][data-placement=left][data-position=end][data-animation=yes],.float-box-container>.float-box-content[data-fixed=no][data-placement=right][data-position=end][data-animation=yes]{animation-name:open-from-top}@keyframes open-from-top{0%{margin-top:-8px;opacity:.4}to{margin:0;opacity:1}}@keyframes open-from-bottom{0%{margin-top:8px;opacity:.4}to{margin:0;opacity:1}}::ng-deep #kt-float-box-fixed-container{width:0;height:0;z-index:100000}::ng-deep #kt-float-box-fixed-container .float-box-content[data-fixed=yes]{padding:8px;position:fixed;z-index:10}::ng-deep #kt-float-box-fixed-container .float-box-content[data-fixed=yes][data-opened=no]{display:none}.float-box-show-content{padding:8px 8px 12px;border-radius:8px;background:#fff;box-shadow:0 0 8px #00000040}\n"] }]
655
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { _placement: [{
656
+ type: Input,
657
+ args: ["placement"]
658
+ }], _position: [{
659
+ type: Input,
660
+ args: ["position"]
661
+ }], _trigger: [{
662
+ type: Input,
663
+ args: ["trigger"]
664
+ }], _animation: [{
665
+ type: Input,
666
+ args: ["animation"]
667
+ }], _fixed: [{
668
+ type: Input,
669
+ args: ["fixed"]
670
+ }], openChange: [{
671
+ type: Output,
672
+ args: ["openChange"]
673
+ }], rootElement: [{
674
+ type: ViewChild,
675
+ args: ["element", { static: false }]
676
+ }], contentElement: [{
677
+ type: ViewChild,
678
+ args: ["content", { static: false }]
679
+ }] } });
680
+
681
+ // 组件类
682
+ class CommonListComponent {
683
+ gridContent;
684
+ pageTitle;
685
+ customPageTitle = false;
686
+ isInner = false;
687
+ debouncedInput;
688
+ ngOnInit() {
689
+ this.debouncedInput = debounce(() => {
690
+ this.onSeach();
691
+ }, 300);
692
+ }
693
+ searchValue;
694
+ onSeach() {
695
+ this.gridContent.grid.search(this.searchValue);
696
+ }
697
+ onInput() {
698
+ this.debouncedInput();
699
+ }
700
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
701
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CommonListComponent, selector: "rs-common-list", inputs: { pageTitle: "pageTitle", customPageTitle: "customPageTitle", isInner: "isInner" }, queries: [{ propertyName: "gridContent", first: true, predicate: CommonGridComponent, descendants: true, static: true }], ngImport: i0, template: "<div class=\"page-list-wrap\" [ngClass]=\"{ 'is-not-inner': !isInner }\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <div class=\"page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</div>\r\n </ng-template>\r\n <div class=\"content-wrap\">\r\n <ng-content select=\"[tabSlot]\"></ng-content>\r\n <div class=\"toolbar-wrap\">\r\n <div class=\"left-col\">\r\n <ng-content select=\"[leftToolbarBtnSlot]\"></ng-content>\r\n </div>\r\n <div class=\"right-col\">\r\n <ng-content select=\"[rightToolbarBtnSlot]\"></ng-content>\r\n <div class=\"search-input\">\r\n <ejs-textbox\r\n type=\"text\"\r\n class=\"e-input\"\r\n [(ngModel)]=\"searchValue\"\r\n (input)=\"onInput()\"\r\n placeholder=\"Search all fields\"\r\n [showClearButton]=\"true\"\r\n autocomplete=\"off\"\r\n ></ejs-textbox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid-wrap\">\r\n <ng-content select=\"[gridSlot]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".page-list-wrap{height:100%;display:flex;flex-direction:column;position:relative;margin:0 auto;max-width:1885px}.page-list-wrap .page-title{font-family:var(--rs-font-family);font-size:var(--rs-page-title-font-size);font-weight:700;text-align:left;color:var(--rs-page-title-color);display:flex;align-items:center;padding:16px 8px 12px 20px}.page-list-wrap .content-wrap{display:flex;flex-direction:column;flex:1;height:0}.page-list-wrap .content-wrap .toolbar-wrap{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.page-list-wrap .content-wrap .toolbar-wrap .left-col,.page-list-wrap .content-wrap .toolbar-wrap .right-col{display:flex;gap:12px}.page-list-wrap .content-wrap .toolbar-wrap .left-col ::ng-deep .e-btn,.page-list-wrap .content-wrap .toolbar-wrap .right-col ::ng-deep .e-btn{height:28px}.page-list-wrap .content-wrap .grid-wrap{flex:1;height:0}.page-list-wrap .content-wrap .grid-wrap .employee-grid-container{height:100%}.page-list-wrap.is-not-inner .content-wrap{border-radius:15px;padding:12px 20px;background:#fff;border:1px solid var(--rs-border-color);box-shadow:0 0 4px #0000001a}.page-list-wrap .search-input{width:240px}.page-list-wrap .search-input ::ng-deep .e-input-group{border-radius:14px!important}.page-list-wrap .search-input ::ng-deep .e-input-group.e-input-focus,.page-list-wrap .search-input ::ng-deep .e-input-group:hover{box-shadow:0 0 3px #1f7bff66!important;border-color:var(--rs-input-hover-border-color)!important}.page-list-wrap .search-input ::ng-deep .e-input-group.e-input-focus input.e-input,.page-list-wrap .search-input ::ng-deep .e-input-group:hover input.e-input{box-shadow:none!important}.page-list-wrap .search-input ::ng-deep .e-input-group input.e-input{width:calc(100% - 50px);height:26px}.page-list-wrap .search-input ::ng-deep .e-input-group:before{content:\"\"!important;margin:6px 0 0 8px;display:block;width:16px;height:16px;background-image:url(/assets/img/search.svg);background-size:cover;background-position:center}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$1.TextBoxComponent, selector: "ejs-textbox", inputs: ["autocomplete", "cssClass", "enablePersistence", "enableRtl", "enabled", "floatLabelType", "htmlAttributes", "locale", "multiline", "placeholder", "readonly", "showClearButton", "type", "value", "width"], outputs: ["blur", "change", "created", "destroyed", "focus", "input", "valueChange"] }] });
702
+ }
703
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonListComponent, decorators: [{
704
+ type: Component,
705
+ args: [{ selector: 'rs-common-list', template: "<div class=\"page-list-wrap\" [ngClass]=\"{ 'is-not-inner': !isInner }\">\r\n <ng-container *ngIf=\"customPageTitle; else defaultTitle\">\r\n <ng-content select=\"[titleSlot]\"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultTitle>\r\n <div class=\"page-title\" *ngIf=\"pageTitle\">{{ pageTitle }}</div>\r\n </ng-template>\r\n <div class=\"content-wrap\">\r\n <ng-content select=\"[tabSlot]\"></ng-content>\r\n <div class=\"toolbar-wrap\">\r\n <div class=\"left-col\">\r\n <ng-content select=\"[leftToolbarBtnSlot]\"></ng-content>\r\n </div>\r\n <div class=\"right-col\">\r\n <ng-content select=\"[rightToolbarBtnSlot]\"></ng-content>\r\n <div class=\"search-input\">\r\n <ejs-textbox\r\n type=\"text\"\r\n class=\"e-input\"\r\n [(ngModel)]=\"searchValue\"\r\n (input)=\"onInput()\"\r\n placeholder=\"Search all fields\"\r\n [showClearButton]=\"true\"\r\n autocomplete=\"off\"\r\n ></ejs-textbox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid-wrap\">\r\n <ng-content select=\"[gridSlot]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".page-list-wrap{height:100%;display:flex;flex-direction:column;position:relative;margin:0 auto;max-width:1885px}.page-list-wrap .page-title{font-family:var(--rs-font-family);font-size:var(--rs-page-title-font-size);font-weight:700;text-align:left;color:var(--rs-page-title-color);display:flex;align-items:center;padding:16px 8px 12px 20px}.page-list-wrap .content-wrap{display:flex;flex-direction:column;flex:1;height:0}.page-list-wrap .content-wrap .toolbar-wrap{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.page-list-wrap .content-wrap .toolbar-wrap .left-col,.page-list-wrap .content-wrap .toolbar-wrap .right-col{display:flex;gap:12px}.page-list-wrap .content-wrap .toolbar-wrap .left-col ::ng-deep .e-btn,.page-list-wrap .content-wrap .toolbar-wrap .right-col ::ng-deep .e-btn{height:28px}.page-list-wrap .content-wrap .grid-wrap{flex:1;height:0}.page-list-wrap .content-wrap .grid-wrap .employee-grid-container{height:100%}.page-list-wrap.is-not-inner .content-wrap{border-radius:15px;padding:12px 20px;background:#fff;border:1px solid var(--rs-border-color);box-shadow:0 0 4px #0000001a}.page-list-wrap .search-input{width:240px}.page-list-wrap .search-input ::ng-deep .e-input-group{border-radius:14px!important}.page-list-wrap .search-input ::ng-deep .e-input-group.e-input-focus,.page-list-wrap .search-input ::ng-deep .e-input-group:hover{box-shadow:0 0 3px #1f7bff66!important;border-color:var(--rs-input-hover-border-color)!important}.page-list-wrap .search-input ::ng-deep .e-input-group.e-input-focus input.e-input,.page-list-wrap .search-input ::ng-deep .e-input-group:hover input.e-input{box-shadow:none!important}.page-list-wrap .search-input ::ng-deep .e-input-group input.e-input{width:calc(100% - 50px);height:26px}.page-list-wrap .search-input ::ng-deep .e-input-group:before{content:\"\"!important;margin:6px 0 0 8px;display:block;width:16px;height:16px;background-image:url(/assets/img/search.svg);background-size:cover;background-position:center}\n"] }]
706
+ }], propDecorators: { gridContent: [{
707
+ type: ContentChild,
708
+ args: [CommonGridComponent, { static: true }]
709
+ }], pageTitle: [{
710
+ type: Input
711
+ }], customPageTitle: [{
712
+ type: Input
713
+ }], isInner: [{
714
+ type: Input
715
+ }] } });
716
+
717
+ // 组件类
718
+ class RSFooterComponent {
719
+ today = new Date();
720
+ ngOnInit() {
721
+ }
722
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RSFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
723
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RSFooterComponent, selector: "rs-footer", ngImport: i0, template: "<div class=\"rs-footer\">\r\n <span>\r\n RAISE<sup>&reg;</sup>\u00A0\u00A9\u00A0\r\n {{ today | date : \"yyyy\" }}\r\n Linnovate Partners</span\r\n >\r\n</div>\r\n", styles: [".rs-footer{height:40px;padding:0 24px;display:flex;align-items:center;background-color:var(--rs-container-bg);color:var(--rs-labels-color);font-family:var(--rs-font-family);font-size:11px}\n"], dependencies: [{ kind: "pipe", type: i1.DatePipe, name: "date" }] });
724
+ }
725
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RSFooterComponent, decorators: [{
726
+ type: Component,
727
+ args: [{ selector: 'rs-footer', template: "<div class=\"rs-footer\">\r\n <span>\r\n RAISE<sup>&reg;</sup>\u00A0\u00A9\u00A0\r\n {{ today | date : \"yyyy\" }}\r\n Linnovate Partners</span\r\n >\r\n</div>\r\n", styles: [".rs-footer{height:40px;padding:0 24px;display:flex;align-items:center;background-color:var(--rs-container-bg);color:var(--rs-labels-color);font-family:var(--rs-font-family);font-size:11px}\n"] }]
728
+ }] });
729
+
730
+ // 组件类
731
+ class MainContainerComponent {
732
+ isCollapsed = false; // 接收输入属性
733
+ ngOnInit() { }
734
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MainContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
735
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MainContainerComponent, selector: "rs-main-container", inputs: { isCollapsed: "isCollapsed" }, ngImport: i0, template: "<div class=\"app-main-container\">\r\n <ng-content select=\"[headerSlot]\"></ng-content>\r\n <div class=\"main-page\">\r\n <div class=\"left-aside\" [ngClass]=\"{ isCollapsed: isCollapsed }\">\r\n <ng-content select=\"[leftAsideSlot]\"></ng-content>\r\n </div>\r\n <div class=\"right-aside\">\r\n <div class=\"router-content\">\r\n <ng-content select=\"[routerSlot]\"></ng-content>\r\n </div>\r\n <rs-footer></rs-footer>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".app-main-container{display:flex;flex-direction:column;height:100vh}.app-main-container .main-page{flex:1;height:0;display:flex;background-color:var(--rs-container-bg)}.app-main-container .left-aside{width:240px;height:100%;padding-right:16px;will-change:width;transition:width .3s}.app-main-container .left-aside.isCollapsed{width:64px;padding-right:0}.app-main-container .right-aside{width:0;flex:1;display:flex;flex-direction:column;padding-right:12px}.app-main-container .right-aside .router-content{flex:1;overflow:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: RSFooterComponent, selector: "rs-footer" }] });
736
+ }
737
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MainContainerComponent, decorators: [{
738
+ type: Component,
739
+ args: [{ selector: "rs-main-container", template: "<div class=\"app-main-container\">\r\n <ng-content select=\"[headerSlot]\"></ng-content>\r\n <div class=\"main-page\">\r\n <div class=\"left-aside\" [ngClass]=\"{ isCollapsed: isCollapsed }\">\r\n <ng-content select=\"[leftAsideSlot]\"></ng-content>\r\n </div>\r\n <div class=\"right-aside\">\r\n <div class=\"router-content\">\r\n <ng-content select=\"[routerSlot]\"></ng-content>\r\n </div>\r\n <rs-footer></rs-footer>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".app-main-container{display:flex;flex-direction:column;height:100vh}.app-main-container .main-page{flex:1;height:0;display:flex;background-color:var(--rs-container-bg)}.app-main-container .left-aside{width:240px;height:100%;padding-right:16px;will-change:width;transition:width .3s}.app-main-container .left-aside.isCollapsed{width:64px;padding-right:0}.app-main-container .right-aside{width:0;flex:1;display:flex;flex-direction:column;padding-right:12px}.app-main-container .right-aside .router-content{flex:1;overflow:auto}\n"] }]
740
+ }], propDecorators: { isCollapsed: [{
741
+ type: Input
742
+ }] } });
743
+
744
+ // 组件类
745
+ class RSHeaderComponent {
746
+ toggleMenu = new EventEmitter();
747
+ lastLoginTime = new Date();
748
+ translation;
749
+ ngOnInit() {
750
+ this.translation = JSON.parse(localStorage.getItem("translation"));
751
+ }
752
+ isCollapsed = false;
753
+ onToggleMenu() {
754
+ this.isCollapsed = !this.isCollapsed;
755
+ this.toggleMenu.emit(this.isCollapsed);
756
+ }
757
+ langOptions = [
758
+ {
759
+ value: 1,
760
+ text: "English",
761
+ },
762
+ {
763
+ value: 2,
764
+ text: "繁體中文",
765
+ },
766
+ {
767
+ value: 3,
768
+ text: "简体中文",
769
+ },
770
+ ];
771
+ currentLang = this.langOptions[0];
772
+ selectLanguage(event) {
773
+ this.currentLang = this.langOptions.find((item) => item.text === event.item.text);
774
+ }
775
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RSHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
776
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RSHeaderComponent, selector: "rs-header", inputs: { lastLoginTime: "lastLoginTime" }, outputs: { toggleMenu: "toggleMenu" }, ngImport: i0, template: "<div class=\"rs-header\">\r\n <div class=\"logo-wrap\">\r\n <div class=\"toggle-menu-wrap\">\r\n <img\r\n class=\"toggle-menu\"\r\n src=\"../../../assets/img/toggle-menu-icon.svg\"\r\n (click)=\"onToggleMenu()\"\r\n />\r\n </div>\r\n <img\r\n class=\"logo\"\r\n src=\"../../../assets/img/raise_logo_main.svg\"\r\n alt=\"logo\"\r\n />\r\n </div>\r\n <div class=\"bread-crumbs-wrap\">\r\n <ng-content select=\"[breadCrumbs]\"></ng-content>\r\n </div>\r\n <div class=\"rs-toolbar-wrap\">\r\n <div class=\"group\">\r\n <ng-content select=\"[toolbar]\"></ng-content>\r\n </div>\r\n <div class=\"line\"></div>\r\n <div class=\"langulage-wrap\">\r\n <button\r\n class=\"e-btn text\"\r\n ejs-dropdownbutton\r\n [items]=\"langOptions\"\r\n (select)=\"selectLanguage($event)\"\r\n >\r\n {{currentLang.text}}\r\n </button>\r\n </div>\r\n <div class=\"line\"></div>\r\n <div class=\"last-login-wrap\">\r\n {{ translation?.LAST_LOGIN || \"Last Login\" }}:\r\n {{ lastLoginTime | date : \"dd MMM yy h:mm a\" }}\r\n </div>\r\n <div class=\"line\"></div>\r\n <div class=\"user-info-wrap\">\r\n <ng-content select=\"[userInfo]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".rs-header{height:50px;background-color:var(--rs-container-bg);display:flex;justify-content:space-between}.rs-header .logo-wrap{width:240px;display:flex;padding:12px 0 0 20px}.rs-header .logo-wrap .toggle-menu-wrap{cursor:pointer;margin-right:8px}.rs-header .logo-wrap .logo{width:77px;height:32px}.rs-header .rs-toolbar-wrap{display:flex;align-items:center}.rs-header .rs-toolbar-wrap .line{width:1px;height:24px;background-color:var(--rs-border-color)}.rs-header .rs-toolbar-wrap .langulage-wrap{padding:0 16px}.rs-header .rs-toolbar-wrap .last-login-wrap{padding:0 16px;color:var(--rs-labels-color);font-size:11px;font-weight:400;line-height:1}.rs-header .rs-toolbar-wrap .user-info-wrap{padding:0 20px 0 16px}\n"], dependencies: [{ kind: "component", type: i1$1.DropDownButtonComponent, selector: "[ejs-dropdownbutton]", inputs: ["closeActionEvents", "content", "createPopupOnClick", "cssClass", "disabled", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "iconCss", "iconPosition", "items", "locale", "target"], outputs: ["beforeClose", "beforeItemRender", "beforeOpen", "close", "created", "open", "select"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
777
+ }
778
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RSHeaderComponent, decorators: [{
779
+ type: Component,
780
+ args: [{ selector: "rs-header", template: "<div class=\"rs-header\">\r\n <div class=\"logo-wrap\">\r\n <div class=\"toggle-menu-wrap\">\r\n <img\r\n class=\"toggle-menu\"\r\n src=\"../../../assets/img/toggle-menu-icon.svg\"\r\n (click)=\"onToggleMenu()\"\r\n />\r\n </div>\r\n <img\r\n class=\"logo\"\r\n src=\"../../../assets/img/raise_logo_main.svg\"\r\n alt=\"logo\"\r\n />\r\n </div>\r\n <div class=\"bread-crumbs-wrap\">\r\n <ng-content select=\"[breadCrumbs]\"></ng-content>\r\n </div>\r\n <div class=\"rs-toolbar-wrap\">\r\n <div class=\"group\">\r\n <ng-content select=\"[toolbar]\"></ng-content>\r\n </div>\r\n <div class=\"line\"></div>\r\n <div class=\"langulage-wrap\">\r\n <button\r\n class=\"e-btn text\"\r\n ejs-dropdownbutton\r\n [items]=\"langOptions\"\r\n (select)=\"selectLanguage($event)\"\r\n >\r\n {{currentLang.text}}\r\n </button>\r\n </div>\r\n <div class=\"line\"></div>\r\n <div class=\"last-login-wrap\">\r\n {{ translation?.LAST_LOGIN || \"Last Login\" }}:\r\n {{ lastLoginTime | date : \"dd MMM yy h:mm a\" }}\r\n </div>\r\n <div class=\"line\"></div>\r\n <div class=\"user-info-wrap\">\r\n <ng-content select=\"[userInfo]\"></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".rs-header{height:50px;background-color:var(--rs-container-bg);display:flex;justify-content:space-between}.rs-header .logo-wrap{width:240px;display:flex;padding:12px 0 0 20px}.rs-header .logo-wrap .toggle-menu-wrap{cursor:pointer;margin-right:8px}.rs-header .logo-wrap .logo{width:77px;height:32px}.rs-header .rs-toolbar-wrap{display:flex;align-items:center}.rs-header .rs-toolbar-wrap .line{width:1px;height:24px;background-color:var(--rs-border-color)}.rs-header .rs-toolbar-wrap .langulage-wrap{padding:0 16px}.rs-header .rs-toolbar-wrap .last-login-wrap{padding:0 16px;color:var(--rs-labels-color);font-size:11px;font-weight:400;line-height:1}.rs-header .rs-toolbar-wrap .user-info-wrap{padding:0 20px 0 16px}\n"] }]
781
+ }], propDecorators: { toggleMenu: [{
782
+ type: Output
783
+ }], lastLoginTime: [{
784
+ type: Input
785
+ }] } });
786
+
787
+ // 组件类
788
+ class RSAsideComponent {
789
+ router;
790
+ constructor(router) {
791
+ this.router = router;
792
+ }
793
+ isCollapsed = false; // 接收输入属性
794
+ navList = [];
795
+ ngOnInit() { }
796
+ currentNav = null;
797
+ onNavClick(item) {
798
+ this.currentNav = item.title;
799
+ this.router.navigate([item.url]);
800
+ }
801
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RSAsideComponent, deps: [{ token: i1$2.Router }], target: i0.ɵɵFactoryTarget.Component });
802
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RSAsideComponent, selector: "rs-aside", inputs: { isCollapsed: "isCollapsed", navList: "navList" }, ngImport: i0, template: "<div class=\"rs-aside\">\r\n <div class=\"nav-list\">\r\n <div\r\n class=\"nav-item\"\r\n [ngClass]=\"{ isCurrent: currentNav === nav.title }\"\r\n *ngFor=\"let nav of navList\"\r\n (click)=\"onNavClick(nav)\"\r\n >\r\n <div class=\"nav-item-inner\">\r\n <div\r\n class=\"icon-wrap\"\r\n [ngStyle]=\"{\r\n stroke: currentNav === nav.title ? '#44566c' : '#6c7c90',\r\n fill: currentNav === nav.title ? '#44566c' : '#6c7c90'\r\n }\"\r\n >\r\n <svg-icon\r\n [name]=\"nav.icon\"\r\n [svgStyle]=\"{\r\n 'width.px': 16,\r\n 'height.px': 16\r\n }\"\r\n ></svg-icon>\r\n </div>\r\n <span class=\"nav-text\" [ngClass]=\"{ isCollapsed: isCollapsed }\">{{\r\n nav.title\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"bottom-iconbox\">\r\n <ng-content select=\"[bottomIconBox]\"></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".rs-aside{display:flex;flex-direction:column;height:100%}.rs-aside .nav-list{padding-top:12px;flex:1;overflow:auto;height:0}.rs-aside .nav-list .nav-item{height:32px;cursor:pointer;padding-left:11px}.rs-aside .nav-list .nav-item .nav-item-inner{display:flex;align-items:center;padding:8px 8px 8px 12px}.rs-aside .nav-list .nav-item:hover .nav-item-inner{border-radius:6px;background:#1f7bff0a}.rs-aside .nav-list .nav-item .icon-wrap{width:33px;height:16px}.rs-aside .nav-list .nav-item .nav-text{color:#5f6f81;font-family:Arial;font-size:12px;font-weight:400;line-height:16px;transition:all .3s;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;position:relative;top:1px}.rs-aside .nav-list .nav-item .nav-text.isCollapsed{opacity:0;width:0}.rs-aside .nav-list .nav-item.isCurrent{position:relative}.rs-aside .nav-list .nav-item.isCurrent .nav-text{color:#44566c;font-weight:700}.rs-aside .nav-list .nav-item.isCurrent:before{content:\"\";position:absolute;left:4px;top:8px;width:3px;height:16px;background-color:#1364b3;border-radius:2px}.rs-aside .bottom-iconbox{padding:12px 20px;height:48px;display:flex;gap:12px}.rs-aside .bottom-iconbox ::ng-deep .icon-wrap{width:24px;height:24px;border-radius:12px;border:1px solid #eaedf0;display:flex;justify-content:center;align-items:center;background-color:#fff;stroke:#6c7c90;fill:#6c7c90}.rs-aside .bottom-iconbox ::ng-deep .icon-wrap:not(.disabled){cursor:pointer}.rs-aside .bottom-iconbox ::ng-deep .icon-wrap:not(.disabled):hover{stroke:var(--rs-active-color);fill:var(--rs-active-color)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i1$3.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }] });
803
+ }
804
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RSAsideComponent, decorators: [{
805
+ type: Component,
806
+ args: [{ selector: "rs-aside", template: "<div class=\"rs-aside\">\r\n <div class=\"nav-list\">\r\n <div\r\n class=\"nav-item\"\r\n [ngClass]=\"{ isCurrent: currentNav === nav.title }\"\r\n *ngFor=\"let nav of navList\"\r\n (click)=\"onNavClick(nav)\"\r\n >\r\n <div class=\"nav-item-inner\">\r\n <div\r\n class=\"icon-wrap\"\r\n [ngStyle]=\"{\r\n stroke: currentNav === nav.title ? '#44566c' : '#6c7c90',\r\n fill: currentNav === nav.title ? '#44566c' : '#6c7c90'\r\n }\"\r\n >\r\n <svg-icon\r\n [name]=\"nav.icon\"\r\n [svgStyle]=\"{\r\n 'width.px': 16,\r\n 'height.px': 16\r\n }\"\r\n ></svg-icon>\r\n </div>\r\n <span class=\"nav-text\" [ngClass]=\"{ isCollapsed: isCollapsed }\">{{\r\n nav.title\r\n }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"bottom-iconbox\">\r\n <ng-content select=\"[bottomIconBox]\"></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".rs-aside{display:flex;flex-direction:column;height:100%}.rs-aside .nav-list{padding-top:12px;flex:1;overflow:auto;height:0}.rs-aside .nav-list .nav-item{height:32px;cursor:pointer;padding-left:11px}.rs-aside .nav-list .nav-item .nav-item-inner{display:flex;align-items:center;padding:8px 8px 8px 12px}.rs-aside .nav-list .nav-item:hover .nav-item-inner{border-radius:6px;background:#1f7bff0a}.rs-aside .nav-list .nav-item .icon-wrap{width:33px;height:16px}.rs-aside .nav-list .nav-item .nav-text{color:#5f6f81;font-family:Arial;font-size:12px;font-weight:400;line-height:16px;transition:all .3s;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;position:relative;top:1px}.rs-aside .nav-list .nav-item .nav-text.isCollapsed{opacity:0;width:0}.rs-aside .nav-list .nav-item.isCurrent{position:relative}.rs-aside .nav-list .nav-item.isCurrent .nav-text{color:#44566c;font-weight:700}.rs-aside .nav-list .nav-item.isCurrent:before{content:\"\";position:absolute;left:4px;top:8px;width:3px;height:16px;background-color:#1364b3;border-radius:2px}.rs-aside .bottom-iconbox{padding:12px 20px;height:48px;display:flex;gap:12px}.rs-aside .bottom-iconbox ::ng-deep .icon-wrap{width:24px;height:24px;border-radius:12px;border:1px solid #eaedf0;display:flex;justify-content:center;align-items:center;background-color:#fff;stroke:#6c7c90;fill:#6c7c90}.rs-aside .bottom-iconbox ::ng-deep .icon-wrap:not(.disabled){cursor:pointer}.rs-aside .bottom-iconbox ::ng-deep .icon-wrap:not(.disabled):hover{stroke:var(--rs-active-color);fill:var(--rs-active-color)}\n"] }]
807
+ }], ctorParameters: function () { return [{ type: i1$2.Router }]; }, propDecorators: { isCollapsed: [{
808
+ type: Input
809
+ }], navList: [{
810
+ type: Input
811
+ }] } });
812
+
813
+ // 组件类
814
+ class TagInputComponent {
815
+ value = [];
816
+ fields;
817
+ disabled = false;
818
+ error = false;
819
+ inputMinlength = 3;
820
+ inputMaxlength = 30;
821
+ valueChange = new EventEmitter();
822
+ ngOnInit() {
823
+ }
824
+ onRemoveTag(tag) {
825
+ const tagsList = this.value.filter((i) => i !== tag);
826
+ this.valueChange.emit(tagsList);
827
+ }
828
+ onAddTag(event) {
829
+ const inputValue = event.target.value;
830
+ if (inputValue && this.verifyInputValue(inputValue)) {
831
+ this.valueChange.emit([...this.value, inputValue]);
832
+ event.target.value = "";
833
+ }
834
+ }
835
+ inputError = false;
836
+ verifyInputValue(inputValue) {
837
+ this.inputError = false;
838
+ const inputValueLength = inputValue.length;
839
+ if (this.value.includes(inputValue) ||
840
+ inputValueLength > this.inputMaxlength ||
841
+ inputValueLength < this.inputMinlength) {
842
+ this.inputError = true;
843
+ return false;
844
+ }
845
+ return true;
846
+ }
847
+ onInput() {
848
+ this.inputError = false;
849
+ }
850
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TagInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
851
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TagInputComponent, selector: "rs-tag-input", inputs: { value: "value", fields: "fields", disabled: "disabled", error: "error", inputMinlength: "inputMinlength", inputMaxlength: "inputMaxlength" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div\r\n class=\"form-tags\"\r\n [ngClass]=\"{\r\n disabled: disabled,\r\n error: inputError || error\r\n }\"\r\n>\r\n <div class=\"form-tags-item\" *ngFor=\"let tag of value\">\r\n <span>{{ tag }}</span>\r\n <span class=\"form-tags-remove\" (click)=\"onRemoveTag(tag)\"></span>\r\n </div>\r\n <input\r\n class=\"form-tags-input\"\r\n (keyup.enter)=\"onAddTag($event)\"\r\n (input)=\"onInput()\"\r\n (blur)=\"onAddTag($event)\"\r\n autocomplete=\"off\"\r\n [minLength]=\"inputMinlength\"\r\n [maxLength]=\"inputMaxlength\"\r\n />\r\n</div>\r\n", styles: [".form-tags{display:flex;flex-flow:row wrap;border-radius:4px;overflow:hidden;gap:4px 8px;padding:3px 4px;min-height:28px;box-shadow:none;border-radius:var(--rs-input-border-radius);border:1px solid var(--rs-input-border-color);cursor:pointer}.form-tags:not(.error):not(.disabled):hover{box-shadow:0 0 3px #1f7bff66;border-color:var(--rs-input-hover-border-color)}.form-tags.error{border-color:var(--rs-input-error-border-color)!important}.form-tags.disabled{pointer-events:none;border-color:var(--rs-input-border-color)!important;font-size:var(--rs-input-font-size);color:var(--rs-input-disabled-color)!important;background-color:var(--rs-input-disabled-bg)!important;-webkit-text-fill-color:var(--rs-input-disabled-color)!important}.form-tags.disabled .form-tags-input{background-color:var(--rs-input-disabled-bg)!important}.form-tags .form-tags-input{flex:auto;width:auto;padding:0 4px;border:none;outline:none;font-size:var(--rs-input-font-size);color:var(--rs-input-color)!important}.form-tags .form-tags-item{box-sizing:border-box;height:20px;padding:0 8px;border:1px solid #eaedf0;border-radius:12px;background-color:#f8fafb;color:#44566c;font-family:Arial;font-size:11px;font-style:normal;font-weight:400;line-height:12px;display:flex;flex-flow:row nowrap;align-items:center;position:relative}.form-tags .form-tags-item .form-tags-remove{visibility:hidden;width:20px;height:20px;border:1px solid #dbe1e7;border-radius:20px;background-color:#fff;line-height:18px;text-align:center;position:absolute;top:-1px;right:-1px}.form-tags .form-tags-item .form-tags-remove:after{content:url(/assets/img/tag-remove.svg);cursor:pointer}.form-tags .form-tags-item:hover .form-tags-remove{visibility:visible}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
852
+ }
853
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TagInputComponent, decorators: [{
854
+ type: Component,
855
+ args: [{ selector: "rs-tag-input", template: "<div\r\n class=\"form-tags\"\r\n [ngClass]=\"{\r\n disabled: disabled,\r\n error: inputError || error\r\n }\"\r\n>\r\n <div class=\"form-tags-item\" *ngFor=\"let tag of value\">\r\n <span>{{ tag }}</span>\r\n <span class=\"form-tags-remove\" (click)=\"onRemoveTag(tag)\"></span>\r\n </div>\r\n <input\r\n class=\"form-tags-input\"\r\n (keyup.enter)=\"onAddTag($event)\"\r\n (input)=\"onInput()\"\r\n (blur)=\"onAddTag($event)\"\r\n autocomplete=\"off\"\r\n [minLength]=\"inputMinlength\"\r\n [maxLength]=\"inputMaxlength\"\r\n />\r\n</div>\r\n", styles: [".form-tags{display:flex;flex-flow:row wrap;border-radius:4px;overflow:hidden;gap:4px 8px;padding:3px 4px;min-height:28px;box-shadow:none;border-radius:var(--rs-input-border-radius);border:1px solid var(--rs-input-border-color);cursor:pointer}.form-tags:not(.error):not(.disabled):hover{box-shadow:0 0 3px #1f7bff66;border-color:var(--rs-input-hover-border-color)}.form-tags.error{border-color:var(--rs-input-error-border-color)!important}.form-tags.disabled{pointer-events:none;border-color:var(--rs-input-border-color)!important;font-size:var(--rs-input-font-size);color:var(--rs-input-disabled-color)!important;background-color:var(--rs-input-disabled-bg)!important;-webkit-text-fill-color:var(--rs-input-disabled-color)!important}.form-tags.disabled .form-tags-input{background-color:var(--rs-input-disabled-bg)!important}.form-tags .form-tags-input{flex:auto;width:auto;padding:0 4px;border:none;outline:none;font-size:var(--rs-input-font-size);color:var(--rs-input-color)!important}.form-tags .form-tags-item{box-sizing:border-box;height:20px;padding:0 8px;border:1px solid #eaedf0;border-radius:12px;background-color:#f8fafb;color:#44566c;font-family:Arial;font-size:11px;font-style:normal;font-weight:400;line-height:12px;display:flex;flex-flow:row nowrap;align-items:center;position:relative}.form-tags .form-tags-item .form-tags-remove{visibility:hidden;width:20px;height:20px;border:1px solid #dbe1e7;border-radius:20px;background-color:#fff;line-height:18px;text-align:center;position:absolute;top:-1px;right:-1px}.form-tags .form-tags-item .form-tags-remove:after{content:url(/assets/img/tag-remove.svg);cursor:pointer}.form-tags .form-tags-item:hover .form-tags-remove{visibility:visible}\n"] }]
856
+ }], propDecorators: { value: [{
857
+ type: Input
858
+ }], fields: [{
859
+ type: Input
860
+ }], disabled: [{
861
+ type: Input
862
+ }], error: [{
863
+ type: Input
864
+ }], inputMinlength: [{
865
+ type: Input
866
+ }], inputMaxlength: [{
867
+ type: Input
868
+ }], valueChange: [{
869
+ type: Output
870
+ }] } });
871
+
872
+ // 组件类
873
+ class RadioGroupComponent {
874
+ value;
875
+ dataSource = [];
876
+ orientation = 'horizontal';
877
+ fields = { text: 'text', value: 'value', disabled: 'disabled' };
878
+ disabled = false;
879
+ error = false;
880
+ valueChange = new EventEmitter();
881
+ ngOnInit() {
882
+ }
883
+ onChange(event) {
884
+ const value = event.value;
885
+ this.valueChange.emit(value);
886
+ }
887
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
888
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RadioGroupComponent, selector: "rs-radio-group", inputs: { value: "value", dataSource: "dataSource", orientation: "orientation", fields: "fields", disabled: "disabled", error: "error" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"radio-group\" [ngClass]=\"[orientation, error ? 'error' : '']\">\r\n <div class=\"radio-item\" *ngFor=\"let option of dataSource\">\r\n <ejs-radiobutton\r\n [label]=\"option[fields.text]\"\r\n [(ngModel)]=\"value\"\r\n [value]=\"option[fields.value]\"\r\n [disabled]=\"option[fields.disabled] || disabled\"\r\n (change)=\"onChange($event)\"\r\n ></ejs-radiobutton>\r\n </div>\r\n</div>\r\n", styles: [".radio-group{display:flex;padding-left:4px}.radio-group.horizontal{flex-direction:row;gap:35px}.radio-group.vertical{flex-direction:column;gap:14px}.radio-group .radio-item .e-radio:disabled+label:before{border-color:#d1d1d180;background-color:#eaedf059}.radio-group .radio-item .e-radio:checked+label:before{background-color:var(--rs-active-color);border-color:var(--rs-active-color);box-shadow:none}.radio-group .radio-item .e-radio:checked+label:after{content:\"\"!important;display:block;width:11px;height:8px;background-image:url(/assets/img/checked-vector.svg);background-size:cover;background-position:center;background-color:transparent;transform:scale(1);left:2px;top:3px;border:0;border-radius:0}.radio-group .radio-item .e-label{color:var(--rs-label-color);font-family:var(--rs-font-family);font-size:var(--rs-font-size);font-weight:400;line-height:14px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$2.RadioButtonComponent, selector: "ejs-radiobutton", inputs: ["checked", "cssClass", "disabled", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "htmlAttributes", "label", "labelPosition", "locale", "name", "value"], outputs: ["focus", "blur", "change", "created", "valueChange"] }] });
889
+ }
890
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RadioGroupComponent, decorators: [{
891
+ type: Component,
892
+ args: [{ selector: "rs-radio-group", template: "<div class=\"radio-group\" [ngClass]=\"[orientation, error ? 'error' : '']\">\r\n <div class=\"radio-item\" *ngFor=\"let option of dataSource\">\r\n <ejs-radiobutton\r\n [label]=\"option[fields.text]\"\r\n [(ngModel)]=\"value\"\r\n [value]=\"option[fields.value]\"\r\n [disabled]=\"option[fields.disabled] || disabled\"\r\n (change)=\"onChange($event)\"\r\n ></ejs-radiobutton>\r\n </div>\r\n</div>\r\n", styles: [".radio-group{display:flex;padding-left:4px}.radio-group.horizontal{flex-direction:row;gap:35px}.radio-group.vertical{flex-direction:column;gap:14px}.radio-group .radio-item .e-radio:disabled+label:before{border-color:#d1d1d180;background-color:#eaedf059}.radio-group .radio-item .e-radio:checked+label:before{background-color:var(--rs-active-color);border-color:var(--rs-active-color);box-shadow:none}.radio-group .radio-item .e-radio:checked+label:after{content:\"\"!important;display:block;width:11px;height:8px;background-image:url(/assets/img/checked-vector.svg);background-size:cover;background-position:center;background-color:transparent;transform:scale(1);left:2px;top:3px;border:0;border-radius:0}.radio-group .radio-item .e-label{color:var(--rs-label-color);font-family:var(--rs-font-family);font-size:var(--rs-font-size);font-weight:400;line-height:14px}\n"] }]
893
+ }], propDecorators: { value: [{
894
+ type: Input
895
+ }], dataSource: [{
896
+ type: Input
897
+ }], orientation: [{
898
+ type: Input
899
+ }], fields: [{
900
+ type: Input
901
+ }], disabled: [{
902
+ type: Input
903
+ }], error: [{
904
+ type: Input
905
+ }], valueChange: [{
906
+ type: Output
907
+ }] } });
908
+
909
+ // 组件类
910
+ class CheckboxGroupComponent {
911
+ ref;
912
+ constructor(ref) {
913
+ this.ref = ref;
914
+ }
915
+ name; // 分组凭证
916
+ value = [];
917
+ dataSource = [];
918
+ orientation = "horizontal";
919
+ fields = { text: "text", value: "value", disabled: "disabled" };
920
+ disabled = false;
921
+ error = false;
922
+ valueChange = new EventEmitter();
923
+ ngOnInit() {
924
+ console.log('first', this.value);
925
+ }
926
+ onChange(event, option) {
927
+ const originalValue = this.value;
928
+ let result;
929
+ if (event.checked) {
930
+ result = [...originalValue, option[this.fields.value]];
931
+ }
932
+ else {
933
+ result = originalValue.filter((val) => val !== option[this.fields.value]);
934
+ }
935
+ this.valueChange.emit(result);
936
+ this.ref.markForCheck();
937
+ }
938
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CheckboxGroupComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
939
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CheckboxGroupComponent, selector: "rs-checkbox-group", inputs: { name: "name", value: "value", dataSource: "dataSource", orientation: "orientation", fields: "fields", disabled: "disabled", error: "error" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"checkbox-group\" [ngClass]=\"[orientation, error ? 'error' : '']\">\r\n <div class=\"checkbox-item\" *ngFor=\"let option of dataSource\">\r\n <ejs-checkbox\r\n [name]=\"name\"\r\n [label]=\"option[fields.text]\"\r\n [value]=\"option[fields.value]\"\r\n [disabled]=\"option[fields.disabled] || disabled\"\r\n [checked]=\"value.includes(option[fields.value])\"\r\n (change)=\"onChange($event, option)\"\r\n ></ejs-checkbox>\r\n </div>\r\n</div>\r\n", styles: [".checkbox-group{display:flex;padding-left:4px}.checkbox-group.horizontal{flex-direction:row;gap:35px}.checkbox-group.vertical{flex-direction:column;gap:14px}.checkbox-group .checkbox-item .e-label{color:var(--rs-label-color);font-family:var(--rs-font-family);font-size:var(--rs-font-size);font-weight:400;line-height:14px}.checkbox-group .checkbox-item .e-checkbox-wrapper.e-checkbox-disabled .e-icons{border-color:#d1d1d180;background-color:#eaedf059}.checkbox-group .checkbox-item .e-icons{box-shadow:none!important}.checkbox-group .checkbox-item .e-icons.e-check{background-color:var(--rs-active-color);border-color:var(--rs-active-color)}.checkbox-group .checkbox-item .e-icons.e-check:before{content:\"\"!important;display:block;width:11px;height:8px;background-image:url(/assets/img/checked-vector.svg);background-size:cover;background-position:center;background-color:transparent;margin:2px auto}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3$2.CheckBoxComponent, selector: "ejs-checkbox", inputs: ["checked", "cssClass", "disabled", "enableHtmlSanitizer", "enablePersistence", "enableRtl", "htmlAttributes", "indeterminate", "label", "labelPosition", "locale", "name", "value"], outputs: ["focus", "blur", "change", "created", "checkedChange", "indeterminateChange"] }] });
940
+ }
941
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CheckboxGroupComponent, decorators: [{
942
+ type: Component,
943
+ args: [{ selector: "rs-checkbox-group", template: "<div class=\"checkbox-group\" [ngClass]=\"[orientation, error ? 'error' : '']\">\r\n <div class=\"checkbox-item\" *ngFor=\"let option of dataSource\">\r\n <ejs-checkbox\r\n [name]=\"name\"\r\n [label]=\"option[fields.text]\"\r\n [value]=\"option[fields.value]\"\r\n [disabled]=\"option[fields.disabled] || disabled\"\r\n [checked]=\"value.includes(option[fields.value])\"\r\n (change)=\"onChange($event, option)\"\r\n ></ejs-checkbox>\r\n </div>\r\n</div>\r\n", styles: [".checkbox-group{display:flex;padding-left:4px}.checkbox-group.horizontal{flex-direction:row;gap:35px}.checkbox-group.vertical{flex-direction:column;gap:14px}.checkbox-group .checkbox-item .e-label{color:var(--rs-label-color);font-family:var(--rs-font-family);font-size:var(--rs-font-size);font-weight:400;line-height:14px}.checkbox-group .checkbox-item .e-checkbox-wrapper.e-checkbox-disabled .e-icons{border-color:#d1d1d180;background-color:#eaedf059}.checkbox-group .checkbox-item .e-icons{box-shadow:none!important}.checkbox-group .checkbox-item .e-icons.e-check{background-color:var(--rs-active-color);border-color:var(--rs-active-color)}.checkbox-group .checkbox-item .e-icons.e-check:before{content:\"\"!important;display:block;width:11px;height:8px;background-image:url(/assets/img/checked-vector.svg);background-size:cover;background-position:center;background-color:transparent;margin:2px auto}\n"] }]
944
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { name: [{
945
+ type: Input
946
+ }], value: [{
947
+ type: Input
948
+ }], dataSource: [{
949
+ type: Input
950
+ }], orientation: [{
951
+ type: Input
952
+ }], fields: [{
953
+ type: Input
954
+ }], disabled: [{
955
+ type: Input
956
+ }], error: [{
957
+ type: Input
958
+ }], valueChange: [{
959
+ type: Output
960
+ }] } });
961
+
962
+ // 组件类
963
+ class SwitchInputComponent {
964
+ value;
965
+ text;
966
+ orientation = 'front';
967
+ disabled = false;
968
+ error = false;
969
+ valueChange = new EventEmitter();
970
+ ngOnInit() { }
971
+ onChange(event) {
972
+ const value = event.checked;
973
+ this.valueChange.emit(value);
974
+ }
975
+ onClick() {
976
+ const value = !this.value;
977
+ this.valueChange.emit(value);
978
+ }
979
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SwitchInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
980
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SwitchInputComponent, selector: "rs-switch-input", inputs: { value: "value", text: "text", orientation: "orientation", disabled: "disabled", error: "error" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"rs-switch\" [ngClass]=\"[orientation, error ? 'error' : '', disabled ? 'disabled' : '']\">\r\n <label class=\"switch-label\" (click)=\"onClick()\"> {{ text }} </label>\r\n <ejs-switch\r\n [(ngModel)]=\"value\"\r\n [disabled]=\"disabled\"\r\n (change)=\"onChange($event)\"\r\n ></ejs-switch>\r\n</div>\r\n", styles: [".rs-switch{display:flex;align-items:center;gap:8px}.rs-switch.behind{flex-direction:row-reverse;justify-content:flex-end}.rs-switch .switch-label{color:var(--rs-label-color);font-family:var(--rs-font-family);font-size:var(--rs-font-size);cursor:pointer}.rs-switch.disabled .switch-label{cursor:default;pointer-events:none}.rs-switch .e-switch-wrapper{width:28px}.rs-switch .e-switch-wrapper .e-switch-inner{border:1px solid rgb(173,181,189)}.rs-switch .e-switch-wrapper .e-switch-inner.e-switch-active{background-color:var(--rs-active-color);border-color:var(--rs-active-color)}.rs-switch .e-switch-wrapper .e-switch-handle{background-color:#fff;border:1px solid rgb(173,181,189);left:2px}.rs-switch .e-switch-wrapper .e-switch-handle.e-switch-active{background-color:#fff;border-color:var(--rs-active-color);left:100%}.rs-switch .e-switch-wrapper.e-switch-disabled .e-switch-handle{background-color:#e9ecef;opacity:.5}.rs-switch .e-switch-wrapper.e-switch-disabled .e-switch-handle.e-switch-active{border-color:#0081ff80}.rs-switch .e-switch-wrapper .e-switch-on{background-color:var(--rs-active-color);color:#fff}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$2.SwitchComponent, selector: "ejs-switch", inputs: ["checked", "cssClass", "disabled", "enablePersistence", "enableRtl", "htmlAttributes", "locale", "name", "offLabel", "onLabel", "value"], outputs: ["focus", "blur", "change", "created", "checkedChange"] }] });
981
+ }
982
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SwitchInputComponent, decorators: [{
983
+ type: Component,
984
+ args: [{ selector: "rs-switch-input", template: "<div class=\"rs-switch\" [ngClass]=\"[orientation, error ? 'error' : '', disabled ? 'disabled' : '']\">\r\n <label class=\"switch-label\" (click)=\"onClick()\"> {{ text }} </label>\r\n <ejs-switch\r\n [(ngModel)]=\"value\"\r\n [disabled]=\"disabled\"\r\n (change)=\"onChange($event)\"\r\n ></ejs-switch>\r\n</div>\r\n", styles: [".rs-switch{display:flex;align-items:center;gap:8px}.rs-switch.behind{flex-direction:row-reverse;justify-content:flex-end}.rs-switch .switch-label{color:var(--rs-label-color);font-family:var(--rs-font-family);font-size:var(--rs-font-size);cursor:pointer}.rs-switch.disabled .switch-label{cursor:default;pointer-events:none}.rs-switch .e-switch-wrapper{width:28px}.rs-switch .e-switch-wrapper .e-switch-inner{border:1px solid rgb(173,181,189)}.rs-switch .e-switch-wrapper .e-switch-inner.e-switch-active{background-color:var(--rs-active-color);border-color:var(--rs-active-color)}.rs-switch .e-switch-wrapper .e-switch-handle{background-color:#fff;border:1px solid rgb(173,181,189);left:2px}.rs-switch .e-switch-wrapper .e-switch-handle.e-switch-active{background-color:#fff;border-color:var(--rs-active-color);left:100%}.rs-switch .e-switch-wrapper.e-switch-disabled .e-switch-handle{background-color:#e9ecef;opacity:.5}.rs-switch .e-switch-wrapper.e-switch-disabled .e-switch-handle.e-switch-active{border-color:#0081ff80}.rs-switch .e-switch-wrapper .e-switch-on{background-color:var(--rs-active-color);color:#fff}\n"] }]
985
+ }], propDecorators: { value: [{
986
+ type: Input
987
+ }], text: [{
988
+ type: Input
989
+ }], orientation: [{
990
+ type: Input
991
+ }], disabled: [{
992
+ type: Input
993
+ }], error: [{
994
+ type: Input
995
+ }], valueChange: [{
996
+ type: Output
997
+ }] } });
998
+
999
+ class CommonFunctionService {
1000
+ constructor() { }
1001
+ testMethod() {
1002
+ return "test1111";
1003
+ }
1004
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonFunctionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1005
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonFunctionService, providedIn: "root" });
1006
+ }
1007
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CommonFunctionService, decorators: [{
1008
+ type: Injectable,
1009
+ args: [{
1010
+ providedIn: "root",
1011
+ }]
1012
+ }], ctorParameters: function () { return []; } });
1013
+
1014
+ class IconLoaderService {
1015
+ iconReg;
1016
+ constructor(iconReg) {
1017
+ this.iconReg = iconReg;
1018
+ }
1019
+ registerIcons(list) {
1020
+ list.forEach((item) => {
1021
+ this.iconReg.loadSvg(item.url, item.name).subscribe();
1022
+ });
1023
+ }
1024
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconLoaderService, deps: [{ token: i1$3.SvgIconRegistryService }], target: i0.ɵɵFactoryTarget.Injectable });
1025
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconLoaderService });
1026
+ }
1027
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IconLoaderService, decorators: [{
1028
+ type: Injectable
1029
+ }], ctorParameters: function () { return [{ type: i1$3.SvgIconRegistryService }]; } });
1030
+
1031
+ class RaiseCommonLibModule {
1032
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RaiseCommonLibModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1033
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: RaiseCommonLibModule, declarations: [CommonGridComponent,
1034
+ FloatBoxComponent,
1035
+ CommonListComponent,
1036
+ RSHeaderComponent,
1037
+ RSFooterComponent,
1038
+ RSAsideComponent,
1039
+ MainContainerComponent,
1040
+ TagInputComponent,
1041
+ RadioGroupComponent,
1042
+ CheckboxGroupComponent,
1043
+ SwitchInputComponent], imports: [CommonModule,
1044
+ HttpClientModule,
1045
+ ReactiveFormsModule,
1046
+ FormsModule,
1047
+ GridModule,
1048
+ PagerModule,
1049
+ GridAllModule,
1050
+ SwitchModule,
1051
+ CheckBoxModule,
1052
+ RadioButtonModule,
1053
+ ButtonModule,
1054
+ DiagramModule,
1055
+ TooltipModule,
1056
+ DialogModule,
1057
+ DatePickerModule,
1058
+ DateRangePickerModule,
1059
+ DateTimePickerModule,
1060
+ TextBoxModule,
1061
+ ColorPickerModule,
1062
+ UploaderModule,
1063
+ NumericTextBoxModule,
1064
+ DropDownListModule,
1065
+ DropDownTreeModule,
1066
+ MultiSelectAllModule,
1067
+ AutoCompleteModule,
1068
+ ListBoxModule,
1069
+ PivotViewAllModule,
1070
+ PivotFieldListAllModule,
1071
+ ChartAllModule,
1072
+ AccumulationChartAllModule,
1073
+ RangeNavigatorAllModule,
1074
+ AccumulationChartModule,
1075
+ DashboardLayoutModule,
1076
+ CarouselAllModule,
1077
+ ToolbarModule,
1078
+ PdfViewerModule,
1079
+ DropDownButtonModule,
1080
+ RichTextEditorAllModule, i1$3.AngularSvgIconModule], exports: [CommonModule,
1081
+ HttpClientModule,
1082
+ ReactiveFormsModule,
1083
+ FormsModule,
1084
+ GridModule,
1085
+ PagerModule,
1086
+ GridAllModule,
1087
+ SwitchModule,
1088
+ CheckBoxModule,
1089
+ RadioButtonModule,
1090
+ ButtonModule,
1091
+ DiagramModule,
1092
+ TooltipModule,
1093
+ DialogModule,
1094
+ DatePickerModule,
1095
+ DateRangePickerModule,
1096
+ DateTimePickerModule,
1097
+ TextBoxModule,
1098
+ ColorPickerModule,
1099
+ UploaderModule,
1100
+ NumericTextBoxModule,
1101
+ DropDownListModule,
1102
+ DropDownTreeModule,
1103
+ MultiSelectAllModule,
1104
+ AutoCompleteModule,
1105
+ ListBoxModule,
1106
+ PivotViewAllModule,
1107
+ PivotFieldListAllModule,
1108
+ ChartAllModule,
1109
+ AccumulationChartAllModule,
1110
+ RangeNavigatorAllModule,
1111
+ AccumulationChartModule,
1112
+ DashboardLayoutModule,
1113
+ CarouselAllModule,
1114
+ ToolbarModule,
1115
+ PdfViewerModule,
1116
+ DropDownButtonModule,
1117
+ RichTextEditorAllModule,
1118
+ CommonGridComponent,
1119
+ FloatBoxComponent,
1120
+ CommonListComponent,
1121
+ RSHeaderComponent,
1122
+ RSFooterComponent,
1123
+ RSAsideComponent,
1124
+ MainContainerComponent,
1125
+ TagInputComponent,
1126
+ RadioGroupComponent,
1127
+ CheckboxGroupComponent,
1128
+ SwitchInputComponent] });
1129
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RaiseCommonLibModule, providers: [
1130
+ PageService,
1131
+ SortService,
1132
+ FilterService,
1133
+ ExcelExportService,
1134
+ EditService,
1135
+ ResizeService,
1136
+ ToolbarService,
1137
+ ColumnChooserService,
1138
+ AggregateService,
1139
+ ColumnMenuService,
1140
+ DetailRowService,
1141
+ SelectionService,
1142
+ GroupService,
1143
+ PieSeriesService,
1144
+ AccumulationLegendService,
1145
+ AccumulationTooltipService,
1146
+ AccumulationAnnotationService,
1147
+ AccumulationDataLabelService,
1148
+ LinkAnnotationService,
1149
+ BookmarkViewService,
1150
+ MagnificationService,
1151
+ ThumbnailViewService,
1152
+ ToolbarService$1,
1153
+ NavigationService,
1154
+ TextSearchService,
1155
+ TextSelectionService,
1156
+ PrintService,
1157
+ HtmlEditorService,
1158
+ ToolbarService$2,
1159
+ CommonFunctionService,
1160
+ IconLoaderService,
1161
+ ], imports: [CommonModule,
1162
+ HttpClientModule,
1163
+ ReactiveFormsModule,
1164
+ FormsModule,
1165
+ GridModule,
1166
+ PagerModule,
1167
+ GridAllModule,
1168
+ SwitchModule,
1169
+ CheckBoxModule,
1170
+ RadioButtonModule,
1171
+ ButtonModule,
1172
+ DiagramModule,
1173
+ TooltipModule,
1174
+ DialogModule,
1175
+ DatePickerModule,
1176
+ DateRangePickerModule,
1177
+ DateTimePickerModule,
1178
+ TextBoxModule,
1179
+ ColorPickerModule,
1180
+ UploaderModule,
1181
+ NumericTextBoxModule,
1182
+ DropDownListModule,
1183
+ DropDownTreeModule,
1184
+ MultiSelectAllModule,
1185
+ AutoCompleteModule,
1186
+ ListBoxModule,
1187
+ PivotViewAllModule,
1188
+ PivotFieldListAllModule,
1189
+ ChartAllModule,
1190
+ AccumulationChartAllModule,
1191
+ RangeNavigatorAllModule,
1192
+ AccumulationChartModule,
1193
+ DashboardLayoutModule,
1194
+ CarouselAllModule,
1195
+ ToolbarModule,
1196
+ PdfViewerModule,
1197
+ DropDownButtonModule,
1198
+ RichTextEditorAllModule,
1199
+ AngularSvgIconModule.forRoot(), CommonModule,
1200
+ HttpClientModule,
1201
+ ReactiveFormsModule,
1202
+ FormsModule,
1203
+ GridModule,
1204
+ PagerModule,
1205
+ GridAllModule,
1206
+ SwitchModule,
1207
+ CheckBoxModule,
1208
+ RadioButtonModule,
1209
+ ButtonModule,
1210
+ DiagramModule,
1211
+ TooltipModule,
1212
+ DialogModule,
1213
+ DatePickerModule,
1214
+ DateRangePickerModule,
1215
+ DateTimePickerModule,
1216
+ TextBoxModule,
1217
+ ColorPickerModule,
1218
+ UploaderModule,
1219
+ NumericTextBoxModule,
1220
+ DropDownListModule,
1221
+ DropDownTreeModule,
1222
+ MultiSelectAllModule,
1223
+ AutoCompleteModule,
1224
+ ListBoxModule,
1225
+ PivotViewAllModule,
1226
+ PivotFieldListAllModule,
1227
+ ChartAllModule,
1228
+ AccumulationChartAllModule,
1229
+ RangeNavigatorAllModule,
1230
+ AccumulationChartModule,
1231
+ DashboardLayoutModule,
1232
+ CarouselAllModule,
1233
+ ToolbarModule,
1234
+ PdfViewerModule,
1235
+ DropDownButtonModule,
1236
+ RichTextEditorAllModule] });
1237
+ }
1238
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RaiseCommonLibModule, decorators: [{
1239
+ type: NgModule,
1240
+ args: [{
1241
+ declarations: [
1242
+ CommonGridComponent,
1243
+ FloatBoxComponent,
1244
+ CommonListComponent,
1245
+ RSHeaderComponent,
1246
+ RSFooterComponent,
1247
+ RSAsideComponent,
1248
+ MainContainerComponent,
1249
+ TagInputComponent,
1250
+ RadioGroupComponent,
1251
+ CheckboxGroupComponent,
1252
+ SwitchInputComponent,
1253
+ ],
1254
+ imports: [
1255
+ CommonModule,
1256
+ HttpClientModule,
1257
+ ReactiveFormsModule,
1258
+ FormsModule,
1259
+ GridModule,
1260
+ PagerModule,
1261
+ GridAllModule,
1262
+ SwitchModule,
1263
+ CheckBoxModule,
1264
+ RadioButtonModule,
1265
+ ButtonModule,
1266
+ DiagramModule,
1267
+ TooltipModule,
1268
+ DialogModule,
1269
+ DatePickerModule,
1270
+ DateRangePickerModule,
1271
+ DateTimePickerModule,
1272
+ TextBoxModule,
1273
+ ColorPickerModule,
1274
+ UploaderModule,
1275
+ NumericTextBoxModule,
1276
+ DropDownListModule,
1277
+ DropDownTreeModule,
1278
+ MultiSelectAllModule,
1279
+ AutoCompleteModule,
1280
+ ListBoxModule,
1281
+ PivotViewAllModule,
1282
+ PivotFieldListAllModule,
1283
+ ChartAllModule,
1284
+ AccumulationChartAllModule,
1285
+ RangeNavigatorAllModule,
1286
+ AccumulationChartModule,
1287
+ DashboardLayoutModule,
1288
+ CarouselAllModule,
1289
+ ToolbarModule,
1290
+ PdfViewerModule,
1291
+ DropDownButtonModule,
1292
+ RichTextEditorAllModule,
1293
+ AngularSvgIconModule.forRoot(),
1294
+ ],
1295
+ providers: [
1296
+ PageService,
1297
+ SortService,
1298
+ FilterService,
1299
+ ExcelExportService,
1300
+ EditService,
1301
+ ResizeService,
1302
+ ToolbarService,
1303
+ ColumnChooserService,
1304
+ AggregateService,
1305
+ ColumnMenuService,
1306
+ DetailRowService,
1307
+ SelectionService,
1308
+ GroupService,
1309
+ PieSeriesService,
1310
+ AccumulationLegendService,
1311
+ AccumulationTooltipService,
1312
+ AccumulationAnnotationService,
1313
+ AccumulationDataLabelService,
1314
+ LinkAnnotationService,
1315
+ BookmarkViewService,
1316
+ MagnificationService,
1317
+ ThumbnailViewService,
1318
+ ToolbarService$1,
1319
+ NavigationService,
1320
+ TextSearchService,
1321
+ TextSelectionService,
1322
+ PrintService,
1323
+ HtmlEditorService,
1324
+ ToolbarService$2,
1325
+ CommonFunctionService,
1326
+ IconLoaderService,
1327
+ ],
1328
+ exports: [
1329
+ CommonModule,
1330
+ HttpClientModule,
1331
+ ReactiveFormsModule,
1332
+ FormsModule,
1333
+ GridModule,
1334
+ PagerModule,
1335
+ GridAllModule,
1336
+ SwitchModule,
1337
+ CheckBoxModule,
1338
+ RadioButtonModule,
1339
+ ButtonModule,
1340
+ DiagramModule,
1341
+ TooltipModule,
1342
+ DialogModule,
1343
+ DatePickerModule,
1344
+ DateRangePickerModule,
1345
+ DateTimePickerModule,
1346
+ TextBoxModule,
1347
+ ColorPickerModule,
1348
+ UploaderModule,
1349
+ NumericTextBoxModule,
1350
+ DropDownListModule,
1351
+ DropDownTreeModule,
1352
+ MultiSelectAllModule,
1353
+ AutoCompleteModule,
1354
+ ListBoxModule,
1355
+ PivotViewAllModule,
1356
+ PivotFieldListAllModule,
1357
+ ChartAllModule,
1358
+ AccumulationChartAllModule,
1359
+ RangeNavigatorAllModule,
1360
+ AccumulationChartModule,
1361
+ DashboardLayoutModule,
1362
+ CarouselAllModule,
1363
+ ToolbarModule,
1364
+ PdfViewerModule,
1365
+ DropDownButtonModule,
1366
+ RichTextEditorAllModule,
1367
+ CommonGridComponent,
1368
+ FloatBoxComponent,
1369
+ CommonListComponent,
1370
+ RSHeaderComponent,
1371
+ RSFooterComponent,
1372
+ RSAsideComponent,
1373
+ MainContainerComponent,
1374
+ TagInputComponent,
1375
+ RadioGroupComponent,
1376
+ CheckboxGroupComponent,
1377
+ SwitchInputComponent,
1378
+ ],
1379
+ }]
1380
+ }] });
1381
+
1382
+ /*
1383
+ * Public API Surface of raise-common-lib
1384
+ */
1385
+
1386
+ /**
1387
+ * Generated bundle index. Do not edit.
1388
+ */
1389
+
1390
+ export { CheckboxGroupComponent, CommonFunctionService, CommonGridComponent, CommonListComponent, FloatBoxComponent, IconLoaderService, MainContainerComponent, RSAsideComponent, RSFooterComponent, RSHeaderComponent, RadioGroupComponent, RaiseCommonLibModule, SwitchInputComponent, TagInputComponent };
1391
+ //# sourceMappingURL=raise-common-lib-new.mjs.map