@fundamental-ngx/core 0.58.2-rc.0 → 0.58.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/fundamental-ngx-core-action-bar.mjs +26 -26
- package/fesm2022/fundamental-ngx-core-action-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-action-sheet.mjs +20 -20
- package/fesm2022/fundamental-ngx-core-action-sheet.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs +28 -28
- package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar-group.mjs +34 -34
- package/fesm2022/fundamental-ngx-core-avatar-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-avatar.mjs +10 -10
- package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-bar.mjs +25 -25
- package/fesm2022/fundamental-ngx-core-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +10 -10
- package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-busy-indicator.mjs +15 -15
- package/fesm2022/fundamental-ngx-core-busy-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-button.mjs +15 -15
- package/fesm2022/fundamental-ngx-core-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-calendar.mjs +40 -40
- package/fesm2022/fundamental-ngx-core-calendar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-card.mjs +130 -126
- package/fesm2022/fundamental-ngx-core-card.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-carousel.mjs +19 -19
- package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-checkbox.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-checkbox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-combobox.mjs +16 -16
- package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-content-density.mjs +25 -25
- package/fesm2022/fundamental-ngx-core-content-density.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-date-picker.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-datetime.mjs +30 -30
- package/fesm2022/fundamental-ngx-core-datetime.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-dialog.mjs +64 -64
- package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-dynamic-page.mjs +52 -52
- package/fesm2022/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-dynamic-side-content.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-facets.mjs +17 -17
- package/fesm2022/fundamental-ngx-core-facets.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-feed-input.mjs +17 -17
- package/fesm2022/fundamental-ngx-core-feed-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-feed-list-item.mjs +22 -22
- package/fesm2022/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-file-uploader.mjs +16 -16
- package/fesm2022/fundamental-ngx-core-file-uploader.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-form.mjs +70 -70
- package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-formatted-text.mjs +8 -8
- package/fesm2022/fundamental-ngx-core-formatted-text.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-generic-tag.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-generic-tag.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-grid-list.mjs +47 -47
- package/fesm2022/fundamental-ngx-core-grid-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-icon.mjs +8 -8
- package/fesm2022/fundamental-ngx-core-icon.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-illustrated-message.mjs +19 -19
- package/fesm2022/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs +10 -8
- package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-info-label.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-info-label.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-inline-help.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-inline-help.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-input-group.mjs +19 -19
- package/fesm2022/fundamental-ngx-core-input-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-layout-grid.mjs +17 -17
- package/fesm2022/fundamental-ngx-core-layout-grid.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-layout-panel.mjs +31 -31
- package/fesm2022/fundamental-ngx-core-layout-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-link.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-link.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-list.mjs +80 -80
- package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-menu.mjs +58 -56
- package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-box.mjs +37 -37
- package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-page.mjs +19 -19
- package/fesm2022/fundamental-ngx-core-message-page.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-strip.mjs +25 -25
- package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-message-toast.mjs +17 -17
- package/fesm2022/fundamental-ngx-core-message-toast.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs +19 -19
- package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-mobile-mode.mjs +3 -3
- package/fesm2022/fundamental-ngx-core-mobile-mode.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +22 -22
- package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-multi-input.mjs +15 -15
- package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-nested-list.mjs +40 -40
- package/fesm2022/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-notification.mjs +88 -88
- package/fesm2022/fundamental-ngx-core-notification.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-attribute.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-object-attribute.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-identifier.mjs +11 -11
- package/fesm2022/fundamental-ngx-core-object-identifier.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-marker.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-object-marker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-number.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-object-number.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-object-status.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-object-status.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-overflow-layout.mjs +31 -31
- package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-pagination.mjs +11 -11
- package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-panel.mjs +19 -19
- package/fesm2022/fundamental-ngx-core-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-popover.mjs +42 -42
- package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-product-switch.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-progress-indicator.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-progress-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-quick-view.mjs +37 -37
- package/fesm2022/fundamental-ngx-core-quick-view.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-radio.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-radio.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-rating-indicator.mjs +10 -10
- package/fesm2022/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs +10 -10
- package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-scroll-spy.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-scroll-spy.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-scrollbar.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-scrollbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-segmented-button.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-select.mjs +20 -20
- package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-settings.mjs +52 -52
- package/fesm2022/fundamental-ngx-core-settings.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-shared.mjs +3 -3
- package/fesm2022/fundamental-ngx-core-shared.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-shellbar.mjs +88 -75
- package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-side-navigation.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-side-navigation.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-skeleton.mjs +12 -10
- package/fesm2022/fundamental-ngx-core-skeleton.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-slider.mjs +10 -10
- package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-split-button.mjs +10 -10
- package/fesm2022/fundamental-ngx-core-split-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-status-indicator.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-status-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-step-input.mjs +13 -9
- package/fesm2022/fundamental-ngx-core-step-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-switch.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-switch.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-table.mjs +49 -49
- package/fesm2022/fundamental-ngx-core-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tabs.mjs +52 -52
- package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tests.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-text.mjs +8 -8
- package/fesm2022/fundamental-ngx-core-text.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-theming.mjs +7 -7
- package/fesm2022/fundamental-ngx-core-theming.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tile.mjs +94 -94
- package/fesm2022/fundamental-ngx-core-tile.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-time-picker.mjs +8 -8
- package/fesm2022/fundamental-ngx-core-time-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-time.mjs +11 -11
- package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-timeline.mjs +43 -43
- package/fesm2022/fundamental-ngx-core-timeline.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-title.mjs +8 -8
- package/fesm2022/fundamental-ngx-core-title.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-token.mjs +19 -15
- package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-toolbar.mjs +47 -47
- package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-tree.mjs +32 -32
- package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-upload-collection.mjs +37 -37
- package/fesm2022/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-user-menu.mjs +64 -64
- package/fesm2022/fundamental-ngx-core-user-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs +13 -13
- package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core-wizard.mjs +28 -28
- package/fesm2022/fundamental-ngx-core-wizard.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-core.mjs +4 -4
- package/fesm2022/fundamental-ngx-core.mjs.map +1 -1
- package/package.json +113 -113
- package/{types/fundamental-ngx-core-shellbar.d.ts → shellbar/index.d.ts} +21 -13
- package/{types/fundamental-ngx-core-toolbar.d.ts → toolbar/index.d.ts} +7 -8
- /package/{types/fundamental-ngx-core-action-bar.d.ts → action-bar/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-action-sheet.d.ts → action-sheet/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-avatar.d.ts → avatar/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-avatar-group.d.ts → avatar-group/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-avatar-group-legacy.d.ts → avatar-group-legacy/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-bar.d.ts → bar/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-breadcrumb.d.ts → breadcrumb/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-busy-indicator.d.ts → busy-indicator/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-button.d.ts → button/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-calendar.d.ts → calendar/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-card.d.ts → card/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-carousel.d.ts → carousel/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-checkbox.d.ts → checkbox/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-combobox.d.ts → combobox/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-content-density.d.ts → content-density/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-date-picker.d.ts → date-picker/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-datetime.d.ts → datetime/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-datetime-picker.d.ts → datetime-picker/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-dialog.d.ts → dialog/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-dynamic-page.d.ts → dynamic-page/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-dynamic-side-content.d.ts → dynamic-side-content/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-facets.d.ts → facets/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-feed-input.d.ts → feed-input/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-feed-list-item.d.ts → feed-list-item/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-file-uploader.d.ts → file-uploader/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-fixed-card-layout.d.ts → fixed-card-layout/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-flexible-column-layout.d.ts → flexible-column-layout/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-form.d.ts → form/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-formatted-text.d.ts → formatted-text/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-generic-tag.d.ts → generic-tag/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-grid-list.d.ts → grid-list/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-icon.d.ts → icon/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-illustrated-message.d.ts → illustrated-message/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core.d.ts → index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-infinite-scroll.d.ts → infinite-scroll/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-info-label.d.ts → info-label/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-inline-help.d.ts → inline-help/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-input-group.d.ts → input-group/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-layout-grid.d.ts → layout-grid/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-layout-panel.d.ts → layout-panel/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-link.d.ts → link/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-list.d.ts → list/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-menu.d.ts → menu/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-message-box.d.ts → message-box/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-message-page.d.ts → message-page/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-message-strip.d.ts → message-strip/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-message-toast.d.ts → message-toast/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-micro-process-flow.d.ts → micro-process-flow/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-mobile-mode.d.ts → mobile-mode/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-multi-combobox.d.ts → multi-combobox/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-multi-input.d.ts → multi-input/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-nested-list.d.ts → nested-list/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-notification.d.ts → notification/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-object-attribute.d.ts → object-attribute/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-object-identifier.d.ts → object-identifier/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-object-marker.d.ts → object-marker/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-object-number.d.ts → object-number/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-object-status.d.ts → object-status/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-overflow-layout.d.ts → overflow-layout/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-pagination.d.ts → pagination/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-panel.d.ts → panel/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-popover.d.ts → popover/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-product-switch.d.ts → product-switch/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-progress-indicator.d.ts → progress-indicator/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-quick-view.d.ts → quick-view/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-radio.d.ts → radio/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-rating-indicator.d.ts → rating-indicator/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-resizable-card-layout.d.ts → resizable-card-layout/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-scroll-spy.d.ts → scroll-spy/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-scrollbar.d.ts → scrollbar/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-segmented-button.d.ts → segmented-button/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-select.d.ts → select/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-settings.d.ts → settings/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-shared.d.ts → shared/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-side-navigation.d.ts → side-navigation/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-skeleton.d.ts → skeleton/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-slider.d.ts → slider/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-split-button.d.ts → split-button/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-status-indicator.d.ts → status-indicator/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-step-input.d.ts → step-input/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-switch.d.ts → switch/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-table.d.ts → table/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-tabs.d.ts → tabs/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-tests.d.ts → tests/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-text.d.ts → text/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-theming.d.ts → theming/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-tile.d.ts → tile/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-time.d.ts → time/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-time-picker.d.ts → time-picker/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-timeline.d.ts → timeline/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-title.d.ts → title/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-token.d.ts → token/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-tree.d.ts → tree/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-upload-collection.d.ts → upload-collection/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-user-menu.d.ts → user-menu/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-vertical-navigation.d.ts → vertical-navigation/index.d.ts} +0 -0
- /package/{types/fundamental-ngx-core-wizard.d.ts → wizard/index.d.ts} +0 -0
|
@@ -23,10 +23,10 @@ class FixedCardLayoutItemComponent {
|
|
|
23
23
|
header.focus();
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: FixedCardLayoutItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.4", type: FixedCardLayoutItemComponent, isStandalone: true, selector: "fd-fixed-card-layout-item", host: { properties: { "style.display": "\"block\"" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28
28
|
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: FixedCardLayoutItemComponent, decorators: [{
|
|
30
30
|
type: Component,
|
|
31
31
|
args: [{
|
|
32
32
|
selector: 'fd-fixed-card-layout-item',
|
|
@@ -65,10 +65,10 @@ class CardDefinitionDirective {
|
|
|
65
65
|
/** @hidden */
|
|
66
66
|
this._fdCardDef = cardRank++;
|
|
67
67
|
}
|
|
68
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
69
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
68
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: CardDefinitionDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
69
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: CardDefinitionDirective, isStandalone: true, selector: "[fdCardDef]", inputs: { fdCardDef: "fdCardDef" }, ngImport: i0 }); }
|
|
70
70
|
}
|
|
71
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: CardDefinitionDirective, decorators: [{
|
|
72
72
|
type: Directive,
|
|
73
73
|
args: [{
|
|
74
74
|
selector: '[fdCardDef]',
|
|
@@ -348,10 +348,10 @@ class FixedCardLayoutComponent {
|
|
|
348
348
|
.subscribe(() => this._setContainerHeight()));
|
|
349
349
|
}));
|
|
350
350
|
}
|
|
351
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
352
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: FixedCardLayoutComponent, isStandalone: true, selector: "fd-fixed-card-layout", inputs: { disableDragDrop: "disableDragDrop", dragStartDelay: "dragStartDelay", cardMinimumWidth: "cardMinimumWidth", columnsWidthConfig: "columnsWidthConfig", maxColumns: "maxColumns" }, outputs: { layoutChange: "layoutChange", cardDraggedDropped: "cardDraggedDropped" }, host: { listeners: { "keydown": "handleKeydown($event)" }, classAttribute: "fd-fixed-card-layout" }, queries: [{ propertyName: "_cards", predicate: CardDefinitionDirective }], viewQueries: [{ propertyName: "_layout", first: true, predicate: ["layout"], descendants: true }, { propertyName: "_cardContainers", predicate: FixedCardLayoutItemComponent, descendants: true }, { propertyName: "_dragList", predicate: CdkDrag, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n #layout\n cdkDropListGroup\n fdDndKeyboardGroup\n class=\"fd-fixed-card-layout__card-layout fd-fixed-card-layout__card-layout--columns-{{ this._numberOfColumns }}\"\n [style.height]=\"_containerHeight + 'px'\"\n [groups]=\"_cardColumns\"\n orientation=\"horizontal\"\n [customMoveFn]=\"_customMoveFn\"\n [customTransferFn]=\"_customTransferFn\"\n [disableKeyboardDragDrop]=\"disableDragDrop\"\n [cdkDropListGroupDisabled]=\"disableDragDrop\"\n [attr.dir]=\"_dir$()\"\n>\n @for (card of _cardsArray; track card; let cardIndex = $index) {\n <div\n cdkDropList\n class=\"fd-fixed-card-layout__card\"\n [class.fd-fixed-card-layout__card--single]=\"_singleItemColumns.has(card.fdCardDef)\"\n [style.min-width.px]=\"_columnsWidth.get(card.fdCardDef)\"\n [style.max-width.px]=\"_columnsWidth.get(card.fdCardDef)\"\n [style.display]=\"_hiddenCard === card ? 'none' : 'block'\"\n [cdkDropListData]=\"cardIndex\"\n [cdkDropListSortPredicate]=\"_sortPredicateFn\"\n (cdkDropListEntered)=\"_onDropListEntered($event)\"\n >\n <div\n cdkDrag\n fdDndKeyboardItem\n tabindex=\"0\"\n cdkDragPreviewClass=\"fd-fixed-card-layout__card-preview\"\n [cdkDragData]=\"card\"\n [cdkDragStartDelay]=\"dragStartDelay\"\n [itemIndex]=\"_itemIndexes.get(card.fdCardDef)!\"\n [groupIndex]=\"_groupIndexes.get(card.fdCardDef)!\"\n (cdkDragStarted)=\"_onDragStarted($event)\"\n (cdkDragDropped)=\"_onDragDropped($event)\"\n >\n <fd-fixed-card-layout-item>\n <ng-template [ngTemplateOutlet]=\"card?.template || null\"> </ng-template>\n </fd-fixed-card-layout-item>\n <div\n *cdkDragPlaceholder\n class=\"fd-fixed-card-layout__card-placeholder\"\n [style.margin-bottom.rem]=\"+_placeholderMargin\"\n >\n <ng-template [ngTemplateOutlet]=\"card?.template || null\"></ng-template>\n </div>\n </div>\n </div>\n }\n @for (column of _cardColumns; track column; let last = $last; let index = $index) {\n @if (!last) {\n <div class=\"fd-fixed-card-layout__clearfix\" [style.order]=\"index + 1\"></div>\n }\n }\n</div>\n", styles: [".fd-fixed-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-fixed-card-layout:after,.fd-fixed-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-margin-start:-1rem;display:-webkit-box;display:-ms-flexbox;display:flex;margin-inline-start:-1rem;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;margin-top:-1rem}.fd-fixed-card-layout__card-layout:after,.fd-fixed-card-layout__card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card{width:50%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card:nth-of-type(2n){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card:nth-of-type(odd){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card{width:33.3333333333%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card{width:25%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card{width:20%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card{width:16.6666666667%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card{width:14.2857142857%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card{width:12.5%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card{width:11.1111111111%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+8){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card{width:10%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n){-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+8){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+9){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.fd-fixed-card-layout__card,.fd-fixed-card-layout__card-placeholder{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;min-height:.0625rem;min-width:20rem;padding-block:0;padding-inline:0}.fd-fixed-card-layout__card-placeholder:after,.fd-fixed-card-layout__card-placeholder:before,.fd-fixed-card-layout__card:after,.fd-fixed-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-padding-before:1rem;padding-block-start:1rem;-webkit-padding-start:1rem;padding-inline-start:1rem}.fd-fixed-card-layout__card--single{-ms-flex-preferred-size:100%;flex-basis:100%}.fd-fixed-card-layout__card:empty{-webkit-padding-before:0;padding-block-start:0}.fd-fixed-card-layout__card-placeholder{border:.125rem dashed var(--sapContent_DragAndDropActiveColor);cursor:-webkit-grabbing;cursor:grabbing;opacity:.3}.fd-fixed-card-layout__card-preview{border:0;border-radius:var(--sapElement_BorderCornerRadius);-webkit-box-shadow:var(--sapContent_Shadow2);box-shadow:var(--sapContent_Shadow2);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-fixed-card-layout__card-preview:after,.fd-fixed-card-layout__card-preview:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__clearfix{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;width:0;-ms-flex-preferred-size:100%;flex-basis:100%}.fd-fixed-card-layout__clearfix:after,.fd-fixed-card-layout__clearfix:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card{width:100%}.fd-fixed-card-layout__card-layout{align-items:flex-start}.fd-fixed-card-layout__card-placeholder{width:100%;min-width:100%;max-width:100%}\n/*! Bundled license information:\n\nfundamental-styles/dist/fixed-card-layout.css:\n (*!\n * Fundamental Library Styles v0.40.1\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "directive", type: CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2.CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }, { kind: "directive", type: DndKeyboardGroupDirective, selector: "[fdkDndKeyboardGroup], [fdDndKeyboardGroup]", inputs: ["groups", "disableKeyboardDragDrop", "orientation", "customMoveFn", "customTransferFn"] }, { kind: "directive", type: DndKeyboardItemDirective, selector: "[fdkDndKeyboardItem], [fdDndKeyboardItem]", inputs: ["itemIndex", "groupIndex"] }, { kind: "component", type: FixedCardLayoutItemComponent, selector: "fd-fixed-card-layout-item" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
351
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: FixedCardLayoutComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
352
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.4", type: FixedCardLayoutComponent, isStandalone: true, selector: "fd-fixed-card-layout", inputs: { disableDragDrop: "disableDragDrop", dragStartDelay: "dragStartDelay", cardMinimumWidth: "cardMinimumWidth", columnsWidthConfig: "columnsWidthConfig", maxColumns: "maxColumns" }, outputs: { layoutChange: "layoutChange", cardDraggedDropped: "cardDraggedDropped" }, host: { listeners: { "keydown": "handleKeydown($event)" }, classAttribute: "fd-fixed-card-layout" }, queries: [{ propertyName: "_cards", predicate: CardDefinitionDirective }], viewQueries: [{ propertyName: "_layout", first: true, predicate: ["layout"], descendants: true }, { propertyName: "_cardContainers", predicate: FixedCardLayoutItemComponent, descendants: true }, { propertyName: "_dragList", predicate: CdkDrag, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n #layout\n cdkDropListGroup\n fdDndKeyboardGroup\n class=\"fd-fixed-card-layout__card-layout fd-fixed-card-layout__card-layout--columns-{{ this._numberOfColumns }}\"\n [style.height]=\"_containerHeight + 'px'\"\n [groups]=\"_cardColumns\"\n orientation=\"horizontal\"\n [customMoveFn]=\"_customMoveFn\"\n [customTransferFn]=\"_customTransferFn\"\n [disableKeyboardDragDrop]=\"disableDragDrop\"\n [cdkDropListGroupDisabled]=\"disableDragDrop\"\n [attr.dir]=\"_dir$()\"\n>\n @for (card of _cardsArray; track card; let cardIndex = $index) {\n <div\n cdkDropList\n class=\"fd-fixed-card-layout__card\"\n [class.fd-fixed-card-layout__card--single]=\"_singleItemColumns.has(card.fdCardDef)\"\n [style.min-width.px]=\"_columnsWidth.get(card.fdCardDef)\"\n [style.max-width.px]=\"_columnsWidth.get(card.fdCardDef)\"\n [style.display]=\"_hiddenCard === card ? 'none' : 'block'\"\n [cdkDropListData]=\"cardIndex\"\n [cdkDropListSortPredicate]=\"_sortPredicateFn\"\n (cdkDropListEntered)=\"_onDropListEntered($event)\"\n >\n <div\n cdkDrag\n fdDndKeyboardItem\n tabindex=\"0\"\n cdkDragPreviewClass=\"fd-fixed-card-layout__card-preview\"\n [cdkDragData]=\"card\"\n [cdkDragStartDelay]=\"dragStartDelay\"\n [itemIndex]=\"_itemIndexes.get(card.fdCardDef)!\"\n [groupIndex]=\"_groupIndexes.get(card.fdCardDef)!\"\n (cdkDragStarted)=\"_onDragStarted($event)\"\n (cdkDragDropped)=\"_onDragDropped($event)\"\n >\n <fd-fixed-card-layout-item>\n <ng-template [ngTemplateOutlet]=\"card?.template || null\"> </ng-template>\n </fd-fixed-card-layout-item>\n <div\n *cdkDragPlaceholder\n class=\"fd-fixed-card-layout__card-placeholder\"\n [style.margin-bottom.rem]=\"+_placeholderMargin\"\n >\n <ng-template [ngTemplateOutlet]=\"card?.template || null\"></ng-template>\n </div>\n </div>\n </div>\n }\n @for (column of _cardColumns; track column; let last = $last; let index = $index) {\n @if (!last) {\n <div class=\"fd-fixed-card-layout__clearfix\" [style.order]=\"index + 1\"></div>\n }\n }\n</div>\n", styles: [".fd-fixed-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-fixed-card-layout:after,.fd-fixed-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-margin-start:-1rem;display:-webkit-box;display:-ms-flexbox;display:flex;margin-inline-start:-1rem;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;margin-top:-1rem}.fd-fixed-card-layout__card-layout:after,.fd-fixed-card-layout__card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card{width:50%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card:nth-of-type(2n){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card:nth-of-type(odd){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card{width:33.3333333333%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card{width:25%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card{width:20%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card{width:16.6666666667%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card{width:14.2857142857%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card{width:12.5%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card{width:11.1111111111%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+8){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card{width:10%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n){-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+8){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+9){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.fd-fixed-card-layout__card,.fd-fixed-card-layout__card-placeholder{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;min-height:.0625rem;min-width:20rem;padding-block:0;padding-inline:0}.fd-fixed-card-layout__card-placeholder:after,.fd-fixed-card-layout__card-placeholder:before,.fd-fixed-card-layout__card:after,.fd-fixed-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-padding-before:1rem;padding-block-start:1rem;-webkit-padding-start:1rem;padding-inline-start:1rem}.fd-fixed-card-layout__card--single{-ms-flex-preferred-size:100%;flex-basis:100%}.fd-fixed-card-layout__card:empty{-webkit-padding-before:0;padding-block-start:0}.fd-fixed-card-layout__card-placeholder{border:.125rem dashed var(--sapContent_DragAndDropActiveColor);cursor:-webkit-grabbing;cursor:grabbing;opacity:.3}.fd-fixed-card-layout__card-preview{border:0;border-radius:var(--sapElement_BorderCornerRadius);-webkit-box-shadow:var(--sapContent_Shadow2);box-shadow:var(--sapContent_Shadow2);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-fixed-card-layout__card-preview:after,.fd-fixed-card-layout__card-preview:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__clearfix{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;width:0;-ms-flex-preferred-size:100%;flex-basis:100%}.fd-fixed-card-layout__clearfix:after,.fd-fixed-card-layout__clearfix:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card{width:100%}.fd-fixed-card-layout__card-layout{align-items:flex-start}.fd-fixed-card-layout__card-placeholder{width:100%;min-width:100%;max-width:100%}\n/*! Bundled license information:\n\nfundamental-styles/dist/fixed-card-layout.css:\n (*!\n * Fundamental Library Styles v0.40.1\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "directive", type: CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i2.CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }, { kind: "directive", type: DndKeyboardGroupDirective, selector: "[fdkDndKeyboardGroup], [fdDndKeyboardGroup]", inputs: ["groups", "disableKeyboardDragDrop", "orientation", "customMoveFn", "customTransferFn"] }, { kind: "directive", type: DndKeyboardItemDirective, selector: "[fdkDndKeyboardItem], [fdDndKeyboardItem]", inputs: ["itemIndex", "groupIndex"] }, { kind: "component", type: FixedCardLayoutItemComponent, selector: "fd-fixed-card-layout-item" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
353
353
|
}
|
|
354
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
354
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: FixedCardLayoutComponent, decorators: [{
|
|
355
355
|
type: Component,
|
|
356
356
|
args: [{ selector: 'fd-fixed-card-layout', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
357
357
|
class: 'fd-fixed-card-layout'
|
|
@@ -431,11 +431,11 @@ const components = [FixedCardLayoutComponent, CardDefinitionDirective, FixedCard
|
|
|
431
431
|
* Use direct imports of components and directives.
|
|
432
432
|
*/
|
|
433
433
|
class FixedCardLayoutModule {
|
|
434
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
435
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
436
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
434
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: FixedCardLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
435
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.4", ngImport: i0, type: FixedCardLayoutModule, imports: [FixedCardLayoutComponent, CardDefinitionDirective, FixedCardLayoutItemComponent], exports: [FixedCardLayoutComponent, CardDefinitionDirective, FixedCardLayoutItemComponent] }); }
|
|
436
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: FixedCardLayoutModule, imports: [FixedCardLayoutComponent] }); }
|
|
437
437
|
}
|
|
438
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
438
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: FixedCardLayoutModule, decorators: [{
|
|
439
439
|
type: NgModule,
|
|
440
440
|
args: [{
|
|
441
441
|
imports: [...components],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-core-fixed-card-layout.mjs","sources":["../../../../libs/core/fixed-card-layout/fixed-card-layout-item/fixed-card-layout-item.component.ts","../../../../libs/core/fixed-card-layout/fixed-card-layout.component.ts","../../../../libs/core/fixed-card-layout/fixed-card-layout.component.html","../../../../libs/core/fixed-card-layout/fixed-card-layout.module.ts","../../../../libs/core/fixed-card-layout/fundamental-ngx-core-fixed-card-layout.ts"],"sourcesContent":["import { FocusableOption } from '@angular/cdk/a11y';\nimport { ChangeDetectionStrategy, Component, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'fd-fixed-card-layout-item',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[style.display]': '\"block\"'\n },\n standalone: true\n})\nexport class FixedCardLayoutItemComponent implements FocusableOption {\n /** @hidden */\n constructor(private _elementRef: ElementRef) {}\n\n /** Set focus on the element. */\n focus(): void {\n const header = this._elementRef.nativeElement.querySelector('.fd-card__header');\n if (header) {\n header.focus();\n }\n }\n}\n","import { FocusKeyManager } from '@angular/cdk/a11y';\nimport {\n CdkDrag,\n CdkDragDrop,\n CdkDragEnter,\n CdkDragPlaceholder,\n CdkDragStart,\n CdkDropList,\n CdkDropListGroup,\n DragDropModule\n} from '@angular/cdk/drag-drop';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewChildren,\n ViewEncapsulation,\n computed,\n inject\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { debounceTime, filter, skip } from 'rxjs/operators';\n\nimport { Direction } from '@angular/cdk/bidi';\nimport { NumberInput, coerceNumberProperty } from '@angular/cdk/coercion';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport {\n DndKeyboardGroupDirective,\n DndKeyboardItemDirective,\n Nullable,\n RtlService,\n getDocumentFontSize,\n resizeObservable\n} from '@fundamental-ngx/cdk/utils';\nimport { FixedCardLayoutItemComponent } from './fixed-card-layout-item/fixed-card-layout-item.component';\n\nconst REM_IN_PX = getDocumentFontSize();\nconst CARD_MINIMUM_WIDTH = REM_IN_PX * 20; // 20rem\nconst CARD_GAP_WIDTH = REM_IN_PX; // 1rem\nconst DRAG_START_DELAY = 200; // in ms\nconst MAX_COLUMNS = 10;\n\nlet cardRank = 1;\n\n@Directive({\n selector: '[fdCardDef]',\n standalone: true\n})\nexport class CardDefinitionDirective {\n /**\n * Behaves like rank of card.\n * Useful in creating layout again after drag and drop.\n */\n @Input()\n set fdCardDef(value: NumberInput) {\n if (!value) {\n return;\n }\n\n this._fdCardDef = coerceNumberProperty(value);\n }\n get fdCardDef(): number {\n return this._fdCardDef;\n }\n\n /** @hidden */\n private _fdCardDef: number = cardRank++;\n\n /** @hidden */\n constructor(public template: TemplateRef<any>) {}\n}\n\nexport interface Layout {\n numberOfColumns?: number;\n screenSize: number;\n}\n\nexport interface CardDropped {\n previousIndex: number;\n currentIndex: number;\n layoutColumns: number;\n items: CardDefinitionDirective[];\n}\n\ntype Columns = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;\n\nexport type ColumnsWidthConfig = { [C in Columns]?: number };\n\ntype CardColumn = CardDefinitionDirective[];\n\n@Component({\n selector: 'fd-fixed-card-layout',\n templateUrl: './fixed-card-layout.component.html',\n styleUrl: './fixed-card-layout.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'fd-fixed-card-layout'\n },\n standalone: true,\n imports: [\n CdkDropListGroup,\n DragDropModule,\n DndKeyboardGroupDirective,\n DndKeyboardItemDirective,\n CdkDropList,\n CdkDrag,\n FixedCardLayoutItemComponent,\n NgTemplateOutlet,\n CdkDragPlaceholder\n ]\n})\nexport class FixedCardLayoutComponent implements AfterViewInit, OnChanges, OnDestroy {\n /** Drag drop behavior can be disabled */\n @Input()\n disableDragDrop: boolean;\n\n /** Drag start delay in milliseconds, default to 200ms for safe scrolling on mobile with touchscreen */\n @Input()\n dragStartDelay = DRAG_START_DELAY;\n\n /** Card's minimum width in pixels. */\n @Input()\n set cardMinimumWidth(value: NumberInput) {\n const coercedValue = coerceNumberProperty(value);\n\n if (coercedValue < CARD_MINIMUM_WIDTH) {\n return;\n }\n\n this._cardMinimumWidth = coercedValue;\n }\n get cardMinimumWidth(): number {\n return this._cardMinimumWidth;\n }\n\n /** Config with the width ratios that should take every column. Flex-grow principe. Missed values set to 0. s*/\n @Input()\n columnsWidthConfig: ColumnsWidthConfig;\n\n /** Limit the number of columns. Default is 10. */\n @Input()\n maxColumns = MAX_COLUMNS;\n\n /** Event to emit, when layout changes */\n @Output()\n layoutChange: EventEmitter<Layout> = new EventEmitter<Layout>();\n\n /** Event to emit on Card dragged and dropped */\n @Output()\n cardDraggedDropped: EventEmitter<CardDropped> = new EventEmitter<CardDropped>();\n\n /** @hidden */\n @ContentChildren(CardDefinitionDirective)\n _cards: QueryList<CardDefinitionDirective>;\n\n /** @hidden */\n @ViewChildren(FixedCardLayoutItemComponent)\n _cardContainers: QueryList<FixedCardLayoutItemComponent>;\n\n /** @hidden */\n @ViewChildren(CdkDrag)\n _dragList: QueryList<CdkDrag>;\n\n /** @hidden */\n @ViewChild('layout')\n _layout: ElementRef<HTMLElement>;\n\n /** @hidden */\n _cardsArray: CardDefinitionDirective[];\n\n /** @hidden Number of Columns in layout */\n _numberOfColumns: number;\n\n /** @hidden */\n _cardColumns: CardColumn[];\n\n /** @hidden*/\n _containerHeight = 0;\n\n /** @hidden handles rtl service */\n _dir$ = computed<Direction>(() => (this._rtlService?.rtlSignal() ? 'rtl' : 'ltr'));\n\n /** @hidden first number is the CardDefinition rank, i.e. id */\n _groupIndexes = new Map<number, number>();\n\n /** @hidden first number is the CardDefinition rank, i.e. id */\n _itemIndexes = new Map<number, number>();\n\n /** @hidden first number is the CardDefinition rank, i.e. id */\n _singleItemColumns = new Set<number>();\n\n /** @hidden */\n _columnsWidth = new Map<number, number>();\n\n /** @hidden Return available width for fixed card layout */\n get _availableWidth(): number {\n return this._layout.nativeElement.getBoundingClientRect().width;\n }\n\n /** @hidden */\n _placeholderMargin: boolean;\n\n /** @hidden */\n _listenResize = true;\n\n /** @hidden */\n _hiddenCard: Nullable<CardDefinitionDirective>;\n\n /** @hidden FocusKeyManager instance */\n private _keyboardEventsManager: FocusKeyManager<FixedCardLayoutItemComponent>;\n\n /** @hidden */\n private _cardMinimumWidth = CARD_MINIMUM_WIDTH;\n\n /** @hidden */\n private _cardsSizeChangeSubscription = new Subscription();\n\n /** @hidden */\n private readonly _destroyRef = inject(DestroyRef);\n\n /** @hidden */\n constructor(\n private readonly _changeDetector: ChangeDetectorRef,\n @Optional() private readonly _rtlService: RtlService\n ) {}\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n handleKeydown(event: KeyboardEvent): void {\n event.stopImmediatePropagation();\n\n if (this._keyboardEventsManager) {\n this._keyboardEventsManager.onKeydown(event);\n }\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._processCards();\n\n this._listenOnResize();\n this._listenOnCardsChange();\n this._accessibilitySetup();\n }\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n // Skip all changes unless we don't have initial layout created\n if (!this._cardsArray) {\n return;\n }\n\n if ('maxColumns' in changes || 'cardMinimumWidth' in changes) {\n this.updateLayout();\n } else if ('columnsWidthConfig' in changes) {\n this._setCardColumnsWidth();\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._cardsSizeChangeSubscription.unsubscribe();\n this._keyboardEventsManager?.destroy();\n }\n\n /** Distribute cards on window resize */\n updateLayout(): void {\n this._listenResize = false;\n\n if (this._cards.length) {\n const possibleNumberOfColumns = getNumberOfColumns(this._availableWidth, this.cardMinimumWidth);\n\n this._numberOfColumns = Math.min(\n possibleNumberOfColumns,\n this._cards.length,\n this.maxColumns || MAX_COLUMNS,\n MAX_COLUMNS\n );\n } else {\n this._numberOfColumns = 1;\n }\n\n this.layoutChange.emit({\n numberOfColumns: this._numberOfColumns,\n screenSize: this._availableWidth\n });\n\n this._setCardColumns();\n this._setCardColumnsWidth();\n this._setContainerHeight();\n\n this._listenResize = true;\n }\n\n /** @hidden */\n _onDragStarted(event: CdkDragStart): void {\n this._listenResize = false;\n this._hiddenCard = event.source.data;\n }\n\n /** @hidden */\n _onDropListEntered(event: CdkDragEnter): void {\n const containerItemCardDef = (event.container.getSortedItems()[0].data as CardDefinitionDirective).fdCardDef;\n const dragItemCardDef = (event.item.data as CardDefinitionDirective).fdCardDef;\n\n this._placeholderMargin = containerItemCardDef !== dragItemCardDef;\n\n const columnIndexToAddSpace = this._cardColumns.findIndex((column) =>\n column.find((card) => event.container.getSortedItems()[0].data === card)\n );\n const spaceToAdd =\n event.item.element.nativeElement.getBoundingClientRect().height +\n (event.container.getSortedItems().length ? REM_IN_PX : 0);\n\n // When we move the card into a certain column we should increase the height of that column by the card height\n this._setContainerHeight(columnIndexToAddSpace, spaceToAdd);\n }\n\n /** @hidden */\n _onDragDropped(event: CdkDragDrop<number, number>): void {\n this._hiddenCard = null;\n\n if (event.container.data === event.previousContainer.data) {\n return;\n }\n\n this._placeholderMargin = false;\n\n const movedCard = event.previousContainer.getSortedItems()[0].data;\n const replacedCard = event.container.getSortedItems()[0].data;\n\n const movedCardColumn = this._cardColumns.find((column) =>\n column.find((card) => card.fdCardDef === movedCard.fdCardDef)\n );\n const replacedCardColumn = this._cardColumns.find((column) =>\n column.find((card) => card.fdCardDef === replacedCard.fdCardDef)\n );\n\n // If we dragged the card from the same column as the column we're dropping into\n // There may be a situation where the order shouldn't change but since there are a different drop lists it will change\n // We should prevent this\n if (movedCardColumn === replacedCardColumn && movedCardColumn?.length === 2) {\n if (movedCard.fdCardDef < replacedCard.fdCardDef && event.previousContainer.data < event.container.data) {\n return;\n }\n\n if (movedCard.fdCardDef > replacedCard.fdCardDef && event.previousContainer.data > event.container.data) {\n return;\n }\n }\n\n this._processDragDrop(event.previousContainer.data, event.container.data, movedCard, replacedCard);\n }\n\n /** @hidden */\n _sortPredicateFn = (index: number): boolean => index === 0;\n\n /** @hidden For the keyboard drag&drop directive */\n _customMoveFn = (group: CardColumn, indexFrom: number, indexTo: number): void => {\n const movedCard = group[indexFrom];\n const replacedCard = group[indexTo];\n\n const indexFromArray = this._cardsArray.findIndex((card) => card.fdCardDef === movedCard.fdCardDef);\n const indexToArray = this._cardsArray.findIndex((card) => card.fdCardDef === replacedCard.fdCardDef);\n\n this._processDragDrop(indexFromArray, indexToArray, movedCard, replacedCard);\n };\n\n /** @hidden For the keyboard drag&drop directive */\n _customTransferFn = (prevGroup: CardColumn, nextGroup: CardColumn, indexFrom: number, indexTo: number): void => {\n const movedCard = prevGroup[indexFrom];\n const replacedCard = nextGroup[indexTo];\n\n const indexFromArray = this._cardsArray.findIndex((card) => card.fdCardDef === movedCard.fdCardDef);\n const indexToArray = this._cardsArray.findIndex((card) => card.fdCardDef === replacedCard.fdCardDef);\n\n this._processDragDrop(indexFromArray, indexToArray, movedCard, replacedCard);\n };\n\n /** @hidden Arranges cards on drop of dragged card */\n private _processDragDrop(\n prevIndex: number,\n newIndex: number,\n prevCard: CardDefinitionDirective,\n newCard: CardDefinitionDirective\n ): void {\n // moveItemInArray from CDK won't work as it changes order of other cards\n const replacedCard = this._cardsArray[newIndex];\n this._cardsArray[newIndex] = this._cardsArray[prevIndex];\n this._cardsArray[prevIndex] = replacedCard;\n\n adjustCardRank(prevCard, newCard);\n\n this.cardDraggedDropped.emit({\n previousIndex: prevIndex,\n currentIndex: newIndex,\n layoutColumns: this._numberOfColumns,\n items: this._cards.toArray()\n });\n\n this.updateLayout();\n }\n\n /** @hidden */\n private _accessibilitySetup(): void {\n this._keyboardEventsManager?.destroy();\n this._keyboardEventsManager = new FocusKeyManager(this._cardContainers).withWrap();\n }\n\n /** @hidden Listen window resize and distribute cards on column change */\n private _listenOnResize(): void {\n resizeObservable(this._layout.nativeElement)\n .pipe(\n debounceTime(20),\n filter(\n (entries) => this._listenResize && !!(entries[0].contentRect.height || entries[0].contentRect.width)\n ),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() => this.updateLayout());\n }\n\n /** @hidden Listen card change and distribute cards on column change */\n private _listenOnCardsChange(): void {\n this._cards.changes.subscribe(() => {\n this._processCards();\n this.updateLayout();\n });\n }\n\n /** @hidden */\n private _processCards(): void {\n this._cardsArray = this._cards\n .toArray()\n .sort((firstCard, secondCard) => firstCard.fdCardDef - secondCard.fdCardDef);\n }\n\n /** @hidden Distribute cards among columns to arrange them in \"Z\" flow */\n private _setCardColumns(): void {\n this._groupIndexes = new Map<number, number>();\n this._itemIndexes = new Map<number, number>();\n this._singleItemColumns = new Set<number>();\n\n const columns: CardColumn[] = new Array(this._numberOfColumns).fill(0).map(() => new Array(0));\n\n this._cardsArray.forEach((card, i) => {\n const currColumnIndex = i % this._numberOfColumns;\n const itemIndex = columns[currColumnIndex].length;\n\n columns[currColumnIndex].push(card);\n\n this._groupIndexes.set(card.fdCardDef, currColumnIndex);\n this._itemIndexes.set(card.fdCardDef, itemIndex);\n });\n\n this._cardColumns = columns;\n\n this._cardColumns.forEach((column) => {\n if (column.length === 1) {\n this._singleItemColumns.add(column[0].fdCardDef);\n }\n });\n\n this._listenOnCardsHeightChange();\n }\n\n /** @hidden */\n private _setCardColumnsWidth(): void {\n this._columnsWidth = new Map();\n\n const configPresent =\n this.columnsWidthConfig &&\n typeof this.columnsWidthConfig === 'object' &&\n Object.keys(this.columnsWidthConfig).length;\n\n if (!configPresent || this._numberOfColumns === 1) {\n return;\n }\n\n const fixedWidthModifiers = fixWidthModifiers(this.columnsWidthConfig, this._numberOfColumns);\n const totalWidthModifiers = fixedWidthModifiers.reduce((sum, width) => (sum += width), 0);\n const freeSpace = this._availableWidth - this.cardMinimumWidth * this._numberOfColumns;\n\n this._cardColumns.forEach((column, index) => {\n const columnWidth = Math.round(\n this.cardMinimumWidth + (freeSpace / totalWidthModifiers) * fixedWidthModifiers[index]\n );\n\n column.forEach((card) => this._columnsWidth.set(card.fdCardDef, columnWidth));\n });\n }\n\n /**\n * @hidden\n * Calculate container height accordingly to the the card columns height\n * Parameters used to increase the height of the column where drag'n'drop placeholder currently is\n */\n private _setContainerHeight(columnIndexToAddSpace = -1, spaceToAdd = 0): void {\n this._changeDetector.detectChanges();\n\n const cardColumns = this._cardColumns.map((column) =>\n column\n .map((card) => this._dragList.find((drag) => drag.data === card))\n .filter((cdkDrag) => !cdkDrag?._dragRef.isDragging() && !!cdkDrag?.element?.nativeElement)\n .map((cdkDrag) => cdkDrag?.element)\n );\n\n const columnsHeights = cardColumns\n .map((column) => column.map((cardElRef) => cardElRef?.nativeElement.getBoundingClientRect().height || 0))\n .map(\n (column, columnIndex) =>\n column.reduce((cardsHeight, height) => (cardsHeight += height + REM_IN_PX), 0) +\n (columnIndex === columnIndexToAddSpace ? spaceToAdd : 0)\n );\n\n const prevContainerHeight = this._containerHeight;\n\n // +4px because it's the top & bottom borders of card placeholder\n this._containerHeight = Math.ceil(Math.max(...columnsHeights) + 4);\n\n if (this._containerHeight !== prevContainerHeight) {\n this._changeDetector.detectChanges();\n }\n }\n\n /** @hidden */\n private _listenOnCardsHeightChange(): void {\n this._cardsSizeChangeSubscription.unsubscribe();\n this._cardsSizeChangeSubscription = new Subscription();\n\n this._changeDetector.detectChanges();\n\n this._cardColumns.forEach((column) =>\n column\n .map((card) => this._dragList.find((wrapper) => wrapper.data === card)?.element)\n .filter((v): v is ElementRef<HTMLElement> => !!v)\n .forEach((card) => {\n this._cardsSizeChangeSubscription.add(\n resizeObservable(card.nativeElement)\n .pipe(\n skip(1),\n debounceTime(20),\n filter(() => this._listenResize && !!this._layout.nativeElement.clientHeight)\n )\n .subscribe(() => this._setContainerHeight())\n );\n })\n );\n }\n}\n\n/** @hidden */\nfunction fixWidthModifiers(config: ColumnsWidthConfig, numberOfColumns: number): number[] {\n const modifiers = new Array(numberOfColumns).fill(0);\n\n return modifiers.map((_, index) => {\n const columnWidthModifier = config[index + 1];\n\n if (!columnWidthModifier || columnWidthModifier < 0) {\n return 0;\n }\n\n return columnWidthModifier;\n });\n}\n\n/** @hidden Returns number of columns that can fit in current available width for fd-card-layout */\nfunction getNumberOfColumns(containerWidth: number, cardWidth: number): number {\n containerWidth = containerWidth || 1;\n cardWidth = cardWidth || 1;\n\n const numberOfCardsWithNoGap = Math.max(Math.floor(containerWidth / cardWidth), 1); // Example: 960 / 320 = 3\n const requiredWidthWithGap = numberOfCardsWithNoGap * cardWidth + (numberOfCardsWithNoGap - 1) * CARD_GAP_WIDTH;\n const columnCount = requiredWidthWithGap > containerWidth ? numberOfCardsWithNoGap - 1 : numberOfCardsWithNoGap;\n\n return Math.max(columnCount, 1);\n}\n\n/** @hidden Method to update rank after cards are dragged */\nfunction adjustCardRank(draggedCard: CardDefinitionDirective, replacedCard: CardDefinitionDirective): void {\n const draggedCardRank = draggedCard.fdCardDef;\n draggedCard.fdCardDef = replacedCard.fdCardDef;\n replacedCard.fdCardDef = draggedCardRank;\n}\n","<div\n #layout\n cdkDropListGroup\n fdDndKeyboardGroup\n class=\"fd-fixed-card-layout__card-layout fd-fixed-card-layout__card-layout--columns-{{ this._numberOfColumns }}\"\n [style.height]=\"_containerHeight + 'px'\"\n [groups]=\"_cardColumns\"\n orientation=\"horizontal\"\n [customMoveFn]=\"_customMoveFn\"\n [customTransferFn]=\"_customTransferFn\"\n [disableKeyboardDragDrop]=\"disableDragDrop\"\n [cdkDropListGroupDisabled]=\"disableDragDrop\"\n [attr.dir]=\"_dir$()\"\n>\n @for (card of _cardsArray; track card; let cardIndex = $index) {\n <div\n cdkDropList\n class=\"fd-fixed-card-layout__card\"\n [class.fd-fixed-card-layout__card--single]=\"_singleItemColumns.has(card.fdCardDef)\"\n [style.min-width.px]=\"_columnsWidth.get(card.fdCardDef)\"\n [style.max-width.px]=\"_columnsWidth.get(card.fdCardDef)\"\n [style.display]=\"_hiddenCard === card ? 'none' : 'block'\"\n [cdkDropListData]=\"cardIndex\"\n [cdkDropListSortPredicate]=\"_sortPredicateFn\"\n (cdkDropListEntered)=\"_onDropListEntered($event)\"\n >\n <div\n cdkDrag\n fdDndKeyboardItem\n tabindex=\"0\"\n cdkDragPreviewClass=\"fd-fixed-card-layout__card-preview\"\n [cdkDragData]=\"card\"\n [cdkDragStartDelay]=\"dragStartDelay\"\n [itemIndex]=\"_itemIndexes.get(card.fdCardDef)!\"\n [groupIndex]=\"_groupIndexes.get(card.fdCardDef)!\"\n (cdkDragStarted)=\"_onDragStarted($event)\"\n (cdkDragDropped)=\"_onDragDropped($event)\"\n >\n <fd-fixed-card-layout-item>\n <ng-template [ngTemplateOutlet]=\"card?.template || null\"> </ng-template>\n </fd-fixed-card-layout-item>\n <div\n *cdkDragPlaceholder\n class=\"fd-fixed-card-layout__card-placeholder\"\n [style.margin-bottom.rem]=\"+_placeholderMargin\"\n >\n <ng-template [ngTemplateOutlet]=\"card?.template || null\"></ng-template>\n </div>\n </div>\n </div>\n }\n @for (column of _cardColumns; track column; let last = $last; let index = $index) {\n @if (!last) {\n <div class=\"fd-fixed-card-layout__clearfix\" [style.order]=\"index + 1\"></div>\n }\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { FixedCardLayoutItemComponent } from './fixed-card-layout-item/fixed-card-layout-item.component';\nimport { CardDefinitionDirective, FixedCardLayoutComponent } from './fixed-card-layout.component';\n\nconst components = [FixedCardLayoutComponent, CardDefinitionDirective, FixedCardLayoutItemComponent];\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class FixedCardLayoutModule {}\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-fixed-card-layout.mjs","sources":["../tmp-esm2022/fixed-card-layout/fixed-card-layout-item/fixed-card-layout-item.component.js","../tmp-esm2022/fixed-card-layout/fixed-card-layout.component.js","../tmp-esm2022/fixed-card-layout/fixed-card-layout.module.js","../tmp-esm2022/fixed-card-layout/fundamental-ngx-core-fixed-card-layout.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class FixedCardLayoutItemComponent {\n /** @hidden */\n constructor(_elementRef) {\n this._elementRef = _elementRef;\n }\n /** Set focus on the element. */\n focus() {\n const header = this._elementRef.nativeElement.querySelector('.fd-card__header');\n if (header) {\n header.focus();\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: FixedCardLayoutItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: FixedCardLayoutItemComponent, isStandalone: true, selector: \"fd-fixed-card-layout-item\", host: { properties: { \"style.display\": \"\\\"block\\\"\" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: FixedCardLayoutItemComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fd-fixed-card-layout-item',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[style.display]': '\"block\"'\n },\n standalone: true\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4ZWQtY2FyZC1sYXlvdXQtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZml4ZWQtY2FyZC1sYXlvdXQvZml4ZWQtY2FyZC1sYXlvdXQtaXRlbS9maXhlZC1jYXJkLWxheW91dC1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFXL0UsTUFBTSxPQUFPLDRCQUE0QjtJQUNyQyxjQUFjO0lBQ2QsWUFBb0IsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7SUFBRyxDQUFDO0lBRS9DLGdDQUFnQztJQUNoQyxLQUFLO1FBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDaEYsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNULE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQixDQUFDO0lBQ0wsQ0FBQzs4R0FWUSw0QkFBNEI7a0dBQTVCLDRCQUE0Qiw2SUFQM0IsMkJBQTJCOzsyRkFPNUIsNEJBQTRCO2tCQVR4QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxJQUFJLEVBQUU7d0JBQ0YsaUJBQWlCLEVBQUUsU0FBUztxQkFDL0I7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNhYmxlT3B0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkLWZpeGVkLWNhcmQtbGF5b3V0LWl0ZW0nLFxuICAgIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICAnW3N0eWxlLmRpc3BsYXldJzogJ1wiYmxvY2tcIidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRml4ZWRDYXJkTGF5b3V0SXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIEZvY3VzYWJsZU9wdGlvbiB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxuXG4gICAgLyoqIFNldCBmb2N1cyBvbiB0aGUgZWxlbWVudC4gKi9cbiAgICBmb2N1cygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaGVhZGVyID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5mZC1jYXJkX19oZWFkZXInKTtcbiAgICAgICAgaWYgKGhlYWRlcikge1xuICAgICAgICAgICAgaGVhZGVyLmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=","import { FocusKeyManager } from '@angular/cdk/a11y';\nimport { CdkDrag, CdkDragPlaceholder, CdkDropList, CdkDropListGroup, DragDropModule } from '@angular/cdk/drag-drop';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, DestroyRef, Directive, ElementRef, EventEmitter, HostListener, Input, Optional, Output, QueryList, TemplateRef, ViewChild, ViewChildren, ViewEncapsulation, computed, inject } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { debounceTime, filter, skip } from 'rxjs/operators';\nimport { coerceNumberProperty } from '@angular/cdk/coercion';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { DndKeyboardGroupDirective, DndKeyboardItemDirective, RtlService, getDocumentFontSize, resizeObservable } from '@fundamental-ngx/cdk/utils';\nimport { FixedCardLayoutItemComponent } from './fixed-card-layout-item/fixed-card-layout-item.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@fundamental-ngx/cdk/utils\";\nimport * as i2 from \"@angular/cdk/drag-drop\";\nconst REM_IN_PX = getDocumentFontSize();\nconst CARD_MINIMUM_WIDTH = REM_IN_PX * 20; // 20rem\nconst CARD_GAP_WIDTH = REM_IN_PX; // 1rem\nconst DRAG_START_DELAY = 200; // in ms\nconst MAX_COLUMNS = 10;\nlet cardRank = 1;\nexport class CardDefinitionDirective {\n /**\n * Behaves like rank of card.\n * Useful in creating layout again after drag and drop.\n */\n set fdCardDef(value) {\n if (!value) {\n return;\n }\n this._fdCardDef = coerceNumberProperty(value);\n }\n get fdCardDef() {\n return this._fdCardDef;\n }\n /** @hidden */\n constructor(template) {\n this.template = template;\n /** @hidden */\n this._fdCardDef = cardRank++;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: CardDefinitionDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: CardDefinitionDirective, isStandalone: true, selector: \"[fdCardDef]\", inputs: { fdCardDef: \"fdCardDef\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: CardDefinitionDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[fdCardDef]',\n standalone: true\n }]\n }], ctorParameters: () => [{ type: i0.TemplateRef }], propDecorators: { fdCardDef: [{\n type: Input\n }] } });\nexport class FixedCardLayoutComponent {\n /** Card's minimum width in pixels. */\n set cardMinimumWidth(value) {\n const coercedValue = coerceNumberProperty(value);\n if (coercedValue < CARD_MINIMUM_WIDTH) {\n return;\n }\n this._cardMinimumWidth = coercedValue;\n }\n get cardMinimumWidth() {\n return this._cardMinimumWidth;\n }\n /** @hidden Return available width for fixed card layout */\n get _availableWidth() {\n return this._layout.nativeElement.getBoundingClientRect().width;\n }\n /** @hidden */\n constructor(_changeDetector, _rtlService) {\n this._changeDetector = _changeDetector;\n this._rtlService = _rtlService;\n /** Drag start delay in milliseconds, default to 200ms for safe scrolling on mobile with touchscreen */\n this.dragStartDelay = DRAG_START_DELAY;\n /** Limit the number of columns. Default is 10. */\n this.maxColumns = MAX_COLUMNS;\n /** Event to emit, when layout changes */\n this.layoutChange = new EventEmitter();\n /** Event to emit on Card dragged and dropped */\n this.cardDraggedDropped = new EventEmitter();\n /** @hidden*/\n this._containerHeight = 0;\n /** @hidden handles rtl service */\n this._dir$ = computed(() => (this._rtlService?.rtlSignal() ? 'rtl' : 'ltr'), ...(ngDevMode ? [{ debugName: \"_dir$\" }] : []));\n /** @hidden first number is the CardDefinition rank, i.e. id */\n this._groupIndexes = new Map();\n /** @hidden first number is the CardDefinition rank, i.e. id */\n this._itemIndexes = new Map();\n /** @hidden first number is the CardDefinition rank, i.e. id */\n this._singleItemColumns = new Set();\n /** @hidden */\n this._columnsWidth = new Map();\n /** @hidden */\n this._listenResize = true;\n /** @hidden */\n this._cardMinimumWidth = CARD_MINIMUM_WIDTH;\n /** @hidden */\n this._cardsSizeChangeSubscription = new Subscription();\n /** @hidden */\n this._destroyRef = inject(DestroyRef);\n /** @hidden */\n this._sortPredicateFn = (index) => index === 0;\n /** @hidden For the keyboard drag&drop directive */\n this._customMoveFn = (group, indexFrom, indexTo) => {\n const movedCard = group[indexFrom];\n const replacedCard = group[indexTo];\n const indexFromArray = this._cardsArray.findIndex((card) => card.fdCardDef === movedCard.fdCardDef);\n const indexToArray = this._cardsArray.findIndex((card) => card.fdCardDef === replacedCard.fdCardDef);\n this._processDragDrop(indexFromArray, indexToArray, movedCard, replacedCard);\n };\n /** @hidden For the keyboard drag&drop directive */\n this._customTransferFn = (prevGroup, nextGroup, indexFrom, indexTo) => {\n const movedCard = prevGroup[indexFrom];\n const replacedCard = nextGroup[indexTo];\n const indexFromArray = this._cardsArray.findIndex((card) => card.fdCardDef === movedCard.fdCardDef);\n const indexToArray = this._cardsArray.findIndex((card) => card.fdCardDef === replacedCard.fdCardDef);\n this._processDragDrop(indexFromArray, indexToArray, movedCard, replacedCard);\n };\n }\n /** @hidden */\n handleKeydown(event) {\n event.stopImmediatePropagation();\n if (this._keyboardEventsManager) {\n this._keyboardEventsManager.onKeydown(event);\n }\n }\n /** @hidden */\n ngAfterViewInit() {\n this._processCards();\n this._listenOnResize();\n this._listenOnCardsChange();\n this._accessibilitySetup();\n }\n /** @hidden */\n ngOnChanges(changes) {\n // Skip all changes unless we don't have initial layout created\n if (!this._cardsArray) {\n return;\n }\n if ('maxColumns' in changes || 'cardMinimumWidth' in changes) {\n this.updateLayout();\n }\n else if ('columnsWidthConfig' in changes) {\n this._setCardColumnsWidth();\n }\n }\n /** @hidden */\n ngOnDestroy() {\n this._cardsSizeChangeSubscription.unsubscribe();\n this._keyboardEventsManager?.destroy();\n }\n /** Distribute cards on window resize */\n updateLayout() {\n this._listenResize = false;\n if (this._cards.length) {\n const possibleNumberOfColumns = getNumberOfColumns(this._availableWidth, this.cardMinimumWidth);\n this._numberOfColumns = Math.min(possibleNumberOfColumns, this._cards.length, this.maxColumns || MAX_COLUMNS, MAX_COLUMNS);\n }\n else {\n this._numberOfColumns = 1;\n }\n this.layoutChange.emit({\n numberOfColumns: this._numberOfColumns,\n screenSize: this._availableWidth\n });\n this._setCardColumns();\n this._setCardColumnsWidth();\n this._setContainerHeight();\n this._listenResize = true;\n }\n /** @hidden */\n _onDragStarted(event) {\n this._listenResize = false;\n this._hiddenCard = event.source.data;\n }\n /** @hidden */\n _onDropListEntered(event) {\n const containerItemCardDef = event.container.getSortedItems()[0].data.fdCardDef;\n const dragItemCardDef = event.item.data.fdCardDef;\n this._placeholderMargin = containerItemCardDef !== dragItemCardDef;\n const columnIndexToAddSpace = this._cardColumns.findIndex((column) => column.find((card) => event.container.getSortedItems()[0].data === card));\n const spaceToAdd = event.item.element.nativeElement.getBoundingClientRect().height +\n (event.container.getSortedItems().length ? REM_IN_PX : 0);\n // When we move the card into a certain column we should increase the height of that column by the card height\n this._setContainerHeight(columnIndexToAddSpace, spaceToAdd);\n }\n /** @hidden */\n _onDragDropped(event) {\n this._hiddenCard = null;\n if (event.container.data === event.previousContainer.data) {\n return;\n }\n this._placeholderMargin = false;\n const movedCard = event.previousContainer.getSortedItems()[0].data;\n const replacedCard = event.container.getSortedItems()[0].data;\n const movedCardColumn = this._cardColumns.find((column) => column.find((card) => card.fdCardDef === movedCard.fdCardDef));\n const replacedCardColumn = this._cardColumns.find((column) => column.find((card) => card.fdCardDef === replacedCard.fdCardDef));\n // If we dragged the card from the same column as the column we're dropping into\n // There may be a situation where the order shouldn't change but since there are a different drop lists it will change\n // We should prevent this\n if (movedCardColumn === replacedCardColumn && movedCardColumn?.length === 2) {\n if (movedCard.fdCardDef < replacedCard.fdCardDef && event.previousContainer.data < event.container.data) {\n return;\n }\n if (movedCard.fdCardDef > replacedCard.fdCardDef && event.previousContainer.data > event.container.data) {\n return;\n }\n }\n this._processDragDrop(event.previousContainer.data, event.container.data, movedCard, replacedCard);\n }\n /** @hidden Arranges cards on drop of dragged card */\n _processDragDrop(prevIndex, newIndex, prevCard, newCard) {\n // moveItemInArray from CDK won't work as it changes order of other cards\n const replacedCard = this._cardsArray[newIndex];\n this._cardsArray[newIndex] = this._cardsArray[prevIndex];\n this._cardsArray[prevIndex] = replacedCard;\n adjustCardRank(prevCard, newCard);\n this.cardDraggedDropped.emit({\n previousIndex: prevIndex,\n currentIndex: newIndex,\n layoutColumns: this._numberOfColumns,\n items: this._cards.toArray()\n });\n this.updateLayout();\n }\n /** @hidden */\n _accessibilitySetup() {\n this._keyboardEventsManager?.destroy();\n this._keyboardEventsManager = new FocusKeyManager(this._cardContainers).withWrap();\n }\n /** @hidden Listen window resize and distribute cards on column change */\n _listenOnResize() {\n resizeObservable(this._layout.nativeElement)\n .pipe(debounceTime(20), filter((entries) => this._listenResize && !!(entries[0].contentRect.height || entries[0].contentRect.width)), takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this.updateLayout());\n }\n /** @hidden Listen card change and distribute cards on column change */\n _listenOnCardsChange() {\n this._cards.changes.subscribe(() => {\n this._processCards();\n this.updateLayout();\n });\n }\n /** @hidden */\n _processCards() {\n this._cardsArray = this._cards\n .toArray()\n .sort((firstCard, secondCard) => firstCard.fdCardDef - secondCard.fdCardDef);\n }\n /** @hidden Distribute cards among columns to arrange them in \"Z\" flow */\n _setCardColumns() {\n this._groupIndexes = new Map();\n this._itemIndexes = new Map();\n this._singleItemColumns = new Set();\n const columns = new Array(this._numberOfColumns).fill(0).map(() => new Array(0));\n this._cardsArray.forEach((card, i) => {\n const currColumnIndex = i % this._numberOfColumns;\n const itemIndex = columns[currColumnIndex].length;\n columns[currColumnIndex].push(card);\n this._groupIndexes.set(card.fdCardDef, currColumnIndex);\n this._itemIndexes.set(card.fdCardDef, itemIndex);\n });\n this._cardColumns = columns;\n this._cardColumns.forEach((column) => {\n if (column.length === 1) {\n this._singleItemColumns.add(column[0].fdCardDef);\n }\n });\n this._listenOnCardsHeightChange();\n }\n /** @hidden */\n _setCardColumnsWidth() {\n this._columnsWidth = new Map();\n const configPresent = this.columnsWidthConfig &&\n typeof this.columnsWidthConfig === 'object' &&\n Object.keys(this.columnsWidthConfig).length;\n if (!configPresent || this._numberOfColumns === 1) {\n return;\n }\n const fixedWidthModifiers = fixWidthModifiers(this.columnsWidthConfig, this._numberOfColumns);\n const totalWidthModifiers = fixedWidthModifiers.reduce((sum, width) => (sum += width), 0);\n const freeSpace = this._availableWidth - this.cardMinimumWidth * this._numberOfColumns;\n this._cardColumns.forEach((column, index) => {\n const columnWidth = Math.round(this.cardMinimumWidth + (freeSpace / totalWidthModifiers) * fixedWidthModifiers[index]);\n column.forEach((card) => this._columnsWidth.set(card.fdCardDef, columnWidth));\n });\n }\n /**\n * @hidden\n * Calculate container height accordingly to the the card columns height\n * Parameters used to increase the height of the column where drag'n'drop placeholder currently is\n */\n _setContainerHeight(columnIndexToAddSpace = -1, spaceToAdd = 0) {\n this._changeDetector.detectChanges();\n const cardColumns = this._cardColumns.map((column) => column\n .map((card) => this._dragList.find((drag) => drag.data === card))\n .filter((cdkDrag) => !cdkDrag?._dragRef.isDragging() && !!cdkDrag?.element?.nativeElement)\n .map((cdkDrag) => cdkDrag?.element));\n const columnsHeights = cardColumns\n .map((column) => column.map((cardElRef) => cardElRef?.nativeElement.getBoundingClientRect().height || 0))\n .map((column, columnIndex) => column.reduce((cardsHeight, height) => (cardsHeight += height + REM_IN_PX), 0) +\n (columnIndex === columnIndexToAddSpace ? spaceToAdd : 0));\n const prevContainerHeight = this._containerHeight;\n // +4px because it's the top & bottom borders of card placeholder\n this._containerHeight = Math.ceil(Math.max(...columnsHeights) + 4);\n if (this._containerHeight !== prevContainerHeight) {\n this._changeDetector.detectChanges();\n }\n }\n /** @hidden */\n _listenOnCardsHeightChange() {\n this._cardsSizeChangeSubscription.unsubscribe();\n this._cardsSizeChangeSubscription = new Subscription();\n this._changeDetector.detectChanges();\n this._cardColumns.forEach((column) => column\n .map((card) => this._dragList.find((wrapper) => wrapper.data === card)?.element)\n .filter((v) => !!v)\n .forEach((card) => {\n this._cardsSizeChangeSubscription.add(resizeObservable(card.nativeElement)\n .pipe(skip(1), debounceTime(20), filter(() => this._listenResize && !!this._layout.nativeElement.clientHeight))\n .subscribe(() => this._setContainerHeight()));\n }));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: FixedCardLayoutComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.4\", type: FixedCardLayoutComponent, isStandalone: true, selector: \"fd-fixed-card-layout\", inputs: { disableDragDrop: \"disableDragDrop\", dragStartDelay: \"dragStartDelay\", cardMinimumWidth: \"cardMinimumWidth\", columnsWidthConfig: \"columnsWidthConfig\", maxColumns: \"maxColumns\" }, outputs: { layoutChange: \"layoutChange\", cardDraggedDropped: \"cardDraggedDropped\" }, host: { listeners: { \"keydown\": \"handleKeydown($event)\" }, classAttribute: \"fd-fixed-card-layout\" }, queries: [{ propertyName: \"_cards\", predicate: CardDefinitionDirective }], viewQueries: [{ propertyName: \"_layout\", first: true, predicate: [\"layout\"], descendants: true }, { propertyName: \"_cardContainers\", predicate: FixedCardLayoutItemComponent, descendants: true }, { propertyName: \"_dragList\", predicate: CdkDrag, descendants: true }], usesOnChanges: true, ngImport: i0, template: \"<div\\n #layout\\n cdkDropListGroup\\n fdDndKeyboardGroup\\n class=\\\"fd-fixed-card-layout__card-layout fd-fixed-card-layout__card-layout--columns-{{ this._numberOfColumns }}\\\"\\n [style.height]=\\\"_containerHeight + 'px'\\\"\\n [groups]=\\\"_cardColumns\\\"\\n orientation=\\\"horizontal\\\"\\n [customMoveFn]=\\\"_customMoveFn\\\"\\n [customTransferFn]=\\\"_customTransferFn\\\"\\n [disableKeyboardDragDrop]=\\\"disableDragDrop\\\"\\n [cdkDropListGroupDisabled]=\\\"disableDragDrop\\\"\\n [attr.dir]=\\\"_dir$()\\\"\\n>\\n @for (card of _cardsArray; track card; let cardIndex = $index) {\\n <div\\n cdkDropList\\n class=\\\"fd-fixed-card-layout__card\\\"\\n [class.fd-fixed-card-layout__card--single]=\\\"_singleItemColumns.has(card.fdCardDef)\\\"\\n [style.min-width.px]=\\\"_columnsWidth.get(card.fdCardDef)\\\"\\n [style.max-width.px]=\\\"_columnsWidth.get(card.fdCardDef)\\\"\\n [style.display]=\\\"_hiddenCard === card ? 'none' : 'block'\\\"\\n [cdkDropListData]=\\\"cardIndex\\\"\\n [cdkDropListSortPredicate]=\\\"_sortPredicateFn\\\"\\n (cdkDropListEntered)=\\\"_onDropListEntered($event)\\\"\\n >\\n <div\\n cdkDrag\\n fdDndKeyboardItem\\n tabindex=\\\"0\\\"\\n cdkDragPreviewClass=\\\"fd-fixed-card-layout__card-preview\\\"\\n [cdkDragData]=\\\"card\\\"\\n [cdkDragStartDelay]=\\\"dragStartDelay\\\"\\n [itemIndex]=\\\"_itemIndexes.get(card.fdCardDef)!\\\"\\n [groupIndex]=\\\"_groupIndexes.get(card.fdCardDef)!\\\"\\n (cdkDragStarted)=\\\"_onDragStarted($event)\\\"\\n (cdkDragDropped)=\\\"_onDragDropped($event)\\\"\\n >\\n <fd-fixed-card-layout-item>\\n <ng-template [ngTemplateOutlet]=\\\"card?.template || null\\\"> </ng-template>\\n </fd-fixed-card-layout-item>\\n <div\\n *cdkDragPlaceholder\\n class=\\\"fd-fixed-card-layout__card-placeholder\\\"\\n [style.margin-bottom.rem]=\\\"+_placeholderMargin\\\"\\n >\\n <ng-template [ngTemplateOutlet]=\\\"card?.template || null\\\"></ng-template>\\n </div>\\n </div>\\n </div>\\n }\\n @for (column of _cardColumns; track column; let last = $last; let index = $index) {\\n @if (!last) {\\n <div class=\\\"fd-fixed-card-layout__clearfix\\\" [style.order]=\\\"index + 1\\\"></div>\\n }\\n }\\n</div>\\n\", styles: [\".fd-fixed-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-fixed-card-layout:after,.fd-fixed-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-margin-start:-1rem;display:-webkit-box;display:-ms-flexbox;display:flex;margin-inline-start:-1rem;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;margin-top:-1rem}.fd-fixed-card-layout__card-layout:after,.fd-fixed-card-layout__card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card{width:50%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card:nth-of-type(2n){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card:nth-of-type(odd){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card{width:33.3333333333%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card{width:25%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card{width:20%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card{width:16.6666666667%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card{width:14.2857142857%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card{width:12.5%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card{width:11.1111111111%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+8){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card{width:10%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n){-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+8){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+9){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.fd-fixed-card-layout__card,.fd-fixed-card-layout__card-placeholder{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;min-height:.0625rem;min-width:20rem;padding-block:0;padding-inline:0}.fd-fixed-card-layout__card-placeholder:after,.fd-fixed-card-layout__card-placeholder:before,.fd-fixed-card-layout__card:after,.fd-fixed-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-padding-before:1rem;padding-block-start:1rem;-webkit-padding-start:1rem;padding-inline-start:1rem}.fd-fixed-card-layout__card--single{-ms-flex-preferred-size:100%;flex-basis:100%}.fd-fixed-card-layout__card:empty{-webkit-padding-before:0;padding-block-start:0}.fd-fixed-card-layout__card-placeholder{border:.125rem dashed var(--sapContent_DragAndDropActiveColor);cursor:-webkit-grabbing;cursor:grabbing;opacity:.3}.fd-fixed-card-layout__card-preview{border:0;border-radius:var(--sapElement_BorderCornerRadius);-webkit-box-shadow:var(--sapContent_Shadow2);box-shadow:var(--sapContent_Shadow2);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-fixed-card-layout__card-preview:after,.fd-fixed-card-layout__card-preview:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__clearfix{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;width:0;-ms-flex-preferred-size:100%;flex-basis:100%}.fd-fixed-card-layout__clearfix:after,.fd-fixed-card-layout__clearfix:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card{width:100%}.fd-fixed-card-layout__card-layout{align-items:flex-start}.fd-fixed-card-layout__card-placeholder{width:100%;min-width:100%;max-width:100%}\\n/*! Bundled license information:\\n\\nfundamental-styles/dist/fixed-card-layout.css:\\n (*!\\n * Fundamental Library Styles v0.40.1\\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\\n *)\\n*/\\n\"], dependencies: [{ kind: \"directive\", type: CdkDropListGroup, selector: \"[cdkDropListGroup]\", inputs: [\"cdkDropListGroupDisabled\"], exportAs: [\"cdkDropListGroup\"] }, { kind: \"ngmodule\", type: DragDropModule }, { kind: \"directive\", type: i2.CdkDropList, selector: \"[cdkDropList], cdk-drop-list\", inputs: [\"cdkDropListConnectedTo\", \"cdkDropListData\", \"cdkDropListOrientation\", \"id\", \"cdkDropListLockAxis\", \"cdkDropListDisabled\", \"cdkDropListSortingDisabled\", \"cdkDropListEnterPredicate\", \"cdkDropListSortPredicate\", \"cdkDropListAutoScrollDisabled\", \"cdkDropListAutoScrollStep\", \"cdkDropListElementContainer\", \"cdkDropListHasAnchor\"], outputs: [\"cdkDropListDropped\", \"cdkDropListEntered\", \"cdkDropListExited\", \"cdkDropListSorted\"], exportAs: [\"cdkDropList\"] }, { kind: \"directive\", type: i2.CdkDrag, selector: \"[cdkDrag]\", inputs: [\"cdkDragData\", \"cdkDragLockAxis\", \"cdkDragRootElement\", \"cdkDragBoundary\", \"cdkDragStartDelay\", \"cdkDragFreeDragPosition\", \"cdkDragDisabled\", \"cdkDragConstrainPosition\", \"cdkDragPreviewClass\", \"cdkDragPreviewContainer\", \"cdkDragScale\"], outputs: [\"cdkDragStarted\", \"cdkDragReleased\", \"cdkDragEnded\", \"cdkDragEntered\", \"cdkDragExited\", \"cdkDragDropped\", \"cdkDragMoved\"], exportAs: [\"cdkDrag\"] }, { kind: \"directive\", type: i2.CdkDragPlaceholder, selector: \"ng-template[cdkDragPlaceholder]\", inputs: [\"data\"] }, { kind: \"directive\", type: DndKeyboardGroupDirective, selector: \"[fdkDndKeyboardGroup], [fdDndKeyboardGroup]\", inputs: [\"groups\", \"disableKeyboardDragDrop\", \"orientation\", \"customMoveFn\", \"customTransferFn\"] }, { kind: \"directive\", type: DndKeyboardItemDirective, selector: \"[fdkDndKeyboardItem], [fdDndKeyboardItem]\", inputs: [\"itemIndex\", \"groupIndex\"] }, { kind: \"component\", type: FixedCardLayoutItemComponent, selector: \"fd-fixed-card-layout-item\" }, { kind: \"directive\", type: NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: FixedCardLayoutComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-fixed-card-layout', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {\n class: 'fd-fixed-card-layout'\n }, standalone: true, imports: [\n CdkDropListGroup,\n DragDropModule,\n DndKeyboardGroupDirective,\n DndKeyboardItemDirective,\n CdkDropList,\n CdkDrag,\n FixedCardLayoutItemComponent,\n NgTemplateOutlet,\n CdkDragPlaceholder\n ], template: \"<div\\n #layout\\n cdkDropListGroup\\n fdDndKeyboardGroup\\n class=\\\"fd-fixed-card-layout__card-layout fd-fixed-card-layout__card-layout--columns-{{ this._numberOfColumns }}\\\"\\n [style.height]=\\\"_containerHeight + 'px'\\\"\\n [groups]=\\\"_cardColumns\\\"\\n orientation=\\\"horizontal\\\"\\n [customMoveFn]=\\\"_customMoveFn\\\"\\n [customTransferFn]=\\\"_customTransferFn\\\"\\n [disableKeyboardDragDrop]=\\\"disableDragDrop\\\"\\n [cdkDropListGroupDisabled]=\\\"disableDragDrop\\\"\\n [attr.dir]=\\\"_dir$()\\\"\\n>\\n @for (card of _cardsArray; track card; let cardIndex = $index) {\\n <div\\n cdkDropList\\n class=\\\"fd-fixed-card-layout__card\\\"\\n [class.fd-fixed-card-layout__card--single]=\\\"_singleItemColumns.has(card.fdCardDef)\\\"\\n [style.min-width.px]=\\\"_columnsWidth.get(card.fdCardDef)\\\"\\n [style.max-width.px]=\\\"_columnsWidth.get(card.fdCardDef)\\\"\\n [style.display]=\\\"_hiddenCard === card ? 'none' : 'block'\\\"\\n [cdkDropListData]=\\\"cardIndex\\\"\\n [cdkDropListSortPredicate]=\\\"_sortPredicateFn\\\"\\n (cdkDropListEntered)=\\\"_onDropListEntered($event)\\\"\\n >\\n <div\\n cdkDrag\\n fdDndKeyboardItem\\n tabindex=\\\"0\\\"\\n cdkDragPreviewClass=\\\"fd-fixed-card-layout__card-preview\\\"\\n [cdkDragData]=\\\"card\\\"\\n [cdkDragStartDelay]=\\\"dragStartDelay\\\"\\n [itemIndex]=\\\"_itemIndexes.get(card.fdCardDef)!\\\"\\n [groupIndex]=\\\"_groupIndexes.get(card.fdCardDef)!\\\"\\n (cdkDragStarted)=\\\"_onDragStarted($event)\\\"\\n (cdkDragDropped)=\\\"_onDragDropped($event)\\\"\\n >\\n <fd-fixed-card-layout-item>\\n <ng-template [ngTemplateOutlet]=\\\"card?.template || null\\\"> </ng-template>\\n </fd-fixed-card-layout-item>\\n <div\\n *cdkDragPlaceholder\\n class=\\\"fd-fixed-card-layout__card-placeholder\\\"\\n [style.margin-bottom.rem]=\\\"+_placeholderMargin\\\"\\n >\\n <ng-template [ngTemplateOutlet]=\\\"card?.template || null\\\"></ng-template>\\n </div>\\n </div>\\n </div>\\n }\\n @for (column of _cardColumns; track column; let last = $last; let index = $index) {\\n @if (!last) {\\n <div class=\\\"fd-fixed-card-layout__clearfix\\\" [style.order]=\\\"index + 1\\\"></div>\\n }\\n }\\n</div>\\n\", styles: [\".fd-fixed-card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-fixed-card-layout:after,.fd-fixed-card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card-layout{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-margin-start:-1rem;display:-webkit-box;display:-ms-flexbox;display:flex;margin-inline-start:-1rem;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;margin-top:-1rem}.fd-fixed-card-layout__card-layout:after,.fd-fixed-card-layout__card-layout:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card{width:50%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card:nth-of-type(2n){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-2 .fd-fixed-card-layout__card:nth-of-type(odd){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card{width:33.3333333333%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-3 .fd-fixed-card-layout__card:nth-of-type(3n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card{width:25%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-4 .fd-fixed-card-layout__card:nth-of-type(4n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card{width:20%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-5 .fd-fixed-card-layout__card:nth-of-type(5n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card{width:16.6666666667%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-6 .fd-fixed-card-layout__card:nth-of-type(6n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card{width:14.2857142857%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-7 .fd-fixed-card-layout__card:nth-of-type(7n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card{width:12.5%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-8 .fd-fixed-card-layout__card:nth-of-type(8n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card{width:11.1111111111%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-9 .fd-fixed-card-layout__card:nth-of-type(9n+8){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card{width:10%}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n){-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+1){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+2){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+3){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+4){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+5){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+6){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+7){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+8){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.fd-fixed-card-layout__card-layout.fd-fixed-card-layout__card-layout--columns-10 .fd-fixed-card-layout__card:nth-of-type(10n+9){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.fd-fixed-card-layout__card,.fd-fixed-card-layout__card-placeholder{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;min-height:.0625rem;min-width:20rem;padding-block:0;padding-inline:0}.fd-fixed-card-layout__card-placeholder:after,.fd-fixed-card-layout__card-placeholder:before,.fd-fixed-card-layout__card:after,.fd-fixed-card-layout__card:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;-webkit-padding-before:1rem;padding-block-start:1rem;-webkit-padding-start:1rem;padding-inline-start:1rem}.fd-fixed-card-layout__card--single{-ms-flex-preferred-size:100%;flex-basis:100%}.fd-fixed-card-layout__card:empty{-webkit-padding-before:0;padding-block-start:0}.fd-fixed-card-layout__card-placeholder{border:.125rem dashed var(--sapContent_DragAndDropActiveColor);cursor:-webkit-grabbing;cursor:grabbing;opacity:.3}.fd-fixed-card-layout__card-preview{border:0;border-radius:var(--sapElement_BorderCornerRadius);-webkit-box-shadow:var(--sapContent_Shadow2);box-shadow:var(--sapContent_Shadow2);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-fixed-card-layout__card-preview:after,.fd-fixed-card-layout__card-preview:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__clearfix{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;width:0;-ms-flex-preferred-size:100%;flex-basis:100%}.fd-fixed-card-layout__clearfix:after,.fd-fixed-card-layout__clearfix:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-fixed-card-layout__card{width:100%}.fd-fixed-card-layout__card-layout{align-items:flex-start}.fd-fixed-card-layout__card-placeholder{width:100%;min-width:100%;max-width:100%}\\n/*! Bundled license information:\\n\\nfundamental-styles/dist/fixed-card-layout.css:\\n (*!\\n * Fundamental Library Styles v0.40.1\\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\\n *)\\n*/\\n\"] }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.RtlService, decorators: [{\n type: Optional\n }] }], propDecorators: { disableDragDrop: [{\n type: Input\n }], dragStartDelay: [{\n type: Input\n }], cardMinimumWidth: [{\n type: Input\n }], columnsWidthConfig: [{\n type: Input\n }], maxColumns: [{\n type: Input\n }], layoutChange: [{\n type: Output\n }], cardDraggedDropped: [{\n type: Output\n }], _cards: [{\n type: ContentChildren,\n args: [CardDefinitionDirective]\n }], _cardContainers: [{\n type: ViewChildren,\n args: [FixedCardLayoutItemComponent]\n }], _dragList: [{\n type: ViewChildren,\n args: [CdkDrag]\n }], _layout: [{\n type: ViewChild,\n args: ['layout']\n }], handleKeydown: [{\n type: HostListener,\n args: ['keydown', ['$event']]\n }] } });\n/** @hidden */\nfunction fixWidthModifiers(config, numberOfColumns) {\n const modifiers = new Array(numberOfColumns).fill(0);\n return modifiers.map((_, index) => {\n const columnWidthModifier = config[index + 1];\n if (!columnWidthModifier || columnWidthModifier < 0) {\n return 0;\n }\n return columnWidthModifier;\n });\n}\n/** @hidden Returns number of columns that can fit in current available width for fd-card-layout */\nfunction getNumberOfColumns(containerWidth, cardWidth) {\n containerWidth = containerWidth || 1;\n cardWidth = cardWidth || 1;\n const numberOfCardsWithNoGap = Math.max(Math.floor(containerWidth / cardWidth), 1); // Example: 960 / 320 = 3\n const requiredWidthWithGap = numberOfCardsWithNoGap * cardWidth + (numberOfCardsWithNoGap - 1) * CARD_GAP_WIDTH;\n const columnCount = requiredWidthWithGap > containerWidth ? numberOfCardsWithNoGap - 1 : numberOfCardsWithNoGap;\n return Math.max(columnCount, 1);\n}\n/** @hidden Method to update rank after cards are dragged */\nfunction adjustCardRank(draggedCard, replacedCard) {\n const draggedCardRank = draggedCard.fdCardDef;\n draggedCard.fdCardDef = replacedCard.fdCardDef;\n replacedCard.fdCardDef = draggedCardRank;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4ZWQtY2FyZC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2ZpeGVkLWNhcmQtbGF5b3V0L2ZpeGVkLWNhcmQtbGF5b3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9maXhlZC1jYXJkLWxheW91dC9maXhlZC1jYXJkLWxheW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUNILE9BQU8sRUFHUCxrQkFBa0IsRUFFbEIsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixjQUFjLEVBQ2pCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFFVCxXQUFXLEVBQ1gsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFDakIsUUFBUSxFQUNSLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzVELE9BQU8sRUFBZSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFDSCx5QkFBeUIsRUFDekIsd0JBQXdCLEVBRXhC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QUcsb0JBQW9CLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDO0lBRWhILE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDcEMsQ0FBQztBQUVELDREQUE0RDtBQUM1RCxTQUFTLGNBQWMsQ0FBQyxXQUFvQyxFQUFFLFlBQXFDO0lBQy9GLE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUM7SUFDOUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDO0lBQy9DLFlBQVksQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDO0FBQzdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c0tleU1hbmFnZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1xuICAgIENka0RyYWcsXG4gICAgQ2RrRHJhZ0Ryb3AsXG4gICAgQ2RrRHJhZ0VudGVyLFxuICAgIENka0RyYWdQbGFjZWhvbGRlcixcbiAgICBDZGtEcmFnU3RhcnQsXG4gICAgQ2RrRHJvcExpc3QsXG4gICAgQ2RrRHJvcExpc3RHcm91cCxcbiAgICBEcmFnRHJvcE1vZHVsZVxufSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIGNvbXB1dGVkLFxuICAgIGluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIsIHNraXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7IE51bWJlcklucHV0LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgRG5kS2V5Ym9hcmRHcm91cERpcmVjdGl2ZSxcbiAgICBEbmRLZXlib2FyZEl0ZW1EaXJlY3RpdmUsXG4gICAgTnVsbGFibGUsXG4gICAgUnRsU2VydmljZSxcbiAgICBnZXREb2N1bWVudEZvbnRTaXplLFxuICAgIHJlc2l6ZU9ic2VydmFibGVcbn0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgRml4ZWRDYXJkTGF5b3V0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZml4ZWQtY2FyZC1sYXlvdXQtaXRlbS9maXhlZC1jYXJkLWxheW91dC1pdGVtLmNvbXBvbmVudCc7XG5cbmNvbnN0IFJFTV9JTl9QWCA9IGdldERvY3VtZW50Rm9udFNpemUoKTtcbmNvbnN0IENBUkRfTUlOSU1VTV9XSURUSCA9IFJFTV9JTl9QWCAqIDIwOyAvLyAyMHJlbVxuY29uc3QgQ0FSRF9HQVBfV0lEVEggPSBSRU1fSU5fUFg7IC8vIDFyZW1cbmNvbnN0IERSQUdfU1RBUlRfREVMQVkgPSAyMDA7IC8vIGluIG1zXG5jb25zdCBNQVhfQ09MVU1OUyA9IDEwO1xuXG5sZXQgY2FyZFJhbmsgPSAxO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tmZENhcmREZWZdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIENhcmREZWZpbml0aW9uRGlyZWN0aXZlIHtcbiAgICAvKipcbiAgICAgKiBCZWhhdmVzIGxpa2UgcmFuayBvZiBjYXJkLlxuICAgICAqIFVzZWZ1bCBpbiBjcmVhdGluZyBsYXlvdXQgYWdhaW4gYWZ0ZXIgZHJhZyBhbmQgZHJvcC5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBmZENhcmREZWYodmFsdWU6IE51bWJlcklucHV0KSB7XG4gICAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2ZkQ2FyZERlZiA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IGZkQ2FyZERlZigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmRDYXJkRGVmO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZmRDYXJkRGVmOiBudW1iZXIgPSBjYXJkUmFuaysrO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHt9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGF5b3V0IHtcbiAgICBudW1iZXJPZkNvbHVtbnM/OiBudW1iZXI7XG4gICAgc2NyZWVuU2l6ZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhcmREcm9wcGVkIHtcbiAgICBwcmV2aW91c0luZGV4OiBudW1iZXI7XG4gICAgY3VycmVudEluZGV4OiBudW1iZXI7XG4gICAgbGF5b3V0Q29sdW1uczogbnVtYmVyO1xuICAgIGl0ZW1zOiBDYXJkRGVmaW5pdGlvbkRpcmVjdGl2ZVtdO1xufVxuXG50eXBlIENvbHVtbnMgPSAxIHwgMiB8IDMgfCA0IHwgNSB8IDYgfCA3IHwgOCB8IDkgfCAxMDtcblxuZXhwb3J0IHR5cGUgQ29sdW1uc1dpZHRoQ29uZmlnID0geyBbQyBpbiBDb2x1bW5zXT86IG51bWJlciB9O1xuXG50eXBlIENhcmRDb2x1bW4gPSBDYXJkRGVmaW5pdGlvbkRpcmVjdGl2ZVtdO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkLWZpeGVkLWNhcmQtbGF5b3V0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZml4ZWQtY2FyZC1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9maXhlZC1jYXJkLWxheW91dC5jb21wb25lbnQuc2NzcycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtZml4ZWQtY2FyZC1sYXlvdXQnXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ2RrRHJvcExpc3RHcm91cCxcbiAgICAgICAgRHJhZ0Ryb3BNb2R1bGUsXG4gICAgICAgIERuZEtleWJvYXJkR3JvdXBEaXJlY3RpdmUsXG4gICAgICAgIERuZEtleWJvYXJkSXRlbURpcmVjdGl2ZSxcbiAgICAgICAgQ2RrRHJvcExpc3QsXG4gICAgICAgIENka0RyYWcsXG4gICAgICAgIEZpeGVkQ2FyZExheW91dEl0ZW1Db21wb25lbnQsXG4gICAgICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgICAgIENka0RyYWdQbGFjZWhvbGRlclxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRml4ZWRDYXJkTGF5b3V0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIC8qKiBEcmFnIGRyb3AgYmVoYXZpb3IgY2FuIGJlIGRpc2FibGVkICovXG4gICAgQElucHV0KClcbiAgICBkaXNhYmxlRHJhZ0Ryb3A6IGJvb2xlYW47XG5cbiAgICAvKiogRHJhZyBzdGFydCBkZWxheSBpbiBtaWxsaXNlY29uZHMsIGRlZmF1bHQgdG8gMjAwbXMgZm9yIHNhZmUgc2Nyb2xsaW5nIG9uIG1vYmlsZSB3aXRoIHRvdWNoc2NyZWVuICovXG4gICAgQElucHV0KClcbiAgICBkcmFnU3RhcnREZWxheSA9IERSQUdfU1RBUlRfREVMQVk7XG5cbiAgICAvKiogQ2FyZCdzIG1pbmltdW0gd2lkdGggaW4gcGl4ZWxzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGNhcmRNaW5pbXVtV2lkdGgodmFsdWU6IE51bWJlcklucHV0KSB7XG4gICAgICAgIGNvbnN0IGNvZXJjZWRWYWx1ZSA9IGNvZXJjZU51bWJlclByb3BlcnR5KHZhbHVlKTtcblxuICAgICAgICBpZiAoY29lcmNlZFZhbHVlIDwgQ0FSRF9NSU5JTVVNX1dJRFRIKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9jYXJkTWluaW11bVdpZHRoID0gY29lcmNlZFZhbHVlO1xuICAgIH1cbiAgICBnZXQgY2FyZE1pbmltdW1XaWR0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2FyZE1pbmltdW1XaWR0aDtcbiAgICB9XG5cbiAgICAvKiogQ29uZmlnIHdpdGggdGhlIHdpZHRoIHJhdGlvcyB0aGF0IHNob3VsZCB0YWtlIGV2ZXJ5IGNvbHVtbi4gRmxleC1ncm93IHByaW5jaXBlLiBNaXNzZWQgdmFsdWVzIHNldCB0byAwLiBzKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbHVtbnNXaWR0aENvbmZpZzogQ29sdW1uc1dpZHRoQ29uZmlnO1xuXG4gICAgLyoqIExpbWl0IHRoZSBudW1iZXIgb2YgY29sdW1ucy4gRGVmYXVsdCBpcyAxMC4gKi9cbiAgICBASW5wdXQoKVxuICAgIG1heENvbHVtbnMgPSBNQVhfQ09MVU1OUztcblxuICAgIC8qKiBFdmVudCB0byBlbWl0LCB3aGVuIGxheW91dCBjaGFuZ2VzICovXG4gICAgQE91dHB1dCgpXG4gICAgbGF5b3V0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8TGF5b3V0PiA9IG5ldyBFdmVudEVtaXR0ZXI8TGF5b3V0PigpO1xuXG4gICAgLyoqIEV2ZW50IHRvIGVtaXQgb24gQ2FyZCBkcmFnZ2VkIGFuZCBkcm9wcGVkICovXG4gICAgQE91dHB1dCgpXG4gICAgY2FyZERyYWdnZWREcm9wcGVkOiBFdmVudEVtaXR0ZXI8Q2FyZERyb3BwZWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxDYXJkRHJvcHBlZD4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihDYXJkRGVmaW5pdGlvbkRpcmVjdGl2ZSlcbiAgICBfY2FyZHM6IFF1ZXJ5TGlzdDxDYXJkRGVmaW5pdGlvbkRpcmVjdGl2ZT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGRyZW4oRml4ZWRDYXJkTGF5b3V0SXRlbUNvbXBvbmVudClcbiAgICBfY2FyZENvbnRhaW5lcnM6IFF1ZXJ5TGlzdDxGaXhlZENhcmRMYXlvdXRJdGVtQ29tcG9uZW50PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZHJlbihDZGtEcmFnKVxuICAgIF9kcmFnTGlzdDogUXVlcnlMaXN0PENka0RyYWc+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdsYXlvdXQnKVxuICAgIF9sYXlvdXQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfY2FyZHNBcnJheTogQ2FyZERlZmluaXRpb25EaXJlY3RpdmVbXTtcblxuICAgIC8qKiBAaGlkZGVuIE51bWJlciBvZiBDb2x1bW5zIGluIGxheW91dCAqL1xuICAgIF9udW1iZXJPZkNvbHVtbnM6IG51bWJlcjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2NhcmRDb2x1bW5zOiBDYXJkQ29sdW1uW107XG5cbiAgICAvKiogQGhpZGRlbiovXG4gICAgX2NvbnRhaW5lckhlaWdodCA9IDA7XG5cbiAgICAvKiogQGhpZGRlbiBoYW5kbGVzIHJ0bCBzZXJ2aWNlICovXG4gICAgX2RpciQgPSBjb21wdXRlZDxEaXJlY3Rpb24+KCgpID0+ICh0aGlzLl9ydGxTZXJ2aWNlPy5ydGxTaWduYWwoKSA/ICdydGwnIDogJ2x0cicpKTtcblxuICAgIC8qKiBAaGlkZGVuIGZpcnN0IG51bWJlciBpcyB0aGUgQ2FyZERlZmluaXRpb24gcmFuaywgaS5lLiBpZCAqL1xuICAgIF9ncm91cEluZGV4ZXMgPSBuZXcgTWFwPG51bWJlciwgbnVtYmVyPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gZmlyc3QgbnVtYmVyIGlzIHRoZSBDYXJkRGVmaW5pdGlvbiByYW5rLCBpLmUuIGlkICovXG4gICAgX2l0ZW1JbmRleGVzID0gbmV3IE1hcDxudW1iZXIsIG51bWJlcj4oKTtcblxuICAgIC8qKiBAaGlkZGVuIGZpcnN0IG51bWJlciBpcyB0aGUgQ2FyZERlZmluaXRpb24gcmFuaywgaS5lLiBpZCAqL1xuICAgIF9zaW5nbGVJdGVtQ29sdW1ucyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfY29sdW1uc1dpZHRoID0gbmV3IE1hcDxudW1iZXIsIG51bWJlcj4oKTtcblxuICAgIC8qKiBAaGlkZGVuIFJldHVybiBhdmFpbGFibGUgd2lkdGggZm9yIGZpeGVkIGNhcmQgbGF5b3V0ICovXG4gICAgZ2V0IF9hdmFpbGFibGVXaWR0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fbGF5b3V0Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfcGxhY2Vob2xkZXJNYXJnaW46IGJvb2xlYW47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9saXN0ZW5SZXNpemUgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfaGlkZGVuQ2FyZDogTnVsbGFibGU8Q2FyZERlZmluaXRpb25EaXJlY3RpdmU+O1xuXG4gICAgLyoqIEBoaWRkZW4gRm9jdXNLZXlNYW5hZ2VyIGluc3RhbmNlICovXG4gICAgcHJpdmF0ZSBfa2V5Ym9hcmRFdmVudHNNYW5hZ2VyOiBGb2N1c0tleU1hbmFnZXI8Rml4ZWRDYXJkTGF5b3V0SXRlbUNvbXBvbmVudD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NhcmRNaW5pbXVtV2lkdGggPSBDQVJEX01JTklNVU1fV0lEVEg7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NhcmRzU2l6ZUNoYW5nZVN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKiBAaGlkZGVuICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgX3J0bFNlcnZpY2U6IFJ0bFNlcnZpY2VcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGhhbmRsZUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuX2tleWJvYXJkRXZlbnRzTWFuYWdlcikge1xuICAgICAgICAgICAgdGhpcy5fa2V5Ym9hcmRFdmVudHNNYW5hZ2VyLm9uS2V5ZG93bihldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcHJvY2Vzc0NhcmRzKCk7XG5cbiAgICAgICAgdGhpcy5fbGlzdGVuT25SZXNpemUoKTtcbiAgICAgICAgdGhpcy5fbGlzdGVuT25DYXJkc0NoYW5nZSgpO1xuICAgICAgICB0aGlzLl9hY2Nlc3NpYmlsaXR5U2V0dXAoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgLy8gU2tpcCBhbGwgY2hhbmdlcyB1bmxlc3Mgd2UgZG9uJ3QgaGF2ZSBpbml0aWFsIGxheW91dCBjcmVhdGVkXG4gICAgICAgIGlmICghdGhpcy5fY2FyZHNBcnJheSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCdtYXhDb2x1bW5zJyBpbiBjaGFuZ2VzIHx8ICdjYXJkTWluaW11bVdpZHRoJyBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUxheW91dCgpO1xuICAgICAgICB9IGVsc2UgaWYgKCdjb2x1bW5zV2lkdGhDb25maWcnIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3NldENhcmRDb2x1bW5zV2lkdGgoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NhcmRzU2l6ZUNoYW5nZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLl9rZXlib2FyZEV2ZW50c01hbmFnZXI/LmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICAvKiogRGlzdHJpYnV0ZSBjYXJkcyBvbiB3aW5kb3cgcmVzaXplICovXG4gICAgdXBkYXRlTGF5b3V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9saXN0ZW5SZXNpemUgPSBmYWxzZTtcblxuICAgICAgICBpZiAodGhpcy5fY2FyZHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBwb3NzaWJsZU51bWJlck9mQ29sdW1ucyA9IGdldE51bWJlck9mQ29sdW1ucyh0aGlzLl9hdmFpbGFibGVXaWR0aCwgdGhpcy5jYXJkTWluaW11bVdpZHRoKTtcblxuICAgICAgICAgICAgdGhpcy5fbnVtYmVyT2ZDb2x1bW5zID0gTWF0aC5taW4oXG4gICAgICAgICAgICAgICAgcG9zc2libGVOdW1iZXJPZkNvbHVtbnMsXG4gICAgICAgICAgICAgICAgdGhpcy5fY2FyZHMubGVuZ3RoLFxuICAgICAgICAgICAgICAgIHRoaXMubWF4Q29sdW1ucyB8fCBNQVhfQ09MVU1OUyxcbiAgICAgICAgICAgICAgICBNQVhfQ09MVU1OU1xuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX251bWJlck9mQ29sdW1ucyA9IDE7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmxheW91dENoYW5nZS5lbWl0KHtcbiAgICAgICAgICAgIG51bWJlck9mQ29sdW1uczogdGhpcy5fbnVtYmVyT2ZDb2x1bW5zLFxuICAgICAgICAgICAgc2NyZWVuU2l6ZTogdGhpcy5fYXZhaWxhYmxlV2lkdGhcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fc2V0Q2FyZENvbHVtbnMoKTtcbiAgICAgICAgdGhpcy5fc2V0Q2FyZENvbHVtbnNXaWR0aCgpO1xuICAgICAgICB0aGlzLl9zZXRDb250YWluZXJIZWlnaHQoKTtcblxuICAgICAgICB0aGlzLl9saXN0ZW5SZXNpemUgPSB0cnVlO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uRHJhZ1N0YXJ0ZWQoZXZlbnQ6IENka0RyYWdTdGFydCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9saXN0ZW5SZXNpemUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5faGlkZGVuQ2FyZCA9IGV2ZW50LnNvdXJjZS5kYXRhO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uRHJvcExpc3RFbnRlcmVkKGV2ZW50OiBDZGtEcmFnRW50ZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29udGFpbmVySXRlbUNhcmREZWYgPSAoZXZlbnQuY29udGFpbmVyLmdldFNvcnRlZEl0ZW1zKClbMF0uZGF0YSBhcyBDYXJkRGVmaW5pdGlvbkRpcmVjdGl2ZSkuZmRDYXJkRGVmO1xuICAgICAgICBjb25zdCBkcmFnSXRlbUNhcmREZWYgPSAoZXZlbnQuaXRlbS5kYXRhIGFzIENhcmREZWZpbml0aW9uRGlyZWN0aXZlKS5mZENhcmREZWY7XG5cbiAgICAgICAgdGhpcy5fcGxhY2Vob2xkZXJNYXJnaW4gPSBjb250YWluZXJJdGVtQ2FyZERlZiAhPT0gZHJhZ0l0ZW1DYXJkRGVmO1xuXG4gICAgICAgIGNvbnN0IGNvbHVtbkluZGV4VG9BZGRTcGFjZSA9IHRoaXMuX2NhcmRDb2x1bW5zLmZpbmRJbmRleCgoY29sdW1uKSA9PlxuICAgICAgICAgICAgY29sdW1uLmZpbmQoKGNhcmQpID0+IGV2ZW50LmNvbnRhaW5lci5nZXRTb3J0ZWRJdGVtcygpWzBdLmRhdGEgPT09IGNhcmQpXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IHNwYWNlVG9BZGQgPVxuICAgICAgICAgICAgZXZlbnQuaXRlbS5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0ICtcbiAgICAgICAgICAgIChldmVudC5jb250YWluZXIuZ2V0U29ydGVkSXRlbXMoKS5sZW5ndGggPyBSRU1fSU5fUFggOiAwKTtcblxuICAgICAgICAvLyBXaGVuIHdlIG1vdmUgdGhlIGNhcmQgaW50byBhIGNlcnRhaW4gY29sdW1uIHdlIHNob3VsZCBpbmNyZWFzZSB0aGUgaGVpZ2h0IG9mIHRoYXQgY29sdW1uIGJ5IHRoZSBjYXJkIGhlaWdodFxuICAgICAgICB0aGlzLl9zZXRDb250YWluZXJIZWlnaHQoY29sdW1uSW5kZXhUb0FkZFNwYWNlLCBzcGFjZVRvQWRkKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbkRyYWdEcm9wcGVkKGV2ZW50OiBDZGtEcmFnRHJvcDxudW1iZXIsIG51bWJlcj4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faGlkZGVuQ2FyZCA9IG51bGw7XG5cbiAgICAgICAgaWYgKGV2ZW50LmNvbnRhaW5lci5kYXRhID09PSBldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9wbGFjZWhvbGRlck1hcmdpbiA9IGZhbHNlO1xuXG4gICAgICAgIGNvbnN0IG1vdmVkQ2FyZCA9IGV2ZW50LnByZXZpb3VzQ29udGFpbmVyLmdldFNvcnRlZEl0ZW1zKClbMF0uZGF0YTtcbiAgICAgICAgY29uc3QgcmVwbGFjZWRDYXJkID0gZXZlbnQuY29udGFpbmVyLmdldFNvcnRlZEl0ZW1zKClbMF0uZGF0YTtcblxuICAgICAgICBjb25zdCBtb3ZlZENhcmRDb2x1bW4gPSB0aGlzLl9jYXJkQ29sdW1ucy5maW5kKChjb2x1bW4pID0+XG4gICAgICAgICAgICBjb2x1bW4uZmluZCgoY2FyZCkgPT4gY2FyZC5mZENhcmREZWYgPT09IG1vdmVkQ2FyZC5mZENhcmREZWYpXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IHJlcGxhY2VkQ2FyZENvbHVtbiA9IHRoaXMuX2NhcmRDb2x1bW5zLmZpbmQoKGNvbHVtbikgPT5cbiAgICAgICAgICAgIGNvbHVtbi5maW5kKChjYXJkKSA9PiBjYXJkLmZkQ2FyZERlZiA9PT0gcmVwbGFjZWRDYXJkLmZkQ2FyZERlZilcbiAgICAgICAgKTtcblxuICAgICAgICAvLyBJZiB3ZSBkcmFnZ2VkIHRoZSBjYXJkIGZyb20gdGhlIHNhbWUgY29sdW1uIGFzIHRoZSBjb2x1bW4gd2UncmUgZHJvcHBpbmcgaW50b1xuICAgICAgICAvLyBUaGVyZSBtYXkgYmUgYSBzaXR1YXRpb24gd2hlcmUgdGhlIG9yZGVyIHNob3VsZG4ndCBjaGFuZ2UgYnV0IHNpbmNlIHRoZXJlIGFyZSBhIGRpZmZlcmVudCBkcm9wIGxpc3RzIGl0IHdpbGwgY2hhbmdlXG4gICAgICAgIC8vIFdlIHNob3VsZCBwcmV2ZW50IHRoaXNcbiAgICAgICAgaWYgKG1vdmVkQ2FyZENvbHVtbiA9PT0gcmVwbGFjZWRDYXJkQ29sdW1uICYmIG1vdmVkQ2FyZENvbHVtbj8ubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgICBpZiAobW92ZWRDYXJkLmZkQ2FyZERlZiA8IHJlcGxhY2VkQ2FyZC5mZENhcmREZWYgJiYgZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YSA8IGV2ZW50LmNvbnRhaW5lci5kYXRhKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAobW92ZWRDYXJkLmZkQ2FyZERlZiA+IHJlcGxhY2VkQ2FyZC5mZENhcmREZWYgJiYgZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YSA+IGV2ZW50LmNvbnRhaW5lci5kYXRhKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fcHJvY2Vzc0RyYWdEcm9wKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyLmRhdGEsIGV2ZW50LmNvbnRhaW5lci5kYXRhLCBtb3ZlZENhcmQsIHJlcGxhY2VkQ2FyZCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfc29ydFByZWRpY2F0ZUZuID0gKGluZGV4OiBudW1iZXIpOiBib29sZWFuID0+IGluZGV4ID09PSAwO1xuXG4gICAgLyoqIEBoaWRkZW4gRm9yIHRoZSBrZXlib2FyZCBkcmFnJmRyb3AgZGlyZWN0aXZlICovXG4gICAgX2N1c3RvbU1vdmVGbiA9IChncm91cDogQ2FyZENvbHVtbiwgaW5kZXhGcm9tOiBudW1iZXIsIGluZGV4VG86IG51bWJlcik6IHZvaWQgPT4ge1xuICAgICAgICBjb25zdCBtb3ZlZENhcmQgPSBncm91cFtpbmRleEZyb21dO1xuICAgICAgICBjb25zdCByZXBsYWNlZENhcmQgPSBncm91cFtpbmRleFRvXTtcblxuICAgICAgICBjb25zdCBpbmRleEZyb21BcnJheSA9IHRoaXMuX2NhcmRzQXJyYXkuZmluZEluZGV4KChjYXJkKSA9PiBjYXJkLmZkQ2FyZERlZiA9PT0gbW92ZWRDYXJkLmZkQ2FyZERlZik7XG4gICAgICAgIGNvbnN0IGluZGV4VG9BcnJheSA9IHRoaXMuX2NhcmRzQXJyYXkuZmluZEluZGV4KChjYXJkKSA9PiBjYXJkLmZkQ2FyZERlZiA9PT0gcmVwbGFjZWRDYXJkLmZkQ2FyZERlZik7XG5cbiAgICAgICAgdGhpcy5fcHJvY2Vzc0RyYWdEcm9wKGluZGV4RnJvbUFycmF5LCBpbmRleFRvQXJyYXksIG1vdmVkQ2FyZCwgcmVwbGFjZWRDYXJkKTtcbiAgICB9O1xuXG4gICAgLyoqIEBoaWRkZW4gRm9yIHRoZSBrZXlib2FyZCBkcmFnJmRyb3AgZGlyZWN0aXZlICovXG4gICAgX2N1c3RvbVRyYW5zZmVyRm4gPSAocHJldkdyb3VwOiBDYXJkQ29sdW1uLCBuZXh0R3JvdXA6IENhcmRDb2x1bW4sIGluZGV4RnJvbTogbnVtYmVyLCBpbmRleFRvOiBudW1iZXIpOiB2b2lkID0+IHtcbiAgICAgICAgY29uc3QgbW92ZWRDYXJkID0gcHJldkdyb3VwW2luZGV4RnJvbV07XG4gICAgICAgIGNvbnN0IHJlcGxhY2VkQ2FyZCA9IG5leHRHcm91cFtpbmRleFRvXTtcblxuICAgICAgICBjb25zdCBpbmRleEZyb21BcnJheSA9IHRoaXMuX2NhcmRzQXJyYXkuZmluZEluZGV4KChjYXJkKSA9PiBjYXJkLmZkQ2FyZERlZiA9PT0gbW92ZWRDYXJkLmZkQ2FyZERlZik7XG4gICAgICAgIGNvbnN0IGluZGV4VG9BcnJheSA9IHRoaXMuX2NhcmRzQXJyYXkuZmluZEluZGV4KChjYXJkKSA9PiBjYXJkLmZkQ2FyZERlZiA9PT0gcmVwbGFjZWRDYXJkLmZkQ2FyZERlZik7XG5cbiAgICAgICAgdGhpcy5fcHJvY2Vzc0RyYWdEcm9wKGluZGV4RnJvbUFycmF5LCBpbmRleFRvQXJyYXksIG1vdmVkQ2FyZCwgcmVwbGFjZWRDYXJkKTtcbiAgICB9O1xuXG4gICAgLyoqIEBoaWRkZW4gQXJyYW5nZXMgY2FyZHMgb24gZHJvcCBvZiBkcmFnZ2VkIGNhcmQgKi9cbiAgICBwcml2YXRlIF9wcm9jZXNzRHJhZ0Ryb3AoXG4gICAgICAgIHByZXZJbmRleDogbnVtYmVyLFxuICAgICAgICBuZXdJbmRleDogbnVtYmVyLFxuICAgICAgICBwcmV2Q2FyZDogQ2FyZERlZmluaXRpb25EaXJlY3RpdmUsXG4gICAgICAgIG5ld0NhcmQ6IENhcmREZWZpbml0aW9uRGlyZWN0aXZlXG4gICAgKTogdm9pZCB7XG4gICAgICAgIC8vIG1vdmVJdGVtSW5BcnJheSBmcm9tIENESyB3b24ndCB3b3JrIGFzIGl0IGNoYW5nZXMgb3JkZXIgb2Ygb3RoZXIgY2FyZHNcbiAgICAgICAgY29uc3QgcmVwbGFjZWRDYXJkID0gdGhpcy5fY2FyZHNBcnJheVtuZXdJbmRleF07XG4gICAgICAgIHRoaXMuX2NhcmRzQXJyYXlbbmV3SW5kZXhdID0gdGhpcy5fY2FyZHNBcnJheVtwcmV2SW5kZXhdO1xuICAgICAgICB0aGlzLl9jYXJkc0FycmF5W3ByZXZJbmRleF0gPSByZXBsYWNlZENhcmQ7XG5cbiAgICAgICAgYWRqdXN0Q2FyZFJhbmsocHJldkNhcmQsIG5ld0NhcmQpO1xuXG4gICAgICAgIHRoaXMuY2FyZERyYWdnZWREcm9wcGVkLmVtaXQoe1xuICAgICAgICAgICAgcHJldmlvdXNJbmRleDogcHJldkluZGV4LFxuICAgICAgICAgICAgY3VycmVudEluZGV4OiBuZXdJbmRleCxcbiAgICAgICAgICAgIGxheW91dENvbHVtbnM6IHRoaXMuX251bWJlck9mQ29sdW1ucyxcbiAgICAgICAgICAgIGl0ZW1zOiB0aGlzLl9jYXJkcy50b0FycmF5KClcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy51cGRhdGVMYXlvdXQoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2FjY2Vzc2liaWxpdHlTZXR1cCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fa2V5Ym9hcmRFdmVudHNNYW5hZ2VyPy5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX2tleWJvYXJkRXZlbnRzTWFuYWdlciA9IG5ldyBGb2N1c0tleU1hbmFnZXIodGhpcy5fY2FyZENvbnRhaW5lcnMpLndpdGhXcmFwKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gTGlzdGVuIHdpbmRvdyByZXNpemUgYW5kIGRpc3RyaWJ1dGUgY2FyZHMgb24gY29sdW1uIGNoYW5nZSAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uUmVzaXplKCk6IHZvaWQge1xuICAgICAgICByZXNpemVPYnNlcnZhYmxlKHRoaXMuX2xheW91dC5uYXRpdmVFbGVtZW50KVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGVib3VuY2VUaW1lKDIwKSxcbiAgICAgICAgICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgIChlbnRyaWVzKSA9PiB0aGlzLl9saXN0ZW5SZXNpemUgJiYgISEoZW50cmllc1swXS5jb250ZW50UmVjdC5oZWlnaHQgfHwgZW50cmllc1swXS5jb250ZW50UmVjdC53aWR0aClcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnVwZGF0ZUxheW91dCgpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBMaXN0ZW4gY2FyZCBjaGFuZ2UgYW5kIGRpc3RyaWJ1dGUgY2FyZHMgb24gY29sdW1uIGNoYW5nZSAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uQ2FyZHNDaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NhcmRzLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX3Byb2Nlc3NDYXJkcygpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVMYXlvdXQoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9wcm9jZXNzQ2FyZHMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NhcmRzQXJyYXkgPSB0aGlzLl9jYXJkc1xuICAgICAgICAgICAgLnRvQXJyYXkoKVxuICAgICAgICAgICAgLnNvcnQoKGZpcnN0Q2FyZCwgc2Vjb25kQ2FyZCkgPT4gZmlyc3RDYXJkLmZkQ2FyZERlZiAtIHNlY29uZENhcmQuZmRDYXJkRGVmKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBEaXN0cmlidXRlIGNhcmRzIGFtb25nIGNvbHVtbnMgdG8gYXJyYW5nZSB0aGVtIGluIFwiWlwiIGZsb3cgKi9cbiAgICBwcml2YXRlIF9zZXRDYXJkQ29sdW1ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZ3JvdXBJbmRleGVzID0gbmV3IE1hcDxudW1iZXIsIG51bWJlcj4oKTtcbiAgICAgICAgdGhpcy5faXRlbUluZGV4ZXMgPSBuZXcgTWFwPG51bWJlciwgbnVtYmVyPigpO1xuICAgICAgICB0aGlzLl9zaW5nbGVJdGVtQ29sdW1ucyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xuXG4gICAgICAgIGNvbnN0IGNvbHVtbnM6IENhcmRDb2x1bW5bXSA9IG5ldyBBcnJheSh0aGlzLl9udW1iZXJPZkNvbHVtbnMpLmZpbGwoMCkubWFwKCgpID0+IG5ldyBBcnJheSgwKSk7XG5cbiAgICAgICAgdGhpcy5fY2FyZHNBcnJheS5mb3JFYWNoKChjYXJkLCBpKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjdXJyQ29sdW1uSW5kZXggPSBpICUgdGhpcy5fbnVtYmVyT2ZDb2x1bW5zO1xuICAgICAgICAgICAgY29uc3QgaXRlbUluZGV4ID0gY29sdW1uc1tjdXJyQ29sdW1uSW5kZXhdLmxlbmd0aDtcblxuICAgICAgICAgICAgY29sdW1uc1tjdXJyQ29sdW1uSW5kZXhdLnB1c2goY2FyZCk7XG5cbiAgICAgICAgICAgIHRoaXMuX2dyb3VwSW5kZXhlcy5zZXQoY2FyZC5mZENhcmREZWYsIGN1cnJDb2x1bW5JbmRleCk7XG4gICAgICAgICAgICB0aGlzLl9pdGVtSW5kZXhlcy5zZXQoY2FyZC5mZENhcmREZWYsIGl0ZW1JbmRleCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX2NhcmRDb2x1bW5zID0gY29sdW1ucztcblxuICAgICAgICB0aGlzLl9jYXJkQ29sdW1ucy5mb3JFYWNoKChjb2x1bW4pID0+IHtcbiAgICAgICAgICAgIGlmIChjb2x1bW4ubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc2luZ2xlSXRlbUNvbHVtbnMuYWRkKGNvbHVtblswXS5mZENhcmREZWYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9saXN0ZW5PbkNhcmRzSGVpZ2h0Q2hhbmdlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zZXRDYXJkQ29sdW1uc1dpZHRoKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jb2x1bW5zV2lkdGggPSBuZXcgTWFwKCk7XG5cbiAgICAgICAgY29uc3QgY29uZmlnUHJlc2VudCA9XG4gICAgICAgICAgICB0aGlzLmNvbHVtbnNXaWR0aENvbmZpZyAmJlxuICAgICAgICAgICAgdHlwZW9mIHRoaXMuY29sdW1uc1dpZHRoQ29uZmlnID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAgICAgT2JqZWN0LmtleXModGhpcy5jb2x1bW5zV2lkdGhDb25maWcpLmxlbmd0aDtcblxuICAgICAgICBpZiAoIWNvbmZpZ1ByZXNlbnQgfHwgdGhpcy5fbnVtYmVyT2ZDb2x1bW5zID09PSAxKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmaXhlZFdpZHRoTW9kaWZpZXJzID0gZml4V2lkdGhNb2RpZmllcnModGhpcy5jb2x1bW5zV2lkdGhDb25maWcsIHRoaXMuX251bWJlck9mQ29sdW1ucyk7XG4gICAgICAgIGNvbnN0IHRvdGFsV2lkdGhNb2RpZmllcnMgPSBmaXhlZFdpZHRoTW9kaWZpZXJzLnJlZHVjZSgoc3VtLCB3aWR0aCkgPT4gKHN1bSArPSB3aWR0aCksIDApO1xuICAgICAgICBjb25zdCBmcmVlU3BhY2UgPSB0aGlzLl9hdmFpbGFibGVXaWR0aCAtIHRoaXMuY2FyZE1pbmltdW1XaWR0aCAqIHRoaXMuX251bWJlck9mQ29sdW1ucztcblxuICAgICAgICB0aGlzLl9jYXJkQ29sdW1ucy5mb3JFYWNoKChjb2x1bW4sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb2x1bW5XaWR0aCA9IE1hdGgucm91bmQoXG4gICAgICAgICAgICAgICAgdGhpcy5jYXJkTWluaW11bVdpZHRoICsgKGZyZWVTcGFjZSAvIHRvdGFsV2lkdGhNb2RpZmllcnMpICogZml4ZWRXaWR0aE1vZGlmaWVyc1tpbmRleF1cbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIGNvbHVtbi5mb3JFYWNoKChjYXJkKSA9PiB0aGlzLl9jb2x1bW5zV2lkdGguc2V0KGNhcmQuZmRDYXJkRGVmLCBjb2x1bW5XaWR0aCkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQ2FsY3VsYXRlIGNvbnRhaW5lciBoZWlnaHQgYWNjb3JkaW5nbHkgdG8gdGhlIHRoZSBjYXJkIGNvbHVtbnMgaGVpZ2h0XG4gICAgICogUGFyYW1ldGVycyB1c2VkIHRvIGluY3JlYXNlIHRoZSBoZWlnaHQgb2YgdGhlIGNvbHVtbiB3aGVyZSBkcmFnJ24nZHJvcCBwbGFjZWhvbGRlciBjdXJyZW50bHkgaXNcbiAgICAgKi9cbiAgICBwcml2YXRlIF9zZXRDb250YWluZXJIZWlnaHQoY29sdW1uSW5kZXhUb0FkZFNwYWNlID0gLTEsIHNwYWNlVG9BZGQgPSAwKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcblxuICAgICAgICBjb25zdCBjYXJkQ29sdW1ucyA9IHRoaXMuX2NhcmRDb2x1bW5zLm1hcCgoY29sdW1uKSA9PlxuICAgICAgICAgICAgY29sdW1uXG4gICAgICAgICAgICAgICAgLm1hcCgoY2FyZCkgPT4gdGhpcy5fZHJhZ0xpc3QuZmluZCgoZHJhZykgPT4gZHJhZy5kYXRhID09PSBjYXJkKSlcbiAgICAgICAgICAgICAgICAuZmlsdGVyKChjZGtEcmFnKSA9PiAhY2RrRHJhZz8uX2RyYWdSZWYuaXNEcmFnZ2luZygpICYmICEhY2RrRHJhZz8uZWxlbWVudD8ubmF0aXZlRWxlbWVudClcbiAgICAgICAgICAgICAgICAubWFwKChjZGtEcmFnKSA9PiBjZGtEcmFnPy5lbGVtZW50KVxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGNvbHVtbnNIZWlnaHRzID0gY2FyZENvbHVtbnNcbiAgICAgICAgICAgIC5tYXAoKGNvbHVtbikgPT4gY29sdW1uLm1hcCgoY2FyZEVsUmVmKSA9PiBjYXJkRWxSZWY/Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0IHx8IDApKVxuICAgICAgICAgICAgLm1hcChcbiAgICAgICAgICAgICAgICAoY29sdW1uLCBjb2x1bW5JbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLnJlZHVjZSgoY2FyZHNIZWlnaHQsIGhlaWdodCkgPT4gKGNhcmRzSGVpZ2h0ICs9IGhlaWdodCArIFJFTV9JTl9QWCksIDApICtcbiAgICAgICAgICAgICAgICAgICAgKGNvbHVtbkluZGV4ID09PSBjb2x1bW5JbmRleFRvQWRkU3BhY2UgPyBzcGFjZVRvQWRkIDogMClcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgcHJldkNvbnRhaW5lckhlaWdodCA9IHRoaXMuX2NvbnRhaW5lckhlaWdodDtcblxuICAgICAgICAvLyArNHB4IGJlY2F1c2UgaXQncyB0aGUgdG9wICYgYm90dG9tIGJvcmRlcnMgb2YgY2FyZCBwbGFjZWhvbGRlclxuICAgICAgICB0aGlzLl9jb250YWluZXJIZWlnaHQgPSBNYXRoLmNlaWwoTWF0aC5tYXgoLi4uY29sdW1uc0hlaWdodHMpICsgNCk7XG5cbiAgICAgICAgaWYgKHRoaXMuX2NvbnRhaW5lckhlaWdodCAhPT0gcHJldkNvbnRhaW5lckhlaWdodCkge1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5PbkNhcmRzSGVpZ2h0Q2hhbmdlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jYXJkc1NpemVDaGFuZ2VTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fY2FyZHNTaXplQ2hhbmdlU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcblxuICAgICAgICB0aGlzLl9jYXJkQ29sdW1ucy5mb3JFYWNoKChjb2x1bW4pID0+XG4gICAgICAgICAgICBjb2x1bW5cbiAgICAgICAgICAgICAgICAubWFwKChjYXJkKSA9PiB0aGlzLl9kcmFnTGlzdC5maW5kKCh3cmFwcGVyKSA9PiB3cmFwcGVyLmRhdGEgPT09IGNhcmQpPy5lbGVtZW50KVxuICAgICAgICAgICAgICAgIC5maWx0ZXIoKHYpOiB2IGlzIEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+ID0+ICEhdilcbiAgICAgICAgICAgICAgICAuZm9yRWFjaCgoY2FyZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jYXJkc1NpemVDaGFuZ2VTdWJzY3JpcHRpb24uYWRkKFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzaXplT2JzZXJ2YWJsZShjYXJkLm5hdGl2ZUVsZW1lbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNraXAoMSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYm91bmNlVGltZSgyMCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLl9saXN0ZW5SZXNpemUgJiYgISF0aGlzLl9sYXlvdXQubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fc2V0Q29udGFpbmVySGVpZ2h0KCkpXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG59XG5cbi8qKiBAaGlkZGVuICovXG5mdW5jdGlvbiBmaXhXaWR0aE1vZGlmaWVycyhjb25maWc6IENvbHVtbnNXaWR0aENvbmZpZywgbnVtYmVyT2ZDb2x1bW5zOiBudW1iZXIpOiBudW1iZXJbXSB7XG4gICAgY29uc3QgbW9kaWZpZXJzID0gbmV3IEFycmF5KG51bWJlck9mQ29sdW1ucykuZmlsbCgwKTtcblxuICAgIHJldHVybiBtb2RpZmllcnMubWFwKChfLCBpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCBjb2x1bW5XaWR0aE1vZGlmaWVyID0gY29uZmlnW2luZGV4ICsgMV07XG5cbiAgICAgICAgaWYgKCFjb2x1bW5XaWR0aE1vZGlmaWVyIHx8IGNvbHVtbldpZHRoTW9kaWZpZXIgPCAwKSB7XG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb2x1bW5XaWR0aE1vZGlmaWVyO1xuICAgIH0pO1xufVxuXG4vKiogQGhpZGRlbiBSZXR1cm5zIG51bWJlciBvZiBjb2x1bW5zIHRoYXQgY2FuIGZpdCBpbiBjdXJyZW50IGF2YWlsYWJsZSB3aWR0aCBmb3IgZmQtY2FyZC1sYXlvdXQgKi9cbmZ1bmN0aW9uIGdldE51bWJlck9mQ29sdW1ucyhjb250YWluZXJXaWR0aDogbnVtYmVyLCBjYXJkV2lkdGg6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29udGFpbmVyV2lkdGggPSBjb250YWluZXJXaWR0aCB8fCAxO1xuICAgIGNhcmRXaWR0aCA9IGNhcmRXaWR0aCB8fCAxO1xuXG4gICAgY29uc3QgbnVtYmVyT2ZDYXJkc1dpdGhOb0dhcCA9IE1hdGgubWF4KE1hdGguZmxvb3IoY29udGFpbmVyV2lkdGggLyBjYXJkV2lkdGgpLCAxKTsgLy8gRXhhbXBsZTogOTYwIC8gMzIwID0gM1xuICAgIGNvbnN0IHJlcXVpcmVkV2lkdGhXaXRoR2FwID0gbnVtYmVyT2ZDYXJkc1dpdGhOb0dhcCAqIGNhcmRXaWR0aCArIChudW1iZXJPZkNhcmRzV2l0aE5vR2FwIC0gMSkgKiBDQVJEX0dBUF9XSURUSDtcbiAgICBjb25zdCBjb2x1bW5Db3VudCA9IHJlcXVpcmVkV2lkdGhXaXRoR2FwID4gY29udGFpbmVyV2lkdGggPyBudW1iZXJPZkNhcmRzV2l0aE5vR2FwIC0gMSA6IG51bWJlck9mQ2FyZHNXaXRoTm9HYXA7XG5cbiAgICByZXR1cm4gTWF0aC5tYXgoY29sdW1uQ291bnQsIDEpO1xufVxuXG4vKiogQGhpZGRlbiBNZXRob2QgdG8gdXBkYXRlIHJhbmsgYWZ0ZXIgY2FyZHMgYXJlIGRyYWdnZWQgKi9cbmZ1bmN0aW9uIGFkanVzdENhcmRSYW5rKGRyYWdnZWRDYXJkOiBDYXJkRGVmaW5pdGlvbkRpcmVjdGl2ZSwgcmVwbGFjZWRDYXJkOiBDYXJkRGVmaW5pdGlvbkRpcmVjdGl2ZSk6IHZvaWQge1xuICAgIGNvbnN0IGRyYWdnZWRDYXJkUmFuayA9IGRyYWdnZWRDYXJkLmZkQ2FyZERlZjtcbiAgICBkcmFnZ2VkQ2FyZC5mZENhcmREZWYgPSByZXBsYWNlZENhcmQuZmRDYXJkRGVmO1xuICAgIHJlcGxhY2VkQ2FyZC5mZENhcmREZWYgPSBkcmFnZ2VkQ2FyZFJhbms7XG59XG4iLCI8ZGl2XG4gICAgI2xheW91dFxuICAgIGNka0Ryb3BMaXN0R3JvdXBcbiAgICBmZERuZEtleWJvYXJkR3JvdXBcbiAgICBjbGFzcz1cImZkLWZpeGVkLWNhcmQtbGF5b3V0X19jYXJkLWxheW91dCBmZC1maXhlZC1jYXJkLWxheW91dF9fY2FyZC1sYXlvdXQtLWNvbHVtbnMte3sgdGhpcy5fbnVtYmVyT2ZDb2x1bW5zIH19XCJcbiAgICBbc3R5bGUuaGVpZ2h0XT1cIl9jb250YWluZXJIZWlnaHQgKyAncHgnXCJcbiAgICBbZ3JvdXBzXT1cIl9jYXJkQ29sdW1uc1wiXG4gICAgb3JpZW50YXRpb249XCJob3Jpem9udGFsXCJcbiAgICBbY3VzdG9tTW92ZUZuXT1cIl9jdXN0b21Nb3ZlRm5cIlxuICAgIFtjdXN0b21UcmFuc2ZlckZuXT1cIl9jdXN0b21UcmFuc2ZlckZuXCJcbiAgICBbZGlzYWJsZUtleWJvYXJkRHJhZ0Ryb3BdPVwiZGlzYWJsZURyYWdEcm9wXCJcbiAgICBbY2RrRHJvcExpc3RHcm91cERpc2FibGVkXT1cImRpc2FibGVEcmFnRHJvcFwiXG4gICAgW2F0dHIuZGlyXT1cIl9kaXIkKClcIlxuPlxuICAgIEBmb3IgKGNhcmQgb2YgX2NhcmRzQXJyYXk7IHRyYWNrIGNhcmQ7IGxldCBjYXJkSW5kZXggPSAkaW5kZXgpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2RrRHJvcExpc3RcbiAgICAgICAgICAgIGNsYXNzPVwiZmQtZml4ZWQtY2FyZC1sYXlvdXRfX2NhcmRcIlxuICAgICAgICAgICAgW2NsYXNzLmZkLWZpeGVkLWNhcmQtbGF5b3V0X19jYXJkLS1zaW5nbGVdPVwiX3NpbmdsZUl0ZW1Db2x1bW5zLmhhcyhjYXJkLmZkQ2FyZERlZilcIlxuICAgICAgICAgICAgW3N0eWxlLm1pbi13aWR0aC5weF09XCJfY29sdW1uc1dpZHRoLmdldChjYXJkLmZkQ2FyZERlZilcIlxuICAgICAgICAgICAgW3N0eWxlLm1heC13aWR0aC5weF09XCJfY29sdW1uc1dpZHRoLmdldChjYXJkLmZkQ2FyZERlZilcIlxuICAgICAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwiX2hpZGRlbkNhcmQgPT09IGNhcmQgPyAnbm9uZScgOiAnYmxvY2snXCJcbiAgICAgICAgICAgIFtjZGtEcm9wTGlzdERhdGFdPVwiY2FyZEluZGV4XCJcbiAgICAgICAgICAgIFtjZGtEcm9wTGlzdFNvcnRQcmVkaWNhdGVdPVwiX3NvcnRQcmVkaWNhdGVGblwiXG4gICAgICAgICAgICAoY2RrRHJvcExpc3RFbnRlcmVkKT1cIl9vbkRyb3BMaXN0RW50ZXJlZCgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNka0RyYWdcbiAgICAgICAgICAgICAgICBmZERuZEtleWJvYXJkSXRlbVxuICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgICAgY2RrRHJhZ1ByZXZpZXdDbGFzcz1cImZkLWZpeGVkLWNhcmQtbGF5b3V0X19jYXJkLXByZXZpZXdcIlxuICAgICAgICAgICAgICAgIFtjZGtEcmFnRGF0YV09XCJjYXJkXCJcbiAgICAgICAgICAgICAgICBbY2RrRHJhZ1N0YXJ0RGVsYXldPVwiZHJhZ1N0YXJ0RGVsYXlcIlxuICAgICAgICAgICAgICAgIFtpdGVtSW5kZXhdPVwiX2l0ZW1JbmRleGVzLmdldChjYXJkLmZkQ2FyZERlZikhXCJcbiAgICAgICAgICAgICAgICBbZ3JvdXBJbmRleF09XCJfZ3JvdXBJbmRleGVzLmdldChjYXJkLmZkQ2FyZERlZikhXCJcbiAgICAgICAgICAgICAgICAoY2RrRHJhZ1N0YXJ0ZWQpPVwiX29uRHJhZ1N0YXJ0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGNka0RyYWdEcm9wcGVkKT1cIl9vbkRyYWdEcm9wcGVkKCRldmVudClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxmZC1maXhlZC1jYXJkLWxheW91dC1pdGVtPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2FyZD8udGVtcGxhdGUgfHwgbnVsbFwiPiA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvZmQtZml4ZWQtY2FyZC1sYXlvdXQtaXRlbT5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICpjZGtEcmFnUGxhY2Vob2xkZXJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1maXhlZC1jYXJkLWxheW91dF9fY2FyZC1wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5tYXJnaW4tYm90dG9tLnJlbV09XCIrX3BsYWNlaG9sZGVyTWFyZ2luXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJjYXJkPy50ZW1wbGF0ZSB8fCBudWxsXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICB9XG4gICAgQGZvciAoY29sdW1uIG9mIF9jYXJkQ29sdW1uczsgdHJhY2sgY29sdW1uOyBsZXQgbGFzdCA9ICRsYXN0OyBsZXQgaW5kZXggPSAkaW5kZXgpIHtcbiAgICAgICAgQGlmICghbGFzdCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZkLWZpeGVkLWNhcmQtbGF5b3V0X19jbGVhcmZpeFwiIFtzdHlsZS5vcmRlcl09XCJpbmRleCArIDFcIj48L2Rpdj5cbiAgICAgICAgfVxuICAgIH1cbjwvZGl2PlxuIl19","import { NgModule } from '@angular/core';\nimport { FixedCardLayoutItemComponent } from './fixed-card-layout-item/fixed-card-layout-item.component';\nimport { CardDefinitionDirective, FixedCardLayoutComponent } from './fixed-card-layout.component';\nimport * as i0 from \"@angular/core\";\nconst components = [FixedCardLayoutComponent, CardDefinitionDirective, FixedCardLayoutItemComponent];\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\nexport class FixedCardLayoutModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: FixedCardLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.4\", ngImport: i0, type: FixedCardLayoutModule, imports: [FixedCardLayoutComponent, CardDefinitionDirective, FixedCardLayoutItemComponent], exports: [FixedCardLayoutComponent, CardDefinitionDirective, FixedCardLayoutItemComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: FixedCardLayoutModule, imports: [FixedCardLayoutComponent] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: FixedCardLayoutModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [...components],\n exports: [...components]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4ZWQtY2FyZC1sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2ZpeGVkLWNhcmQtbGF5b3V0L2ZpeGVkLWNhcmQtbGF5b3V0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQUVsRyxNQUFNLFVBQVUsR0FBRyxDQUFDLHdCQUF3QixFQUFFLHVCQUF1QixFQUFFLDRCQUE0QixDQUFDLENBQUM7QUFFckc7OztHQUdHO0FBS0gsTUFBTSxPQUFPLHFCQUFxQjs4R0FBckIscUJBQXFCOytHQUFyQixxQkFBcUIsWUFWZCx3QkFBd0IsRUFBRSx1QkFBdUIsRUFBRSw0QkFBNEIsYUFBL0Usd0JBQXdCLEVBQUUsdUJBQXVCLEVBQUUsNEJBQTRCOytHQVV0RixxQkFBcUIsWUFWZCx3QkFBd0I7OzJGQVUvQixxQkFBcUI7a0JBSmpDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7b0JBQ3hCLE9BQU8sRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO2lCQUMzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaXhlZENhcmRMYXlvdXRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9maXhlZC1jYXJkLWxheW91dC1pdGVtL2ZpeGVkLWNhcmQtbGF5b3V0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IENhcmREZWZpbml0aW9uRGlyZWN0aXZlLCBGaXhlZENhcmRMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2ZpeGVkLWNhcmQtbGF5b3V0LmNvbXBvbmVudCc7XG5cbmNvbnN0IGNvbXBvbmVudHMgPSBbRml4ZWRDYXJkTGF5b3V0Q29tcG9uZW50LCBDYXJkRGVmaW5pdGlvbkRpcmVjdGl2ZSwgRml4ZWRDYXJkTGF5b3V0SXRlbUNvbXBvbmVudF07XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqIFVzZSBkaXJlY3QgaW1wb3J0cyBvZiBjb21wb25lbnRzIGFuZCBkaXJlY3RpdmVzLlxuICovXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFsuLi5jb21wb25lbnRzXSxcbiAgICBleHBvcnRzOiBbLi4uY29tcG9uZW50c11cbn0pXG5leHBvcnQgY2xhc3MgRml4ZWRDYXJkTGF5b3V0TW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LWNvcmUtZml4ZWQtY2FyZC1sYXlvdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZml4ZWQtY2FyZC1sYXlvdXQvZnVuZGFtZW50YWwtbmd4LWNvcmUtZml4ZWQtY2FyZC1sYXlvdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":"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"}
|