@fundamental-ngx/core 0.44.0-rc.2 → 0.44.0-rc.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/avatar/avatar.component.d.ts +0 -1
- package/bar/directives/bar-element.directive.d.ts +6 -3
- package/breadcrumb/breadcrumb.component.d.ts +4 -4
- package/carousel/carousel.component.d.ts +8 -2
- package/content-density/providers/content-density-observer-providers.d.ts +1 -1
- package/content-density/services/content-density-observer.service.d.ts +3 -3
- package/date-picker/date-picker.component.d.ts +30 -9
- package/datetime-picker/datetime-picker.component.d.ts +28 -10
- package/dialog/dialog-container/dialog-container.component.d.ts +4 -4
- package/dialog/dialog-footer-button/dialog-footer-button.component.d.ts +2 -0
- package/dialog/directives/dialog-decisive-button.directive.d.ts +2 -0
- package/dialog/utils/dialog-config.class.d.ts +1 -1
- package/esm2022/action-bar/action-bar.component.mjs +10 -3
- package/esm2022/alert/alert-service/alert.service.mjs +12 -3
- package/esm2022/alert/alert-utils/alert-config.mjs +11 -3
- package/esm2022/alert/alert-utils/alert-container.component.mjs +11 -3
- package/esm2022/alert/alert-utils/alert-ref.mjs +11 -3
- package/esm2022/alert/alert.component.mjs +17 -3
- package/esm2022/alert/alert.module.mjs +11 -3
- package/esm2022/avatar/avatar.component.mjs +2 -2
- package/esm2022/bar/directives/bar-element.directive.mjs +15 -7
- package/esm2022/breadcrumb/breadcrumb.component.mjs +9 -11
- package/esm2022/carousel/carousel.component.mjs +34 -5
- package/esm2022/combobox/combobox-mobile/combobox-mobile.component.mjs +1 -1
- package/esm2022/content-density/providers/content-density-observer-providers.mjs +4 -4
- package/esm2022/content-density/services/content-density-observer.service.mjs +13 -13
- package/esm2022/date-picker/date-picker.component.mjs +103 -10
- package/esm2022/datetime-picker/datetime-picker.component.mjs +78 -8
- package/esm2022/dialog/dialog-container/dialog-container.component.mjs +12 -13
- package/esm2022/dialog/dialog-footer-button/dialog-footer-button.component.mjs +8 -3
- package/esm2022/dialog/dialog-header/dialog-header.component.mjs +1 -1
- package/esm2022/dialog/directives/dialog-decisive-button.directive.mjs +6 -2
- package/esm2022/dialog/utils/dialog-config.class.mjs +1 -1
- package/esm2022/feed-list-item/components/item/feed-list-item.component.mjs +23 -1
- package/esm2022/form/form-label/form-label.component.mjs +21 -5
- package/esm2022/list/list-item/list-item.component.mjs +36 -1
- package/esm2022/menu/menu-mobile/menu-mobile.component.mjs +1 -1
- package/esm2022/message-box/directives/message-box-decisive-button.directive.mjs +6 -2
- package/esm2022/message-box/message-box-container/message-box-container.component.mjs +12 -15
- package/esm2022/message-box/message-box-footer-button/message-box-footer-button.component.mjs +8 -3
- package/esm2022/message-box/message-box-header/message-box-header.component.mjs +1 -1
- package/esm2022/message-strip/alert/message-strip-alert-container-footer/message-strip-alert-container-footer.component.mjs +8 -9
- package/esm2022/message-strip/auto-dismiss-message-strip.directive.mjs +10 -9
- package/esm2022/message-strip/message-strip.component.mjs +12 -1
- package/esm2022/multi-combobox/base-multi-combobox.class.mjs +17 -14
- package/esm2022/multi-combobox/mobile/mobile-multi-combobox.component.mjs +1 -1
- package/esm2022/multi-combobox/multi-combobox.component.mjs +44 -45
- package/esm2022/multi-combobox/select-all-toggler/select-all-toggler.component.mjs +8 -10
- package/esm2022/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +1 -1
- package/esm2022/overflow-layout/directives/overflow-layout-popover-content.directive.mjs +9 -11
- package/esm2022/pagination/pagination.component.mjs +140 -2
- package/esm2022/popover/base/base-popover.class.mjs +25 -1
- package/esm2022/popover/popover.component.mjs +28 -17
- package/esm2022/product-switch/product-switch/product-switch.component.mjs +11 -1
- package/esm2022/quick-view/quick-view-title/quick-view-title.component.mjs +1 -1
- package/esm2022/segmented-button/segmented-button.component.mjs +19 -21
- package/esm2022/select/select.component.mjs +17 -10
- package/esm2022/shellbar/shellbar-actions/shellbar-actions.component.mjs +12 -1
- package/esm2022/shellbar/shellbar.component.mjs +12 -11
- package/esm2022/side-navigation/side-navigation.component.mjs +12 -3
- package/esm2022/slider/slider.component.mjs +83 -13
- package/esm2022/split-button/split-button.component.mjs +34 -16
- package/esm2022/splitter/splitter-pagination/splitter-pagination.component.mjs +9 -2
- package/esm2022/splitter/splitter.component.mjs +16 -5
- package/esm2022/step-input/step-input.component.mjs +46 -24
- package/esm2022/switch/switch.component.mjs +25 -3
- package/esm2022/table/directives/table-cell.directive.mjs +5 -7
- package/esm2022/table/directives/table-row.directive.mjs +17 -20
- package/esm2022/table/table.component.mjs +10 -9
- package/esm2022/tabs/tab-item-expand/tab-item-expand.component.mjs +11 -1
- package/esm2022/tabs/tab-list.component.mjs +40 -31
- package/esm2022/text/text.component.mjs +23 -1
- package/esm2022/time/i18n/time-i18n.mjs +2 -2
- package/esm2022/token/token.component.mjs +36 -14
- package/esm2022/toolbar/toolbar.component.mjs +33 -26
- package/esm2022/tree/components/tree-item/tree-item.component.mjs +21 -21
- package/esm2022/tree/tree.component.mjs +23 -22
- package/esm2022/upload-collection/upload-collection-button-group/upload-collection-button-group.component.mjs +67 -1
- package/esm2022/upload-collection/upload-collection-form-item/upload-collection-form-item.component.mjs +12 -1
- package/feed-list-item/components/item/feed-list-item.component.d.ts +8 -2
- package/fesm2022/fundamental-ngx-core-action-bar.mjs +9 -2
- package/fesm2022/fundamental-ngx-core-action-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-alert.mjs +58 -13
- package/fesm2022/fundamental-ngx-core-alert.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-bar.mjs +14 -6
- package/fesm2022/fundamental-ngx-core-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +9 -10
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-carousel.mjs +32 -3
- package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-combobox.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-content-density.mjs +15 -14
- package/fesm2022/fundamental-ngx-core-content-density.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-date-picker.mjs +102 -9
- package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +77 -7
- package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-dialog.mjs +23 -13
- package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-feed-list-item.mjs +22 -0
- package/fesm2022/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-form.mjs +20 -4
- package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-list.mjs +35 -0
- package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-menu.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-box.mjs +24 -15
- package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-strip.mjs +27 -14
- package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +63 -64
- 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-overflow-layout.mjs +9 -10
- package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-pagination.mjs +139 -1
- package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-popover.mjs +51 -16
- package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-product-switch.mjs +10 -0
- package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-quick-view.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-quick-view.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-segmented-button.mjs +17 -19
- package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-select.mjs +16 -9
- package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-shellbar.mjs +22 -10
- package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-side-navigation.mjs +11 -2
- package/fesm2022/fundamental-ngx-core-side-navigation.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-slider.mjs +82 -12
- package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-split-button.mjs +32 -13
- package/fesm2022/fundamental-ngx-core-split-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-splitter.mjs +23 -5
- package/fesm2022/fundamental-ngx-core-splitter.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-step-input.mjs +45 -23
- package/fesm2022/fundamental-ngx-core-step-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-switch.mjs +24 -2
- package/fesm2022/fundamental-ngx-core-switch.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-table.mjs +26 -30
- package/fesm2022/fundamental-ngx-core-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tabs.mjs +51 -31
- package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-text.mjs +22 -0
- package/fesm2022/fundamental-ngx-core-text.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-time.mjs +1 -1
- package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-token.mjs +36 -13
- package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-toolbar.mjs +31 -24
- package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tree.mjs +38 -38
- package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-upload-collection.mjs +77 -0
- package/fesm2022/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/form/form-label/form-label.component.d.ts +8 -2
- package/fundamental-ngx-core-v0.44.0-rc.4.tgz +0 -0
- package/list/list-item/list-item.component.d.ts +16 -4
- package/message-box/directives/message-box-decisive-button.directive.d.ts +2 -0
- package/message-box/message-box-container/message-box-container.component.d.ts +4 -6
- package/message-box/message-box-footer-button/message-box-footer-button.component.d.ts +2 -0
- package/message-strip/alert/message-strip-alert-container-footer/message-strip-alert-container-footer.component.d.ts +1 -1
- package/message-strip/auto-dismiss-message-strip.directive.d.ts +3 -3
- package/message-strip/message-strip.component.d.ts +4 -1
- package/multi-combobox/base-multi-combobox.class.d.ts +30 -30
- package/multi-combobox/multi-combobox.component.d.ts +17 -18
- package/multi-combobox/select-all-toggler/select-all-toggler.component.d.ts +1 -1
- package/overflow-layout/directives/overflow-layout-popover-content.directive.d.ts +5 -6
- package/package.json +3 -3
- package/pagination/pagination.component.d.ts +44 -11
- package/popover/base/base-popover.class.d.ts +12 -3
- package/popover/popover.component.d.ts +8 -5
- package/product-switch/product-switch/product-switch.component.d.ts +4 -1
- package/schematics/add-dependencies/index.js +4 -4
- package/segmented-button/segmented-button.component.d.ts +6 -7
- package/select/select.component.d.ts +9 -6
- package/shellbar/shellbar-actions/shellbar-actions.component.d.ts +6 -3
- package/shellbar/shellbar.component.d.ts +1 -1
- package/slider/slider.component.d.ts +13 -4
- package/split-button/split-button.component.d.ts +11 -6
- package/splitter/splitter.component.d.ts +5 -2
- package/step-input/step-input.component.d.ts +12 -6
- package/switch/switch.component.d.ts +10 -4
- package/table/directives/table-row.directive.d.ts +2 -4
- package/table/table.component.d.ts +3 -4
- package/tabs/tab-item-expand/tab-item-expand.component.d.ts +4 -1
- package/tabs/tab-list.component.d.ts +10 -8
- package/text/text.component.d.ts +8 -2
- package/time/i18n/time-i18n.d.ts +2 -2
- package/token/token.component.d.ts +13 -7
- package/toolbar/toolbar.component.d.ts +10 -7
- package/tree/components/tree-item/tree-item.component.d.ts +28 -28
- package/tree/tree.component.d.ts +7 -7
- package/upload-collection/upload-collection-button-group/upload-collection-button-group.component.d.ts +24 -6
- package/upload-collection/upload-collection-form-item/upload-collection-form-item.component.d.ts +6 -3
- package/fundamental-ngx-core-v0.44.0-rc.2.tgz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-core-product-switch.mjs","sources":["../../../../libs/core/src/lib/product-switch/tokens.ts","../../../../libs/core/src/lib/product-switch/product-switch/product-switch.component.ts","../../../../libs/core/src/lib/product-switch/product-switch/product-switch.component.html","../../../../libs/core/src/lib/product-switch/product-switch-body/product-switch-body.component.ts","../../../../libs/core/src/lib/product-switch/product-switch-body/product-switch-body.component.html","../../../../libs/core/src/lib/product-switch/product-switch.module.ts","../../../../libs/core/src/lib/product-switch/fundamental-ngx-core-product-switch.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const FD_PRODUCT_SWITCH_COMPONENT = new InjectionToken('FdProductSwitchComponent');\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { Placement } from '@fundamental-ngx/core/shared';\nimport { BasePopoverClass } from '@fundamental-ngx/core/popover';\nimport { FD_PRODUCT_SWITCH_COMPONENT } from '../tokens';\n\n@Component({\n selector: 'fd-product-switch',\n templateUrl: './product-switch.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: FD_PRODUCT_SWITCH_COMPONENT,\n useExisting: ProductSwitchComponent\n }\n ]\n})\nexport class ProductSwitchComponent extends BasePopoverClass {\n /** Placement of a popover. */\n @Input()\n placement: Placement = 'bottom-end';\n\n /**\n * @deprecated use i18n capabilities instead\n * Input to set the aria label */\n @Input()\n ariaLabel: string;\n\n /** Whether the product switch is disabled. */\n @Input()\n disabled = false;\n}\n","<div class=\"fd-product-switch\">\n <fd-popover\n [placement]=\"placement\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnOutsideClick]=\"closeOnOutsideClick\"\n [(isOpen)]=\"isOpen\"\n (isOpenChange)=\"isOpenChange.emit($event)\"\n [disabled]=\"disabled\"\n [triggers]=\"triggers\"\n [focusTrapped]=\"false\"\n [focusAutoCapture]=\"true\"\n [noArrow]=\"noArrow\"\n [disableScrollbar]=\"true\"\n >\n <fd-popover-control>\n <button\n fd-button\n [attr.aria-label]=\"ariaLabel || ('coreProductSwitch.ariaLabel' | fdTranslate)\"\n [attr.title]=\"ariaLabel || ('coreProductSwitch.ariaLabel' | fdTranslate)\"\n class=\"fd-shellbar__button\"\n glyph=\"grid\"\n fdType=\"transparent\"\n ></button>\n </fd-popover-control>\n <fd-popover-body>\n <ng-content></ng-content>\n </fd-popover-body>\n </fd-popover>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { DOWN_ARROW, ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport { ViewportRuler } from '@angular/cdk/scrolling';\nimport { Subscription } from 'rxjs';\n\nimport { FdDropEvent, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\n\nimport { ProductSwitchItem } from './product-switch.item';\n\nconst containerWidthPxSmallMode = 588;\nconst containerWidthPx = 776;\n\n@Component({\n selector: 'fd-product-switch-body',\n templateUrl: './product-switch-body.component.html',\n styleUrls: [\n './product-switch-body.component.scss',\n '../../../../../cdk/src/lib/utils/drag-and-drop/drag-and-drop.scss'\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ProductSwitchBodyComponent implements OnInit, OnDestroy {\n /** Defines if drag and drop functionality should be included in product switch*/\n @Input()\n dragAndDropEnabled = true;\n\n /** The product switch's product items. */\n @Input()\n products: ProductSwitchItem[];\n\n /** Defines if the product switcher should be displayed in list mode, no matter what is the size of window */\n @Input()\n forceListMode = false;\n\n /** Event thrown on products array change */\n @Output()\n readonly productsChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n\n /** Event emitted on product click */\n @Output()\n readonly itemClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /** @hidden */\n private _listMode: boolean;\n\n /** @hidden */\n private _isRtl = false;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n constructor(\n private _viewportRuler: ViewportRuler,\n @Optional() private readonly _rtlService: RtlService,\n private readonly _cdr: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this._subscriptions.add(this._rtlService?.rtl.subscribe((isRtl) => (this._isRtl = isRtl)));\n this._subscriptions.add(\n this._viewportRuler.change().subscribe((event) => {\n const { innerWidth } = <Window>event.target;\n this._checkSize(innerWidth);\n })\n );\n\n const { width } = this._viewportRuler.getViewportSize();\n this._checkSize(width);\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden */\n _itemClick(item: ProductSwitchItem, event: MouseEvent): void {\n this.products.forEach((product) => (product.selected = product === item));\n\n this.itemClicked.emit();\n if (item.callback) {\n item.callback(event);\n }\n }\n\n /** Method called on products change */\n _productSwitchItemsChangeHandle(dropEvent: FdDropEvent<ProductSwitchItem>): void {\n this.productsChange.emit(dropEvent.items);\n this.products = dropEvent.items;\n }\n\n /** @hidden */\n _keyDownHandle(event: KeyboardEvent): void {\n const target = <HTMLElement>event.target;\n\n if (!KeyUtil.isKeyCode(event, TAB)) {\n event.preventDefault();\n }\n\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n target.click();\n } else if (!this._isListMode()) {\n const i = Array.from(target.parentElement?.children ?? []).indexOf(target);\n this._handleNoListKeydown(event, target, i);\n } else if (this._isListMode() && KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW])) {\n this._handleListArrowUpDown(event, target);\n }\n }\n\n /** @hidden */\n _isSmallMode(): boolean {\n return this.products?.length < 7;\n }\n\n /** @hidden */\n _isListMode(): boolean {\n return this._listMode || this.forceListMode;\n }\n\n /** @hidden */\n private _checkSize(width: number): void {\n if (this._isSmallMode()) {\n this._listMode = width < containerWidthPxSmallMode;\n } else {\n this._listMode = width < containerWidthPx;\n }\n\n this._cdr.markForCheck();\n }\n\n /** @hidden */\n private _handleNoListKeydown(event: KeyboardEvent, target: HTMLElement, i: number): void {\n const previousElementSibling = <HTMLElement>target.previousElementSibling;\n const nextElementSibling = <HTMLElement>target.nextElementSibling;\n\n if (\n i === this.products.length - 1 &&\n (KeyUtil.isKeyCode(event, RIGHT_ARROW) || (KeyUtil.isKeyCode(event, LEFT_ARROW) && this._isRtl))\n ) {\n while (<HTMLElement>target.previousElementSibling) {\n target = <HTMLElement>target.previousElementSibling;\n }\n target.focus();\n }\n\n if (KeyUtil.isKeyCode(event, LEFT_ARROW)) {\n this._isRtl ? nextElementSibling?.focus() : previousElementSibling?.focus();\n } else if (KeyUtil.isKeyCode(event, RIGHT_ARROW)) {\n this._isRtl ? previousElementSibling?.focus() : nextElementSibling?.focus();\n } else if (KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW])) {\n if (this.products.length >= 7) {\n this._handleNoListMoreThanSeven(event, target, i);\n } else if (this.products.length < 7) {\n this._handleNoListLessThanSeven(event, target, i);\n }\n }\n }\n\n /** @hidden */\n private _handleNoListMoreThanSeven(event: KeyboardEvent, target: HTMLElement, i: number): void {\n const nextIndexByColumn = 4;\n const children = target.parentElement?.children;\n\n if (!children) {\n return;\n }\n\n if (KeyUtil.isKeyCode(event, DOWN_ARROW)) {\n (<HTMLElement>children[i + nextIndexByColumn])?.focus();\n }\n\n if (KeyUtil.isKeyCode(event, UP_ARROW)) {\n (<HTMLElement>children[i - nextIndexByColumn])?.focus();\n }\n }\n\n /** @hidden */\n private _handleNoListLessThanSeven(event: KeyboardEvent, target: HTMLElement, i: number): void {\n const nextIndexByColumn = 3;\n const children = target.parentElement?.children;\n\n if (!children) {\n return;\n }\n\n if (KeyUtil.isKeyCode(event, DOWN_ARROW)) {\n (<HTMLElement>children[i + nextIndexByColumn])?.focus();\n }\n\n if (KeyUtil.isKeyCode(event, UP_ARROW)) {\n (<HTMLElement>children[i - nextIndexByColumn])?.focus();\n }\n }\n\n /** @hidden */\n private _handleListArrowUpDown(event: KeyboardEvent, target: HTMLElement): void {\n const targetIndex = Array.from(target.parentElement?.children ?? []).indexOf(target);\n const previousElementSibling =\n targetIndex === 0\n ? <HTMLElement>target.parentElement?.children[this.products.length - 1]\n : <HTMLElement>target.previousElementSibling;\n const nextElementSibling =\n targetIndex === this.products.length - 1\n ? <HTMLElement>target.parentElement?.children[0]\n : <HTMLElement>target.nextElementSibling;\n\n if (this._isListMode() && KeyUtil.isKeyCode(event, DOWN_ARROW) && nextElementSibling) {\n nextElementSibling.focus();\n } else if (this._isListMode() && KeyUtil.isKeyCode(event, UP_ARROW) && previousElementSibling) {\n previousElementSibling.focus();\n }\n }\n}\n","<div\n class=\"fd-product-switch__body\"\n [class.fd-product-switch__body--col-3]=\"_isSmallMode() && !_isListMode()\"\n [class.fd-product-switch__body--mobile]=\"_isListMode()\"\n>\n <ul\n fd-dnd-list\n class=\"fd-product-switch__list\"\n [items]=\"products\"\n [gridMode]=\"!_isListMode()\"\n (itemDropped)=\"_productSwitchItemsChangeHandle($event)\"\n >\n <li\n fd-dnd-item\n *ngFor=\"let product of products\"\n tabindex=\"0\"\n class=\"fd-product-switch__item\"\n [class.selected]=\"product.selected\"\n (keydown)=\"_keyDownHandle($event)\"\n (click)=\"_itemClick(product, $event)\"\n [draggable]=\"!product.disabledDragAndDrop && dragAndDropEnabled\"\n [stickInPlace]=\"!!product.stickToPosition\"\n >\n <i\n role=\"presentation\"\n class=\"fd-product-switch__icon\"\n [class]=\"product.icon ? 'sap-icon--' + product.icon : ''\"\n ></i>\n <div class=\"fd-product-switch__text\">\n <div class=\"fd-product-switch__title\">{{ product.title }}</div>\n <div *ngIf=\"product.subtitle\" class=\"fd-product-switch__subtitle\">{{ product.subtitle }}</div>\n </div>\n </li>\n </ul>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ProductSwitchComponent } from './product-switch/product-switch.component';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { CommonModule } from '@angular/common';\nimport { DragAndDropModule } from '@fundamental-ngx/cdk/utils';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { I18nModule } from '@fundamental-ngx/i18n';\nimport { ProductSwitchBodyComponent } from './product-switch-body/product-switch-body.component';\n\n@NgModule({\n imports: [PopoverModule, CommonModule, ButtonModule, DragAndDropModule, DragDropModule, I18nModule],\n declarations: [ProductSwitchComponent, ProductSwitchBodyComponent],\n exports: [ProductSwitchComponent, ProductSwitchBodyComponent]\n})\nexport class ProductSwitchModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-core-product-switch.mjs","sources":["../../../../libs/core/src/lib/product-switch/tokens.ts","../../../../libs/core/src/lib/product-switch/product-switch/product-switch.component.ts","../../../../libs/core/src/lib/product-switch/product-switch/product-switch.component.html","../../../../libs/core/src/lib/product-switch/product-switch-body/product-switch-body.component.ts","../../../../libs/core/src/lib/product-switch/product-switch-body/product-switch-body.component.html","../../../../libs/core/src/lib/product-switch/product-switch.module.ts","../../../../libs/core/src/lib/product-switch/fundamental-ngx-core-product-switch.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const FD_PRODUCT_SWITCH_COMPONENT = new InjectionToken('FdProductSwitchComponent');\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { Placement } from '@fundamental-ngx/core/shared';\nimport { BasePopoverClass } from '@fundamental-ngx/core/popover';\nimport { FD_PRODUCT_SWITCH_COMPONENT } from '../tokens';\n\n@Component({\n selector: 'fd-product-switch',\n templateUrl: './product-switch.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: FD_PRODUCT_SWITCH_COMPONENT,\n useExisting: ProductSwitchComponent\n }\n ]\n})\nexport class ProductSwitchComponent extends BasePopoverClass {\n /** Placement of a popover. */\n @Input()\n placement: Placement = 'bottom-end';\n\n /**\n * @deprecated use i18n capabilities instead\n * Input to set the aria label */\n @Input()\n set ariaLabel(value: string) {\n console.warn(\n \"Property ariaLabel is deprecated. Use i18n capabilities 'coreProductSwitch.ariaLabel' key instead.\"\n );\n this._ariaLabel = value;\n }\n\n get ariaLabel(): string {\n return this._ariaLabel;\n }\n\n /** Whether the product switch is disabled. */\n @Input()\n disabled = false;\n\n /** @hidden */\n private _ariaLabel: string;\n}\n","<div class=\"fd-product-switch\">\n <fd-popover\n [placement]=\"placement\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnOutsideClick]=\"closeOnOutsideClick\"\n [(isOpen)]=\"isOpen\"\n (isOpenChange)=\"isOpenChange.emit($event)\"\n [disabled]=\"disabled\"\n [triggers]=\"triggers\"\n [focusTrapped]=\"false\"\n [focusAutoCapture]=\"true\"\n [noArrow]=\"noArrow\"\n [disableScrollbar]=\"true\"\n >\n <fd-popover-control>\n <button\n fd-button\n [attr.aria-label]=\"ariaLabel || ('coreProductSwitch.ariaLabel' | fdTranslate)\"\n [attr.title]=\"ariaLabel || ('coreProductSwitch.ariaLabel' | fdTranslate)\"\n class=\"fd-shellbar__button\"\n glyph=\"grid\"\n fdType=\"transparent\"\n ></button>\n </fd-popover-control>\n <fd-popover-body>\n <ng-content></ng-content>\n </fd-popover-body>\n </fd-popover>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { DOWN_ARROW, ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport { ViewportRuler } from '@angular/cdk/scrolling';\nimport { Subscription } from 'rxjs';\n\nimport { FdDropEvent, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\n\nimport { ProductSwitchItem } from './product-switch.item';\n\nconst containerWidthPxSmallMode = 588;\nconst containerWidthPx = 776;\n\n@Component({\n selector: 'fd-product-switch-body',\n templateUrl: './product-switch-body.component.html',\n styleUrls: [\n './product-switch-body.component.scss',\n '../../../../../cdk/src/lib/utils/drag-and-drop/drag-and-drop.scss'\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ProductSwitchBodyComponent implements OnInit, OnDestroy {\n /** Defines if drag and drop functionality should be included in product switch*/\n @Input()\n dragAndDropEnabled = true;\n\n /** The product switch's product items. */\n @Input()\n products: ProductSwitchItem[];\n\n /** Defines if the product switcher should be displayed in list mode, no matter what is the size of window */\n @Input()\n forceListMode = false;\n\n /** Event thrown on products array change */\n @Output()\n readonly productsChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n\n /** Event emitted on product click */\n @Output()\n readonly itemClicked: EventEmitter<void> = new EventEmitter<void>();\n\n /** @hidden */\n private _listMode: boolean;\n\n /** @hidden */\n private _isRtl = false;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n constructor(\n private _viewportRuler: ViewportRuler,\n @Optional() private readonly _rtlService: RtlService,\n private readonly _cdr: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n this._subscriptions.add(this._rtlService?.rtl.subscribe((isRtl) => (this._isRtl = isRtl)));\n this._subscriptions.add(\n this._viewportRuler.change().subscribe((event) => {\n const { innerWidth } = <Window>event.target;\n this._checkSize(innerWidth);\n })\n );\n\n const { width } = this._viewportRuler.getViewportSize();\n this._checkSize(width);\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden */\n _itemClick(item: ProductSwitchItem, event: MouseEvent): void {\n this.products.forEach((product) => (product.selected = product === item));\n\n this.itemClicked.emit();\n if (item.callback) {\n item.callback(event);\n }\n }\n\n /** Method called on products change */\n _productSwitchItemsChangeHandle(dropEvent: FdDropEvent<ProductSwitchItem>): void {\n this.productsChange.emit(dropEvent.items);\n this.products = dropEvent.items;\n }\n\n /** @hidden */\n _keyDownHandle(event: KeyboardEvent): void {\n const target = <HTMLElement>event.target;\n\n if (!KeyUtil.isKeyCode(event, TAB)) {\n event.preventDefault();\n }\n\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n target.click();\n } else if (!this._isListMode()) {\n const i = Array.from(target.parentElement?.children ?? []).indexOf(target);\n this._handleNoListKeydown(event, target, i);\n } else if (this._isListMode() && KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW])) {\n this._handleListArrowUpDown(event, target);\n }\n }\n\n /** @hidden */\n _isSmallMode(): boolean {\n return this.products?.length < 7;\n }\n\n /** @hidden */\n _isListMode(): boolean {\n return this._listMode || this.forceListMode;\n }\n\n /** @hidden */\n private _checkSize(width: number): void {\n if (this._isSmallMode()) {\n this._listMode = width < containerWidthPxSmallMode;\n } else {\n this._listMode = width < containerWidthPx;\n }\n\n this._cdr.markForCheck();\n }\n\n /** @hidden */\n private _handleNoListKeydown(event: KeyboardEvent, target: HTMLElement, i: number): void {\n const previousElementSibling = <HTMLElement>target.previousElementSibling;\n const nextElementSibling = <HTMLElement>target.nextElementSibling;\n\n if (\n i === this.products.length - 1 &&\n (KeyUtil.isKeyCode(event, RIGHT_ARROW) || (KeyUtil.isKeyCode(event, LEFT_ARROW) && this._isRtl))\n ) {\n while (<HTMLElement>target.previousElementSibling) {\n target = <HTMLElement>target.previousElementSibling;\n }\n target.focus();\n }\n\n if (KeyUtil.isKeyCode(event, LEFT_ARROW)) {\n this._isRtl ? nextElementSibling?.focus() : previousElementSibling?.focus();\n } else if (KeyUtil.isKeyCode(event, RIGHT_ARROW)) {\n this._isRtl ? previousElementSibling?.focus() : nextElementSibling?.focus();\n } else if (KeyUtil.isKeyCode(event, [DOWN_ARROW, UP_ARROW])) {\n if (this.products.length >= 7) {\n this._handleNoListMoreThanSeven(event, target, i);\n } else if (this.products.length < 7) {\n this._handleNoListLessThanSeven(event, target, i);\n }\n }\n }\n\n /** @hidden */\n private _handleNoListMoreThanSeven(event: KeyboardEvent, target: HTMLElement, i: number): void {\n const nextIndexByColumn = 4;\n const children = target.parentElement?.children;\n\n if (!children) {\n return;\n }\n\n if (KeyUtil.isKeyCode(event, DOWN_ARROW)) {\n (<HTMLElement>children[i + nextIndexByColumn])?.focus();\n }\n\n if (KeyUtil.isKeyCode(event, UP_ARROW)) {\n (<HTMLElement>children[i - nextIndexByColumn])?.focus();\n }\n }\n\n /** @hidden */\n private _handleNoListLessThanSeven(event: KeyboardEvent, target: HTMLElement, i: number): void {\n const nextIndexByColumn = 3;\n const children = target.parentElement?.children;\n\n if (!children) {\n return;\n }\n\n if (KeyUtil.isKeyCode(event, DOWN_ARROW)) {\n (<HTMLElement>children[i + nextIndexByColumn])?.focus();\n }\n\n if (KeyUtil.isKeyCode(event, UP_ARROW)) {\n (<HTMLElement>children[i - nextIndexByColumn])?.focus();\n }\n }\n\n /** @hidden */\n private _handleListArrowUpDown(event: KeyboardEvent, target: HTMLElement): void {\n const targetIndex = Array.from(target.parentElement?.children ?? []).indexOf(target);\n const previousElementSibling =\n targetIndex === 0\n ? <HTMLElement>target.parentElement?.children[this.products.length - 1]\n : <HTMLElement>target.previousElementSibling;\n const nextElementSibling =\n targetIndex === this.products.length - 1\n ? <HTMLElement>target.parentElement?.children[0]\n : <HTMLElement>target.nextElementSibling;\n\n if (this._isListMode() && KeyUtil.isKeyCode(event, DOWN_ARROW) && nextElementSibling) {\n nextElementSibling.focus();\n } else if (this._isListMode() && KeyUtil.isKeyCode(event, UP_ARROW) && previousElementSibling) {\n previousElementSibling.focus();\n }\n }\n}\n","<div\n class=\"fd-product-switch__body\"\n [class.fd-product-switch__body--col-3]=\"_isSmallMode() && !_isListMode()\"\n [class.fd-product-switch__body--mobile]=\"_isListMode()\"\n>\n <ul\n fd-dnd-list\n class=\"fd-product-switch__list\"\n [items]=\"products\"\n [gridMode]=\"!_isListMode()\"\n (itemDropped)=\"_productSwitchItemsChangeHandle($event)\"\n >\n <li\n fd-dnd-item\n *ngFor=\"let product of products\"\n tabindex=\"0\"\n class=\"fd-product-switch__item\"\n [class.selected]=\"product.selected\"\n (keydown)=\"_keyDownHandle($event)\"\n (click)=\"_itemClick(product, $event)\"\n [draggable]=\"!product.disabledDragAndDrop && dragAndDropEnabled\"\n [stickInPlace]=\"!!product.stickToPosition\"\n >\n <i\n role=\"presentation\"\n class=\"fd-product-switch__icon\"\n [class]=\"product.icon ? 'sap-icon--' + product.icon : ''\"\n ></i>\n <div class=\"fd-product-switch__text\">\n <div class=\"fd-product-switch__title\">{{ product.title }}</div>\n <div *ngIf=\"product.subtitle\" class=\"fd-product-switch__subtitle\">{{ product.subtitle }}</div>\n </div>\n </li>\n </ul>\n</div>\n","import { NgModule } from '@angular/core';\nimport { ProductSwitchComponent } from './product-switch/product-switch.component';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { CommonModule } from '@angular/common';\nimport { DragAndDropModule } from '@fundamental-ngx/cdk/utils';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { I18nModule } from '@fundamental-ngx/i18n';\nimport { ProductSwitchBodyComponent } from './product-switch-body/product-switch-body.component';\n\n@NgModule({\n imports: [PopoverModule, CommonModule, ButtonModule, DragAndDropModule, DragDropModule, I18nModule],\n declarations: [ProductSwitchComponent, ProductSwitchBodyComponent],\n exports: [ProductSwitchComponent, ProductSwitchBodyComponent]\n})\nexport class ProductSwitchModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3"],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ class QuickViewTitleComponent {
|
|
|
36
36
|
this.align = 'middle';
|
|
37
37
|
}
|
|
38
38
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: QuickViewTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
39
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: QuickViewTitleComponent, selector: "fd-quick-view-title", inputs: { align: "align" }, ngImport: i0, template: "<div fd-popover-body-header>\n <div fd-bar barDesign=\"header\">\n <ng-container [ngSwitch]=\"align\">\n <div *ngSwitchCase=\"'left'\" fd-bar-left>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n <div *ngSwitchCase=\"'right'\" fd-bar-right>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n <div *ngSwitchDefault fd-bar-middle>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n </ng-container>\n </div>\n</div>\n\n<ng-template #barElement>\n <fd-bar-element>\n <ng-content></ng-content>\n </fd-bar-element>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "size"] }, { kind: "directive", type: i2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i2.BarMiddleDirective, selector: "[fd-bar-middle]" }, { kind: "directive", type: i2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i2.BarElementDirective, selector: "fd-bar-element", inputs: ["
|
|
39
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: QuickViewTitleComponent, selector: "fd-quick-view-title", inputs: { align: "align" }, ngImport: i0, template: "<div fd-popover-body-header>\n <div fd-bar barDesign=\"header\">\n <ng-container [ngSwitch]=\"align\">\n <div *ngSwitchCase=\"'left'\" fd-bar-left>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n <div *ngSwitchCase=\"'right'\" fd-bar-right>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n <div *ngSwitchDefault fd-bar-middle>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n </ng-container>\n </div>\n</div>\n\n<ng-template #barElement>\n <fd-bar-element>\n <ng-content></ng-content>\n </fd-bar-element>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "size"] }, { kind: "directive", type: i2.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i2.BarMiddleDirective, selector: "[fd-bar-middle]" }, { kind: "directive", type: i2.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "directive", type: i2.BarElementDirective, selector: "fd-bar-element", inputs: ["isTitle", "fullWidth"] }, { kind: "directive", type: i3.PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
40
40
|
}
|
|
41
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: QuickViewTitleComponent, decorators: [{
|
|
42
42
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-core-quick-view.mjs","sources":["../../../../libs/core/src/lib/quick-view/quick-view/quick-view.component.ts","../../../../libs/core/src/lib/quick-view/quick-view/quick-view.component.html","../../../../libs/core/src/lib/quick-view/quick-view-title/quick-view-title.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-title/quick-view-title.component.html","../../../../libs/core/src/lib/quick-view/quick-view-subheader/quick-view-subheader.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-subheader/quick-view-subheader.component.html","../../../../libs/core/src/lib/quick-view/quick-view-subheader-title/quick-view-subheader-title.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-subheader-title/quick-view-subheader-title.component.html","../../../../libs/core/src/lib/quick-view/quick-view-subheader-subtitle/quick-view-subheader-subtitle.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-subheader-subtitle/quick-view-subheader-subtitle.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group/quick-view-group.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group/quick-view-group.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group-title/quick-view-group-title.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-title/quick-view-group-title.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group-item/quick-view-group-item.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-item/quick-view-group-item.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group-item-label/quick-view-group-item-label.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-item-label/quick-view-group-item-label.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group-item-content/quick-view-group-item-content-element.directive.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-item-content/quick-view-group-item-content.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-item-content/quick-view-group-item-content.component.html","../../../../libs/core/src/lib/quick-view/quick-view.module.ts","../../../../libs/core/src/lib/quick-view/fundamental-ngx-core-quick-view.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation, Input } from '@angular/core';\n\nlet quickViewUniqueId = 0;\n\n@Component({\n selector: 'fd-quick-view',\n templateUrl: './quick-view.component.html',\n styleUrls: ['./quick-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewComponent {\n /** Id of the quick view element. */\n @Input()\n id: string = 'fd-quick-view-' + quickViewUniqueId++;\n}\n","<div class=\"fd-quick-view\" [id]=\"id\">\n <ng-content select=\"fd-quick-view-title\"></ng-content>\n\n <div class=\"fd-quick-view__content\">\n <ng-content select=\"fd-quick-view-subheader\"></ng-content>\n <ng-content select=\"fd-quick-view-group\"></ng-content>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-title',\n templateUrl: './quick-view-title.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewTitleComponent {\n /**\n * Alignment of title.\n * Options include 'left', 'right' and 'middle'. The default is set to 'middle'.\n * */\n @Input() align: 'left' | 'right' | 'middle' = 'middle';\n}\n","<div fd-popover-body-header>\n <div fd-bar barDesign=\"header\">\n <ng-container [ngSwitch]=\"align\">\n <div *ngSwitchCase=\"'left'\" fd-bar-left>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n <div *ngSwitchCase=\"'right'\" fd-bar-right>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n <div *ngSwitchDefault fd-bar-middle>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n </ng-container>\n </div>\n</div>\n\n<ng-template #barElement>\n <fd-bar-element>\n <ng-content></ng-content>\n </fd-bar-element>\n</ng-template>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-subheader',\n templateUrl: './quick-view-subheader.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewSubheaderComponent {}\n","<div fd-bar barDesign=\"header-with-subheader\">\n <div fd-bar-left>\n <ng-content select=\"fd-avatar\"></ng-content>\n\n <div class=\"fd-quick-view__subheader-text\">\n <ng-content select=\"fd-quick-view-subheader-title\"></ng-content>\n <ng-content select=\"fd-quick-view-subheader-subtitle\"></ng-content>\n </div>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-subheader-title',\n templateUrl: './quick-view-subheader-title.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewSubheaderTitleComponent {}\n","<h5 fd-title [headerSize]=\"5\">\n <ng-content></ng-content>\n</h5>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-subheader-subtitle',\n templateUrl: './quick-view-subheader-subtitle.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewSubheaderSubtitleComponent {}\n","<div class=\"fd-quick-view__subtitle\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-group',\n templateUrl: './quick-view-group.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupComponent {}\n","<fd-form-group role=\"group\">\n <ng-content></ng-content>\n</fd-form-group>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nlet groupTitleUniqueId = 0;\n\n@Component({\n selector: 'fd-quick-view-group-title',\n templateUrl: './quick-view-group-title.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupTitleComponent {\n /** Id of the quick view group title. */\n @Input()\n id: string = 'fd-quick-view-group-title-' + groupTitleUniqueId++;\n}\n","<div class=\"fd-form-group__header\" [attr.aria-labelledby]=\"id\">\n <h1 class=\"fd-form-group__header-text\" [id]=\"id\">\n <ng-content></ng-content>\n </h1>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nlet quickViewGroupItemUniqueId = 0;\n\n@Component({\n selector: 'fd-quick-view-group-item',\n templateUrl: './quick-view-group-item.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupItemComponent {\n /** Id of the quick view element. */\n @Input()\n id: string = 'fd-quick-view-group-item-' + quickViewGroupItemUniqueId++;\n}\n","<div fd-form-item [id]=\"id\">\n <ng-content></ng-content>\n</div>\n","import { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-group-item-label',\n templateUrl: './quick-view-group-item-label.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupItemLabelComponent implements AfterViewInit {\n /** @hidden */\n constructor(private readonly _elRef: ElementRef<Element>) {}\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._bindElementAttributes();\n }\n\n /** @hidden\n * Needed for binding the id to the label element (and this id needed for aria-labelledby of proper element). */\n private _bindElementAttributes(): void {\n const parentId = this._elRef.nativeElement.closest('.fd-form-item')?.id;\n\n const child = this._elRef.nativeElement.firstChild;\n if (child instanceof Element && parentId) {\n child.setAttribute('id', `${parentId}-label`);\n }\n }\n}\n","<label fd-form-label>\n <ng-content></ng-content>\n</label>\n","import { Directive } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-quick-view-group-item-content-element]',\n host: {\n class: `${QuickViewGroupItemContentElementDirective.class}`\n }\n})\nexport class QuickViewGroupItemContentElementDirective {\n /** @hidden */\n static class = 'fd-quick-view__group-item__content-element';\n}\n","import { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef } from '@angular/core';\n\nimport { QuickViewGroupItemContentElementDirective } from './quick-view-group-item-content-element.directive';\n\n@Component({\n selector: 'fd-quick-view-group-item-content',\n templateUrl: './quick-view-group-item-content.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupItemContentComponent implements AfterViewInit {\n /** @hidden */\n constructor(private readonly _elRef: ElementRef<Element>) {}\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._bindElementAttributes();\n }\n\n /** @hidden\n * Needed for binding the id of the element and id of the proper label to aria-labelledby. */\n private _bindElementAttributes(): void {\n const parentId = this._elRef.nativeElement.closest('.fd-form-item')?.id;\n const id = `${parentId}-content`;\n\n const element = this._elRef.nativeElement.querySelector(`.${QuickViewGroupItemContentElementDirective.class}`);\n if (element && parentId) {\n element.setAttribute('id', id);\n element.setAttribute('aria-labelledby', `${parentId}-label ${id}`);\n }\n }\n}\n","<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { QuickViewComponent } from './quick-view/quick-view.component';\nimport { QuickViewTitleComponent } from './quick-view-title/quick-view-title.component';\nimport { QuickViewSubheaderComponent } from './quick-view-subheader/quick-view-subheader.component';\nimport { QuickViewSubheaderTitleComponent } from './quick-view-subheader-title/quick-view-subheader-title.component';\nimport { QuickViewSubheaderSubtitleComponent } from './quick-view-subheader-subtitle/quick-view-subheader-subtitle.component';\nimport { QuickViewGroupComponent } from './quick-view-group/quick-view-group.component';\nimport { QuickViewGroupTitleComponent } from './quick-view-group-title/quick-view-group-title.component';\nimport { QuickViewGroupItemComponent } from './quick-view-group-item/quick-view-group-item.component';\nimport { QuickViewGroupItemLabelComponent } from './quick-view-group-item-label/quick-view-group-item-label.component';\nimport { QuickViewGroupItemContentComponent } from './quick-view-group-item-content/quick-view-group-item-content.component';\nimport { QuickViewGroupItemContentElementDirective } from './quick-view-group-item-content/quick-view-group-item-content-element.directive';\nimport { TitleModule } from '@fundamental-ngx/core/title';\nimport { BarModule } from '@fundamental-ngx/core/bar';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { FormGroupModule, FormItemModule, FormLabelModule } from '@fundamental-ngx/core/form';\n\n@NgModule({\n imports: [CommonModule, TitleModule, BarModule, FormGroupModule, FormItemModule, FormLabelModule, PopoverModule],\n declarations: [\n QuickViewComponent,\n QuickViewTitleComponent,\n QuickViewSubheaderComponent,\n QuickViewSubheaderTitleComponent,\n QuickViewSubheaderSubtitleComponent,\n QuickViewGroupComponent,\n QuickViewGroupTitleComponent,\n QuickViewGroupItemComponent,\n QuickViewGroupItemLabelComponent,\n QuickViewGroupItemContentComponent,\n QuickViewGroupItemContentElementDirective\n ],\n exports: [\n QuickViewComponent,\n QuickViewTitleComponent,\n QuickViewSubheaderComponent,\n QuickViewSubheaderTitleComponent,\n QuickViewSubheaderSubtitleComponent,\n QuickViewGroupComponent,\n QuickViewGroupTitleComponent,\n QuickViewGroupItemComponent,\n QuickViewGroupItemLabelComponent,\n QuickViewGroupItemContentComponent,\n QuickViewGroupItemContentElementDirective\n ]\n})\nexport class QuickViewModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-core-quick-view.mjs","sources":["../../../../libs/core/src/lib/quick-view/quick-view/quick-view.component.ts","../../../../libs/core/src/lib/quick-view/quick-view/quick-view.component.html","../../../../libs/core/src/lib/quick-view/quick-view-title/quick-view-title.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-title/quick-view-title.component.html","../../../../libs/core/src/lib/quick-view/quick-view-subheader/quick-view-subheader.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-subheader/quick-view-subheader.component.html","../../../../libs/core/src/lib/quick-view/quick-view-subheader-title/quick-view-subheader-title.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-subheader-title/quick-view-subheader-title.component.html","../../../../libs/core/src/lib/quick-view/quick-view-subheader-subtitle/quick-view-subheader-subtitle.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-subheader-subtitle/quick-view-subheader-subtitle.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group/quick-view-group.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group/quick-view-group.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group-title/quick-view-group-title.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-title/quick-view-group-title.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group-item/quick-view-group-item.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-item/quick-view-group-item.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group-item-label/quick-view-group-item-label.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-item-label/quick-view-group-item-label.component.html","../../../../libs/core/src/lib/quick-view/quick-view-group-item-content/quick-view-group-item-content-element.directive.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-item-content/quick-view-group-item-content.component.ts","../../../../libs/core/src/lib/quick-view/quick-view-group-item-content/quick-view-group-item-content.component.html","../../../../libs/core/src/lib/quick-view/quick-view.module.ts","../../../../libs/core/src/lib/quick-view/fundamental-ngx-core-quick-view.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation, Input } from '@angular/core';\n\nlet quickViewUniqueId = 0;\n\n@Component({\n selector: 'fd-quick-view',\n templateUrl: './quick-view.component.html',\n styleUrls: ['./quick-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewComponent {\n /** Id of the quick view element. */\n @Input()\n id: string = 'fd-quick-view-' + quickViewUniqueId++;\n}\n","<div class=\"fd-quick-view\" [id]=\"id\">\n <ng-content select=\"fd-quick-view-title\"></ng-content>\n\n <div class=\"fd-quick-view__content\">\n <ng-content select=\"fd-quick-view-subheader\"></ng-content>\n <ng-content select=\"fd-quick-view-group\"></ng-content>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-title',\n templateUrl: './quick-view-title.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewTitleComponent {\n /**\n * Alignment of title.\n * Options include 'left', 'right' and 'middle'. The default is set to 'middle'.\n * */\n @Input() align: 'left' | 'right' | 'middle' = 'middle';\n}\n","<div fd-popover-body-header>\n <div fd-bar barDesign=\"header\">\n <ng-container [ngSwitch]=\"align\">\n <div *ngSwitchCase=\"'left'\" fd-bar-left>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n <div *ngSwitchCase=\"'right'\" fd-bar-right>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n <div *ngSwitchDefault fd-bar-middle>\n <ng-container *ngTemplateOutlet=\"barElement\"></ng-container>\n </div>\n </ng-container>\n </div>\n</div>\n\n<ng-template #barElement>\n <fd-bar-element>\n <ng-content></ng-content>\n </fd-bar-element>\n</ng-template>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-subheader',\n templateUrl: './quick-view-subheader.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewSubheaderComponent {}\n","<div fd-bar barDesign=\"header-with-subheader\">\n <div fd-bar-left>\n <ng-content select=\"fd-avatar\"></ng-content>\n\n <div class=\"fd-quick-view__subheader-text\">\n <ng-content select=\"fd-quick-view-subheader-title\"></ng-content>\n <ng-content select=\"fd-quick-view-subheader-subtitle\"></ng-content>\n </div>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-subheader-title',\n templateUrl: './quick-view-subheader-title.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewSubheaderTitleComponent {}\n","<h5 fd-title [headerSize]=\"5\">\n <ng-content></ng-content>\n</h5>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-subheader-subtitle',\n templateUrl: './quick-view-subheader-subtitle.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewSubheaderSubtitleComponent {}\n","<div class=\"fd-quick-view__subtitle\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-group',\n templateUrl: './quick-view-group.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupComponent {}\n","<fd-form-group role=\"group\">\n <ng-content></ng-content>\n</fd-form-group>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nlet groupTitleUniqueId = 0;\n\n@Component({\n selector: 'fd-quick-view-group-title',\n templateUrl: './quick-view-group-title.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupTitleComponent {\n /** Id of the quick view group title. */\n @Input()\n id: string = 'fd-quick-view-group-title-' + groupTitleUniqueId++;\n}\n","<div class=\"fd-form-group__header\" [attr.aria-labelledby]=\"id\">\n <h1 class=\"fd-form-group__header-text\" [id]=\"id\">\n <ng-content></ng-content>\n </h1>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nlet quickViewGroupItemUniqueId = 0;\n\n@Component({\n selector: 'fd-quick-view-group-item',\n templateUrl: './quick-view-group-item.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupItemComponent {\n /** Id of the quick view element. */\n @Input()\n id: string = 'fd-quick-view-group-item-' + quickViewGroupItemUniqueId++;\n}\n","<div fd-form-item [id]=\"id\">\n <ng-content></ng-content>\n</div>\n","import { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'fd-quick-view-group-item-label',\n templateUrl: './quick-view-group-item-label.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupItemLabelComponent implements AfterViewInit {\n /** @hidden */\n constructor(private readonly _elRef: ElementRef<Element>) {}\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._bindElementAttributes();\n }\n\n /** @hidden\n * Needed for binding the id to the label element (and this id needed for aria-labelledby of proper element). */\n private _bindElementAttributes(): void {\n const parentId = this._elRef.nativeElement.closest('.fd-form-item')?.id;\n\n const child = this._elRef.nativeElement.firstChild;\n if (child instanceof Element && parentId) {\n child.setAttribute('id', `${parentId}-label`);\n }\n }\n}\n","<label fd-form-label>\n <ng-content></ng-content>\n</label>\n","import { Directive } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-quick-view-group-item-content-element]',\n host: {\n class: `${QuickViewGroupItemContentElementDirective.class}`\n }\n})\nexport class QuickViewGroupItemContentElementDirective {\n /** @hidden */\n static class = 'fd-quick-view__group-item__content-element';\n}\n","import { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef } from '@angular/core';\n\nimport { QuickViewGroupItemContentElementDirective } from './quick-view-group-item-content-element.directive';\n\n@Component({\n selector: 'fd-quick-view-group-item-content',\n templateUrl: './quick-view-group-item-content.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class QuickViewGroupItemContentComponent implements AfterViewInit {\n /** @hidden */\n constructor(private readonly _elRef: ElementRef<Element>) {}\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._bindElementAttributes();\n }\n\n /** @hidden\n * Needed for binding the id of the element and id of the proper label to aria-labelledby. */\n private _bindElementAttributes(): void {\n const parentId = this._elRef.nativeElement.closest('.fd-form-item')?.id;\n const id = `${parentId}-content`;\n\n const element = this._elRef.nativeElement.querySelector(`.${QuickViewGroupItemContentElementDirective.class}`);\n if (element && parentId) {\n element.setAttribute('id', id);\n element.setAttribute('aria-labelledby', `${parentId}-label ${id}`);\n }\n }\n}\n","<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { QuickViewComponent } from './quick-view/quick-view.component';\nimport { QuickViewTitleComponent } from './quick-view-title/quick-view-title.component';\nimport { QuickViewSubheaderComponent } from './quick-view-subheader/quick-view-subheader.component';\nimport { QuickViewSubheaderTitleComponent } from './quick-view-subheader-title/quick-view-subheader-title.component';\nimport { QuickViewSubheaderSubtitleComponent } from './quick-view-subheader-subtitle/quick-view-subheader-subtitle.component';\nimport { QuickViewGroupComponent } from './quick-view-group/quick-view-group.component';\nimport { QuickViewGroupTitleComponent } from './quick-view-group-title/quick-view-group-title.component';\nimport { QuickViewGroupItemComponent } from './quick-view-group-item/quick-view-group-item.component';\nimport { QuickViewGroupItemLabelComponent } from './quick-view-group-item-label/quick-view-group-item-label.component';\nimport { QuickViewGroupItemContentComponent } from './quick-view-group-item-content/quick-view-group-item-content.component';\nimport { QuickViewGroupItemContentElementDirective } from './quick-view-group-item-content/quick-view-group-item-content-element.directive';\nimport { TitleModule } from '@fundamental-ngx/core/title';\nimport { BarModule } from '@fundamental-ngx/core/bar';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { FormGroupModule, FormItemModule, FormLabelModule } from '@fundamental-ngx/core/form';\n\n@NgModule({\n imports: [CommonModule, TitleModule, BarModule, FormGroupModule, FormItemModule, FormLabelModule, PopoverModule],\n declarations: [\n QuickViewComponent,\n QuickViewTitleComponent,\n QuickViewSubheaderComponent,\n QuickViewSubheaderTitleComponent,\n QuickViewSubheaderSubtitleComponent,\n QuickViewGroupComponent,\n QuickViewGroupTitleComponent,\n QuickViewGroupItemComponent,\n QuickViewGroupItemLabelComponent,\n QuickViewGroupItemContentComponent,\n QuickViewGroupItemContentElementDirective\n ],\n exports: [\n QuickViewComponent,\n QuickViewTitleComponent,\n QuickViewSubheaderComponent,\n QuickViewSubheaderTitleComponent,\n QuickViewSubheaderSubtitleComponent,\n QuickViewGroupComponent,\n QuickViewGroupTitleComponent,\n QuickViewGroupItemComponent,\n QuickViewGroupItemLabelComponent,\n QuickViewGroupItemContentComponent,\n QuickViewGroupItemContentElementDirective\n ]\n})\nexport class QuickViewModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
@@ -2,12 +2,12 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { forwardRef, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, HostBinding, ContentChildren, HostListener, NgModule } from '@angular/core';
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
4
|
import { FD_BUTTON_COMPONENT } from '@fundamental-ngx/core/button';
|
|
5
|
-
import { startWith, observeOn,
|
|
5
|
+
import { startWith, observeOn, filter, tap, takeUntil } from 'rxjs/operators';
|
|
6
6
|
import { Subject, asyncScheduler, merge, fromEvent } from 'rxjs';
|
|
7
|
-
import
|
|
8
|
-
import { KeyUtil, DestroyedService } from '@fundamental-ngx/cdk/utils';
|
|
7
|
+
import { destroyObservable, KeyUtil } from '@fundamental-ngx/cdk/utils';
|
|
9
8
|
import { ENTER, SPACE } from '@angular/cdk/keycodes';
|
|
10
9
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
10
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
11
11
|
|
|
12
12
|
const isDisabledClass = 'is-disabled';
|
|
13
13
|
/**
|
|
@@ -23,10 +23,10 @@ const isDisabledClass = 'is-disabled';
|
|
|
23
23
|
*/
|
|
24
24
|
class SegmentedButtonComponent {
|
|
25
25
|
/** @hidden */
|
|
26
|
-
constructor(_changeDetRef, _elementRef,
|
|
26
|
+
constructor(_changeDetRef, _elementRef, _destroyRef) {
|
|
27
27
|
this._changeDetRef = _changeDetRef;
|
|
28
28
|
this._elementRef = _elementRef;
|
|
29
|
-
this.
|
|
29
|
+
this._destroyRef = _destroyRef;
|
|
30
30
|
/** Whether segmented button is on toggle mode, which allows to toggle more than 1 button */
|
|
31
31
|
this.toggle = false;
|
|
32
32
|
/** @hidden */
|
|
@@ -41,6 +41,12 @@ class SegmentedButtonComponent {
|
|
|
41
41
|
this.onTouched = () => { };
|
|
42
42
|
}
|
|
43
43
|
/** @hidden */
|
|
44
|
+
_click(event) {
|
|
45
|
+
if (!this._elementRef.nativeElement.contains(event.relatedTarget)) {
|
|
46
|
+
this.onTouched();
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/** @hidden */
|
|
44
50
|
ngAfterViewInit() {
|
|
45
51
|
this._listenToButtonChanges();
|
|
46
52
|
}
|
|
@@ -77,15 +83,9 @@ class SegmentedButtonComponent {
|
|
|
77
83
|
this._changeDetRef.detectChanges();
|
|
78
84
|
}
|
|
79
85
|
/** @hidden */
|
|
80
|
-
_click(event) {
|
|
81
|
-
if (!this._elementRef.nativeElement.contains(event.relatedTarget)) {
|
|
82
|
-
this.onTouched();
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
/** @hidden */
|
|
86
86
|
_listenToButtonChanges() {
|
|
87
87
|
this._buttons.changes
|
|
88
|
-
.pipe(startWith(1), observeOn(asyncScheduler),
|
|
88
|
+
.pipe(startWith(1), observeOn(asyncScheduler), takeUntilDestroyed(this._destroyRef))
|
|
89
89
|
.subscribe(() => {
|
|
90
90
|
this._onRefresh$.next();
|
|
91
91
|
this._toggleDisableButtons(this._isDisabled);
|
|
@@ -96,7 +96,7 @@ class SegmentedButtonComponent {
|
|
|
96
96
|
/** @hidden */
|
|
97
97
|
_listenToTriggerEvents(buttonComponent) {
|
|
98
98
|
const htmlElement = buttonComponent.elementRef.nativeElement;
|
|
99
|
-
const refresh$ = merge(this.
|
|
99
|
+
const refresh$ = merge(destroyObservable(this._destroyRef), this._onRefresh$);
|
|
100
100
|
const triggerEvents$ = merge(fromEvent(htmlElement, 'click'), fromEvent(htmlElement, 'keydown').pipe(filter((event) => KeyUtil.isKeyCode(event, [ENTER, SPACE])), tap((event) => {
|
|
101
101
|
event.preventDefault();
|
|
102
102
|
this.onTouched();
|
|
@@ -206,14 +206,13 @@ class SegmentedButtonComponent {
|
|
|
206
206
|
return resButtons;
|
|
207
207
|
}
|
|
208
208
|
}
|
|
209
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: SegmentedButtonComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token:
|
|
209
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: SegmentedButtonComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
210
210
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: SegmentedButtonComponent, selector: "fd-segmented-button", inputs: { toggle: "toggle" }, host: { attributes: { "role": "group" }, listeners: { "click": "_click($event)" }, properties: { "class.fd-segmented-button": "this._fdSegmentedButtonClass" } }, providers: [
|
|
211
211
|
{
|
|
212
212
|
provide: NG_VALUE_ACCESSOR,
|
|
213
213
|
useExisting: forwardRef(() => SegmentedButtonComponent),
|
|
214
214
|
multi: true
|
|
215
|
-
}
|
|
216
|
-
DestroyedService
|
|
215
|
+
}
|
|
217
216
|
], queries: [{ propertyName: "_buttons", predicate: FD_BUTTON_COMPONENT }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 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.fd-segmented-button\n button\n*/.fd-segmented-button{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative;vertical-align:middle}.fd-segmented-button:after,.fd-segmented-button:before{box-sizing:inherit;font-size:inherit}.fd-segmented-button:before{background:var(--sapButton_Background);border-radius:var(--sapButton_BorderCornerRadius);content:\"\";display:var(--fdButton_Segmented_Pad_Display);height:100%;left:0;position:absolute;top:0;width:100%}.fd-segmented-button button{margin:0}.fd-segmented-button button.is-hover,.fd-segmented-button button:hover{z-index:1}.fd-segmented-button button:first-child{border-radius:var(--fdButton_Border_Radius_Left)}.fd-segmented-button button:not(:first-child):not(:last-child){border-radius:var(--fdButton_Segmented_Middle_Border_Radius)}.fd-segmented-button button:last-child{border-radius:var(--fdButton_Border_Radius_Right)}.fd-segmented-button button:not(:last-child){margin-right:var(--fdButton_Segmented_Border_Offset)}.fd-segmented-button button:not(:last-child)[dir=rtl],[dir=rtl] .fd-segmented-button button:not(:last-child){margin-left:var(--fdButton_Segmented_Border_Offset);margin-right:0}.fd-segmented-button button[dir=rtl]:first-child,[dir=rtl] .fd-segmented-button button:first-child{border-radius:var(--fdButton_Border_Radius_Left_RTL)}.fd-segmented-button button[dir=rtl]:last-child,[dir=rtl] .fd-segmented-button button:last-child{border-radius:var(--fdButton_Border_Radius_Right_RTL)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
218
217
|
}
|
|
219
218
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: SegmentedButtonComponent, decorators: [{
|
|
@@ -225,10 +224,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
225
224
|
provide: NG_VALUE_ACCESSOR,
|
|
226
225
|
useExisting: forwardRef(() => SegmentedButtonComponent),
|
|
227
226
|
multi: true
|
|
228
|
-
}
|
|
229
|
-
DestroyedService
|
|
227
|
+
}
|
|
230
228
|
], template: "<ng-content></ng-content>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 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.fd-segmented-button\n button\n*/.fd-segmented-button{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative;vertical-align:middle}.fd-segmented-button:after,.fd-segmented-button:before{box-sizing:inherit;font-size:inherit}.fd-segmented-button:before{background:var(--sapButton_Background);border-radius:var(--sapButton_BorderCornerRadius);content:\"\";display:var(--fdButton_Segmented_Pad_Display);height:100%;left:0;position:absolute;top:0;width:100%}.fd-segmented-button button{margin:0}.fd-segmented-button button.is-hover,.fd-segmented-button button:hover{z-index:1}.fd-segmented-button button:first-child{border-radius:var(--fdButton_Border_Radius_Left)}.fd-segmented-button button:not(:first-child):not(:last-child){border-radius:var(--fdButton_Segmented_Middle_Border_Radius)}.fd-segmented-button button:last-child{border-radius:var(--fdButton_Border_Radius_Right)}.fd-segmented-button button:not(:last-child){margin-right:var(--fdButton_Segmented_Border_Offset)}.fd-segmented-button button:not(:last-child)[dir=rtl],[dir=rtl] .fd-segmented-button button:not(:last-child){margin-left:var(--fdButton_Segmented_Border_Offset);margin-right:0}.fd-segmented-button button[dir=rtl]:first-child,[dir=rtl] .fd-segmented-button button:first-child{border-radius:var(--fdButton_Border_Radius_Left_RTL)}.fd-segmented-button button[dir=rtl]:last-child,[dir=rtl] .fd-segmented-button button:last-child{border-radius:var(--fdButton_Border_Radius_Right_RTL)}\n"] }]
|
|
231
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type:
|
|
229
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.DestroyRef }]; }, propDecorators: { toggle: [{
|
|
232
230
|
type: Input
|
|
233
231
|
}], _fdSegmentedButtonClass: [{
|
|
234
232
|
type: HostBinding,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-core-segmented-button.mjs","sources":["../../../../libs/core/src/lib/segmented-button/segmented-button.component.ts","../../../../libs/core/src/lib/segmented-button/segmented-button.component.html","../../../../libs/core/src/lib/segmented-button/segmented-button.module.ts","../../../../libs/core/src/lib/segmented-button/fundamental-ngx-core-segmented-button.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { ButtonComponent, FD_BUTTON_COMPONENT } from '@fundamental-ngx/core/button';\nimport { filter, observeOn, startWith, takeUntil, tap } from 'rxjs/operators';\nimport { Subject, merge, fromEvent, asyncScheduler } from 'rxjs';\nimport { DestroyedService, KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport const isDisabledClass = 'is-disabled';\n\nexport type SegmentedButtonValue = string | (string | null)[] | null;\n\n/**\n * Container for grouped buttons.\n *\n * ```html\n * <fd-segmented-button [(ngModel)]=\"value\">\n * <button fd-button value=\"first\">Button</button>\n * <button fd-button value=\"second\">Button</button>\n * <button fd-button value=\"third\">Button</button>\n * </fd-segmented-button>\n * ```\n */\n@Component({\n selector: 'fd-segmented-button',\n templateUrl: './segmented-button.component.html',\n styleUrls: ['./segmented-button.component.scss'],\n host: {\n role: 'group'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SegmentedButtonComponent),\n multi: true\n },\n DestroyedService\n ]\n})\nexport class SegmentedButtonComponent implements AfterViewInit, ControlValueAccessor, OnDestroy {\n /** Whether segmented button is on toggle mode, which allows to toggle more than 1 button */\n @Input()\n toggle = false;\n\n /** @hidden */\n @HostBinding('class.fd-segmented-button')\n _fdSegmentedButtonClass = true;\n\n /** @hidden */\n @ContentChildren(FD_BUTTON_COMPONENT)\n _buttons: QueryList<ButtonComponent>;\n\n /**\n * Value of segmented button can have 2 types:\n * - string, when there is no toggle mode and only 1 value can be chosen.\n * - array of strings, when there is toggle mode and more than 1 value can be chosen.\n */\n private _currentValue: SegmentedButtonValue;\n\n /** @hidden */\n private _isDisabled = false;\n\n /** An RxJS Subject that will kill the data stream upon queryList changes (for unsubscribing) */\n private readonly _onRefresh$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n onChange: (value: SegmentedButtonValue) => void = () => {};\n\n /** @hidden */\n onTouched = (): void => {};\n\n /** @hidden */\n constructor(\n private readonly _changeDetRef: ChangeDetectorRef,\n private readonly _elementRef: ElementRef,\n private readonly _onDestroy$: DestroyedService\n ) {}\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._listenToButtonChanges();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onRefresh$.complete();\n }\n\n /** @hidden */\n writeValue(values: string[] | string): void {\n this._currentValue = values;\n this._pickButtonsByValues(values);\n }\n\n /**\n * @hidden\n * @param fn User defined function that handles the *onChange* event of the SegmentedButtons.\n */\n registerOnChange(fn: (value: SegmentedButtonValue) => void): void {\n this.onChange = fn;\n }\n\n /**\n * @hidden\n * @param fn User defined function that handles the *onTouch* event of the SegmentedButtons.\n */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /**\n * @hidden\n * @param isDisabled Sets the value of the *disabled* property of the SegmentedButtons.\n */\n setDisabledState(isDisabled: boolean): void {\n this._isDisabled = isDisabled;\n this._toggleDisableButtons(isDisabled);\n this._changeDetRef.detectChanges();\n }\n\n /** @hidden */\n @HostListener('click', ['$event'])\n private _click(event: MouseEvent): void {\n if (!this._elementRef.nativeElement.contains(event.relatedTarget)) {\n this.onTouched();\n }\n }\n\n /** @hidden */\n private _listenToButtonChanges(): void {\n this._buttons.changes\n .pipe(startWith(1), observeOn(asyncScheduler), takeUntil(this._onDestroy$))\n .subscribe(() => {\n this._onRefresh$.next();\n this._toggleDisableButtons(this._isDisabled);\n this._pickButtonsByValues(this._currentValue);\n this._buttons.forEach((button) => this._listenToTriggerEvents(button));\n });\n }\n\n /** @hidden */\n private _listenToTriggerEvents(buttonComponent: ButtonComponent): void {\n const htmlElement = buttonComponent.elementRef.nativeElement;\n\n const refresh$ = merge(this._onDestroy$, this._onRefresh$);\n\n const triggerEvents$ = merge(\n fromEvent(htmlElement, 'click'),\n fromEvent<KeyboardEvent>(htmlElement, 'keydown').pipe(\n filter((event) => KeyUtil.isKeyCode(event, [ENTER, SPACE])),\n tap((event) => {\n event.preventDefault();\n this.onTouched();\n })\n )\n );\n\n triggerEvents$.pipe(takeUntil(refresh$)).subscribe(() => this._handleTriggerOnButton(buttonComponent));\n }\n\n /** @hidden */\n private _handleTriggerOnButton(buttonComponent: ButtonComponent): void {\n if (!this._isButtonDisabled(buttonComponent)) {\n if (!this._isButtonSelected(buttonComponent) && !this.toggle) {\n this._buttons.forEach((button) => this._deselectButton(button));\n this._selectButton(buttonComponent);\n this._propagateChange();\n this._changeDetRef.markForCheck();\n }\n\n if (this.toggle) {\n this._toggleButton(buttonComponent);\n this._propagateChange();\n this._changeDetRef.markForCheck();\n }\n }\n }\n\n /** @hidden */\n private _propagateChange(): void {\n this.onChange(this._getValuesBySelected());\n this._currentValue = this._getValuesBySelected();\n }\n\n /** @hidden */\n private _toggleButton(buttonComponent: ButtonComponent): void {\n if (this._isButtonSelected(buttonComponent)) {\n this._deselectButton(buttonComponent);\n } else {\n this._selectButton(buttonComponent);\n }\n }\n\n /** @hidden */\n private _pickButtonsByValues(values: SegmentedButtonValue): void {\n if (!this._buttons) {\n return;\n }\n this._buttons.forEach((button) => this._deselectButton(button));\n this._getButtonsByValues(values).forEach((button) => this._selectButton(button));\n this._changeDetRef.detectChanges();\n }\n\n /** @hidden */\n private _getButtonsByValues(values: SegmentedButtonValue): ButtonComponent[] {\n if (!values) {\n return [];\n }\n\n if (Array.isArray(values)) {\n return this._buttons.filter((button) => !!values.find((value) => this._getButtonValue(button) === value));\n } else {\n return this._buttons.filter((button) => this._getButtonValue(button) === values);\n }\n }\n\n /** @hidden */\n private _selectButton(buttonComponent: ButtonComponent): void {\n buttonComponent.toggled = true;\n }\n\n /** @hidden */\n private _deselectButton(buttonComponent: ButtonComponent): void {\n buttonComponent.toggled = false;\n }\n\n /** @hidden */\n private _isButtonSelected(buttonComponent: ButtonComponent): boolean {\n return buttonComponent.toggled;\n }\n\n /** @hidden */\n private _isButtonDisabled(buttonComponent: ButtonComponent): boolean {\n return buttonComponent._disabled || buttonComponent.ariaDisabled;\n }\n\n /** @hidden */\n private _toggleDisableButtons(disable: boolean): void {\n if (!this._buttons) {\n return;\n }\n\n this._buttons.forEach((button) => (button.disabled = disable));\n if (disable) {\n this._buttons.forEach((button) => button.elementRef.nativeElement.setAttribute('disabled', 'true'));\n }\n this._changeDetRef.markForCheck();\n }\n\n /** @hidden */\n private _getButtonValue(buttonComponent: ButtonComponent): string | null {\n const element = buttonComponent.elementRef.nativeElement;\n if (element instanceof HTMLButtonElement) {\n return element.value;\n }\n return element.getAttribute('value');\n }\n\n /** @hidden\n * Returns values depending on selected state of buttons\n */\n private _getValuesBySelected(): SegmentedButtonValue {\n if (!this._buttons) {\n return [];\n }\n\n const resButtons = this._buttons\n .filter((button) => this._isButtonSelected(button))\n .map((button) => this._getButtonValue(button));\n if (!this.toggle) {\n return resButtons.length === 1 ? resButtons[0] : null;\n } else {\n return resButtons;\n }\n }\n}\n","<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SegmentedButtonComponent } from './segmented-button.component';\n\n@NgModule({\n imports: [CommonModule],\n exports: [SegmentedButtonComponent],\n declarations: [SegmentedButtonComponent]\n})\nexport class SegmentedButtonModule {}\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-segmented-button.mjs","sources":["../../../../libs/core/src/lib/segmented-button/segmented-button.component.ts","../../../../libs/core/src/lib/segmented-button/segmented-button.component.html","../../../../libs/core/src/lib/segmented-button/segmented-button.module.ts","../../../../libs/core/src/lib/segmented-button/fundamental-ngx-core-segmented-button.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n ElementRef,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { ButtonComponent, FD_BUTTON_COMPONENT } from '@fundamental-ngx/core/button';\nimport { filter, observeOn, startWith, takeUntil, tap } from 'rxjs/operators';\nimport { asyncScheduler, fromEvent, merge, Subject } from 'rxjs';\nimport { destroyObservable, KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nexport const isDisabledClass = 'is-disabled';\n\nexport type SegmentedButtonValue = string | (string | null)[] | null;\n\n/**\n * Container for grouped buttons.\n *\n * ```html\n * <fd-segmented-button [(ngModel)]=\"value\">\n * <button fd-button value=\"first\">Button</button>\n * <button fd-button value=\"second\">Button</button>\n * <button fd-button value=\"third\">Button</button>\n * </fd-segmented-button>\n * ```\n */\n@Component({\n selector: 'fd-segmented-button',\n templateUrl: './segmented-button.component.html',\n styleUrls: ['./segmented-button.component.scss'],\n host: {\n role: 'group'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SegmentedButtonComponent),\n multi: true\n }\n ]\n})\nexport class SegmentedButtonComponent implements AfterViewInit, ControlValueAccessor, OnDestroy {\n /** Whether segmented button is on toggle mode, which allows to toggle more than 1 button */\n @Input()\n toggle = false;\n\n /** @hidden */\n @HostBinding('class.fd-segmented-button')\n _fdSegmentedButtonClass = true;\n\n /** @hidden */\n @ContentChildren(FD_BUTTON_COMPONENT)\n _buttons: QueryList<ButtonComponent>;\n\n /**\n * Value of segmented button can have 2 types:\n * - string, when there is no toggle mode and only 1 value can be chosen.\n * - array of strings, when there is toggle mode and more than 1 value can be chosen.\n */\n private _currentValue: SegmentedButtonValue;\n\n /** @hidden */\n private _isDisabled = false;\n\n /** An RxJS Subject that will kill the data stream upon queryList changes (for unsubscribing) */\n private readonly _onRefresh$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n private readonly _changeDetRef: ChangeDetectorRef,\n private readonly _elementRef: ElementRef,\n private readonly _destroyRef: DestroyRef\n ) {}\n\n /** @hidden */\n @HostListener('click', ['$event'])\n private _click(event: MouseEvent): void {\n if (!this._elementRef.nativeElement.contains(event.relatedTarget)) {\n this.onTouched();\n }\n }\n\n /** @hidden */\n onChange: (value: SegmentedButtonValue) => void = () => {};\n\n /** @hidden */\n onTouched = (): void => {};\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._listenToButtonChanges();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onRefresh$.complete();\n }\n\n /** @hidden */\n writeValue(values: string[] | string): void {\n this._currentValue = values;\n this._pickButtonsByValues(values);\n }\n\n /**\n * @hidden\n * @param fn User defined function that handles the *onChange* event of the SegmentedButtons.\n */\n registerOnChange(fn: (value: SegmentedButtonValue) => void): void {\n this.onChange = fn;\n }\n\n /**\n * @hidden\n * @param fn User defined function that handles the *onTouch* event of the SegmentedButtons.\n */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /**\n * @hidden\n * @param isDisabled Sets the value of the *disabled* property of the SegmentedButtons.\n */\n setDisabledState(isDisabled: boolean): void {\n this._isDisabled = isDisabled;\n this._toggleDisableButtons(isDisabled);\n this._changeDetRef.detectChanges();\n }\n\n /** @hidden */\n private _listenToButtonChanges(): void {\n this._buttons.changes\n .pipe(startWith(1), observeOn(asyncScheduler), takeUntilDestroyed(this._destroyRef))\n .subscribe(() => {\n this._onRefresh$.next();\n this._toggleDisableButtons(this._isDisabled);\n this._pickButtonsByValues(this._currentValue);\n this._buttons.forEach((button) => this._listenToTriggerEvents(button));\n });\n }\n\n /** @hidden */\n private _listenToTriggerEvents(buttonComponent: ButtonComponent): void {\n const htmlElement = buttonComponent.elementRef.nativeElement;\n\n const refresh$ = merge(destroyObservable(this._destroyRef), this._onRefresh$);\n\n const triggerEvents$ = merge(\n fromEvent(htmlElement, 'click'),\n fromEvent<KeyboardEvent>(htmlElement, 'keydown').pipe(\n filter((event) => KeyUtil.isKeyCode(event, [ENTER, SPACE])),\n tap((event) => {\n event.preventDefault();\n this.onTouched();\n })\n )\n );\n\n triggerEvents$.pipe(takeUntil(refresh$)).subscribe(() => this._handleTriggerOnButton(buttonComponent));\n }\n\n /** @hidden */\n private _handleTriggerOnButton(buttonComponent: ButtonComponent): void {\n if (!this._isButtonDisabled(buttonComponent)) {\n if (!this._isButtonSelected(buttonComponent) && !this.toggle) {\n this._buttons.forEach((button) => this._deselectButton(button));\n this._selectButton(buttonComponent);\n this._propagateChange();\n this._changeDetRef.markForCheck();\n }\n\n if (this.toggle) {\n this._toggleButton(buttonComponent);\n this._propagateChange();\n this._changeDetRef.markForCheck();\n }\n }\n }\n\n /** @hidden */\n private _propagateChange(): void {\n this.onChange(this._getValuesBySelected());\n this._currentValue = this._getValuesBySelected();\n }\n\n /** @hidden */\n private _toggleButton(buttonComponent: ButtonComponent): void {\n if (this._isButtonSelected(buttonComponent)) {\n this._deselectButton(buttonComponent);\n } else {\n this._selectButton(buttonComponent);\n }\n }\n\n /** @hidden */\n private _pickButtonsByValues(values: SegmentedButtonValue): void {\n if (!this._buttons) {\n return;\n }\n this._buttons.forEach((button) => this._deselectButton(button));\n this._getButtonsByValues(values).forEach((button) => this._selectButton(button));\n this._changeDetRef.detectChanges();\n }\n\n /** @hidden */\n private _getButtonsByValues(values: SegmentedButtonValue): ButtonComponent[] {\n if (!values) {\n return [];\n }\n\n if (Array.isArray(values)) {\n return this._buttons.filter((button) => !!values.find((value) => this._getButtonValue(button) === value));\n } else {\n return this._buttons.filter((button) => this._getButtonValue(button) === values);\n }\n }\n\n /** @hidden */\n private _selectButton(buttonComponent: ButtonComponent): void {\n buttonComponent.toggled = true;\n }\n\n /** @hidden */\n private _deselectButton(buttonComponent: ButtonComponent): void {\n buttonComponent.toggled = false;\n }\n\n /** @hidden */\n private _isButtonSelected(buttonComponent: ButtonComponent): boolean {\n return buttonComponent.toggled;\n }\n\n /** @hidden */\n private _isButtonDisabled(buttonComponent: ButtonComponent): boolean {\n return buttonComponent._disabled || buttonComponent.ariaDisabled;\n }\n\n /** @hidden */\n private _toggleDisableButtons(disable: boolean): void {\n if (!this._buttons) {\n return;\n }\n\n this._buttons.forEach((button) => (button.disabled = disable));\n if (disable) {\n this._buttons.forEach((button) => button.elementRef.nativeElement.setAttribute('disabled', 'true'));\n }\n this._changeDetRef.markForCheck();\n }\n\n /** @hidden */\n private _getButtonValue(buttonComponent: ButtonComponent): string | null {\n const element = buttonComponent.elementRef.nativeElement;\n if (element instanceof HTMLButtonElement) {\n return element.value;\n }\n return element.getAttribute('value');\n }\n\n /** @hidden\n * Returns values depending on selected state of buttons\n */\n private _getValuesBySelected(): SegmentedButtonValue {\n if (!this._buttons) {\n return [];\n }\n\n const resButtons = this._buttons\n .filter((button) => this._isButtonSelected(button))\n .map((button) => this._getButtonValue(button));\n if (!this.toggle) {\n return resButtons.length === 1 ? resButtons[0] : null;\n } else {\n return resButtons;\n }\n }\n}\n","<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SegmentedButtonComponent } from './segmented-button.component';\n\n@NgModule({\n imports: [CommonModule],\n exports: [SegmentedButtonComponent],\n declarations: [SegmentedButtonComponent]\n})\nexport class SegmentedButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -453,6 +453,16 @@ const SELECT_ITEM_HEIGHT_EM = 4;
|
|
|
453
453
|
* the behaviour of the native select element.
|
|
454
454
|
*/
|
|
455
455
|
class SelectComponent {
|
|
456
|
+
/** @deprecated
|
|
457
|
+
* it is handled internally by controlTemplate != null|undefined is
|
|
458
|
+
* Equal as extendedBodyTemplate as true.
|
|
459
|
+
* Whether option components contain more than basic text. */
|
|
460
|
+
set extendedBodyTemplate(value) {
|
|
461
|
+
this._extendedBodyTemplate = value;
|
|
462
|
+
}
|
|
463
|
+
get extendedBodyTemplate() {
|
|
464
|
+
return this._extendedBodyTemplate;
|
|
465
|
+
}
|
|
456
466
|
/** Value of the select control. */
|
|
457
467
|
set value(newValue) {
|
|
458
468
|
if (newValue !== this._internalValue) {
|
|
@@ -560,11 +570,6 @@ class SelectComponent {
|
|
|
560
570
|
this.required = false;
|
|
561
571
|
/** Whether the select component is readonly. */
|
|
562
572
|
this.readonly = false;
|
|
563
|
-
/** @deprecated
|
|
564
|
-
* it is handled internally by controlTemplate != null|undefined is
|
|
565
|
-
* Equal as extendedBodyTemplate as true.
|
|
566
|
-
* Whether option components contain more than basic text. */
|
|
567
|
-
this.extendedBodyTemplate = false;
|
|
568
573
|
/** Glyph to add icon in the select component. */
|
|
569
574
|
this.glyph = 'slim-arrow-down';
|
|
570
575
|
/** Whether close the popover on outside click. */
|
|
@@ -612,6 +617,8 @@ class SelectComponent {
|
|
|
612
617
|
return _options?.changes.pipe(startWith(_options), switchMap(() => merge(..._options.map((option) => option.selectionChange))));
|
|
613
618
|
});
|
|
614
619
|
/** @hidden */
|
|
620
|
+
this._extendedBodyTemplate = false;
|
|
621
|
+
/** @hidden */
|
|
615
622
|
this._controlElemFontSize = 0;
|
|
616
623
|
/** @hidden */
|
|
617
624
|
this._focused = false;
|
|
@@ -938,7 +945,7 @@ class SelectComponent {
|
|
|
938
945
|
await this._dynamicComponentService.createDynamicModule(this.selectOptionsListTemplate, SelectMobileModule, SelectMobileComponent, this._viewContainerRef, injector);
|
|
939
946
|
}
|
|
940
947
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.0", ngImport: i0, type: SelectComponent, deps: [{ token: 'tabindex', attribute: true }, { token: i1$1.RtlService, optional: true }, { token: SelectKeyManagerService }, { token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i1$1.DynamicComponentService, optional: true }, { token: i3$1.NgControl, optional: true, self: true }, { token: i0.Injector, optional: true }, { token: i4$1.ContentDensityObserver }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
941
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: SelectComponent, selector: "fd-select", inputs: { controlId: "controlId", state: "state", mobile: "mobile", stateMessage: "stateMessage", disabled: "disabled", required: "required", readonly: "readonly", placeholder: "placeholder", value: "value",
|
|
948
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.0", type: SelectComponent, selector: "fd-select", inputs: { extendedBodyTemplate: "extendedBodyTemplate", controlId: "controlId", state: "state", mobile: "mobile", stateMessage: "stateMessage", disabled: "disabled", required: "required", readonly: "readonly", placeholder: "placeholder", value: "value", maxHeight: "maxHeight", glyph: "glyph", closeOnOutsideClick: "closeOnOutsideClick", fillControlMode: "fillControlMode", controlTemplate: "controlTemplate", appendTo: "appendTo", unselectMissingOption: "unselectMissingOption", typeaheadDebounceInterval: "typeaheadDebounceInterval", ariaLabelledBy: "ariaLabelledBy", ariaLabel: "ariaLabel", mobileConfig: "mobileConfig", inline: "inline", selectControlClass: "selectControlClass", selectDropdownButtonClass: "selectDropdownButtonClass", compareWith: "compareWith" }, outputs: { isOpenChange: "isOpenChange", valueChange: "valueChange" }, host: { listeners: { "window:resize": "_resizeScrollHandler()", "click": "toggle()", "keydown": "_handleKeydown($event)" }, properties: { "class.fd-select--inline": "inline", "class.fd-select-custom-class": "inline", "class.fd-select-custom-class--mobile": "mobile" }, classAttribute: "fd-select" }, providers: [
|
|
942
949
|
{
|
|
943
950
|
provide: SELECT_COMPONENT,
|
|
944
951
|
useExisting: SelectComponent
|
|
@@ -979,7 +986,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
979
986
|
type: Self
|
|
980
987
|
}] }, { type: i0.Injector, decorators: [{
|
|
981
988
|
type: Optional
|
|
982
|
-
}] }, { type: i4$1.ContentDensityObserver }]; }, propDecorators: {
|
|
989
|
+
}] }, { type: i4$1.ContentDensityObserver }]; }, propDecorators: { extendedBodyTemplate: [{
|
|
990
|
+
type: Input
|
|
991
|
+
}], controlId: [{
|
|
983
992
|
type: Input
|
|
984
993
|
}], state: [{
|
|
985
994
|
type: Input
|
|
@@ -997,8 +1006,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.0", ngImpor
|
|
|
997
1006
|
type: Input
|
|
998
1007
|
}], value: [{
|
|
999
1008
|
type: Input
|
|
1000
|
-
}], extendedBodyTemplate: [{
|
|
1001
|
-
type: Input
|
|
1002
1009
|
}], maxHeight: [{
|
|
1003
1010
|
type: Input
|
|
1004
1011
|
}], glyph: [{
|