@fundamental-ngx/ui5-webcomponents 0.58.0-rc.1
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 +3 -0
- package/avatar/index.d.ts +101 -0
- package/avatar-group/index.d.ts +58 -0
- package/bar/index.d.ts +28 -0
- package/breadcrumbs/index.d.ts +33 -0
- package/breadcrumbs-item/index.d.ts +38 -0
- package/busy-indicator/index.d.ts +34 -0
- package/button/index.d.ts +117 -0
- package/button-badge/index.d.ts +29 -0
- package/calendar/index.d.ts +77 -0
- package/calendar-date/index.d.ts +19 -0
- package/calendar-date-range/index.d.ts +24 -0
- package/calendar-legend/index.d.ts +30 -0
- package/calendar-legend-item/index.d.ts +22 -0
- package/card/index.d.ts +32 -0
- package/card-header/index.d.ts +38 -0
- package/carousel/index.d.ts +88 -0
- package/check-box/index.d.ts +108 -0
- package/color-palette/index.d.ts +19 -0
- package/color-palette-item/index.d.ts +27 -0
- package/color-palette-popover/index.d.ts +51 -0
- package/color-picker/index.d.ts +35 -0
- package/combo-box/index.d.ts +102 -0
- package/combo-box-item/index.d.ts +22 -0
- package/combo-box-item-group/index.d.ts +49 -0
- package/date-picker/index.d.ts +143 -0
- package/date-range-picker/index.d.ts +163 -0
- package/date-time-picker/index.d.ts +143 -0
- package/dialog/index.d.ts +112 -0
- package/dynamic-date-range/index.d.ts +28 -0
- package/expandable-text/index.d.ts +30 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-group.mjs +121 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar.mjs +166 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-bar.mjs +71 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-bar.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs-item.mjs +82 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs.mjs +90 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-busy-indicator.mjs +80 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-busy-indicator.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-button-badge.mjs +72 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-button-badge.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-button.mjs +186 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-button.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date-range.mjs +67 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date-range.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date.mjs +61 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend-item.mjs +65 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend.mjs +75 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar.mjs +142 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-card-header.mjs +97 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-card-header.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-card.mjs +77 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-card.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-carousel.mjs +156 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-carousel.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-check-box.mjs +178 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-check-box.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-item.mjs +70 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-popover.mjs +113 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-popover.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette.mjs +55 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-picker.mjs +93 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-color-picker.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item-group.mjs +108 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item.mjs +65 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box.mjs +177 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-picker.mjs +227 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-picker.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-range-picker.mjs +254 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-range-picker.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-picker.mjs +227 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-picker.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-dialog.mjs +184 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-dialog.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-dynamic-date-range.mjs +85 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-dynamic-date-range.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-expandable-text.mjs +75 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-expandable-text.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-file-uploader.mjs +190 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-file-uploader.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form-group.mjs +82 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form-item.mjs +65 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form.mjs +134 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-form.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-icon.mjs +127 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-icon.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-input.mjs +210 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-input.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-label.mjs +85 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-label.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-link.mjs +192 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-link.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-custom.mjs +129 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-custom.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group.mjs +108 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-standard.mjs +179 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-standard.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list.mjs +240 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-list.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item-group.mjs +60 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item.mjs +202 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-separator.mjs +36 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-separator.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu.mjs +135 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-menu.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-message-strip.mjs +100 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-message-strip.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-group.mjs +108 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item.mjs +70 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box.mjs +184 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-input.mjs +229 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-input.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-option-custom.mjs +77 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-option-custom.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-option.mjs +85 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-option.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-panel.mjs +124 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-panel.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-popover.mjs +185 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-popover.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-progress-indicator.mjs +88 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-progress-indicator.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-radio-button.mjs +156 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-radio-button.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-range-slider.mjs +156 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-range-slider.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-rating-indicator.mjs +130 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-rating-indicator.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-responsive-popover.mjs +185 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-responsive-popover.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button-item.mjs +103 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button.mjs +135 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-select.mjs +204 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-select.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-slider.mjs +151 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-slider.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-special-calendar-date.mjs +66 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-special-calendar-date.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-split-button.mjs +132 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-split-button.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-step-input.mjs +157 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-step-input.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-custom.mjs +61 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-custom.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-group.mjs +108 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item.mjs +65 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-switch.mjs +154 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-switch.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-container.mjs +138 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-container.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-separator.mjs +36 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-separator.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab.mjs +102 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tab.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-cell.mjs +60 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-cell.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-growing.mjs +101 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-growing.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.mjs +55 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell.mjs +112 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-row.mjs +62 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-row.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.mjs +86 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action.mjs +98 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row.mjs +82 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-multi.mjs +89 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-multi.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-single.mjs +84 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-single.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection.mjs +84 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-virtualizer.mjs +95 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table-virtualizer.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table.mjs +153 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-table.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tag.mjs +111 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tag.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-text-area.mjs +196 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-text-area.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-text.mjs +65 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-text.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-theming.mjs +23 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-theming.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker.mjs +176 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-title.mjs +76 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-title.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toast.mjs +93 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toast.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-button.mjs +191 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-button.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-token.mjs +65 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-token.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tokenizer.mjs +127 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tokenizer.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-button.mjs +168 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-button.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select-option.mjs +60 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select-option.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select.mjs +130 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-separator.mjs +67 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-separator.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-spacer.mjs +74 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-spacer.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar.mjs +75 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item-custom.mjs +173 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item-custom.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item.mjs +178 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree.mjs +164 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-tree.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-types.mjs +74 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-types.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-utils.mjs +108 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-utils.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents.mjs +11748 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents.mjs.map +1 -0
- package/file-uploader/index.d.ts +97 -0
- package/form/index.d.ts +84 -0
- package/form-group/index.d.ts +36 -0
- package/form-item/index.d.ts +23 -0
- package/icon/index.d.ts +67 -0
- package/index.d.ts +6031 -0
- package/input/index.d.ts +131 -0
- package/label/index.d.ts +40 -0
- package/link/index.d.ts +123 -0
- package/list/index.d.ts +161 -0
- package/list-item-custom/index.d.ts +67 -0
- package/list-item-group/index.d.ts +49 -0
- package/list-item-standard/index.d.ts +110 -0
- package/menu/index.d.ts +69 -0
- package/menu-item/index.d.ts +128 -0
- package/menu-item-group/index.d.ts +18 -0
- package/menu-separator/index.d.ts +14 -0
- package/message-strip/index.d.ts +41 -0
- package/multi-combo-box/index.d.ts +108 -0
- package/multi-combo-box-item/index.d.ts +26 -0
- package/multi-combo-box-item-group/index.d.ts +49 -0
- package/multi-input/index.d.ts +147 -0
- package/option/index.d.ts +39 -0
- package/option-custom/index.d.ts +32 -0
- package/package.json +480 -0
- package/panel/index.d.ts +61 -0
- package/popover/index.d.ts +110 -0
- package/progress-indicator/index.d.ts +42 -0
- package/radio-button/index.d.ts +88 -0
- package/range-slider/index.d.ts +86 -0
- package/rating-indicator/index.d.ts +66 -0
- package/responsive-popover/index.d.ts +110 -0
- package/segmented-button/index.d.ts +53 -0
- package/segmented-button-item/index.d.ts +54 -0
- package/select/index.d.ts +104 -0
- package/slider/index.d.ts +82 -0
- package/special-calendar-date/index.d.ts +23 -0
- package/split-button/index.d.ts +70 -0
- package/step-input/index.d.ts +87 -0
- package/suggestion-item/index.d.ts +22 -0
- package/suggestion-item-custom/index.d.ts +19 -0
- package/suggestion-item-group/index.d.ts +49 -0
- package/switch/index.d.ts +86 -0
- package/tab/index.d.ts +54 -0
- package/tab-container/index.d.ts +73 -0
- package/tab-separator/index.d.ts +14 -0
- package/table/index.d.ts +87 -0
- package/table-cell/index.d.ts +18 -0
- package/table-growing/index.d.ts +43 -0
- package/table-header-cell/index.d.ts +64 -0
- package/table-header-cell-action-a-i/index.d.ts +19 -0
- package/table-header-row/index.d.ts +20 -0
- package/table-row/index.d.ts +36 -0
- package/table-row-action/index.d.ts +40 -0
- package/table-row-action-navigation/index.d.ts +29 -0
- package/table-selection/index.d.ts +27 -0
- package/table-selection-multi/index.d.ts +31 -0
- package/table-selection-single/index.d.ts +27 -0
- package/table-virtualizer/index.d.ts +37 -0
- package/tag/index.d.ts +50 -0
- package/text/index.d.ts +22 -0
- package/text-area/index.d.ts +120 -0
- package/theming/index.d.ts +11 -0
- package/time-picker/index.d.ts +101 -0
- package/title/index.d.ts +32 -0
- package/toast/index.d.ts +35 -0
- package/toggle-button/index.d.ts +122 -0
- package/token/index.d.ts +22 -0
- package/tokenizer/index.d.ts +64 -0
- package/toolbar/index.d.ts +30 -0
- package/toolbar-button/index.d.ts +102 -0
- package/toolbar-select/index.d.ts +65 -0
- package/toolbar-select-option/index.d.ts +18 -0
- package/toolbar-separator/index.d.ts +24 -0
- package/toolbar-spacer/index.d.ts +30 -0
- package/tree/index.d.ts +94 -0
- package/tree-item/index.d.ts +109 -0
- package/tree-item-custom/index.d.ts +105 -0
- package/types/index.d.ts +69 -0
- package/utils/index.d.ts +23 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@ui5/webcomponents/dist/ColorPicker.js';
|
|
4
|
+
|
|
5
|
+
class ColorPicker {
|
|
6
|
+
constructor() {
|
|
7
|
+
/**
|
|
8
|
+
* Defines the currently selected color of the component.
|
|
9
|
+
|
|
10
|
+
**Note**: use HEX, RGB, RGBA, HSV formats or a CSS color name when modifying this property.
|
|
11
|
+
*/
|
|
12
|
+
this.value = input("rgba(255,255,255,1)", ...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
13
|
+
/**
|
|
14
|
+
* Determines the name by which the component will be identified upon submission in an HTML form.
|
|
15
|
+
|
|
16
|
+
**Note:** This property is only applicable within the context of an HTML Form element.
|
|
17
|
+
*/
|
|
18
|
+
this.name = input(...(ngDevMode ? [undefined, { debugName: "name" }] : []));
|
|
19
|
+
/**
|
|
20
|
+
* When set to `true`, the alpha slider and inputs for RGB values will not be displayed.
|
|
21
|
+
*/
|
|
22
|
+
this.simplified = input(false, ...(ngDevMode ? [{ debugName: "simplified", transform: booleanAttribute }] : [{ transform: booleanAttribute }])); // className is now passed
|
|
23
|
+
/**
|
|
24
|
+
* Fired when the the selected color is changed
|
|
25
|
+
*/
|
|
26
|
+
this.ui5Change = output();
|
|
27
|
+
this.elementRef = inject(ElementRef);
|
|
28
|
+
this.injector = inject(Injector);
|
|
29
|
+
}
|
|
30
|
+
get element() {
|
|
31
|
+
return this.elementRef.nativeElement;
|
|
32
|
+
}
|
|
33
|
+
ngAfterViewInit() {
|
|
34
|
+
const wcElement = this.element;
|
|
35
|
+
const inputsToSync = [
|
|
36
|
+
'value',
|
|
37
|
+
'name',
|
|
38
|
+
'simplified',
|
|
39
|
+
];
|
|
40
|
+
// Synchronize inputs (properties)
|
|
41
|
+
for (const inputName of inputsToSync) {
|
|
42
|
+
// Find the corresponding camelCase signal property on the Angular component
|
|
43
|
+
const signalName = inputName.replace(/-./g, (x) => x[1].toUpperCase());
|
|
44
|
+
// Use the Injector to run the effect in the correct context
|
|
45
|
+
if (this[signalName] && typeof this[signalName] === 'function') {
|
|
46
|
+
runInInjectionContext(this.injector, () => {
|
|
47
|
+
effect(() => {
|
|
48
|
+
// Read the signal value
|
|
49
|
+
const value = this[signalName]();
|
|
50
|
+
if (wcElement) {
|
|
51
|
+
// Write the value to the Web Component's property
|
|
52
|
+
wcElement[inputName] = value;
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
const outputsToSync = [
|
|
59
|
+
'ui5Change',
|
|
60
|
+
];
|
|
61
|
+
// Synchronize outputs (events)
|
|
62
|
+
for (const outputName of outputsToSync) {
|
|
63
|
+
// Map Angular output name to UI5 web component event name
|
|
64
|
+
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
65
|
+
// Ensure the output property exists and has an emit function before adding listener
|
|
66
|
+
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
67
|
+
// Cast the listener to the correct type to satisfy TypeScript
|
|
68
|
+
wcElement.addEventListener(eventName, (e) => {
|
|
69
|
+
this[outputName].emit(e);
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ColorPicker, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
75
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: ColorPicker, isStandalone: true, selector: "ui5-color-picker, [ui5-color-picker]", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, simplified: { classPropertyName: "simplified", publicName: "simplified", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Change: "ui5Change" }, exportAs: ["ui5ColorPicker"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
76
|
+
}
|
|
77
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ColorPicker, decorators: [{
|
|
78
|
+
type: Component,
|
|
79
|
+
args: [{
|
|
80
|
+
standalone: true,
|
|
81
|
+
selector: 'ui5-color-picker, [ui5-color-picker]',
|
|
82
|
+
template: '<ng-content></ng-content>',
|
|
83
|
+
exportAs: 'ui5ColorPicker',
|
|
84
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
85
|
+
}]
|
|
86
|
+
}] });
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Generated bundle index. Do not edit.
|
|
90
|
+
*/
|
|
91
|
+
|
|
92
|
+
export { ColorPicker };
|
|
93
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-color-picker.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-color-picker.mjs","sources":["../tmp-esm2022/color-picker/index.js","../tmp-esm2022/color-picker/fundamental-ngx-ui5-webcomponents-color-picker.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, input, output, effect, runInInjectionContext, inject, Injector, booleanAttribute } from '@angular/core';\nimport '@ui5/webcomponents/dist/ColorPicker.js';\nimport * as i0 from \"@angular/core\";\nexport class ColorPicker {\n constructor() {\n /**\n * Defines the currently selected color of the component.\n \n **Note**: use HEX, RGB, RGBA, HSV formats or a CSS color name when modifying this property.\n */\n this.value = input(\"rgba(255,255,255,1)\", ...(ngDevMode ? [{ debugName: \"value\" }] : []));\n /**\n * Determines the name by which the component will be identified upon submission in an HTML form.\n \n **Note:** This property is only applicable within the context of an HTML Form element.\n */\n this.name = input(...(ngDevMode ? [undefined, { debugName: \"name\" }] : []));\n /**\n * When set to `true`, the alpha slider and inputs for RGB values will not be displayed.\n */\n this.simplified = input(false, ...(ngDevMode ? [{ debugName: \"simplified\", transform: booleanAttribute }] : [{ transform: booleanAttribute }])); // className is now passed\n /**\n * Fired when the the selected color is changed\n */\n this.ui5Change = output();\n this.elementRef = inject(ElementRef);\n this.injector = inject(Injector);\n }\n get element() {\n return this.elementRef.nativeElement;\n }\n ngAfterViewInit() {\n const wcElement = this.element;\n const inputsToSync = [\n 'value',\n 'name',\n 'simplified',\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) => x[1].toUpperCase());\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 // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n const outputsToSync = [\n 'ui5Change',\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 wcElement.addEventListener(eventName, (e) => {\n this[outputName].emit(e);\n });\n }\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ColorPicker, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.4\", type: ColorPicker, isStandalone: true, selector: \"ui5-color-picker, [ui5-color-picker]\", inputs: { value: { classPropertyName: \"value\", publicName: \"value\", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: \"name\", publicName: \"name\", isSignal: true, isRequired: false, transformFunction: null }, simplified: { classPropertyName: \"simplified\", publicName: \"simplified\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Change: \"ui5Change\" }, exportAs: [\"ui5ColorPicker\"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ColorPicker, decorators: [{\n type: Component,\n args: [{\n standalone: true,\n selector: 'ui5-color-picker, [ui5-color-picker]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5ColorPicker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3VpNS13ZWJjb21wb25lbnRzL2NvbG9yLXBpY2tlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFFTixNQUFNLEVBQ04scUJBQXFCLEVBQ3JCLE1BQU0sRUFDTixRQUFRLEVBQ1IsZ0JBQWdCLEVBR2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sd0NBQXdDLENBQUM7O0FBY2hELE1BQU0sT0FBTyxXQUFXO0lBUnhCO1FBVUU7Ozs7V0FJRztRQUNILFVBQUssR0FBRyxLQUFLLENBQWtELHFCQUFxQixpREFBQyxDQUFDO1FBRXRGOzs7O1dBSUc7UUFDSCxTQUFJLEdBQUcsS0FBSywwREFBa0QsQ0FBQztRQUUvRDs7V0FFRztRQUNILGVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyw4Q0FBSSxTQUFTLEVBQUUsZ0JBQWdCLE9BQTdCLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLEdBQUMsQ0FBQyxDQUFDLDBCQUEwQjtRQUl0Rjs7V0FFRztRQUNILGNBQVMsR0FBRyxNQUFNLEVBQTBDLENBQUM7UUFFdEQsZUFBVSxHQUE2QixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUQsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztLQXdEcEM7SUF0REMsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFL0IsTUFBTSxZQUFZLEdBQUc7WUFDbkIsT0FBTztZQUNQLE1BQU07WUFDTixZQUFZO1NBQ2IsQ0FBQztRQUVGLGtDQUFrQztRQUNsQyxLQUFLLE1BQU0sU0FBUyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ3JDLDRFQUE0RTtZQUM1RSxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFFL0UsNERBQTREO1lBQzVELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLFVBQVUsRUFBRSxDQUFDO2dCQUMvRCxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtvQkFDeEMsTUFBTSxDQUFDLEdBQUcsRUFBRTt3QkFDVix3QkFBd0I7d0JBQ3hCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO3dCQUNqQyxJQUFJLFNBQVMsRUFBRSxDQUFDOzRCQUNkLGtEQUFrRDs0QkFDbEQsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQzt3QkFDL0IsQ0FBQztvQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO1FBR0QsTUFBTSxhQUFhLEdBQUc7WUFDcEIsV0FBVztTQUNaLENBQUM7UUFFRiwrQkFBK0I7UUFDL0IsS0FBSyxNQUFNLFVBQVUsSUFBSSxhQUFhLEVBQUUsQ0FBQztZQUN2QywwREFBMEQ7WUFDMUQsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEcsb0ZBQW9GO1lBQ3BGLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksS0FBSyxVQUFVLElBQUksU0FBUyxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ2xHLDhEQUE4RDtnQkFDOUQsU0FBUyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUUxQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQXFCLENBQUMsQ0FBQztnQkFDL0MsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUdILENBQUM7OEdBcEZVLFdBQVc7a0dBQVgsV0FBVyxtaUJBTFosMkJBQTJCOzsyRkFLMUIsV0FBVztrQkFSdkIsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHNDQUFzQztvQkFDaEQsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsUUFBUSxFQUFFLGdCQUFnQjtvQkFFMUIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBpbnB1dCxcbiAgb3V0cHV0LFxuICBBZnRlclZpZXdJbml0LFxuICBlZmZlY3QsXG4gIHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcbiAgaW5qZWN0LFxuICBJbmplY3RvcixcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgY29tcHV0ZWQsXG4gIHNpZ25hbFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAnQHVpNS93ZWJjb21wb25lbnRzL2Rpc3QvQ29sb3JQaWNrZXIuanMnO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBfQ29sb3JQaWNrZXIgfSBmcm9tICdAdWk1L3dlYmNvbXBvbmVudHMvZGlzdC9Db2xvclBpY2tlci5qcyc7XG5pbXBvcnQgeyBVSTVDdXN0b21FdmVudCB9IGZyb20gJ0B1aTUvd2ViY29tcG9uZW50cy1iYXNlJztcblxuXG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3VpNS1jb2xvci1waWNrZXIsIFt1aTUtY29sb3ItcGlja2VyXScsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIGV4cG9ydEFzOiAndWk1Q29sb3JQaWNrZXInLFxuXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDb2xvclBpY2tlciBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgY29sb3Igb2YgdGhlIGNvbXBvbmVudC5cblxuKipOb3RlKio6IHVzZSBIRVgsIFJHQiwgUkdCQSwgSFNWIGZvcm1hdHMgb3IgYSBDU1MgY29sb3IgbmFtZSB3aGVuIG1vZGlmeWluZyB0aGlzIHByb3BlcnR5LlxuICAgKi9cbiAgdmFsdWUgPSBpbnB1dDx0eXBlb2YgX0NvbG9yUGlja2VyLnByb3RvdHlwZS52YWx1ZSB8IHVuZGVmaW5lZD4oXCJyZ2JhKDI1NSwyNTUsMjU1LDEpXCIpO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHRoZSBuYW1lIGJ5IHdoaWNoIHRoZSBjb21wb25lbnQgd2lsbCBiZSBpZGVudGlmaWVkIHVwb24gc3VibWlzc2lvbiBpbiBhbiBIVE1MIGZvcm0uXG5cbioqTm90ZToqKiBUaGlzIHByb3BlcnR5IGlzIG9ubHkgYXBwbGljYWJsZSB3aXRoaW4gdGhlIGNvbnRleHQgb2YgYW4gSFRNTCBGb3JtIGVsZW1lbnQuXG4gICAqL1xuICBuYW1lID0gaW5wdXQ8dHlwZW9mIF9Db2xvclBpY2tlci5wcm90b3R5cGUubmFtZSB8IHVuZGVmaW5lZD4oKTtcblxuICAvKipcbiAgICogV2hlbiBzZXQgdG8gYHRydWVgLCB0aGUgYWxwaGEgc2xpZGVyIGFuZCBpbnB1dHMgZm9yIFJHQiB2YWx1ZXMgd2lsbCBub3QgYmUgZGlzcGxheWVkLlxuICAgKi9cbiAgc2ltcGxpZmllZCA9IGlucHV0KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTsgLy8gY2xhc3NOYW1lIGlzIG5vdyBwYXNzZWRcblxuXG5cbiAgLyoqXG4gICAqIEZpcmVkIHdoZW4gdGhlIHRoZSBzZWxlY3RlZCBjb2xvciBpcyBjaGFuZ2VkXG4gICAqL1xuICB1aTVDaGFuZ2UgPSBvdXRwdXQ8VUk1Q3VzdG9tRXZlbnQ8X0NvbG9yUGlja2VyLCAnY2hhbmdlJz4+KCk7XG5cbiAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8X0NvbG9yUGlja2VyPiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHVibGljIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICBnZXQgZWxlbWVudCgpOiBfQ29sb3JQaWNrZXIge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB3Y0VsZW1lbnQgPSB0aGlzLmVsZW1lbnQ7XG4gICAgXG4gICAgY29uc3QgaW5wdXRzVG9TeW5jID0gW1xuICAgICAgJ3ZhbHVlJyxcbiAgICAgICduYW1lJyxcbiAgICAgICdzaW1wbGlmaWVkJyxcbiAgICBdO1xuICAgIFxuICAgIC8vIFN5bmNocm9uaXplIGlucHV0cyAocHJvcGVydGllcylcbiAgICBmb3IgKGNvbnN0IGlucHV0TmFtZSBvZiBpbnB1dHNUb1N5bmMpIHtcbiAgICAgIC8vIEZpbmQgdGhlIGNvcnJlc3BvbmRpbmcgY2FtZWxDYXNlIHNpZ25hbCBwcm9wZXJ0eSBvbiB0aGUgQW5ndWxhciBjb21wb25lbnRcbiAgICAgIGNvbnN0IHNpZ25hbE5hbWUgPSBpbnB1dE5hbWUucmVwbGFjZSgvLS4vZywgKHg6IHN0cmluZykgPT4geFsxXS50b1VwcGVyQ2FzZSgpKTtcblxuICAgICAgLy8gVXNlIHRoZSBJbmplY3RvciB0byBydW4gdGhlIGVmZmVjdCBpbiB0aGUgY29ycmVjdCBjb250ZXh0XG4gICAgICBpZiAodGhpc1tzaWduYWxOYW1lXSAmJiB0eXBlb2YgdGhpc1tzaWduYWxOYW1lXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5pbmplY3RvciwgKCkgPT4ge1xuICAgICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICAvLyBSZWFkIHRoZSBzaWduYWwgdmFsdWVcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGhpc1tzaWduYWxOYW1lXSgpO1xuICAgICAgICAgICAgaWYgKHdjRWxlbWVudCkge1xuICAgICAgICAgICAgICAvLyBXcml0ZSB0aGUgdmFsdWUgdG8gdGhlIFdlYiBDb21wb25lbnQncyBwcm9wZXJ0eVxuICAgICAgICAgICAgICB3Y0VsZW1lbnRbaW5wdXROYW1lXSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIFxuICAgIGNvbnN0IG91dHB1dHNUb1N5bmMgPSBbXG4gICAgICAndWk1Q2hhbmdlJyxcbiAgICBdO1xuICAgIFxuICAgIC8vIFN5bmNocm9uaXplIG91dHB1dHMgKGV2ZW50cylcbiAgICBmb3IgKGNvbnN0IG91dHB1dE5hbWUgb2Ygb3V0cHV0c1RvU3luYykge1xuICAgICAgLy8gTWFwIEFuZ3VsYXIgb3V0cHV0IG5hbWUgdG8gVUk1IHdlYiBjb21wb25lbnQgZXZlbnQgbmFtZVxuICAgICAgY29uc3QgZXZlbnROYW1lID0gb3V0cHV0TmFtZS5yZXBsYWNlKCd1aTUnLCAnJykucmVwbGFjZSgvKFtBLVpdKS9nLCAnLSQxJykudG9Mb3dlckNhc2UoKS5zdWJzdHJpbmcoMSk7XG4gICAgICAvLyBFbnN1cmUgdGhlIG91dHB1dCBwcm9wZXJ0eSBleGlzdHMgYW5kIGhhcyBhbiBlbWl0IGZ1bmN0aW9uIGJlZm9yZSBhZGRpbmcgbGlzdGVuZXJcbiAgICAgIGlmICh0aGlzW291dHB1dE5hbWVdICYmIHR5cGVvZiB0aGlzW291dHB1dE5hbWVdLmVtaXQgPT09ICdmdW5jdGlvbicgJiYgd2NFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIpIHtcbiAgICAgICAgLy8gQ2FzdCB0aGUgbGlzdGVuZXIgdG8gdGhlIGNvcnJlY3QgdHlwZSB0byBzYXRpc2Z5IFR5cGVTY3JpcHRcbiAgICAgICAgd2NFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCAoZSkgPT4ge1xuXG4gICAgICAgICAgdGhpc1tvdXRwdXROYW1lXS5lbWl0KGUgYXMgQ3VzdG9tRXZlbnQ8YW55Pik7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgXG5cbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LXVpNS13ZWJjb21wb25lbnRzLWNvbG9yLXBpY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvdWk1LXdlYmNvbXBvbmVudHMvY29sb3ItcGlja2VyL2Z1bmRhbWVudGFsLW5neC11aTUtd2ViY29tcG9uZW50cy1jb2xvci1waWNrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@ui5/webcomponents/dist/ComboBoxItemGroup.js';
|
|
4
|
+
|
|
5
|
+
class ComboBoxItemGroup {
|
|
6
|
+
constructor() {
|
|
7
|
+
/**
|
|
8
|
+
* Defines the header text of the <code>ui5-li-group</code>.
|
|
9
|
+
*/
|
|
10
|
+
this.headerText = input(...(ngDevMode ? [undefined, { debugName: "headerText" }] : []));
|
|
11
|
+
/**
|
|
12
|
+
* Defines the accessible name of the header.
|
|
13
|
+
*/
|
|
14
|
+
this.headerAccessibleName = input(...(ngDevMode ? [undefined, { debugName: "headerAccessibleName" }] : []));
|
|
15
|
+
/**
|
|
16
|
+
* Defines if the text of the component should wrap when it's too long.
|
|
17
|
+
When set to "Normal", the content (title, description) will be wrapped
|
|
18
|
+
using the `ui5-expandable-text` component.<br/>
|
|
19
|
+
|
|
20
|
+
The text can wrap up to 100 characters on small screens (size S) and
|
|
21
|
+
up to 300 characters on larger screens (size M and above). When text exceeds
|
|
22
|
+
these limits, it truncates with an ellipsis followed by a text expansion trigger.
|
|
23
|
+
|
|
24
|
+
Available options are:
|
|
25
|
+
- `None` (default) - The text will truncate with an ellipsis.
|
|
26
|
+
- `Normal` - The text will wrap (without truncation).
|
|
27
|
+
*/
|
|
28
|
+
this.wrappingType = input("None", ...(ngDevMode ? [{ debugName: "wrappingType" }] : [])); // className is now passed
|
|
29
|
+
/**
|
|
30
|
+
* Fired when a movable list item is moved over a potential drop target during a dragging operation.
|
|
31
|
+
|
|
32
|
+
If the new position is valid, prevent the default action of the event using `preventDefault()`.
|
|
33
|
+
*/
|
|
34
|
+
this.ui5MoveOver = output();
|
|
35
|
+
/**
|
|
36
|
+
* Fired when a movable list item is dropped onto a drop target.
|
|
37
|
+
|
|
38
|
+
**Note:** `move` event is fired only if there was a preceding `move-over` with prevented default action.
|
|
39
|
+
*/
|
|
40
|
+
this.ui5Move = output();
|
|
41
|
+
this.elementRef = inject(ElementRef);
|
|
42
|
+
this.injector = inject(Injector);
|
|
43
|
+
}
|
|
44
|
+
get element() {
|
|
45
|
+
return this.elementRef.nativeElement;
|
|
46
|
+
}
|
|
47
|
+
ngAfterViewInit() {
|
|
48
|
+
const wcElement = this.element;
|
|
49
|
+
const inputsToSync = [
|
|
50
|
+
'headerText',
|
|
51
|
+
'headerAccessibleName',
|
|
52
|
+
'wrappingType',
|
|
53
|
+
];
|
|
54
|
+
// Synchronize inputs (properties)
|
|
55
|
+
for (const inputName of inputsToSync) {
|
|
56
|
+
// Find the corresponding camelCase signal property on the Angular component
|
|
57
|
+
const signalName = inputName.replace(/-./g, (x) => x[1].toUpperCase());
|
|
58
|
+
// Use the Injector to run the effect in the correct context
|
|
59
|
+
if (this[signalName] && typeof this[signalName] === 'function') {
|
|
60
|
+
runInInjectionContext(this.injector, () => {
|
|
61
|
+
effect(() => {
|
|
62
|
+
// Read the signal value
|
|
63
|
+
const value = this[signalName]();
|
|
64
|
+
if (wcElement) {
|
|
65
|
+
// Write the value to the Web Component's property
|
|
66
|
+
wcElement[inputName] = value;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
const outputsToSync = [
|
|
73
|
+
'ui5MoveOver',
|
|
74
|
+
'ui5Move',
|
|
75
|
+
];
|
|
76
|
+
// Synchronize outputs (events)
|
|
77
|
+
for (const outputName of outputsToSync) {
|
|
78
|
+
// Map Angular output name to UI5 web component event name
|
|
79
|
+
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
80
|
+
// Ensure the output property exists and has an emit function before adding listener
|
|
81
|
+
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
82
|
+
// Cast the listener to the correct type to satisfy TypeScript
|
|
83
|
+
wcElement.addEventListener(eventName, (e) => {
|
|
84
|
+
this[outputName].emit(e);
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ComboBoxItemGroup, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
90
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: ComboBoxItemGroup, isStandalone: true, selector: "ui5-cb-item-group, [ui5-cb-item-group]", inputs: { headerText: { classPropertyName: "headerText", publicName: "headerText", isSignal: true, isRequired: false, transformFunction: null }, headerAccessibleName: { classPropertyName: "headerAccessibleName", publicName: "headerAccessibleName", isSignal: true, isRequired: false, transformFunction: null }, wrappingType: { classPropertyName: "wrappingType", publicName: "wrappingType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5MoveOver: "ui5MoveOver", ui5Move: "ui5Move" }, exportAs: ["ui5ComboBoxItemGroup"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
91
|
+
}
|
|
92
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ComboBoxItemGroup, decorators: [{
|
|
93
|
+
type: Component,
|
|
94
|
+
args: [{
|
|
95
|
+
standalone: true,
|
|
96
|
+
selector: 'ui5-cb-item-group, [ui5-cb-item-group]',
|
|
97
|
+
template: '<ng-content></ng-content>',
|
|
98
|
+
exportAs: 'ui5ComboBoxItemGroup',
|
|
99
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
100
|
+
}]
|
|
101
|
+
}] });
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Generated bundle index. Do not edit.
|
|
105
|
+
*/
|
|
106
|
+
|
|
107
|
+
export { ComboBoxItemGroup };
|
|
108
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-combo-box-item-group.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-combo-box-item-group.mjs","sources":["../tmp-esm2022/combo-box-item-group/index.js","../tmp-esm2022/combo-box-item-group/fundamental-ngx-ui5-webcomponents-combo-box-item-group.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, input, output, effect, runInInjectionContext, inject, Injector } from '@angular/core';\nimport '@ui5/webcomponents/dist/ComboBoxItemGroup.js';\nimport * as i0 from \"@angular/core\";\nexport class ComboBoxItemGroup {\n constructor() {\n /**\n * Defines the header text of the <code>ui5-li-group</code>.\n */\n this.headerText = input(...(ngDevMode ? [undefined, { debugName: \"headerText\" }] : []));\n /**\n * Defines the accessible name of the header.\n */\n this.headerAccessibleName = input(...(ngDevMode ? [undefined, { debugName: \"headerAccessibleName\" }] : []));\n /**\n * Defines if the text of the component should wrap when it's too long.\n When set to \"Normal\", the content (title, description) will be wrapped\n using the `ui5-expandable-text` component.<br/>\n \n The text can wrap up to 100 characters on small screens (size S) and\n up to 300 characters on larger screens (size M and above). When text exceeds\n these limits, it truncates with an ellipsis followed by a text expansion trigger.\n \n Available options are:\n - `None` (default) - The text will truncate with an ellipsis.\n - `Normal` - The text will wrap (without truncation).\n */\n this.wrappingType = input(\"None\", ...(ngDevMode ? [{ debugName: \"wrappingType\" }] : [])); // className is now passed\n /**\n * Fired when a movable list item is moved over a potential drop target during a dragging operation.\n \n If the new position is valid, prevent the default action of the event using `preventDefault()`.\n */\n this.ui5MoveOver = output();\n /**\n * Fired when a movable list item is dropped onto a drop target.\n \n **Note:** `move` event is fired only if there was a preceding `move-over` with prevented default action.\n */\n this.ui5Move = output();\n this.elementRef = inject(ElementRef);\n this.injector = inject(Injector);\n }\n get element() {\n return this.elementRef.nativeElement;\n }\n ngAfterViewInit() {\n const wcElement = this.element;\n const inputsToSync = [\n 'headerText',\n 'headerAccessibleName',\n 'wrappingType',\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) => x[1].toUpperCase());\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 // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n const outputsToSync = [\n 'ui5MoveOver',\n 'ui5Move',\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 wcElement.addEventListener(eventName, (e) => {\n this[outputName].emit(e);\n });\n }\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ComboBoxItemGroup, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.4\", type: ComboBoxItemGroup, isStandalone: true, selector: \"ui5-cb-item-group, [ui5-cb-item-group]\", inputs: { headerText: { classPropertyName: \"headerText\", publicName: \"headerText\", isSignal: true, isRequired: false, transformFunction: null }, headerAccessibleName: { classPropertyName: \"headerAccessibleName\", publicName: \"headerAccessibleName\", isSignal: true, isRequired: false, transformFunction: null }, wrappingType: { classPropertyName: \"wrappingType\", publicName: \"wrappingType\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5MoveOver: \"ui5MoveOver\", ui5Move: \"ui5Move\" }, exportAs: [\"ui5ComboBoxItemGroup\"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ComboBoxItemGroup, decorators: [{\n type: Component,\n args: [{\n standalone: true,\n selector: 'ui5-cb-item-group, [ui5-cb-item-group]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5ComboBoxItemGroup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3VpNS13ZWJjb21wb25lbnRzL2NvbWJvLWJveC1pdGVtLWdyb3VwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUVOLE1BQU0sRUFDTixxQkFBcUIsRUFDckIsTUFBTSxFQUNOLFFBQVEsRUFJVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLDhDQUE4QyxDQUFDOztBQWN0RCxNQUFNLE9BQU8saUJBQWlCO0lBUjlCO1FBVUU7O1dBRUc7UUFDSCxlQUFVLEdBQUcsS0FBSyxnRUFBOEQsQ0FBQztRQUVqRjs7V0FFRztRQUNILHlCQUFvQixHQUFHLEtBQUssMEVBQXdFLENBQUM7UUFFckc7Ozs7Ozs7Ozs7OztXQVlHO1FBQ0gsaUJBQVksR0FBRyxLQUFLLENBQStELE1BQU0sd0RBQUMsQ0FBQyxDQUFDLDBCQUEwQjtRQUl0SDs7OztXQUlHO1FBQ0gsZ0JBQVcsR0FBRyxNQUFNLEVBQW1ELENBQUM7UUFFeEU7Ozs7V0FJRztRQUNILFlBQU8sR0FBRyxNQUFNLEVBQThDLENBQUM7UUFFeEQsZUFBVSxHQUFtQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztLQXlEcEM7SUF2REMsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFL0IsTUFBTSxZQUFZLEdBQUc7WUFDbkIsWUFBWTtZQUNaLHNCQUFzQjtZQUN0QixjQUFjO1NBQ2YsQ0FBQztRQUVGLGtDQUFrQztRQUNsQyxLQUFLLE1BQU0sU0FBUyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ3JDLDRFQUE0RTtZQUM1RSxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFFL0UsNERBQTREO1lBQzVELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLFVBQVUsRUFBRSxDQUFDO2dCQUMvRCxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtvQkFDeEMsTUFBTSxDQUFDLEdBQUcsRUFBRTt3QkFDVix3QkFBd0I7d0JBQ3hCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO3dCQUNqQyxJQUFJLFNBQVMsRUFBRSxDQUFDOzRCQUNkLGtEQUFrRDs0QkFDbEQsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEtBQUssQ0FBQzt3QkFDL0IsQ0FBQztvQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO1FBR0QsTUFBTSxhQUFhLEdBQUc7WUFDcEIsYUFBYTtZQUNiLFNBQVM7U0FDVixDQUFDO1FBRUYsK0JBQStCO1FBQy9CLEtBQUssTUFBTSxVQUFVLElBQUksYUFBYSxFQUFFLENBQUM7WUFDdkMsMERBQTBEO1lBQzFELE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RHLG9GQUFvRjtZQUNwRixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLEtBQUssVUFBVSxJQUFJLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUNsRyw4REFBOEQ7Z0JBQzlELFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFFMUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFxQixDQUFDLENBQUM7Z0JBQy9DLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7SUFHSCxDQUFDOzhHQXBHVSxpQkFBaUI7a0dBQWpCLGlCQUFpQix3b0JBTGxCLDJCQUEyQjs7MkZBSzFCLGlCQUFpQjtrQkFSN0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsUUFBUSxFQUFFLHNCQUFzQjtvQkFFaEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBpbnB1dCxcbiAgb3V0cHV0LFxuICBBZnRlclZpZXdJbml0LFxuICBlZmZlY3QsXG4gIHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcbiAgaW5qZWN0LFxuICBJbmplY3RvcixcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgY29tcHV0ZWQsXG4gIHNpZ25hbFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAnQHVpNS93ZWJjb21wb25lbnRzL2Rpc3QvQ29tYm9Cb3hJdGVtR3JvdXAuanMnO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBfQ29tYm9Cb3hJdGVtR3JvdXAgfSBmcm9tICdAdWk1L3dlYmNvbXBvbmVudHMvZGlzdC9Db21ib0JveEl0ZW1Hcm91cC5qcyc7XG5pbXBvcnQgeyBVSTVDdXN0b21FdmVudCB9IGZyb20gJ0B1aTUvd2ViY29tcG9uZW50cy1iYXNlJztcblxuaW1wb3J0IHsgZGVmYXVsdCBhcyBXcmFwcGluZ1R5cGUgfSBmcm9tICdAdWk1L3dlYmNvbXBvbmVudHMvZGlzdC90eXBlcy9XcmFwcGluZ1R5cGUuanMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1aTUtY2ItaXRlbS1ncm91cCwgW3VpNS1jYi1pdGVtLWdyb3VwXScsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIGV4cG9ydEFzOiAndWk1Q29tYm9Cb3hJdGVtR3JvdXAnLFxuXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDb21ib0JveEl0ZW1Hcm91cCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBoZWFkZXIgdGV4dCBvZiB0aGUgPGNvZGU+dWk1LWxpLWdyb3VwPC9jb2RlPi5cbiAgICovXG4gIGhlYWRlclRleHQgPSBpbnB1dDx0eXBlb2YgX0NvbWJvQm94SXRlbUdyb3VwLnByb3RvdHlwZS5oZWFkZXJUZXh0IHwgdW5kZWZpbmVkPigpO1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBhY2Nlc3NpYmxlIG5hbWUgb2YgdGhlIGhlYWRlci5cbiAgICovXG4gIGhlYWRlckFjY2Vzc2libGVOYW1lID0gaW5wdXQ8dHlwZW9mIF9Db21ib0JveEl0ZW1Hcm91cC5wcm90b3R5cGUuaGVhZGVyQWNjZXNzaWJsZU5hbWUgfCB1bmRlZmluZWQ+KCk7XG5cbiAgLyoqXG4gICAqIERlZmluZXMgaWYgdGhlIHRleHQgb2YgdGhlIGNvbXBvbmVudCBzaG91bGQgd3JhcCB3aGVuIGl0J3MgdG9vIGxvbmcuXG5XaGVuIHNldCB0byBcIk5vcm1hbFwiLCB0aGUgY29udGVudCAodGl0bGUsIGRlc2NyaXB0aW9uKSB3aWxsIGJlIHdyYXBwZWRcbnVzaW5nIHRoZSBgdWk1LWV4cGFuZGFibGUtdGV4dGAgY29tcG9uZW50Ljxici8+XG5cblRoZSB0ZXh0IGNhbiB3cmFwIHVwIHRvIDEwMCBjaGFyYWN0ZXJzIG9uIHNtYWxsIHNjcmVlbnMgKHNpemUgUykgYW5kXG51cCB0byAzMDAgY2hhcmFjdGVycyBvbiBsYXJnZXIgc2NyZWVucyAoc2l6ZSBNIGFuZCBhYm92ZSkuIFdoZW4gdGV4dCBleGNlZWRzXG50aGVzZSBsaW1pdHMsIGl0IHRydW5jYXRlcyB3aXRoIGFuIGVsbGlwc2lzIGZvbGxvd2VkIGJ5IGEgdGV4dCBleHBhbnNpb24gdHJpZ2dlci5cblxuQXZhaWxhYmxlIG9wdGlvbnMgYXJlOlxuLSBgTm9uZWAgKGRlZmF1bHQpIC0gVGhlIHRleHQgd2lsbCB0cnVuY2F0ZSB3aXRoIGFuIGVsbGlwc2lzLlxuLSBgTm9ybWFsYCAtIFRoZSB0ZXh0IHdpbGwgd3JhcCAod2l0aG91dCB0cnVuY2F0aW9uKS5cbiAgICovXG4gIHdyYXBwaW5nVHlwZSA9IGlucHV0PHR5cGVvZiBfQ29tYm9Cb3hJdGVtR3JvdXAucHJvdG90eXBlLndyYXBwaW5nVHlwZSB8IHVuZGVmaW5lZD4oXCJOb25lXCIpOyAvLyBjbGFzc05hbWUgaXMgbm93IHBhc3NlZFxuXG5cblxuICAvKipcbiAgICogRmlyZWQgd2hlbiBhIG1vdmFibGUgbGlzdCBpdGVtIGlzIG1vdmVkIG92ZXIgYSBwb3RlbnRpYWwgZHJvcCB0YXJnZXQgZHVyaW5nIGEgZHJhZ2dpbmcgb3BlcmF0aW9uLlxuXG5JZiB0aGUgbmV3IHBvc2l0aW9uIGlzIHZhbGlkLCBwcmV2ZW50IHRoZSBkZWZhdWx0IGFjdGlvbiBvZiB0aGUgZXZlbnQgdXNpbmcgYHByZXZlbnREZWZhdWx0KClgLlxuICAgKi9cbiAgdWk1TW92ZU92ZXIgPSBvdXRwdXQ8VUk1Q3VzdG9tRXZlbnQ8X0NvbWJvQm94SXRlbUdyb3VwLCAnbW92ZS1vdmVyJz4+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVkIHdoZW4gYSBtb3ZhYmxlIGxpc3QgaXRlbSBpcyBkcm9wcGVkIG9udG8gYSBkcm9wIHRhcmdldC5cblxuKipOb3RlOioqIGBtb3ZlYCBldmVudCBpcyBmaXJlZCBvbmx5IGlmIHRoZXJlIHdhcyBhIHByZWNlZGluZyBgbW92ZS1vdmVyYCB3aXRoIHByZXZlbnRlZCBkZWZhdWx0IGFjdGlvbi5cbiAgICovXG4gIHVpNU1vdmUgPSBvdXRwdXQ8VUk1Q3VzdG9tRXZlbnQ8X0NvbWJvQm94SXRlbUdyb3VwLCAnbW92ZSc+PigpO1xuXG4gIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPF9Db21ib0JveEl0ZW1Hcm91cD4gPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHB1YmxpYyBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgZ2V0IGVsZW1lbnQoKTogX0NvbWJvQm94SXRlbUdyb3VwIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3Qgd2NFbGVtZW50ID0gdGhpcy5lbGVtZW50O1xuICAgIFxuICAgIGNvbnN0IGlucHV0c1RvU3luYyA9IFtcbiAgICAgICdoZWFkZXJUZXh0JyxcbiAgICAgICdoZWFkZXJBY2Nlc3NpYmxlTmFtZScsXG4gICAgICAnd3JhcHBpbmdUeXBlJyxcbiAgICBdO1xuICAgIFxuICAgIC8vIFN5bmNocm9uaXplIGlucHV0cyAocHJvcGVydGllcylcbiAgICBmb3IgKGNvbnN0IGlucHV0TmFtZSBvZiBpbnB1dHNUb1N5bmMpIHtcbiAgICAgIC8vIEZpbmQgdGhlIGNvcnJlc3BvbmRpbmcgY2FtZWxDYXNlIHNpZ25hbCBwcm9wZXJ0eSBvbiB0aGUgQW5ndWxhciBjb21wb25lbnRcbiAgICAgIGNvbnN0IHNpZ25hbE5hbWUgPSBpbnB1dE5hbWUucmVwbGFjZSgvLS4vZywgKHg6IHN0cmluZykgPT4geFsxXS50b1VwcGVyQ2FzZSgpKTtcblxuICAgICAgLy8gVXNlIHRoZSBJbmplY3RvciB0byBydW4gdGhlIGVmZmVjdCBpbiB0aGUgY29ycmVjdCBjb250ZXh0XG4gICAgICBpZiAodGhpc1tzaWduYWxOYW1lXSAmJiB0eXBlb2YgdGhpc1tzaWduYWxOYW1lXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5pbmplY3RvciwgKCkgPT4ge1xuICAgICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICAvLyBSZWFkIHRoZSBzaWduYWwgdmFsdWVcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGhpc1tzaWduYWxOYW1lXSgpO1xuICAgICAgICAgICAgaWYgKHdjRWxlbWVudCkge1xuICAgICAgICAgICAgICAvLyBXcml0ZSB0aGUgdmFsdWUgdG8gdGhlIFdlYiBDb21wb25lbnQncyBwcm9wZXJ0eVxuICAgICAgICAgICAgICB3Y0VsZW1lbnRbaW5wdXROYW1lXSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIFxuICAgIGNvbnN0IG91dHB1dHNUb1N5bmMgPSBbXG4gICAgICAndWk1TW92ZU92ZXInLFxuICAgICAgJ3VpNU1vdmUnLFxuICAgIF07XG4gICAgXG4gICAgLy8gU3luY2hyb25pemUgb3V0cHV0cyAoZXZlbnRzKVxuICAgIGZvciAoY29uc3Qgb3V0cHV0TmFtZSBvZiBvdXRwdXRzVG9TeW5jKSB7XG4gICAgICAvLyBNYXAgQW5ndWxhciBvdXRwdXQgbmFtZSB0byBVSTUgd2ViIGNvbXBvbmVudCBldmVudCBuYW1lXG4gICAgICBjb25zdCBldmVudE5hbWUgPSBvdXRwdXROYW1lLnJlcGxhY2UoJ3VpNScsICcnKS5yZXBsYWNlKC8oW0EtWl0pL2csICctJDEnKS50b0xvd2VyQ2FzZSgpLnN1YnN0cmluZygxKTtcbiAgICAgIC8vIEVuc3VyZSB0aGUgb3V0cHV0IHByb3BlcnR5IGV4aXN0cyBhbmQgaGFzIGFuIGVtaXQgZnVuY3Rpb24gYmVmb3JlIGFkZGluZyBsaXN0ZW5lclxuICAgICAgaWYgKHRoaXNbb3V0cHV0TmFtZV0gJiYgdHlwZW9mIHRoaXNbb3V0cHV0TmFtZV0uZW1pdCA9PT0gJ2Z1bmN0aW9uJyAmJiB3Y0VsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcikge1xuICAgICAgICAvLyBDYXN0IHRoZSBsaXN0ZW5lciB0byB0aGUgY29ycmVjdCB0eXBlIHRvIHNhdGlzZnkgVHlwZVNjcmlwdFxuICAgICAgICB3Y0VsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIChlKSA9PiB7XG5cbiAgICAgICAgICB0aGlzW291dHB1dE5hbWVdLmVtaXQoZSBhcyBDdXN0b21FdmVudDxhbnk+KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICBcblxuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LXVpNS13ZWJjb21wb25lbnRzLWNvbWJvLWJveC1pdGVtLWdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aTUtd2ViY29tcG9uZW50cy9jb21iby1ib3gtaXRlbS1ncm91cC9mdW5kYW1lbnRhbC1uZ3gtdWk1LXdlYmNvbXBvbmVudHMtY29tYm8tYm94LWl0ZW0tZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@ui5/webcomponents/dist/ComboBoxItem.js';
|
|
4
|
+
|
|
5
|
+
class ComboBoxItem {
|
|
6
|
+
constructor() {
|
|
7
|
+
/**
|
|
8
|
+
* Defines the text of the component.
|
|
9
|
+
*/
|
|
10
|
+
this.text = input(...(ngDevMode ? [undefined, { debugName: "text" }] : []));
|
|
11
|
+
/**
|
|
12
|
+
* Defines the additional text of the component.
|
|
13
|
+
*/
|
|
14
|
+
this.additionalText = input(...(ngDevMode ? [undefined, { debugName: "additionalText" }] : [])); // className is now passed
|
|
15
|
+
this.elementRef = inject(ElementRef);
|
|
16
|
+
this.injector = inject(Injector);
|
|
17
|
+
}
|
|
18
|
+
get element() {
|
|
19
|
+
return this.elementRef.nativeElement;
|
|
20
|
+
}
|
|
21
|
+
ngAfterViewInit() {
|
|
22
|
+
const wcElement = this.element;
|
|
23
|
+
const inputsToSync = [
|
|
24
|
+
'text',
|
|
25
|
+
'additionalText',
|
|
26
|
+
];
|
|
27
|
+
// Synchronize inputs (properties)
|
|
28
|
+
for (const inputName of inputsToSync) {
|
|
29
|
+
// Find the corresponding camelCase signal property on the Angular component
|
|
30
|
+
const signalName = inputName.replace(/-./g, (x) => x[1].toUpperCase());
|
|
31
|
+
// Use the Injector to run the effect in the correct context
|
|
32
|
+
if (this[signalName] && typeof this[signalName] === 'function') {
|
|
33
|
+
runInInjectionContext(this.injector, () => {
|
|
34
|
+
effect(() => {
|
|
35
|
+
// Read the signal value
|
|
36
|
+
const value = this[signalName]();
|
|
37
|
+
if (wcElement) {
|
|
38
|
+
// Write the value to the Web Component's property
|
|
39
|
+
wcElement[inputName] = value;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ComboBoxItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
47
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: ComboBoxItem, isStandalone: true, selector: "ui5-cb-item, [ui5-cb-item]", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, additionalText: { classPropertyName: "additionalText", publicName: "additionalText", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["ui5ComboBoxItem"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
48
|
+
}
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ComboBoxItem, decorators: [{
|
|
50
|
+
type: Component,
|
|
51
|
+
args: [{
|
|
52
|
+
standalone: true,
|
|
53
|
+
selector: 'ui5-cb-item, [ui5-cb-item]',
|
|
54
|
+
template: '<ng-content></ng-content>',
|
|
55
|
+
exportAs: 'ui5ComboBoxItem',
|
|
56
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
57
|
+
}]
|
|
58
|
+
}] });
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Generated bundle index. Do not edit.
|
|
62
|
+
*/
|
|
63
|
+
|
|
64
|
+
export { ComboBoxItem };
|
|
65
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-combo-box-item.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-combo-box-item.mjs","sources":["../tmp-esm2022/combo-box-item/index.js","../tmp-esm2022/combo-box-item/fundamental-ngx-ui5-webcomponents-combo-box-item.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, input, effect, runInInjectionContext, inject, Injector } from '@angular/core';\nimport '@ui5/webcomponents/dist/ComboBoxItem.js';\nimport * as i0 from \"@angular/core\";\nexport class ComboBoxItem {\n constructor() {\n /**\n * Defines the text of the component.\n */\n this.text = input(...(ngDevMode ? [undefined, { debugName: \"text\" }] : []));\n /**\n * Defines the additional text of the component.\n */\n this.additionalText = input(...(ngDevMode ? [undefined, { debugName: \"additionalText\" }] : [])); // className is now passed\n this.elementRef = inject(ElementRef);\n this.injector = inject(Injector);\n }\n get element() {\n return this.elementRef.nativeElement;\n }\n ngAfterViewInit() {\n const wcElement = this.element;\n const inputsToSync = [\n 'text',\n 'additionalText',\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) => x[1].toUpperCase());\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 // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ComboBoxItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.4\", type: ComboBoxItem, isStandalone: true, selector: \"ui5-cb-item, [ui5-cb-item]\", inputs: { text: { classPropertyName: \"text\", publicName: \"text\", isSignal: true, isRequired: false, transformFunction: null }, additionalText: { classPropertyName: \"additionalText\", publicName: \"additionalText\", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: [\"ui5ComboBoxItem\"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: ComboBoxItem, decorators: [{\n type: Component,\n args: [{\n standalone: true,\n selector: 'ui5-cb-item, [ui5-cb-item]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5ComboBoxItem',\n changeDetection: ChangeDetectionStrategy.OnPush,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3VpNS13ZWJjb21wb25lbnRzL2NvbWJvLWJveC1pdGVtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBR0wsTUFBTSxFQUNOLHFCQUFxQixFQUNyQixNQUFNLEVBQ04sUUFBUSxFQUlULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8seUNBQXlDLENBQUM7O0FBY2pELE1BQU0sT0FBTyxZQUFZO0lBUnpCO1FBVUU7O1dBRUc7UUFDSCxTQUFJLEdBQUcsS0FBSywwREFBbUQsQ0FBQztRQUVoRTs7V0FFRztRQUNILG1CQUFjLEdBQUcsS0FBSyxvRUFBNkQsQ0FBQyxDQUFDLDBCQUEwQjtRQUt4RyxlQUFVLEdBQThCLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMzRCxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBc0NwQztJQXBDQyxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUUvQixNQUFNLFlBQVksR0FBRztZQUNuQixNQUFNO1lBQ04sZ0JBQWdCO1NBQ2pCLENBQUM7UUFFRixrQ0FBa0M7UUFDbEMsS0FBSyxNQUFNLFNBQVMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNyQyw0RUFBNEU7WUFDNUUsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBRS9FLDREQUE0RDtZQUM1RCxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxVQUFVLEVBQUUsQ0FBQztnQkFDL0QscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7b0JBQ3hDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7d0JBQ1Ysd0JBQXdCO3dCQUN4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQzt3QkFDakMsSUFBSSxTQUFTLEVBQUUsQ0FBQzs0QkFDZCxrREFBa0Q7NEJBQ2xELFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxLQUFLLENBQUM7d0JBQy9CLENBQUM7b0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUtILENBQUM7OEdBckRVLFlBQVk7a0dBQVosWUFBWSx5WUFMYiwyQkFBMkI7OzJGQUsxQixZQUFZO2tCQVJ4QixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsNEJBQTRCO29CQUN0QyxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxRQUFRLEVBQUUsaUJBQWlCO29CQUUzQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGlucHV0LFxuICBvdXRwdXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIGVmZmVjdCxcbiAgcnVuSW5JbmplY3Rpb25Db250ZXh0LFxuICBpbmplY3QsXG4gIEluamVjdG9yLFxuICBib29sZWFuQXR0cmlidXRlLFxuICBjb21wdXRlZCxcbiAgc2lnbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICdAdWk1L3dlYmNvbXBvbmVudHMvZGlzdC9Db21ib0JveEl0ZW0uanMnO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBfQ29tYm9Cb3hJdGVtIH0gZnJvbSAnQHVpNS93ZWJjb21wb25lbnRzL2Rpc3QvQ29tYm9Cb3hJdGVtLmpzJztcbmltcG9ydCB7IFVJNUN1c3RvbUV2ZW50IH0gZnJvbSAnQHVpNS93ZWJjb21wb25lbnRzLWJhc2UnO1xuXG5cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAndWk1LWNiLWl0ZW0sIFt1aTUtY2ItaXRlbV0nLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBleHBvcnRBczogJ3VpNUNvbWJvQm94SXRlbScsXG5cbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENvbWJvQm94SXRlbSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSB0ZXh0IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICB0ZXh0ID0gaW5wdXQ8dHlwZW9mIF9Db21ib0JveEl0ZW0ucHJvdG90eXBlLnRleHQgfCB1bmRlZmluZWQ+KCk7XG5cbiAgLyoqXG4gICAqIERlZmluZXMgdGhlIGFkZGl0aW9uYWwgdGV4dCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgYWRkaXRpb25hbFRleHQgPSBpbnB1dDx0eXBlb2YgX0NvbWJvQm94SXRlbS5wcm90b3R5cGUuYWRkaXRpb25hbFRleHQgfCB1bmRlZmluZWQ+KCk7IC8vIGNsYXNzTmFtZSBpcyBub3cgcGFzc2VkXG5cblxuXG5cbiAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8X0NvbWJvQm94SXRlbT4gPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHB1YmxpYyBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgZ2V0IGVsZW1lbnQoKTogX0NvbWJvQm94SXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHdjRWxlbWVudCA9IHRoaXMuZWxlbWVudDtcbiAgICBcbiAgICBjb25zdCBpbnB1dHNUb1N5bmMgPSBbXG4gICAgICAndGV4dCcsXG4gICAgICAnYWRkaXRpb25hbFRleHQnLFxuICAgIF07XG4gICAgXG4gICAgLy8gU3luY2hyb25pemUgaW5wdXRzIChwcm9wZXJ0aWVzKVxuICAgIGZvciAoY29uc3QgaW5wdXROYW1lIG9mIGlucHV0c1RvU3luYykge1xuICAgICAgLy8gRmluZCB0aGUgY29ycmVzcG9uZGluZyBjYW1lbENhc2Ugc2lnbmFsIHByb3BlcnR5IG9uIHRoZSBBbmd1bGFyIGNvbXBvbmVudFxuICAgICAgY29uc3Qgc2lnbmFsTmFtZSA9IGlucHV0TmFtZS5yZXBsYWNlKC8tLi9nLCAoeDogc3RyaW5nKSA9PiB4WzFdLnRvVXBwZXJDYXNlKCkpO1xuXG4gICAgICAvLyBVc2UgdGhlIEluamVjdG9yIHRvIHJ1biB0aGUgZWZmZWN0IGluIHRoZSBjb3JyZWN0IGNvbnRleHRcbiAgICAgIGlmICh0aGlzW3NpZ25hbE5hbWVdICYmIHR5cGVvZiB0aGlzW3NpZ25hbE5hbWVdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHJ1bkluSW5qZWN0aW9uQ29udGV4dCh0aGlzLmluamVjdG9yLCAoKSA9PiB7XG4gICAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIC8vIFJlYWQgdGhlIHNpZ25hbCB2YWx1ZVxuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzW3NpZ25hbE5hbWVdKCk7XG4gICAgICAgICAgICBpZiAod2NFbGVtZW50KSB7XG4gICAgICAgICAgICAgIC8vIFdyaXRlIHRoZSB2YWx1ZSB0byB0aGUgV2ViIENvbXBvbmVudCdzIHByb3BlcnR5XG4gICAgICAgICAgICAgIHdjRWxlbWVudFtpbnB1dE5hbWVdID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgXG4gICAgXG4gICAgXG5cbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LXVpNS13ZWJjb21wb25lbnRzLWNvbWJvLWJveC1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aTUtd2ViY29tcG9uZW50cy9jb21iby1ib3gtaXRlbS9mdW5kYW1lbnRhbC1uZ3gtdWk1LXdlYmNvbXBvbmVudHMtY29tYm8tYm94LWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@ui5/webcomponents/dist/ComboBox.js';
|
|
4
|
+
import * as i1 from '@fundamental-ngx/ui5-webcomponents/utils';
|
|
5
|
+
import { GenericControlValueAccessor } from '@fundamental-ngx/ui5-webcomponents/utils';
|
|
6
|
+
|
|
7
|
+
class ComboBox {
|
|
8
|
+
constructor() {
|
|
9
|
+
/**
|
|
10
|
+
* Defines the value of the component.
|
|
11
|
+
*/
|
|
12
|
+
this.value = input("", ...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
13
|
+
/**
|
|
14
|
+
* Determines the name by which the component will be identified upon submission in an HTML form.
|
|
15
|
+
|
|
16
|
+
**Note:** This property is only applicable within the context of an HTML Form element.
|
|
17
|
+
*/
|
|
18
|
+
this.name = input(...(ngDevMode ? [undefined, { debugName: "name" }] : []));
|
|
19
|
+
/**
|
|
20
|
+
* Defines whether the value will be autocompleted to match an item
|
|
21
|
+
*/
|
|
22
|
+
this.noTypeahead = input(false, ...(ngDevMode ? [{ debugName: "noTypeahead", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
23
|
+
/**
|
|
24
|
+
* Defines a short hint intended to aid the user with data entry when the
|
|
25
|
+
component has no value.
|
|
26
|
+
*/
|
|
27
|
+
this.placeholder = input(...(ngDevMode ? [undefined, { debugName: "placeholder" }] : []));
|
|
28
|
+
/**
|
|
29
|
+
* Defines whether the component is in disabled state.
|
|
30
|
+
|
|
31
|
+
**Note:** A disabled component is completely noninteractive.
|
|
32
|
+
*/
|
|
33
|
+
this.disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
34
|
+
/**
|
|
35
|
+
* Defines the value state of the component.
|
|
36
|
+
*/
|
|
37
|
+
this.valueState = input("None", ...(ngDevMode ? [{ debugName: "valueState" }] : []));
|
|
38
|
+
/**
|
|
39
|
+
* Defines whether the component is read-only.
|
|
40
|
+
|
|
41
|
+
**Note:** A read-only component is not editable,
|
|
42
|
+
but still provides visual feedback upon user interaction.
|
|
43
|
+
*/
|
|
44
|
+
this.readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
45
|
+
/**
|
|
46
|
+
* Defines whether the component is required.
|
|
47
|
+
*/
|
|
48
|
+
this.required = input(false, ...(ngDevMode ? [{ debugName: "required", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
49
|
+
/**
|
|
50
|
+
* Indicates whether a loading indicator should be shown in the picker.
|
|
51
|
+
*/
|
|
52
|
+
this.loading = input(false, ...(ngDevMode ? [{ debugName: "loading", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
53
|
+
/**
|
|
54
|
+
* Defines the filter type of the component.
|
|
55
|
+
*/
|
|
56
|
+
this.filter = input("StartsWithPerTerm", ...(ngDevMode ? [{ debugName: "filter" }] : []));
|
|
57
|
+
/**
|
|
58
|
+
* Defines whether the clear icon of the combobox will be shown.
|
|
59
|
+
*/
|
|
60
|
+
this.showClearIcon = input(false, ...(ngDevMode ? [{ debugName: "showClearIcon", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
61
|
+
/**
|
|
62
|
+
* Defines the accessible ARIA name of the component.
|
|
63
|
+
*/
|
|
64
|
+
this.accessibleName = input(...(ngDevMode ? [undefined, { debugName: "accessibleName" }] : []));
|
|
65
|
+
/**
|
|
66
|
+
* Receives id(or many ids) of the elements that label the component
|
|
67
|
+
*/
|
|
68
|
+
this.accessibleNameRef = input(...(ngDevMode ? [undefined, { debugName: "accessibleNameRef" }] : []));
|
|
69
|
+
/**
|
|
70
|
+
* Indicates whether the items picker is open.
|
|
71
|
+
*/
|
|
72
|
+
this.open = input(false, ...(ngDevMode ? [{ debugName: "open", transform: booleanAttribute }] : [{ transform: booleanAttribute }])); // className is now passed
|
|
73
|
+
/**
|
|
74
|
+
* Fired when the input operation has finished by pressing Enter, focusout or an item is selected.
|
|
75
|
+
*/
|
|
76
|
+
this.ui5Change = output();
|
|
77
|
+
/**
|
|
78
|
+
* Fired when the dropdown is opened.
|
|
79
|
+
*/
|
|
80
|
+
this.ui5Open = output();
|
|
81
|
+
/**
|
|
82
|
+
* Fired when the dropdown is closed.
|
|
83
|
+
*/
|
|
84
|
+
this.ui5Close = output();
|
|
85
|
+
/**
|
|
86
|
+
* Fired when typing in input or clear icon is pressed.
|
|
87
|
+
|
|
88
|
+
**Note:** filterValue property is updated, input is changed.
|
|
89
|
+
*/
|
|
90
|
+
this.ui5Input = output();
|
|
91
|
+
/**
|
|
92
|
+
* Fired when selection is changed by user interaction
|
|
93
|
+
*/
|
|
94
|
+
this.ui5SelectionChange = output();
|
|
95
|
+
this.elementRef = inject(ElementRef);
|
|
96
|
+
this.injector = inject(Injector);
|
|
97
|
+
}
|
|
98
|
+
get element() {
|
|
99
|
+
return this.elementRef.nativeElement;
|
|
100
|
+
}
|
|
101
|
+
ngAfterViewInit() {
|
|
102
|
+
const wcElement = this.element;
|
|
103
|
+
const inputsToSync = [
|
|
104
|
+
'value',
|
|
105
|
+
'name',
|
|
106
|
+
'noTypeahead',
|
|
107
|
+
'placeholder',
|
|
108
|
+
'disabled',
|
|
109
|
+
'valueState',
|
|
110
|
+
'readonly',
|
|
111
|
+
'required',
|
|
112
|
+
'loading',
|
|
113
|
+
'filter',
|
|
114
|
+
'showClearIcon',
|
|
115
|
+
'accessibleName',
|
|
116
|
+
'accessibleNameRef',
|
|
117
|
+
'open',
|
|
118
|
+
];
|
|
119
|
+
// Synchronize inputs (properties)
|
|
120
|
+
for (const inputName of inputsToSync) {
|
|
121
|
+
// Find the corresponding camelCase signal property on the Angular component
|
|
122
|
+
const signalName = inputName.replace(/-./g, (x) => x[1].toUpperCase());
|
|
123
|
+
// Use the Injector to run the effect in the correct context
|
|
124
|
+
if (this[signalName] && typeof this[signalName] === 'function') {
|
|
125
|
+
runInInjectionContext(this.injector, () => {
|
|
126
|
+
effect(() => {
|
|
127
|
+
// Read the signal value
|
|
128
|
+
const value = this[signalName]();
|
|
129
|
+
if (wcElement) {
|
|
130
|
+
// Write the value to the Web Component's property
|
|
131
|
+
wcElement[inputName] = value;
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
const outputsToSync = [
|
|
138
|
+
'ui5Change',
|
|
139
|
+
'ui5Open',
|
|
140
|
+
'ui5Close',
|
|
141
|
+
'ui5Input',
|
|
142
|
+
'ui5SelectionChange',
|
|
143
|
+
];
|
|
144
|
+
// Synchronize outputs (events)
|
|
145
|
+
for (const outputName of outputsToSync) {
|
|
146
|
+
// Map Angular output name to UI5 web component event name
|
|
147
|
+
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
148
|
+
// Ensure the output property exists and has an emit function before adding listener
|
|
149
|
+
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
150
|
+
// Cast the listener to the correct type to satisfy TypeScript
|
|
151
|
+
wcElement.addEventListener(eventName, (e) => {
|
|
152
|
+
this[outputName].emit(e);
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ComboBox, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
158
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.4", type: ComboBox, isStandalone: true, selector: "ui5-combobox, [ui5-combobox]", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, noTypeahead: { classPropertyName: "noTypeahead", publicName: "noTypeahead", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, valueState: { classPropertyName: "valueState", publicName: "valueState", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: false, transformFunction: null }, showClearIcon: { classPropertyName: "showClearIcon", publicName: "showClearIcon", isSignal: true, isRequired: false, transformFunction: null }, accessibleName: { classPropertyName: "accessibleName", publicName: "accessibleName", isSignal: true, isRequired: false, transformFunction: null }, accessibleNameRef: { classPropertyName: "accessibleNameRef", publicName: "accessibleNameRef", isSignal: true, isRequired: false, transformFunction: null }, open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Change: "ui5Change", ui5Open: "ui5Open", ui5Close: "ui5Close", ui5Input: "ui5Input", ui5SelectionChange: "ui5SelectionChange" }, exportAs: ["ui5ComboBox"], hostDirectives: [{ directive: i1.GenericControlValueAccessor }], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
159
|
+
}
|
|
160
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ComboBox, decorators: [{
|
|
161
|
+
type: Component,
|
|
162
|
+
args: [{
|
|
163
|
+
standalone: true,
|
|
164
|
+
selector: 'ui5-combobox, [ui5-combobox]',
|
|
165
|
+
template: '<ng-content></ng-content>',
|
|
166
|
+
exportAs: 'ui5ComboBox',
|
|
167
|
+
hostDirectives: [GenericControlValueAccessor],
|
|
168
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
169
|
+
}]
|
|
170
|
+
}] });
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* Generated bundle index. Do not edit.
|
|
174
|
+
*/
|
|
175
|
+
|
|
176
|
+
export { ComboBox };
|
|
177
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-combo-box.mjs.map
|