@fundamental-ngx/ui5-webcomponents-fiori 0.61.2 → 0.61.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-barcode-scanner-dialog.mjs +147 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-barcode-scanner-dialog.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header-actions.mjs +52 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header-actions.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header.mjs +77 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-title.mjs +131 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-title.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page.mjs +155 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-side-content.mjs +164 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-dynamic-side-content.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-filter-item-option.mjs +81 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-filter-item-option.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-filter-item.mjs +107 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-filter-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-flexible-column-layout.mjs +315 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-flexible-column-layout.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-group-item.mjs +81 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-group-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-illustrated-message.mjs +175 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-illustrated-message.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-media-gallery-item.mjs +116 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-media-gallery-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-media-gallery.mjs +164 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-media-gallery.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-navigation-layout.mjs +111 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-navigation-layout.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-navigation-menu-item.mjs +302 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-navigation-menu-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-navigation-menu.mjs +178 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-navigation-menu.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list-group-item.mjs +155 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list-group-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list-group-list.mjs +298 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list-group-list.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list-internal.mjs +298 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list-internal.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list-item.mjs +190 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list.mjs +130 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-notification-list.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-page.mjs +131 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-page.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-product-switch-item.mjs +161 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-product-switch-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-product-switch.mjs +77 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-product-switch.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-field.mjs +177 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-field.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-item-group.mjs +156 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-item-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-item-show-more.mjs +103 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-item-show-more.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-item.mjs +159 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-message-area.mjs +81 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-message-area.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-scope.mjs +82 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search-scope.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search.mjs +222 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-search.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-branding.mjs +151 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-branding.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-item.mjs +125 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-search.mjs +227 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-search.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-spacer.mjs +52 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-spacer.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar.mjs +350 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-shell-bar.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-group.mjs +121 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-item.mjs +213 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-sub-item.mjs +183 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-sub-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-side-navigation.mjs +152 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-side-navigation.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-sort-item.mjs +81 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-sort-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-theming.mjs +23 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-theming.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-timeline-group-item.mjs +125 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-timeline-group-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-timeline-item.mjs +152 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-timeline-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-timeline.mjs +151 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-timeline.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-upload-collection-item.mjs +257 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-upload-collection-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-upload-collection.mjs +168 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-upload-collection.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-menu-account.mjs +117 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-menu-account.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-menu-item-group.mjs +102 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-menu-item-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-menu-item.mjs +272 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-menu-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-menu.mjs +198 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-menu.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-account-view.mjs +146 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-account-view.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view-group.mjs +156 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view-group.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view-item.mjs +199 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view.mjs +136 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-dialog.mjs +154 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-dialog.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-item.mjs +174 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-item.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-view.mjs +112 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-user-settings-view.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-view-settings-dialog.mjs +166 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-view-settings-dialog.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-wizard-step.mjs +146 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-wizard-step.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-wizard-tab.mjs +52 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-wizard-tab.mjs.map +1 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-wizard.mjs +123 -0
- package/fesm2022/fundamental-ngx-ui5-webcomponents-fiori-wizard.mjs.map +1 -0
- package/package.json +252 -4
- package/types/fundamental-ngx-ui5-webcomponents-fiori-barcode-scanner-dialog.d.ts +72 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header-actions.d.ts +20 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header.d.ts +43 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-title.d.ts +69 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page.d.ts +71 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-dynamic-side-content.d.ts +87 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-filter-item-option.d.ts +28 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-filter-item.d.ts +52 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-flexible-column-layout.d.ts +143 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-group-item.d.ts +28 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-illustrated-message.d.ts +111 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-media-gallery-item.d.ts +56 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-media-gallery.d.ts +90 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-navigation-layout.d.ts +49 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-navigation-menu-item.d.ts +210 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-navigation-menu.d.ts +100 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-notification-list-group-item.d.ts +81 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-notification-list-group-list.d.ts +203 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-notification-list-internal.d.ts +203 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-notification-list-item.d.ts +103 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-notification-list.d.ts +60 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-page.d.ts +66 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-product-switch-item.d.ts +89 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-product-switch.d.ts +43 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-search-field.d.ts +101 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-search-item-group.d.ts +81 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-search-item-show-more.d.ts +36 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-search-item.d.ts +81 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-search-message-area.d.ts +28 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-search-scope.d.ts +29 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-search.d.ts +125 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-branding.d.ts +77 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-item.d.ts +57 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-search.d.ts +129 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-shell-bar-spacer.d.ts +20 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-shell-bar.d.ts +224 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-group.d.ts +64 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-item.d.ts +136 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-side-navigation-sub-item.d.ts +109 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-side-navigation.d.ts +78 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-sort-item.d.ts +28 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-theming.d.ts +11 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-timeline-group-item.d.ts +56 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-timeline-item.d.ts +79 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-timeline.d.ts +79 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-upload-collection-item.d.ts +168 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-upload-collection.d.ts +90 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-menu-account.d.ts +57 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-menu-item-group.d.ts +48 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-menu-item.d.ts +182 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-menu.d.ts +114 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-settings-account-view.d.ts +70 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view-group.d.ts +81 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view-item.d.ts +121 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-settings-appearance-view.d.ts +62 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-settings-dialog.d.ts +77 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-settings-item.d.ts +94 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-user-settings-view.d.ts +56 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-view-settings-dialog.d.ts +84 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-wizard-step.d.ts +87 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-wizard-tab.d.ts +20 -0
- package/types/fundamental-ngx-ui5-webcomponents-fiori-wizard.d.ts +55 -0
|
@@ -0,0 +1,147 @@
|
|
|
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-fiori/dist/BarcodeScannerDialog.js';
|
|
4
|
+
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
|
+
|
|
6
|
+
class BarcodeScannerDialog {
|
|
7
|
+
constructor() {
|
|
8
|
+
/**
|
|
9
|
+
* Indicates whether the dialog is open.
|
|
10
|
+
*/
|
|
11
|
+
this.open = input(false, { ...(ngDevMode ? { debugName: "open" } : {}), transform: booleanAttribute }); // className is now passed
|
|
12
|
+
/**
|
|
13
|
+
* Fired when the user closes the component.
|
|
14
|
+
*/
|
|
15
|
+
this.ui5Close = output();
|
|
16
|
+
/**
|
|
17
|
+
* Fires when the scan fails with error.
|
|
18
|
+
*/
|
|
19
|
+
this.ui5ScanError = output();
|
|
20
|
+
/**
|
|
21
|
+
* Fires when the scan is completed successfuuly.
|
|
22
|
+
*/
|
|
23
|
+
this.ui5ScanSuccess = output();
|
|
24
|
+
/**
|
|
25
|
+
* Available slots for content projection in this component.
|
|
26
|
+
*
|
|
27
|
+
* Slots allow you to insert custom content into predefined areas of the web component.
|
|
28
|
+
* Use the `slot` attribute on child elements to target specific slots.
|
|
29
|
+
*
|
|
30
|
+
* - **footer**: Defines the footer HTML Element.
|
|
31
|
+
|
|
32
|
+
**Note:** When you provide custom content for the `footer` slot, the default close button is not rendered.
|
|
33
|
+
This means you need to include your own mechanism within the custom `footer` to close the dialog,
|
|
34
|
+
such as a button with an event listener that closes the dialog.
|
|
35
|
+
|
|
36
|
+
**Note:** If the `footer` slot is not provided, a default footer with a close button is rendered automatically,
|
|
37
|
+
allowing users to close the dialog without any additional implementation.
|
|
38
|
+
* - **header**: Defines the header HTML Element.
|
|
39
|
+
|
|
40
|
+
**Note:** If `header` slot is provided, the labelling of the dialog is a responsibility of the application developer.
|
|
41
|
+
`accessibleName` should be used.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```html
|
|
45
|
+
* <ui5-barcode-scanner-dialog>
|
|
46
|
+
* <div slot="header">Custom header content</div>
|
|
47
|
+
* <p>Default slot content</p>
|
|
48
|
+
* </ui5-barcode-scanner-dialog>
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @readonly
|
|
52
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}
|
|
53
|
+
*/
|
|
54
|
+
this.slots = [
|
|
55
|
+
{
|
|
56
|
+
"name": "footer",
|
|
57
|
+
"description": "Defines the footer HTML Element.\n\n**Note:** When you provide custom content for the `footer` slot, the default close button is not rendered.\nThis means you need to include your own mechanism within the custom `footer` to close the dialog,\nsuch as a button with an event listener that closes the dialog.\n\n**Note:** If the `footer` slot is not provided, a default footer with a close button is rendered automatically,\nallowing users to close the dialog without any additional implementation.",
|
|
58
|
+
"since": "2.4.0"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"name": "header",
|
|
62
|
+
"description": "Defines the header HTML Element.\n\n**Note:** If `header` slot is provided, the labelling of the dialog is a responsibility of the application developer.\n`accessibleName` should be used.",
|
|
63
|
+
"since": "2.4.0"
|
|
64
|
+
}
|
|
65
|
+
];
|
|
66
|
+
this.elementRef = inject(ElementRef);
|
|
67
|
+
this.injector = inject(Injector);
|
|
68
|
+
/**
|
|
69
|
+
* Content density observer is injected to activate automatic CSS class and
|
|
70
|
+
* UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.
|
|
71
|
+
* @private
|
|
72
|
+
*/
|
|
73
|
+
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
74
|
+
}
|
|
75
|
+
get element() {
|
|
76
|
+
return this.elementRef.nativeElement;
|
|
77
|
+
}
|
|
78
|
+
ngAfterViewInit() {
|
|
79
|
+
const wcElement = this.element;
|
|
80
|
+
const inputsToSync = [
|
|
81
|
+
'open',
|
|
82
|
+
];
|
|
83
|
+
// Synchronize inputs (properties)
|
|
84
|
+
for (const inputName of inputsToSync) {
|
|
85
|
+
// Find the corresponding camelCase signal property on the Angular component
|
|
86
|
+
const signalName = inputName.replace(/-./g, (x) => x[1].toUpperCase());
|
|
87
|
+
// Use the Injector to run the effect in the correct context
|
|
88
|
+
if (this[signalName] && typeof this[signalName] === 'function') {
|
|
89
|
+
runInInjectionContext(this.injector, () => {
|
|
90
|
+
effect(() => {
|
|
91
|
+
// Read the signal value
|
|
92
|
+
const value = this[signalName]();
|
|
93
|
+
if (wcElement) {
|
|
94
|
+
// Write the value to the Web Component's property
|
|
95
|
+
wcElement[inputName] = value;
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
const outputsToSync = [
|
|
102
|
+
'ui5Close',
|
|
103
|
+
'ui5ScanError',
|
|
104
|
+
'ui5ScanSuccess',
|
|
105
|
+
];
|
|
106
|
+
// Synchronize outputs (events)
|
|
107
|
+
for (const outputName of outputsToSync) {
|
|
108
|
+
// Map Angular output name to UI5 web component event name
|
|
109
|
+
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
110
|
+
// Ensure the output property exists and has an emit function before adding listener
|
|
111
|
+
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
112
|
+
// Cast the listener to the correct type to satisfy TypeScript
|
|
113
|
+
wcElement.addEventListener(eventName, (e) => {
|
|
114
|
+
this[outputName].emit(e);
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: BarcodeScannerDialog, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
120
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.0", type: BarcodeScannerDialog, isStandalone: true, selector: "ui5-barcode-scanner-dialog, [ui5-barcode-scanner-dialog]", inputs: { open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Close: "ui5Close", ui5ScanError: "ui5ScanError", ui5ScanSuccess: "ui5ScanSuccess" }, providers: [
|
|
121
|
+
contentDensityObserverProviders({
|
|
122
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
123
|
+
})
|
|
124
|
+
], exportAs: ["ui5BarcodeScannerDialog"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
125
|
+
}
|
|
126
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: BarcodeScannerDialog, decorators: [{
|
|
127
|
+
type: Component,
|
|
128
|
+
args: [{
|
|
129
|
+
standalone: true,
|
|
130
|
+
selector: 'ui5-barcode-scanner-dialog, [ui5-barcode-scanner-dialog]',
|
|
131
|
+
template: '<ng-content></ng-content>',
|
|
132
|
+
exportAs: 'ui5BarcodeScannerDialog',
|
|
133
|
+
providers: [
|
|
134
|
+
contentDensityObserverProviders({
|
|
135
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
136
|
+
})
|
|
137
|
+
],
|
|
138
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
139
|
+
}]
|
|
140
|
+
}], propDecorators: { open: [{ type: i0.Input, args: [{ isSignal: true, alias: "open", required: false }] }], ui5Close: [{ type: i0.Output, args: ["ui5Close"] }], ui5ScanError: [{ type: i0.Output, args: ["ui5ScanError"] }], ui5ScanSuccess: [{ type: i0.Output, args: ["ui5ScanSuccess"] }] } });
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Generated bundle index. Do not edit.
|
|
144
|
+
*/
|
|
145
|
+
|
|
146
|
+
export { BarcodeScannerDialog };
|
|
147
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-fiori-barcode-scanner-dialog.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-fiori-barcode-scanner-dialog.mjs","sources":["../../../../libs/ui5-webcomponents-fiori/barcode-scanner-dialog/index.ts","../../../../libs/ui5-webcomponents-fiori/barcode-scanner-dialog/fundamental-ngx-ui5-webcomponents-fiori-barcode-scanner-dialog.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-fiori/dist/BarcodeScannerDialog.js';\nimport { default as _BarcodeScannerDialog } from '@ui5/webcomponents-fiori/dist/BarcodeScannerDialog.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-barcode-scanner-dialog, [ui5-barcode-scanner-dialog]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5BarcodeScannerDialog',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BarcodeScannerDialog implements AfterViewInit {\n\n /**\n * Indicates whether the dialog is open.\n */\n open = input(false, { transform: booleanAttribute }); // className is now passed\n\n\n\n /**\n * Fired when the user closes the component.\n */\n ui5Close = output<UI5CustomEvent<_BarcodeScannerDialog, 'close'>>();\n\n /**\n * Fires when the scan fails with error.\n */\n ui5ScanError = output<UI5CustomEvent<_BarcodeScannerDialog, 'scan-error'>>();\n\n /**\n * Fires when the scan is completed successfuuly.\n */\n ui5ScanSuccess = output<UI5CustomEvent<_BarcodeScannerDialog, 'scan-success'>>();\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 * - **footer**: Defines the footer HTML Element.\n\n**Note:** When you provide custom content for the `footer` slot, the default close button is not rendered.\nThis means you need to include your own mechanism within the custom `footer` to close the dialog,\nsuch as a button with an event listener that closes the dialog.\n\n**Note:** If the `footer` slot is not provided, a default footer with a close button is rendered automatically,\nallowing users to close the dialog without any additional implementation.\n * - **header**: Defines the header HTML Element.\n\n**Note:** If `header` slot is provided, the labelling of the dialog is a responsibility of the application developer.\n`accessibleName` should be used.\n *\n * @example\n * ```html\n * <ui5-barcode-scanner-dialog>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-barcode-scanner-dialog>\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\": \"footer\",\n \"description\": \"Defines the footer HTML Element.\\n\\n**Note:** When you provide custom content for the `footer` slot, the default close button is not rendered.\\nThis means you need to include your own mechanism within the custom `footer` to close the dialog,\\nsuch as a button with an event listener that closes the dialog.\\n\\n**Note:** If the `footer` slot is not provided, a default footer with a close button is rendered automatically,\\nallowing users to close the dialog without any additional implementation.\",\n \"since\": \"2.4.0\"\n },\n {\n \"name\": \"header\",\n \"description\": \"Defines the header HTML Element.\\n\\n**Note:** If `header` slot is provided, the labelling of the dialog is a responsibility of the application developer.\\n`accessibleName` should be used.\",\n \"since\": \"2.4.0\"\n }\n ];\n\n\n public elementRef: ElementRef<_BarcodeScannerDialog> = 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(): _BarcodeScannerDialog {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'open',\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 // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Close',\n 'ui5ScanError',\n 'ui5ScanSuccess',\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 wcElement.addEventListener(eventName, (e) => {\n\n this[outputName].emit(e as CustomEvent<any>);\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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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, ElementRef, Injector, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@ui5/webcomponents-fiori/dist/DynamicPageHeaderActions.js';
|
|
4
|
+
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
|
+
|
|
6
|
+
class DynamicPageHeaderActions {
|
|
7
|
+
constructor() {
|
|
8
|
+
// className is now passed
|
|
9
|
+
this.elementRef = inject(ElementRef);
|
|
10
|
+
this.injector = inject(Injector);
|
|
11
|
+
/**
|
|
12
|
+
* Content density observer is injected to activate automatic CSS class and
|
|
13
|
+
* UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.
|
|
14
|
+
* @private
|
|
15
|
+
*/
|
|
16
|
+
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
17
|
+
}
|
|
18
|
+
get element() {
|
|
19
|
+
return this.elementRef.nativeElement;
|
|
20
|
+
}
|
|
21
|
+
ngAfterViewInit() {
|
|
22
|
+
const wcElement = this.element;
|
|
23
|
+
}
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: DynamicPageHeaderActions, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: DynamicPageHeaderActions, isStandalone: true, selector: "ui5-dynamic-page-header-actions, [ui5-dynamic-page-header-actions]", providers: [
|
|
26
|
+
contentDensityObserverProviders({
|
|
27
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
28
|
+
})
|
|
29
|
+
], exportAs: ["ui5DynamicPageHeaderActions"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
30
|
+
}
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: DynamicPageHeaderActions, decorators: [{
|
|
32
|
+
type: Component,
|
|
33
|
+
args: [{
|
|
34
|
+
standalone: true,
|
|
35
|
+
selector: 'ui5-dynamic-page-header-actions, [ui5-dynamic-page-header-actions]',
|
|
36
|
+
template: '<ng-content></ng-content>',
|
|
37
|
+
exportAs: 'ui5DynamicPageHeaderActions',
|
|
38
|
+
providers: [
|
|
39
|
+
contentDensityObserverProviders({
|
|
40
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
41
|
+
})
|
|
42
|
+
],
|
|
43
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
44
|
+
}]
|
|
45
|
+
}] });
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Generated bundle index. Do not edit.
|
|
49
|
+
*/
|
|
50
|
+
|
|
51
|
+
export { DynamicPageHeaderActions };
|
|
52
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header-actions.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header-actions.mjs","sources":["../../../../libs/ui5-webcomponents-fiori/dynamic-page-header-actions/index.ts","../../../../libs/ui5-webcomponents-fiori/dynamic-page-header-actions/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header-actions.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-fiori/dist/DynamicPageHeaderActions.js';\nimport { default as _DynamicPageHeaderActions } from '@ui5/webcomponents-fiori/dist/DynamicPageHeaderActions.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-dynamic-page-header-actions, [ui5-dynamic-page-header-actions]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5DynamicPageHeaderActions',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DynamicPageHeaderActions implements AfterViewInit {\n // className is now passed\n\n\n\n\n\n public elementRef: ElementRef<_DynamicPageHeaderActions> = 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(): _DynamicPageHeaderActions {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAuCa,wBAAwB,CAAA;AAZrC,IAAA,WAAA,GAAA;;AAmBS,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;AAc1E,IAAA;AAZC,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa;IACtC;IAEA,eAAe,GAAA;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;IAMhC;8GA5BW,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,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;;;ACtCD;;AAEG;;;;"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, ElementRef, Injector, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@ui5/webcomponents-fiori/dist/DynamicPageHeader.js';
|
|
4
|
+
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
|
+
|
|
6
|
+
class DynamicPageHeader {
|
|
7
|
+
constructor() {
|
|
8
|
+
// className is now passed
|
|
9
|
+
/**
|
|
10
|
+
* Available slots for content projection in this component.
|
|
11
|
+
*
|
|
12
|
+
* Slots allow you to insert custom content into predefined areas of the web component.
|
|
13
|
+
* Use the `slot` attribute on child elements to target specific slots.
|
|
14
|
+
*
|
|
15
|
+
* - **(default)**: Defines the content of the Dynamic Page Header.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```html
|
|
19
|
+
* <ui5-dynamic-page-header>
|
|
20
|
+
* <div slot="header">Custom header content</div>
|
|
21
|
+
* <p>Default slot content</p>
|
|
22
|
+
* </ui5-dynamic-page-header>
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @readonly
|
|
26
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}
|
|
27
|
+
*/
|
|
28
|
+
this.slots = [
|
|
29
|
+
{
|
|
30
|
+
"name": "default",
|
|
31
|
+
"description": "Defines the content of the Dynamic Page Header."
|
|
32
|
+
}
|
|
33
|
+
];
|
|
34
|
+
this.elementRef = inject(ElementRef);
|
|
35
|
+
this.injector = inject(Injector);
|
|
36
|
+
/**
|
|
37
|
+
* Content density observer is injected to activate automatic CSS class and
|
|
38
|
+
* UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.
|
|
39
|
+
* @private
|
|
40
|
+
*/
|
|
41
|
+
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
42
|
+
}
|
|
43
|
+
get element() {
|
|
44
|
+
return this.elementRef.nativeElement;
|
|
45
|
+
}
|
|
46
|
+
ngAfterViewInit() {
|
|
47
|
+
const wcElement = this.element;
|
|
48
|
+
}
|
|
49
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: DynamicPageHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
50
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: DynamicPageHeader, isStandalone: true, selector: "ui5-dynamic-page-header, [ui5-dynamic-page-header]", providers: [
|
|
51
|
+
contentDensityObserverProviders({
|
|
52
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
53
|
+
})
|
|
54
|
+
], exportAs: ["ui5DynamicPageHeader"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
55
|
+
}
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: DynamicPageHeader, decorators: [{
|
|
57
|
+
type: Component,
|
|
58
|
+
args: [{
|
|
59
|
+
standalone: true,
|
|
60
|
+
selector: 'ui5-dynamic-page-header, [ui5-dynamic-page-header]',
|
|
61
|
+
template: '<ng-content></ng-content>',
|
|
62
|
+
exportAs: 'ui5DynamicPageHeader',
|
|
63
|
+
providers: [
|
|
64
|
+
contentDensityObserverProviders({
|
|
65
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
66
|
+
})
|
|
67
|
+
],
|
|
68
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
69
|
+
}]
|
|
70
|
+
}] });
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Generated bundle index. Do not edit.
|
|
74
|
+
*/
|
|
75
|
+
|
|
76
|
+
export { DynamicPageHeader };
|
|
77
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header.mjs","sources":["../../../../libs/ui5-webcomponents-fiori/dynamic-page-header/index.ts","../../../../libs/ui5-webcomponents-fiori/dynamic-page-header/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-header.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-fiori/dist/DynamicPageHeader.js';\nimport { default as _DynamicPageHeader } from '@ui5/webcomponents-fiori/dist/DynamicPageHeader.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-dynamic-page-header, [ui5-dynamic-page-header]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5DynamicPageHeader',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DynamicPageHeader implements AfterViewInit {\n // 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 content of the Dynamic Page Header.\n *\n * @example\n * ```html\n * <ui5-dynamic-page-header>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-dynamic-page-header>\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 content of the Dynamic Page Header.\"\n }\n ];\n\n\n public elementRef: ElementRef<_DynamicPageHeader> = 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(): _DynamicPageHeader {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAuCa,iBAAiB,CAAA;AAZ9B,IAAA,WAAA,GAAA;;AAkBE;;;;;;;;;;;;;;;;;;AAkBG;AACM,QAAA,IAAA,CAAA,KAAK,GAAG;AACb,YAAA;AACI,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,aAAa,EAAE;AAClB;SACJ;AAGM,QAAA,IAAA,CAAA,UAAU,GAAmC,MAAM,CAAC,UAAU,CAAC;AAC/D,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAElC;;;;AAIG;AACc,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAc1E,IAAA;AAZC,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa;IACtC;IAEA,eAAe,GAAA;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;IAMhC;8GAtDW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oDAAA,EAAA,SAAA,EAPjB;AACT,YAAA,+BAA+B,CAAC;gBAC9B,uBAAuB,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI;aAC9E;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,sBAAA,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,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAZ7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oDAAoD;AAC9D,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,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;;;ACtCD;;AAEG;;;;"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, ElementRef, Injector, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@ui5/webcomponents-fiori/dist/DynamicPageTitle.js';
|
|
4
|
+
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
|
+
|
|
6
|
+
class DynamicPageTitle {
|
|
7
|
+
constructor() {
|
|
8
|
+
// className is now passed
|
|
9
|
+
/**
|
|
10
|
+
* Available slots for content projection in this component.
|
|
11
|
+
*
|
|
12
|
+
* Slots allow you to insert custom content into predefined areas of the web component.
|
|
13
|
+
* Use the `slot` attribute on child elements to target specific slots.
|
|
14
|
+
*
|
|
15
|
+
* - **actionsBar**: Defines the bar with actions in the Dynamic page title.
|
|
16
|
+
* - **breadcrumbs**: Defines the content of the breadcrumbs inside Dynamic Page Title.
|
|
17
|
+
* - **(default)**: Defines the content of the Dynamic page title.
|
|
18
|
+
* - **heading**: Defines the content of the Heading of the Dynamic Page.
|
|
19
|
+
|
|
20
|
+
The font size of the title within the `heading` slot can be adjusted to the recommended values using the following CSS variables:
|
|
21
|
+
|
|
22
|
+
**Expanded:** `var(--sapObjectHeader_Title_FontSize)`
|
|
23
|
+
|
|
24
|
+
**Collapsed:** `var(--sapObjectHeader_Title_SnappedFontSize)`
|
|
25
|
+
* - **navigationBar**: Defines the bar with navigation actions in the Dynamic page title.
|
|
26
|
+
* - **snappedHeading**: Defines the heading that is shown only when the header is snapped.
|
|
27
|
+
* - **snappedSubheading**: Defines the content of the title that is shown only when the header is snapped.
|
|
28
|
+
* - **snappedTitleOnMobile**: Defines the content of the snapped title on mobile devices.
|
|
29
|
+
|
|
30
|
+
This slot is displayed only when the `DynamicPageTitle` is in the snapped state on mobile devices.
|
|
31
|
+
It should be used to provide a simplified, single-line title that takes up less space on smaller screens.
|
|
32
|
+
|
|
33
|
+
**Note:**
|
|
34
|
+
- The content set in this slot **overrides** all other content set in the `DynamicPageTitle` slots when displayed.
|
|
35
|
+
- The slot is intended for a single `ui5-title` component.
|
|
36
|
+
* - **subheading**: Defines the content of the title that is shown only when the header is not snapped.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```html
|
|
40
|
+
* <ui5-dynamic-page-title>
|
|
41
|
+
* <div slot="header">Custom header content</div>
|
|
42
|
+
* <p>Default slot content</p>
|
|
43
|
+
* </ui5-dynamic-page-title>
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* @readonly
|
|
47
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}
|
|
48
|
+
*/
|
|
49
|
+
this.slots = [
|
|
50
|
+
{
|
|
51
|
+
"name": "actionsBar",
|
|
52
|
+
"description": "Defines the bar with actions in the Dynamic page title."
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"name": "breadcrumbs",
|
|
56
|
+
"description": "Defines the content of the breadcrumbs inside Dynamic Page Title."
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"name": "default",
|
|
60
|
+
"description": "Defines the content of the Dynamic page title."
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name": "heading",
|
|
64
|
+
"description": "Defines the content of the Heading of the Dynamic Page.\n\nThe font size of the title within the `heading` slot can be adjusted to the recommended values using the following CSS variables:\n\n**Expanded:** `var(--sapObjectHeader_Title_FontSize)`\n\n**Collapsed:** `var(--sapObjectHeader_Title_SnappedFontSize)`"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"name": "navigationBar",
|
|
68
|
+
"description": "Defines the bar with navigation actions in the Dynamic page title."
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"name": "snappedHeading",
|
|
72
|
+
"description": "Defines the heading that is shown only when the header is snapped."
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"name": "snappedSubheading",
|
|
76
|
+
"description": "Defines the content of the title that is shown only when the header is snapped."
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"name": "snappedTitleOnMobile",
|
|
80
|
+
"description": "Defines the content of the snapped title on mobile devices.\n\nThis slot is displayed only when the `DynamicPageTitle` is in the snapped state on mobile devices.\nIt should be used to provide a simplified, single-line title that takes up less space on smaller screens.\n\n**Note:**\n- The content set in this slot **overrides** all other content set in the `DynamicPageTitle` slots when displayed.\n- The slot is intended for a single `ui5-title` component.",
|
|
81
|
+
"since": "2.3.0"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"name": "subheading",
|
|
85
|
+
"description": "Defines the content of the title that is shown only when the header is not snapped."
|
|
86
|
+
}
|
|
87
|
+
];
|
|
88
|
+
this.elementRef = inject(ElementRef);
|
|
89
|
+
this.injector = inject(Injector);
|
|
90
|
+
/**
|
|
91
|
+
* Content density observer is injected to activate automatic CSS class and
|
|
92
|
+
* UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.
|
|
93
|
+
* @private
|
|
94
|
+
*/
|
|
95
|
+
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
96
|
+
}
|
|
97
|
+
get element() {
|
|
98
|
+
return this.elementRef.nativeElement;
|
|
99
|
+
}
|
|
100
|
+
ngAfterViewInit() {
|
|
101
|
+
const wcElement = this.element;
|
|
102
|
+
}
|
|
103
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: DynamicPageTitle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
104
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: DynamicPageTitle, isStandalone: true, selector: "ui5-dynamic-page-title, [ui5-dynamic-page-title]", providers: [
|
|
105
|
+
contentDensityObserverProviders({
|
|
106
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
107
|
+
})
|
|
108
|
+
], exportAs: ["ui5DynamicPageTitle"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
109
|
+
}
|
|
110
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: DynamicPageTitle, decorators: [{
|
|
111
|
+
type: Component,
|
|
112
|
+
args: [{
|
|
113
|
+
standalone: true,
|
|
114
|
+
selector: 'ui5-dynamic-page-title, [ui5-dynamic-page-title]',
|
|
115
|
+
template: '<ng-content></ng-content>',
|
|
116
|
+
exportAs: 'ui5DynamicPageTitle',
|
|
117
|
+
providers: [
|
|
118
|
+
contentDensityObserverProviders({
|
|
119
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
120
|
+
})
|
|
121
|
+
],
|
|
122
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
123
|
+
}]
|
|
124
|
+
}] });
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Generated bundle index. Do not edit.
|
|
128
|
+
*/
|
|
129
|
+
|
|
130
|
+
export { DynamicPageTitle };
|
|
131
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-title.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-title.mjs","sources":["../../../../libs/ui5-webcomponents-fiori/dynamic-page-title/index.ts","../../../../libs/ui5-webcomponents-fiori/dynamic-page-title/fundamental-ngx-ui5-webcomponents-fiori-dynamic-page-title.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-fiori/dist/DynamicPageTitle.js';\nimport { default as _DynamicPageTitle } from '@ui5/webcomponents-fiori/dist/DynamicPageTitle.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-dynamic-page-title, [ui5-dynamic-page-title]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5DynamicPageTitle',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DynamicPageTitle implements AfterViewInit {\n // 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 * - **actionsBar**: Defines the bar with actions in the Dynamic page title.\n * - **breadcrumbs**: Defines the content of the breadcrumbs inside Dynamic Page Title.\n * - **(default)**: Defines the content of the Dynamic page title.\n * - **heading**: Defines the content of the Heading of the Dynamic Page.\n\nThe font size of the title within the `heading` slot can be adjusted to the recommended values using the following CSS variables:\n\n**Expanded:** `var(--sapObjectHeader_Title_FontSize)`\n\n**Collapsed:** `var(--sapObjectHeader_Title_SnappedFontSize)`\n * - **navigationBar**: Defines the bar with navigation actions in the Dynamic page title.\n * - **snappedHeading**: Defines the heading that is shown only when the header is snapped.\n * - **snappedSubheading**: Defines the content of the title that is shown only when the header is snapped.\n * - **snappedTitleOnMobile**: Defines the content of the snapped title on mobile devices.\n\nThis slot is displayed only when the `DynamicPageTitle` is in the snapped state on mobile devices.\nIt should be used to provide a simplified, single-line title that takes up less space on smaller screens.\n\n**Note:**\n- The content set in this slot **overrides** all other content set in the `DynamicPageTitle` slots when displayed.\n- The slot is intended for a single `ui5-title` component.\n * - **subheading**: Defines the content of the title that is shown only when the header is not snapped.\n *\n * @example\n * ```html\n * <ui5-dynamic-page-title>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-dynamic-page-title>\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\": \"actionsBar\",\n \"description\": \"Defines the bar with actions in the Dynamic page title.\"\n },\n {\n \"name\": \"breadcrumbs\",\n \"description\": \"Defines the content of the breadcrumbs inside Dynamic Page Title.\"\n },\n {\n \"name\": \"default\",\n \"description\": \"Defines the content of the Dynamic page title.\"\n },\n {\n \"name\": \"heading\",\n \"description\": \"Defines the content of the Heading of the Dynamic Page.\\n\\nThe font size of the title within the `heading` slot can be adjusted to the recommended values using the following CSS variables:\\n\\n**Expanded:** `var(--sapObjectHeader_Title_FontSize)`\\n\\n**Collapsed:** `var(--sapObjectHeader_Title_SnappedFontSize)`\"\n },\n {\n \"name\": \"navigationBar\",\n \"description\": \"Defines the bar with navigation actions in the Dynamic page title.\"\n },\n {\n \"name\": \"snappedHeading\",\n \"description\": \"Defines the heading that is shown only when the header is snapped.\"\n },\n {\n \"name\": \"snappedSubheading\",\n \"description\": \"Defines the content of the title that is shown only when the header is snapped.\"\n },\n {\n \"name\": \"snappedTitleOnMobile\",\n \"description\": \"Defines the content of the snapped title on mobile devices.\\n\\nThis slot is displayed only when the `DynamicPageTitle` is in the snapped state on mobile devices.\\nIt should be used to provide a simplified, single-line title that takes up less space on smaller screens.\\n\\n**Note:**\\n- The content set in this slot **overrides** all other content set in the `DynamicPageTitle` slots when displayed.\\n- The slot is intended for a single `ui5-title` component.\",\n \"since\": \"2.3.0\"\n },\n {\n \"name\": \"subheading\",\n \"description\": \"Defines the content of the title that is shown only when the header is not snapped.\"\n }\n ];\n\n\n public elementRef: ElementRef<_DynamicPageTitle> = 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(): _DynamicPageTitle {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAuCa,gBAAgB,CAAA;AAZ7B,IAAA,WAAA,GAAA;;AAkBE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCG;AACM,QAAA,IAAA,CAAA,KAAK,GAAG;AACb,YAAA;AACI,gBAAA,MAAM,EAAE,YAAY;AACpB,gBAAA,aAAa,EAAE;AAClB,aAAA;AACD,YAAA;AACI,gBAAA,MAAM,EAAE,aAAa;AACrB,gBAAA,aAAa,EAAE;AAClB,aAAA;AACD,YAAA;AACI,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,aAAa,EAAE;AAClB,aAAA;AACD,YAAA;AACI,gBAAA,MAAM,EAAE,SAAS;AACjB,gBAAA,aAAa,EAAE;AAClB,aAAA;AACD,YAAA;AACI,gBAAA,MAAM,EAAE,eAAe;AACvB,gBAAA,aAAa,EAAE;AAClB,aAAA;AACD,YAAA;AACI,gBAAA,MAAM,EAAE,gBAAgB;AACxB,gBAAA,aAAa,EAAE;AAClB,aAAA;AACD,YAAA;AACI,gBAAA,MAAM,EAAE,mBAAmB;AAC3B,gBAAA,aAAa,EAAE;AAClB,aAAA;AACD,YAAA;AACI,gBAAA,MAAM,EAAE,sBAAsB;AAC9B,gBAAA,aAAa,EAAE,2cAA2c;AAC1d,gBAAA,OAAO,EAAE;AACZ,aAAA;AACD,YAAA;AACI,gBAAA,MAAM,EAAE,YAAY;AACpB,gBAAA,aAAa,EAAE;AAClB;SACJ;AAGM,QAAA,IAAA,CAAA,UAAU,GAAkC,MAAM,CAAC,UAAU,CAAC;AAC9D,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAElC;;;;AAIG;AACc,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAc1E,IAAA;AAZC,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa;IACtC;IAEA,eAAe,GAAA;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;IAMhC;8GA5GW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kDAAA,EAAA,SAAA,EAPhB;AACT,YAAA,+BAA+B,CAAC;gBAC9B,uBAAuB,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI;aAC9E;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,qBAAA,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,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAZ5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,kDAAkD;AAC5D,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,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;;;ACtCD;;AAEG;;;;"}
|
|
@@ -0,0 +1,155 @@
|
|
|
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-fiori/dist/DynamicPage.js';
|
|
4
|
+
import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
|
|
5
|
+
|
|
6
|
+
class DynamicPage {
|
|
7
|
+
constructor() {
|
|
8
|
+
/**
|
|
9
|
+
* Defines if the header is pinned.
|
|
10
|
+
*/
|
|
11
|
+
this.headerPinned = input(false, { ...(ngDevMode ? { debugName: "headerPinned" } : {}), transform: booleanAttribute });
|
|
12
|
+
/**
|
|
13
|
+
* Defines if the header is snapped.
|
|
14
|
+
*/
|
|
15
|
+
this.headerSnapped = input(false, { ...(ngDevMode ? { debugName: "headerSnapped" } : {}), transform: booleanAttribute });
|
|
16
|
+
/**
|
|
17
|
+
* Defines if the pin button is hidden.
|
|
18
|
+
*/
|
|
19
|
+
this.hidePinButton = input(false, { ...(ngDevMode ? { debugName: "hidePinButton" } : {}), transform: booleanAttribute });
|
|
20
|
+
/**
|
|
21
|
+
* Defines if the footer is shown.
|
|
22
|
+
*/
|
|
23
|
+
this.showFooter = input(false, { ...(ngDevMode ? { debugName: "showFooter" } : {}), transform: booleanAttribute }); // className is now passed
|
|
24
|
+
/**
|
|
25
|
+
* Fired when the pin header button is toggled.
|
|
26
|
+
*/
|
|
27
|
+
this.ui5PinButtonToggle = output();
|
|
28
|
+
/**
|
|
29
|
+
* Fired when the expand/collapse area of the title is toggled.
|
|
30
|
+
*/
|
|
31
|
+
this.ui5TitleToggle = output();
|
|
32
|
+
/**
|
|
33
|
+
* Available slots for content projection in this component.
|
|
34
|
+
*
|
|
35
|
+
* Slots allow you to insert custom content into predefined areas of the web component.
|
|
36
|
+
* Use the `slot` attribute on child elements to target specific slots.
|
|
37
|
+
*
|
|
38
|
+
* - **(default)**: Defines the content of the Dynamic Page.
|
|
39
|
+
* - **footerArea**: Defines the footer HTML Element.
|
|
40
|
+
* - **headerArea**: Defines the header HTML Element.
|
|
41
|
+
* - **titleArea**: Defines the title HTML Element.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```html
|
|
45
|
+
* <ui5-dynamic-page>
|
|
46
|
+
* <div slot="header">Custom header content</div>
|
|
47
|
+
* <p>Default slot content</p>
|
|
48
|
+
* </ui5-dynamic-page>
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @readonly
|
|
52
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}
|
|
53
|
+
*/
|
|
54
|
+
this.slots = [
|
|
55
|
+
{
|
|
56
|
+
"name": "default",
|
|
57
|
+
"description": "Defines the content of the Dynamic Page."
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"name": "footerArea",
|
|
61
|
+
"description": "Defines the footer HTML Element."
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"name": "headerArea",
|
|
65
|
+
"description": "Defines the header HTML Element."
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"name": "titleArea",
|
|
69
|
+
"description": "Defines the title HTML Element."
|
|
70
|
+
}
|
|
71
|
+
];
|
|
72
|
+
this.elementRef = inject(ElementRef);
|
|
73
|
+
this.injector = inject(Injector);
|
|
74
|
+
/**
|
|
75
|
+
* Content density observer is injected to activate automatic CSS class and
|
|
76
|
+
* UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.
|
|
77
|
+
* @private
|
|
78
|
+
*/
|
|
79
|
+
this._contentDensityObserver = inject(ContentDensityObserver);
|
|
80
|
+
}
|
|
81
|
+
get element() {
|
|
82
|
+
return this.elementRef.nativeElement;
|
|
83
|
+
}
|
|
84
|
+
ngAfterViewInit() {
|
|
85
|
+
const wcElement = this.element;
|
|
86
|
+
const inputsToSync = [
|
|
87
|
+
'headerPinned',
|
|
88
|
+
'headerSnapped',
|
|
89
|
+
'hidePinButton',
|
|
90
|
+
'showFooter',
|
|
91
|
+
];
|
|
92
|
+
// Synchronize inputs (properties)
|
|
93
|
+
for (const inputName of inputsToSync) {
|
|
94
|
+
// Find the corresponding camelCase signal property on the Angular component
|
|
95
|
+
const signalName = inputName.replace(/-./g, (x) => x[1].toUpperCase());
|
|
96
|
+
// Use the Injector to run the effect in the correct context
|
|
97
|
+
if (this[signalName] && typeof this[signalName] === 'function') {
|
|
98
|
+
runInInjectionContext(this.injector, () => {
|
|
99
|
+
effect(() => {
|
|
100
|
+
// Read the signal value
|
|
101
|
+
const value = this[signalName]();
|
|
102
|
+
if (wcElement) {
|
|
103
|
+
// Write the value to the Web Component's property
|
|
104
|
+
wcElement[inputName] = value;
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
const outputsToSync = [
|
|
111
|
+
'ui5PinButtonToggle',
|
|
112
|
+
'ui5TitleToggle',
|
|
113
|
+
];
|
|
114
|
+
// Synchronize outputs (events)
|
|
115
|
+
for (const outputName of outputsToSync) {
|
|
116
|
+
// Map Angular output name to UI5 web component event name
|
|
117
|
+
const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);
|
|
118
|
+
// Ensure the output property exists and has an emit function before adding listener
|
|
119
|
+
if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {
|
|
120
|
+
// Cast the listener to the correct type to satisfy TypeScript
|
|
121
|
+
wcElement.addEventListener(eventName, (e) => {
|
|
122
|
+
this[outputName].emit(e);
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: DynamicPage, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
128
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.0", type: DynamicPage, isStandalone: true, selector: "ui5-dynamic-page, [ui5-dynamic-page]", inputs: { headerPinned: { classPropertyName: "headerPinned", publicName: "headerPinned", isSignal: true, isRequired: false, transformFunction: null }, headerSnapped: { classPropertyName: "headerSnapped", publicName: "headerSnapped", isSignal: true, isRequired: false, transformFunction: null }, hidePinButton: { classPropertyName: "hidePinButton", publicName: "hidePinButton", isSignal: true, isRequired: false, transformFunction: null }, showFooter: { classPropertyName: "showFooter", publicName: "showFooter", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5PinButtonToggle: "ui5PinButtonToggle", ui5TitleToggle: "ui5TitleToggle" }, providers: [
|
|
129
|
+
contentDensityObserverProviders({
|
|
130
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
131
|
+
})
|
|
132
|
+
], exportAs: ["ui5DynamicPage"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
133
|
+
}
|
|
134
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: DynamicPage, decorators: [{
|
|
135
|
+
type: Component,
|
|
136
|
+
args: [{
|
|
137
|
+
standalone: true,
|
|
138
|
+
selector: 'ui5-dynamic-page, [ui5-dynamic-page]',
|
|
139
|
+
template: '<ng-content></ng-content>',
|
|
140
|
+
exportAs: 'ui5DynamicPage',
|
|
141
|
+
providers: [
|
|
142
|
+
contentDensityObserverProviders({
|
|
143
|
+
supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
|
|
144
|
+
})
|
|
145
|
+
],
|
|
146
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
147
|
+
}]
|
|
148
|
+
}], propDecorators: { headerPinned: [{ type: i0.Input, args: [{ isSignal: true, alias: "headerPinned", required: false }] }], headerSnapped: [{ type: i0.Input, args: [{ isSignal: true, alias: "headerSnapped", required: false }] }], hidePinButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "hidePinButton", required: false }] }], showFooter: [{ type: i0.Input, args: [{ isSignal: true, alias: "showFooter", required: false }] }], ui5PinButtonToggle: [{ type: i0.Output, args: ["ui5PinButtonToggle"] }], ui5TitleToggle: [{ type: i0.Output, args: ["ui5TitleToggle"] }] } });
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* Generated bundle index. Do not edit.
|
|
152
|
+
*/
|
|
153
|
+
|
|
154
|
+
export { DynamicPage };
|
|
155
|
+
//# sourceMappingURL=fundamental-ngx-ui5-webcomponents-fiori-dynamic-page.mjs.map
|