@tetacom/ng-components 1.0.67 → 1.0.70
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/common/util/dom-util.d.ts +1 -0
- package/component/input/input.module.d.ts +2 -1
- package/component/tabs/tabs/tabs.component.d.ts +1 -1
- package/component/tree/tree/tree.component.d.ts +16 -9
- package/component/tree/tree-item/tree-item.component.d.ts +3 -2
- package/component/tree/tree.module.d.ts +2 -1
- package/directive/hint/hint.directive.d.ts +2 -1
- package/esm2020/common/util/dom-util.mjs +4 -1
- package/esm2020/component/input/input/input.component.mjs +4 -3
- package/esm2020/component/input/input.module.mjs +5 -4
- package/esm2020/component/property-grid/property-grid/property-grid-item/property-grid-item.component.mjs +1 -1
- package/esm2020/component/table/default/default-head-cell/default-head-cell.component.mjs +1 -1
- package/esm2020/component/table/default/string-cell/string-cell.component.mjs +4 -3
- package/esm2020/component/table/table-head/visibility-dropdown-tab/visibility-dropdown-tab.component.mjs +1 -1
- package/esm2020/component/tabs/tabs/tabs.component.mjs +3 -3
- package/esm2020/component/tree/tree/tree.component.mjs +51 -20
- package/esm2020/component/tree/tree-item/tree-item.component.mjs +15 -10
- package/esm2020/component/tree/tree.module.mjs +5 -4
- package/esm2020/directive/hint/hint.directive.mjs +6 -3
- package/fesm2015/tetacom-ng-components.mjs +386 -344
- package/fesm2015/tetacom-ng-components.mjs.map +1 -1
- package/fesm2020/tetacom-ng-components.mjs +386 -345
- package/fesm2020/tetacom-ng-components.mjs.map +1 -1
- package/package.json +1 -1
- package/style/tree.scss +4 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, ChangeDetectionStrategy, HostBinding, Directive, Optional, Inject, ContentChild, Input, Host, HostListener, Injectable, NgModule, forwardRef, EventEmitter, ElementRef, Output, Pipe, ViewChild,
|
|
2
|
+
import { Component, ChangeDetectionStrategy, HostBinding, Directive, Optional, Inject, ContentChild, Input, Host, HostListener, Injectable, NgModule, forwardRef, EventEmitter, ElementRef, Output, Pipe, ViewChild, TemplateRef, Injector, ViewEncapsulation, ChangeDetectorRef, ContentChildren, SkipSelf, ViewContainerRef, PLATFORM_ID } from '@angular/core';
|
|
3
3
|
import * as i2 from '@angular/common';
|
|
4
4
|
import { DOCUMENT, CommonModule, isPlatformBrowser } from '@angular/common';
|
|
5
5
|
import * as i1 from '@angular/common/http';
|
|
@@ -1053,6 +1053,9 @@ class DomUtil {
|
|
|
1053
1053
|
}
|
|
1054
1054
|
return null;
|
|
1055
1055
|
}
|
|
1056
|
+
static isOverflown(element) {
|
|
1057
|
+
return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;
|
|
1058
|
+
}
|
|
1056
1059
|
}
|
|
1057
1060
|
|
|
1058
1061
|
class PositionUtil {
|
|
@@ -3584,6 +3587,279 @@ class NumericFilterValue {
|
|
|
3584
3587
|
}
|
|
3585
3588
|
}
|
|
3586
3589
|
|
|
3590
|
+
class TetaContentRef {
|
|
3591
|
+
constructor(nodes, viewRef, componentRef) {
|
|
3592
|
+
this.nodes = nodes;
|
|
3593
|
+
this.viewRef = viewRef;
|
|
3594
|
+
this.componentRef = componentRef;
|
|
3595
|
+
}
|
|
3596
|
+
}
|
|
3597
|
+
|
|
3598
|
+
class DynamicData {
|
|
3599
|
+
constructor(value) {
|
|
3600
|
+
for (const key in value) {
|
|
3601
|
+
if (value.hasOwnProperty(key)) {
|
|
3602
|
+
this[key] = value[key];
|
|
3603
|
+
}
|
|
3604
|
+
}
|
|
3605
|
+
}
|
|
3606
|
+
}
|
|
3607
|
+
|
|
3608
|
+
class DynamicComponentService {
|
|
3609
|
+
constructor(_componentFactoryResolver, _rendererFactory, _appRef) {
|
|
3610
|
+
this._componentFactoryResolver = _componentFactoryResolver;
|
|
3611
|
+
this._rendererFactory = _rendererFactory;
|
|
3612
|
+
this._appRef = _appRef;
|
|
3613
|
+
this._renderer = this._rendererFactory.createRenderer(null, null);
|
|
3614
|
+
}
|
|
3615
|
+
createComponent(component, contentRef, injector, container) {
|
|
3616
|
+
const componentRef = this._componentFactoryResolver
|
|
3617
|
+
.resolveComponentFactory(component)
|
|
3618
|
+
.create(injector, contentRef.nodes);
|
|
3619
|
+
this._appRef.attachView(componentRef.hostView);
|
|
3620
|
+
container.appendChild(componentRef.location.nativeElement);
|
|
3621
|
+
return componentRef;
|
|
3622
|
+
}
|
|
3623
|
+
createContent(content, injector, context) {
|
|
3624
|
+
if (content === null || content === undefined) {
|
|
3625
|
+
throw new Error('Content is undefined');
|
|
3626
|
+
}
|
|
3627
|
+
if (typeof content === 'string') {
|
|
3628
|
+
return this.fromString(content);
|
|
3629
|
+
}
|
|
3630
|
+
else if (content instanceof TemplateRef) {
|
|
3631
|
+
return this.fromTemplate(content, context);
|
|
3632
|
+
}
|
|
3633
|
+
else {
|
|
3634
|
+
return this.fromComponent(content, injector, context);
|
|
3635
|
+
}
|
|
3636
|
+
}
|
|
3637
|
+
destroy(component, content, container) {
|
|
3638
|
+
if (component) {
|
|
3639
|
+
this._appRef.detachView(component.hostView);
|
|
3640
|
+
component.destroy();
|
|
3641
|
+
}
|
|
3642
|
+
if (content && content.viewRef) {
|
|
3643
|
+
content.viewRef.destroy();
|
|
3644
|
+
}
|
|
3645
|
+
content = null;
|
|
3646
|
+
}
|
|
3647
|
+
getContext(content, context) {
|
|
3648
|
+
if (content instanceof TemplateRef) {
|
|
3649
|
+
return {
|
|
3650
|
+
$implicit: context,
|
|
3651
|
+
data: context,
|
|
3652
|
+
};
|
|
3653
|
+
}
|
|
3654
|
+
return context;
|
|
3655
|
+
}
|
|
3656
|
+
getInjector(data, parent) {
|
|
3657
|
+
return Injector.create({
|
|
3658
|
+
providers: [
|
|
3659
|
+
{
|
|
3660
|
+
provide: DynamicData,
|
|
3661
|
+
useValue: data,
|
|
3662
|
+
},
|
|
3663
|
+
],
|
|
3664
|
+
parent,
|
|
3665
|
+
});
|
|
3666
|
+
}
|
|
3667
|
+
fromString(content) {
|
|
3668
|
+
return new TetaContentRef([[this._renderer.createText(`${content}`)]]);
|
|
3669
|
+
}
|
|
3670
|
+
fromTemplate(content, context) {
|
|
3671
|
+
const viewRef = content.createEmbeddedView(context);
|
|
3672
|
+
this._appRef.attachView(viewRef);
|
|
3673
|
+
return new TetaContentRef([viewRef.rootNodes], viewRef);
|
|
3674
|
+
}
|
|
3675
|
+
fromComponent(content, injector, context) {
|
|
3676
|
+
const componentFactory = this._componentFactoryResolver.resolveComponentFactory(content);
|
|
3677
|
+
const componentRef = componentFactory.create(injector);
|
|
3678
|
+
for (const key in context) {
|
|
3679
|
+
if (context.hasOwnProperty(key)) {
|
|
3680
|
+
componentRef.instance[key] = context[key];
|
|
3681
|
+
}
|
|
3682
|
+
}
|
|
3683
|
+
const componentNativeEl = componentRef.location.nativeElement;
|
|
3684
|
+
this._appRef.attachView(componentRef.hostView);
|
|
3685
|
+
return new TetaContentRef([[componentNativeEl]], componentRef.hostView, componentRef);
|
|
3686
|
+
}
|
|
3687
|
+
}
|
|
3688
|
+
DynamicComponentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicComponentService, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.RendererFactory2 }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3689
|
+
DynamicComponentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicComponentService, providedIn: 'root' });
|
|
3690
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicComponentService, decorators: [{
|
|
3691
|
+
type: Injectable,
|
|
3692
|
+
args: [{
|
|
3693
|
+
providedIn: 'root',
|
|
3694
|
+
}]
|
|
3695
|
+
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.RendererFactory2 }, { type: i0.ApplicationRef }]; } });
|
|
3696
|
+
|
|
3697
|
+
class DynamicContentBaseDirective {
|
|
3698
|
+
constructor(_document, _elementRef, _service, _injector, _zone, _cdr) {
|
|
3699
|
+
this._document = _document;
|
|
3700
|
+
this._elementRef = _elementRef;
|
|
3701
|
+
this._service = _service;
|
|
3702
|
+
this._injector = _injector;
|
|
3703
|
+
this._zone = _zone;
|
|
3704
|
+
this._cdr = _cdr;
|
|
3705
|
+
this.align = Align.left;
|
|
3706
|
+
this.verticalAlign = VerticalAlign.bottom;
|
|
3707
|
+
this.openChange = new EventEmitter();
|
|
3708
|
+
this._alive = true;
|
|
3709
|
+
this._open = false;
|
|
3710
|
+
this._zone.onStable
|
|
3711
|
+
.pipe(takeWhile((_) => this._alive), filter((_) => this._open))
|
|
3712
|
+
.subscribe((_) => {
|
|
3713
|
+
this.setPosition();
|
|
3714
|
+
});
|
|
3715
|
+
}
|
|
3716
|
+
set open(open) {
|
|
3717
|
+
this._open = open;
|
|
3718
|
+
if (this._open) {
|
|
3719
|
+
this.createContentRef();
|
|
3720
|
+
}
|
|
3721
|
+
else {
|
|
3722
|
+
this.destroyContentRef();
|
|
3723
|
+
}
|
|
3724
|
+
}
|
|
3725
|
+
ngOnDestroy() {
|
|
3726
|
+
this._alive = false;
|
|
3727
|
+
this.destroyContentRef();
|
|
3728
|
+
}
|
|
3729
|
+
ngOnInit() {
|
|
3730
|
+
}
|
|
3731
|
+
createContentRef(className) {
|
|
3732
|
+
if (!this._componentRef) {
|
|
3733
|
+
this._open = true;
|
|
3734
|
+
const injector = this._service.getInjector(this.data, this._injector);
|
|
3735
|
+
const context = this._service.getContext(this._dynamicContent, this.data);
|
|
3736
|
+
this._content = this._service.createContent(this._dynamicContent, this._injector, context);
|
|
3737
|
+
this._componentRef = this._service.createComponent(PopupContentComponent, this._content, injector, this.appendToBody ? this._document.body : this._elementRef.nativeElement);
|
|
3738
|
+
if (className) {
|
|
3739
|
+
this._componentRef.instance.addClass(className);
|
|
3740
|
+
}
|
|
3741
|
+
}
|
|
3742
|
+
return this._componentRef;
|
|
3743
|
+
}
|
|
3744
|
+
destroyContentRef() {
|
|
3745
|
+
this._open = false;
|
|
3746
|
+
this._service.destroy(this._componentRef, this._content, this.appendToBody ? this._document.body : this._elementRef.nativeElement);
|
|
3747
|
+
this._componentRef = null;
|
|
3748
|
+
}
|
|
3749
|
+
}
|
|
3750
|
+
DynamicContentBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicContentBaseDirective, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
3751
|
+
DynamicContentBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: DynamicContentBaseDirective, inputs: { data: "data", className: "className", align: "align", verticalAlign: "verticalAlign", appendToBody: "appendToBody", open: "open" }, outputs: { openChange: "openChange" }, ngImport: i0 });
|
|
3752
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicContentBaseDirective, decorators: [{
|
|
3753
|
+
type: Directive
|
|
3754
|
+
}], ctorParameters: function () { return [{ type: undefined }, { type: i0.ElementRef }, { type: DynamicComponentService }, { type: i0.Injector }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
|
|
3755
|
+
type: Input
|
|
3756
|
+
}], className: [{
|
|
3757
|
+
type: Input
|
|
3758
|
+
}], align: [{
|
|
3759
|
+
type: Input
|
|
3760
|
+
}], verticalAlign: [{
|
|
3761
|
+
type: Input
|
|
3762
|
+
}], appendToBody: [{
|
|
3763
|
+
type: Input
|
|
3764
|
+
}], open: [{
|
|
3765
|
+
type: Input
|
|
3766
|
+
}], openChange: [{
|
|
3767
|
+
type: Output
|
|
3768
|
+
}] } });
|
|
3769
|
+
|
|
3770
|
+
class HintDirective extends DynamicContentBaseDirective {
|
|
3771
|
+
constructor(_document, _elementRef, _service, _injector, _zone, _cdr) {
|
|
3772
|
+
super(_document, _elementRef, _service, _injector, _zone, _cdr);
|
|
3773
|
+
this._document = _document;
|
|
3774
|
+
this._elementRef = _elementRef;
|
|
3775
|
+
this._service = _service;
|
|
3776
|
+
this._injector = _injector;
|
|
3777
|
+
this._zone = _zone;
|
|
3778
|
+
this._cdr = _cdr;
|
|
3779
|
+
this.align = Align.center;
|
|
3780
|
+
this.verticalAlign = VerticalAlign.top;
|
|
3781
|
+
this.delay = 300;
|
|
3782
|
+
this.overflownOnly = false;
|
|
3783
|
+
}
|
|
3784
|
+
get _dynamicContent() {
|
|
3785
|
+
return this.tetaHint;
|
|
3786
|
+
}
|
|
3787
|
+
mouseenter() {
|
|
3788
|
+
clearTimeout(this._timeout);
|
|
3789
|
+
this._timeout = setTimeout(() => {
|
|
3790
|
+
this.createHint();
|
|
3791
|
+
}, this.delay);
|
|
3792
|
+
}
|
|
3793
|
+
mouseleave() {
|
|
3794
|
+
clearTimeout(this._timeout);
|
|
3795
|
+
if (this._open && this._componentRef) {
|
|
3796
|
+
this._timeout = setTimeout(() => {
|
|
3797
|
+
this.destroyContentRef();
|
|
3798
|
+
}, this.delay);
|
|
3799
|
+
}
|
|
3800
|
+
}
|
|
3801
|
+
click(event) {
|
|
3802
|
+
if (this._open &&
|
|
3803
|
+
this._componentRef &&
|
|
3804
|
+
DomUtil.clickedInside(this._componentRef.location.nativeElement, event)) {
|
|
3805
|
+
event.stopPropagation();
|
|
3806
|
+
}
|
|
3807
|
+
}
|
|
3808
|
+
setPosition() {
|
|
3809
|
+
if (this._componentRef && this._open) {
|
|
3810
|
+
if (!this._componentRect) {
|
|
3811
|
+
this._componentRect =
|
|
3812
|
+
this._componentRef.location.nativeElement.getBoundingClientRect();
|
|
3813
|
+
}
|
|
3814
|
+
const position = PositionUtil.getPosition(this._elementRef.nativeElement.getBoundingClientRect(), this._componentRect, this.align, this.verticalAlign, 0, 4);
|
|
3815
|
+
PositionUtil.setElementPosition(this._componentRef.location.nativeElement, position);
|
|
3816
|
+
}
|
|
3817
|
+
}
|
|
3818
|
+
createHint() {
|
|
3819
|
+
if (!this._dynamicContent || (this.overflownOnly && !DomUtil.isOverflown(this._elementRef.nativeElement))) {
|
|
3820
|
+
return;
|
|
3821
|
+
}
|
|
3822
|
+
this._componentRef = this.createContentRef();
|
|
3823
|
+
this._componentRef.instance.className = [
|
|
3824
|
+
...ArrayUtil.asArray(this.className),
|
|
3825
|
+
'hint',
|
|
3826
|
+
];
|
|
3827
|
+
}
|
|
3828
|
+
ngOnDestroy() {
|
|
3829
|
+
super.ngOnDestroy();
|
|
3830
|
+
}
|
|
3831
|
+
}
|
|
3832
|
+
HintDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintDirective, deps: [{ token: DOCUMENT }, { token: i0.ElementRef }, { token: DynamicComponentService }, { token: i0.Injector }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3833
|
+
HintDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: HintDirective, selector: "[tetaHint]", inputs: { tetaHint: "tetaHint", align: "align", verticalAlign: "verticalAlign", delay: "delay", overflownOnly: "overflownOnly" }, host: { listeners: { "mouseenter": "mouseenter($event)", "mouseleave": "mouseleave($event)", "click": "click($event)" } }, usesInheritance: true, ngImport: i0 });
|
|
3834
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintDirective, decorators: [{
|
|
3835
|
+
type: Directive,
|
|
3836
|
+
args: [{
|
|
3837
|
+
selector: '[tetaHint]',
|
|
3838
|
+
}]
|
|
3839
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
3840
|
+
type: Inject,
|
|
3841
|
+
args: [DOCUMENT]
|
|
3842
|
+
}] }, { type: i0.ElementRef }, { type: DynamicComponentService }, { type: i0.Injector }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { tetaHint: [{
|
|
3843
|
+
type: Input
|
|
3844
|
+
}], align: [{
|
|
3845
|
+
type: Input
|
|
3846
|
+
}], verticalAlign: [{
|
|
3847
|
+
type: Input
|
|
3848
|
+
}], delay: [{
|
|
3849
|
+
type: Input
|
|
3850
|
+
}], overflownOnly: [{
|
|
3851
|
+
type: Input
|
|
3852
|
+
}], mouseenter: [{
|
|
3853
|
+
type: HostListener,
|
|
3854
|
+
args: ['mouseenter', ['$event']]
|
|
3855
|
+
}], mouseleave: [{
|
|
3856
|
+
type: HostListener,
|
|
3857
|
+
args: ['mouseleave', ['$event']]
|
|
3858
|
+
}], click: [{
|
|
3859
|
+
type: HostListener,
|
|
3860
|
+
args: ['click', ['$event']]
|
|
3861
|
+
}] } });
|
|
3862
|
+
|
|
3587
3863
|
class InputComponent {
|
|
3588
3864
|
constructor() {
|
|
3589
3865
|
this.required = false;
|
|
@@ -3594,10 +3870,10 @@ class InputComponent {
|
|
|
3594
3870
|
ngOnInit() { }
|
|
3595
3871
|
}
|
|
3596
3872
|
InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3597
|
-
InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: InputComponent, selector: "teta-input", inputs: { label: "label", horizontal: "horizontal", required: "required" }, host: { properties: { "class.row": "this.horizontal", "class.column": "this.column" } }, ngImport: i0, template: "<div class=\"font-caption color-text-90 align-center row nowrap overflow-hidden text-overflow-ellipsis\"\n [class.row_6]=\"horizontal\"\n [class.text-field_required]=\"required\"\n *ngIf=\"label?.length > 0\">\n {{label}}\n</div>\n<div class=\"input-container\" [class.row_6]=\"horizontal\">\n <ng-content></ng-content>\n <div class=\"input-message font-error-message\">\n <ng-content select=\"message\"></ng-content>\n </div>\n</div>\n", styles: [":host{display:flex;grid-gap:4px;flex-grow:1;flex-basis:10px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3873
|
+
InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: InputComponent, selector: "teta-input", inputs: { label: "label", horizontal: "horizontal", required: "required" }, host: { properties: { "class.row": "this.horizontal", "class.column": "this.column" } }, ngImport: i0, template: "<div class=\"font-caption color-text-90 align-center row nowrap overflow-hidden text-overflow-ellipsis\"\n [class.row_6]=\"horizontal\"\n [class.text-field_required]=\"required\"\n *ngIf=\"label?.length > 0\">\n <span class=\"overflow-hidden text-overflow-ellipsis\"\n [tetaHint]=\"label\"\n [overflownOnly]=\"true\">\n {{label}}\n </span>\n</div>\n<div class=\"input-container\" [class.row_6]=\"horizontal\">\n <ng-content></ng-content>\n <div class=\"input-message font-error-message\">\n <ng-content select=\"message\"></ng-content>\n </div>\n</div>\n", styles: [":host{display:flex;grid-gap:4px;flex-grow:1;flex-basis:10px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: HintDirective, selector: "[tetaHint]", inputs: ["tetaHint", "align", "verticalAlign", "delay", "overflownOnly"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3598
3874
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: InputComponent, decorators: [{
|
|
3599
3875
|
type: Component,
|
|
3600
|
-
args: [{ selector: 'teta-input', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"font-caption color-text-90 align-center row nowrap overflow-hidden text-overflow-ellipsis\"\n [class.row_6]=\"horizontal\"\n [class.text-field_required]=\"required\"\n *ngIf=\"label?.length > 0\">\n {{label}}\n</div>\n<div class=\"input-container\" [class.row_6]=\"horizontal\">\n <ng-content></ng-content>\n <div class=\"input-message font-error-message\">\n <ng-content select=\"message\"></ng-content>\n </div>\n</div>\n", styles: [":host{display:flex;grid-gap:4px;flex-grow:1;flex-basis:10px}\n"] }]
|
|
3876
|
+
args: [{ selector: 'teta-input', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"font-caption color-text-90 align-center row nowrap overflow-hidden text-overflow-ellipsis\"\n [class.row_6]=\"horizontal\"\n [class.text-field_required]=\"required\"\n *ngIf=\"label?.length > 0\">\n <span class=\"overflow-hidden text-overflow-ellipsis\"\n [tetaHint]=\"label\"\n [overflownOnly]=\"true\">\n {{label}}\n </span>\n</div>\n<div class=\"input-container\" [class.row_6]=\"horizontal\">\n <ng-content></ng-content>\n <div class=\"input-message font-error-message\">\n <ng-content select=\"message\"></ng-content>\n </div>\n</div>\n", styles: [":host{display:flex;grid-gap:4px;flex-grow:1;flex-basis:10px}\n"] }]
|
|
3601
3877
|
}], ctorParameters: function () { return []; }, propDecorators: { label: [{
|
|
3602
3878
|
type: Input
|
|
3603
3879
|
}], horizontal: [{
|
|
@@ -4805,17 +5081,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
4805
5081
|
args: ['class.form-group-title']
|
|
4806
5082
|
}] } });
|
|
4807
5083
|
|
|
5084
|
+
class HintModule {
|
|
5085
|
+
}
|
|
5086
|
+
HintModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5087
|
+
HintModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: HintModule, declarations: [HintDirective], imports: [CommonModule,
|
|
5088
|
+
DynamicComponentModule], exports: [HintDirective] });
|
|
5089
|
+
HintModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintModule, imports: [CommonModule,
|
|
5090
|
+
DynamicComponentModule] });
|
|
5091
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintModule, decorators: [{
|
|
5092
|
+
type: NgModule,
|
|
5093
|
+
args: [{
|
|
5094
|
+
declarations: [HintDirective],
|
|
5095
|
+
exports: [HintDirective],
|
|
5096
|
+
imports: [
|
|
5097
|
+
CommonModule,
|
|
5098
|
+
DynamicComponentModule
|
|
5099
|
+
]
|
|
5100
|
+
}]
|
|
5101
|
+
}] });
|
|
5102
|
+
|
|
4808
5103
|
class InputModule {
|
|
4809
5104
|
}
|
|
4810
5105
|
InputModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: InputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4811
|
-
InputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: InputModule, declarations: [InputComponent, TextFieldComponent, FormGroupTitleComponent], imports: [CommonModule, IconModule, FormsModule, OnlyNumberModule], exports: [InputComponent, TextFieldComponent, FormGroupTitleComponent] });
|
|
4812
|
-
InputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: InputModule, imports: [CommonModule, IconModule, FormsModule, OnlyNumberModule] });
|
|
5106
|
+
InputModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: InputModule, declarations: [InputComponent, TextFieldComponent, FormGroupTitleComponent], imports: [CommonModule, IconModule, FormsModule, OnlyNumberModule, HintModule], exports: [InputComponent, TextFieldComponent, FormGroupTitleComponent] });
|
|
5107
|
+
InputModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: InputModule, imports: [CommonModule, IconModule, FormsModule, OnlyNumberModule, HintModule] });
|
|
4813
5108
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: InputModule, decorators: [{
|
|
4814
5109
|
type: NgModule,
|
|
4815
5110
|
args: [{
|
|
4816
5111
|
declarations: [InputComponent, TextFieldComponent, FormGroupTitleComponent],
|
|
4817
5112
|
exports: [InputComponent, TextFieldComponent, FormGroupTitleComponent],
|
|
4818
|
-
imports: [CommonModule, IconModule, FormsModule, OnlyNumberModule],
|
|
5113
|
+
imports: [CommonModule, IconModule, FormsModule, OnlyNumberModule, HintModule],
|
|
4819
5114
|
}]
|
|
4820
5115
|
}] });
|
|
4821
5116
|
|
|
@@ -5423,16 +5718,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
5423
5718
|
class CurrentModal {
|
|
5424
5719
|
}
|
|
5425
5720
|
|
|
5426
|
-
class DynamicData {
|
|
5427
|
-
constructor(value) {
|
|
5428
|
-
for (const key in value) {
|
|
5429
|
-
if (value.hasOwnProperty(key)) {
|
|
5430
|
-
this[key] = value[key];
|
|
5431
|
-
}
|
|
5432
|
-
}
|
|
5433
|
-
}
|
|
5434
|
-
}
|
|
5435
|
-
|
|
5436
5721
|
class DialogComponent {
|
|
5437
5722
|
constructor(modal, data) {
|
|
5438
5723
|
this.modal = modal;
|
|
@@ -5521,122 +5806,25 @@ class ModalInstance {
|
|
|
5521
5806
|
this.onClose = this._onClose.asObservable();
|
|
5522
5807
|
if (this._window && this._window.instance) {
|
|
5523
5808
|
this._window.instance.closeEvent.subscribe((event) => {
|
|
5524
|
-
this.close(event);
|
|
5525
|
-
});
|
|
5526
|
-
}
|
|
5527
|
-
}
|
|
5528
|
-
get window() {
|
|
5529
|
-
return this._window;
|
|
5530
|
-
}
|
|
5531
|
-
get component() {
|
|
5532
|
-
return this._content.componentRef ? this._content.componentRef : null;
|
|
5533
|
-
}
|
|
5534
|
-
destroy() {
|
|
5535
|
-
this._window.destroy();
|
|
5536
|
-
if (this._content && this._content.viewRef) {
|
|
5537
|
-
setTimeout(() => {
|
|
5538
|
-
this._content.viewRef.destroy();
|
|
5539
|
-
}, 150);
|
|
5540
|
-
}
|
|
5541
|
-
}
|
|
5542
|
-
}
|
|
5543
|
-
|
|
5544
|
-
class TetaContentRef {
|
|
5545
|
-
constructor(nodes, viewRef, componentRef) {
|
|
5546
|
-
this.nodes = nodes;
|
|
5547
|
-
this.viewRef = viewRef;
|
|
5548
|
-
this.componentRef = componentRef;
|
|
5549
|
-
}
|
|
5550
|
-
}
|
|
5551
|
-
|
|
5552
|
-
class DynamicComponentService {
|
|
5553
|
-
constructor(_componentFactoryResolver, _rendererFactory, _appRef) {
|
|
5554
|
-
this._componentFactoryResolver = _componentFactoryResolver;
|
|
5555
|
-
this._rendererFactory = _rendererFactory;
|
|
5556
|
-
this._appRef = _appRef;
|
|
5557
|
-
this._renderer = this._rendererFactory.createRenderer(null, null);
|
|
5558
|
-
}
|
|
5559
|
-
createComponent(component, contentRef, injector, container) {
|
|
5560
|
-
const componentRef = this._componentFactoryResolver
|
|
5561
|
-
.resolveComponentFactory(component)
|
|
5562
|
-
.create(injector, contentRef.nodes);
|
|
5563
|
-
this._appRef.attachView(componentRef.hostView);
|
|
5564
|
-
container.appendChild(componentRef.location.nativeElement);
|
|
5565
|
-
return componentRef;
|
|
5566
|
-
}
|
|
5567
|
-
createContent(content, injector, context) {
|
|
5568
|
-
if (content === null || content === undefined) {
|
|
5569
|
-
throw new Error('Content is undefined');
|
|
5570
|
-
}
|
|
5571
|
-
if (typeof content === 'string') {
|
|
5572
|
-
return this.fromString(content);
|
|
5573
|
-
}
|
|
5574
|
-
else if (content instanceof TemplateRef) {
|
|
5575
|
-
return this.fromTemplate(content, context);
|
|
5576
|
-
}
|
|
5577
|
-
else {
|
|
5578
|
-
return this.fromComponent(content, injector, context);
|
|
5579
|
-
}
|
|
5580
|
-
}
|
|
5581
|
-
destroy(component, content, container) {
|
|
5582
|
-
if (component) {
|
|
5583
|
-
this._appRef.detachView(component.hostView);
|
|
5584
|
-
component.destroy();
|
|
5585
|
-
}
|
|
5586
|
-
if (content && content.viewRef) {
|
|
5587
|
-
content.viewRef.destroy();
|
|
5588
|
-
}
|
|
5589
|
-
content = null;
|
|
5590
|
-
}
|
|
5591
|
-
getContext(content, context) {
|
|
5592
|
-
if (content instanceof TemplateRef) {
|
|
5593
|
-
return {
|
|
5594
|
-
$implicit: context,
|
|
5595
|
-
data: context,
|
|
5596
|
-
};
|
|
5597
|
-
}
|
|
5598
|
-
return context;
|
|
5599
|
-
}
|
|
5600
|
-
getInjector(data, parent) {
|
|
5601
|
-
return Injector.create({
|
|
5602
|
-
providers: [
|
|
5603
|
-
{
|
|
5604
|
-
provide: DynamicData,
|
|
5605
|
-
useValue: data,
|
|
5606
|
-
},
|
|
5607
|
-
],
|
|
5608
|
-
parent,
|
|
5609
|
-
});
|
|
5809
|
+
this.close(event);
|
|
5810
|
+
});
|
|
5811
|
+
}
|
|
5610
5812
|
}
|
|
5611
|
-
|
|
5612
|
-
return
|
|
5813
|
+
get window() {
|
|
5814
|
+
return this._window;
|
|
5613
5815
|
}
|
|
5614
|
-
|
|
5615
|
-
|
|
5616
|
-
this._appRef.attachView(viewRef);
|
|
5617
|
-
return new TetaContentRef([viewRef.rootNodes], viewRef);
|
|
5816
|
+
get component() {
|
|
5817
|
+
return this._content.componentRef ? this._content.componentRef : null;
|
|
5618
5818
|
}
|
|
5619
|
-
|
|
5620
|
-
|
|
5621
|
-
|
|
5622
|
-
|
|
5623
|
-
|
|
5624
|
-
|
|
5625
|
-
}
|
|
5819
|
+
destroy() {
|
|
5820
|
+
this._window.destroy();
|
|
5821
|
+
if (this._content && this._content.viewRef) {
|
|
5822
|
+
setTimeout(() => {
|
|
5823
|
+
this._content.viewRef.destroy();
|
|
5824
|
+
}, 150);
|
|
5626
5825
|
}
|
|
5627
|
-
const componentNativeEl = componentRef.location.nativeElement;
|
|
5628
|
-
this._appRef.attachView(componentRef.hostView);
|
|
5629
|
-
return new TetaContentRef([[componentNativeEl]], componentRef.hostView, componentRef);
|
|
5630
5826
|
}
|
|
5631
5827
|
}
|
|
5632
|
-
DynamicComponentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicComponentService, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.RendererFactory2 }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5633
|
-
DynamicComponentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicComponentService, providedIn: 'root' });
|
|
5634
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicComponentService, decorators: [{
|
|
5635
|
-
type: Injectable,
|
|
5636
|
-
args: [{
|
|
5637
|
-
providedIn: 'root',
|
|
5638
|
-
}]
|
|
5639
|
-
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.RendererFactory2 }, { type: i0.ApplicationRef }]; } });
|
|
5640
5828
|
|
|
5641
5829
|
class ModalService {
|
|
5642
5830
|
constructor(_document, _injector, _factory) {
|
|
@@ -6215,169 +6403,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
6215
6403
|
args: ['click']
|
|
6216
6404
|
}] } });
|
|
6217
6405
|
|
|
6218
|
-
class DynamicContentBaseDirective {
|
|
6219
|
-
constructor(_document, _elementRef, _service, _injector, _zone, _cdr) {
|
|
6220
|
-
this._document = _document;
|
|
6221
|
-
this._elementRef = _elementRef;
|
|
6222
|
-
this._service = _service;
|
|
6223
|
-
this._injector = _injector;
|
|
6224
|
-
this._zone = _zone;
|
|
6225
|
-
this._cdr = _cdr;
|
|
6226
|
-
this.align = Align.left;
|
|
6227
|
-
this.verticalAlign = VerticalAlign.bottom;
|
|
6228
|
-
this.openChange = new EventEmitter();
|
|
6229
|
-
this._alive = true;
|
|
6230
|
-
this._open = false;
|
|
6231
|
-
this._zone.onStable
|
|
6232
|
-
.pipe(takeWhile((_) => this._alive), filter((_) => this._open))
|
|
6233
|
-
.subscribe((_) => {
|
|
6234
|
-
this.setPosition();
|
|
6235
|
-
});
|
|
6236
|
-
}
|
|
6237
|
-
set open(open) {
|
|
6238
|
-
this._open = open;
|
|
6239
|
-
if (this._open) {
|
|
6240
|
-
this.createContentRef();
|
|
6241
|
-
}
|
|
6242
|
-
else {
|
|
6243
|
-
this.destroyContentRef();
|
|
6244
|
-
}
|
|
6245
|
-
}
|
|
6246
|
-
ngOnDestroy() {
|
|
6247
|
-
this._alive = false;
|
|
6248
|
-
this.destroyContentRef();
|
|
6249
|
-
}
|
|
6250
|
-
ngOnInit() {
|
|
6251
|
-
}
|
|
6252
|
-
createContentRef(className) {
|
|
6253
|
-
if (!this._componentRef) {
|
|
6254
|
-
this._open = true;
|
|
6255
|
-
const injector = this._service.getInjector(this.data, this._injector);
|
|
6256
|
-
const context = this._service.getContext(this._dynamicContent, this.data);
|
|
6257
|
-
this._content = this._service.createContent(this._dynamicContent, this._injector, context);
|
|
6258
|
-
this._componentRef = this._service.createComponent(PopupContentComponent, this._content, injector, this.appendToBody ? this._document.body : this._elementRef.nativeElement);
|
|
6259
|
-
if (className) {
|
|
6260
|
-
this._componentRef.instance.addClass(className);
|
|
6261
|
-
}
|
|
6262
|
-
}
|
|
6263
|
-
return this._componentRef;
|
|
6264
|
-
}
|
|
6265
|
-
destroyContentRef() {
|
|
6266
|
-
this._open = false;
|
|
6267
|
-
this._service.destroy(this._componentRef, this._content, this.appendToBody ? this._document.body : this._elementRef.nativeElement);
|
|
6268
|
-
this._componentRef = null;
|
|
6269
|
-
}
|
|
6270
|
-
}
|
|
6271
|
-
DynamicContentBaseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicContentBaseDirective, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
6272
|
-
DynamicContentBaseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: DynamicContentBaseDirective, inputs: { data: "data", className: "className", align: "align", verticalAlign: "verticalAlign", appendToBody: "appendToBody", open: "open" }, outputs: { openChange: "openChange" }, ngImport: i0 });
|
|
6273
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DynamicContentBaseDirective, decorators: [{
|
|
6274
|
-
type: Directive
|
|
6275
|
-
}], ctorParameters: function () { return [{ type: undefined }, { type: i0.ElementRef }, { type: DynamicComponentService }, { type: i0.Injector }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
|
|
6276
|
-
type: Input
|
|
6277
|
-
}], className: [{
|
|
6278
|
-
type: Input
|
|
6279
|
-
}], align: [{
|
|
6280
|
-
type: Input
|
|
6281
|
-
}], verticalAlign: [{
|
|
6282
|
-
type: Input
|
|
6283
|
-
}], appendToBody: [{
|
|
6284
|
-
type: Input
|
|
6285
|
-
}], open: [{
|
|
6286
|
-
type: Input
|
|
6287
|
-
}], openChange: [{
|
|
6288
|
-
type: Output
|
|
6289
|
-
}] } });
|
|
6290
|
-
|
|
6291
|
-
class HintDirective extends DynamicContentBaseDirective {
|
|
6292
|
-
constructor(_document, _elementRef, _service, _injector, _zone, _cdr) {
|
|
6293
|
-
super(_document, _elementRef, _service, _injector, _zone, _cdr);
|
|
6294
|
-
this._document = _document;
|
|
6295
|
-
this._elementRef = _elementRef;
|
|
6296
|
-
this._service = _service;
|
|
6297
|
-
this._injector = _injector;
|
|
6298
|
-
this._zone = _zone;
|
|
6299
|
-
this._cdr = _cdr;
|
|
6300
|
-
this.align = Align.center;
|
|
6301
|
-
this.verticalAlign = VerticalAlign.top;
|
|
6302
|
-
this.delay = 300;
|
|
6303
|
-
}
|
|
6304
|
-
get _dynamicContent() {
|
|
6305
|
-
return this.tetaHint;
|
|
6306
|
-
}
|
|
6307
|
-
mouseenter() {
|
|
6308
|
-
clearTimeout(this._timeout);
|
|
6309
|
-
this._timeout = setTimeout(() => {
|
|
6310
|
-
this.createHint();
|
|
6311
|
-
}, this.delay);
|
|
6312
|
-
}
|
|
6313
|
-
mouseleave() {
|
|
6314
|
-
clearTimeout(this._timeout);
|
|
6315
|
-
if (this._open && this._componentRef) {
|
|
6316
|
-
this._timeout = setTimeout(() => {
|
|
6317
|
-
this.destroyContentRef();
|
|
6318
|
-
}, this.delay);
|
|
6319
|
-
}
|
|
6320
|
-
}
|
|
6321
|
-
click(event) {
|
|
6322
|
-
if (this._open &&
|
|
6323
|
-
this._componentRef &&
|
|
6324
|
-
DomUtil.clickedInside(this._componentRef.location.nativeElement, event)) {
|
|
6325
|
-
event.stopPropagation();
|
|
6326
|
-
}
|
|
6327
|
-
}
|
|
6328
|
-
setPosition() {
|
|
6329
|
-
if (this._componentRef && this._open) {
|
|
6330
|
-
if (!this._componentRect) {
|
|
6331
|
-
this._componentRect =
|
|
6332
|
-
this._componentRef.location.nativeElement.getBoundingClientRect();
|
|
6333
|
-
}
|
|
6334
|
-
const position = PositionUtil.getPosition(this._elementRef.nativeElement.getBoundingClientRect(), this._componentRect, this.align, this.verticalAlign, 0, 4);
|
|
6335
|
-
PositionUtil.setElementPosition(this._componentRef.location.nativeElement, position);
|
|
6336
|
-
}
|
|
6337
|
-
}
|
|
6338
|
-
createHint() {
|
|
6339
|
-
if (!this._dynamicContent) {
|
|
6340
|
-
return;
|
|
6341
|
-
}
|
|
6342
|
-
this._componentRef = this.createContentRef();
|
|
6343
|
-
this._componentRef.instance.className = [
|
|
6344
|
-
...ArrayUtil.asArray(this.className),
|
|
6345
|
-
'hint',
|
|
6346
|
-
];
|
|
6347
|
-
}
|
|
6348
|
-
ngOnDestroy() {
|
|
6349
|
-
super.ngOnDestroy();
|
|
6350
|
-
}
|
|
6351
|
-
}
|
|
6352
|
-
HintDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintDirective, deps: [{ token: DOCUMENT }, { token: i0.ElementRef }, { token: DynamicComponentService }, { token: i0.Injector }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
6353
|
-
HintDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: HintDirective, selector: "[tetaHint]", inputs: { tetaHint: "tetaHint", align: "align", verticalAlign: "verticalAlign", delay: "delay" }, host: { listeners: { "mouseenter": "mouseenter($event)", "mouseleave": "mouseleave($event)", "click": "click($event)" } }, usesInheritance: true, ngImport: i0 });
|
|
6354
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintDirective, decorators: [{
|
|
6355
|
-
type: Directive,
|
|
6356
|
-
args: [{
|
|
6357
|
-
selector: '[tetaHint]',
|
|
6358
|
-
}]
|
|
6359
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
6360
|
-
type: Inject,
|
|
6361
|
-
args: [DOCUMENT]
|
|
6362
|
-
}] }, { type: i0.ElementRef }, { type: DynamicComponentService }, { type: i0.Injector }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { tetaHint: [{
|
|
6363
|
-
type: Input
|
|
6364
|
-
}], align: [{
|
|
6365
|
-
type: Input
|
|
6366
|
-
}], verticalAlign: [{
|
|
6367
|
-
type: Input
|
|
6368
|
-
}], delay: [{
|
|
6369
|
-
type: Input
|
|
6370
|
-
}], mouseenter: [{
|
|
6371
|
-
type: HostListener,
|
|
6372
|
-
args: ['mouseenter', ['$event']]
|
|
6373
|
-
}], mouseleave: [{
|
|
6374
|
-
type: HostListener,
|
|
6375
|
-
args: ['mouseleave', ['$event']]
|
|
6376
|
-
}], click: [{
|
|
6377
|
-
type: HostListener,
|
|
6378
|
-
args: ['click', ['$event']]
|
|
6379
|
-
}] } });
|
|
6380
|
-
|
|
6381
6406
|
class PropertyGridItemComponent {
|
|
6382
6407
|
constructor(_transloco) {
|
|
6383
6408
|
this._transloco = _transloco;
|
|
@@ -6448,7 +6473,7 @@ class PropertyGridItemComponent {
|
|
|
6448
6473
|
}
|
|
6449
6474
|
}
|
|
6450
6475
|
PropertyGridItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridItemComponent, deps: [{ token: i1$1.TranslocoService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6451
|
-
PropertyGridItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PropertyGridItemComponent, selector: "teta-property-grid-item", inputs: { column: "column", hideNonEditable: "hideNonEditable", dict: "dict", formGroup: "formGroup", horizontal: "horizontal" }, outputs: { controlValueChange: "controlValueChange" }, ngImport: i0, template: "<teta-input [label]=\"caption\"\n [tetaHint]=\"column.hint\"\n [align]=\"align.left\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n [required]=\"column.required\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">{{column.caption}}</teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n (focusout)=\"valueChange()\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: DatePickerComponent, selector: "teta-date-picker", inputs: ["disabled", "invalid", "firstDayOfWeek", "disabledDates", "disabledPeriods", "disabledDays", "minDate", "maxDate", "minYearDate", "maxYearDate", "align", "verticalAlign", "appendToBody", "allowNull", "backdrop", "showTime", "format"] }, { kind: "component", type: SelectComponent, selector: "teta-select", inputs: ["multiple", "options", "invalid", "align", "verticalAlign", "autoClose", "autoCloseIgnore", "disabled", "itemSize", "virtual", "icon", "placeholder", "appendToBody", "allowNull", "valueRef", "textRef", "searchRef"] }, { kind: "component", type: InputComponent, selector: "teta-input", inputs: ["label", "horizontal", "required"] }, { kind: "component", type: TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "invalid"] }, { kind: "component", type: ToggleComponent, selector: "teta-toggle", inputs: ["palette", "noLabel", "disabled"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: HintDirective, selector: "[tetaHint]", inputs: ["tetaHint", "align", "verticalAlign", "delay"] }] });
|
|
6476
|
+
PropertyGridItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PropertyGridItemComponent, selector: "teta-property-grid-item", inputs: { column: "column", hideNonEditable: "hideNonEditable", dict: "dict", formGroup: "formGroup", horizontal: "horizontal" }, outputs: { controlValueChange: "controlValueChange" }, ngImport: i0, template: "<teta-input [label]=\"caption\"\n [tetaHint]=\"column.hint\"\n [align]=\"align.left\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n [required]=\"column.required\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">{{column.caption}}</teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n (focusout)=\"valueChange()\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: DatePickerComponent, selector: "teta-date-picker", inputs: ["disabled", "invalid", "firstDayOfWeek", "disabledDates", "disabledPeriods", "disabledDays", "minDate", "maxDate", "minYearDate", "maxYearDate", "align", "verticalAlign", "appendToBody", "allowNull", "backdrop", "showTime", "format"] }, { kind: "component", type: SelectComponent, selector: "teta-select", inputs: ["multiple", "options", "invalid", "align", "verticalAlign", "autoClose", "autoCloseIgnore", "disabled", "itemSize", "virtual", "icon", "placeholder", "appendToBody", "allowNull", "valueRef", "textRef", "searchRef"] }, { kind: "component", type: InputComponent, selector: "teta-input", inputs: ["label", "horizontal", "required"] }, { kind: "component", type: TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "invalid"] }, { kind: "component", type: ToggleComponent, selector: "teta-toggle", inputs: ["palette", "noLabel", "disabled"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: HintDirective, selector: "[tetaHint]", inputs: ["tetaHint", "align", "verticalAlign", "delay", "overflownOnly"] }] });
|
|
6452
6477
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridItemComponent, decorators: [{
|
|
6453
6478
|
type: Component,
|
|
6454
6479
|
args: [{ selector: 'teta-property-grid-item', template: "<teta-input [label]=\"caption\"\n [tetaHint]=\"column.hint\"\n [align]=\"align.left\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n [required]=\"column.required\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">{{column.caption}}</teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n (focusout)=\"valueChange()\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n" }]
|
|
@@ -6645,25 +6670,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
6645
6670
|
}]
|
|
6646
6671
|
}] });
|
|
6647
6672
|
|
|
6648
|
-
class HintModule {
|
|
6649
|
-
}
|
|
6650
|
-
HintModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
6651
|
-
HintModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: HintModule, declarations: [HintDirective], imports: [CommonModule,
|
|
6652
|
-
DynamicComponentModule], exports: [HintDirective] });
|
|
6653
|
-
HintModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintModule, imports: [CommonModule,
|
|
6654
|
-
DynamicComponentModule] });
|
|
6655
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: HintModule, decorators: [{
|
|
6656
|
-
type: NgModule,
|
|
6657
|
-
args: [{
|
|
6658
|
-
declarations: [HintDirective],
|
|
6659
|
-
exports: [HintDirective],
|
|
6660
|
-
imports: [
|
|
6661
|
-
CommonModule,
|
|
6662
|
-
DynamicComponentModule
|
|
6663
|
-
]
|
|
6664
|
-
}]
|
|
6665
|
-
}] });
|
|
6666
|
-
|
|
6667
6673
|
class PropertyGridModule {
|
|
6668
6674
|
}
|
|
6669
6675
|
PropertyGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -8147,7 +8153,7 @@ class DefaultHeadCellComponent extends HeadCellComponentBase {
|
|
|
8147
8153
|
}
|
|
8148
8154
|
}
|
|
8149
8155
|
DefaultHeadCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DefaultHeadCellComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
8150
|
-
DefaultHeadCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: DefaultHeadCellComponent, selector: "teta-default-head-cell", inputs: { column: "column", columns: "columns", data: "data" }, usesInheritance: true, ngImport: i0, template: "<div class=\"column column_auto\" [tetaHint]=\"column.hint || column.caption\">\n <div class=\"table-head__cell__text\">\n {{column.caption}}\n </div>\n <div *ngIf=\"column.unit\" class=\"table-head__cell__text font-caption color-text-70\">\n [{{column.unit}}]\n </div>\n</div>\n", styles: [":host{align-items:center;justify-content:center;display:flex;min-width:0;padding:6px 8px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: HintDirective, selector: "[tetaHint]", inputs: ["tetaHint", "align", "verticalAlign", "delay"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8156
|
+
DefaultHeadCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: DefaultHeadCellComponent, selector: "teta-default-head-cell", inputs: { column: "column", columns: "columns", data: "data" }, usesInheritance: true, ngImport: i0, template: "<div class=\"column column_auto\" [tetaHint]=\"column.hint || column.caption\">\n <div class=\"table-head__cell__text\">\n {{column.caption}}\n </div>\n <div *ngIf=\"column.unit\" class=\"table-head__cell__text font-caption color-text-70\">\n [{{column.unit}}]\n </div>\n</div>\n", styles: [":host{align-items:center;justify-content:center;display:flex;min-width:0;padding:6px 8px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: HintDirective, selector: "[tetaHint]", inputs: ["tetaHint", "align", "verticalAlign", "delay", "overflownOnly"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8151
8157
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DefaultHeadCellComponent, decorators: [{
|
|
8152
8158
|
type: Component,
|
|
8153
8159
|
args: [{ selector: 'teta-default-head-cell', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"column column_auto\" [tetaHint]=\"column.hint || column.caption\">\n <div class=\"table-head__cell__text\">\n {{column.caption}}\n </div>\n <div *ngIf=\"column.unit\" class=\"table-head__cell__text font-caption color-text-70\">\n [{{column.unit}}]\n </div>\n</div>\n", styles: [":host{align-items:center;justify-content:center;display:flex;min-width:0;padding:6px 8px}\n"] }]
|
|
@@ -8329,10 +8335,10 @@ class TabsComponent {
|
|
|
8329
8335
|
}
|
|
8330
8336
|
}
|
|
8331
8337
|
TabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8332
|
-
TabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: TabsComponent, selector: "teta-tabs", inputs: { activeId: "activeId", destroyOnHide: "destroyOnHide" }, outputs: { tabChange: "tabChange" }, host: { properties: { "class.tabs": "this.classTabs" } }, queries: [{ propertyName: "tabs", predicate: TabComponent }], ngImport: i0, template: "<div class=\"tabs-head\" role=\"tablist\">\n <div class=\"tabs-head-item\"\n *ngFor=\"let tab of tabs\"\n (click)=\"select(tab.id);\"\n [class.tabs-head-item_active]=\"tab.id === activeId\"\n [class.tabs-head-item_disabled]=\"tab.disabled\">\n <span [id]=\"tab.id\" class=\"tabs-title\"\n role=\"tab\"\n [attr.tabindex]=\"(tab.disabled ? '-1': undefined)\"\n [attr.aria-controls]=\"(!destroyOnHide || tab.id === activeId ? tab.id + '-panel' : null)\"\n [attr.aria-expanded]=\"tab.id === activeId\"\n [attr.aria-disabled]=\"tab.disabled\">\n {{tab.title}}\n <ng-template [ngTemplateOutlet]=\"tab.titleTpl?.template\"></ng-template>\n </span>\n </div>\n</div>\n<div class=\"tabs-content\">\n <ng-template ngFor let-tab [ngForOf]=\"tabs\">\n <ng-container *ngIf=\"!destroyOnHide || tab.id === activeId\">\n <ng-template [ngTemplateOutlet]=\"tab.contentTpl?.template\"></ng-template>\n </ng-container>\n </ng-template>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
8338
|
+
TabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: TabsComponent, selector: "teta-tabs", inputs: { activeId: "activeId", destroyOnHide: "destroyOnHide" }, outputs: { tabChange: "tabChange" }, host: { properties: { "class.tabs": "this.classTabs" } }, queries: [{ propertyName: "tabs", predicate: TabComponent }], ngImport: i0, template: "<div class=\"tabs-head\" role=\"tablist\">\n <div class=\"tabs-head-item\"\n *ngFor=\"let tab of tabs\"\n (click)=\"select(tab.id);\"\n [class.tabs-head-item_active]=\"tab.id === activeId\"\n [class.tabs-head-item_disabled]=\"tab.disabled\">\n <span [id]=\"tab.id\" class=\"tabs-title\"\n role=\"tab\"\n [attr.tabindex]=\"(tab.disabled ? '-1': undefined)\"\n [attr.aria-controls]=\"(!destroyOnHide || tab.id === activeId ? tab.id + '-panel' : null)\"\n [attr.aria-expanded]=\"tab.id === activeId\"\n [attr.aria-disabled]=\"tab.disabled\">\n {{tab.title}}\n <ng-template [ngTemplateOutlet]=\"tab.titleTpl?.template\"></ng-template>\n </span>\n </div>\n <ng-content></ng-content>\n</div>\n<div class=\"tabs-content\">\n <ng-template ngFor let-tab [ngForOf]=\"tabs\">\n <ng-container *ngIf=\"!destroyOnHide || tab.id === activeId\">\n <ng-template [ngTemplateOutlet]=\"tab.contentTpl?.template\"></ng-template>\n </ng-container>\n </ng-template>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
8333
8339
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TabsComponent, decorators: [{
|
|
8334
8340
|
type: Component,
|
|
8335
|
-
args: [{ selector: 'teta-tabs', template: "<div class=\"tabs-head\" role=\"tablist\">\n <div class=\"tabs-head-item\"\n *ngFor=\"let tab of tabs\"\n (click)=\"select(tab.id);\"\n [class.tabs-head-item_active]=\"tab.id === activeId\"\n [class.tabs-head-item_disabled]=\"tab.disabled\">\n <span [id]=\"tab.id\" class=\"tabs-title\"\n role=\"tab\"\n [attr.tabindex]=\"(tab.disabled ? '-1': undefined)\"\n [attr.aria-controls]=\"(!destroyOnHide || tab.id === activeId ? tab.id + '-panel' : null)\"\n [attr.aria-expanded]=\"tab.id === activeId\"\n [attr.aria-disabled]=\"tab.disabled\">\n {{tab.title}}\n <ng-template [ngTemplateOutlet]=\"tab.titleTpl?.template\"></ng-template>\n </span>\n </div>\n</div>\n<div class=\"tabs-content\">\n <ng-template ngFor let-tab [ngForOf]=\"tabs\">\n <ng-container *ngIf=\"!destroyOnHide || tab.id === activeId\">\n <ng-template [ngTemplateOutlet]=\"tab.contentTpl?.template\"></ng-template>\n </ng-container>\n </ng-template>\n</div>\n" }]
|
|
8341
|
+
args: [{ selector: 'teta-tabs', template: "<div class=\"tabs-head\" role=\"tablist\">\n <div class=\"tabs-head-item\"\n *ngFor=\"let tab of tabs\"\n (click)=\"select(tab.id);\"\n [class.tabs-head-item_active]=\"tab.id === activeId\"\n [class.tabs-head-item_disabled]=\"tab.disabled\">\n <span [id]=\"tab.id\" class=\"tabs-title\"\n role=\"tab\"\n [attr.tabindex]=\"(tab.disabled ? '-1': undefined)\"\n [attr.aria-controls]=\"(!destroyOnHide || tab.id === activeId ? tab.id + '-panel' : null)\"\n [attr.aria-expanded]=\"tab.id === activeId\"\n [attr.aria-disabled]=\"tab.disabled\">\n {{tab.title}}\n <ng-template [ngTemplateOutlet]=\"tab.titleTpl?.template\"></ng-template>\n </span>\n </div>\n <ng-content></ng-content>\n</div>\n<div class=\"tabs-content\">\n <ng-template ngFor let-tab [ngForOf]=\"tabs\">\n <ng-container *ngIf=\"!destroyOnHide || tab.id === activeId\">\n <ng-template [ngTemplateOutlet]=\"tab.contentTpl?.template\"></ng-template>\n </ng-container>\n </ng-template>\n</div>\n" }]
|
|
8336
8342
|
}], ctorParameters: function () { return []; }, propDecorators: { classTabs: [{
|
|
8337
8343
|
type: HostBinding,
|
|
8338
8344
|
args: ['class.tabs']
|
|
@@ -8578,10 +8584,11 @@ class TreeItemComponent {
|
|
|
8578
8584
|
this.treeItemClass = true;
|
|
8579
8585
|
this.itemIsOpen = false;
|
|
8580
8586
|
this._alive = true;
|
|
8587
|
+
this.treeItemInstance = true;
|
|
8581
8588
|
}
|
|
8582
8589
|
get computedDepth() {
|
|
8583
8590
|
return (this.depth +
|
|
8584
|
-
(this.item[this.childNodeName]?.length > 0 ? 0 : this.
|
|
8591
|
+
(this.item[this.childNodeName]?.length > 0 ? 0 : this.childPadding ? 2 : 1));
|
|
8585
8592
|
}
|
|
8586
8593
|
openItem() {
|
|
8587
8594
|
this.service.openItem(this.item);
|
|
@@ -8596,32 +8603,33 @@ class TreeItemComponent {
|
|
|
8596
8603
|
this._cdr.markForCheck();
|
|
8597
8604
|
});
|
|
8598
8605
|
}
|
|
8599
|
-
ngOnChanges(changes) {
|
|
8606
|
+
ngOnChanges(changes) {
|
|
8607
|
+
}
|
|
8600
8608
|
ngOnDestroy() {
|
|
8601
8609
|
this._alive = false;
|
|
8602
8610
|
}
|
|
8603
8611
|
}
|
|
8604
8612
|
TreeItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeItemComponent, deps: [{ token: TreeService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
8605
|
-
TreeItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: TreeItemComponent, selector: "teta-tree-item", inputs: { item: "item", depth: "depth", padding: "padding", childNodeName: "childNodeName", template: "template",
|
|
8606
|
-
trigger('
|
|
8613
|
+
TreeItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: TreeItemComponent, selector: "teta-tree-item", inputs: { item: "item", depth: "depth", padding: "padding", childNodeName: "childNodeName", template: "template", childPadding: "childPadding" }, host: { properties: { "class.tree__item-container": "this.treeItemClass", "@treeItemInstance": "this.treeItemInstance" } }, usesOnChanges: true, ngImport: i0, template: "<div class=\"tree__item_content\" [ngClass]=\"'tree__item_content-' + computedDepth\" (click)=\"openItem()\">\n <ng-container\n *ngTemplateOutlet=\"template; context: {$implicit: item, item: item, open: itemIsOpen, service: service, depth: depth}\"></ng-container>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
|
|
8614
|
+
trigger('treeItemInstance', [
|
|
8607
8615
|
transition('void => *', [
|
|
8608
8616
|
style({ opacity: '0' }),
|
|
8609
8617
|
animate(200, style({ opacity: '1' })),
|
|
8610
8618
|
]),
|
|
8611
|
-
transition('* => void', [animate(200, style({
|
|
8619
|
+
// transition('* => void', [animate(200, style({opacity: '0'}))]),
|
|
8612
8620
|
]),
|
|
8613
8621
|
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8614
8622
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeItemComponent, decorators: [{
|
|
8615
8623
|
type: Component,
|
|
8616
8624
|
args: [{ selector: 'teta-tree-item', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
|
|
8617
|
-
trigger('
|
|
8625
|
+
trigger('treeItemInstance', [
|
|
8618
8626
|
transition('void => *', [
|
|
8619
8627
|
style({ opacity: '0' }),
|
|
8620
8628
|
animate(200, style({ opacity: '1' })),
|
|
8621
8629
|
]),
|
|
8622
|
-
transition('* => void', [animate(200, style({
|
|
8630
|
+
// transition('* => void', [animate(200, style({opacity: '0'}))]),
|
|
8623
8631
|
]),
|
|
8624
|
-
], template: "<div class=\"tree__item_content\" [ngClass]=\"'tree__item_content-' + computedDepth\" (click)=\"openItem()\">\n <ng-container\n *ngTemplateOutlet=\"template; context: {$implicit: item, item: item, open: itemIsOpen, service: service, depth: depth}\"></ng-container>\n</div>\n
|
|
8632
|
+
], template: "<div class=\"tree__item_content\" [ngClass]=\"'tree__item_content-' + computedDepth\" (click)=\"openItem()\">\n <ng-container\n *ngTemplateOutlet=\"template; context: {$implicit: item, item: item, open: itemIsOpen, service: service, depth: depth}\"></ng-container>\n</div>\n" }]
|
|
8625
8633
|
}], ctorParameters: function () { return [{ type: TreeService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
|
|
8626
8634
|
type: Input
|
|
8627
8635
|
}], depth: [{
|
|
@@ -8632,69 +8640,102 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
8632
8640
|
type: Input
|
|
8633
8641
|
}], template: [{
|
|
8634
8642
|
type: Input
|
|
8635
|
-
}],
|
|
8643
|
+
}], childPadding: [{
|
|
8636
8644
|
type: Input
|
|
8637
8645
|
}], treeItemClass: [{
|
|
8638
8646
|
type: HostBinding,
|
|
8639
8647
|
args: ['class.tree__item-container']
|
|
8648
|
+
}], treeItemInstance: [{
|
|
8649
|
+
type: HostBinding,
|
|
8650
|
+
args: ['@treeItemInstance']
|
|
8640
8651
|
}] } });
|
|
8641
8652
|
|
|
8642
8653
|
class TreeComponent {
|
|
8643
8654
|
constructor(_service, _cdr) {
|
|
8644
8655
|
this._service = _service;
|
|
8645
8656
|
this._cdr = _cdr;
|
|
8646
|
-
this.service = new EventEmitter();
|
|
8647
8657
|
this.padding = 8;
|
|
8648
8658
|
this.childNodeName = 'children';
|
|
8659
|
+
this.height = 28;
|
|
8660
|
+
this.service = new EventEmitter();
|
|
8649
8661
|
this.openItemsChange = new EventEmitter();
|
|
8650
8662
|
this._alive = true;
|
|
8663
|
+
this.treeClass = true;
|
|
8664
|
+
this.trackRow = (index, item) => {
|
|
8665
|
+
if (this.compareItems) {
|
|
8666
|
+
return this.compareItems(item);
|
|
8667
|
+
}
|
|
8668
|
+
return index;
|
|
8669
|
+
};
|
|
8651
8670
|
this._service.openItems
|
|
8652
8671
|
.pipe(takeWhile((_) => this._alive), filter((_) => this._openItems !== _))
|
|
8653
|
-
.subscribe((_) =>
|
|
8672
|
+
.subscribe((_) => {
|
|
8673
|
+
this._openItems = _;
|
|
8674
|
+
this.openItemsChange.emit(_);
|
|
8675
|
+
});
|
|
8676
|
+
}
|
|
8677
|
+
set data(data) {
|
|
8678
|
+
this._data = data;
|
|
8679
|
+
}
|
|
8680
|
+
get data() {
|
|
8681
|
+
return this._data;
|
|
8654
8682
|
}
|
|
8655
8683
|
set openItems(items) {
|
|
8656
8684
|
this._openItems = items;
|
|
8657
8685
|
this._service.setOpenItems(items);
|
|
8658
8686
|
}
|
|
8659
|
-
get noChildMode() {
|
|
8660
|
-
const hasChildren = this.data.find((_) => _[this.childNodeName]?.length > 0);
|
|
8661
|
-
return !hasChildren;
|
|
8662
|
-
}
|
|
8663
8687
|
set compareItems(func) {
|
|
8664
8688
|
this._service.compareItems = func;
|
|
8665
8689
|
}
|
|
8666
|
-
get
|
|
8667
|
-
|
|
8668
|
-
return result.join(' ');
|
|
8690
|
+
get compareItems() {
|
|
8691
|
+
return this._service.compareItems;
|
|
8669
8692
|
}
|
|
8670
8693
|
ngOnInit() {
|
|
8671
8694
|
this.service.emit(this._service);
|
|
8672
8695
|
}
|
|
8673
|
-
ngAfterContentInit() { }
|
|
8674
8696
|
ngOnChanges(changes) {
|
|
8697
|
+
this.displayData = this.getDisplayData(this._data, 0);
|
|
8698
|
+
this.childPadding = this.hasChildren(this._data);
|
|
8675
8699
|
this._cdr.detectChanges();
|
|
8676
8700
|
}
|
|
8677
8701
|
ngOnDestroy() {
|
|
8678
8702
|
this._alive = false;
|
|
8679
8703
|
}
|
|
8704
|
+
hasChildren(data) {
|
|
8705
|
+
return data.some((_) => _[this.childNodeName]?.length > 0);
|
|
8706
|
+
}
|
|
8707
|
+
getDisplayData(data, level) {
|
|
8708
|
+
const result = [];
|
|
8709
|
+
data?.forEach((item) => {
|
|
8710
|
+
item['level'] = level;
|
|
8711
|
+
result.push(item);
|
|
8712
|
+
if (item[this.childNodeName]?.length > 0
|
|
8713
|
+
&& this._openItems?.find((openItem) => this.compareItems(openItem) === this.compareItems(item))) {
|
|
8714
|
+
result.push(...this.getDisplayData(item[this.childNodeName], level + 1));
|
|
8715
|
+
}
|
|
8716
|
+
});
|
|
8717
|
+
return result;
|
|
8718
|
+
}
|
|
8680
8719
|
}
|
|
8681
8720
|
TreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeComponent, deps: [{ token: TreeService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
8682
|
-
TreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: TreeComponent, selector: "teta-tree", inputs: { data: "data",
|
|
8721
|
+
TreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: TreeComponent, selector: "teta-tree", inputs: { data: "data", padding: "padding", childNodeName: "childNodeName", virtual: "virtual", height: "height", openItems: "openItems", compareItems: "compareItems" }, outputs: { service: "service", openItemsChange: "openItemsChange" }, host: { properties: { "class.tree": "this.treeClass" } }, providers: [TreeService], queries: [{ propertyName: "template", first: true, predicate: TetaTemplateDirective, descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<cdk-virtual-scroll-viewport *ngIf=\"virtual; else default\"\n class=\"table-body-container\"\n [itemSize]=\"height\">\n <teta-tree-item *cdkVirtualFor=\"let item of displayData;templateCacheSize: 0; trackBy: trackRow;\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</cdk-virtual-scroll-viewport>\n<ng-template #default>\n <teta-tree-item *ngFor=\"let item of displayData\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i5.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i5.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: TreeItemComponent, selector: "teta-tree-item", inputs: ["item", "depth", "padding", "childNodeName", "template", "childPadding"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8683
8722
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeComponent, decorators: [{
|
|
8684
8723
|
type: Component,
|
|
8685
|
-
args: [{ selector: 'teta-tree', providers: [TreeService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<
|
|
8724
|
+
args: [{ selector: 'teta-tree', providers: [TreeService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cdk-virtual-scroll-viewport *ngIf=\"virtual; else default\"\n class=\"table-body-container\"\n [itemSize]=\"height\">\n <teta-tree-item *cdkVirtualFor=\"let item of displayData;templateCacheSize: 0; trackBy: trackRow;\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</cdk-virtual-scroll-viewport>\n<ng-template #default>\n <teta-tree-item *ngFor=\"let item of displayData\"\n [item]=\"item\"\n [style.height.px]=\"height\"\n [depth]=\"item['level']\"\n [padding]=\"padding\"\n [childNodeName]=\"childNodeName\"\n [childPadding]=\"childPadding\"\n [template]=\"template?.template\"></teta-tree-item>\n</ng-template>\n" }]
|
|
8686
8725
|
}], ctorParameters: function () { return [{ type: TreeService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
|
|
8687
8726
|
type: Input
|
|
8688
|
-
}], service: [{
|
|
8689
|
-
type: Output
|
|
8690
|
-
}], class: [{
|
|
8691
|
-
type: Input
|
|
8692
8727
|
}], padding: [{
|
|
8693
8728
|
type: Input
|
|
8694
8729
|
}], childNodeName: [{
|
|
8695
8730
|
type: Input
|
|
8731
|
+
}], virtual: [{
|
|
8732
|
+
type: Input
|
|
8733
|
+
}], height: [{
|
|
8734
|
+
type: Input
|
|
8696
8735
|
}], openItems: [{
|
|
8697
8736
|
type: Input
|
|
8737
|
+
}], service: [{
|
|
8738
|
+
type: Output
|
|
8698
8739
|
}], openItemsChange: [{
|
|
8699
8740
|
type: Output
|
|
8700
8741
|
}], template: [{
|
|
@@ -8702,9 +8743,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
8702
8743
|
args: [TetaTemplateDirective, { static: true }]
|
|
8703
8744
|
}], compareItems: [{
|
|
8704
8745
|
type: Input
|
|
8705
|
-
}],
|
|
8746
|
+
}], treeClass: [{
|
|
8706
8747
|
type: HostBinding,
|
|
8707
|
-
args: ['class']
|
|
8748
|
+
args: ['class.tree']
|
|
8708
8749
|
}] } });
|
|
8709
8750
|
|
|
8710
8751
|
class TreeItemToggleComponent {
|
|
@@ -8839,7 +8880,7 @@ class VisibilityDropdownTabComponent {
|
|
|
8839
8880
|
}
|
|
8840
8881
|
}
|
|
8841
8882
|
VisibilityDropdownTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: VisibilityDropdownTabComponent, deps: [{ token: TableService }, { token: TetaConfigService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
8842
|
-
VisibilityDropdownTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: VisibilityDropdownTabComponent, selector: "teta-visibility-dropdown-tab", inputs: { columns: "columns", column: "column", state: "state", data: "data", close: "close" }, ngImport: i0, template: "<ng-container *ngIf=\"locale | async as loc\">\n <div class=\"list-item padding-left-6 padding-top-2\" [class.padding-left-9]=\"childMode\">\n <teta-checkbox [binary]=\"true\"\n [allowNull]=\"true\"\n [ngModel]=\"allColumnsVisible()\"\n (ngModelChange)=\"setAllColumns($event)\">\n {{loc.all}}\n </teta-checkbox>\n </div>\n <div class=\"list-divider\"></div>\n <div class=\"padding-v-2 column column_auto scrollable\">\n <teta-tree [data]=\"columns\"\n [openItems]=\"openItems\"\n (openItemsChange)=\"openItems = $event\"\n [childNodeName]=\"'columns'\"\n [compareItems]=\"compareItems\">\n <ng-template tetaTemplate let-item>\n <div class=\"tree__item\">\n <teta-tree-item-toggle [item]=\"item\" *ngIf=\"item.columns?.length > 0\"></teta-tree-item-toggle>\n <teta-checkbox\n [ngModel]=\"!columnIsHidden(item)\"\n (ngModelChange)=\"setColumnVisibility(item, $event)\"\n (click)=\"$event.stopPropagation()\"\n [binary]=\"true\"\n >\n {{item.caption}}\n </teta-checkbox>\n </div>\n </ng-template>\n </teta-tree>\n </div>\n <teta-toolbar class=\"justify-content-end\">\n <button teta-button\n [disabled]=\"allColumnsVisible() === false\"\n [palette]=\"'primary'\"\n (click)=\"setColumnsVisibility()\">\n {{loc.apply}}\n </button>\n </teta-toolbar>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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"] }, { kind: "component", type: CheckboxComponent, selector: "teta-checkbox", inputs: ["class", "palette", "noLabel", "disabled", "value", "binary", "allowNull"] }, { kind: "component", type: ButtonComponent, selector: "button[teta-button], teta-button", inputs: ["palette", "class", "view", "square"] }, { kind: "component", type: TreeComponent, selector: "teta-tree", inputs: ["data", "
|
|
8883
|
+
VisibilityDropdownTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: VisibilityDropdownTabComponent, selector: "teta-visibility-dropdown-tab", inputs: { columns: "columns", column: "column", state: "state", data: "data", close: "close" }, ngImport: i0, template: "<ng-container *ngIf=\"locale | async as loc\">\n <div class=\"list-item padding-left-6 padding-top-2\" [class.padding-left-9]=\"childMode\">\n <teta-checkbox [binary]=\"true\"\n [allowNull]=\"true\"\n [ngModel]=\"allColumnsVisible()\"\n (ngModelChange)=\"setAllColumns($event)\">\n {{loc.all}}\n </teta-checkbox>\n </div>\n <div class=\"list-divider\"></div>\n <div class=\"padding-v-2 column column_auto scrollable\">\n <teta-tree [data]=\"columns\"\n [openItems]=\"openItems\"\n (openItemsChange)=\"openItems = $event\"\n [childNodeName]=\"'columns'\"\n [compareItems]=\"compareItems\">\n <ng-template tetaTemplate let-item>\n <div class=\"tree__item\">\n <teta-tree-item-toggle [item]=\"item\" *ngIf=\"item.columns?.length > 0\"></teta-tree-item-toggle>\n <teta-checkbox\n [ngModel]=\"!columnIsHidden(item)\"\n (ngModelChange)=\"setColumnVisibility(item, $event)\"\n (click)=\"$event.stopPropagation()\"\n [binary]=\"true\"\n >\n {{item.caption}}\n </teta-checkbox>\n </div>\n </ng-template>\n </teta-tree>\n </div>\n <teta-toolbar class=\"justify-content-end\">\n <button teta-button\n [disabled]=\"allColumnsVisible() === false\"\n [palette]=\"'primary'\"\n (click)=\"setColumnsVisibility()\">\n {{loc.apply}}\n </button>\n </teta-toolbar>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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"] }, { kind: "component", type: CheckboxComponent, selector: "teta-checkbox", inputs: ["class", "palette", "noLabel", "disabled", "value", "binary", "allowNull"] }, { kind: "component", type: ButtonComponent, selector: "button[teta-button], teta-button", inputs: ["palette", "class", "view", "square"] }, { kind: "component", type: TreeComponent, selector: "teta-tree", inputs: ["data", "padding", "childNodeName", "virtual", "height", "openItems", "compareItems"], outputs: ["service", "openItemsChange"] }, { kind: "directive", type: TetaTemplateDirective, selector: "[tetaTemplate]", inputs: ["tetaTemplate"] }, { kind: "component", type: TreeItemToggleComponent, selector: "teta-tree-item-toggle", inputs: ["item"] }, { kind: "component", type: ToolbarComponent, selector: "teta-toolbar", inputs: ["palette", "class"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8843
8884
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: VisibilityDropdownTabComponent, decorators: [{
|
|
8844
8885
|
type: Component,
|
|
8845
8886
|
args: [{ selector: 'teta-visibility-dropdown-tab', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"locale | async as loc\">\n <div class=\"list-item padding-left-6 padding-top-2\" [class.padding-left-9]=\"childMode\">\n <teta-checkbox [binary]=\"true\"\n [allowNull]=\"true\"\n [ngModel]=\"allColumnsVisible()\"\n (ngModelChange)=\"setAllColumns($event)\">\n {{loc.all}}\n </teta-checkbox>\n </div>\n <div class=\"list-divider\"></div>\n <div class=\"padding-v-2 column column_auto scrollable\">\n <teta-tree [data]=\"columns\"\n [openItems]=\"openItems\"\n (openItemsChange)=\"openItems = $event\"\n [childNodeName]=\"'columns'\"\n [compareItems]=\"compareItems\">\n <ng-template tetaTemplate let-item>\n <div class=\"tree__item\">\n <teta-tree-item-toggle [item]=\"item\" *ngIf=\"item.columns?.length > 0\"></teta-tree-item-toggle>\n <teta-checkbox\n [ngModel]=\"!columnIsHidden(item)\"\n (ngModelChange)=\"setColumnVisibility(item, $event)\"\n (click)=\"$event.stopPropagation()\"\n [binary]=\"true\"\n >\n {{item.caption}}\n </teta-checkbox>\n </div>\n </ng-template>\n </teta-tree>\n </div>\n <teta-toolbar class=\"justify-content-end\">\n <button teta-button\n [disabled]=\"allColumnsVisible() === false\"\n [palette]=\"'primary'\"\n (click)=\"setColumnsVisibility()\">\n {{loc.apply}}\n </button>\n </teta-toolbar>\n</ng-container>\n" }]
|
|
@@ -9465,10 +9506,10 @@ class StringCellComponent extends CellComponentBase {
|
|
|
9465
9506
|
}
|
|
9466
9507
|
}
|
|
9467
9508
|
StringCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: StringCellComponent, deps: [{ token: TableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
9468
|
-
StringCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: StringCellComponent, selector: "teta-string-cell", inputs: { column: "column", row: "row" }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<span [style.display]=\"edit ? 'none' : 'block'\"\n class=\"cell-text\"\n [class.cell-text_disabled]=\"!editable\">\n {{row[column.name]}}\n</span>\n<input #input\n *ngIf=\"edit\"\n type=\"text\"\n class=\"input row_auto border-radius-0\"\n (blur)=\"setValue()\"\n [ngModel]=\"row[column.name]\"\n (ngModelChange)=\"row[column.name]=$event\"/>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
9509
|
+
StringCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: StringCellComponent, selector: "teta-string-cell", inputs: { column: "column", row: "row" }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<span [style.display]=\"edit ? 'none' : 'block'\"\n class=\"cell-text\"\n [tetaHint]=\"row[column.name]\"\n [appendToBody]=\"true\"\n [overflownOnly]=\"true\"\n [class.cell-text_disabled]=\"!editable\">\n {{row[column.name]}}\n</span>\n<input #input\n *ngIf=\"edit\"\n type=\"text\"\n class=\"input row_auto border-radius-0\"\n (blur)=\"setValue()\"\n [ngModel]=\"row[column.name]\"\n (ngModelChange)=\"row[column.name]=$event\"/>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { 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"] }, { kind: "directive", type: HintDirective, selector: "[tetaHint]", inputs: ["tetaHint", "align", "verticalAlign", "delay", "overflownOnly"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
9469
9510
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: StringCellComponent, decorators: [{
|
|
9470
9511
|
type: Component,
|
|
9471
|
-
args: [{ selector: 'teta-string-cell', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span [style.display]=\"edit ? 'none' : 'block'\"\n class=\"cell-text\"\n [class.cell-text_disabled]=\"!editable\">\n {{row[column.name]}}\n</span>\n<input #input\n *ngIf=\"edit\"\n type=\"text\"\n class=\"input row_auto border-radius-0\"\n (blur)=\"setValue()\"\n [ngModel]=\"row[column.name]\"\n (ngModelChange)=\"row[column.name]=$event\"/>\n\n" }]
|
|
9512
|
+
args: [{ selector: 'teta-string-cell', changeDetection: ChangeDetectionStrategy.OnPush, template: "<span [style.display]=\"edit ? 'none' : 'block'\"\n class=\"cell-text\"\n [tetaHint]=\"row[column.name]\"\n [appendToBody]=\"true\"\n [overflownOnly]=\"true\"\n [class.cell-text_disabled]=\"!editable\">\n {{row[column.name]}}\n</span>\n<input #input\n *ngIf=\"edit\"\n type=\"text\"\n class=\"input row_auto border-radius-0\"\n (blur)=\"setValue()\"\n [ngModel]=\"row[column.name]\"\n (ngModelChange)=\"row[column.name]=$event\"/>\n\n" }]
|
|
9472
9513
|
}], ctorParameters: function () { return [{ type: TableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { column: [{
|
|
9473
9514
|
type: Input
|
|
9474
9515
|
}], row: [{
|
|
@@ -10311,14 +10352,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
10311
10352
|
class TreeModule {
|
|
10312
10353
|
}
|
|
10313
10354
|
TreeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10314
|
-
TreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: TreeModule, declarations: [TreeComponent, TreeItemComponent, TreeItemToggleComponent], imports: [CommonModule, IconModule, TetaTemplateModule], exports: [TreeComponent, TetaTemplateModule, TreeItemToggleComponent] });
|
|
10315
|
-
TreeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeModule, imports: [CommonModule, IconModule, TetaTemplateModule, TetaTemplateModule] });
|
|
10355
|
+
TreeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: TreeModule, declarations: [TreeComponent, TreeItemComponent, TreeItemToggleComponent], imports: [CommonModule, IconModule, TetaTemplateModule, ScrollingModule], exports: [TreeComponent, TetaTemplateModule, TreeItemToggleComponent] });
|
|
10356
|
+
TreeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeModule, imports: [CommonModule, IconModule, TetaTemplateModule, ScrollingModule, TetaTemplateModule] });
|
|
10316
10357
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: TreeModule, decorators: [{
|
|
10317
10358
|
type: NgModule,
|
|
10318
10359
|
args: [{
|
|
10319
10360
|
declarations: [TreeComponent, TreeItemComponent, TreeItemToggleComponent],
|
|
10320
10361
|
exports: [TreeComponent, TetaTemplateModule, TreeItemToggleComponent],
|
|
10321
|
-
imports: [CommonModule, IconModule, TetaTemplateModule],
|
|
10362
|
+
imports: [CommonModule, IconModule, TetaTemplateModule, ScrollingModule],
|
|
10322
10363
|
}]
|
|
10323
10364
|
}] });
|
|
10324
10365
|
|