ngx-rs-ant 1.0.8 → 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/box-container/PluginManager.d.ts +2 -0
- package/box-container/box-container.module.d.ts +5 -4
- package/box-container/box-item/box-item.component.d.ts +3 -0
- package/box-container/box-item/item-config/config-blank/config-blank.component.d.ts +5 -0
- package/box-container/box-item/item-config/item-config.component.d.ts +1 -1
- package/box-container/box-item/item-style/item-style.component.d.ts +2 -4
- package/data-grid/data-grid.component.d.ts +1 -0
- package/esm2020/box-container/PluginManager.mjs +45 -1
- package/esm2020/box-container/box-container.module.mjs +6 -3
- package/esm2020/box-container/box-item/box-item.component.mjs +5 -2
- package/esm2020/box-container/box-item/item-config/config-blank/config-blank.component.mjs +11 -0
- package/esm2020/box-container/box-item/item-config/item-config.component.mjs +9 -31
- package/esm2020/box-container/box-item/item-style/item-style.component.mjs +7 -22
- package/esm2020/box-container/box-item/item-style/style/style.component.mjs +4 -3
- package/esm2020/data-grid/data-grid.component.mjs +13 -5
- package/esm2020/form/form.component.mjs +18 -20
- package/esm2020/public-api.mjs +2 -2
- package/esm2020/util/utils.mjs +98 -0
- package/fesm2015/ngx-rs-ant.mjs +248 -154
- package/fesm2015/ngx-rs-ant.mjs.map +1 -1
- package/fesm2020/ngx-rs-ant.mjs +245 -155
- package/fesm2020/ngx-rs-ant.mjs.map +1 -1
- package/form/form.component.d.ts +2 -2
- package/package.json +2 -2
- package/public-api.d.ts +1 -1
- package/util/utils.d.ts +6 -0
- package/esm2020/notify/notify.mjs +0 -35
- package/notify/notify.d.ts +0 -3
package/fesm2015/ngx-rs-ant.mjs
CHANGED
|
@@ -13,17 +13,17 @@ import { HelperUtils, DevUIModule } from 'ng-devui';
|
|
|
13
13
|
import * as i1$1 from '@angular/common/http';
|
|
14
14
|
import CustomStore from 'devextreme/data/custom_store';
|
|
15
15
|
import * as i3 from 'devextreme-angular/core';
|
|
16
|
-
import * as i4$1 from 'devextreme-angular/ui/
|
|
17
|
-
import * as i5$1 from 'devextreme-angular/ui/
|
|
16
|
+
import * as i4$1 from 'devextreme-angular/ui/data-grid';
|
|
17
|
+
import * as i5$1 from 'devextreme-angular/ui/nested';
|
|
18
18
|
import * as i5 from 'devextreme-angular/ui/tooltip';
|
|
19
19
|
import * as i2$2 from '@angular/platform-browser';
|
|
20
20
|
import * as i4 from 'devextreme-angular/ui/button';
|
|
21
21
|
import * as i3$1 from 'devextreme-angular/ui/text-box';
|
|
22
|
+
import { __awaiter } from 'tslib';
|
|
23
|
+
import notify from 'devextreme/ui/notify';
|
|
22
24
|
import * as i6 from 'devextreme-angular/ui/load-panel';
|
|
23
25
|
import * as i7 from 'devextreme-angular/ui/validation-group';
|
|
24
26
|
import * as i4$2 from 'devextreme-angular/ui/popover';
|
|
25
|
-
import notify from 'devextreme/ui/notify';
|
|
26
|
-
import { __awaiter } from 'tslib';
|
|
27
27
|
|
|
28
28
|
class DividerLineComponent {
|
|
29
29
|
get _style() {
|
|
@@ -187,6 +187,68 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
187
187
|
args: [{ selector: 'rs-plugin-not-found', template: "<div>\n <span>\u7EC4\u4EF6\u52A0\u8F7D\u5931\u8D25</span>\n</div>\n", styles: [":host{flex:1;margin:16px;border:1px solid var(--devui-dividing-line, #f2f2f3);display:flex;flex-flow:row nowrap;justify-content:center;pointer-events:all}:host div{flex:1;padding:16px;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div span{color:var(--devui-danger, #f66f6a);text-align:center;-webkit-user-select:none;user-select:none}:host div.active{background-color:var(--devui-waiting, #beccfa)}:host.plugin-hover>div{pointer-events:none}\n"] }]
|
|
188
188
|
}] });
|
|
189
189
|
|
|
190
|
+
class ConfigBlankComponent {
|
|
191
|
+
}
|
|
192
|
+
ConfigBlankComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ConfigBlankComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
193
|
+
ConfigBlankComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ConfigBlankComponent, selector: "rs-config-blank", ngImport: i0, template: "<div>\n <span>\u65E0\u914D\u7F6E\u9879</span>\n</div>\n", styles: [":host{height:80px;margin:8px;display:flex;flex-flow:row nowrap;justify-content:center}:host div{flex:1;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}\n"] });
|
|
194
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ConfigBlankComponent, decorators: [{
|
|
195
|
+
type: Component,
|
|
196
|
+
args: [{ selector: 'rs-config-blank', template: "<div>\n <span>\u65E0\u914D\u7F6E\u9879</span>\n</div>\n", styles: [":host{height:80px;margin:8px;display:flex;flex-flow:row nowrap;justify-content:center}:host div{flex:1;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}\n"] }]
|
|
197
|
+
}] });
|
|
198
|
+
|
|
199
|
+
class StyleComponent {
|
|
200
|
+
constructor() {
|
|
201
|
+
this.width = 0;
|
|
202
|
+
this.height = 0;
|
|
203
|
+
}
|
|
204
|
+
ngOnInit() {
|
|
205
|
+
this.style.width = this.style.width ? this.style.width : 'auto';
|
|
206
|
+
this.style.height = this.style.height ? this.style.height : 'auto';
|
|
207
|
+
if (this.style.width !== 'auto') {
|
|
208
|
+
this.width = this.style.width.substring(0, this.style.width.length - 2);
|
|
209
|
+
}
|
|
210
|
+
if (this.style.height !== 'auto') {
|
|
211
|
+
this.height = this.style.height.substring(0, this.style.height.length - 2);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
select(name, value) {
|
|
215
|
+
const that = this;
|
|
216
|
+
if (value === 'auto') {
|
|
217
|
+
this.style[name] = 'auto';
|
|
218
|
+
that[name] = 0;
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
if (!that[name]) {
|
|
222
|
+
that[name] = value;
|
|
223
|
+
}
|
|
224
|
+
this.style[name] = that[name] + 'px';
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
typing(name, value) {
|
|
228
|
+
if (value) {
|
|
229
|
+
this.style[name] = value + 'px';
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
this.style[name] = 'auto';
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
StyleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
237
|
+
StyleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: StyleComponent, selector: "rs-style", ngImport: i0, template: "<div class=\"config-item\">\n <div class=\"item-title\">\u5BBD\u5EA6\u7C7B\u578B</div>\n <div class=\"item-setting\">\n <div class=\"card-style-radio\">\n <div class=\"radio-value\" [ngClass]=\"!style.width || style.width === 'auto' ? 'active' : ''\"\n (click)=\"select('width','auto')\">\n <span>\u81EA\u9002\u5E94</span>\n </div>\n <div class=\"radio-value\" [ngClass]=\"style.width && style.width !== 'auto' ? 'active' : ''\"\n (click)=\"select('width',240)\">\n <span>\u56FA\u5B9A\u503C</span>\n </div>\n </div>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u56FA\u5B9A\u5BBD\u5EA6</div>\n <div class=\"item-setting\">\n <dx-number-box [min]=\"0\"\n [showSpinButtons]=\"true\"\n [showClearButton]=\"true\"\n [(value)]=\"width\"\n (onValueChanged)=\"typing('width', $event.value)\"\n [readOnly]=\"style.width === 'auto'\">\n </dx-number-box>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u9AD8\u5EA6\u7C7B\u578B</div>\n <div class=\"item-setting\">\n <div class=\"card-style-radio\">\n <div class=\"radio-value\" [ngClass]=\"!style.height || style.height === 'auto' ? 'active' : ''\"\n (click)=\"select('height','auto')\">\n <span>\u81EA\u9002\u5E94</span>\n </div>\n <div class=\"radio-value\" [ngClass]=\"style.height && style.height !== 'auto' ? 'active' : ''\"\n (click)=\"select('height',800)\">\n <span>\u56FA\u5B9A\u503C</span>\n </div>\n </div>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u56FA\u5B9A\u9AD8\u5EA6</div>\n <div class=\"item-setting\">\n <dx-number-box [min]=\"0\"\n [showSpinButtons]=\"true\"\n [showClearButton]=\"true\"\n [(value)]=\"height\"\n (onValueChanged)=\"typing('height', $event.value)\"\n [readOnly]=\"style.height === 'auto'\">\n </dx-number-box>\n </div>\n</div>\n", styles: [":host .config-item{display:flex;flex-flow:row nowrap;align-items:center;margin-bottom:8px}:host .config-item .item-title{flex:0 0 80px}:host .config-item .item-setting{flex:1;display:flex;flex-flow:row nowrap}:host .config-item .item-setting .card-style-radio{flex:1;display:flex;flex-flow:row nowrap;justify-content:stretch}:host .config-item .item-setting .card-style-radio .radio-value{flex:1;border:1px solid var(--devui-dividing-line, #f2f2f3);text-align:center;padding:4px;margin-left:-1px;cursor:pointer}:host .config-item .item-setting .card-style-radio .radio-value span{-webkit-user-select:none;user-select:none}:host .config-item .item-setting .card-style-radio .radio-value.active{color:var(--devui-brand, #5e7ce0);border:1px solid var(--devui-brand, #5e7ce0);z-index:1}:host .config-item .item-setting dx-number-box{flex:1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }] });
|
|
238
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleComponent, decorators: [{
|
|
239
|
+
type: Component,
|
|
240
|
+
args: [{ selector: 'rs-style', template: "<div class=\"config-item\">\n <div class=\"item-title\">\u5BBD\u5EA6\u7C7B\u578B</div>\n <div class=\"item-setting\">\n <div class=\"card-style-radio\">\n <div class=\"radio-value\" [ngClass]=\"!style.width || style.width === 'auto' ? 'active' : ''\"\n (click)=\"select('width','auto')\">\n <span>\u81EA\u9002\u5E94</span>\n </div>\n <div class=\"radio-value\" [ngClass]=\"style.width && style.width !== 'auto' ? 'active' : ''\"\n (click)=\"select('width',240)\">\n <span>\u56FA\u5B9A\u503C</span>\n </div>\n </div>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u56FA\u5B9A\u5BBD\u5EA6</div>\n <div class=\"item-setting\">\n <dx-number-box [min]=\"0\"\n [showSpinButtons]=\"true\"\n [showClearButton]=\"true\"\n [(value)]=\"width\"\n (onValueChanged)=\"typing('width', $event.value)\"\n [readOnly]=\"style.width === 'auto'\">\n </dx-number-box>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u9AD8\u5EA6\u7C7B\u578B</div>\n <div class=\"item-setting\">\n <div class=\"card-style-radio\">\n <div class=\"radio-value\" [ngClass]=\"!style.height || style.height === 'auto' ? 'active' : ''\"\n (click)=\"select('height','auto')\">\n <span>\u81EA\u9002\u5E94</span>\n </div>\n <div class=\"radio-value\" [ngClass]=\"style.height && style.height !== 'auto' ? 'active' : ''\"\n (click)=\"select('height',800)\">\n <span>\u56FA\u5B9A\u503C</span>\n </div>\n </div>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u56FA\u5B9A\u9AD8\u5EA6</div>\n <div class=\"item-setting\">\n <dx-number-box [min]=\"0\"\n [showSpinButtons]=\"true\"\n [showClearButton]=\"true\"\n [(value)]=\"height\"\n (onValueChanged)=\"typing('height', $event.value)\"\n [readOnly]=\"style.height === 'auto'\">\n </dx-number-box>\n </div>\n</div>\n", styles: [":host .config-item{display:flex;flex-flow:row nowrap;align-items:center;margin-bottom:8px}:host .config-item .item-title{flex:0 0 80px}:host .config-item .item-setting{flex:1;display:flex;flex-flow:row nowrap}:host .config-item .item-setting .card-style-radio{flex:1;display:flex;flex-flow:row nowrap;justify-content:stretch}:host .config-item .item-setting .card-style-radio .radio-value{flex:1;border:1px solid var(--devui-dividing-line, #f2f2f3);text-align:center;padding:4px;margin-left:-1px;cursor:pointer}:host .config-item .item-setting .card-style-radio .radio-value span{-webkit-user-select:none;user-select:none}:host .config-item .item-setting .card-style-radio .radio-value.active{color:var(--devui-brand, #5e7ce0);border:1px solid var(--devui-brand, #5e7ce0);z-index:1}:host .config-item .item-setting dx-number-box{flex:1}\n"] }]
|
|
241
|
+
}] });
|
|
242
|
+
|
|
243
|
+
class StyleBlankComponent {
|
|
244
|
+
}
|
|
245
|
+
StyleBlankComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleBlankComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
246
|
+
StyleBlankComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: StyleBlankComponent, selector: "rs-style-blank", ngImport: i0, template: "<div>\n <span>\u8BF7\u5728\u5DE6\u4FA7\u753B\u5E03\u9009\u4E2D\u8282\u70B9</span>\n</div>\n", styles: [":host{height:80px;margin:8px;display:flex;flex-flow:row nowrap;justify-content:center}:host div{flex:1;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}\n"] });
|
|
247
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleBlankComponent, decorators: [{
|
|
248
|
+
type: Component,
|
|
249
|
+
args: [{ selector: 'rs-style-blank', template: "<div>\n <span>\u8BF7\u5728\u5DE6\u4FA7\u753B\u5E03\u9009\u4E2D\u8282\u70B9</span>\n</div>\n", styles: [":host{height:80px;margin:8px;display:flex;flex-flow:row nowrap;justify-content:center}:host div{flex:1;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}\n"] }]
|
|
250
|
+
}] });
|
|
251
|
+
|
|
190
252
|
class PluginManager {
|
|
191
253
|
static createComponent(boxItem, index, style, config) {
|
|
192
254
|
var _a;
|
|
@@ -202,6 +264,7 @@ class PluginManager {
|
|
|
202
264
|
const viewContainerRef = (_a = boxItem.itemHosts.get(index)) === null || _a === void 0 ? void 0 : _a.viewContainerRef;
|
|
203
265
|
viewContainerRef.clear();
|
|
204
266
|
const componentRef = viewContainerRef.createComponent(plugin.component);
|
|
267
|
+
componentRef.location.nativeElement.style.width = '100%';
|
|
205
268
|
const instance = componentRef.instance;
|
|
206
269
|
Object.assign(instance, config.pluginConfig);
|
|
207
270
|
if (plugin.type === 'form') {
|
|
@@ -304,30 +367,21 @@ class PluginManager {
|
|
|
304
367
|
});
|
|
305
368
|
return activeComponentRef;
|
|
306
369
|
}
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
}
|
|
319
|
-
this.pageConfigContent.clear();
|
|
320
|
-
const plugin = PluginFactory.get((_a = item.config) === null || _a === void 0 ? void 0 : _a.name);
|
|
321
|
-
const pluginType = plugin === null || plugin === void 0 ? void 0 : plugin.type;
|
|
322
|
-
const pluginConfig = PluginFactory.getConfig((_b = item.config) === null || _b === void 0 ? void 0 : _b.name);
|
|
323
|
-
if (!pluginConfig) {
|
|
324
|
-
return;
|
|
325
|
-
}
|
|
326
|
-
const componentRef = this.pageConfigContent.createComponent(pluginConfig.component);
|
|
370
|
+
static resetItemConfig(itemConfigContainerRef, item, fieldTree) {
|
|
371
|
+
var _a, _b;
|
|
372
|
+
if (!item) {
|
|
373
|
+
return;
|
|
374
|
+
}
|
|
375
|
+
itemConfigContainerRef.clear();
|
|
376
|
+
const plugin = PluginFactory.get((_a = item.config) === null || _a === void 0 ? void 0 : _a.name);
|
|
377
|
+
const pluginType = plugin === null || plugin === void 0 ? void 0 : plugin.type;
|
|
378
|
+
const pluginConfig = PluginFactory.getConfig((_b = item.config) === null || _b === void 0 ? void 0 : _b.name);
|
|
379
|
+
if (pluginConfig) {
|
|
380
|
+
const componentRef = itemConfigContainerRef.createComponent(pluginConfig.component);
|
|
327
381
|
const instance = componentRef.instance;
|
|
328
382
|
instance.config = item.config.pluginConfig;
|
|
329
383
|
if (pluginType === 'form') {
|
|
330
|
-
instance.fieldTree =
|
|
384
|
+
instance.fieldTree = fieldTree;
|
|
331
385
|
}
|
|
332
386
|
instance.configChange.subscribe((reload) => {
|
|
333
387
|
if (reload) {
|
|
@@ -338,99 +392,62 @@ class ItemConfigComponent {
|
|
|
338
392
|
Object.assign(item.componentRef.instance, item.config.pluginConfig);
|
|
339
393
|
}
|
|
340
394
|
});
|
|
341
|
-
});
|
|
342
|
-
}
|
|
343
|
-
}
|
|
344
|
-
ItemConfigComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
345
|
-
ItemConfigComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ItemConfigComponent, selector: "rs-item-config", viewQueries: [{ propertyName: "pageConfigContent", first: true, predicate: ["pageConfigContent"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #pageConfigContent></ng-container>\n", styles: [""] });
|
|
346
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemConfigComponent, decorators: [{
|
|
347
|
-
type: Component,
|
|
348
|
-
args: [{ selector: 'rs-item-config', template: "<ng-container #pageConfigContent></ng-container>\n" }]
|
|
349
|
-
}], propDecorators: { pageConfigContent: [{
|
|
350
|
-
type: ViewChild,
|
|
351
|
-
args: ['pageConfigContent', { static: true, read: ViewContainerRef }]
|
|
352
|
-
}] } });
|
|
353
|
-
|
|
354
|
-
class StyleBlankComponent {
|
|
355
|
-
}
|
|
356
|
-
StyleBlankComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleBlankComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
357
|
-
StyleBlankComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: StyleBlankComponent, selector: "rs-style-blank", ngImport: i0, template: "<div>\n <span>\u8BF7\u5728\u5DE6\u4FA7\u753B\u5E03\u9009\u4E2D\u8282\u70B9</span>\n</div>\n", styles: [":host{height:80px;margin:8px;display:flex;flex-flow:row nowrap;justify-content:center}:host div{flex:1;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}\n"] });
|
|
358
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleBlankComponent, decorators: [{
|
|
359
|
-
type: Component,
|
|
360
|
-
args: [{ selector: 'rs-style-blank', template: "<div>\n <span>\u8BF7\u5728\u5DE6\u4FA7\u753B\u5E03\u9009\u4E2D\u8282\u70B9</span>\n</div>\n", styles: [":host{height:80px;margin:8px;display:flex;flex-flow:row nowrap;justify-content:center}:host div{flex:1;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}\n"] }]
|
|
361
|
-
}] });
|
|
362
|
-
|
|
363
|
-
class StyleComponent {
|
|
364
|
-
constructor() {
|
|
365
|
-
this.width = 0;
|
|
366
|
-
this.height = 0;
|
|
367
|
-
}
|
|
368
|
-
ngOnInit() {
|
|
369
|
-
this.style.width = this.style.width ? this.style.width : 'auto';
|
|
370
|
-
this.style.height = this.style.height ? this.style.height : 'auto';
|
|
371
|
-
if (this.style.width !== 'auto') {
|
|
372
|
-
this.width = this.style.width.substring(0, this.style.width.length - 2);
|
|
373
|
-
}
|
|
374
|
-
if (this.style.height !== 'auto') {
|
|
375
|
-
this.height = this.style.height.substring(0, this.style.height.length - 2);
|
|
376
|
-
}
|
|
377
|
-
}
|
|
378
|
-
select(name, value) {
|
|
379
|
-
const that = this;
|
|
380
|
-
if (value === 'auto') {
|
|
381
|
-
this.style[name] = 'auto';
|
|
382
395
|
}
|
|
383
396
|
else {
|
|
384
|
-
|
|
385
|
-
that[name] = value;
|
|
386
|
-
}
|
|
387
|
-
this.style[name] = that[name] + 'px';
|
|
397
|
+
itemConfigContainerRef.createComponent(ConfigBlankComponent);
|
|
388
398
|
}
|
|
389
399
|
}
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
400
|
+
static resetItemStyle(itemStyleContainerRef, item) {
|
|
401
|
+
itemStyleContainerRef.clear();
|
|
402
|
+
if (item) {
|
|
403
|
+
const componentRef = itemStyleContainerRef.createComponent(StyleComponent);
|
|
404
|
+
const instance = componentRef.instance;
|
|
405
|
+
instance.style = item.style;
|
|
393
406
|
}
|
|
394
407
|
else {
|
|
395
|
-
|
|
408
|
+
itemStyleContainerRef.createComponent(StyleBlankComponent);
|
|
396
409
|
}
|
|
397
410
|
}
|
|
398
411
|
}
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
412
|
+
PluginManager.hoverItems = [];
|
|
413
|
+
PluginManager.activeItem = new Subject();
|
|
414
|
+
PluginManager.activeItems = [];
|
|
415
|
+
|
|
416
|
+
class ItemConfigComponent {
|
|
417
|
+
ngOnInit() {
|
|
418
|
+
PluginManager.activeItem.subscribe(item => {
|
|
419
|
+
PluginManager.resetItemConfig(this.itemConfigContainerRef, item, this.fieldTree);
|
|
420
|
+
});
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
ItemConfigComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
424
|
+
ItemConfigComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ItemConfigComponent, selector: "rs-item-config", viewQueries: [{ propertyName: "itemConfigContainerRef", first: true, predicate: ["itemConfigContainerRef"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #itemConfigContainerRef></ng-container>\n", styles: [""] });
|
|
425
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemConfigComponent, decorators: [{
|
|
402
426
|
type: Component,
|
|
403
|
-
args: [{ selector: 'rs-
|
|
404
|
-
}]
|
|
427
|
+
args: [{ selector: 'rs-item-config', template: "<ng-container #itemConfigContainerRef></ng-container>\n" }]
|
|
428
|
+
}], propDecorators: { itemConfigContainerRef: [{
|
|
429
|
+
type: ViewChild,
|
|
430
|
+
args: ['itemConfigContainerRef', {
|
|
431
|
+
static: true,
|
|
432
|
+
read: ViewContainerRef
|
|
433
|
+
}]
|
|
434
|
+
}] } });
|
|
405
435
|
|
|
406
436
|
class ItemStyleComponent {
|
|
407
|
-
constructor(changeDetectorRef) {
|
|
408
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
409
|
-
}
|
|
410
437
|
ngOnInit() {
|
|
411
|
-
this.pageStyleContent.createComponent(StyleBlankComponent);
|
|
412
438
|
PluginManager.activeItem.subscribe(item => {
|
|
413
|
-
this.
|
|
414
|
-
if (item) {
|
|
415
|
-
const componentRef = this.pageStyleContent.createComponent(StyleComponent);
|
|
416
|
-
const instance = componentRef.instance;
|
|
417
|
-
instance.style = item.style;
|
|
418
|
-
}
|
|
419
|
-
else {
|
|
420
|
-
this.pageStyleContent.createComponent(StyleBlankComponent);
|
|
421
|
-
this.changeDetectorRef.detectChanges();
|
|
422
|
-
}
|
|
439
|
+
PluginManager.resetItemStyle(this.itemStyleContainerRef, item);
|
|
423
440
|
});
|
|
424
441
|
}
|
|
425
442
|
}
|
|
426
|
-
ItemStyleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemStyleComponent, deps: [
|
|
427
|
-
ItemStyleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ItemStyleComponent, selector: "rs-item-style", viewQueries: [{ propertyName: "
|
|
443
|
+
ItemStyleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemStyleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
444
|
+
ItemStyleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ItemStyleComponent, selector: "rs-item-style", viewQueries: [{ propertyName: "itemStyleContainerRef", first: true, predicate: ["itemStyleContainerRef"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #itemStyleContainerRef></ng-container>\n", styles: [""] });
|
|
428
445
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemStyleComponent, decorators: [{
|
|
429
446
|
type: Component,
|
|
430
|
-
args: [{ selector: 'rs-item-style', template: "<ng-container #
|
|
431
|
-
}],
|
|
447
|
+
args: [{ selector: 'rs-item-style', template: "<ng-container #itemStyleContainerRef></ng-container>\n" }]
|
|
448
|
+
}], propDecorators: { itemStyleContainerRef: [{
|
|
432
449
|
type: ViewChild,
|
|
433
|
-
args: ['
|
|
450
|
+
args: ['itemStyleContainerRef', { static: true, read: ViewContainerRef }]
|
|
434
451
|
}] } });
|
|
435
452
|
|
|
436
453
|
class BoxItemHostDirective {
|
|
@@ -576,7 +593,7 @@ class BoxItemComponent {
|
|
|
576
593
|
var _a, _b;
|
|
577
594
|
const width = ((_a = item.style) === null || _a === void 0 ? void 0 : _a.width) ? item.style.width : 'auto';
|
|
578
595
|
const height = ((_b = item.style) === null || _b === void 0 ? void 0 : _b.height) ? item.style.height : 'auto';
|
|
579
|
-
return this._calcStyle(this.config.direction, width, height);
|
|
596
|
+
return Object.assign(Object.assign({}, this._calcStyle(this.config.direction, width, height)), { overflow: 'auto' });
|
|
580
597
|
}
|
|
581
598
|
_calcStyle(direction, width, height) {
|
|
582
599
|
if (direction === 'row') {
|
|
@@ -721,7 +738,8 @@ BoxContainerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", vers
|
|
|
721
738
|
StyleBlankComponent,
|
|
722
739
|
ItemBlankComponent,
|
|
723
740
|
StyleComponent,
|
|
724
|
-
PluginNotFoundComponent
|
|
741
|
+
PluginNotFoundComponent,
|
|
742
|
+
ConfigBlankComponent], imports: [CommonModule,
|
|
725
743
|
FormsModule,
|
|
726
744
|
DevExtremeModule], exports: [BoxContainerComponent,
|
|
727
745
|
ItemConfigComponent,
|
|
@@ -745,7 +763,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
745
763
|
StyleBlankComponent,
|
|
746
764
|
ItemBlankComponent,
|
|
747
765
|
StyleComponent,
|
|
748
|
-
PluginNotFoundComponent
|
|
766
|
+
PluginNotFoundComponent,
|
|
767
|
+
ConfigBlankComponent
|
|
749
768
|
],
|
|
750
769
|
imports: [
|
|
751
770
|
CommonModule,
|
|
@@ -1611,12 +1630,20 @@ class DataGridComponent {
|
|
|
1611
1630
|
onSelectionChanged($event) {
|
|
1612
1631
|
this.onDxDataGridSelectionChanged.emit($event);
|
|
1613
1632
|
}
|
|
1633
|
+
onEditorPreparing($event) {
|
|
1634
|
+
if ($event.parentType === 'filterRow' && $event.editorName === 'dxTextBox') {
|
|
1635
|
+
$event.editorOptions.valueChangeEvent = 'blur';
|
|
1636
|
+
$event.editorOptions.onEnterKey = (e) => {
|
|
1637
|
+
e.component.blur();
|
|
1638
|
+
};
|
|
1639
|
+
}
|
|
1640
|
+
}
|
|
1614
1641
|
}
|
|
1615
1642
|
DataGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DataGridComponent, deps: [{ token: DataGridFactory }], target: i0.ɵɵFactoryTarget.Component });
|
|
1616
|
-
DataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: DataGridComponent, selector: "rs-data-grid", inputs: { tenant: "tenant", className: "className", view: "view", filter: "filter", enableMasterDetail: "enableMasterDetail", selectionMode: "selectionMode", customColumnFn: "customColumnFn" }, outputs: { onDxDataGridCellPrepared: "onDxDataGridCellPrepared", onDxDataGridContentReady: "onDxDataGridContentReady", onDxDataGridSelectionChanged: "onDxDataGridSelectionChanged" }, providers: [DataGridService], queries: [{ propertyName: "masterDetailTemplate", first: true, predicate: MasterDetailTemplateDirective, descendants: true }, { propertyName: "rowButtonsTemplate", first: true, predicate: RowButtonsTemplateDirective, descendants: true }, { propertyName: "instanceLinkTemplate", first: true, predicate: InstanceLinkTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "dxDataGrid", first: true, predicate: DxDataGridComponent, descendants: true, static: true }], ngImport: i0, template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [syncLookupFilterValues]=\"false\"\n [showBorders]=\"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 (onCellPrepared)=\"onCellPrepared($event)\"\n (onContentReady)=\"onContentReady($event)\"\n (onSelectionChanged)=\"onSelectionChanged($event)\"\n (onRowExpanding)=\"$event.component.collapseAll(-1)\">\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection [mode]=\"selectionMode\" selectAllMode=\"page\" showCheckBoxesMode=\"always\"></dxo-selection>\n <dxo-header-filter [visible]=\"true\">\n <dxo-search [enabled]=\"true\"></dxo-search>\n <dxo-texts [ok]=\"'\u786E\u5B9A'\"></dxo-texts>\n </dxo-header-filter>\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-master-detail [enabled]=\"enableMasterDetail\" template=\"masterDetailTemplate\"></dxo-master-detail>\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-scrolling mode=\"virtual\" [preloadEnabled]=\"true\" showScrollbar=\"always\"></dxo-scrolling>\n <dxo-export [allowExportSelectedData]=\"true\"\n [fileName]=\"className\"></dxo-export>\n <div *dxTemplate=\"let cellInfo of 'masterDetailTemplate'\">\n <ng-container [ngTemplateOutlet]=\"masterDetailTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'rowButtonsTemplate'\">\n <ng-container [ngTemplateOutlet]=\"rowButtonsTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'instanceLinkTemplate'\">\n <ng-container [ngTemplateOutlet]=\"instanceLinkTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n <div *dxTemplate=\"let cellInfo of 'multipleValueCellTemplate'\">\n <div [innerHTML]=\"convertMultipleValueCellText(cellInfo)\"></div>\n </div>\n <div *dxTemplate=\"let cellInfo of 'textCellTemplate'\">\n <div #textDiv style=\"text-overflow: ellipsis; overflow: hidden; cursor: pointer;\">{{cellInfo.value}}</div>\n <dx-tooltip [target]=\"textDiv\"\n [position]=\"'top'\"\n [showEvent]=\"'click'\">\n <div *dxTemplate=\"let data of 'content'\">\n <p style=\"max-width: 320px; text-align: left; white-space: normal;\" [innerText]=\"cellInfo.value\"></p>\n </div>\n </dx-tooltip>\n </div>\n <div *dxTemplate=\"let cellInfo of 'fileCellTemplate'\">\n <ng-container *ngFor=\"let file of cellInfo.value\">\n <rs-file-cell-template [table]=\"cellInfo.component\" [oid]=\"file\"></rs-file-cell-template>\n </ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'userCellTemplate'\">\n <ng-container *ngFor=\"let user of getOriginalValue(cellInfo, 'userInfo')\">\n <rs-user-info-template [table]=\"cellInfo.component\" [uid]=\"user\"></rs-user-info-template>\n </ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'unitCellTemplate'\">\n <ng-container *ngFor=\"let unit of getOriginalValue(cellInfo, 'unitInfo')\">\n <rs-unit-info-template [table]=\"cellInfo.component\" [uid]=\"unit\"></rs-unit-info-template>\n </ng-container>\n </div>\n</dx-data-grid>\n", styles: [":host{display:flex;flex-flow:column nowrap}:host dx-data-grid{flex:auto;height:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i4$1.DxoExportComponent, selector: "dxo-export", inputs: ["backgroundColor", "enabled", "fileName", "formats", "margin", "printingEnabled", "svgToCanvas", "allowExportSelectedData", "texts"] }, { kind: "component", type: i5$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: i4$1.DxoSearchComponent, selector: "dxo-search", inputs: ["editorOptions", "enabled", "timeout", "mode", "searchExpr"] }, { kind: "component", type: i4$1.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "recursive", "selectByClick", "deferred", "mode", "selectAllMode", "showCheckBoxesMode"] }, { kind: "component", type: i4$1.DxoTextsComponent, selector: "dxo-texts", inputs: ["fix", "leftPosition", "rightPosition", "unfix", "addRow", "cancelAllChanges", "cancelRowChanges", "confirmDeleteMessage", "confirmDeleteTitle", "deleteRow", "editRow", "saveAllChanges", "saveRowChanges", "undeleteRow", "validationCancelChanges", "exportAll", "exportSelectedRows", "exportTo", "clearFilter", "createFilter", "filterEnabledHint", "groupByThisColumn", "groupContinuedMessage", "groupContinuesMessage", "ungroup", "ungroupAll", "cancel", "emptyValue", "ok", "avg", "avgOtherColumn", "count", "max", "maxOtherColumn", "min", "minOtherColumn", "sum", "sumOtherColumn", "allFields", "columnFields", "dataFields", "filterFields", "rowFields", "columnFieldArea", "dataFieldArea", "filterFieldArea", "rowFieldArea", "collapseAll", "dataNotAvailable", "expandAll", "exportToExcel", "grandTotal", "noData", "removeAllSorting", "showFieldChooser", "sortColumnBySummary", "sortRowBySummary", "total", "addRowToNode"] }, { kind: "component", type: i4$1.DxoHeaderFilterComponent, selector: "dxo-header-filter", inputs: ["allowSearch", "allowSelectAll", "dataSource", "groupInterval", "height", "search", "searchMode", "width", "searchTimeout", "texts", "visible", "showRelevantValues"] }, { kind: "component", type: i4$1.DxoFilterRowComponent, selector: "dxo-filter-row", inputs: ["applyFilter", "applyFilterText", "betweenEndText", "betweenStartText", "operationDescriptions", "resetOperationText", "showAllText", "showOperationChooser", "visible"] }, { kind: "component", type: i4$1.DxoMasterDetailComponent, selector: "dxo-master-detail", inputs: ["autoExpandAll", "enabled", "template"] }, { kind: "component", type: i4$1.DxoPagerComponent, selector: "dxo-pager", inputs: ["allowedPageSizes", "displayMode", "infoText", "label", "showInfo", "showNavigationButtons", "showPageSizeSelector", "visible"] }, { kind: "component", type: i4$1.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i4$1.DxoRemoteOperationsComponent, selector: "dxo-remote-operations", inputs: ["filtering", "grouping", "groupPaging", "paging", "sorting", "summary"] }, { kind: "component", type: i4$1.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i4$1.DxoSortingComponent, selector: "dxo-sorting", inputs: ["ascendingText", "clearText", "descendingText", "mode", "showSortIndexes"] }, { kind: "component", type: i5.DxTooltipComponent, selector: "dx-tooltip", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showEvent", "target", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showEventChange", "targetChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: FileCellTemplateComponent, selector: "rs-file-cell-template", inputs: ["table", "oid"] }, { kind: "component", type: UserInfoTemplateComponent, selector: "rs-user-info-template", inputs: ["table", "uid"] }, { kind: "component", type: UnitInfoTemplateComponent, selector: "rs-unit-info-template", inputs: ["table", "uid"] }] });
|
|
1643
|
+
DataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: DataGridComponent, selector: "rs-data-grid", inputs: { tenant: "tenant", className: "className", view: "view", filter: "filter", enableMasterDetail: "enableMasterDetail", selectionMode: "selectionMode", customColumnFn: "customColumnFn" }, outputs: { onDxDataGridCellPrepared: "onDxDataGridCellPrepared", onDxDataGridContentReady: "onDxDataGridContentReady", onDxDataGridSelectionChanged: "onDxDataGridSelectionChanged" }, providers: [DataGridService], queries: [{ propertyName: "masterDetailTemplate", first: true, predicate: MasterDetailTemplateDirective, descendants: true }, { propertyName: "rowButtonsTemplate", first: true, predicate: RowButtonsTemplateDirective, descendants: true }, { propertyName: "instanceLinkTemplate", first: true, predicate: InstanceLinkTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "dxDataGrid", first: true, predicate: DxDataGridComponent, descendants: true, static: true }], ngImport: i0, template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [syncLookupFilterValues]=\"false\"\n [showBorders]=\"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 (onCellPrepared)=\"onCellPrepared($event)\"\n (onEditorPreparing)=\"onEditorPreparing($event)\"\n (onContentReady)=\"onContentReady($event)\"\n (onSelectionChanged)=\"onSelectionChanged($event)\"\n (onRowExpanding)=\"$event.component.collapseAll(-1)\">\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection [mode]=\"selectionMode\" selectAllMode=\"page\" showCheckBoxesMode=\"always\"></dxo-selection>\n <dxo-header-filter [visible]=\"true\">\n <dxo-search [enabled]=\"true\"></dxo-search>\n <dxo-texts [ok]=\"'\u786E\u5B9A'\"></dxo-texts>\n </dxo-header-filter>\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-master-detail [enabled]=\"enableMasterDetail\" template=\"masterDetailTemplate\"></dxo-master-detail>\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-scrolling showScrollbar=\"always\"></dxo-scrolling>\n <div *dxTemplate=\"let cellInfo of 'masterDetailTemplate'\">\n <ng-container [ngTemplateOutlet]=\"masterDetailTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'rowButtonsTemplate'\">\n <ng-container [ngTemplateOutlet]=\"rowButtonsTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'instanceLinkTemplate'\">\n <ng-container [ngTemplateOutlet]=\"instanceLinkTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n <div *dxTemplate=\"let cellInfo of 'multipleValueCellTemplate'\">\n <div [innerHTML]=\"convertMultipleValueCellText(cellInfo)\"></div>\n </div>\n <div *dxTemplate=\"let cellInfo of 'textCellTemplate'\">\n <div #textDiv style=\"text-overflow: ellipsis; overflow: hidden; cursor: pointer;\">{{cellInfo.value}}</div>\n <dx-tooltip [target]=\"textDiv\"\n [position]=\"'top'\"\n [showEvent]=\"'click'\">\n <div *dxTemplate=\"let data of 'content'\">\n <p style=\"max-width: 320px; text-align: left; white-space: normal;\" [innerText]=\"cellInfo.value\"></p>\n </div>\n </dx-tooltip>\n </div>\n <div *dxTemplate=\"let cellInfo of 'fileCellTemplate'\">\n <ng-container *ngFor=\"let file of cellInfo.value\">\n <rs-file-cell-template [table]=\"cellInfo.component\" [oid]=\"file\"></rs-file-cell-template>\n </ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'userCellTemplate'\">\n <ng-container *ngFor=\"let user of getOriginalValue(cellInfo, 'userInfo')\">\n <rs-user-info-template [table]=\"cellInfo.component\" [uid]=\"user\"></rs-user-info-template>\n </ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'unitCellTemplate'\">\n <ng-container *ngFor=\"let unit of getOriginalValue(cellInfo, 'unitInfo')\">\n <rs-unit-info-template [table]=\"cellInfo.component\" [uid]=\"unit\"></rs-unit-info-template>\n </ng-container>\n </div>\n</dx-data-grid>\n", styles: [":host{display:flex;flex-flow:column nowrap}:host dx-data-grid{flex:auto;height:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i4$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: i5$1.DxoSearchComponent, selector: "dxo-search", inputs: ["editorOptions", "enabled", "timeout", "mode", "searchExpr"] }, { kind: "component", type: i5$1.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "recursive", "selectByClick", "deferred", "mode", "selectAllMode", "showCheckBoxesMode"] }, { kind: "component", type: i5$1.DxoTextsComponent, selector: "dxo-texts", inputs: ["fix", "leftPosition", "rightPosition", "unfix", "addRow", "cancelAllChanges", "cancelRowChanges", "confirmDeleteMessage", "confirmDeleteTitle", "deleteRow", "editRow", "saveAllChanges", "saveRowChanges", "undeleteRow", "validationCancelChanges", "exportAll", "exportSelectedRows", "exportTo", "clearFilter", "createFilter", "filterEnabledHint", "groupByThisColumn", "groupContinuedMessage", "groupContinuesMessage", "ungroup", "ungroupAll", "cancel", "emptyValue", "ok", "avg", "avgOtherColumn", "count", "max", "maxOtherColumn", "min", "minOtherColumn", "sum", "sumOtherColumn", "allFields", "columnFields", "dataFields", "filterFields", "rowFields", "columnFieldArea", "dataFieldArea", "filterFieldArea", "rowFieldArea", "collapseAll", "dataNotAvailable", "expandAll", "exportToExcel", "grandTotal", "noData", "removeAllSorting", "showFieldChooser", "sortColumnBySummary", "sortRowBySummary", "total", "addRowToNode"] }, { kind: "component", type: i5$1.DxoHeaderFilterComponent, selector: "dxo-header-filter", inputs: ["allowSearch", "allowSelectAll", "dataSource", "groupInterval", "height", "search", "searchMode", "width", "searchTimeout", "texts", "visible", "showRelevantValues"] }, { kind: "component", type: i5$1.DxoFilterRowComponent, selector: "dxo-filter-row", inputs: ["applyFilter", "applyFilterText", "betweenEndText", "betweenStartText", "operationDescriptions", "resetOperationText", "showAllText", "showOperationChooser", "visible"] }, { kind: "component", type: i5$1.DxoMasterDetailComponent, selector: "dxo-master-detail", inputs: ["autoExpandAll", "enabled", "template"] }, { kind: "component", type: i5$1.DxoPagerComponent, selector: "dxo-pager", inputs: ["allowedPageSizes", "displayMode", "infoText", "label", "showInfo", "showNavigationButtons", "showPageSizeSelector", "visible"] }, { kind: "component", type: i5$1.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i5$1.DxoRemoteOperationsComponent, selector: "dxo-remote-operations", inputs: ["filtering", "grouping", "groupPaging", "paging", "sorting", "summary"] }, { kind: "component", type: i5$1.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i5$1.DxoSortingComponent, selector: "dxo-sorting", inputs: ["ascendingText", "clearText", "descendingText", "mode", "showSortIndexes"] }, { kind: "component", type: i5.DxTooltipComponent, selector: "dx-tooltip", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showEvent", "target", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showEventChange", "targetChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: FileCellTemplateComponent, selector: "rs-file-cell-template", inputs: ["table", "oid"] }, { kind: "component", type: UserInfoTemplateComponent, selector: "rs-user-info-template", inputs: ["table", "uid"] }, { kind: "component", type: UnitInfoTemplateComponent, selector: "rs-unit-info-template", inputs: ["table", "uid"] }] });
|
|
1617
1644
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DataGridComponent, decorators: [{
|
|
1618
1645
|
type: Component,
|
|
1619
|
-
args: [{ selector: 'rs-data-grid', providers: [DataGridService], template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [syncLookupFilterValues]=\"false\"\n [showBorders]=\"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 (onCellPrepared)=\"onCellPrepared($event)\"\n (onContentReady)=\"onContentReady($event)\"\n (onSelectionChanged)=\"onSelectionChanged($event)\"\n (onRowExpanding)=\"$event.component.collapseAll(-1)\">\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection [mode]=\"selectionMode\" selectAllMode=\"page\" showCheckBoxesMode=\"always\"></dxo-selection>\n <dxo-header-filter [visible]=\"true\">\n <dxo-search [enabled]=\"true\"></dxo-search>\n <dxo-texts [ok]=\"'\u786E\u5B9A'\"></dxo-texts>\n </dxo-header-filter>\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-master-detail [enabled]=\"enableMasterDetail\" template=\"masterDetailTemplate\"></dxo-master-detail>\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-scrolling
|
|
1646
|
+
args: [{ selector: 'rs-data-grid', providers: [DataGridService], template: "<dx-data-grid [dataSource]=\"dataSource\"\n [columns]=\"columns\"\n [syncLookupFilterValues]=\"false\"\n [showBorders]=\"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 (onCellPrepared)=\"onCellPrepared($event)\"\n (onEditorPreparing)=\"onEditorPreparing($event)\"\n (onContentReady)=\"onContentReady($event)\"\n (onSelectionChanged)=\"onSelectionChanged($event)\"\n (onRowExpanding)=\"$event.component.collapseAll(-1)\">\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\n <dxo-selection [mode]=\"selectionMode\" selectAllMode=\"page\" showCheckBoxesMode=\"always\"></dxo-selection>\n <dxo-header-filter [visible]=\"true\">\n <dxo-search [enabled]=\"true\"></dxo-search>\n <dxo-texts [ok]=\"'\u786E\u5B9A'\"></dxo-texts>\n </dxo-header-filter>\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-master-detail [enabled]=\"enableMasterDetail\" template=\"masterDetailTemplate\"></dxo-master-detail>\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-scrolling showScrollbar=\"always\"></dxo-scrolling>\n <div *dxTemplate=\"let cellInfo of 'masterDetailTemplate'\">\n <ng-container [ngTemplateOutlet]=\"masterDetailTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'rowButtonsTemplate'\">\n <ng-container [ngTemplateOutlet]=\"rowButtonsTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'instanceLinkTemplate'\">\n <ng-container [ngTemplateOutlet]=\"instanceLinkTemplate.templateRef\"\n [ngTemplateOutletContext]=\"{$implicit: cellInfo}\"></ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\n {{cellInfo.rowIndex + 1}}\n </div>\n <div *dxTemplate=\"let cellInfo of 'multipleValueCellTemplate'\">\n <div [innerHTML]=\"convertMultipleValueCellText(cellInfo)\"></div>\n </div>\n <div *dxTemplate=\"let cellInfo of 'textCellTemplate'\">\n <div #textDiv style=\"text-overflow: ellipsis; overflow: hidden; cursor: pointer;\">{{cellInfo.value}}</div>\n <dx-tooltip [target]=\"textDiv\"\n [position]=\"'top'\"\n [showEvent]=\"'click'\">\n <div *dxTemplate=\"let data of 'content'\">\n <p style=\"max-width: 320px; text-align: left; white-space: normal;\" [innerText]=\"cellInfo.value\"></p>\n </div>\n </dx-tooltip>\n </div>\n <div *dxTemplate=\"let cellInfo of 'fileCellTemplate'\">\n <ng-container *ngFor=\"let file of cellInfo.value\">\n <rs-file-cell-template [table]=\"cellInfo.component\" [oid]=\"file\"></rs-file-cell-template>\n </ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'userCellTemplate'\">\n <ng-container *ngFor=\"let user of getOriginalValue(cellInfo, 'userInfo')\">\n <rs-user-info-template [table]=\"cellInfo.component\" [uid]=\"user\"></rs-user-info-template>\n </ng-container>\n </div>\n <div *dxTemplate=\"let cellInfo of 'unitCellTemplate'\">\n <ng-container *ngFor=\"let unit of getOriginalValue(cellInfo, 'unitInfo')\">\n <rs-unit-info-template [table]=\"cellInfo.component\" [uid]=\"unit\"></rs-unit-info-template>\n </ng-container>\n </div>\n</dx-data-grid>\n", styles: [":host{display:flex;flex-flow:column nowrap}:host dx-data-grid{flex:auto;height:0}\n"] }]
|
|
1620
1647
|
}], ctorParameters: function () { return [{ type: DataGridFactory }]; }, propDecorators: { tenant: [{
|
|
1621
1648
|
type: Input
|
|
1622
1649
|
}], className: [{
|
|
@@ -1879,6 +1906,110 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
1879
1906
|
type: Injectable
|
|
1880
1907
|
}], ctorParameters: function () { return [{ type: i1$1.HttpClient }]; } });
|
|
1881
1908
|
|
|
1909
|
+
function notify_error(message) {
|
|
1910
|
+
notify({
|
|
1911
|
+
displayTime: 12000,
|
|
1912
|
+
message,
|
|
1913
|
+
type: 'error',
|
|
1914
|
+
width: '300px'
|
|
1915
|
+
}, {
|
|
1916
|
+
direction: 'up-push',
|
|
1917
|
+
position: 'bottom right'
|
|
1918
|
+
});
|
|
1919
|
+
}
|
|
1920
|
+
function notify_warning(message) {
|
|
1921
|
+
notify({
|
|
1922
|
+
displayTime: 8000,
|
|
1923
|
+
message,
|
|
1924
|
+
type: 'warning',
|
|
1925
|
+
width: '300px'
|
|
1926
|
+
}, {
|
|
1927
|
+
direction: 'up-push',
|
|
1928
|
+
position: 'bottom right'
|
|
1929
|
+
});
|
|
1930
|
+
}
|
|
1931
|
+
function notify_success(message) {
|
|
1932
|
+
notify({
|
|
1933
|
+
displayTime: 4000,
|
|
1934
|
+
message,
|
|
1935
|
+
type: 'success',
|
|
1936
|
+
width: '300px'
|
|
1937
|
+
}, {
|
|
1938
|
+
direction: 'down-push',
|
|
1939
|
+
position: 'top right'
|
|
1940
|
+
});
|
|
1941
|
+
}
|
|
1942
|
+
function validate(validator) {
|
|
1943
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1944
|
+
return new Promise(resolve => {
|
|
1945
|
+
var _a;
|
|
1946
|
+
const validateResult = validator.instance.validate();
|
|
1947
|
+
if (!validateResult.isValid) {
|
|
1948
|
+
resolve(false);
|
|
1949
|
+
}
|
|
1950
|
+
if (validateResult.status === 'pending') {
|
|
1951
|
+
(_a = validateResult.complete) === null || _a === void 0 ? void 0 : _a.then((result) => {
|
|
1952
|
+
if (result.isValid) {
|
|
1953
|
+
resolve(true);
|
|
1954
|
+
}
|
|
1955
|
+
else {
|
|
1956
|
+
resolve(false);
|
|
1957
|
+
}
|
|
1958
|
+
});
|
|
1959
|
+
}
|
|
1960
|
+
else {
|
|
1961
|
+
resolve(true);
|
|
1962
|
+
}
|
|
1963
|
+
});
|
|
1964
|
+
});
|
|
1965
|
+
}
|
|
1966
|
+
function validate_group(validationGroup) {
|
|
1967
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1968
|
+
const top = validationGroup.element.nativeElement;
|
|
1969
|
+
let sourceNode;
|
|
1970
|
+
const targetClassName = 'dx-field';
|
|
1971
|
+
const findTargetNode = (node) => {
|
|
1972
|
+
sourceNode = node;
|
|
1973
|
+
while (true) {
|
|
1974
|
+
if (node.classList.contains(targetClassName)) {
|
|
1975
|
+
return node;
|
|
1976
|
+
}
|
|
1977
|
+
else {
|
|
1978
|
+
node = node.parentElement;
|
|
1979
|
+
if (node === top) {
|
|
1980
|
+
return sourceNode;
|
|
1981
|
+
}
|
|
1982
|
+
}
|
|
1983
|
+
}
|
|
1984
|
+
};
|
|
1985
|
+
return new Promise(resolve => {
|
|
1986
|
+
var _a, _b;
|
|
1987
|
+
const validateResult = validationGroup.instance.validate();
|
|
1988
|
+
if (!validateResult.isValid) {
|
|
1989
|
+
const brokenElement = ((_a = validateResult.brokenRules) === null || _a === void 0 ? void 0 : _a[0]).validator.element();
|
|
1990
|
+
findTargetNode(brokenElement).scrollIntoView();
|
|
1991
|
+
resolve(false);
|
|
1992
|
+
}
|
|
1993
|
+
if (validateResult.status === 'pending') {
|
|
1994
|
+
(_b = validateResult.complete) === null || _b === void 0 ? void 0 : _b.then((result) => {
|
|
1995
|
+
var _a;
|
|
1996
|
+
if (result.isValid) {
|
|
1997
|
+
resolve(true);
|
|
1998
|
+
}
|
|
1999
|
+
else {
|
|
2000
|
+
const brokenElement = ((_a = result.brokenRules) === null || _a === void 0 ? void 0 : _a[0]).validator.element();
|
|
2001
|
+
findTargetNode(brokenElement).scrollIntoView();
|
|
2002
|
+
resolve(false);
|
|
2003
|
+
}
|
|
2004
|
+
});
|
|
2005
|
+
}
|
|
2006
|
+
else {
|
|
2007
|
+
resolve(true);
|
|
2008
|
+
}
|
|
2009
|
+
});
|
|
2010
|
+
});
|
|
2011
|
+
}
|
|
2012
|
+
|
|
1882
2013
|
class FormComponent {
|
|
1883
2014
|
constructor(service) {
|
|
1884
2015
|
this.service = service;
|
|
@@ -1906,33 +2037,30 @@ class FormComponent {
|
|
|
1906
2037
|
}
|
|
1907
2038
|
});
|
|
1908
2039
|
}
|
|
1909
|
-
submitForm(
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
2040
|
+
submitForm() {
|
|
2041
|
+
this.validate().then(isValid => {
|
|
2042
|
+
if (isValid) {
|
|
2043
|
+
this.service.createOrUpdate(this.tenant, this.className, Object.assign({ oid: this.oid }, this.model)).subscribe(response => {
|
|
2044
|
+
this.submitCallback.emit(response);
|
|
2045
|
+
});
|
|
2046
|
+
}
|
|
2047
|
+
else {
|
|
2048
|
+
this.submitCallback.emit({ success: false });
|
|
2049
|
+
}
|
|
1915
2050
|
});
|
|
1916
2051
|
}
|
|
1917
2052
|
validate() {
|
|
1918
|
-
|
|
1919
|
-
if (!result.isValid) { // TODO 异步校验可能存在问题,需进一步确认
|
|
1920
|
-
this.submitCallback.emit({ success: false });
|
|
1921
|
-
// @ts-ignore
|
|
1922
|
-
result.brokenRules[0].validator.element().scrollIntoView();
|
|
1923
|
-
return false;
|
|
1924
|
-
}
|
|
1925
|
-
return true;
|
|
2053
|
+
return validate_group(this.validator);
|
|
1926
2054
|
}
|
|
1927
2055
|
submit() {
|
|
1928
2056
|
this.formSubmitter.instance.element().click();
|
|
1929
2057
|
}
|
|
1930
2058
|
}
|
|
1931
2059
|
FormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormComponent, deps: [{ token: FormService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1932
|
-
FormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: FormComponent, selector: "rs-form", inputs: { tenant: "tenant", className: "className", oid: "oid", copyOid: "copyOid", template: "template", readonly: "readonly" }, outputs: { submitCallback: "submitCallback" }, providers: [FormService], viewQueries: [{ propertyName: "validator", first: true, predicate: DxValidationGroupComponent, descendants: true }, { propertyName: "formSubmitter", first: true, predicate: ["formSubmitter"], descendants: true }], ngImport: i0, template: "<dx-load-panel [position]=\"{my: 'center', at: 'center', of: form.parentElement?.parentElement || window}\"\n [showPane]=\"false\"\n [visible]=\"!model\"></dx-load-panel>\n<form #form>\n <dx-validation-group *ngIf=\"model\">\n <rs-box-container [config]=\"config\" [model]=\"model\" [readonly]=\"readonly\"></rs-box-container>\n <dx-button #formSubmitter [visible]=\"false\" (onClick)=\"submitForm(
|
|
2060
|
+
FormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: FormComponent, selector: "rs-form", inputs: { tenant: "tenant", className: "className", oid: "oid", copyOid: "copyOid", template: "template", readonly: "readonly" }, outputs: { submitCallback: "submitCallback" }, providers: [FormService], viewQueries: [{ propertyName: "validator", first: true, predicate: DxValidationGroupComponent, descendants: true }, { propertyName: "formSubmitter", first: true, predicate: ["formSubmitter"], descendants: true }], ngImport: i0, template: "<dx-load-panel [position]=\"{my: 'center', at: 'center', of: form.parentElement?.parentElement || window}\"\n [showPane]=\"false\"\n [visible]=\"!model\"></dx-load-panel>\n<form #form>\n <dx-validation-group *ngIf=\"model\">\n <rs-box-container [config]=\"config\" [model]=\"model\" [readonly]=\"readonly\"></rs-box-container>\n <dx-button #formSubmitter [visible]=\"false\" (onClick)=\"submitForm()\"></dx-button>\n </dx-validation-group>\n</form>\n", styles: [":host{padding:12px 24px 20px}:host form{display:flex;flex-flow:row nowrap}:host form dx-validation-group{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: BoxContainerComponent, selector: "rs-box-container", inputs: ["editMode", "config", "model", "readonly", "tabViewContainerRef"] }, { kind: "component", type: i4.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i6.DxLoadPanelComponent, selector: "dx-load-panel", inputs: ["animation", "closeOnOutsideClick", "container", "copyRootClassesToWrapper", "deferRendering", "delay", "elementAttr", "focusStateEnabled", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "indicatorSrc", "maxHeight", "maxWidth", "message", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showIndicator", "showPane", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "animationChange", "closeOnOutsideClickChange", "containerChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "delayChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "indicatorSrcChange", "maxHeightChange", "maxWidthChange", "messageChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showIndicatorChange", "showPaneChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: i7.DxValidationGroupComponent, selector: "dx-validation-group", inputs: ["elementAttr", "height", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "elementAttrChange", "heightChange", "widthChange"] }] });
|
|
1933
2061
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormComponent, decorators: [{
|
|
1934
2062
|
type: Component,
|
|
1935
|
-
args: [{ selector: 'rs-form', providers: [FormService], template: "<dx-load-panel [position]=\"{my: 'center', at: 'center', of: form.parentElement?.parentElement || window}\"\n [showPane]=\"false\"\n [visible]=\"!model\"></dx-load-panel>\n<form #form>\n <dx-validation-group *ngIf=\"model\">\n <rs-box-container [config]=\"config\" [model]=\"model\" [readonly]=\"readonly\"></rs-box-container>\n <dx-button #formSubmitter [visible]=\"false\" (onClick)=\"submitForm(
|
|
2063
|
+
args: [{ selector: 'rs-form', providers: [FormService], template: "<dx-load-panel [position]=\"{my: 'center', at: 'center', of: form.parentElement?.parentElement || window}\"\n [showPane]=\"false\"\n [visible]=\"!model\"></dx-load-panel>\n<form #form>\n <dx-validation-group *ngIf=\"model\">\n <rs-box-container [config]=\"config\" [model]=\"model\" [readonly]=\"readonly\"></rs-box-container>\n <dx-button #formSubmitter [visible]=\"false\" (onClick)=\"submitForm()\"></dx-button>\n </dx-validation-group>\n</form>\n", styles: [":host{padding:12px 24px 20px}:host form{display:flex;flex-flow:row nowrap}:host form dx-validation-group{width:100%}\n"] }]
|
|
1936
2064
|
}], ctorParameters: function () { return [{ type: FormService }]; }, propDecorators: { tenant: [{
|
|
1937
2065
|
type: Input
|
|
1938
2066
|
}], className: [{
|
|
@@ -2242,40 +2370,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
2242
2370
|
}]
|
|
2243
2371
|
}], ctorParameters: function () { return []; } });
|
|
2244
2372
|
|
|
2245
|
-
function notify_error(message) {
|
|
2246
|
-
notify({
|
|
2247
|
-
displayTime: 12000,
|
|
2248
|
-
message,
|
|
2249
|
-
type: 'error',
|
|
2250
|
-
width: '300px'
|
|
2251
|
-
}, {
|
|
2252
|
-
direction: 'up-push',
|
|
2253
|
-
position: 'bottom right'
|
|
2254
|
-
});
|
|
2255
|
-
}
|
|
2256
|
-
function notify_warning(message) {
|
|
2257
|
-
notify({
|
|
2258
|
-
displayTime: 8000,
|
|
2259
|
-
message,
|
|
2260
|
-
type: 'warning',
|
|
2261
|
-
width: '300px'
|
|
2262
|
-
}, {
|
|
2263
|
-
direction: 'up-push',
|
|
2264
|
-
position: 'bottom right'
|
|
2265
|
-
});
|
|
2266
|
-
}
|
|
2267
|
-
function notify_success(message) {
|
|
2268
|
-
notify({
|
|
2269
|
-
displayTime: 4000,
|
|
2270
|
-
message,
|
|
2271
|
-
type: 'success',
|
|
2272
|
-
width: '300px'
|
|
2273
|
-
}, {
|
|
2274
|
-
direction: 'down-push',
|
|
2275
|
-
position: 'top right'
|
|
2276
|
-
});
|
|
2277
|
-
}
|
|
2278
|
-
|
|
2279
2373
|
class WebsocketModule {
|
|
2280
2374
|
}
|
|
2281
2375
|
WebsocketModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: WebsocketModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -2445,5 +2539,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
2445
2539
|
* Generated bundle index. Do not edit.
|
|
2446
2540
|
*/
|
|
2447
2541
|
|
|
2448
|
-
export { BoxContainerComponent, BoxContainerModule, DataGridComponent, DataGridFactory, DataGridModule, DataGridService, DrawerComponent, DrawerModule, DrawerService, DynamicParamsComponent, DynamicParamsModule, FormComponent, FormModule, FormService, IconSelectorComponent, IconSelectorModule, InstanceLinkTemplateDirective, ItemConfigComponent, ItemStyleComponent, MasterDetailTemplateDirective, ModalComponent, ModalModule, ModalService, PluginManager, RowButtonsTemplateDirective, WebsocketModule, WebsocketService, notify_error, notify_success, notify_warning };
|
|
2542
|
+
export { BoxContainerComponent, BoxContainerModule, DataGridComponent, DataGridFactory, DataGridModule, DataGridService, DrawerComponent, DrawerModule, DrawerService, DynamicParamsComponent, DynamicParamsModule, FormComponent, FormModule, FormService, IconSelectorComponent, IconSelectorModule, InstanceLinkTemplateDirective, ItemConfigComponent, ItemStyleComponent, MasterDetailTemplateDirective, ModalComponent, ModalModule, ModalService, PluginManager, RowButtonsTemplateDirective, WebsocketModule, WebsocketService, notify_error, notify_success, notify_warning, validate, validate_group };
|
|
2449
2543
|
//# sourceMappingURL=ngx-rs-ant.mjs.map
|