ngx-rs-ant 0.0.9 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,28 +1,28 @@
1
- # NgxRsAnt
2
-
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.2.0.
4
-
5
- ## Code scaffolding
6
-
7
- Run `ng generate component component-name --project ngx-rs-ant` to generate a new component. You can also
8
- use `ng generate directive|pipe|service|class|guard|interface|enum|module --project ngx-rs-ant`.
9
- > Note: Don't forget to add `--project ngx-rs-ant` or else it will be added to the default project in
10
- > your `angular.json` file.
11
-
12
- ## Build
13
-
14
- Run `ng build ngx-rs-ant` to build the project. The build artifacts will be stored in the `dist/` directory.
15
-
16
- ## Publishing
17
-
18
- After building your library with `ng build ngx-rs-ant`, go to the dist folder `cd dist/ngx-rs-ant` and run `npm publish`
19
- .
20
-
21
- ## Running unit tests
22
-
23
- Run `ng test ngx-rs-ant` to execute the unit tests via [Karma](https://karma-runner.github.io).
24
-
25
- ## Further help
26
-
27
- To get more help on the Angular CLI use `ng help` or go check out
28
- the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
1
+ # NgxRsAnt
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 15.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project ngx-rs-ant` to generate a new component. You can also
8
+ use `ng generate directive|pipe|service|class|guard|interface|enum|module --project ngx-rs-ant`.
9
+ > Note: Don't forget to add `--project ngx-rs-ant` or else it will be added to the default project in
10
+ > your `angular.json` file.
11
+
12
+ ## Build
13
+
14
+ Run `ng build ngx-rs-ant` to build the project. The build artifacts will be stored in the `dist/` directory.
15
+
16
+ ## Publishing
17
+
18
+ After building your library with `ng build ngx-rs-ant`, go to the dist folder `cd dist/ngx-rs-ant` and
19
+ run `npm publish`.
20
+
21
+ ## Running unit tests
22
+
23
+ Run `ng test ngx-rs-ant` to execute the unit tests via [Karma](https://karma-runner.github.io).
24
+
25
+ ## Further help
26
+
27
+ To get more help on the Angular CLI use `ng help` or go check out
28
+ the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -0,0 +1,16 @@
1
+ import { OnInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class DataGridComponent implements OnInit {
4
+ tenant: any;
5
+ className: any;
6
+ view: any;
7
+ filter: any;
8
+ service: any;
9
+ dataSource: any;
10
+ columns: any[];
11
+ typeMap: any;
12
+ ngOnInit(): void;
13
+ load(): void;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<DataGridComponent, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<DataGridComponent, "rs-data-grid", never, { "tenant": "tenant"; "className": "className"; "view": "view"; "filter": "filter"; "service": "service"; }, {}, never, never, false, never>;
16
+ }
@@ -0,0 +1,9 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./data-grid.component";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "devextreme-angular";
5
+ export declare class DataGridModule {
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<DataGridModule, never>;
7
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DataGridModule, [typeof i1.DataGridComponent], [typeof i2.CommonModule, typeof i3.DxDataGridModule], [typeof i1.DataGridComponent]>;
8
+ static ɵinj: i0.ɵɵInjectorDeclaration<DataGridModule>;
9
+ }
@@ -0,0 +1,129 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import CustomStore from "devextreme/data/custom_store";
3
+ import { lastValueFrom } from "rxjs";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "devextreme-angular";
6
+ import * as i2 from "devextreme-angular/ui/nested";
7
+ import * as i3 from "devextreme-angular/core";
8
+ export class DataGridComponent {
9
+ constructor() {
10
+ this.dataSource = {};
11
+ this.columns = [];
12
+ this.typeMap = {
13
+ STRING: {
14
+ dataType: 'string',
15
+ filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']
16
+ },
17
+ TEXT: {
18
+ dataType: 'string',
19
+ filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']
20
+ },
21
+ BOOLEAN: {
22
+ dataType: 'boolean',
23
+ filterOperations: []
24
+ },
25
+ INTEGER: {
26
+ dataType: 'number',
27
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']
28
+ },
29
+ DOUBLE: {
30
+ dataType: 'number',
31
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']
32
+ },
33
+ DATE: {
34
+ dataType: 'date',
35
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between'],
36
+ format: 'yyyy/MM/dd'
37
+ },
38
+ DATETIME: {
39
+ dataType: 'datetime',
40
+ filterOperations: ['>', '<', 'between'],
41
+ format: 'yyyy/MM/dd HH:mm:ss'
42
+ },
43
+ };
44
+ }
45
+ ngOnInit() {
46
+ this.load();
47
+ }
48
+ load() {
49
+ this.service.getMetadata(this.tenant, this.className, this.view || '').subscribe((response) => {
50
+ this.columns = [];
51
+ for (let column of response.data.columns) {
52
+ if (column.type === 'NORMAL') {
53
+ this.columns.push({
54
+ dataField: column.name,
55
+ caption: column.caption,
56
+ dataType: this.typeMap[column.dataType].dataType,
57
+ alignment: 'left',
58
+ filterOperations: this.typeMap[column.dataType].filterOperations,
59
+ format: this.typeMap[column.dataType].format
60
+ });
61
+ }
62
+ }
63
+ });
64
+ this.dataSource = new CustomStore({
65
+ key: 'oid',
66
+ byKey: (key) => {
67
+ return lastValueFrom(this.service.getOne(this.tenant, this.className, key));
68
+ },
69
+ load: (loadOptions) => {
70
+ let params = '?';
71
+ if (loadOptions.skip || loadOptions.take) {
72
+ params += 'offset=' + loadOptions.skip;
73
+ params += '&limit=' + loadOptions.take;
74
+ }
75
+ else {
76
+ params += 'limit=0';
77
+ }
78
+ if (loadOptions.sort) {
79
+ let first = true;
80
+ for (const thisSort of loadOptions.sort) {
81
+ if (first) {
82
+ params += '&orderBy=' + thisSort.selector;
83
+ }
84
+ else {
85
+ params += ',' + thisSort.selector;
86
+ }
87
+ if (thisSort.desc) {
88
+ params += ' desc';
89
+ }
90
+ first = false;
91
+ }
92
+ }
93
+ let filter;
94
+ if (loadOptions.filter) {
95
+ filter = loadOptions.filter;
96
+ }
97
+ if (this.filter) {
98
+ if (filter) {
99
+ filter = [filter, 'and', this.filter];
100
+ }
101
+ else {
102
+ filter = this.filter;
103
+ }
104
+ }
105
+ if (filter) {
106
+ params += '&filter=' + encodeURIComponent(JSON.stringify(filter));
107
+ }
108
+ return lastValueFrom(this.service.getMany(this.tenant, this.className, params + '&view=' + (this.view || '')));
109
+ }
110
+ });
111
+ }
112
+ }
113
+ DataGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
114
+ DataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: DataGridComponent, selector: "rs-data-grid", inputs: { tenant: "tenant", className: "className", view: "view", filter: "filter", service: "service" }, ngImport: i0, template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [showBorders]=\"true\"\n [showColumnLines]=\"true\"\n [showRowLines]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n [allowColumnResizing]=\"true\"\n columnResizingMode=\"widget\"\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\n>\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection mode=\"multiple\" selectAllMode=\"page\"></dxo-selection>\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\n <dxo-remote-operations [filtering]=\"true\"\n [sorting]=\"true\"\n [paging]=\"true\">\n </dxo-remote-operations>\n <dxo-paging [pageSize]=\"15\"></dxo-paging>\n <dxo-pager [visible]=\"true\"\n [showInfo]=\"true\"\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\n [showPageSizeSelector]=\"true\"\n [allowedPageSizes]=\"[15, 30, 50]\"\n ></dxo-pager>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n</dx-data-grid>\n", styles: [""], dependencies: [{ kind: "component", type: i1.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i2.DxoExportComponent, selector: "dxo-export", inputs: ["backgroundColor", "enabled", "fileName", "formats", "margin", "printingEnabled", "svgToCanvas", "allowExportSelectedData", "texts"] }, { kind: "component", type: i2.DxoFilterRowComponent, selector: "dxo-filter-row", inputs: ["applyFilter", "applyFilterText", "betweenEndText", "betweenStartText", "operationDescriptions", "resetOperationText", "showAllText", "showOperationChooser", "visible"] }, { kind: "component", type: i2.DxoPagerComponent, selector: "dxo-pager", inputs: ["allowedPageSizes", "displayMode", "infoText", "label", "showInfo", "showNavigationButtons", "showPageSizeSelector", "visible"] }, { kind: "component", type: i2.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i2.DxoRemoteOperationsComponent, selector: "dxo-remote-operations", inputs: ["filtering", "grouping", "groupPaging", "paging", "sorting", "summary"] }, { kind: "component", type: i2.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "deferred", "mode", "selectAllMode", "showCheckBoxesMode", "recursive"] }, { kind: "component", type: i2.DxoSortingComponent, selector: "dxo-sorting", inputs: ["ascendingText", "clearText", "descendingText", "mode", "showSortIndexes"] }, { kind: "directive", type: i3.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }] });
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridComponent, decorators: [{
116
+ type: Component,
117
+ args: [{ selector: 'rs-data-grid', template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [showBorders]=\"true\"\n [showColumnLines]=\"true\"\n [showRowLines]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n [allowColumnResizing]=\"true\"\n columnResizingMode=\"widget\"\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\n>\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection mode=\"multiple\" selectAllMode=\"page\"></dxo-selection>\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\n <dxo-remote-operations [filtering]=\"true\"\n [sorting]=\"true\"\n [paging]=\"true\">\n </dxo-remote-operations>\n <dxo-paging [pageSize]=\"15\"></dxo-paging>\n <dxo-pager [visible]=\"true\"\n [showInfo]=\"true\"\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\n [showPageSizeSelector]=\"true\"\n [allowedPageSizes]=\"[15, 30, 50]\"\n ></dxo-pager>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n</dx-data-grid>\n" }]
118
+ }], propDecorators: { tenant: [{
119
+ type: Input
120
+ }], className: [{
121
+ type: Input
122
+ }], view: [{
123
+ type: Input
124
+ }], filter: [{
125
+ type: Input
126
+ }], service: [{
127
+ type: Input
128
+ }] } });
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2RhdGEtZ3JpZC9kYXRhLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLFdBQVcsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7OztBQU9uQyxNQUFNLE9BQU8saUJBQWlCO0lBTDlCO1FBZ0JFLGVBQVUsR0FBUSxFQUFFLENBQUM7UUFDckIsWUFBTyxHQUFVLEVBQUUsQ0FBQztRQUNwQixZQUFPLEdBQVE7WUFDYixNQUFNLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLGdCQUFnQixFQUFFLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQzthQUNwRTtZQUNELElBQUksRUFBRTtnQkFDSixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsZ0JBQWdCLEVBQUUsQ0FBQyxVQUFVLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDO2FBQ3BFO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLFFBQVEsRUFBRSxTQUFTO2dCQUNuQixnQkFBZ0IsRUFBRSxFQUFFO2FBQ3JCO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixnQkFBZ0IsRUFBRSxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQzthQUMvRDtZ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QU07c0JBREwsS0FBSztnQkFHTixPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgQ3VzdG9tU3RvcmUgZnJvbSBcImRldmV4dHJlbWUvZGF0YS9jdXN0b21fc3RvcmVcIjtcbmltcG9ydCB7bGFzdFZhbHVlRnJvbX0gZnJvbSBcInJ4anNcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncnMtZGF0YS1ncmlkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtZ3JpZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGEtZ3JpZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIERhdGFHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KClcbiAgdGVuYW50OiBhbnk7XG4gIEBJbnB1dCgpXG4gIGNsYXNzTmFtZTogYW55O1xuICBASW5wdXQoKVxuICB2aWV3OiBhbnk7XG4gIEBJbnB1dCgpXG4gIGZpbHRlcjogYW55O1xuICBASW5wdXQoKVxuICBzZXJ2aWNlOiBhbnk7XG4gIGRhdGFTb3VyY2U6IGFueSA9IHt9O1xuICBjb2x1bW5zOiBhbnlbXSA9IFtdO1xuICB0eXBlTWFwOiBhbnkgPSB7XG4gICAgU1RSSU5HOiB7XG4gICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICBmaWx0ZXJPcGVyYXRpb25zOiBbJ2NvbnRhaW5zJywgJ3N0YXJ0c3dpdGgnLCAnZW5kc3dpdGgnLCAnPScsICc8PiddXG4gICAgfSxcbiAgICBURVhUOiB7XG4gICAgICBkYXRhVHlwZTogJ3N0cmluZycsXG4gICAgICBmaWx0ZXJPcGVyYXRpb25zOiBbJ2NvbnRhaW5zJywgJ3N0YXJ0c3dpdGgnLCAnZW5kc3dpdGgnLCAnPScsICc8PiddXG4gICAgfSxcbiAgICBCT09MRUFOOiB7XG4gICAgICBkYXRhVHlwZTogJ2Jvb2xlYW4nLFxuICAgICAgZmlsdGVyT3BlcmF0aW9uczogW11cbiAgICB9LFxuICAgIElOVEVHRVI6IHtcbiAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFsnPScsICc8PicsICc+JywgJz49JywgJzwnLCAnPD0nLCAnYmV0d2VlbiddXG4gICAgfSxcbiAgICBET1VCTEU6IHtcbiAgICAgIGRhdGFUeXBlOiAnbnVtYmVyJyxcbiAgICAgIGZpbHRlck9wZXJhdGlvbnM6IFsnPScsICc8PicsICc+JywgJz49JywgJzwnLCAnPD0nLCAnYmV0d2VlbiddXG4gICAgfSxcbiAgICBEQVRFOiB7XG4gICAgICBkYXRhVHlwZTogJ2RhdGUnLFxuICAgICAgZmlsdGVyT3BlcmF0aW9uczogWyc9JywgJzw+JywgJz4nLCAnPj0nLCAnPCcsICc8PScsICdiZXR3ZWVuJ10sXG4gICAgICBmb3JtYXQ6ICd5eXl5L01NL2RkJ1xuICAgIH0sXG4gICAgREFURVRJTUU6IHtcbiAgICAgIGRhdGFUeXBlOiAnZGF0ZXRpbWUnLFxuICAgICAgZmlsdGVyT3BlcmF0aW9uczogWyc+JywgJzwnLCAnYmV0d2VlbiddLFxuICAgICAgZm9ybWF0OiAneXl5eS9NTS9kZCBISDptbTpzcydcbiAgICB9LFxuICB9O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZCgpO1xuICB9XG5cbiAgbG9hZCgpIHtcbiAgICB0aGlzLnNlcnZpY2UuZ2V0TWV0YWRhdGEodGhpcy50ZW5hbnQsIHRoaXMuY2xhc3NOYW1lLCB0aGlzLnZpZXcgfHwgJycpLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgdGhpcy5jb2x1bW5zID0gW107XG4gICAgICBmb3IgKGxldCBjb2x1bW4gb2YgcmVzcG9uc2UuZGF0YS5jb2x1bW5zKSB7XG4gICAgICAgIGlmIChjb2x1bW4udHlwZSA9PT0gJ05PUk1BTCcpIHtcbiAgICAgICAgICB0aGlzLmNvbHVtbnMucHVzaCh7XG4gICAgICAgICAgICBkYXRhRmllbGQ6IGNvbHVtbi5uYW1lLFxuICAgICAgICAgICAgY2FwdGlvbjogY29sdW1uLmNhcHRpb24sXG4gICAgICAgICAgICBkYXRhVHlwZTogdGhpcy50eXBlTWFwW2NvbHVtbi5kYXRhVHlwZV0uZGF0YVR5cGUsXG4gICAgICAgICAgICBhbGlnbm1lbnQ6ICdsZWZ0JyxcbiAgICAgICAgICAgIGZpbHRlck9wZXJhdGlvbnM6IHRoaXMudHlwZU1hcFtjb2x1bW4uZGF0YVR5cGVdLmZpbHRlck9wZXJhdGlvbnMsXG4gICAgICAgICAgICBmb3JtYXQ6IHRoaXMudHlwZU1hcFtjb2x1bW4uZGF0YVR5cGVdLmZvcm1hdFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5kYXRhU291cmNlID0gbmV3IEN1c3RvbVN0b3JlKHtcbiAgICAgIGtleTogJ29pZCcsXG4gICAgICBieUtleTogKGtleSkgPT4ge1xuICAgICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0T25lKHRoaXMudGVuYW50LCB0aGlzLmNsYXNzTmFtZSwga2V5KSk7XG4gICAgICB9LFxuICAgICAgbG9hZDogKGxvYWRPcHRpb25zOiBhbnkpID0+IHtcbiAgICAgICAgbGV0IHBhcmFtcyA9ICc/JztcbiAgICAgICAgaWYgKGxvYWRPcHRpb25zLnNraXAgfHwgbG9hZE9wdGlvbnMudGFrZSkge1xuICAgICAgICAgIHBhcmFtcyArPSAnb2Zmc2V0PScgKyBsb2FkT3B0aW9ucy5za2lwO1xuICAgICAgICAgIHBhcmFtcyArPSAnJmxpbWl0PScgKyBsb2FkT3B0aW9ucy50YWtlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHBhcmFtcyArPSAnbGltaXQ9MCc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGxvYWRPcHRpb25zLnNvcnQpIHtcbiAgICAgICAgICBsZXQgZmlyc3QgPSB0cnVlO1xuICAgICAgICAgIGZvciAoY29uc3QgdGhpc1NvcnQgb2YgbG9hZE9wdGlvbnMuc29ydCkge1xuICAgICAgICAgICAgaWYgKGZpcnN0KSB7XG4gICAgICAgICAgICAgIHBhcmFtcyArPSAnJm9yZGVyQnk9JyArIHRoaXNTb3J0LnNlbGVjdG9yO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcGFyYW1zICs9ICcsJyArIHRoaXNTb3J0LnNlbGVjdG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXNTb3J0LmRlc2MpIHtcbiAgICAgICAgICAgICAgcGFyYW1zICs9ICcgZGVzYyc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaXJzdCA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsZXQgZmlsdGVyO1xuICAgICAgICBpZiAobG9hZE9wdGlvbnMuZmlsdGVyKSB7XG4gICAgICAgICAgZmlsdGVyID0gbG9hZE9wdGlvbnMuZmlsdGVyO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmZpbHRlcikge1xuICAgICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICAgIGZpbHRlciA9IFtmaWx0ZXIsICdhbmQnLCB0aGlzLmZpbHRlcl07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpbHRlciA9IHRoaXMuZmlsdGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoZmlsdGVyKSB7XG4gICAgICAgICAgcGFyYW1zICs9ICcmZmlsdGVyPScgKyBlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkoZmlsdGVyKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmdldE1hbnkodGhpcy50ZW5hbnQsIHRoaXMuY2xhc3NOYW1lLCBwYXJhbXMgKyAnJnZpZXc9JyArICh0aGlzLnZpZXcgfHwgJycpKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkeC1kYXRhLWdyaWQgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiXG4gICAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbHVtbnNcIlxuICAgICAgICAgICAgICBbc2hvd0JvcmRlcnNdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIFtzaG93Q29sdW1uTGluZXNdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIFtzaG93Um93TGluZXNdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIFtob3ZlclN0YXRlRW5hYmxlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgW3Jvd0FsdGVybmF0aW9uRW5hYmxlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgW2NvbHVtbkF1dG9XaWR0aF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgW2FsbG93Q29sdW1uUmVzaXppbmddPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIGNvbHVtblJlc2l6aW5nTW9kZT1cIndpZGdldFwiXG4gICAgICAgICAgICAgIGRhdGVTZXJpYWxpemF0aW9uRm9ybWF0PVwieXl5eS9NTS9kZCBISDptbTpzc1wiXG4+XG4gIDxkeG8tc29ydGluZyBtb2RlPVwibXVsdGlwbGVcIj48L2R4by1zb3J0aW5nPlxuICA8ZHhvLXNlbGVjdGlvbiBtb2RlPVwibXVsdGlwbGVcIiBzZWxlY3RBbGxNb2RlPVwicGFnZVwiPjwvZHhvLXNlbGVjdGlvbj5cbiAgPGR4by1maWx0ZXItcm93IFt2aXNpYmxlXT1cInRydWVcIj48L2R4by1maWx0ZXItcm93PlxuICA8ZHhvLXJlbW90ZS1vcGVyYXRpb25zIFtmaWx0ZXJpbmddPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3NvcnRpbmddPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2luZ109XCJ0cnVlXCI+XG4gIDwvZHhvLXJlbW90ZS1vcGVyYXRpb25zPlxuICA8ZHhvLXBhZ2luZyBbcGFnZVNpemVdPVwiMTVcIj48L2R4by1wYWdpbmc+XG4gIDxkeG8tcGFnZXIgW3Zpc2libGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgW3Nob3dJbmZvXT1cInRydWVcIlxuICAgICAgICAgICAgIGluZm9UZXh0PVwi56ysezB96aG177yM5YWxezF96aG177yI5YWxezJ95Liq6aG555uu77yJXCJcbiAgICAgICAgICAgICBbc2hvd1BhZ2VTaXplU2VsZWN0b3JdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgW2FsbG93ZWRQYWdlU2l6ZXNdPVwiWzE1LCAzMCwgNTBdXCJcbiAgPjwvZHhvLXBhZ2VyPlxuICA8ZHhvLWV4cG9ydCBbYWxsb3dFeHBvcnRTZWxlY3RlZERhdGFdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIFtmaWxlTmFtZV09XCJjbGFzc05hbWVcIj48L2R4by1leHBvcnQ+XG4gIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgY2VsbEluZm8gb2YgJ3Jvd0luZGV4VGVtcGxhdGUnXCI+XG4gICAge3tjZWxsSW5mby5yb3dJbmRleCArIDF9fVxuICA8L2Rpdj5cbjwvZHgtZGF0YS1ncmlkPlxuIl19
@@ -0,0 +1,28 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { DataGridComponent } from './data-grid.component';
4
+ import { DxDataGridModule } from "devextreme-angular";
5
+ import * as i0 from "@angular/core";
6
+ export class DataGridModule {
7
+ }
8
+ DataGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ DataGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, declarations: [DataGridComponent], imports: [CommonModule,
10
+ DxDataGridModule], exports: [DataGridComponent] });
11
+ DataGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, imports: [CommonModule,
12
+ DxDataGridModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ declarations: [
17
+ DataGridComponent
18
+ ],
19
+ imports: [
20
+ CommonModule,
21
+ DxDataGridModule
22
+ ],
23
+ exports: [
24
+ DataGridComponent
25
+ ]
26
+ }]
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2RhdGEtZ3JpZC9kYXRhLWdyaWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG9CQUFvQixDQUFDOztBQWNwRCxNQUFNLE9BQU8sY0FBYzs7MkdBQWQsY0FBYzs0R0FBZCxjQUFjLGlCQVZ2QixpQkFBaUIsYUFHakIsWUFBWTtRQUNaLGdCQUFnQixhQUdoQixpQkFBaUI7NEdBR1IsY0FBYyxZQVB2QixZQUFZO1FBQ1osZ0JBQWdCOzJGQU1QLGNBQWM7a0JBWjFCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsaUJBQWlCO3FCQUNsQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0RhdGFHcmlkQ29tcG9uZW50fSBmcm9tICcuL2RhdGEtZ3JpZC5jb21wb25lbnQnO1xuaW1wb3J0IHtEeERhdGFHcmlkTW9kdWxlfSBmcm9tIFwiZGV2ZXh0cmVtZS1hbmd1bGFyXCI7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIERhdGFHcmlkQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRHhEYXRhR3JpZE1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRGF0YUdyaWRDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXRhR3JpZE1vZHVsZSB7XG59XG4iXX0=
@@ -111,9 +111,9 @@ export class ModalComponent {
111
111
  element.style.left = currentLeft + 'px';
112
112
  }
113
113
  }
114
- ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
115
- ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.4", type: ModalComponent, selector: "rs-modal", inputs: { title: "title", size: "size", contentTemplate: "contentTemplate", contentTemplateContext: "contentTemplateContext" }, host: { listeners: { "document:mouseup": "onMouseup($event)", "document:mousemove": "onMousemove($event)" } }, viewQueries: [{ propertyName: "modalElementRef", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalComponent, decorators: [{
114
+ ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
115
+ ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ModalComponent, selector: "rs-modal", inputs: { title: "title", size: "size", contentTemplate: "contentTemplate", contentTemplateContext: "contentTemplateContext" }, host: { listeners: { "document:mouseup": "onMouseup($event)", "document:mousemove": "onMousemove($event)" } }, viewQueries: [{ propertyName: "modalElementRef", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalComponent, decorators: [{
117
117
  type: Component,
118
118
  args: [{ selector: 'rs-modal', template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"] }]
119
119
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { title: [{
@@ -4,10 +4,10 @@ import { ModalComponent } from './modal.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class ModalModule {
6
6
  }
7
- ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, declarations: [ModalComponent], imports: [CommonModule] });
9
- ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, imports: [CommonModule] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, decorators: [{
7
+ ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, declarations: [ModalComponent], imports: [CommonModule] });
9
+ ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, imports: [CommonModule] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: [
@@ -17,9 +17,9 @@ export class ModalService {
17
17
  return modalRef.instance;
18
18
  }
19
19
  }
20
- ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
- ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, providedIn: 'root' });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, decorators: [{
20
+ ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
21
+ ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, providedIn: 'root' });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, decorators: [{
23
23
  type: Injectable,
24
24
  args: [{
25
25
  providedIn: 'root'
@@ -3,4 +3,6 @@
3
3
  */
4
4
  export * from './modal/modal.service';
5
5
  export * from './modal/modal.module';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1ycy1hbnRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL21vZGFsL21vZGFsLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC9tb2RhbC5tb2R1bGUnO1xuIl19
6
+ export * from './data-grid/data-grid.component';
7
+ export * from './data-grid/data-grid.module';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtcnMtYW50XG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC9tb2RhbC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kYWwvbW9kYWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWdyaWQvZGF0YS1ncmlkLm1vZHVsZSc7XG4iXX0=
@@ -2,6 +2,12 @@ import * as i0 from '@angular/core';
2
2
  import { Component, Input, ViewChild, HostListener, Injectable, NgModule } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
+ import CustomStore from 'devextreme/data/custom_store';
6
+ import { lastValueFrom } from 'rxjs';
7
+ import * as i1$1 from 'devextreme-angular';
8
+ import { DxDataGridModule } from 'devextreme-angular';
9
+ import * as i2 from 'devextreme-angular/ui/nested';
10
+ import * as i3 from 'devextreme-angular/core';
5
11
 
6
12
  class ModalComponent {
7
13
  constructor(elementRef) {
@@ -113,9 +119,9 @@ class ModalComponent {
113
119
  element.style.left = currentLeft + 'px';
114
120
  }
115
121
  }
116
- ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
117
- ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.4", type: ModalComponent, selector: "rs-modal", inputs: { title: "title", size: "size", contentTemplate: "contentTemplate", contentTemplateContext: "contentTemplateContext" }, host: { listeners: { "document:mouseup": "onMouseup($event)", "document:mousemove": "onMousemove($event)" } }, viewQueries: [{ propertyName: "modalElementRef", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalComponent, decorators: [{
122
+ ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
123
+ ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ModalComponent, selector: "rs-modal", inputs: { title: "title", size: "size", contentTemplate: "contentTemplate", contentTemplateContext: "contentTemplateContext" }, host: { listeners: { "document:mouseup": "onMouseup($event)", "document:mousemove": "onMousemove($event)" } }, viewQueries: [{ propertyName: "modalElementRef", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalComponent, decorators: [{
119
125
  type: Component,
120
126
  args: [{ selector: 'rs-modal', template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"] }]
121
127
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { title: [{
@@ -153,9 +159,9 @@ class ModalService {
153
159
  return modalRef.instance;
154
160
  }
155
161
  }
156
- ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
157
- ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, providedIn: 'root' });
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, decorators: [{
162
+ ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
163
+ ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, providedIn: 'root' });
164
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, decorators: [{
159
165
  type: Injectable,
160
166
  args: [{
161
167
  providedIn: 'root'
@@ -164,10 +170,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImpor
164
170
 
165
171
  class ModalModule {
166
172
  }
167
- ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
168
- ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, declarations: [ModalComponent], imports: [CommonModule] });
169
- ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, imports: [CommonModule] });
170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, decorators: [{
173
+ ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
174
+ ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, declarations: [ModalComponent], imports: [CommonModule] });
175
+ ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, imports: [CommonModule] });
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, decorators: [{
171
177
  type: NgModule,
172
178
  args: [{
173
179
  declarations: [
@@ -180,6 +186,151 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImpor
180
186
  }]
181
187
  }] });
182
188
 
189
+ class DataGridComponent {
190
+ constructor() {
191
+ this.dataSource = {};
192
+ this.columns = [];
193
+ this.typeMap = {
194
+ STRING: {
195
+ dataType: 'string',
196
+ filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']
197
+ },
198
+ TEXT: {
199
+ dataType: 'string',
200
+ filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']
201
+ },
202
+ BOOLEAN: {
203
+ dataType: 'boolean',
204
+ filterOperations: []
205
+ },
206
+ INTEGER: {
207
+ dataType: 'number',
208
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']
209
+ },
210
+ DOUBLE: {
211
+ dataType: 'number',
212
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']
213
+ },
214
+ DATE: {
215
+ dataType: 'date',
216
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between'],
217
+ format: 'yyyy/MM/dd'
218
+ },
219
+ DATETIME: {
220
+ dataType: 'datetime',
221
+ filterOperations: ['>', '<', 'between'],
222
+ format: 'yyyy/MM/dd HH:mm:ss'
223
+ },
224
+ };
225
+ }
226
+ ngOnInit() {
227
+ this.load();
228
+ }
229
+ load() {
230
+ this.service.getMetadata(this.tenant, this.className, this.view || '').subscribe((response) => {
231
+ this.columns = [];
232
+ for (let column of response.data.columns) {
233
+ if (column.type === 'NORMAL') {
234
+ this.columns.push({
235
+ dataField: column.name,
236
+ caption: column.caption,
237
+ dataType: this.typeMap[column.dataType].dataType,
238
+ alignment: 'left',
239
+ filterOperations: this.typeMap[column.dataType].filterOperations,
240
+ format: this.typeMap[column.dataType].format
241
+ });
242
+ }
243
+ }
244
+ });
245
+ this.dataSource = new CustomStore({
246
+ key: 'oid',
247
+ byKey: (key) => {
248
+ return lastValueFrom(this.service.getOne(this.tenant, this.className, key));
249
+ },
250
+ load: (loadOptions) => {
251
+ let params = '?';
252
+ if (loadOptions.skip || loadOptions.take) {
253
+ params += 'offset=' + loadOptions.skip;
254
+ params += '&limit=' + loadOptions.take;
255
+ }
256
+ else {
257
+ params += 'limit=0';
258
+ }
259
+ if (loadOptions.sort) {
260
+ let first = true;
261
+ for (const thisSort of loadOptions.sort) {
262
+ if (first) {
263
+ params += '&orderBy=' + thisSort.selector;
264
+ }
265
+ else {
266
+ params += ',' + thisSort.selector;
267
+ }
268
+ if (thisSort.desc) {
269
+ params += ' desc';
270
+ }
271
+ first = false;
272
+ }
273
+ }
274
+ let filter;
275
+ if (loadOptions.filter) {
276
+ filter = loadOptions.filter;
277
+ }
278
+ if (this.filter) {
279
+ if (filter) {
280
+ filter = [filter, 'and', this.filter];
281
+ }
282
+ else {
283
+ filter = this.filter;
284
+ }
285
+ }
286
+ if (filter) {
287
+ params += '&filter=' + encodeURIComponent(JSON.stringify(filter));
288
+ }
289
+ return lastValueFrom(this.service.getMany(this.tenant, this.className, params + '&view=' + (this.view || '')));
290
+ }
291
+ });
292
+ }
293
+ }
294
+ DataGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
295
+ DataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: DataGridComponent, selector: "rs-data-grid", inputs: { tenant: "tenant", className: "className", view: "view", filter: "filter", service: "service" }, ngImport: i0, template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [showBorders]=\"true\"\n [showColumnLines]=\"true\"\n [showRowLines]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n [allowColumnResizing]=\"true\"\n columnResizingMode=\"widget\"\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\n>\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection mode=\"multiple\" selectAllMode=\"page\"></dxo-selection>\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\n <dxo-remote-operations [filtering]=\"true\"\n [sorting]=\"true\"\n [paging]=\"true\">\n </dxo-remote-operations>\n <dxo-paging [pageSize]=\"15\"></dxo-paging>\n <dxo-pager [visible]=\"true\"\n [showInfo]=\"true\"\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\n [showPageSizeSelector]=\"true\"\n [allowedPageSizes]=\"[15, 30, 50]\"\n ></dxo-pager>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n</dx-data-grid>\n", styles: [""], dependencies: [{ kind: "component", type: i1$1.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i2.DxoExportComponent, selector: "dxo-export", inputs: ["backgroundColor", "enabled", "fileName", "formats", "margin", "printingEnabled", "svgToCanvas", "allowExportSelectedData", "texts"] }, { kind: "component", type: i2.DxoFilterRowComponent, selector: "dxo-filter-row", inputs: ["applyFilter", "applyFilterText", "betweenEndText", "betweenStartText", "operationDescriptions", "resetOperationText", "showAllText", "showOperationChooser", "visible"] }, { kind: "component", type: i2.DxoPagerComponent, selector: "dxo-pager", inputs: ["allowedPageSizes", "displayMode", "infoText", "label", "showInfo", "showNavigationButtons", "showPageSizeSelector", "visible"] }, { kind: "component", type: i2.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i2.DxoRemoteOperationsComponent, selector: "dxo-remote-operations", inputs: ["filtering", "grouping", "groupPaging", "paging", "sorting", "summary"] }, { kind: "component", type: i2.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "deferred", "mode", "selectAllMode", "showCheckBoxesMode", "recursive"] }, { kind: "component", type: i2.DxoSortingComponent, selector: "dxo-sorting", inputs: ["ascendingText", "clearText", "descendingText", "mode", "showSortIndexes"] }, { kind: "directive", type: i3.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }] });
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridComponent, decorators: [{
297
+ type: Component,
298
+ args: [{ selector: 'rs-data-grid', template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [showBorders]=\"true\"\n [showColumnLines]=\"true\"\n [showRowLines]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n [allowColumnResizing]=\"true\"\n columnResizingMode=\"widget\"\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\n>\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection mode=\"multiple\" selectAllMode=\"page\"></dxo-selection>\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\n <dxo-remote-operations [filtering]=\"true\"\n [sorting]=\"true\"\n [paging]=\"true\">\n </dxo-remote-operations>\n <dxo-paging [pageSize]=\"15\"></dxo-paging>\n <dxo-pager [visible]=\"true\"\n [showInfo]=\"true\"\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\n [showPageSizeSelector]=\"true\"\n [allowedPageSizes]=\"[15, 30, 50]\"\n ></dxo-pager>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n</dx-data-grid>\n" }]
299
+ }], propDecorators: { tenant: [{
300
+ type: Input
301
+ }], className: [{
302
+ type: Input
303
+ }], view: [{
304
+ type: Input
305
+ }], filter: [{
306
+ type: Input
307
+ }], service: [{
308
+ type: Input
309
+ }] } });
310
+
311
+ class DataGridModule {
312
+ }
313
+ DataGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
314
+ DataGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, declarations: [DataGridComponent], imports: [CommonModule,
315
+ DxDataGridModule], exports: [DataGridComponent] });
316
+ DataGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, imports: [CommonModule,
317
+ DxDataGridModule] });
318
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, decorators: [{
319
+ type: NgModule,
320
+ args: [{
321
+ declarations: [
322
+ DataGridComponent
323
+ ],
324
+ imports: [
325
+ CommonModule,
326
+ DxDataGridModule
327
+ ],
328
+ exports: [
329
+ DataGridComponent
330
+ ]
331
+ }]
332
+ }] });
333
+
183
334
  /*
184
335
  * Public API Surface of ngx-rs-ant
185
336
  */
@@ -188,5 +339,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImpor
188
339
  * Generated bundle index. Do not edit.
189
340
  */
190
341
 
191
- export { ModalModule, ModalService };
342
+ export { DataGridComponent, DataGridModule, ModalModule, ModalService };
192
343
  //# sourceMappingURL=ngx-rs-ant.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rs-ant.mjs","sources":["../../../projects/ngx-rs-ant/src/modal/modal.component.ts","../../../projects/ngx-rs-ant/src/modal/modal.component.html","../../../projects/ngx-rs-ant/src/modal/modal.service.ts","../../../projects/ngx-rs-ant/src/modal/modal.module.ts","../../../projects/ngx-rs-ant/src/public-api.ts","../../../projects/ngx-rs-ant/src/ngx-rs-ant.ts"],"sourcesContent":["import {Component, ElementRef, HostListener, Input, OnDestroy, OnInit, TemplateRef, ViewChild} from '@angular/core';\n\n@Component({\n selector: 'rs-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.scss']\n})\nexport class ModalComponent implements OnInit, OnDestroy {\n @Input() title!: string;\n @Input() size: 'default' | 'large' | 'full' = 'default';\n _width: number = 480;\n @ViewChild('modal', {static: true}) modalElementRef!: ElementRef;\n moveHandleEl!: HTMLElement;\n movable: boolean = false;\n topStart = 0;\n leftStart = 0;\n @Input()\n contentTemplate!: TemplateRef<any>;\n @Input()\n contentTemplateContext: any;\n\n constructor(public elementRef: ElementRef) {\n }\n\n ngOnInit() {\n if (this.size === 'full') {\n this.modalElementRef.nativeElement.style.top = '0px';\n this.modalElementRef.nativeElement.style.right = '0px';\n this.modalElementRef.nativeElement.style.bottom = '0px';\n this.modalElementRef.nativeElement.style.left = '0px';\n this.modalElementRef.nativeElement.style.margin = '2px';\n this.modalElementRef.nativeElement.style.boxShadow = 'none';\n } else {\n if (this.size === 'large') {\n this._width = 960;\n }\n this.modalElementRef.nativeElement.style.width = this._width + 'px';\n this.modalElementRef.nativeElement.style.top = '40px';\n this.modalElementRef.nativeElement.style.left =\n (this.elementRef.nativeElement.parentElement.offsetWidth - this.modalElementRef.nativeElement.offsetWidth) / 2 + 'px';\n this.moveHandleEl = this.elementRef.nativeElement.querySelector('.modal-header');\n this.moveHandleEl.style.cursor = 'move';\n }\n }\n\n show() {\n // 若存在多层模态框,仅保留最上层遮罩颜色,下层遮罩设置为透明\n const parentElement = this.elementRef.nativeElement.parentElement;\n const nodeName = this.elementRef.nativeElement.nodeName;\n const modals = parentElement.querySelectorAll(nodeName);\n for (let i = 0; i < modals.length; i++) {\n if (i === modals.length - 1) {\n modals[i].querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0.05)';\n } else {\n modals[i].querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0)';\n }\n }\n }\n\n hide() {\n // 在service中重写\n }\n\n ngOnDestroy(): void {\n // 若存在多层模态框,下一层遮罩设置为不透明\n const parentElement = this.elementRef.nativeElement.parentElement;\n const nodeName = this.elementRef.nativeElement.nodeName;\n const nextModal = parentElement.querySelector(nodeName + ':nth-last-child(2)');\n if (nextModal) {\n nextModal.querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0.05)';\n }\n }\n\n resolveModalBackdropPosition() {\n return {\n \"width\": this.elementRef.nativeElement.parentElement.offsetWidth + 'px',\n \"height\": this.elementRef.nativeElement.parentElement.offsetHeight + 'px',\n \"top\": this.elementRef.nativeElement.parentElement.offsetTop + 'px',\n \"left\": this.elementRef.nativeElement.parentElement.offsetLeft + 'px',\n };\n }\n\n onMousedown($event: MouseEvent) {\n if ($event.button === 2 || !this.checkHandleTarget($event.target, this.moveHandleEl)) {\n return;\n }\n this.movable = true;\n this.topStart = $event.clientY - this.modalElementRef.nativeElement.style.top.replace('px', '');\n this.leftStart = $event.clientX - this.modalElementRef.nativeElement.style.left.replace('px', '');\n }\n\n private checkHandleTarget(target: any, element: any): boolean {\n if (!element) {\n return false;\n }\n if (target === element) {\n return true;\n }\n for (let child in element.children) {\n if (Object.prototype.hasOwnProperty.call(element.children, child)) {\n if (this.checkHandleTarget(target, element.children[child])) {\n return true;\n }\n }\n }\n return false;\n }\n\n @HostListener('document:mouseup', ['$event'])\n onMouseup() {\n this.movable = false;\n }\n\n @HostListener('document:mousemove', ['$event'])\n onMousemove($event: MouseEvent) {\n if (!this.movable) {\n return;\n }\n $event.stopPropagation();\n $event.preventDefault();\n const element = this.modalElementRef.nativeElement;\n let currentTop = $event.clientY - this.topStart;\n let currentLeft = $event.clientX - this.leftStart;\n currentTop = currentTop < 0 ? 0 : currentTop;\n const maxTop = element.parentElement.offsetHeight - element.offsetHeight;\n currentTop = currentTop > maxTop ? maxTop : currentTop;\n currentLeft = currentLeft < 0 ? 0 : currentLeft;\n const maxLeft = element.parentElement.offsetWidth - element.offsetWidth;\n currentLeft = currentLeft > maxLeft ? maxLeft : currentLeft;\n element.style.top = currentTop + 'px';\n element.style.left = currentLeft + 'px';\n }\n}\n","<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n","import {Injectable, TemplateRef, ViewContainerRef} from '@angular/core';\nimport {ModalComponent} from './modal.component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ModalService {\n constructor() {\n }\n\n open(viewContainerRef: ViewContainerRef,\n title: string, size: 'default' | 'large' | 'full' = 'default',\n contentTemplate: TemplateRef<any>,\n contentTemplateContext: any) {\n const modalRef = viewContainerRef.createComponent(ModalComponent);\n modalRef.instance.hide = () => {\n modalRef.hostView.destroy();\n }\n modalRef.instance.title = title;\n modalRef.instance.contentTemplate = contentTemplate;\n modalRef.instance.size = size;\n modalRef.instance.contentTemplateContext = contentTemplateContext;\n modalRef.instance.show();\n return modalRef.instance;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {ModalComponent} from './modal.component';\n\n@NgModule({\n declarations: [\n ModalComponent\n ],\n imports: [\n CommonModule\n ],\n exports: []\n})\nexport class ModalModule {\n}\n","/*\n * Public API Surface of ngx-rs-ant\n */\n\nexport * from './modal/modal.service';\nexport * from './modal/modal.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-rs-ant.mjs","sources":["../../../projects/ngx-rs-ant/src/modal/modal.component.ts","../../../projects/ngx-rs-ant/src/modal/modal.component.html","../../../projects/ngx-rs-ant/src/modal/modal.service.ts","../../../projects/ngx-rs-ant/src/modal/modal.module.ts","../../../projects/ngx-rs-ant/src/data-grid/data-grid.component.ts","../../../projects/ngx-rs-ant/src/data-grid/data-grid.component.html","../../../projects/ngx-rs-ant/src/data-grid/data-grid.module.ts","../../../projects/ngx-rs-ant/src/public-api.ts","../../../projects/ngx-rs-ant/src/ngx-rs-ant.ts"],"sourcesContent":["import {Component, ElementRef, HostListener, Input, OnDestroy, OnInit, TemplateRef, ViewChild} from '@angular/core';\n\n@Component({\n selector: 'rs-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.scss']\n})\nexport class ModalComponent implements OnInit, OnDestroy {\n @Input() title!: string;\n @Input() size: 'default' | 'large' | 'full' = 'default';\n _width: number = 480;\n @ViewChild('modal', {static: true}) modalElementRef!: ElementRef;\n moveHandleEl!: HTMLElement;\n movable: boolean = false;\n topStart = 0;\n leftStart = 0;\n @Input()\n contentTemplate!: TemplateRef<any>;\n @Input()\n contentTemplateContext: any;\n\n constructor(public elementRef: ElementRef) {\n }\n\n ngOnInit() {\n if (this.size === 'full') {\n this.modalElementRef.nativeElement.style.top = '0px';\n this.modalElementRef.nativeElement.style.right = '0px';\n this.modalElementRef.nativeElement.style.bottom = '0px';\n this.modalElementRef.nativeElement.style.left = '0px';\n this.modalElementRef.nativeElement.style.margin = '2px';\n this.modalElementRef.nativeElement.style.boxShadow = 'none';\n } else {\n if (this.size === 'large') {\n this._width = 960;\n }\n this.modalElementRef.nativeElement.style.width = this._width + 'px';\n this.modalElementRef.nativeElement.style.top = '40px';\n this.modalElementRef.nativeElement.style.left =\n (this.elementRef.nativeElement.parentElement.offsetWidth - this.modalElementRef.nativeElement.offsetWidth) / 2 + 'px';\n this.moveHandleEl = this.elementRef.nativeElement.querySelector('.modal-header');\n this.moveHandleEl.style.cursor = 'move';\n }\n }\n\n show() {\n // 若存在多层模态框,仅保留最上层遮罩颜色,下层遮罩设置为透明\n const parentElement = this.elementRef.nativeElement.parentElement;\n const nodeName = this.elementRef.nativeElement.nodeName;\n const modals = parentElement.querySelectorAll(nodeName);\n for (let i = 0; i < modals.length; i++) {\n if (i === modals.length - 1) {\n modals[i].querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0.05)';\n } else {\n modals[i].querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0)';\n }\n }\n }\n\n hide() {\n // 在service中重写\n }\n\n ngOnDestroy(): void {\n // 若存在多层模态框,下一层遮罩设置为不透明\n const parentElement = this.elementRef.nativeElement.parentElement;\n const nodeName = this.elementRef.nativeElement.nodeName;\n const nextModal = parentElement.querySelector(nodeName + ':nth-last-child(2)');\n if (nextModal) {\n nextModal.querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0.05)';\n }\n }\n\n resolveModalBackdropPosition() {\n return {\n \"width\": this.elementRef.nativeElement.parentElement.offsetWidth + 'px',\n \"height\": this.elementRef.nativeElement.parentElement.offsetHeight + 'px',\n \"top\": this.elementRef.nativeElement.parentElement.offsetTop + 'px',\n \"left\": this.elementRef.nativeElement.parentElement.offsetLeft + 'px',\n };\n }\n\n onMousedown($event: MouseEvent) {\n if ($event.button === 2 || !this.checkHandleTarget($event.target, this.moveHandleEl)) {\n return;\n }\n this.movable = true;\n this.topStart = $event.clientY - this.modalElementRef.nativeElement.style.top.replace('px', '');\n this.leftStart = $event.clientX - this.modalElementRef.nativeElement.style.left.replace('px', '');\n }\n\n private checkHandleTarget(target: any, element: any): boolean {\n if (!element) {\n return false;\n }\n if (target === element) {\n return true;\n }\n for (let child in element.children) {\n if (Object.prototype.hasOwnProperty.call(element.children, child)) {\n if (this.checkHandleTarget(target, element.children[child])) {\n return true;\n }\n }\n }\n return false;\n }\n\n @HostListener('document:mouseup', ['$event'])\n onMouseup() {\n this.movable = false;\n }\n\n @HostListener('document:mousemove', ['$event'])\n onMousemove($event: MouseEvent) {\n if (!this.movable) {\n return;\n }\n $event.stopPropagation();\n $event.preventDefault();\n const element = this.modalElementRef.nativeElement;\n let currentTop = $event.clientY - this.topStart;\n let currentLeft = $event.clientX - this.leftStart;\n currentTop = currentTop < 0 ? 0 : currentTop;\n const maxTop = element.parentElement.offsetHeight - element.offsetHeight;\n currentTop = currentTop > maxTop ? maxTop : currentTop;\n currentLeft = currentLeft < 0 ? 0 : currentLeft;\n const maxLeft = element.parentElement.offsetWidth - element.offsetWidth;\n currentLeft = currentLeft > maxLeft ? maxLeft : currentLeft;\n element.style.top = currentTop + 'px';\n element.style.left = currentLeft + 'px';\n }\n}\n","<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n","import {Injectable, TemplateRef, ViewContainerRef} from '@angular/core';\nimport {ModalComponent} from './modal.component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ModalService {\n constructor() {\n }\n\n open(viewContainerRef: ViewContainerRef,\n title: string, size: 'default' | 'large' | 'full' = 'default',\n contentTemplate: TemplateRef<any>,\n contentTemplateContext: any) {\n const modalRef = viewContainerRef.createComponent(ModalComponent);\n modalRef.instance.hide = () => {\n modalRef.hostView.destroy();\n }\n modalRef.instance.title = title;\n modalRef.instance.contentTemplate = contentTemplate;\n modalRef.instance.size = size;\n modalRef.instance.contentTemplateContext = contentTemplateContext;\n modalRef.instance.show();\n return modalRef.instance;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {ModalComponent} from './modal.component';\n\n@NgModule({\n declarations: [\n ModalComponent\n ],\n imports: [\n CommonModule\n ],\n exports: []\n})\nexport class ModalModule {\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport CustomStore from \"devextreme/data/custom_store\";\nimport {lastValueFrom} from \"rxjs\";\n\n@Component({\n selector: 'rs-data-grid',\n templateUrl: './data-grid.component.html',\n styleUrls: ['./data-grid.component.scss']\n})\nexport class DataGridComponent implements OnInit {\n @Input()\n tenant: any;\n @Input()\n className: any;\n @Input()\n view: any;\n @Input()\n filter: any;\n @Input()\n service: any;\n dataSource: any = {};\n columns: any[] = [];\n typeMap: any = {\n STRING: {\n dataType: 'string',\n filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']\n },\n TEXT: {\n dataType: 'string',\n filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']\n },\n BOOLEAN: {\n dataType: 'boolean',\n filterOperations: []\n },\n INTEGER: {\n dataType: 'number',\n filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']\n },\n DOUBLE: {\n dataType: 'number',\n filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']\n },\n DATE: {\n dataType: 'date',\n filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between'],\n format: 'yyyy/MM/dd'\n },\n DATETIME: {\n dataType: 'datetime',\n filterOperations: ['>', '<', 'between'],\n format: 'yyyy/MM/dd HH:mm:ss'\n },\n };\n\n ngOnInit(): void {\n this.load();\n }\n\n load() {\n this.service.getMetadata(this.tenant, this.className, this.view || '').subscribe((response: any) => {\n this.columns = [];\n for (let column of response.data.columns) {\n if (column.type === 'NORMAL') {\n this.columns.push({\n dataField: column.name,\n caption: column.caption,\n dataType: this.typeMap[column.dataType].dataType,\n alignment: 'left',\n filterOperations: this.typeMap[column.dataType].filterOperations,\n format: this.typeMap[column.dataType].format\n });\n }\n }\n });\n this.dataSource = new CustomStore({\n key: 'oid',\n byKey: (key) => {\n return lastValueFrom(this.service.getOne(this.tenant, this.className, key));\n },\n load: (loadOptions: any) => {\n let params = '?';\n if (loadOptions.skip || loadOptions.take) {\n params += 'offset=' + loadOptions.skip;\n params += '&limit=' + loadOptions.take;\n } else {\n params += 'limit=0';\n }\n if (loadOptions.sort) {\n let first = true;\n for (const thisSort of loadOptions.sort) {\n if (first) {\n params += '&orderBy=' + thisSort.selector;\n } else {\n params += ',' + thisSort.selector;\n }\n if (thisSort.desc) {\n params += ' desc';\n }\n first = false;\n }\n }\n let filter;\n if (loadOptions.filter) {\n filter = loadOptions.filter;\n }\n if (this.filter) {\n if (filter) {\n filter = [filter, 'and', this.filter];\n } else {\n filter = this.filter;\n }\n }\n if (filter) {\n params += '&filter=' + encodeURIComponent(JSON.stringify(filter));\n }\n return lastValueFrom(this.service.getMany(this.tenant, this.className, params + '&view=' + (this.view || '')));\n }\n });\n }\n}\n","<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [showBorders]=\"true\"\n [showColumnLines]=\"true\"\n [showRowLines]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n [allowColumnResizing]=\"true\"\n columnResizingMode=\"widget\"\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\n>\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection mode=\"multiple\" selectAllMode=\"page\"></dxo-selection>\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\n <dxo-remote-operations [filtering]=\"true\"\n [sorting]=\"true\"\n [paging]=\"true\">\n </dxo-remote-operations>\n <dxo-paging [pageSize]=\"15\"></dxo-paging>\n <dxo-pager [visible]=\"true\"\n [showInfo]=\"true\"\n infoText=\"第{0}页,共{1}页(共{2}个项目)\"\n [showPageSizeSelector]=\"true\"\n [allowedPageSizes]=\"[15, 30, 50]\"\n ></dxo-pager>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n</dx-data-grid>\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {DataGridComponent} from './data-grid.component';\nimport {DxDataGridModule} from \"devextreme-angular\";\n\n@NgModule({\n declarations: [\n DataGridComponent\n ],\n imports: [\n CommonModule,\n DxDataGridModule\n ],\n exports: [\n DataGridComponent\n ]\n})\nexport class DataGridModule {\n}\n","/*\n * Public API Surface of ngx-rs-ant\n */\n\nexport * from './modal/modal.service';\nexport * from './modal/modal.module';\nexport * from './data-grid/data-grid.component';\nexport * from './data-grid/data-grid.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
@@ -2,6 +2,12 @@ import * as i0 from '@angular/core';
2
2
  import { Component, Input, ViewChild, HostListener, Injectable, NgModule } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
+ import CustomStore from 'devextreme/data/custom_store';
6
+ import { lastValueFrom } from 'rxjs';
7
+ import * as i1$1 from 'devextreme-angular';
8
+ import { DxDataGridModule } from 'devextreme-angular';
9
+ import * as i2 from 'devextreme-angular/ui/nested';
10
+ import * as i3 from 'devextreme-angular/core';
5
11
 
6
12
  class ModalComponent {
7
13
  constructor(elementRef) {
@@ -113,9 +119,9 @@ class ModalComponent {
113
119
  element.style.left = currentLeft + 'px';
114
120
  }
115
121
  }
116
- ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
117
- ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.4", type: ModalComponent, selector: "rs-modal", inputs: { title: "title", size: "size", contentTemplate: "contentTemplate", contentTemplateContext: "contentTemplateContext" }, host: { listeners: { "document:mouseup": "onMouseup($event)", "document:mousemove": "onMousemove($event)" } }, viewQueries: [{ propertyName: "modalElementRef", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalComponent, decorators: [{
122
+ ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
123
+ ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: ModalComponent, selector: "rs-modal", inputs: { title: "title", size: "size", contentTemplate: "contentTemplate", contentTemplateContext: "contentTemplateContext" }, host: { listeners: { "document:mouseup": "onMouseup($event)", "document:mousemove": "onMousemove($event)" } }, viewQueries: [{ propertyName: "modalElementRef", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalComponent, decorators: [{
119
125
  type: Component,
120
126
  args: [{ selector: 'rs-modal', template: "<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--devui-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;top:0;left:0;z-index:var(--devui-z-index-modal, 1050);background-color:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px);box-shadow:var(--devui-shadow-length-fullscreen-overlay, 0 12px 24px 0) var(--devui-shadow, rgba(37, 43, 58, .2));display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:var(--devui-font-size-card-title, 14px);font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:var(--devui-font-size-card-title, 14px)}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--devui-danger, #f66f6a);background-color:var(--devui-info-bg, #e9edfa)}:host .modal-backdrop .modal .modal-content{flex:auto;padding:24px;display:flex;flex-flow:column;font-size:var(--devui-font-size, 12px);color:var(--devui-aide-text, #71757f)}\n"] }]
121
127
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { title: [{
@@ -153,9 +159,9 @@ class ModalService {
153
159
  return modalRef.instance;
154
160
  }
155
161
  }
156
- ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
157
- ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, providedIn: 'root' });
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalService, decorators: [{
162
+ ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
163
+ ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, providedIn: 'root' });
164
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalService, decorators: [{
159
165
  type: Injectable,
160
166
  args: [{
161
167
  providedIn: 'root'
@@ -164,10 +170,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImpor
164
170
 
165
171
  class ModalModule {
166
172
  }
167
- ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
168
- ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, declarations: [ModalComponent], imports: [CommonModule] });
169
- ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, imports: [CommonModule] });
170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: ModalModule, decorators: [{
173
+ ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
174
+ ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, declarations: [ModalComponent], imports: [CommonModule] });
175
+ ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, imports: [CommonModule] });
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: ModalModule, decorators: [{
171
177
  type: NgModule,
172
178
  args: [{
173
179
  declarations: [
@@ -180,6 +186,151 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImpor
180
186
  }]
181
187
  }] });
182
188
 
189
+ class DataGridComponent {
190
+ constructor() {
191
+ this.dataSource = {};
192
+ this.columns = [];
193
+ this.typeMap = {
194
+ STRING: {
195
+ dataType: 'string',
196
+ filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']
197
+ },
198
+ TEXT: {
199
+ dataType: 'string',
200
+ filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']
201
+ },
202
+ BOOLEAN: {
203
+ dataType: 'boolean',
204
+ filterOperations: []
205
+ },
206
+ INTEGER: {
207
+ dataType: 'number',
208
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']
209
+ },
210
+ DOUBLE: {
211
+ dataType: 'number',
212
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']
213
+ },
214
+ DATE: {
215
+ dataType: 'date',
216
+ filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between'],
217
+ format: 'yyyy/MM/dd'
218
+ },
219
+ DATETIME: {
220
+ dataType: 'datetime',
221
+ filterOperations: ['>', '<', 'between'],
222
+ format: 'yyyy/MM/dd HH:mm:ss'
223
+ },
224
+ };
225
+ }
226
+ ngOnInit() {
227
+ this.load();
228
+ }
229
+ load() {
230
+ this.service.getMetadata(this.tenant, this.className, this.view || '').subscribe((response) => {
231
+ this.columns = [];
232
+ for (let column of response.data.columns) {
233
+ if (column.type === 'NORMAL') {
234
+ this.columns.push({
235
+ dataField: column.name,
236
+ caption: column.caption,
237
+ dataType: this.typeMap[column.dataType].dataType,
238
+ alignment: 'left',
239
+ filterOperations: this.typeMap[column.dataType].filterOperations,
240
+ format: this.typeMap[column.dataType].format
241
+ });
242
+ }
243
+ }
244
+ });
245
+ this.dataSource = new CustomStore({
246
+ key: 'oid',
247
+ byKey: (key) => {
248
+ return lastValueFrom(this.service.getOne(this.tenant, this.className, key));
249
+ },
250
+ load: (loadOptions) => {
251
+ let params = '?';
252
+ if (loadOptions.skip || loadOptions.take) {
253
+ params += 'offset=' + loadOptions.skip;
254
+ params += '&limit=' + loadOptions.take;
255
+ }
256
+ else {
257
+ params += 'limit=0';
258
+ }
259
+ if (loadOptions.sort) {
260
+ let first = true;
261
+ for (const thisSort of loadOptions.sort) {
262
+ if (first) {
263
+ params += '&orderBy=' + thisSort.selector;
264
+ }
265
+ else {
266
+ params += ',' + thisSort.selector;
267
+ }
268
+ if (thisSort.desc) {
269
+ params += ' desc';
270
+ }
271
+ first = false;
272
+ }
273
+ }
274
+ let filter;
275
+ if (loadOptions.filter) {
276
+ filter = loadOptions.filter;
277
+ }
278
+ if (this.filter) {
279
+ if (filter) {
280
+ filter = [filter, 'and', this.filter];
281
+ }
282
+ else {
283
+ filter = this.filter;
284
+ }
285
+ }
286
+ if (filter) {
287
+ params += '&filter=' + encodeURIComponent(JSON.stringify(filter));
288
+ }
289
+ return lastValueFrom(this.service.getMany(this.tenant, this.className, params + '&view=' + (this.view || '')));
290
+ }
291
+ });
292
+ }
293
+ }
294
+ DataGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
295
+ DataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.0", type: DataGridComponent, selector: "rs-data-grid", inputs: { tenant: "tenant", className: "className", view: "view", filter: "filter", service: "service" }, ngImport: i0, template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [showBorders]=\"true\"\n [showColumnLines]=\"true\"\n [showRowLines]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n [allowColumnResizing]=\"true\"\n columnResizingMode=\"widget\"\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\n>\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection mode=\"multiple\" selectAllMode=\"page\"></dxo-selection>\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\n <dxo-remote-operations [filtering]=\"true\"\n [sorting]=\"true\"\n [paging]=\"true\">\n </dxo-remote-operations>\n <dxo-paging [pageSize]=\"15\"></dxo-paging>\n <dxo-pager [visible]=\"true\"\n [showInfo]=\"true\"\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\n [showPageSizeSelector]=\"true\"\n [allowedPageSizes]=\"[15, 30, 50]\"\n ></dxo-pager>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n</dx-data-grid>\n", styles: [""], dependencies: [{ kind: "component", type: i1$1.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i2.DxoExportComponent, selector: "dxo-export", inputs: ["backgroundColor", "enabled", "fileName", "formats", "margin", "printingEnabled", "svgToCanvas", "allowExportSelectedData", "texts"] }, { kind: "component", type: i2.DxoFilterRowComponent, selector: "dxo-filter-row", inputs: ["applyFilter", "applyFilterText", "betweenEndText", "betweenStartText", "operationDescriptions", "resetOperationText", "showAllText", "showOperationChooser", "visible"] }, { kind: "component", type: i2.DxoPagerComponent, selector: "dxo-pager", inputs: ["allowedPageSizes", "displayMode", "infoText", "label", "showInfo", "showNavigationButtons", "showPageSizeSelector", "visible"] }, { kind: "component", type: i2.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i2.DxoRemoteOperationsComponent, selector: "dxo-remote-operations", inputs: ["filtering", "grouping", "groupPaging", "paging", "sorting", "summary"] }, { kind: "component", type: i2.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "deferred", "mode", "selectAllMode", "showCheckBoxesMode", "recursive"] }, { kind: "component", type: i2.DxoSortingComponent, selector: "dxo-sorting", inputs: ["ascendingText", "clearText", "descendingText", "mode", "showSortIndexes"] }, { kind: "directive", type: i3.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }] });
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridComponent, decorators: [{
297
+ type: Component,
298
+ args: [{ selector: 'rs-data-grid', template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [showBorders]=\"true\"\n [showColumnLines]=\"true\"\n [showRowLines]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n [allowColumnResizing]=\"true\"\n columnResizingMode=\"widget\"\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\n>\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection mode=\"multiple\" selectAllMode=\"page\"></dxo-selection>\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\n <dxo-remote-operations [filtering]=\"true\"\n [sorting]=\"true\"\n [paging]=\"true\">\n </dxo-remote-operations>\n <dxo-paging [pageSize]=\"15\"></dxo-paging>\n <dxo-pager [visible]=\"true\"\n [showInfo]=\"true\"\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\n [showPageSizeSelector]=\"true\"\n [allowedPageSizes]=\"[15, 30, 50]\"\n ></dxo-pager>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n</dx-data-grid>\n" }]
299
+ }], propDecorators: { tenant: [{
300
+ type: Input
301
+ }], className: [{
302
+ type: Input
303
+ }], view: [{
304
+ type: Input
305
+ }], filter: [{
306
+ type: Input
307
+ }], service: [{
308
+ type: Input
309
+ }] } });
310
+
311
+ class DataGridModule {
312
+ }
313
+ DataGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
314
+ DataGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, declarations: [DataGridComponent], imports: [CommonModule,
315
+ DxDataGridModule], exports: [DataGridComponent] });
316
+ DataGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, imports: [CommonModule,
317
+ DxDataGridModule] });
318
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: DataGridModule, decorators: [{
319
+ type: NgModule,
320
+ args: [{
321
+ declarations: [
322
+ DataGridComponent
323
+ ],
324
+ imports: [
325
+ CommonModule,
326
+ DxDataGridModule
327
+ ],
328
+ exports: [
329
+ DataGridComponent
330
+ ]
331
+ }]
332
+ }] });
333
+
183
334
  /*
184
335
  * Public API Surface of ngx-rs-ant
185
336
  */
@@ -188,5 +339,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImpor
188
339
  * Generated bundle index. Do not edit.
189
340
  */
190
341
 
191
- export { ModalModule, ModalService };
342
+ export { DataGridComponent, DataGridModule, ModalModule, ModalService };
192
343
  //# sourceMappingURL=ngx-rs-ant.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rs-ant.mjs","sources":["../../../projects/ngx-rs-ant/src/modal/modal.component.ts","../../../projects/ngx-rs-ant/src/modal/modal.component.html","../../../projects/ngx-rs-ant/src/modal/modal.service.ts","../../../projects/ngx-rs-ant/src/modal/modal.module.ts","../../../projects/ngx-rs-ant/src/public-api.ts","../../../projects/ngx-rs-ant/src/ngx-rs-ant.ts"],"sourcesContent":["import {Component, ElementRef, HostListener, Input, OnDestroy, OnInit, TemplateRef, ViewChild} from '@angular/core';\n\n@Component({\n selector: 'rs-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.scss']\n})\nexport class ModalComponent implements OnInit, OnDestroy {\n @Input() title!: string;\n @Input() size: 'default' | 'large' | 'full' = 'default';\n _width: number = 480;\n @ViewChild('modal', {static: true}) modalElementRef!: ElementRef;\n moveHandleEl!: HTMLElement;\n movable: boolean = false;\n topStart = 0;\n leftStart = 0;\n @Input()\n contentTemplate!: TemplateRef<any>;\n @Input()\n contentTemplateContext: any;\n\n constructor(public elementRef: ElementRef) {\n }\n\n ngOnInit() {\n if (this.size === 'full') {\n this.modalElementRef.nativeElement.style.top = '0px';\n this.modalElementRef.nativeElement.style.right = '0px';\n this.modalElementRef.nativeElement.style.bottom = '0px';\n this.modalElementRef.nativeElement.style.left = '0px';\n this.modalElementRef.nativeElement.style.margin = '2px';\n this.modalElementRef.nativeElement.style.boxShadow = 'none';\n } else {\n if (this.size === 'large') {\n this._width = 960;\n }\n this.modalElementRef.nativeElement.style.width = this._width + 'px';\n this.modalElementRef.nativeElement.style.top = '40px';\n this.modalElementRef.nativeElement.style.left =\n (this.elementRef.nativeElement.parentElement.offsetWidth - this.modalElementRef.nativeElement.offsetWidth) / 2 + 'px';\n this.moveHandleEl = this.elementRef.nativeElement.querySelector('.modal-header');\n this.moveHandleEl.style.cursor = 'move';\n }\n }\n\n show() {\n // 若存在多层模态框,仅保留最上层遮罩颜色,下层遮罩设置为透明\n const parentElement = this.elementRef.nativeElement.parentElement;\n const nodeName = this.elementRef.nativeElement.nodeName;\n const modals = parentElement.querySelectorAll(nodeName);\n for (let i = 0; i < modals.length; i++) {\n if (i === modals.length - 1) {\n modals[i].querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0.05)';\n } else {\n modals[i].querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0)';\n }\n }\n }\n\n hide() {\n // 在service中重写\n }\n\n ngOnDestroy(): void {\n // 若存在多层模态框,下一层遮罩设置为不透明\n const parentElement = this.elementRef.nativeElement.parentElement;\n const nodeName = this.elementRef.nativeElement.nodeName;\n const nextModal = parentElement.querySelector(nodeName + ':nth-last-child(2)');\n if (nextModal) {\n nextModal.querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0.05)';\n }\n }\n\n resolveModalBackdropPosition() {\n return {\n \"width\": this.elementRef.nativeElement.parentElement.offsetWidth + 'px',\n \"height\": this.elementRef.nativeElement.parentElement.offsetHeight + 'px',\n \"top\": this.elementRef.nativeElement.parentElement.offsetTop + 'px',\n \"left\": this.elementRef.nativeElement.parentElement.offsetLeft + 'px',\n };\n }\n\n onMousedown($event: MouseEvent) {\n if ($event.button === 2 || !this.checkHandleTarget($event.target, this.moveHandleEl)) {\n return;\n }\n this.movable = true;\n this.topStart = $event.clientY - this.modalElementRef.nativeElement.style.top.replace('px', '');\n this.leftStart = $event.clientX - this.modalElementRef.nativeElement.style.left.replace('px', '');\n }\n\n private checkHandleTarget(target: any, element: any): boolean {\n if (!element) {\n return false;\n }\n if (target === element) {\n return true;\n }\n for (let child in element.children) {\n if (Object.prototype.hasOwnProperty.call(element.children, child)) {\n if (this.checkHandleTarget(target, element.children[child])) {\n return true;\n }\n }\n }\n return false;\n }\n\n @HostListener('document:mouseup', ['$event'])\n onMouseup() {\n this.movable = false;\n }\n\n @HostListener('document:mousemove', ['$event'])\n onMousemove($event: MouseEvent) {\n if (!this.movable) {\n return;\n }\n $event.stopPropagation();\n $event.preventDefault();\n const element = this.modalElementRef.nativeElement;\n let currentTop = $event.clientY - this.topStart;\n let currentLeft = $event.clientX - this.leftStart;\n currentTop = currentTop < 0 ? 0 : currentTop;\n const maxTop = element.parentElement.offsetHeight - element.offsetHeight;\n currentTop = currentTop > maxTop ? maxTop : currentTop;\n currentLeft = currentLeft < 0 ? 0 : currentLeft;\n const maxLeft = element.parentElement.offsetWidth - element.offsetWidth;\n currentLeft = currentLeft > maxLeft ? maxLeft : currentLeft;\n element.style.top = currentTop + 'px';\n element.style.left = currentLeft + 'px';\n }\n}\n","<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n","import {Injectable, TemplateRef, ViewContainerRef} from '@angular/core';\nimport {ModalComponent} from './modal.component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ModalService {\n constructor() {\n }\n\n open(viewContainerRef: ViewContainerRef,\n title: string, size: 'default' | 'large' | 'full' = 'default',\n contentTemplate: TemplateRef<any>,\n contentTemplateContext: any) {\n const modalRef = viewContainerRef.createComponent(ModalComponent);\n modalRef.instance.hide = () => {\n modalRef.hostView.destroy();\n }\n modalRef.instance.title = title;\n modalRef.instance.contentTemplate = contentTemplate;\n modalRef.instance.size = size;\n modalRef.instance.contentTemplateContext = contentTemplateContext;\n modalRef.instance.show();\n return modalRef.instance;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {ModalComponent} from './modal.component';\n\n@NgModule({\n declarations: [\n ModalComponent\n ],\n imports: [\n CommonModule\n ],\n exports: []\n})\nexport class ModalModule {\n}\n","/*\n * Public API Surface of ngx-rs-ant\n */\n\nexport * from './modal/modal.service';\nexport * from './modal/modal.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-rs-ant.mjs","sources":["../../../projects/ngx-rs-ant/src/modal/modal.component.ts","../../../projects/ngx-rs-ant/src/modal/modal.component.html","../../../projects/ngx-rs-ant/src/modal/modal.service.ts","../../../projects/ngx-rs-ant/src/modal/modal.module.ts","../../../projects/ngx-rs-ant/src/data-grid/data-grid.component.ts","../../../projects/ngx-rs-ant/src/data-grid/data-grid.component.html","../../../projects/ngx-rs-ant/src/data-grid/data-grid.module.ts","../../../projects/ngx-rs-ant/src/public-api.ts","../../../projects/ngx-rs-ant/src/ngx-rs-ant.ts"],"sourcesContent":["import {Component, ElementRef, HostListener, Input, OnDestroy, OnInit, TemplateRef, ViewChild} from '@angular/core';\n\n@Component({\n selector: 'rs-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.scss']\n})\nexport class ModalComponent implements OnInit, OnDestroy {\n @Input() title!: string;\n @Input() size: 'default' | 'large' | 'full' = 'default';\n _width: number = 480;\n @ViewChild('modal', {static: true}) modalElementRef!: ElementRef;\n moveHandleEl!: HTMLElement;\n movable: boolean = false;\n topStart = 0;\n leftStart = 0;\n @Input()\n contentTemplate!: TemplateRef<any>;\n @Input()\n contentTemplateContext: any;\n\n constructor(public elementRef: ElementRef) {\n }\n\n ngOnInit() {\n if (this.size === 'full') {\n this.modalElementRef.nativeElement.style.top = '0px';\n this.modalElementRef.nativeElement.style.right = '0px';\n this.modalElementRef.nativeElement.style.bottom = '0px';\n this.modalElementRef.nativeElement.style.left = '0px';\n this.modalElementRef.nativeElement.style.margin = '2px';\n this.modalElementRef.nativeElement.style.boxShadow = 'none';\n } else {\n if (this.size === 'large') {\n this._width = 960;\n }\n this.modalElementRef.nativeElement.style.width = this._width + 'px';\n this.modalElementRef.nativeElement.style.top = '40px';\n this.modalElementRef.nativeElement.style.left =\n (this.elementRef.nativeElement.parentElement.offsetWidth - this.modalElementRef.nativeElement.offsetWidth) / 2 + 'px';\n this.moveHandleEl = this.elementRef.nativeElement.querySelector('.modal-header');\n this.moveHandleEl.style.cursor = 'move';\n }\n }\n\n show() {\n // 若存在多层模态框,仅保留最上层遮罩颜色,下层遮罩设置为透明\n const parentElement = this.elementRef.nativeElement.parentElement;\n const nodeName = this.elementRef.nativeElement.nodeName;\n const modals = parentElement.querySelectorAll(nodeName);\n for (let i = 0; i < modals.length; i++) {\n if (i === modals.length - 1) {\n modals[i].querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0.05)';\n } else {\n modals[i].querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0)';\n }\n }\n }\n\n hide() {\n // 在service中重写\n }\n\n ngOnDestroy(): void {\n // 若存在多层模态框,下一层遮罩设置为不透明\n const parentElement = this.elementRef.nativeElement.parentElement;\n const nodeName = this.elementRef.nativeElement.nodeName;\n const nextModal = parentElement.querySelector(nodeName + ':nth-last-child(2)');\n if (nextModal) {\n nextModal.querySelector('.modal-backdrop').style.backgroundColor = 'rgba(37, 43, 58, 0.05)';\n }\n }\n\n resolveModalBackdropPosition() {\n return {\n \"width\": this.elementRef.nativeElement.parentElement.offsetWidth + 'px',\n \"height\": this.elementRef.nativeElement.parentElement.offsetHeight + 'px',\n \"top\": this.elementRef.nativeElement.parentElement.offsetTop + 'px',\n \"left\": this.elementRef.nativeElement.parentElement.offsetLeft + 'px',\n };\n }\n\n onMousedown($event: MouseEvent) {\n if ($event.button === 2 || !this.checkHandleTarget($event.target, this.moveHandleEl)) {\n return;\n }\n this.movable = true;\n this.topStart = $event.clientY - this.modalElementRef.nativeElement.style.top.replace('px', '');\n this.leftStart = $event.clientX - this.modalElementRef.nativeElement.style.left.replace('px', '');\n }\n\n private checkHandleTarget(target: any, element: any): boolean {\n if (!element) {\n return false;\n }\n if (target === element) {\n return true;\n }\n for (let child in element.children) {\n if (Object.prototype.hasOwnProperty.call(element.children, child)) {\n if (this.checkHandleTarget(target, element.children[child])) {\n return true;\n }\n }\n }\n return false;\n }\n\n @HostListener('document:mouseup', ['$event'])\n onMouseup() {\n this.movable = false;\n }\n\n @HostListener('document:mousemove', ['$event'])\n onMousemove($event: MouseEvent) {\n if (!this.movable) {\n return;\n }\n $event.stopPropagation();\n $event.preventDefault();\n const element = this.modalElementRef.nativeElement;\n let currentTop = $event.clientY - this.topStart;\n let currentLeft = $event.clientX - this.leftStart;\n currentTop = currentTop < 0 ? 0 : currentTop;\n const maxTop = element.parentElement.offsetHeight - element.offsetHeight;\n currentTop = currentTop > maxTop ? maxTop : currentTop;\n currentLeft = currentLeft < 0 ? 0 : currentLeft;\n const maxLeft = element.parentElement.offsetWidth - element.offsetWidth;\n currentLeft = currentLeft > maxLeft ? maxLeft : currentLeft;\n element.style.top = currentTop + 'px';\n element.style.left = currentLeft + 'px';\n }\n}\n","<div class=\"modal-backdrop\" [ngStyle]=\"resolveModalBackdropPosition()\">\n <div #modal class=\"modal\">\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\n <div class=\"modal-title\">{{title}}</div>\n <i class=\"icon-close\" (click)=\"hide()\"></i>\n </div>\n <div class=\"modal-content\">\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\n </div>\n </div>\n</div>\n","import {Injectable, TemplateRef, ViewContainerRef} from '@angular/core';\nimport {ModalComponent} from './modal.component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ModalService {\n constructor() {\n }\n\n open(viewContainerRef: ViewContainerRef,\n title: string, size: 'default' | 'large' | 'full' = 'default',\n contentTemplate: TemplateRef<any>,\n contentTemplateContext: any) {\n const modalRef = viewContainerRef.createComponent(ModalComponent);\n modalRef.instance.hide = () => {\n modalRef.hostView.destroy();\n }\n modalRef.instance.title = title;\n modalRef.instance.contentTemplate = contentTemplate;\n modalRef.instance.size = size;\n modalRef.instance.contentTemplateContext = contentTemplateContext;\n modalRef.instance.show();\n return modalRef.instance;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {ModalComponent} from './modal.component';\n\n@NgModule({\n declarations: [\n ModalComponent\n ],\n imports: [\n CommonModule\n ],\n exports: []\n})\nexport class ModalModule {\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport CustomStore from \"devextreme/data/custom_store\";\nimport {lastValueFrom} from \"rxjs\";\n\n@Component({\n selector: 'rs-data-grid',\n templateUrl: './data-grid.component.html',\n styleUrls: ['./data-grid.component.scss']\n})\nexport class DataGridComponent implements OnInit {\n @Input()\n tenant: any;\n @Input()\n className: any;\n @Input()\n view: any;\n @Input()\n filter: any;\n @Input()\n service: any;\n dataSource: any = {};\n columns: any[] = [];\n typeMap: any = {\n STRING: {\n dataType: 'string',\n filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']\n },\n TEXT: {\n dataType: 'string',\n filterOperations: ['contains', 'startswith', 'endswith', '=', '<>']\n },\n BOOLEAN: {\n dataType: 'boolean',\n filterOperations: []\n },\n INTEGER: {\n dataType: 'number',\n filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']\n },\n DOUBLE: {\n dataType: 'number',\n filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between']\n },\n DATE: {\n dataType: 'date',\n filterOperations: ['=', '<>', '>', '>=', '<', '<=', 'between'],\n format: 'yyyy/MM/dd'\n },\n DATETIME: {\n dataType: 'datetime',\n filterOperations: ['>', '<', 'between'],\n format: 'yyyy/MM/dd HH:mm:ss'\n },\n };\n\n ngOnInit(): void {\n this.load();\n }\n\n load() {\n this.service.getMetadata(this.tenant, this.className, this.view || '').subscribe((response: any) => {\n this.columns = [];\n for (let column of response.data.columns) {\n if (column.type === 'NORMAL') {\n this.columns.push({\n dataField: column.name,\n caption: column.caption,\n dataType: this.typeMap[column.dataType].dataType,\n alignment: 'left',\n filterOperations: this.typeMap[column.dataType].filterOperations,\n format: this.typeMap[column.dataType].format\n });\n }\n }\n });\n this.dataSource = new CustomStore({\n key: 'oid',\n byKey: (key) => {\n return lastValueFrom(this.service.getOne(this.tenant, this.className, key));\n },\n load: (loadOptions: any) => {\n let params = '?';\n if (loadOptions.skip || loadOptions.take) {\n params += 'offset=' + loadOptions.skip;\n params += '&limit=' + loadOptions.take;\n } else {\n params += 'limit=0';\n }\n if (loadOptions.sort) {\n let first = true;\n for (const thisSort of loadOptions.sort) {\n if (first) {\n params += '&orderBy=' + thisSort.selector;\n } else {\n params += ',' + thisSort.selector;\n }\n if (thisSort.desc) {\n params += ' desc';\n }\n first = false;\n }\n }\n let filter;\n if (loadOptions.filter) {\n filter = loadOptions.filter;\n }\n if (this.filter) {\n if (filter) {\n filter = [filter, 'and', this.filter];\n } else {\n filter = this.filter;\n }\n }\n if (filter) {\n params += '&filter=' + encodeURIComponent(JSON.stringify(filter));\n }\n return lastValueFrom(this.service.getMany(this.tenant, this.className, params + '&view=' + (this.view || '')));\n }\n });\n }\n}\n","<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [showBorders]=\"true\"\n [showColumnLines]=\"true\"\n [showRowLines]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n [allowColumnResizing]=\"true\"\n columnResizingMode=\"widget\"\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\n>\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection mode=\"multiple\" selectAllMode=\"page\"></dxo-selection>\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\n <dxo-remote-operations [filtering]=\"true\"\n [sorting]=\"true\"\n [paging]=\"true\">\n </dxo-remote-operations>\n <dxo-paging [pageSize]=\"15\"></dxo-paging>\n <dxo-pager [visible]=\"true\"\n [showInfo]=\"true\"\n infoText=\"第{0}页,共{1}页(共{2}个项目)\"\n [showPageSizeSelector]=\"true\"\n [allowedPageSizes]=\"[15, 30, 50]\"\n ></dxo-pager>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n</dx-data-grid>\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {DataGridComponent} from './data-grid.component';\nimport {DxDataGridModule} from \"devextreme-angular\";\n\n@NgModule({\n declarations: [\n DataGridComponent\n ],\n imports: [\n CommonModule,\n DxDataGridModule\n ],\n exports: [\n DataGridComponent\n ]\n})\nexport class DataGridModule {\n}\n","/*\n * Public API Surface of ngx-rs-ant\n */\n\nexport * from './modal/modal.service';\nexport * from './modal/modal.module';\nexport * from './data-grid/data-grid.component';\nexport * from './data-grid/data-grid.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
@@ -28,5 +28,5 @@ export declare class ModalComponent implements OnInit, OnDestroy {
28
28
  onMouseup(): void;
29
29
  onMousemove($event: MouseEvent): void;
30
30
  static ɵfac: i0.ɵɵFactoryDeclaration<ModalComponent, never>;
31
- static ɵcmp: i0.ɵɵComponentDeclaration<ModalComponent, "rs-modal", never, { "title": "title"; "size": "size"; "contentTemplate": "contentTemplate"; "contentTemplateContext": "contentTemplateContext"; }, {}, never, never, false>;
31
+ static ɵcmp: i0.ɵɵComponentDeclaration<ModalComponent, "rs-modal", never, { "title": "title"; "size": "size"; "contentTemplate": "contentTemplate"; "contentTemplateContext": "contentTemplateContext"; }, {}, never, never, false, never>;
32
32
  }
package/package.json CHANGED
@@ -1,17 +1,20 @@
1
1
  {
2
2
  "name": "ngx-rs-ant",
3
- "version": "0.0.9",
3
+ "version": "0.2.0",
4
4
  "license": "MIT",
5
5
  "description": "RsAnt components based on Angular and DevUI",
6
6
  "peerDependencies": {
7
- "@angular/common": "^14.2.0",
8
- "@angular/core": "^14.2.0",
7
+ "@angular/common": "^15.2.0",
8
+ "@angular/core": "^15.2.0",
9
9
  "@devui-design/icons": "^1.3.0",
10
- "ng-devui": "^14.0.0"
10
+ "ng-devui": "^15.0.0",
11
+ "devextreme": "22.2.5",
12
+ "devextreme-angular": "22.2.5"
11
13
  },
12
14
  "dependencies": {
13
15
  "tslib": "^2.3.0"
14
16
  },
17
+ "sideEffects": false,
15
18
  "module": "fesm2015/ngx-rs-ant.mjs",
16
19
  "es2020": "fesm2020/ngx-rs-ant.mjs",
17
20
  "esm2020": "esm2020/ngx-rs-ant.mjs",
@@ -30,6 +33,5 @@
30
33
  "node": "./fesm2015/ngx-rs-ant.mjs",
31
34
  "default": "./fesm2020/ngx-rs-ant.mjs"
32
35
  }
33
- },
34
- "sideEffects": false
36
+ }
35
37
  }
package/public-api.d.ts CHANGED
@@ -1,2 +1,4 @@
1
1
  export * from './modal/modal.service';
2
2
  export * from './modal/modal.module';
3
+ export * from './data-grid/data-grid.component';
4
+ export * from './data-grid/data-grid.module';