@leanix/components 0.2.226 → 0.2.229
Sign up to get free protection for your applications and to get access to all the features.
- package/bundles/leanix-components.umd.js +290 -88
- package/bundles/leanix-components.umd.js.map +1 -1
- package/esm2015/index.js +2 -0
- package/esm2015/index.js.map +1 -1
- package/esm2015/lib/core-ui/functions/core-css.helpers.js +17 -5
- package/esm2015/lib/core-ui/functions/core-css.helpers.js.map +1 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/constants.js +5 -0
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/constants.js.map +1 -0
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.js +20 -23
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.js.map +1 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.js +33 -25
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.js.map +1 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.js +25 -0
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.js.map +1 -0
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.js +133 -0
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.js.map +1 -0
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.js +37 -0
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.js.map +1 -0
- package/esm2015/lib/forms-ui/forms-ui.module.js +12 -20
- package/esm2015/lib/forms-ui/forms-ui.module.js.map +1 -1
- package/fesm2015/leanix-components.js +265 -79
- package/fesm2015/leanix-components.js.map +1 -1
- package/index.d.ts +1 -0
- package/lib/core-ui/functions/core-css.helpers.d.ts +7 -0
- package/lib/forms-ui/components/drag-and-drop-list/constants.d.ts +4 -0
- package/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.d.ts +7 -6
- package/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.d.ts +23 -17
- package/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.d.ts +14 -0
- package/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.d.ts +36 -0
- package/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.d.ts +14 -0
- package/lib/forms-ui/forms-ui.module.d.ts +41 -43
- package/package.json +1 -1
@@ -2,7 +2,7 @@ import * as i2 from '@angular/common';
|
|
2
2
|
import { CommonModule, formatDate } from '@angular/common';
|
3
3
|
import * as i0 from '@angular/core';
|
4
4
|
import { Component, Input, HostBinding, ChangeDetectionStrategy, EventEmitter, Output, HostListener, Directive, Pipe, SecurityContext, ContentChildren, Injectable, InjectionToken, Optional, Inject, NgModule, ViewChildren, ViewChild, ContentChild, forwardRef, TemplateRef, Self, Host } from '@angular/core';
|
5
|
-
import * as i3$
|
5
|
+
import * as i3$2 from '@angular/cdk/portal';
|
6
6
|
import { ComponentPortal, CdkPortal, PortalModule } from '@angular/cdk/portal';
|
7
7
|
import * as i1 from '@angular/cdk/overlay';
|
8
8
|
import { OverlayModule, CdkConnectedOverlay } from '@angular/cdk/overlay';
|
@@ -12,14 +12,12 @@ import { TranslatePipe, TranslateModule } from '@ngx-translate/core';
|
|
12
12
|
import * as i1$1 from '@angular/platform-browser';
|
13
13
|
import * as i6 from 'rxjs';
|
14
14
|
import { merge, Subject, fromEvent, Observable, BehaviorSubject, combineLatest, ReplaySubject, of, timer } from 'rxjs';
|
15
|
-
import { takeUntil, first, startWith, filter, withLatestFrom, delay, map, distinctUntilChanged, switchMap, debounceTime, mapTo, skipWhile,
|
15
|
+
import { takeUntil, first, startWith, filter, withLatestFrom, delay, map, distinctUntilChanged, switchMap, debounceTime, mapTo, skipWhile, take, tap } from 'rxjs/operators';
|
16
16
|
import * as Color from 'color';
|
17
17
|
import { format, distanceInWords, startOfDay } from 'date-fns';
|
18
18
|
import * as _ from 'lodash';
|
19
19
|
import { curry } from 'lodash';
|
20
20
|
import { Renderer, marked } from 'marked';
|
21
|
-
import * as i3$2 from '@angular/cdk/drag-drop';
|
22
|
-
import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
|
23
21
|
import * as i3$1 from '@angular/forms';
|
24
22
|
import { NG_VALUE_ACCESSOR, NG_VALIDATORS, FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
25
23
|
import * as i1$3 from 'ngx-bootstrap/datepicker';
|
@@ -27,14 +25,16 @@ import { DatePickerComponent, DateFormatter, DatepickerModule } from 'ngx-bootst
|
|
27
25
|
import * as i3 from 'ngx-infinite-scroll';
|
28
26
|
import { InfiniteScrollModule } from 'ngx-infinite-scroll';
|
29
27
|
import { __decorate, __awaiter } from 'tslib';
|
28
|
+
import * as i1$4 from '@angular/cdk/drag-drop';
|
29
|
+
import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
|
30
30
|
import * as i2$1 from '@angular/cdk/a11y';
|
31
31
|
import { ActiveDescendantKeyManager, A11yModule } from '@angular/cdk/a11y';
|
32
|
-
import * as i1$
|
32
|
+
import * as i1$5 from '@angular/cdk/bidi';
|
33
33
|
import { trigger, transition, style, animate } from '@angular/animations';
|
34
|
-
import * as i1$
|
34
|
+
import * as i1$6 from '@ncstate/sat-popover';
|
35
35
|
import { SatPopover, SatPopoverModule } from '@ncstate/sat-popover';
|
36
36
|
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
37
|
-
import * as i3$
|
37
|
+
import * as i3$3 from '@angular/router';
|
38
38
|
import { RouterLinkActive, RouterModule } from '@angular/router';
|
39
39
|
|
40
40
|
class BadgeComponent {
|
@@ -928,12 +928,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
928
928
|
type: Input
|
929
929
|
}] } });
|
930
930
|
|
931
|
+
/**
|
932
|
+
* Compute the most eligible text color for a given background color (black or white), depending on the luminance of the
|
933
|
+
* background color. In case the provided color is undefined or invalid, white (#FFFFFF) is returned.
|
934
|
+
*
|
935
|
+
* @param colorHex Color string in hexadecimal encoding.
|
936
|
+
* @returns Equivalent contrast color in hexadecimal encoding.
|
937
|
+
*/
|
931
938
|
function getContrastColor(colorHex) {
|
932
|
-
|
933
|
-
|
934
|
-
|
935
|
-
|
936
|
-
|
939
|
+
try {
|
940
|
+
const color = Color(colorHex || '#000');
|
941
|
+
// Check http://codepen.io/WebSeed/pen/pvgqEq
|
942
|
+
const a = 1 - (0.299 * color.red() + 0.587 * color.green() + 0.114 * color.blue()) / 255;
|
943
|
+
const d = a < 0.4 ? 0 : 255;
|
944
|
+
return Color({ r: d, g: d, b: d }).hex();
|
945
|
+
}
|
946
|
+
catch (_a) {
|
947
|
+
return '#FFFFFF';
|
948
|
+
}
|
937
949
|
}
|
938
950
|
function shorthandHexHandle(hex) {
|
939
951
|
const shorthandRegex = /^(#)([a-f\d])([a-f\d])([a-f\d])$/i;
|
@@ -2977,24 +2989,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
2977
2989
|
}] } });
|
2978
2990
|
|
2979
2991
|
class DragAndDropListItemComponent {
|
2980
|
-
constructor() {
|
2992
|
+
constructor(element) {
|
2993
|
+
this.element = element;
|
2981
2994
|
this.NAME = 'DragAndDropListItemComponent';
|
2982
2995
|
this.draggable = true;
|
2983
2996
|
this.action = new EventEmitter();
|
2984
|
-
this.
|
2985
|
-
this.moveUp = new EventEmitter();
|
2986
|
-
this.moveToBottom = new EventEmitter();
|
2987
|
-
this.moveDown = new EventEmitter();
|
2997
|
+
this.customTemplateRef = null;
|
2988
2998
|
}
|
2989
2999
|
get draggingDisabled() {
|
2990
3000
|
return !this.draggable;
|
2991
3001
|
}
|
3002
|
+
get hasCustomTemplate() {
|
3003
|
+
return !!this.customTemplateRef;
|
3004
|
+
}
|
2992
3005
|
trackByAction(_index, action) {
|
2993
3006
|
return action.id;
|
2994
3007
|
}
|
3008
|
+
focus() {
|
3009
|
+
this.element.nativeElement.focus();
|
3010
|
+
}
|
2995
3011
|
}
|
2996
|
-
DragAndDropListItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: DragAndDropListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
2997
|
-
DragAndDropListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: DragAndDropListItemComponent, selector: "lx-drag-and-drop-list-item", inputs: { item: "item", draggable: "draggable", actions: "actions" }, outputs: { action: "action",
|
3012
|
+
DragAndDropListItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: DragAndDropListItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
3013
|
+
DragAndDropListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: DragAndDropListItemComponent, selector: "lx-drag-and-drop-list-item", inputs: { item: "item", draggable: "draggable", actions: "actions" }, outputs: { action: "action" }, host: { properties: { "class.draggingDisabled": "this.draggingDisabled", "class.customTemplate": "this.hasCustomTemplate" } }, queries: [{ propertyName: "customTemplateRef", first: true, predicate: ["customTemplate"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"customTemplateRef; else defaultTemplate\">\n <ng-container *ngTemplateOutlet=\"customTemplateRef\"></ng-container>\n</ng-container>\n<ng-template #defaultTemplate>\n <div class=\"drag-item-wrappper\">\n <i *ngIf=\"draggable\" class=\"far fa-bars drag-handle\"></i>\n <span [attr.title]=\"item\" class=\"itemWrapperForTruncation truncate\">{{ item }}</span>\n </div>\n <div class=\"left-button-container\" align=\"left\">\n <div class=\"action-buttons-wrapper\" *ngIf=\"!!actions\">\n <button\n lx-button\n *ngFor=\"let act of actions; trackBy: trackByAction\"\n (click)=\"action.emit({ actionId: act.id, item: item })\"\n [title]=\"act.label\"\n [square]=\"true\"\n mode=\"ghost\"\n size=\"small\"\n class=\"action-button\"\n [class.show-on-hover-button]=\"act.showOnlyOnHover ? true : false\"\n >\n <i class=\"far {{ act.icon }} actionIcon\"></i>\n </button>\n </div>\n </div>\n</ng-template>\n", styles: [":host:not(.customTemplate){padding:6px 8px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;background:#fff;border-radius:3px}:host:not(.customTemplate):hover .show-on-hover-button{opacity:1}:host.draggingDisabled{background:#eaedf1}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drag-handle{padding-right:4px}.actionIcon{padding:0 2px}.drag-item-wrappper{display:flex;min-width:0;align-items:baseline}.action-buttons-wrapper,.left-button-container{display:flex;flex-direction:row;flex-wrap:nowrap}.show-on-hover-button{opacity:0}.show-on-hover-button:focus{opacity:1}lx-option i{margin-right:8px}"], components: [{ type: ButtonComponent, selector: "button[lx-button]", inputs: ["size", "color", "mode", "pressed", "selected", "square", "circle", "disabled", "showSpinner"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
2998
3014
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: DragAndDropListItemComponent, decorators: [{
|
2999
3015
|
type: Component,
|
3000
3016
|
args: [{
|
@@ -3003,7 +3019,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
3003
3019
|
styleUrls: ['drag-and-drop-list-item.component.scss'],
|
3004
3020
|
changeDetection: ChangeDetectionStrategy.OnPush
|
3005
3021
|
}]
|
3006
|
-
}], propDecorators: { item: [{
|
3022
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { item: [{
|
3007
3023
|
type: Input
|
3008
3024
|
}], draggable: [{
|
3009
3025
|
type: Input
|
@@ -3011,27 +3027,186 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
3011
3027
|
type: Input
|
3012
3028
|
}], action: [{
|
3013
3029
|
type: Output
|
3014
|
-
}],
|
3015
|
-
type:
|
3016
|
-
|
3030
|
+
}], draggingDisabled: [{
|
3031
|
+
type: HostBinding,
|
3032
|
+
args: ['class.draggingDisabled']
|
3033
|
+
}], hasCustomTemplate: [{
|
3034
|
+
type: HostBinding,
|
3035
|
+
args: ['class.customTemplate']
|
3036
|
+
}], customTemplateRef: [{
|
3037
|
+
type: ContentChild,
|
3038
|
+
args: ['customTemplate']
|
3039
|
+
}] } });
|
3040
|
+
|
3041
|
+
/**
|
3042
|
+
* Used in the DragAndDropListComponent and KeyboardSortableListDirective
|
3043
|
+
*/
|
3044
|
+
const DRAG_AND_DROP_LIST_TRANSLATION_NAME = 'DragAndDropListComponent';
|
3045
|
+
|
3046
|
+
class KeyboardSortableItemDirective {
|
3047
|
+
constructor(draggableItem, overlayPositionBuilder, element, overlay) {
|
3048
|
+
this.draggableItem = draggableItem;
|
3049
|
+
this.overlayPositionBuilder = overlayPositionBuilder;
|
3050
|
+
this.element = element;
|
3051
|
+
this.overlay = overlay;
|
3052
|
+
this.isSortingByKeyboardChange = new EventEmitter();
|
3053
|
+
this.itemBeingSortedChange = new EventEmitter();
|
3054
|
+
this.sortItemsWithKeyboard = new EventEmitter();
|
3055
|
+
this.tooltipDirective = new TooltipDirective(this.overlayPositionBuilder, this.element, this.overlay);
|
3056
|
+
this.isBeingSorted = false;
|
3057
|
+
this.preventBlur = false;
|
3058
|
+
this.focusWithKeyboardReplaySubject$ = new ReplaySubject(1);
|
3059
|
+
/**
|
3060
|
+
* Using a ReplaySubject here so that the KeyboardSortableListDirective will also know
|
3061
|
+
* about a focusWithKeyboard event when its copy of the KeyboardSortableItemDirective ContentChildren
|
3062
|
+
* was just initialised after the event fired.
|
3063
|
+
*/
|
3064
|
+
this.focusWithKeyboard = this.focusWithKeyboardReplaySubject$.asObservable();
|
3065
|
+
}
|
3066
|
+
get isSortable() {
|
3067
|
+
return !this.draggableItem.disabled;
|
3068
|
+
}
|
3069
|
+
ngOnChanges() {
|
3070
|
+
this.isBeingSorted = this.itemData === this.itemBeingSorted;
|
3071
|
+
if (this.isBeingSorted) {
|
3072
|
+
// focus always the pressed element
|
3073
|
+
this.element.nativeElement.focus();
|
3074
|
+
}
|
3075
|
+
}
|
3076
|
+
focusViaKeyboard() {
|
3077
|
+
this.focusWithKeyboardReplaySubject$.next(this);
|
3078
|
+
}
|
3079
|
+
enterSortingModeEnabledByKeyboard($event) {
|
3080
|
+
if ($event.target === this.element.nativeElement) {
|
3081
|
+
if ($event.code === 'Enter' || $event.code === 'Space') {
|
3082
|
+
$event.preventDefault();
|
3083
|
+
this.tooltipDirective.hide();
|
3084
|
+
this.itemBeingSortedChange.emit(!this.isSortingByKeyboard ? this.itemData : undefined);
|
3085
|
+
this.isSortingByKeyboardChange.emit(!this.isSortingByKeyboard);
|
3086
|
+
}
|
3087
|
+
}
|
3088
|
+
}
|
3089
|
+
leaveSortingModeEnabledByKeyboard($event) {
|
3090
|
+
if ($event.target === this.element.nativeElement) {
|
3091
|
+
this.tooltipDirective.hide();
|
3092
|
+
if (!this.preventBlur) {
|
3093
|
+
this.isSortingByKeyboardChange.emit(false);
|
3094
|
+
this.itemBeingSortedChange.emit(undefined);
|
3095
|
+
}
|
3096
|
+
}
|
3097
|
+
}
|
3098
|
+
sort($event) {
|
3099
|
+
if ($event.target === this.element.nativeElement) {
|
3100
|
+
this.tooltipDirective.hide();
|
3101
|
+
if (this.isSortingByKeyboard) {
|
3102
|
+
$event.preventDefault();
|
3103
|
+
const previousIndex = this.allItemsData.findIndex((item) => item === this.itemData);
|
3104
|
+
const currentIndex = $event.code === 'ArrowUp' ? previousIndex - 1 : previousIndex + 1;
|
3105
|
+
if (currentIndex >= 0 && currentIndex <= this.allItemsData.length - 1) {
|
3106
|
+
this.sortItemsWithKeyboard.emit({ previousIndex, currentIndex });
|
3107
|
+
// When triggering a keyboard event, the DOM would "removeChildren" on the HTML element
|
3108
|
+
// which specially for "ArrowUp" events would trigger a "blur" event since the element
|
3109
|
+
// has been moved aboved the DOM tree and loses the focus state.
|
3110
|
+
this.preventBlur = true;
|
3111
|
+
setTimeout(() => (this.preventBlur = false), 0);
|
3112
|
+
}
|
3113
|
+
}
|
3114
|
+
}
|
3115
|
+
}
|
3116
|
+
}
|
3117
|
+
KeyboardSortableItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: KeyboardSortableItemDirective, deps: [{ token: i1$4.CdkDrag }, { token: i1.OverlayPositionBuilder }, { token: i0.ElementRef }, { token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
|
3118
|
+
KeyboardSortableItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.4", type: KeyboardSortableItemDirective, selector: "[lxKeyboardSortableItem]", inputs: { allItemsData: ["lxKeyboardSortableItem", "allItemsData"], itemData: ["lxKeyboardItemData", "itemData"], isSortingByKeyboard: "isSortingByKeyboard", itemBeingSorted: ["lxKeyboardItemBeingSorted", "itemBeingSorted"] }, outputs: { isSortingByKeyboardChange: "isSortingByKeyboardChange", itemBeingSortedChange: "lxKeyboardItemBeingSortedChange", sortItemsWithKeyboard: "sortItemsWithKeyboard", focusWithKeyboard: "focusWithKeyboard" }, host: { listeners: { "keyup.tab": "focusViaKeyboard()", "keydown.enter": "enterSortingModeEnabledByKeyboard($event)", "keydown.space": "enterSortingModeEnabledByKeyboard($event)", "blur": "leaveSortingModeEnabledByKeyboard($event)", "keydown.esc": "leaveSortingModeEnabledByKeyboard($event)", "keydown.arrowUp": "sort($event)", "keydown.arrowDown": "sort($event)" }, properties: { "attr.lxTooltip": "this.tooltipDirective", "class.isBeingSortedByKeyboard": "this.isBeingSorted" } }, usesOnChanges: true, ngImport: i0 });
|
3119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: KeyboardSortableItemDirective, decorators: [{
|
3120
|
+
type: Directive,
|
3121
|
+
args: [{
|
3122
|
+
selector: '[lxKeyboardSortableItem]'
|
3123
|
+
}]
|
3124
|
+
}], ctorParameters: function () { return [{ type: i1$4.CdkDrag }, { type: i1.OverlayPositionBuilder }, { type: i0.ElementRef }, { type: i1.Overlay }]; }, propDecorators: { allItemsData: [{
|
3125
|
+
type: Input,
|
3126
|
+
args: ['lxKeyboardSortableItem']
|
3127
|
+
}], itemData: [{
|
3128
|
+
type: Input,
|
3129
|
+
args: ['lxKeyboardItemData']
|
3130
|
+
}], isSortingByKeyboard: [{
|
3131
|
+
type: Input
|
3132
|
+
}], itemBeingSorted: [{
|
3133
|
+
type: Input,
|
3134
|
+
args: ['lxKeyboardItemBeingSorted']
|
3135
|
+
}], isSortingByKeyboardChange: [{
|
3017
3136
|
type: Output
|
3018
|
-
}],
|
3137
|
+
}], itemBeingSortedChange: [{
|
3138
|
+
type: Output,
|
3139
|
+
args: ['lxKeyboardItemBeingSortedChange']
|
3140
|
+
}], sortItemsWithKeyboard: [{
|
3019
3141
|
type: Output
|
3020
|
-
}],
|
3142
|
+
}], focusWithKeyboard: [{
|
3021
3143
|
type: Output
|
3022
|
-
}],
|
3144
|
+
}], tooltipDirective: [{
|
3023
3145
|
type: HostBinding,
|
3024
|
-
args: ['
|
3146
|
+
args: ['attr.lxTooltip']
|
3147
|
+
}], isBeingSorted: [{
|
3148
|
+
type: HostBinding,
|
3149
|
+
args: ['class.isBeingSortedByKeyboard']
|
3150
|
+
}], focusViaKeyboard: [{
|
3151
|
+
type: HostListener,
|
3152
|
+
args: ['keyup.tab']
|
3153
|
+
}], enterSortingModeEnabledByKeyboard: [{
|
3154
|
+
type: HostListener,
|
3155
|
+
args: ['keydown.enter', ['$event']]
|
3156
|
+
}, {
|
3157
|
+
type: HostListener,
|
3158
|
+
args: ['keydown.space', ['$event']]
|
3159
|
+
}], leaveSortingModeEnabledByKeyboard: [{
|
3160
|
+
type: HostListener,
|
3161
|
+
args: ['blur', ['$event']]
|
3162
|
+
}, {
|
3163
|
+
type: HostListener,
|
3164
|
+
args: ['keydown.esc', ['$event']]
|
3165
|
+
}], sort: [{
|
3166
|
+
type: HostListener,
|
3167
|
+
args: ['keydown.arrowUp', ['$event']]
|
3168
|
+
}, {
|
3169
|
+
type: HostListener,
|
3170
|
+
args: ['keydown.arrowDown', ['$event']]
|
3171
|
+
}] } });
|
3172
|
+
|
3173
|
+
class KeyboardSortableListDirective {
|
3174
|
+
constructor(translateService) {
|
3175
|
+
this.translateService = translateService;
|
3176
|
+
}
|
3177
|
+
ngAfterViewInit() {
|
3178
|
+
this.setupControlsTooltipToBeShownOnFirstFocusedItem();
|
3179
|
+
}
|
3180
|
+
setupControlsTooltipToBeShownOnFirstFocusedItem() {
|
3181
|
+
const firstFocusEventOnADraggableItem$ = this.keyboardSortableItems$.pipe(filter((items) => items && items.length > 0), switchMap((items) => merge(...items.filter((item) => item.isSortable).map((item) => item.focusWithKeyboard))), take(1));
|
3182
|
+
firstFocusEventOnADraggableItem$.subscribe((item) => {
|
3183
|
+
item.tooltipDirective.content = this.translateService.instant(`${DRAG_AND_DROP_LIST_TRANSLATION_NAME}.helpTooltip`);
|
3184
|
+
item.tooltipDirective.show();
|
3185
|
+
});
|
3186
|
+
}
|
3187
|
+
}
|
3188
|
+
KeyboardSortableListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: KeyboardSortableListDirective, deps: [{ token: i1$2.TranslateService }], target: i0.ɵɵFactoryTarget.Directive });
|
3189
|
+
KeyboardSortableListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.4", type: KeyboardSortableListDirective, selector: "[lxKeyboardSortableList]", inputs: { keyboardSortableItems: "keyboardSortableItems" }, ngImport: i0 });
|
3190
|
+
__decorate([
|
3191
|
+
Observe('keyboardSortableItems')
|
3192
|
+
], KeyboardSortableListDirective.prototype, "keyboardSortableItems$", void 0);
|
3193
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: KeyboardSortableListDirective, decorators: [{
|
3194
|
+
type: Directive,
|
3195
|
+
args: [{
|
3196
|
+
selector: '[lxKeyboardSortableList]'
|
3197
|
+
}]
|
3198
|
+
}], ctorParameters: function () { return [{ type: i1$2.TranslateService }]; }, propDecorators: { keyboardSortableItems$: [], keyboardSortableItems: [{
|
3199
|
+
type: Input
|
3025
3200
|
}] } });
|
3026
3201
|
|
3027
3202
|
class DragAndDropListComponent {
|
3028
3203
|
constructor() {
|
3029
|
-
this.NAME =
|
3204
|
+
this.NAME = DRAG_AND_DROP_LIST_TRANSLATION_NAME;
|
3030
3205
|
/**
|
3031
3206
|
* Override the global label font weight of 700
|
3032
3207
|
*/
|
3033
3208
|
this.labelFontWeight = 700;
|
3034
|
-
this.color = '
|
3209
|
+
this.color = 'light';
|
3035
3210
|
this.fontSize = 'normal';
|
3036
3211
|
/**
|
3037
3212
|
* Use the moveToIndex Output in favor of moveItem,
|
@@ -3039,15 +3214,19 @@ class DragAndDropListComponent {
|
|
3039
3214
|
*/
|
3040
3215
|
this.moveToIndex = new EventEmitter();
|
3041
3216
|
this.moveItem = new EventEmitter();
|
3042
|
-
|
3043
|
-
|
3044
|
-
|
3045
|
-
|
3046
|
-
|
3047
|
-
|
3217
|
+
/**
|
3218
|
+
* TODO: extract state about keyboard sorting into KeyboardSortableListDirective
|
3219
|
+
*/
|
3220
|
+
this.isSortingByKeyboard = false;
|
3221
|
+
this.keyboardItemBeingSorted = undefined;
|
3222
|
+
this.allItemsData = [];
|
3048
3223
|
}
|
3049
3224
|
ngAfterContentInit() {
|
3050
3225
|
this.items$ = this._items.changes.pipe(startWith(this._items), map((items) => items.toArray()));
|
3226
|
+
this.allItemsData$ = this.items$.pipe(map((itemComponents) => itemComponents.map((itemComponent) => itemComponent.item)));
|
3227
|
+
}
|
3228
|
+
ngAfterViewInit() {
|
3229
|
+
this.keyboardSortableItems$ = this._keyboardSortableItems.changes.pipe(startWith(this._keyboardSortableItems), map((items) => items.toArray()));
|
3051
3230
|
}
|
3052
3231
|
emitContentChildAction(action) {
|
3053
3232
|
var _a;
|
@@ -3063,21 +3242,24 @@ class DragAndDropListComponent {
|
|
3063
3242
|
* You're supposed to update the data in the parent and pass the new items as input.
|
3064
3243
|
*/
|
3065
3244
|
drop(event) {
|
3066
|
-
|
3067
|
-
|
3068
|
-
|
3245
|
+
this.sortItems(event.container.data, event.item.data, event.previousIndex, event.currentIndex);
|
3246
|
+
}
|
3247
|
+
dropToIndexAfterArrowKey(item, previousIndex, currentIndex) {
|
3248
|
+
if (this.isSortingByKeyboard) {
|
3249
|
+
this.sortItems(this._items, item, previousIndex, currentIndex);
|
3250
|
+
}
|
3069
3251
|
}
|
3070
|
-
|
3071
|
-
moveItemInArray(
|
3072
|
-
this.moveToIndex.emit(currentIndex);
|
3252
|
+
sortItems(items, item, previousIndex, currentIndex) {
|
3253
|
+
moveItemInArray(items, previousIndex, currentIndex);
|
3254
|
+
this.moveToIndex.emit({ index: currentIndex, previous: previousIndex });
|
3073
3255
|
this.moveItem.emit({ item, index: currentIndex });
|
3074
3256
|
}
|
3075
|
-
|
3076
|
-
return item
|
3257
|
+
trackByItem(_index, item) {
|
3258
|
+
return item.item;
|
3077
3259
|
}
|
3078
3260
|
}
|
3079
3261
|
DragAndDropListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: DragAndDropListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
3080
|
-
DragAndDropListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: DragAndDropListComponent, selector: "lx-drag-and-drop-list", inputs: { label: "label", labelFontWeight: "labelFontWeight",
|
3262
|
+
DragAndDropListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: DragAndDropListComponent, selector: "lx-drag-and-drop-list", inputs: { label: "label", labelFontWeight: "labelFontWeight", color: "color", fontSize: "fontSize" }, outputs: { moveToIndex: "moveToIndex", moveItem: "moveItem" }, host: { properties: { "attr.color": "this.color", "attr.fontSize": "this.fontSize" } }, queries: [{ propertyName: "_items", predicate: DragAndDropListItemComponent }], viewQueries: [{ propertyName: "_keyboardSortableItems", predicate: KeyboardSortableItemDirective, descendants: true }], ngImport: i0, template: "<label *ngIf=\"label\" [style.font-weight]=\"labelFontWeight\">{{ label }}</label>\n<p class=\"sr-only\">{{ NAME + '.helpTooltip' | translate }}</p>\n<ul\n cdkDropList\n class=\"list\"\n role=\"listbox\"\n lxKeyboardSortableList\n [keyboardSortableItems]=\"keyboardSortableItems$ | async\"\n [cdkDropListData]=\"items$ | async\"\n (cdkDropListDropped)=\"drop($event)\"\n>\n <li\n *ngFor=\"let itemComponent of items$ | async; trackBy: trackByItem\"\n #listItemParent\n class=\"item\"\n cdkDrag\n cdkDragLockAxis=\"y\"\n [cdkDragData]=\"itemComponent.item\"\n [cdkDragDisabled]=\"!itemComponent.draggable\"\n [class.dark]=\"color === 'dark'\"\n [class.big]=\"fontSize === 'big'\"\n [tabIndex]=\"itemComponent.draggable === false ? -1 : 0\"\n [lxKeyboardSortableItem]=\"allItemsData$ | async\"\n [lxKeyboardItemData]=\"itemComponent.item\"\n [(isSortingByKeyboard)]=\"isSortingByKeyboard\"\n [(lxKeyboardItemBeingSorted)]=\"keyboardItemBeingSorted\"\n (sortItemsWithKeyboard)=\"dropToIndexAfterArrowKey(itemComponent.item, $event.previousIndex, $event.currentIndex)\"\n >\n <lx-drag-and-drop-list-item\n class=\"dragAndDropItem\"\n [item]=\"itemComponent.item\"\n [draggable]=\"itemComponent.draggable\"\n [actions]=\"itemComponent.actions\"\n (action)=\"emitContentChildAction($event)\"\n >\n <ng-template *ngIf=\"itemComponent.customTemplateRef\" #customTemplate>\n <ng-container *ngTemplateOutlet=\"itemComponent.customTemplateRef\"></ng-container>\n </ng-template>\n </lx-drag-and-drop-list-item>\n </li>\n</ul>\n", styles: ["@-webkit-keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}:host{display:block}.list{list-style-type:none;width:100%;display:block;padding:0;color:#526179}.item.cdk-drag-disabled{background:#eaedf1;cursor:default}.item{position:relative;cursor:move;border:1px solid #99a5bb;margin-bottom:4px;border-radius:3px}.item:focus{outline:1px auto #1666ee}.cdk-drag-preview{box-sizing:border-box;border-radius:3px;list-style:none;border:1px solid #99a5bb!important;box-shadow:0 3px 4px hsla(0,0%,45%,.3)}.cdk-drag-placeholder{opacity:.5}.cdk-drag-placeholder i{opacity:0}.cdk-drag-animating,.list.cdk-drop-list-dragging .item:not(.cdk-drag-placeholder){transition:transform .18s;transition-delay:0s;transition-timing-function:ease}:host[color=dark] lx-drag-and-drop-list-item{background-color:#f0f2f5;color:#526179;border-radius:3px}:host[color=dark] .item,:host[color=dark] .list{border:0}:host[color=dark] .item.cdk-drag-disabled lx-drag-and-drop-list-item{background:#fff;color:#99a5bb;border:1px solid #99a5bb}:host[fontSize=big] .item{text-transform:uppercase;font-weight:700}.cdk-drag-preview.dark{border:0!important}.cdk-drag-preview.dark lx-drag-and-drop-list-item{background-color:#f0f2f5;color:#526179;border-radius:3px}.cdk-drag-preview.big{text-transform:uppercase;font-weight:700}.isBeingSortedByKeyboard{box-shadow:0 6px 24px 0 #b2bccc;z-index:1}"], components: [{ type: DragAndDropListItemComponent, selector: "lx-drag-and-drop-list-item", inputs: ["item", "draggable", "actions"], outputs: ["action"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "id", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListAutoScrollDisabled", "cdkDropListOrientation", "cdkDropListLockAxis", "cdkDropListData", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: KeyboardSortableListDirective, selector: "[lxKeyboardSortableList]", inputs: ["keyboardSortableItems"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragDisabled", "cdkDragStartDelay", "cdkDragLockAxis", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragBoundary", "cdkDragRootElement", "cdkDragPreviewContainer", "cdkDragData", "cdkDragFreeDragPosition"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: KeyboardSortableItemDirective, selector: "[lxKeyboardSortableItem]", inputs: ["lxKeyboardSortableItem", "lxKeyboardItemData", "isSortingByKeyboard", "lxKeyboardItemBeingSorted"], outputs: ["isSortingByKeyboardChange", "lxKeyboardItemBeingSortedChange", "sortItemsWithKeyboard", "focusWithKeyboard"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "translate": i1$2.TranslatePipe, "async": i2.AsyncPipe } });
|
3081
3263
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: DragAndDropListComponent, decorators: [{
|
3082
3264
|
type: Component,
|
3083
3265
|
args: [{
|
@@ -3089,10 +3271,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
3089
3271
|
type: Input
|
3090
3272
|
}], labelFontWeight: [{
|
3091
3273
|
type: Input
|
3092
|
-
}], items: [{
|
3093
|
-
type: Input
|
3094
|
-
}], itemIdProperty: [{
|
3095
|
-
type: Input
|
3096
3274
|
}], color: [{
|
3097
3275
|
type: Input
|
3098
3276
|
}, {
|
@@ -3110,11 +3288,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
3110
3288
|
}], _items: [{
|
3111
3289
|
type: ContentChildren,
|
3112
3290
|
args: [DragAndDropListItemComponent]
|
3113
|
-
}],
|
3114
|
-
type:
|
3115
|
-
args: [
|
3291
|
+
}], _keyboardSortableItems: [{
|
3292
|
+
type: ViewChildren,
|
3293
|
+
args: [KeyboardSortableItemDirective]
|
3116
3294
|
}] } });
|
3117
3295
|
|
3296
|
+
class LxDragAndDropListModule {
|
3297
|
+
}
|
3298
|
+
LxDragAndDropListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: LxDragAndDropListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
3299
|
+
LxDragAndDropListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: LxDragAndDropListModule, declarations: [KeyboardSortableItemDirective, KeyboardSortableListDirective, DragAndDropListComponent, DragAndDropListItemComponent], imports: [CommonModule, DragDropModule, LxCoreUiModule, i1$2.TranslateModule], exports: [DragAndDropListComponent, DragAndDropListItemComponent] });
|
3300
|
+
LxDragAndDropListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: LxDragAndDropListModule, imports: [[CommonModule, DragDropModule, LxCoreUiModule, TranslateModule.forChild()]] });
|
3301
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: LxDragAndDropListModule, decorators: [{
|
3302
|
+
type: NgModule,
|
3303
|
+
args: [{
|
3304
|
+
declarations: [KeyboardSortableItemDirective, KeyboardSortableListDirective, DragAndDropListComponent, DragAndDropListItemComponent],
|
3305
|
+
imports: [CommonModule, DragDropModule, LxCoreUiModule, TranslateModule.forChild()],
|
3306
|
+
exports: [DragAndDropListComponent, DragAndDropListItemComponent]
|
3307
|
+
}]
|
3308
|
+
}] });
|
3309
|
+
|
3118
3310
|
class ErrorMessageComponent {
|
3119
3311
|
constructor(cd) {
|
3120
3312
|
this.cd = cd;
|
@@ -4466,7 +4658,7 @@ class PickerComponent {
|
|
4466
4658
|
propagateChange(_value) { }
|
4467
4659
|
onTouched() { }
|
4468
4660
|
}
|
4469
|
-
PickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PickerComponent, deps: [{ token: i1$
|
4661
|
+
PickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PickerComponent, deps: [{ token: i1$5.Directionality }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
4470
4662
|
PickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: PickerComponent, selector: "lx-picker", inputs: { listBoxAriaLabel: "listBoxAriaLabel", listBoxAriaLabelledBy: "listBoxAriaLabelledBy", openDirection: "openDirection" }, host: { listeners: { "document:keydown": "manageKeyboardEvents($event)" } }, providers: [
|
4471
4663
|
{
|
4472
4664
|
provide: NG_VALUE_ACCESSOR,
|
@@ -4489,7 +4681,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
4489
4681
|
],
|
4490
4682
|
changeDetection: ChangeDetectionStrategy.OnPush
|
4491
4683
|
}]
|
4492
|
-
}], ctorParameters: function () { return [{ type: i1$
|
4684
|
+
}], ctorParameters: function () { return [{ type: i1$5.Directionality }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { listBoxAriaLabel: [{
|
4493
4685
|
type: Input
|
4494
4686
|
}], listBoxAriaLabelledBy: [{
|
4495
4687
|
type: Input
|
@@ -5273,8 +5465,6 @@ LxFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
5273
5465
|
CurrencyInputComponent,
|
5274
5466
|
CurrencySymbolComponent,
|
5275
5467
|
DateInputComponent,
|
5276
|
-
DragAndDropListComponent,
|
5277
|
-
DragAndDropListItemComponent,
|
5278
5468
|
FilterSelectionPipe,
|
5279
5469
|
FilterTermPipe,
|
5280
5470
|
FormErrorComponent,
|
@@ -5307,18 +5497,16 @@ LxFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
5307
5497
|
FormErrorDirective,
|
5308
5498
|
ErrorMessageComponent,
|
5309
5499
|
FormSubmitDirective], imports: [CommonModule,
|
5310
|
-
DragDropModule,
|
5311
5500
|
FormsModule,
|
5312
5501
|
ReactiveFormsModule, i1$2.TranslateModule, DatepickerModule,
|
5313
5502
|
InfiniteScrollModule,
|
5314
5503
|
OverlayModule,
|
5315
|
-
LxCoreUiModule
|
5504
|
+
LxCoreUiModule,
|
5505
|
+
LxDragAndDropListModule], exports: [BasicDropdownComponent,
|
5316
5506
|
BasicDropdownItemComponent,
|
5317
5507
|
CurrencyInputComponent,
|
5318
5508
|
CurrencySymbolComponent,
|
5319
5509
|
DateInputComponent,
|
5320
|
-
DragAndDropListComponent,
|
5321
|
-
DragAndDropListItemComponent,
|
5322
5510
|
FilterSelectionPipe,
|
5323
5511
|
FilterTermPipe,
|
5324
5512
|
FormErrorComponent,
|
@@ -5349,18 +5537,19 @@ LxFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
5349
5537
|
FormatNumberPipe,
|
5350
5538
|
FormErrorDirective,
|
5351
5539
|
FormSubmitDirective,
|
5352
|
-
ErrorMessageComponent
|
5540
|
+
ErrorMessageComponent,
|
5541
|
+
LxDragAndDropListModule] });
|
5353
5542
|
LxFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: LxFormsModule, imports: [[
|
5354
5543
|
CommonModule,
|
5355
|
-
DragDropModule,
|
5356
5544
|
FormsModule,
|
5357
5545
|
ReactiveFormsModule,
|
5358
5546
|
TranslateModule.forChild(),
|
5359
5547
|
DatepickerModule,
|
5360
5548
|
InfiniteScrollModule,
|
5361
5549
|
OverlayModule,
|
5362
|
-
LxCoreUiModule
|
5363
|
-
|
5550
|
+
LxCoreUiModule,
|
5551
|
+
LxDragAndDropListModule
|
5552
|
+
], LxDragAndDropListModule] });
|
5364
5553
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: LxFormsModule, decorators: [{
|
5365
5554
|
type: NgModule,
|
5366
5555
|
args: [{
|
@@ -5370,8 +5559,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
5370
5559
|
CurrencyInputComponent,
|
5371
5560
|
CurrencySymbolComponent,
|
5372
5561
|
DateInputComponent,
|
5373
|
-
DragAndDropListComponent,
|
5374
|
-
DragAndDropListItemComponent,
|
5375
5562
|
FilterSelectionPipe,
|
5376
5563
|
FilterTermPipe,
|
5377
5564
|
FormErrorComponent,
|
@@ -5407,14 +5594,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
5407
5594
|
],
|
5408
5595
|
imports: [
|
5409
5596
|
CommonModule,
|
5410
|
-
DragDropModule,
|
5411
5597
|
FormsModule,
|
5412
5598
|
ReactiveFormsModule,
|
5413
5599
|
TranslateModule.forChild(),
|
5414
5600
|
DatepickerModule,
|
5415
5601
|
InfiniteScrollModule,
|
5416
5602
|
OverlayModule,
|
5417
|
-
LxCoreUiModule
|
5603
|
+
LxCoreUiModule,
|
5604
|
+
LxDragAndDropListModule
|
5418
5605
|
],
|
5419
5606
|
exports: [
|
5420
5607
|
BasicDropdownComponent,
|
@@ -5422,8 +5609,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
5422
5609
|
CurrencyInputComponent,
|
5423
5610
|
CurrencySymbolComponent,
|
5424
5611
|
DateInputComponent,
|
5425
|
-
DragAndDropListComponent,
|
5426
|
-
DragAndDropListItemComponent,
|
5427
5612
|
FilterSelectionPipe,
|
5428
5613
|
FilterTermPipe,
|
5429
5614
|
FormErrorComponent,
|
@@ -5454,7 +5639,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
5454
5639
|
FormatNumberPipe,
|
5455
5640
|
FormErrorDirective,
|
5456
5641
|
FormSubmitDirective,
|
5457
|
-
ErrorMessageComponent
|
5642
|
+
ErrorMessageComponent,
|
5643
|
+
LxDragAndDropListModule
|
5458
5644
|
]
|
5459
5645
|
}]
|
5460
5646
|
}] });
|
@@ -5676,7 +5862,7 @@ class ModalComponent {
|
|
5676
5862
|
}
|
5677
5863
|
}
|
5678
5864
|
ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: ModalComponent, deps: [{ token: i1.Overlay }, { token: i0.Renderer2 }, { token: MODAL_CLOSE, optional: true }, { token: i2$1.ConfigurableFocusTrapFactory }], target: i0.ɵɵFactoryTarget.Component });
|
5679
|
-
ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: ModalComponent, selector: "lx-modal", inputs: { open: "open", showCloseButton: "showCloseButton", showBackButton: "showBackButton", verticalScroll: "verticalScroll", size: "size", isFocusTrap: "isFocusTrap", canModalBeClosed: "canModalBeClosed" }, outputs: { close: "close", back: "back" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, queries: [{ propertyName: "header", first: true, predicate: ModalHeaderComponent, descendants: true }, { propertyName: "footer", first: true, predicate: ModalFooterComponent, descendants: true }, { propertyName: "explicitContent", first: true, predicate: ModalContentDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "cdkPortal", first: true, predicate: CdkPortal, descendants: true, static: true }, { propertyName: "implicitContent", first: true, predicate: ["implicitContent"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template cdkPortal>\n <div\n *ngIf=\"open\"\n role=\"dialog\"\n class=\"lxmodal\"\n [class.lxmodal--fullscreen]=\"size === 'fullscreen'\"\n [class.lxmodal--dialog]=\"size === 'dialog'\"\n [class.lxmodal--dialog-large]=\"size === 'dialog-large'\"\n [class.lxmodal--withFooter]=\"!!footer\"\n [class.lxmodal--verticalScroll]=\"verticalScroll\"\n @modal\n >\n <div\n *ngIf=\"size === 'fullscreen' && showBackButton\"\n (click)=\"emitBack()\"\n (keyup.enter)=\"emitBack()\"\n tabindex=\"0\"\n role=\"button\"\n class=\"fal fa-long-arrow-left\"\n ></div>\n <button\n *ngIf=\"showCloseButton\"\n (click)=\"closeModal()\"\n [attr.aria-label]=\"NAME + '.close' | translate\"\n class=\"fal fa-times closeButton\"\n ></button>\n <ng-content *ngIf=\"header\" select=\"lx-modal-header\"></ng-content>\n <div class=\"modalContentContainer\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <ng-content *ngIf=\"footer\" select=\"lx-modal-footer\"></ng-content>\n </div>\n</ng-template>\n<ng-template #implicitContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: ["@-webkit-keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.lxmodal{background:#fff;width:100%}.lxmodal--withFooter.lxmodal--fullscreen .modalContentContainer{bottom:70px;overflow:hidden}.lxmodal--verticalScroll .modalContentContainer{overflow-y:auto}.lxmodal--fullscreen{height:100%;display:flex;flex-direction:column}.lxmodal--fullscreen .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#b2bccc;width:48px;height:48px;font-size:24px;line-height:48px;right:36px;top:16px;z-index:1}.lxmodal--fullscreen .closeButton:before{cursor:pointer}.lxmodal--fullscreen .closeButton:focus,.lxmodal--fullscreen .closeButton:hover{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .closeButton:focus{outline:0}.lxmodal--fullscreen .fa-long-arrow-left{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#b2bccc;width:48px;height:48px;font-size:24px;line-height:48px;left:36px;top:16px}.lxmodal--fullscreen .fa-long-arrow-left:before{cursor:pointer}.lxmodal--fullscreen .fa-long-arrow-left:focus,.lxmodal--fullscreen .fa-long-arrow-left:hover{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .fa-long-arrow-left:focus{outline:0}.lxmodal--dialog,.lxmodal--dialog-large{display:block;position:relative;border-radius:6px;box-shadow:0 8px 20px 0 rgba(0,0,0,.24)}.lxmodal--dialog-large .modalContentContainer,.lxmodal--dialog .modalContentContainer{padding:16px;position:relative}.lxmodal--dialog-large .closeButton,.lxmodal--dialog .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#8594ad;height:32px;width:32px;font-size:16px;z-index:999;right:10px;top:10px}.lxmodal--dialog-large .closeButton:before,.lxmodal--dialog .closeButton:before{cursor:pointer}.lxmodal--dialog-large .closeButton:focus,.lxmodal--dialog-large .closeButton:hover,.lxmodal--dialog .closeButton:focus,.lxmodal--dialog .closeButton:hover{color:#526179;background-color:#eaedf1}.lxmodal--dialog-large .closeButton:focus,.lxmodal--dialog .closeButton:focus{outline:0}.lxmodal--dialog-large .modalContentContainer{height:calc(100% - 48px - 64px)}.modalContentContainer{flex:1}"], directives: [{ type: i3$
|
5865
|
+
ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: ModalComponent, selector: "lx-modal", inputs: { open: "open", showCloseButton: "showCloseButton", showBackButton: "showBackButton", verticalScroll: "verticalScroll", size: "size", isFocusTrap: "isFocusTrap", canModalBeClosed: "canModalBeClosed" }, outputs: { close: "close", back: "back" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, queries: [{ propertyName: "header", first: true, predicate: ModalHeaderComponent, descendants: true }, { propertyName: "footer", first: true, predicate: ModalFooterComponent, descendants: true }, { propertyName: "explicitContent", first: true, predicate: ModalContentDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "cdkPortal", first: true, predicate: CdkPortal, descendants: true, static: true }, { propertyName: "implicitContent", first: true, predicate: ["implicitContent"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template cdkPortal>\n <div\n *ngIf=\"open\"\n role=\"dialog\"\n class=\"lxmodal\"\n [class.lxmodal--fullscreen]=\"size === 'fullscreen'\"\n [class.lxmodal--dialog]=\"size === 'dialog'\"\n [class.lxmodal--dialog-large]=\"size === 'dialog-large'\"\n [class.lxmodal--withFooter]=\"!!footer\"\n [class.lxmodal--verticalScroll]=\"verticalScroll\"\n @modal\n >\n <div\n *ngIf=\"size === 'fullscreen' && showBackButton\"\n (click)=\"emitBack()\"\n (keyup.enter)=\"emitBack()\"\n tabindex=\"0\"\n role=\"button\"\n class=\"fal fa-long-arrow-left\"\n ></div>\n <button\n *ngIf=\"showCloseButton\"\n (click)=\"closeModal()\"\n [attr.aria-label]=\"NAME + '.close' | translate\"\n class=\"fal fa-times closeButton\"\n ></button>\n <ng-content *ngIf=\"header\" select=\"lx-modal-header\"></ng-content>\n <div class=\"modalContentContainer\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <ng-content *ngIf=\"footer\" select=\"lx-modal-footer\"></ng-content>\n </div>\n</ng-template>\n<ng-template #implicitContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: ["@-webkit-keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.lxmodal{background:#fff;width:100%}.lxmodal--withFooter.lxmodal--fullscreen .modalContentContainer{bottom:70px;overflow:hidden}.lxmodal--verticalScroll .modalContentContainer{overflow-y:auto}.lxmodal--fullscreen{height:100%;display:flex;flex-direction:column}.lxmodal--fullscreen .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#b2bccc;width:48px;height:48px;font-size:24px;line-height:48px;right:36px;top:16px;z-index:1}.lxmodal--fullscreen .closeButton:before{cursor:pointer}.lxmodal--fullscreen .closeButton:focus,.lxmodal--fullscreen .closeButton:hover{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .closeButton:focus{outline:0}.lxmodal--fullscreen .fa-long-arrow-left{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#b2bccc;width:48px;height:48px;font-size:24px;line-height:48px;left:36px;top:16px}.lxmodal--fullscreen .fa-long-arrow-left:before{cursor:pointer}.lxmodal--fullscreen .fa-long-arrow-left:focus,.lxmodal--fullscreen .fa-long-arrow-left:hover{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .fa-long-arrow-left:focus{outline:0}.lxmodal--dialog,.lxmodal--dialog-large{display:block;position:relative;border-radius:6px;box-shadow:0 8px 20px 0 rgba(0,0,0,.24)}.lxmodal--dialog-large .modalContentContainer,.lxmodal--dialog .modalContentContainer{padding:16px;position:relative}.lxmodal--dialog-large .closeButton,.lxmodal--dialog .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#8594ad;height:32px;width:32px;font-size:16px;z-index:999;right:10px;top:10px}.lxmodal--dialog-large .closeButton:before,.lxmodal--dialog .closeButton:before{cursor:pointer}.lxmodal--dialog-large .closeButton:focus,.lxmodal--dialog-large .closeButton:hover,.lxmodal--dialog .closeButton:focus,.lxmodal--dialog .closeButton:hover{color:#526179;background-color:#eaedf1}.lxmodal--dialog-large .closeButton:focus,.lxmodal--dialog .closeButton:focus{outline:0}.lxmodal--dialog-large .modalContentContainer{height:calc(100% - 48px - 64px)}.modalContentContainer{flex:1}"], directives: [{ type: i3$2.CdkPortal, selector: "[cdkPortal]", exportAs: ["cdkPortal"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "translate": i1$2.TranslatePipe }, animations: [
|
5680
5866
|
trigger('modal', [
|
5681
5867
|
transition(':enter', [style({ opacity: 0 }), animate('0.15s', style({ opacity: 1 }))]),
|
5682
5868
|
transition(':leave', animate('0.15s', style({ opacity: 0 })))
|
@@ -5928,7 +6114,7 @@ class PopoverComponent {
|
|
5928
6114
|
}
|
5929
6115
|
}
|
5930
6116
|
PopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
5931
|
-
PopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: PopoverComponent, selector: "lx-popover", inputs: { trigger: "trigger", horizontalAlign: "horizontalAlign", verticalAlign: "verticalAlign", noMargin: "noMargin", allowOverflow: "allowOverflow", adaptMarginsForViewportAlignChange: "adaptMarginsForViewportAlignChange" }, outputs: { opened: "opened", closed: "closed" }, queries: [{ propertyName: "explicitContent", first: true, predicate: PopoverContentDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "satPopover", first: true, predicate: SatPopover, descendants: true, static: true }, { propertyName: "implicitContent", first: true, predicate: ["implicitContent"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<sat-popover\n [anchor]=\"trigger.anchor\"\n [horizontalAlign]=\"horizontalAlign\"\n [verticalAlign]=\"verticalAlign\"\n [restoreFocus]=\"false\"\n [lockAlignment]=\"true\"\n [autoFocus]=\"false\"\n openTransition=\"0ms\"\n closeTransition=\"0ms\"\n (opened)=\"onOpen()\"\n (afterOpen)=\"onAfterOpen()\"\n (closed)=\"onClose()\"\n>\n <div\n class=\"popoverContainer\"\n [ngClass]=\"marginClasses\"\n [class.overflowHidden]=\"!allowOverflow\"\n (mouseenter)=\"trigger.showPopover(true)\"\n (mouseleave)=\"trigger.closePopover(true)\"\n >\n <ng-container *ngIf=\"isOpen\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n </div>\n</sat-popover>\n<ng-template #implicitContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: ["@-webkit-keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.popoverContainer{position:relative;box-shadow:0 8px 12px 2px rgba(0,0,0,.15);max-width:600px;max-height:80vh;border-radius:3px;background-color:#fff;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;-webkit-animation:subtleScaleUpKeyFrames .2s ease;animation:subtleScaleUpKeyFrames .2s ease}.popoverContainer.overflowHidden{overflow:hidden}.right{margin-left:18px}.left{margin-right:18px}.bottom{margin-top:18px}.top{margin-bottom:18px}"], components: [{ type: i1$
|
6117
|
+
PopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: PopoverComponent, selector: "lx-popover", inputs: { trigger: "trigger", horizontalAlign: "horizontalAlign", verticalAlign: "verticalAlign", noMargin: "noMargin", allowOverflow: "allowOverflow", adaptMarginsForViewportAlignChange: "adaptMarginsForViewportAlignChange" }, outputs: { opened: "opened", closed: "closed" }, queries: [{ propertyName: "explicitContent", first: true, predicate: PopoverContentDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "satPopover", first: true, predicate: SatPopover, descendants: true, static: true }, { propertyName: "implicitContent", first: true, predicate: ["implicitContent"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<sat-popover\n [anchor]=\"trigger.anchor\"\n [horizontalAlign]=\"horizontalAlign\"\n [verticalAlign]=\"verticalAlign\"\n [restoreFocus]=\"false\"\n [lockAlignment]=\"true\"\n [autoFocus]=\"false\"\n openTransition=\"0ms\"\n closeTransition=\"0ms\"\n (opened)=\"onOpen()\"\n (afterOpen)=\"onAfterOpen()\"\n (closed)=\"onClose()\"\n>\n <div\n class=\"popoverContainer\"\n [ngClass]=\"marginClasses\"\n [class.overflowHidden]=\"!allowOverflow\"\n (mouseenter)=\"trigger.showPopover(true)\"\n (mouseleave)=\"trigger.closePopover(true)\"\n >\n <ng-container *ngIf=\"isOpen\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n </div>\n</sat-popover>\n<ng-template #implicitContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: ["@-webkit-keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.popoverContainer{position:relative;box-shadow:0 8px 12px 2px rgba(0,0,0,.15);max-width:600px;max-height:80vh;border-radius:3px;background-color:#fff;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;-webkit-animation:subtleScaleUpKeyFrames .2s ease;animation:subtleScaleUpKeyFrames .2s ease}.popoverContainer.overflowHidden{overflow:hidden}.right{margin-left:18px}.left{margin-right:18px}.bottom{margin-top:18px}.top{margin-bottom:18px}"], components: [{ type: i1$6.SatPopover, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
5932
6118
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PopoverComponent, decorators: [{
|
5933
6119
|
type: Component,
|
5934
6120
|
args: [{
|
@@ -5989,7 +6175,7 @@ class PopoverClickDirective {
|
|
5989
6175
|
this.onMouseLeave.next();
|
5990
6176
|
}
|
5991
6177
|
}
|
5992
|
-
PopoverClickDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PopoverClickDirective, deps: [{ token: i1$
|
6178
|
+
PopoverClickDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PopoverClickDirective, deps: [{ token: i1$6.SatPopoverAnchor }], target: i0.ɵɵFactoryTarget.Directive });
|
5993
6179
|
PopoverClickDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.4", type: PopoverClickDirective, selector: "[lxPopoverClick]", inputs: { lxPopoverPinned: "lxPopoverPinned" }, host: { listeners: { "mouseleave": "closePopover()" } }, exportAs: ["clickAnchor"], ngImport: i0 });
|
5994
6180
|
__decorate([
|
5995
6181
|
Observe('lxPopoverPinned')
|
@@ -6000,7 +6186,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
6000
6186
|
exportAs: 'clickAnchor',
|
6001
6187
|
selector: '[lxPopoverClick]'
|
6002
6188
|
}]
|
6003
|
-
}], ctorParameters: function () { return [{ type: i1$
|
6189
|
+
}], ctorParameters: function () { return [{ type: i1$6.SatPopoverAnchor }]; }, propDecorators: { lxPopoverPinned: [{
|
6004
6190
|
type: Input
|
6005
6191
|
}], pinned$: [], closePopover: [{
|
6006
6192
|
type: HostListener,
|
@@ -6068,7 +6254,7 @@ class PopoverHoverDirective {
|
|
6068
6254
|
this.onMouseLeave.next({ skipDelay });
|
6069
6255
|
}
|
6070
6256
|
}
|
6071
|
-
PopoverHoverDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PopoverHoverDirective, deps: [{ token: i1$
|
6257
|
+
PopoverHoverDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PopoverHoverDirective, deps: [{ token: i1$6.SatPopoverAnchor }], target: i0.ɵɵFactoryTarget.Directive });
|
6072
6258
|
PopoverHoverDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.4", type: PopoverHoverDirective, selector: "[lxPopoverHover]", inputs: { lxPopoverHover: "lxPopoverHover", skipCloseDelay: "skipCloseDelay" }, host: { listeners: { "mouseenter": "showPopover()", "mouseleave": "closePopover()" } }, exportAs: ["hoverAnchor"], ngImport: i0 });
|
6073
6259
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: PopoverHoverDirective, decorators: [{
|
6074
6260
|
type: Directive,
|
@@ -6076,7 +6262,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
6076
6262
|
exportAs: 'hoverAnchor',
|
6077
6263
|
selector: '[lxPopoverHover]'
|
6078
6264
|
}]
|
6079
|
-
}], ctorParameters: function () { return [{ type: i1$
|
6265
|
+
}], ctorParameters: function () { return [{ type: i1$6.SatPopoverAnchor }]; }, propDecorators: { lxPopoverHover: [{
|
6080
6266
|
type: Input
|
6081
6267
|
}], skipCloseDelay: [{
|
6082
6268
|
type: Input
|
@@ -6128,7 +6314,7 @@ class TabComponent {
|
|
6128
6314
|
}
|
6129
6315
|
}
|
6130
6316
|
TabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TabComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
6131
|
-
TabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: TabComponent, selector: "lx-tab", inputs: { icon: "icon", label: "label", title: "title", tabLink: "tabLink", counter: "counter", routerLinkActiveOptions: "routerLinkActiveOptions", counterBadgeSize: "counterBadgeSize", noMargin: "noMargin", noLeftMarginForFirstTab: "noLeftMarginForFirstTab", background: "background", disabled: "disabled" }, outputs: { switch: "switch" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["contentTemplate"], descendants: true, static: true }, { propertyName: "routerLinkActive", first: true, predicate: RouterLinkActive, descendants: true }], ngImport: i0, template: "<li\n class=\"tab\"\n [attr.tabindex]=\"isActive || disabled || tabLink ? '-1' : '0'\"\n [attr.aria-selected]=\"isActive\"\n [attr.aria-controls]=\"tabPanelId\"\n [class.active]=\"isActive\"\n [class.withIcon]=\"icon\"\n [class.noMargin]=\"noMargin\"\n [class.noLeftMarginForFirstTab]=\"noLeftMarginForFirstTab\"\n [class.backgroundGray]=\"background === 'gray'\"\n [class.disabled]=\"disabled\"\n [class.portalTab]=\"!tabLink\"\n [class.routerLinkTab]=\"tabLink\"\n [attr.title]=\"title\"\n role=\"tab\"\n (keyup.enter)=\"switch.emit()\"\n (click)=\"switch.emit()\"\n>\n <a *ngIf=\"tabLink; else portalTab\" [routerLink]=\"tabLink\" routerLinkActive [routerLinkActiveOptions]=\"routerLinkActiveOptions\">\n <ng-container *ngTemplateOutlet=\"portalTab\"></ng-container>\n </a>\n\n <ng-template #portalTab>\n <i *ngIf=\"icon\" class=\"icon {{ icon }}\"></i>\n <span *ngIf=\"label\" class=\"tabLabel\">{{ label }}</span>\n <lx-badge\n *ngIf=\"counter\"\n [size]=\"counterBadgeSize\"\n class=\"lx-margin-left\"\n [content]=\"counter\"\n [color]=\"isActive ? 'darkgray' : 'gray'\"\n ></lx-badge>\n </ng-template>\n\n <ng-template cdkPortal #contentTemplate=\"cdkPortal\">\n <div *ngIf=\"!tabLink\" class=\"content\" role=\"tabpanel\" [attr.id]=\"tabPanelId\">\n <ng-content></ng-content>\n </div>\n </ng-template>\n</li>\n", styles: [":host{display:inline-block}.tab{display:inline-block;margin:0 8px;text-align:center;border-bottom:2px solid transparent;transition:border-bottom .5s;cursor:pointer}.tab.active,.tab:hover{border-bottom:2px solid #2a303d;transition:border-bottom .1s;outline:0}.tab.active,.tab.disabled{cursor:default}.tab.disabled{opacity:.3}.tab.active .tabLabel,.tab:hover .tabLabel{color:#2a303d;transition:color .1s}.portalTab,.routerLinkTab a{display:inline-block;padding:8px 8px 12px;line-height:20px}.portalTab.withIcon,.routerLinkTab a.withIcon{padding:10px 14px;line-height:16px}.routerLinkTab.active a,.routerLinkTab.disabled a{cursor:default}.icon{font-size:16px;opacity:.6}.noMargin{margin:0}.noLeftMarginForFirstTab{margin-left:0}.backgroundGray{background-color:#c2c9d6}.backgroundGray:not(.active):not(.disabled){background-color:#cfd5df}.tabLabel{color:#677a9a;display:inline-block;font-size:13px;text-decoration:none}.content{height:100%}"], components: [{ type: BadgeComponent, selector: "lx-badge", inputs: ["content", "size", "color"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$
|
6317
|
+
TabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: TabComponent, selector: "lx-tab", inputs: { icon: "icon", label: "label", title: "title", tabLink: "tabLink", counter: "counter", routerLinkActiveOptions: "routerLinkActiveOptions", counterBadgeSize: "counterBadgeSize", noMargin: "noMargin", noLeftMarginForFirstTab: "noLeftMarginForFirstTab", background: "background", disabled: "disabled" }, outputs: { switch: "switch" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["contentTemplate"], descendants: true, static: true }, { propertyName: "routerLinkActive", first: true, predicate: RouterLinkActive, descendants: true }], ngImport: i0, template: "<li\n class=\"tab\"\n [attr.tabindex]=\"isActive || disabled || tabLink ? '-1' : '0'\"\n [attr.aria-selected]=\"isActive\"\n [attr.aria-controls]=\"tabPanelId\"\n [class.active]=\"isActive\"\n [class.withIcon]=\"icon\"\n [class.noMargin]=\"noMargin\"\n [class.noLeftMarginForFirstTab]=\"noLeftMarginForFirstTab\"\n [class.backgroundGray]=\"background === 'gray'\"\n [class.disabled]=\"disabled\"\n [class.portalTab]=\"!tabLink\"\n [class.routerLinkTab]=\"tabLink\"\n [attr.title]=\"title\"\n role=\"tab\"\n (keyup.enter)=\"switch.emit()\"\n (click)=\"switch.emit()\"\n>\n <a *ngIf=\"tabLink; else portalTab\" [routerLink]=\"tabLink\" routerLinkActive [routerLinkActiveOptions]=\"routerLinkActiveOptions\">\n <ng-container *ngTemplateOutlet=\"portalTab\"></ng-container>\n </a>\n\n <ng-template #portalTab>\n <i *ngIf=\"icon\" class=\"icon {{ icon }}\"></i>\n <span *ngIf=\"label\" class=\"tabLabel\">{{ label }}</span>\n <lx-badge\n *ngIf=\"counter\"\n [size]=\"counterBadgeSize\"\n class=\"lx-margin-left\"\n [content]=\"counter\"\n [color]=\"isActive ? 'darkgray' : 'gray'\"\n ></lx-badge>\n </ng-template>\n\n <ng-template cdkPortal #contentTemplate=\"cdkPortal\">\n <div *ngIf=\"!tabLink\" class=\"content\" role=\"tabpanel\" [attr.id]=\"tabPanelId\">\n <ng-content></ng-content>\n </div>\n </ng-template>\n</li>\n", styles: [":host{display:inline-block}.tab{display:inline-block;margin:0 8px;text-align:center;border-bottom:2px solid transparent;transition:border-bottom .5s;cursor:pointer}.tab.active,.tab:hover{border-bottom:2px solid #2a303d;transition:border-bottom .1s;outline:0}.tab.active,.tab.disabled{cursor:default}.tab.disabled{opacity:.3}.tab.active .tabLabel,.tab:hover .tabLabel{color:#2a303d;transition:color .1s}.portalTab,.routerLinkTab a{display:inline-block;padding:8px 8px 12px;line-height:20px}.portalTab.withIcon,.routerLinkTab a.withIcon{padding:10px 14px;line-height:16px}.routerLinkTab.active a,.routerLinkTab.disabled a{cursor:default}.icon{font-size:16px;opacity:.6}.noMargin{margin:0}.noLeftMarginForFirstTab{margin-left:0}.backgroundGray{background-color:#c2c9d6}.backgroundGray:not(.active):not(.disabled){background-color:#cfd5df}.tabLabel{color:#677a9a;display:inline-block;font-size:13px;text-decoration:none}.content{height:100%}"], components: [{ type: BadgeComponent, selector: "lx-badge", inputs: ["content", "size", "color"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$3.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i3$3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], exportAs: ["routerLinkActive"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3$2.CdkPortal, selector: "[cdkPortal]", exportAs: ["cdkPortal"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
6132
6318
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TabComponent, decorators: [{
|
6133
6319
|
type: Component,
|
6134
6320
|
args: [{
|
@@ -6221,7 +6407,7 @@ class TabGroupComponent {
|
|
6221
6407
|
}
|
6222
6408
|
}
|
6223
6409
|
TabGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TabGroupComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
6224
|
-
TabGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: TabGroupComponent, selector: "lx-tab-group", inputs: { isCentered: "isCentered", selectedIndex: "selectedIndex" }, outputs: { indexChange: "indexChange" }, queries: [{ propertyName: "tabsQueryList", predicate: TabComponent }], usesOnChanges: true, ngImport: i0, template: "<ul class=\"tabs\" role=\"tablist\" [class.centered]=\"isCentered\">\n <ng-content></ng-content>\n</ul>\n\n<ng-template [cdkPortalOutlet]=\"activeTabPortal\"></ng-template>\n", styles: [".tabs{display:inline-block;list-style:none;border-bottom:1px solid #cfd5df;width:100%;margin:0;padding:0}.tabs.centered{text-align:center}"], directives: [{ type: i3$
|
6410
|
+
TabGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.1.4", type: TabGroupComponent, selector: "lx-tab-group", inputs: { isCentered: "isCentered", selectedIndex: "selectedIndex" }, outputs: { indexChange: "indexChange" }, queries: [{ propertyName: "tabsQueryList", predicate: TabComponent }], usesOnChanges: true, ngImport: i0, template: "<ul class=\"tabs\" role=\"tablist\" [class.centered]=\"isCentered\">\n <ng-content></ng-content>\n</ul>\n\n<ng-template [cdkPortalOutlet]=\"activeTabPortal\"></ng-template>\n", styles: [".tabs{display:inline-block;list-style:none;border-bottom:1px solid #cfd5df;width:100%;margin:0;padding:0}.tabs.centered{text-align:center}"], directives: [{ type: i3$2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
6225
6411
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImport: i0, type: TabGroupComponent, decorators: [{
|
6226
6412
|
type: Component,
|
6227
6413
|
args: [{
|
@@ -6261,5 +6447,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.4", ngImpor
|
|
6261
6447
|
* Generated bundle index. Do not edit.
|
6262
6448
|
*/
|
6263
6449
|
|
6264
|
-
export { ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP, AfterViewInitDirective, AutocloseDirective, AutofocusDirective, BACKSPACE, BadgeComponent, BaseSelectDirective, BasicDropdownComponent, BasicDropdownItemComponent, BrPipe, ButtonComponent, ButtonGroupComponent, CURRENCY_SYMBOL_MAP, CardComponent, CdkOptionsDropdownComponent, CdkOptionsSubDropdownComponent, CollapsibleComponent, ColoredLabelComponent, ContrastColorPipe, CurrencyInputComponent, CurrencySymbolComponent, CustomDatePipe, DATE_FN_LOCALE, DATE_FORMATS, DateInputComponent, DragAndDropListComponent, DragAndDropListItemComponent, ENTER, ESCAPE, EllipsisComponent, ErrorMessageComponent, FORM_CONTROL_ERROR_DISPLAY_STRATEGY, FORM_CONTROL_ERROR_NAMESPACE, FilterSelectionPipe, FilterTermPipe, FormErrorComponent, FormErrorDirective, FormSubmitDirective, FormatNumberPipe, GLOBAL_TRANSLATION_OPTIONS, HighlightRangePipe, HighlightTermPipe, HtmlDirective, IconComponent, IconScaleComponent, KeyboardActionSourceDirective, KeyboardSelectAction, KeyboardSelectDirective, LOCALE_FN, LxCoreUiModule, LxFormsModule, LxIsUuidPipe, LxModalModule, LxPopoverUiModule, LxTabUiModule, LxTimeAgo, LxTooltipModule, LxTranslatePipe, MODAL_CLOSE, MarkInvalidDirective, MarkdownPipe, ModalComponent, ModalContentDirective, ModalFooterComponent, ModalHeaderComponent, MultiSelectComponent, NbspPipe, OptionComponent, OptionGroupComponent, OptionGroupDropdownComponent, OptionsDropdownComponent, OptionsSubDropdownComponent, PickerComponent, PickerOptionComponent, PickerTriggerDirective, PillItemComponent, PillListComponent, PopoverClickDirective, PopoverComponent, PopoverContentDirective, PopoverHoverDirective, Required, ResponsiveInputComponent, SPACE, SelectDropdownDirective, SelectableItemDirective, SelectedOptionDirective, SingleSelectComponent, SliderToggleComponent, SortPipe, Sorting, SortingDropdownComponent, SortingDropdownTriggerComponent, SpinnerComponent, TAB, TabComponent, TabGroupComponent, TableComponent, TableHeaderComponent, TinySpinnerComponent, TooltipComponent, TooltipDirective, TranslationAfterPipe, TranslationBeforePipe, TranslationBetweenPipe, UnescapeCurlyBracesPipe, ValidateDateInForeseeableFuture, getContrastColor, getTranslationParts, isValidHexColor, isValidX, isValidY, provideFormControlErrorDisplayStrategy, provideFormControlErrorNamespace, shorthandHexHandle };
|
6450
|
+
export { ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP, AfterViewInitDirective, AutocloseDirective, AutofocusDirective, BACKSPACE, BadgeComponent, BaseSelectDirective, BasicDropdownComponent, BasicDropdownItemComponent, BrPipe, ButtonComponent, ButtonGroupComponent, CURRENCY_SYMBOL_MAP, CardComponent, CdkOptionsDropdownComponent, CdkOptionsSubDropdownComponent, CollapsibleComponent, ColoredLabelComponent, ContrastColorPipe, CurrencyInputComponent, CurrencySymbolComponent, CustomDatePipe, DATE_FN_LOCALE, DATE_FORMATS, DateInputComponent, DragAndDropListComponent, DragAndDropListItemComponent, ENTER, ESCAPE, EllipsisComponent, ErrorMessageComponent, FORM_CONTROL_ERROR_DISPLAY_STRATEGY, FORM_CONTROL_ERROR_NAMESPACE, FilterSelectionPipe, FilterTermPipe, FormErrorComponent, FormErrorDirective, FormSubmitDirective, FormatNumberPipe, GLOBAL_TRANSLATION_OPTIONS, HighlightRangePipe, HighlightTermPipe, HtmlDirective, IconComponent, IconScaleComponent, KeyboardActionSourceDirective, KeyboardSelectAction, KeyboardSelectDirective, LOCALE_FN, LxCoreUiModule, LxDragAndDropListModule, LxFormsModule, LxIsUuidPipe, LxModalModule, LxPopoverUiModule, LxTabUiModule, LxTimeAgo, LxTooltipModule, LxTranslatePipe, MODAL_CLOSE, MarkInvalidDirective, MarkdownPipe, ModalComponent, ModalContentDirective, ModalFooterComponent, ModalHeaderComponent, MultiSelectComponent, NbspPipe, OptionComponent, OptionGroupComponent, OptionGroupDropdownComponent, OptionsDropdownComponent, OptionsSubDropdownComponent, PickerComponent, PickerOptionComponent, PickerTriggerDirective, PillItemComponent, PillListComponent, PopoverClickDirective, PopoverComponent, PopoverContentDirective, PopoverHoverDirective, Required, ResponsiveInputComponent, SPACE, SelectDropdownDirective, SelectableItemDirective, SelectedOptionDirective, SingleSelectComponent, SliderToggleComponent, SortPipe, Sorting, SortingDropdownComponent, SortingDropdownTriggerComponent, SpinnerComponent, TAB, TabComponent, TabGroupComponent, TableComponent, TableHeaderComponent, TinySpinnerComponent, TooltipComponent, TooltipDirective, TranslationAfterPipe, TranslationBeforePipe, TranslationBetweenPipe, UnescapeCurlyBracesPipe, ValidateDateInForeseeableFuture, getContrastColor, getTranslationParts, isValidHexColor, isValidX, isValidY, provideFormControlErrorDisplayStrategy, provideFormControlErrorNamespace, shorthandHexHandle };
|
6265
6451
|
//# sourceMappingURL=leanix-components.js.map
|