ngx-rs-ant 0.2.4 → 0.3.9
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 +15 -0
- package/box-container/box-container.component.d.ts +12 -0
- package/box-container/box-container.module.d.ts +21 -0
- package/box-container/box-item/box-item-host.directive.d.ts +10 -0
- package/box-container/box-item/box-item.component.d.ts +36 -0
- package/box-container/box-item/item-blank/item-blank.component.d.ts +8 -0
- package/box-container/box-item/item-config/item-config.component.d.ts +8 -0
- package/box-container/box-item/item-style/item-style.component.d.ts +10 -0
- package/box-container/box-item/item-style/style/style.component.d.ts +12 -0
- package/box-container/box-item/item-style/style-blank/style-blank.component.d.ts +5 -0
- package/box-container/plugin-active/divider/divider-line/divider-line.component.d.ts +12 -0
- package/box-container/plugin-active/divider/divider.component.d.ts +23 -0
- package/box-container/plugin-active/plugin-active.component.d.ts +31 -0
- package/box-container/plugin-hover/plugin-hover.component.d.ts +18 -0
- package/data-grid/data-grid.component.d.ts +7 -4
- package/data-grid/data-grid.module.d.ts +1 -1
- package/esm2020/box-container/PluginManager.mjs +103 -0
- package/esm2020/box-container/box-container.component.mjs +44 -0
- package/esm2020/box-container/box-container.module.mjs +69 -0
- package/esm2020/box-container/box-item/box-item-host.directive.mjs +20 -0
- package/esm2020/box-container/box-item/box-item.component.mjs +169 -0
- package/esm2020/box-container/box-item/item-blank/item-blank.component.mjs +20 -0
- package/esm2020/box-container/box-item/item-config/item-config.component.mjs +35 -0
- package/esm2020/box-container/box-item/item-style/item-style.component.mjs +35 -0
- package/esm2020/box-container/box-item/item-style/style/style.component.mjs +44 -0
- package/esm2020/box-container/box-item/item-style/style-blank/style-blank.component.mjs +11 -0
- package/esm2020/box-container/plugin-active/divider/divider-line/divider-line.component.mjs +35 -0
- package/esm2020/box-container/plugin-active/divider/divider.component.mjs +50 -0
- package/esm2020/box-container/plugin-active/plugin-active.component.mjs +55 -0
- package/esm2020/box-container/plugin-hover/plugin-hover.component.mjs +26 -0
- package/esm2020/data-grid/data-grid.component.mjs +18 -11
- package/esm2020/data-grid/data-grid.module.mjs +9 -9
- package/esm2020/form/form.component.mjs +53 -0
- package/esm2020/form/form.module.mjs +39 -0
- package/esm2020/modal/modal.component.mjs +5 -5
- package/esm2020/modal/modal.module.mjs +8 -6
- package/esm2020/modal/modal.service.mjs +3 -3
- package/esm2020/public-api.mjs +11 -3
- package/fesm2015/ngx-rs-ant.mjs +905 -155
- package/fesm2015/ngx-rs-ant.mjs.map +1 -1
- package/fesm2020/ngx-rs-ant.mjs +897 -155
- package/fesm2020/ngx-rs-ant.mjs.map +1 -1
- package/form/form.component.d.ts +21 -0
- package/form/form.module.d.ts +11 -0
- package/modal/modal.component.d.ts +1 -1
- package/modal/modal.module.d.ts +1 -1
- package/package.json +4 -3
- package/public-api.d.ts +10 -2
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { Component, EventEmitter, HostBinding, Output, ViewChildren } from '@angular/core';
|
|
2
|
+
import { BoxItemHostDirective } from './box-item-host.directive';
|
|
3
|
+
import { PluginManager } from '../PluginManager';
|
|
4
|
+
import { ItemBlankComponent } from "./item-blank/item-blank.component";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "./box-item-host.directive";
|
|
8
|
+
export class BoxItemComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.editMode = false;
|
|
11
|
+
this.style = {};
|
|
12
|
+
this.config = {};
|
|
13
|
+
this.leaveOneItem = new EventEmitter();
|
|
14
|
+
}
|
|
15
|
+
get _direction() {
|
|
16
|
+
return this.config.direction;
|
|
17
|
+
}
|
|
18
|
+
get _style() {
|
|
19
|
+
if (this.pDirection) {
|
|
20
|
+
return {};
|
|
21
|
+
}
|
|
22
|
+
const width = this.style?.width ? this.style.width : 'auto';
|
|
23
|
+
const height = this.style?.height ? this.style.height : 'auto';
|
|
24
|
+
return this._calcStyle(this.pDirection, width, height);
|
|
25
|
+
}
|
|
26
|
+
ngOnInit() {
|
|
27
|
+
this.load();
|
|
28
|
+
}
|
|
29
|
+
load() {
|
|
30
|
+
setTimeout(() => {
|
|
31
|
+
for (let i = 0; i < this.itemHosts.length; i++) {
|
|
32
|
+
const itemHost = this.itemHosts.get(i);
|
|
33
|
+
itemHost.viewContainerRef.clear();
|
|
34
|
+
const item = this.config.list[i];
|
|
35
|
+
switch (item.type) {
|
|
36
|
+
case 'plugin':
|
|
37
|
+
PluginManager.createComponent(this, i, item.style, item.config, this.editMode, this.control);
|
|
38
|
+
break;
|
|
39
|
+
case 'item':
|
|
40
|
+
const boxItemComponentRef = itemHost.viewContainerRef.createComponent(BoxItemComponent);
|
|
41
|
+
const instance = boxItemComponentRef.instance;
|
|
42
|
+
instance.editMode = this.editMode;
|
|
43
|
+
instance.style = item.style;
|
|
44
|
+
instance.config = item.config;
|
|
45
|
+
instance.control = this.control;
|
|
46
|
+
instance.pDirection = this.config.direction;
|
|
47
|
+
if (this.editMode) {
|
|
48
|
+
instance.leaveOneItem.subscribe((item) => {
|
|
49
|
+
if (item.type === 'item' && item.direction === this.config.direction) {
|
|
50
|
+
this.config.list.splice(i, 1, ...item.list);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
this.config.list.splice(i, 1, item);
|
|
54
|
+
}
|
|
55
|
+
this.load();
|
|
56
|
+
});
|
|
57
|
+
PluginManager.createHoverComponent(itemHost.viewContainerRef, boxItemComponentRef, '格子容器');
|
|
58
|
+
PluginManager.createActiveComponent(this, i, boxItemComponentRef, item.style, {
|
|
59
|
+
name: 'coast-box-container',
|
|
60
|
+
caption: '格子容器'
|
|
61
|
+
}, false);
|
|
62
|
+
}
|
|
63
|
+
break;
|
|
64
|
+
case 'blank':
|
|
65
|
+
default:
|
|
66
|
+
if (this.editMode) {
|
|
67
|
+
this.createBlankComponent(i);
|
|
68
|
+
}
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
createBlankComponent(index) {
|
|
75
|
+
const viewContainerRef = this.itemHosts.get(index)?.viewContainerRef;
|
|
76
|
+
const containerBlankComponentRef = viewContainerRef.createComponent(ItemBlankComponent);
|
|
77
|
+
containerBlankComponentRef.instance.dropItem.subscribe((plugin) => {
|
|
78
|
+
this.config.list[index] = {
|
|
79
|
+
type: 'plugin',
|
|
80
|
+
style: this.config.list[index].style,
|
|
81
|
+
config: {
|
|
82
|
+
name: plugin.name,
|
|
83
|
+
pluginConfig: plugin.pluginConfig || {}
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
this.load();
|
|
87
|
+
});
|
|
88
|
+
containerBlankComponentRef.instance.onRemove = () => {
|
|
89
|
+
this.config.list.splice(index, 1);
|
|
90
|
+
if (this.config.list.length === 1) {
|
|
91
|
+
this.leaveOneItem.emit(this.config.list[0]);
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
this.load();
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
PluginManager.createHoverComponent(viewContainerRef, containerBlankComponentRef, '占位格');
|
|
98
|
+
const activeComponentRef = PluginManager.createActiveComponent(this, index, containerBlankComponentRef, this.config.list[index].style, {
|
|
99
|
+
name: 'coast-box-container',
|
|
100
|
+
caption: '占位格'
|
|
101
|
+
}, this.config.list.length > 1);
|
|
102
|
+
activeComponentRef.instance.showDivider = true;
|
|
103
|
+
activeComponentRef.instance.splitItem = (direction) => {
|
|
104
|
+
if (this.config.direction === direction) {
|
|
105
|
+
this.config.list.splice(index, 0, { type: 'blank', style: {} });
|
|
106
|
+
this.load();
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
if (this.config.list.length === 1) {
|
|
110
|
+
this.config.direction = direction;
|
|
111
|
+
this.config.list.push({ type: 'blank', style: {} });
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
this.config.list.splice(index, 1, {
|
|
115
|
+
type: 'item',
|
|
116
|
+
style: this.config.list[index].style,
|
|
117
|
+
config: {
|
|
118
|
+
direction,
|
|
119
|
+
list: [{ type: 'blank', style: {} }, { type: 'blank', style: {} }]
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
this.load();
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
calcStyle(item) {
|
|
128
|
+
const width = item.style?.width ? item.style.width : 'auto';
|
|
129
|
+
const height = item.style?.height ? item.style.height : 'auto';
|
|
130
|
+
return this._calcStyle(this.config.direction, width, height);
|
|
131
|
+
}
|
|
132
|
+
_calcStyle(direction, width, height) {
|
|
133
|
+
if (direction === 'row') {
|
|
134
|
+
return {
|
|
135
|
+
flex: width === 'auto' ? '1' : '0 0 ' + width,
|
|
136
|
+
height,
|
|
137
|
+
pointerEvents: this.editMode ? 'none' : 'all'
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
else if (direction === 'column') {
|
|
141
|
+
return {
|
|
142
|
+
width,
|
|
143
|
+
flex: height === 'auto' ? '1' : '0 0 ' + height,
|
|
144
|
+
pointerEvents: this.editMode ? 'none' : 'all'
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
return {
|
|
148
|
+
pointerEvents: this.editMode ? 'none' : 'all'
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
BoxItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BoxItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
153
|
+
BoxItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: BoxItemComponent, selector: "rs-box-item", outputs: { leaveOneItem: "leaveOneItem" }, host: { properties: { "style.flex-direction": "this._direction", "style": "this._style" } }, viewQueries: [{ propertyName: "itemHosts", predicate: BoxItemHostDirective, descendants: true }], ngImport: i0, template: "<ng-container *ngFor=\"let item of config.list; index as index\">\n <div [ngStyle]=\"calcStyle(item)\">\n <ng-template rsBoxItemHost [hostId]=\"index\"></ng-template>\n </div>\n</ng-container>\n", styles: [":host{flex:auto;display:flex;pointer-events:all}:host div{flex:auto;display:flex}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.BoxItemHostDirective, selector: "[rsBoxItemHost]", inputs: ["hostId"] }] });
|
|
154
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BoxItemComponent, decorators: [{
|
|
155
|
+
type: Component,
|
|
156
|
+
args: [{ selector: 'rs-box-item', template: "<ng-container *ngFor=\"let item of config.list; index as index\">\n <div [ngStyle]=\"calcStyle(item)\">\n <ng-template rsBoxItemHost [hostId]=\"index\"></ng-template>\n </div>\n</ng-container>\n", styles: [":host{flex:auto;display:flex;pointer-events:all}:host div{flex:auto;display:flex}\n"] }]
|
|
157
|
+
}], propDecorators: { _direction: [{
|
|
158
|
+
type: HostBinding,
|
|
159
|
+
args: ['style.flex-direction']
|
|
160
|
+
}], _style: [{
|
|
161
|
+
type: HostBinding,
|
|
162
|
+
args: ['style']
|
|
163
|
+
}], leaveOneItem: [{
|
|
164
|
+
type: Output
|
|
165
|
+
}], itemHosts: [{
|
|
166
|
+
type: ViewChildren,
|
|
167
|
+
args: [BoxItemHostDirective]
|
|
168
|
+
}] } });
|
|
169
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm94LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvYm94LWNvbnRhaW5lci9ib3gtaXRlbS9ib3gtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL2JveC1pdGVtL2JveC1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBVSxNQUFNLEVBQWEsWUFBWSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzVHLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQzs7OztBQU9yRSxNQUFNLE9BQU8sZ0JBQWdCO0lBTDdCO1FBTUUsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixVQUFLLEdBQVEsRUFBRSxDQUFDO1FBQ2hCLFdBQU0sR0FBUSxFQUFFLENBQUM7UUFrQmpCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQWdJbkM7SUE5SUMsSUFBeUMsVUFBVTtRQUNqRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUEwQixNQUFNO1FBQzlCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDNUQsTUFBTSxN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QUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLEtBQUs7Z0JBQzdDLE1BQU07Z0JBQ04sYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSzthQUM5QyxDQUFBO1NBQ0Y7YUFBTSxJQUFJLFNBQVMsS0FBSyxRQUFRLEVBQUU7WUFDakMsT0FBTztnQkFDTCxLQUFLO2dCQUNMLElBQUksRUFBRSxNQUFNLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxNQUFNO2dCQUMvQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLO2FBQzlDLENBQUE7U0FDRjtRQUNELE9BQU87WUFDTCxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLO1NBQzlDLENBQUM7SUFDSixDQUFDOzs2R0FwSlUsZ0JBQWdCO2lHQUFoQixnQkFBZ0IseU5Bc0JiLG9CQUFvQixnRENoQ3BDLHlNQUtBOzJGREthLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxhQUFhOzhCQVdrQixVQUFVO3NCQUFsRCxXQUFXO3VCQUFDLHNCQUFzQjtnQkFJVCxNQUFNO3NCQUEvQixXQUFXO3VCQUFDLE9BQU87Z0JBVXBCLFlBQVk7c0JBRFgsTUFBTTtnQkFFNkIsU0FBUztzQkFBNUMsWUFBWTt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgT25Jbml0LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Qm94SXRlbUhvc3REaXJlY3RpdmV9IGZyb20gJy4vYm94LWl0ZW0taG9zdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtQbHVnaW5NYW5hZ2VyfSBmcm9tICcuLi9QbHVnaW5NYW5hZ2VyJztcbmltcG9ydCB7SXRlbUJsYW5rQ29tcG9uZW50fSBmcm9tIFwiLi9pdGVtLWJsYW5rL2l0ZW0tYmxhbmsuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JzLWJveC1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JveC1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYm94LWl0ZW0uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBCb3hJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZWRpdE1vZGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgc3R5bGU6IGFueSA9IHt9O1xuICBjb25maWc6IGFueSA9IHt9O1xuICBjb250cm9sOiBhbnk7XG4gIHBEaXJlY3Rpb24/OiAncm93JyB8ICdjb2x1bW4nO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuZmxleC1kaXJlY3Rpb24nKSBnZXQgX2RpcmVjdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuZGlyZWN0aW9uO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZScpIGdldCBfc3R5bGUoKSB7XG4gICAgaWYgKHRoaXMucERpcmVjdGlvbikge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICBjb25zdCB3aWR0aCA9IHRoaXMuc3R5bGU/LndpZHRoID8gdGhpcy5zdHlsZS53aWR0aCA6ICdhdXRvJztcbiAgICBjb25zdCBoZWlnaHQgPSB0aGlzLnN0eWxlPy5oZWlnaHQgPyB0aGlzLnN0eWxlLmhlaWdodCA6ICdhdXRvJztcbiAgICByZXR1cm4gdGhpcy5fY2FsY1N0eWxlKHRoaXMucERpcmVjdGlvbiwgd2lkdGgsIGhlaWdodCk7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgbGVhdmVPbmVJdGVtID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAVmlld0NoaWxkcmVuKEJveEl0ZW1Ib3N0RGlyZWN0aXZlKSBpdGVtSG9zdHMhOiBRdWVyeUxpc3Q8Qm94SXRlbUhvc3REaXJlY3RpdmU+O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZCgpO1xuICB9XG5cbiAgbG9hZCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5pdGVtSG9zdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgaXRlbUhvc3Q6IGFueSA9IHRoaXMuaXRlbUhvc3RzLmdldChpKTtcbiAgICAgICAgaXRlbUhvc3Qudmlld0NvbnRhaW5lclJlZi5jbGVhcigpO1xuICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5jb25maWcubGlzdFtpXTtcbiAgICAgICAgc3dpdGNoIChpdGVtLnR5cGUpIHtcbiAgICAgICAgICBjYXNlICdwbHVnaW4nOlxuICAgICAgICAgICAgUGx1Z2luTWFuYWdlci5jcmVhdGVDb21wb25lbnQodGhpcywgaSwgaXRlbS5zdHlsZSwgaXRlbS5jb25maWcsIHRoaXMuZWRpdE1vZGUsIHRoaXMuY29udHJvbCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdpdGVtJzpcbiAgICAgICAgICAgIGNvbnN0IGJveEl0ZW1Db21wb25lbnRSZWYgPSBpdGVtSG9zdC52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChCb3hJdGVtQ29tcG9uZW50KTtcbiAgICAgICAgICAgIGNvbnN0IGluc3RhbmNlID0gYm94SXRlbUNvbXBvbmVudFJlZi5pbnN0YW5jZTtcbiAgICAgICAgICAgIGluc3RhbmNlLmVkaXRNb2RlID0gdGhpcy5lZGl0TW9kZTtcbiAgICAgICAgICAgIGluc3RhbmNlLnN0eWxlID0gaXRlbS5zdHlsZTtcbiAgICAgICAgICAgIGluc3RhbmNlLmNvbmZpZyA9IGl0ZW0uY29uZmlnO1xuICAgICAgICAgICAgaW5zdGFuY2UuY29udHJvbCA9IHRoaXMuY29udHJvbDtcbiAgICAgICAgICAgIGluc3RhbmNlLnBEaXJlY3Rpb24gPSB0aGlzLmNvbmZpZy5kaXJlY3Rpb247XG4gICAgICAgICAgICBpZiAodGhpcy5lZGl0TW9kZSkge1xuICAgICAgICAgICAgICBpbnN0YW5jZS5sZWF2ZU9uZUl0ZW0uc3Vic2NyaWJlKChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS50eXBlID09PSAnaXRlbScgJiYgaXRlbS5kaXJlY3Rpb24gPT09IHRoaXMuY29uZmlnLmRpcmVjdGlvbikge1xuICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcubGlzdC5zcGxpY2UoaSwgMSwgLi4uaXRlbS5saXN0KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgdGhpcy5jb25maWcubGlzdC5zcGxpY2UoaSwgMSwgaXRlbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMubG9hZCgpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgUGx1Z2luTWFuYWdlci5jcmVhdGVIb3ZlckNvbXBvbmVudChpdGVtSG9zdC52aWV3Q29udGFpbmVyUmVmLCBib3hJdGVtQ29tcG9uZW50UmVmLCAn5qC85a2Q5a655ZmoJyk7XG4gICAgICAgICAgICAgIFBsdWdpbk1hbmFnZXIuY3JlYXRlQWN0aXZlQ29tcG9uZW50KHRoaXMsIGksIGJveEl0ZW1Db21wb25lbnRSZWYsIGl0ZW0uc3R5bGUsIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnY29hc3QtYm94LWNvbnRhaW5lcicsXG4gICAgICAgICAgICAgICAgY2FwdGlvbjogJ+agvOWtkOWuueWZqCdcbiAgICAgICAgICAgICAgfSwgZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnYmxhbmsnOlxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBpZiAodGhpcy5lZGl0TW9kZSkge1xuICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUJsYW5rQ29tcG9uZW50KGkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQmxhbmtDb21wb25lbnQoaW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IHZpZXdDb250YWluZXJSZWY6IGFueSA9IHRoaXMuaXRlbUhvc3RzLmdldChpbmRleCk/LnZpZXdDb250YWluZXJSZWY7XG4gICAgY29uc3QgY29udGFpbmVyQmxhbmtDb21wb25lbnRSZWY6IGFueSA9IHZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KEl0ZW1CbGFua0NvbXBvbmVudCk7XG4gICAgY29udGFpbmVyQmxhbmtDb21wb25lbnRSZWYuaW5zdGFuY2UuZHJvcEl0ZW0uc3Vic2NyaWJlKChwbHVnaW46IGFueSkgPT4ge1xuICAgICAgdGhpcy5jb25maWcubGlzdFtpbmRleF0gPSB7XG4gICAgICAgIHR5cGU6ICdwbHVnaW4nLFxuICAgICAgICBzdHlsZTogdGhpcy5jb25maWcubGlzdFtpbmRleF0uc3R5bGUsXG4gICAgICAgIGNvbmZpZzoge1xuICAgICAgICAgIG5hbWU6IHBsdWdpbi5uYW1lLFxuICAgICAgICAgIHBsdWdpbkNvbmZpZzogcGx1Z2luLnBsdWdpbkNvbmZpZyB8fCB7fVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLmxvYWQoKTtcbiAgICB9KTtcbiAgICBjb250YWluZXJCbGFua0NvbXBvbmVudFJlZi5pbnN0YW5jZS5vblJlbW92ZSA9ICgpID0+IHtcbiAgICAgIHRoaXMuY29uZmlnLmxpc3Quc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIGlmICh0aGlzLmNvbmZpZy5saXN0Lmxlbmd0aCA9PT0gMSkge1xuICAgICAgICB0aGlzLmxlYXZlT25lSXRlbS5lbWl0KHRoaXMuY29uZmlnLmxpc3RbMF0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICB9XG4gICAgfTtcbiAgICBQbHVnaW5NYW5hZ2VyLmNyZWF0ZUhvdmVyQ29tcG9uZW50KHZpZXdDb250YWluZXJSZWYsIGNvbnRhaW5lckJsYW5rQ29tcG9uZW50UmVmLCAn5Y2g5L2N5qC8Jyk7XG4gICAgY29uc3QgYWN0aXZlQ29tcG9uZW50UmVmID0gUGx1Z2luTWFuYWdlci5jcmVhdGVBY3RpdmVDb21wb25lbnQodGhpcywgaW5kZXgsIGNvbnRhaW5lckJsYW5rQ29tcG9uZW50UmVmLFxuICAgICAgdGhpcy5jb25maWcubGlzdFtpbmRleF0uc3R5bGUsIHtcbiAgICAgICAgbmFtZTogJ2NvYXN0LWJveC1jb250YWluZXInLFxuICAgICAgICBjYXB0aW9uOiAn5Y2g5L2N5qC8J1xuICAgICAgfSwgdGhpcy5jb25maWcubGlzdC5sZW5ndGggPiAxKTtcbiAgICBhY3RpdmVDb21wb25lbnRSZWYuaW5zdGFuY2Uuc2hvd0RpdmlkZXIgPSB0cnVlO1xuICAgIGFjdGl2ZUNvbXBvbmVudFJlZi5pbnN0YW5jZS5zcGxpdEl0ZW0gPSAoZGlyZWN0aW9uOiAncm93JyB8ICdjb2x1bW4nKSA9PiB7XG4gICAgICBpZiAodGhpcy5jb25maWcuZGlyZWN0aW9uID09PSBkaXJlY3Rpb24pIHtcbiAgICAgICAgdGhpcy5jb25maWcubGlzdC5zcGxpY2UoaW5kZXgsIDAsIHt0eXBlOiAnYmxhbmsnLCBzdHlsZToge319KTtcbiAgICAgICAgdGhpcy5sb2FkKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAodGhpcy5jb25maWcubGlzdC5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICB0aGlzLmNvbmZpZy5kaXJlY3Rpb24gPSBkaXJlY3Rpb247XG4gICAgICAgICAgdGhpcy5jb25maWcubGlzdC5wdXNoKHt0eXBlOiAnYmxhbmsnLCBzdHlsZToge319KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmNvbmZpZy5saXN0LnNwbGljZShpbmRleCwgMSwge1xuICAgICAgICAgICAgdHlwZTogJ2l0ZW0nLFxuICAgICAgICAgICAgc3R5bGU6IHRoaXMuY29uZmlnLmxpc3RbaW5kZXhdLnN0eWxlLFxuICAgICAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgICAgIGRpcmVjdGlvbixcbiAgICAgICAgICAgICAgbGlzdDogW3t0eXBlOiAnYmxhbmsnLCBzdHlsZToge319LCB7dHlwZTogJ2JsYW5rJywgc3R5bGU6IHt9fV1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmxvYWQoKTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgY2FsY1N0eWxlKGl0ZW06IGFueSkge1xuICAgIGNvbnN0IHdpZHRoID0gaXRlbS5zdHlsZT8ud2lkdGggPyBpdGVtLnN0eWxlLndpZHRoIDogJ2F1dG8nO1xuICAgIGNvbnN0IGhlaWdodCA9IGl0ZW0uc3R5bGU/LmhlaWdodCA/IGl0ZW0uc3R5bGUuaGVpZ2h0IDogJ2F1dG8nO1xuICAgIHJldHVybiB0aGlzLl9jYWxjU3R5bGUodGhpcy5jb25maWcuZGlyZWN0aW9uLCB3aWR0aCwgaGVpZ2h0KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhbGNTdHlsZShkaXJlY3Rpb246IGFueSwgd2lkdGg6IHN0cmluZywgaGVpZ2h0OiBzdHJpbmcpIHtcbiAgICBpZiAoZGlyZWN0aW9uID09PSAncm93Jykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZmxleDogd2lkdGggPT09ICdhdXRvJyA/ICcxJyA6ICcwIDAgJyArIHdpZHRoLFxuICAgICAgICBoZWlnaHQsXG4gICAgICAgIHBvaW50ZXJFdmVudHM6IHRoaXMuZWRpdE1vZGUgPyAnbm9uZScgOiAnYWxsJ1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSAnY29sdW1uJykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgd2lkdGgsXG4gICAgICAgIGZsZXg6IGhlaWdodCA9PT0gJ2F1dG8nID8gJzEnIDogJzAgMCAnICsgaGVpZ2h0LFxuICAgICAgICBwb2ludGVyRXZlbnRzOiB0aGlzLmVkaXRNb2RlID8gJ25vbmUnIDogJ2FsbCdcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIHBvaW50ZXJFdmVudHM6IHRoaXMuZWRpdE1vZGUgPyAnbm9uZScgOiAnYWxsJ1xuICAgIH07XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29uZmlnLmxpc3Q7IGluZGV4IGFzIGluZGV4XCI+XG4gIDxkaXYgW25nU3R5bGVdPVwiY2FsY1N0eWxlKGl0ZW0pXCI+XG4gICAgPG5nLXRlbXBsYXRlIHJzQm94SXRlbUhvc3QgW2hvc3RJZF09XCJpbmRleFwiPjwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Component, EventEmitter, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "ng-devui/dragdrop";
|
|
4
|
+
export class ItemBlankComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.dropItem = new EventEmitter();
|
|
7
|
+
}
|
|
8
|
+
dropEvent($event) {
|
|
9
|
+
this.dropItem.emit($event.dragData);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
ItemBlankComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemBlankComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
+
ItemBlankComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ItemBlankComponent, selector: "rs-item-blank", outputs: { dropItem: "dropItem" }, ngImport: i0, template: "<div\n dDroppable\n [dropScope]=\"'default'\"\n dragOverClass=\"active\"\n (dropEvent)=\"dropEvent($event)\"\n>\n <span>\u62D6\u62FD\u7EC4\u4EF6\u5230\u6B64\u5904</span>\n</div>\n", styles: [":host{flex:auto;margin:16px;border:1px solid var(--devui-dividing-line, #f2f2f3);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8AQMAAAAAMksxAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAZQTFRF8fHxAAAAMCd7XAAAAAJ0Uk5T/wDltzBKAAABJUlEQVR4nFVSy23EIBCdAiKxBaxCC1tBaGk7YG/OjZYSOQptLKKB8Y0D8ssbjBPl9gQz7wfigQbgQxygEXjIAjwDcJEV+PbYb1KAlNDusgE+Q1Va3EPFptJDjwVVZfcNiqwCV9BiIlhW9DdPkEn5GggKRV4igVL2AYJGpc8TFAMa5lXhzHuc69dwEO6DkBI9OhNVii60ERu3VxrjRUVRet7DsMoUbpgny+LRb5b0K2C/CAWejCxCSYVl9wcQSaMEzuRRArcqebzxcMCnUcKQsBKiiVoJoR1+4DfWSodILCGa5zXTvKWo5L5ars0C/iuh003F7GecbG62YVujunzypDqZTcsK76HF2UYP41HM4WoO7eEWNLUUyaHf/3L9JvXnBwjzS/wAoXR0PDbjCSUAAAAASUVORK5CYII=) repeat var(--devui-unavailable, #f5f5f5);display:flex;justify-content:center;pointer-events:all}:host div{flex:auto;padding:16px;display:flex;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}:host div.active{background-color:var(--devui-waiting, #beccfa)}:host.plugin-hover>div{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.DroppableDirective, selector: "[dDroppable]", inputs: ["dragOverClass", "dropScope", "placeholderTag", "placeholderStyle", "placeholderText", "allowDropOnItem", "dragOverItemClass", "nestingTargetRect", "switchWhileCrossEdge", "defaultDropPosition", "dropSortCountSelector", "dropSortVirtualScrollOption"], outputs: ["dragEnterEvent", "dragOverEvent", "dragLeaveEvent", "dropEvent"] }] });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemBlankComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'rs-item-blank', template: "<div\n dDroppable\n [dropScope]=\"'default'\"\n dragOverClass=\"active\"\n (dropEvent)=\"dropEvent($event)\"\n>\n <span>\u62D6\u62FD\u7EC4\u4EF6\u5230\u6B64\u5904</span>\n</div>\n", styles: [":host{flex:auto;margin:16px;border:1px solid var(--devui-dividing-line, #f2f2f3);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8AQMAAAAAMksxAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAZQTFRF8fHxAAAAMCd7XAAAAAJ0Uk5T/wDltzBKAAABJUlEQVR4nFVSy23EIBCdAiKxBaxCC1tBaGk7YG/OjZYSOQptLKKB8Y0D8ssbjBPl9gQz7wfigQbgQxygEXjIAjwDcJEV+PbYb1KAlNDusgE+Q1Va3EPFptJDjwVVZfcNiqwCV9BiIlhW9DdPkEn5GggKRV4igVL2AYJGpc8TFAMa5lXhzHuc69dwEO6DkBI9OhNVii60ERu3VxrjRUVRet7DsMoUbpgny+LRb5b0K2C/CAWejCxCSYVl9wcQSaMEzuRRArcqebzxcMCnUcKQsBKiiVoJoR1+4DfWSodILCGa5zXTvKWo5L5ars0C/iuh003F7GecbG62YVujunzypDqZTcsK76HF2UYP41HM4WoO7eEWNLUUyaHf/3L9JvXnBwjzS/wAoXR0PDbjCSUAAAAASUVORK5CYII=) repeat var(--devui-unavailable, #f5f5f5);display:flex;justify-content:center;pointer-events:all}:host div{flex:auto;padding:16px;display:flex;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}:host div.active{background-color:var(--devui-waiting, #beccfa)}:host.plugin-hover>div{pointer-events:none}\n"] }]
|
|
17
|
+
}], propDecorators: { dropItem: [{
|
|
18
|
+
type: Output
|
|
19
|
+
}] } });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1ibGFuay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL2JveC1pdGVtL2l0ZW0tYmxhbmsvaXRlbS1ibGFuay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL2JveC1pdGVtL2l0ZW0tYmxhbmsvaXRlbS1ibGFuay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQU85RCxNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBT0UsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7S0FLL0I7SUFIQyxTQUFTLENBQUMsTUFBVztRQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEMsQ0FBQzs7K0dBTlUsa0JBQWtCO21HQUFsQixrQkFBa0Isd0ZDUC9CLDBMQVFBOzJGRERhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxlQUFlOzhCQU16QixRQUFRO3NCQURQLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdycy1pdGVtLWJsYW5rJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2l0ZW0tYmxhbmsuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pdGVtLWJsYW5rLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSXRlbUJsYW5rQ29tcG9uZW50IHtcbiAgQE91dHB1dCgpXG4gIGRyb3BJdGVtID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGRyb3BFdmVudCgkZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuZHJvcEl0ZW0uZW1pdCgkZXZlbnQuZHJhZ0RhdGEpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGREcm9wcGFibGVcbiAgW2Ryb3BTY29wZV09XCInZGVmYXVsdCdcIlxuICBkcmFnT3ZlckNsYXNzPVwiYWN0aXZlXCJcbiAgKGRyb3BFdmVudCk9XCJkcm9wRXZlbnQoJGV2ZW50KVwiXG4+XG4gIDxzcGFuPuaLluaLvee7hOS7tuWIsOatpOWkhDwvc3Bhbj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Component, ViewChild, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import { PluginManager } from "../../PluginManager";
|
|
3
|
+
import { PluginFactory } from "coast-plugin-register";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class ItemConfigComponent {
|
|
6
|
+
ngOnInit() {
|
|
7
|
+
PluginManager.activeItem.subscribe(item => {
|
|
8
|
+
if (!item) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
this.pageConfigContent.clear();
|
|
12
|
+
const pluginConfig = PluginFactory.getConfig(item.config?.name);
|
|
13
|
+
if (!pluginConfig) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
const componentRef = this.pageConfigContent.createComponent(pluginConfig.component);
|
|
17
|
+
const instance = componentRef.instance;
|
|
18
|
+
instance.config = item.config.pluginConfig;
|
|
19
|
+
instance.configChange.subscribe(() => {
|
|
20
|
+
const componentRef = PluginManager.createComponent(item.boxItem, item.index, item.style, item.config, true);
|
|
21
|
+
componentRef.location.nativeElement.click();
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
ItemConfigComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
ItemConfigComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ItemConfigComponent, selector: "rs-item-config", viewQueries: [{ propertyName: "pageConfigContent", first: true, predicate: ["pageConfigContent"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #pageConfigContent></ng-container>\n", styles: [""] });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemConfigComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'rs-item-config', template: "<ng-container #pageConfigContent></ng-container>\n" }]
|
|
31
|
+
}], propDecorators: { pageConfigContent: [{
|
|
32
|
+
type: ViewChild,
|
|
33
|
+
args: ['pageConfigContent', { static: true, read: ViewContainerRef }]
|
|
34
|
+
}] } });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1jb25maWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvYm94LWNvbnRhaW5lci9ib3gtaXRlbS9pdGVtLWNvbmZpZy9pdGVtLWNvbmZpZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL2JveC1pdGVtL2l0ZW0tY29uZmlnL2l0ZW0tY29uZmlnLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsU0FBUyxFQUFFLGdCQUFnQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7O0FBT3BELE1BQU0sT0FBTyxtQkFBbUI7SUFHOUIsUUFBUTtRQUNOLGFBQWEsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3hDLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ1QsT0FBTzthQUNSO1lBQ0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxDQUFDO1lBQy9CLE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUNqQixPQUFPO2FBQ1I7WUFDRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNwRixNQUFNLFFBQVEsR0FBUSxZQUFZLENBQUMsUUFBUSxDQUFDO1lBQzVDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7WUFDM0MsUUFBUSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNuQyxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzVHLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztnSEFyQlUsbUJBQW1CO29HQUFuQixtQkFBbUIseUpBQ3VCLGdCQUFnQiwyQ0NWdkUsb0RBQ0E7MkZEUWEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGdCQUFnQjs4QkFLOEMsaUJBQWlCO3NCQUF4RixTQUFTO3VCQUFDLG1CQUFtQixFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtQbHVnaW5NYW5hZ2VyfSBmcm9tIFwiLi4vLi4vUGx1Z2luTWFuYWdlclwiO1xuaW1wb3J0IHtQbHVnaW5GYWN0b3J5fSBmcm9tIFwiY29hc3QtcGx1Z2luLXJlZ2lzdGVyXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JzLWl0ZW0tY29uZmlnJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2l0ZW0tY29uZmlnLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaXRlbS1jb25maWcuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBJdGVtQ29uZmlnQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQFZpZXdDaGlsZCgncGFnZUNvbmZpZ0NvbnRlbnQnLCB7c3RhdGljOiB0cnVlLCByZWFkOiBWaWV3Q29udGFpbmVyUmVmfSkgcGFnZUNvbmZpZ0NvbnRlbnQhOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIFBsdWdpbk1hbmFnZXIuYWN0aXZlSXRlbS5zdWJzY3JpYmUoaXRlbSA9PiB7XG4gICAgICBpZiAoIWl0ZW0pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5wYWdlQ29uZmlnQ29udGVudC5jbGVhcigpO1xuICAgICAgY29uc3QgcGx1Z2luQ29uZmlnID0gUGx1Z2luRmFjdG9yeS5nZXRDb25maWcoaXRlbS5jb25maWc/Lm5hbWUpO1xuICAgICAgaWYgKCFwbHVnaW5Db25maWcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5wYWdlQ29uZmlnQ29udGVudC5jcmVhdGVDb21wb25lbnQocGx1Z2luQ29uZmlnLmNvbXBvbmVudCk7XG4gICAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gY29tcG9uZW50UmVmLmluc3RhbmNlO1xuICAgICAgaW5zdGFuY2UuY29uZmlnID0gaXRlbS5jb25maWcucGx1Z2luQ29uZmlnO1xuICAgICAgaW5zdGFuY2UuY29uZmlnQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IFBsdWdpbk1hbmFnZXIuY3JlYXRlQ29tcG9uZW50KGl0ZW0uYm94SXRlbSwgaXRlbS5pbmRleCwgaXRlbS5zdHlsZSwgaXRlbS5jb25maWcsIHRydWUpO1xuICAgICAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5jbGljaygpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgI3BhZ2VDb25maWdDb250ZW50PjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Component, ViewChild, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import { PluginManager } from "../../PluginManager";
|
|
3
|
+
import { StyleBlankComponent } from "./style-blank/style-blank.component";
|
|
4
|
+
import { StyleComponent } from "./style/style.component";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class ItemStyleComponent {
|
|
7
|
+
constructor(changeDetectorRef) {
|
|
8
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
9
|
+
}
|
|
10
|
+
ngOnInit() {
|
|
11
|
+
this.pageStyleContent.createComponent(StyleBlankComponent);
|
|
12
|
+
PluginManager.activeItem.subscribe(item => {
|
|
13
|
+
this.pageStyleContent.clear();
|
|
14
|
+
if (item) {
|
|
15
|
+
const componentRef = this.pageStyleContent.createComponent(StyleComponent);
|
|
16
|
+
const instance = componentRef.instance;
|
|
17
|
+
instance.style = item.style;
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
this.pageStyleContent.createComponent(StyleBlankComponent);
|
|
21
|
+
this.changeDetectorRef.detectChanges();
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
ItemStyleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemStyleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
ItemStyleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ItemStyleComponent, selector: "rs-item-style", viewQueries: [{ propertyName: "pageStyleContent", first: true, predicate: ["pageStyleContent"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #pageStyleContent></ng-container>\n", styles: [""] });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ItemStyleComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'rs-item-style', template: "<ng-container #pageStyleContent></ng-container>\n" }]
|
|
31
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { pageStyleContent: [{
|
|
32
|
+
type: ViewChild,
|
|
33
|
+
args: ['pageStyleContent', { static: true, read: ViewContainerRef }]
|
|
34
|
+
}] } });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1zdHlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL2JveC1pdGVtL2l0ZW0tc3R5bGUvaXRlbS1zdHlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL2JveC1pdGVtL2l0ZW0tc3R5bGUvaXRlbS1zdHlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBVSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQzs7QUFPdkQsTUFBTSxPQUFPLGtCQUFrQjtJQUc3QixZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUN4RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUMzRCxhQUFhLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN4QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDOUIsSUFBSSxJQUFJLEVBQUU7Z0JBQ1IsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDM0UsTUFBTSxRQUFRLEdBQVEsWUFBWSxDQUFDLFFBQVEsQ0FBQztnQkFDNUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO2FBQzdCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsbUJBQW1CLENBQUMsQ0FBQztnQkFDM0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3hDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzsrR0FuQlUsa0JBQWtCO21HQUFsQixrQkFBa0Isc0pBQ3VCLGdCQUFnQiwyQ0NYdEUsbURBQ0E7MkZEU2Esa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGVBQWU7d0dBSzhDLGdCQUFnQjtzQkFBdEYsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1BsdWdpbk1hbmFnZXJ9IGZyb20gXCIuLi8uLi9QbHVnaW5NYW5hZ2VyXCI7XG5pbXBvcnQge1N0eWxlQmxhbmtDb21wb25lbnR9IGZyb20gXCIuL3N0eWxlLWJsYW5rL3N0eWxlLWJsYW5rLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtTdHlsZUNvbXBvbmVudH0gZnJvbSBcIi4vc3R5bGUvc3R5bGUuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JzLWl0ZW0tc3R5bGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vaXRlbS1zdHlsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2l0ZW0tc3R5bGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBJdGVtU3R5bGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKCdwYWdlU3R5bGVDb250ZW50Jywge3N0YXRpYzogdHJ1ZSwgcmVhZDogVmlld0NvbnRhaW5lclJlZn0pIHBhZ2VTdHlsZUNvbnRlbnQhOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBhZ2VTdHlsZUNvbnRlbnQuY3JlYXRlQ29tcG9uZW50KFN0eWxlQmxhbmtDb21wb25lbnQpO1xuICAgIFBsdWdpbk1hbmFnZXIuYWN0aXZlSXRlbS5zdWJzY3JpYmUoaXRlbSA9PiB7XG4gICAgICB0aGlzLnBhZ2VTdHlsZUNvbnRlbnQuY2xlYXIoKTtcbiAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMucGFnZVN0eWxlQ29udGVudC5jcmVhdGVDb21wb25lbnQoU3R5bGVDb21wb25lbnQpO1xuICAgICAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gY29tcG9uZW50UmVmLmluc3RhbmNlO1xuICAgICAgICBpbnN0YW5jZS5zdHlsZSA9IGl0ZW0uc3R5bGU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnBhZ2VTdHlsZUNvbnRlbnQuY3JlYXRlQ29tcG9uZW50KFN0eWxlQmxhbmtDb21wb25lbnQpO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAjcGFnZVN0eWxlQ29udGVudD48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "ng-devui/input-number";
|
|
5
|
+
import * as i3 from "@angular/forms";
|
|
6
|
+
export class StyleComponent {
|
|
7
|
+
ngOnInit() {
|
|
8
|
+
this.style.width = this.style.width ? this.style.width : 'auto';
|
|
9
|
+
this.style.height = this.style.height ? this.style.height : 'auto';
|
|
10
|
+
if (this.style.width !== 'auto') {
|
|
11
|
+
this.width = this.style.width.substring(0, this.style.width.length - 2);
|
|
12
|
+
}
|
|
13
|
+
if (this.style.height !== 'auto') {
|
|
14
|
+
this.height = this.style.height.substring(0, this.style.height.length - 2);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
select(name, value) {
|
|
18
|
+
const that = this;
|
|
19
|
+
if (value === 'auto') {
|
|
20
|
+
this.style[name] = 'auto';
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
if (!that[name]) {
|
|
24
|
+
that[name] = value;
|
|
25
|
+
}
|
|
26
|
+
this.style[name] = that[name] + 'px';
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
typing(name, value) {
|
|
30
|
+
if (value) {
|
|
31
|
+
this.style[name] = value + 'px';
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this.style[name] = 'auto';
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
StyleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
+
StyleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: StyleComponent, selector: "rs-style", ngImport: i0, template: "<div class=\"config-item\">\n <div class=\"item-title\">\u5BBD\u5EA6\u7C7B\u578B</div>\n <div class=\"item-setting\">\n <div class=\"card-style-radio\">\n <div class=\"radio-value\" [ngClass]=\"!style.width || style.width === 'auto' ? 'active' : ''\"\n (click)=\"select('width','auto')\">\n <span>\u81EA\u9002\u5E94</span>\n </div>\n <div class=\"radio-value\" [ngClass]=\"style.width && style.width !== 'auto' ? 'active' : ''\"\n (click)=\"select('width',240)\">\n <span>\u56FA\u5B9A\u503C</span>\n </div>\n </div>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u56FA\u5B9A\u5BBD\u5EA6</div>\n <div class=\"item-setting\">\n <d-input-number [allowEmpty]=\"true\" [(ngModel)]=\"width\"\n (whileValueChanging)=\"typing('width', $event)\"></d-input-number>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u9AD8\u5EA6\u7C7B\u578B</div>\n <div class=\"item-setting\">\n <div class=\"card-style-radio\">\n <div class=\"radio-value\" [ngClass]=\"!style.height || style.height === 'auto' ? 'active' : ''\"\n (click)=\"select('height','auto')\">\n <span>\u81EA\u9002\u5E94</span>\n </div>\n <div class=\"radio-value\" [ngClass]=\"style.height && style.height !== 'auto' ? 'active' : ''\"\n (click)=\"select('height',800)\">\n <span>\u56FA\u5B9A\u503C</span>\n </div>\n </div>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u56FA\u5B9A\u9AD8\u5EA6</div>\n <div class=\"item-setting\">\n <d-input-number [allowEmpty]=\"true\" [(ngModel)]=\"height\"\n (whileValueChanging)=\"typing('height', $event)\"></d-input-number>\n </div>\n</div>\n", styles: [":host .config-item{display:flex;margin:8px;align-items:center}:host .config-item .item-title{flex:0 0 80px}:host .config-item .item-setting{flex:auto;display:flex}:host .config-item .item-setting .card-style-radio{flex:auto;display:flex;justify-content:stretch}:host .config-item .item-setting .card-style-radio .radio-value{flex:auto;border:1px solid var(--devui-dividing-line, #f2f2f3);text-align:center;padding:4px;margin-left:-1px;cursor:pointer}:host .config-item .item-setting .card-style-radio .radio-value span{-webkit-user-select:none;user-select:none}:host .config-item .item-setting .card-style-radio .radio-value.active{color:var(--devui-brand, #5e7ce0);border:1px solid var(--devui-brand, #5e7ce0);z-index:1}:host .config-item .item-setting d-input-number{flex:auto}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.InputNumberComponent, selector: "d-input-number", inputs: ["step", "disabled", "size", "decimalLimit", "autoFocus", "allowEmpty", "placeholder", "maxLength", "reg", "styleType", "min", "max"], outputs: ["afterValueChanged", "whileValueChanging"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleComponent, decorators: [{
|
|
41
|
+
type: Component,
|
|
42
|
+
args: [{ selector: 'rs-style', template: "<div class=\"config-item\">\n <div class=\"item-title\">\u5BBD\u5EA6\u7C7B\u578B</div>\n <div class=\"item-setting\">\n <div class=\"card-style-radio\">\n <div class=\"radio-value\" [ngClass]=\"!style.width || style.width === 'auto' ? 'active' : ''\"\n (click)=\"select('width','auto')\">\n <span>\u81EA\u9002\u5E94</span>\n </div>\n <div class=\"radio-value\" [ngClass]=\"style.width && style.width !== 'auto' ? 'active' : ''\"\n (click)=\"select('width',240)\">\n <span>\u56FA\u5B9A\u503C</span>\n </div>\n </div>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u56FA\u5B9A\u5BBD\u5EA6</div>\n <div class=\"item-setting\">\n <d-input-number [allowEmpty]=\"true\" [(ngModel)]=\"width\"\n (whileValueChanging)=\"typing('width', $event)\"></d-input-number>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u9AD8\u5EA6\u7C7B\u578B</div>\n <div class=\"item-setting\">\n <div class=\"card-style-radio\">\n <div class=\"radio-value\" [ngClass]=\"!style.height || style.height === 'auto' ? 'active' : ''\"\n (click)=\"select('height','auto')\">\n <span>\u81EA\u9002\u5E94</span>\n </div>\n <div class=\"radio-value\" [ngClass]=\"style.height && style.height !== 'auto' ? 'active' : ''\"\n (click)=\"select('height',800)\">\n <span>\u56FA\u5B9A\u503C</span>\n </div>\n </div>\n </div>\n</div>\n<div class=\"config-item\">\n <div class=\"item-title\">\u56FA\u5B9A\u9AD8\u5EA6</div>\n <div class=\"item-setting\">\n <d-input-number [allowEmpty]=\"true\" [(ngModel)]=\"height\"\n (whileValueChanging)=\"typing('height', $event)\"></d-input-number>\n </div>\n</div>\n", styles: [":host .config-item{display:flex;margin:8px;align-items:center}:host .config-item .item-title{flex:0 0 80px}:host .config-item .item-setting{flex:auto;display:flex}:host .config-item .item-setting .card-style-radio{flex:auto;display:flex;justify-content:stretch}:host .config-item .item-setting .card-style-radio .radio-value{flex:auto;border:1px solid var(--devui-dividing-line, #f2f2f3);text-align:center;padding:4px;margin-left:-1px;cursor:pointer}:host .config-item .item-setting .card-style-radio .radio-value span{-webkit-user-select:none;user-select:none}:host .config-item .item-setting .card-style-radio .radio-value.active{color:var(--devui-brand, #5e7ce0);border:1px solid var(--devui-brand, #5e7ce0);z-index:1}:host .config-item .item-setting d-input-number{flex:auto}\n"] }]
|
|
43
|
+
}] });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvYm94LWNvbnRhaW5lci9ib3gtaXRlbS9pdGVtLXN0eWxlL3N0eWxlL3N0eWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2JveC1jb250YWluZXIvYm94LWl0ZW0vaXRlbS1zdHlsZS9zdHlsZS9zdHlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFTLE1BQU0sZUFBZSxDQUFDOzs7OztBQU9oRCxNQUFNLE9BQU8sY0FBYztJQUt6QixRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDaEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDbkUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssS0FBSyxNQUFNLEVBQUU7WUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN6RTtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssTUFBTSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDNUU7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVksRUFBRSxLQUFVO1FBQzdCLE1BQU0sSUFBSSxHQUFRLElBQUksQ0FBQztRQUN2QixJQUFJLEtBQUssS0FBSyxNQUFNLEVBQUU7WUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUM7U0FDM0I7YUFBTTtZQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQzthQUNwQjtZQUNELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQztTQUN0QztJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsSUFBWSxFQUFFLEtBQVU7UUFDN0IsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUM7U0FDakM7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQzs7MkdBbENVLGNBQWM7K0ZBQWQsY0FBYyxnRENQM0IsNHZEQTRDQTsyRkRyQ2EsY0FBYztrQkFMMUIsU0FBUzsrQkFDRSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JzLXN0eWxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0eWxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTdHlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHN0eWxlOiBhbnk7XG4gIHdpZHRoOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIGhlaWdodDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3R5bGUud2lkdGggPSB0aGlzLnN0eWxlLndpZHRoID8gdGhpcy5zdHlsZS53aWR0aCA6ICdhdXRvJztcbiAgICB0aGlzLnN0eWxlLmhlaWdodCA9IHRoaXMuc3R5bGUuaGVpZ2h0ID8gdGhpcy5zdHlsZS5oZWlnaHQgOiAnYXV0byc7XG4gICAgaWYgKHRoaXMuc3R5bGUud2lkdGggIT09ICdhdXRvJykge1xuICAgICAgdGhpcy53aWR0aCA9IHRoaXMuc3R5bGUud2lkdGguc3Vic3RyaW5nKDAsIHRoaXMuc3R5bGUud2lkdGgubGVuZ3RoIC0gMik7XG4gICAgfVxuICAgIGlmICh0aGlzLnN0eWxlLmhlaWdodCAhPT0gJ2F1dG8nKSB7XG4gICAgICB0aGlzLmhlaWdodCA9IHRoaXMuc3R5bGUuaGVpZ2h0LnN1YnN0cmluZygwLCB0aGlzLnN0eWxlLmhlaWdodC5sZW5ndGggLSAyKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3QobmFtZTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XG4gICAgY29uc3QgdGhhdDogYW55ID0gdGhpcztcbiAgICBpZiAodmFsdWUgPT09ICdhdXRvJykge1xuICAgICAgdGhpcy5zdHlsZVtuYW1lXSA9ICdhdXRvJztcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCF0aGF0W25hbWVdKSB7XG4gICAgICAgIHRoYXRbbmFtZV0gPSB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc3R5bGVbbmFtZV0gPSB0aGF0W25hbWVdICsgJ3B4JztcbiAgICB9XG4gIH1cblxuICB0eXBpbmcobmFtZTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnN0eWxlW25hbWVdID0gdmFsdWUgKyAncHgnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0eWxlW25hbWVdID0gJ2F1dG8nO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNvbmZpZy1pdGVtXCI+XG4gIDxkaXYgY2xhc3M9XCJpdGVtLXRpdGxlXCI+5a695bqm57G75Z6LPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJpdGVtLXNldHRpbmdcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1zdHlsZS1yYWRpb1wiPlxuICAgICAgPGRpdiBjbGFzcz1cInJhZGlvLXZhbHVlXCIgW25nQ2xhc3NdPVwiIXN0eWxlLndpZHRoIHx8IHN0eWxlLndpZHRoID09PSAnYXV0bycgPyAnYWN0aXZlJyA6ICcnXCJcbiAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdCgnd2lkdGgnLCdhdXRvJylcIj5cbiAgICAgICAgPHNwYW4+6Ieq6YCC5bqUPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmFkaW8tdmFsdWVcIiBbbmdDbGFzc109XCJzdHlsZS53aWR0aCAmJiBzdHlsZS53aWR0aCAhPT0gJ2F1dG8nID8gJ2FjdGl2ZScgOiAnJ1wiXG4gICAgICAgICAgIChjbGljayk9XCJzZWxlY3QoJ3dpZHRoJywyNDApXCI+XG4gICAgICAgIDxzcGFuPuWbuuWumuWAvDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImNvbmZpZy1pdGVtXCI+XG4gIDxkaXYgY2xhc3M9XCJpdGVtLXRpdGxlXCI+5Zu65a6a5a695bqmPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJpdGVtLXNldHRpbmdcIj5cbiAgICA8ZC1pbnB1dC1udW1iZXIgW2FsbG93RW1wdHldPVwidHJ1ZVwiIFsobmdNb2RlbCldPVwid2lkdGhcIlxuICAgICAgICAgICAgICAgICAgICAod2hpbGVWYWx1ZUNoYW5naW5nKT1cInR5cGluZygnd2lkdGgnLCAkZXZlbnQpXCI+PC9kLWlucHV0LW51bWJlcj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJjb25maWctaXRlbVwiPlxuICA8ZGl2IGNsYXNzPVwiaXRlbS10aXRsZVwiPumrmOW6puexu+WeizwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiaXRlbS1zZXR0aW5nXCI+XG4gICAgPGRpdiBjbGFzcz1cImNhcmQtc3R5bGUtcmFkaW9cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyYWRpby12YWx1ZVwiIFtuZ0NsYXNzXT1cIiFzdHlsZS5oZWlnaHQgfHwgc3R5bGUuaGVpZ2h0ID09PSAnYXV0bycgPyAnYWN0aXZlJyA6ICcnXCJcbiAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdCgnaGVpZ2h0JywnYXV0bycpXCI+XG4gICAgICAgIDxzcGFuPuiHqumAguW6lDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJhZGlvLXZhbHVlXCIgW25nQ2xhc3NdPVwic3R5bGUuaGVpZ2h0ICYmIHN0eWxlLmhlaWdodCAhPT0gJ2F1dG8nID8gJ2FjdGl2ZScgOiAnJ1wiXG4gICAgICAgICAgIChjbGljayk9XCJzZWxlY3QoJ2hlaWdodCcsODAwKVwiPlxuICAgICAgICA8c3Bhbj7lm7rlrprlgLw8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJjb25maWctaXRlbVwiPlxuICA8ZGl2IGNsYXNzPVwiaXRlbS10aXRsZVwiPuWbuuWumumrmOW6pjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiaXRlbS1zZXR0aW5nXCI+XG4gICAgPGQtaW5wdXQtbnVtYmVyIFthbGxvd0VtcHR5XT1cInRydWVcIiBbKG5nTW9kZWwpXT1cImhlaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICh3aGlsZVZhbHVlQ2hhbmdpbmcpPVwidHlwaW5nKCdoZWlnaHQnLCAkZXZlbnQpXCI+PC9kLWlucHV0LW51bWJlcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class StyleBlankComponent {
|
|
4
|
+
}
|
|
5
|
+
StyleBlankComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleBlankComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6
|
+
StyleBlankComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: StyleBlankComponent, selector: "rs-style-blank", ngImport: i0, template: "<div>\n <span>\u8BF7\u5728\u5DE6\u4FA7\u753B\u5E03\u9009\u4E2D\u8282\u70B9</span>\n</div>\n", styles: [":host{height:80px;margin:8px;display:flex;justify-content:center}:host div{flex:auto;display:flex;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}\n"] });
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StyleBlankComponent, decorators: [{
|
|
8
|
+
type: Component,
|
|
9
|
+
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;justify-content:center}:host div{flex:auto;display:flex;justify-content:center;align-items:center}:host div span{text-align:center;-webkit-user-select:none;user-select:none}\n"] }]
|
|
10
|
+
}] });
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtYmxhbmsuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvYm94LWNvbnRhaW5lci9ib3gtaXRlbS9pdGVtLXN0eWxlL3N0eWxlLWJsYW5rL3N0eWxlLWJsYW5rLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2JveC1jb250YWluZXIvYm94LWl0ZW0vaXRlbS1zdHlsZS9zdHlsZS1ibGFuay9zdHlsZS1ibGFuay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQU94QyxNQUFNLE9BQU8sbUJBQW1COztnSEFBbkIsbUJBQW1CO29HQUFuQixtQkFBbUIsc0RDUGhDLDhGQUdBOzJGRElhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JzLXN0eWxlLWJsYW5rJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0eWxlLWJsYW5rLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUtYmxhbmsuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTdHlsZUJsYW5rQ29tcG9uZW50IHtcbn1cbiIsIjxkaXY+XG4gIDxzcGFuPuivt+WcqOW3puS+p+eUu+W4g+mAieS4reiKgueCuTwvc3Bhbj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class DividerLineComponent {
|
|
4
|
+
get _style() {
|
|
5
|
+
if (!this.targetElement) {
|
|
6
|
+
return {};
|
|
7
|
+
}
|
|
8
|
+
const elementRect = this.targetElement.getBoundingClientRect();
|
|
9
|
+
if (this.direction === 'row') {
|
|
10
|
+
return {
|
|
11
|
+
height: elementRect.width + 'px'
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
if (this.direction === 'column') {
|
|
15
|
+
return {
|
|
16
|
+
height: elementRect.height + 'px'
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
return {};
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
DividerLineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DividerLineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
+
DividerLineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: DividerLineComponent, selector: "rs-divider-line", inputs: { direction: "direction", targetElement: "targetElement" }, host: { properties: { "style": "this._style" } }, ngImport: i0, template: "", styles: ["coast-divider:hover>:host{position:absolute;top:-5px;border:1px dashed var(--devui-brand, #5e7ce0)}\n"] });
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DividerLineComponent, decorators: [{
|
|
25
|
+
type: Component,
|
|
26
|
+
args: [{ selector: 'rs-divider-line', template: "", styles: ["coast-divider:hover>:host{position:absolute;top:-5px;border:1px dashed var(--devui-brand, #5e7ce0)}\n"] }]
|
|
27
|
+
}], propDecorators: { direction: [{
|
|
28
|
+
type: Input
|
|
29
|
+
}], targetElement: [{
|
|
30
|
+
type: Input
|
|
31
|
+
}], _style: [{
|
|
32
|
+
type: HostBinding,
|
|
33
|
+
args: ['style']
|
|
34
|
+
}] } });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGl2aWRlci1saW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2JveC1jb250YWluZXIvcGx1Z2luLWFjdGl2ZS9kaXZpZGVyL2RpdmlkZXItbGluZS9kaXZpZGVyLWxpbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJzLWFudC9zcmMvYm94LWNvbnRhaW5lci9wbHVnaW4tYWN0aXZlL2RpdmlkZXIvZGl2aWRlci1saW5lL2RpdmlkZXItbGluZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBTzVELE1BQU0sT0FBTyxvQkFBb0I7SUFNL0IsSUFBMEIsTUFBTTtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQy9ELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLEVBQUU7WUFDNUIsT0FBTztnQkFDTCxNQUFNLEVBQUUsV0FBVyxDQUFDLEtBQUssR0FBRyxJQUFJO2FBQ2pDLENBQUM7U0FDSDtRQUNELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxRQUFRLEVBQUU7WUFDL0IsT0FBTztnQkFDTCxNQUFNLEVBQUUsV0FBVyxDQUFDLE1BQU0sR0FBRyxJQUFJO2FBQ2xDLENBQUM7U0FDSDtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7aUhBdEJVLG9CQUFvQjtxR0FBcEIsb0JBQW9CLDZLQ1BqQyxFQUFBOzJGRE9hLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxpQkFBaUI7OEJBTTNCLFNBQVM7c0JBRFIsS0FBSztnQkFHTixhQUFhO3NCQURaLEtBQUs7Z0JBR29CLE1BQU07c0JBQS9CLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdycy1kaXZpZGVyLWxpbmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGl2aWRlci1saW5lLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGl2aWRlci1saW5lLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRGl2aWRlckxpbmVDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBkaXJlY3Rpb24/OiAncm93JyB8ICdjb2x1bW4nO1xuICBASW5wdXQoKVxuICB0YXJnZXRFbGVtZW50OiBhbnk7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZScpIGdldCBfc3R5bGUoKSB7XG4gICAgaWYgKCF0aGlzLnRhcmdldEVsZW1lbnQpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgY29uc3QgZWxlbWVudFJlY3QgPSB0aGlzLnRhcmdldEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgaWYgKHRoaXMuZGlyZWN0aW9uID09PSAncm93Jykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiBlbGVtZW50UmVjdC53aWR0aCArICdweCdcbiAgICAgIH07XG4gICAgfVxuICAgIGlmICh0aGlzLmRpcmVjdGlvbiA9PT0gJ2NvbHVtbicpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGhlaWdodDogZWxlbWVudFJlY3QuaGVpZ2h0ICsgJ3B4J1xuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHt9O1xuICB9XG59XG4iLCIiXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Component, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./divider-line/divider-line.component";
|
|
4
|
+
export class DividerComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.dividerClick = new EventEmitter();
|
|
7
|
+
}
|
|
8
|
+
get _style() {
|
|
9
|
+
if (!this.targetElement) {
|
|
10
|
+
return {};
|
|
11
|
+
}
|
|
12
|
+
const elementRect = this.targetElement.getBoundingClientRect();
|
|
13
|
+
if (this.direction === 'row') {
|
|
14
|
+
return {
|
|
15
|
+
top: elementRect.height / 2 - 12 + 'px',
|
|
16
|
+
left: '4px',
|
|
17
|
+
transform: 'rotate(270deg)'
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
if (this.direction === 'column') {
|
|
21
|
+
return {
|
|
22
|
+
top: '4px',
|
|
23
|
+
left: elementRect.width / 2 - 12 + 'px'
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
return {};
|
|
27
|
+
}
|
|
28
|
+
onClick() {
|
|
29
|
+
this.dividerClick.emit();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
DividerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DividerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
+
DividerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: DividerComponent, selector: "rs-divider", inputs: { direction: "direction", targetElement: "targetElement" }, outputs: { dividerClick: "dividerClick" }, host: { listeners: { "click": "onClick()" }, properties: { "style": "this._style" } }, ngImport: i0, template: "<div class=\"divider-image\"></div>\n<rs-divider-line [targetElement]=\"targetElement\" [direction]=\"direction\"></rs-divider-line>\n", styles: [":host{position:absolute;display:flex;justify-content:center;align-items:center;width:24px;height:24px;background-color:#fff;border-radius:12px;cursor:pointer;pointer-events:all}:host .divider-image{width:12px;height:12px;background-size:contain;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAACO0lEQVRIDa2Uy6tNURzHN7cwMUAmHncot0QeV5QiBgZKmWEgzDDx+ANu5soMcUkxIY+iEFIKEZnIyMC9GZAMrke6hXt9Pvus1VnntPbZ53B/9dnrt36P7zpr7bVPUTRtD+5j+Arv4QwshDpbTIG1o2CvGmq12CVmk/ADnsGnMHccgCpbRiLWjuA/BTXUUrM0VzNwD+aVkcbjIMNveJnEUrePyWuYgP1JYi6+WmqWO3FLrpqKMy3tHE8LtzemLc99ITfcEm1MXERNtYsxcGs520nQBV61JWcyHw253W25OFVzbDqPj1D1MheF6tWM24LvcAD6w7yqdwF5tYvT4K90y6m5zQ/wE37BC9Bmw2f4Ah6DNdamFo/vlEHP3pvwB87CLjgGNrrwEbgY/K2MQ8E/zHg0+NbaY68aaqmpdmlLeT4HBSPf8RXQloA3ylvzDTx/34OmsLWxz9Hdqtlivo/l4NXy1syB1C4ziSK547THXjXU6tk20uECnn1fz91dNJynJu5gUxf1PZV4nr6DdzABj2BK7Rpq/votcDX4GxinxNagovjDoOZLdBcPwvy/h/souMDaROlGiK1PYv/kbg5C19u6V4b43bZ4z1M/GF/uQKbzFjF3NpjJdRXaEQQuVFQr7AK3K/Idw36Jb2Ec+jtU3iHnIqs61GRTe4naeDKbbQbXhbqbzVC9N4OSEfAPbD7UmbfMa7uirjDmD+H464/HQM3oB2f9lVxd7l9vFoVv4ESuIRN7QkzxaZlc8RcdnI7tMHZBlAAAAABJRU5ErkJggg==)}:host:hover{background-color:var(--devui-brand, #5e7ce0)}\n"], dependencies: [{ kind: "component", type: i1.DividerLineComponent, selector: "rs-divider-line", inputs: ["direction", "targetElement"] }] });
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DividerComponent, decorators: [{
|
|
35
|
+
type: Component,
|
|
36
|
+
args: [{ selector: 'rs-divider', template: "<div class=\"divider-image\"></div>\n<rs-divider-line [targetElement]=\"targetElement\" [direction]=\"direction\"></rs-divider-line>\n", styles: [":host{position:absolute;display:flex;justify-content:center;align-items:center;width:24px;height:24px;background-color:#fff;border-radius:12px;cursor:pointer;pointer-events:all}:host .divider-image{width:12px;height:12px;background-size:contain;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAACO0lEQVRIDa2Uy6tNURzHN7cwMUAmHncot0QeV5QiBgZKmWEgzDDx+ANu5soMcUkxIY+iEFIKEZnIyMC9GZAMrke6hXt9Pvus1VnntPbZ53B/9dnrt36P7zpr7bVPUTRtD+5j+Arv4QwshDpbTIG1o2CvGmq12CVmk/ADnsGnMHccgCpbRiLWjuA/BTXUUrM0VzNwD+aVkcbjIMNveJnEUrePyWuYgP1JYi6+WmqWO3FLrpqKMy3tHE8LtzemLc99ITfcEm1MXERNtYsxcGs520nQBV61JWcyHw253W25OFVzbDqPj1D1MheF6tWM24LvcAD6w7yqdwF5tYvT4K90y6m5zQ/wE37BC9Bmw2f4Ah6DNdamFo/vlEHP3pvwB87CLjgGNrrwEbgY/K2MQ8E/zHg0+NbaY68aaqmpdmlLeT4HBSPf8RXQloA3ylvzDTx/34OmsLWxz9Hdqtlivo/l4NXy1syB1C4ziSK547THXjXU6tk20uECnn1fz91dNJynJu5gUxf1PZV4nr6DdzABj2BK7Rpq/votcDX4GxinxNagovjDoOZLdBcPwvy/h/souMDaROlGiK1PYv/kbg5C19u6V4b43bZ4z1M/GF/uQKbzFjF3NpjJdRXaEQQuVFQr7AK3K/Idw36Jb2Ec+jtU3iHnIqs61GRTe4naeDKbbQbXhbqbzVC9N4OSEfAPbD7UmbfMa7uirjDmD+H464/HQM3oB2f9lVxd7l9vFoVv4ESuIRN7QkzxaZlc8RcdnI7tMHZBlAAAAABJRU5ErkJggg==)}:host:hover{background-color:var(--devui-brand, #5e7ce0)}\n"] }]
|
|
37
|
+
}], propDecorators: { direction: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], targetElement: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], dividerClick: [{
|
|
42
|
+
type: Output
|
|
43
|
+
}], _style: [{
|
|
44
|
+
type: HostBinding,
|
|
45
|
+
args: ['style']
|
|
46
|
+
}], onClick: [{
|
|
47
|
+
type: HostListener,
|
|
48
|
+
args: ['click']
|
|
49
|
+
}] } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGl2aWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL3BsdWdpbi1hY3RpdmUvZGl2aWRlci9kaXZpZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2JveC1jb250YWluZXIvcGx1Z2luLWFjdGl2ZS9kaXZpZGVyL2RpdmlkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFPaEcsTUFBTSxPQUFPLGdCQUFnQjtJQUw3QjtRQVdFLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQTJCbkM7SUF6QkMsSUFBMEIsTUFBTTtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQy9ELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLEVBQUU7WUFDNUIsT0FBTztnQkFDTCxHQUFHLEVBQUUsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUk7Z0JBQ3ZDLElBQUksRUFBRSxLQUFLO2dCQUNYLFNBQVMsRUFBRSxnQkFBZ0I7YUFDNUIsQ0FBQztTQUNIO1FBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLFFBQVEsRUFBRTtZQUMvQixPQUFPO2dCQUNMLEdBQUcsRUFBRSxLQUFLO2dCQUNWLElBQUksRUFBRSxXQUFXLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSTthQUN4QyxDQUFDO1NBQ0g7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFHRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDOzs2R0FoQ1UsZ0JBQWdCO2lHQUFoQixnQkFBZ0Isd1BDUDdCLHdJQUVBOzJGREthLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxZQUFZOzhCQU10QixTQUFTO3NCQURSLEtBQUs7Z0JBR04sYUFBYTtzQkFEWixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsTUFBTTtnQkFHbUIsTUFBTTtzQkFBL0IsV0FBVzt1QkFBQyxPQUFPO2dCQXNCcEIsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncnMtZGl2aWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kaXZpZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGl2aWRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIERpdmlkZXJDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBkaXJlY3Rpb24/OiAncm93JyB8ICdjb2x1bW4nO1xuICBASW5wdXQoKVxuICB0YXJnZXRFbGVtZW50OiBhbnk7XG4gIEBPdXRwdXQoKVxuICBkaXZpZGVyQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZScpIGdldCBfc3R5bGUoKSB7XG4gICAgaWYgKCF0aGlzLnRhcmdldEVsZW1lbnQpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gICAgY29uc3QgZWxlbWVudFJlY3QgPSB0aGlzLnRhcmdldEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgaWYgKHRoaXMuZGlyZWN0aW9uID09PSAncm93Jykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdG9wOiBlbGVtZW50UmVjdC5oZWlnaHQgLyAyIC0gMTIgKyAncHgnLFxuICAgICAgICBsZWZ0OiAnNHB4JyxcbiAgICAgICAgdHJhbnNmb3JtOiAncm90YXRlKDI3MGRlZyknXG4gICAgICB9O1xuICAgIH1cbiAgICBpZiAodGhpcy5kaXJlY3Rpb24gPT09ICdjb2x1bW4nKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0b3A6ICc0cHgnLFxuICAgICAgICBsZWZ0OiBlbGVtZW50UmVjdC53aWR0aCAvIDIgLSAxMiArICdweCdcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgb25DbGljaygpIHtcbiAgICB0aGlzLmRpdmlkZXJDbGljay5lbWl0KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkaXZpZGVyLWltYWdlXCI+PC9kaXY+XG48cnMtZGl2aWRlci1saW5lIFt0YXJnZXRFbGVtZW50XT1cInRhcmdldEVsZW1lbnRcIiBbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiPjwvcnMtZGl2aWRlci1saW5lPlxuIl19
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Component, EventEmitter, HostBinding } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "./divider/divider.component";
|
|
5
|
+
export class PluginActiveComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.showClose = true;
|
|
8
|
+
this.showDivider = false;
|
|
9
|
+
this.itemRemove = new EventEmitter();
|
|
10
|
+
this.targetRect = {
|
|
11
|
+
width: 0,
|
|
12
|
+
height: 0
|
|
13
|
+
};
|
|
14
|
+
this._targetRect = {};
|
|
15
|
+
this.width = 0;
|
|
16
|
+
this._width = 0;
|
|
17
|
+
this.height = 0;
|
|
18
|
+
this._height = 0;
|
|
19
|
+
}
|
|
20
|
+
get _style() {
|
|
21
|
+
if (!this.targetElement) {
|
|
22
|
+
return {};
|
|
23
|
+
}
|
|
24
|
+
const elementRect = this.targetElement.getBoundingClientRect();
|
|
25
|
+
this._targetRect.width = elementRect.width;
|
|
26
|
+
this._targetRect.height = elementRect.height;
|
|
27
|
+
return {
|
|
28
|
+
width: elementRect.width + 'px',
|
|
29
|
+
height: elementRect.height + 'px',
|
|
30
|
+
top: this.targetElement.offsetTop + 'px',
|
|
31
|
+
left: this.targetElement.offsetLeft + 'px'
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
ngOnInit() {
|
|
35
|
+
setTimeout(() => {
|
|
36
|
+
this.targetRect = this._targetRect;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
onItemCloseIconClick($event) {
|
|
40
|
+
this.itemRemove.emit();
|
|
41
|
+
}
|
|
42
|
+
splitItem(direction) {
|
|
43
|
+
// 在布局型组件中实例化时重写
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
PluginActiveComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginActiveComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
+
PluginActiveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: PluginActiveComponent, selector: "rs-plugin-active", host: { properties: { "style": "this._style" } }, ngImport: i0, template: "<div class=\"active-bar\">\r\n <span>{{name}}</span>\r\n <i *ngIf=\"showClose\" class=\"icon-close\" (click)=\"onItemCloseIconClick($event)\"></i>\r\n</div>\r\n<rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"row\"\r\n (dividerClick)=\"splitItem('column')\"></rs-divider>\r\n<rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"column\"\r\n (dividerClick)=\"splitItem('row')\"></rs-divider>\r\n", styles: [":host{display:none;position:absolute;border:1px solid var(--devui-brand, #5e7ce0);pointer-events:none}:host .active-bar{padding:2px 4px;color:#fff;background-color:var(--devui-brand, #5e7ce0);position:absolute;top:-23px;right:-1px;display:flex;align-items:center;pointer-events:all;white-space:nowrap}:host .active-bar span{flex:auto}:host .active-bar i{flex:none;margin-left:8px;cursor:pointer}:host .active-bar i:hover{color:var(--devui-danger, #f66f6a)}.plugin-active>:host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.DividerComponent, selector: "rs-divider", inputs: ["direction", "targetElement"], outputs: ["dividerClick"] }] });
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginActiveComponent, decorators: [{
|
|
49
|
+
type: Component,
|
|
50
|
+
args: [{ selector: 'rs-plugin-active', template: "<div class=\"active-bar\">\r\n <span>{{name}}</span>\r\n <i *ngIf=\"showClose\" class=\"icon-close\" (click)=\"onItemCloseIconClick($event)\"></i>\r\n</div>\r\n<rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"row\"\r\n (dividerClick)=\"splitItem('column')\"></rs-divider>\r\n<rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"column\"\r\n (dividerClick)=\"splitItem('row')\"></rs-divider>\r\n", styles: [":host{display:none;position:absolute;border:1px solid var(--devui-brand, #5e7ce0);pointer-events:none}:host .active-bar{padding:2px 4px;color:#fff;background-color:var(--devui-brand, #5e7ce0);position:absolute;top:-23px;right:-1px;display:flex;align-items:center;pointer-events:all;white-space:nowrap}:host .active-bar span{flex:auto}:host .active-bar i{flex:none;margin-left:8px;cursor:pointer}:host .active-bar i:hover{color:var(--devui-danger, #f66f6a)}.plugin-active>:host{display:block}\n"] }]
|
|
51
|
+
}], propDecorators: { _style: [{
|
|
52
|
+
type: HostBinding,
|
|
53
|
+
args: ['style']
|
|
54
|
+
}] } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLWFjdGl2ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL3BsdWdpbi1hY3RpdmUvcGx1Z2luLWFjdGl2ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL3BsdWdpbi1hY3RpdmUvcGx1Z2luLWFjdGl2ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQVMsTUFBTSxlQUFlLENBQUM7Ozs7QUFPM0UsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQU9FLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFDMUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFaEMsZUFBVSxHQUFRO1lBQ2hCLEtBQUssRUFBRSxDQUFDO1lBQ1IsTUFBTSxFQUFFLENBQUM7U0FDVixDQUFDO1FBQ0YsZ0JBQVcsR0FBUSxFQUFFLENBQUM7UUFDdEIsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUNsQixXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBQ25CLFdBQU0sR0FBVyxDQUFDLENBQUM7UUFDbkIsWUFBTyxHQUFXLENBQUMsQ0FBQztLQThCckI7SUE1QkMsSUFBMEIsTUFBTTtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQy9ELElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUM7UUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUM3QyxPQUFPO1lBQ0wsS0FBSyxFQUFFLFdBQVcsQ0FBQyxLQUFLLEdBQUcsSUFBSTtZQUMvQixNQUFNLEVBQUUsV0FBVyxDQUFDLE1BQU0sR0FBRyxJQUFJO1lBQ2pDLEdBQUcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxJQUFJO1lBQ3hDLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FBRyxJQUFJO1NBQzNDLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsTUFBVztRQUM5QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxTQUFTLENBQUMsU0FBMkI7UUFDbkMsZ0JBQWdCO0lBQ2xCLENBQUM7O2tIQTNDVSxxQkFBcUI7c0dBQXJCLHFCQUFxQiwwR0NQbEMsb2VBUUE7MkZERGEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjs4QkFvQkYsTUFBTTtzQkFBL0IsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JzLXBsdWdpbi1hY3RpdmUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wbHVnaW4tYWN0aXZlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wbHVnaW4tYWN0aXZlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFBsdWdpbkFjdGl2ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgbmFtZSE6IHN0cmluZztcclxuICBzaG93Q2xvc2U6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHNob3dEaXZpZGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXRlbVJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICB0YXJnZXRFbGVtZW50OiBhbnk7XHJcbiAgdGFyZ2V0UmVjdDogYW55ID0ge1xyXG4gICAgd2lkdGg6IDAsXHJcbiAgICBoZWlnaHQ6IDBcclxuICB9O1xyXG4gIF90YXJnZXRSZWN0OiBhbnkgPSB7fTtcclxuICB3aWR0aDogbnVtYmVyID0gMDtcclxuICBfd2lkdGg6IG51bWJlciA9IDA7XHJcbiAgaGVpZ2h0OiBudW1iZXIgPSAwO1xyXG4gIF9oZWlnaHQ6IG51bWJlciA9IDA7XHJcblxyXG4gIEBIb3N0QmluZGluZygnc3R5bGUnKSBnZXQgX3N0eWxlKCkge1xyXG4gICAgaWYgKCF0aGlzLnRhcmdldEVsZW1lbnQpIHtcclxuICAgICAgcmV0dXJuIHt9O1xyXG4gICAgfVxyXG4gICAgY29uc3QgZWxlbWVudFJlY3QgPSB0aGlzLnRhcmdldEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICB0aGlzLl90YXJnZXRSZWN0LndpZHRoID0gZWxlbWVudFJlY3Qud2lkdGg7XHJcbiAgICB0aGlzLl90YXJnZXRSZWN0LmhlaWdodCA9IGVsZW1lbnRSZWN0LmhlaWdodDtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHdpZHRoOiBlbGVtZW50UmVjdC53aWR0aCArICdweCcsXHJcbiAgICAgIGhlaWdodDogZWxlbWVudFJlY3QuaGVpZ2h0ICsgJ3B4JyxcclxuICAgICAgdG9wOiB0aGlzLnRhcmdldEVsZW1lbnQub2Zmc2V0VG9wICsgJ3B4JyxcclxuICAgICAgbGVmdDogdGhpcy50YXJnZXRFbGVtZW50Lm9mZnNldExlZnQgKyAncHgnXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy50YXJnZXRSZWN0ID0gdGhpcy5fdGFyZ2V0UmVjdDtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25JdGVtQ2xvc2VJY29uQ2xpY2soJGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuaXRlbVJlbW92ZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBzcGxpdEl0ZW0oZGlyZWN0aW9uOiAncm93JyB8ICdjb2x1bW4nKSB7XHJcbiAgICAvLyDlnKjluIPlsYDlnovnu4Tku7bkuK3lrp7kvovljJbml7bph43lhplcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImFjdGl2ZS1iYXJcIj5cclxuICA8c3Bhbj57e25hbWV9fTwvc3Bhbj5cclxuICA8aSAqbmdJZj1cInNob3dDbG9zZVwiIGNsYXNzPVwiaWNvbi1jbG9zZVwiIChjbGljayk9XCJvbkl0ZW1DbG9zZUljb25DbGljaygkZXZlbnQpXCI+PC9pPlxyXG48L2Rpdj5cclxuPHJzLWRpdmlkZXIgKm5nSWY9XCJzaG93RGl2aWRlclwiIFt0YXJnZXRFbGVtZW50XT1cInRhcmdldEVsZW1lbnRcIiBkaXJlY3Rpb249XCJyb3dcIlxyXG4gICAgICAgICAgICAgICAoZGl2aWRlckNsaWNrKT1cInNwbGl0SXRlbSgnY29sdW1uJylcIj48L3JzLWRpdmlkZXI+XHJcbjxycy1kaXZpZGVyICpuZ0lmPVwic2hvd0RpdmlkZXJcIiBbdGFyZ2V0RWxlbWVudF09XCJ0YXJnZXRFbGVtZW50XCIgZGlyZWN0aW9uPVwiY29sdW1uXCJcclxuICAgICAgICAgICAgICAgKGRpdmlkZXJDbGljayk9XCJzcGxpdEl0ZW0oJ3JvdycpXCI+PC9ycy1kaXZpZGVyPlxyXG4iXX0=
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Component, HostBinding } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class PluginHoverComponent {
|
|
4
|
+
get _style() {
|
|
5
|
+
if (!this.targetElement) {
|
|
6
|
+
return {};
|
|
7
|
+
}
|
|
8
|
+
const elementRect = this.targetElement.getBoundingClientRect();
|
|
9
|
+
return {
|
|
10
|
+
width: elementRect.width + 'px',
|
|
11
|
+
height: elementRect.height + 'px',
|
|
12
|
+
top: this.targetElement.offsetTop + 'px',
|
|
13
|
+
left: this.targetElement.offsetLeft + 'px'
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
PluginHoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginHoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
+
PluginHoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: PluginHoverComponent, selector: "rs-plugin-hover", host: { properties: { "style": "this._style" } }, ngImport: i0, template: "<div class=\"hover-title\">{{name}}</div>\n", styles: [":host{display:none;position:absolute;border:1px dashed var(--devui-brand, #5e7ce0);pointer-events:none}:host .hover-title{color:var(--devui-brand, #5e7ce0);position:absolute;top:-18px;left:0}.plugin-active>:host{display:none!important}.plugin-hover>:host{display:block}\n"] });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginHoverComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{ selector: 'rs-plugin-hover', template: "<div class=\"hover-title\">{{name}}</div>\n", styles: [":host{display:none;position:absolute;border:1px dashed var(--devui-brand, #5e7ce0);pointer-events:none}:host .hover-title{color:var(--devui-brand, #5e7ce0);position:absolute;top:-18px;left:0}.plugin-active>:host{display:none!important}.plugin-hover>:host{display:block}\n"] }]
|
|
22
|
+
}], propDecorators: { _style: [{
|
|
23
|
+
type: HostBinding,
|
|
24
|
+
args: ['style']
|
|
25
|
+
}] } });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLWhvdmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ycy1hbnQvc3JjL2JveC1jb250YWluZXIvcGx1Z2luLWhvdmVyL3BsdWdpbi1ob3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcnMtYW50L3NyYy9ib3gtY29udGFpbmVyL3BsdWdpbi1ob3Zlci9wbHVnaW4taG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBT3JELE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsSUFBMEIsTUFBTTtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQy9ELE9BQU87WUFDTCxLQUFLLEVBQUUsV0FBVyxDQUFDLEtBQUssR0FBRyxJQUFJO1lBQy9CLE1BQU0sRUFBRSxXQUFXLENBQUMsTUFBTSxHQUFHLElBQUk7WUFDakMsR0FBRyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxHQUFHLElBQUk7WUFDeEMsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLElBQUk7U0FDM0MsQ0FBQztJQUNKLENBQUM7O2lIQWZVLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHlHQ1BqQyw2Q0FDQTsyRkRNYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsaUJBQWlCOzhCQVFELE1BQU07c0JBQS9CLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZ30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JzLXBsdWdpbi1ob3ZlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BsdWdpbi1ob3Zlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcGx1Z2luLWhvdmVyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFBsdWdpbkhvdmVyQ29tcG9uZW50IHtcclxuICBuYW1lITogc3RyaW5nO1xyXG4gIHRhcmdldEVsZW1lbnQ6IGFueTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZScpIGdldCBfc3R5bGUoKSB7XHJcbiAgICBpZiAoIXRoaXMudGFyZ2V0RWxlbWVudCkge1xyXG4gICAgICByZXR1cm4ge307XHJcbiAgICB9XHJcbiAgICBjb25zdCBlbGVtZW50UmVjdCA9IHRoaXMudGFyZ2V0RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHdpZHRoOiBlbGVtZW50UmVjdC53aWR0aCArICdweCcsXHJcbiAgICAgIGhlaWdodDogZWxlbWVudFJlY3QuaGVpZ2h0ICsgJ3B4JyxcclxuICAgICAgdG9wOiB0aGlzLnRhcmdldEVsZW1lbnQub2Zmc2V0VG9wICsgJ3B4JyxcclxuICAgICAgbGVmdDogdGhpcy50YXJnZXRFbGVtZW50Lm9mZnNldExlZnQgKyAncHgnXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiaG92ZXItdGl0bGVcIj57e25hbWV9fTwvZGl2PlxuIl19
|