@igo2/common 1.13.2 → 1.13.4
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/esm2020/lib/action/action.module.mjs +1 -1
- package/esm2020/lib/action/actionbar/actionbar-item.component.mjs +2 -2
- package/esm2020/lib/action/actionbar/actionbar.component.mjs +2 -2
- package/esm2020/lib/action/actionbar/actionbar.module.mjs +1 -1
- package/esm2020/lib/action/index.mjs +1 -1
- package/esm2020/lib/action/shared/action.enums.mjs +1 -1
- package/esm2020/lib/action/shared/action.interfaces.mjs +1 -1
- package/esm2020/lib/action/shared/index.mjs +1 -1
- package/esm2020/lib/action/shared/store.mjs +1 -1
- package/esm2020/lib/backdrop/backdrop.component.mjs +2 -2
- package/esm2020/lib/backdrop/backdrop.module.mjs +1 -1
- package/esm2020/lib/backdrop/index.mjs +1 -1
- package/esm2020/lib/badge-icon/badge-icon.directive.mjs +1 -1
- package/esm2020/lib/badge-icon/badge-icon.module.mjs +1 -1
- package/esm2020/lib/badge-icon/index.mjs +1 -1
- package/esm2020/lib/clickout/clickout.directive.mjs +1 -1
- package/esm2020/lib/clickout/clickout.module.mjs +1 -1
- package/esm2020/lib/clickout/index.mjs +1 -1
- package/esm2020/lib/clone/clone.module.mjs +1 -1
- package/esm2020/lib/clone/clone.pipe.mjs +1 -1
- package/esm2020/lib/clone/index.mjs +1 -1
- package/esm2020/lib/collapsible/collapse.directive.mjs +1 -1
- package/esm2020/lib/collapsible/collapsible.component.mjs +2 -2
- package/esm2020/lib/collapsible/collapsible.module.mjs +1 -1
- package/esm2020/lib/collapsible/index.mjs +1 -1
- package/esm2020/lib/confirm-dialog/confirm-dialog.component.mjs +2 -2
- package/esm2020/lib/confirm-dialog/confirm-dialog.module.mjs +1 -1
- package/esm2020/lib/confirm-dialog/confirm-dialog.service.mjs +1 -1
- package/esm2020/lib/confirm-dialog/index.mjs +1 -1
- package/esm2020/lib/context-menu/context-menu.directive.mjs +1 -1
- package/esm2020/lib/context-menu/context-menu.module.mjs +1 -1
- package/esm2020/lib/context-menu/index.mjs +1 -1
- package/esm2020/lib/context-menu/long-press.directive.mjs +26 -6
- package/esm2020/lib/custom-html/custom-html.component.mjs +2 -2
- package/esm2020/lib/custom-html/custom-html.module.mjs +1 -1
- package/esm2020/lib/custom-html/custom-html.pipe.mjs +1 -1
- package/esm2020/lib/custom-html/index.mjs +1 -1
- package/esm2020/lib/dom/dom.interfaces.mjs +1 -1
- package/esm2020/lib/dom/dom.module.mjs +1 -1
- package/esm2020/lib/dom/dom.service.mjs +1 -1
- package/esm2020/lib/dom/index.mjs +1 -1
- package/esm2020/lib/drag-drop/drag-drop.module.mjs +1 -1
- package/esm2020/lib/drag-drop/index.mjs +1 -1
- package/esm2020/lib/dynamic-component/dynamic-component.module.mjs +1 -1
- package/esm2020/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.mjs +2 -2
- package/esm2020/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.mjs +1 -1
- package/esm2020/lib/dynamic-component/index.mjs +1 -1
- package/esm2020/lib/dynamic-component/shared/dynamic-component.interfaces.mjs +1 -1
- package/esm2020/lib/dynamic-component/shared/dynamic-component.mjs +1 -1
- package/esm2020/lib/dynamic-component/shared/dynamic-component.service.mjs +1 -1
- package/esm2020/lib/dynamic-component/shared/index.mjs +1 -1
- package/esm2020/lib/entity/entity-selector/entity-selector.component.mjs +2 -2
- package/esm2020/lib/entity/entity-selector/entity-selector.module.mjs +1 -1
- package/esm2020/lib/entity/entity-table/entity-table-row.directive.mjs +1 -1
- package/esm2020/lib/entity/entity-table/entity-table.component.mjs +2 -2
- package/esm2020/lib/entity/entity-table/entity-table.module.mjs +1 -1
- package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.component.mjs +2 -2
- package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.interface.mjs +1 -1
- package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.module.mjs +1 -1
- package/esm2020/lib/entity/entity.module.mjs +1 -1
- package/esm2020/lib/entity/index.mjs +1 -1
- package/esm2020/lib/entity/shared/entity.enums.mjs +1 -1
- package/esm2020/lib/entity/shared/entity.interfaces.mjs +1 -1
- package/esm2020/lib/entity/shared/entity.utils.mjs +1 -1
- package/esm2020/lib/entity/shared/index.mjs +1 -1
- package/esm2020/lib/entity/shared/state.mjs +1 -1
- package/esm2020/lib/entity/shared/store.mjs +1 -1
- package/esm2020/lib/entity/shared/strategies/filter-custom-function.mjs +1 -1
- package/esm2020/lib/entity/shared/strategies/filter-selection.mjs +1 -1
- package/esm2020/lib/entity/shared/strategies/index.mjs +1 -1
- package/esm2020/lib/entity/shared/strategies/strategy.mjs +1 -1
- package/esm2020/lib/entity/shared/transaction.mjs +1 -1
- package/esm2020/lib/entity/shared/view.mjs +1 -1
- package/esm2020/lib/entity/shared/watcher.mjs +1 -1
- package/esm2020/lib/flexible/flexible.component.mjs +2 -2
- package/esm2020/lib/flexible/flexible.module.mjs +1 -1
- package/esm2020/lib/flexible/flexible.type.mjs +1 -1
- package/esm2020/lib/flexible/index.mjs +1 -1
- package/esm2020/lib/form/form/form.component.mjs +2 -2
- package/esm2020/lib/form/form/form.module.mjs +1 -1
- package/esm2020/lib/form/form-field/form-field-select.component.mjs +2 -2
- package/esm2020/lib/form/form-field/form-field-text.component.mjs +2 -2
- package/esm2020/lib/form/form-field/form-field-textarea.component.mjs +2 -2
- package/esm2020/lib/form/form-field/form-field.component.mjs +2 -2
- package/esm2020/lib/form/form-field/form-field.module.mjs +1 -1
- package/esm2020/lib/form/form-field/index.mjs +1 -1
- package/esm2020/lib/form/form-group/form-group.component.mjs +2 -2
- package/esm2020/lib/form/form-group/form-group.module.mjs +1 -1
- package/esm2020/lib/form/form.module.mjs +1 -1
- package/esm2020/lib/form/index.mjs +1 -1
- package/esm2020/lib/form/shared/form-field-component.mjs +1 -1
- package/esm2020/lib/form/shared/form-field.service.mjs +1 -1
- package/esm2020/lib/form/shared/form.interfaces.mjs +1 -1
- package/esm2020/lib/form/shared/form.service.mjs +1 -1
- package/esm2020/lib/form/shared/form.utils.mjs +1 -1
- package/esm2020/lib/form/shared/index.mjs +1 -1
- package/esm2020/lib/home-button/home-button.component.mjs +2 -2
- package/esm2020/lib/home-button/home-button.module.mjs +1 -1
- package/esm2020/lib/home-button/index.mjs +1 -1
- package/esm2020/lib/image/image-error.directive.mjs +2 -2
- package/esm2020/lib/image/image.module.mjs +1 -1
- package/esm2020/lib/image/index.mjs +1 -1
- package/esm2020/lib/image/secure-image.pipe.mjs +1 -1
- package/esm2020/lib/interactive-tour/index.mjs +1 -1
- package/esm2020/lib/interactive-tour/interactive-tour.component.mjs +2 -2
- package/esm2020/lib/interactive-tour/interactive-tour.interface.mjs +1 -1
- package/esm2020/lib/interactive-tour/interactive-tour.loader.mjs +1 -1
- package/esm2020/lib/interactive-tour/interactive-tour.module.mjs +1 -1
- package/esm2020/lib/interactive-tour/interactive-tour.service.mjs +1 -1
- package/esm2020/lib/json-dialog/index.mjs +1 -1
- package/esm2020/lib/json-dialog/json-dialog.component.mjs +2 -2
- package/esm2020/lib/json-dialog/json-dialog.module.mjs +1 -1
- package/esm2020/lib/json-dialog/json-dialog.service.mjs +1 -1
- package/esm2020/lib/keyvalue/index.mjs +1 -1
- package/esm2020/lib/keyvalue/keyvalue.module.mjs +1 -1
- package/esm2020/lib/keyvalue/keyvalue.pipe.mjs +1 -1
- package/esm2020/lib/list/index.mjs +1 -1
- package/esm2020/lib/list/list-item.directive.mjs +1 -1
- package/esm2020/lib/list/list.component.mjs +2 -2
- package/esm2020/lib/list/list.module.mjs +1 -1
- package/esm2020/lib/panel/index.mjs +1 -1
- package/esm2020/lib/panel/panel.component.mjs +2 -2
- package/esm2020/lib/panel/panel.module.mjs +1 -1
- package/esm2020/lib/sidenav/index.mjs +1 -1
- package/esm2020/lib/sidenav/sidenav-shim.directive.mjs +1 -1
- package/esm2020/lib/sidenav/sidenav.module.mjs +1 -1
- package/esm2020/lib/spinner/index.mjs +1 -1
- package/esm2020/lib/spinner/spinner-activity.directive.mjs +1 -1
- package/esm2020/lib/spinner/spinner.component.mjs +2 -2
- package/esm2020/lib/spinner/spinner.module.mjs +1 -1
- package/esm2020/lib/stop-propagation/index.mjs +1 -1
- package/esm2020/lib/stop-propagation/stop-drop-propagation.directive.mjs +1 -1
- package/esm2020/lib/stop-propagation/stop-propagation.directive.mjs +1 -1
- package/esm2020/lib/stop-propagation/stop-propagation.module.mjs +1 -1
- package/esm2020/lib/table/index.mjs +1 -1
- package/esm2020/lib/table/table-action-color.enum.mjs +1 -1
- package/esm2020/lib/table/table-database.mjs +1 -1
- package/esm2020/lib/table/table-datasource.mjs +1 -1
- package/esm2020/lib/table/table-model.interface.mjs +1 -1
- package/esm2020/lib/table/table.component.mjs +2 -2
- package/esm2020/lib/table/table.module.mjs +1 -1
- package/esm2020/lib/tool/index.mjs +1 -1
- package/esm2020/lib/tool/shared/index.mjs +1 -1
- package/esm2020/lib/tool/shared/tool-component.mjs +1 -1
- package/esm2020/lib/tool/shared/tool.interface.mjs +1 -1
- package/esm2020/lib/tool/shared/tool.service.mjs +1 -1
- package/esm2020/lib/tool/shared/toolbox.enums.mjs +1 -1
- package/esm2020/lib/tool/shared/toolbox.mjs +1 -1
- package/esm2020/lib/tool/tool.module.mjs +1 -1
- package/esm2020/lib/tool/toolbox/toolbox.animation.mjs +1 -1
- package/esm2020/lib/tool/toolbox/toolbox.component.mjs +2 -2
- package/esm2020/lib/tool/toolbox/toolbox.module.mjs +1 -1
- package/esm2020/lib/widget/index.mjs +1 -1
- package/esm2020/lib/widget/shared/index.mjs +1 -1
- package/esm2020/lib/widget/shared/widget.interfaces.mjs +1 -1
- package/esm2020/lib/widget/shared/widget.mjs +1 -1
- package/esm2020/lib/widget/shared/widget.service.mjs +1 -1
- package/esm2020/lib/widget/widget-outlet/widget-outlet.component.mjs +2 -2
- package/esm2020/lib/widget/widget-outlet/widget-outlet.module.mjs +1 -1
- package/esm2020/lib/widget/widget.module.mjs +1 -1
- package/esm2020/lib/workspace/index.mjs +1 -1
- package/esm2020/lib/workspace/shared/index.mjs +1 -1
- package/esm2020/lib/workspace/shared/store.mjs +1 -1
- package/esm2020/lib/workspace/shared/workspace.interfaces.mjs +1 -1
- package/esm2020/lib/workspace/shared/workspace.mjs +1 -1
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.component.mjs +2 -2
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +1 -1
- package/esm2020/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.mjs +2 -2
- package/esm2020/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.mjs +1 -1
- package/esm2020/lib/workspace/workspace.module.mjs +1 -1
- package/esm2020/public_api.mjs +1 -1
- package/fesm2015/igo2-common.mjs +53 -34
- package/fesm2015/igo2-common.mjs.map +1 -1
- package/fesm2020/igo2-common.mjs +53 -34
- package/fesm2020/igo2-common.mjs.map +1 -1
- package/lib/context-menu/long-press.directive.d.ts +9 -1
- package/package.json +3 -3
- package/style/common.theming.scss +12 -12
- package/style/partial/action.scss +18 -18
- package/style/partial/common.variables.scss +8 -8
package/fesm2015/igo2-common.mjs
CHANGED
|
@@ -21,7 +21,7 @@ import { Media, IgoLanguageModule } from '@igo2/core';
|
|
|
21
21
|
import { t } from 'typy';
|
|
22
22
|
import { ReplaySubject, BehaviorSubject, combineLatest, of, Observable, isObservable, fromEvent, throwError, merge, Subject } from 'rxjs';
|
|
23
23
|
import { map, skip, debounceTime, catchError, tap, switchMap, filter, take, distinctUntilChanged } from 'rxjs/operators';
|
|
24
|
-
import { uuid, ObjectUtils } from '@igo2/utils';
|
|
24
|
+
import { uuid, ObjectUtils, userAgent } from '@igo2/utils';
|
|
25
25
|
import * as i4 from '@angular/material/form-field';
|
|
26
26
|
import { MatFormFieldControl, MatFormFieldModule } from '@angular/material/form-field';
|
|
27
27
|
import * as i3 from '@angular/material/select';
|
|
@@ -1782,7 +1782,7 @@ EntitySelectorComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Ent
|
|
|
1782
1782
|
(function () {
|
|
1783
1783
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EntitySelectorComponent, [{
|
|
1784
1784
|
type: Component,
|
|
1785
|
-
args: [{ selector: 'igo-entity-selector', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field class=\"igo-entity-selector\">\
|
|
1785
|
+
args: [{ selector: 'igo-entity-selector', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field class=\"igo-entity-selector\">\n <mat-select\n [disabled]=\"disabled\"\n [value]=\"selected$ | async\"\n [multiple]=\"multi\"\n [placeholder]=\"placeholder\"\n (selectionChange)=\"onSelectionChange($event)\">\n <mat-option *ngIf=\"emptyText !== undefined && multi === false\" [value]=\"emptyValue\">{{emptyText}}</mat-option>\n <mat-option *ngIf=\"multi === true\" [value]=\"multiSelectValue\">{{multiText$ | async}}</mat-option>\n <ng-template ngFor let-record [ngForOf]=\"store.stateView.all$() | async\">\n <mat-option [value]=\"record.entity\">\n {{titleAccessor(record.entity)}}\n </mat-option>\n </ng-template>\n </mat-select>\n</mat-form-field>\n", styles: ["mat-form-field{width:100%}\n"] }]
|
|
1786
1786
|
}], function () { return [{ type: i0.ChangeDetectorRef }]; }, { store: [{
|
|
1787
1787
|
type: Input
|
|
1788
1788
|
}], titleAccessor: [{
|
|
@@ -1945,7 +1945,7 @@ EntityTablePaginatorComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ typ
|
|
|
1945
1945
|
(function () {
|
|
1946
1946
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EntityTablePaginatorComponent, [{
|
|
1947
1947
|
type: Component,
|
|
1948
|
-
args: [{ selector: 'igo-entity-table-paginator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-paginator \
|
|
1948
|
+
args: [{ selector: 'igo-entity-table-paginator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-paginator \n [disabled]=\"disabled\"\n [hidePageSize]=\"hidePageSize\"\n [length]=\"length\"\n [pageIndex]=\"pageIndex\"\n [pageSize]=\"pageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [showFirstLastButtons]=\"showFirstLastButtons\"\n (page)=\"emitPaginator()\">\n</mat-paginator>\n", styles: [":host{margin-top:-10px;padding-right:15px}@media only screen and (orientation:portrait) and (max-width: 599px),only screen and (orientation:landscape) and (max-width: 959px){:host{margin-top:0;padding-right:5px}}\n"] }]
|
|
1949
1949
|
}], function () { return [{ type: i1$1.LanguageService }, { type: i1$1.MediaService }]; }, { entitySortChange$: [{
|
|
1950
1950
|
type: Input
|
|
1951
1951
|
}], store: [{
|
|
@@ -1965,7 +1965,7 @@ EntityTablePaginatorComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ typ
|
|
|
1965
1965
|
class ImageErrorDirective {
|
|
1966
1966
|
constructor(el) {
|
|
1967
1967
|
this.el = el;
|
|
1968
|
-
this.errorImageUrl = '
|
|
1968
|
+
this.errorImageUrl = './assets/igo2/common/images/na.png';
|
|
1969
1969
|
this.hideError = false;
|
|
1970
1970
|
}
|
|
1971
1971
|
onError(event) {
|
|
@@ -3667,7 +3667,7 @@ EntityTableComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Entity
|
|
|
3667
3667
|
(function () {
|
|
3668
3668
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EntityTableComponent, [{
|
|
3669
3669
|
type: Component,
|
|
3670
|
-
args: [{ selector: 'igo-entity-table', changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: MatFormFieldControl, useExisting: EntityTableComponent }], template: "<div class=\"table-container\" [ngStyle]=\"{'height': tableHeight}\">\r\n <table mat-table matSort [ngClass]=\"getTableClass()\" [dataSource]=\"dataSource\" [trackBy]=\"getTrackByFunction()\" (matSortChange)=\"onSort($event)\">\r\n <ng-container matColumnDef=\"selectionCheckbox\" class=\"mat-cell-checkbox\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container *ngIf=\"selectMany\">\r\n <ng-container *ngIf=\"selectionState$ | async as selectionState\">\r\n <mat-checkbox (change)=\"onToggleRows($event.checked)\" [checked]=\"selectionState === entityTableSelectionState.All\"\r\n [indeterminate]=\"selectionState === entityTableSelectionState.Some\">\r\n </mat-checkbox>\r\n </ng-container>\r\n </ng-container>\r\n </th>\r\n <td mat-cell *matCellDef=\"let record\">\r\n <mat-checkbox (mousedown)=\"$event.shiftKey ? $event.preventDefault() : null\" (click)=\"$event.shiftKey ?\r\n onShiftToggleRow(!rowIsSelected(record), record, $event) : $event.stopPropagation()\" (change)=\"onToggleRow($event.checked,record)\"\r\n [checked]=\"rowIsSelected(record)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container [matColumnDef]=\"column.name\" *ngFor=\"let column of template.columns\">\r\n <ng-container *ngIf=\"columnIsSortable(column)\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header [matTooltip]=\"column.tooltip ? column.tooltip : undefined\">\r\n {{column.title}}\r\n </th>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!columnIsSortable(column)\">\r\n <th mat-header-cell *matHeaderCellDef [matTooltip]=\"column.tooltip ? column.tooltip : undefined\">\r\n {{column.title}}\r\n </th>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"getColumnRenderer(column) as columnRenderer\">\r\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.Default\">\r\n <ng-container *matCellDef=\"let record\">\r\n <td mat-cell class=\"mat-cell-text\" *ngIf=\"!isUrl(getValue(record, column));else isAnUrlDefault\" [ngClass]=\"getCellClass(record, column)\">\r\n {{getValue(record, column)}}\r\n </td>\r\n <ng-template #isAnUrlDefault>\r\n <td mat-cell class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\r\n <a href=\"{{getValue(record, column)}}\" target='_blank' rel=\"noopener noreferrer\" (click)=\"$event.stopPropagation()\">\r\n <img igoImageError *ngIf=\"isImg(getValue(record, column));else notImg\" src=\"{{(getValue(record, column) | secureImage) | async}}\" width=\"50\" heigth=\"auto\">\r\n <ng-template #notImg><span>{{\r\n 'igo.common.entity-table.targetHtmlUrl' | translate }}\r\n </span></ng-template>\r\n </a>\r\n </td>\r\n </ng-template>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.HTML\">\r\n <ng-container *matCellDef=\"let record\">\r\n <td mat-cell class=\"mat-cell-text\" *ngIf=\"!isUrl(getValue(record, column));else isAnUrlHTML\" [ngClass]=\"getCellClass(record, column)\"\r\n [innerHTML]=\"getValue(record, column)\">\r\n </td>\r\n <ng-template #isAnUrlHTML>\r\n <td mat-cell class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\r\n <a href=\"{{getValue(record, column)}}\" target='_blank' rel=\"noopener noreferrer\" (click)=\"$event.stopPropagation()\">\r\n <img igoImageError *ngIf=\"isImg(getValue(record, column));else notImg\" src=\"{{(getValue(record, column) | secureImage) | async}}\" width=\"50\" heigth=\"auto\">\r\n <ng-template #notImg><span>{{ 'igo.geo.targetHtmlUrl' |\r\n translate }} </span></ng-template>\r\n </a>\r\n </td>\r\n </ng-template>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.UnsanitizedHTML\">\r\n <ng-container *matCellDef=\"let record\">\r\n <td mat-cell class=\"mat-cell-text edition\" [formGroup]=\"formGroup\" *ngIf=\"isEdition(record);else isUnsanitizedHTML\"\r\n [ngClass]=\"getCellClass(record, column)\">\r\n <div class=\"date-picker\" *ngIf=\"column.type === 'date'\">\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <input matInput [matDatepicker]=\"picker\" [formControlName]=\"column.name\" value=\"{{getValue(record, column)}}\"\r\n (dateChange)=\"onDateChange(column.name, record, $event)\">\r\n <mat-datepicker #picker></mat-datepicker>\r\n </div>\r\n <input matInput type=\"time\" *ngIf=\"column.type === 'time'\" [formControlName]=\"column.name\" step=\"900\" (focus)=\"column.onFocus($event)\"\r\n (keypress)=\"column.onChange($event)\" (blur)=\"column.onBlur($event)\">\r\n <input matInput type=\"number\" class=\"class_number_edition\" *ngIf=\"column.type === 'number'\" [formControlName]=\"column.name\" step=\"{{column.step}}\"\r\n value=\"{{getValue(record,column)}}\" (input)=\"onValueChange(column.name, record, $event)\"\r\n readonly=\"{{getValidationAttributeValue(column, 'readonly')}}\" required=\"{{getValidationAttributeValue(column, 'mandatory')}}\"\r\n min=\"{{getValidationAttributeValue(column, 'minValue')}}\" max=\"{{getValidationAttributeValue(column, 'maxValue')}}\">\r\n <input matInput type=\"text\" *ngIf=\"!column.type || column.type ==='string'\" [formControlName]=\"column.name\"\r\n value=\"{{getValue(record, column)}}\" (input)=\"onValueChange(column.name, record, $event)\"\r\n readonly=\"{{getValidationAttributeValue(column, 'readonly')}}\" required=\"{{getValidationAttributeValue(column, 'mandatory')}}\">\r\n <mat-checkbox *ngIf=\"column.type === 'boolean'\" [formControlName]=\"column.name\" [checked]=\"getValue(record,column)\"\r\n (change)=\"onBooleanValueChange(column.name, record,$event)\"></mat-checkbox>\r\n <mat-select *ngIf=\"column.type === 'list'\" required=\"{{getValidationAttributeValue(column, 'mandatory')}}\"\r\n [formControlName]=\"column.name\" [multiple]=\"column.multiple\" (selectionChange)=\"onSelectValueChange(column.name, record, $event)\"\r\n [value]=\"getValue(record, column)\">\r\n <mat-option *ngFor=\"let option of column.domainValues\" [value]=\"option.id\" [disabled]=\"option.disabled\">\r\n {{ option.value }}\r\n </mat-option>\r\n </mat-select>\r\n <input matInput type=\"text\" [formControlName]=\"column.name\" *ngIf=\"column.type === 'autocomplete'\" [matAutocomplete]=\"auto\"\r\n required=\"{{getValidationAttributeValue(column, 'mandatory')}}\" value=\"{{getValue(record, column)}}\"\r\n readonly=\"{{getValidationAttributeValue(column, 'readonly')}}\">\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onAutocompleteValueChange(column, record, $event)\"\r\n panelWidth=\"430px\">\r\n <mat-option *ngFor=\"let option of filteredOptions[column.name] | async\"\r\n [value]=\"option.id\">\r\n {{ option.value }}\r\n </mat-option>\r\n </mat-autocomplete>\r\n </td>\r\n <ng-template #isUnsanitizedHTML>\r\n <td mat-cell class=\"mat-cell-text\" *ngIf=\"!isUrl(getValue(record, column));else isAnUrlUnsanitizedHTML\" [ngClass]=\"getCellClass(record, column)\"\r\n [innerHTML]=\"getValue(record, column) | sanitizeHtml\">\r\n </td>\r\n <ng-template #isAnUrlUnsanitizedHTML>\r\n <td mat-cell class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\r\n <a href=\"{{getValue(record, column)}}\" target='_blank' rel=\"noopener noreferrer\" (click)=\"$event.stopPropagation()\">\r\n <img igoImageError *ngIf=\"isImg(getValue(record, column));else notImg\" src=\"{{(getValue(record, column) | secureImage) | async}}\" width=\"50\" heigth=\"auto\">\r\n <ng-template #notImg><span>{{ 'igo.geo.targetHtmlUrl' | translate }} </span></ng-template>\r\n </a>\r\n </td>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.Icon\">\r\n <td mat-cell *matCellDef=\"let record\" class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\r\n <mat-icon *ngIf=\"column.onClick\" svgIcon=\"{{getValue(record, column)|| column.icon}}\" (click)=\"column.onClick($event)\"></mat-icon>\r\n <mat-icon *ngIf=\"!column.onClick\" svgIcon=\"{{getValue(record, column)|| column.icon}}\"></mat-icon>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.ButtonGroup\">\r\n <ng-container *matCellDef=\"let record\">\r\n <td mat-cell class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\r\n <span *ngFor=\"let button of getValue(record, column)\">\r\n <ng-container *ngIf=\"isEdition(record) === button.editMode || button.editMode === undefined\">\r\n <button *ngIf=\"button.style === 'mat-icon-button'\" igoStopPropagation mat-icon-button\r\n [color]=\"button.color\" (mousedown)=\"onButtonClick(button.click, record)\" [disabled]=\"button.disabled\">\r\n <mat-icon svgIcon=\"{{button.icon}}\"></mat-icon>\r\n </button>\r\n <button *ngIf=\"button.style !== 'mat-icon-button'\" igoStopPropagation mat-mini-fab\r\n [color]=\"button.color\" (mousedown)=\"onButtonClick(button.click, record)\" [disabled]=\"button.disabled\">\r\n <mat-icon svgIcon=\"{{button.icon}}\"></mat-icon>\r\n </button>\r\n </ng-container>\r\n </span>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"headers; sticky: fixedHeader;\" [ngClass]=\"getHeaderClass()\">\r\n </tr>\r\n <tr mat-row igoEntityTableRow *matRowDef=\"let record; columns: headers;\" [scrollBehavior]=\"scrollBehavior\" [ngClass]=\"getRowClass(record)\" [selection]=\"selection\" [selected]=\"rowIsSelected(record)\" (select)=\"onRowSelect(record)\" (click)=\"onRowClick(record)\">\r\n </tr>\r\n </table>\r\n <igo-entity-table-paginator *ngIf=\"withPaginator\" [store]=\"store\" [paginatorOptions]=\"paginatorOptions\" [entitySortChange$]=\"entitySortChange$\" (paginatorChange)=\"paginatorChange($event)\">\r\n </igo-entity-table-paginator>\r\n</div>", styles: [":host{width:100%;height:100%;display:block}:host.table-compact tr.mat-header-row,:host.table-compact ::ng-deep .mat-checkbox .mat-checkbox-ripple{height:36px}:host.table-compact tr.mat-row,:host.table-compact ::ng-deep .mat-checkbox .mat-checkbox-ripple{height:28px}.table-container{display:flex;flex-direction:column;height:100%;overflow:auto;flex:1 1 auto}.mat-cell-text{overflow:hidden;word-wrap:break-word}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0 3px}entity-table table.igo-entity-table-with-selection tr:hover{-o-box-shadow:2px 0px 2px 0px #dddddd;box-shadow:2px 0 2px #ddd;cursor:pointer}table button{margin:7px}.class_hidden{visibility:hidden}.class_display_none{display:none}.class_boolean,.class_icon,.class_number{text-align:center;padding-right:35px!important}.class_sting,.class_text,.class_number_edition{text-align:left}td.edition{background:rgba(166,166,166,.2)}input{border-bottom:1px solid darkgrey}\n"] }]
|
|
3670
|
+
args: [{ selector: 'igo-entity-table', changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: MatFormFieldControl, useExisting: EntityTableComponent }], template: "<div class=\"table-container\" [ngStyle]=\"{'height': tableHeight}\">\n <table mat-table matSort [ngClass]=\"getTableClass()\" [dataSource]=\"dataSource\" [trackBy]=\"getTrackByFunction()\" (matSortChange)=\"onSort($event)\">\n <ng-container matColumnDef=\"selectionCheckbox\" class=\"mat-cell-checkbox\">\n <th mat-header-cell *matHeaderCellDef>\n <ng-container *ngIf=\"selectMany\">\n <ng-container *ngIf=\"selectionState$ | async as selectionState\">\n <mat-checkbox (change)=\"onToggleRows($event.checked)\" [checked]=\"selectionState === entityTableSelectionState.All\"\n [indeterminate]=\"selectionState === entityTableSelectionState.Some\">\n </mat-checkbox>\n </ng-container>\n </ng-container>\n </th>\n <td mat-cell *matCellDef=\"let record\">\n <mat-checkbox (mousedown)=\"$event.shiftKey ? $event.preventDefault() : null\" (click)=\"$event.shiftKey ?\n onShiftToggleRow(!rowIsSelected(record), record, $event) : $event.stopPropagation()\" (change)=\"onToggleRow($event.checked,record)\"\n [checked]=\"rowIsSelected(record)\">\n </mat-checkbox>\n </td>\n </ng-container>\n\n <ng-container [matColumnDef]=\"column.name\" *ngFor=\"let column of template.columns\">\n <ng-container *ngIf=\"columnIsSortable(column)\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header [matTooltip]=\"column.tooltip ? column.tooltip : undefined\">\n {{column.title}}\n </th>\n </ng-container>\n\n <ng-container *ngIf=\"!columnIsSortable(column)\">\n <th mat-header-cell *matHeaderCellDef [matTooltip]=\"column.tooltip ? column.tooltip : undefined\">\n {{column.title}}\n </th>\n </ng-container>\n\n <ng-container *ngIf=\"getColumnRenderer(column) as columnRenderer\">\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.Default\">\n <ng-container *matCellDef=\"let record\">\n <td mat-cell class=\"mat-cell-text\" *ngIf=\"!isUrl(getValue(record, column));else isAnUrlDefault\" [ngClass]=\"getCellClass(record, column)\">\n {{getValue(record, column)}}\n </td>\n <ng-template #isAnUrlDefault>\n <td mat-cell class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\n <a href=\"{{getValue(record, column)}}\" target='_blank' rel=\"noopener noreferrer\" (click)=\"$event.stopPropagation()\">\n <img igoImageError *ngIf=\"isImg(getValue(record, column));else notImg\" src=\"{{(getValue(record, column) | secureImage) | async}}\" width=\"50\" heigth=\"auto\">\n <ng-template #notImg><span>{{\n 'igo.common.entity-table.targetHtmlUrl' | translate }}\n </span></ng-template>\n </a>\n </td>\n </ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.HTML\">\n <ng-container *matCellDef=\"let record\">\n <td mat-cell class=\"mat-cell-text\" *ngIf=\"!isUrl(getValue(record, column));else isAnUrlHTML\" [ngClass]=\"getCellClass(record, column)\"\n [innerHTML]=\"getValue(record, column)\">\n </td>\n <ng-template #isAnUrlHTML>\n <td mat-cell class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\n <a href=\"{{getValue(record, column)}}\" target='_blank' rel=\"noopener noreferrer\" (click)=\"$event.stopPropagation()\">\n <img igoImageError *ngIf=\"isImg(getValue(record, column));else notImg\" src=\"{{(getValue(record, column) | secureImage) | async}}\" width=\"50\" heigth=\"auto\">\n <ng-template #notImg><span>{{ 'igo.geo.targetHtmlUrl' |\n translate }} </span></ng-template>\n </a>\n </td>\n </ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.UnsanitizedHTML\">\n <ng-container *matCellDef=\"let record\">\n <td mat-cell class=\"mat-cell-text edition\" [formGroup]=\"formGroup\" *ngIf=\"isEdition(record);else isUnsanitizedHTML\"\n [ngClass]=\"getCellClass(record, column)\">\n <div class=\"date-picker\" *ngIf=\"column.type === 'date'\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <input matInput [matDatepicker]=\"picker\" [formControlName]=\"column.name\" value=\"{{getValue(record, column)}}\"\n (dateChange)=\"onDateChange(column.name, record, $event)\">\n <mat-datepicker #picker></mat-datepicker>\n </div>\n <input matInput type=\"time\" *ngIf=\"column.type === 'time'\" [formControlName]=\"column.name\" step=\"900\" (focus)=\"column.onFocus($event)\"\n (keypress)=\"column.onChange($event)\" (blur)=\"column.onBlur($event)\">\n <input matInput type=\"number\" class=\"class_number_edition\" *ngIf=\"column.type === 'number'\" [formControlName]=\"column.name\" step=\"{{column.step}}\"\n value=\"{{getValue(record,column)}}\" (input)=\"onValueChange(column.name, record, $event)\"\n readonly=\"{{getValidationAttributeValue(column, 'readonly')}}\" required=\"{{getValidationAttributeValue(column, 'mandatory')}}\"\n min=\"{{getValidationAttributeValue(column, 'minValue')}}\" max=\"{{getValidationAttributeValue(column, 'maxValue')}}\">\n <input matInput type=\"text\" *ngIf=\"!column.type || column.type ==='string'\" [formControlName]=\"column.name\"\n value=\"{{getValue(record, column)}}\" (input)=\"onValueChange(column.name, record, $event)\"\n readonly=\"{{getValidationAttributeValue(column, 'readonly')}}\" required=\"{{getValidationAttributeValue(column, 'mandatory')}}\">\n <mat-checkbox *ngIf=\"column.type === 'boolean'\" [formControlName]=\"column.name\" [checked]=\"getValue(record,column)\"\n (change)=\"onBooleanValueChange(column.name, record,$event)\"></mat-checkbox>\n <mat-select *ngIf=\"column.type === 'list'\" required=\"{{getValidationAttributeValue(column, 'mandatory')}}\"\n [formControlName]=\"column.name\" [multiple]=\"column.multiple\" (selectionChange)=\"onSelectValueChange(column.name, record, $event)\"\n [value]=\"getValue(record, column)\">\n <mat-option *ngFor=\"let option of column.domainValues\" [value]=\"option.id\" [disabled]=\"option.disabled\">\n {{ option.value }}\n </mat-option>\n </mat-select>\n <input matInput type=\"text\" [formControlName]=\"column.name\" *ngIf=\"column.type === 'autocomplete'\" [matAutocomplete]=\"auto\"\n required=\"{{getValidationAttributeValue(column, 'mandatory')}}\" value=\"{{getValue(record, column)}}\"\n readonly=\"{{getValidationAttributeValue(column, 'readonly')}}\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onAutocompleteValueChange(column, record, $event)\"\n panelWidth=\"430px\">\n <mat-option *ngFor=\"let option of filteredOptions[column.name] | async\"\n [value]=\"option.id\">\n {{ option.value }}\n </mat-option>\n </mat-autocomplete>\n </td>\n <ng-template #isUnsanitizedHTML>\n <td mat-cell class=\"mat-cell-text\" *ngIf=\"!isUrl(getValue(record, column));else isAnUrlUnsanitizedHTML\" [ngClass]=\"getCellClass(record, column)\"\n [innerHTML]=\"getValue(record, column) | sanitizeHtml\">\n </td>\n <ng-template #isAnUrlUnsanitizedHTML>\n <td mat-cell class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\n <a href=\"{{getValue(record, column)}}\" target='_blank' rel=\"noopener noreferrer\" (click)=\"$event.stopPropagation()\">\n <img igoImageError *ngIf=\"isImg(getValue(record, column));else notImg\" src=\"{{(getValue(record, column) | secureImage) | async}}\" width=\"50\" heigth=\"auto\">\n <ng-template #notImg><span>{{ 'igo.geo.targetHtmlUrl' | translate }} </span></ng-template>\n </a>\n </td>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.Icon\">\n <td mat-cell *matCellDef=\"let record\" class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\n <mat-icon *ngIf=\"column.onClick\" svgIcon=\"{{getValue(record, column)|| column.icon}}\" (click)=\"column.onClick($event)\"></mat-icon>\n <mat-icon *ngIf=\"!column.onClick\" svgIcon=\"{{getValue(record, column)|| column.icon}}\"></mat-icon>\n </td>\n </ng-container>\n <ng-container *ngIf=\"columnRenderer === entityTableColumnRenderer.ButtonGroup\">\n <ng-container *matCellDef=\"let record\">\n <td mat-cell class=\"mat-cell-text\" [ngClass]=\"getCellClass(record, column)\">\n <span *ngFor=\"let button of getValue(record, column)\">\n <ng-container *ngIf=\"isEdition(record) === button.editMode || button.editMode === undefined\">\n <button *ngIf=\"button.style === 'mat-icon-button'\" igoStopPropagation mat-icon-button\n [color]=\"button.color\" (mousedown)=\"onButtonClick(button.click, record)\" [disabled]=\"button.disabled\">\n <mat-icon svgIcon=\"{{button.icon}}\"></mat-icon>\n </button>\n <button *ngIf=\"button.style !== 'mat-icon-button'\" igoStopPropagation mat-mini-fab\n [color]=\"button.color\" (mousedown)=\"onButtonClick(button.click, record)\" [disabled]=\"button.disabled\">\n <mat-icon svgIcon=\"{{button.icon}}\"></mat-icon>\n </button>\n </ng-container>\n </span>\n </td>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"headers; sticky: fixedHeader\" [ngClass]=\"getHeaderClass()\">\n </tr>\n <tr mat-row igoEntityTableRow *matRowDef=\"let record; columns: headers;\" [scrollBehavior]=\"scrollBehavior\" [ngClass]=\"getRowClass(record)\" [selection]=\"selection\" [selected]=\"rowIsSelected(record)\" (select)=\"onRowSelect(record)\" (click)=\"onRowClick(record)\">\n </tr>\n </table>\n <igo-entity-table-paginator *ngIf=\"withPaginator\" [store]=\"store\" [paginatorOptions]=\"paginatorOptions\" [entitySortChange$]=\"entitySortChange$\" (paginatorChange)=\"paginatorChange($event)\">\n </igo-entity-table-paginator>\n</div>", styles: [":host{width:100%;height:100%;display:block}:host.table-compact tr.mat-header-row,:host.table-compact ::ng-deep .mat-checkbox .mat-checkbox-ripple{height:36px}:host.table-compact tr.mat-row,:host.table-compact ::ng-deep .mat-checkbox .mat-checkbox-ripple{height:28px}.table-container{display:flex;flex-direction:column;height:100%;overflow:auto;flex:1 1 auto}.mat-cell-text{overflow:hidden;word-wrap:break-word}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0 3px}entity-table table.igo-entity-table-with-selection tr:hover{-o-box-shadow:2px 0px 2px 0px #dddddd;box-shadow:2px 0 2px #ddd;cursor:pointer}table button{margin:7px}.class_hidden{visibility:hidden}.class_display_none{display:none}.class_boolean,.class_icon,.class_number{text-align:center;padding-right:35px!important}.class_sting,.class_text,.class_number_edition{text-align:left}td.edition{background:rgba(166,166,166,.2)}input{border-bottom:1px solid darkgrey}\n"] }]
|
|
3671
3671
|
}], function () {
|
|
3672
3672
|
return [{ type: i0.ChangeDetectorRef }, { type: i1$4.UntypedFormBuilder }, { type: i2$1.FocusMonitor }, { type: i0.ElementRef }, { type: i1$4.NgControl, decorators: [{
|
|
3673
3673
|
type: Optional
|
|
@@ -3952,7 +3952,7 @@ ActionbarItemComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Acti
|
|
|
3952
3952
|
(function () {
|
|
3953
3953
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionbarItemComponent, [{
|
|
3954
3954
|
type: Component,
|
|
3955
|
-
args: [{ selector: 'igo-actionbar-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-list-item *ngIf=\"!action.checkbox\"\
|
|
3955
|
+
args: [{ selector: 'igo-actionbar-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-list-item *ngIf=\"!action.checkbox\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"withTooltip ? ((tooltip$ | async) || title | translate) : ''\"\n [ngClass]=\"ngClass$ | async\"\n (click)=\"onClick()\">\n <button *ngIf=\"withIcon\"\n mat-list-avatar\n mat-icon-button\n [color]=\"color\"\n [disabled]=\"disabled$ | async\">\n <mat-icon *ngIf=\"withIcon\" svgIcon=\"{{icon$ | async}}\"></mat-icon>\n </button>\n <h4 *ngIf=\"withTitle\" matLine>{{title | translate}}</h4>\n</mat-list-item>\n\n<mat-list-item class=\"item-checkbox\" *ngIf=\"action.checkbox\"\n matTooltipClass=\"actionbarItemTooltip\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"withTooltip ? ((tooltip$ | async) || title | translate) : ''\"\n [ngClass]=\"ngClass$ | async\">\n <mat-checkbox *ngIf=\"withTitle\"\n (change)=\"action.handler()\"\n [checked]=\"checkCondition$ | async\">\n {{title | translate}}\n </mat-checkbox>\n</mat-list-item>\n", styles: ["mat-list-item.igo-actionbar-item-disabled{color:#00000042;cursor:default!important}mat-list-item.igo-actionbar-item-no-display{display:none}mat-checkbox{padding:12px}.item-checkbox{height:56px}.item-checkbox ::ng-deep .mat-checkbox-label{margin-left:20px}\n"] }]
|
|
3956
3956
|
}], function () { return []; }, { action: [{
|
|
3957
3957
|
type: Input
|
|
3958
3958
|
}], color: [{
|
|
@@ -4321,7 +4321,7 @@ ActionbarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Actionba
|
|
|
4321
4321
|
(function () {
|
|
4322
4322
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionbarComponent, [{
|
|
4323
4323
|
type: Component,
|
|
4324
|
-
args: [{ selector: 'igo-actionbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-list *ngIf=\"mode === actionbarMode.Dock\">\
|
|
4324
|
+
args: [{ selector: 'igo-actionbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-list *ngIf=\"mode === actionbarMode.Dock\">\n\n <div *ngIf=\"heightCondition && positionConditionTop && isDesktop\"\n id=\"topChevron\">\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollUp' | translate\"\n (click)=\"scrollUp()\">\n <mat-icon svgIcon=\"chevron-up\"></mat-icon>\n </button>\n </div>\n\n <igo-actionbar-item\n *ngIf=\"withToggleButton\"\n color=\"accent\"\n [withTitle]=\"false\"\n [withIcon]=\"true\"\n [color]=\"color\"\n [disabled]=\"store.view.empty\"\n [action]=\"toggleCollapseAction\"\n (trigger)=\"onTriggerAction(toggleCollapseAction)\">\n </igo-actionbar-item>\n\n <ng-template #buttonContent *ngIf=\"!collapsed\" ngFor let-action [ngForOf]=\"store.view.all$() | async\">\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle\"\n [withIcon]=\"withIcon\"\n [withTooltip]=\"withTooltip\"\n [color]=\"color\"\n [disabled]=\"store.state.get(action).disabled\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\">\n </igo-actionbar-item>\n </ng-template>\n\n <div *ngIf=\"heightCondition && positionConditionLow && isDesktop\"\n id=\"lowChevron\">\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.scrollDown' | translate\"\n (click)=\"scrollDown()\">\n <mat-icon svgIcon=\"chevron-down\"></mat-icon>\n </button>\n </div>\n\n</mat-list>\n\n<div *ngIf=\"mode === actionbarMode.Overlay\">\n <button class=\"buttonOverlay\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.common.actionbar.icon' | translate\"\n [matMenuTriggerFor]=\"actionbarMenu\"\n [disabled]=\"store.view.empty\"\n [color]=\"iconColor\">\n <mat-icon [svgIcon]=\"icon\"></mat-icon>\n </button>\n\n <mat-menu\n #actionbarMenu=\"matMenu\"\n class=\"igo-compact-menu igo-no-min-width-menu\"\n overlapTrigger=\"true\"\n [xPosition]=\"xPosition\"\n [yPosition]=\"yPosition\"\n [class]=\"overlayClass\">\n\n <mat-list>\n <ng-template ngFor let-action [ngForOf]=\"store.view.all$() | async\">\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle\"\n [withIcon]=\"withIcon\"\n [color]=\"color\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\">\n </igo-actionbar-item>\n </ng-template>\n </mat-list>\n </mat-menu>\n</div>\n<mat-card *ngIf=\"mode === actionbarMode.Context\" class=\"context-menu-card mat-elevation-z4\">\n <mat-list>\n <ng-template ngFor let-action [ngForOf]=\"store.view.all$() | async\">\n <igo-actionbar-item\n color=\"accent\"\n [withTitle]=\"withTitle\"\n [withIcon]=\"withIcon\"\n [color]=\"color\"\n [action]=\"action\"\n (trigger)=\"onTriggerAction(action)\">\n </igo-actionbar-item>\n <br/>\n </ng-template>\n </mat-list>\n</mat-card>\n", styles: [":host{display:block;height:100%;overflow:auto;position:relative}button{margin:4px}.buttonOverlay{margin:0}mat-list{padding-top:0}:host.horizontal{max-width:100%;overflow:visible;overflow:initial}:host.horizontal mat-list{width:auto;white-space:nowrap}:host.horizontal igo-actionbar-item{display:inline-block}:host ::ng-deep .mat-list .mat-list-item .mat-list-text>*{white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;max-height:36px;line-height:18px;-webkit-box-orient:vertical;-webkit-line-clamp:2}:host ::ng-deep .mat-list-base .mat-list-item.mat-list-item-with-avatar{height:46px}:host ::ng-deep .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content{display:-webkit-flex;height:46px;padding:3px}:host ::ng-deep .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content>mat-icon{padding:8px}igo-actionbar-item ::ng-deep mat-list-item [mat-list-avatar]{height:auto;width:40px}igo-actionbar-item ::ng-deep mat-list-item:hover{cursor:pointer}.context-menu-card{padding:8px 3px;margin:10px}#topChevron{position:-webkit-sticky;position:sticky;top:0;background-color:#fff;z-index:3}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){#topChevron{position:fixed;top:auto;top:initial}}@supports (-ms-accelerator: true){#topChevron{position:fixed;top:auto;top:initial}}#lowChevron{position:fixed;position:-webkit-sticky;position:sticky;bottom:0;background-color:#fff;z-index:3}\n"] }]
|
|
4325
4325
|
}], function () { return [{ type: i1$5.Overlay }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.MediaService }]; }, { store: [{
|
|
4326
4326
|
type: Input
|
|
4327
4327
|
}], mode: [{
|
|
@@ -4459,7 +4459,7 @@ BackdropComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BackdropC
|
|
|
4459
4459
|
(function () {
|
|
4460
4460
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BackdropComponent, [{
|
|
4461
4461
|
type: Component,
|
|
4462
|
-
args: [{ selector: 'igo-backdrop', template: "<div [ngClass]=\"{'igo-backdrop-shown': shown}\"></div>\
|
|
4462
|
+
args: [{ selector: 'igo-backdrop', template: "<div [ngClass]=\"{'igo-backdrop-shown': shown}\"></div>\n", styles: [":host>div{position:absolute;top:0;bottom:0;left:0;right:0;background-color:#64646480;z-index:2;display:none}:host>div.igo-backdrop-shown{display:block}\n"] }]
|
|
4463
4463
|
}], function () { return []; }, { shown: [{
|
|
4464
4464
|
type: Input
|
|
4465
4465
|
}] });
|
|
@@ -4842,7 +4842,7 @@ CollapsibleComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Collap
|
|
|
4842
4842
|
(function () {
|
|
4843
4843
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CollapsibleComponent, [{
|
|
4844
4844
|
type: Component,
|
|
4845
|
-
args: [{ selector: 'igo-collapsible', template: "<mat-list-item>\
|
|
4845
|
+
args: [{ selector: 'igo-collapsible', template: "<mat-list-item>\n <mat-icon\n svgIcon=\"chevron-up\" \n class=\"igo-chevron\"\n mat-list-avatar\n igoCollapse\n [target]=\"content\"\n [collapsed]=\"collapsed\"\n (toggle)=\"collapsed = $event\">\n </mat-icon>\n <h4 matLine>{{title}}</h4>\n</mat-list-item>\n\n<div #content>\n <ng-content></ng-content>\n</div>\n", styles: [":host ::ng-deep .mat-list .mat-list-item.mat-list-avatar{height:auto;width:auto;padding:0}mat-list-item{overflow:hidden}\n"] }]
|
|
4846
4846
|
}], null, { title: [{
|
|
4847
4847
|
type: Input
|
|
4848
4848
|
}], collapsed: [{
|
|
@@ -4915,7 +4915,7 @@ ConfirmDialogComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Conf
|
|
|
4915
4915
|
(function () {
|
|
4916
4916
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ConfirmDialogComponent, [{
|
|
4917
4917
|
type: Component,
|
|
4918
|
-
args: [{ selector: 'igo-confirm-dialog', template: "<h2 mat-dialog-title class=\"mat-typography\">{{'igo.common.confirmDialog.title' |\u00A0translate}}</h2>\
|
|
4918
|
+
args: [{ selector: 'igo-confirm-dialog', template: "<h2 mat-dialog-title class=\"mat-typography\">{{'igo.common.confirmDialog.title' |\u00A0translate}}</h2>\n<div mat-dialog-content class=\"mat-typography\">{{confirmMessage}}</div>\n<div mat-dialog-actions>\n <button mat-button color=\"primary\" (click)=\"dialogRef.close(true)\">{{'igo.common.confirmDialog.confirmBtn' | translate}}</button>\n <button mat-button (click)=\"dialogRef.close(false)\">{{'igo.common.confirmDialog.cancelBtn' |\u00A0translate}}</button>\n</div>\n", styles: ["h2{margin:5px 0 10px}div[mat-dialog-content]{max-width:200px}div[mat-dialog-actions]{margin:10px 0 0}\n"] }]
|
|
4919
4919
|
}], function () { return [{ type: i1$6.MatDialogRef }]; }, null);
|
|
4920
4920
|
})();
|
|
4921
4921
|
|
|
@@ -5064,14 +5064,29 @@ ContextMenuDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: Contex
|
|
|
5064
5064
|
}] });
|
|
5065
5065
|
})();
|
|
5066
5066
|
|
|
5067
|
+
/**
|
|
5068
|
+
* IgoLongPress trigger longpress event after a define duration.
|
|
5069
|
+
* This directive exist to patch the unavailable contextmenu event on iOS.
|
|
5070
|
+
* @param touchDuration touch duration in ms, default value is 400ms
|
|
5071
|
+
* @param iOSOnly define if longpress is triggered only for iOS, default value = true
|
|
5072
|
+
*/
|
|
5067
5073
|
class LongPressDirective {
|
|
5068
5074
|
constructor() {
|
|
5075
|
+
this.touchDuration = 400;
|
|
5076
|
+
this.onlyIOS = true;
|
|
5069
5077
|
this.longpress = new EventEmitter();
|
|
5070
5078
|
}
|
|
5071
5079
|
touchstart(e) {
|
|
5072
5080
|
this.touchTimeout = setTimeout(() => {
|
|
5073
|
-
this.
|
|
5074
|
-
|
|
5081
|
+
if (this.onlyIOS) {
|
|
5082
|
+
if (userAgent.getOSName() === 'iOS') {
|
|
5083
|
+
this.longpress.emit(e);
|
|
5084
|
+
}
|
|
5085
|
+
}
|
|
5086
|
+
else {
|
|
5087
|
+
this.longpress.emit(e);
|
|
5088
|
+
}
|
|
5089
|
+
}, this.touchDuration);
|
|
5075
5090
|
}
|
|
5076
5091
|
touchend() {
|
|
5077
5092
|
this.touchEnd();
|
|
@@ -5085,14 +5100,18 @@ LongPressDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: LongPres
|
|
|
5085
5100
|
if (rf & 1) {
|
|
5086
5101
|
i0.ɵɵlistener("touchstart", function LongPressDirective_touchstart_HostBindingHandler($event) { return ctx.touchstart($event); })("touchmove", function LongPressDirective_touchmove_HostBindingHandler() { return ctx.touchend(); })("touchcancel", function LongPressDirective_touchcancel_HostBindingHandler() { return ctx.touchend(); })("touchend", function LongPressDirective_touchend_HostBindingHandler() { return ctx.touchend(); });
|
|
5087
5102
|
}
|
|
5088
|
-
}, outputs: { longpress: "longpress" } });
|
|
5103
|
+
}, inputs: { touchDuration: "touchDuration", onlyIOS: "onlyIOS" }, outputs: { longpress: "longpress" } });
|
|
5089
5104
|
(function () {
|
|
5090
5105
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LongPressDirective, [{
|
|
5091
5106
|
type: Directive,
|
|
5092
5107
|
args: [{
|
|
5093
5108
|
selector: '[igoLongPress]'
|
|
5094
5109
|
}]
|
|
5095
|
-
}], function () { return []; }, {
|
|
5110
|
+
}], function () { return []; }, { touchDuration: [{
|
|
5111
|
+
type: Input
|
|
5112
|
+
}], onlyIOS: [{
|
|
5113
|
+
type: Input
|
|
5114
|
+
}], longpress: [{
|
|
5096
5115
|
type: Output
|
|
5097
5116
|
}], touchstart: [{
|
|
5098
5117
|
type: HostListener,
|
|
@@ -5156,7 +5175,7 @@ CustomHtmlComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CustomH
|
|
|
5156
5175
|
(function () {
|
|
5157
5176
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CustomHtmlComponent, [{
|
|
5158
5177
|
type: Component,
|
|
5159
|
-
args: [{ selector: 'igo-custom-html', template: "<div class=\"custom-html\" [innerHTML]=\"html | sanitizeHtml\"></div>\
|
|
5178
|
+
args: [{ selector: 'igo-custom-html', template: "<div class=\"custom-html\" [innerHTML]=\"html | sanitizeHtml\"></div>\n", styles: [".custom-html{padding:20px}\n"] }]
|
|
5160
5179
|
}], function () { return []; }, { html: [{
|
|
5161
5180
|
type: Input
|
|
5162
5181
|
}] });
|
|
@@ -5680,7 +5699,7 @@ DynamicOutletComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Dyna
|
|
|
5680
5699
|
(function () {
|
|
5681
5700
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DynamicOutletComponent, [{
|
|
5682
5701
|
type: Component,
|
|
5683
|
-
args: [{ selector: 'igo-dynamic-outlet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #target></ng-template>\
|
|
5702
|
+
args: [{ selector: 'igo-dynamic-outlet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #target></ng-template>\n", styles: [":host{display:block;width:100%;height:100%}\n"] }]
|
|
5684
5703
|
}], function () { return [{ type: DynamicComponentService }, { type: i0.ChangeDetectorRef }]; }, { component: [{
|
|
5685
5704
|
type: Input
|
|
5686
5705
|
}], inputs: [{
|
|
@@ -5879,7 +5898,7 @@ FlexibleComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FlexibleC
|
|
|
5879
5898
|
(function () {
|
|
5880
5899
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FlexibleComponent, [{
|
|
5881
5900
|
type: Component,
|
|
5882
|
-
args: [{ selector: 'igo-flexible', template: "<div #flexibleMain class=\"igo-flexible-main {{state}} {{direction}}\">\
|
|
5901
|
+
args: [{ selector: 'igo-flexible', template: "<div #flexibleMain class=\"igo-flexible-main {{state}} {{direction}}\">\n <div class=\"igo-container\">\n <ng-content></ng-content>\n </div>\n</div>\n<div class=\"igo-flexible-fill\">\n <div>\n \t<div class=\"igo-container\">\n <ng-content select=\"[igoFlexibleFill]\"></ng-content>\n </div>\n </div>\n</div>\n", styles: [":host{display:flex;height:100%;width:100%}:host.column{flex-direction:column}:host.row{flex-direction:row}.igo-flexible-main{flex:0 0 auto;overflow:hidden}.igo-flexible-main.column{transition:height .25s ease-in}.igo-flexible-main.row{transition:width .25s ease-in}.igo-flexible-fill>div{position:absolute;top:0;bottom:0;left:0;right:0}.igo-container{width:calc(100% - 10px);height:100%;padding:5px 0;margin:0 5px;overflow:hidden;position:relative}::ng-deep .igo-flexible-fill{flex:1 1 auto;overflow:hidden;position:relative}::ng-deep .igo-content{height:100%;width:100%;overflow:auto}::ng-deep igo-panel{height:100%}\n"] }]
|
|
5883
5902
|
}], function () { return [{ type: i0.ElementRef }, { type: i1$1.MediaService }]; }, { main: [{
|
|
5884
5903
|
type: ViewChild,
|
|
5885
5904
|
args: ['flexibleMain', { static: true }]
|
|
@@ -6069,7 +6088,7 @@ FormComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormComponent
|
|
|
6069
6088
|
(function () {
|
|
6070
6089
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormComponent, [{
|
|
6071
6090
|
type: Component,
|
|
6072
|
-
args: [{ selector: 'igo-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "\
|
|
6091
|
+
args: [{ selector: 'igo-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n<form\n [autocomplete]=\"autocomplete\"\n [formGroup]=\"form.control\"\n (ngSubmit)=\"onSubmit()\">\n <div class=\"igo-form-body\" [ngClass]=\"{'igo-form-body-with-buttons': hasButtons}\">\n <div class=\"igo-form-content\">\n <ng-content></ng-content>\n </div>\n <div #buttons class=\"igo-form-buttons\">\n <ng-content select=\"[formButtons]\"></ng-content>\n </div>\n </div>\n</form>\n", styles: [":host{display:block}form{width:100%;height:100%}.igo-form-body,.igo-form-content{height:100%}.igo-form-body-with-buttons .igo-form-content{height:calc(100% - 56px)}.igo-form-content{display:flex}\n"] }]
|
|
6073
6092
|
}], function () { return []; }, { form: [{
|
|
6074
6093
|
type: Input
|
|
6075
6094
|
}], formData: [{
|
|
@@ -6305,7 +6324,7 @@ FormFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormFiel
|
|
|
6305
6324
|
(function () {
|
|
6306
6325
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormFieldComponent, [{
|
|
6307
6326
|
type: Component,
|
|
6308
|
-
args: [{ selector: 'igo-form-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "\
|
|
6327
|
+
args: [{ selector: 'igo-form-field', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n\n<ng-container *ngIf=\"field !== undefined\">\n <igo-dynamic-outlet\n [component]=\"getFieldComponent()\"\n [inputs]=\"getFieldInputs()\"\n [subscribers]=\"getFieldSubscribers()\">\n </igo-dynamic-outlet>\n</ng-container>\n", styles: ["::ng-deep mat-form-field{width:100%}::ng-deep .igo-form-disable-switch{margin-right:8px}\n"] }]
|
|
6309
6328
|
}], function () { return [{ type: FormFieldService }]; }, { field: [{
|
|
6310
6329
|
type: Input
|
|
6311
6330
|
}] });
|
|
@@ -6424,7 +6443,7 @@ FormFieldSelectComponent = __decorate([
|
|
|
6424
6443
|
(function () {
|
|
6425
6444
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormFieldSelectComponent, [{
|
|
6426
6445
|
type: Component,
|
|
6427
|
-
args: [{ selector: 'igo-form-field-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\
|
|
6446
|
+
args: [{ selector: 'igo-form-field-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <mat-select\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n <mat-option *ngFor=\"let choice of choices$ | async\" [value]=\"choice.value\">\n {{choice.title}}\n </mat-option>\n </mat-select>\n <mat-icon\n *ngIf=\"disableSwitch === true\"\n class=\"igo-form-disable-switch\"\n [svgIcon]=\"(disabled$ | async) === true ? 'checkbox-blank-outline' : 'checkbox-marked-outline'\"\n (click)=\"onDisableSwitchClick()\"\n matPrefix>\n </mat-icon>\n <mat-error *ngIf=\"formControl.errors\">{{getErrorMessage() | translate}}</mat-error>\n</mat-form-field>\n" }]
|
|
6428
6447
|
}], null, { choices: [{
|
|
6429
6448
|
type: Input
|
|
6430
6449
|
}], formControl: [{
|
|
@@ -6528,7 +6547,7 @@ FormFieldTextComponent = __decorate([
|
|
|
6528
6547
|
(function () {
|
|
6529
6548
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormFieldTextComponent, [{
|
|
6530
6549
|
type: Component,
|
|
6531
|
-
args: [{ selector: 'igo-form-field-text', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\
|
|
6550
|
+
args: [{ selector: 'igo-form-field-text', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <input\n matInput\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n <mat-icon\n *ngIf=\"disableSwitch === true\"\n class=\"igo-form-disable-switch\"\n [svgIcon]=\"(disabled$ | async) === true ? 'checkbox-blank-outline' : 'checkbox-marked-outline'\"\n (click)=\"onDisableSwitchClick()\"\n matPrefix>\n </mat-icon>\n <mat-error *ngIf=\"formControl.errors\">{{getErrorMessage() | translate}}</mat-error>\n</mat-form-field>\n" }]
|
|
6532
6551
|
}], null, { formControl: [{
|
|
6533
6552
|
type: Input
|
|
6534
6553
|
}], placeholder: [{
|
|
@@ -6631,7 +6650,7 @@ FormFieldTextareaComponent = __decorate([
|
|
|
6631
6650
|
(function () {
|
|
6632
6651
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormFieldTextareaComponent, [{
|
|
6633
6652
|
type: Component,
|
|
6634
|
-
args: [{ selector: 'igo-form-field-textarea', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\
|
|
6653
|
+
args: [{ selector: 'igo-form-field-textarea', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <textarea\n matInput\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n [formControl]=\"formControl\">\n </textarea>\n <mat-icon\n *ngIf=\"disableSwitch === true\"\n class=\"igo-form-disable-switch\"\n [svgIcon]=\"(disabled$ | async) === true ? 'checkbox-blank-outline' : 'checkbox-marked-outline'\"\n (click)=\"onDisableSwitchClick()\"\n matPrefix>\n </mat-icon>\n <mat-error *ngIf=\"formControl.errors\">{{getErrorMessage() | translate}}</mat-error>\n</mat-form-field>\n" }]
|
|
6635
6654
|
}], null, { formControl: [{
|
|
6636
6655
|
type: Input
|
|
6637
6656
|
}], placeholder: [{
|
|
@@ -6811,7 +6830,7 @@ FormGroupComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormGrou
|
|
|
6811
6830
|
(function () {
|
|
6812
6831
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormGroupComponent, [{
|
|
6813
6832
|
type: Component,
|
|
6814
|
-
args: [{ selector: 'igo-form-group', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\
|
|
6833
|
+
args: [{ selector: 'igo-form-group', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"group && group.fields.length > 0\"\n class=\"igo-form-group-fields\">\n <div\n *ngFor=\"let field of group.fields\"\n class=\"igo-form-field-wrapper\"\n [ngClass]=\"getFieldNgClass(field)\">\n <igo-form-field [field]=\"field\"></igo-form-field>\n </div>\n</div>\n\n<div class=\"igo-form-group-extra-content\">\n <ng-content></ng-content>\n</div>\n\n<mat-error *ngIf=\"formControl.errors\">{{getErrorMessage() | translate}}</mat-error>\n", styles: [":host{width:100%;height:100%;display:block;overflow:auto;padding:10px 5px}.igo-form-field-wrapper{display:inline-block;padding:0 5px}.igo-form-field-colspan-2{width:100%}.igo-form-field-colspan-1{width:50%}\n"] }]
|
|
6815
6834
|
}], function () { return []; }, { group: [{
|
|
6816
6835
|
type: Input
|
|
6817
6836
|
}], errors: [{
|
|
@@ -6925,7 +6944,7 @@ HomeButtonComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HomeBut
|
|
|
6925
6944
|
(function () {
|
|
6926
6945
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HomeButtonComponent, [{
|
|
6927
6946
|
type: Component,
|
|
6928
|
-
args: [{ selector: 'igo-home-button', template: "<button\
|
|
6947
|
+
args: [{ selector: 'igo-home-button', template: "<button\n id=\"homeButton\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.mainMenu' | translate\"\n (click)=\"onUnselectButtonClick()\">\n <mat-icon svgIcon=\"home\"></mat-icon>\n</button>\n", styles: ["#homeButton{position:absolute;top:50px;left:0px;border-radius:0;height:46px;width:48px}\n"] }]
|
|
6929
6948
|
}], function () { return []; }, { unselectButton: [{
|
|
6930
6949
|
type: Output
|
|
6931
6950
|
}] });
|
|
@@ -7872,7 +7891,7 @@ InteractiveTourComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: In
|
|
|
7872
7891
|
(function () {
|
|
7873
7892
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(InteractiveTourComponent, [{
|
|
7874
7893
|
type: Component,
|
|
7875
|
-
args: [{ selector: 'igo-interactive-tour', encapsulation: ViewEncapsulation.None, template: "<button *ngIf=\"showTourButton\"\
|
|
7894
|
+
args: [{ selector: 'igo-interactive-tour', encapsulation: ViewEncapsulation.None, template: "<button *ngIf=\"showTourButton\"\n (click) = \"startInteractiveTour()\"\n [ngClass]=\"getClass()\"\n mat-raised-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=disabledTourButton>\n <span class=\"interactive-tour-button-title\">{{'igo.common.interactiveTour.buttonTitle' | translate}} {{(discoverTitleInLocale$ | async) | translate}}</span>\n <mat-icon\n svgIcon=\"presentation-play\"\n [matTooltip]=\"disabledTourButton ?\n ('igo.common.interactiveTour.disaledTooltipTourToolButton' | translate) :\n ('igo.common.interactiveTour.tooltipTourToolButton' | translate)\">\n </mat-icon>\n</button>\n", styles: [".shepherd-has-title .shepherd-content .shepherd-header{padding:.5em .75em}.shepherd-title{margin:0!important;font-weight:revert!important}.shepherd-progress{margin-right:15px;color:#737373}.shepherd-text{font-size:14px!important}.shepherd-element{border:1px solid;border-color:#474747;box-shadow:4px 5px #65656599}\n"] }]
|
|
7876
7895
|
}], function () { return [{ type: InteractiveTourService }, { type: ToolService }]; }, { tourToStart: [{
|
|
7877
7896
|
type: Input
|
|
7878
7897
|
}], styleButton: [{
|
|
@@ -8080,7 +8099,7 @@ JsonDialogComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: JsonDia
|
|
|
8080
8099
|
(function () {
|
|
8081
8100
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(JsonDialogComponent, [{
|
|
8082
8101
|
type: Component,
|
|
8083
|
-
args: [{ selector: 'igo-json-dialog', template: "<h1 mat-dialog-title class=\"mat-typography\">{{ title }}</h1>\
|
|
8102
|
+
args: [{ selector: 'igo-json-dialog', template: "<h1 mat-dialog-title class=\"mat-typography\">{{ title }}</h1>\n\n<div mat-dialog-content class=\"mat-typography\">\n <ng-container *ngTemplateOutlet=\"loopObject;context:{ obj: data }\"></ng-container>\n\n <ng-template #loopObject let-obj='obj' let-baseKey='baseKey'>\n <ng-container *ngFor=\"let property of obj | keyvalue\">\n <ng-container *ngIf=\"ignoreKeys.indexOf(getKey(baseKey, property.key)) === -1\">\n\n <ng-container *ngIf=\"isObject(property.value); else notObject\">\n <ng-container *ngTemplateOutlet=\"loopObject;context:{ obj: property.value, baseKey: getKey(baseKey, property.key) }\"></ng-container>\n </ng-container>\n\n <ng-template #notObject>\n <p><span><b>{{getKey(baseKey, property.key)}}</b> : </span><span class=\"propertyValue\" [innerHtml]=\"property.value\"></span></p>\n </ng-template>\n\n </ng-container>\n </ng-container>\n </ng-template>\n</div>\n\n<div mat-dialog-actions>\n <button mat-button color=\"primary\"\n (click)=\"dialogRef.close(false)\">\n OK\n </button>\n</div>\n" }]
|
|
8084
8103
|
}], function () { return [{ type: i1$6.MatDialogRef }]; }, null);
|
|
8085
8104
|
})();
|
|
8086
8105
|
|
|
@@ -8545,7 +8564,7 @@ ListComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ListComponent
|
|
|
8545
8564
|
(function () {
|
|
8546
8565
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ListComponent, [{
|
|
8547
8566
|
type: Component,
|
|
8548
|
-
args: [{ selector: 'igo-list', template: "<mat-list\
|
|
8567
|
+
args: [{ selector: 'igo-list', template: "<mat-list\n igoClickout\n [ngClass]=\"{'selectable': selection}\"\n (clickout)=\"disableNavigation()\"\n (click)=\"enableNavigation()\">\n <ng-content></ng-content>\n</mat-list>\n", styles: [":host{display:block;height:100%;overflow:auto;position:relative}mat-list{padding-top:0}:host{position:static}:host ::ng-deep .mat-list .mat-list-item .mat-list-text>*{white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;max-height:36px;line-height:18px;-webkit-box-orient:vertical;-webkit-line-clamp:2}:host ::ng-deep .mat-list .mat-list-item.mat-list-item-with-avatar .mat-list-item-content{display:-webkit-flex;height:46px;padding:3px}:host ::ng-deep .mat-list .mat-list-item.mat-list-item-with-avatar{height:46px}:host ::ng-deep .mat-list ::ng-deep igo-collapsible>.mat-list-item>.mat-list-item-content>.mat-list-text>.mat-line{font-weight:700;opacity:.9}:host ::ng-deep .mat-list .mat-list-item.mat-list-item-with-avatar .mat-list-item-content>mat-icon{padding:8px}:host ::ng-deep [igolistitem] mat-list-item [mat-list-avatar]{height:auto;width:40px}:host mat-list.selectable ::ng-deep [igolistitem]:not(.igo-list-item-disabled) mat-list-item:hover{cursor:pointer}:host ::ng-deep [igolistitem]:focus{outline:none}\n"] }]
|
|
8549
8568
|
}], function () { return [{ type: i0.ElementRef }]; }, { navigation: [{
|
|
8550
8569
|
type: Input
|
|
8551
8570
|
}], selection: [{
|
|
@@ -8641,7 +8660,7 @@ PanelComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PanelCompone
|
|
|
8641
8660
|
(function () {
|
|
8642
8661
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PanelComponent, [{
|
|
8643
8662
|
type: Component,
|
|
8644
|
-
args: [{ selector: 'igo-panel', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"withHeader\" class=\"igo-panel-header mat-typography\" title=\"\">\
|
|
8663
|
+
args: [{ selector: 'igo-panel', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"withHeader\" class=\"igo-panel-header mat-typography\" title=\"\">\n <h3>\n <ng-content select=\"[panelLeftButton]\"></ng-content>\n <div class=\"igo-panel-title\">\n {{ title }}\n <ng-content select=\"[panelHeader]\"></ng-content>\n </div>\n <ng-content select=\"[panelRightButton]\"></ng-content>\n </h3>\n</div>\n<div class=\"igo-panel-content\" title=\"\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block}.igo-panel-header{height:46px;padding:3px;text-align:center}.igo-panel-header h3{margin:0;height:40px}.igo-panel-header ::ng-deep [panelleftbutton]{float:left;margin-right:-40px}.igo-panel-header ::ng-deep [panelrightbutton]{float:right}.igo-panel-content{overflow:auto}:host.igo-panel-with-header .igo-panel-content{height:calc(100% - 46px)}:host:not(.igo-panel-with-header) .igo-panel-content{height:100%}.igo-panel-title{display:block;width:calc(100% - 80px);margin-left:40px;height:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;line-height:40px;float:left;font-weight:700;font-size:1.17em}\n"] }]
|
|
8645
8664
|
}], null, { title: [{
|
|
8646
8665
|
type: Input
|
|
8647
8666
|
}], withHeader: [{
|
|
@@ -8779,7 +8798,7 @@ SpinnerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SpinnerCom
|
|
|
8779
8798
|
(function () {
|
|
8780
8799
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SpinnerComponent, [{
|
|
8781
8800
|
type: Component,
|
|
8782
|
-
args: [{ selector: 'igo-spinner', template: "<div\
|
|
8801
|
+
args: [{ selector: 'igo-spinner', template: "<div\n [ngClass]=\"{'igo-spinner-container': true, 'igo-spinner-shown': (shown$ | async)}\">\n <div class=\"igo-spinner-background\"></div>\n <mat-progress-spinner diameter=\"40\" mode=\"indeterminate\"></mat-progress-spinner>\n</div>\n", styles: [".igo-spinner-container{display:none;pointer-events:none}.igo-spinner-container.igo-spinner-shown{display:block}mat-progress-spinner{height:40px;width:40px;border-radius:50%}.igo-spinner-background{height:36px;width:36px;border-radius:50%;border:4px solid #ffffff;position:absolute;top:2px;left:2px}\n"] }]
|
|
8783
8802
|
}], function () { return []; }, { shown: [{
|
|
8784
8803
|
type: Input
|
|
8785
8804
|
}] });
|
|
@@ -9226,7 +9245,7 @@ TableComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TableCompone
|
|
|
9226
9245
|
(function () {
|
|
9227
9246
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TableComponent, [{
|
|
9228
9247
|
type: Component,
|
|
9229
|
-
args: [{ selector: 'igo-table', template: "<div class='table-box'>\
|
|
9248
|
+
args: [{ selector: 'igo-table', template: "<div class='table-box'>\n <div class='table-header' *ngIf=\"hasFilterInput\">\n <mat-form-field floatPlaceholder='never'>\n <input matInput #filter [placeholder]=\"'igo.common.table.filter' | translate\">\n </mat-form-field>\n </div>\n\n <div class='table-container'>\n <table mat-table #table [dataSource]='dataSource' matSort>\n\n <!-- Checkbox Column -->\n <ng-container matColumnDef=\"selectionCheckbox\">\n <th mat-header-cell *matHeaderCellDef>\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\n [checked]=\"selection.hasValue() && isAllSelected()\"\n [indeterminate]=\"selection.hasValue() && !isAllSelected()\">\n </mat-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let row\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selection.toggle(row) : null\"\n [checked]=\"selection.isSelected(row)\">\n </mat-checkbox>\n </td>\n </ng-container>\n\n <ng-container [matColumnDef]='column.name' *ngFor='let column of model.columns'>\n <ng-container *ngIf='column.sortable'>\n <th mat-header-cell *matHeaderCellDef mat-sort-header> {{column.title}} </th>\n </ng-container>\n\n <ng-container *ngIf='!column.sortable'>\n <th mat-header-cell *matHeaderCellDef> {{column.title}} </th>\n </ng-container>\n\n <ng-container *ngIf=\"!column.html; else cellHTML\">\n <td mat-cell *matCellDef='let row' class=\"mat-cell-text\"\n [ngClass]=\"model.cellClassFunc ? model.cellClassFunc(row, column) : {}\">\n {{getValue(row, column.name)}}\n </td>\n </ng-container>\n\n <ng-template #cellHTML>\n <td mat-cell *matCellDef='let row' class=\"mat-cell-text\"\n [ngClass]=\"model.cellClassFunc ? model.cellClassFunc(row, column) : {}\"\n [innerHTML]=\"getValue(row, column.name)\">\n </td>\n </ng-template>\n </ng-container>\n\n <!-- Action Column -->\n <ng-container matColumnDef='action'>\n <th mat-header-cell *matHeaderCellDef></th>\n <td mat-cell *matCellDef='let row'>\n <button *ngFor='let action of model.actions'\n mat-mini-fab\n [color]='getActionColor(action.color)'\n (click)='handleClickAction($event, action, row)'>\n <mat-icon svgIcon=\"{{action.icon}}\"></mat-icon>\n </button>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef='displayedColumns;'></tr>\n <tr mat-row\n *matRowDef='let row; columns: displayedColumns;'\n [ngClass]=\"model.rowClassFunc ? model.rowClassFunc(row) : {}\"\n (click)=\"selection.toggle(row)\">\n </tr>\n\n </table>\n </div>\n\n</div>\n", styles: [":host{width:100%;height:100%;display:block}.table-container{display:flex;flex-direction:column;height:100%;overflow:auto;flex:1 1 auto}.table-box{height:100%;display:flex;flex-direction:column}.table-header{min-height:64px;max-width:500px;display:flex;flex:0 1 auto;align-items:baseline;padding:8px 24px 0;font-size:20px;justify-content:space-between}tr[mat-header-row],tr[mat-row]{height:60px}.mat-cell-text{overflow:hidden;word-wrap:break-word}td[mat-cell]{padding-right:15px}th.mat-header-cell{padding-right:5px}button{margin-right:10px}\n"] }]
|
|
9230
9249
|
}], null, { database: [{
|
|
9231
9250
|
type: Input
|
|
9232
9251
|
}], model: [{
|
|
@@ -9566,7 +9585,7 @@ ToolboxComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ToolboxCom
|
|
|
9566
9585
|
(function () {
|
|
9567
9586
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToolboxComponent, [{
|
|
9568
9587
|
type: Component,
|
|
9569
|
-
args: [{ selector: 'igo-toolbox', animations: [toolSlideInOut()], changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-actionbar\
|
|
9588
|
+
args: [{ selector: 'igo-toolbox', animations: [toolSlideInOut()], changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-actionbar\n *ngIf=\"(toolbar$ | async).length > 0\"\n [store]=\"actionStore\"\n [withIcon]=\"true\"\n [withTitle]=\"toolbarWithTitle$ | async\"\n [withTooltip]=\"(toolbarWithTitle$ | async) === false\"\n [scrollActive]=\"toolbarWithTitle$ | async\"\n [horizontal]=\"false\">\n</igo-actionbar>\n\n<div\n *ngIf=\"activeTool$ | async as tool\"\n class=\"igo-tool-container\"\n [ngClass]=\"{'igo-tool-container-with-toolbar': !actionStore.empty, 'igo-tool-container-with-animation': animate}\"\n [@toolSlideInOut]=\"animation$ | async\"\n (@toolSlideInOut.start)=\"onAnimationStart()\"\n (@toolSlideInOut.done)=\"onAnimationComplete()\">\n\n <igo-dynamic-outlet\n [component]=\"tool.component\"\n [inputs]=\"getToolInputs(tool)\">\n </igo-dynamic-outlet>\n\n</div>\n", styles: [":host{display:block;position:relative;overflow:hidden;width:100%;height:100%}.igo-tool-container{position:absolute;top:0;bottom:0;left:0;right:0}.igo-tool-container-with-animation{transform:translate3d(100%,0,0)}.igo-tool-container-with-toolbar{left:50px}igo-actionbar{height:100%}igo-actionbar.with-title{width:100%;overflow:auto}igo-actionbar:not(.with-title){width:48px;overflow:hidden;-o-box-shadow:2px 0px 2px 0px #dddddd;box-shadow:2px 0 2px #ddd}@media only screen and (orientation:portrait) and (max-width: 599px),only screen and (orientation:landscape) and (max-width: 959px){igo-actionbar:not(.with-title){overflow:auto}}igo-dynamic-outlet{overflow:auto}\n"] }]
|
|
9570
9589
|
}], null, { toolbox: [{
|
|
9571
9590
|
type: Input
|
|
9572
9591
|
}], animate: [{
|
|
@@ -9751,7 +9770,7 @@ WidgetOutletComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Widge
|
|
|
9751
9770
|
(function () {
|
|
9752
9771
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WidgetOutletComponent, [{
|
|
9753
9772
|
type: Component,
|
|
9754
|
-
args: [{ selector: 'igo-widget-outlet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-dynamic-outlet\
|
|
9773
|
+
args: [{ selector: 'igo-widget-outlet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-dynamic-outlet\n *ngIf=\"widget\"\n [component]=\"widget\"\n [inputs]=\"inputs\"\n [subscribers]=\"getEffectiveSubscribers()\">\n</igo-dynamic-outlet>\n", styles: ["igo-dynamic-outlet{height:100%}\n"] }]
|
|
9755
9774
|
}], function () { return []; }, { widget: [{
|
|
9756
9775
|
type: Input
|
|
9757
9776
|
}], inputs: [{
|
|
@@ -9888,7 +9907,7 @@ WorkspaceSelectorComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
|
|
|
9888
9907
|
(function () {
|
|
9889
9908
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkspaceSelectorComponent, [{
|
|
9890
9909
|
type: Component,
|
|
9891
|
-
args: [{ selector: 'igo-workspace-selector', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-entity-selector\
|
|
9910
|
+
args: [{ selector: 'igo-workspace-selector', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-entity-selector\n [store]=\"store\"\n [multi]=\"false\"\n [titleAccessor]=\"getWorkspaceTitle\"\n [disabled]=\"disabled\"\n (selectedChange)=\"onSelectedChange($event)\">\n</igo-entity-selector>\n", styles: ["igo-entity-selector ::ng-deep mat-form-field .mat-form-field-infix{padding:0}igo-entity-selector ::ng-deep mat-form-field .mat-form-field-wrapper{padding-bottom:1.75em}\n"] }]
|
|
9892
9911
|
}], null, { store: [{
|
|
9893
9912
|
type: Input
|
|
9894
9913
|
}], disabled: [{
|
|
@@ -10013,7 +10032,7 @@ WorkspaceWidgetOutletComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ ty
|
|
|
10013
10032
|
(function () {
|
|
10014
10033
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkspaceWidgetOutletComponent, [{
|
|
10015
10034
|
type: Component,
|
|
10016
|
-
args: [{ selector: 'igo-workspace-widget-outlet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"widget$ | async as widget\">\
|
|
10035
|
+
args: [{ selector: 'igo-workspace-widget-outlet', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"widget$ | async as widget\">\n <igo-widget-outlet\n [widget]=\"widget\"\n [inputs]=\"widgetInputs$ | async\"\n [subscribers]=\"widgetSubscribers$ | async\"\n (cancel)=\"onWidgetCancel(widget)\"\n (complete)=\"onWidgetComplete(widget)\">\n </igo-widget-outlet>\n</ng-container>\n", styles: ["igo-widget-outlet{height:100%}\n"] }]
|
|
10017
10036
|
}], function () { return []; }, { workspace: [{
|
|
10018
10037
|
type: Input
|
|
10019
10038
|
}], deactivateWidget: [{
|