@fundamental-ngx/core 0.63.0-rc.2 → 0.63.0-rc.21
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/fesm2022/fundamental-ngx-core-action-bar.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-action-sheet.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-action-sheet.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar-group.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-avatar-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-bar.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-busy-indicator.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-button.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-calendar.mjs +52 -47
- package/fesm2022/fundamental-ngx-core-calendar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-card.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-card.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-carousel.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-checkbox.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-combobox.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-date-picker.mjs +7 -6
- package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +14 -13
- package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-datetime.mjs +295 -100
- package/fesm2022/fundamental-ngx-core-datetime.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-dialog.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-dynamic-page.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-facets.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-feed-input.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-feed-list-item.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-file-uploader.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-form.mjs +19 -16
- package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-generic-tag.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-grid-list.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-icon.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-info-label.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-input-group.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-layout-grid.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-layout-panel.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-link.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-list.mjs +4 -4
- package/fesm2022/fundamental-ngx-core-message-box.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-message-page.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-message-strip.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-toast.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-multi-input.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-nested-list.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-notification.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-object-attribute.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-object-identifier.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-object-marker.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-object-status.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-overflow-layout.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-pagination.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-panel.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-popover.mjs +110 -6
- package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-product-switch.mjs +3 -3
- package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-progress-indicator.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-progress-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-quick-view.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-radio.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-rating-indicator.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
- package/fesm2022/fundamental-ngx-core-segmented-button.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-select.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-settings.mjs +4 -4
- package/fesm2022/fundamental-ngx-core-shellbar.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-side-navigation.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-skeleton.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-slider.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-split-button.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-status-indicator.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-step-input.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-switch.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-table.mjs +4 -4
- package/fesm2022/fundamental-ngx-core-tabs.mjs +4 -4
- package/fesm2022/fundamental-ngx-core-text.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-tile.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-time-picker.mjs +8 -17
- package/fesm2022/fundamental-ngx-core-time-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-time.mjs +8 -16
- package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-title.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-token.mjs +4 -4
- package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-toolbar.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tree.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-upload-collection.mjs +2 -2
- package/fesm2022/fundamental-ngx-core-user-menu.mjs +25 -4
- package/fesm2022/fundamental-ngx-core-user-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs +4 -4
- package/fesm2022/fundamental-ngx-core-wizard.mjs +2 -2
- package/package.json +4 -4
- package/types/fundamental-ngx-core-calendar.d.ts +5 -12
- package/types/fundamental-ngx-core-datetime-picker.d.ts +0 -2
- package/types/fundamental-ngx-core-datetime.d.ts +109 -68
- package/types/fundamental-ngx-core-form.d.ts +2 -0
- package/types/fundamental-ngx-core-popover.d.ts +378 -319
- package/types/fundamental-ngx-core-time-picker.d.ts +2 -8
- package/types/fundamental-ngx-core-time.d.ts +1 -7
- package/types/fundamental-ngx-core-user-menu.d.ts +7 -2
|
@@ -347,7 +347,7 @@ class RatingIndicatorComponent {
|
|
|
347
347
|
multi: true
|
|
348
348
|
},
|
|
349
349
|
registerFormItemControl(RatingIndicatorComponent)
|
|
350
|
-
], ngImport: i0, template: "<ng-template #zeroRate let-halves=\"halves\">\n <input\n [attr.aria-label]=\"('coreRatingIndicator.ariaLabelReset' | fdTranslate)()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (change)=\"onSelect(0)\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n name=\"rating-{{ ratingUID }}{{ halves ? '-halves' : '' }}\"\n [attr.checked]=\"displayValue() === 0 ? true : null\"\n value=\"0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div\n class=\"fd-rating-indicator__container\"\n role=\"application\"\n [attr.aria-roledescription]=\"ariaRoledescription() || ('coreRatingIndicator.ariaRoleDescription' | fdTranslate)()\"\n>\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-template [ngTemplateOutlet]=\"zeroRate\"></ng-template>\n <!-- Available rate values -->\n @for (rate of rates(); track rate.id; let i = $index) {\n <input\n [attr.aria-label]=\"i | ratingStarLabel: rates().length : allowHalves() : language()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n [id]=\"rate.id\"\n name=\"rating-{{ ratingUID }}\"\n [value]=\"rate.value\"\n [attr.checked]=\"displayValue() === rate.value ? true : null\"\n (change)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n@if (showDynamicText()) {\n @if (displayAllRatings() && ratingItems().length) {\n <span [fdPopoverTrigger]=\"allRatingContent\" class=\"fd-rating-indicator__dynamic-text\">\n (<span [attr.aria-label]=\"('coreRatingIndicator.ariaLabelTotalRating' | fdTranslate)()\" fd-link>{{\n computedTotalRatings\n }}</span\n >)\n </span>\n } @else if (computedTotalRatings !== undefined && computedTotalRatings !== null) {\n <span class=\"fd-rating-indicator__dynamic-text\">({{ computedTotalRatings }})</span>\n } @else {\n <span class=\"fd-rating-indicator__dynamic-text\"\n >({{ displayValue() }} {{ dynamicTextIndicator() }} {{ indicatorCapacity() }})</span\n >\n }\n}\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n @for (rating of ratingItems(); track rating) {\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass()\">\n <div class=\"fd-rating-indicator__container\">\n @for (rate of rates(); track rate.id) {\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n </div>\n ({{ rating.votes }})\n </div>\n }\n</fd-popover>\n", styles: [".fd-rating-indicator{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem;border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;position:relative}.fd-rating-indicator:after,.fd-rating-indicator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator--cozy{--fontSize:1.5rem;--spacingBetweenIcons:.1875rem;margin-block:.8125rem;margin-inline:0}.fd-rating-indicator--compact{margin-block:.5rem;margin-inline:0}.fd-rating-indicator--compact,.fd-rating-indicator--condensed{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--xs{--fontSize:.75rem;--spacingBetweenIcons:1px}.fd-rating-indicator--sm{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--md{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem}.fd-rating-indicator--lg{--fontSize:2rem;--spacingBetweenIcons:.25rem}.fd-rating-indicator__container{border:0;border-radius:var(--fdRating_Indicator_Border_Radius);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-rating-indicator__container:after,.fd-rating-indicator__container:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__container:focus-within{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--fdRating_Indicator_Focus_Outline_Offset,0)}.fd-rating-indicator__container:focus-within .fd-rating-indicator__input,.fd-rating-indicator__container:focus-within .fd-rating-indicator__label{outline:none!important}.fd-rating-indicator__input{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:normal;margin-block:0;margin-inline:0;opacity:.0001;padding-block:0;padding-inline:0;position:absolute;top:0;width:var(--fontSize);z-index:-1}.fd-rating-indicator__input:after,.fd-rating-indicator__input:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__input:checked.is-focus,.fd-rating-indicator__input:checked:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth)}.fd-rating-indicator__input:checked.is-focus+.fd-rating-indicator__label,.fd-rating-indicator__input:checked:focus+.fd-rating-indicator__label{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:0}.fd-rating-indicator__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;float:left;height:var(--fontSize);opacity:1;-webkit-margin-end:var(--spacingBetweenIcons);margin-inline-end:var(--spacingBetweenIcons)}.fd-rating-indicator__label:after,.fd-rating-indicator__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__label:before{color:var(--sapContent_RatedColor);content:\"\\e065\";font-family:SAP-icons;font-size:var(--fontSize)}.fd-rating-indicator__label:last-child{-webkit-margin-end:0;margin-inline-end:0}.fd-rating-indicator__label:hover:before{opacity:var(--fdRating_Indicator_Selected_Hover_Opacity);-webkit-transition:opacity .125s ease-in;transition:opacity .125s ease-in}.fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e0a1\"}.fd-rating-indicator__dynamic-text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;overflow:hidden;padding-block:0;padding-inline:0;text-overflow:ellipsis;white-space:nowrap;-webkit-margin-start:.5rem;margin-inline-start:.5rem}.fd-rating-indicator__dynamic-text:after,.fd-rating-indicator__dynamic-text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator--hide-dynamic-text>.fd-rating-indicator__dynamic-text{display:none}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label{float:right}.fd-rating-indicator.is-disabled,.fd-rating-indicator:disabled,.fd-rating-indicator[aria-disabled=true]{opacity:var(--fdRating_Indicator_Disabled_Control_Opacity);pointer-events:none}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:before{color:var(--fdRating_Indicator_Disabled_Selected_Color);content:\"\\e065\"}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Disabled_Unselected_Color);content:\"\\e065\";font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--display-mode{--fontSize:1rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label{-webkit-margin-end:.125rem;margin-inline-end:.125rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Display_Only_Selected_Color);content:\"\\e065\";font-size:var(--fontSize)}.fd-rating-indicator--display-mode,.fd-rating-indicator--non-interactive{pointer-events:none}.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e065\";font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--icon .fd-rating-indicator__label{height:var(--fontSize);width:var(--fontSize)}.fd-rating-indicator--icon .fd-rating-indicator__label:after,.fd-rating-indicator--icon .fd-rating-indicator__label:before{content:none!important}.fd-rating-indicator--icon .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{font-size:var(--fontSize);height:100%;line-height:1}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{display:none}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated{display:block}.fd-rating-indicator--half-star .fd-rating-indicator__input{height:var(--fontSize);width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator__label{-webkit-margin-end:0;margin-inline-end:0;overflow:hidden;width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){-webkit-margin-end:var(--spacingBetweenIcons);margin-inline-end:var(--spacingBetweenIcons);-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.fd-rating-indicator--half-star .fd-rating-indicator__label:last-child{-webkit-margin-end:0;margin-inline-end:0}.fd-rating-indicator--half-star .fd-rating-indicator--icon .fd-rating-indicator__label{width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before{font-size:var(--fontSize)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before{font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__input--zero-rating,.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__label--zero-rating,.fd-rating-indicator__input--zero-rating,.fd-rating-indicator__label--zero-rating{margin-block:0;margin-inline:0;opacity:.0001;overflow:hidden;padding-block:0;padding-inline:0;width:0}.fd-rating-indicator__popover{padding:.5rem 0!important}.fd-rating-indicator__popover .fd-rating-indicator__sum-row{display:flex;align-items:center;padding:.5rem 1rem;margin:0}.fd-rating-indicator__popover .fd-rating-indicator__sum-row .fd-rating-indicator__container{margin-right:.5rem}\n/*! Bundled license information:\n\nfundamental-styles/dist/rating-indicator.css:\n (*!\n * Fundamental Library Styles v0.41.6\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: PopoverTriggerDirective, selector: "[fdPopoverTrigger], [fd-popover-trigger]", inputs: ["fdPopoverTrigger"] }, { kind: "component", type: PopoverComponent, selector: "fd-popover", inputs: ["config", "title", "trigger", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll", "placement", "maxWidth", "fillControlMode", "closeOnOutsideClick", "closeOnEscapeKey", "disabled", "triggers", "focusTrapped", "focusAutoCapture", "restoreFocusOnClose", "noArrow", "disableScrollbar", "appendTo", "placementContainer", "scrollStrategy", "cdkPositions", "applyOverlay", "additionalBodyClass", "additionalTriggerClass", "closeOnNavigation", "fixedPosition", "resizable", "bodyAriaLabel", "isOpen"], outputs: ["triggerChange", "isOpenChange", "beforeOpen"] }, { kind: "pipe", type: RatingStarLabelPipe, name: "ratingStarLabel" }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
350
|
+
], ngImport: i0, template: "<ng-template #zeroRate let-halves=\"halves\">\n <input\n [attr.aria-label]=\"('coreRatingIndicator.ariaLabelReset' | fdTranslate)()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (change)=\"onSelect(0)\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n name=\"rating-{{ ratingUID }}{{ halves ? '-halves' : '' }}\"\n [attr.checked]=\"displayValue() === 0 ? true : null\"\n value=\"0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div\n class=\"fd-rating-indicator__container\"\n role=\"application\"\n [attr.aria-roledescription]=\"ariaRoledescription() || ('coreRatingIndicator.ariaRoleDescription' | fdTranslate)()\"\n>\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-template [ngTemplateOutlet]=\"zeroRate\"></ng-template>\n <!-- Available rate values -->\n @for (rate of rates(); track rate.id; let i = $index) {\n <input\n [attr.aria-label]=\"i | ratingStarLabel: rates().length : allowHalves() : language()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n [id]=\"rate.id\"\n name=\"rating-{{ ratingUID }}\"\n [value]=\"rate.value\"\n [attr.checked]=\"displayValue() === rate.value ? true : null\"\n (change)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n@if (showDynamicText()) {\n @if (displayAllRatings() && ratingItems().length) {\n <span [fdPopoverTrigger]=\"allRatingContent\" class=\"fd-rating-indicator__dynamic-text\">\n (<span [attr.aria-label]=\"('coreRatingIndicator.ariaLabelTotalRating' | fdTranslate)()\" fd-link>{{\n computedTotalRatings\n }}</span\n >)\n </span>\n } @else if (computedTotalRatings !== undefined && computedTotalRatings !== null) {\n <span class=\"fd-rating-indicator__dynamic-text\">({{ computedTotalRatings }})</span>\n } @else {\n <span class=\"fd-rating-indicator__dynamic-text\"\n >({{ displayValue() }} {{ dynamicTextIndicator() }} {{ indicatorCapacity() }})</span\n >\n }\n}\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n @for (rating of ratingItems(); track rating) {\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass()\">\n <div class=\"fd-rating-indicator__container\">\n @for (rate of rates(); track rate.id) {\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n </div>\n ({{ rating.votes }})\n </div>\n }\n</fd-popover>\n", styles: [".fd-rating-indicator{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem;border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;position:relative}.fd-rating-indicator:after,.fd-rating-indicator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator--cozy{--fontSize:1.5rem;--spacingBetweenIcons:.1875rem;margin-block:.8125rem;margin-inline:0}.fd-rating-indicator--compact{margin-block:.5rem;margin-inline:0}.fd-rating-indicator--compact,.fd-rating-indicator--condensed{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--xs{--fontSize:.75rem;--spacingBetweenIcons:1px}.fd-rating-indicator--sm{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--md{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem}.fd-rating-indicator--lg{--fontSize:2rem;--spacingBetweenIcons:.25rem}.fd-rating-indicator__container{border:0;border-radius:var(--fdRating_Indicator_Border_Radius);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-rating-indicator__container:after,.fd-rating-indicator__container:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__container:focus-within{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--fdRating_Indicator_Focus_Outline_Offset,0)}.fd-rating-indicator__container:focus-within .fd-rating-indicator__input,.fd-rating-indicator__container:focus-within .fd-rating-indicator__label{outline:none!important}.fd-rating-indicator__input{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:normal;margin-block:0;margin-inline:0;opacity:.0001;padding-block:0;padding-inline:0;position:absolute;top:0;width:var(--fontSize);z-index:-1}.fd-rating-indicator__input:after,.fd-rating-indicator__input:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__input:checked.is-focus,.fd-rating-indicator__input:checked:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth)}.fd-rating-indicator__input:checked.is-focus+.fd-rating-indicator__label,.fd-rating-indicator__input:checked:focus+.fd-rating-indicator__label{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:0}.fd-rating-indicator__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;float:left;height:var(--fontSize);opacity:1;-webkit-margin-end:var(--spacingBetweenIcons);margin-inline-end:var(--spacingBetweenIcons)}.fd-rating-indicator__label:after,.fd-rating-indicator__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__label:before{color:var(--sapContent_RatedColor);content:\"\\e065\";font-family:SAP-icons;font-size:var(--fontSize)}.fd-rating-indicator__label:last-child{-webkit-margin-end:0;margin-inline-end:0}.fd-rating-indicator__label:hover:before{opacity:var(--fdRating_Indicator_Selected_Hover_Opacity);-webkit-transition:opacity .125s ease-in;transition:opacity .125s ease-in}.fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e0a1\"}.fd-rating-indicator__dynamic-text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;overflow:hidden;padding-block:0;padding-inline:0;text-overflow:ellipsis;white-space:nowrap;-webkit-margin-start:.5rem;margin-inline-start:.5rem}.fd-rating-indicator__dynamic-text:after,.fd-rating-indicator__dynamic-text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator--hide-dynamic-text>.fd-rating-indicator__dynamic-text{display:none}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label{float:right}.fd-rating-indicator.is-disabled,.fd-rating-indicator:disabled,.fd-rating-indicator[aria-disabled=true]{opacity:var(--fdRating_Indicator_Disabled_Control_Opacity);pointer-events:none}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:before{color:var(--fdRating_Indicator_Disabled_Selected_Color);content:\"\\e065\"}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Disabled_Unselected_Color);content:\"\\e065\";font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--display-mode{--fontSize:1rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label{-webkit-margin-end:.125rem;margin-inline-end:.125rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Display_Only_Selected_Color);content:\"\\e065\";font-size:var(--fontSize)}.fd-rating-indicator--display-mode,.fd-rating-indicator--non-interactive{pointer-events:none}.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e065\";font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--icon .fd-rating-indicator__label{height:var(--fontSize);width:var(--fontSize)}.fd-rating-indicator--icon .fd-rating-indicator__label:after,.fd-rating-indicator--icon .fd-rating-indicator__label:before{content:none!important}.fd-rating-indicator--icon .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{font-size:var(--fontSize);height:100%;line-height:1}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{display:none}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated{display:block}.fd-rating-indicator--half-star .fd-rating-indicator__input{height:var(--fontSize);width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator__label{-webkit-margin-end:0;margin-inline-end:0;overflow:hidden;width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){-webkit-margin-end:var(--spacingBetweenIcons);margin-inline-end:var(--spacingBetweenIcons);-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.fd-rating-indicator--half-star .fd-rating-indicator__label:last-child{-webkit-margin-end:0;margin-inline-end:0}.fd-rating-indicator--half-star .fd-rating-indicator--icon .fd-rating-indicator__label{width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before{font-size:var(--fontSize)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before{font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__input--zero-rating,.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__label--zero-rating,.fd-rating-indicator__input--zero-rating,.fd-rating-indicator__label--zero-rating{margin-block:0;margin-inline:0;opacity:.0001;overflow:hidden;padding-block:0;padding-inline:0;width:0}.fd-rating-indicator__popover{padding:.5rem 0!important}.fd-rating-indicator__popover .fd-rating-indicator__sum-row{display:flex;align-items:center;padding:.5rem 1rem;margin:0}.fd-rating-indicator__popover .fd-rating-indicator__sum-row .fd-rating-indicator__container{margin-right:.5rem}\n/*! Bundled license information:\n\nfundamental-styles/dist/rating-indicator.css:\n (*!\n * Fundamental Library Styles v0.41.7\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: PopoverTriggerDirective, selector: "[fdPopoverTrigger], [fd-popover-trigger]", inputs: ["fdPopoverTrigger"] }, { kind: "component", type: PopoverComponent, selector: "fd-popover", inputs: ["config", "title", "trigger", "id", "mobile", "mobileConfig", "preventSpaceKeyScroll", "placement", "maxWidth", "fillControlMode", "closeOnOutsideClick", "closeOnEscapeKey", "disabled", "triggers", "focusTrapped", "focusAutoCapture", "restoreFocusOnClose", "noArrow", "disableScrollbar", "appendTo", "placementContainer", "scrollStrategy", "cdkPositions", "applyOverlay", "additionalBodyClass", "additionalTriggerClass", "closeOnNavigation", "fixedPosition", "resizable", "bodyAriaLabel", "bodyRole", "bodyAriaLabelledBy", "isOpen"], outputs: ["triggerChange", "isOpenChange", "beforeOpen"] }, { kind: "pipe", type: RatingStarLabelPipe, name: "ratingStarLabel" }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
351
351
|
}
|
|
352
352
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: RatingIndicatorComponent, decorators: [{
|
|
353
353
|
type: Component,
|
|
@@ -363,7 +363,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
|
|
|
363
363
|
'[attr.aria-label]': 'ariaLabel()',
|
|
364
364
|
'[attr.aria-labelledby]': 'ariaLabelledBy()',
|
|
365
365
|
'[attr.disabled]': 'disabled()'
|
|
366
|
-
}, template: "<ng-template #zeroRate let-halves=\"halves\">\n <input\n [attr.aria-label]=\"('coreRatingIndicator.ariaLabelReset' | fdTranslate)()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (change)=\"onSelect(0)\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n name=\"rating-{{ ratingUID }}{{ halves ? '-halves' : '' }}\"\n [attr.checked]=\"displayValue() === 0 ? true : null\"\n value=\"0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div\n class=\"fd-rating-indicator__container\"\n role=\"application\"\n [attr.aria-roledescription]=\"ariaRoledescription() || ('coreRatingIndicator.ariaRoleDescription' | fdTranslate)()\"\n>\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-template [ngTemplateOutlet]=\"zeroRate\"></ng-template>\n <!-- Available rate values -->\n @for (rate of rates(); track rate.id; let i = $index) {\n <input\n [attr.aria-label]=\"i | ratingStarLabel: rates().length : allowHalves() : language()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n [id]=\"rate.id\"\n name=\"rating-{{ ratingUID }}\"\n [value]=\"rate.value\"\n [attr.checked]=\"displayValue() === rate.value ? true : null\"\n (change)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n@if (showDynamicText()) {\n @if (displayAllRatings() && ratingItems().length) {\n <span [fdPopoverTrigger]=\"allRatingContent\" class=\"fd-rating-indicator__dynamic-text\">\n (<span [attr.aria-label]=\"('coreRatingIndicator.ariaLabelTotalRating' | fdTranslate)()\" fd-link>{{\n computedTotalRatings\n }}</span\n >)\n </span>\n } @else if (computedTotalRatings !== undefined && computedTotalRatings !== null) {\n <span class=\"fd-rating-indicator__dynamic-text\">({{ computedTotalRatings }})</span>\n } @else {\n <span class=\"fd-rating-indicator__dynamic-text\"\n >({{ displayValue() }} {{ dynamicTextIndicator() }} {{ indicatorCapacity() }})</span\n >\n }\n}\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n @for (rating of ratingItems(); track rating) {\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass()\">\n <div class=\"fd-rating-indicator__container\">\n @for (rate of rates(); track rate.id) {\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n </div>\n ({{ rating.votes }})\n </div>\n }\n</fd-popover>\n", styles: [".fd-rating-indicator{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem;border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;position:relative}.fd-rating-indicator:after,.fd-rating-indicator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator--cozy{--fontSize:1.5rem;--spacingBetweenIcons:.1875rem;margin-block:.8125rem;margin-inline:0}.fd-rating-indicator--compact{margin-block:.5rem;margin-inline:0}.fd-rating-indicator--compact,.fd-rating-indicator--condensed{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--xs{--fontSize:.75rem;--spacingBetweenIcons:1px}.fd-rating-indicator--sm{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--md{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem}.fd-rating-indicator--lg{--fontSize:2rem;--spacingBetweenIcons:.25rem}.fd-rating-indicator__container{border:0;border-radius:var(--fdRating_Indicator_Border_Radius);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-rating-indicator__container:after,.fd-rating-indicator__container:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__container:focus-within{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--fdRating_Indicator_Focus_Outline_Offset,0)}.fd-rating-indicator__container:focus-within .fd-rating-indicator__input,.fd-rating-indicator__container:focus-within .fd-rating-indicator__label{outline:none!important}.fd-rating-indicator__input{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:normal;margin-block:0;margin-inline:0;opacity:.0001;padding-block:0;padding-inline:0;position:absolute;top:0;width:var(--fontSize);z-index:-1}.fd-rating-indicator__input:after,.fd-rating-indicator__input:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__input:checked.is-focus,.fd-rating-indicator__input:checked:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth)}.fd-rating-indicator__input:checked.is-focus+.fd-rating-indicator__label,.fd-rating-indicator__input:checked:focus+.fd-rating-indicator__label{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:0}.fd-rating-indicator__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;float:left;height:var(--fontSize);opacity:1;-webkit-margin-end:var(--spacingBetweenIcons);margin-inline-end:var(--spacingBetweenIcons)}.fd-rating-indicator__label:after,.fd-rating-indicator__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__label:before{color:var(--sapContent_RatedColor);content:\"\\e065\";font-family:SAP-icons;font-size:var(--fontSize)}.fd-rating-indicator__label:last-child{-webkit-margin-end:0;margin-inline-end:0}.fd-rating-indicator__label:hover:before{opacity:var(--fdRating_Indicator_Selected_Hover_Opacity);-webkit-transition:opacity .125s ease-in;transition:opacity .125s ease-in}.fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e0a1\"}.fd-rating-indicator__dynamic-text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;overflow:hidden;padding-block:0;padding-inline:0;text-overflow:ellipsis;white-space:nowrap;-webkit-margin-start:.5rem;margin-inline-start:.5rem}.fd-rating-indicator__dynamic-text:after,.fd-rating-indicator__dynamic-text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator--hide-dynamic-text>.fd-rating-indicator__dynamic-text{display:none}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label{float:right}.fd-rating-indicator.is-disabled,.fd-rating-indicator:disabled,.fd-rating-indicator[aria-disabled=true]{opacity:var(--fdRating_Indicator_Disabled_Control_Opacity);pointer-events:none}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:before{color:var(--fdRating_Indicator_Disabled_Selected_Color);content:\"\\e065\"}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Disabled_Unselected_Color);content:\"\\e065\";font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--display-mode{--fontSize:1rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label{-webkit-margin-end:.125rem;margin-inline-end:.125rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Display_Only_Selected_Color);content:\"\\e065\";font-size:var(--fontSize)}.fd-rating-indicator--display-mode,.fd-rating-indicator--non-interactive{pointer-events:none}.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e065\";font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--icon .fd-rating-indicator__label{height:var(--fontSize);width:var(--fontSize)}.fd-rating-indicator--icon .fd-rating-indicator__label:after,.fd-rating-indicator--icon .fd-rating-indicator__label:before{content:none!important}.fd-rating-indicator--icon .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{font-size:var(--fontSize);height:100%;line-height:1}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{display:none}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated{display:block}.fd-rating-indicator--half-star .fd-rating-indicator__input{height:var(--fontSize);width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator__label{-webkit-margin-end:0;margin-inline-end:0;overflow:hidden;width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){-webkit-margin-end:var(--spacingBetweenIcons);margin-inline-end:var(--spacingBetweenIcons);-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.fd-rating-indicator--half-star .fd-rating-indicator__label:last-child{-webkit-margin-end:0;margin-inline-end:0}.fd-rating-indicator--half-star .fd-rating-indicator--icon .fd-rating-indicator__label{width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before{font-size:var(--fontSize)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before{font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__input--zero-rating,.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__label--zero-rating,.fd-rating-indicator__input--zero-rating,.fd-rating-indicator__label--zero-rating{margin-block:0;margin-inline:0;opacity:.0001;overflow:hidden;padding-block:0;padding-inline:0;width:0}.fd-rating-indicator__popover{padding:.5rem 0!important}.fd-rating-indicator__popover .fd-rating-indicator__sum-row{display:flex;align-items:center;padding:.5rem 1rem;margin:0}.fd-rating-indicator__popover .fd-rating-indicator__sum-row .fd-rating-indicator__container{margin-right:.5rem}\n/*! Bundled license information:\n\nfundamental-styles/dist/rating-indicator.css:\n (*!\n * Fundamental Library Styles v0.41.6\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"] }]
|
|
366
|
+
}, template: "<ng-template #zeroRate let-halves=\"halves\">\n <input\n [attr.aria-label]=\"('coreRatingIndicator.ariaLabelReset' | fdTranslate)()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (change)=\"onSelect(0)\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n name=\"rating-{{ ratingUID }}{{ halves ? '-halves' : '' }}\"\n [attr.checked]=\"displayValue() === 0 ? true : null\"\n value=\"0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div\n class=\"fd-rating-indicator__container\"\n role=\"application\"\n [attr.aria-roledescription]=\"ariaRoledescription() || ('coreRatingIndicator.ariaRoleDescription' | fdTranslate)()\"\n>\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-template [ngTemplateOutlet]=\"zeroRate\"></ng-template>\n <!-- Available rate values -->\n @for (rate of rates(); track rate.id; let i = $index) {\n <input\n [attr.aria-label]=\"i | ratingStarLabel: rates().length : allowHalves() : language()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n [id]=\"rate.id\"\n name=\"rating-{{ ratingUID }}\"\n [value]=\"rate.value\"\n [attr.checked]=\"displayValue() === rate.value ? true : null\"\n (change)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n@if (showDynamicText()) {\n @if (displayAllRatings() && ratingItems().length) {\n <span [fdPopoverTrigger]=\"allRatingContent\" class=\"fd-rating-indicator__dynamic-text\">\n (<span [attr.aria-label]=\"('coreRatingIndicator.ariaLabelTotalRating' | fdTranslate)()\" fd-link>{{\n computedTotalRatings\n }}</span\n >)\n </span>\n } @else if (computedTotalRatings !== undefined && computedTotalRatings !== null) {\n <span class=\"fd-rating-indicator__dynamic-text\">({{ computedTotalRatings }})</span>\n } @else {\n <span class=\"fd-rating-indicator__dynamic-text\"\n >({{ displayValue() }} {{ dynamicTextIndicator() }} {{ indicatorCapacity() }})</span\n >\n }\n}\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n @for (rating of ratingItems(); track rating) {\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass()\">\n <div class=\"fd-rating-indicator__container\">\n @for (rate of rates(); track rate.id) {\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n </div>\n ({{ rating.votes }})\n </div>\n }\n</fd-popover>\n", styles: [".fd-rating-indicator{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem;border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;position:relative}.fd-rating-indicator:after,.fd-rating-indicator:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator--cozy{--fontSize:1.5rem;--spacingBetweenIcons:.1875rem;margin-block:.8125rem;margin-inline:0}.fd-rating-indicator--compact{margin-block:.5rem;margin-inline:0}.fd-rating-indicator--compact,.fd-rating-indicator--condensed{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--xs{--fontSize:.75rem;--spacingBetweenIcons:1px}.fd-rating-indicator--sm{--fontSize:1rem;--spacingBetweenIcons:.125rem}.fd-rating-indicator--md{--fontSize:1.375rem;--spacingBetweenIcons:.1875rem}.fd-rating-indicator--lg{--fontSize:2rem;--spacingBetweenIcons:.25rem}.fd-rating-indicator__container{border:0;border-radius:var(--fdRating_Indicator_Border_Radius);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-rating-indicator__container:after,.fd-rating-indicator__container:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__container:focus-within{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:var(--fdRating_Indicator_Focus_Outline_Offset,0)}.fd-rating-indicator__container:focus-within .fd-rating-indicator__input,.fd-rating-indicator__container:focus-within .fd-rating-indicator__label{outline:none!important}.fd-rating-indicator__input{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:var(--fontSize);line-height:normal;margin-block:0;margin-inline:0;opacity:.0001;padding-block:0;padding-inline:0;position:absolute;top:0;width:var(--fontSize);z-index:-1}.fd-rating-indicator__input:after,.fd-rating-indicator__input:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__input:checked.is-focus,.fd-rating-indicator__input:checked:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth)}.fd-rating-indicator__input:checked.is-focus+.fd-rating-indicator__label,.fd-rating-indicator__input:checked:focus+.fd-rating-indicator__label{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:0}.fd-rating-indicator__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;float:left;height:var(--fontSize);opacity:1;-webkit-margin-end:var(--spacingBetweenIcons);margin-inline-end:var(--spacingBetweenIcons)}.fd-rating-indicator__label:after,.fd-rating-indicator__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator__label:before{color:var(--sapContent_RatedColor);content:\"\\e065\";font-family:SAP-icons;font-size:var(--fontSize)}.fd-rating-indicator__label:last-child{-webkit-margin-end:0;margin-inline-end:0}.fd-rating-indicator__label:hover:before{opacity:var(--fdRating_Indicator_Selected_Hover_Opacity);-webkit-transition:opacity .125s ease-in;transition:opacity .125s ease-in}.fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e0a1\"}.fd-rating-indicator__dynamic-text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;overflow:hidden;padding-block:0;padding-inline:0;text-overflow:ellipsis;white-space:nowrap;-webkit-margin-start:.5rem;margin-inline-start:.5rem}.fd-rating-indicator__dynamic-text:after,.fd-rating-indicator__dynamic-text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-rating-indicator--hide-dynamic-text>.fd-rating-indicator__dynamic-text{display:none}.fd-rating-indicator[dir=rtl] .fd-rating-indicator__label,[dir=rtl] .fd-rating-indicator .fd-rating-indicator__label{float:right}.fd-rating-indicator.is-disabled,.fd-rating-indicator:disabled,.fd-rating-indicator[aria-disabled=true]{opacity:var(--fdRating_Indicator_Disabled_Control_Opacity);pointer-events:none}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:before{color:var(--fdRating_Indicator_Disabled_Selected_Color);content:\"\\e065\"}.fd-rating-indicator.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Disabled_Unselected_Color);content:\"\\e065\";font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--display-mode{--fontSize:1rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label{-webkit-margin-end:.125rem;margin-inline-end:.125rem}.fd-rating-indicator--display-mode .fd-rating-indicator__label:before{color:var(--fdRating_Indicator_Display_Only_Selected_Color);content:\"\\e065\";font-size:var(--fontSize)}.fd-rating-indicator--display-mode,.fd-rating-indicator--non-interactive{pointer-events:none}.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label:before{color:var(--sapContent_UnratedColor);content:\"\\e065\";font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator--icon .fd-rating-indicator__label{height:var(--fontSize);width:var(--fontSize)}.fd-rating-indicator--icon .fd-rating-indicator__label:after,.fd-rating-indicator--icon .fd-rating-indicator__label:before{content:none!important}.fd-rating-indicator--icon .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{font-size:var(--fontSize);height:100%;line-height:1}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-rated,.fd-rating-indicator--icon .fd-rating-indicator__label-unrated{display:none}.fd-rating-indicator--icon .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated{display:block}.fd-rating-indicator--half-star .fd-rating-indicator__input{height:var(--fontSize);width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator__label{-webkit-margin-end:0;margin-inline-end:0;overflow:hidden;width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator__label:nth-child(4n+6){-webkit-margin-end:var(--spacingBetweenIcons);margin-inline-end:var(--spacingBetweenIcons);-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.fd-rating-indicator--half-star .fd-rating-indicator__label:last-child{-webkit-margin-end:0;margin-inline-end:0}.fd-rating-indicator--half-star .fd-rating-indicator--icon .fd-rating-indicator__label{width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star .fd-rating-indicator .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:nth-child(4n+3):checked+.fd-rating-indicator__label+.fd-rating-indicator__input+.fd-rating-indicator__label:before{font-size:var(--fontSize)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label{width:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio)*.5)}.fd-rating-indicator--half-star.fd-rating-indicator--display-mode .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.fd-rating-indicator--non-interactive .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star.is-disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star:disabled .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before,.fd-rating-indicator--half-star[aria-disabled=true] .fd-rating-indicator__input:checked~.fd-rating-indicator__input+.fd-rating-indicator__label .fd-rating-indicator__label-unrated:before{font-size:calc(var(--fontSize)*var(--fdRating_Indicator_View_Mode_Unselected_Icon_Size_Ratio))}.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__input--zero-rating,.fd-rating-indicator[class*=fd-rating-indicator--] .fd-rating-indicator__label--zero-rating,.fd-rating-indicator__input--zero-rating,.fd-rating-indicator__label--zero-rating{margin-block:0;margin-inline:0;opacity:.0001;overflow:hidden;padding-block:0;padding-inline:0;width:0}.fd-rating-indicator__popover{padding:.5rem 0!important}.fd-rating-indicator__popover .fd-rating-indicator__sum-row{display:flex;align-items:center;padding:.5rem 1rem;margin:0}.fd-rating-indicator__popover .fd-rating-indicator__sum-row .fd-rating-indicator__container{margin-right:.5rem}\n/*! Bundled license information:\n\nfundamental-styles/dist/rating-indicator.css:\n (*!\n * Fundamental Library Styles v0.41.7\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"] }]
|
|
367
367
|
}], ctorParameters: () => [], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], ariaLabelledBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelledBy", required: false }] }], ariaRoledescription: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaRoledescription", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], displayMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayMode", required: false }] }], nonInteractive: [{ type: i0.Input, args: [{ isSignal: true, alias: "nonInteractive", required: false }] }], indicatorCapacity: [{ type: i0.Input, args: [{ isSignal: true, alias: "indicatorCapacity", required: false }] }], allowHalves: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowHalves", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], totalRatings: [{ type: i0.Input, args: [{ isSignal: true, alias: "totalRatings", required: false }] }], ratingAverage: [{ type: i0.Input, args: [{ isSignal: true, alias: "ratingAverage", required: false }] }], ratings: [{ type: i0.Input, args: [{ isSignal: true, alias: "ratings", required: false }] }], displayAllRatings: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayAllRatings", required: false }] }], ratedIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "ratedIcon", required: false }] }], unratedIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "unratedIcon", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], dynamicTextIndicator: [{ type: i0.Input, args: [{ isSignal: true, alias: "dynamicTextIndicator", required: false }] }], showDynamicText: [{ type: i0.Input, args: [{ isSignal: true, alias: "showDynamicText", required: false }] }], ratingChanged: [{ type: i0.Output, args: ["ratingChanged"] }] } });
|
|
368
368
|
|
|
369
369
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-core-rating-indicator.mjs","sources":["../../../../libs/core/rating-indicator/constants.ts","../../../../libs/core/rating-indicator/pipes/rating-star-label.pipe.ts","../../../../libs/core/rating-indicator/components/rating-indicator.component.ts","../../../../libs/core/rating-indicator/components/rating-indicator.component.html","../../../../libs/core/rating-indicator/rating-indicator.module.ts","../../../../libs/core/rating-indicator/fundamental-ngx-core-rating-indicator.ts"],"sourcesContent":["export const INDICATOR_PREFIX = 'fd-rating-indicator';\n\nexport const INDICATOR_CLASSES = {\n halves: `${INDICATOR_PREFIX}--half-star`,\n icon: `${INDICATOR_PREFIX}--icon`,\n hideDynamicText: `${INDICATOR_PREFIX}--hide-dynamic-text`\n};\nexport const INDICATOR_DEFAULT_CAPACITY = 5;\n\nexport type RatingIndicatorSize = 'xs' | 'sm' | 'md' | 'lg' | 'cozy' | 'compact' | 'condensed';\nexport enum RatingIndicatorSizeEnum {\n 'xs',\n 'sm',\n 'md',\n 'lg',\n 'cozy',\n 'compact',\n 'condensed'\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { FdLanguage, TranslationResolver } from '@fundamental-ngx/i18n';\n\n@Pipe({\n name: 'ratingStarLabel'\n})\nexport class RatingStarLabelPipe implements PipeTransform {\n /** @hidden */\n private readonly _translationResolver = new TranslationResolver();\n\n /** Transforms the value to a rating value string. */\n transform(index: number, controlsCount: number, useHalves: boolean, currentLanguage: FdLanguage): string {\n const ofTranslation = this._translationResolver.resolve(currentLanguage, 'coreRatingIndicator.ariaLabelValue');\n\n if (useHalves) {\n return `${index / 2 + 0.5} ${ofTranslation} ${controlsCount / 2}`;\n }\n return `${index + 1} ${ofTranslation} ${controlsCount}`;\n }\n}\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n effect,\n forwardRef,\n inject,\n input,\n output,\n signal\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { HasElementRef } from '@fundamental-ngx/cdk/utils';\nimport { FormItemControl, registerFormItemControl } from '@fundamental-ngx/core/form';\nimport { PopoverComponent, PopoverTriggerDirective } from '@fundamental-ngx/core/popover';\nimport { FD_LANGUAGE_SIGNAL, FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport {\n INDICATOR_CLASSES,\n INDICATOR_DEFAULT_CAPACITY,\n INDICATOR_PREFIX,\n RatingIndicatorSize,\n RatingIndicatorSizeEnum\n} from '../constants';\nimport { RatingStarLabelPipe } from '../pipes/rating-star-label.pipe';\n\nlet ratingUID = 0;\n\ninterface NumberKey<T> {\n [key: number]: T;\n}\n\ninterface RatingViewItem {\n rate: number;\n votes: number;\n}\n\n@Component({\n selector: 'fd-rating-indicator',\n templateUrl: './rating-indicator.component.html',\n styleUrl: './rating-indicator.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => RatingIndicatorComponent),\n multi: true\n },\n registerFormItemControl(RatingIndicatorComponent)\n ],\n imports: [NgTemplateOutlet, PopoverTriggerDirective, PopoverComponent, RatingStarLabelPipe, FdTranslatePipe],\n host: {\n '[class]': 'cssClass()',\n '[attr.aria-label]': 'ariaLabel()',\n '[attr.aria-labelledby]': 'ariaLabelledBy()',\n '[attr.disabled]': 'disabled()'\n }\n})\nexport class RatingIndicatorComponent implements ControlValueAccessor, FormItemControl, HasElementRef {\n /** Sets [name] attribute of input. */\n readonly name = input<string>();\n\n /**\n * Sets the aria-label attribute to the element.\n */\n readonly ariaLabel = input<string | null>();\n\n /**\n * Sets the aria-labelledby attribute to the element.\n */\n readonly ariaLabelledBy = input<string | null | undefined>();\n\n /**\n * Sets the aria-roledescription attribute to the element.\n */\n readonly ariaRoledescription = input<string | null | undefined>();\n\n /**\n * Input for disabled state from parent component.\n * Sets the aria-disabled attribute to the element.\n * Sets the is-disabled class to the element.\n */\n readonly disabled = input(false, { transform: booleanAttribute });\n\n /**\n * Whether the rating indicator is in displayMode\n */\n readonly displayMode = input(false, { transform: booleanAttribute });\n\n /**\n * Whether the rating indicator is in non-interactive state.\n */\n readonly nonInteractive = input(false, { transform: booleanAttribute });\n\n /**\n * Number of rates to display\n */\n readonly indicatorCapacity = input(INDICATOR_DEFAULT_CAPACITY, {\n transform: (value: number) => {\n const val = coerceNumberProperty(value, INDICATOR_DEFAULT_CAPACITY);\n return val < 1 ? INDICATOR_DEFAULT_CAPACITY : val;\n }\n });\n\n /**\n * Whether or not to display half values.\n */\n readonly allowHalves = input(false, { transform: booleanAttribute });\n\n /**\n * User's value number of ratings. If provided, Overrides ratingAverage.\n */\n readonly value = input(0);\n\n /**\n * Total number of ratings. If provided, will display text showing the total number of ratings.\n */\n readonly totalRatings = input<number | undefined | null>(undefined);\n\n /**\n * Rating average\n */\n readonly ratingAverage = input<number | undefined | null>(undefined);\n\n /**\n * Object containing key-value pairs where the key is the rating and the value is the total sum of those ratings.\n * Overrides totalRatings and ratingAverage.\n */\n readonly ratings = input<NumberKey<number> | undefined | null>(undefined);\n\n /**\n * Whether or not to display the popover that shows the sum of each rating. Requires [ratings] object.\n */\n readonly displayAllRatings = input(false, { transform: booleanAttribute });\n\n /**\n * Icon class for rated icon from fundamental-styles lib https://sap.github.io/fundamental-styles/?path=/docs/components-icon--sizes\n */\n readonly ratedIcon = input<string | undefined>(undefined);\n\n /**\n * Icon class for unrated icon from fundamental-styles lib https://sap.github.io/fundamental-styles/?path=/docs/components-icon--sizes\n */\n readonly unratedIcon = input<string | undefined>(undefined);\n\n /**\n * Possible values are 'xs', 'sm', 'md', 'lg', 'cozy', 'compact', 'condensed'\n */\n readonly size = input<RatingIndicatorSize>('md');\n\n /**\n * Text divider label between view value and indicator count.\n */\n readonly dynamicTextIndicator = input('of');\n\n /**\n * Whether to display the dynamic text (rating value and count) after the rating indicator.\n * When false, only the star rating UI is shown without any text.\n */\n readonly showDynamicText = input(true, { transform: booleanAttribute });\n\n /**\n * Fired when the user sets or changes their rating.\n */\n readonly ratingChanged = output<number>();\n\n /** @hidden */\n readonly elementRef = inject(ElementRef<HTMLElement>);\n\n /** Computed display value - returns the current internal value */\n readonly displayValue = computed(() => this.internalValue());\n\n /** @hidden Current language signal for i18n */\n protected readonly language = inject(FD_LANGUAGE_SIGNAL);\n\n /** @hidden Internal mutable value for CVA and computed display value */\n protected readonly internalValue = signal(0);\n\n /**\n * Internal mutable disabled state.\n * Allows ControlValueAccessor to modify disabled state independently of input.\n */\n protected readonly internalDisabled = signal(false);\n\n /** @hidden Internal total ratings for computed state */\n protected readonly internalTotalRatings = signal<number | undefined | null>(undefined);\n\n /** @hidden Internal rating average for computed state */\n protected readonly internalRatingAverage = signal<number | undefined | null>(undefined);\n\n /** @hidden Rating items for popover content */\n protected readonly ratingItems = signal<RatingViewItem[]>([]);\n\n /** @hidden Unique ID for this rating indicator instance */\n protected readonly ratingUID = ratingUID++;\n\n /** @hidden Computed size class based on size input */\n protected readonly sizeClass = computed(() => this._getSizeClass(this.size()));\n\n /** @hidden Computed rates array based on capacity and halves setting */\n protected readonly rates = computed(() => this._getRates());\n\n /** @hidden Computed signal to determine if dynamic text should be hidden */\n protected readonly hideDynamicText = computed(() => {\n const value = this.displayValue();\n const totalRatings = this.computedTotalRatings;\n // Only hide if value is 0 AND we don't have total ratings to show\n return !value && (totalRatings === undefined || totalRatings === null);\n });\n\n /** @hidden Computed CSS classes for host binding */\n protected readonly cssClass = computed(() => {\n const classes: string[] = [\n INDICATOR_PREFIX,\n this.sizeClass(),\n this.allowHalves() ? INDICATOR_CLASSES.halves : '',\n this.ratedIcon() && this.unratedIcon() ? INDICATOR_CLASSES.icon : '',\n this.hideDynamicText() ? INDICATOR_CLASSES.hideDynamicText : '',\n this.disabled() || this.internalDisabled() ? 'is-disabled' : '',\n this.displayMode() ? 'fd-rating-indicator--display-mode' : '',\n this.nonInteractive() ? 'fd-rating-indicator--non-interactive' : ''\n ];\n return classes.filter(Boolean).join(' ');\n });\n\n /** @hidden */\n constructor() {\n // Sync ratings input with internal state\n effect(() => {\n const ratingsInput = this.ratings();\n if (ratingsInput) {\n this._generateRatings(ratingsInput);\n }\n });\n\n // Initialize internalValue from inputs once, then let CVA handle updates\n let initialized = false;\n effect(() => {\n // Only run once for initialization\n if (initialized) {\n return;\n }\n\n // Read all potential sources\n const inputValue = this.value();\n const internalAvg = this.internalRatingAverage();\n const avgValue = this.ratingAverage();\n\n // Determine source value with proper priority\n let sourceValue = 0;\n if (inputValue && inputValue !== 0) {\n sourceValue = inputValue;\n } else if (internalAvg !== undefined && internalAvg !== null) {\n sourceValue = internalAvg;\n } else if (avgValue !== undefined && avgValue !== null) {\n sourceValue = avgValue;\n }\n\n const parsedValue = this._parseValue(sourceValue);\n this.internalValue.set(parsedValue);\n initialized = true;\n });\n }\n\n /** @hidden CVA onChange callback */\n onChange: (value: number) => void = () => {};\n\n /** @hidden CVA onTouched callback */\n onTouched = (): void => {};\n\n /**\n * @deprecated Use `displayValue()` signal directly instead\n * @hidden Backward compatibility getter\n */\n get viewValue(): number {\n return this.displayValue();\n }\n\n /**\n * @deprecated Use `ratingUID` property directly instead\n * @hidden Backward compatibility getter\n */\n get viewRatingUID(): number {\n return this.ratingUID;\n }\n\n /**\n * @deprecated Use `indicatorCapacity()` signal directly instead\n * @hidden Backward compatibility getter\n */\n get indicatorCount(): number {\n return this.indicatorCapacity();\n }\n\n /** Public getter for computed rating average value. */\n get computedRatingAverage(): number | undefined | null {\n return this.internalRatingAverage() ?? this.ratingAverage();\n }\n\n /** Public getter for computed total ratings value. */\n get computedTotalRatings(): number | undefined | null {\n return this.internalTotalRatings() ?? this.totalRatings();\n }\n\n /** @hidden CVA writeValue - updates internal value signal */\n writeValue(value: number): void {\n this.internalValue.set(this._parseValue(value));\n }\n\n /** @hidden */\n registerOnChange(fn: (value: number) => void): void {\n this.onChange = fn;\n }\n /** @hidden */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /** @hidden */\n setDisabledState(isDisabled: boolean): void {\n this.internalDisabled.set(isDisabled);\n }\n\n /** @hidden User selection handler */\n protected onSelect(value: number): void {\n this.internalValue.set(value);\n this.onChange(value);\n this.onTouched();\n this.ratingChanged.emit(value);\n }\n\n /**\n * @hidden\n * Generate rating items for popover content from ratings object\n */\n private _generateRatings(ratingsInput: NumberKey<number>): void {\n const ratings = Object.entries(ratingsInput)\n .filter(([rate, vote]) => {\n const numRate = +rate;\n const numVote = +vote;\n return !isNaN(numRate) && !isNaN(numVote) && numRate > 0;\n })\n .map(([rate, votes]) => ({ rate: +rate, votes }));\n\n if (ratings.length === 0) {\n return;\n }\n\n const { totalVotes, totalRating } = ratings.reduce(\n (acc, rating) => ({\n totalVotes: acc.totalVotes + rating.votes,\n totalRating: acc.totalRating + rating.rate * rating.votes\n }),\n { totalVotes: 0, totalRating: 0 }\n );\n\n this.ratingItems.set(ratings);\n this.internalRatingAverage.set(totalRating / totalVotes);\n this.internalTotalRatings.set(totalVotes);\n }\n\n /**\n * @hidden\n * get converted value from original to view value with depends on halves\n * For example,\n * original value is equal to 2.34, you will get and render 2\n * original value is equal to 3.74, you will get and render 4\n */\n private _parseValue(value: number): number {\n if (!value || value === 0) {\n return 0;\n }\n const integer = Math.floor(value);\n const fractional = value % 1;\n let v = integer;\n\n if (this.allowHalves() && fractional > 0.25 && fractional <= 0.5) {\n v = integer + 0.5;\n } else if (fractional > 0.5) {\n v = integer + 1;\n }\n\n return Math.min(this.indicatorCapacity(), v);\n }\n\n /**\n * @hidden\n * get rating icons array with value and unique id\n */\n private _getRates(): { id: string; value: number }[] {\n const withHalves = this.allowHalves() ? 2 : 1;\n const capacity = this.indicatorCapacity();\n return Array(capacity * withHalves)\n .fill(`rating-${this.ratingUID}`)\n .map((name, index) => ({\n id: `${name}-${index + 1}`,\n value: (index + 1) / withHalves\n }));\n }\n\n /**\n * @hidden\n * Get size class for the rating indicator\n */\n private _getSizeClass(size: RatingIndicatorSize): string {\n return `${INDICATOR_PREFIX}--${size in RatingIndicatorSizeEnum ? size : 'md'}`;\n }\n}\n","<ng-template #zeroRate let-halves=\"halves\">\n <input\n [attr.aria-label]=\"('coreRatingIndicator.ariaLabelReset' | fdTranslate)()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (change)=\"onSelect(0)\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n name=\"rating-{{ ratingUID }}{{ halves ? '-halves' : '' }}\"\n [attr.checked]=\"displayValue() === 0 ? true : null\"\n value=\"0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div\n class=\"fd-rating-indicator__container\"\n role=\"application\"\n [attr.aria-roledescription]=\"ariaRoledescription() || ('coreRatingIndicator.ariaRoleDescription' | fdTranslate)()\"\n>\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-template [ngTemplateOutlet]=\"zeroRate\"></ng-template>\n <!-- Available rate values -->\n @for (rate of rates(); track rate.id; let i = $index) {\n <input\n [attr.aria-label]=\"i | ratingStarLabel: rates().length : allowHalves() : language()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n [id]=\"rate.id\"\n name=\"rating-{{ ratingUID }}\"\n [value]=\"rate.value\"\n [attr.checked]=\"displayValue() === rate.value ? true : null\"\n (change)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n@if (showDynamicText()) {\n @if (displayAllRatings() && ratingItems().length) {\n <span [fdPopoverTrigger]=\"allRatingContent\" class=\"fd-rating-indicator__dynamic-text\">\n (<span [attr.aria-label]=\"('coreRatingIndicator.ariaLabelTotalRating' | fdTranslate)()\" fd-link>{{\n computedTotalRatings\n }}</span\n >)\n </span>\n } @else if (computedTotalRatings !== undefined && computedTotalRatings !== null) {\n <span class=\"fd-rating-indicator__dynamic-text\">({{ computedTotalRatings }})</span>\n } @else {\n <span class=\"fd-rating-indicator__dynamic-text\"\n >({{ displayValue() }} {{ dynamicTextIndicator() }} {{ indicatorCapacity() }})</span\n >\n }\n}\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n @for (rating of ratingItems(); track rating) {\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass()\">\n <div class=\"fd-rating-indicator__container\">\n @for (rate of rates(); track rate.id) {\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n </div>\n ({{ rating.votes }})\n </div>\n }\n</fd-popover>\n","import { NgModule } from '@angular/core';\n\nimport { RatingIndicatorComponent } from './components/rating-indicator.component';\nimport { RatingStarLabelPipe } from './pipes/rating-star-label.pipe';\n\n/**\n * @deprecated\n * Use direct import of `RatingIndicatorComponent`\n */\n@NgModule({\n imports: [RatingIndicatorComponent, RatingStarLabelPipe],\n exports: [RatingIndicatorComponent, RatingStarLabelPipe]\n})\nexport class RatingIndicatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-core-rating-indicator.mjs","sources":["../../../../libs/core/rating-indicator/constants.ts","../../../../libs/core/rating-indicator/pipes/rating-star-label.pipe.ts","../../../../libs/core/rating-indicator/components/rating-indicator.component.ts","../../../../libs/core/rating-indicator/components/rating-indicator.component.html","../../../../libs/core/rating-indicator/rating-indicator.module.ts","../../../../libs/core/rating-indicator/fundamental-ngx-core-rating-indicator.ts"],"sourcesContent":["export const INDICATOR_PREFIX = 'fd-rating-indicator';\n\nexport const INDICATOR_CLASSES = {\n halves: `${INDICATOR_PREFIX}--half-star`,\n icon: `${INDICATOR_PREFIX}--icon`,\n hideDynamicText: `${INDICATOR_PREFIX}--hide-dynamic-text`\n};\nexport const INDICATOR_DEFAULT_CAPACITY = 5;\n\nexport type RatingIndicatorSize = 'xs' | 'sm' | 'md' | 'lg' | 'cozy' | 'compact' | 'condensed';\nexport enum RatingIndicatorSizeEnum {\n 'xs',\n 'sm',\n 'md',\n 'lg',\n 'cozy',\n 'compact',\n 'condensed'\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { FdLanguage, TranslationResolver } from '@fundamental-ngx/i18n';\n\n@Pipe({\n name: 'ratingStarLabel'\n})\nexport class RatingStarLabelPipe implements PipeTransform {\n /** @hidden */\n private readonly _translationResolver = new TranslationResolver();\n\n /** Transforms the value to a rating value string. */\n transform(index: number, controlsCount: number, useHalves: boolean, currentLanguage: FdLanguage): string {\n const ofTranslation = this._translationResolver.resolve(currentLanguage, 'coreRatingIndicator.ariaLabelValue');\n\n if (useHalves) {\n return `${index / 2 + 0.5} ${ofTranslation} ${controlsCount / 2}`;\n }\n return `${index + 1} ${ofTranslation} ${controlsCount}`;\n }\n}\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n effect,\n forwardRef,\n inject,\n input,\n output,\n signal\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { HasElementRef } from '@fundamental-ngx/cdk/utils';\nimport { FormItemControl, registerFormItemControl } from '@fundamental-ngx/core/form';\nimport { PopoverComponent, PopoverTriggerDirective } from '@fundamental-ngx/core/popover';\nimport { FD_LANGUAGE_SIGNAL, FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport {\n INDICATOR_CLASSES,\n INDICATOR_DEFAULT_CAPACITY,\n INDICATOR_PREFIX,\n RatingIndicatorSize,\n RatingIndicatorSizeEnum\n} from '../constants';\nimport { RatingStarLabelPipe } from '../pipes/rating-star-label.pipe';\n\nlet ratingUID = 0;\n\ninterface NumberKey<T> {\n [key: number]: T;\n}\n\ninterface RatingViewItem {\n rate: number;\n votes: number;\n}\n\n@Component({\n selector: 'fd-rating-indicator',\n templateUrl: './rating-indicator.component.html',\n styleUrl: './rating-indicator.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => RatingIndicatorComponent),\n multi: true\n },\n registerFormItemControl(RatingIndicatorComponent)\n ],\n imports: [NgTemplateOutlet, PopoverTriggerDirective, PopoverComponent, RatingStarLabelPipe, FdTranslatePipe],\n host: {\n '[class]': 'cssClass()',\n '[attr.aria-label]': 'ariaLabel()',\n '[attr.aria-labelledby]': 'ariaLabelledBy()',\n '[attr.disabled]': 'disabled()'\n }\n})\nexport class RatingIndicatorComponent implements ControlValueAccessor, FormItemControl, HasElementRef {\n /** Sets [name] attribute of input. */\n readonly name = input<string>();\n\n /**\n * Sets the aria-label attribute to the element.\n */\n readonly ariaLabel = input<string | null>();\n\n /**\n * Sets the aria-labelledby attribute to the element.\n */\n readonly ariaLabelledBy = input<string | null | undefined>();\n\n /**\n * Sets the aria-roledescription attribute to the element.\n */\n readonly ariaRoledescription = input<string | null | undefined>();\n\n /**\n * Input for disabled state from parent component.\n * Sets the aria-disabled attribute to the element.\n * Sets the is-disabled class to the element.\n */\n readonly disabled = input(false, { transform: booleanAttribute });\n\n /**\n * Whether the rating indicator is in displayMode\n */\n readonly displayMode = input(false, { transform: booleanAttribute });\n\n /**\n * Whether the rating indicator is in non-interactive state.\n */\n readonly nonInteractive = input(false, { transform: booleanAttribute });\n\n /**\n * Number of rates to display\n */\n readonly indicatorCapacity = input(INDICATOR_DEFAULT_CAPACITY, {\n transform: (value: number) => {\n const val = coerceNumberProperty(value, INDICATOR_DEFAULT_CAPACITY);\n return val < 1 ? INDICATOR_DEFAULT_CAPACITY : val;\n }\n });\n\n /**\n * Whether or not to display half values.\n */\n readonly allowHalves = input(false, { transform: booleanAttribute });\n\n /**\n * User's value number of ratings. If provided, Overrides ratingAverage.\n */\n readonly value = input(0);\n\n /**\n * Total number of ratings. If provided, will display text showing the total number of ratings.\n */\n readonly totalRatings = input<number | undefined | null>(undefined);\n\n /**\n * Rating average\n */\n readonly ratingAverage = input<number | undefined | null>(undefined);\n\n /**\n * Object containing key-value pairs where the key is the rating and the value is the total sum of those ratings.\n * Overrides totalRatings and ratingAverage.\n */\n readonly ratings = input<NumberKey<number> | undefined | null>(undefined);\n\n /**\n * Whether or not to display the popover that shows the sum of each rating. Requires [ratings] object.\n */\n readonly displayAllRatings = input(false, { transform: booleanAttribute });\n\n /**\n * Icon class for rated icon from fundamental-styles lib https://sap.github.io/fundamental-styles/?path=/docs/components-icon--sizes\n */\n readonly ratedIcon = input<string | undefined>(undefined);\n\n /**\n * Icon class for unrated icon from fundamental-styles lib https://sap.github.io/fundamental-styles/?path=/docs/components-icon--sizes\n */\n readonly unratedIcon = input<string | undefined>(undefined);\n\n /**\n * Possible values are 'xs', 'sm', 'md', 'lg', 'cozy', 'compact', 'condensed'\n */\n readonly size = input<RatingIndicatorSize>('md');\n\n /**\n * Text divider label between view value and indicator count.\n */\n readonly dynamicTextIndicator = input('of');\n\n /**\n * Whether to display the dynamic text (rating value and count) after the rating indicator.\n * When false, only the star rating UI is shown without any text.\n */\n readonly showDynamicText = input(true, { transform: booleanAttribute });\n\n /**\n * Fired when the user sets or changes their rating.\n */\n readonly ratingChanged = output<number>();\n\n /** @hidden */\n readonly elementRef = inject(ElementRef<HTMLElement>);\n\n /** Computed display value - returns the current internal value */\n readonly displayValue = computed(() => this.internalValue());\n\n /** @hidden Current language signal for i18n */\n protected readonly language = inject(FD_LANGUAGE_SIGNAL);\n\n /** @hidden Internal mutable value for CVA and computed display value */\n protected readonly internalValue = signal(0);\n\n /**\n * Internal mutable disabled state.\n * Allows ControlValueAccessor to modify disabled state independently of input.\n */\n protected readonly internalDisabled = signal(false);\n\n /** @hidden Internal total ratings for computed state */\n protected readonly internalTotalRatings = signal<number | undefined | null>(undefined);\n\n /** @hidden Internal rating average for computed state */\n protected readonly internalRatingAverage = signal<number | undefined | null>(undefined);\n\n /** @hidden Rating items for popover content */\n protected readonly ratingItems = signal<RatingViewItem[]>([]);\n\n /** @hidden Unique ID for this rating indicator instance */\n protected readonly ratingUID = ratingUID++;\n\n /** @hidden Computed size class based on size input */\n protected readonly sizeClass = computed(() => this._getSizeClass(this.size()));\n\n /** @hidden Computed rates array based on capacity and halves setting */\n protected readonly rates = computed(() => this._getRates());\n\n /** @hidden Computed signal to determine if dynamic text should be hidden */\n protected readonly hideDynamicText = computed(() => {\n const value = this.displayValue();\n const totalRatings = this.computedTotalRatings;\n // Only hide if value is 0 AND we don't have total ratings to show\n return !value && (totalRatings === undefined || totalRatings === null);\n });\n\n /** @hidden Computed CSS classes for host binding */\n protected readonly cssClass = computed(() => {\n const classes: string[] = [\n INDICATOR_PREFIX,\n this.sizeClass(),\n this.allowHalves() ? INDICATOR_CLASSES.halves : '',\n this.ratedIcon() && this.unratedIcon() ? INDICATOR_CLASSES.icon : '',\n this.hideDynamicText() ? INDICATOR_CLASSES.hideDynamicText : '',\n this.disabled() || this.internalDisabled() ? 'is-disabled' : '',\n this.displayMode() ? 'fd-rating-indicator--display-mode' : '',\n this.nonInteractive() ? 'fd-rating-indicator--non-interactive' : ''\n ];\n return classes.filter(Boolean).join(' ');\n });\n\n /** @hidden */\n constructor() {\n // Sync ratings input with internal state\n effect(() => {\n const ratingsInput = this.ratings();\n if (ratingsInput) {\n this._generateRatings(ratingsInput);\n }\n });\n\n // Initialize internalValue from inputs once, then let CVA handle updates\n let initialized = false;\n effect(() => {\n // Only run once for initialization\n if (initialized) {\n return;\n }\n\n // Read all potential sources\n const inputValue = this.value();\n const internalAvg = this.internalRatingAverage();\n const avgValue = this.ratingAverage();\n\n // Determine source value with proper priority\n let sourceValue = 0;\n if (inputValue && inputValue !== 0) {\n sourceValue = inputValue;\n } else if (internalAvg !== undefined && internalAvg !== null) {\n sourceValue = internalAvg;\n } else if (avgValue !== undefined && avgValue !== null) {\n sourceValue = avgValue;\n }\n\n const parsedValue = this._parseValue(sourceValue);\n this.internalValue.set(parsedValue);\n initialized = true;\n });\n }\n\n /** @hidden CVA onChange callback */\n onChange: (value: number) => void = () => {};\n\n /** @hidden CVA onTouched callback */\n onTouched = (): void => {};\n\n /**\n * @deprecated Use `displayValue()` signal directly instead\n * @hidden Backward compatibility getter\n */\n get viewValue(): number {\n return this.displayValue();\n }\n\n /**\n * @deprecated Use `ratingUID` property directly instead\n * @hidden Backward compatibility getter\n */\n get viewRatingUID(): number {\n return this.ratingUID;\n }\n\n /**\n * @deprecated Use `indicatorCapacity()` signal directly instead\n * @hidden Backward compatibility getter\n */\n get indicatorCount(): number {\n return this.indicatorCapacity();\n }\n\n /** Public getter for computed rating average value. */\n get computedRatingAverage(): number | undefined | null {\n return this.internalRatingAverage() ?? this.ratingAverage();\n }\n\n /** Public getter for computed total ratings value. */\n get computedTotalRatings(): number | undefined | null {\n return this.internalTotalRatings() ?? this.totalRatings();\n }\n\n /** @hidden CVA writeValue - updates internal value signal */\n writeValue(value: number): void {\n this.internalValue.set(this._parseValue(value));\n }\n\n /** @hidden */\n registerOnChange(fn: (value: number) => void): void {\n this.onChange = fn;\n }\n /** @hidden */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /** @hidden */\n setDisabledState(isDisabled: boolean): void {\n this.internalDisabled.set(isDisabled);\n }\n\n /** @hidden User selection handler */\n protected onSelect(value: number): void {\n this.internalValue.set(value);\n this.onChange(value);\n this.onTouched();\n this.ratingChanged.emit(value);\n }\n\n /**\n * @hidden\n * Generate rating items for popover content from ratings object\n */\n private _generateRatings(ratingsInput: NumberKey<number>): void {\n const ratings = Object.entries(ratingsInput)\n .filter(([rate, vote]) => {\n const numRate = +rate;\n const numVote = +vote;\n return !isNaN(numRate) && !isNaN(numVote) && numRate > 0;\n })\n .map(([rate, votes]) => ({ rate: +rate, votes }));\n\n if (ratings.length === 0) {\n return;\n }\n\n const { totalVotes, totalRating } = ratings.reduce(\n (acc, rating) => ({\n totalVotes: acc.totalVotes + rating.votes,\n totalRating: acc.totalRating + rating.rate * rating.votes\n }),\n { totalVotes: 0, totalRating: 0 }\n );\n\n this.ratingItems.set(ratings);\n this.internalRatingAverage.set(totalRating / totalVotes);\n this.internalTotalRatings.set(totalVotes);\n }\n\n /**\n * @hidden\n * get converted value from original to view value with depends on halves\n * For example,\n * original value is equal to 2.34, you will get and render 2\n * original value is equal to 3.74, you will get and render 4\n */\n private _parseValue(value: number): number {\n if (!value || value === 0) {\n return 0;\n }\n const integer = Math.floor(value);\n const fractional = value % 1;\n let v = integer;\n\n if (this.allowHalves() && fractional > 0.25 && fractional <= 0.5) {\n v = integer + 0.5;\n } else if (fractional > 0.5) {\n v = integer + 1;\n }\n\n return Math.min(this.indicatorCapacity(), v);\n }\n\n /**\n * @hidden\n * get rating icons array with value and unique id\n */\n private _getRates(): { id: string; value: number }[] {\n const withHalves = this.allowHalves() ? 2 : 1;\n const capacity = this.indicatorCapacity();\n return Array(capacity * withHalves)\n .fill(`rating-${this.ratingUID}`)\n .map((name, index) => ({\n id: `${name}-${index + 1}`,\n value: (index + 1) / withHalves\n }));\n }\n\n /**\n * @hidden\n * Get size class for the rating indicator\n */\n private _getSizeClass(size: RatingIndicatorSize): string {\n return `${INDICATOR_PREFIX}--${size in RatingIndicatorSizeEnum ? size : 'md'}`;\n }\n}\n","<ng-template #zeroRate let-halves=\"halves\">\n <input\n [attr.aria-label]=\"('coreRatingIndicator.ariaLabelReset' | fdTranslate)()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input fd-rating-indicator__input--zero-rating\"\n (change)=\"onSelect(0)\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n name=\"rating-{{ ratingUID }}{{ halves ? '-halves' : '' }}\"\n [attr.checked]=\"displayValue() === 0 ? true : null\"\n value=\"0\"\n />\n <label class=\"fd-rating-indicator__label fd-rating-indicator__label--zero-rating\" aria-hidden=\"true\"></label>\n</ng-template>\n<!-- role=\"application\" is used in order to let user to change value with left/right arrows in JAWS, since JAWS ovverrides these actions -->\n<div\n class=\"fd-rating-indicator__container\"\n role=\"application\"\n [attr.aria-roledescription]=\"ariaRoledescription() || ('coreRatingIndicator.ariaRoleDescription' | fdTranslate)()\"\n>\n <!-- Zero value if we don't have provided value from user, `ratingAverage` or `ratings` -->\n <ng-template [ngTemplateOutlet]=\"zeroRate\"></ng-template>\n <!-- Available rate values -->\n @for (rate of rates(); track rate.id; let i = $index) {\n <input\n [attr.aria-label]=\"i | ratingStarLabel: rates().length : allowHalves() : language()\"\n role=\"button\"\n type=\"radio\"\n class=\"fd-rating-indicator__input\"\n [disabled]=\"disabled() || nonInteractive() || displayMode()\"\n [id]=\"rate.id\"\n name=\"rating-{{ ratingUID }}\"\n [value]=\"rate.value\"\n [attr.checked]=\"displayValue() === rate.value ? true : null\"\n (change)=\"onSelect(rate.value)\"\n />\n <label class=\"fd-rating-indicator__label\" [for]=\"rate.id\" aria-hidden=\"true\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n</div>\n<!-- Popover if displayAllRatings is true and we have ratings object -->\n@if (showDynamicText()) {\n @if (displayAllRatings() && ratingItems().length) {\n <span [fdPopoverTrigger]=\"allRatingContent\" class=\"fd-rating-indicator__dynamic-text\">\n (<span [attr.aria-label]=\"('coreRatingIndicator.ariaLabelTotalRating' | fdTranslate)()\" fd-link>{{\n computedTotalRatings\n }}</span\n >)\n </span>\n } @else if (computedTotalRatings !== undefined && computedTotalRatings !== null) {\n <span class=\"fd-rating-indicator__dynamic-text\">({{ computedTotalRatings }})</span>\n } @else {\n <span class=\"fd-rating-indicator__dynamic-text\"\n >({{ displayValue() }} {{ dynamicTextIndicator() }} {{ indicatorCapacity() }})</span\n >\n }\n}\n<fd-popover\n #allRatingContent\n [triggers]=\"['mouseenter', 'mouseleave']\"\n [noArrow]=\"false\"\n placement=\"top\"\n additionalBodyClass=\"fd-rating-indicator__popover\"\n>\n @for (rating of ratingItems(); track rating) {\n <div class=\"fd-rating-indicator__sum-row\" [class]=\"sizeClass()\">\n <div class=\"fd-rating-indicator__container\">\n @for (rate of rates(); track rate.id) {\n <span\n [class.fd-rating-indicator__input-checked]=\"rate.value === rating.rate\"\n class=\"fd-rating-indicator__input\"\n ></span>\n <label class=\"fd-rating-indicator__label\">\n @if (ratedIcon()) {\n <i class=\"fd-rating-indicator__label-rated\" [class]=\"unratedIcon()\"></i>\n }\n @if (unratedIcon()) {\n <i class=\"fd-rating-indicator__label-unrated\" [class]=\"ratedIcon()\"></i>\n }\n </label>\n }\n </div>\n ({{ rating.votes }})\n </div>\n }\n</fd-popover>\n","import { NgModule } from '@angular/core';\n\nimport { RatingIndicatorComponent } from './components/rating-indicator.component';\nimport { RatingStarLabelPipe } from './pipes/rating-star-label.pipe';\n\n/**\n * @deprecated\n * Use direct import of `RatingIndicatorComponent`\n */\n@NgModule({\n imports: [RatingIndicatorComponent, RatingStarLabelPipe],\n exports: [RatingIndicatorComponent, RatingStarLabelPipe]\n})\nexport class RatingIndicatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -521,11 +521,11 @@ class ResizableCardItemComponent {
|
|
|
521
521
|
this._cd.markForCheck();
|
|
522
522
|
}
|
|
523
523
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: ResizableCardItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
524
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: ResizableCardItemComponent, isStandalone: true, selector: "fd-resizable-card-item", inputs: { config: "config", itemId: "itemId", title: "title", rank: "rank", cardWidthColSpan: "cardWidthColSpan", cardHeightRowSpan: "cardHeightRowSpan", cardMiniHeaderRowSpan: "cardMiniHeaderRowSpan", cardMiniContentRowSpan: "cardMiniContentRowSpan", resizable: "resizable", left: "left", right: "right", top: "top" }, outputs: { resizing: "resizing", resized: "resized", miniHeaderReached: "miniHeaderReached", miniContentReached: "miniContentReached" }, host: { listeners: { "window:mousemove": "onMouseMove($event)", "document:mouseup": "onMouseUp()" }, properties: { "style.left.px": "this.left", "style.right.px": "this.right", "style.top.px": "this.top", "style.z-index": "this.zIndex", "style.position": "this.position", "class.fd-resizable-card-layout__draw-transition": "this.reDrawAnimation" } }, ngImport: i0, template: "<div\n class=\"fd-resizable-card-layout__item\"\n [class.fd-resizable-card-layout__indication-border]=\"showBorder\"\n #resizeCard\n>\n <div\n class=\"fd-resizable-card-layout__item--border-display fd-resizable-card-layout__item--resize-transition\"\n [style.width.px]=\"cardWidth\"\n [style.height.px]=\"cardHeight\"\n (mouseenter)=\"showResizeIcon()\"\n (mouseleave)=\"hideResizeIcon()\"\n >\n <div class=\"fd-resizable-card-layout__card\">\n <ng-content></ng-content>\n @if (showingResizeIcon) {\n <div class=\"fd-resizable-card-layout__icon-wrapper\" role=\"presentation\" aria-hidden=\"true\">\n <div\n class=\"fd-resizable-card-layout__icon\"\n #cornerHandle\n (mousedown)=\"onMouseDown($event, 'both')\"\n ></div>\n </div>\n }\n </div>\n @if (resizable) {\n <ng-template [ngTemplateOutlet]=\"verticalHandleTemplate\"></ng-template>\n <ng-template [ngTemplateOutlet]=\"horizontalHandleTemplate\"></ng-template>\n }\n </div>\n <div\n class=\"fd-resizable-card-layout__item--resize-transition\"\n [style.width.px]=\"resizeIndicationBorderWidth\"\n [style.height.px]=\"cardHeight\"\n ></div>\n</div>\n<ng-template #verticalHandleTemplate>\n <div\n #verticalHandle\n class=\"fd-resizable-card-layout__resize--vertical\"\n (mousedown)=\"onMouseDown($event, 'horizontal')\"\n ></div>\n</ng-template>\n<ng-template #horizontalHandleTemplate>\n <div\n #horizontalHandle\n class=\"fd-resizable-card-layout__resize--horizontal\"\n (mousedown)=\"onMouseDown($event, 'vertical')\"\n ></div>\n</ng-template>\n", styles: [".fd-resizable-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-top:1rem;padding-block:0;padding-inline:0;padding-inline:.5rem;position:relative}.fd-resizable-card-layout:after,.fd-resizable-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-width:20rem;position:relative}.fd-resizable-card-layout__item:after,.fd-resizable-card-layout__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__card{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-box-flex:1;-ms-flex:1;flex:1;height:calc(100% - .0625rem);position:relative}.fd-resizable-card-layout__card:after,.fd-resizable-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1.5rem;padding-block:0;padding-inline:0;width:1.5rem;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;bottom:-.35rem;justify-content:flex-start;position:absolute;right:0;z-index:2}.fd-resizable-card-layout__icon-wrapper:after,.fd-resizable-card-layout__icon-wrapper:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon-wrapper{bottom:-.125rem;left:-.25rem;right:auto}.fd-resizable-card-layout__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1rem;padding-block:0;padding-inline:0;width:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapButton_Lite_TextColor);cursor:nwse-resize;font-family:SAP-icons;font-size:1rem;height:100%;line-height:1rem;position:absolute;width:100%;z-index:2}.fd-resizable-card-layout__icon:after,.fd-resizable-card-layout__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon:before{content:\"\\e24f\";font-family:SAP-icons;height:100%;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none;width:100%}.fd-resizable-card-layout__icon[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon{cursor:nesw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fd-resizable-card-layout__icon--vertical,.fd-resizable-card-layout__icon--vertical[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--vertical{cursor:ns-resize}.fd-resizable-card-layout__icon--horizontal,.fd-resizable-card-layout__icon--horizontal[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--horizontal{cursor:ew-resize}.fd-resizable-card-layout__resize--vertical{-webkit-box-ordinal-group:3;-ms-flex-order:2;cursor:ew-resize;order:2;width:.0625rem;z-index:2}.fd-resizable-card-layout__resize--vertical::content{content:\"\";position:absolute}.fd-resizable-card-layout__resize--horizontal{bottom:0;cursor:ns-resize;height:.0625rem;position:absolute;width:calc(100% - .5rem);z-index:2}.fd-resizable-card-layout__indication-border{border:0;border:.125rem dashed var(--sapContent_DragAndDropActiveColor);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-resizable-card-layout__indication-border:after,.fd-resizable-card-layout__indication-border:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout--sm{padding-inline:.5rem}.fd-resizable-card-layout--lg,.fd-resizable-card-layout--md{padding-inline:1rem}.fd-resizable-card-layout--xl{padding-inline:3rem}.fd-resizable-card-layout__item--resize-transition{transition-duration:.25s;animation-timing-function:ease-in-out}.fd-resizable-card-layout__draw-transition{transition-duration:.5s;animation-timing-function:ease-in}.fd-resizable-card-layout__item--border-display{display:flex}\n/*! Bundled license information:\n\nfundamental-styles/dist/resizable-card-layout.css:\n (*!\n * Fundamental Library Styles v0.41.
|
|
524
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: ResizableCardItemComponent, isStandalone: true, selector: "fd-resizable-card-item", inputs: { config: "config", itemId: "itemId", title: "title", rank: "rank", cardWidthColSpan: "cardWidthColSpan", cardHeightRowSpan: "cardHeightRowSpan", cardMiniHeaderRowSpan: "cardMiniHeaderRowSpan", cardMiniContentRowSpan: "cardMiniContentRowSpan", resizable: "resizable", left: "left", right: "right", top: "top" }, outputs: { resizing: "resizing", resized: "resized", miniHeaderReached: "miniHeaderReached", miniContentReached: "miniContentReached" }, host: { listeners: { "window:mousemove": "onMouseMove($event)", "document:mouseup": "onMouseUp()" }, properties: { "style.left.px": "this.left", "style.right.px": "this.right", "style.top.px": "this.top", "style.z-index": "this.zIndex", "style.position": "this.position", "class.fd-resizable-card-layout__draw-transition": "this.reDrawAnimation" } }, ngImport: i0, template: "<div\n class=\"fd-resizable-card-layout__item\"\n [class.fd-resizable-card-layout__indication-border]=\"showBorder\"\n #resizeCard\n>\n <div\n class=\"fd-resizable-card-layout__item--border-display fd-resizable-card-layout__item--resize-transition\"\n [style.width.px]=\"cardWidth\"\n [style.height.px]=\"cardHeight\"\n (mouseenter)=\"showResizeIcon()\"\n (mouseleave)=\"hideResizeIcon()\"\n >\n <div class=\"fd-resizable-card-layout__card\">\n <ng-content></ng-content>\n @if (showingResizeIcon) {\n <div class=\"fd-resizable-card-layout__icon-wrapper\" role=\"presentation\" aria-hidden=\"true\">\n <div\n class=\"fd-resizable-card-layout__icon\"\n #cornerHandle\n (mousedown)=\"onMouseDown($event, 'both')\"\n ></div>\n </div>\n }\n </div>\n @if (resizable) {\n <ng-template [ngTemplateOutlet]=\"verticalHandleTemplate\"></ng-template>\n <ng-template [ngTemplateOutlet]=\"horizontalHandleTemplate\"></ng-template>\n }\n </div>\n <div\n class=\"fd-resizable-card-layout__item--resize-transition\"\n [style.width.px]=\"resizeIndicationBorderWidth\"\n [style.height.px]=\"cardHeight\"\n ></div>\n</div>\n<ng-template #verticalHandleTemplate>\n <div\n #verticalHandle\n class=\"fd-resizable-card-layout__resize--vertical\"\n (mousedown)=\"onMouseDown($event, 'horizontal')\"\n ></div>\n</ng-template>\n<ng-template #horizontalHandleTemplate>\n <div\n #horizontalHandle\n class=\"fd-resizable-card-layout__resize--horizontal\"\n (mousedown)=\"onMouseDown($event, 'vertical')\"\n ></div>\n</ng-template>\n", styles: [".fd-resizable-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-top:1rem;padding-block:0;padding-inline:0;padding-inline:.5rem;position:relative}.fd-resizable-card-layout:after,.fd-resizable-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-width:20rem;position:relative}.fd-resizable-card-layout__item:after,.fd-resizable-card-layout__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__card{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-box-flex:1;-ms-flex:1;flex:1;height:calc(100% - .0625rem);position:relative}.fd-resizable-card-layout__card:after,.fd-resizable-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1.5rem;padding-block:0;padding-inline:0;width:1.5rem;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;bottom:-.35rem;justify-content:flex-start;position:absolute;right:0;z-index:2}.fd-resizable-card-layout__icon-wrapper:after,.fd-resizable-card-layout__icon-wrapper:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon-wrapper{bottom:-.125rem;left:-.25rem;right:auto}.fd-resizable-card-layout__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1rem;padding-block:0;padding-inline:0;width:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapButton_Lite_TextColor);cursor:nwse-resize;font-family:SAP-icons;font-size:1rem;height:100%;line-height:1rem;position:absolute;width:100%;z-index:2}.fd-resizable-card-layout__icon:after,.fd-resizable-card-layout__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon:before{content:\"\\e24f\";font-family:SAP-icons;height:100%;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none;width:100%}.fd-resizable-card-layout__icon[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon{cursor:nesw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fd-resizable-card-layout__icon--vertical,.fd-resizable-card-layout__icon--vertical[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--vertical{cursor:ns-resize}.fd-resizable-card-layout__icon--horizontal,.fd-resizable-card-layout__icon--horizontal[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--horizontal{cursor:ew-resize}.fd-resizable-card-layout__resize--vertical{-webkit-box-ordinal-group:3;-ms-flex-order:2;cursor:ew-resize;order:2;width:.0625rem;z-index:2}.fd-resizable-card-layout__resize--vertical::content{content:\"\";position:absolute}.fd-resizable-card-layout__resize--horizontal{bottom:0;cursor:ns-resize;height:.0625rem;position:absolute;width:calc(100% - .5rem);z-index:2}.fd-resizable-card-layout__indication-border{border:0;border:.125rem dashed var(--sapContent_DragAndDropActiveColor);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-resizable-card-layout__indication-border:after,.fd-resizable-card-layout__indication-border:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout--sm{padding-inline:.5rem}.fd-resizable-card-layout--lg,.fd-resizable-card-layout--md{padding-inline:1rem}.fd-resizable-card-layout--xl{padding-inline:3rem}.fd-resizable-card-layout__item--resize-transition{transition-duration:.25s;animation-timing-function:ease-in-out}.fd-resizable-card-layout__draw-transition{transition-duration:.5s;animation-timing-function:ease-in}.fd-resizable-card-layout__item--border-display{display:flex}\n/*! Bundled license information:\n\nfundamental-styles/dist/resizable-card-layout.css:\n (*!\n * Fundamental Library Styles v0.41.7\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
525
525
|
}
|
|
526
526
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: ResizableCardItemComponent, decorators: [{
|
|
527
527
|
type: Component,
|
|
528
|
-
args: [{ selector: 'fd-resizable-card-item', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [NgTemplateOutlet], template: "<div\n class=\"fd-resizable-card-layout__item\"\n [class.fd-resizable-card-layout__indication-border]=\"showBorder\"\n #resizeCard\n>\n <div\n class=\"fd-resizable-card-layout__item--border-display fd-resizable-card-layout__item--resize-transition\"\n [style.width.px]=\"cardWidth\"\n [style.height.px]=\"cardHeight\"\n (mouseenter)=\"showResizeIcon()\"\n (mouseleave)=\"hideResizeIcon()\"\n >\n <div class=\"fd-resizable-card-layout__card\">\n <ng-content></ng-content>\n @if (showingResizeIcon) {\n <div class=\"fd-resizable-card-layout__icon-wrapper\" role=\"presentation\" aria-hidden=\"true\">\n <div\n class=\"fd-resizable-card-layout__icon\"\n #cornerHandle\n (mousedown)=\"onMouseDown($event, 'both')\"\n ></div>\n </div>\n }\n </div>\n @if (resizable) {\n <ng-template [ngTemplateOutlet]=\"verticalHandleTemplate\"></ng-template>\n <ng-template [ngTemplateOutlet]=\"horizontalHandleTemplate\"></ng-template>\n }\n </div>\n <div\n class=\"fd-resizable-card-layout__item--resize-transition\"\n [style.width.px]=\"resizeIndicationBorderWidth\"\n [style.height.px]=\"cardHeight\"\n ></div>\n</div>\n<ng-template #verticalHandleTemplate>\n <div\n #verticalHandle\n class=\"fd-resizable-card-layout__resize--vertical\"\n (mousedown)=\"onMouseDown($event, 'horizontal')\"\n ></div>\n</ng-template>\n<ng-template #horizontalHandleTemplate>\n <div\n #horizontalHandle\n class=\"fd-resizable-card-layout__resize--horizontal\"\n (mousedown)=\"onMouseDown($event, 'vertical')\"\n ></div>\n</ng-template>\n", styles: [".fd-resizable-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-top:1rem;padding-block:0;padding-inline:0;padding-inline:.5rem;position:relative}.fd-resizable-card-layout:after,.fd-resizable-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-width:20rem;position:relative}.fd-resizable-card-layout__item:after,.fd-resizable-card-layout__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__card{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-box-flex:1;-ms-flex:1;flex:1;height:calc(100% - .0625rem);position:relative}.fd-resizable-card-layout__card:after,.fd-resizable-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1.5rem;padding-block:0;padding-inline:0;width:1.5rem;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;bottom:-.35rem;justify-content:flex-start;position:absolute;right:0;z-index:2}.fd-resizable-card-layout__icon-wrapper:after,.fd-resizable-card-layout__icon-wrapper:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon-wrapper{bottom:-.125rem;left:-.25rem;right:auto}.fd-resizable-card-layout__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1rem;padding-block:0;padding-inline:0;width:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapButton_Lite_TextColor);cursor:nwse-resize;font-family:SAP-icons;font-size:1rem;height:100%;line-height:1rem;position:absolute;width:100%;z-index:2}.fd-resizable-card-layout__icon:after,.fd-resizable-card-layout__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon:before{content:\"\\e24f\";font-family:SAP-icons;height:100%;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none;width:100%}.fd-resizable-card-layout__icon[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon{cursor:nesw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fd-resizable-card-layout__icon--vertical,.fd-resizable-card-layout__icon--vertical[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--vertical{cursor:ns-resize}.fd-resizable-card-layout__icon--horizontal,.fd-resizable-card-layout__icon--horizontal[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--horizontal{cursor:ew-resize}.fd-resizable-card-layout__resize--vertical{-webkit-box-ordinal-group:3;-ms-flex-order:2;cursor:ew-resize;order:2;width:.0625rem;z-index:2}.fd-resizable-card-layout__resize--vertical::content{content:\"\";position:absolute}.fd-resizable-card-layout__resize--horizontal{bottom:0;cursor:ns-resize;height:.0625rem;position:absolute;width:calc(100% - .5rem);z-index:2}.fd-resizable-card-layout__indication-border{border:0;border:.125rem dashed var(--sapContent_DragAndDropActiveColor);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-resizable-card-layout__indication-border:after,.fd-resizable-card-layout__indication-border:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout--sm{padding-inline:.5rem}.fd-resizable-card-layout--lg,.fd-resizable-card-layout--md{padding-inline:1rem}.fd-resizable-card-layout--xl{padding-inline:3rem}.fd-resizable-card-layout__item--resize-transition{transition-duration:.25s;animation-timing-function:ease-in-out}.fd-resizable-card-layout__draw-transition{transition-duration:.5s;animation-timing-function:ease-in}.fd-resizable-card-layout__item--border-display{display:flex}\n/*! Bundled license information:\n\nfundamental-styles/dist/resizable-card-layout.css:\n (*!\n * Fundamental Library Styles v0.41.
|
|
528
|
+
args: [{ selector: 'fd-resizable-card-item', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [NgTemplateOutlet], template: "<div\n class=\"fd-resizable-card-layout__item\"\n [class.fd-resizable-card-layout__indication-border]=\"showBorder\"\n #resizeCard\n>\n <div\n class=\"fd-resizable-card-layout__item--border-display fd-resizable-card-layout__item--resize-transition\"\n [style.width.px]=\"cardWidth\"\n [style.height.px]=\"cardHeight\"\n (mouseenter)=\"showResizeIcon()\"\n (mouseleave)=\"hideResizeIcon()\"\n >\n <div class=\"fd-resizable-card-layout__card\">\n <ng-content></ng-content>\n @if (showingResizeIcon) {\n <div class=\"fd-resizable-card-layout__icon-wrapper\" role=\"presentation\" aria-hidden=\"true\">\n <div\n class=\"fd-resizable-card-layout__icon\"\n #cornerHandle\n (mousedown)=\"onMouseDown($event, 'both')\"\n ></div>\n </div>\n }\n </div>\n @if (resizable) {\n <ng-template [ngTemplateOutlet]=\"verticalHandleTemplate\"></ng-template>\n <ng-template [ngTemplateOutlet]=\"horizontalHandleTemplate\"></ng-template>\n }\n </div>\n <div\n class=\"fd-resizable-card-layout__item--resize-transition\"\n [style.width.px]=\"resizeIndicationBorderWidth\"\n [style.height.px]=\"cardHeight\"\n ></div>\n</div>\n<ng-template #verticalHandleTemplate>\n <div\n #verticalHandle\n class=\"fd-resizable-card-layout__resize--vertical\"\n (mousedown)=\"onMouseDown($event, 'horizontal')\"\n ></div>\n</ng-template>\n<ng-template #horizontalHandleTemplate>\n <div\n #horizontalHandle\n class=\"fd-resizable-card-layout__resize--horizontal\"\n (mousedown)=\"onMouseDown($event, 'vertical')\"\n ></div>\n</ng-template>\n", styles: [".fd-resizable-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-top:1rem;padding-block:0;padding-inline:0;padding-inline:.5rem;position:relative}.fd-resizable-card-layout:after,.fd-resizable-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-width:20rem;position:relative}.fd-resizable-card-layout__item:after,.fd-resizable-card-layout__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__card{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-box-flex:1;-ms-flex:1;flex:1;height:calc(100% - .0625rem);position:relative}.fd-resizable-card-layout__card:after,.fd-resizable-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1.5rem;padding-block:0;padding-inline:0;width:1.5rem;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;bottom:-.35rem;justify-content:flex-start;position:absolute;right:0;z-index:2}.fd-resizable-card-layout__icon-wrapper:after,.fd-resizable-card-layout__icon-wrapper:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon-wrapper{bottom:-.125rem;left:-.25rem;right:auto}.fd-resizable-card-layout__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1rem;padding-block:0;padding-inline:0;width:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapButton_Lite_TextColor);cursor:nwse-resize;font-family:SAP-icons;font-size:1rem;height:100%;line-height:1rem;position:absolute;width:100%;z-index:2}.fd-resizable-card-layout__icon:after,.fd-resizable-card-layout__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon:before{content:\"\\e24f\";font-family:SAP-icons;height:100%;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none;width:100%}.fd-resizable-card-layout__icon[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon{cursor:nesw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fd-resizable-card-layout__icon--vertical,.fd-resizable-card-layout__icon--vertical[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--vertical{cursor:ns-resize}.fd-resizable-card-layout__icon--horizontal,.fd-resizable-card-layout__icon--horizontal[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--horizontal{cursor:ew-resize}.fd-resizable-card-layout__resize--vertical{-webkit-box-ordinal-group:3;-ms-flex-order:2;cursor:ew-resize;order:2;width:.0625rem;z-index:2}.fd-resizable-card-layout__resize--vertical::content{content:\"\";position:absolute}.fd-resizable-card-layout__resize--horizontal{bottom:0;cursor:ns-resize;height:.0625rem;position:absolute;width:calc(100% - .5rem);z-index:2}.fd-resizable-card-layout__indication-border{border:0;border:.125rem dashed var(--sapContent_DragAndDropActiveColor);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-resizable-card-layout__indication-border:after,.fd-resizable-card-layout__indication-border:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout--sm{padding-inline:.5rem}.fd-resizable-card-layout--lg,.fd-resizable-card-layout--md{padding-inline:1rem}.fd-resizable-card-layout--xl{padding-inline:3rem}.fd-resizable-card-layout__item--resize-transition{transition-duration:.25s;animation-timing-function:ease-in-out}.fd-resizable-card-layout__draw-transition{transition-duration:.5s;animation-timing-function:ease-in}.fd-resizable-card-layout__item--border-display{display:flex}\n/*! Bundled license information:\n\nfundamental-styles/dist/resizable-card-layout.css:\n (*!\n * Fundamental Library Styles v0.41.7\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"] }]
|
|
529
529
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { config: [{
|
|
530
530
|
type: Input
|
|
531
531
|
}], itemId: [{
|
|
@@ -1088,11 +1088,11 @@ class ResizableCardLayoutComponent {
|
|
|
1088
1088
|
return firstCard.rank - secondCard.rank;
|
|
1089
1089
|
}
|
|
1090
1090
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: ResizableCardLayoutComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1091
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: ResizableCardLayoutComponent, isStandalone: true, selector: "fd-resizable-card-layout", inputs: { layoutConfig: "layoutConfig" }, outputs: { stepChange: "stepChange", resizing: "resizing", resized: "resized", miniHeaderReached: "miniHeaderReached", miniContentReached: "miniContentReached", layoutChange: "layoutChange" }, host: { listeners: { "keydown": "_handleKeydown($event)", "window:resize": "onResize()" } }, queries: [{ propertyName: "resizeCardItems", predicate: ResizableCardItemComponent }], ngImport: i0, template: "<div\n #layout\n class=\"fd-resizable-card-layout\"\n [class]=\"'fd-resizable-card-layout--' + layoutSize\"\n [style.width.px]=\"layoutWidth\"\n [style.height.px]=\"layoutHeight\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".fd-resizable-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-top:1rem;padding-block:0;padding-inline:0;padding-inline:.5rem;position:relative}.fd-resizable-card-layout:after,.fd-resizable-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-width:20rem;position:relative}.fd-resizable-card-layout__item:after,.fd-resizable-card-layout__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__card{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-box-flex:1;-ms-flex:1;flex:1;height:calc(100% - .0625rem);position:relative}.fd-resizable-card-layout__card:after,.fd-resizable-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1.5rem;padding-block:0;padding-inline:0;width:1.5rem;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;bottom:-.35rem;justify-content:flex-start;position:absolute;right:0;z-index:2}.fd-resizable-card-layout__icon-wrapper:after,.fd-resizable-card-layout__icon-wrapper:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon-wrapper{bottom:-.125rem;left:-.25rem;right:auto}.fd-resizable-card-layout__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1rem;padding-block:0;padding-inline:0;width:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapButton_Lite_TextColor);cursor:nwse-resize;font-family:SAP-icons;font-size:1rem;height:100%;line-height:1rem;position:absolute;width:100%;z-index:2}.fd-resizable-card-layout__icon:after,.fd-resizable-card-layout__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon:before{content:\"\\e24f\";font-family:SAP-icons;height:100%;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none;width:100%}.fd-resizable-card-layout__icon[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon{cursor:nesw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fd-resizable-card-layout__icon--vertical,.fd-resizable-card-layout__icon--vertical[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--vertical{cursor:ns-resize}.fd-resizable-card-layout__icon--horizontal,.fd-resizable-card-layout__icon--horizontal[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--horizontal{cursor:ew-resize}.fd-resizable-card-layout__resize--vertical{-webkit-box-ordinal-group:3;-ms-flex-order:2;cursor:ew-resize;order:2;width:.0625rem;z-index:2}.fd-resizable-card-layout__resize--vertical::content{content:\"\";position:absolute}.fd-resizable-card-layout__resize--horizontal{bottom:0;cursor:ns-resize;height:.0625rem;position:absolute;width:calc(100% - .5rem);z-index:2}.fd-resizable-card-layout__indication-border{border:0;border:.125rem dashed var(--sapContent_DragAndDropActiveColor);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-resizable-card-layout__indication-border:after,.fd-resizable-card-layout__indication-border:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout--sm{padding-inline:.5rem}.fd-resizable-card-layout--lg,.fd-resizable-card-layout--md{padding-inline:1rem}.fd-resizable-card-layout--xl{padding-inline:3rem}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper{right:0}[dir=rtl] fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper,fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper[dir=rtl]{right:auto;left:-.375rem;bottom:0}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper .fd-resizable-card-layout__icon{width:100%;height:100%}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper .fd-resizable-card-layout__icon:before{width:100%;height:100%}\n/*! Bundled license information:\n\nfundamental-styles/dist/resizable-card-layout.css:\n (*!\n * Fundamental Library Styles v0.41.
|
|
1091
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: ResizableCardLayoutComponent, isStandalone: true, selector: "fd-resizable-card-layout", inputs: { layoutConfig: "layoutConfig" }, outputs: { stepChange: "stepChange", resizing: "resizing", resized: "resized", miniHeaderReached: "miniHeaderReached", miniContentReached: "miniContentReached", layoutChange: "layoutChange" }, host: { listeners: { "keydown": "_handleKeydown($event)", "window:resize": "onResize()" } }, queries: [{ propertyName: "resizeCardItems", predicate: ResizableCardItemComponent }], ngImport: i0, template: "<div\n #layout\n class=\"fd-resizable-card-layout\"\n [class]=\"'fd-resizable-card-layout--' + layoutSize\"\n [style.width.px]=\"layoutWidth\"\n [style.height.px]=\"layoutHeight\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".fd-resizable-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-top:1rem;padding-block:0;padding-inline:0;padding-inline:.5rem;position:relative}.fd-resizable-card-layout:after,.fd-resizable-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-width:20rem;position:relative}.fd-resizable-card-layout__item:after,.fd-resizable-card-layout__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__card{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-box-flex:1;-ms-flex:1;flex:1;height:calc(100% - .0625rem);position:relative}.fd-resizable-card-layout__card:after,.fd-resizable-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1.5rem;padding-block:0;padding-inline:0;width:1.5rem;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;bottom:-.35rem;justify-content:flex-start;position:absolute;right:0;z-index:2}.fd-resizable-card-layout__icon-wrapper:after,.fd-resizable-card-layout__icon-wrapper:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon-wrapper{bottom:-.125rem;left:-.25rem;right:auto}.fd-resizable-card-layout__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1rem;padding-block:0;padding-inline:0;width:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapButton_Lite_TextColor);cursor:nwse-resize;font-family:SAP-icons;font-size:1rem;height:100%;line-height:1rem;position:absolute;width:100%;z-index:2}.fd-resizable-card-layout__icon:after,.fd-resizable-card-layout__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon:before{content:\"\\e24f\";font-family:SAP-icons;height:100%;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none;width:100%}.fd-resizable-card-layout__icon[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon{cursor:nesw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fd-resizable-card-layout__icon--vertical,.fd-resizable-card-layout__icon--vertical[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--vertical{cursor:ns-resize}.fd-resizable-card-layout__icon--horizontal,.fd-resizable-card-layout__icon--horizontal[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--horizontal{cursor:ew-resize}.fd-resizable-card-layout__resize--vertical{-webkit-box-ordinal-group:3;-ms-flex-order:2;cursor:ew-resize;order:2;width:.0625rem;z-index:2}.fd-resizable-card-layout__resize--vertical::content{content:\"\";position:absolute}.fd-resizable-card-layout__resize--horizontal{bottom:0;cursor:ns-resize;height:.0625rem;position:absolute;width:calc(100% - .5rem);z-index:2}.fd-resizable-card-layout__indication-border{border:0;border:.125rem dashed var(--sapContent_DragAndDropActiveColor);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-resizable-card-layout__indication-border:after,.fd-resizable-card-layout__indication-border:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout--sm{padding-inline:.5rem}.fd-resizable-card-layout--lg,.fd-resizable-card-layout--md{padding-inline:1rem}.fd-resizable-card-layout--xl{padding-inline:3rem}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper{right:0}[dir=rtl] fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper,fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper[dir=rtl]{right:auto;left:-.375rem;bottom:0}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper .fd-resizable-card-layout__icon{width:100%;height:100%}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper .fd-resizable-card-layout__icon:before{width:100%;height:100%}\n/*! Bundled license information:\n\nfundamental-styles/dist/resizable-card-layout.css:\n (*!\n * Fundamental Library Styles v0.41.7\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1092
1092
|
}
|
|
1093
1093
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: ResizableCardLayoutComponent, decorators: [{
|
|
1094
1094
|
type: Component,
|
|
1095
|
-
args: [{ selector: 'fd-resizable-card-layout', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, template: "<div\n #layout\n class=\"fd-resizable-card-layout\"\n [class]=\"'fd-resizable-card-layout--' + layoutSize\"\n [style.width.px]=\"layoutWidth\"\n [style.height.px]=\"layoutHeight\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".fd-resizable-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-top:1rem;padding-block:0;padding-inline:0;padding-inline:.5rem;position:relative}.fd-resizable-card-layout:after,.fd-resizable-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-width:20rem;position:relative}.fd-resizable-card-layout__item:after,.fd-resizable-card-layout__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__card{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-box-flex:1;-ms-flex:1;flex:1;height:calc(100% - .0625rem);position:relative}.fd-resizable-card-layout__card:after,.fd-resizable-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1.5rem;padding-block:0;padding-inline:0;width:1.5rem;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;bottom:-.35rem;justify-content:flex-start;position:absolute;right:0;z-index:2}.fd-resizable-card-layout__icon-wrapper:after,.fd-resizable-card-layout__icon-wrapper:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon-wrapper{bottom:-.125rem;left:-.25rem;right:auto}.fd-resizable-card-layout__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1rem;padding-block:0;padding-inline:0;width:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapButton_Lite_TextColor);cursor:nwse-resize;font-family:SAP-icons;font-size:1rem;height:100%;line-height:1rem;position:absolute;width:100%;z-index:2}.fd-resizable-card-layout__icon:after,.fd-resizable-card-layout__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon:before{content:\"\\e24f\";font-family:SAP-icons;height:100%;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none;width:100%}.fd-resizable-card-layout__icon[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon{cursor:nesw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fd-resizable-card-layout__icon--vertical,.fd-resizable-card-layout__icon--vertical[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--vertical{cursor:ns-resize}.fd-resizable-card-layout__icon--horizontal,.fd-resizable-card-layout__icon--horizontal[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--horizontal{cursor:ew-resize}.fd-resizable-card-layout__resize--vertical{-webkit-box-ordinal-group:3;-ms-flex-order:2;cursor:ew-resize;order:2;width:.0625rem;z-index:2}.fd-resizable-card-layout__resize--vertical::content{content:\"\";position:absolute}.fd-resizable-card-layout__resize--horizontal{bottom:0;cursor:ns-resize;height:.0625rem;position:absolute;width:calc(100% - .5rem);z-index:2}.fd-resizable-card-layout__indication-border{border:0;border:.125rem dashed var(--sapContent_DragAndDropActiveColor);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-resizable-card-layout__indication-border:after,.fd-resizable-card-layout__indication-border:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout--sm{padding-inline:.5rem}.fd-resizable-card-layout--lg,.fd-resizable-card-layout--md{padding-inline:1rem}.fd-resizable-card-layout--xl{padding-inline:3rem}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper{right:0}[dir=rtl] fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper,fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper[dir=rtl]{right:auto;left:-.375rem;bottom:0}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper .fd-resizable-card-layout__icon{width:100%;height:100%}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper .fd-resizable-card-layout__icon:before{width:100%;height:100%}\n/*! Bundled license information:\n\nfundamental-styles/dist/resizable-card-layout.css:\n (*!\n * Fundamental Library Styles v0.41.
|
|
1095
|
+
args: [{ selector: 'fd-resizable-card-layout', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, template: "<div\n #layout\n class=\"fd-resizable-card-layout\"\n [class]=\"'fd-resizable-card-layout--' + layoutSize\"\n [style.width.px]=\"layoutWidth\"\n [style.height.px]=\"layoutHeight\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".fd-resizable-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;margin-top:1rem;padding-block:0;padding-inline:0;padding-inline:.5rem;position:relative}.fd-resizable-card-layout:after,.fd-resizable-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;min-width:20rem;position:relative}.fd-resizable-card-layout__item:after,.fd-resizable-card-layout__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__card{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-box-flex:1;-ms-flex:1;flex:1;height:calc(100% - .0625rem);position:relative}.fd-resizable-card-layout__card:after,.fd-resizable-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1.5rem;padding-block:0;padding-inline:0;width:1.5rem;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;bottom:-.35rem;justify-content:flex-start;position:absolute;right:0;z-index:2}.fd-resizable-card-layout__icon-wrapper:after,.fd-resizable-card-layout__icon-wrapper:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon-wrapper[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon-wrapper{bottom:-.125rem;left:-.25rem;right:auto}.fd-resizable-card-layout__icon{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1rem;line-height:normal;margin-block:0;margin-inline:0;min-width:1rem;padding-block:0;padding-inline:0;width:1rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapButton_Lite_TextColor);cursor:nwse-resize;font-family:SAP-icons;font-size:1rem;height:100%;line-height:1rem;position:absolute;width:100%;z-index:2}.fd-resizable-card-layout__icon:after,.fd-resizable-card-layout__icon:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout__icon:before{content:\"\\e24f\";font-family:SAP-icons;height:100%;text-align:center;text-decoration:inherit;text-rendering:optimizeLegibility;text-transform:none;width:100%}.fd-resizable-card-layout__icon[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon{cursor:nesw-resize;-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fd-resizable-card-layout__icon--vertical,.fd-resizable-card-layout__icon--vertical[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--vertical{cursor:ns-resize}.fd-resizable-card-layout__icon--horizontal,.fd-resizable-card-layout__icon--horizontal[dir=rtl],[dir=rtl] .fd-resizable-card-layout__icon--horizontal{cursor:ew-resize}.fd-resizable-card-layout__resize--vertical{-webkit-box-ordinal-group:3;-ms-flex-order:2;cursor:ew-resize;order:2;width:.0625rem;z-index:2}.fd-resizable-card-layout__resize--vertical::content{content:\"\";position:absolute}.fd-resizable-card-layout__resize--horizontal{bottom:0;cursor:ns-resize;height:.0625rem;position:absolute;width:calc(100% - .5rem);z-index:2}.fd-resizable-card-layout__indication-border{border:0;border:.125rem dashed var(--sapContent_DragAndDropActiveColor);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-resizable-card-layout__indication-border:after,.fd-resizable-card-layout__indication-border:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-resizable-card-layout--sm{padding-inline:.5rem}.fd-resizable-card-layout--lg,.fd-resizable-card-layout--md{padding-inline:1rem}.fd-resizable-card-layout--xl{padding-inline:3rem}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper{right:0}[dir=rtl] fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper,fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper[dir=rtl]{right:auto;left:-.375rem;bottom:0}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper .fd-resizable-card-layout__icon{width:100%;height:100%}fd-resizable-card-item .fd-resizable-card-layout__icon-wrapper .fd-resizable-card-layout__icon:before{width:100%;height:100%}\n/*! Bundled license information:\n\nfundamental-styles/dist/resizable-card-layout.css:\n (*!\n * Fundamental Library Styles v0.41.7\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"] }]
|
|
1096
1096
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { layoutConfig: [{
|
|
1097
1097
|
type: Input
|
|
1098
1098
|
}], stepChange: [{
|