@igo2/common 20.1.0-next.8 → 20.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/badge/index.d.ts +1 -1
- package/drag-drop/index.d.ts +48 -35
- package/fesm2022/igo2-common-action.mjs +26 -34
- package/fesm2022/igo2-common-action.mjs.map +1 -1
- package/fesm2022/igo2-common-backdrop.mjs +7 -7
- package/fesm2022/igo2-common-badge.mjs +7 -7
- package/fesm2022/igo2-common-badge.mjs.map +1 -1
- package/fesm2022/igo2-common-clickout.mjs +7 -7
- package/fesm2022/igo2-common-clone.mjs +7 -7
- package/fesm2022/igo2-common-collapsible.mjs +10 -10
- package/fesm2022/igo2-common-color.mjs +7 -7
- package/fesm2022/igo2-common-confirm-dialog.mjs +10 -10
- package/fesm2022/igo2-common-context-menu.mjs +10 -10
- package/fesm2022/igo2-common-custom-html.mjs +10 -10
- package/fesm2022/igo2-common-datepicker.mjs +3 -3
- package/fesm2022/igo2-common-dom.mjs +7 -7
- package/fesm2022/igo2-common-drag-drop.mjs +242 -126
- package/fesm2022/igo2-common-drag-drop.mjs.map +1 -1
- package/fesm2022/igo2-common-dynamic-component.mjs +14 -14
- package/fesm2022/igo2-common-entity.mjs +31 -31
- package/fesm2022/igo2-common-flexible.mjs +7 -7
- package/fesm2022/igo2-common-form.mjs +50 -50
- package/fesm2022/igo2-common-home-button.mjs +7 -7
- package/fesm2022/igo2-common-icon.mjs +15 -19
- package/fesm2022/igo2-common-icon.mjs.map +1 -1
- package/fesm2022/igo2-common-image.mjs +11 -11
- package/fesm2022/igo2-common-image.mjs.map +1 -1
- package/fesm2022/igo2-common-interactive-tour.mjs +13 -13
- package/fesm2022/igo2-common-json-dialog.mjs +10 -10
- package/fesm2022/igo2-common-keyvalue.mjs +7 -7
- package/fesm2022/igo2-common-list.mjs +11 -11
- package/fesm2022/igo2-common-list.mjs.map +1 -1
- package/fesm2022/igo2-common-panel.mjs +8 -8
- package/fesm2022/igo2-common-panel.mjs.map +1 -1
- package/fesm2022/igo2-common-resizable-bar.mjs +6 -6
- package/fesm2022/igo2-common-select-value-dialog.mjs +10 -10
- package/fesm2022/igo2-common-sidenav.mjs +7 -7
- package/fesm2022/igo2-common-spinner.mjs +10 -10
- package/fesm2022/igo2-common-stop-propagation.mjs +10 -10
- package/fesm2022/igo2-common-table.mjs +7 -7
- package/fesm2022/igo2-common-timepicker.mjs +3 -3
- package/fesm2022/igo2-common-tool.mjs +16 -16
- package/fesm2022/igo2-common-tool.mjs.map +1 -1
- package/fesm2022/igo2-common-widget.mjs +14 -14
- package/fesm2022/igo2-common-workspace.mjs +18 -18
- package/icon/index.d.ts +3 -3
- package/package.json +3 -3
- package/src/style/partial/common.variables.scss +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"igo2-common-image.mjs","sources":["../../../packages/common/image/src/image-error.directive.ts","../../../packages/common/image/src/image.ts","../../../packages/common/image/src/secure-image.pipe.ts","../../../packages/common/image/src/image.module.ts","../../../packages/common/image/src/public_api.ts","../../../packages/common/image/src/igo2-common-image.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n HostListener,\n inject,\n input\n} from '@angular/core';\n\n@Directive({\n selector: '[igoImageError]',\n standalone: true\n})\nexport class ImageErrorDirective {\n private el = inject(ElementRef);\n\n readonly errorImageUrl = input('./
|
|
1
|
+
{"version":3,"file":"igo2-common-image.mjs","sources":["../../../packages/common/image/src/image-error.directive.ts","../../../packages/common/image/src/image.ts","../../../packages/common/image/src/secure-image.pipe.ts","../../../packages/common/image/src/image.module.ts","../../../packages/common/image/src/public_api.ts","../../../packages/common/image/src/igo2-common-image.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n HostListener,\n inject,\n input\n} from '@angular/core';\n\n@Directive({\n selector: '[igoImageError]',\n standalone: true\n})\nexport class ImageErrorDirective {\n private el = inject(ElementRef);\n\n readonly errorImageUrl = input('./igo2/common/images/na.png');\n readonly hideError = input(false);\n\n @HostListener('error', ['$event'])\n public onError(event: any): void {\n if (this.hideError()) {\n this.el.nativeElement.style.display = 'none';\n } else {\n event.target.src = this.errorImageUrl();\n }\n }\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\n\nimport { Observable, catchError, switchMap } from 'rxjs';\n\nexport function fetchImageFromDepotUrl(\n url: string,\n depotUrl: string,\n http: HttpClient\n) {\n const headers = new HttpHeaders({\n 'Content-Type': 'text/plain',\n activityInterceptor: 'false',\n interceptError: 'false'\n });\n\n const regexDepot = new RegExp(depotUrl + '.*?(?=\"|$)');\n if (regexDepot.test(url)) {\n url = url.match(regexDepot)[0];\n }\n\n return http\n .get(url, {\n headers,\n responseType: 'blob'\n })\n .pipe(\n catchError((err) => {\n err.error.caught = true;\n err.error.toDisplay = false;\n throw err;\n }),\n switchMap((blob) => {\n return new Observable((observer) => {\n const reader = new FileReader();\n reader.readAsDataURL(blob);\n reader.onloadend = () => {\n observer.next(reader.result);\n observer.complete();\n };\n });\n })\n ) as Observable<string>;\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { ConfigService } from '@igo2/core/config';\n\nimport { Observable } from 'rxjs';\nimport { Cacheable } from 'ts-cacheable';\n\nimport { fetchImageFromDepotUrl } from './image';\n\n@Pipe({\n name: 'secureImage',\n standalone: true\n})\nexport class SecureImagePipe implements PipeTransform {\n private http = inject(HttpClient);\n private configService = inject(ConfigService);\n\n @Cacheable({\n maxCacheCount: 20\n })\n transform(url: string): Observable<string> {\n const depotUrl = this.configService?.getConfig('depot.url');\n return fetchImageFromDepotUrl(url, depotUrl, this.http);\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { ImageErrorDirective } from './image-error.directive';\nimport { SecureImagePipe } from './secure-image.pipe';\n\n/**\n * @deprecated import the components/directives directly or IMAGE_DIRECTIVES for the set\n */\n@NgModule({\n imports: [SecureImagePipe, ImageErrorDirective],\n exports: [SecureImagePipe, ImageErrorDirective]\n})\nexport class IgoImageModule {\n static forRoot(): ModuleWithProviders<IgoImageModule> {\n return {\n ngModule: IgoImageModule,\n providers: []\n };\n }\n}\n","import { ImageErrorDirective } from './image-error.directive';\nimport { SecureImagePipe } from './secure-image.pipe';\n\nexport * from './image';\nexport * from './image.module';\nexport * from './image-error.directive';\nexport * from './secure-image.pipe';\n\nexport const IMAGE_DIRECTIVES = [SecureImagePipe, ImageErrorDirective] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -52,10 +52,10 @@ class InteractiveTourLoader {
|
|
|
52
52
|
nameInConfigFile = nameInConfigFile.replace(/\s/g, '');
|
|
53
53
|
return this.allToursOptions[nameInConfigFile];
|
|
54
54
|
}
|
|
55
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
56
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.
|
|
55
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: InteractiveTourLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
56
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: InteractiveTourLoader });
|
|
57
57
|
}
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: InteractiveTourLoader, decorators: [{
|
|
59
59
|
type: Injectable
|
|
60
60
|
}], ctorParameters: () => [] });
|
|
61
61
|
|
|
@@ -328,10 +328,10 @@ class InteractiveTourService {
|
|
|
328
328
|
});
|
|
329
329
|
this.shepherdService.start();
|
|
330
330
|
}
|
|
331
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
332
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.
|
|
331
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: InteractiveTourService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
332
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: InteractiveTourService, providedIn: 'root' });
|
|
333
333
|
}
|
|
334
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
334
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: InteractiveTourService, decorators: [{
|
|
335
335
|
type: Injectable,
|
|
336
336
|
args: [{
|
|
337
337
|
providedIn: 'root'
|
|
@@ -426,10 +426,10 @@ class InteractiveTourComponent {
|
|
|
426
426
|
return;
|
|
427
427
|
}
|
|
428
428
|
}
|
|
429
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
430
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.
|
|
429
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: InteractiveTourComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
430
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: InteractiveTourComponent, isStandalone: true, selector: "igo-interactive-tour", inputs: { tourToStart: { classPropertyName: "tourToStart", publicName: "tourToStart", isSignal: true, isRequired: false, transformFunction: null }, styleButton: { classPropertyName: "styleButton", publicName: "styleButton", isSignal: true, isRequired: false, transformFunction: null }, discoverTitleInLocale$: { classPropertyName: "discoverTitleInLocale$", publicName: "discoverTitleInLocale$", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (showTourButton) {\n @if (styleButton() === 'icon') {\n <button\n (click)=\"startInteractiveTour()\"\n [ngClass]=\"getClass()\"\n color=\"primary\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"\n disabledTourButton\n ? ('igo.common.interactiveTour.disaledTooltipTourToolButton'\n | translate)\n : ('igo.common.interactiveTour.tooltipTourToolButton' | translate)\n \"\n [disabled]=\"disabledTourButton\"\n >\n <igo-icon [icon]=\"presentationIcon\" iconPositionEnd />\n </button>\n } @else {\n <button\n (click)=\"startInteractiveTour()\"\n [ngClass]=\"getClass()\"\n color=\"primary\"\n matButton=\"elevated\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"disabledTourButton\"\n >\n {{ 'igo.common.interactiveTour.buttonTitle' | translate }}\n {{ discoverTitleInLocale$() | async | translate }}\n <mat-icon\n [svgIcon]=\"presentationIcon.name\"\n iconPositionEnd\n [matTooltip]=\"\n disabledTourButton\n ? ('igo.common.interactiveTour.disaledTooltipTourToolButton'\n | translate)\n : ('igo.common.interactiveTour.tooltipTourToolButton' | translate)\n \"\n />\n </button>\n }\n}\n", styles: [":host ::ng-deep button.tour-button-tool-icon{color:var(--mat-sys-primary-container)}:host ::ng-deep button.tour-button-tool-icon:hover{background-color:var(--mat-sys-secondary-container);color:var(--mat-sys-on-secondary-container)}:host ::ng-deep .mat-primary .mat-mdc-icon-button{color:#fff}:host>button.mat-mdc-raised-button.tour-button-tool-icon{box-shadow:none}.shepherd-has-title .shepherd-content .shepherd-header{padding:.5em .75em}.shepherd-has-title .shepherd-content .shepherd-header h3{font-size:14px}.shepherd-title{margin:0!important;font-weight:revert!important}.shepherd-progress{margin-right:15px;color:#737373}.shepherd-element{border:1px solid;border-color:#474747;box-shadow:4px 5px #65656599}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "component", type: IgoIconComponent, selector: "igo-icon", inputs: ["color", "icon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
431
431
|
}
|
|
432
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
432
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: InteractiveTourComponent, decorators: [{
|
|
433
433
|
type: Component,
|
|
434
434
|
args: [{ selector: 'igo-interactive-tour', encapsulation: ViewEncapsulation.None, imports: [
|
|
435
435
|
MatButtonModule,
|
|
@@ -443,11 +443,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
443
443
|
}], ctorParameters: () => [], propDecorators: { tourToStart: [{ type: i0.Input, args: [{ isSignal: true, alias: "tourToStart", required: false }] }], styleButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "styleButton", required: false }] }], discoverTitleInLocale$: [{ type: i0.Input, args: [{ isSignal: true, alias: "discoverTitleInLocale$", required: false }] }] } });
|
|
444
444
|
|
|
445
445
|
class IgoInteractiveTourModule {
|
|
446
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
447
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
448
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
446
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoInteractiveTourModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
447
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: IgoInteractiveTourModule, imports: [InteractiveTourComponent], exports: [InteractiveTourComponent] });
|
|
448
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoInteractiveTourModule, providers: [InteractiveTourService, InteractiveTourLoader], imports: [InteractiveTourComponent] });
|
|
449
449
|
}
|
|
450
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
450
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoInteractiveTourModule, decorators: [{
|
|
451
451
|
type: NgModule,
|
|
452
452
|
args: [{
|
|
453
453
|
imports: [InteractiveTourComponent],
|
|
@@ -16,10 +16,10 @@ class JsonDialogComponent {
|
|
|
16
16
|
getKey(baseKey, key) {
|
|
17
17
|
return (baseKey ? baseKey + '.' : '') + key;
|
|
18
18
|
}
|
|
19
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
20
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: JsonDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: JsonDialogComponent, isStandalone: true, selector: "igo-json-dialog", ngImport: i0, template: "<h1 mat-dialog-title>{{ title }}</h1>\n\n<div mat-dialog-content>\n <ng-container *ngTemplateOutlet=\"loopObject; context: { obj: data }\" />\n\n <ng-template #loopObject let-obj=\"obj\" let-baseKey=\"baseKey\">\n @for (property of obj | keyvalue; track property) {\n @if (ignoreKeys.indexOf(getKey(baseKey, property.key)) === -1) {\n @if (isObject(property.value)) {\n <ng-container\n *ngTemplateOutlet=\"\n loopObject;\n context: {\n obj: property.value,\n baseKey: getKey(baseKey, property.key)\n }\n \"\n />\n } @else {\n <p>\n <span\n ><b>{{ getKey(baseKey, property.key) }}</b> : </span\n ><span class=\"propertyValue\" [innerHtml]=\"property.value\"></span>\n </p>\n }\n }\n }\n </ng-template>\n</div>\n\n<div mat-dialog-actions>\n <button matButton color=\"primary\" (click)=\"dialogRef.close(false)\">OK</button>\n</div>\n", dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "pipe", type: KeyValuePipe, name: "keyvalue" }] });
|
|
21
21
|
}
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: JsonDialogComponent, decorators: [{
|
|
23
23
|
type: Component,
|
|
24
24
|
args: [{ selector: 'igo-json-dialog', imports: [
|
|
25
25
|
MatDialogTitle,
|
|
@@ -42,10 +42,10 @@ class JsonDialogService {
|
|
|
42
42
|
dialogRef.componentInstance.ignoreKeys = ignoreKeys ?? [];
|
|
43
43
|
return dialogRef.afterClosed();
|
|
44
44
|
}
|
|
45
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
46
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.
|
|
45
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: JsonDialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: JsonDialogService });
|
|
47
47
|
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: JsonDialogService, decorators: [{
|
|
49
49
|
type: Injectable
|
|
50
50
|
}] });
|
|
51
51
|
|
|
@@ -58,11 +58,11 @@ class IgoJsonDialogModule {
|
|
|
58
58
|
ngModule: IgoJsonDialogModule
|
|
59
59
|
};
|
|
60
60
|
}
|
|
61
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
62
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
63
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
61
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoJsonDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
62
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: IgoJsonDialogModule, imports: [JsonDialogComponent], exports: [JsonDialogComponent] });
|
|
63
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoJsonDialogModule, providers: [JsonDialogService], imports: [JsonDialogComponent] });
|
|
64
64
|
}
|
|
65
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoJsonDialogModule, decorators: [{
|
|
66
66
|
type: NgModule,
|
|
67
67
|
args: [{
|
|
68
68
|
imports: [JsonDialogComponent],
|
|
@@ -7,10 +7,10 @@ class KeyValuePipe {
|
|
|
7
7
|
Object.getOwnPropertyNames(value).forEach((key) => keyValues.push({ key, value: value[key] }));
|
|
8
8
|
return keyValues;
|
|
9
9
|
}
|
|
10
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
11
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.
|
|
10
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: KeyValuePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
11
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: KeyValuePipe, isStandalone: true, name: "keyvalue" });
|
|
12
12
|
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: KeyValuePipe, decorators: [{
|
|
14
14
|
type: Pipe,
|
|
15
15
|
args: [{
|
|
16
16
|
name: 'keyvalue',
|
|
@@ -28,11 +28,11 @@ class IgoKeyValueModule {
|
|
|
28
28
|
providers: []
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
32
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
33
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
31
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoKeyValueModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
32
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: IgoKeyValueModule, imports: [KeyValuePipe], exports: [KeyValuePipe] });
|
|
33
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoKeyValueModule });
|
|
34
34
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoKeyValueModule, decorators: [{
|
|
36
36
|
type: NgModule,
|
|
37
37
|
args: [{
|
|
38
38
|
imports: [KeyValuePipe],
|
|
@@ -119,10 +119,10 @@ class ListItemDirective {
|
|
|
119
119
|
removeCls(cls) {
|
|
120
120
|
this.renderer.removeClass(this.el.nativeElement, cls);
|
|
121
121
|
}
|
|
122
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
123
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
122
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ListItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
123
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.19", type: ListItemDirective, isStandalone: true, selector: "[igoListItem]", inputs: { color: "color", focused: "focused", selected: "selected", disabled: "disabled" }, outputs: { beforeSelect: "beforeSelect", beforeFocus: "beforeFocus", beforeUnselect: "beforeUnselect", beforeUnfocus: "beforeUnfocus", beforeDisable: "beforeDisable", beforeEnable: "beforeEnable", focus: "focus", unfocus: "unfocus", select: "select", unselect: "unselect", disable: "disable", enable: "enable" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
|
|
124
124
|
}
|
|
125
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
125
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ListItemDirective, decorators: [{
|
|
126
126
|
type: Directive,
|
|
127
127
|
args: [{
|
|
128
128
|
selector: '[igoListItem]',
|
|
@@ -370,12 +370,12 @@ class ListComponent {
|
|
|
370
370
|
break;
|
|
371
371
|
}
|
|
372
372
|
}
|
|
373
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
374
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.
|
|
373
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
374
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.19", type: ListComponent, isStandalone: true, selector: "igo-list", inputs: { navigation: "navigation", selection: "selection" }, host: { listeners: { "document:keydown": "handleKeyboardEvent($event)", "document:enter": "handleKeyboardEvent($event)" } }, queries: [{ propertyName: "listItems", predicate: ListItemDirective, descendants: true, isSignal: true }], ngImport: i0, template: "<mat-list\n igoClickout\n [ngClass]=\"{ selectable: selection }\"\n (clickout)=\"disableNavigation()\"\n (click)=\"enableNavigation()\"\n>\n <ng-content />\n</mat-list>\n", styles: [":host{display:block;height:100%;overflow:auto;position:relative}:host mat-list{padding-top:0}:host ::ng-deep [igolistitem][color=primary].igo-list-item-selected>mat-list-item{background-color:var(--mat-sys-primary-fixed);color:var(--mat-sys-on-primary-fixed)}:host ::ng-deep [igolistitem][color=primary]:not(.igo-list-item-disabled):hover>mat-list-item,:host ::ng-deep [igolistitem][color=primary].igo-list-item-focused>mat-list-item{background-color:var(--mat-sys-primary-fixed-dim);color:var(--mat-sys-on-primary-fixed)}:host ::ng-deep [igolistitem][color=accent].igo-list-item-selected>mat-list-item{background-color:var(--mat-sys-secondary-fixed-dim);color:var(--mat-sys-on-secondary-fixed)}:host ::ng-deep [igolistitem][color=accent]:not(.igo-list-item-disabled):hover>mat-list-item,:host ::ng-deep [igolistitem][color=accent].igo-list-item-focused>mat-list-item{background-color:var(--mat-sys-secondary-fixed);color:var(--mat-sys-on-secondary-fixed)}:host ::ng-deep [igolistitem].igo-list-item-disabled>mat-list-item{color:#00000061}:host ::ng-deep [igolistitem]:focus{outline:none}:host ::ng-deep .igo-list-item-with-text-overflow-ellipsis{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-mdc-list ::ng-deep igo-collapsible>.mat-mdc-list-item>.mdc-list-item__primary-text>.mat-mdc-list-item{font-weight:700;opacity:.9}:host ::ng-deep mat-list.selectable ::ng-deep [igolistitem]:not(.igo-list-item-disabled) mat-list-item:hover{cursor:pointer}\n"], dependencies: [{ kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "directive", type: ClickoutDirective, selector: "[igoClickout]", outputs: ["clickout"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
375
375
|
}
|
|
376
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ListComponent, decorators: [{
|
|
377
377
|
type: Component,
|
|
378
|
-
args: [{ selector: 'igo-list', imports: [MatListModule, ClickoutDirective, NgClass], template: "<mat-list\n igoClickout\n [ngClass]=\"{ selectable: selection }\"\n (clickout)=\"disableNavigation()\"\n (click)=\"enableNavigation()\"\n>\n <ng-content />\n</mat-list>\n", styles: [":host{display:block;height:100%;overflow:auto;position:relative}:host mat-list{padding-top:0}:host ::ng-deep [igolistitem][color=primary].igo-list-item-selected>mat-list-item{background-color:var(--mat-sys-primary-fixed);color:var(--mat-sys-on-primary-fixed)}:host ::ng-deep [igolistitem][color=primary]:not(.igo-list-item-disabled):hover>mat-list-item,:host ::ng-deep [igolistitem][color=primary].igo-list-item-focused>mat-list-item{background-color:var(--mat-sys-primary-fixed-dim);color:var(--mat-sys-on-primary-fixed)}:host ::ng-deep [igolistitem][color=accent].igo-list-item-selected>mat-list-item{background-color:var(--mat-sys-secondary-fixed-dim);color:var(--mat-sys-on-secondary-fixed)}:host ::ng-deep [igolistitem][color=accent]:not(.igo-list-item-disabled):hover>mat-list-item,:host ::ng-deep [igolistitem][color=accent].igo-list-item-focused>mat-list-item{background-color:var(--mat-sys-secondary-fixed);color:var(--mat-sys-on-secondary-fixed)}:host ::ng-deep [igolistitem].igo-list-item-disabled>mat-list-item{color:#00000061}:host ::ng-deep [igolistitem]:focus{outline:none}:host ::ng-deep .
|
|
378
|
+
args: [{ selector: 'igo-list', imports: [MatListModule, ClickoutDirective, NgClass], template: "<mat-list\n igoClickout\n [ngClass]=\"{ selectable: selection }\"\n (clickout)=\"disableNavigation()\"\n (click)=\"enableNavigation()\"\n>\n <ng-content />\n</mat-list>\n", styles: [":host{display:block;height:100%;overflow:auto;position:relative}:host mat-list{padding-top:0}:host ::ng-deep [igolistitem][color=primary].igo-list-item-selected>mat-list-item{background-color:var(--mat-sys-primary-fixed);color:var(--mat-sys-on-primary-fixed)}:host ::ng-deep [igolistitem][color=primary]:not(.igo-list-item-disabled):hover>mat-list-item,:host ::ng-deep [igolistitem][color=primary].igo-list-item-focused>mat-list-item{background-color:var(--mat-sys-primary-fixed-dim);color:var(--mat-sys-on-primary-fixed)}:host ::ng-deep [igolistitem][color=accent].igo-list-item-selected>mat-list-item{background-color:var(--mat-sys-secondary-fixed-dim);color:var(--mat-sys-on-secondary-fixed)}:host ::ng-deep [igolistitem][color=accent]:not(.igo-list-item-disabled):hover>mat-list-item,:host ::ng-deep [igolistitem][color=accent].igo-list-item-focused>mat-list-item{background-color:var(--mat-sys-secondary-fixed);color:var(--mat-sys-on-secondary-fixed)}:host ::ng-deep [igolistitem].igo-list-item-disabled>mat-list-item{color:#00000061}:host ::ng-deep [igolistitem]:focus{outline:none}:host ::ng-deep .igo-list-item-with-text-overflow-ellipsis{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-mdc-list ::ng-deep igo-collapsible>.mat-mdc-list-item>.mdc-list-item__primary-text>.mat-mdc-list-item{font-weight:700;opacity:.9}:host ::ng-deep mat-list.selectable ::ng-deep [igolistitem]:not(.igo-list-item-disabled) mat-list-item:hover{cursor:pointer}\n"] }]
|
|
379
379
|
}], propDecorators: { navigation: [{
|
|
380
380
|
type: Input
|
|
381
381
|
}], selection: [{
|
|
@@ -400,11 +400,11 @@ class IgoListModule {
|
|
|
400
400
|
providers: []
|
|
401
401
|
};
|
|
402
402
|
}
|
|
403
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
404
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
405
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
403
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
404
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: IgoListModule, imports: [ListItemDirective, ListComponent], exports: [ListItemDirective, ListComponent] });
|
|
405
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoListModule, imports: [ListComponent] });
|
|
406
406
|
}
|
|
407
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
407
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoListModule, decorators: [{
|
|
408
408
|
type: NgModule,
|
|
409
409
|
args: [{
|
|
410
410
|
imports: [ListItemDirective, ListComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"igo2-common-list.mjs","sources":["../../../packages/common/list/src/list-item.directive.ts","../../../packages/common/list/src/list.component.ts","../../../packages/common/list/src/list.component.html","../../../packages/common/list/src/list.module.ts","../../../packages/common/list/src/public_api.ts","../../../packages/common/list/src/igo2-common-list.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n HostListener,\n Input,\n Renderer2,\n inject,\n output\n} from '@angular/core';\n\n@Directive({\n selector: '[igoListItem]',\n standalone: true\n})\nexport class ListItemDirective {\n renderer = inject(Renderer2);\n el = inject(ElementRef);\n\n static focusedCls = 'igo-list-item-focused';\n static selectedCls = 'igo-list-item-selected';\n static disabledCls = 'igo-list-item-disabled';\n\n @Input()\n get color() {\n return this._color;\n }\n set color(value: string) {\n this._color = value;\n }\n private _color = 'primary';\n\n @Input()\n get focused() {\n return this._focused;\n }\n set focused(value: boolean) {\n if (value === this._focused) {\n return;\n }\n if (this.disabled) {\n return;\n }\n\n value ? this.beforeFocus.emit(this) : this.beforeUnfocus.emit(this);\n\n this._focused = value;\n if (this.selected !== true) {\n this.toggleFocusedClass();\n }\n\n value ? this.focus.emit(this) : this.unfocus.emit(this);\n }\n private _focused = false;\n\n @Input()\n get selected() {\n return this._selected;\n }\n set selected(value: boolean) {\n if (value === this._selected) {\n return;\n }\n if (this.disabled) {\n return;\n }\n\n value ? this.beforeSelect.emit(this) : this.beforeUnselect.emit(this);\n\n this._selected = value;\n this._focused = value;\n this.toggleSelectedClass();\n\n value ? this.select.emit(this) : this.unselect.emit(this);\n }\n private _selected = false;\n\n @Input()\n get disabled() {\n return this._disabled;\n }\n set disabled(value: boolean) {\n if (value === this._disabled) {\n return;\n }\n\n if (value === true) {\n this.selected = false;\n }\n\n value ? this.beforeDisable.emit(this) : this.beforeEnable.emit(this);\n\n this._disabled = value;\n this.toggleDisabledClass();\n\n value ? this.disable.emit(this) : this.enable.emit(this);\n }\n private _disabled = false;\n\n readonly beforeSelect = output<ListItemDirective>();\n readonly beforeFocus = output<ListItemDirective>();\n readonly beforeUnselect = output<ListItemDirective>();\n readonly beforeUnfocus = output<ListItemDirective>();\n readonly beforeDisable = output<ListItemDirective>();\n readonly beforeEnable = output<ListItemDirective>();\n readonly focus = output<ListItemDirective>();\n readonly unfocus = output<ListItemDirective>();\n readonly select = output<ListItemDirective>();\n readonly unselect = output<ListItemDirective>();\n readonly disable = output<ListItemDirective>();\n readonly enable = output<ListItemDirective>();\n\n @HostListener('click')\n onClick() {\n this.selected = true;\n }\n\n getOffsetTop(): number {\n const padding = 5;\n\n return this.el.nativeElement.offsetTop - padding;\n }\n\n private toggleFocusedClass() {\n if (this.focused) {\n this.addCls(ListItemDirective.focusedCls);\n } else {\n this.removeCls(ListItemDirective.focusedCls);\n }\n }\n\n private toggleSelectedClass() {\n if (this.selected) {\n this.addCls(ListItemDirective.selectedCls);\n this.removeCls(ListItemDirective.focusedCls);\n } else {\n this.removeCls(ListItemDirective.selectedCls);\n }\n }\n\n private toggleDisabledClass() {\n if (this.disabled) {\n this.addCls(ListItemDirective.disabledCls);\n } else {\n this.removeCls(ListItemDirective.disabledCls);\n }\n }\n\n private addCls(cls: string) {\n this.renderer.addClass(this.el.nativeElement, cls);\n }\n\n private removeCls(cls: string) {\n this.renderer.removeClass(this.el.nativeElement, cls);\n }\n}\n","import { NgClass } from '@angular/common';\nimport {\n AfterViewInit,\n Component,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n contentChildren,\n effect,\n inject\n} from '@angular/core';\nimport { MatListModule } from '@angular/material/list';\n\nimport { ClickoutDirective } from '@igo2/common/clickout';\n\n// subscriptions can be rxjs Subscription or OutputRefSubscription-like objects\n\nimport { ListItemDirective } from './list-item.directive';\n\n@Component({\n selector: 'igo-list',\n templateUrl: './list.component.html',\n styleUrls: ['./list.component.scss'],\n imports: [MatListModule, ClickoutDirective, NgClass]\n})\nexport class ListComponent implements AfterViewInit, OnInit, OnDestroy {\n private el = inject(ElementRef);\n\n @Input()\n get navigation() {\n return this._navigation;\n }\n set navigation(value: boolean) {\n this._navigation = value;\n }\n private _navigation = true;\n\n @Input()\n get selection() {\n return this._selection;\n }\n set selection(value: boolean) {\n this._selection = value;\n }\n private _selection = true;\n\n get selectedItem() {\n return this._selectedItem;\n }\n set selectedItem(value: ListItemDirective) {\n this.focusedItem = value;\n this._selectedItem = value;\n }\n private _selectedItem: ListItemDirective;\n\n get focusedItem() {\n return this._focusedItem;\n }\n set focusedItem(value: ListItemDirective) {\n this._focusedItem = value;\n }\n private _focusedItem: ListItemDirective;\n\n private navigationEnabled: boolean;\n // Accept both rxjs Subscription and Angular signal OutputRefSubscription\n private subscriptions: { unsubscribe: () => void }[] = [];\n private listItemsEffect = effect(() => {\n this.listItems();\n this.init();\n });\n\n readonly listItems = contentChildren(ListItemDirective, {\n descendants: true\n });\n\n @HostListener('document:keydown', ['$event'])\n @HostListener('document:enter', ['$event'])\n handleKeyboardEvent(event: KeyboardEvent) {\n // It would be nice to be able to unsubscribe to the event\n // completely but until ES7 this won't be possible because\n // document events are not observables\n if (this.navigationEnabled) {\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n event.preventDefault();\n this.navigate(event.key);\n } else if (event.key === 'Enter') {\n this.select(this.focusedItem);\n }\n }\n }\n\n ngOnInit() {\n this.enableNavigation();\n }\n\n ngAfterViewInit() {\n const listItems = this.listItems();\n if (listItems.length) {\n this.init();\n }\n }\n\n ngOnDestroy() {\n this.unsubscribe();\n if (this.listItemsEffect) {\n this.listItemsEffect.destroy();\n this.listItemsEffect = undefined;\n }\n }\n\n focus(item?: ListItemDirective) {\n if (!this.selection) {\n return;\n }\n\n this.unfocus();\n\n // We need to make this check because dynamic\n // lists such as in the search results list may fail\n if (item !== undefined) {\n item.focused = true;\n }\n }\n\n unfocus() {\n if (this.focusedItem !== undefined) {\n this.focusedItem.focused = false;\n }\n\n this.focusedItem = undefined;\n }\n\n focusNext() {\n const items = this.listItems();\n let item;\n const igoList = this.el.nativeElement;\n let disabled = true;\n let index = this.getFocusedIndex();\n if (index === undefined) {\n index = -1;\n }\n\n while (disabled && index < items.length - 1) {\n index += 1;\n item = items[index];\n disabled = item.disabled;\n }\n\n if (item !== undefined) {\n this.focus(item);\n }\n\n if (!items[index + 1]) {\n igoList.scrollTop = igoList.scrollHeight - igoList.clientHeight;\n return;\n }\n\n if (item !== undefined && !this.isScrolledIntoView(item.el.nativeElement)) {\n igoList.scrollTop =\n item.el.nativeElement.offsetTop +\n item.el.nativeElement.children[0].offsetHeight -\n igoList.clientHeight;\n }\n }\n\n focusPrevious() {\n const items = this.listItems();\n let item: ListItemDirective;\n const igoList = this.el.nativeElement;\n let disabled = true;\n let index = this.getFocusedIndex();\n\n while (disabled && index > 0) {\n index -= 1;\n item = items[index];\n disabled = item.disabled;\n }\n\n if (item !== undefined) {\n this.focus(item);\n }\n\n if (!items[index - 1]) {\n igoList.scrollTop = 0;\n return;\n }\n\n if (item !== undefined && !this.isScrolledIntoView(item.el.nativeElement)) {\n const padding = 3;\n igoList.scrollTop = item.el.nativeElement.offsetTop - padding;\n }\n }\n\n select(item?: ListItemDirective) {\n if (!this.selection) {\n return;\n }\n\n this.unselect();\n\n if (item !== undefined) {\n item.selected = true;\n }\n }\n\n unselect() {\n this.unfocus();\n\n if (this.selectedItem !== undefined) {\n this.selectedItem.selected = false;\n }\n\n this.selectedItem = undefined;\n }\n\n enableNavigation() {\n if (this.navigation) {\n this.navigationEnabled = true;\n }\n }\n\n disableNavigation() {\n this.navigationEnabled = false;\n }\n\n scrollToItem(item: ListItemDirective) {\n this.el.nativeElement.scrollTop = item.getOffsetTop();\n }\n\n isScrolledIntoView(elem) {\n const docViewTop =\n this.el.nativeElement.scrollTop + this.el.nativeElement.offsetTop;\n const docViewBottom = docViewTop + this.el.nativeElement.clientHeight;\n\n const elemTop = elem.offsetTop;\n const elemBottom = elemTop + elem.children[0].offsetHeight;\n return elemBottom <= docViewBottom && elemTop >= docViewTop;\n }\n\n private init() {\n this.subscribe();\n\n this.selectedItem = this.findSelectedItem();\n this.focusedItem = this.findFocusedItem();\n\n this.enableNavigation();\n }\n\n private subscribe() {\n this.unsubscribe();\n\n this.listItems().forEach((item) => {\n this.subscriptions.push(\n item.beforeSelect.subscribe((item2: ListItemDirective) =>\n this.handleItemBeforeSelect(item2)\n )\n );\n\n this.subscriptions.push(\n item.select.subscribe((item2: ListItemDirective) =>\n this.handleItemSelect(item2)\n )\n );\n\n this.subscriptions.push(\n item.beforeFocus.subscribe((item2: ListItemDirective) =>\n this.handleItemBeforeFocus(item2)\n )\n );\n\n this.subscriptions.push(\n item.focus.subscribe((item2: ListItemDirective) =>\n this.handleItemFocus(item2)\n )\n );\n }, this);\n }\n\n private unsubscribe() {\n this.subscriptions.forEach((sub) => sub.unsubscribe());\n this.subscriptions = [];\n }\n\n private handleItemBeforeFocus(item: ListItemDirective) {\n if (item !== this.focusedItem) {\n this.unfocus();\n }\n }\n\n private handleItemFocus(item: ListItemDirective) {\n this.focusedItem = item;\n }\n\n private handleItemBeforeSelect(item: ListItemDirective) {\n if (item !== this.focusedItem) {\n this.unselect();\n }\n }\n\n private handleItemSelect(item: ListItemDirective) {\n this.selectedItem = item;\n }\n\n private findSelectedItem() {\n return this.listItems().find((item) => item.selected);\n }\n\n private findFocusedItem() {\n return this.listItems().find((item) => item.focused);\n }\n\n private getFocusedIndex() {\n return this.listItems().findIndex((item) => item === this.focusedItem);\n }\n\n private navigate(key: string) {\n switch (key) {\n case 'ArrowUp':\n this.focusPrevious();\n break;\n case 'ArrowDown':\n this.focusNext();\n break;\n default:\n break;\n }\n }\n}\n","<mat-list\n igoClickout\n [ngClass]=\"{ selectable: selection }\"\n (clickout)=\"disableNavigation()\"\n (click)=\"enableNavigation()\"\n>\n <ng-content />\n</mat-list>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { ListItemDirective } from './list-item.directive';\nimport { ListComponent } from './list.component';\n\n/**\n * @deprecated import the components/directives directly or LIST_DIRECTIVES for the set\n */\n@NgModule({\n imports: [ListItemDirective, ListComponent],\n exports: [ListItemDirective, ListComponent]\n})\nexport class IgoListModule {\n static forRoot(): ModuleWithProviders<IgoListModule> {\n return {\n ngModule: IgoListModule,\n providers: []\n };\n }\n}\n","import { ListItemDirective } from './list-item.directive';\nimport { ListComponent } from './list.component';\n\nexport * from './list.module';\nexport * from './list.component';\nexport * from './list-item.directive';\n\nexport const LIST_DIRECTIVES = [ListItemDirective, ListComponent] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"igo2-common-list.mjs","sources":["../../../packages/common/list/src/list-item.directive.ts","../../../packages/common/list/src/list.component.ts","../../../packages/common/list/src/list.component.html","../../../packages/common/list/src/list.module.ts","../../../packages/common/list/src/public_api.ts","../../../packages/common/list/src/igo2-common-list.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n HostListener,\n Input,\n Renderer2,\n inject,\n output\n} from '@angular/core';\n\n@Directive({\n selector: '[igoListItem]',\n standalone: true\n})\nexport class ListItemDirective {\n renderer = inject(Renderer2);\n el = inject(ElementRef);\n\n static focusedCls = 'igo-list-item-focused';\n static selectedCls = 'igo-list-item-selected';\n static disabledCls = 'igo-list-item-disabled';\n\n @Input()\n get color() {\n return this._color;\n }\n set color(value: string) {\n this._color = value;\n }\n private _color = 'primary';\n\n @Input()\n get focused() {\n return this._focused;\n }\n set focused(value: boolean) {\n if (value === this._focused) {\n return;\n }\n if (this.disabled) {\n return;\n }\n\n value ? this.beforeFocus.emit(this) : this.beforeUnfocus.emit(this);\n\n this._focused = value;\n if (this.selected !== true) {\n this.toggleFocusedClass();\n }\n\n value ? this.focus.emit(this) : this.unfocus.emit(this);\n }\n private _focused = false;\n\n @Input()\n get selected() {\n return this._selected;\n }\n set selected(value: boolean) {\n if (value === this._selected) {\n return;\n }\n if (this.disabled) {\n return;\n }\n\n value ? this.beforeSelect.emit(this) : this.beforeUnselect.emit(this);\n\n this._selected = value;\n this._focused = value;\n this.toggleSelectedClass();\n\n value ? this.select.emit(this) : this.unselect.emit(this);\n }\n private _selected = false;\n\n @Input()\n get disabled() {\n return this._disabled;\n }\n set disabled(value: boolean) {\n if (value === this._disabled) {\n return;\n }\n\n if (value === true) {\n this.selected = false;\n }\n\n value ? this.beforeDisable.emit(this) : this.beforeEnable.emit(this);\n\n this._disabled = value;\n this.toggleDisabledClass();\n\n value ? this.disable.emit(this) : this.enable.emit(this);\n }\n private _disabled = false;\n\n readonly beforeSelect = output<ListItemDirective>();\n readonly beforeFocus = output<ListItemDirective>();\n readonly beforeUnselect = output<ListItemDirective>();\n readonly beforeUnfocus = output<ListItemDirective>();\n readonly beforeDisable = output<ListItemDirective>();\n readonly beforeEnable = output<ListItemDirective>();\n readonly focus = output<ListItemDirective>();\n readonly unfocus = output<ListItemDirective>();\n readonly select = output<ListItemDirective>();\n readonly unselect = output<ListItemDirective>();\n readonly disable = output<ListItemDirective>();\n readonly enable = output<ListItemDirective>();\n\n @HostListener('click')\n onClick() {\n this.selected = true;\n }\n\n getOffsetTop(): number {\n const padding = 5;\n\n return this.el.nativeElement.offsetTop - padding;\n }\n\n private toggleFocusedClass() {\n if (this.focused) {\n this.addCls(ListItemDirective.focusedCls);\n } else {\n this.removeCls(ListItemDirective.focusedCls);\n }\n }\n\n private toggleSelectedClass() {\n if (this.selected) {\n this.addCls(ListItemDirective.selectedCls);\n this.removeCls(ListItemDirective.focusedCls);\n } else {\n this.removeCls(ListItemDirective.selectedCls);\n }\n }\n\n private toggleDisabledClass() {\n if (this.disabled) {\n this.addCls(ListItemDirective.disabledCls);\n } else {\n this.removeCls(ListItemDirective.disabledCls);\n }\n }\n\n private addCls(cls: string) {\n this.renderer.addClass(this.el.nativeElement, cls);\n }\n\n private removeCls(cls: string) {\n this.renderer.removeClass(this.el.nativeElement, cls);\n }\n}\n","import { NgClass } from '@angular/common';\nimport {\n AfterViewInit,\n Component,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n contentChildren,\n effect,\n inject\n} from '@angular/core';\nimport { MatListModule } from '@angular/material/list';\n\nimport { ClickoutDirective } from '@igo2/common/clickout';\n\n// subscriptions can be rxjs Subscription or OutputRefSubscription-like objects\n\nimport { ListItemDirective } from './list-item.directive';\n\n@Component({\n selector: 'igo-list',\n templateUrl: './list.component.html',\n styleUrls: ['./list.component.scss'],\n imports: [MatListModule, ClickoutDirective, NgClass]\n})\nexport class ListComponent implements AfterViewInit, OnInit, OnDestroy {\n private el = inject(ElementRef);\n\n @Input()\n get navigation() {\n return this._navigation;\n }\n set navigation(value: boolean) {\n this._navigation = value;\n }\n private _navigation = true;\n\n @Input()\n get selection() {\n return this._selection;\n }\n set selection(value: boolean) {\n this._selection = value;\n }\n private _selection = true;\n\n get selectedItem() {\n return this._selectedItem;\n }\n set selectedItem(value: ListItemDirective) {\n this.focusedItem = value;\n this._selectedItem = value;\n }\n private _selectedItem: ListItemDirective;\n\n get focusedItem() {\n return this._focusedItem;\n }\n set focusedItem(value: ListItemDirective) {\n this._focusedItem = value;\n }\n private _focusedItem: ListItemDirective;\n\n private navigationEnabled: boolean;\n // Accept both rxjs Subscription and Angular signal OutputRefSubscription\n private subscriptions: { unsubscribe: () => void }[] = [];\n private listItemsEffect = effect(() => {\n this.listItems();\n this.init();\n });\n\n readonly listItems = contentChildren(ListItemDirective, {\n descendants: true\n });\n\n @HostListener('document:keydown', ['$event'])\n @HostListener('document:enter', ['$event'])\n handleKeyboardEvent(event: KeyboardEvent) {\n // It would be nice to be able to unsubscribe to the event\n // completely but until ES7 this won't be possible because\n // document events are not observables\n if (this.navigationEnabled) {\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n event.preventDefault();\n this.navigate(event.key);\n } else if (event.key === 'Enter') {\n this.select(this.focusedItem);\n }\n }\n }\n\n ngOnInit() {\n this.enableNavigation();\n }\n\n ngAfterViewInit() {\n const listItems = this.listItems();\n if (listItems.length) {\n this.init();\n }\n }\n\n ngOnDestroy() {\n this.unsubscribe();\n if (this.listItemsEffect) {\n this.listItemsEffect.destroy();\n this.listItemsEffect = undefined;\n }\n }\n\n focus(item?: ListItemDirective) {\n if (!this.selection) {\n return;\n }\n\n this.unfocus();\n\n // We need to make this check because dynamic\n // lists such as in the search results list may fail\n if (item !== undefined) {\n item.focused = true;\n }\n }\n\n unfocus() {\n if (this.focusedItem !== undefined) {\n this.focusedItem.focused = false;\n }\n\n this.focusedItem = undefined;\n }\n\n focusNext() {\n const items = this.listItems();\n let item;\n const igoList = this.el.nativeElement;\n let disabled = true;\n let index = this.getFocusedIndex();\n if (index === undefined) {\n index = -1;\n }\n\n while (disabled && index < items.length - 1) {\n index += 1;\n item = items[index];\n disabled = item.disabled;\n }\n\n if (item !== undefined) {\n this.focus(item);\n }\n\n if (!items[index + 1]) {\n igoList.scrollTop = igoList.scrollHeight - igoList.clientHeight;\n return;\n }\n\n if (item !== undefined && !this.isScrolledIntoView(item.el.nativeElement)) {\n igoList.scrollTop =\n item.el.nativeElement.offsetTop +\n item.el.nativeElement.children[0].offsetHeight -\n igoList.clientHeight;\n }\n }\n\n focusPrevious() {\n const items = this.listItems();\n let item: ListItemDirective;\n const igoList = this.el.nativeElement;\n let disabled = true;\n let index = this.getFocusedIndex();\n\n while (disabled && index > 0) {\n index -= 1;\n item = items[index];\n disabled = item.disabled;\n }\n\n if (item !== undefined) {\n this.focus(item);\n }\n\n if (!items[index - 1]) {\n igoList.scrollTop = 0;\n return;\n }\n\n if (item !== undefined && !this.isScrolledIntoView(item.el.nativeElement)) {\n const padding = 3;\n igoList.scrollTop = item.el.nativeElement.offsetTop - padding;\n }\n }\n\n select(item?: ListItemDirective) {\n if (!this.selection) {\n return;\n }\n\n this.unselect();\n\n if (item !== undefined) {\n item.selected = true;\n }\n }\n\n unselect() {\n this.unfocus();\n\n if (this.selectedItem !== undefined) {\n this.selectedItem.selected = false;\n }\n\n this.selectedItem = undefined;\n }\n\n enableNavigation() {\n if (this.navigation) {\n this.navigationEnabled = true;\n }\n }\n\n disableNavigation() {\n this.navigationEnabled = false;\n }\n\n scrollToItem(item: ListItemDirective) {\n this.el.nativeElement.scrollTop = item.getOffsetTop();\n }\n\n isScrolledIntoView(elem) {\n const docViewTop =\n this.el.nativeElement.scrollTop + this.el.nativeElement.offsetTop;\n const docViewBottom = docViewTop + this.el.nativeElement.clientHeight;\n\n const elemTop = elem.offsetTop;\n const elemBottom = elemTop + elem.children[0].offsetHeight;\n return elemBottom <= docViewBottom && elemTop >= docViewTop;\n }\n\n private init() {\n this.subscribe();\n\n this.selectedItem = this.findSelectedItem();\n this.focusedItem = this.findFocusedItem();\n\n this.enableNavigation();\n }\n\n private subscribe() {\n this.unsubscribe();\n\n this.listItems().forEach((item) => {\n this.subscriptions.push(\n item.beforeSelect.subscribe((item2: ListItemDirective) =>\n this.handleItemBeforeSelect(item2)\n )\n );\n\n this.subscriptions.push(\n item.select.subscribe((item2: ListItemDirective) =>\n this.handleItemSelect(item2)\n )\n );\n\n this.subscriptions.push(\n item.beforeFocus.subscribe((item2: ListItemDirective) =>\n this.handleItemBeforeFocus(item2)\n )\n );\n\n this.subscriptions.push(\n item.focus.subscribe((item2: ListItemDirective) =>\n this.handleItemFocus(item2)\n )\n );\n }, this);\n }\n\n private unsubscribe() {\n this.subscriptions.forEach((sub) => sub.unsubscribe());\n this.subscriptions = [];\n }\n\n private handleItemBeforeFocus(item: ListItemDirective) {\n if (item !== this.focusedItem) {\n this.unfocus();\n }\n }\n\n private handleItemFocus(item: ListItemDirective) {\n this.focusedItem = item;\n }\n\n private handleItemBeforeSelect(item: ListItemDirective) {\n if (item !== this.focusedItem) {\n this.unselect();\n }\n }\n\n private handleItemSelect(item: ListItemDirective) {\n this.selectedItem = item;\n }\n\n private findSelectedItem() {\n return this.listItems().find((item) => item.selected);\n }\n\n private findFocusedItem() {\n return this.listItems().find((item) => item.focused);\n }\n\n private getFocusedIndex() {\n return this.listItems().findIndex((item) => item === this.focusedItem);\n }\n\n private navigate(key: string) {\n switch (key) {\n case 'ArrowUp':\n this.focusPrevious();\n break;\n case 'ArrowDown':\n this.focusNext();\n break;\n default:\n break;\n }\n }\n}\n","<mat-list\n igoClickout\n [ngClass]=\"{ selectable: selection }\"\n (clickout)=\"disableNavigation()\"\n (click)=\"enableNavigation()\"\n>\n <ng-content />\n</mat-list>\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { ListItemDirective } from './list-item.directive';\nimport { ListComponent } from './list.component';\n\n/**\n * @deprecated import the components/directives directly or LIST_DIRECTIVES for the set\n */\n@NgModule({\n imports: [ListItemDirective, ListComponent],\n exports: [ListItemDirective, ListComponent]\n})\nexport class IgoListModule {\n static forRoot(): ModuleWithProviders<IgoListModule> {\n return {\n ngModule: IgoListModule,\n providers: []\n };\n }\n}\n","import { ListItemDirective } from './list-item.directive';\nimport { ListComponent } from './list.component';\n\nexport * from './list.module';\nexport * from './list.component';\nexport * from './list-item.directive';\n\nexport const LIST_DIRECTIVES = [ListItemDirective, ListComponent] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -6,25 +6,25 @@ class PanelComponent {
|
|
|
6
6
|
title = input(undefined, ...(ngDevMode ? [{ debugName: "title" }] : []));
|
|
7
7
|
withHeader = input(true, ...(ngDevMode ? [{ debugName: "withHeader" }] : []));
|
|
8
8
|
cursorPointer = input(false, ...(ngDevMode ? [{ debugName: "cursorPointer" }] : []));
|
|
9
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
10
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: PanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: PanelComponent, isStandalone: true, selector: "igo-panel", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, withHeader: { classPropertyName: "withHeader", publicName: "withHeader", isSignal: true, isRequired: false, transformFunction: null }, cursorPointer: { classPropertyName: "cursorPointer", publicName: "cursorPointer", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.igo-panel-with-header": "withHeader()" } }, ngImport: i0, template: "@if (withHeader()) {\n <div\n class=\"igo-panel-header\"\n title=\"\"\n [ngClass]=\"{ 'igo-cursor-pointer': cursorPointer() === true }\"\n >\n <div class=\"panel-left\">\n <ng-content select=\"[panelLeftButton]\" />\n </div>\n <h5 class=\"igo-panel-title\">\n {{ title() }}\n <ng-content select=\"[panelHeader]\" />\n </h5>\n <div class=\"panel-right\">\n <ng-content select=\"[panelRightButton]\" />\n </div>\n </div>\n}\n<div class=\"igo-panel-content\" title=\"\">\n <ng-content />\n</div>\n", styles: [":host{display:flex;flex-direction:column;overflow:hidden}:host>.igo-panel-header{color:var(--mat-sys-on-primary)!important;background-color:var(--mat-sys-on-primary-container)}:host>.igo-panel-header ::ng-deep mat-icon{fill:var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}:host>.igo-panel-header ::ng-deep .mat-mdc-button-disabled mat-icon{fill:inherit;color:inherit}:host .igo-panel-header{display:flex;justify-content:space-between;align-items:center;height:48px;text-align:center}:host .igo-panel-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;margin:0;font-weight:600;flex:1;color:var(--mat-sys-on-primary)!important}:host .igo-panel-content{flex:1;overflow:auto}:host .igo-cursor-pointer{cursor:pointer}:host .panel-left,:host .panel-right{display:flex;min-width:40px}:host .panel-right:not(:empty){padding-right:4px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11
11
|
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: PanelComponent, decorators: [{
|
|
13
13
|
type: Component,
|
|
14
14
|
args: [{ selector: 'igo-panel', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgClass], host: {
|
|
15
15
|
'[class.igo-panel-with-header]': 'withHeader()'
|
|
16
|
-
}, template: "@if (withHeader()) {\n <div\n class=\"igo-panel-header\"\n title=\"\"\n [ngClass]=\"{ 'igo-cursor-pointer': cursorPointer() === true }\"\n >\n <div class=\"panel-left\">\n <ng-content select=\"[panelLeftButton]\" />\n </div>\n <
|
|
16
|
+
}, template: "@if (withHeader()) {\n <div\n class=\"igo-panel-header\"\n title=\"\"\n [ngClass]=\"{ 'igo-cursor-pointer': cursorPointer() === true }\"\n >\n <div class=\"panel-left\">\n <ng-content select=\"[panelLeftButton]\" />\n </div>\n <h5 class=\"igo-panel-title\">\n {{ title() }}\n <ng-content select=\"[panelHeader]\" />\n </h5>\n <div class=\"panel-right\">\n <ng-content select=\"[panelRightButton]\" />\n </div>\n </div>\n}\n<div class=\"igo-panel-content\" title=\"\">\n <ng-content />\n</div>\n", styles: [":host{display:flex;flex-direction:column;overflow:hidden}:host>.igo-panel-header{color:var(--mat-sys-on-primary)!important;background-color:var(--mat-sys-on-primary-container)}:host>.igo-panel-header ::ng-deep mat-icon{fill:var(--mat-sys-on-primary);color:var(--mat-sys-on-primary)}:host>.igo-panel-header ::ng-deep .mat-mdc-button-disabled mat-icon{fill:inherit;color:inherit}:host .igo-panel-header{display:flex;justify-content:space-between;align-items:center;height:48px;text-align:center}:host .igo-panel-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;margin:0;font-weight:600;flex:1;color:var(--mat-sys-on-primary)!important}:host .igo-panel-content{flex:1;overflow:auto}:host .igo-cursor-pointer{cursor:pointer}:host .panel-left,:host .panel-right{display:flex;min-width:40px}:host .panel-right:not(:empty){padding-right:4px}\n"] }]
|
|
17
17
|
}], propDecorators: { title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], withHeader: [{ type: i0.Input, args: [{ isSignal: true, alias: "withHeader", required: false }] }], cursorPointer: [{ type: i0.Input, args: [{ isSignal: true, alias: "cursorPointer", required: false }] }] } });
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* @deprecated import the PanelComponent directly
|
|
21
21
|
*/
|
|
22
22
|
class IgoPanelModule {
|
|
23
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
24
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
25
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
24
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: IgoPanelModule, imports: [PanelComponent], exports: [PanelComponent] });
|
|
25
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoPanelModule });
|
|
26
26
|
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: IgoPanelModule, decorators: [{
|
|
28
28
|
type: NgModule,
|
|
29
29
|
args: [{
|
|
30
30
|
imports: [PanelComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"igo2-common-panel.mjs","sources":["../../../packages/common/panel/src/panel.component.ts","../../../packages/common/panel/src/panel.component.html","../../../packages/common/panel/src/panel.module.ts","../../../packages/common/panel/src/igo2-common-panel.ts"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'igo-panel',\n templateUrl: './panel.component.html',\n styleUrls: ['./panel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n host: {\n '[class.igo-panel-with-header]': 'withHeader()'\n }\n})\nexport class PanelComponent {\n readonly title = input<string>(undefined);\n readonly withHeader = input(true);\n readonly cursorPointer = input(false);\n}\n","@if (withHeader()) {\n <div\n class=\"igo-panel-header\"\n title=\"\"\n [ngClass]=\"{ 'igo-cursor-pointer': cursorPointer() === true }\"\n >\n <div class=\"panel-left\">\n <ng-content select=\"[panelLeftButton]\" />\n </div>\n <
|
|
1
|
+
{"version":3,"file":"igo2-common-panel.mjs","sources":["../../../packages/common/panel/src/panel.component.ts","../../../packages/common/panel/src/panel.component.html","../../../packages/common/panel/src/panel.module.ts","../../../packages/common/panel/src/igo2-common-panel.ts"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'igo-panel',\n templateUrl: './panel.component.html',\n styleUrls: ['./panel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n host: {\n '[class.igo-panel-with-header]': 'withHeader()'\n }\n})\nexport class PanelComponent {\n readonly title = input<string>(undefined);\n readonly withHeader = input(true);\n readonly cursorPointer = input(false);\n}\n","@if (withHeader()) {\n <div\n class=\"igo-panel-header\"\n title=\"\"\n [ngClass]=\"{ 'igo-cursor-pointer': cursorPointer() === true }\"\n >\n <div class=\"panel-left\">\n <ng-content select=\"[panelLeftButton]\" />\n </div>\n <h5 class=\"igo-panel-title\">\n {{ title() }}\n <ng-content select=\"[panelHeader]\" />\n </h5>\n <div class=\"panel-right\">\n <ng-content select=\"[panelRightButton]\" />\n </div>\n </div>\n}\n<div class=\"igo-panel-content\" title=\"\">\n <ng-content />\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { PanelComponent } from './panel.component';\n\n/**\n * @deprecated import the PanelComponent directly\n */\n@NgModule({\n imports: [PanelComponent],\n exports: [PanelComponent]\n})\nexport class IgoPanelModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;MAaa,cAAc,CAAA;AAChB,IAAA,KAAK,GAAG,KAAK,CAAS,SAAS,iDAAC;AAChC,IAAA,UAAU,GAAG,KAAK,CAAC,IAAI,sDAAC;AACxB,IAAA,aAAa,GAAG,KAAK,CAAC,KAAK,yDAAC;wGAH1B,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,6BAAA,EAAA,cAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECb3B,miBAqBA,EAAA,MAAA,EAAA,CAAA,q1BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDbY,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAKN,cAAc,EAAA,UAAA,EAAA,CAAA;kBAV1B,SAAS;+BACE,WAAW,EAAA,eAAA,EAGJ,uBAAuB,CAAC,MAAM,WACtC,CAAC,OAAO,CAAC,EAAA,IAAA,EACZ;AACJ,wBAAA,+BAA+B,EAAE;AAClC,qBAAA,EAAA,QAAA,EAAA,miBAAA,EAAA,MAAA,EAAA,CAAA,q1BAAA,CAAA,EAAA;;;AEPH;;AAEG;MAKU,cAAc,CAAA;wGAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;yGAAd,cAAc,EAAA,OAAA,EAAA,CAHf,cAAc,CAAA,EAAA,OAAA,EAAA,CACd,cAAc,CAAA,EAAA,CAAA;yGAEb,cAAc,EAAA,CAAA;;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,cAAc,CAAC;oBACzB,OAAO,EAAE,CAAC,cAAc;AACzB,iBAAA;;;ACVD;;AAEG;;;;"}
|
|
@@ -26,10 +26,10 @@ class ResizeDirective {
|
|
|
26
26
|
this.mouseMove$$.unsubscribe();
|
|
27
27
|
this.mouseMove$$ = null;
|
|
28
28
|
}
|
|
29
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
30
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
29
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ResizeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
30
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.19", type: ResizeDirective, isStandalone: true, selector: "[igoResize]", outputs: { change: "change" }, host: { listeners: { "mousedown": "onMouseDown($event)" } }, ngImport: i0 });
|
|
31
31
|
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ResizeDirective, decorators: [{
|
|
33
33
|
type: Directive,
|
|
34
34
|
args: [{
|
|
35
35
|
selector: '[igoResize]'
|
|
@@ -72,10 +72,10 @@ class ResizableBarComponent {
|
|
|
72
72
|
}
|
|
73
73
|
this.change.emit(event);
|
|
74
74
|
}
|
|
75
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
76
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.
|
|
75
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ResizableBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
76
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.19", type: ResizableBarComponent, isStandalone: true, selector: "igo-resizable-bar", inputs: { anchor: { classPropertyName: "anchor", publicName: "anchor", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: "change" }, host: { properties: { "class": "this.cssClass" } }, ngImport: i0, template: "<div igoResize (change)=\"onChange($event)\" class=\"resize-container\">\n <div class=\"resize-indicator\" [ngClass]=\"[alignement]\"></div>\n\n <div class=\"resize-bar\" [ngClass]=\"[alignement]\">\n <div class=\"resize-item\" [ngClass]=\"[alignement]\"></div>\n </div>\n\n <button mat-mini-fab class=\"expand-btn\" [ngClass]=\"[alignement, anchor()]\">\n <mat-icon [style.transform]=\"iconRotation\">drag_handle</mat-icon>\n </button>\n</div>\n", styles: [":host{display:block;position:absolute;transform:translateZ(0);z-index:3000}:host.horizontal{left:0;right:0;height:12px}:host.vertical{top:0;bottom:0;width:3px;height:100%}:host.top{bottom:100%}:host.bottom{bottom:3px}:host.right{left:auto;right:0}:host.left{left:0;right:auto}.resize-container:hover .resize-item,.resize-container:hover .expand-btn{opacity:1}.resize-indicator{opacity:1;pointer-events:none;position:absolute;transition-duration:.2s;transition-property:left,opacity,width;transition-timing-function:cubic-bezier(.2,0,0,1);background:#0000001a}.resize-indicator.horizontal{left:0;right:0;bottom:-2px;height:3px}.resize-indicator.vertical{top:0;bottom:0;right:-2px;width:3px}.resize-bar{position:relative}.resize-bar.horizontal{cursor:n-resize;width:100%;height:12px;bottom:-3px}.resize-bar.vertical{cursor:e-resize;width:3px;height:100%;right:-3px;position:absolute}.resize-item{opacity:0;position:absolute;background-color:var(--mat-sys-secondary-fixed-dim)}.resize-item.horizontal{height:3px;width:100%;bottom:2px}.resize-item.vertical{height:100%;width:3px;right:2px}.expand-btn{pointer-events:none;position:absolute;width:24px;height:24px;line-height:24px;opacity:0;color:var(--mat-sys-primary);background-color:var(--mat-sys-on-primary);transition:opacity .3s cubic-bezier(.2,0,0,1) 0s,transform .3s cubic-bezier(.2,0,0,1) 0s}.expand-btn.horizontal{top:0;left:50%}.expand-btn.vertical{top:50%}.expand-btn.vertical.right{left:-8px}.expand-btn.vertical.left{right:-8px}.expand-btn .mat-icon{color:inherit;height:20px;width:20px;font-size:20px;transition:color .1s linear}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatMiniFabButton, selector: "button[mat-mini-fab], a[mat-mini-fab], button[matMiniFab], a[matMiniFab]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: ResizeDirective, selector: "[igoResize]", outputs: ["change"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
77
77
|
}
|
|
78
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ResizableBarComponent, decorators: [{
|
|
79
79
|
type: Component,
|
|
80
80
|
args: [{ selector: 'igo-resizable-bar', imports: [MatIconModule, MatButtonModule, ResizeDirective, NgClass], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div igoResize (change)=\"onChange($event)\" class=\"resize-container\">\n <div class=\"resize-indicator\" [ngClass]=\"[alignement]\"></div>\n\n <div class=\"resize-bar\" [ngClass]=\"[alignement]\">\n <div class=\"resize-item\" [ngClass]=\"[alignement]\"></div>\n </div>\n\n <button mat-mini-fab class=\"expand-btn\" [ngClass]=\"[alignement, anchor()]\">\n <mat-icon [style.transform]=\"iconRotation\">drag_handle</mat-icon>\n </button>\n</div>\n", styles: [":host{display:block;position:absolute;transform:translateZ(0);z-index:3000}:host.horizontal{left:0;right:0;height:12px}:host.vertical{top:0;bottom:0;width:3px;height:100%}:host.top{bottom:100%}:host.bottom{bottom:3px}:host.right{left:auto;right:0}:host.left{left:0;right:auto}.resize-container:hover .resize-item,.resize-container:hover .expand-btn{opacity:1}.resize-indicator{opacity:1;pointer-events:none;position:absolute;transition-duration:.2s;transition-property:left,opacity,width;transition-timing-function:cubic-bezier(.2,0,0,1);background:#0000001a}.resize-indicator.horizontal{left:0;right:0;bottom:-2px;height:3px}.resize-indicator.vertical{top:0;bottom:0;right:-2px;width:3px}.resize-bar{position:relative}.resize-bar.horizontal{cursor:n-resize;width:100%;height:12px;bottom:-3px}.resize-bar.vertical{cursor:e-resize;width:3px;height:100%;right:-3px;position:absolute}.resize-item{opacity:0;position:absolute;background-color:var(--mat-sys-secondary-fixed-dim)}.resize-item.horizontal{height:3px;width:100%;bottom:2px}.resize-item.vertical{height:100%;width:3px;right:2px}.expand-btn{pointer-events:none;position:absolute;width:24px;height:24px;line-height:24px;opacity:0;color:var(--mat-sys-primary);background-color:var(--mat-sys-on-primary);transition:opacity .3s cubic-bezier(.2,0,0,1) 0s,transform .3s cubic-bezier(.2,0,0,1) 0s}.expand-btn.horizontal{top:0;left:50%}.expand-btn.vertical{top:50%}.expand-btn.vertical.right{left:-8px}.expand-btn.vertical.left{right:-8px}.expand-btn .mat-icon{color:inherit;height:20px;width:20px;font-size:20px;transition:color .1s linear}\n"] }]
|
|
81
81
|
}], propDecorators: { anchor: [{ type: i0.Input, args: [{ isSignal: true, alias: "anchor", required: false }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], change: [{ type: i0.Output, args: ["change"] }], cssClass: [{
|