@ecodev/natural 37.0.0 → 38.1.0
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/bundles/ecodev-natural.umd.js +147 -99
- package/bundles/ecodev-natural.umd.js.map +1 -1
- package/ecodev-natural.metadata.json +1 -1
- package/esm2015/lib/classes/abstract-list.js +7 -5
- package/esm2015/lib/classes/abstract-navigable-list.js +32 -23
- package/esm2015/lib/classes/apollo-utils.js +4 -31
- package/esm2015/lib/classes/rxjs.js +13 -2
- package/esm2015/lib/classes/utility.js +32 -1
- package/esm2015/lib/classes/validators.js +16 -2
- package/esm2015/lib/modules/alert/confirm.component.js +1 -1
- package/esm2015/lib/modules/detail-header/detail-header.component.js +1 -1
- package/esm2015/lib/modules/dropdown-components/type-number/type-number.component.js +1 -1
- package/esm2015/lib/modules/dropdown-components/type-text/type-text.component.js +1 -1
- package/esm2015/lib/modules/file/component/file.component.js +1 -1
- package/esm2015/lib/modules/file/file-drop.directive.js +2 -4
- package/esm2015/lib/modules/fixed-button/fixed-button.component.js +1 -1
- package/esm2015/lib/modules/hierarchic-selector/hierarchic-selector/hierarchic-selector.component.js +1 -1
- package/esm2015/lib/modules/hierarchic-selector/hierarchic-selector-dialog/hierarchic-selector-dialog.component.js +1 -1
- package/esm2015/lib/modules/icon/icon.component.js +1 -1
- package/esm2015/lib/modules/relations/relations.component.js +1 -1
- package/esm2015/lib/modules/search/dropdown-container/dropdown-container.component.js +2 -2
- package/esm2015/lib/modules/search/dropdown-container/dropdown-ref.js +1 -1
- package/esm2015/lib/modules/search/facet-selector/facet-selector.component.js +1 -1
- package/esm2015/lib/modules/search/group/group.component.js +1 -1
- package/esm2015/lib/modules/search/input/input.component.js +4 -4
- package/esm2015/lib/modules/search/search/search.component.js +1 -1
- package/esm2015/lib/modules/select/select/select.component.js +1 -1
- package/esm2015/lib/modules/select/select-hierarchic/select-hierarchic.component.js +1 -1
- package/esm2015/lib/modules/sidenav/sidenav-container/sidenav-container.component.js +8 -3
- package/esm2015/lib/modules/sidenav/sidenav-content/sidenav-content.component.js +1 -1
- package/esm2015/lib/modules/table-button/table-button.component.js +1 -1
- package/fesm2015/ecodev-natural.js +127 -85
- package/fesm2015/ecodev-natural.js.map +1 -1
- package/lib/classes/abstract-list.d.ts +1 -1
- package/lib/classes/abstract-navigable-list.d.ts +4 -2
- package/lib/classes/rxjs.d.ts +6 -1
- package/lib/classes/utility.d.ts +9 -0
- package/lib/classes/validators.d.ts +7 -0
- package/lib/modules/search/dropdown-container/dropdown-container.component.d.ts +1 -2
- package/lib/modules/sidenav/sidenav-container/sidenav-container.component.d.ts +5 -0
- package/package.json +5 -5
- package/src/lib/modules/alert/_alert.theme.scss +1 -1
- package/src/lib/modules/file/component/_file.theme.scss +1 -1
- package/src/lib/modules/icon/_icon.theme.scss +1 -1
- package/src/lib/modules/search/dropdown-container/_dropdown-container.theme.scss +1 -1
- package/src/lib/modules/sidenav/_sidenav.theme.scss +1 -1
- package/src/lib/styles/_table.scss +1 -1
|
@@ -175,7 +175,7 @@ NaturalSelectComponent.decorators = [
|
|
|
175
175
|
{ type: Component, args: [{
|
|
176
176
|
selector: 'natural-select',
|
|
177
177
|
template: "<!-- Autocomplete menu -->\n<mat-autocomplete\n #ac=\"matAutocomplete\"\n (optionSelected)=\"propagateValue($event?.option?.value)\"\n [displayWith]=\"getDisplayFn()\"\n panelWidth=\"auto !important\"\n>\n <mat-option *ngFor=\"let item of items | async\" [value]=\"item\">\n <ng-template\n [ngTemplateOutletContext]=\"{item: item}\"\n [ngTemplateOutlet]=\"itemTemplate ? itemTemplate : defaultACItem\"\n ></ng-template>\n </mat-option>\n <div *ngIf=\"moreNbItems > 0\" class=\"mat-caption\" i18n style=\"padding: 5px 10px\"\n >{{ moreNbItems }} \u00E9l\u00E9ment(s) suppl\u00E9mentaire(s)</div\n >\n</mat-autocomplete>\n\n<ng-template #defaultACItem let-item=\"item\">\n <span>{{ getDisplayFn()(item) }}</span>\n</ng-template>\n\n<!-- Input for autocomplete -->\n<mat-form-field [floatLabel]=\"floatPlaceholder\">\n <mat-label>{{ placeholder }}</mat-label>\n\n <input\n (blur)=\"touch(); blur.emit()\"\n (change)=\"onInternalFormChange()\"\n (click)=\"autoTrigger.openPanel()\"\n (focus)=\"startSearch()\"\n (keydown.esc)=\"clear()\"\n [formControl]=\"internalCtrl\"\n [matAutocomplete]=\"ac\"\n aria-label=\"Recherche et s\u00E9lection\"\n i18n-aria-label\n matInput\n [errorStateMatcher]=\"matcher\"\n />\n\n <!-- Meta data -->\n <natural-icon *ngIf=\"!loading && showIcon\" [name]=\"icon\" matPrefix></natural-icon>\n <mat-progress-spinner\n *ngIf=\"loading\"\n [diameter]=\"21\"\n [strokeWidth]=\"5\"\n matPrefix\n mode=\"indeterminate\"\n ></mat-progress-spinner>\n\n <!-- Clear button -->\n <div class=\"suffix-buttons\" matSuffix>\n <button\n (click)=\"clear(); $event.stopPropagation()\"\n *ngIf=\"internalCtrl.value && internalCtrl.enabled && !clearLabel\"\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"D\u00E9s\u00E9lectionner\"\n >\n <natural-icon name=\"close\"></natural-icon>\n </button>\n <button\n *ngIf=\"internalCtrl.value && navigateTo\"\n [routerLink]=\"navigateTo\"\n mat-button\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"Naviguer vers\"\n >\n <natural-icon name=\"open_in_browser\"></natural-icon>\n </button>\n </div>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error>\n</mat-form-field>\n\n<!-- Additional (un)select/(un)link buttons for more visual cohesion with natural-relations --><!-- [clearLabel] and/or [selectLabel] has to be given as attribute input -->\n<div *ngIf=\"showClearButton()\" class=\"external-buttons\">\n <button (click)=\"clear()\" *ngIf=\"showClearButton()\" color=\"warn\" mat-button>{{ clearLabel }}</button>\n</div>\n",
|
|
178
|
-
styles: [":host{display:flex;flex-direction:column}:host
|
|
178
|
+
styles: [":host{display:flex;flex-direction:column}:host>*:not(:last-child){margin-bottom:20px}:host>mat-autocomplete{margin-bottom:0!important}:host .suffix-buttons,:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons>*:not(:last-child){margin-right:10px}\n"]
|
|
179
179
|
},] }
|
|
180
180
|
];
|
|
181
181
|
NaturalSelectComponent.propDecorators = {
|
|
@@ -105,7 +105,7 @@ NaturalSelectHierarchicComponent.decorators = [
|
|
|
105
105
|
{ type: Component, args: [{
|
|
106
106
|
selector: 'natural-select-hierarchic',
|
|
107
107
|
template: "<mat-form-field [floatLabel]=\"floatPlaceholder\">\n <mat-label>{{ placeholder }}</mat-label>\n\n <!-- Input for hierarchical selector -->\n <input\n (blur)=\"blur.emit()\"\n (focus)=\"openDialog()\"\n (keydown.esc)=\"clear()\"\n [formControl]=\"internalCtrl\"\n [errorStateMatcher]=\"matcher\"\n aria-label=\"Recherche et s\u00E9lection\"\n i18n-aria-label\n matInput\n />\n\n <!-- Meta data -->\n <natural-icon *ngIf=\"showIcon\" [name]=\"icon\" matPrefix></natural-icon>\n\n <!-- Clear button -->\n <div class=\"suffix-buttons\" matSuffix>\n <button\n (click)=\"clear(); $event.stopPropagation()\"\n *ngIf=\"internalCtrl.value && internalCtrl.enabled && !clearLabel\"\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"D\u00E9s\u00E9lectionner\"\n >\n <natural-icon name=\"close\"></natural-icon>\n </button>\n <button\n *ngIf=\"internalCtrl.value && navigateTo\"\n [routerLink]=\"navigateTo\"\n mat-button\n mat-icon-button\n i18n-matTooltip\n matTooltip=\"Naviguer vers\"\n >\n <natural-icon name=\"open_in_browser\"></natural-icon>\n </button>\n </div>\n\n <mat-error *ngIf=\"hasRequiredError()\" i18n>Ce champ est requis</mat-error>\n</mat-form-field>\n\n<!-- Additional (un)select/(un)link buttons for more visual cohesion with natural-relations --><!-- [clearLabel] and/or [selectLabel] has to be given as attribute input -->\n<div *ngIf=\"showSelectButton() || showClearButton()\" class=\"external-buttons\">\n <button (click)=\"openDialog()\" *ngIf=\"showSelectButton()\" color=\"primary\" mat-flat-button>{{ selectLabel }}</button>\n <button (click)=\"clear()\" *ngIf=\"showClearButton()\" color=\"warn\" mat-button>{{ clearLabel }}</button>\n</div>\n",
|
|
108
|
-
styles: [":host{display:flex;flex-direction:column}:host
|
|
108
|
+
styles: [":host{display:flex;flex-direction:column}:host>*:not(:last-child){margin-bottom:20px}:host .suffix-buttons,:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons{display:flex;flex-direction:row}:host .external-buttons>*:not(:last-child){margin-right:10px}\n"]
|
|
109
109
|
},] }
|
|
110
110
|
];
|
|
111
111
|
NaturalSelectHierarchicComponent.ctorParameters = () => [
|
|
@@ -5,6 +5,10 @@ export class NaturalSidenavContainerComponent {
|
|
|
5
5
|
constructor(sidenavService, element) {
|
|
6
6
|
this.sidenavService = sidenavService;
|
|
7
7
|
this.element = element;
|
|
8
|
+
/**
|
|
9
|
+
* The side that the drawer is attached to
|
|
10
|
+
*/
|
|
11
|
+
this.position = 'start';
|
|
8
12
|
/**
|
|
9
13
|
* If true listens to route changes to close side nav after a route change if mobile view is active
|
|
10
14
|
* Actually a navigation to current route does not emit a route change, and the sidenav don't close.
|
|
@@ -54,9 +58,9 @@ export class NaturalSidenavContainerComponent {
|
|
|
54
58
|
NaturalSidenavContainerComponent.decorators = [
|
|
55
59
|
{ type: Component, args: [{
|
|
56
60
|
selector: 'natural-sidenav-container',
|
|
57
|
-
template: "<mat-sidenav-container>\n <mat-sidenav\n (openedChange)=\"sidenavService.setOpened($event)\"\n [mode]=\"sidenavService.activeMode\"\n [ngClass]=\"sidenavService.isMinimized ? 'menuMinimized' : ''\"\n [opened]=\"sidenavService.isOpened\"\n [style.min-width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [style.width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n position=\"
|
|
61
|
+
template: "<mat-sidenav-container>\n <mat-sidenav\n (openedChange)=\"sidenavService.setOpened($event)\"\n [mode]=\"sidenavService.activeMode\"\n [ngClass]=\"sidenavService.isMinimized ? 'menuMinimized' : ''\"\n [opened]=\"sidenavService.isOpened\"\n [style.min-width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [style.width.px]=\"sidenavService.isMinimized && minimizedWidth ? minimizedWidth : null\"\n [position]=\"position\"\n >\n <ng-content select=\"natural-sidenav\"></ng-content>\n </mat-sidenav>\n\n <mat-sidenav-content>\n <div>\n <ng-content select=\"natural-sidenav-content\"></ng-content>\n </div>\n </mat-sidenav-content>\n</mat-sidenav-container>\n",
|
|
58
62
|
providers: [NaturalSidenavService],
|
|
59
|
-
styles: [":host{display:flex;flex-direction:column}:host mat-sidenav-container{display:flex;flex-direction:column;flex:1}:host mat-sidenav-content>div{overflow:auto}:host .menuMinimized{overflow-x:hidden}:host .buttons{display:flex;flex-direction:row;justify-content:flex-end}"]
|
|
63
|
+
styles: [":host{display:flex;flex-direction:column}:host mat-sidenav-container{display:flex;flex-direction:column;flex:1}:host mat-sidenav-content>div{overflow:auto}:host .menuMinimized{overflow-x:hidden}:host .buttons{display:flex;flex-direction:row;justify-content:flex-end}\n"]
|
|
60
64
|
},] }
|
|
61
65
|
];
|
|
62
66
|
NaturalSidenavContainerComponent.ctorParameters = () => [
|
|
@@ -65,10 +69,11 @@ NaturalSidenavContainerComponent.ctorParameters = () => [
|
|
|
65
69
|
];
|
|
66
70
|
NaturalSidenavContainerComponent.propDecorators = {
|
|
67
71
|
name: [{ type: Input }],
|
|
72
|
+
position: [{ type: Input }],
|
|
68
73
|
mobileAutoClose: [{ type: Input }],
|
|
69
74
|
minimizedWidth: [{ type: Input }],
|
|
70
75
|
noScroll: [{ type: HostBinding, args: ['attr.no-scroll',] }, { type: Input }],
|
|
71
76
|
menuContainer: [{ type: ViewChild, args: [MatSidenavContainer, { static: true },] }],
|
|
72
77
|
menuSidenav: [{ type: ViewChild, args: [MatSidenav, { static: true },] }]
|
|
73
78
|
};
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvc2lkZW5hdi9zaWRlbmF2LWNvbnRhaW5lci9zaWRlbmF2LWNvbnRhaW5lci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBcUIsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBWSxVQUFVLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQVF6RCxNQUFNLE9BQU8sZ0NBQWdDO0lBc0N6QyxZQUE0QixjQUFxQyxFQUFrQixPQUFtQjtRQUExRSxtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFBa0IsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQWhDdEc7O1dBRUc7UUFDYSxhQUFRLEdBQTBCLE9BQU8sQ0FBQztRQUUxRDs7O1dBR0c7UUFDYSxvQkFBZSxHQUFHLElBQUksQ0FBQztRQUV2Qzs7V0FFRztRQUNhLG1CQUFjLEdBQUcsR0FBRyxDQUFDO1FBRXJDOzs7V0FHRztRQUM0QyxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBWXlDLENBQUM7SUFFMUcsSUFBVyxXQUFXO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNuQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVNLFFBQVE7UUFDWCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzFHLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVNLE1BQU07UUFDVCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxLQUFLO1FBQ1IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU0sSUFBSTtRQUNQLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLFFBQVE7UUFDWCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTSxNQUFNO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sZUFBZTtRQUNsQixJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFDLENBQUM7OztZQXBGSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMseXhCQUFpRDtnQkFFakQsU0FBUyxFQUFFLENBQUMscUJBQXFCLENBQUM7O2FBQ3JDOzs7WUFQTyxxQkFBcUI7WUFGVixVQUFVOzs7bUJBY3hCLEtBQUs7dUJBS0wsS0FBSzs4QkFNTCxLQUFLOzZCQUtMLEtBQUs7dUJBTUwsV0FBVyxTQUFDLGdCQUFnQixjQUFHLEtBQUs7NEJBS3BDLFNBQVMsU0FBQyxtQkFBbUIsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7MEJBSzdDLFNBQVMsU0FBQyxVQUFVLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdERyYXdlciwgTWF0U2lkZW5hdiwgTWF0U2lkZW5hdkNvbnRhaW5lcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQge05hdHVyYWxTaWRlbmF2U2VydmljZX0gZnJvbSAnLi4vc2lkZW5hdi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYXR1cmFsLXNpZGVuYXYtY29udGFpbmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2lkZW5hdi1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NpZGVuYXYtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbTmF0dXJhbFNpZGVuYXZTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgTmF0dXJhbFNpZGVuYXZDb250YWluZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqXG4gICAgICogVW5pcXVlIGlkZW50aWZpZXIgdXNlZCBmb3IgdGhlIGxvY2FsIHN0b3JhZ2VcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgbmFtZSE6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBzaWRlIHRoYXQgdGhlIGRyYXdlciBpcyBhdHRhY2hlZCB0b1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBwb3NpdGlvbjogTWF0RHJhd2VyWydwb3NpdGlvbiddID0gJ3N0YXJ0JztcblxuICAgIC8qKlxuICAgICAqIElmIHRydWUgbGlzdGVucyB0byByb3V0ZSBjaGFuZ2VzIHRvIGNsb3NlIHNpZGUgbmF2IGFmdGVyIGEgcm91dGUgY2hhbmdlIGlmIG1vYmlsZSB2aWV3IGlzIGFjdGl2ZVxuICAgICAqIEFjdHVhbGx5IGEgbmF2aWdhdGlvbiB0byBjdXJyZW50IHJvdXRlIGRvZXMgbm90IGVtaXQgYSByb3V0ZSBjaGFuZ2UsIGFuZCB0aGUgc2lkZW5hdiBkb24ndCBjbG9zZS5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgbW9iaWxlQXV0b0Nsb3NlID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFdpZHRoIG9mIHRoZSBtaW5pbWl6ZWQgbWVudVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBtaW5pbWl6ZWRXaWR0aCA9IDE1MDtcblxuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHByZXZlbnRzIFwibmF0aXZlXCIgbWF0ZXJpYWwgc2lkZW5hdiB0byBzY3JvbGwgYXQgY29udGFpbmVyIGxldmVsIGFuZCBkZWxlZ2F0ZXMgdGhlIHNjcm9sbCByZXNwb25zYWJpbGl0eSB0byB0aGUgdHJhbnNjbHVkZWRcbiAgICAgKiBjb250ZW50XG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLm5vLXNjcm9sbCcpIEBJbnB1dCgpIHB1YmxpYyBub1Njcm9sbCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogSW5uZXIgXCJuYXRpdmVcIiBtYXRlcmlhbCBzaWRlbmF2IGNvbnRhaW5lclxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGQoTWF0U2lkZW5hdkNvbnRhaW5lciwge3N0YXRpYzogdHJ1ZX0pIHByaXZhdGUgbWVudUNvbnRhaW5lciE6IE1hdFNpZGVuYXZDb250YWluZXI7XG5cbiAgICAvKipcbiAgICAgKiBJbm5lciBcIm5hdGl2ZVwiIG1hdGVyaWFsIHNpZGVuYXZcbiAgICAgKi9cbiAgICBAVmlld0NoaWxkKE1hdFNpZGVuYXYsIHtzdGF0aWM6IHRydWV9KSBwcml2YXRlIG1lbnVTaWRlbmF2ITogTWF0U2lkZW5hdjtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBzaWRlbmF2U2VydmljZTogTmF0dXJhbFNpZGVuYXZTZXJ2aWNlLCBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudDogRWxlbWVudFJlZikge31cblxuICAgIHB1YmxpYyBnZXQgaXNNaW5pbWl6ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNpZGVuYXZTZXJ2aWNlLmlzTWluaW1pemVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNNb2JpbGVWaWV3KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaWRlbmF2U2VydmljZS5pc01vYmlsZVZpZXcoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UuaW5pdCh0aGlzLm5hbWUsIHRoaXMubWVudUNvbnRhaW5lciwgdGhpcy5tZW51U2lkZW5hdiwgdGhpcywgdGhpcy5tb2JpbGVBdXRvQ2xvc2UpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5kZXN0cm95KHRoaXMpO1xuICAgIH1cblxuICAgIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UudG9nZ2xlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNpZGVuYXZTZXJ2aWNlLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW4oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2Uub3BlbigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBtaW5pbWl6ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS5taW5pbWl6ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBleHBhbmQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZW5hdlNlcnZpY2UuZXhwYW5kKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHRvZ2dsZU1pbmltaXplZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlbmF2U2VydmljZS50b2dnbGVNaW5pbWl6ZWQoKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -6,7 +6,7 @@ NaturalSidenavContentComponent.decorators = [
|
|
|
6
6
|
{ type: Component, args: [{
|
|
7
7
|
selector: 'natural-sidenav-content',
|
|
8
8
|
template: '<ng-content></ng-content>',
|
|
9
|
-
styles: [":host{flex:1;display:flex;flex-direction:column;overflow:auto}"]
|
|
9
|
+
styles: [":host{flex:1;display:flex;flex-direction:column;overflow:auto}\n"]
|
|
10
10
|
},] }
|
|
11
11
|
];
|
|
12
12
|
NaturalSidenavContentComponent.ctorParameters = () => [];
|
|
@@ -19,7 +19,7 @@ NaturalTableButtonComponent.decorators = [
|
|
|
19
19
|
selector: 'natural-table-button',
|
|
20
20
|
template: "<!-- Because directives can't be applied conditionally (routerLink, mat-button and mat-icon-button), we have to use different elements -->\n\n<ng-container *ngIf=\"!raised\">\n <!-- App routed link with label... -->\n <a\n *ngIf=\"!href && label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n mat-button\n >\n <natural-icon *ngIf=\"icon\" [name]=\"icon\"></natural-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"!href && !label\"\n [color]=\"color\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n mat-icon-button\n >\n <natural-icon *ngIf=\"icon\" [name]=\"icon\"></natural-icon>\n </a>\n\n <!-- External link with label... -->\n <a *ngIf=\"href && label\" [attr.href]=\"href\" [color]=\"color\" mat-button target=\"_blank\">\n <natural-icon *ngIf=\"icon\" [name]=\"icon\"></natural-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a *ngIf=\"href && !label\" [attr.href]=\"href\" [color]=\"color\" mat-icon-button target=\"_blank\">\n <natural-icon *ngIf=\"icon\" [name]=\"icon\"></natural-icon>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"raised\">\n <!-- App routed link with label... -->\n <a\n *ngIf=\"!href && label\"\n [color]=\"color\"\n [queryParams]=\"queryParams\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n mat-raised-button\n >\n <natural-icon *ngIf=\"icon\" [name]=\"icon\"></natural-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a\n *ngIf=\"!href && !label\"\n [color]=\"color\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n [routerLink]=\"navigate\"\n [fragment]=\"fragment\"\n [preserveFragment]=\"preserveFragment\"\n mat-icon-button\n mat-raised-button\n >\n <natural-icon *ngIf=\"icon\" [name]=\"icon\"></natural-icon>\n </a>\n\n <!-- External link with label... -->\n <a *ngIf=\"href && label\" [attr.href]=\"href\" [color]=\"color\" mat-raised-button target=\"_blank\">\n <natural-icon *ngIf=\"icon\" [name]=\"icon\"></natural-icon>\n <span>{{ label }}</span>\n </a>\n\n <!-- ... and without label -->\n <a *ngIf=\"href && !label\" [attr.href]=\"href\" [color]=\"color\" mat-icon-button mat-raised-button target=\"_blank\">\n <natural-icon *ngIf=\"icon\" [name]=\"icon\"></natural-icon>\n </a>\n</ng-container>\n",
|
|
21
21
|
encapsulation: ViewEncapsulation.None,
|
|
22
|
-
styles: ["natural-table-button
|
|
22
|
+
styles: ["natural-table-button{flex:1;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}natural-table-button a.mat-button{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start}natural-table-button a.mat-button .mat-button-wrapper{display:flex;flex-direction:row;align-items:center}natural-table-button a.mat-button .mat-button-wrapper>*{display:flex;flex-direction:row;align-items:center}natural-table-button a.mat-button .mat-button-wrapper>:not(:last-child){margin-right:5px}\n"]
|
|
23
23
|
},] }
|
|
24
24
|
];
|
|
25
25
|
NaturalTableButtonComponent.ctorParameters = () => [];
|