ngx-rs-ant 1.8.3 → 1.8.5
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 +1 -1
- package/box-container/box-container.component.d.ts +1 -4
- package/box-container/box-container.module.d.ts +6 -7
- package/box-container/box-item/item-config/item-config.component.d.ts +2 -2
- package/data-grid/cell-component-template/cell-component-template.component.d.ts +12 -0
- package/data-grid/data-grid.component.d.ts +0 -2
- package/data-grid/data-grid.module.d.ts +8 -10
- package/data-grid/data-grid.service.d.ts +12 -15
- package/esm2020/box-container/PluginManager.mjs +54 -18
- package/esm2020/box-container/box-container.component.mjs +2 -8
- package/esm2020/box-container/box-container.module.mjs +1 -4
- package/esm2020/box-container/box-item/item-config/item-config.component.mjs +4 -4
- package/esm2020/data-grid/cell-component-template/cell-component-template.component.mjs +49 -0
- package/esm2020/data-grid/data-grid.component.mjs +9 -43
- package/esm2020/data-grid/data-grid.factory.mjs +47 -80
- package/esm2020/data-grid/data-grid.module.mjs +6 -12
- package/esm2020/data-grid/data-grid.service.mjs +16 -38
- package/esm2020/dynamic-params/dynamic-params.component.mjs +2 -2
- package/esm2020/form/form.component.mjs +6 -4
- package/esm2020/public-api.mjs +9 -2
- package/esm2020/types/component/cell-component-base.mjs +4 -0
- package/esm2020/types/component/component-base.mjs +3 -0
- package/esm2020/types/component/form-item-component-base.mjs +15 -0
- package/esm2020/types/component/modal-component-base.mjs +4 -0
- package/esm2020/types/component/page-item-component-base.mjs +11 -0
- package/esm2020/types/config/cell-config-base.mjs +4 -0
- package/esm2020/types/config/config-base.mjs +3 -0
- package/esm2020/types/config/form-item-config-base.mjs +12 -0
- package/esm2020/types/config/modal-config-base.mjs +4 -0
- package/esm2020/types/config/page-item-config-base.mjs +12 -0
- package/fesm2015/ngx-rs-ant.mjs +410 -554
- package/fesm2015/ngx-rs-ant.mjs.map +1 -1
- package/fesm2020/ngx-rs-ant.mjs +404 -542
- package/fesm2020/ngx-rs-ant.mjs.map +1 -1
- package/package.json +2 -2
- package/public-api.d.ts +8 -1
- package/styles/coast-var.scss +3 -3
- package/types/component/cell-component-base.d.ts +32 -0
- package/types/component/component-base.d.ts +11 -0
- package/types/component/form-item-component-base.d.ts +31 -0
- package/types/component/modal-component-base.d.ts +28 -0
- package/types/component/page-item-component-base.d.ts +11 -0
- package/types/config/cell-config-base.d.ts +3 -0
- package/types/config/config-base.d.ts +11 -0
- package/types/config/form-item-config-base.d.ts +20 -0
- package/types/config/modal-config-base.d.ts +3 -0
- package/types/config/page-item-config-base.d.ts +8 -0
- package/box-container/box-item/item-config/form-item-config-error/form-item-config-error.component.d.ts +0 -5
- package/data-grid/file-cell-template/file-cell-template.component.d.ts +0 -19
- package/data-grid/unit-info-template/unit-info-template.component.d.ts +0 -16
- package/data-grid/user-info-template/user-info-template.component.d.ts +0 -16
- package/esm2020/box-container/box-item/item-config/form-item-config-error/form-item-config-error.component.mjs +0 -11
- package/esm2020/data-grid/file-cell-template/file-cell-template.component.mjs +0 -86
- package/esm2020/data-grid/unit-info-template/unit-info-template.component.mjs +0 -49
- package/esm2020/data-grid/user-info-template/user-info-template.component.mjs +0 -49
- package/esm2020/util/form-item-config-base.mjs +0 -7
- package/util/form-item-config-base.d.ts +0 -6
package/fesm2015/ngx-rs-ant.mjs
CHANGED
|
@@ -2,9 +2,11 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { Component, Input, HostBinding, EventEmitter, Output, HostListener, ViewContainerRef, ViewChild, Directive, ViewChildren, NgModule, Injectable, ContentChild } from '@angular/core';
|
|
3
3
|
import { PluginFactory } from 'coast-plugin-register';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
|
-
import {
|
|
6
|
-
import { Subject, ReplaySubject, Subscription, map,
|
|
5
|
+
import { formatDate, CommonModule } from '@angular/common';
|
|
6
|
+
import { firstValueFrom, of, Subject, ReplaySubject, Subscription, map, lastValueFrom, debounceTime, interval } from 'rxjs';
|
|
7
7
|
import * as i2 from 'devextreme-angular/ui/number-box';
|
|
8
|
+
import { __awaiter } from 'tslib';
|
|
9
|
+
import notify from 'devextreme/ui/notify';
|
|
8
10
|
import * as i2$1 from 'devextreme-angular/ui/draggable';
|
|
9
11
|
import { DevExtremeModule, DxValidationGroupComponent, DxDataGridComponent } from 'devextreme-angular';
|
|
10
12
|
import BpmnModeler from 'camunda-bpmn-js/lib/camunda-platform/Modeler';
|
|
@@ -13,22 +15,19 @@ import { isLabel } from 'diagram-js/lib/util/ModelUtil';
|
|
|
13
15
|
import * as i3 from 'devextreme-angular/ui/button';
|
|
14
16
|
import Viewer from 'camunda-bpmn-js/lib/camunda-platform/NavigatedViewer';
|
|
15
17
|
import * as i1$1 from '@angular/common/http';
|
|
16
|
-
import { __awaiter } from 'tslib';
|
|
17
|
-
import notify from 'devextreme/ui/notify';
|
|
18
18
|
import CustomStore from 'devextreme/data/custom_store';
|
|
19
|
-
import * as
|
|
20
|
-
import * as i5
|
|
19
|
+
import * as i2$2 from 'devextreme-angular/core';
|
|
20
|
+
import * as i5 from 'devextreme-angular/ui/data-grid';
|
|
21
21
|
import * as i6 from 'devextreme-angular/ui/nested';
|
|
22
|
-
import * as
|
|
23
|
-
import * as i2$2 from '@angular/platform-browser';
|
|
24
|
-
import * as i3$2 from 'devextreme-angular/ui/accordion';
|
|
22
|
+
import * as i3$1 from 'devextreme-angular/ui/accordion';
|
|
25
23
|
import * as i6$1 from 'devextreme-angular/ui/load-panel';
|
|
26
24
|
import * as i7 from 'devextreme-angular/ui/text-box';
|
|
27
25
|
import * as i8 from 'devextreme-angular/ui/validation-group';
|
|
28
26
|
import * as i9 from 'devextreme-angular/ui/validator';
|
|
29
|
-
import * as i5$
|
|
27
|
+
import * as i5$1 from 'devextreme-angular/ui/drop-down-box';
|
|
30
28
|
import * as i6$2 from 'devextreme-angular/ui/tag-box';
|
|
31
29
|
import * as i8$1 from 'devextreme-angular/ui/tree-list';
|
|
30
|
+
import * as i5$2 from 'devextreme-angular/ui/tooltip';
|
|
32
31
|
import * as i4 from 'devextreme-angular/ui/popover';
|
|
33
32
|
import * as i2$3 from 'ng2-pdfjs-viewer';
|
|
34
33
|
import { PdfJsViewerComponent, PdfJsViewerModule } from 'ng2-pdfjs-viewer';
|
|
@@ -257,24 +256,246 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
257
256
|
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"] }]
|
|
258
257
|
}] });
|
|
259
258
|
|
|
260
|
-
class
|
|
259
|
+
class ConfigBase {
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
class FormItemConfigBase extends ConfigBase {
|
|
263
|
+
constructor() {
|
|
264
|
+
super(...arguments);
|
|
265
|
+
/**
|
|
266
|
+
* 配置更新事件,emit()将更新配置到组件,emit(true)将更新配置到组件并重新加载组件
|
|
267
|
+
*/
|
|
268
|
+
this.configChange = new EventEmitter();
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
class PageItemConfigBase extends ConfigBase {
|
|
261
273
|
constructor() {
|
|
274
|
+
super(...arguments);
|
|
275
|
+
/**
|
|
276
|
+
* 配置更新事件,emit()将更新配置到组件,emit(true)将更新配置到组件并重新加载组件
|
|
277
|
+
*/
|
|
262
278
|
this.configChange = new EventEmitter();
|
|
263
279
|
}
|
|
264
280
|
}
|
|
265
281
|
|
|
266
|
-
class
|
|
282
|
+
class ComponentBase {
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
class PageItemComponentBase extends ComponentBase {
|
|
286
|
+
constructor() {
|
|
287
|
+
super(...arguments);
|
|
288
|
+
/**
|
|
289
|
+
* 编辑模式,在设计器中为true,用于区分组件设计和应用状态
|
|
290
|
+
*/
|
|
291
|
+
this.editMode = false;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
class FormItemComponentBase extends ComponentBase {
|
|
296
|
+
constructor() {
|
|
297
|
+
super(...arguments);
|
|
298
|
+
/**
|
|
299
|
+
* 编辑模式,在设计器中为true,用于区分组件设计和应用状态
|
|
300
|
+
*/
|
|
301
|
+
this.editMode = false;
|
|
302
|
+
/**
|
|
303
|
+
* 表单只读状态,用于区分组件只读状态
|
|
304
|
+
*/
|
|
305
|
+
this.readonly = false;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
class ModalComponentBase extends ComponentBase {
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
function notify_error(message) {
|
|
313
|
+
_notify(message, 12000, 'warning');
|
|
267
314
|
}
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
315
|
+
function notify_warning(message) {
|
|
316
|
+
_notify(message, 8000, 'warning');
|
|
317
|
+
}
|
|
318
|
+
function notify_success(message) {
|
|
319
|
+
_notify(message, 4000, 'success');
|
|
320
|
+
}
|
|
321
|
+
function _notify(message, time, type) {
|
|
322
|
+
notify({
|
|
323
|
+
displayTime: time,
|
|
324
|
+
message,
|
|
325
|
+
type: type,
|
|
326
|
+
closeOnSwipe: false,
|
|
327
|
+
minWidth: 200,
|
|
328
|
+
maxWidth: 500,
|
|
329
|
+
wrapperAttr: { class: 'global-toast-message' }
|
|
330
|
+
}, {
|
|
331
|
+
direction: 'up-push',
|
|
332
|
+
position: 'bottom right'
|
|
333
|
+
});
|
|
334
|
+
}
|
|
335
|
+
function format_date(date, locale) {
|
|
336
|
+
return formatDate(date, 'yyyy/MM/dd', locale, 'GMT+8');
|
|
337
|
+
}
|
|
338
|
+
function format_datetime(date, locale) {
|
|
339
|
+
return formatDate(date, 'yyyy/MM/dd HH:mm:ss', locale, 'GMT+8');
|
|
340
|
+
}
|
|
341
|
+
function localeSortMethod(value1, value2) {
|
|
342
|
+
return value1.localeCompare(value2);
|
|
343
|
+
}
|
|
344
|
+
function file_type_icon(name) {
|
|
345
|
+
const type = name.substring(name.lastIndexOf('.') + 1).toLocaleLowerCase();
|
|
346
|
+
switch (type) {
|
|
347
|
+
case 'doc':
|
|
348
|
+
case 'docx':
|
|
349
|
+
return 'word';
|
|
350
|
+
case 'xls':
|
|
351
|
+
case 'xlsx':
|
|
352
|
+
case 'csv':
|
|
353
|
+
return 'excel';
|
|
354
|
+
case 'ppt':
|
|
355
|
+
case 'pptx':
|
|
356
|
+
return 'ppt';
|
|
357
|
+
case 'pdf':
|
|
358
|
+
return 'pdf';
|
|
359
|
+
case 'txt':
|
|
360
|
+
case 'xml':
|
|
361
|
+
case 'json':
|
|
362
|
+
case 'js':
|
|
363
|
+
return 'text';
|
|
364
|
+
case 'png':
|
|
365
|
+
case 'jpg':
|
|
366
|
+
case 'jpeg':
|
|
367
|
+
case 'gif':
|
|
368
|
+
case 'bmp':
|
|
369
|
+
return 'image';
|
|
370
|
+
case 'zip':
|
|
371
|
+
case 'rar':
|
|
372
|
+
case '7z':
|
|
373
|
+
case 'jar':
|
|
374
|
+
return 'zip';
|
|
375
|
+
default:
|
|
376
|
+
return 'unknown';
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
function support_preview_ext() {
|
|
380
|
+
return ['pdf', 'png', 'jpg', 'jpeg', 'gif', 'bmp', 'doc', 'docx', 'txt', 'xml', 'json', 'js', 'xls', 'xlsx', 'csv', 'ppt', 'pptx'];
|
|
381
|
+
}
|
|
382
|
+
function format_file_size(size) {
|
|
383
|
+
const labels = ['b', 'Kb', 'Mb', 'Gb'];
|
|
384
|
+
const count = labels.length - 1;
|
|
385
|
+
let i = 0;
|
|
386
|
+
while (i < count && size >= 1024) {
|
|
387
|
+
size /= 1024;
|
|
388
|
+
i++;
|
|
389
|
+
}
|
|
390
|
+
return Math.round(size * 100) / 100 + " " + labels[i];
|
|
391
|
+
}
|
|
392
|
+
function filename_from_disposition(disposition) {
|
|
393
|
+
const filenamePair = disposition.split(';').filter(str => /^filename=/.test(str.trim())).pop();
|
|
394
|
+
if (filenamePair) {
|
|
395
|
+
let str = filenamePair.trim();
|
|
396
|
+
str = str.split('=')[1];
|
|
397
|
+
str = str.replace(/['"]/g, '');
|
|
398
|
+
return decodeURIComponent(str);
|
|
399
|
+
}
|
|
400
|
+
else {
|
|
401
|
+
return null;
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
function download_file(blob, filename, callback) {
|
|
405
|
+
const url = window.webkitURL.createObjectURL(blob);
|
|
406
|
+
const a = document.createElement('a');
|
|
407
|
+
document.body.appendChild(a);
|
|
408
|
+
a.setAttribute('style', 'display:none');
|
|
409
|
+
a.setAttribute('href', url);
|
|
410
|
+
a.setAttribute('download', decodeURIComponent(filename));
|
|
411
|
+
a.click();
|
|
412
|
+
setTimeout(() => {
|
|
413
|
+
if (callback) {
|
|
414
|
+
callback();
|
|
415
|
+
}
|
|
416
|
+
a.remove();
|
|
417
|
+
});
|
|
418
|
+
}
|
|
419
|
+
function validate(validator) {
|
|
420
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
421
|
+
return new Promise(resolve => {
|
|
422
|
+
var _a;
|
|
423
|
+
if (!validator) {
|
|
424
|
+
resolve(true);
|
|
425
|
+
}
|
|
426
|
+
const validateResult = validator.instance.validate();
|
|
427
|
+
if (!validateResult.isValid) {
|
|
428
|
+
resolve(false);
|
|
429
|
+
}
|
|
430
|
+
if (validateResult.status === 'pending') {
|
|
431
|
+
(_a = validateResult.complete) === null || _a === void 0 ? void 0 : _a.then((result) => {
|
|
432
|
+
if (result.isValid) {
|
|
433
|
+
resolve(true);
|
|
434
|
+
}
|
|
435
|
+
else {
|
|
436
|
+
resolve(false);
|
|
437
|
+
}
|
|
438
|
+
});
|
|
439
|
+
}
|
|
440
|
+
else {
|
|
441
|
+
resolve(true);
|
|
442
|
+
}
|
|
443
|
+
});
|
|
444
|
+
});
|
|
445
|
+
}
|
|
446
|
+
function validate_group(validationGroup) {
|
|
447
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
448
|
+
if (!validationGroup) {
|
|
449
|
+
return firstValueFrom(of(true));
|
|
450
|
+
}
|
|
451
|
+
const top = validationGroup.element.nativeElement;
|
|
452
|
+
let sourceNode;
|
|
453
|
+
const targetClassName = 'dx-field';
|
|
454
|
+
const findTargetNode = (node) => {
|
|
455
|
+
sourceNode = node;
|
|
456
|
+
while (true) {
|
|
457
|
+
if (node.classList.contains(targetClassName)) {
|
|
458
|
+
return node;
|
|
459
|
+
}
|
|
460
|
+
else {
|
|
461
|
+
node = node.parentElement;
|
|
462
|
+
if (node === top) {
|
|
463
|
+
return sourceNode;
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
};
|
|
468
|
+
return new Promise(resolve => {
|
|
469
|
+
var _a, _b;
|
|
470
|
+
const validateResult = validationGroup.instance.validate();
|
|
471
|
+
if (!validateResult.isValid) {
|
|
472
|
+
const brokenElement = ((_a = validateResult.brokenRules) === null || _a === void 0 ? void 0 : _a[0]).validator.element();
|
|
473
|
+
findTargetNode(brokenElement).scrollIntoView();
|
|
474
|
+
resolve(false);
|
|
475
|
+
}
|
|
476
|
+
if (validateResult.status === 'pending') {
|
|
477
|
+
(_b = validateResult.complete) === null || _b === void 0 ? void 0 : _b.then((result) => {
|
|
478
|
+
var _a;
|
|
479
|
+
if (result.isValid) {
|
|
480
|
+
resolve(true);
|
|
481
|
+
}
|
|
482
|
+
else {
|
|
483
|
+
const brokenElement = ((_a = result.brokenRules) === null || _a === void 0 ? void 0 : _a[0]).validator.element();
|
|
484
|
+
findTargetNode(brokenElement).scrollIntoView();
|
|
485
|
+
resolve(false);
|
|
486
|
+
}
|
|
487
|
+
});
|
|
488
|
+
}
|
|
489
|
+
else {
|
|
490
|
+
resolve(true);
|
|
491
|
+
}
|
|
492
|
+
});
|
|
493
|
+
});
|
|
494
|
+
}
|
|
274
495
|
|
|
275
496
|
class PluginManager {
|
|
276
497
|
static createComponent(boxItem, index, style, config) {
|
|
277
|
-
var _a;
|
|
498
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
278
499
|
let plugin = PluginFactory.get(config.name);
|
|
279
500
|
if (!plugin) {
|
|
280
501
|
console.error('undefined plugin: ' + config.name);
|
|
@@ -289,16 +510,40 @@ class PluginManager {
|
|
|
289
510
|
const componentRef = viewContainerRef.createComponent(plugin.component);
|
|
290
511
|
const instance = componentRef.instance;
|
|
291
512
|
Object.assign(instance, config.pluginConfig);
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
513
|
+
if (PluginFactory.hasType(plugin, 'page')) {
|
|
514
|
+
if (!(instance instanceof PageItemComponentBase)) {
|
|
515
|
+
console.error('page item component need extending PageItemComponentBase, name: ' + config.name);
|
|
516
|
+
notify_error('加载页面组件失败:' + config.name);
|
|
517
|
+
return;
|
|
518
|
+
}
|
|
519
|
+
instance.editMode = boxItem.boxContainer.editMode;
|
|
520
|
+
instance.tabId = (_b = boxItem.boxContainer.params) === null || _b === void 0 ? void 0 : _b.__tabId;
|
|
521
|
+
}
|
|
522
|
+
if (PluginFactory.hasType(plugin, 'form')) {
|
|
523
|
+
if (!(instance instanceof FormItemComponentBase)) {
|
|
524
|
+
console.error('form item component need extending FormItemComponentBase, name: ' + config.name);
|
|
525
|
+
notify_error('加载表单组件失败:' + config.name);
|
|
526
|
+
return;
|
|
527
|
+
}
|
|
528
|
+
instance.editMode = boxItem.boxContainer.editMode;
|
|
529
|
+
instance.tenant = (_c = boxItem.boxContainer.params) === null || _c === void 0 ? void 0 : _c.__form.tenant;
|
|
530
|
+
instance.className = (_d = boxItem.boxContainer.params) === null || _d === void 0 ? void 0 : _d.__form.className;
|
|
531
|
+
instance.oid = (_e = boxItem.boxContainer.params) === null || _e === void 0 ? void 0 : _e.__form.oid;
|
|
532
|
+
instance.model = (_f = boxItem.boxContainer.params) === null || _f === void 0 ? void 0 : _f.__model;
|
|
533
|
+
instance.opener = (_g = boxItem.boxContainer.params) === null || _g === void 0 ? void 0 : _g.__opener;
|
|
534
|
+
if (boxItem.boxContainer.readonly) {
|
|
535
|
+
instance.readonly = true;
|
|
536
|
+
}
|
|
295
537
|
}
|
|
296
|
-
if (
|
|
297
|
-
instance
|
|
538
|
+
if (PluginFactory.hasType(plugin, 'modal')) {
|
|
539
|
+
if (!(instance instanceof ModalComponentBase)) {
|
|
540
|
+
console.error('modal component need extending ModalComponentBase, name: ' + config.name);
|
|
541
|
+
notify_error('加载模窗组件失败:' + config.name);
|
|
542
|
+
return;
|
|
543
|
+
}
|
|
544
|
+
instance.opener = (_h = boxItem.boxContainer.params) === null || _h === void 0 ? void 0 : _h.__opener;
|
|
298
545
|
}
|
|
299
|
-
instance.opener = boxItem.boxContainer.opener;
|
|
300
546
|
instance.params = boxItem.boxContainer.params;
|
|
301
|
-
instance.tabId = boxItem.boxContainer.tabId;
|
|
302
547
|
instance.tabViewContainerRef = boxItem.boxContainer.tabViewContainerRef;
|
|
303
548
|
if (boxItem.boxContainer.editMode) {
|
|
304
549
|
instance.onRemove = () => {
|
|
@@ -405,7 +650,7 @@ class PluginManager {
|
|
|
405
650
|
});
|
|
406
651
|
return activeComponentRef;
|
|
407
652
|
}
|
|
408
|
-
static resetItemConfig(itemConfigContainerRef, item,
|
|
653
|
+
static resetItemConfig(itemConfigContainerRef, item, params) {
|
|
409
654
|
var _a, _b;
|
|
410
655
|
itemConfigContainerRef.clear();
|
|
411
656
|
if (!item) {
|
|
@@ -413,21 +658,28 @@ class PluginManager {
|
|
|
413
658
|
return;
|
|
414
659
|
}
|
|
415
660
|
const plugin = PluginFactory.get((_a = item.config) === null || _a === void 0 ? void 0 : _a.name);
|
|
416
|
-
const pluginType = plugin === null || plugin === void 0 ? void 0 : plugin.type;
|
|
417
661
|
const pluginConfig = PluginFactory.getConfig((_b = item.config) === null || _b === void 0 ? void 0 : _b.name);
|
|
418
662
|
if (pluginConfig) {
|
|
419
663
|
const componentRef = itemConfigContainerRef.createComponent(pluginConfig.component);
|
|
420
664
|
const instance = componentRef.instance;
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
665
|
+
if (PluginFactory.hasType(plugin, 'page')) {
|
|
666
|
+
if (!(instance instanceof PageItemConfigBase)) {
|
|
667
|
+
console.error('page item component config need extending PageItemConfigBase, name: ' + plugin.name);
|
|
668
|
+
notify_error('加载页面组件配置失败:' + plugin.name);
|
|
669
|
+
return;
|
|
670
|
+
}
|
|
671
|
+
}
|
|
672
|
+
if (PluginFactory.hasType(plugin, 'form')) {
|
|
424
673
|
if (!(instance instanceof FormItemConfigBase)) {
|
|
425
|
-
|
|
426
|
-
|
|
674
|
+
console.error('form item component config need extending FormItemConfigBase, name: ' + plugin.name);
|
|
675
|
+
notify_error('加载表单组件配置失败:' + plugin.name);
|
|
427
676
|
return;
|
|
428
677
|
}
|
|
429
|
-
instance.
|
|
678
|
+
instance.tenant = params.tenant;
|
|
679
|
+
instance.className = params.className;
|
|
680
|
+
instance.fieldTree = params.fieldTree;
|
|
430
681
|
}
|
|
682
|
+
instance.config = item.config.pluginConfig;
|
|
431
683
|
instance.configChange.subscribe((reload) => {
|
|
432
684
|
if (reload) {
|
|
433
685
|
const componentRef = PluginManager.createComponent(item.boxItem, item.index, item.style, item.config);
|
|
@@ -439,6 +691,7 @@ class PluginManager {
|
|
|
439
691
|
});
|
|
440
692
|
}
|
|
441
693
|
});
|
|
694
|
+
instance.tabViewContainerRef = item.boxItem.boxContainer.tabViewContainerRef;
|
|
442
695
|
}
|
|
443
696
|
else {
|
|
444
697
|
itemConfigContainerRef.createComponent(ConfigBlankComponent);
|
|
@@ -468,18 +721,18 @@ class ItemConfigComponent {
|
|
|
468
721
|
if (data.id !== this.id) {
|
|
469
722
|
return;
|
|
470
723
|
}
|
|
471
|
-
PluginManager.resetItemConfig(this.itemConfigContainerRef, data.item, this.
|
|
724
|
+
PluginManager.resetItemConfig(this.itemConfigContainerRef, data.item, this.params);
|
|
472
725
|
});
|
|
473
726
|
}
|
|
474
727
|
}
|
|
475
728
|
ItemConfigComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ItemConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
476
|
-
ItemConfigComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ItemConfigComponent, selector: "rs-item-config", inputs: { id: "id",
|
|
729
|
+
ItemConfigComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ItemConfigComponent, selector: "rs-item-config", inputs: { id: "id", params: "params" }, viewQueries: [{ propertyName: "itemConfigContainerRef", first: true, predicate: ["itemConfigContainerRef"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #itemConfigContainerRef></ng-container>\n", styles: [""] });
|
|
477
730
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ItemConfigComponent, decorators: [{
|
|
478
731
|
type: Component,
|
|
479
732
|
args: [{ selector: 'rs-item-config', template: "<ng-container #itemConfigContainerRef></ng-container>\n" }]
|
|
480
733
|
}], propDecorators: { id: [{
|
|
481
734
|
type: Input
|
|
482
|
-
}],
|
|
735
|
+
}], params: [{
|
|
483
736
|
type: Input
|
|
484
737
|
}], itemConfigContainerRef: [{
|
|
485
738
|
type: ViewChild,
|
|
@@ -856,7 +1109,7 @@ class BoxContainerComponent {
|
|
|
856
1109
|
}
|
|
857
1110
|
}
|
|
858
1111
|
BoxContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BoxContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
859
|
-
BoxContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BoxContainerComponent, selector: "rs-box-container", inputs: { id: "id", editMode: "editMode", config: "config",
|
|
1112
|
+
BoxContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BoxContainerComponent, selector: "rs-box-container", inputs: { id: "id", editMode: "editMode", config: "config", params: "params", readonly: "readonly", tabViewContainerRef: "tabViewContainerRef" }, viewQueries: [{ propertyName: "boxContainerContent", first: true, predicate: ["boxContainerContent"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container #boxContainerContent></ng-container>\n", styles: [":host{flex:1;position:relative;display:flex;flex-flow:row nowrap}\n"] });
|
|
860
1113
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BoxContainerComponent, decorators: [{
|
|
861
1114
|
type: Component,
|
|
862
1115
|
args: [{ selector: 'rs-box-container', template: "<ng-container #boxContainerContent></ng-container>\n", styles: [":host{flex:1;position:relative;display:flex;flex-flow:row nowrap}\n"] }]
|
|
@@ -866,16 +1119,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
866
1119
|
type: Input
|
|
867
1120
|
}], config: [{
|
|
868
1121
|
type: Input
|
|
869
|
-
}], model: [{
|
|
870
|
-
type: Input
|
|
871
|
-
}], opener: [{
|
|
872
|
-
type: Input
|
|
873
1122
|
}], params: [{
|
|
874
1123
|
type: Input
|
|
875
1124
|
}], readonly: [{
|
|
876
1125
|
type: Input
|
|
877
|
-
}], tabId: [{
|
|
878
|
-
type: Input
|
|
879
1126
|
}], tabViewContainerRef: [{
|
|
880
1127
|
type: Input
|
|
881
1128
|
}], boxContainerContent: [{
|
|
@@ -897,7 +1144,6 @@ BoxContainerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", vers
|
|
|
897
1144
|
ItemStyleComponent,
|
|
898
1145
|
StyleBlankComponent,
|
|
899
1146
|
ItemBlankComponent,
|
|
900
|
-
FormItemConfigErrorComponent,
|
|
901
1147
|
StyleComponent,
|
|
902
1148
|
PluginNotFoundComponent,
|
|
903
1149
|
ConfigBlankComponent], imports: [CommonModule,
|
|
@@ -921,7 +1167,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
921
1167
|
ItemStyleComponent,
|
|
922
1168
|
StyleBlankComponent,
|
|
923
1169
|
ItemBlankComponent,
|
|
924
|
-
FormItemConfigErrorComponent,
|
|
925
1170
|
StyleComponent,
|
|
926
1171
|
PluginNotFoundComponent,
|
|
927
1172
|
ConfigBlankComponent
|
|
@@ -1667,8 +1912,6 @@ class DataGridService {
|
|
|
1667
1912
|
constructor(http) {
|
|
1668
1913
|
this.http = http;
|
|
1669
1914
|
this.cellTemplateLoaded$ = new EventEmitter();
|
|
1670
|
-
this.userInfoCache = {};
|
|
1671
|
-
this.unitInfoCache = {};
|
|
1672
1915
|
}
|
|
1673
1916
|
getMetadataByView(tenant, className, view) {
|
|
1674
1917
|
return this.http.get('api/metadata/view/' + className, {
|
|
@@ -1716,9 +1959,20 @@ class DataGridService {
|
|
|
1716
1959
|
};
|
|
1717
1960
|
}));
|
|
1718
1961
|
}
|
|
1719
|
-
getConstraintEntries(name) {
|
|
1720
|
-
return this.http.get('api/metadata/constraint/' + name
|
|
1721
|
-
|
|
1962
|
+
getConstraintEntries(tenant, name) {
|
|
1963
|
+
return this.http.get('api/metadata/constraint/' + name, {
|
|
1964
|
+
params: {
|
|
1965
|
+
tenant
|
|
1966
|
+
}
|
|
1967
|
+
}).pipe(map(response => {
|
|
1968
|
+
const entries = [];
|
|
1969
|
+
for (let entry of response.data) {
|
|
1970
|
+
entries.push({
|
|
1971
|
+
store: entry.store,
|
|
1972
|
+
display: entry.enabled ? entry.display : entry.display + '(已禁用)'
|
|
1973
|
+
});
|
|
1974
|
+
}
|
|
1975
|
+
return entries;
|
|
1722
1976
|
}));
|
|
1723
1977
|
}
|
|
1724
1978
|
getUserColumnDataSource(tenant, className, view, field) {
|
|
@@ -1801,37 +2055,6 @@ class DataGridService {
|
|
|
1801
2055
|
return response.data.list;
|
|
1802
2056
|
}));
|
|
1803
2057
|
}
|
|
1804
|
-
downloadAttachment(id) {
|
|
1805
|
-
return this.http.get('api/file/download/' + id, {
|
|
1806
|
-
responseType: "blob"
|
|
1807
|
-
});
|
|
1808
|
-
}
|
|
1809
|
-
getUserInfo(uid) {
|
|
1810
|
-
if (!this.userInfoCache.hasOwnProperty(uid)) {
|
|
1811
|
-
this.userInfoCache[uid] = this.http.get('api/data/custom', {
|
|
1812
|
-
params: {
|
|
1813
|
-
executor: 'com.cs.system.user.GetUserInfo',
|
|
1814
|
-
uid
|
|
1815
|
-
}
|
|
1816
|
-
}).pipe(shareReplay(1), map(response => {
|
|
1817
|
-
return response.data;
|
|
1818
|
-
}));
|
|
1819
|
-
}
|
|
1820
|
-
return this.userInfoCache[uid];
|
|
1821
|
-
}
|
|
1822
|
-
getUnitInfo(uid) {
|
|
1823
|
-
if (!this.unitInfoCache.hasOwnProperty(uid)) {
|
|
1824
|
-
this.unitInfoCache[uid] = this.http.get('api/data/custom', {
|
|
1825
|
-
params: {
|
|
1826
|
-
executor: 'com.cs.system.user.GetUnitInfo',
|
|
1827
|
-
uid
|
|
1828
|
-
}
|
|
1829
|
-
}).pipe(shareReplay(1), map(response => {
|
|
1830
|
-
return response.data;
|
|
1831
|
-
}));
|
|
1832
|
-
}
|
|
1833
|
-
return this.unitInfoCache[uid];
|
|
1834
|
-
}
|
|
1835
2058
|
}
|
|
1836
2059
|
DataGridService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataGridService, deps: [{ token: i1$1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1837
2060
|
DataGridService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataGridService });
|
|
@@ -1853,194 +2076,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
1853
2076
|
}]
|
|
1854
2077
|
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
|
|
1855
2078
|
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
_notify(message, 8000, 'warning');
|
|
1861
|
-
}
|
|
1862
|
-
function notify_success(message) {
|
|
1863
|
-
_notify(message, 4000, 'success');
|
|
1864
|
-
}
|
|
1865
|
-
function _notify(message, time, type) {
|
|
1866
|
-
notify({
|
|
1867
|
-
displayTime: time,
|
|
1868
|
-
message,
|
|
1869
|
-
type: type,
|
|
1870
|
-
closeOnSwipe: false,
|
|
1871
|
-
minWidth: 200,
|
|
1872
|
-
maxWidth: 500,
|
|
1873
|
-
wrapperAttr: { class: 'global-toast-message' }
|
|
1874
|
-
}, {
|
|
1875
|
-
direction: 'up-push',
|
|
1876
|
-
position: 'bottom right'
|
|
1877
|
-
});
|
|
1878
|
-
}
|
|
1879
|
-
function format_date(date, locale) {
|
|
1880
|
-
return formatDate(date, 'yyyy/MM/dd', locale, 'GMT+8');
|
|
1881
|
-
}
|
|
1882
|
-
function format_datetime(date, locale) {
|
|
1883
|
-
return formatDate(date, 'yyyy/MM/dd HH:mm:ss', locale, 'GMT+8');
|
|
1884
|
-
}
|
|
1885
|
-
function localeSortMethod(value1, value2) {
|
|
1886
|
-
return value1.localeCompare(value2);
|
|
1887
|
-
}
|
|
1888
|
-
function file_type_icon(name) {
|
|
1889
|
-
const type = name.substring(name.lastIndexOf('.') + 1).toLocaleLowerCase();
|
|
1890
|
-
switch (type) {
|
|
1891
|
-
case 'doc':
|
|
1892
|
-
case 'docx':
|
|
1893
|
-
return 'word';
|
|
1894
|
-
case 'xls':
|
|
1895
|
-
case 'xlsx':
|
|
1896
|
-
case 'csv':
|
|
1897
|
-
return 'excel';
|
|
1898
|
-
case 'ppt':
|
|
1899
|
-
case 'pptx':
|
|
1900
|
-
return 'ppt';
|
|
1901
|
-
case 'pdf':
|
|
1902
|
-
return 'pdf';
|
|
1903
|
-
case 'txt':
|
|
1904
|
-
case 'xml':
|
|
1905
|
-
case 'json':
|
|
1906
|
-
case 'js':
|
|
1907
|
-
return 'text';
|
|
1908
|
-
case 'png':
|
|
1909
|
-
case 'jpg':
|
|
1910
|
-
case 'jpeg':
|
|
1911
|
-
case 'gif':
|
|
1912
|
-
case 'bmp':
|
|
1913
|
-
return 'image';
|
|
1914
|
-
case 'zip':
|
|
1915
|
-
case 'rar':
|
|
1916
|
-
case '7z':
|
|
1917
|
-
case 'jar':
|
|
1918
|
-
return 'zip';
|
|
1919
|
-
default:
|
|
1920
|
-
return 'unknown';
|
|
1921
|
-
}
|
|
1922
|
-
}
|
|
1923
|
-
function support_preview_ext() {
|
|
1924
|
-
return ['pdf', 'png', 'jpg', 'jpeg', 'gif', 'bmp', 'doc', 'docx', 'txt', 'xml', 'json', 'js', 'xls', 'xlsx', 'csv', 'ppt', 'pptx'];
|
|
1925
|
-
}
|
|
1926
|
-
function format_file_size(size) {
|
|
1927
|
-
const labels = ['b', 'Kb', 'Mb', 'Gb'];
|
|
1928
|
-
const count = labels.length - 1;
|
|
1929
|
-
let i = 0;
|
|
1930
|
-
while (i < count && size >= 1024) {
|
|
1931
|
-
size /= 1024;
|
|
1932
|
-
i++;
|
|
1933
|
-
}
|
|
1934
|
-
return Math.round(size * 100) / 100 + " " + labels[i];
|
|
1935
|
-
}
|
|
1936
|
-
function filename_from_disposition(disposition) {
|
|
1937
|
-
const filenamePair = disposition.split(';').filter(str => /^filename=/.test(str.trim())).pop();
|
|
1938
|
-
if (filenamePair) {
|
|
1939
|
-
let str = filenamePair.trim();
|
|
1940
|
-
str = str.split('=')[1];
|
|
1941
|
-
str = str.replace(/['"]/g, '');
|
|
1942
|
-
return decodeURIComponent(str);
|
|
1943
|
-
}
|
|
1944
|
-
else {
|
|
1945
|
-
return null;
|
|
1946
|
-
}
|
|
1947
|
-
}
|
|
1948
|
-
function download_file(blob, filename, callback) {
|
|
1949
|
-
const url = window.webkitURL.createObjectURL(blob);
|
|
1950
|
-
const a = document.createElement('a');
|
|
1951
|
-
document.body.appendChild(a);
|
|
1952
|
-
a.setAttribute('style', 'display:none');
|
|
1953
|
-
a.setAttribute('href', url);
|
|
1954
|
-
a.setAttribute('download', decodeURIComponent(filename));
|
|
1955
|
-
a.click();
|
|
1956
|
-
setTimeout(() => {
|
|
1957
|
-
if (callback) {
|
|
1958
|
-
callback();
|
|
1959
|
-
}
|
|
1960
|
-
a.remove();
|
|
1961
|
-
});
|
|
1962
|
-
}
|
|
1963
|
-
function validate(validator) {
|
|
1964
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
1965
|
-
return new Promise(resolve => {
|
|
1966
|
-
var _a;
|
|
1967
|
-
if (!validator) {
|
|
1968
|
-
resolve(true);
|
|
1969
|
-
}
|
|
1970
|
-
const validateResult = validator.instance.validate();
|
|
1971
|
-
if (!validateResult.isValid) {
|
|
1972
|
-
resolve(false);
|
|
1973
|
-
}
|
|
1974
|
-
if (validateResult.status === 'pending') {
|
|
1975
|
-
(_a = validateResult.complete) === null || _a === void 0 ? void 0 : _a.then((result) => {
|
|
1976
|
-
if (result.isValid) {
|
|
1977
|
-
resolve(true);
|
|
1978
|
-
}
|
|
1979
|
-
else {
|
|
1980
|
-
resolve(false);
|
|
1981
|
-
}
|
|
1982
|
-
});
|
|
1983
|
-
}
|
|
1984
|
-
else {
|
|
1985
|
-
resolve(true);
|
|
1986
|
-
}
|
|
1987
|
-
});
|
|
1988
|
-
});
|
|
1989
|
-
}
|
|
1990
|
-
function validate_group(validationGroup) {
|
|
1991
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
1992
|
-
if (!validationGroup) {
|
|
1993
|
-
return firstValueFrom(of(true));
|
|
1994
|
-
}
|
|
1995
|
-
const top = validationGroup.element.nativeElement;
|
|
1996
|
-
let sourceNode;
|
|
1997
|
-
const targetClassName = 'dx-field';
|
|
1998
|
-
const findTargetNode = (node) => {
|
|
1999
|
-
sourceNode = node;
|
|
2000
|
-
while (true) {
|
|
2001
|
-
if (node.classList.contains(targetClassName)) {
|
|
2002
|
-
return node;
|
|
2003
|
-
}
|
|
2004
|
-
else {
|
|
2005
|
-
node = node.parentElement;
|
|
2006
|
-
if (node === top) {
|
|
2007
|
-
return sourceNode;
|
|
2008
|
-
}
|
|
2009
|
-
}
|
|
2010
|
-
}
|
|
2011
|
-
};
|
|
2012
|
-
return new Promise(resolve => {
|
|
2013
|
-
var _a, _b;
|
|
2014
|
-
const validateResult = validationGroup.instance.validate();
|
|
2015
|
-
if (!validateResult.isValid) {
|
|
2016
|
-
const brokenElement = ((_a = validateResult.brokenRules) === null || _a === void 0 ? void 0 : _a[0]).validator.element();
|
|
2017
|
-
findTargetNode(brokenElement).scrollIntoView();
|
|
2018
|
-
resolve(false);
|
|
2019
|
-
}
|
|
2020
|
-
if (validateResult.status === 'pending') {
|
|
2021
|
-
(_b = validateResult.complete) === null || _b === void 0 ? void 0 : _b.then((result) => {
|
|
2022
|
-
var _a;
|
|
2023
|
-
if (result.isValid) {
|
|
2024
|
-
resolve(true);
|
|
2025
|
-
}
|
|
2026
|
-
else {
|
|
2027
|
-
const brokenElement = ((_a = result.brokenRules) === null || _a === void 0 ? void 0 : _a[0]).validator.element();
|
|
2028
|
-
findTargetNode(brokenElement).scrollIntoView();
|
|
2029
|
-
resolve(false);
|
|
2030
|
-
}
|
|
2031
|
-
});
|
|
2032
|
-
}
|
|
2033
|
-
else {
|
|
2034
|
-
resolve(true);
|
|
2035
|
-
}
|
|
2036
|
-
});
|
|
2037
|
-
});
|
|
2038
|
-
}
|
|
2039
|
-
|
|
2040
|
-
class CustomTemplateDirective {
|
|
2041
|
-
constructor(templateRef) {
|
|
2042
|
-
this.templateRef = templateRef;
|
|
2043
|
-
}
|
|
2079
|
+
class CustomTemplateDirective {
|
|
2080
|
+
constructor(templateRef) {
|
|
2081
|
+
this.templateRef = templateRef;
|
|
2082
|
+
}
|
|
2044
2083
|
}
|
|
2045
2084
|
CustomTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2046
2085
|
CustomTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: CustomTemplateDirective, selector: "[rsCustomTemplate]", ngImport: i0 });
|
|
@@ -2093,39 +2132,41 @@ class DataGridFactory {
|
|
|
2093
2132
|
this.service.getMetadataByView(tenant, className, view || '').subscribe(response => {
|
|
2094
2133
|
const columns = [];
|
|
2095
2134
|
for (let field of response.data.columns) {
|
|
2096
|
-
let column
|
|
2135
|
+
let column = {
|
|
2136
|
+
dataField: field.name,
|
|
2137
|
+
caption: field.caption,
|
|
2138
|
+
dataType: 'string',
|
|
2139
|
+
alignment: 'left',
|
|
2140
|
+
allowHeaderFiltering: true,
|
|
2141
|
+
allowFiltering: true,
|
|
2142
|
+
allowSorting: true,
|
|
2143
|
+
visible: field.visible,
|
|
2144
|
+
fixed: field.fixed
|
|
2145
|
+
};
|
|
2146
|
+
if (field.viewConfig.columnWidth) {
|
|
2147
|
+
column.width = field.viewConfig.columnWidth;
|
|
2148
|
+
}
|
|
2149
|
+
if (field.viewConfig.alignCenter) {
|
|
2150
|
+
column.alignment = 'center';
|
|
2151
|
+
}
|
|
2152
|
+
if (field.viewConfig.component) {
|
|
2153
|
+
column.cellTemplate = 'cellComponentTemplate';
|
|
2154
|
+
column.config = field.config;
|
|
2155
|
+
column.viewConfig = field.viewConfig;
|
|
2156
|
+
}
|
|
2097
2157
|
switch (field.type) {
|
|
2098
2158
|
case 'FILE':
|
|
2099
|
-
column =
|
|
2100
|
-
|
|
2101
|
-
|
|
2102
|
-
dataType: 'string',
|
|
2103
|
-
cssClass: 'cell-vertical-middle',
|
|
2104
|
-
allowHeaderFiltering: false,
|
|
2105
|
-
allowFiltering: false,
|
|
2106
|
-
allowSorting: false,
|
|
2107
|
-
cellTemplate: 'fileCellTemplate',
|
|
2108
|
-
renderAsync: true,
|
|
2109
|
-
visible: field.visible,
|
|
2110
|
-
fixed: field.fixed
|
|
2111
|
-
};
|
|
2159
|
+
column.allowHeaderFiltering = false;
|
|
2160
|
+
column.allowFiltering = false;
|
|
2161
|
+
column.allowSorting = false;
|
|
2112
2162
|
break;
|
|
2113
2163
|
case 'NORMAL':
|
|
2114
|
-
column =
|
|
2115
|
-
|
|
2116
|
-
|
|
2117
|
-
dataType: this.typeMap[field.dataType].dataType,
|
|
2118
|
-
alignment: 'left',
|
|
2119
|
-
cssClass: 'cell-vertical-middle',
|
|
2120
|
-
allowHeaderFiltering: true,
|
|
2121
|
-
headerFilter: {
|
|
2122
|
-
allowSelectAll: false
|
|
2123
|
-
},
|
|
2124
|
-
filterOperations: this.typeMap[field.dataType].filterOperations,
|
|
2125
|
-
format: this.typeMap[field.dataType].format,
|
|
2126
|
-
visible: field.visible,
|
|
2127
|
-
fixed: field.fixed
|
|
2164
|
+
column.dataType = this.typeMap[field.dataType].dataType;
|
|
2165
|
+
column.headerFilter = {
|
|
2166
|
+
allowSelectAll: false
|
|
2128
2167
|
};
|
|
2168
|
+
column.filterOperations = this.typeMap[field.dataType].filterOperations;
|
|
2169
|
+
column.format = this.typeMap[field.dataType].format;
|
|
2129
2170
|
switch (field.dataType) {
|
|
2130
2171
|
case 'BOOLEAN':
|
|
2131
2172
|
column.allowHeaderFiltering = false;
|
|
@@ -2192,10 +2233,9 @@ class DataGridFactory {
|
|
|
2192
2233
|
};
|
|
2193
2234
|
switch (field.config.constraint.type) {
|
|
2194
2235
|
case 'USER':
|
|
2195
|
-
column.
|
|
2196
|
-
|
|
2197
|
-
}
|
|
2198
|
-
column.cellTemplate = 'userCellTemplate';
|
|
2236
|
+
if (column.viewConfig) {
|
|
2237
|
+
column.viewConfig.componentConfig = Object.assign(Object.assign({}, column.viewConfig.componentConfig), { originalField: field.name });
|
|
2238
|
+
}
|
|
2199
2239
|
column.headerFilter.dataSource = {
|
|
2200
2240
|
store: new CustomStore({
|
|
2201
2241
|
load: () => {
|
|
@@ -2206,18 +2246,6 @@ class DataGridFactory {
|
|
|
2206
2246
|
};
|
|
2207
2247
|
if (field.config.constraint.multiple) {
|
|
2208
2248
|
column.allowFiltering = false;
|
|
2209
|
-
column.lookup = {
|
|
2210
|
-
dataSource: {
|
|
2211
|
-
store: new CustomStore({
|
|
2212
|
-
load: () => {
|
|
2213
|
-
return lastValueFrom(this.service.getUserColumnDataSource(tenant, className, view, field.name));
|
|
2214
|
-
}
|
|
2215
|
-
}),
|
|
2216
|
-
paginate: true
|
|
2217
|
-
},
|
|
2218
|
-
valueExpr: 'value',
|
|
2219
|
-
displayExpr: 'text'
|
|
2220
|
-
};
|
|
2221
2249
|
column.calculateFilterExpression = function (filterValue, selectedFilterOperation, target) {
|
|
2222
2250
|
if (this.defaultCalculateFilterExpression) {
|
|
2223
2251
|
if (!filterValue) {
|
|
@@ -2246,10 +2274,9 @@ class DataGridFactory {
|
|
|
2246
2274
|
}
|
|
2247
2275
|
break;
|
|
2248
2276
|
case 'UNIT':
|
|
2249
|
-
column.
|
|
2250
|
-
|
|
2251
|
-
}
|
|
2252
|
-
column.cellTemplate = 'unitCellTemplate';
|
|
2277
|
+
if (column.viewConfig) {
|
|
2278
|
+
column.viewConfig.componentConfig = Object.assign(Object.assign({}, column.viewConfig.componentConfig), { originalField: field.name });
|
|
2279
|
+
}
|
|
2253
2280
|
column.headerFilter.dataSource = {
|
|
2254
2281
|
store: new CustomStore({
|
|
2255
2282
|
load: () => {
|
|
@@ -2260,18 +2287,6 @@ class DataGridFactory {
|
|
|
2260
2287
|
};
|
|
2261
2288
|
if (field.config.constraint.multiple) {
|
|
2262
2289
|
column.allowFiltering = false;
|
|
2263
|
-
column.lookup = {
|
|
2264
|
-
dataSource: {
|
|
2265
|
-
store: new CustomStore({
|
|
2266
|
-
load: () => {
|
|
2267
|
-
return lastValueFrom(this.service.getUnitColumnDataSource(tenant, className, view, field.name));
|
|
2268
|
-
}
|
|
2269
|
-
}),
|
|
2270
|
-
paginate: true
|
|
2271
|
-
},
|
|
2272
|
-
valueExpr: 'value',
|
|
2273
|
-
displayExpr: 'text'
|
|
2274
|
-
};
|
|
2275
2290
|
column.calculateFilterExpression = function (filterValue, selectedFilterOperation, target) {
|
|
2276
2291
|
if (this.defaultCalculateFilterExpression) {
|
|
2277
2292
|
if (!filterValue) {
|
|
@@ -2312,7 +2327,7 @@ class DataGridFactory {
|
|
|
2312
2327
|
dataSource: {
|
|
2313
2328
|
store: new CustomStore({
|
|
2314
2329
|
load: () => {
|
|
2315
|
-
return lastValueFrom(this.service.getConstraintEntries(field.config.constraint.name));
|
|
2330
|
+
return lastValueFrom(this.service.getConstraintEntries(tenant, field.config.constraint.name));
|
|
2316
2331
|
}
|
|
2317
2332
|
}),
|
|
2318
2333
|
paginate: true
|
|
@@ -2332,41 +2347,26 @@ class DataGridFactory {
|
|
|
2332
2347
|
return '';
|
|
2333
2348
|
};
|
|
2334
2349
|
}
|
|
2335
|
-
column.cellTemplate = 'multipleValueCellTemplate';
|
|
2336
2350
|
break;
|
|
2337
2351
|
default:
|
|
2338
|
-
// column.cellTemplate = 'textCellTemplate';
|
|
2339
2352
|
break;
|
|
2340
2353
|
}
|
|
2341
2354
|
break;
|
|
2342
2355
|
case 'TEXT':
|
|
2343
2356
|
column.allowHeaderFiltering = false;
|
|
2344
|
-
column.width = 240;
|
|
2345
|
-
column.cellTemplate = 'textCellTemplate';
|
|
2346
2357
|
break;
|
|
2347
2358
|
}
|
|
2348
2359
|
break;
|
|
2349
2360
|
case 'RELATION':
|
|
2350
|
-
column =
|
|
2351
|
-
|
|
2352
|
-
caption: field.caption,
|
|
2353
|
-
dataType: 'string',
|
|
2354
|
-
alignment: 'left',
|
|
2355
|
-
cssClass: 'cell-vertical-middle',
|
|
2356
|
-
allowHeaderFiltering: false,
|
|
2357
|
-
allowFiltering: false,
|
|
2358
|
-
allowSorting: false,
|
|
2359
|
-
visible: field.visible,
|
|
2360
|
-
fixed: field.fixed
|
|
2361
|
-
};
|
|
2361
|
+
column.allowHeaderFiltering = false;
|
|
2362
|
+
column.allowSorting = false;
|
|
2362
2363
|
switch (field.relationType) {
|
|
2363
2364
|
case 'MANY_TO_ONE':
|
|
2364
2365
|
case 'ONE_TO_ONE':
|
|
2365
|
-
column.allowFiltering = true;
|
|
2366
2366
|
column.filterOperations = ['='];
|
|
2367
2367
|
break;
|
|
2368
2368
|
default:
|
|
2369
|
-
column.
|
|
2369
|
+
column.allowFiltering = false;
|
|
2370
2370
|
break;
|
|
2371
2371
|
}
|
|
2372
2372
|
}
|
|
@@ -2458,84 +2458,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
2458
2458
|
}]
|
|
2459
2459
|
}], ctorParameters: function () { return [{ type: i1$1.HttpClient }]; } });
|
|
2460
2460
|
|
|
2461
|
-
class FileCellTemplateComponent {
|
|
2462
|
-
constructor(service, domSanitizer) {
|
|
2463
|
-
this.service = service;
|
|
2464
|
-
this.domSanitizer = domSanitizer;
|
|
2465
|
-
this.supportPreview = false;
|
|
2466
|
-
this.loading = false;
|
|
2467
|
-
}
|
|
2468
|
-
ngOnInit() {
|
|
2469
|
-
this.filename = this.file.name;
|
|
2470
|
-
let extName = '';
|
|
2471
|
-
if (this.filename.indexOf('.') > -1) {
|
|
2472
|
-
extName = this.filename.substring(this.filename.lastIndexOf('.') + 1).toLowerCase();
|
|
2473
|
-
}
|
|
2474
|
-
this.supportPreview = support_preview_ext().indexOf(extName) > -1;
|
|
2475
|
-
this.content = this.domSanitizer.bypassSecurityTrustHtml(`
|
|
2476
|
-
<table>
|
|
2477
|
-
<tr>
|
|
2478
|
-
<td style="text-align: right;">名称:</td>
|
|
2479
|
-
<td style="text-align: left;">${this.filename}</td>
|
|
2480
|
-
</tr>
|
|
2481
|
-
<tr>
|
|
2482
|
-
<td style="text-align: right;">大小:</td>
|
|
2483
|
-
<td style="text-align: left;">${format_file_size(this.file.size)}</td>
|
|
2484
|
-
</tr>
|
|
2485
|
-
<tr>
|
|
2486
|
-
<td style="text-align: right;">时间:</td>
|
|
2487
|
-
<td style="text-align: left;">${this.file.time}</td>
|
|
2488
|
-
</tr>
|
|
2489
|
-
</table>
|
|
2490
|
-
`);
|
|
2491
|
-
this.icon = file_type_icon(this.filename);
|
|
2492
|
-
}
|
|
2493
|
-
preview(tooltip) {
|
|
2494
|
-
if (!window.coast.tabManager) {
|
|
2495
|
-
notify_warning('此操作仅能在coast-web项目中执行,type:preview');
|
|
2496
|
-
return;
|
|
2497
|
-
}
|
|
2498
|
-
window.coast.tabManager.add.next({
|
|
2499
|
-
type: 'preview',
|
|
2500
|
-
id: 'preview:' + this.file.oid,
|
|
2501
|
-
title: this.filename,
|
|
2502
|
-
config: {
|
|
2503
|
-
config: {
|
|
2504
|
-
direction: "row",
|
|
2505
|
-
list: [{
|
|
2506
|
-
type: "plugin",
|
|
2507
|
-
style: {},
|
|
2508
|
-
config: {
|
|
2509
|
-
name: "coast-file-preview",
|
|
2510
|
-
pluginConfig: {
|
|
2511
|
-
id: this.file.oid,
|
|
2512
|
-
name: this.filename
|
|
2513
|
-
}
|
|
2514
|
-
}
|
|
2515
|
-
}]
|
|
2516
|
-
}
|
|
2517
|
-
}
|
|
2518
|
-
});
|
|
2519
|
-
tooltip.instance.hide();
|
|
2520
|
-
}
|
|
2521
|
-
download() {
|
|
2522
|
-
this.loading = true;
|
|
2523
|
-
this.service.downloadAttachment(this.file.oid).subscribe(blob => {
|
|
2524
|
-
download_file(blob, this.filename, () => {
|
|
2525
|
-
this.loading = false;
|
|
2526
|
-
});
|
|
2527
|
-
});
|
|
2528
|
-
}
|
|
2529
|
-
}
|
|
2530
|
-
FileCellTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileCellTemplateComponent, deps: [{ token: DataGridService }, { token: i2$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
2531
|
-
FileCellTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FileCellTemplateComponent, selector: "rs-file-cell-template", inputs: { file: "file" }, ngImport: i0, template: "<dx-button #fileBtn type=\"default\" stylingMode=\"text\" (onClick)=\"$event.event?.stopPropagation()\">\r\n <i class=\"coast-icon-file-{{icon}}\" style=\"padding-right: 4px;\"></i>\r\n {{ filename }}\r\n <dx-tooltip #tooltip\r\n [target]=\"fileBtn.instance.element()\"\r\n [position]=\"'top'\"\r\n [visible]=\"false\"\r\n [showEvent]=\"'click'\">\r\n <div *dxTemplate=\"let data of 'content'\">\r\n <div [innerHTML]=\"content\"></div>\r\n <dx-button type=\"default\" stylingMode=\"text\" icon=\"coast-icon coast-icon-file\" text=\"\u9884\u89C8\"\r\n (onClick)=\"preview(tooltip)\" [disabled]=\"!supportPreview || loading\"></dx-button>\r\n <dx-button type=\"default\" stylingMode=\"text\" icon=\"coast-icon coast-icon-download\" text=\"\u4E0B\u8F7D\"\r\n (onClick)=\"download()\" [disabled]=\"loading\"></dx-button>\r\n </div>\r\n </dx-tooltip>\r\n</dx-button><br/>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3$1.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.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: 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"] }] });
|
|
2532
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FileCellTemplateComponent, decorators: [{
|
|
2533
|
-
type: Component,
|
|
2534
|
-
args: [{ selector: 'rs-file-cell-template', template: "<dx-button #fileBtn type=\"default\" stylingMode=\"text\" (onClick)=\"$event.event?.stopPropagation()\">\r\n <i class=\"coast-icon-file-{{icon}}\" style=\"padding-right: 4px;\"></i>\r\n {{ filename }}\r\n <dx-tooltip #tooltip\r\n [target]=\"fileBtn.instance.element()\"\r\n [position]=\"'top'\"\r\n [visible]=\"false\"\r\n [showEvent]=\"'click'\">\r\n <div *dxTemplate=\"let data of 'content'\">\r\n <div [innerHTML]=\"content\"></div>\r\n <dx-button type=\"default\" stylingMode=\"text\" icon=\"coast-icon coast-icon-file\" text=\"\u9884\u89C8\"\r\n (onClick)=\"preview(tooltip)\" [disabled]=\"!supportPreview || loading\"></dx-button>\r\n <dx-button type=\"default\" stylingMode=\"text\" icon=\"coast-icon coast-icon-download\" text=\"\u4E0B\u8F7D\"\r\n (onClick)=\"download()\" [disabled]=\"loading\"></dx-button>\r\n </div>\r\n </dx-tooltip>\r\n</dx-button><br/>\r\n" }]
|
|
2535
|
-
}], ctorParameters: function () { return [{ type: DataGridService }, { type: i2$2.DomSanitizer }]; }, propDecorators: { file: [{
|
|
2536
|
-
type: Input
|
|
2537
|
-
}] } });
|
|
2538
|
-
|
|
2539
2461
|
class DataDetailService {
|
|
2540
2462
|
constructor(http) {
|
|
2541
2463
|
this.http = http;
|
|
@@ -2656,7 +2578,9 @@ class FormComponent {
|
|
|
2656
2578
|
oid: this.oid,
|
|
2657
2579
|
copyOid: this.copyOid,
|
|
2658
2580
|
template: this.template
|
|
2659
|
-
}
|
|
2581
|
+
},
|
|
2582
|
+
model: this.model,
|
|
2583
|
+
opener: this
|
|
2660
2584
|
});
|
|
2661
2585
|
this.service.getFormTemplateConfig(this.tenant, this.className, this.template).subscribe(response => {
|
|
2662
2586
|
this.config = response.data.template;
|
|
@@ -2727,10 +2651,10 @@ class FormComponent {
|
|
|
2727
2651
|
}
|
|
2728
2652
|
}
|
|
2729
2653
|
FormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormComponent, deps: [{ token: i0.ViewContainerRef }, { token: FormService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2730
|
-
FormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormComponent, selector: "rs-form", inputs: { tenant: "tenant", className: "className", oid: "oid", copyOid: "copyOid", template: "template", extraAttrMap: "extraAttrMap", opener: "opener", params: "params", tabViewContainerRef: "tabViewContainerRef", onlyFrontEnd: "onlyFrontEnd", model: "model", readonly: "readonly" }, outputs: { onDataLoaded: "onDataLoaded", submitCallback: "submitCallback" }, providers: [FormService], viewQueries: [{ propertyName: "validator", first: true, predicate: DxValidationGroupComponent, descendants: true }, { propertyName: "formSubmitter", first: true, predicate: ["formSubmitter"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\r\n [visible]=\"loading\">\r\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\r\n</dx-load-panel>\r\n<dx-validation-group *ngIf=\"!loading\">\r\n <rs-box-container [config]=\"config\"\r\n [
|
|
2654
|
+
FormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FormComponent, selector: "rs-form", inputs: { tenant: "tenant", className: "className", oid: "oid", copyOid: "copyOid", template: "template", extraAttrMap: "extraAttrMap", opener: "opener", params: "params", tabViewContainerRef: "tabViewContainerRef", onlyFrontEnd: "onlyFrontEnd", model: "model", readonly: "readonly" }, outputs: { onDataLoaded: "onDataLoaded", submitCallback: "submitCallback" }, providers: [FormService], viewQueries: [{ propertyName: "validator", first: true, predicate: DxValidationGroupComponent, descendants: true }, { propertyName: "formSubmitter", first: true, predicate: ["formSubmitter"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\r\n [visible]=\"loading\">\r\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\r\n</dx-load-panel>\r\n<dx-validation-group *ngIf=\"!loading\">\r\n <rs-box-container [config]=\"config\"\r\n [params]=\"params\"\r\n [tabViewContainerRef]=\"tabViewContainerRef\"\r\n [readonly]=\"readonly\"></rs-box-container>\r\n <dx-text-box height=\"0\" style=\"border: none;\">\r\n <dx-validator>\r\n <dxi-validation-rule *ngIf=\"extraValidator\" type=\"async\"\r\n [validationCallback]=\"extraValidate\"></dxi-validation-rule>\r\n </dx-validator>\r\n </dx-text-box>\r\n <div *ngIf=\"extraValidateMessage\" class=\"dx-field\">\r\n <div class=\"dx-field-value\">\r\n <div class=\"dx-toast-error dx-toast-content\">\r\n <div class=\"dx-toast-message\">{{ extraValidateMessage }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <dx-button #formSubmitter [visible]=\"false\" (onClick)=\"submitForm()\"></dx-button>\r\n</dx-validation-group>\r\n", styles: [":host{padding:12px 24px 20px}:host dx-validation-group{display:flex;flex-flow:column nowrap}:host dx-validation-group .dx-field{top:16px}:host dx-validation-group .dx-field .dx-field-value .dx-toast-content{padding:4px 8px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BoxContainerComponent, selector: "rs-box-container", inputs: ["id", "editMode", "config", "params", "readonly", "tabViewContainerRef"] }, { kind: "component", type: i6.DxoPositionComponent, selector: "dxo-position", inputs: ["at", "boundary", "boundaryOffset", "collision", "my", "of", "offset"] }, { kind: "component", type: i3.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.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }, { kind: "component", type: i6$1.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.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "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", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8.DxValidationGroupComponent, selector: "dx-validation-group", inputs: ["elementAttr", "height", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "elementAttrChange", "heightChange", "widthChange"] }, { kind: "component", type: i9.DxValidatorComponent, selector: "dx-validator", inputs: ["adapter", "elementAttr", "height", "name", "validationGroup", "validationRules", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValidated", "adapterChange", "elementAttrChange", "heightChange", "nameChange", "validationGroupChange", "validationRulesChange", "widthChange"] }] });
|
|
2731
2655
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FormComponent, decorators: [{
|
|
2732
2656
|
type: Component,
|
|
2733
|
-
args: [{ selector: 'rs-form', providers: [FormService], template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\r\n [visible]=\"loading\">\r\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\r\n</dx-load-panel>\r\n<dx-validation-group *ngIf=\"!loading\">\r\n <rs-box-container [config]=\"config\"\r\n [
|
|
2657
|
+
args: [{ selector: 'rs-form', providers: [FormService], template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\r\n [visible]=\"loading\">\r\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\r\n</dx-load-panel>\r\n<dx-validation-group *ngIf=\"!loading\">\r\n <rs-box-container [config]=\"config\"\r\n [params]=\"params\"\r\n [tabViewContainerRef]=\"tabViewContainerRef\"\r\n [readonly]=\"readonly\"></rs-box-container>\r\n <dx-text-box height=\"0\" style=\"border: none;\">\r\n <dx-validator>\r\n <dxi-validation-rule *ngIf=\"extraValidator\" type=\"async\"\r\n [validationCallback]=\"extraValidate\"></dxi-validation-rule>\r\n </dx-validator>\r\n </dx-text-box>\r\n <div *ngIf=\"extraValidateMessage\" class=\"dx-field\">\r\n <div class=\"dx-field-value\">\r\n <div class=\"dx-toast-error dx-toast-content\">\r\n <div class=\"dx-toast-message\">{{ extraValidateMessage }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n <dx-button #formSubmitter [visible]=\"false\" (onClick)=\"submitForm()\"></dx-button>\r\n</dx-validation-group>\r\n", styles: [":host{padding:12px 24px 20px}:host dx-validation-group{display:flex;flex-flow:column nowrap}:host dx-validation-group .dx-field{top:16px}:host dx-validation-group .dx-field .dx-field-value .dx-toast-content{padding:4px 8px}\n"] }]
|
|
2734
2658
|
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: FormService }, { type: i0.ElementRef }]; }, propDecorators: { tenant: [{
|
|
2735
2659
|
type: Input
|
|
2736
2660
|
}], className: [{
|
|
@@ -2787,7 +2711,7 @@ class DataDetailComponent {
|
|
|
2787
2711
|
}
|
|
2788
2712
|
}
|
|
2789
2713
|
DataDetailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataDetailComponent, deps: [{ token: i0.ViewContainerRef }, { token: DataDetailService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2790
|
-
DataDetailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DataDetailComponent, selector: "coast-data-detail", providers: [DataDetailService], ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\n [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<div *ngIf=\"!loading && sections.length === 0\" class=\"empty\">\n <span>\u60A8\u65E0\u6743\u67E5\u770B\u8BE5\u6570\u636E\u5B9E\u4F8B\u4EFB\u4F55\u4FE1\u606F</span>\n</div>\n<ng-container *ngIf=\"sections.length > 0\">\n <dx-accordion [collapsible]=\"true\" [multiple]=\"true\" [deferRendering]=\"false\" [dataSource]=\"sections\"\n [selectedItems]=\"sections\" [focusStateEnabled]=\"false\">\n <div *dxTemplate=\"let section of 'title'\" class=\"section-title\">\n <div class=\"section-title-name\">{{ section.name }}</div>\n </div>\n <div *dxTemplate=\"let section of 'item'\">\n <rs-form [tenant]=\"tenant\" [className]=\"className\" [oid]=\"oid\" [template]=\"section.formTemplate\" [params]=\"params\"\n [tabViewContainerRef]=\"tabViewContainerRef\" [readonly]=\"true\"></rs-form>\n </div>\n </dx-accordion>\n</ng-container>\n", styles: [":host{flex:1;padding:24px;display:flex;flex-flow:column nowrap}:host div.empty{flex:1;padding:16px;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div.empty span{text-align:center;-webkit-user-select:none;user-select:none}:host .section-title{border-bottom:1px solid rgb(221,221,221)}:host .section-title .section-title-name{height:24px;font-size:14px;font-weight:700;padding:4px 8px;display:flex;flex-flow:column nowrap;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$
|
|
2714
|
+
DataDetailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DataDetailComponent, selector: "coast-data-detail", providers: [DataDetailService], ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\n [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<div *ngIf=\"!loading && sections.length === 0\" class=\"empty\">\n <span>\u60A8\u65E0\u6743\u67E5\u770B\u8BE5\u6570\u636E\u5B9E\u4F8B\u4EFB\u4F55\u4FE1\u606F</span>\n</div>\n<ng-container *ngIf=\"sections.length > 0\">\n <dx-accordion [collapsible]=\"true\" [multiple]=\"true\" [deferRendering]=\"false\" [dataSource]=\"sections\"\n [selectedItems]=\"sections\" [focusStateEnabled]=\"false\">\n <div *dxTemplate=\"let section of 'title'\" class=\"section-title\">\n <div class=\"section-title-name\">{{ section.name }}</div>\n </div>\n <div *dxTemplate=\"let section of 'item'\">\n <rs-form [tenant]=\"tenant\" [className]=\"className\" [oid]=\"oid\" [template]=\"section.formTemplate\" [params]=\"params\"\n [tabViewContainerRef]=\"tabViewContainerRef\" [readonly]=\"true\"></rs-form>\n </div>\n </dx-accordion>\n</ng-container>\n", styles: [":host{flex:1;padding:24px;display:flex;flex-flow:column nowrap}:host div.empty{flex:1;padding:16px;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div.empty span{text-align:center;-webkit-user-select:none;user-select:none}:host .section-title{border-bottom:1px solid rgb(221,221,221)}:host .section-title .section-title-name{height:24px;font-size:14px;font-weight:700;padding:4px 8px;display:flex;flex-flow:column nowrap;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.DxAccordionComponent, selector: "dx-accordion", inputs: ["accessKey", "activeStateEnabled", "animationDuration", "collapsible", "dataSource", "deferRendering", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "itemHoldTimeout", "items", "itemTemplate", "itemTitleTemplate", "keyExpr", "multiple", "noDataText", "repaintChangesOnly", "rtlEnabled", "selectedIndex", "selectedItem", "selectedItemKeys", "selectedItems", "tabIndex", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onItemClick", "onItemContextMenu", "onItemHold", "onItemRendered", "onItemTitleClick", "onOptionChanged", "onSelectionChanged", "accessKeyChange", "activeStateEnabledChange", "animationDurationChange", "collapsibleChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "itemHoldTimeoutChange", "itemsChange", "itemTemplateChange", "itemTitleTemplateChange", "keyExprChange", "multipleChange", "noDataTextChange", "repaintChangesOnlyChange", "rtlEnabledChange", "selectedIndexChange", "selectedItemChange", "selectedItemKeysChange", "selectedItemsChange", "tabIndexChange", "visibleChange", "widthChange"] }, { kind: "directive", type: i2$2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i6.DxoPositionComponent, selector: "dxo-position", inputs: ["at", "boundary", "boundaryOffset", "collision", "my", "of", "offset"] }, { kind: "component", type: i6$1.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: FormComponent, selector: "rs-form", inputs: ["tenant", "className", "oid", "copyOid", "template", "extraAttrMap", "opener", "params", "tabViewContainerRef", "onlyFrontEnd", "model", "readonly"], outputs: ["onDataLoaded", "submitCallback"] }] });
|
|
2791
2715
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataDetailComponent, decorators: [{
|
|
2792
2716
|
type: Component,
|
|
2793
2717
|
args: [{ selector: 'coast-data-detail', providers: [DataDetailService], template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\n [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<div *ngIf=\"!loading && sections.length === 0\" class=\"empty\">\n <span>\u60A8\u65E0\u6743\u67E5\u770B\u8BE5\u6570\u636E\u5B9E\u4F8B\u4EFB\u4F55\u4FE1\u606F</span>\n</div>\n<ng-container *ngIf=\"sections.length > 0\">\n <dx-accordion [collapsible]=\"true\" [multiple]=\"true\" [deferRendering]=\"false\" [dataSource]=\"sections\"\n [selectedItems]=\"sections\" [focusStateEnabled]=\"false\">\n <div *dxTemplate=\"let section of 'title'\" class=\"section-title\">\n <div class=\"section-title-name\">{{ section.name }}</div>\n </div>\n <div *dxTemplate=\"let section of 'item'\">\n <rs-form [tenant]=\"tenant\" [className]=\"className\" [oid]=\"oid\" [template]=\"section.formTemplate\" [params]=\"params\"\n [tabViewContainerRef]=\"tabViewContainerRef\" [readonly]=\"true\"></rs-form>\n </div>\n </dx-accordion>\n</ng-container>\n", styles: [":host{flex:1;padding:24px;display:flex;flex-flow:column nowrap}:host div.empty{flex:1;padding:16px;display:flex;flex-flow:row nowrap;justify-content:center;align-items:center}:host div.empty span{text-align:center;-webkit-user-select:none;user-select:none}:host .section-title{border-bottom:1px solid rgb(221,221,221)}:host .section-title .section-title-name{height:24px;font-size:14px;font-weight:700;padding:4px 8px;display:flex;flex-flow:column nowrap;justify-content:center}\n"] }]
|
|
@@ -2928,88 +2852,49 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
2928
2852
|
args: ['drawerFormContentTemplate', { static: true }]
|
|
2929
2853
|
}] } });
|
|
2930
2854
|
|
|
2931
|
-
class
|
|
2932
|
-
|
|
2933
|
-
this.service = service;
|
|
2934
|
-
this.domSanitizer = domSanitizer;
|
|
2935
|
-
}
|
|
2936
|
-
ngOnInit() {
|
|
2937
|
-
const needRemoteDisplayName = Array.isArray(this.cellInfo.value);
|
|
2938
|
-
if (!needRemoteDisplayName) {
|
|
2939
|
-
this.displayName = this.cellInfo.value;
|
|
2940
|
-
}
|
|
2941
|
-
this.service.getUnitInfo(this.uid).subscribe(response => {
|
|
2942
|
-
this.displayName = response.displayName;
|
|
2943
|
-
const unitInfo = response.unitInfo;
|
|
2944
|
-
let content = '<table>';
|
|
2945
|
-
for (const item of unitInfo) {
|
|
2946
|
-
content += `
|
|
2947
|
-
<tr>
|
|
2948
|
-
<td style="text-align: right;">${item.caption}:</td>
|
|
2949
|
-
<td style="text-align: left;">${item.value}</td>
|
|
2950
|
-
</tr>
|
|
2951
|
-
`;
|
|
2952
|
-
}
|
|
2953
|
-
content += '</table>';
|
|
2954
|
-
this.content = this.domSanitizer.bypassSecurityTrustHtml(content);
|
|
2955
|
-
// 重绘表格宽高
|
|
2956
|
-
setTimeout(() => {
|
|
2957
|
-
this.service.cellTemplateLoaded$.emit();
|
|
2958
|
-
});
|
|
2959
|
-
});
|
|
2960
|
-
}
|
|
2961
|
-
}
|
|
2962
|
-
UnitInfoTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UnitInfoTemplateComponent, deps: [{ token: DataGridService }, { token: i2$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
2963
|
-
UnitInfoTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: UnitInfoTemplateComponent, selector: "rs-unit-info-template", inputs: { uid: "uid", cellInfo: "cellInfo" }, ngImport: i0, template: "<dx-button #textDiv type=\"default\" stylingMode=\"text\" (onClick)=\"$event.event?.stopPropagation()\">\n {{ displayName }}\n <dx-tooltip [target]=\"textDiv.instance.element()\"\n [position]=\"'top'\"\n [showEvent]=\"'click'\">\n <div *dxTemplate=\"let data of 'content'\">\n <div [innerHTML]=\"content\"></div>\n </div>\n </dx-tooltip>\n</dx-button>\n<br/>\n", styles: [""], dependencies: [{ kind: "directive", type: i3$1.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.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: 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"] }] });
|
|
2964
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UnitInfoTemplateComponent, decorators: [{
|
|
2965
|
-
type: Component,
|
|
2966
|
-
args: [{ selector: 'rs-unit-info-template', template: "<dx-button #textDiv type=\"default\" stylingMode=\"text\" (onClick)=\"$event.event?.stopPropagation()\">\n {{ displayName }}\n <dx-tooltip [target]=\"textDiv.instance.element()\"\n [position]=\"'top'\"\n [showEvent]=\"'click'\">\n <div *dxTemplate=\"let data of 'content'\">\n <div [innerHTML]=\"content\"></div>\n </div>\n </dx-tooltip>\n</dx-button>\n<br/>\n" }]
|
|
2967
|
-
}], ctorParameters: function () { return [{ type: DataGridService }, { type: i2$2.DomSanitizer }]; }, propDecorators: { uid: [{
|
|
2968
|
-
type: Input
|
|
2969
|
-
}], cellInfo: [{
|
|
2970
|
-
type: Input
|
|
2971
|
-
}] } });
|
|
2855
|
+
class CellComponentBase extends ComponentBase {
|
|
2856
|
+
}
|
|
2972
2857
|
|
|
2973
|
-
class
|
|
2974
|
-
constructor(service
|
|
2858
|
+
class CellComponentTemplateComponent {
|
|
2859
|
+
constructor(service) {
|
|
2975
2860
|
this.service = service;
|
|
2976
|
-
this.domSanitizer = domSanitizer;
|
|
2977
2861
|
}
|
|
2978
2862
|
ngOnInit() {
|
|
2979
|
-
const
|
|
2980
|
-
|
|
2981
|
-
|
|
2863
|
+
const fieldConfig = this.cellInfo.column.config;
|
|
2864
|
+
const cellComponentConfig = this.cellInfo.column.viewConfig.componentConfig;
|
|
2865
|
+
this.cellComponentRef.clear();
|
|
2866
|
+
const plugin = PluginFactory.get(this.cellInfo.column.viewConfig.component);
|
|
2867
|
+
if (!plugin) {
|
|
2868
|
+
this.cellComponentRef.createComponent(PluginNotFoundComponent);
|
|
2869
|
+
return;
|
|
2982
2870
|
}
|
|
2983
|
-
this.
|
|
2984
|
-
|
|
2985
|
-
|
|
2986
|
-
|
|
2987
|
-
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
|
|
2994
|
-
|
|
2995
|
-
|
|
2996
|
-
|
|
2997
|
-
|
|
2998
|
-
setTimeout(() => {
|
|
2999
|
-
this.service.cellTemplateLoaded$.emit();
|
|
3000
|
-
});
|
|
3001
|
-
});
|
|
2871
|
+
const componentRef = this.cellComponentRef.createComponent(plugin.component);
|
|
2872
|
+
const instance = componentRef.instance;
|
|
2873
|
+
Object.assign(instance, cellComponentConfig);
|
|
2874
|
+
if (!(instance instanceof CellComponentBase)) {
|
|
2875
|
+
console.error('cell component need extending CellComponentBase, name: ' + plugin.name);
|
|
2876
|
+
notify_error('加载单元格组件配置失败:' + plugin.name);
|
|
2877
|
+
return;
|
|
2878
|
+
}
|
|
2879
|
+
instance.field = this.cellInfo.column.dataField;
|
|
2880
|
+
instance.fieldConfig = fieldConfig;
|
|
2881
|
+
instance.rowData = this.cellInfo.data;
|
|
2882
|
+
instance.columnLookup = this.cellInfo.column.lookup;
|
|
2883
|
+
instance.value = this.cellInfo.value;
|
|
2884
|
+
instance.displayValue = this.cellInfo.displayValue;
|
|
2885
|
+
instance.loaded$ = this.service.cellTemplateLoaded$;
|
|
3002
2886
|
}
|
|
3003
2887
|
}
|
|
3004
|
-
|
|
3005
|
-
|
|
3006
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type:
|
|
2888
|
+
CellComponentTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CellComponentTemplateComponent, deps: [{ token: DataGridService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2889
|
+
CellComponentTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CellComponentTemplateComponent, selector: "rs-cell-component-template", inputs: { cellInfo: "cellInfo" }, viewQueries: [{ propertyName: "cellComponentRef", first: true, predicate: ["cellComponent"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #cellComponent></ng-container>\n", styles: [""] });
|
|
2890
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CellComponentTemplateComponent, decorators: [{
|
|
3007
2891
|
type: Component,
|
|
3008
|
-
args: [{ selector: 'rs-
|
|
3009
|
-
}], ctorParameters: function () { return [{ type: DataGridService }
|
|
3010
|
-
type: Input
|
|
3011
|
-
}], cellInfo: [{
|
|
2892
|
+
args: [{ selector: 'rs-cell-component-template', template: "<ng-container #cellComponent></ng-container>\n" }]
|
|
2893
|
+
}], ctorParameters: function () { return [{ type: DataGridService }]; }, propDecorators: { cellInfo: [{
|
|
3012
2894
|
type: Input
|
|
2895
|
+
}], cellComponentRef: [{
|
|
2896
|
+
type: ViewChild,
|
|
2897
|
+
args: ['cellComponent', { static: true, read: ViewContainerRef }]
|
|
3013
2898
|
}] } });
|
|
3014
2899
|
|
|
3015
2900
|
class DataGridComponent {
|
|
@@ -3052,22 +2937,20 @@ class DataGridComponent {
|
|
|
3052
2937
|
}
|
|
3053
2938
|
if (this.instanceLinkType === 'tab' || this.instanceLinkType === 'drawer') {
|
|
3054
2939
|
columns.unshift({
|
|
3055
|
-
fixed: true,
|
|
3056
2940
|
caption: '详情',
|
|
2941
|
+
fixed: true,
|
|
3057
2942
|
width: 48,
|
|
3058
|
-
cellTemplate: 'instanceLinkTemplate',
|
|
3059
2943
|
alignment: 'center',
|
|
3060
|
-
|
|
2944
|
+
cellTemplate: 'instanceLinkTemplate'
|
|
3061
2945
|
});
|
|
3062
2946
|
}
|
|
3063
2947
|
if (this.showRowNum) {
|
|
3064
2948
|
columns.unshift({
|
|
3065
|
-
fixed: true,
|
|
3066
2949
|
caption: '行号',
|
|
2950
|
+
fixed: true,
|
|
3067
2951
|
width: 48,
|
|
3068
|
-
cellTemplate: 'rowIndexTemplate',
|
|
3069
2952
|
alignment: 'center',
|
|
3070
|
-
|
|
2953
|
+
cellTemplate: 'rowIndexTemplate'
|
|
3071
2954
|
});
|
|
3072
2955
|
}
|
|
3073
2956
|
this.columns = columns;
|
|
@@ -3081,35 +2964,6 @@ class DataGridComponent {
|
|
|
3081
2964
|
this.dataSource = this.factory.makeDataGridDataSource(this.tenant, this.className, this.view, this.filter, this.keyExpr, this.dataGridName);
|
|
3082
2965
|
}
|
|
3083
2966
|
}
|
|
3084
|
-
convertMultipleValueCellText(cellInfo) {
|
|
3085
|
-
if (!cellInfo.value) {
|
|
3086
|
-
return;
|
|
3087
|
-
}
|
|
3088
|
-
if (Array.isArray(cellInfo.value)) {
|
|
3089
|
-
if (cellInfo.column.lookup) {
|
|
3090
|
-
return cellInfo.value.map((item) => cellInfo.column.lookup.calculateCellValue(item)).join('<br />');
|
|
3091
|
-
}
|
|
3092
|
-
return cellInfo.value.join('<br />');
|
|
3093
|
-
}
|
|
3094
|
-
if (cellInfo.column.lookup) {
|
|
3095
|
-
return cellInfo.column.lookup.calculateCellValue(cellInfo.value);
|
|
3096
|
-
}
|
|
3097
|
-
return cellInfo.value;
|
|
3098
|
-
}
|
|
3099
|
-
getOriginalValue(cellInfo, key) {
|
|
3100
|
-
const config = cellInfo.column[key];
|
|
3101
|
-
if (config) {
|
|
3102
|
-
const value = cellInfo.data[config.field];
|
|
3103
|
-
if (value) {
|
|
3104
|
-
if (Array.isArray(value)) {
|
|
3105
|
-
return value;
|
|
3106
|
-
}
|
|
3107
|
-
return [value];
|
|
3108
|
-
}
|
|
3109
|
-
return [];
|
|
3110
|
-
}
|
|
3111
|
-
return cellInfo.data[key];
|
|
3112
|
-
}
|
|
3113
2967
|
getSelectedRowKeys() {
|
|
3114
2968
|
return this.dxDataGrid.instance.getSelectedRowKeys();
|
|
3115
2969
|
}
|
|
@@ -3134,10 +2988,10 @@ class DataGridComponent {
|
|
|
3134
2988
|
}
|
|
3135
2989
|
}
|
|
3136
2990
|
DataGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataGridComponent, deps: [{ token: DataGridFactory }, { token: DataGridService }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
3137
|
-
DataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DataGridComponent, selector: "rs-data-grid", inputs: { tenant: "tenant", className: "className", view: "view", filter: "filter", customColumnFn: "customColumnFn", keyExpr: "keyExpr", dataGridName: "dataGridName", height: "height", onlyFrontEnd: "onlyFrontEnd", disablePage: "disablePage", dataSource: "dataSource", selectionMode: "selectionMode", selectedRowKeys: "selectedRowKeys", showRowNum: "showRowNum", instanceLinkType: "instanceLinkType", drawerInstanceLinkViewContainerRef: "drawerInstanceLinkViewContainerRef", drawerInstanceLinkSize: "drawerInstanceLinkSize", drawerInstanceLinkFormTemplate: "drawerInstanceLinkFormTemplate" }, outputs: { selectedRowKeysChange: "selectedRowKeysChange", onCellPrepared: "onCellPrepared", onContentReady: "onContentReady", onEditorPreparing: "onEditorPreparing", onRowClick: "onRowClick", onRowDblClick: "onRowDblClick", onSelectionChanged: "onSelectionChanged" }, providers: [DataGridService], queries: [{ propertyName: "rowButtonsTemplate", first: true, predicate: RowButtonsTemplateDirective, descendants: true }, { propertyName: "customTemplate", first: true, predicate: CustomTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "dxDataGrid", first: true, predicate: DxDataGridComponent, descendants: true, static: true }], ngImport: i0, template: "<dx-data-grid [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [showColumnLines]=\"true\"\r\n [hoverStateEnabled]=\"true\"\r\n [rowAlternationEnabled]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [allowColumnResizing]=\"true\"\r\n columnResizingMode=\"widget\"\r\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\r\n [syncLookupFilterValues]=\"false\"\r\n [dataSource]=\"dataSource\"\r\n [columns]=\"columns\"\r\n [height]=\"height\"\r\n [keyExpr]=\"keyExpr\"\r\n [selectedRowKeys]=\"selectedRowKeys\"\r\n (selectedRowKeysChange)=\"selectedRowKeysChange.emit($event)\"\r\n (onCellPrepared)=\"onCellPrepared.emit($event)\"\r\n (onContentReady)=\"onContentReady.emit($event)\"\r\n (onEditorPreparing)=\"onDxDataGridEditorPreparing($event)\"\r\n (onRowClick)=\"onRowClick.emit($event)\"\r\n (onRowDblClick)=\"onRowDblClick.emit($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event)\">\r\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\r\n <dxo-selection [mode]=\"selectionMode\" selectAllMode=\"page\" showCheckBoxesMode=\"always\"></dxo-selection>\r\n <dxo-header-filter [visible]=\"!onlyFrontEnd\">\r\n <dxo-search [enabled]=\"true\"></dxo-search>\r\n <dxo-texts [ok]=\"'\u786E\u5B9A'\"></dxo-texts>\r\n </dxo-header-filter>\r\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\r\n <dxo-remote-operations [filtering]=\"!onlyFrontEnd\"\r\n [sorting]=\"!onlyFrontEnd\"\r\n [paging]=\"!onlyFrontEnd\">\r\n </dxo-remote-operations>\r\n <dxo-paging [enabled]=\"!disablePage\" [pageSize]=\"15\"></dxo-paging>\r\n <dxo-pager [visible]=\"!disablePage\"\r\n [showInfo]=\"true\"\r\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\r\n [showPageSizeSelector]=\"true\"\r\n [allowedPageSizes]=\"[15, 30, 50]\"\r\n ></dxo-pager>\r\n <dxo-scrolling showScrollbar=\"always\"></dxo-scrolling>\r\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\r\n {{ cellInfo.rowIndex + 1 }}\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'instanceLinkTemplate'\">\r\n <rs-instance-link-template [tenant]=\"tenant\"\r\n [className]=\"className\"\r\n [oid]=\"cellInfo.data.oid\"\r\n [instanceLinkType]=\"instanceLinkType\"\r\n [drawerViewContainerRef]=\"drawerInstanceLinkViewContainerRef\"\r\n [drawerSize]=\"drawerInstanceLinkSize\"\r\n [drawerFormTemplate]=\"drawerInstanceLinkFormTemplate\">\r\n </rs-instance-link-template>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'rowButtonsTemplate'\">\r\n <ng-container [ngTemplateOutlet]=\"rowButtonsTemplate.templateRef\"\r\n [ngTemplateOutletContext]=\"{$implicit: cellInfo, cellTemplateLoaded$: service.cellTemplateLoaded$}\"></ng-container>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'multipleValueCellTemplate'\">\r\n <div [innerHTML]=\"convertMultipleValueCellText(cellInfo)\"></div>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'textCellTemplate'\">\r\n <div #textDiv style=\"text-overflow: ellipsis; overflow: hidden; cursor: pointer;\">{{ cellInfo.value }}</div>\r\n <dx-tooltip [target]=\"textDiv\"\r\n [position]=\"'top'\"\r\n [showEvent]=\"'click'\">\r\n <div *dxTemplate=\"let data of 'content'\">\r\n <p style=\"text-align: left; white-space: normal;\" [innerText]=\"cellInfo.value\"></p>\r\n </div>\r\n </dx-tooltip>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'fileCellTemplate'\">\r\n <ng-container *ngFor=\"let file of cellInfo.value\">\r\n <rs-file-cell-template [file]=\"file\"></rs-file-cell-template>\r\n </ng-container>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'userCellTemplate'\">\r\n <ng-container *ngFor=\"let user of getOriginalValue(cellInfo, 'userInfo')\">\r\n <rs-user-info-template [uid]=\"user\" [cellInfo]=\"cellInfo\"></rs-user-info-template>\r\n </ng-container>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'unitCellTemplate'\">\r\n <ng-container *ngFor=\"let unit of getOriginalValue(cellInfo, 'unitInfo')\">\r\n <rs-unit-info-template [uid]=\"unit\" [cellInfo]=\"cellInfo\"></rs-unit-info-template>\r\n </ng-container>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'customTemplate'\">\r\n <ng-container [ngTemplateOutlet]=\"customTemplate.templateRef\"\r\n [ngTemplateOutletContext]=\"{$implicit: cellInfo, cellTemplateLoaded$: service.cellTemplateLoaded$}\"></ng-container>\r\n </div>\r\n</dx-data-grid>\r\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$1.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { 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: i6.DxoSearchComponent, selector: "dxo-search", inputs: ["editorOptions", "enabled", "timeout", "mode", "searchExpr"] }, { kind: "component", type: i6.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "recursive", "selectByClick", "deferred", "mode", "selectAllMode", "showCheckBoxesMode"] }, { kind: "component", type: i6.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: i6.DxoHeaderFilterComponent, selector: "dxo-header-filter", inputs: ["allowSearch", "allowSelectAll", "dataSource", "groupInterval", "height", "search", "searchMode", "width", "searchTimeout", "texts", "visible", "showRelevantValues"] }, { kind: "component", type: i6.DxoFilterRowComponent, selector: "dxo-filter-row", inputs: ["applyFilter", "applyFilterText", "betweenEndText", "betweenStartText", "operationDescriptions", "resetOperationText", "showAllText", "showOperationChooser", "visible"] }, { kind: "component", type: i6.DxoPagerComponent, selector: "dxo-pager", inputs: ["allowedPageSizes", "displayMode", "infoText", "label", "showInfo", "showNavigationButtons", "showPageSizeSelector", "visible"] }, { kind: "component", type: i6.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i6.DxoRemoteOperationsComponent, selector: "dxo-remote-operations", inputs: ["filtering", "grouping", "groupPaging", "paging", "sorting", "summary"] }, { kind: "component", type: i6.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i6.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: ["file"] }, { kind: "component", type: InstanceLinkTemplateComponent, selector: "rs-instance-link-template", inputs: ["tenant", "className", "oid", "instanceLinkType", "drawerViewContainerRef", "drawerSize", "drawerFormTemplate"] }, { kind: "component", type: UnitInfoTemplateComponent, selector: "rs-unit-info-template", inputs: ["uid", "cellInfo"] }, { kind: "component", type: UserInfoTemplateComponent, selector: "rs-user-info-template", inputs: ["uid", "cellInfo"] }] });
|
|
2991
|
+
DataGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DataGridComponent, selector: "rs-data-grid", inputs: { tenant: "tenant", className: "className", view: "view", filter: "filter", customColumnFn: "customColumnFn", keyExpr: "keyExpr", dataGridName: "dataGridName", height: "height", onlyFrontEnd: "onlyFrontEnd", disablePage: "disablePage", dataSource: "dataSource", selectionMode: "selectionMode", selectedRowKeys: "selectedRowKeys", showRowNum: "showRowNum", instanceLinkType: "instanceLinkType", drawerInstanceLinkViewContainerRef: "drawerInstanceLinkViewContainerRef", drawerInstanceLinkSize: "drawerInstanceLinkSize", drawerInstanceLinkFormTemplate: "drawerInstanceLinkFormTemplate" }, outputs: { selectedRowKeysChange: "selectedRowKeysChange", onCellPrepared: "onCellPrepared", onContentReady: "onContentReady", onEditorPreparing: "onEditorPreparing", onRowClick: "onRowClick", onRowDblClick: "onRowDblClick", onSelectionChanged: "onSelectionChanged" }, providers: [DataGridService], queries: [{ propertyName: "rowButtonsTemplate", first: true, predicate: RowButtonsTemplateDirective, descendants: true }, { propertyName: "customTemplate", first: true, predicate: CustomTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "dxDataGrid", first: true, predicate: DxDataGridComponent, descendants: true, static: true }], ngImport: i0, template: "<dx-data-grid [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [showColumnLines]=\"true\"\r\n [hoverStateEnabled]=\"true\"\r\n [rowAlternationEnabled]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [allowColumnResizing]=\"true\"\r\n columnResizingMode=\"widget\"\r\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\r\n [syncLookupFilterValues]=\"false\"\r\n [dataSource]=\"dataSource\"\r\n [columns]=\"columns\"\r\n [height]=\"height\"\r\n [keyExpr]=\"keyExpr\"\r\n [selectedRowKeys]=\"selectedRowKeys\"\r\n (selectedRowKeysChange)=\"selectedRowKeysChange.emit($event)\"\r\n (onCellPrepared)=\"onCellPrepared.emit($event)\"\r\n (onContentReady)=\"onContentReady.emit($event)\"\r\n (onEditorPreparing)=\"onDxDataGridEditorPreparing($event)\"\r\n (onRowClick)=\"onRowClick.emit($event)\"\r\n (onRowDblClick)=\"onRowDblClick.emit($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event)\">\r\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\r\n <dxo-selection [mode]=\"selectionMode\" selectAllMode=\"page\" showCheckBoxesMode=\"always\"></dxo-selection>\r\n <dxo-header-filter [visible]=\"!onlyFrontEnd\">\r\n <dxo-search [enabled]=\"true\"></dxo-search>\r\n <dxo-texts [ok]=\"'\u786E\u5B9A'\"></dxo-texts>\r\n </dxo-header-filter>\r\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\r\n <dxo-remote-operations [filtering]=\"!onlyFrontEnd\"\r\n [sorting]=\"!onlyFrontEnd\"\r\n [paging]=\"!onlyFrontEnd\">\r\n </dxo-remote-operations>\r\n <dxo-paging [enabled]=\"!disablePage\" [pageSize]=\"15\"></dxo-paging>\r\n <dxo-pager [visible]=\"!disablePage\"\r\n [showInfo]=\"true\"\r\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\r\n [showPageSizeSelector]=\"true\"\r\n [allowedPageSizes]=\"[15, 30, 50]\"\r\n ></dxo-pager>\r\n <dxo-scrolling showScrollbar=\"always\"></dxo-scrolling>\r\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\r\n {{ cellInfo.rowIndex + 1 }}\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'instanceLinkTemplate'\">\r\n <rs-instance-link-template [tenant]=\"tenant\"\r\n [className]=\"className\"\r\n [oid]=\"cellInfo.data.oid\"\r\n [instanceLinkType]=\"instanceLinkType\"\r\n [drawerViewContainerRef]=\"drawerInstanceLinkViewContainerRef\"\r\n [drawerSize]=\"drawerInstanceLinkSize\"\r\n [drawerFormTemplate]=\"drawerInstanceLinkFormTemplate\">\r\n </rs-instance-link-template>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'cellComponentTemplate'\">\r\n <rs-cell-component-template [cellInfo]=\"cellInfo\"></rs-cell-component-template>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'rowButtonsTemplate'\">\r\n <ng-container [ngTemplateOutlet]=\"rowButtonsTemplate.templateRef\"\r\n [ngTemplateOutletContext]=\"{$implicit: cellInfo, cellTemplateLoaded$: service.cellTemplateLoaded$}\"></ng-container>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'customTemplate'\">\r\n <ng-container [ngTemplateOutlet]=\"customTemplate.templateRef\"\r\n [ngTemplateOutletContext]=\"{$implicit: cellInfo, cellTemplateLoaded$: service.cellTemplateLoaded$}\"></ng-container>\r\n </div>\r\n</dx-data-grid>\r\n", styles: [":host{display:flex;flex-flow:column nowrap}:host dx-data-grid{flex:auto;height:0}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i5.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: i6.DxoSearchComponent, selector: "dxo-search", inputs: ["editorOptions", "enabled", "timeout", "mode", "searchExpr"] }, { kind: "component", type: i6.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "recursive", "selectByClick", "deferred", "mode", "selectAllMode", "showCheckBoxesMode"] }, { kind: "component", type: i6.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: i6.DxoHeaderFilterComponent, selector: "dxo-header-filter", inputs: ["allowSearch", "allowSelectAll", "dataSource", "groupInterval", "height", "search", "searchMode", "width", "searchTimeout", "texts", "visible", "showRelevantValues"] }, { kind: "component", type: i6.DxoFilterRowComponent, selector: "dxo-filter-row", inputs: ["applyFilter", "applyFilterText", "betweenEndText", "betweenStartText", "operationDescriptions", "resetOperationText", "showAllText", "showOperationChooser", "visible"] }, { kind: "component", type: i6.DxoPagerComponent, selector: "dxo-pager", inputs: ["allowedPageSizes", "displayMode", "infoText", "label", "showInfo", "showNavigationButtons", "showPageSizeSelector", "visible"] }, { kind: "component", type: i6.DxoPagingComponent, selector: "dxo-paging", inputs: ["enabled", "pageIndex", "pageSize"], outputs: ["pageIndexChange", "pageSizeChange"] }, { kind: "component", type: i6.DxoRemoteOperationsComponent, selector: "dxo-remote-operations", inputs: ["filtering", "grouping", "groupPaging", "paging", "sorting", "summary"] }, { kind: "component", type: i6.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i6.DxoSortingComponent, selector: "dxo-sorting", inputs: ["ascendingText", "clearText", "descendingText", "mode", "showSortIndexes"] }, { kind: "component", type: InstanceLinkTemplateComponent, selector: "rs-instance-link-template", inputs: ["tenant", "className", "oid", "instanceLinkType", "drawerViewContainerRef", "drawerSize", "drawerFormTemplate"] }, { kind: "component", type: CellComponentTemplateComponent, selector: "rs-cell-component-template", inputs: ["cellInfo"] }] });
|
|
3138
2992
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataGridComponent, decorators: [{
|
|
3139
2993
|
type: Component,
|
|
3140
|
-
args: [{ selector: 'rs-data-grid', providers: [DataGridService], template: "<dx-data-grid [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [showColumnLines]=\"true\"\r\n [hoverStateEnabled]=\"true\"\r\n [rowAlternationEnabled]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [allowColumnResizing]=\"true\"\r\n columnResizingMode=\"widget\"\r\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\r\n [syncLookupFilterValues]=\"false\"\r\n [dataSource]=\"dataSource\"\r\n [columns]=\"columns\"\r\n [height]=\"height\"\r\n [keyExpr]=\"keyExpr\"\r\n [selectedRowKeys]=\"selectedRowKeys\"\r\n (selectedRowKeysChange)=\"selectedRowKeysChange.emit($event)\"\r\n (onCellPrepared)=\"onCellPrepared.emit($event)\"\r\n (onContentReady)=\"onContentReady.emit($event)\"\r\n (onEditorPreparing)=\"onDxDataGridEditorPreparing($event)\"\r\n (onRowClick)=\"onRowClick.emit($event)\"\r\n (onRowDblClick)=\"onRowDblClick.emit($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event)\">\r\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\r\n <dxo-selection [mode]=\"selectionMode\" selectAllMode=\"page\" showCheckBoxesMode=\"always\"></dxo-selection>\r\n <dxo-header-filter [visible]=\"!onlyFrontEnd\">\r\n <dxo-search [enabled]=\"true\"></dxo-search>\r\n <dxo-texts [ok]=\"'\u786E\u5B9A'\"></dxo-texts>\r\n </dxo-header-filter>\r\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\r\n <dxo-remote-operations [filtering]=\"!onlyFrontEnd\"\r\n [sorting]=\"!onlyFrontEnd\"\r\n [paging]=\"!onlyFrontEnd\">\r\n </dxo-remote-operations>\r\n <dxo-paging [enabled]=\"!disablePage\" [pageSize]=\"15\"></dxo-paging>\r\n <dxo-pager [visible]=\"!disablePage\"\r\n [showInfo]=\"true\"\r\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\r\n [showPageSizeSelector]=\"true\"\r\n [allowedPageSizes]=\"[15, 30, 50]\"\r\n ></dxo-pager>\r\n <dxo-scrolling showScrollbar=\"always\"></dxo-scrolling>\r\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\r\n {{ cellInfo.rowIndex + 1 }}\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'instanceLinkTemplate'\">\r\n <rs-instance-link-template [tenant]=\"tenant\"\r\n [className]=\"className\"\r\n [oid]=\"cellInfo.data.oid\"\r\n [instanceLinkType]=\"instanceLinkType\"\r\n [drawerViewContainerRef]=\"drawerInstanceLinkViewContainerRef\"\r\n [drawerSize]=\"drawerInstanceLinkSize\"\r\n [drawerFormTemplate]=\"drawerInstanceLinkFormTemplate\">\r\n </rs-instance-link-template>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of '
|
|
2994
|
+
args: [{ selector: 'rs-data-grid', providers: [DataGridService], template: "<dx-data-grid [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [showColumnLines]=\"true\"\r\n [hoverStateEnabled]=\"true\"\r\n [rowAlternationEnabled]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [allowColumnResizing]=\"true\"\r\n columnResizingMode=\"widget\"\r\n dateSerializationFormat=\"yyyy/MM/dd HH:mm:ss\"\r\n [syncLookupFilterValues]=\"false\"\r\n [dataSource]=\"dataSource\"\r\n [columns]=\"columns\"\r\n [height]=\"height\"\r\n [keyExpr]=\"keyExpr\"\r\n [selectedRowKeys]=\"selectedRowKeys\"\r\n (selectedRowKeysChange)=\"selectedRowKeysChange.emit($event)\"\r\n (onCellPrepared)=\"onCellPrepared.emit($event)\"\r\n (onContentReady)=\"onContentReady.emit($event)\"\r\n (onEditorPreparing)=\"onDxDataGridEditorPreparing($event)\"\r\n (onRowClick)=\"onRowClick.emit($event)\"\r\n (onRowDblClick)=\"onRowDblClick.emit($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event)\">\r\n <dxo-sorting mode=\"multiple\"></dxo-sorting>\r\n <dxo-selection [mode]=\"selectionMode\" selectAllMode=\"page\" showCheckBoxesMode=\"always\"></dxo-selection>\r\n <dxo-header-filter [visible]=\"!onlyFrontEnd\">\r\n <dxo-search [enabled]=\"true\"></dxo-search>\r\n <dxo-texts [ok]=\"'\u786E\u5B9A'\"></dxo-texts>\r\n </dxo-header-filter>\r\n <dxo-filter-row [visible]=\"true\"></dxo-filter-row>\r\n <dxo-remote-operations [filtering]=\"!onlyFrontEnd\"\r\n [sorting]=\"!onlyFrontEnd\"\r\n [paging]=\"!onlyFrontEnd\">\r\n </dxo-remote-operations>\r\n <dxo-paging [enabled]=\"!disablePage\" [pageSize]=\"15\"></dxo-paging>\r\n <dxo-pager [visible]=\"!disablePage\"\r\n [showInfo]=\"true\"\r\n infoText=\"\u7B2C{0}\u9875\uFF0C\u5171{1}\u9875\uFF08\u5171{2}\u4E2A\u9879\u76EE\uFF09\"\r\n [showPageSizeSelector]=\"true\"\r\n [allowedPageSizes]=\"[15, 30, 50]\"\r\n ></dxo-pager>\r\n <dxo-scrolling showScrollbar=\"always\"></dxo-scrolling>\r\n <div *dxTemplate=\"let cellInfo of 'rowIndexTemplate'\">\r\n {{ cellInfo.rowIndex + 1 }}\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'instanceLinkTemplate'\">\r\n <rs-instance-link-template [tenant]=\"tenant\"\r\n [className]=\"className\"\r\n [oid]=\"cellInfo.data.oid\"\r\n [instanceLinkType]=\"instanceLinkType\"\r\n [drawerViewContainerRef]=\"drawerInstanceLinkViewContainerRef\"\r\n [drawerSize]=\"drawerInstanceLinkSize\"\r\n [drawerFormTemplate]=\"drawerInstanceLinkFormTemplate\">\r\n </rs-instance-link-template>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'cellComponentTemplate'\">\r\n <rs-cell-component-template [cellInfo]=\"cellInfo\"></rs-cell-component-template>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'rowButtonsTemplate'\">\r\n <ng-container [ngTemplateOutlet]=\"rowButtonsTemplate.templateRef\"\r\n [ngTemplateOutletContext]=\"{$implicit: cellInfo, cellTemplateLoaded$: service.cellTemplateLoaded$}\"></ng-container>\r\n </div>\r\n <div *dxTemplate=\"let cellInfo of 'customTemplate'\">\r\n <ng-container [ngTemplateOutlet]=\"customTemplate.templateRef\"\r\n [ngTemplateOutletContext]=\"{$implicit: cellInfo, cellTemplateLoaded$: service.cellTemplateLoaded$}\"></ng-container>\r\n </div>\r\n</dx-data-grid>\r\n", styles: [":host{display:flex;flex-flow:column nowrap}:host dx-data-grid{flex:auto;height:0}\n"] }]
|
|
3141
2995
|
}], ctorParameters: function () { return [{ type: DataGridFactory }, { type: DataGridService }, { type: i0.ViewContainerRef }]; }, propDecorators: { tenant: [{
|
|
3142
2996
|
type: Input
|
|
3143
2997
|
}], className: [{
|
|
@@ -3312,7 +3166,7 @@ class FieldSelectorComponent {
|
|
|
3312
3166
|
}
|
|
3313
3167
|
}
|
|
3314
3168
|
FieldSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FieldSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3315
|
-
FieldSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FieldSelectorComponent, selector: "rs-field-selector", inputs: { fieldTree: "fieldTree", config: "config", required: "required", label: "label", readonly: "readonly", multiple: "multiple" }, outputs: { fieldChanged: "fieldChanged" }, ngImport: i0, template: "<div class=\"dx-field\">\n <div class=\"dx-field-label\">\n <span>\u5C5E\u6027</span>\n <span class=\"required-mark\" *ngIf=\"required\"> *</span>\n </div>\n <div class=\"dx-field-value\">\n <dx-drop-down-box #fieldDropDownBox\n [dataSource]=\"fieldTree\"\n valueExpr=\"innerName\"\n fieldTemplate=\"fieldTemplate\"\n contentTemplate=\"contentTemplate\"\n [showClearButton]=\"true\"\n [dropDownOptions]=\"{maxHeight: 'none', deferRendering: false}\"\n [(value)]=\"_fields\"\n [readOnly]=\"readonly\">\n <div *dxTemplate=\"let info of 'fieldTemplate'\">\n <dx-text-box [visible]=\"false\"></dx-text-box>\n <dx-tag-box [dataSource]=\"fieldTree\"\n valueExpr=\"innerName\"\n width=\"100%\"\n [openOnFieldClick]=\"false\"\n [(value)]=\"_fields\"\n [class.coast-tag-selector]=\"true\"\n [readOnly]=\"readonly\">\n <div *dxTemplate=\"let field of 'tag'\">\n <dx-button [elementAttr]=\"{ class: 'item'}\">\n <span>{{ field.caption }}</span>\n <i *ngIf=\"multiple && !readonly\" class=\"coast-icon-close\" (click)=\"removeItem($event, field)\"></i>\n </dx-button>\n </div>\n </dx-tag-box>\n </div>\n <div *dxTemplate=\"let data of 'contentTemplate'\">\n <dx-text-box mode=\"search\" placeholder=\"\u641C\u7D22...\" valueChangeEvent=\"keyup\"\n (onValueChanged)=\"dxTreeList.instance.searchByText($event.value)\"></dx-text-box>\n <dx-tree-list #dxTreeList\n [dataSource]=\"fieldTree\"\n [filterValue]=\"['visible','=',true]\"\n keyExpr=\"innerName\"\n parentIdExpr=\"parentInnerName\"\n [(selectedRowKeys)]=\"_fields\"\n [height]=\"360\"\n [showRowLines]=\"true\"\n [showBorders]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n (onRowPrepared)=\"onRowPrepared($event)\"\n (onCellPrepared)=\"onCellPrepared($event)\"\n (onSelectionChanged)=\"onSelectionChanged($event, fieldDropDownBox)\">\n <dxi-column dataField=\"innerName\" dataType=\"string\" [visible]=\"false\"></dxi-column>\n <dxi-column dataField=\"caption\" dataType=\"string\" caption=\"\u540D\u79F0\"></dxi-column>\n <dxi-column dataField=\"visible\" dataType=\"boolean\" [visible]=\"false\"></dxi-column>\n <dxo-selection [mode]=\"multiple ? 'multiple' : 'single'\" [allowSelectAll]=\"false\"></dxo-selection>\n <dxo-scrolling showScrollbar=\"always\"></dxo-scrolling>\n </dx-tree-list>\n </div>\n <dx-validator>\n <dxi-validation-rule *ngIf=\"required\" type=\"required\" message=\"\u503C\u4E0D\u80FD\u4E3A\u7A7A\"></dxi-validation-rule>\n </dx-validator>\n </dx-drop-down-box>\n </div>\n</div>\n", styles: [":host .dx-field{margin-bottom:8px;display:flex;flex-flow:row nowrap}:host .dx-field .dx-field-label{flex:0 0 80px}:host .dx-field .dx-field-value{flex:1}:host dx-tag-box{display:block}:host dx-tag-box .item{min-height:20px}:host dx-tag-box .item .coast-icon-close{padding-left:4px}:host dx-tag-box .item .coast-icon-close:hover{color:#d9534f}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.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.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "recursive", "selectByClick", "deferred", "mode", "selectAllMode", "showCheckBoxesMode"] }, { kind: "component", type: i6.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i6.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }, { kind: "component", type: i6.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i5$2.DxDropDownBoxComponent, selector: "dx-drop-down-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "contentTemplate", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValueFormatter", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "label", "labelMode", "maxLength", "name", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showDropDownButton", "stylingMode", "tabIndex", "text", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width"], outputs: ["onChange", "onClosed", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "contentTemplateChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueFormatterChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "labelChange", "labelModeChange", "maxLengthChange", "nameChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showDropDownButtonChange", "stylingModeChange", "tabIndexChange", "textChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i6$2.DxTagBoxComponent, selector: "dx-tag-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "applyValueMode", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hideSelectedItems", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxDisplayedTags", "maxFilterQueryLength", "maxLength", "minSearchLength", "multiline", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectAllMode", "selectAllText", "selectedItems", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showMultiTagOnly", "showSelectionControls", "stylingMode", "tabIndex", "tagTemplate", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCustomItemCreating", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onMultiTagPreparing", "onOpened", "onOptionChanged", "onSelectAllValueChanged", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "applyValueModeChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hideSelectedItemsChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxDisplayedTagsChange", "maxFilterQueryLengthChange", "maxLengthChange", "minSearchLengthChange", "multilineChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectAllModeChange", "selectAllTextChange", "selectedItemsChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showMultiTagOnlyChange", "showSelectionControlsChange", "stylingModeChange", "tabIndexChange", "tagTemplateChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: i7.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "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", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8$1.DxTreeListComponent, selector: "dx-tree-list", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoExpandAll", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataSource", "dataStructure", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "expandedRowKeys", "expandNodesOnFiltering", "filterBuilder", "filterBuilderPopup", "filterMode", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "hasItemsExpr", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "itemsExpr", "keyboardNavigation", "keyExpr", "loadPanel", "noDataText", "pager", "paging", "parentIdExpr", "remoteOperations", "renderAsync", "repaintChangesOnly", "rootValue", "rowAlternationEnabled", "rowDragging", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sorting", "stateStoring", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onNodesInitialized", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoExpandAllChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataSourceChange", "dataStructureChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "expandedRowKeysChange", "expandNodesOnFilteringChange", "filterBuilderChange", "filterBuilderPopupChange", "filterModeChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "hasItemsExprChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "itemsExprChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "noDataTextChange", "pagerChange", "pagingChange", "parentIdExprChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rootValueChange", "rowAlternationEnabledChange", "rowDraggingChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortingChange", "stateStoringChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i9.DxValidatorComponent, selector: "dx-validator", inputs: ["adapter", "elementAttr", "height", "name", "validationGroup", "validationRules", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValidated", "adapterChange", "elementAttrChange", "heightChange", "nameChange", "validationGroupChange", "validationRulesChange", "widthChange"] }] });
|
|
3169
|
+
FieldSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: FieldSelectorComponent, selector: "rs-field-selector", inputs: { fieldTree: "fieldTree", config: "config", required: "required", label: "label", readonly: "readonly", multiple: "multiple" }, outputs: { fieldChanged: "fieldChanged" }, ngImport: i0, template: "<div class=\"dx-field\">\n <div class=\"dx-field-label\">\n <span>\u5C5E\u6027</span>\n <span class=\"required-mark\" *ngIf=\"required\"> *</span>\n </div>\n <div class=\"dx-field-value\">\n <dx-drop-down-box #fieldDropDownBox\n [dataSource]=\"fieldTree\"\n valueExpr=\"innerName\"\n fieldTemplate=\"fieldTemplate\"\n contentTemplate=\"contentTemplate\"\n [showClearButton]=\"true\"\n [dropDownOptions]=\"{maxHeight: 'none', deferRendering: false}\"\n [(value)]=\"_fields\"\n [readOnly]=\"readonly\">\n <div *dxTemplate=\"let info of 'fieldTemplate'\">\n <dx-text-box [visible]=\"false\"></dx-text-box>\n <dx-tag-box [dataSource]=\"fieldTree\"\n valueExpr=\"innerName\"\n width=\"100%\"\n [openOnFieldClick]=\"false\"\n [(value)]=\"_fields\"\n [class.coast-tag-selector]=\"true\"\n [readOnly]=\"readonly\">\n <div *dxTemplate=\"let field of 'tag'\">\n <dx-button [elementAttr]=\"{ class: 'item'}\">\n <span>{{ field.caption }}</span>\n <i *ngIf=\"multiple && !readonly\" class=\"coast-icon-close\" (click)=\"removeItem($event, field)\"></i>\n </dx-button>\n </div>\n </dx-tag-box>\n </div>\n <div *dxTemplate=\"let data of 'contentTemplate'\">\n <dx-text-box mode=\"search\" placeholder=\"\u641C\u7D22...\" valueChangeEvent=\"keyup\"\n (onValueChanged)=\"dxTreeList.instance.searchByText($event.value)\"></dx-text-box>\n <dx-tree-list #dxTreeList\n [dataSource]=\"fieldTree\"\n [filterValue]=\"['visible','=',true]\"\n keyExpr=\"innerName\"\n parentIdExpr=\"parentInnerName\"\n [(selectedRowKeys)]=\"_fields\"\n [height]=\"360\"\n [showRowLines]=\"true\"\n [showBorders]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n (onRowPrepared)=\"onRowPrepared($event)\"\n (onCellPrepared)=\"onCellPrepared($event)\"\n (onSelectionChanged)=\"onSelectionChanged($event, fieldDropDownBox)\">\n <dxi-column dataField=\"innerName\" dataType=\"string\" [visible]=\"false\"></dxi-column>\n <dxi-column dataField=\"caption\" dataType=\"string\" caption=\"\u540D\u79F0\"></dxi-column>\n <dxi-column dataField=\"visible\" dataType=\"boolean\" [visible]=\"false\"></dxi-column>\n <dxo-selection [mode]=\"multiple ? 'multiple' : 'single'\" [allowSelectAll]=\"false\"></dxo-selection>\n <dxo-scrolling showScrollbar=\"always\"></dxo-scrolling>\n </dx-tree-list>\n </div>\n <dx-validator>\n <dxi-validation-rule *ngIf=\"required\" type=\"required\" message=\"\u503C\u4E0D\u80FD\u4E3A\u7A7A\"></dxi-validation-rule>\n </dx-validator>\n </dx-drop-down-box>\n </div>\n</div>\n", styles: [":host .dx-field{margin-bottom:8px;display:flex;flex-flow:row nowrap}:host .dx-field .dx-field-label{flex:0 0 80px}:host .dx-field .dx-field-value{flex:1}:host dx-tag-box{display:block}:host dx-tag-box .item{min-height:20px}:host dx-tag-box .item .coast-icon-close{padding-left:4px}:host dx-tag-box .item .coast-icon-close:hover{color:#d9534f}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.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.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "recursive", "selectByClick", "deferred", "mode", "selectAllMode", "showCheckBoxesMode"] }, { kind: "component", type: i6.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i6.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }, { kind: "component", type: i6.DxoScrollingComponent, selector: "dxo-scrolling", inputs: ["columnRenderingMode", "mode", "preloadEnabled", "renderAsync", "rowRenderingMode", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative"] }, { kind: "component", type: i5$1.DxDropDownBoxComponent, selector: "dx-drop-down-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "contentTemplate", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValueFormatter", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "label", "labelMode", "maxLength", "name", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showDropDownButton", "stylingMode", "tabIndex", "text", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width"], outputs: ["onChange", "onClosed", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "contentTemplateChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueFormatterChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "labelChange", "labelModeChange", "maxLengthChange", "nameChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showDropDownButtonChange", "stylingModeChange", "tabIndexChange", "textChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i6$2.DxTagBoxComponent, selector: "dx-tag-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "applyValueMode", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hideSelectedItems", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxDisplayedTags", "maxFilterQueryLength", "maxLength", "minSearchLength", "multiline", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectAllMode", "selectAllText", "selectedItems", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showMultiTagOnly", "showSelectionControls", "stylingMode", "tabIndex", "tagTemplate", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCustomItemCreating", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onMultiTagPreparing", "onOpened", "onOptionChanged", "onSelectAllValueChanged", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "applyValueModeChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hideSelectedItemsChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxDisplayedTagsChange", "maxFilterQueryLengthChange", "maxLengthChange", "minSearchLengthChange", "multilineChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectAllModeChange", "selectAllTextChange", "selectedItemsChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showMultiTagOnlyChange", "showSelectionControlsChange", "stylingModeChange", "tabIndexChange", "tagTemplateChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "component", type: i7.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "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", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8$1.DxTreeListComponent, selector: "dx-tree-list", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoExpandAll", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataSource", "dataStructure", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "expandedRowKeys", "expandNodesOnFiltering", "filterBuilder", "filterBuilderPopup", "filterMode", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "hasItemsExpr", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "itemsExpr", "keyboardNavigation", "keyExpr", "loadPanel", "noDataText", "pager", "paging", "parentIdExpr", "remoteOperations", "renderAsync", "repaintChangesOnly", "rootValue", "rowAlternationEnabled", "rowDragging", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sorting", "stateStoring", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onNodesInitialized", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoExpandAllChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataSourceChange", "dataStructureChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "expandedRowKeysChange", "expandNodesOnFilteringChange", "filterBuilderChange", "filterBuilderPopupChange", "filterModeChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "hasItemsExprChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "itemsExprChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "noDataTextChange", "pagerChange", "pagingChange", "parentIdExprChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rootValueChange", "rowAlternationEnabledChange", "rowDraggingChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortingChange", "stateStoringChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i9.DxValidatorComponent, selector: "dx-validator", inputs: ["adapter", "elementAttr", "height", "name", "validationGroup", "validationRules", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValidated", "adapterChange", "elementAttrChange", "heightChange", "nameChange", "validationGroupChange", "validationRulesChange", "widthChange"] }] });
|
|
3316
3170
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FieldSelectorComponent, decorators: [{
|
|
3317
3171
|
type: Component,
|
|
3318
3172
|
args: [{ selector: 'rs-field-selector', template: "<div class=\"dx-field\">\n <div class=\"dx-field-label\">\n <span>\u5C5E\u6027</span>\n <span class=\"required-mark\" *ngIf=\"required\"> *</span>\n </div>\n <div class=\"dx-field-value\">\n <dx-drop-down-box #fieldDropDownBox\n [dataSource]=\"fieldTree\"\n valueExpr=\"innerName\"\n fieldTemplate=\"fieldTemplate\"\n contentTemplate=\"contentTemplate\"\n [showClearButton]=\"true\"\n [dropDownOptions]=\"{maxHeight: 'none', deferRendering: false}\"\n [(value)]=\"_fields\"\n [readOnly]=\"readonly\">\n <div *dxTemplate=\"let info of 'fieldTemplate'\">\n <dx-text-box [visible]=\"false\"></dx-text-box>\n <dx-tag-box [dataSource]=\"fieldTree\"\n valueExpr=\"innerName\"\n width=\"100%\"\n [openOnFieldClick]=\"false\"\n [(value)]=\"_fields\"\n [class.coast-tag-selector]=\"true\"\n [readOnly]=\"readonly\">\n <div *dxTemplate=\"let field of 'tag'\">\n <dx-button [elementAttr]=\"{ class: 'item'}\">\n <span>{{ field.caption }}</span>\n <i *ngIf=\"multiple && !readonly\" class=\"coast-icon-close\" (click)=\"removeItem($event, field)\"></i>\n </dx-button>\n </div>\n </dx-tag-box>\n </div>\n <div *dxTemplate=\"let data of 'contentTemplate'\">\n <dx-text-box mode=\"search\" placeholder=\"\u641C\u7D22...\" valueChangeEvent=\"keyup\"\n (onValueChanged)=\"dxTreeList.instance.searchByText($event.value)\"></dx-text-box>\n <dx-tree-list #dxTreeList\n [dataSource]=\"fieldTree\"\n [filterValue]=\"['visible','=',true]\"\n keyExpr=\"innerName\"\n parentIdExpr=\"parentInnerName\"\n [(selectedRowKeys)]=\"_fields\"\n [height]=\"360\"\n [showRowLines]=\"true\"\n [showBorders]=\"true\"\n [hoverStateEnabled]=\"true\"\n [rowAlternationEnabled]=\"true\"\n [columnAutoWidth]=\"true\"\n (onRowPrepared)=\"onRowPrepared($event)\"\n (onCellPrepared)=\"onCellPrepared($event)\"\n (onSelectionChanged)=\"onSelectionChanged($event, fieldDropDownBox)\">\n <dxi-column dataField=\"innerName\" dataType=\"string\" [visible]=\"false\"></dxi-column>\n <dxi-column dataField=\"caption\" dataType=\"string\" caption=\"\u540D\u79F0\"></dxi-column>\n <dxi-column dataField=\"visible\" dataType=\"boolean\" [visible]=\"false\"></dxi-column>\n <dxo-selection [mode]=\"multiple ? 'multiple' : 'single'\" [allowSelectAll]=\"false\"></dxo-selection>\n <dxo-scrolling showScrollbar=\"always\"></dxo-scrolling>\n </dx-tree-list>\n </div>\n <dx-validator>\n <dxi-validation-rule *ngIf=\"required\" type=\"required\" message=\"\u503C\u4E0D\u80FD\u4E3A\u7A7A\"></dxi-validation-rule>\n </dx-validator>\n </dx-drop-down-box>\n </div>\n</div>\n", styles: [":host .dx-field{margin-bottom:8px;display:flex;flex-flow:row nowrap}:host .dx-field .dx-field-label{flex:0 0 80px}:host .dx-field .dx-field-value{flex:1}:host dx-tag-box{display:block}:host dx-tag-box .item{min-height:20px}:host dx-tag-box .item .coast-icon-close{padding-left:4px}:host dx-tag-box .item .coast-icon-close:hover{color:#d9534f}\n"] }]
|
|
@@ -3366,12 +3220,10 @@ class DataGridModule {
|
|
|
3366
3220
|
}
|
|
3367
3221
|
DataGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DataGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3368
3222
|
DataGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: DataGridModule, declarations: [DataGridComponent,
|
|
3369
|
-
FileCellTemplateComponent,
|
|
3370
3223
|
InstanceLinkTemplateComponent,
|
|
3371
|
-
UnitInfoTemplateComponent,
|
|
3372
|
-
UserInfoTemplateComponent,
|
|
3373
3224
|
RowButtonsTemplateDirective,
|
|
3374
|
-
CustomTemplateDirective
|
|
3225
|
+
CustomTemplateDirective,
|
|
3226
|
+
CellComponentTemplateComponent], imports: [CommonModule,
|
|
3375
3227
|
DevExtremeModule,
|
|
3376
3228
|
FormModule], exports: [DataGridComponent,
|
|
3377
3229
|
RowButtonsTemplateDirective,
|
|
@@ -3384,12 +3236,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
3384
3236
|
args: [{
|
|
3385
3237
|
declarations: [
|
|
3386
3238
|
DataGridComponent,
|
|
3387
|
-
FileCellTemplateComponent,
|
|
3388
3239
|
InstanceLinkTemplateComponent,
|
|
3389
|
-
UnitInfoTemplateComponent,
|
|
3390
|
-
UserInfoTemplateComponent,
|
|
3391
3240
|
RowButtonsTemplateDirective,
|
|
3392
|
-
CustomTemplateDirective
|
|
3241
|
+
CustomTemplateDirective,
|
|
3242
|
+
CellComponentTemplateComponent
|
|
3393
3243
|
],
|
|
3394
3244
|
imports: [
|
|
3395
3245
|
CommonModule,
|
|
@@ -3482,10 +3332,10 @@ class DynamicParamsComponent {
|
|
|
3482
3332
|
}
|
|
3483
3333
|
}
|
|
3484
3334
|
DynamicParamsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicParamsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3485
|
-
DynamicParamsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DynamicParamsComponent, selector: "rs-dynamic-params", inputs: { label: "label", showHelp: "showHelp", multipleRow: "multipleRow", keyPlaceholder: "keyPlaceholder", valuePlaceholder: "valuePlaceholder", params: "params", required: "required", readonly: "readonly" }, queries: [{ propertyName: "tooltipContentTemplate", first: true, predicate: TooltipContentTemplateDirective, descendants: true }], ngImport: i0, template: "<div class=\"dx-field\">\n <div class=\"dx-field-label\">\n <span>{{ label }}</span>\n <span *ngIf=\"required\" class=\"required-mark\"> *</span>\n <i *ngIf=\"showHelp\" #dynamicParamsSpan class=\"coast-icon-help cursor-pointer\">\n <dx-tooltip [target]=\"dynamicParamsSpan\"\n [position]=\"'top'\"\n [showEvent]=\"'mouseover'\"\n [hideEvent]=\"'mouseout'\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap;align-items: flex-start;\">\n <ng-container [ngTemplateOutlet]=\"tooltipContentTemplate.templateRef\"></ng-container>\n </div>\n </dx-tooltip>\n </i>\n <dx-button type=\"default\" stylingMode=\"text\" icon=\"coast-icon coast-icon-add\" (onClick)=\"add()\"\n [disabled]=\"readonly\"></dx-button>\n </div>\n <div class=\"dx-field-value\">\n <div *ngFor=\"let param of params; let index = index\" class=\"param\">\n <div class=\"param-entry\" [ngStyle]=\" { flexDirection : multipleRow ? 'column' : 'row' } \">\n <dx-text-box [placeholder]=\"keyPlaceholder\" [(value)]=\"param.name\" [disabled]=\"readonly\"></dx-text-box>\n <dx-text-box [placeholder]=\"valuePlaceholder\" [(value)]=\"param.value\" [disabled]=\"readonly\"></dx-text-box>\n </div>\n <div class=\"param-operation\">\n <dx-button type=\"danger\" stylingMode=\"text\" icon=\"coast-icon coast-icon-close\"\n (onClick)=\"delete(index)\" [disabled]=\"readonly\"></dx-button>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host .dx-field .dx-field-
|
|
3335
|
+
DynamicParamsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DynamicParamsComponent, selector: "rs-dynamic-params", inputs: { label: "label", showHelp: "showHelp", multipleRow: "multipleRow", keyPlaceholder: "keyPlaceholder", valuePlaceholder: "valuePlaceholder", params: "params", required: "required", readonly: "readonly" }, queries: [{ propertyName: "tooltipContentTemplate", first: true, predicate: TooltipContentTemplateDirective, descendants: true }], ngImport: i0, template: "<div class=\"dx-field\">\n <div class=\"dx-field-label\">\n <span>{{ label }}</span>\n <span *ngIf=\"required\" class=\"required-mark\"> *</span>\n <i *ngIf=\"showHelp\" #dynamicParamsSpan class=\"coast-icon-help cursor-pointer\">\n <dx-tooltip [target]=\"dynamicParamsSpan\"\n [position]=\"'top'\"\n [showEvent]=\"'mouseover'\"\n [hideEvent]=\"'mouseout'\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap;align-items: flex-start;\">\n <ng-container [ngTemplateOutlet]=\"tooltipContentTemplate.templateRef\"></ng-container>\n </div>\n </dx-tooltip>\n </i>\n <dx-button type=\"default\" stylingMode=\"text\" icon=\"coast-icon coast-icon-add\" (onClick)=\"add()\"\n [disabled]=\"readonly\"></dx-button>\n </div>\n <div class=\"dx-field-value\">\n <div *ngFor=\"let param of params; let index = index\" class=\"param\">\n <div class=\"param-entry\" [ngStyle]=\" { flexDirection : multipleRow ? 'column' : 'row' } \">\n <dx-text-box [placeholder]=\"keyPlaceholder\" [(value)]=\"param.name\" [disabled]=\"readonly\"></dx-text-box>\n <dx-text-box [placeholder]=\"valuePlaceholder\" [(value)]=\"param.value\" [disabled]=\"readonly\"></dx-text-box>\n </div>\n <div class=\"param-operation\">\n <dx-button type=\"danger\" stylingMode=\"text\" icon=\"coast-icon coast-icon-close\"\n (onClick)=\"delete(index)\" [disabled]=\"readonly\"></dx-button>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host .dx-field .dx-field-value .param{margin-bottom:4px;display:flex;flex-flow:row nowrap}:host .dx-field .dx-field-value .param .param-entry{flex:1;display:flex;flex-wrap:nowrap}:host .dx-field .dx-field-value .param .param-entry dx-text-box{flex:1}:host .dx-field .dx-field-value .param .param-operation{flex:none;display:flex;flex-flow:row nowrap}:host .dx-field .dx-field-value .param .param-operation dx-button{flex:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2$2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.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: i7.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "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", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i5$2.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"] }] });
|
|
3486
3336
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DynamicParamsComponent, decorators: [{
|
|
3487
3337
|
type: Component,
|
|
3488
|
-
args: [{ selector: 'rs-dynamic-params', template: "<div class=\"dx-field\">\n <div class=\"dx-field-label\">\n <span>{{ label }}</span>\n <span *ngIf=\"required\" class=\"required-mark\"> *</span>\n <i *ngIf=\"showHelp\" #dynamicParamsSpan class=\"coast-icon-help cursor-pointer\">\n <dx-tooltip [target]=\"dynamicParamsSpan\"\n [position]=\"'top'\"\n [showEvent]=\"'mouseover'\"\n [hideEvent]=\"'mouseout'\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap;align-items: flex-start;\">\n <ng-container [ngTemplateOutlet]=\"tooltipContentTemplate.templateRef\"></ng-container>\n </div>\n </dx-tooltip>\n </i>\n <dx-button type=\"default\" stylingMode=\"text\" icon=\"coast-icon coast-icon-add\" (onClick)=\"add()\"\n [disabled]=\"readonly\"></dx-button>\n </div>\n <div class=\"dx-field-value\">\n <div *ngFor=\"let param of params; let index = index\" class=\"param\">\n <div class=\"param-entry\" [ngStyle]=\" { flexDirection : multipleRow ? 'column' : 'row' } \">\n <dx-text-box [placeholder]=\"keyPlaceholder\" [(value)]=\"param.name\" [disabled]=\"readonly\"></dx-text-box>\n <dx-text-box [placeholder]=\"valuePlaceholder\" [(value)]=\"param.value\" [disabled]=\"readonly\"></dx-text-box>\n </div>\n <div class=\"param-operation\">\n <dx-button type=\"danger\" stylingMode=\"text\" icon=\"coast-icon coast-icon-close\"\n (onClick)=\"delete(index)\" [disabled]=\"readonly\"></dx-button>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host .dx-field .dx-field-
|
|
3338
|
+
args: [{ selector: 'rs-dynamic-params', template: "<div class=\"dx-field\">\n <div class=\"dx-field-label\">\n <span>{{ label }}</span>\n <span *ngIf=\"required\" class=\"required-mark\"> *</span>\n <i *ngIf=\"showHelp\" #dynamicParamsSpan class=\"coast-icon-help cursor-pointer\">\n <dx-tooltip [target]=\"dynamicParamsSpan\"\n [position]=\"'top'\"\n [showEvent]=\"'mouseover'\"\n [hideEvent]=\"'mouseout'\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap;align-items: flex-start;\">\n <ng-container [ngTemplateOutlet]=\"tooltipContentTemplate.templateRef\"></ng-container>\n </div>\n </dx-tooltip>\n </i>\n <dx-button type=\"default\" stylingMode=\"text\" icon=\"coast-icon coast-icon-add\" (onClick)=\"add()\"\n [disabled]=\"readonly\"></dx-button>\n </div>\n <div class=\"dx-field-value\">\n <div *ngFor=\"let param of params; let index = index\" class=\"param\">\n <div class=\"param-entry\" [ngStyle]=\" { flexDirection : multipleRow ? 'column' : 'row' } \">\n <dx-text-box [placeholder]=\"keyPlaceholder\" [(value)]=\"param.name\" [disabled]=\"readonly\"></dx-text-box>\n <dx-text-box [placeholder]=\"valuePlaceholder\" [(value)]=\"param.value\" [disabled]=\"readonly\"></dx-text-box>\n </div>\n <div class=\"param-operation\">\n <dx-button type=\"danger\" stylingMode=\"text\" icon=\"coast-icon coast-icon-close\"\n (onClick)=\"delete(index)\" [disabled]=\"readonly\"></dx-button>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host .dx-field .dx-field-value .param{margin-bottom:4px;display:flex;flex-flow:row nowrap}:host .dx-field .dx-field-value .param .param-entry{flex:1;display:flex;flex-wrap:nowrap}:host .dx-field .dx-field-value .param .param-entry dx-text-box{flex:1}:host .dx-field .dx-field-value .param .param-operation{flex:none;display:flex;flex-flow:row nowrap}:host .dx-field .dx-field-value .param .param-operation dx-button{flex:none}\n"] }]
|
|
3489
3339
|
}], propDecorators: { label: [{
|
|
3490
3340
|
type: Input
|
|
3491
3341
|
}], showHelp: [{
|
|
@@ -3676,7 +3526,7 @@ class IconSelectorComponent {
|
|
|
3676
3526
|
}
|
|
3677
3527
|
}
|
|
3678
3528
|
IconSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IconSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3679
|
-
IconSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: IconSelectorComponent, selector: "rs-icon-selector", inputs: { target: "target" }, outputs: { select: "select" }, viewQueries: [{ propertyName: "popover", first: true, predicate: ["iconSelector"], descendants: true, static: true }, { propertyName: "iconZoomOut", first: true, predicate: ["iconZoomOut"], descendants: true, static: true }], ngImport: i0, template: "<dx-popover #iconSelector\n maxWidth=\"280\"\n maxHeight=\"280\"\n [target]=\"target\"\n [showEvent]=\"{name: 'click'}\">\n <div *dxTemplate=\"let data of 'content'\">\n <ng-container *ngFor=\"let icon of iconList; let index=index\">\n <dx-button [icon]=\"'coast-icon ' + icon\" (onClick)=\"selectIcon(icon)\"\n (mouseenter)=\"zoomOut($event, icon)\" (mouseleave)=\"iconZoomOut.instance.hide()\"></dx-button>\n </ng-container>\n </div>\n</dx-popover>\n<dx-popover #iconZoomOut height=\"72px\" [enableBodyScroll]=\"false\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap; align-items: center; justify-content: center;\">\n <i [class]=\"hoverIcon\" style=\"font-size: 36px;\"></i>\n <span>{{ hoverIcon?.substring(11) }}</span>\n </div>\n</dx-popover>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type:
|
|
3529
|
+
IconSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: IconSelectorComponent, selector: "rs-icon-selector", inputs: { target: "target" }, outputs: { select: "select" }, viewQueries: [{ propertyName: "popover", first: true, predicate: ["iconSelector"], descendants: true, static: true }, { propertyName: "iconZoomOut", first: true, predicate: ["iconZoomOut"], descendants: true, static: true }], ngImport: i0, template: "<dx-popover #iconSelector\n maxWidth=\"280\"\n maxHeight=\"280\"\n [target]=\"target\"\n [showEvent]=\"{name: 'click'}\">\n <div *dxTemplate=\"let data of 'content'\">\n <ng-container *ngFor=\"let icon of iconList; let index=index\">\n <dx-button [icon]=\"'coast-icon ' + icon\" (onClick)=\"selectIcon(icon)\"\n (mouseenter)=\"zoomOut($event, icon)\" (mouseleave)=\"iconZoomOut.instance.hide()\"></dx-button>\n </ng-container>\n </div>\n</dx-popover>\n<dx-popover #iconZoomOut height=\"72px\" [enableBodyScroll]=\"false\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap; align-items: center; justify-content: center;\">\n <i [class]=\"hoverIcon\" style=\"font-size: 36px;\"></i>\n <span>{{ hoverIcon?.substring(11) }}</span>\n </div>\n</dx-popover>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$2.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.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: i4.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "enableBodyScroll", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showEvent", "showTitle", "target", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "onTitleRendered", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "enableBodyScrollChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showEventChange", "showTitleChange", "targetChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }] });
|
|
3680
3530
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: IconSelectorComponent, decorators: [{
|
|
3681
3531
|
type: Component,
|
|
3682
3532
|
args: [{ selector: 'rs-icon-selector', template: "<dx-popover #iconSelector\n maxWidth=\"280\"\n maxHeight=\"280\"\n [target]=\"target\"\n [showEvent]=\"{name: 'click'}\">\n <div *dxTemplate=\"let data of 'content'\">\n <ng-container *ngFor=\"let icon of iconList; let index=index\">\n <dx-button [icon]=\"'coast-icon ' + icon\" (onClick)=\"selectIcon(icon)\"\n (mouseenter)=\"zoomOut($event, icon)\" (mouseleave)=\"iconZoomOut.instance.hide()\"></dx-button>\n </ng-container>\n </div>\n</dx-popover>\n<dx-popover #iconZoomOut height=\"72px\" [enableBodyScroll]=\"false\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap; align-items: center; justify-content: center;\">\n <i [class]=\"hoverIcon\" style=\"font-size: 36px;\"></i>\n <span>{{ hoverIcon?.substring(11) }}</span>\n </div>\n</dx-popover>\n" }]
|
|
@@ -3939,6 +3789,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
3939
3789
|
args: [PdfJsViewerComponent, { static: true }]
|
|
3940
3790
|
}] } });
|
|
3941
3791
|
|
|
3792
|
+
class CellConfigBase extends ConfigBase {
|
|
3793
|
+
}
|
|
3794
|
+
|
|
3795
|
+
class ModalConfigBase extends ConfigBase {
|
|
3796
|
+
}
|
|
3797
|
+
|
|
3942
3798
|
class WebsocketModule {
|
|
3943
3799
|
}
|
|
3944
3800
|
WebsocketModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: WebsocketModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -4107,5 +3963,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
4107
3963
|
* Generated bundle index. Do not edit.
|
|
4108
3964
|
*/
|
|
4109
3965
|
|
|
4110
|
-
export { BoxContainerComponent, BoxContainerModule, CamundaBpmnEditorComponent, CamundaBpmnEditorModule, CamundaBpmnViewerComponent, CamundaBpmnViewerModule, ChangeFilter, CodeEditorComponent, CodeEditorModule, CustomTemplateDirective, DataDetailComponent, DataDetailModule, DataGridComponent, DataGridFactory, DataGridModule, DataGridService, DrawerComponent, DrawerModule, DrawerService, DynamicParamsComponent, DynamicParamsModule, FieldSelectorComponent, FormComponent, FormItemConfigBase, FormModule, FormService, FullscreenDirective, IconSelectorComponent, IconSelectorModule, ItemConfigComponent, ItemStyleComponent, ModalComponent, ModalModule, ModalService, PdfViewerComponent, PluginManager, RowButtonsTemplateDirective, TooltipContentTemplateDirective, WebsocketModule, WebsocketService, download_file, file_type_icon, filename_from_disposition, format_date, format_datetime, format_file_size, localeSortMethod, notify_error, notify_success, notify_warning, support_preview_ext, validate, validate_group };
|
|
3966
|
+
export { BoxContainerComponent, BoxContainerModule, CamundaBpmnEditorComponent, CamundaBpmnEditorModule, CamundaBpmnViewerComponent, CamundaBpmnViewerModule, CellComponentBase, CellConfigBase, ChangeFilter, CodeEditorComponent, CodeEditorModule, CustomTemplateDirective, DataDetailComponent, DataDetailModule, DataGridComponent, DataGridFactory, DataGridModule, DataGridService, DrawerComponent, DrawerModule, DrawerService, DynamicParamsComponent, DynamicParamsModule, FieldSelectorComponent, FormComponent, FormItemComponentBase, FormItemConfigBase, FormModule, FormService, FullscreenDirective, IconSelectorComponent, IconSelectorModule, ItemConfigComponent, ItemStyleComponent, ModalComponent, ModalComponentBase, ModalConfigBase, ModalModule, ModalService, PageItemComponentBase, PageItemConfigBase, PdfViewerComponent, PluginManager, RowButtonsTemplateDirective, TooltipContentTemplateDirective, WebsocketModule, WebsocketService, download_file, file_type_icon, filename_from_disposition, format_date, format_datetime, format_file_size, localeSortMethod, notify_error, notify_success, notify_warning, support_preview_ext, validate, validate_group };
|
|
4111
3967
|
//# sourceMappingURL=ngx-rs-ant.mjs.map
|