@fundamental-ngx/ui5-webcomponents 0.64.2-rc.8 → 0.64.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/README.md +16 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-badge.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-group.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-bar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs-item.mjs +12 -4
- package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-busy-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-button-badge.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-button.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date-range.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-card-header.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-card-header.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-card.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-carousel.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-carousel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-check-box.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-check-box.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-item.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-popover.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-picker.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item-custom.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item-custom.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item-group.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-picker.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-range-picker.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-range-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-input.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-picker.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-day-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-dialog.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-dialog.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-drop-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-dynamic-date-range.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-dynamic-date-range.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-expandable-text.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-file-uploader.mjs +10 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-file-uploader.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-icon.mjs +11 -4
- package/fesm2022/fundamental-ngx-ui5-webcomponents-icon.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-input-icon.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-input-icon.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-input.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-label.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-link.mjs +12 -4
- package/fesm2022/fundamental-ngx-ui5-webcomponents-link.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-custom.mjs +13 -5
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-custom.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group-header.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group-header.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-standard.mjs +13 -5
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-standard.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item.mjs +13 -5
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-separator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-message-strip.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-message-strip.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-month-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-custom.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-custom.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-group.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box.mjs +11 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-input.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-option-custom.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-option-custom.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-option.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-option.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-panel.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-panel.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-popover.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-progress-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-radio-button.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-radio-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-range-slider.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-range-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-rating-indicator.mjs +18 -5
- package/fesm2022/fundamental-ngx-ui5-webcomponents-rating-indicator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-responsive-popover.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-responsive-popover.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button-item.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button.mjs +10 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-select.mjs +11 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-select.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-slider-handle.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-slider-tooltip.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-slider.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-slider.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-special-calendar-date.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-split-button.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-split-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-step-input.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-step-input.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-custom.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-custom.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-group.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-group.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-list-item.mjs +13 -5
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-list-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-switch.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-switch.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-container.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-container.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-separator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-cell.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-group-row.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-growing.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-growing.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-row.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-multi.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-multi.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-single.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-single.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-virtualizer.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-virtualizer.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tag.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tag.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-text-area.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-text-area.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-text.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker-clock.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-time-selection-clocks.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-time-selection-inputs.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-title.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toast.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toast.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-button.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-spin-button.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-spin-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-token.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tokenizer.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tokenizer.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-button.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-button.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select-option.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-separator.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-spacer.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar.mjs +2 -2
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item-custom.mjs +13 -5
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item-custom.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item.mjs +13 -5
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree.mjs +8 -3
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-year-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents-year-range-picker.mjs.map +1 -1
- package/fesm2022/fundamental-ngx-ui5-webcomponents.mjs +661 -204
- package/fesm2022/fundamental-ngx-ui5-webcomponents.mjs.map +1 -1
- package/package.json +4 -4
- package/types/fundamental-ngx-ui5-webcomponents-avatar-group.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-avatar.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-breadcrumbs-item.d.ts +3 -1
- package/types/fundamental-ngx-ui5-webcomponents-breadcrumbs.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-button.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-calendar.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-card-header.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-carousel.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-check-box.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-color-palette-item.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-color-palette-popover.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-color-palette.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-color-picker.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-combo-box-item-custom.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-combo-box-item-group.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-combo-box-item.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-combo-box.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-date-picker.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-date-range-picker.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-date-time-input.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-date-time-picker.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-dialog.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-dynamic-date-range.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-file-uploader.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-icon.d.ts +3 -0
- package/types/fundamental-ngx-ui5-webcomponents-input-icon.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-input.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-link.d.ts +3 -1
- package/types/fundamental-ngx-ui5-webcomponents-list-item-custom.d.ts +7 -3
- package/types/fundamental-ngx-ui5-webcomponents-list-item-group-header.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-list-item-group.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-list-item-standard.d.ts +7 -3
- package/types/fundamental-ngx-ui5-webcomponents-list.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-menu-item.d.ts +7 -3
- package/types/fundamental-ngx-ui5-webcomponents-menu.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-message-strip.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-custom.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-group.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-multi-combo-box-item.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-multi-combo-box.d.ts +4 -0
- package/types/fundamental-ngx-ui5-webcomponents-multi-input.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-option-custom.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-option.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-panel.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-popover.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-radio-button.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-range-slider.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-rating-indicator.d.ts +9 -1
- package/types/fundamental-ngx-ui5-webcomponents-responsive-popover.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-segmented-button-item.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-segmented-button.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-select.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-slider.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-split-button.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-step-input.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-suggestion-item-custom.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-suggestion-item-group.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-suggestion-item.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-suggestion-list-item.d.ts +7 -3
- package/types/fundamental-ngx-ui5-webcomponents-switch.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-tab-container.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-tab.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table-growing.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table-row-action.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table-selection-multi.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table-selection-single.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table-selection.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table-virtualizer.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-table.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-tag.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-text-area.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-time-picker.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-toast.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-toggle-button.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-toggle-spin-button.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-tokenizer.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-toolbar-button.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-toolbar-select.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents-toolbar.d.ts +1 -1
- package/types/fundamental-ngx-ui5-webcomponents-tree-item-custom.d.ts +7 -3
- package/types/fundamental-ngx-ui5-webcomponents-tree-item.d.ts +7 -3
- package/types/fundamental-ngx-ui5-webcomponents-tree.d.ts +1 -0
- package/types/fundamental-ngx-ui5-webcomponents.d.ts +154 -40
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-growing.mjs","sources":["../../../../libs/ui5-webcomponents/table-growing/index.ts","../../../../libs/ui5-webcomponents/table-growing/fundamental-ngx-ui5-webcomponents-table-growing.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableGrowing.js';\nimport { default as _TableGrowing } from '@ui5/webcomponents/dist/TableGrowing.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\nimport { default as TableGrowingMode } from '@ui5/webcomponents/dist/types/TableGrowingMode.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-table-growing, [ui5-table-growing]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableGrowing',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableGrowing implements AfterViewInit {\n\n /**\n * Defines the mode of the <code>ui5-table</code> growing.\n\nAvailable options are:\n\nButton - Shows a More button at the bottom of the table, pressing it will load more rows.\n\nScroll - The rows are loaded automatically by scrolling to the bottom of the table. If the table is not scrollable,\na growing button will be rendered instead to ensure growing functionality.\n */\n mode = input<typeof _TableGrowing.prototype.mode | undefined>(\"Button\");\n\n /**\n * Defines the text that will be displayed below the `text` inside the growing button.\nHas no effect when mode is set to Scroll.\n */\n subtext = input<typeof _TableGrowing.prototype.subtext | undefined>();\n\n /**\n * Defines the text that will be displayed inside the growing button.\nHas no effect when mode is set to `Scroll`.\n\n**Note:** When not provided and the mode is set to Button, a default text is displayed, corresponding to the\ncurrent language.\n */\n text = input<typeof _TableGrowing.prototype.text | undefined>(); // className is now passed\n\n\n\n /**\n * Fired when the growing button is pressed or the user scrolls to the end of the table.\n */\n ui5LoadMore = output<UI5CustomEvent<_TableGrowing, 'load-more'>>();\n\n\n public elementRef: ElementRef<_TableGrowing> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableGrowing {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'mode',\n 'subtext',\n 'text',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5LoadMore',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-growing.mjs","sources":["../../../../libs/ui5-webcomponents/table-growing/index.ts","../../../../libs/ui5-webcomponents/table-growing/fundamental-ngx-ui5-webcomponents-table-growing.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal,\n DestroyRef\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableGrowing.js';\nimport { default as _TableGrowing } from '@ui5/webcomponents/dist/TableGrowing.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\nimport { default as TableGrowingMode } from '@ui5/webcomponents/dist/types/TableGrowingMode.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-table-growing, [ui5-table-growing]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableGrowing',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableGrowing implements AfterViewInit {\n\n /**\n * Defines the mode of the <code>ui5-table</code> growing.\n\nAvailable options are:\n\nButton - Shows a More button at the bottom of the table, pressing it will load more rows.\n\nScroll - The rows are loaded automatically by scrolling to the bottom of the table. If the table is not scrollable,\na growing button will be rendered instead to ensure growing functionality.\n */\n mode = input<typeof _TableGrowing.prototype.mode | undefined>(\"Button\");\n\n /**\n * Defines the text that will be displayed below the `text` inside the growing button.\nHas no effect when mode is set to Scroll.\n */\n subtext = input<typeof _TableGrowing.prototype.subtext | undefined>();\n\n /**\n * Defines the text that will be displayed inside the growing button.\nHas no effect when mode is set to `Scroll`.\n\n**Note:** When not provided and the mode is set to Button, a default text is displayed, corresponding to the\ncurrent language.\n */\n text = input<typeof _TableGrowing.prototype.text | undefined>(); // className is now passed\n\n\n\n /**\n * Fired when the growing button is pressed or the user scrolls to the end of the table.\n */\n ui5LoadMore = output<UI5CustomEvent<_TableGrowing, 'load-more'>>();\n\n\n public elementRef: ElementRef<_TableGrowing> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n private readonly _destroyRef = inject(DestroyRef);\n\n get element(): _TableGrowing {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'mode',\n 'subtext',\n 'text',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, (): void => {\n effect((): void => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5LoadMore',\n ];\n \n // Synchronize outputs (events)\n const _listeners: Array<() => void> = [];\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n const listener = (e: Event): void => {\n\n this[outputName].emit(e as CustomEvent<any>);\n };\n wcElement.addEventListener(eventName, listener);\n _listeners.push(() => wcElement.removeEventListener(eventName, listener));\n }\n }\n this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));\n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAyCa,YAAY,CAAA;AAZzB,IAAA,WAAA,GAAA;AAcE;;;;;;;;;AASG;QACH,IAAA,CAAA,IAAI,GAAG,KAAK,CAAkD,QAAQ;iFAAC;AAEvE;;;AAGG;AACH,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK;+FAAsD;AAErE;;;;;;AAMG;AACH,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK;AAAmD,QAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAA,CAAC;AAIhE;;AAEG;QACH,IAAA,CAAA,WAAW,GAAG,MAAM,EAA8C;AAG3D,QAAA,IAAA,CAAA,UAAU,GAA8B,MAAM,CAAC,UAAU,CAAC;AAC1D,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAElC;;;;AAIG;AACc,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,sBAAsB,CAAC;AACxD,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAiElD,IAAA;AA/DC,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa;IACtC;IAEA,eAAe,GAAA;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;AAE9B,QAAA,MAAM,YAAY,GAAG;YACnB,MAAM;YACN,SAAS;YACT,MAAM;SACP;;AAGD,QAAA,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE;;YAEpC,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;;AAG9E,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,UAAU,EAAE;AAC9D,gBAAA,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAW;oBAC9C,MAAM,CAAC,MAAW;;AAEhB,wBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE;wBAChC,IAAI,SAAS,EAAE;;;4BAGb,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE;gCAC/C;4BACF;;AAEA,4BAAA,SAAS,CAAC,SAAS,CAAC,GAAG,KAAK;wBAC9B;AACF,oBAAA,CAAC,CAAC;AACJ,gBAAA,CAAC,CAAC;YACJ;QACF;AAGA,QAAA,MAAM,aAAa,GAAG;YACpB,aAAa;SACd;;QAGD,MAAM,UAAU,GAAsB,EAAE;AACxC,QAAA,KAAK,MAAM,UAAU,IAAI,aAAa,EAAE;;YAEtC,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;;AAErG,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,SAAS,CAAC,gBAAgB,EAAE;;AAEjG,gBAAA,MAAM,QAAQ,GAAG,CAAC,CAAQ,KAAU;oBAElC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAqB,CAAC;AAC9C,gBAAA,CAAC;AACD,gBAAA,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC;AAC/C,gBAAA,UAAU,CAAC,IAAI,CAAC,MAAM,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC3E;QACF;QACA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAGpE;8GA9GW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wCAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EAPZ;AACT,YAAA,+BAA+B,CAAC;gBAC9B,uBAAuB,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI;aAC9E;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EANS,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAS1B,YAAY,EAAA,UAAA,EAAA,CAAA;kBAZxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,wCAAwC;AAClD,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,SAAS,EAAE;AACT,wBAAA,+BAA+B,CAAC;4BAC9B,uBAAuB,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI;yBAC9E;AACF,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;;ACxCD;;AAEG;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { output, inject, ElementRef, Injector, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { output, inject, ElementRef, Injector, DestroyRef, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
3
|
import '@ui5/webcomponents/dist/TableHeaderCellActionAI.js';
|
|
4
4
|
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
5
|
|
|
@@ -18,6 +18,7 @@ class TableHeaderCellActionAI {
|
|
|
18
18
|
* @private
|
|
19
19
|
*/
|
|
20
20
|
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
21
|
+
this._destroyRef = inject(DestroyRef);
|
|
21
22
|
}
|
|
22
23
|
get element() {
|
|
23
24
|
return this.elementRef.nativeElement;
|
|
@@ -28,17 +29,21 @@ class TableHeaderCellActionAI {
|
|
|
28
29
|
'ui5Click',
|
|
29
30
|
];
|
|
30
31
|
// Synchronize outputs (events)
|
|
32
|
+
const _listeners = [];
|
|
31
33
|
for (const outputName of outputsToSync) {
|
|
32
34
|
// Map Angular output name to UI5 web component event name
|
|
33
35
|
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
34
36
|
// Ensure the output property exists and has an emit function before adding listener
|
|
35
37
|
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
36
38
|
// Cast the listener to the correct type to satisfy TypeScript
|
|
37
|
-
|
|
39
|
+
const listener = (e) => {
|
|
38
40
|
this[outputName].emit(e);
|
|
39
|
-
}
|
|
41
|
+
};
|
|
42
|
+
wcElement.addEventListener(eventName, listener);
|
|
43
|
+
_listeners.push(() => wcElement.removeEventListener(eventName, listener));
|
|
40
44
|
}
|
|
41
45
|
}
|
|
46
|
+
this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));
|
|
42
47
|
}
|
|
43
48
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TableHeaderCellActionAI, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
49
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: TableHeaderCellActionAI, isStandalone: true, selector: "ui5-table-header-cell-action-ai, [ui5-table-header-cell-action-ai]", outputs: { ui5Click: "ui5Click" }, providers: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.mjs","sources":["../../../../libs/ui5-webcomponents/table-header-cell-action-a-i/index.ts","../../../../libs/ui5-webcomponents/table-header-cell-action-a-i/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableHeaderCellActionAI.js';\nimport { default as _TableHeaderCellActionAI } from '@ui5/webcomponents/dist/TableHeaderCellActionAI.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-header-cell-action-ai, [ui5-table-header-cell-action-ai]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableHeaderCellActionAI',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableHeaderCellActionAI implements AfterViewInit {\n // className is now passed\n\n\n\n /**\n * Fired when a header cell action is clicked.\n */\n ui5Click = output<UI5CustomEvent<_TableHeaderCellActionAI, 'click'>>();\n\n\n public elementRef: ElementRef<_TableHeaderCellActionAI> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableHeaderCellActionAI {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n \n \n const outputsToSync = [\n 'ui5Click',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.mjs","sources":["../../../../libs/ui5-webcomponents/table-header-cell-action-a-i/index.ts","../../../../libs/ui5-webcomponents/table-header-cell-action-a-i/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal,\n DestroyRef\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableHeaderCellActionAI.js';\nimport { default as _TableHeaderCellActionAI } from '@ui5/webcomponents/dist/TableHeaderCellActionAI.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-header-cell-action-ai, [ui5-table-header-cell-action-ai]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableHeaderCellActionAI',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableHeaderCellActionAI implements AfterViewInit {\n // className is now passed\n\n\n\n /**\n * Fired when a header cell action is clicked.\n */\n ui5Click = output<UI5CustomEvent<_TableHeaderCellActionAI, 'click'>>();\n\n\n public elementRef: ElementRef<_TableHeaderCellActionAI> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n private readonly _destroyRef = inject(DestroyRef);\n\n get element(): _TableHeaderCellActionAI {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n \n \n const outputsToSync = [\n 'ui5Click',\n ];\n \n // Synchronize outputs (events)\n const _listeners: Array<() => void> = [];\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n const listener = (e: Event): void => {\n\n this[outputName].emit(e as CustomEvent<any>);\n };\n wcElement.addEventListener(eventName, listener);\n _listeners.push(() => wcElement.removeEventListener(eventName, listener));\n }\n }\n this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));\n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAyCa,uBAAuB,CAAA;AAZpC,IAAA,WAAA,GAAA;;AAiBE;;AAEG;QACH,IAAA,CAAA,QAAQ,GAAG,MAAM,EAAqD;AAG/D,QAAA,IAAA,CAAA,UAAU,GAAyC,MAAM,CAAC,UAAU,CAAC;AACrE,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAElC;;;;AAIG;AACc,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,sBAAsB,CAAC;AACxD,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAmClD,IAAA;AAjCC,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa;IACtC;IAEA,eAAe,GAAA;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;AAI9B,QAAA,MAAM,aAAa,GAAG;YACpB,UAAU;SACX;;QAGD,MAAM,UAAU,GAAsB,EAAE;AACxC,QAAA,KAAK,MAAM,UAAU,IAAI,aAAa,EAAE;;YAEtC,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;;AAErG,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,SAAS,CAAC,gBAAgB,EAAE;;AAEjG,gBAAA,MAAM,QAAQ,GAAG,CAAC,CAAQ,KAAU;oBAElC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAqB,CAAC;AAC9C,gBAAA,CAAC;AACD,gBAAA,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC;AAC/C,gBAAA,UAAU,CAAC,IAAI,CAAC,MAAM,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC3E;QACF;QACA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAGpE;8GAtDW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oEAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAPvB;AACT,YAAA,+BAA+B,CAAC;gBAC9B,uBAAuB,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI;aAC9E;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,4BAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EANS,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAS1B,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAZnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oEAAoE;AAC9E,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,SAAS,EAAE;AACT,wBAAA,+BAA+B,CAAC;4BAC9B,uBAAuB,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI;yBAC9E;AACF,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;;ACxCD;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-header-cell.mjs","sources":["../../../../libs/ui5-webcomponents/table-header-cell/index.ts","../../../../libs/ui5-webcomponents/table-header-cell/fundamental-ngx-ui5-webcomponents-table-header-cell.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableHeaderCell.js';\nimport { default as _TableHeaderCell } from '@ui5/webcomponents/dist/TableHeaderCell.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\nimport { default as TableCellHorizontalAlign } from '@ui5/webcomponents/dist/types/TableCellHorizontalAlign.js';\nimport { default as SortOrder } from '@ui5/webcomponents-base/dist/types/SortOrder.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-table-header-cell, [ui5-table-header-cell]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableHeaderCell',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableHeaderCell implements AfterViewInit {\n\n /**\n * Determines the horizontal alignment of table cells.\n */\n horizontalAlign = input<typeof _TableHeaderCell.prototype.horizontalAlign | undefined>();\n\n /**\n * Defines the importance of the column.\n\nThis property affects the popin behaviour.\nColumns with higher importance will move into the popin area later then less important\ncolumns.\n */\n importance = input<typeof _TableHeaderCell.prototype.importance | undefined>(0);\n\n /**\n * Defines the minimum width of the column.\n\nIf the table is in `Popin` mode and the minimum width does not fit anymore,\nthe column will move into the popin.\n\nBy default, the table prevents the column from becoming too small.\nChanging this value to a small value might lead to accessibility issues.\n\n**Note:** This property only takes effect for columns with a [\\<percentage\\>](https://developer.mozilla.org/en-US/docs/Web/CSS/percentage) value\nor the default width.\n */\n minWidth = input<typeof _TableHeaderCell.prototype.minWidth | undefined>();\n\n /**\n * Defines if the column is hidden in the popin.\n\n**Note:** Please be aware that hiding the column in the popin might lead to accessibility issues as\nusers might not be able to access the content of the column on small screens.\n */\n popinHidden = input(false, { transform: booleanAttribute });\n\n /**\n * The text for the column when it pops in.\n */\n popinText = input<typeof _TableHeaderCell.prototype.popinText | undefined>();\n\n /**\n * Defines the sort indicator of the column.\n */\n sortIndicator = input<typeof _TableHeaderCell.prototype.sortIndicator | undefined>(\"None\");\n\n /**\n * Defines the width of the column.\n\nBy default, the column will grow and shrink according to the available space.\nThis will distribute the space proportionally among all columns with no specific width set.\n\nSee [\\<length\\>](https://developer.mozilla.org/en-US/docs/Web/CSS/length) and\n[\\<percentage\\>](https://developer.mozilla.org/en-US/docs/Web/CSS/percentage) for possible width values.\n */\n width = input<typeof _TableHeaderCell.prototype.width | undefined>(); // className is now passed\n\n\n\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **action**: Defines the action of the column.\n\n**Note:** While multiple actions are technically possible, this is not supported.\n * - **(default)**: Defines the content of the component.\n *\n * @example\n * ```html\n * <ui5-table-header-cell>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-table-header-cell>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"action\",\n \"description\": \"Defines the action of the column.\\n\\n**Note:** While multiple actions are technically possible, this is not supported.\",\n \"since\": \"2.8.0\"\n },\n {\n \"name\": \"default\",\n \"description\": \"Defines the content of the component.\"\n }\n ];\n\n\n public elementRef: ElementRef<_TableHeaderCell> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableHeaderCell {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'horizontalAlign',\n 'importance',\n 'minWidth',\n 'popinHidden',\n 'popinText',\n 'sortIndicator',\n 'width',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n \n\n }\n}\n\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-ui5-webcomponents-table-header-cell.mjs","sources":["../../../../libs/ui5-webcomponents/table-header-cell/index.ts","../../../../libs/ui5-webcomponents/table-header-cell/fundamental-ngx-ui5-webcomponents-table-header-cell.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableHeaderCell.js';\nimport { default as _TableHeaderCell } from '@ui5/webcomponents/dist/TableHeaderCell.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\nimport { default as TableCellHorizontalAlign } from '@ui5/webcomponents/dist/types/TableCellHorizontalAlign.js';\nimport { default as SortOrder } from '@ui5/webcomponents-base/dist/types/SortOrder.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-table-header-cell, [ui5-table-header-cell]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableHeaderCell',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableHeaderCell implements AfterViewInit {\n\n /**\n * Determines the horizontal alignment of table cells.\n */\n horizontalAlign = input<typeof _TableHeaderCell.prototype.horizontalAlign | undefined>();\n\n /**\n * Defines the importance of the column.\n\nThis property affects the popin behaviour.\nColumns with higher importance will move into the popin area later then less important\ncolumns.\n */\n importance = input<typeof _TableHeaderCell.prototype.importance | undefined>(0);\n\n /**\n * Defines the minimum width of the column.\n\nIf the table is in `Popin` mode and the minimum width does not fit anymore,\nthe column will move into the popin.\n\nBy default, the table prevents the column from becoming too small.\nChanging this value to a small value might lead to accessibility issues.\n\n**Note:** This property only takes effect for columns with a [\\<percentage\\>](https://developer.mozilla.org/en-US/docs/Web/CSS/percentage) value\nor the default width.\n */\n minWidth = input<typeof _TableHeaderCell.prototype.minWidth | undefined>();\n\n /**\n * Defines if the column is hidden in the popin.\n\n**Note:** Please be aware that hiding the column in the popin might lead to accessibility issues as\nusers might not be able to access the content of the column on small screens.\n */\n popinHidden = input(false, { transform: booleanAttribute });\n\n /**\n * The text for the column when it pops in.\n */\n popinText = input<typeof _TableHeaderCell.prototype.popinText | undefined>();\n\n /**\n * Defines the sort indicator of the column.\n */\n sortIndicator = input<typeof _TableHeaderCell.prototype.sortIndicator | undefined>(\"None\");\n\n /**\n * Defines the width of the column.\n\nBy default, the column will grow and shrink according to the available space.\nThis will distribute the space proportionally among all columns with no specific width set.\n\nSee [\\<length\\>](https://developer.mozilla.org/en-US/docs/Web/CSS/length) and\n[\\<percentage\\>](https://developer.mozilla.org/en-US/docs/Web/CSS/percentage) for possible width values.\n */\n width = input<typeof _TableHeaderCell.prototype.width | undefined>(); // className is now passed\n\n\n\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **action**: Defines the action of the column.\n\n**Note:** While multiple actions are technically possible, this is not supported.\n * - **(default)**: Defines the content of the component.\n *\n * @example\n * ```html\n * <ui5-table-header-cell>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-table-header-cell>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"action\",\n \"description\": \"Defines the action of the column.\\n\\n**Note:** While multiple actions are technically possible, this is not supported.\",\n \"since\": \"2.8.0\"\n },\n {\n \"name\": \"default\",\n \"description\": \"Defines the content of the component.\"\n }\n ];\n\n\n public elementRef: ElementRef<_TableHeaderCell> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableHeaderCell {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'horizontalAlign',\n 'importance',\n 'minWidth',\n 'popinHidden',\n 'popinText',\n 'sortIndicator',\n 'width',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, (): void => {\n effect((): void => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-header-row.mjs","sources":["../../../../libs/ui5-webcomponents/table-header-row/index.ts","../../../../libs/ui5-webcomponents/table-header-row/fundamental-ngx-ui5-webcomponents-table-header-row.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableHeaderRow.js';\nimport { default as _TableHeaderRow } from '@ui5/webcomponents/dist/TableHeaderRow.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-header-row, [ui5-table-header-row]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableHeaderRow',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableHeaderRow implements AfterViewInit {\n\n /**\n * Sticks the `ui5-table-header-row` to the top of a table.\n\nNote: If used in combination with overflowMode \"Scroll\", the table needs a defined height for the sticky header to work as expected.\n */\n sticky = input(false, { transform: booleanAttribute }); // className is now passed\n\n\n\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **(default)**: Defines the cells of the component.\n\n**Note:** Use `ui5-table-header-cell` for the intended design.\n *\n * @example\n * ```html\n * <ui5-table-header-row>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-table-header-row>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"default\",\n \"description\": \"Defines the cells of the component.\\n\\n**Note:** Use `ui5-table-header-cell` for the intended design.\"\n }\n ];\n\n\n public elementRef: ElementRef<_TableHeaderRow> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableHeaderRow {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'sticky',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-header-row.mjs","sources":["../../../../libs/ui5-webcomponents/table-header-row/index.ts","../../../../libs/ui5-webcomponents/table-header-row/fundamental-ngx-ui5-webcomponents-table-header-row.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableHeaderRow.js';\nimport { default as _TableHeaderRow } from '@ui5/webcomponents/dist/TableHeaderRow.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-header-row, [ui5-table-header-row]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableHeaderRow',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableHeaderRow implements AfterViewInit {\n\n /**\n * Sticks the `ui5-table-header-row` to the top of a table.\n\nNote: If used in combination with overflowMode \"Scroll\", the table needs a defined height for the sticky header to work as expected.\n */\n sticky = input(false, { transform: booleanAttribute }); // className is now passed\n\n\n\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **(default)**: Defines the cells of the component.\n\n**Note:** Use `ui5-table-header-cell` for the intended design.\n *\n * @example\n * ```html\n * <ui5-table-header-row>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-table-header-row>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"default\",\n \"description\": \"Defines the cells of the component.\\n\\n**Note:** Use `ui5-table-header-cell` for the intended design.\"\n }\n ];\n\n\n public elementRef: ElementRef<_TableHeaderRow> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableHeaderRow {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'sticky',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, (): void => {\n effect((): void => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, booleanAttribute, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, output, inject, ElementRef, Injector, DestroyRef, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
3
|
import '@ui5/webcomponents/dist/TableRowActionNavigation.js';
|
|
4
4
|
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
5
|
|
|
@@ -27,6 +27,7 @@ class TableRowActionNavigation {
|
|
|
27
27
|
* @private
|
|
28
28
|
*/
|
|
29
29
|
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
30
|
+
this._destroyRef = inject(DestroyRef);
|
|
30
31
|
}
|
|
31
32
|
get element() {
|
|
32
33
|
return this.elementRef.nativeElement;
|
|
@@ -64,17 +65,21 @@ class TableRowActionNavigation {
|
|
|
64
65
|
'ui5Click',
|
|
65
66
|
];
|
|
66
67
|
// Synchronize outputs (events)
|
|
68
|
+
const _listeners = [];
|
|
67
69
|
for (const outputName of outputsToSync) {
|
|
68
70
|
// Map Angular output name to UI5 web component event name
|
|
69
71
|
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
70
72
|
// Ensure the output property exists and has an emit function before adding listener
|
|
71
73
|
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
72
74
|
// Cast the listener to the correct type to satisfy TypeScript
|
|
73
|
-
|
|
75
|
+
const listener = (e) => {
|
|
74
76
|
this[outputName].emit(e);
|
|
75
|
-
}
|
|
77
|
+
};
|
|
78
|
+
wcElement.addEventListener(eventName, listener);
|
|
79
|
+
_listeners.push(() => wcElement.removeEventListener(eventName, listener));
|
|
76
80
|
}
|
|
77
81
|
}
|
|
82
|
+
this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));
|
|
78
83
|
}
|
|
79
84
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TableRowActionNavigation, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
85
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.5", type: TableRowActionNavigation, isStandalone: true, selector: "ui5-table-row-action-navigation, [ui5-table-row-action-navigation]", inputs: { interactive: { classPropertyName: "interactive", publicName: "interactive", isSignal: true, isRequired: false, transformFunction: null }, invisible: { classPropertyName: "invisible", publicName: "invisible", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Click: "ui5Click" }, providers: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-row-action-navigation.mjs","sources":["../../../../libs/ui5-webcomponents/table-row-action-navigation/index.ts","../../../../libs/ui5-webcomponents/table-row-action-navigation/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableRowActionNavigation.js';\nimport { default as _TableRowActionNavigation } from '@ui5/webcomponents/dist/TableRowActionNavigation.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-row-action-navigation, [ui5-table-row-action-navigation]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableRowActionNavigation',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableRowActionNavigation implements AfterViewInit {\n\n /**\n * Defines the interactive state of the navigation action.\n */\n interactive = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the visibility of the row action.\n\n**Note:** Invisible row actions still take up space, allowing to hide the action while maintaining its position.\n */\n invisible = input(false, { transform: booleanAttribute }); // className is now passed\n\n\n\n /**\n * Fired when a row action is clicked.\n */\n ui5Click = output<UI5CustomEvent<_TableRowActionNavigation, 'click'>>();\n\n\n public elementRef: ElementRef<_TableRowActionNavigation> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableRowActionNavigation {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'interactive',\n 'invisible',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Click',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-row-action-navigation.mjs","sources":["../../../../libs/ui5-webcomponents/table-row-action-navigation/index.ts","../../../../libs/ui5-webcomponents/table-row-action-navigation/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal,\n DestroyRef\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableRowActionNavigation.js';\nimport { default as _TableRowActionNavigation } from '@ui5/webcomponents/dist/TableRowActionNavigation.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-row-action-navigation, [ui5-table-row-action-navigation]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableRowActionNavigation',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableRowActionNavigation implements AfterViewInit {\n\n /**\n * Defines the interactive state of the navigation action.\n */\n interactive = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the visibility of the row action.\n\n**Note:** Invisible row actions still take up space, allowing to hide the action while maintaining its position.\n */\n invisible = input(false, { transform: booleanAttribute }); // className is now passed\n\n\n\n /**\n * Fired when a row action is clicked.\n */\n ui5Click = output<UI5CustomEvent<_TableRowActionNavigation, 'click'>>();\n\n\n public elementRef: ElementRef<_TableRowActionNavigation> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n private readonly _destroyRef = inject(DestroyRef);\n\n get element(): _TableRowActionNavigation {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'interactive',\n 'invisible',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, (): void => {\n effect((): void => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Click',\n ];\n \n // Synchronize outputs (events)\n const _listeners: Array<() => void> = [];\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n const listener = (e: Event): void => {\n\n this[outputName].emit(e as CustomEvent<any>);\n };\n wcElement.addEventListener(eventName, listener);\n _listeners.push(() => wcElement.removeEventListener(eventName, listener));\n }\n }\n this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));\n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAyCa,wBAAwB,CAAA;AAZrC,IAAA,WAAA,GAAA;AAcE;;AAEG;QACH,IAAA,CAAA,WAAW,GAAG,KAAK,CAAC,KAAK,mFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAE3D;;;;AAIG;QACH,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,KAAK,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,WAAA,EAAA,8BAAA,EAAA,CAAA,EAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG,CAAC;AAI1D;;AAEG;QACH,IAAA,CAAA,QAAQ,GAAG,MAAM,EAAsD;AAGhE,QAAA,IAAA,CAAA,UAAU,GAA0C,MAAM,CAAC,UAAU,CAAC;AACtE,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAElC;;;;AAIG;AACc,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,sBAAsB,CAAC;AACxD,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAgElD,IAAA;AA9DC,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa;IACtC;IAEA,eAAe,GAAA;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;AAE9B,QAAA,MAAM,YAAY,GAAG;YACnB,aAAa;YACb,WAAW;SACZ;;AAGD,QAAA,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE;;YAEpC,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;;AAG9E,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,UAAU,EAAE;AAC9D,gBAAA,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAW;oBAC9C,MAAM,CAAC,MAAW;;AAEhB,wBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE;wBAChC,IAAI,SAAS,EAAE;;;4BAGb,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE;gCAC/C;4BACF;;AAEA,4BAAA,SAAS,CAAC,SAAS,CAAC,GAAG,KAAK;wBAC9B;AACF,oBAAA,CAAC,CAAC;AACJ,gBAAA,CAAC,CAAC;YACJ;QACF;AAGA,QAAA,MAAM,aAAa,GAAG;YACpB,UAAU;SACX;;QAGD,MAAM,UAAU,GAAsB,EAAE;AACxC,QAAA,KAAK,MAAM,UAAU,IAAI,aAAa,EAAE;;YAEtC,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;;AAErG,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,SAAS,CAAC,gBAAgB,EAAE;;AAEjG,gBAAA,MAAM,QAAQ,GAAG,CAAC,CAAQ,KAAU;oBAElC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAqB,CAAC;AAC9C,gBAAA,CAAC;AACD,gBAAA,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC;AAC/C,gBAAA,UAAU,CAAC,IAAI,CAAC,MAAM,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC3E;QACF;QACA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAGpE;8GA9FW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oEAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAPxB;AACT,YAAA,+BAA+B,CAAC;gBAC9B,uBAAuB,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI;aAC9E;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,6BAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EANS,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAS1B,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAZpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oEAAoE;AAC9E,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,6BAA6B;AACvC,oBAAA,SAAS,EAAE;AACT,wBAAA,+BAA+B,CAAC;4BAC9B,uBAAuB,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI;yBAC9E;AACF,qBAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;;ACxCD;;AAEG;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, booleanAttribute, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, output, inject, ElementRef, Injector, DestroyRef, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
3
|
import '@ui5/webcomponents/dist/TableRowAction.js';
|
|
4
4
|
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
5
|
|
|
@@ -40,6 +40,7 @@ class TableRowAction {
|
|
|
40
40
|
* @private
|
|
41
41
|
*/
|
|
42
42
|
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
43
|
+
this._destroyRef = inject(DestroyRef);
|
|
43
44
|
}
|
|
44
45
|
get element() {
|
|
45
46
|
return this.elementRef.nativeElement;
|
|
@@ -78,17 +79,21 @@ class TableRowAction {
|
|
|
78
79
|
'ui5Click',
|
|
79
80
|
];
|
|
80
81
|
// Synchronize outputs (events)
|
|
82
|
+
const _listeners = [];
|
|
81
83
|
for (const outputName of outputsToSync) {
|
|
82
84
|
// Map Angular output name to UI5 web component event name
|
|
83
85
|
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
84
86
|
// Ensure the output property exists and has an emit function before adding listener
|
|
85
87
|
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
86
88
|
// Cast the listener to the correct type to satisfy TypeScript
|
|
87
|
-
|
|
89
|
+
const listener = (e) => {
|
|
88
90
|
this[outputName].emit(e);
|
|
89
|
-
}
|
|
91
|
+
};
|
|
92
|
+
wcElement.addEventListener(eventName, listener);
|
|
93
|
+
_listeners.push(() => wcElement.removeEventListener(eventName, listener));
|
|
90
94
|
}
|
|
91
95
|
}
|
|
96
|
+
this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));
|
|
92
97
|
}
|
|
93
98
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TableRowAction, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
94
99
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.5", type: TableRowAction, isStandalone: true, selector: "ui5-table-row-action, [ui5-table-row-action]", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, invisible: { classPropertyName: "invisible", publicName: "invisible", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Click: "ui5Click" }, providers: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-row-action.mjs","sources":["../../../../libs/ui5-webcomponents/table-row-action/index.ts","../../../../libs/ui5-webcomponents/table-row-action/fundamental-ngx-ui5-webcomponents-table-row-action.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableRowAction.js';\nimport { default as _TableRowAction } from '@ui5/webcomponents/dist/TableRowAction.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-row-action, [ui5-table-row-action]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableRowAction',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableRowAction implements AfterViewInit {\n\n /**\n * Defines the icon of the row action.\n\n**Note:** For row actions to work properly, this property is mandatory.\n\n**Note:** SAP-icons font provides numerous built-in icons. To find all the available icons, see the\n[Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n */\n icon = input<typeof _TableRowAction.prototype.icon | undefined>(\"\");\n\n /**\n * Defines the visibility of the row action.\n\n**Note:** Invisible row actions still take up space, allowing to hide the action while maintaining its position.\n */\n invisible = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the text of the row action.\n\n**Note:** For row actions to work properly, this property is mandatory.\n */\n text = input<typeof _TableRowAction.prototype.text | undefined>(\"\"); // className is now passed\n\n\n\n /**\n * Fired when a row action is clicked.\n */\n ui5Click = output<UI5CustomEvent<_TableRowAction, 'click'>>();\n\n\n public elementRef: ElementRef<_TableRowAction> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableRowAction {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'icon',\n 'invisible',\n 'text',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Click',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-row-action.mjs","sources":["../../../../libs/ui5-webcomponents/table-row-action/index.ts","../../../../libs/ui5-webcomponents/table-row-action/fundamental-ngx-ui5-webcomponents-table-row-action.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal,\n DestroyRef\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableRowAction.js';\nimport { default as _TableRowAction } from '@ui5/webcomponents/dist/TableRowAction.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-row-action, [ui5-table-row-action]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableRowAction',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableRowAction implements AfterViewInit {\n\n /**\n * Defines the icon of the row action.\n\n**Note:** For row actions to work properly, this property is mandatory.\n\n**Note:** SAP-icons font provides numerous built-in icons. To find all the available icons, see the\n[Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n */\n icon = input<typeof _TableRowAction.prototype.icon | undefined>(\"\");\n\n /**\n * Defines the visibility of the row action.\n\n**Note:** Invisible row actions still take up space, allowing to hide the action while maintaining its position.\n */\n invisible = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the text of the row action.\n\n**Note:** For row actions to work properly, this property is mandatory.\n */\n text = input<typeof _TableRowAction.prototype.text | undefined>(\"\"); // className is now passed\n\n\n\n /**\n * Fired when a row action is clicked.\n */\n ui5Click = output<UI5CustomEvent<_TableRowAction, 'click'>>();\n\n\n public elementRef: ElementRef<_TableRowAction> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n private readonly _destroyRef = inject(DestroyRef);\n\n get element(): _TableRowAction {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'icon',\n 'invisible',\n 'text',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, (): void => {\n effect((): void => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Click',\n ];\n \n // Synchronize outputs (events)\n const _listeners: Array<() => void> = [];\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n const listener = (e: Event): void => {\n\n this[outputName].emit(e as CustomEvent<any>);\n };\n wcElement.addEventListener(eventName, listener);\n _listeners.push(() => wcElement.removeEventListener(eventName, listener));\n }\n }\n this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));\n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-row.mjs","sources":["../../../../libs/ui5-webcomponents/table-row/index.ts","../../../../libs/ui5-webcomponents/table-row/fundamental-ngx-ui5-webcomponents-table-row.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableRow.js';\nimport { default as _TableRow } from '@ui5/webcomponents/dist/TableRow.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-row, [ui5-table-row]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableRow',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableRow implements AfterViewInit {\n\n /**\n * Defines the interactive state of the row.\n */\n interactive = input(false, { transform: booleanAttribute });\n\n /**\n * Defines whether the row is movable.\n */\n movable = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the navigated state of the row.\n */\n navigated = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the 0-based position of the row related to the total number of rows within the table when the `ui5-table-virtualizer` feature is used.\n */\n position = input<typeof _TableRow.prototype.position | undefined>();\n\n /**\n * Unique identifier of the row.\n\n**Note:** For selection features to work properly, this property is mandatory, and its value must not contain spaces.\n */\n rowKey = input<typeof _TableRow.prototype.rowKey | undefined>(); // className is now passed\n\n\n\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **actions**: Defines the actions of the component.\n\n**Note:** Use `ui5-table-row-action` or `ui5-table-row-action-navigation` for the intended design.\n * - **(default)**: Defines the cells of the component.\n\n**Note:** Use `ui5-table-cell` for the intended design.\n *\n * @example\n * ```html\n * <ui5-table-row>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-table-row>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"actions\",\n \"description\": \"Defines the actions of the component.\\n\\n**Note:** Use `ui5-table-row-action` or `ui5-table-row-action-navigation` for the intended design.\",\n \"since\": \"2.7.0\"\n },\n {\n \"name\": \"default\",\n \"description\": \"Defines the cells of the component.\\n\\n**Note:** Use `ui5-table-cell` for the intended design.\"\n }\n ];\n\n\n public elementRef: ElementRef<_TableRow> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableRow {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'interactive',\n 'movable',\n 'navigated',\n 'position',\n 'rowKey',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-row.mjs","sources":["../../../../libs/ui5-webcomponents/table-row/index.ts","../../../../libs/ui5-webcomponents/table-row/fundamental-ngx-ui5-webcomponents-table-row.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableRow.js';\nimport { default as _TableRow } from '@ui5/webcomponents/dist/TableRow.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\n\n\n@Component({\n standalone: true,\n selector: 'ui5-table-row, [ui5-table-row]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableRow',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableRow implements AfterViewInit {\n\n /**\n * Defines the interactive state of the row.\n */\n interactive = input(false, { transform: booleanAttribute });\n\n /**\n * Defines whether the row is movable.\n */\n movable = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the navigated state of the row.\n */\n navigated = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the 0-based position of the row related to the total number of rows within the table when the `ui5-table-virtualizer` feature is used.\n */\n position = input<typeof _TableRow.prototype.position | undefined>();\n\n /**\n * Unique identifier of the row.\n\n**Note:** For selection features to work properly, this property is mandatory, and its value must not contain spaces.\n */\n rowKey = input<typeof _TableRow.prototype.rowKey | undefined>(); // className is now passed\n\n\n\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **actions**: Defines the actions of the component.\n\n**Note:** Use `ui5-table-row-action` or `ui5-table-row-action-navigation` for the intended design.\n * - **(default)**: Defines the cells of the component.\n\n**Note:** Use `ui5-table-cell` for the intended design.\n *\n * @example\n * ```html\n * <ui5-table-row>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-table-row>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"actions\",\n \"description\": \"Defines the actions of the component.\\n\\n**Note:** Use `ui5-table-row-action` or `ui5-table-row-action-navigation` for the intended design.\",\n \"since\": \"2.7.0\"\n },\n {\n \"name\": \"default\",\n \"description\": \"Defines the cells of the component.\\n\\n**Note:** Use `ui5-table-cell` for the intended design.\"\n }\n ];\n\n\n public elementRef: ElementRef<_TableRow> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableRow {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'interactive',\n 'movable',\n 'navigated',\n 'position',\n 'rowKey',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, (): void => {\n effect((): void => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { input, output, inject, ElementRef, Injector, DestroyRef, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
3
|
import '@ui5/webcomponents/dist/TableSelectionMulti.js';
|
|
4
4
|
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
5
|
|
|
@@ -32,6 +32,7 @@ class TableSelectionMulti {
|
|
|
32
32
|
* @private
|
|
33
33
|
*/
|
|
34
34
|
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
35
|
+
this._destroyRef = inject(DestroyRef);
|
|
35
36
|
}
|
|
36
37
|
get element() {
|
|
37
38
|
return this.elementRef.nativeElement;
|
|
@@ -70,17 +71,21 @@ class TableSelectionMulti {
|
|
|
70
71
|
'ui5Change',
|
|
71
72
|
];
|
|
72
73
|
// Synchronize outputs (events)
|
|
74
|
+
const _listeners = [];
|
|
73
75
|
for (const outputName of outputsToSync) {
|
|
74
76
|
// Map Angular output name to UI5 web component event name
|
|
75
77
|
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
76
78
|
// Ensure the output property exists and has an emit function before adding listener
|
|
77
79
|
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
78
80
|
// Cast the listener to the correct type to satisfy TypeScript
|
|
79
|
-
|
|
81
|
+
const listener = (e) => {
|
|
80
82
|
this[outputName].emit(e);
|
|
81
|
-
}
|
|
83
|
+
};
|
|
84
|
+
wcElement.addEventListener(eventName, listener);
|
|
85
|
+
_listeners.push(() => wcElement.removeEventListener(eventName, listener));
|
|
82
86
|
}
|
|
83
87
|
}
|
|
88
|
+
this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));
|
|
84
89
|
}
|
|
85
90
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TableSelectionMulti, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
86
91
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.5", type: TableSelectionMulti, isStandalone: true, selector: "ui5-table-selection-multi, [ui5-table-selection-multi]", inputs: { behavior: { classPropertyName: "behavior", publicName: "behavior", isSignal: true, isRequired: false, transformFunction: null }, headerSelector: { classPropertyName: "headerSelector", publicName: "headerSelector", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Change: "ui5Change" }, providers: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-selection-multi.mjs","sources":["../../../../libs/ui5-webcomponents/table-selection-multi/index.ts","../../../../libs/ui5-webcomponents/table-selection-multi/fundamental-ngx-ui5-webcomponents-table-selection-multi.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableSelectionMulti.js';\nimport { default as _TableSelectionMulti } from '@ui5/webcomponents/dist/TableSelectionMulti.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\nimport { default as TableSelectionBehavior } from '@ui5/webcomponents/dist/types/TableSelectionBehavior.js';\nimport { default as TableSelectionMultiHeaderSelector } from '@ui5/webcomponents/dist/types/TableSelectionMultiHeaderSelector.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-table-selection-multi, [ui5-table-selection-multi]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableSelectionMulti',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableSelectionMulti implements AfterViewInit {\n\n /**\n * Defines the selection behavior.\n */\n behavior = input<typeof _TableSelectionMulti.prototype.behavior | undefined>(\"RowSelector\");\n\n /**\n * Defines the selector of the header row.\n */\n headerSelector = input<typeof _TableSelectionMulti.prototype.headerSelector | undefined>(\"SelectAll\");\n\n /**\n * Defines the `row-key` values of selected rows, with each value separated by a space.\n */\n selected = input<typeof _TableSelectionMulti.prototype.selected | undefined>(); // className is now passed\n\n\n\n /**\n * Fired when the selection is changed by user interaction.\n */\n ui5Change = output<UI5CustomEvent<_TableSelectionMulti, 'change'>>();\n\n\n public elementRef: ElementRef<_TableSelectionMulti> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableSelectionMulti {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'behavior',\n 'headerSelector',\n 'selected',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Change',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-selection-multi.mjs","sources":["../../../../libs/ui5-webcomponents/table-selection-multi/index.ts","../../../../libs/ui5-webcomponents/table-selection-multi/fundamental-ngx-ui5-webcomponents-table-selection-multi.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal,\n DestroyRef\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableSelectionMulti.js';\nimport { default as _TableSelectionMulti } from '@ui5/webcomponents/dist/TableSelectionMulti.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\nimport { default as TableSelectionBehavior } from '@ui5/webcomponents/dist/types/TableSelectionBehavior.js';\nimport { default as TableSelectionMultiHeaderSelector } from '@ui5/webcomponents/dist/types/TableSelectionMultiHeaderSelector.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-table-selection-multi, [ui5-table-selection-multi]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableSelectionMulti',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableSelectionMulti implements AfterViewInit {\n\n /**\n * Defines the selection behavior.\n */\n behavior = input<typeof _TableSelectionMulti.prototype.behavior | undefined>(\"RowSelector\");\n\n /**\n * Defines the selector of the header row.\n */\n headerSelector = input<typeof _TableSelectionMulti.prototype.headerSelector | undefined>(\"SelectAll\");\n\n /**\n * Defines the `row-key` values of selected rows, with each value separated by a space.\n */\n selected = input<typeof _TableSelectionMulti.prototype.selected | undefined>(); // className is now passed\n\n\n\n /**\n * Fired when the selection is changed by user interaction.\n */\n ui5Change = output<UI5CustomEvent<_TableSelectionMulti, 'change'>>();\n\n\n public elementRef: ElementRef<_TableSelectionMulti> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n private readonly _destroyRef = inject(DestroyRef);\n\n get element(): _TableSelectionMulti {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'behavior',\n 'headerSelector',\n 'selected',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, (): void => {\n effect((): void => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Change',\n ];\n \n // Synchronize outputs (events)\n const _listeners: Array<() => void> = [];\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n const listener = (e: Event): void => {\n\n this[outputName].emit(e as CustomEvent<any>);\n };\n wcElement.addEventListener(eventName, listener);\n _listeners.push(() => wcElement.removeEventListener(eventName, listener));\n }\n }\n this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));\n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { input, output, inject, ElementRef, Injector, DestroyRef, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
3
|
import '@ui5/webcomponents/dist/TableSelectionSingle.js';
|
|
4
4
|
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
5
|
|
|
@@ -27,6 +27,7 @@ class TableSelectionSingle {
|
|
|
27
27
|
* @private
|
|
28
28
|
*/
|
|
29
29
|
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
30
|
+
this._destroyRef = inject(DestroyRef);
|
|
30
31
|
}
|
|
31
32
|
get element() {
|
|
32
33
|
return this.elementRef.nativeElement;
|
|
@@ -64,17 +65,21 @@ class TableSelectionSingle {
|
|
|
64
65
|
'ui5Change',
|
|
65
66
|
];
|
|
66
67
|
// Synchronize outputs (events)
|
|
68
|
+
const _listeners = [];
|
|
67
69
|
for (const outputName of outputsToSync) {
|
|
68
70
|
// Map Angular output name to UI5 web component event name
|
|
69
71
|
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
70
72
|
// Ensure the output property exists and has an emit function before adding listener
|
|
71
73
|
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
72
74
|
// Cast the listener to the correct type to satisfy TypeScript
|
|
73
|
-
|
|
75
|
+
const listener = (e) => {
|
|
74
76
|
this[outputName].emit(e);
|
|
75
|
-
}
|
|
77
|
+
};
|
|
78
|
+
wcElement.addEventListener(eventName, listener);
|
|
79
|
+
_listeners.push(() => wcElement.removeEventListener(eventName, listener));
|
|
76
80
|
}
|
|
77
81
|
}
|
|
82
|
+
this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));
|
|
78
83
|
}
|
|
79
84
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TableSelectionSingle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
85
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.5", type: TableSelectionSingle, isStandalone: true, selector: "ui5-table-selection-single, [ui5-table-selection-single]", inputs: { behavior: { classPropertyName: "behavior", publicName: "behavior", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Change: "ui5Change" }, providers: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-selection-single.mjs","sources":["../../../../libs/ui5-webcomponents/table-selection-single/index.ts","../../../../libs/ui5-webcomponents/table-selection-single/fundamental-ngx-ui5-webcomponents-table-selection-single.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableSelectionSingle.js';\nimport { default as _TableSelectionSingle } from '@ui5/webcomponents/dist/TableSelectionSingle.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\nimport { default as TableSelectionBehavior } from '@ui5/webcomponents/dist/types/TableSelectionBehavior.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-table-selection-single, [ui5-table-selection-single]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableSelectionSingle',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableSelectionSingle implements AfterViewInit {\n\n /**\n * Defines the selection behavior.\n */\n behavior = input<typeof _TableSelectionSingle.prototype.behavior | undefined>(\"RowSelector\");\n\n /**\n * Defines the `row-key` value of the selected row.\n */\n selected = input<typeof _TableSelectionSingle.prototype.selected | undefined>(); // className is now passed\n\n\n\n /**\n * Fired when the selection is changed by user interaction.\n */\n ui5Change = output<UI5CustomEvent<_TableSelectionSingle, 'change'>>();\n\n\n public elementRef: ElementRef<_TableSelectionSingle> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _TableSelectionSingle {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'behavior',\n 'selected',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Change',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-table-selection-single.mjs","sources":["../../../../libs/ui5-webcomponents/table-selection-single/index.ts","../../../../libs/ui5-webcomponents/table-selection-single/fundamental-ngx-ui5-webcomponents-table-selection-single.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal,\n DestroyRef\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/TableSelectionSingle.js';\nimport { default as _TableSelectionSingle } from '@ui5/webcomponents/dist/TableSelectionSingle.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\n\nimport { default as TableSelectionBehavior } from '@ui5/webcomponents/dist/types/TableSelectionBehavior.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-table-selection-single, [ui5-table-selection-single]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5TableSelectionSingle',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TableSelectionSingle implements AfterViewInit {\n\n /**\n * Defines the selection behavior.\n */\n behavior = input<typeof _TableSelectionSingle.prototype.behavior | undefined>(\"RowSelector\");\n\n /**\n * Defines the `row-key` value of the selected row.\n */\n selected = input<typeof _TableSelectionSingle.prototype.selected | undefined>(); // className is now passed\n\n\n\n /**\n * Fired when the selection is changed by user interaction.\n */\n ui5Change = output<UI5CustomEvent<_TableSelectionSingle, 'change'>>();\n\n\n public elementRef: ElementRef<_TableSelectionSingle> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n private readonly _destroyRef = inject(DestroyRef);\n\n get element(): _TableSelectionSingle {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'behavior',\n 'selected',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, (): void => {\n effect((): void => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Skip writes when the signal is undefined and the property is already truthy\n // This prevents clobbering imperatively-set values (e.g., from RouterLink)\n if (value === undefined && wcElement[inputName]) {\n return;\n }\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Change',\n ];\n \n // Synchronize outputs (events)\n const _listeners: Array<() => void> = [];\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n const listener = (e: Event): void => {\n\n this[outputName].emit(e as CustomEvent<any>);\n };\n wcElement.addEventListener(eventName, listener);\n _listeners.push(() => wcElement.removeEventListener(eventName, listener));\n }\n }\n this._destroyRef.onDestroy(() => _listeners.forEach((fn) => fn()));\n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|