@fundamental-ngx/platform 0.44.0-rc.2 → 0.44.0-rc.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/button/button.component.d.ts +8 -2
- package/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.d.ts +1 -1
- package/esm2022/action-bar/action-bar.component.mjs +9 -3
- package/esm2022/approval-flow/approval-flow-add-node/approval-flow-add-node.component.mjs +1 -1
- package/esm2022/approval-flow/approval-flow.component.mjs +14 -4
- package/esm2022/button/button.component.mjs +21 -1
- package/esm2022/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -2
- package/esm2022/feed-input/feed-input.component.mjs +12 -1
- package/esm2022/form/checkbox/checkbox.component.mjs +11 -1
- package/esm2022/form/combobox/combobox-mobile/combobox/combobox-mobile.component.mjs +1 -1
- package/esm2022/form/date-picker/date-picker.component.mjs +34 -1
- package/esm2022/form/datetime-picker/datetime-picker.component.mjs +45 -1
- package/esm2022/form/form-group/form-field/form-field.component.mjs +13 -3
- package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.mjs +1 -1
- package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +1 -1
- package/esm2022/form/select/commons/base-select.mjs +9 -3
- package/esm2022/form/select/select/select.component.mjs +1 -1
- package/esm2022/form/time-picker/time-picker.component.mjs +17 -1
- package/esm2022/list/base-list-item.mjs +4 -1
- package/esm2022/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.mjs +31 -29
- package/esm2022/message-popover/components/message-view/message-view.component.mjs +12 -11
- package/esm2022/message-popover/message-popover.component.mjs +21 -22
- package/esm2022/page-footer/page-footer.component.mjs +11 -3
- package/esm2022/search-field/search-field-mobile/search-field/search-field-mobile.component.mjs +1 -1
- package/esm2022/search-field/search-field.component.mjs +34 -11
- package/esm2022/settings-generator/layouts/base-settings-generator-layout.mjs +3 -3
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-icon/settings-generator-sidebar-icon.component.mjs +8 -8
- package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +18 -17
- package/esm2022/settings-generator/settings-generator.component.mjs +14 -17
- package/esm2022/smart-filter-bar/components/smart-filter-bar-conditions-dialog/smart-filter-bar-conditions-dialog.component.mjs +1 -1
- package/esm2022/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +1 -1
- package/esm2022/smart-filter-bar/smart-filter-bar.class.mjs +1 -1
- package/esm2022/smart-filter-bar/smart-filter-bar.component.mjs +75 -21
- package/esm2022/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +14 -13
- package/esm2022/table/components/table-column-resizer/table-column-resizer.component.mjs +14 -11
- package/esm2022/table/components/table-header-row/table-header-row.component.mjs +7 -9
- package/esm2022/table/components/table-p13-dialog/columns/columns.component.mjs +1 -1
- package/esm2022/table/components/table-p13-dialog/filtering/filter-rule.component.mjs +1 -1
- package/esm2022/table/components/table-p13-dialog/filtering/filtering.component.mjs +1 -1
- package/esm2022/table/components/table-p13-dialog/grouping/grouping.component.mjs +1 -1
- package/esm2022/table/components/table-p13-dialog/sorting/sorting.component.mjs +1 -1
- package/esm2022/table/components/table-popping-row/table-popping-row.component.mjs +5 -7
- package/esm2022/table/components/table-row/table-row.component.mjs +31 -32
- package/esm2022/table/components/table-view-settings-dialog/filtering/filters.component.mjs +1 -1
- package/esm2022/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +1 -1
- package/esm2022/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +1 -1
- package/esm2022/table-helpers/directives/table-cell-resizable.directive.mjs +5 -4
- package/esm2022/table-helpers/directives/table-data-source.directive.mjs +8 -12
- package/esm2022/table-helpers/directives/table-header-resizer.directive.mjs +10 -11
- package/esm2022/table-helpers/directives/table-scrollable.directive.mjs +9 -15
- package/esm2022/table-helpers/directives/table-virtual-scroll.directive.mjs +5 -8
- package/esm2022/thumbnail/thumbnail-details/thumbnail-details.component.mjs +10 -4
- package/esm2022/thumbnail/thumbnail-image/thumbnail-image.component.mjs +12 -4
- package/esm2022/thumbnail/thumbnail.component.mjs +13 -4
- package/esm2022/upload-collection/dialogs/move-to/move-to.component.mjs +1 -1
- package/esm2022/upload-collection/upload-collection/upload-collection.component.mjs +36 -3
- package/esm2022/value-help-dialog/components/define-tab/define-tab.component.mjs +23 -6
- package/esm2022/value-help-dialog/components/select-tab/select-tab.component.mjs +14 -2
- package/esm2022/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +36 -3
- package/esm2022/variant-management/components/variant-management-wrapper/variant-management-wrapper.component.mjs +13 -16
- package/esm2022/variant-management/variant-management.component.mjs +1 -1
- package/feed-input/feed-input.component.d.ts +4 -1
- package/fesm2022/fundamental-ngx-platform-action-bar.mjs +10 -4
- package/fesm2022/fundamental-ngx-platform-action-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs +17 -7
- package/fesm2022/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-button.mjs +20 -0
- package/fesm2022/fundamental-ngx-platform-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs +2 -2
- package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs +11 -0
- package/fesm2022/fundamental-ngx-platform-feed-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-form.mjs +127 -8
- package/fesm2022/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-list.mjs +3 -0
- package/fesm2022/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs +54 -50
- package/fesm2022/fundamental-ngx-platform-message-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs +11 -3
- package/fesm2022/fundamental-ngx-platform-page-footer.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-search-field.mjs +34 -11
- package/fesm2022/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs +31 -33
- package/fesm2022/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs +82 -26
- package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table-helpers.mjs +23 -35
- package/fesm2022/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-table.mjs +64 -67
- package/fesm2022/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-thumbnail.mjs +27 -8
- package/fesm2022/fundamental-ngx-platform-thumbnail.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-upload-collection.mjs +38 -5
- package/fesm2022/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs +70 -8
- package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs +15 -16
- package/fesm2022/fundamental-ngx-platform-variant-management.mjs.map +1 -1
- package/form/checkbox/checkbox.component.d.ts +4 -2
- package/form/date-picker/date-picker.component.d.ts +16 -7
- package/form/datetime-picker/datetime-picker.component.d.ts +20 -8
- package/form/form-group/form-field/form-field.component.d.ts +4 -1
- package/form/time-picker/time-picker.component.d.ts +4 -1
- package/fundamental-ngx-platform-v0.44.0-rc.4.tgz +0 -0
- package/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.d.ts +22 -21
- package/message-popover/components/message-view/message-view.component.d.ts +4 -5
- package/message-popover/message-popover.component.d.ts +7 -6
- package/package.json +4 -4
- package/schematics/ng-add/index.js +1 -1
- package/search-field/search-field.component.d.ts +25 -19
- package/settings-generator/layouts/base-settings-generator-layout.d.ts +16 -17
- package/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-icon/settings-generator-sidebar-icon.component.d.ts +3 -3
- package/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.d.ts +6 -7
- package/settings-generator/settings-generator.component.d.ts +8 -8
- package/smart-filter-bar/smart-filter-bar.class.d.ts +5 -5
- package/smart-filter-bar/smart-filter-bar.component.d.ts +31 -17
- package/table/components/table-cell-header-popover/table-cell-header-popover.component.d.ts +3 -3
- package/table/components/table-column-resizer/table-column-resizer.component.d.ts +1 -1
- package/table/components/table-row/table-row.component.d.ts +10 -10
- package/table-helpers/directives/table-data-source.directive.d.ts +11 -13
- package/table-helpers/directives/table-header-resizer.directive.d.ts +3 -3
- package/table-helpers/directives/table-scrollable.directive.d.ts +1 -1
- package/table-helpers/directives/table-virtual-scroll.directive.d.ts +1 -1
- package/thumbnail/thumbnail-details/thumbnail-details.component.d.ts +2 -2
- package/thumbnail/thumbnail-image/thumbnail-image.component.d.ts +1 -1
- package/upload-collection/upload-collection/upload-collection.component.d.ts +11 -5
- package/value-help-dialog/components/define-tab/define-tab.component.d.ts +8 -2
- package/value-help-dialog/components/select-tab/select-tab.component.d.ts +6 -3
- package/value-help-dialog/value-help-dialog/value-help-dialog.component.d.ts +12 -3
- package/variant-management/components/variant-management-wrapper/variant-management-wrapper.component.d.ts +1 -3
- package/fundamental-ngx-platform-v0.44.0-rc.2.tgz +0 -0
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, Component, Optional, Input, Output, ViewChildren, ViewChild, forwardRef, HostListener, ViewEncapsulation, NgModule } from '@angular/core';
|
|
2
|
+
import { EventEmitter, ChangeDetectorRef, Component, Optional, Input, Output, ViewChildren, ViewChild, forwardRef, HostListener, ViewEncapsulation, NgModule } from '@angular/core';
|
|
3
3
|
import * as i3 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i4 from '@fundamental-ngx/core/avatar';
|
|
6
6
|
import { AvatarModule } from '@fundamental-ngx/core/avatar';
|
|
7
7
|
import { CarouselModule } from '@fundamental-ngx/core/carousel';
|
|
8
8
|
import * as i1 from '@fundamental-ngx/core/dialog';
|
|
9
|
-
import {
|
|
9
|
+
import { DialogService, DialogRef, DialogModule } from '@fundamental-ngx/core/dialog';
|
|
10
10
|
import * as i4$1 from '@fundamental-ngx/core/button';
|
|
11
11
|
import { ButtonModule } from '@fundamental-ngx/core/button';
|
|
12
12
|
import * as i2 from '@fundamental-ngx/cdk/utils';
|
|
13
13
|
import { KeyUtil, RtlService } from '@fundamental-ngx/cdk/utils';
|
|
14
|
+
import { __decorate, __metadata } from 'tslib';
|
|
14
15
|
import { SPACE } from '@angular/cdk/keycodes';
|
|
16
|
+
import deprecated from 'deprecated-decorator';
|
|
15
17
|
import * as i5 from '@fundamental-ngx/i18n';
|
|
16
18
|
import { I18nModule } from '@fundamental-ngx/i18n';
|
|
17
19
|
import * as i3$1 from '@fundamental-ngx/core/title';
|
|
@@ -21,7 +23,7 @@ import { BaseComponent } from '@fundamental-ngx/platform/shared';
|
|
|
21
23
|
* @deprecated
|
|
22
24
|
* ThumbnailImage component is deprecated since version 0.40.0
|
|
23
25
|
*/
|
|
24
|
-
class ThumbnailImageComponent {
|
|
26
|
+
let ThumbnailImageComponent = class ThumbnailImageComponent {
|
|
25
27
|
/** @hidden */
|
|
26
28
|
constructor(_changeDetectorRef, _dialogService, _rtlService) {
|
|
27
29
|
this._changeDetectorRef = _changeDetectorRef;
|
|
@@ -81,7 +83,13 @@ class ThumbnailImageComponent {
|
|
|
81
83
|
}
|
|
82
84
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ThumbnailImageComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.DialogService }, { token: i2.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
83
85
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: ThumbnailImageComponent, selector: "fdp-thumbnail-image", inputs: { mediaList: "mediaList", isHorizontal: "isHorizontal", maxImages: "maxImages", roleDescription: "roleDescription", thumbnailId: "thumbnailId" }, outputs: { thumbnailClicked: "thumbnailClicked", openDetailsDialog: "openDetailsDialog" }, viewQueries: [{ propertyName: "thumbnailImages", predicate: ["thumbnailImage"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"fdp-thumbnail-image-container\" role=\"listbox\">\n <div\n #thumbnailImage\n *ngFor=\"let image of mediaList | slice: 0:maxImages; let i = index\"\n [class]=\"isHorizontal ? 'fdp-thumbnail-image--horizontal' : 'fdp-thumbnail-image'\"\n [class.fdp-thumbnail-image--selected]=\"image.selected\"\n [class.fdp-thumbnail-image--overlay]=\"image.overlayRequired\"\n (click)=\"openImage(image)\"\n (keydown.space)=\"openImage(image, $event)\"\n tabindex=\"0\"\n role=\"option\"\n [attr.aria-roledescription]=\"roleDescription || ('platformThumbnail.roleDescription' | fdTranslate)\"\n [attr.aria-selected]=\"image.selected\"\n [attr.title]=\"image.label\"\n [attr.aria-label]=\"image.label\"\n >\n <fd-avatar [image]=\"image.thumbnailUrl\" size=\"m\"></fd-avatar>\n <div class=\"fdp-thumbnail-overflow\" *ngIf=\"image.overlayRequired\">+{{ mediaList.length - maxImages }}</div>\n </div>\n</div>\n", styles: [".fdp-thumbnail-image-container{display:block}.fdp-thumbnail-image-container .fdp-thumbnail-image{width:4.625rem;height:4.625rem;border:.015rem solid transparent;border-radius:.25rem;margin:.688rem;position:relative}.fdp-thumbnail-image-container .fdp-thumbnail-image fd-avatar{width:4.625rem;height:4.625rem;max-width:4.625rem;max-height:4.625rem}.fdp-thumbnail-image-container .fdp-thumbnail-image:hover{cursor:pointer;border-color:var(--sapLink_Hover_Color)}.fdp-thumbnail-image-container .fdp-thumbnail-image:focus,.fdp-thumbnail-image-container .fdp-thumbnail-image.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal{display:inline-block;border:.015rem solid transparent;background-clip:border-box;margin:.688rem;position:relative}.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal:hover{cursor:pointer;border-color:var(--sapLink_Hover_Color)}.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal:focus,.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}.fdp-thumbnail-image-container .fdp-thumbnail-image--selected,.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.fdp-thumbnail-image--selected{margin:0;width:5.75rem;height:5.5rem;border:.015rem solid;border-radius:.25rem;border-color:#085caf;border-color:var(--sapButton_Emphasized_Hover_BorderColor, #085caf);border-width:var(--sapButton_BorderWidth)}.fdp-thumbnail-image-container .fdp-thumbnail-image--selected fd-avatar,.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.fdp-thumbnail-image--selected fd-avatar{width:5.75rem;height:5.5rem;max-width:5.75rem;max-height:5.5rem}.fdp-thumbnail-image-container .fdp-thumbnail-image--overlay,.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.fdp-thumbnail-image--overlay{opacity:.5}.fdp-thumbnail-image-container .fdp-thumbnail-overflow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;color:var(--sapShell_TextColor, #fff)}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "backgroundImage", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "pipe", type: i3.SlicePipe, name: "slice" }, { kind: "pipe", type: i5.FdTranslatePipe, name: "fdTranslate" }] }); }
|
|
84
|
-
}
|
|
86
|
+
};
|
|
87
|
+
ThumbnailImageComponent = __decorate([
|
|
88
|
+
deprecated({ version: '0.40.0' }),
|
|
89
|
+
__metadata("design:paramtypes", [ChangeDetectorRef,
|
|
90
|
+
DialogService,
|
|
91
|
+
RtlService])
|
|
92
|
+
], ThumbnailImageComponent);
|
|
85
93
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ThumbnailImageComponent, decorators: [{
|
|
86
94
|
type: Component,
|
|
87
95
|
args: [{ selector: 'fdp-thumbnail-image', template: "<div class=\"fdp-thumbnail-image-container\" role=\"listbox\">\n <div\n #thumbnailImage\n *ngFor=\"let image of mediaList | slice: 0:maxImages; let i = index\"\n [class]=\"isHorizontal ? 'fdp-thumbnail-image--horizontal' : 'fdp-thumbnail-image'\"\n [class.fdp-thumbnail-image--selected]=\"image.selected\"\n [class.fdp-thumbnail-image--overlay]=\"image.overlayRequired\"\n (click)=\"openImage(image)\"\n (keydown.space)=\"openImage(image, $event)\"\n tabindex=\"0\"\n role=\"option\"\n [attr.aria-roledescription]=\"roleDescription || ('platformThumbnail.roleDescription' | fdTranslate)\"\n [attr.aria-selected]=\"image.selected\"\n [attr.title]=\"image.label\"\n [attr.aria-label]=\"image.label\"\n >\n <fd-avatar [image]=\"image.thumbnailUrl\" size=\"m\"></fd-avatar>\n <div class=\"fdp-thumbnail-overflow\" *ngIf=\"image.overlayRequired\">+{{ mediaList.length - maxImages }}</div>\n </div>\n</div>\n", styles: [".fdp-thumbnail-image-container{display:block}.fdp-thumbnail-image-container .fdp-thumbnail-image{width:4.625rem;height:4.625rem;border:.015rem solid transparent;border-radius:.25rem;margin:.688rem;position:relative}.fdp-thumbnail-image-container .fdp-thumbnail-image fd-avatar{width:4.625rem;height:4.625rem;max-width:4.625rem;max-height:4.625rem}.fdp-thumbnail-image-container .fdp-thumbnail-image:hover{cursor:pointer;border-color:var(--sapLink_Hover_Color)}.fdp-thumbnail-image-container .fdp-thumbnail-image:focus,.fdp-thumbnail-image-container .fdp-thumbnail-image.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal{display:inline-block;border:.015rem solid transparent;background-clip:border-box;margin:.688rem;position:relative}.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal:hover{cursor:pointer;border-color:var(--sapLink_Hover_Color)}.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal:focus,.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}.fdp-thumbnail-image-container .fdp-thumbnail-image--selected,.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.fdp-thumbnail-image--selected{margin:0;width:5.75rem;height:5.5rem;border:.015rem solid;border-radius:.25rem;border-color:#085caf;border-color:var(--sapButton_Emphasized_Hover_BorderColor, #085caf);border-width:var(--sapButton_BorderWidth)}.fdp-thumbnail-image-container .fdp-thumbnail-image--selected fd-avatar,.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.fdp-thumbnail-image--selected fd-avatar{width:5.75rem;height:5.5rem;max-width:5.75rem;max-height:5.5rem}.fdp-thumbnail-image-container .fdp-thumbnail-image--overlay,.fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.fdp-thumbnail-image--overlay{opacity:.5}.fdp-thumbnail-image-container .fdp-thumbnail-overflow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;color:var(--sapShell_TextColor, #fff)}\n"] }]
|
|
@@ -110,7 +118,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
110
118
|
* @deprecated
|
|
111
119
|
* ThumbnailDetails component is deprecated since version 0.40.0
|
|
112
120
|
*/
|
|
113
|
-
class ThumbnailDetailsComponent {
|
|
121
|
+
let ThumbnailDetailsComponent = class ThumbnailDetailsComponent {
|
|
114
122
|
/** @hidden */
|
|
115
123
|
constructor(dialogRef, _cdr) {
|
|
116
124
|
this.dialogRef = dialogRef;
|
|
@@ -232,7 +240,11 @@ class ThumbnailDetailsComponent {
|
|
|
232
240
|
}
|
|
233
241
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ThumbnailDetailsComponent, deps: [{ token: i1.DialogRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
234
242
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: ThumbnailDetailsComponent, selector: "fdp-thumbnail-details", host: { listeners: { "keydown.arrowright": "onKeydownArrowRight($event)", "keydown.arrowleft": "onKeydownArrowLeft($event)" } }, viewQueries: [{ propertyName: "thumbnailImage", first: true, predicate: i0.forwardRef(function () { return ThumbnailImageComponent; }), descendants: true }], ngImport: i0, template: "<fd-dialog [attr.dir]=\"_data.rtl ? 'rtl' : 'ltr'\">\n <fd-dialog-header>\n <h5 [attr.id]=\"_data.thumbnailId\" [headerSize]=\"5\" fd-title>{{ _data.selectedMedia.title }}</h5>\n </fd-dialog-header>\n <fd-dialog-body>\n <button\n class=\"fd-button fdp-thumbnail-button--left\"\n [title]=\"'platformThumbnail.detailsGotoPreviousButtonTitle' | fdTranslate\"\n [attr.aria-label]=\"'platformThumbnail.detailsGotoPreviousButtonTitle' | fdTranslate\"\n (click)=\"_data.rtl ? next() : previous()\"\n [disabled]=\"leftButtonDisabled\"\n [style.z-index]=\"1\"\n data-slide=\"previous\"\n >\n <i class=\"sap-icon--slim-arrow-left\"></i>\n </button>\n <div class=\"fdp-media-container\">\n <img\n *ngIf=\"_data.selectedMedia.mediaType === 'image'\"\n class=\"fdp-dialog-media-thumbnail-img\"\n [attr.aria-label]=\"_data.selectedMedia.label\"\n [src]=\"_data.selectedMedia.thumbnailUrl\"\n alt=\"first image\"\n />\n\n <video\n *ngIf=\"_data.selectedMedia.mediaType === 'video'\"\n [attr.aria-label]=\"_data.selectedMedia.label\"\n [src]=\"_data.selectedMedia.mediaUrl\"\n controls\n >\n {{ _data.selectedMedia.alt }}\n <track\n [src]=\"_data.selectedMedia.captionFile\"\n kind=\"captions\"\n srclang=\"en\"\n [label]=\"_data.selectedMedia.label\"\n />\n <track\n [src]=\"_data.selectedMedia.audioDescFile\"\n kind=\"descriptions\"\n srclang=\"en\"\n [label]=\"_data.selectedMedia.label\"\n />\n </video>\n </div>\n <button\n class=\"fd-button fdp-thumbnail-button--right\"\n [title]=\"'platformThumbnail.detailsGotoNextButtonTitle' | fdTranslate\"\n [attr.aria-label]=\"'platformThumbnail.detailsGotoNextButtonTitle' | fdTranslate\"\n (click)=\"_data.rtl ? previous() : next()\"\n [disabled]=\"rightButtonDisabled\"\n [style.z-index]=\"1\"\n data-slide=\"next\"\n >\n <i class=\"sap-icon--slim-arrow-right\"></i>\n </button>\n <fdp-thumbnail-image\n [mediaList]=\"_data.mediaList\"\n [isHorizontal]=\"true\"\n [maxImages]=\"_data.mediaList.length\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n ></fdp-thumbnail-image>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <button\n fd-button\n [label]=\"'platformThumbnail.detailsDialogCloseBtnLabel' | fdTranslate\"\n fdType=\"transparent\"\n (click)=\"closeDialog()\"\n ></button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [":host ::ng-deep fd-dialog :after{width:84rem;height:45.5rem}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--left{position:absolute;top:50%;left:2rem;border-radius:50%}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--left:hover{cursor:pointer}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--left:disabled{cursor:default}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--right{right:2rem;position:absolute;top:50%;border-radius:50%}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--right:hover{cursor:pointer}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--right:disabled{cursor:default}:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container{position:relative;height:33.125rem;display:flex;width:84rem;max-width:100%;justify-content:center}:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container:focus,:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container img{max-width:33.125rem;max-height:33.125rem;max-width:100%;height:auto;position:absolute;padding:.688rem;bottom:0}:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container video{max-width:33.125rem;max-height:33.125rem;width:33.125rem;height:33.125rem;position:absolute;padding:.688rem;bottom:0;left:0}:host ::ng-deep fd-dialog .fdp-thumbnail-image-container{text-align:center}:host ::ng-deep fd-dialog .fdp-thumbnail-image-container .fdp-thumbnail-image{width:4.625rem;height:4.625rem}:host ::ng-deep fd-dialog .fdp-thumbnail-image-container fd-avatar{width:4.625rem;height:4.625rem}:host ::ng-deep fd-dialog .fdp-thumbnail-image-container .fdp-thumbnail-image--selected,:host ::ng-deep fd-dialog .fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.fdp-thumbnail-image--selected{width:inherit!important;height:inherit!important;border:.015rem solid;border-radius:.25rem;border-color:#085caf;border-color:var(--sapButton_Emphasized_Hover_BorderColor, #085caf)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i1.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i1.DialogFooterButtonComponent, selector: "fd-dialog-footer-button" }, { kind: "component", type: i3$1.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i4$1.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: ThumbnailImageComponent, selector: "fdp-thumbnail-image", inputs: ["mediaList", "isHorizontal", "maxImages", "roleDescription", "thumbnailId"], outputs: ["thumbnailClicked", "openDetailsDialog"] }, { kind: "pipe", type: i5.FdTranslatePipe, name: "fdTranslate" }] }); }
|
|
235
|
-
}
|
|
243
|
+
};
|
|
244
|
+
ThumbnailDetailsComponent = __decorate([
|
|
245
|
+
deprecated({ version: '0.40.0' }),
|
|
246
|
+
__metadata("design:paramtypes", [DialogRef, ChangeDetectorRef])
|
|
247
|
+
], ThumbnailDetailsComponent);
|
|
236
248
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ThumbnailDetailsComponent, decorators: [{
|
|
237
249
|
type: Component,
|
|
238
250
|
args: [{ selector: 'fdp-thumbnail-details', template: "<fd-dialog [attr.dir]=\"_data.rtl ? 'rtl' : 'ltr'\">\n <fd-dialog-header>\n <h5 [attr.id]=\"_data.thumbnailId\" [headerSize]=\"5\" fd-title>{{ _data.selectedMedia.title }}</h5>\n </fd-dialog-header>\n <fd-dialog-body>\n <button\n class=\"fd-button fdp-thumbnail-button--left\"\n [title]=\"'platformThumbnail.detailsGotoPreviousButtonTitle' | fdTranslate\"\n [attr.aria-label]=\"'platformThumbnail.detailsGotoPreviousButtonTitle' | fdTranslate\"\n (click)=\"_data.rtl ? next() : previous()\"\n [disabled]=\"leftButtonDisabled\"\n [style.z-index]=\"1\"\n data-slide=\"previous\"\n >\n <i class=\"sap-icon--slim-arrow-left\"></i>\n </button>\n <div class=\"fdp-media-container\">\n <img\n *ngIf=\"_data.selectedMedia.mediaType === 'image'\"\n class=\"fdp-dialog-media-thumbnail-img\"\n [attr.aria-label]=\"_data.selectedMedia.label\"\n [src]=\"_data.selectedMedia.thumbnailUrl\"\n alt=\"first image\"\n />\n\n <video\n *ngIf=\"_data.selectedMedia.mediaType === 'video'\"\n [attr.aria-label]=\"_data.selectedMedia.label\"\n [src]=\"_data.selectedMedia.mediaUrl\"\n controls\n >\n {{ _data.selectedMedia.alt }}\n <track\n [src]=\"_data.selectedMedia.captionFile\"\n kind=\"captions\"\n srclang=\"en\"\n [label]=\"_data.selectedMedia.label\"\n />\n <track\n [src]=\"_data.selectedMedia.audioDescFile\"\n kind=\"descriptions\"\n srclang=\"en\"\n [label]=\"_data.selectedMedia.label\"\n />\n </video>\n </div>\n <button\n class=\"fd-button fdp-thumbnail-button--right\"\n [title]=\"'platformThumbnail.detailsGotoNextButtonTitle' | fdTranslate\"\n [attr.aria-label]=\"'platformThumbnail.detailsGotoNextButtonTitle' | fdTranslate\"\n (click)=\"_data.rtl ? previous() : next()\"\n [disabled]=\"rightButtonDisabled\"\n [style.z-index]=\"1\"\n data-slide=\"next\"\n >\n <i class=\"sap-icon--slim-arrow-right\"></i>\n </button>\n <fdp-thumbnail-image\n [mediaList]=\"_data.mediaList\"\n [isHorizontal]=\"true\"\n [maxImages]=\"_data.mediaList.length\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n ></fdp-thumbnail-image>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <button\n fd-button\n [label]=\"'platformThumbnail.detailsDialogCloseBtnLabel' | fdTranslate\"\n fdType=\"transparent\"\n (click)=\"closeDialog()\"\n ></button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n", styles: [":host ::ng-deep fd-dialog :after{width:84rem;height:45.5rem}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--left{position:absolute;top:50%;left:2rem;border-radius:50%}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--left:hover{cursor:pointer}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--left:disabled{cursor:default}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--right{right:2rem;position:absolute;top:50%;border-radius:50%}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--right:hover{cursor:pointer}:host ::ng-deep fd-dialog fd-dialog-body .fdp-thumbnail-button--right:disabled{cursor:default}:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container{position:relative;height:33.125rem;display:flex;width:84rem;max-width:100%;justify-content:center}:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container:focus,:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container img{max-width:33.125rem;max-height:33.125rem;max-width:100%;height:auto;position:absolute;padding:.688rem;bottom:0}:host ::ng-deep fd-dialog fd-dialog-body .fdp-media-container video{max-width:33.125rem;max-height:33.125rem;width:33.125rem;height:33.125rem;position:absolute;padding:.688rem;bottom:0;left:0}:host ::ng-deep fd-dialog .fdp-thumbnail-image-container{text-align:center}:host ::ng-deep fd-dialog .fdp-thumbnail-image-container .fdp-thumbnail-image{width:4.625rem;height:4.625rem}:host ::ng-deep fd-dialog .fdp-thumbnail-image-container fd-avatar{width:4.625rem;height:4.625rem}:host ::ng-deep fd-dialog .fdp-thumbnail-image-container .fdp-thumbnail-image--selected,:host ::ng-deep fd-dialog .fdp-thumbnail-image-container .fdp-thumbnail-image--horizontal.fdp-thumbnail-image--selected{width:inherit!important;height:inherit!important;border:.015rem solid;border-radius:.25rem;border-color:#085caf;border-color:var(--sapButton_Emphasized_Hover_BorderColor, #085caf)}\n"] }]
|
|
@@ -267,7 +279,7 @@ class ThumbnailClickedEvent {
|
|
|
267
279
|
* @deprecated
|
|
268
280
|
* Thumbnail component is deprecated since version 0.40.0
|
|
269
281
|
*/
|
|
270
|
-
class ThumbnailComponent extends BaseComponent {
|
|
282
|
+
let ThumbnailComponent = class ThumbnailComponent extends BaseComponent {
|
|
271
283
|
/** @hidden */
|
|
272
284
|
constructor(_changeDetectorRef, _dialogService, _rtlService, _cdr) {
|
|
273
285
|
super(_changeDetectorRef);
|
|
@@ -359,7 +371,14 @@ class ThumbnailComponent extends BaseComponent {
|
|
|
359
371
|
}
|
|
360
372
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ThumbnailComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.DialogService }, { token: i2.RtlService, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
361
373
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: ThumbnailComponent, selector: "fdp-thumbnail", inputs: { mediaList: "mediaList", isHorizontal: "isHorizontal", maxImagesDisplay: "maxImagesDisplay" }, outputs: { thumbnailClicked: "thumbnailClicked" }, host: { listeners: { "keydown.arrowright": "onKeydownArrowRight($event)", "keydown.arrowleft": "onKeydownArrowLeft($event)" } }, viewQueries: [{ propertyName: "thumbnailImage", first: true, predicate: i0.forwardRef(function () { return ThumbnailImageComponent; }), descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"fdp-thumbnail-container\" [class.fdp-thumbnail-container--horizontal]=\"isHorizontal\">\n <fdp-thumbnail-image\n *ngIf=\"!isHorizontal\"\n [thumbnailId]=\"thumbnailId\"\n [mediaList]=\"mediaList\"\n [maxImages]=\"maxImagesDisplay\"\n [isHorizontal]=\"isHorizontal\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n (openDetailsDialog)=\"openDialog($event)\"\n ></fdp-thumbnail-image>\n <div class=\"fdp-media-container\">\n <img\n tabindex=\"0\"\n *ngIf=\"selectedMedia.mediaType === 'image'\"\n [attr.title]=\"selectedMedia.label\"\n [attr.aria-label]=\"selectedMedia.label\"\n [attr.src]=\"selectedMedia.mediaUrl\"\n [attr.alt]=\"selectedMedia.alt\"\n (click)=\"openDialog()\"\n (keydown.space)=\"openDialog()\"\n />\n <video\n tabindex=\"0\"\n *ngIf=\"selectedMedia.mediaType === 'video'\"\n [src]=\"selectedMedia.mediaUrl\"\n (click)=\"openDialog()\"\n (keydown.space)=\"openDialog()\"\n [attr.aria-label]=\"selectedMedia.label\"\n >\n {{ selectedMedia.alt }}\n <track [src]=\"selectedMedia.captionFile\" kind=\"captions\" srclang=\"en\" [label]=\"selectedMedia.label\" />\n <track [src]=\"selectedMedia.audioDescFile\" kind=\"descriptions\" srclang=\"en\" [label]=\"selectedMedia.label\" />\n </video>\n </div>\n <fdp-thumbnail-image\n *ngIf=\"isHorizontal\"\n [mediaList]=\"mediaList\"\n [maxImages]=\"maxImagesDisplay\"\n [isHorizontal]=\"isHorizontal\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n (openDetailsDialog)=\"openDialog($event)\"\n ></fdp-thumbnail-image>\n</div>\n", styles: [".fdp-thumbnail-container{display:inline-flex;width:100%;height:auto}.fdp-thumbnail-container.fdp-thumbnail-container--horizontal{display:block}.fdp-thumbnail-container.fdp-thumbnail-container--horizontal .fdp-media-container{width:100%;max-width:33.125rem;height:33.125rem;padding:.688rem;margin:1rem;inline-size:auto}.fdp-thumbnail-container img{width:100%;height:auto;max-width:33.125rem;max-height:33.125rem;position:absolute}.fdp-thumbnail-container img:focus,.fdp-thumbnail-container img.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}.fdp-thumbnail-container video{width:100%;height:auto;max-width:33.125rem;max-height:33.125rem;position:absolute}.fdp-thumbnail-container video:focus,.fdp-thumbnail-container video.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}.fdp-thumbnail-container .fdp-media-container{position:relative;width:100%;max-width:33.125rem;height:33.125rem;padding:.688rem;margin:1rem;background-color:var(--sapNeutralBackground)}[dir=rtl] .fdp-thumbnail-container .fdp-media-container{margin-left:0;margin-right:1rem}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ThumbnailImageComponent, selector: "fdp-thumbnail-image", inputs: ["mediaList", "isHorizontal", "maxImages", "roleDescription", "thumbnailId"], outputs: ["thumbnailClicked", "openDetailsDialog"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
362
|
-
}
|
|
374
|
+
};
|
|
375
|
+
ThumbnailComponent = __decorate([
|
|
376
|
+
deprecated({ version: '0.40.0' }),
|
|
377
|
+
__metadata("design:paramtypes", [ChangeDetectorRef,
|
|
378
|
+
DialogService,
|
|
379
|
+
RtlService,
|
|
380
|
+
ChangeDetectorRef])
|
|
381
|
+
], ThumbnailComponent);
|
|
363
382
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: ThumbnailComponent, decorators: [{
|
|
364
383
|
type: Component,
|
|
365
384
|
args: [{ selector: 'fdp-thumbnail', encapsulation: ViewEncapsulation.None, template: "<div class=\"fdp-thumbnail-container\" [class.fdp-thumbnail-container--horizontal]=\"isHorizontal\">\n <fdp-thumbnail-image\n *ngIf=\"!isHorizontal\"\n [thumbnailId]=\"thumbnailId\"\n [mediaList]=\"mediaList\"\n [maxImages]=\"maxImagesDisplay\"\n [isHorizontal]=\"isHorizontal\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n (openDetailsDialog)=\"openDialog($event)\"\n ></fdp-thumbnail-image>\n <div class=\"fdp-media-container\">\n <img\n tabindex=\"0\"\n *ngIf=\"selectedMedia.mediaType === 'image'\"\n [attr.title]=\"selectedMedia.label\"\n [attr.aria-label]=\"selectedMedia.label\"\n [attr.src]=\"selectedMedia.mediaUrl\"\n [attr.alt]=\"selectedMedia.alt\"\n (click)=\"openDialog()\"\n (keydown.space)=\"openDialog()\"\n />\n <video\n tabindex=\"0\"\n *ngIf=\"selectedMedia.mediaType === 'video'\"\n [src]=\"selectedMedia.mediaUrl\"\n (click)=\"openDialog()\"\n (keydown.space)=\"openDialog()\"\n [attr.aria-label]=\"selectedMedia.label\"\n >\n {{ selectedMedia.alt }}\n <track [src]=\"selectedMedia.captionFile\" kind=\"captions\" srclang=\"en\" [label]=\"selectedMedia.label\" />\n <track [src]=\"selectedMedia.audioDescFile\" kind=\"descriptions\" srclang=\"en\" [label]=\"selectedMedia.label\" />\n </video>\n </div>\n <fdp-thumbnail-image\n *ngIf=\"isHorizontal\"\n [mediaList]=\"mediaList\"\n [maxImages]=\"maxImagesDisplay\"\n [isHorizontal]=\"isHorizontal\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n (openDetailsDialog)=\"openDialog($event)\"\n ></fdp-thumbnail-image>\n</div>\n", styles: [".fdp-thumbnail-container{display:inline-flex;width:100%;height:auto}.fdp-thumbnail-container.fdp-thumbnail-container--horizontal{display:block}.fdp-thumbnail-container.fdp-thumbnail-container--horizontal .fdp-media-container{width:100%;max-width:33.125rem;height:33.125rem;padding:.688rem;margin:1rem;inline-size:auto}.fdp-thumbnail-container img{width:100%;height:auto;max-width:33.125rem;max-height:33.125rem;position:absolute}.fdp-thumbnail-container img:focus,.fdp-thumbnail-container img.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}.fdp-thumbnail-container video{width:100%;height:auto;max-width:33.125rem;max-height:33.125rem;position:absolute}.fdp-thumbnail-container video:focus,.fdp-thumbnail-container video.is-focus{outline-offset:.0625rem;outline-width:var(--sapContent_FocusWidth);outline-color:var(--sapContent_FocusColor);outline-style:var(--sapContent_FocusStyle)}.fdp-thumbnail-container .fdp-media-container{position:relative;width:100%;max-width:33.125rem;height:33.125rem;padding:.688rem;margin:1rem;background-color:var(--sapNeutralBackground)}[dir=rtl] .fdp-thumbnail-container .fdp-media-container{margin-left:0;margin-right:1rem}\n"] }]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-platform-thumbnail.mjs","sources":["../../../../libs/platform/src/lib/thumbnail/thumbnail-image/thumbnail-image.component.ts","../../../../libs/platform/src/lib/thumbnail/thumbnail-image/thumbnail-image.component.html","../../../../libs/platform/src/lib/thumbnail/thumbnail-details/thumbnail-details.component.ts","../../../../libs/platform/src/lib/thumbnail/thumbnail-details/thumbnail-details.component.html","../../../../libs/platform/src/lib/thumbnail/thumbnail.component.ts","../../../../libs/platform/src/lib/thumbnail/thumbnail.component.html","../../../../libs/platform/src/lib/thumbnail/thumbnail.module.ts","../../../../libs/platform/src/lib/thumbnail/fundamental-ngx-platform-thumbnail.ts"],"sourcesContent":["import {\n Component,\n Input,\n Optional,\n Output,\n EventEmitter,\n OnChanges,\n SimpleChanges,\n OnInit,\n ChangeDetectorRef,\n ViewChildren,\n QueryList,\n ElementRef\n} from '@angular/core';\n\nimport { KeyUtil, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { DialogService } from '@fundamental-ngx/core/dialog';\nimport { Media } from '../thumbnail.interfaces';\nimport { SPACE } from '@angular/cdk/keycodes';\n\n/**\n * @deprecated\n * ThumbnailImage component is deprecated since version 0.40.0\n */\n@Component({\n selector: 'fdp-thumbnail-image',\n templateUrl: './thumbnail-image.component.html',\n styleUrls: ['./thumbnail-image.component.scss']\n})\nexport class ThumbnailImageComponent implements OnChanges, OnInit {\n /** media list obejct contains group of Media object.*/\n @Input()\n mediaList: Media[];\n\n /** Boolean to set the orientaiton of thumbnail images.*/\n @Input()\n isHorizontal = false;\n\n /** Maximum limit for the thumbnail images to display */\n @Input()\n maxImages = 5;\n\n /** Role description for the thumbnail image */\n @Input()\n roleDescription: string;\n\n /** Thumbnail element ID */\n @Input()\n thumbnailId: string;\n\n /** Output event for thumbnail image click */\n @Output()\n thumbnailClicked: EventEmitter<Media> = new EventEmitter();\n\n /** Event emitted when the thumbnail image is clicked and dialog opened */\n @Output()\n openDetailsDialog = new EventEmitter<Media>();\n\n /** List of thumbnail images reference */\n @ViewChildren('thumbnailImage')\n thumbnailImages: QueryList<ElementRef>;\n\n /** @hidden */\n constructor(\n protected _changeDetectorRef: ChangeDetectorRef,\n private _dialogService: DialogService,\n @Optional() private _rtlService: RtlService\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this._setOverlay();\n }\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.mediaList && Array.isArray(this.mediaList)) {\n const alreadySelected: boolean = this.mediaList.some((image) => image.selected);\n if (!alreadySelected) {\n this.mediaList[0].selected = true;\n }\n }\n this._changeDetectorRef.detectChanges();\n }\n\n /** Opens the Dialog when the imgaes croses the maximum number of images to display */\n openDialog(media: Media): void {\n this.mediaList.forEach((item) => (item.selected = false));\n media.selected = true;\n this.openDetailsDialog.emit(media);\n }\n\n /** @hidden */\n thumbnailClick(selectedMedia: Media, event?: Event): void {\n if (event instanceof KeyboardEvent && KeyUtil.isKeyCode(event, SPACE)) {\n event?.preventDefault();\n }\n this.mediaList.forEach((item) => (item.selected = false));\n selectedMedia.selected = true;\n this.thumbnailClicked.emit(selectedMedia);\n }\n\n /** @hidden returns boolean value for rtl */\n private _isRtl(): boolean {\n return this._rtlService?.rtl.getValue();\n }\n\n /** @hidden */\n private _setOverlay(): void {\n if (this.mediaList.length > this.maxImages) {\n this.mediaList[this.maxImages - 1].overlayRequired = true;\n }\n }\n\n /** Open thumbanail image */\n openImage(image: Media, event?: Event): void {\n image.overlayRequired ? this.openDialog(image) : this.thumbnailClick(image, event);\n }\n}\n","<div class=\"fdp-thumbnail-image-container\" role=\"listbox\">\n <div\n #thumbnailImage\n *ngFor=\"let image of mediaList | slice: 0:maxImages; let i = index\"\n [class]=\"isHorizontal ? 'fdp-thumbnail-image--horizontal' : 'fdp-thumbnail-image'\"\n [class.fdp-thumbnail-image--selected]=\"image.selected\"\n [class.fdp-thumbnail-image--overlay]=\"image.overlayRequired\"\n (click)=\"openImage(image)\"\n (keydown.space)=\"openImage(image, $event)\"\n tabindex=\"0\"\n role=\"option\"\n [attr.aria-roledescription]=\"roleDescription || ('platformThumbnail.roleDescription' | fdTranslate)\"\n [attr.aria-selected]=\"image.selected\"\n [attr.title]=\"image.label\"\n [attr.aria-label]=\"image.label\"\n >\n <fd-avatar [image]=\"image.thumbnailUrl\" size=\"m\"></fd-avatar>\n <div class=\"fdp-thumbnail-overflow\" *ngIf=\"image.overlayRequired\">+{{ mediaList.length - maxImages }}</div>\n </div>\n</div>\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n HostListener,\n OnInit,\n ViewChild,\n forwardRef\n} from '@angular/core';\nimport { ThumbnailImageComponent } from '../thumbnail-image/thumbnail-image.component';\nimport { DialogRef } from '@fundamental-ngx/core/dialog';\nimport { Media } from '../thumbnail.interfaces';\n\ninterface DialogRefData {\n selectedMedia: Media;\n mediaList: Media[];\n rtl: boolean;\n maxImages: number;\n thumbnailId: string;\n}\n\n/**\n * @deprecated\n * ThumbnailDetails component is deprecated since version 0.40.0\n */\n@Component({\n selector: 'fdp-thumbnail-details',\n templateUrl: './thumbnail-details.component.html',\n styleUrls: ['./thumbnail-details.component.scss']\n})\nexport class ThumbnailDetailsComponent implements OnInit, AfterViewInit {\n /** @hidden Start index of currently active items */\n currentActiveSlidesStartIndex = 0;\n\n /** @hidden Make left navigation button disabled */\n leftButtonDisabled = false;\n\n /** @hidden Make right navigation button disabled */\n rightButtonDisabled = false;\n\n /** medialist to display */\n mediaList = this.dialogRef.data.mediaList;\n /** max limit */\n maxImages = this.dialogRef.data.maxImages;\n\n /** Reference to thumbnail images component */\n @ViewChild(forwardRef(() => ThumbnailImageComponent))\n thumbnailImage: ThumbnailImageComponent;\n\n /** @hidden */\n constructor(public dialogRef: DialogRef, private _cdr: ChangeDetectorRef) {}\n\n /** @hidden */\n ngOnInit(): void {\n this.dialogRef.data.selectedMedia.selected = true;\n this.currentActiveSlidesStartIndex = this.mediaList.indexOf(this.dialogRef.data.selectedMedia);\n this._buttonVisibility();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.currentActiveSlidesStartIndex = this.mediaList.indexOf(this.dialogRef.data.selectedMedia);\n if (this.mediaList.length > 0) {\n this._buttonVisibility();\n } else {\n this.leftButtonDisabled = true;\n this.rightButtonDisabled = true;\n this._cdr.detectChanges();\n }\n }\n\n /** Transitions to the previous image in the thumbnail. */\n previous(): void {\n if (this.currentActiveSlidesStartIndex <= 0) {\n return;\n }\n this.currentActiveSlidesStartIndex = this.currentActiveSlidesStartIndex - 1;\n this.dialogRef.data.selectedMedia = this.mediaList[this.currentActiveSlidesStartIndex];\n const thumbnailImagesArray = this.thumbnailImage.thumbnailImages.toArray();\n thumbnailImagesArray[this.currentActiveSlidesStartIndex].nativeElement.focus();\n this.mediaList.forEach((item) => (item.selected = false));\n this.mediaList[this.currentActiveSlidesStartIndex].selected = true;\n this._cdr.detectChanges();\n this._buttonVisibility();\n }\n\n /** Transitions to the next image in the thumbnail. */\n next(): void {\n if (this.currentActiveSlidesStartIndex >= this.dialogRef.data.mediaList.length - 1) {\n return;\n }\n this.currentActiveSlidesStartIndex = this.currentActiveSlidesStartIndex + 1;\n this.dialogRef.data.selectedMedia = this.mediaList[this.currentActiveSlidesStartIndex];\n const thumbnailImagesArray = this.thumbnailImage.thumbnailImages.toArray();\n thumbnailImagesArray[this.currentActiveSlidesStartIndex].nativeElement.focus();\n this.mediaList.forEach((item) => (item.selected = false));\n this.mediaList[this.currentActiveSlidesStartIndex].selected = true;\n this._cdr.detectChanges();\n this._buttonVisibility();\n }\n\n /** handles click on thumbnail images */\n thumbnailClickHandle(selectedmedia: Media): void {\n this.dialogRef.data.selectedMedia = selectedmedia;\n this.currentActiveSlidesStartIndex = this.mediaList.indexOf(this.dialogRef.data.selectedMedia);\n this._buttonVisibility();\n }\n\n /** Close dialog */\n closeDialog(): void {\n if (this.mediaList.length > this.maxImages) {\n this.dialogRef.data.mediaList[this.maxImages - 1].overlayRequired = true;\n }\n this.dialogRef.close();\n }\n\n /** @hidden Transitions to the next image in the thumbnail */\n @HostListener('keydown.arrowright', ['$event'])\n onKeydownArrowRight(event: KeyboardEvent): void {\n event.preventDefault();\n this.dialogRef.data.rtl ? this.previous() : this.next();\n }\n\n /** @hidden Transitions to the previous image in the thumbnail*/\n @HostListener('keydown.arrowleft', ['$event'])\n onKeydownArrowLeft(event: KeyboardEvent): void {\n event.preventDefault();\n this.dialogRef.data.rtl ? this.next() : this.previous();\n }\n\n /** @hidden returns data for dialog*/\n get _data(): DialogRefData {\n return this.dialogRef.data;\n }\n\n /** @hidden Handles navigation button visibility */\n private _buttonVisibility(): void {\n if (this.currentActiveSlidesStartIndex === 0) {\n if (this.dialogRef.data.rtl) {\n this.leftButtonDisabled = false;\n this.rightButtonDisabled = true;\n } else {\n this.leftButtonDisabled = true;\n this.rightButtonDisabled = false;\n }\n } else if (this.currentActiveSlidesStartIndex === this.mediaList.length - 1) {\n if (this.dialogRef.data.rtl) {\n this.leftButtonDisabled = true;\n this.rightButtonDisabled = false;\n } else {\n this.leftButtonDisabled = false;\n this.rightButtonDisabled = true;\n }\n } else {\n this.leftButtonDisabled = false;\n this.rightButtonDisabled = false;\n }\n if (this.mediaList.length === 1) {\n this.leftButtonDisabled = true;\n this.rightButtonDisabled = true;\n }\n }\n}\n","<fd-dialog [attr.dir]=\"_data.rtl ? 'rtl' : 'ltr'\">\n <fd-dialog-header>\n <h5 [attr.id]=\"_data.thumbnailId\" [headerSize]=\"5\" fd-title>{{ _data.selectedMedia.title }}</h5>\n </fd-dialog-header>\n <fd-dialog-body>\n <button\n class=\"fd-button fdp-thumbnail-button--left\"\n [title]=\"'platformThumbnail.detailsGotoPreviousButtonTitle' | fdTranslate\"\n [attr.aria-label]=\"'platformThumbnail.detailsGotoPreviousButtonTitle' | fdTranslate\"\n (click)=\"_data.rtl ? next() : previous()\"\n [disabled]=\"leftButtonDisabled\"\n [style.z-index]=\"1\"\n data-slide=\"previous\"\n >\n <i class=\"sap-icon--slim-arrow-left\"></i>\n </button>\n <div class=\"fdp-media-container\">\n <img\n *ngIf=\"_data.selectedMedia.mediaType === 'image'\"\n class=\"fdp-dialog-media-thumbnail-img\"\n [attr.aria-label]=\"_data.selectedMedia.label\"\n [src]=\"_data.selectedMedia.thumbnailUrl\"\n alt=\"first image\"\n />\n\n <video\n *ngIf=\"_data.selectedMedia.mediaType === 'video'\"\n [attr.aria-label]=\"_data.selectedMedia.label\"\n [src]=\"_data.selectedMedia.mediaUrl\"\n controls\n >\n {{ _data.selectedMedia.alt }}\n <track\n [src]=\"_data.selectedMedia.captionFile\"\n kind=\"captions\"\n srclang=\"en\"\n [label]=\"_data.selectedMedia.label\"\n />\n <track\n [src]=\"_data.selectedMedia.audioDescFile\"\n kind=\"descriptions\"\n srclang=\"en\"\n [label]=\"_data.selectedMedia.label\"\n />\n </video>\n </div>\n <button\n class=\"fd-button fdp-thumbnail-button--right\"\n [title]=\"'platformThumbnail.detailsGotoNextButtonTitle' | fdTranslate\"\n [attr.aria-label]=\"'platformThumbnail.detailsGotoNextButtonTitle' | fdTranslate\"\n (click)=\"_data.rtl ? previous() : next()\"\n [disabled]=\"rightButtonDisabled\"\n [style.z-index]=\"1\"\n data-slide=\"next\"\n >\n <i class=\"sap-icon--slim-arrow-right\"></i>\n </button>\n <fdp-thumbnail-image\n [mediaList]=\"_data.mediaList\"\n [isHorizontal]=\"true\"\n [maxImages]=\"_data.mediaList.length\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n ></fdp-thumbnail-image>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <button\n fd-button\n [label]=\"'platformThumbnail.detailsDialogCloseBtnLabel' | fdTranslate\"\n fdType=\"transparent\"\n (click)=\"closeDialog()\"\n ></button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Optional,\n Output,\n ViewEncapsulation,\n HostListener,\n ViewChild,\n forwardRef\n} from '@angular/core';\n\nimport { RtlService } from '@fundamental-ngx/cdk/utils';\nimport { DialogService } from '@fundamental-ngx/core/dialog';\nimport { BaseComponent } from '@fundamental-ngx/platform/shared';\nimport { ThumbnailDetailsComponent } from './thumbnail-details/thumbnail-details.component';\nimport { ThumbnailImageComponent } from './thumbnail-image/thumbnail-image.component';\nimport { Media } from './thumbnail.interfaces';\n\nlet uniqueId = 0;\n\nexport class ThumbnailClickedEvent<T extends ThumbnailComponent = ThumbnailComponent, K = Media> {\n /**\n * Thumbnail click event\n * @param source ThumbnailComponent\n * @param payload Media\n */\n constructor(\n /** The source Thumbnail Component of the event. */\n public source: T,\n /** The new value of a control. */\n public payload: K\n ) {}\n}\n\n/**\n * @deprecated\n * Thumbnail component is deprecated since version 0.40.0\n */\n@Component({\n selector: 'fdp-thumbnail',\n templateUrl: './thumbnail.component.html',\n styleUrls: ['./thumbnail.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class ThumbnailComponent extends BaseComponent implements OnInit {\n /** List of media objects to display. */\n @Input()\n mediaList: Media[];\n\n /** Display orientation of Thumnail component. */\n @Input()\n isHorizontal = false;\n\n /** Max images to display */\n @Input()\n maxImagesDisplay = 5;\n\n /** Event emitted upon click of a thumbnail. */\n @Output()\n thumbnailClicked: EventEmitter<ThumbnailClickedEvent> = new EventEmitter();\n\n /** Reference to thumbnail images component */\n @ViewChild(forwardRef(() => ThumbnailImageComponent))\n thumbnailImage: ThumbnailImageComponent;\n\n /** Generate unique id for the thumbnail */\n thumbnailId: string = 'fd-thumbnail-dialog-header-' + uniqueId++;\n\n /** @hidden Start index of currently active items */\n currentActiveSlidesStartIndex = 0;\n\n /** @hidden Currently selected media. */\n public selectedMedia: Media;\n\n /** @hidden */\n constructor(\n protected _changeDetectorRef: ChangeDetectorRef,\n private _dialogService: DialogService,\n @Optional() private readonly _rtlService: RtlService,\n private _cdr: ChangeDetectorRef\n ) {\n super(_changeDetectorRef);\n }\n\n /** @hidden Select first media object on init. */\n ngOnInit(): void {\n if (Array.isArray(this.mediaList) && this.mediaList.length > 0) {\n this.selectedMedia = this.mediaList[0];\n }\n this._setOverlay();\n }\n\n /** @hidden */\n thumbnailClickHandle(selectedMedia: Media): void {\n this.selectedMedia = selectedMedia;\n this.thumbnailClicked.emit(this._createClickEvent(this.selectedMedia));\n }\n\n /** @hidden */\n openDialog(media: Media = this.selectedMedia): void {\n this.mediaList.forEach((item) => (item.overlayRequired = false));\n this._dialogService.open(ThumbnailDetailsComponent, {\n backdropClickCloseable: false,\n escKeyCloseable: false,\n data: {\n thumbnailId: this.thumbnailId,\n selectedMedia: media,\n mediaList: this.mediaList,\n rtl: this._isRtl(),\n maxImages: this.maxImagesDisplay\n }\n });\n }\n\n /** @hidden returns rtl value */\n _isRtl(): boolean {\n return this._rtlService?.rtl.getValue();\n }\n\n /** @hidden Create Thumbnail click event instance */\n private _createClickEvent(value: Media): ThumbnailClickedEvent {\n return new ThumbnailClickedEvent(this, value);\n }\n\n /** @hidden */\n private _setOverlay(): void {\n if (this.mediaList.length > this.maxImagesDisplay) {\n this.mediaList[this.maxImagesDisplay - 1].overlayRequired = true;\n }\n }\n\n /** @hidden Transitions to the next image in the thumbnail */\n @HostListener('keydown.arrowright', ['$event'])\n onKeydownArrowRight(event: KeyboardEvent): void {\n event.preventDefault();\n this._isRtl() ? this.previous() : this.next();\n }\n\n /** @hidden Transitions to the previous image in the thumbnail*/\n @HostListener('keydown.arrowleft', ['$event'])\n onKeydownArrowLeft(event: KeyboardEvent): void {\n event.preventDefault();\n this._isRtl() ? this.next() : this.previous();\n }\n\n /** Transitions to the previous image in the thumbnail. */\n previous(): void {\n if (this.currentActiveSlidesStartIndex <= 0) {\n return;\n }\n this.currentActiveSlidesStartIndex = this.currentActiveSlidesStartIndex - 1;\n const thumbnailImagesArray = this.thumbnailImage.thumbnailImages.toArray();\n thumbnailImagesArray[this.currentActiveSlidesStartIndex].nativeElement.focus();\n this._cdr.detectChanges();\n }\n\n /** Transitions to the next image in the thumbnail. */\n next(): void {\n if (this.currentActiveSlidesStartIndex >= this.maxImagesDisplay - 1) {\n return;\n }\n this.currentActiveSlidesStartIndex = this.currentActiveSlidesStartIndex + 1;\n const thumbnailImagesArray = this.thumbnailImage.thumbnailImages.toArray();\n thumbnailImagesArray[this.currentActiveSlidesStartIndex].nativeElement.focus();\n this._cdr.detectChanges();\n }\n}\n","<div class=\"fdp-thumbnail-container\" [class.fdp-thumbnail-container--horizontal]=\"isHorizontal\">\n <fdp-thumbnail-image\n *ngIf=\"!isHorizontal\"\n [thumbnailId]=\"thumbnailId\"\n [mediaList]=\"mediaList\"\n [maxImages]=\"maxImagesDisplay\"\n [isHorizontal]=\"isHorizontal\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n (openDetailsDialog)=\"openDialog($event)\"\n ></fdp-thumbnail-image>\n <div class=\"fdp-media-container\">\n <img\n tabindex=\"0\"\n *ngIf=\"selectedMedia.mediaType === 'image'\"\n [attr.title]=\"selectedMedia.label\"\n [attr.aria-label]=\"selectedMedia.label\"\n [attr.src]=\"selectedMedia.mediaUrl\"\n [attr.alt]=\"selectedMedia.alt\"\n (click)=\"openDialog()\"\n (keydown.space)=\"openDialog()\"\n />\n <video\n tabindex=\"0\"\n *ngIf=\"selectedMedia.mediaType === 'video'\"\n [src]=\"selectedMedia.mediaUrl\"\n (click)=\"openDialog()\"\n (keydown.space)=\"openDialog()\"\n [attr.aria-label]=\"selectedMedia.label\"\n >\n {{ selectedMedia.alt }}\n <track [src]=\"selectedMedia.captionFile\" kind=\"captions\" srclang=\"en\" [label]=\"selectedMedia.label\" />\n <track [src]=\"selectedMedia.audioDescFile\" kind=\"descriptions\" srclang=\"en\" [label]=\"selectedMedia.label\" />\n </video>\n </div>\n <fdp-thumbnail-image\n *ngIf=\"isHorizontal\"\n [mediaList]=\"mediaList\"\n [maxImages]=\"maxImagesDisplay\"\n [isHorizontal]=\"isHorizontal\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n (openDetailsDialog)=\"openDialog($event)\"\n ></fdp-thumbnail-image>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { AvatarModule } from '@fundamental-ngx/core/avatar';\nimport { CarouselModule } from '@fundamental-ngx/core/carousel';\nimport { DialogModule, DialogRef } from '@fundamental-ngx/core/dialog';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { RtlService } from '@fundamental-ngx/cdk/utils';\nimport { ThumbnailImageComponent } from './thumbnail-image/thumbnail-image.component';\nimport { ThumbnailDetailsComponent } from './thumbnail-details/thumbnail-details.component';\nimport { ThumbnailComponent } from './thumbnail.component';\nimport { I18nModule } from '@fundamental-ngx/i18n';\n\n@NgModule({\n declarations: [ThumbnailComponent, ThumbnailImageComponent, ThumbnailDetailsComponent],\n providers: [RtlService, DialogRef],\n imports: [CommonModule, AvatarModule, DialogModule, CarouselModule, ButtonModule, I18nModule],\n exports: [ThumbnailComponent, ThumbnailImageComponent, ThumbnailDetailsComponent]\n})\nexport class PlatformThumbnailModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i3","i4","i5.ThumbnailImageComponent","i6","i4.ThumbnailImageComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-platform-thumbnail.mjs","sources":["../../../../libs/platform/src/lib/thumbnail/thumbnail-image/thumbnail-image.component.ts","../../../../libs/platform/src/lib/thumbnail/thumbnail-image/thumbnail-image.component.html","../../../../libs/platform/src/lib/thumbnail/thumbnail-details/thumbnail-details.component.ts","../../../../libs/platform/src/lib/thumbnail/thumbnail-details/thumbnail-details.component.html","../../../../libs/platform/src/lib/thumbnail/thumbnail.component.ts","../../../../libs/platform/src/lib/thumbnail/thumbnail.component.html","../../../../libs/platform/src/lib/thumbnail/thumbnail.module.ts","../../../../libs/platform/src/lib/thumbnail/fundamental-ngx-platform-thumbnail.ts"],"sourcesContent":["import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Optional,\n Output,\n QueryList,\n SimpleChanges,\n ViewChildren\n} from '@angular/core';\n\nimport { KeyUtil, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { DialogService } from '@fundamental-ngx/core/dialog';\nimport { Media } from '../thumbnail.interfaces';\nimport { SPACE } from '@angular/cdk/keycodes';\nimport deprecated from 'deprecated-decorator';\n\n/**\n * @deprecated\n * ThumbnailImage component is deprecated since version 0.40.0\n */\n@deprecated({ version: '0.40.0' })\n@Component({\n selector: 'fdp-thumbnail-image',\n templateUrl: './thumbnail-image.component.html',\n styleUrls: ['./thumbnail-image.component.scss']\n})\nexport class ThumbnailImageComponent implements OnChanges, OnInit {\n /** media list obejct contains group of Media object.*/\n @Input()\n mediaList: Media[];\n\n /** Boolean to set the orientaiton of thumbnail images.*/\n @Input()\n isHorizontal = false;\n\n /** Maximum limit for the thumbnail images to display */\n @Input()\n maxImages = 5;\n\n /** Role description for the thumbnail image */\n @Input()\n roleDescription: string;\n\n /** Thumbnail element ID */\n @Input()\n thumbnailId: string;\n\n /** Output event for thumbnail image click */\n @Output()\n thumbnailClicked: EventEmitter<Media> = new EventEmitter();\n\n /** Event emitted when the thumbnail image is clicked and dialog opened */\n @Output()\n openDetailsDialog = new EventEmitter<Media>();\n\n /** List of thumbnail images reference */\n @ViewChildren('thumbnailImage')\n thumbnailImages: QueryList<ElementRef>;\n\n /** @hidden */\n constructor(\n protected _changeDetectorRef: ChangeDetectorRef,\n private _dialogService: DialogService,\n @Optional() private _rtlService: RtlService\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this._setOverlay();\n }\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.mediaList && Array.isArray(this.mediaList)) {\n const alreadySelected: boolean = this.mediaList.some((image) => image.selected);\n if (!alreadySelected) {\n this.mediaList[0].selected = true;\n }\n }\n this._changeDetectorRef.detectChanges();\n }\n\n /** Opens the Dialog when the imgaes croses the maximum number of images to display */\n openDialog(media: Media): void {\n this.mediaList.forEach((item) => (item.selected = false));\n media.selected = true;\n this.openDetailsDialog.emit(media);\n }\n\n /** @hidden */\n thumbnailClick(selectedMedia: Media, event?: Event): void {\n if (event instanceof KeyboardEvent && KeyUtil.isKeyCode(event, SPACE)) {\n event?.preventDefault();\n }\n this.mediaList.forEach((item) => (item.selected = false));\n selectedMedia.selected = true;\n this.thumbnailClicked.emit(selectedMedia);\n }\n\n /** @hidden returns boolean value for rtl */\n private _isRtl(): boolean {\n return this._rtlService?.rtl.getValue();\n }\n\n /** @hidden */\n private _setOverlay(): void {\n if (this.mediaList.length > this.maxImages) {\n this.mediaList[this.maxImages - 1].overlayRequired = true;\n }\n }\n\n /** Open thumbanail image */\n openImage(image: Media, event?: Event): void {\n image.overlayRequired ? this.openDialog(image) : this.thumbnailClick(image, event);\n }\n}\n","<div class=\"fdp-thumbnail-image-container\" role=\"listbox\">\n <div\n #thumbnailImage\n *ngFor=\"let image of mediaList | slice: 0:maxImages; let i = index\"\n [class]=\"isHorizontal ? 'fdp-thumbnail-image--horizontal' : 'fdp-thumbnail-image'\"\n [class.fdp-thumbnail-image--selected]=\"image.selected\"\n [class.fdp-thumbnail-image--overlay]=\"image.overlayRequired\"\n (click)=\"openImage(image)\"\n (keydown.space)=\"openImage(image, $event)\"\n tabindex=\"0\"\n role=\"option\"\n [attr.aria-roledescription]=\"roleDescription || ('platformThumbnail.roleDescription' | fdTranslate)\"\n [attr.aria-selected]=\"image.selected\"\n [attr.title]=\"image.label\"\n [attr.aria-label]=\"image.label\"\n >\n <fd-avatar [image]=\"image.thumbnailUrl\" size=\"m\"></fd-avatar>\n <div class=\"fdp-thumbnail-overflow\" *ngIf=\"image.overlayRequired\">+{{ mediaList.length - maxImages }}</div>\n </div>\n</div>\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n forwardRef,\n HostListener,\n OnInit,\n ViewChild\n} from '@angular/core';\nimport { ThumbnailImageComponent } from '../thumbnail-image/thumbnail-image.component';\nimport { DialogRef } from '@fundamental-ngx/core/dialog';\nimport { Media } from '../thumbnail.interfaces';\nimport deprecated from 'deprecated-decorator';\n\ninterface DialogRefData {\n selectedMedia: Media;\n mediaList: Media[];\n rtl: boolean;\n maxImages: number;\n thumbnailId: string;\n}\n\n/**\n * @deprecated\n * ThumbnailDetails component is deprecated since version 0.40.0\n */\n@deprecated({ version: '0.40.0' })\n@Component({\n selector: 'fdp-thumbnail-details',\n templateUrl: './thumbnail-details.component.html',\n styleUrls: ['./thumbnail-details.component.scss']\n})\nexport class ThumbnailDetailsComponent implements OnInit, AfterViewInit {\n /** Reference to thumbnail images component */\n @ViewChild(forwardRef(() => ThumbnailImageComponent))\n thumbnailImage: ThumbnailImageComponent;\n\n /** @hidden Start index of currently active items */\n currentActiveSlidesStartIndex = 0;\n\n /** @hidden Make left navigation button disabled */\n leftButtonDisabled = false;\n\n /** @hidden Make right navigation button disabled */\n rightButtonDisabled = false;\n /** medialist to display */\n mediaList = this.dialogRef.data.mediaList;\n\n /** max limit */\n maxImages = this.dialogRef.data.maxImages;\n\n /** @hidden */\n constructor(public dialogRef: DialogRef, private _cdr: ChangeDetectorRef) {}\n\n /** @hidden */\n ngOnInit(): void {\n this.dialogRef.data.selectedMedia.selected = true;\n this.currentActiveSlidesStartIndex = this.mediaList.indexOf(this.dialogRef.data.selectedMedia);\n this._buttonVisibility();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.currentActiveSlidesStartIndex = this.mediaList.indexOf(this.dialogRef.data.selectedMedia);\n if (this.mediaList.length > 0) {\n this._buttonVisibility();\n } else {\n this.leftButtonDisabled = true;\n this.rightButtonDisabled = true;\n this._cdr.detectChanges();\n }\n }\n\n /** Transitions to the previous image in the thumbnail. */\n previous(): void {\n if (this.currentActiveSlidesStartIndex <= 0) {\n return;\n }\n this.currentActiveSlidesStartIndex = this.currentActiveSlidesStartIndex - 1;\n this.dialogRef.data.selectedMedia = this.mediaList[this.currentActiveSlidesStartIndex];\n const thumbnailImagesArray = this.thumbnailImage.thumbnailImages.toArray();\n thumbnailImagesArray[this.currentActiveSlidesStartIndex].nativeElement.focus();\n this.mediaList.forEach((item) => (item.selected = false));\n this.mediaList[this.currentActiveSlidesStartIndex].selected = true;\n this._cdr.detectChanges();\n this._buttonVisibility();\n }\n\n /** Transitions to the next image in the thumbnail. */\n next(): void {\n if (this.currentActiveSlidesStartIndex >= this.dialogRef.data.mediaList.length - 1) {\n return;\n }\n this.currentActiveSlidesStartIndex = this.currentActiveSlidesStartIndex + 1;\n this.dialogRef.data.selectedMedia = this.mediaList[this.currentActiveSlidesStartIndex];\n const thumbnailImagesArray = this.thumbnailImage.thumbnailImages.toArray();\n thumbnailImagesArray[this.currentActiveSlidesStartIndex].nativeElement.focus();\n this.mediaList.forEach((item) => (item.selected = false));\n this.mediaList[this.currentActiveSlidesStartIndex].selected = true;\n this._cdr.detectChanges();\n this._buttonVisibility();\n }\n\n /** handles click on thumbnail images */\n thumbnailClickHandle(selectedmedia: Media): void {\n this.dialogRef.data.selectedMedia = selectedmedia;\n this.currentActiveSlidesStartIndex = this.mediaList.indexOf(this.dialogRef.data.selectedMedia);\n this._buttonVisibility();\n }\n\n /** Close dialog */\n closeDialog(): void {\n if (this.mediaList.length > this.maxImages) {\n this.dialogRef.data.mediaList[this.maxImages - 1].overlayRequired = true;\n }\n this.dialogRef.close();\n }\n\n /** @hidden Transitions to the next image in the thumbnail */\n @HostListener('keydown.arrowright', ['$event'])\n onKeydownArrowRight(event: KeyboardEvent): void {\n event.preventDefault();\n this.dialogRef.data.rtl ? this.previous() : this.next();\n }\n\n /** @hidden Transitions to the previous image in the thumbnail*/\n @HostListener('keydown.arrowleft', ['$event'])\n onKeydownArrowLeft(event: KeyboardEvent): void {\n event.preventDefault();\n this.dialogRef.data.rtl ? this.next() : this.previous();\n }\n\n /** @hidden returns data for dialog*/\n get _data(): DialogRefData {\n return this.dialogRef.data;\n }\n\n /** @hidden Handles navigation button visibility */\n private _buttonVisibility(): void {\n if (this.currentActiveSlidesStartIndex === 0) {\n if (this.dialogRef.data.rtl) {\n this.leftButtonDisabled = false;\n this.rightButtonDisabled = true;\n } else {\n this.leftButtonDisabled = true;\n this.rightButtonDisabled = false;\n }\n } else if (this.currentActiveSlidesStartIndex === this.mediaList.length - 1) {\n if (this.dialogRef.data.rtl) {\n this.leftButtonDisabled = true;\n this.rightButtonDisabled = false;\n } else {\n this.leftButtonDisabled = false;\n this.rightButtonDisabled = true;\n }\n } else {\n this.leftButtonDisabled = false;\n this.rightButtonDisabled = false;\n }\n if (this.mediaList.length === 1) {\n this.leftButtonDisabled = true;\n this.rightButtonDisabled = true;\n }\n }\n}\n","<fd-dialog [attr.dir]=\"_data.rtl ? 'rtl' : 'ltr'\">\n <fd-dialog-header>\n <h5 [attr.id]=\"_data.thumbnailId\" [headerSize]=\"5\" fd-title>{{ _data.selectedMedia.title }}</h5>\n </fd-dialog-header>\n <fd-dialog-body>\n <button\n class=\"fd-button fdp-thumbnail-button--left\"\n [title]=\"'platformThumbnail.detailsGotoPreviousButtonTitle' | fdTranslate\"\n [attr.aria-label]=\"'platformThumbnail.detailsGotoPreviousButtonTitle' | fdTranslate\"\n (click)=\"_data.rtl ? next() : previous()\"\n [disabled]=\"leftButtonDisabled\"\n [style.z-index]=\"1\"\n data-slide=\"previous\"\n >\n <i class=\"sap-icon--slim-arrow-left\"></i>\n </button>\n <div class=\"fdp-media-container\">\n <img\n *ngIf=\"_data.selectedMedia.mediaType === 'image'\"\n class=\"fdp-dialog-media-thumbnail-img\"\n [attr.aria-label]=\"_data.selectedMedia.label\"\n [src]=\"_data.selectedMedia.thumbnailUrl\"\n alt=\"first image\"\n />\n\n <video\n *ngIf=\"_data.selectedMedia.mediaType === 'video'\"\n [attr.aria-label]=\"_data.selectedMedia.label\"\n [src]=\"_data.selectedMedia.mediaUrl\"\n controls\n >\n {{ _data.selectedMedia.alt }}\n <track\n [src]=\"_data.selectedMedia.captionFile\"\n kind=\"captions\"\n srclang=\"en\"\n [label]=\"_data.selectedMedia.label\"\n />\n <track\n [src]=\"_data.selectedMedia.audioDescFile\"\n kind=\"descriptions\"\n srclang=\"en\"\n [label]=\"_data.selectedMedia.label\"\n />\n </video>\n </div>\n <button\n class=\"fd-button fdp-thumbnail-button--right\"\n [title]=\"'platformThumbnail.detailsGotoNextButtonTitle' | fdTranslate\"\n [attr.aria-label]=\"'platformThumbnail.detailsGotoNextButtonTitle' | fdTranslate\"\n (click)=\"_data.rtl ? previous() : next()\"\n [disabled]=\"rightButtonDisabled\"\n [style.z-index]=\"1\"\n data-slide=\"next\"\n >\n <i class=\"sap-icon--slim-arrow-right\"></i>\n </button>\n <fdp-thumbnail-image\n [mediaList]=\"_data.mediaList\"\n [isHorizontal]=\"true\"\n [maxImages]=\"_data.mediaList.length\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n ></fdp-thumbnail-image>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n <fd-dialog-footer-button>\n <button\n fd-button\n [label]=\"'platformThumbnail.detailsDialogCloseBtnLabel' | fdTranslate\"\n fdType=\"transparent\"\n (click)=\"closeDialog()\"\n ></button>\n </fd-dialog-footer-button>\n </fd-dialog-footer>\n</fd-dialog>\n","import {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\n HostListener,\n Input,\n OnInit,\n Optional,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { RtlService } from '@fundamental-ngx/cdk/utils';\nimport { DialogService } from '@fundamental-ngx/core/dialog';\nimport { BaseComponent } from '@fundamental-ngx/platform/shared';\nimport { ThumbnailDetailsComponent } from './thumbnail-details/thumbnail-details.component';\nimport { ThumbnailImageComponent } from './thumbnail-image/thumbnail-image.component';\nimport { Media } from './thumbnail.interfaces';\nimport deprecated from 'deprecated-decorator';\n\nlet uniqueId = 0;\n\nexport class ThumbnailClickedEvent<T extends ThumbnailComponent = ThumbnailComponent, K = Media> {\n /**\n * Thumbnail click event\n * @param source ThumbnailComponent\n * @param payload Media\n */\n constructor(\n /** The source Thumbnail Component of the event. */\n public source: T,\n /** The new value of a control. */\n public payload: K\n ) {}\n}\n/**\n * @deprecated\n * Thumbnail component is deprecated since version 0.40.0\n */\n@deprecated({ version: '0.40.0' })\n@Component({\n selector: 'fdp-thumbnail',\n templateUrl: './thumbnail.component.html',\n styleUrls: ['./thumbnail.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class ThumbnailComponent extends BaseComponent implements OnInit {\n /** List of media objects to display. */\n @Input()\n mediaList: Media[];\n\n /** Display orientation of Thumnail component. */\n @Input()\n isHorizontal = false;\n\n /** Max images to display */\n @Input()\n maxImagesDisplay = 5;\n\n /** Event emitted upon click of a thumbnail. */\n @Output()\n thumbnailClicked: EventEmitter<ThumbnailClickedEvent> = new EventEmitter();\n\n /** Reference to thumbnail images component */\n @ViewChild(forwardRef(() => ThumbnailImageComponent))\n thumbnailImage: ThumbnailImageComponent;\n\n /** Generate unique id for the thumbnail */\n thumbnailId: string = 'fd-thumbnail-dialog-header-' + uniqueId++;\n\n /** @hidden Start index of currently active items */\n currentActiveSlidesStartIndex = 0;\n\n /** @hidden Currently selected media. */\n public selectedMedia: Media;\n\n /** @hidden */\n constructor(\n protected _changeDetectorRef: ChangeDetectorRef,\n private _dialogService: DialogService,\n @Optional() private readonly _rtlService: RtlService,\n private _cdr: ChangeDetectorRef\n ) {\n super(_changeDetectorRef);\n }\n\n /** @hidden Select first media object on init. */\n ngOnInit(): void {\n if (Array.isArray(this.mediaList) && this.mediaList.length > 0) {\n this.selectedMedia = this.mediaList[0];\n }\n this._setOverlay();\n }\n\n /** @hidden */\n thumbnailClickHandle(selectedMedia: Media): void {\n this.selectedMedia = selectedMedia;\n this.thumbnailClicked.emit(this._createClickEvent(this.selectedMedia));\n }\n\n /** @hidden */\n openDialog(media: Media = this.selectedMedia): void {\n this.mediaList.forEach((item) => (item.overlayRequired = false));\n this._dialogService.open(ThumbnailDetailsComponent, {\n backdropClickCloseable: false,\n escKeyCloseable: false,\n data: {\n thumbnailId: this.thumbnailId,\n selectedMedia: media,\n mediaList: this.mediaList,\n rtl: this._isRtl(),\n maxImages: this.maxImagesDisplay\n }\n });\n }\n\n /** @hidden returns rtl value */\n _isRtl(): boolean {\n return this._rtlService?.rtl.getValue();\n }\n\n /** @hidden Create Thumbnail click event instance */\n private _createClickEvent(value: Media): ThumbnailClickedEvent {\n return new ThumbnailClickedEvent(this, value);\n }\n\n /** @hidden */\n private _setOverlay(): void {\n if (this.mediaList.length > this.maxImagesDisplay) {\n this.mediaList[this.maxImagesDisplay - 1].overlayRequired = true;\n }\n }\n\n /** @hidden Transitions to the next image in the thumbnail */\n @HostListener('keydown.arrowright', ['$event'])\n onKeydownArrowRight(event: KeyboardEvent): void {\n event.preventDefault();\n this._isRtl() ? this.previous() : this.next();\n }\n\n /** @hidden Transitions to the previous image in the thumbnail*/\n @HostListener('keydown.arrowleft', ['$event'])\n onKeydownArrowLeft(event: KeyboardEvent): void {\n event.preventDefault();\n this._isRtl() ? this.next() : this.previous();\n }\n\n /** Transitions to the previous image in the thumbnail. */\n previous(): void {\n if (this.currentActiveSlidesStartIndex <= 0) {\n return;\n }\n this.currentActiveSlidesStartIndex = this.currentActiveSlidesStartIndex - 1;\n const thumbnailImagesArray = this.thumbnailImage.thumbnailImages.toArray();\n thumbnailImagesArray[this.currentActiveSlidesStartIndex].nativeElement.focus();\n this._cdr.detectChanges();\n }\n\n /** Transitions to the next image in the thumbnail. */\n next(): void {\n if (this.currentActiveSlidesStartIndex >= this.maxImagesDisplay - 1) {\n return;\n }\n this.currentActiveSlidesStartIndex = this.currentActiveSlidesStartIndex + 1;\n const thumbnailImagesArray = this.thumbnailImage.thumbnailImages.toArray();\n thumbnailImagesArray[this.currentActiveSlidesStartIndex].nativeElement.focus();\n this._cdr.detectChanges();\n }\n}\n","<div class=\"fdp-thumbnail-container\" [class.fdp-thumbnail-container--horizontal]=\"isHorizontal\">\n <fdp-thumbnail-image\n *ngIf=\"!isHorizontal\"\n [thumbnailId]=\"thumbnailId\"\n [mediaList]=\"mediaList\"\n [maxImages]=\"maxImagesDisplay\"\n [isHorizontal]=\"isHorizontal\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n (openDetailsDialog)=\"openDialog($event)\"\n ></fdp-thumbnail-image>\n <div class=\"fdp-media-container\">\n <img\n tabindex=\"0\"\n *ngIf=\"selectedMedia.mediaType === 'image'\"\n [attr.title]=\"selectedMedia.label\"\n [attr.aria-label]=\"selectedMedia.label\"\n [attr.src]=\"selectedMedia.mediaUrl\"\n [attr.alt]=\"selectedMedia.alt\"\n (click)=\"openDialog()\"\n (keydown.space)=\"openDialog()\"\n />\n <video\n tabindex=\"0\"\n *ngIf=\"selectedMedia.mediaType === 'video'\"\n [src]=\"selectedMedia.mediaUrl\"\n (click)=\"openDialog()\"\n (keydown.space)=\"openDialog()\"\n [attr.aria-label]=\"selectedMedia.label\"\n >\n {{ selectedMedia.alt }}\n <track [src]=\"selectedMedia.captionFile\" kind=\"captions\" srclang=\"en\" [label]=\"selectedMedia.label\" />\n <track [src]=\"selectedMedia.audioDescFile\" kind=\"descriptions\" srclang=\"en\" [label]=\"selectedMedia.label\" />\n </video>\n </div>\n <fdp-thumbnail-image\n *ngIf=\"isHorizontal\"\n [mediaList]=\"mediaList\"\n [maxImages]=\"maxImagesDisplay\"\n [isHorizontal]=\"isHorizontal\"\n (thumbnailClicked)=\"thumbnailClickHandle($event)\"\n (openDetailsDialog)=\"openDialog($event)\"\n ></fdp-thumbnail-image>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { AvatarModule } from '@fundamental-ngx/core/avatar';\nimport { CarouselModule } from '@fundamental-ngx/core/carousel';\nimport { DialogModule, DialogRef } from '@fundamental-ngx/core/dialog';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { RtlService } from '@fundamental-ngx/cdk/utils';\nimport { ThumbnailImageComponent } from './thumbnail-image/thumbnail-image.component';\nimport { ThumbnailDetailsComponent } from './thumbnail-details/thumbnail-details.component';\nimport { ThumbnailComponent } from './thumbnail.component';\nimport { I18nModule } from '@fundamental-ngx/i18n';\n\n@NgModule({\n declarations: [ThumbnailComponent, ThumbnailImageComponent, ThumbnailDetailsComponent],\n providers: [RtlService, DialogRef],\n imports: [CommonModule, AvatarModule, DialogModule, CarouselModule, ButtonModule, I18nModule],\n exports: [ThumbnailComponent, ThumbnailImageComponent, ThumbnailDetailsComponent]\n})\nexport class PlatformThumbnailModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i3","i4","i5.ThumbnailImageComponent","i6","i4.ThumbnailImageComponent"],"mappings":"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"}
|