@fundamental-ngx/btp 0.46.0-rc.100

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.
Files changed (124) hide show
  1. package/README.md +7 -0
  2. package/esm2022/fundamental-ngx-btp.mjs +5 -0
  3. package/esm2022/index.mjs +3 -0
  4. package/esm2022/navigation/directives/navigation-home.directive.mjs +19 -0
  5. package/esm2022/navigation/directives/navigation-list-spacer.directive.mjs +24 -0
  6. package/esm2022/navigation/fundamental-ngx-btp-navigation.mjs +5 -0
  7. package/esm2022/navigation/index.mjs +11 -0
  8. package/esm2022/navigation/navigation-component.token.mjs +22 -0
  9. package/esm2022/navigation/navigation-content-end.component.mjs +62 -0
  10. package/esm2022/navigation/navigation-content-start.component.mjs +207 -0
  11. package/esm2022/navigation/navigation-content.token.mjs +3 -0
  12. package/esm2022/navigation/navigation-link.component.mjs +188 -0
  13. package/esm2022/navigation/navigation-list/navigation-list-item.component.mjs +423 -0
  14. package/esm2022/navigation/navigation-list/navigation-list-overflow-item.component.mjs +57 -0
  15. package/esm2022/navigation/navigation-list/navigation-list.component.mjs +125 -0
  16. package/esm2022/navigation/navigation-list-component.token.mjs +3 -0
  17. package/esm2022/navigation/navigation-list-item-component.token.mjs +90 -0
  18. package/esm2022/navigation/navigation.component.mjs +251 -0
  19. package/esm2022/navigation/navigation.service.mjs +14 -0
  20. package/esm2022/navigation/navigation.types.mjs +2 -0
  21. package/esm2022/navigation-menu/fundamental-ngx-btp-navigation-menu.mjs +5 -0
  22. package/esm2022/navigation-menu/index.mjs +6 -0
  23. package/esm2022/navigation-menu/lib/navigation-menu-item.component.mjs +48 -0
  24. package/esm2022/navigation-menu/lib/navigation-menu-popover-control.directive.mjs +19 -0
  25. package/esm2022/navigation-menu/lib/navigation-menu-popover.component.mjs +38 -0
  26. package/esm2022/navigation-menu/lib/navigation-menu.component.mjs +13 -0
  27. package/esm2022/navigation-menu/lib/navigation-menu.module.mjs +17 -0
  28. package/esm2022/search-field/fundamental-ngx-btp-search-field.mjs +5 -0
  29. package/esm2022/search-field/index.mjs +2 -0
  30. package/esm2022/search-field/search-field.component.mjs +62 -0
  31. package/esm2022/shared/fundamental-ngx-btp-shared.mjs +5 -0
  32. package/esm2022/shared/index.mjs +2 -0
  33. package/esm2022/tool-header/components/tool-header/tool-header.component.mjs +227 -0
  34. package/esm2022/tool-header/components/tool-header-product-switch.component.mjs +102 -0
  35. package/esm2022/tool-header/directives/tool-header-action.directive.mjs +43 -0
  36. package/esm2022/tool-header/directives/tool-header-actions.directive.mjs +63 -0
  37. package/esm2022/tool-header/directives/tool-header-auto-mode.directive.mjs +114 -0
  38. package/esm2022/tool-header/directives/tool-header-button.directive.mjs +51 -0
  39. package/esm2022/tool-header/directives/tool-header-element.directive.mjs +17 -0
  40. package/esm2022/tool-header/directives/tool-header-group.directive.mjs +26 -0
  41. package/esm2022/tool-header/directives/tool-header-logo.directive.mjs +19 -0
  42. package/esm2022/tool-header/directives/tool-header-user.directive.mjs +14 -0
  43. package/esm2022/tool-header/fundamental-ngx-btp-tool-header.mjs +5 -0
  44. package/esm2022/tool-header/index.mjs +10 -0
  45. package/esm2022/tool-header/tool-header-action-button.type.mjs +2 -0
  46. package/esm2022/tool-header/tool-header-component.class.mjs +74 -0
  47. package/esm2022/tool-header/tool-header-state.type.mjs +2 -0
  48. package/esm2022/tool-layout/directives/tool-layout-container.directive.mjs +17 -0
  49. package/esm2022/tool-layout/directives/tool-layout-content-container.directive.mjs +50 -0
  50. package/esm2022/tool-layout/directives/tool-layout-header-container.directive.mjs +17 -0
  51. package/esm2022/tool-layout/directives/tool-layout-navigation-container.directive.mjs +37 -0
  52. package/esm2022/tool-layout/fundamental-ngx-btp-tool-layout.mjs +5 -0
  53. package/esm2022/tool-layout/index.mjs +7 -0
  54. package/esm2022/tool-layout/tool-layout.component.mjs +43 -0
  55. package/esm2022/tool-layout/tool-layout.module.mjs +40 -0
  56. package/fesm2022/fundamental-ngx-btp-navigation-menu.mjs +130 -0
  57. package/fesm2022/fundamental-ngx-btp-navigation-menu.mjs.map +1 -0
  58. package/fesm2022/fundamental-ngx-btp-navigation.mjs +1409 -0
  59. package/fesm2022/fundamental-ngx-btp-navigation.mjs.map +1 -0
  60. package/fesm2022/fundamental-ngx-btp-search-field.mjs +69 -0
  61. package/fesm2022/fundamental-ngx-btp-search-field.mjs.map +1 -0
  62. package/fesm2022/fundamental-ngx-btp-shared.mjs +4 -0
  63. package/fesm2022/fundamental-ngx-btp-shared.mjs.map +1 -0
  64. package/fesm2022/fundamental-ngx-btp-tool-header.mjs +717 -0
  65. package/fesm2022/fundamental-ngx-btp-tool-header.mjs.map +1 -0
  66. package/fesm2022/fundamental-ngx-btp-tool-layout.mjs +194 -0
  67. package/fesm2022/fundamental-ngx-btp-tool-layout.mjs.map +1 -0
  68. package/fesm2022/fundamental-ngx-btp.mjs +7 -0
  69. package/fesm2022/fundamental-ngx-btp.mjs.map +1 -0
  70. package/fundamental-ngx-btp-v0.46.0-rc.100.tgz +0 -0
  71. package/index.d.ts +2 -0
  72. package/navigation/README.md +3 -0
  73. package/navigation/directives/navigation-home.directive.d.ts +10 -0
  74. package/navigation/directives/navigation-list-spacer.directive.d.ts +8 -0
  75. package/navigation/index.d.ts +10 -0
  76. package/navigation/navigation-component.token.d.ts +34 -0
  77. package/navigation/navigation-content-end.component.d.ts +23 -0
  78. package/navigation/navigation-content-start.component.d.ts +54 -0
  79. package/navigation/navigation-content.token.d.ts +11 -0
  80. package/navigation/navigation-link.component.d.ts +49 -0
  81. package/navigation/navigation-list/navigation-list-item.component.d.ts +142 -0
  82. package/navigation/navigation-list/navigation-list-overflow-item.component.d.ts +16 -0
  83. package/navigation/navigation-list/navigation-list.component.d.ts +60 -0
  84. package/navigation/navigation-list-component.token.d.ts +17 -0
  85. package/navigation/navigation-list-item-component.token.d.ts +68 -0
  86. package/navigation/navigation.component.d.ts +82 -0
  87. package/navigation/navigation.service.d.ts +8 -0
  88. package/navigation/navigation.types.d.ts +2 -0
  89. package/navigation-menu/README.md +3 -0
  90. package/navigation-menu/index.d.ts +5 -0
  91. package/navigation-menu/lib/navigation-menu-item.component.d.ts +13 -0
  92. package/navigation-menu/lib/navigation-menu-popover-control.directive.d.ts +10 -0
  93. package/navigation-menu/lib/navigation-menu-popover.component.d.ts +11 -0
  94. package/navigation-menu/lib/navigation-menu.component.d.ts +5 -0
  95. package/navigation-menu/lib/navigation-menu.module.d.ts +8 -0
  96. package/package.json +63 -0
  97. package/search-field/README.md +3 -0
  98. package/search-field/index.d.ts +1 -0
  99. package/search-field/search-field.component.d.ts +34 -0
  100. package/shared/README.md +3 -0
  101. package/shared/index.d.ts +1 -0
  102. package/tool-header/README.md +3 -0
  103. package/tool-header/components/tool-header/tool-header.component.d.ts +91 -0
  104. package/tool-header/components/tool-header-product-switch.component.d.ts +11 -0
  105. package/tool-header/directives/tool-header-action.directive.d.ts +35 -0
  106. package/tool-header/directives/tool-header-actions.directive.d.ts +27 -0
  107. package/tool-header/directives/tool-header-auto-mode.directive.d.ts +68 -0
  108. package/tool-header/directives/tool-header-button.directive.d.ts +22 -0
  109. package/tool-header/directives/tool-header-element.directive.d.ts +5 -0
  110. package/tool-header/directives/tool-header-group.directive.d.ts +12 -0
  111. package/tool-header/directives/tool-header-logo.directive.d.ts +5 -0
  112. package/tool-header/directives/tool-header-user.directive.d.ts +5 -0
  113. package/tool-header/index.d.ts +9 -0
  114. package/tool-header/tool-header-action-button.type.d.ts +10 -0
  115. package/tool-header/tool-header-component.class.d.ts +20 -0
  116. package/tool-header/tool-header-state.type.d.ts +14 -0
  117. package/tool-layout/README.md +3 -0
  118. package/tool-layout/directives/tool-layout-container.directive.d.ts +5 -0
  119. package/tool-layout/directives/tool-layout-content-container.directive.d.ts +29 -0
  120. package/tool-layout/directives/tool-layout-header-container.directive.d.ts +5 -0
  121. package/tool-layout/directives/tool-layout-navigation-container.directive.d.ts +13 -0
  122. package/tool-layout/index.d.ts +6 -0
  123. package/tool-layout/tool-layout.component.d.ts +27 -0
  124. package/tool-layout/tool-layout.module.d.ts +11 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fundamental-ngx-btp-tool-header.mjs","sources":["../../../../libs/btp/tool-header/src/directives/tool-header-button.directive.ts","../../../../libs/btp/tool-header/src/components/tool-header-product-switch.component.ts","../../../../libs/btp/tool-header/src/directives/tool-header-action.directive.ts","../../../../libs/btp/tool-header/src/directives/tool-header-actions.directive.ts","../../../../libs/btp/tool-header/src/directives/tool-header-element.directive.ts","../../../../libs/btp/tool-header/src/directives/tool-header-group.directive.ts","../../../../libs/btp/tool-header/src/directives/tool-header-logo.directive.ts","../../../../libs/btp/tool-header/src/directives/tool-header-user.directive.ts","../../../../libs/btp/tool-header/src/tool-header-component.class.ts","../../../../libs/btp/tool-header/src/components/tool-header/tool-header.component.ts","../../../../libs/btp/tool-header/src/components/tool-header/tool-header.component.html","../../../../libs/btp/tool-header/src/directives/tool-header-auto-mode.directive.ts","../../../../libs/btp/tool-header/src/fundamental-ngx-btp-tool-header.ts"],"sourcesContent":["import { Directive, ElementRef, inject, Input, Renderer2 } from '@angular/core';\nimport { HasElementRef } from '@fundamental-ngx/cdk';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\n\nlet itemCounter = 0;\n\n@Directive({\n selector: '[fd-button][fdbToolHeaderButton]',\n host: {\n class: 'fd-button--tool-header'\n },\n standalone: true\n})\nexport class ToolHeaderButtonDirective implements HasElementRef {\n /**\n * Whether the button has a badge.\n * @param hasBadge\n */\n @Input()\n set hasBadge(hasBadge: boolean) {\n if (hasBadge) {\n if (!this._badge) {\n this._badge = this.renderer.createElement('span');\n this.renderer.addClass(this._badge, 'fd-button__badge');\n this.renderer.setAttribute(this._badge, 'id', this._badgeId);\n this.renderer.appendChild(this.elementRef.nativeElement, this._badge);\n }\n } else {\n if (this._badge) {\n this.renderer.removeChild(this.elementRef.nativeElement, this._badge);\n this._badge = undefined;\n }\n }\n }\n\n /** @hidden */\n elementRef: ElementRef<HTMLElement> = inject(ElementRef);\n\n /** @hidden */\n private _badgeId = `fdbToolHeaderButton-badge-${itemCounter++}`;\n\n /** @hidden */\n private _badge?: HTMLElement;\n\n /** @hidden */\n private renderer: Renderer2 = inject(Renderer2);\n\n /** @hidden */\n constructor() {\n inject(ButtonComponent, { host: true }).fdType = 'transparent';\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport {\n BasePopoverClass,\n PopoverBodyComponent,\n PopoverComponent,\n PopoverControlComponent\n} from '@fundamental-ngx/core/popover';\nimport {\n FD_PRODUCT_SWITCH_COMPONENT,\n ProductSwitchButtonDirective,\n ProductSwitchComponent\n} from '@fundamental-ngx/core/product-switch';\nimport { Placement } from '@fundamental-ngx/core/shared';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport { ToolHeaderButtonDirective } from '../directives/tool-header-button.directive';\n\n@Component({\n selector: 'fdb-tool-header-product-switch',\n imports: [\n ButtonComponent,\n FdTranslatePipe,\n PopoverBodyComponent,\n PopoverComponent,\n PopoverControlComponent,\n ToolHeaderButtonDirective,\n ProductSwitchComponent,\n ProductSwitchButtonDirective\n ],\n template: `\n <fd-product-switch\n [placement]=\"placement\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnOutsideClick]=\"closeOnOutsideClick\"\n [(isOpen)]=\"isOpen\"\n (isOpenChange)=\"isOpenChange.emit($event)\"\n [disabled]=\"disabled\"\n [triggers]=\"triggers\"\n [focusTrapped]=\"false\"\n [focusAutoCapture]=\"true\"\n [noArrow]=\"noArrow\"\n [disableScrollbar]=\"true\"\n >\n <button\n *fdProductSwitchButton\n fd-button\n fdbToolHeaderButton\n [attr.aria-label]=\"'coreProductSwitch.ariaLabel' | fdTranslate\"\n [attr.title]=\"'coreProductSwitch.ariaLabel' | fdTranslate\"\n glyph=\"grid\"\n fdType=\"transparent\"\n ></button>\n <ng-content></ng-content>\n </fd-product-switch>\n `,\n providers: [\n {\n provide: FD_PRODUCT_SWITCH_COMPONENT,\n useExisting: ToolHeaderProductSwitchComponent\n }\n ],\n standalone: true\n})\nexport class ToolHeaderProductSwitchComponent extends BasePopoverClass {\n /** Placement of a popover. */\n @Input()\n override placement: Placement = 'bottom-end';\n\n /** Whether the product switch is disabled. */\n @Input()\n override disabled = false;\n}\n","import { Directive, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { FdbToolHeaderActionButton } from '../tool-header-action-button.type';\n\n@Directive({\n selector: '[fdbToolHeaderAction]',\n standalone: true\n})\nexport class ToolHeaderActionDirective implements FdbToolHeaderActionButton {\n /**\n * Glyph which will be used for the action when in overflow mode.\n */\n @Input({ required: true })\n glyph: string;\n\n /**\n * Label which will be used for the action when in overflow mode.\n */\n @Input({ required: true })\n label: string;\n\n /**\n * Whether the action should have a separator next to it\n */\n @Input()\n hasSeparator = false;\n\n /**\n * Whether the action is always visible.\n */\n @Input()\n forceVisibility?: boolean;\n\n /**\n * Event emitted when the action is clicked when in overflow mode.\n **/\n @Output()\n clicked = new EventEmitter<void>();\n\n /** @hidden */\n constructor(readonly templateRef: TemplateRef<any>) {}\n\n /**\n * Function to be called when the action is clicked\n * when in overflow mode.\n **/\n clickCallback = (): void => this.clicked.emit();\n}\n","/* eslint-disable @angular-eslint/no-input-rename */\nimport { ContentChildren, DestroyRef, Directive, inject, Input, QueryList, Signal } from '@angular/core';\nimport { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, combineLatest, map, startWith, Subscription } from 'rxjs';\nimport { FdbToolHeaderActionButton } from '../tool-header-action-button.type';\nimport { ToolHeaderActionDirective } from './tool-header-action.directive';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'fdb-tool-header-actions',\n standalone: true\n})\nexport class ToolHeaderActionsDirective {\n /**\n * Actions to be displayed in the header.\n */\n @Input()\n set actions(actions: FdbToolHeaderActionButton[] | Array<FdbToolHeaderActionButton[]>) {\n this._inputActions$.next(\n (actions as any).reduce(\n (\n acc: FdbToolHeaderActionButton[],\n actionOrActionGroup: FdbToolHeaderActionButton[] | FdbToolHeaderActionButton,\n index: number\n ) => {\n if (Array.isArray(actionOrActionGroup)) {\n acc.push(...actionOrActionGroup);\n if (index !== (actions as any).length - 1) {\n acc[acc.length - 1].hasSeparator = true;\n }\n } else {\n acc.push(actionOrActionGroup);\n }\n return acc;\n },\n []\n )\n );\n }\n\n /** @hidden */\n @ContentChildren(ToolHeaderActionDirective)\n set _actionsFromContent(actions: QueryList<ToolHeaderActionDirective>) {\n if (this._contentActionsSubscription) {\n this._contentActionsSubscription.unsubscribe();\n this._contentActionsSubscription = undefined;\n }\n this._contentActionsSubscription = actions.changes\n .pipe(\n startWith(actions),\n map((ql: QueryList<ToolHeaderActionDirective>) => ql.toArray()),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe((_actions: ToolHeaderActionDirective[]) => {\n this._contentActions$.next(_actions);\n });\n }\n\n /** @hidden */\n _actions: Signal<FdbToolHeaderActionButton[]>;\n /** @hidden */\n protected _contentActions$ = new BehaviorSubject<FdbToolHeaderActionButton[]>([]);\n\n /** @hidden */\n protected _inputActions$ = new BehaviorSubject<FdbToolHeaderActionButton[]>([]);\n\n /** @hidden */\n private _destroyRef = inject(DestroyRef);\n\n /** @hidden */\n private _contentActionsSubscription?: Subscription;\n\n /** @hidden */\n constructor() {\n this._actions = toSignal(\n combineLatest([this._contentActions$, this._inputActions$]).pipe(\n map(([contentActions, inputActions]) => [...contentActions, ...inputActions])\n ),\n { requireSync: true }\n );\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[fdbToolHeaderElement]',\n host: {\n class: 'fd-tool-header__element'\n },\n standalone: true\n})\nexport class ToolHeaderElementDirective {}\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Directive, Input } from '@angular/core';\n\n@Directive({\n selector: '[fdbToolHeaderGroup]',\n host: {\n class: 'fd-tool-header__group',\n '[class.fd-tool-header__group--center]': 'center',\n '[class.fd-tool-header__group--actions]': 'actions'\n },\n standalone: true\n})\nexport class ToolHeaderGroupDirective {\n /** @hidden */\n @Input({ transform: coerceBooleanProperty })\n center: BooleanInput;\n\n /** @hidden */\n @Input({ transform: coerceBooleanProperty })\n actions: BooleanInput;\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[fdbToolHeaderLogo]',\n host: {\n '[attr.role]': '\"button\"',\n '[attr.tabindex]': '0',\n class: 'fd-tool-header__logo'\n },\n standalone: true\n})\nexport class ToolHeaderLogoDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[fdbToolHeaderUser]',\n standalone: true\n})\nexport class ToolHeaderUserDirective {}\n","import { computed, inject, signal } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { SearchFieldComponent } from '@fundamental-ngx/btp/search-field';\nimport { FdbViewMode } from '@fundamental-ngx/btp/shared';\nimport { RtlService } from '@fundamental-ngx/cdk/utils';\nimport { FdbToolHeaderState } from './tool-header-state.type';\n\nexport abstract class ToolHeaderComponentClass {\n /** Mode signal */\n mode = signal<FdbViewMode>('');\n\n /** @hidden */\n orientation = signal<'landscape' | 'portrait'>('landscape');\n\n /** @hidden */\n protected fdbToolHeaderState = computed<FdbToolHeaderState>(() => {\n if (this.mode() === 'phone') {\n return {\n backButtonVisible: this.searchFieldExpanded(),\n menuButtonVisible: !this.searchFieldExpanded(),\n logoVisible: !this.searchFieldExpanded(),\n productNameVisible: false,\n secondTitleVisible: false,\n searchFieldVisible: this.searchFieldExpanded(),\n searchFieldToggleActionVisible: !!this.searchField() && !this.searchFieldExpanded(),\n providedActionsVisible: !this.searchFieldExpanded(),\n userAvatarVisible: !this.searchFieldExpanded(),\n productSwitchVisible: !this.searchFieldExpanded(),\n voiceInputVisible: this.searchFieldExpanded(),\n separatorsBetweenActionsVisible: false\n };\n }\n if (this.mode() === 'tablet') {\n const isPortrait = this.orientation() === 'portrait';\n const isLandscape = !isPortrait;\n const searchFieldVisible = this.searchFieldExpanded() || isLandscape;\n const searchFieldToggleActionVisible = !searchFieldVisible && !!this.searchField();\n\n return {\n backButtonVisible: false,\n menuButtonVisible: true,\n logoVisible: true,\n productNameVisible: isPortrait ? !this.searchFieldExpanded() : true,\n secondTitleVisible: isLandscape ? false : !this.searchFieldExpanded(),\n searchFieldVisible,\n searchFieldToggleActionVisible,\n providedActionsVisible: true,\n userAvatarVisible: true,\n productSwitchVisible: true,\n voiceInputVisible: false,\n separatorsBetweenActionsVisible: this.orientation() === 'landscape'\n };\n }\n return {\n backButtonVisible: false,\n menuButtonVisible: true,\n logoVisible: true,\n productNameVisible: true,\n secondTitleVisible: true,\n searchFieldVisible: true,\n searchFieldToggleActionVisible: false,\n providedActionsVisible: true,\n userAvatarVisible: true,\n productSwitchVisible: true,\n voiceInputVisible: false,\n separatorsBetweenActionsVisible: true\n };\n });\n\n /** Search field signal */\n protected searchField = signal<SearchFieldComponent | null>(null);\n\n /** @hidden */\n protected searchFieldExpanded = signal<boolean>(false);\n\n /**\n * RTL signal\n * @hidden\n */\n protected _rtl = toSignal(inject(RtlService).rtl);\n}\n","/* eslint-disable @angular-eslint/no-input-rename */\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { AsyncPipe, NgForOf, NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n EventEmitter,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n Output,\n ViewEncapsulation,\n inject\n} from '@angular/core';\nimport {\n NavigationMenuComponent,\n NavigationMenuItemComponent,\n NavigationMenuPopoverComponent,\n NavigationMenuPopoverControlDirective\n} from '@fundamental-ngx/btp/navigation-menu';\nimport { SearchFieldComponent } from '@fundamental-ngx/btp/search-field';\nimport { FdbViewMode } from '@fundamental-ngx/btp/shared';\nimport { FD_PRODUCT_SWITCH_COMPONENT, FocusableItemDirective, FocusableListDirective } from '@fundamental-ngx/core';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport { contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport {\n GlyphMenuAddonDirective,\n MenuAddonDirective,\n MenuComponent,\n MenuInteractiveComponent,\n MenuItemComponent,\n MenuTitleDirective,\n MenuTriggerDirective\n} from '@fundamental-ngx/core/menu';\nimport {\n OverflowExpandDirective,\n OverflowItemRefDirective,\n OverflowLayoutComponent,\n OverflowLayoutItemDirective\n} from '@fundamental-ngx/core/overflow-layout';\nimport { PopoverBodyDirective, PopoverComponent, PopoverControlComponent } from '@fundamental-ngx/core/popover';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport { Subscription, first } from 'rxjs';\nimport { ToolHeaderActionsDirective } from '../../directives/tool-header-actions.directive';\nimport { ToolHeaderButtonDirective } from '../../directives/tool-header-button.directive';\nimport { ToolHeaderElementDirective } from '../../directives/tool-header-element.directive';\nimport { ToolHeaderGroupDirective } from '../../directives/tool-header-group.directive';\nimport { ToolHeaderLogoDirective } from '../../directives/tool-header-logo.directive';\nimport { ToolHeaderUserDirective } from '../../directives/tool-header-user.directive';\nimport { ToolHeaderComponentClass } from '../../tool-header-component.class';\n\nconst imports = [\n ToolHeaderGroupDirective,\n NgIf,\n NgTemplateOutlet,\n OverflowLayoutComponent,\n NgForOf,\n OverflowLayoutItemDirective,\n OverflowItemRefDirective,\n OverflowExpandDirective,\n PopoverComponent,\n PopoverControlComponent,\n PopoverBodyDirective,\n MenuTriggerDirective,\n MenuComponent,\n MenuItemComponent,\n MenuInteractiveComponent,\n MenuTitleDirective,\n MenuAddonDirective,\n GlyphMenuAddonDirective,\n ToolHeaderElementDirective,\n IconComponent,\n ButtonComponent,\n ToolHeaderButtonDirective,\n ToolHeaderLogoDirective,\n FdTranslatePipe\n];\n\n@Component({\n selector: 'fdb-tool-header',\n templateUrl: './tool-header.component.html',\n styleUrls: ['./tool-header.component.scss'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'fd-tool-header',\n '[class.fd-tool-header--menu]': 'showMenuButton'\n },\n imports: [\n imports,\n NavigationMenuComponent,\n NavigationMenuItemComponent,\n FocusableListDirective,\n FocusableItemDirective,\n NavigationMenuPopoverComponent,\n NavigationMenuPopoverControlDirective,\n AsyncPipe\n ],\n providers: [\n contentDensityObserverProviders(),\n {\n provide: ToolHeaderComponentClass,\n useExisting: ToolHeaderComponent\n }\n ]\n})\nexport class ToolHeaderComponent extends ToolHeaderComponentClass implements OnDestroy {\n /**\n * (required) the Product Name is the official name of the tool.\n */\n @Input({ required: true }) productName!: string;\n /**\n * Second Title is an optional second text identifier of the tool.\n **/\n @Input() secondTitle?: string;\n\n /** Mode */\n @Input('mode')\n set _mode(mode: FdbViewMode) {\n if (mode !== this.mode()) {\n this.mode.set(mode);\n }\n }\n\n /** @hidden */\n @Input('orientation')\n set _orientation(orientation: 'landscape' | 'portrait') {\n if (orientation !== this.orientation()) {\n this.orientation.set(orientation);\n }\n }\n\n /**\n * Whether to show the menu button\n */\n @Input({ transform: coerceBooleanProperty })\n showMenuButton: BooleanInput;\n\n /**\n * Whether to show the voice input action button on\n * the right side of the tool header, when the mode is mobile\n * and the search input is expanded\n */\n @Input({ transform: coerceBooleanProperty })\n showVoiceInputAction: BooleanInput = true;\n\n /**\n * Event emitted when the menu button is clicked\n **/\n @Output()\n menuClick = new EventEmitter<void>();\n\n /**\n * Event emitted when user intends to expand the menu.\n * Happens when user clicks `right arrow` key on the menu button\n * if on ltr or `left arrow` key if on rtl.\n **/\n @Output()\n menuExpand = new EventEmitter<void>();\n\n /**\n * Event emitted when user intends to collapse the menu.\n * Happens when user clicks `left arrow` key on the menu button\n * if on ltr or `right arrow` key if on rtl.\n **/\n @Output()\n menuCollapse = new EventEmitter<void>();\n\n /**\n * Event emitted when the microphone button is clicked\n **/\n @Output()\n microphoneClick = new EventEmitter<void>();\n\n /**\n * Event emitted when the default logo is clicked\n */\n @Output()\n logoClick = new EventEmitter<void>();\n\n /** @hidden */\n @ContentChild(ToolHeaderActionsDirective)\n _toolHeaderActionsDirective?: ToolHeaderActionsDirective;\n\n /** @hidden */\n @ContentChild(ToolHeaderLogoDirective)\n _toolHeaderLogoDirective?: ToolHeaderLogoDirective;\n\n /** @hidden */\n @ContentChild(SearchFieldComponent)\n set _searchField(searchField: SearchFieldComponent) {\n this.searchField.set(searchField);\n }\n\n /** @hidden */\n @ContentChild(ToolHeaderUserDirective)\n _toolHeaderUser?: ToolHeaderUserDirective;\n\n /** @hidden */\n @ContentChild(FD_PRODUCT_SWITCH_COMPONENT)\n _toolHeaderProductSwitch?: unknown;\n\n /** @hidden */\n private _searchFieldOutsideClickSubscription?: Subscription;\n\n /** @hidden */\n private _ngZone = inject(NgZone);\n\n /**\n * The handler, responsible for closing the search field\n * on outside click\n * @hidden\n **/\n @HostListener('document:click', ['$event'])\n _onClick(event: MouseEvent): void {\n if (this.searchFieldExpanded()) {\n if (\n this.mode() === 'tablet' &&\n this.orientation() === 'portrait' &&\n this.searchField() &&\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n !event.composedPath().includes(this.searchField()!.elementRef.nativeElement)\n ) {\n this.searchFieldExpanded.set(false);\n }\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n if (this._searchFieldOutsideClickSubscription) {\n this._searchFieldOutsideClickSubscription.unsubscribe();\n }\n }\n\n /**\n * Expand the search field\n **/\n expandSearchField(): void {\n this.searchFieldExpanded.set(true);\n this._ngZone.onStable.pipe(first()).subscribe(() => {\n this.searchField()?.focus();\n });\n }\n\n /** @hidden */\n protected _handleMenuLeftArrowKey(): void {\n if (this._rtl()) {\n this.menuExpand.emit();\n } else {\n this.menuCollapse.emit();\n }\n }\n\n /** @hidden */\n protected _handleMenuRightArrowKey(): void {\n if (this._rtl()) {\n this.menuCollapse.emit();\n } else {\n this.menuExpand.emit();\n }\n }\n}\n","<div fdbToolHeaderGroup [class.fd-tool-header--menu]=\"showMenuButton\">\n <div fdbToolHeaderElement *ngIf=\"fdbToolHeaderState().backButtonVisible\">\n <button fd-button fdbToolHeaderButton glyph=\"slim-arrow-left\" (click)=\"searchFieldExpanded.set(false)\"></button>\n </div>\n <div fdbToolHeaderElement *ngIf=\"fdbToolHeaderState().menuButtonVisible && showMenuButton\">\n <button\n fd-button\n fdbToolHeaderButton\n [title]=\"'btpToolHeader.menuButtonAriaLabel' | fdTranslate\"\n [ariaLabel]=\"'btpToolHeader.menuButtonAriaLabel' | fdTranslate\"\n glyph=\"menu2\"\n (keydown.arrowLeft)=\"_handleMenuLeftArrowKey()\"\n (keydown.arrowRight)=\"_handleMenuRightArrowKey()\"\n (click)=\"menuClick.emit()\"\n ></button>\n </div>\n <div fdbToolHeaderElement *ngIf=\"fdbToolHeaderState().logoVisible\">\n <ng-container *ngIf=\"_toolHeaderLogoDirective; else defaultLogo\">\n <ng-content select=\"[fdbToolHeaderLogo]\"></ng-content>\n </ng-container>\n <ng-template #defaultLogo>\n <img\n fdbToolHeaderLogo\n (click)=\"logoClick.emit()\"\n src=\"https://unpkg.com/fundamental-styles/dist/images/sap-logo.png\"\n srcset=\"\n https://unpkg.com/fundamental-styles/dist/images/sap-logo@2x.png 1x,\n https://unpkg.com/fundamental-styles/dist/images/sap-logo@3x.png 2x,\n https://unpkg.com/fundamental-styles/dist/images/sap-logo@4x.png 3x\n \"\n alt=\"SAP logo\"\n aria-label=\"SAP logo\"\n title=\"SAP logo\"\n />\n </ng-template>\n </div>\n <div fdbToolHeaderElement *ngIf=\"fdbToolHeaderState().productNameVisible\">\n <h1 class=\"fd-tool-header__product-name\">\n {{ productName }}\n </h1>\n </div>\n <div fdbToolHeaderElement *ngIf=\"fdbToolHeaderState().secondTitleVisible && secondTitle\">\n <div class=\"fd-tool-header__second-title\">\n {{ secondTitle }}\n </div>\n </div>\n</div>\n\n<div fdbToolHeaderGroup center *ngIf=\"fdbToolHeaderState().searchFieldVisible\">\n <ng-content select=\"fdb-search-field\"></ng-content>\n</div>\n\n<div fdbToolHeaderGroup actions>\n <fd-overflow-layout fdbToolHeaderElement [style.justify-content]=\"'end'\">\n <ng-container *ngIf=\"fdbToolHeaderState().searchFieldToggleActionVisible\">\n <div fdbToolHeaderElement *fdOverflowItemRef=\"let hidden\" [forceVisibility]=\"true\" fdOverflowLayoutItem>\n <button\n fd-button\n fdbToolHeaderButton\n glyph=\"search\"\n (click)=\"$event.stopPropagation(); expandSearchField()\"\n ></button>\n </div>\n </ng-container>\n <ng-container *ngIf=\"fdbToolHeaderState().providedActionsVisible\">\n <ng-container *ngFor=\"let action of _toolHeaderActionsDirective?._actions()\">\n <div\n fdbToolHeaderElement\n *fdOverflowItemRef=\"let hidden\"\n [forceVisibility]=\"!!action.forceVisibility\"\n fdOverflowLayoutItem\n >\n <ng-template\n [ngIf]=\"!!action.templateRef\"\n [ngIfThen]=\"$any(action.templateRef)\"\n [ngIfElse]=\"defaultActionButtonTemplate\"\n ></ng-template>\n <ng-template #defaultActionButtonTemplate>\n <button\n fd-button\n fdbToolHeaderButton\n [glyph]=\"action.glyph\"\n (click)=\"action.clickCallback()\"\n [ariaLabel]=\"action.label\"\n >\n <span class=\"fd-button__badge\" *ngIf=\"action.hasBadge\"></span>\n </button>\n </ng-template>\n <div\n class=\"fd-tool-header__separator\"\n *ngIf=\"action.hasSeparator && fdbToolHeaderState().separatorsBetweenActionsVisible\"\n ></div>\n </div>\n </ng-container>\n </ng-container>\n\n <fdb-navigation-menu-popover *fdOverflowExpand=\"let overflowItems\" fdbToolHeaderElement>\n <button *fdbNavigationMenuPopoverControl fd-button fdbToolHeaderButton glyph=\"overflow\"></button>\n <ul *fdPopoverBody fdkFocusableList [wrap]=\"true\" fdb-navigation-menu>\n <ng-container *ngFor=\"let item of overflowItems\">\n <ng-container *ngIf=\"_toolHeaderActionsDirective?._actions() as actions\">\n <li\n *ngIf=\"\n fdbToolHeaderState().searchFieldToggleActionVisible\n ? actions[item.globalIndex - 1]\n : actions[item.globalIndex] as action\n \"\n fdb-navigation-menu-item\n fdkFocusableItem\n [glyph]=\"action.glyph\"\n (click)=\"action.clickCallback()\"\n [label]=\"action.label\"\n ></li>\n </ng-container>\n </ng-container>\n </ul>\n </fdb-navigation-menu-popover>\n </fd-overflow-layout>\n <ng-container *ngIf=\"fdbToolHeaderState().userAvatarVisible && _toolHeaderUser\">\n <div fdbToolHeaderElement>\n <div class=\"fd-tool-header__separator\"></div>\n <ng-content select=\"[fdbToolHeaderUser]\"></ng-content>\n </div>\n </ng-container>\n <ng-container *ngIf=\"fdbToolHeaderState().productSwitchVisible && _toolHeaderProductSwitch\">\n <div fdbToolHeaderElement>\n <div class=\"fd-tool-header__separator\"></div>\n <ng-content select=\"fdb-tool-header-product-switch, fd-product-switch\"></ng-content>\n </div>\n </ng-container>\n <div fdbToolHeaderElement *ngIf=\"fdbToolHeaderState().voiceInputVisible\">\n <button\n fd-button\n fdbToolHeaderButton\n glyph=\"microphone\"\n [ariaLabel]=\"'Search with voice'\"\n (click)=\"microphoneClick.emit()\"\n ></button>\n </div>\n</div>\n","import { computed, Directive, ElementRef, EventEmitter, inject, Input, Output, signal } from '@angular/core';\nimport { takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { FdbViewMode } from '@fundamental-ngx/btp/shared';\nimport { HasElementRef, ResizeObserverService, ResponsiveBreakpoints } from '@fundamental-ngx/cdk/utils';\nimport { ContentDensityDirective, ContentDensityMode } from '@fundamental-ngx/core/content-density';\nimport { distinctUntilChanged, map, startWith } from 'rxjs';\nimport { ToolHeaderComponent } from '../components/tool-header/tool-header.component';\n\ninterface FdbToolHeaderModeConfig {\n desktop: number;\n tabletLandscape: [number, number];\n tabletPortrait: [number, number];\n phone: number;\n}\n\nconst DEFAULT_CONFIG: FdbToolHeaderModeConfig = {\n desktop: ResponsiveBreakpoints.L + 1,\n tabletLandscape: [ResponsiveBreakpoints.M + 1, ResponsiveBreakpoints.L],\n tabletPortrait: [ResponsiveBreakpoints.S + 1, ResponsiveBreakpoints.M],\n phone: ResponsiveBreakpoints.S\n};\n\n@Directive({\n selector: 'fdb-tool-header[fdbToolHeaderAutoMode]',\n exportAs: 'fdbToolHeaderAutoMode',\n hostDirectives: [ContentDensityDirective],\n standalone: true\n})\nexport class ToolHeaderAutoModeDirective implements HasElementRef {\n /**\n * What sizes should be used to determine mode.\n * Sizes mean the width of the tool header, not the whole screen.\n **/\n @Input() set config(config: Partial<FdbToolHeaderModeConfig>) {\n this._config.set({ ...DEFAULT_CONFIG, ...config });\n }\n\n /**\n * Current mode of the ToolHeaderComponent\n */\n @Output()\n modeChange = new EventEmitter<FdbViewMode>();\n\n /**\n * Current orientation of the ToolHeaderComponent\n */\n @Output()\n orientationChange = new EventEmitter<'landscape' | 'portrait'>();\n\n /**\n * Current content density of the ToolHeaderComponent\n */\n @Output()\n contentDensityChange = new EventEmitter<ContentDensityMode>();\n\n /**\n * Reference to the element on which the directive is applied.\n */\n elementRef: ElementRef = inject(ElementRef);\n\n /**\n * Current configuration of the directive.\n */\n protected _config = signal(DEFAULT_CONFIG);\n\n /** @hidden */\n protected _contentDensity = inject(ContentDensityDirective);\n\n /**\n * Signal of the Width of the element\n */\n protected _elementWidth = toSignal(\n inject(ResizeObserverService)\n .observe(this.elementRef.nativeElement)\n .pipe(\n map((entries) => entries[0].contentRect.width),\n startWith(this.elementRef.nativeElement.clientWidth)\n ),\n { requireSync: true }\n );\n /**\n * Reference to the ToolHeaderComponent\n */\n protected _toolHeaderComponent = inject(ToolHeaderComponent, { host: true });\n\n /**\n * Current mode of the ToolHeaderComponent\n */\n protected _currentMode = computed(() => this._getMode(this._elementWidth(), this._config()));\n\n /**\n * @hidden\n */\n constructor() {\n toObservable(this._currentMode)\n .pipe(\n distinctUntilChanged((a, b) => a[0] === b[0] && a[1] === b[1]),\n takeUntilDestroyed()\n )\n .subscribe((_mode) => {\n const [mode, orientation = 'landscape'] = _mode;\n this._toolHeaderComponent._mode = mode;\n this._toolHeaderComponent._orientation = orientation;\n const contentDensity = mode ? ContentDensityMode.COMPACT : ContentDensityMode.COZY;\n this._contentDensity.fdContentDensity = contentDensity;\n this.modeChange.emit(mode);\n this.orientationChange.emit(orientation);\n this.contentDensityChange.emit(contentDensity);\n });\n }\n\n /**\n * What mode should be used for the given width and configuration\n * @param width\n * @param config\n * @private\n */\n private _getMode(width: number, config: FdbToolHeaderModeConfig): [FdbViewMode, 'landscape' | 'portrait'] {\n if (width >= config.desktop) {\n return ['', 'landscape'];\n }\n if (width <= config.phone) {\n return ['phone', 'landscape'];\n }\n return [\n 'tablet',\n width >= config.tabletLandscape[0] && width <= config.tabletLandscape[1] ? 'landscape' : 'portrait'\n ];\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["FD_PRODUCT_SWITCH_COMPONENT"],"mappings":"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"}
@@ -0,0 +1,194 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Directive, inject, ElementRef, Input, HostBinding, Component, ViewEncapsulation, ChangeDetectionStrategy, NgModule } from '@angular/core';
3
+ import { __decorate, __metadata } from 'tslib';
4
+ import { applyCssClass } from '@fundamental-ngx/cdk/utils';
5
+
6
+ class ToolLayoutContainerDirective {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
8
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: ToolLayoutContainerDirective, isStandalone: true, selector: "[fdbToolLayoutContainer]", host: { classAttribute: "fd-tool-layout__container" }, ngImport: i0 }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutContainerDirective, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: '[fdbToolLayoutContainer]',
14
+ standalone: true,
15
+ host: {
16
+ class: 'fd-tool-layout__container'
17
+ }
18
+ }]
19
+ }] });
20
+
21
+ class ToolLayoutContentContainerDirective {
22
+ constructor() {
23
+ /** @hidden */
24
+ this.elementRef = inject(ElementRef);
25
+ }
26
+ /** @hidden
27
+ * CssClassBuilder interface implementation
28
+ * function must return single string
29
+ * function is responsible for order which css classes are applied
30
+ */
31
+ buildComponentCssClass() {
32
+ return [
33
+ 'fd-tool-layout__content-container',
34
+ this.background ? `fd-tool-layout__content-container--${this.background}` : '',
35
+ this.class
36
+ ];
37
+ }
38
+ /** @hidden */
39
+ ngOnInit() {
40
+ this.buildComponentCssClass();
41
+ }
42
+ /** @hidden */
43
+ ngOnChanges() {
44
+ this.buildComponentCssClass();
45
+ }
46
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutContentContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
47
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: ToolLayoutContentContainerDirective, isStandalone: true, selector: "[fdbToolLayoutContentContainer]", inputs: { class: "class", background: "background" }, usesOnChanges: true, ngImport: i0 }); }
48
+ }
49
+ __decorate([
50
+ applyCssClass,
51
+ __metadata("design:type", Function),
52
+ __metadata("design:paramtypes", []),
53
+ __metadata("design:returntype", Array)
54
+ ], ToolLayoutContentContainerDirective.prototype, "buildComponentCssClass", null);
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutContentContainerDirective, decorators: [{
56
+ type: Directive,
57
+ args: [{
58
+ selector: '[fdbToolLayoutContentContainer]',
59
+ standalone: true
60
+ }]
61
+ }], propDecorators: { class: [{
62
+ type: Input
63
+ }], background: [{
64
+ type: Input
65
+ }], buildComponentCssClass: [] } });
66
+
67
+ class ToolLayoutHeaderContainerDirective {
68
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutHeaderContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
69
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: ToolLayoutHeaderContainerDirective, isStandalone: true, selector: "[fdbToolLayoutHeaderContainer]", host: { classAttribute: "fd-tool-layout__header-container" }, ngImport: i0 }); }
70
+ }
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutHeaderContainerDirective, decorators: [{
72
+ type: Directive,
73
+ args: [{
74
+ selector: '[fdbToolLayoutHeaderContainer]',
75
+ standalone: true,
76
+ host: {
77
+ class: 'fd-tool-layout__header-container'
78
+ }
79
+ }]
80
+ }] });
81
+
82
+ class ToolLayoutNavigationContainerDirective {
83
+ constructor() {
84
+ /**
85
+ * whether the navigation is a popup
86
+ */
87
+ this.popup = false;
88
+ /**
89
+ * whether the navigation is horizontal
90
+ */
91
+ this.horizontal = false;
92
+ }
93
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutNavigationContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
94
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: ToolLayoutNavigationContainerDirective, isStandalone: true, selector: "[fdbToolLayoutNavigationContainer]", inputs: { popup: "popup", horizontal: "horizontal" }, host: { properties: { "class.fd-tool-layout__navigation-container--popup": "this.popup", "class.fd-tool-layout__navigation-container--horizontal": "this.horizontal" }, classAttribute: "fd-tool-layout__navigation-container" }, ngImport: i0 }); }
95
+ }
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutNavigationContainerDirective, decorators: [{
97
+ type: Directive,
98
+ args: [{
99
+ selector: '[fdbToolLayoutNavigationContainer]',
100
+ standalone: true,
101
+ host: {
102
+ class: 'fd-tool-layout__navigation-container'
103
+ }
104
+ }]
105
+ }], propDecorators: { popup: [{
106
+ type: HostBinding,
107
+ args: ['class.fd-tool-layout__navigation-container--popup']
108
+ }, {
109
+ type: Input
110
+ }], horizontal: [{
111
+ type: HostBinding,
112
+ args: ['class.fd-tool-layout__navigation-container--horizontal']
113
+ }, {
114
+ type: Input
115
+ }] } });
116
+
117
+ class ToolLayoutComponent {
118
+ constructor() {
119
+ /** @hidden */
120
+ this.elementRef = inject(ElementRef);
121
+ }
122
+ /** @hidden
123
+ * CssClassBuilder interface implementation
124
+ * function must return single string
125
+ * function is responsible for order which css classes are applied
126
+ */
127
+ buildComponentCssClass() {
128
+ return ['fd-tool-layout', this.mode ? `fd-tool-layout--${this.mode}` : '', this.class];
129
+ }
130
+ /** @hidden */
131
+ ngOnInit() {
132
+ this.buildComponentCssClass();
133
+ }
134
+ /** @hidden */
135
+ ngOnChanges() {
136
+ this.buildComponentCssClass();
137
+ }
138
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
139
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ToolLayoutComponent, isStandalone: true, selector: "[fdbToolLayout]", inputs: { class: "class", mode: "mode" }, usesOnChanges: true, ngImport: i0, template: ` <ng-content></ng-content>`, isInline: true, styles: ["/*!\n * Fundamental Library Styles v0.30.2\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-tool-layout{--fdToolLayout_Padding:.5rem .5rem 0 .5rem;--fdToolLayout_Navigation_Container_Margin_Top:.5rem;--fdToolLayout_Navigation_Container_Margin_Right:.5rem;--fdToolLayout_Content_Container_Margin_Top:.5rem;--fdToolLayout_Content_Container_Border_Radius:.5rem .5rem 0 0;--fdToolLayout_Content_Container_Background:var(--sapBackgroundColor);--fdToolLayout_Content_Container_BoxShadow:var(--sapToolLayoutContent_Shadow1);-webkit-box-sizing:border-box;background:var(--fdToolLayout_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:100%;line-height:var(--sapContent_LineHeight);margin:0;padding:0;padding:var(--fdToolLayout_Padding);width:100%}.fd-tool-layout:after,.fd-tool-layout:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__container{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tool-layout__container:after,.fd-tool-layout__container:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__header-container{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-tool-layout__header-container:after,.fd-tool-layout__header-container:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__navigation-container{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;margin-right:var(--fdToolLayout_Navigation_Container_Margin_Right);margin-top:var(--fdToolLayout_Navigation_Container_Margin_Top);padding:0}.fd-tool-layout__navigation-container:after,.fd-tool-layout__navigation-container:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__navigation-container[dir=rtl],[dir=rtl] .fd-tool-layout__navigation-container{margin-left:var(--fdToolLayout_Navigation_Container_Margin_Right);margin-right:0}.fd-tool-layout__navigation-container--horizontal,.fd-tool-layout__navigation-container--popup{--fdToolLayout_Navigation_Container_Margin_Top:0;--fdToolLayout_Navigation_Container_Margin_Right:0}.fd-tool-layout__navigation-container--horizontal{flex:1;min-width:100%}.fd-tool-layout__navigation-container--horizontal+.fd-tool-layout__content-container{min-width:100%}.fd-tool-layout__content-container{-webkit-box-sizing:border-box;-webkit-box-flex:1;-ms-flex:1;-webkit-box-shadow:var(--fdToolLayout_Content_Container_BoxShadow);background:var(--fdToolLayout_Content_Container_Background);border:0;border-radius:var(--fdToolLayout_Content_Container_Border_Radius);box-shadow:var(--fdToolLayout_Content_Container_BoxShadow);box-sizing:border-box;color:var(--sapTextColor);flex:1;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:100%;line-height:var(--sapContent_LineHeight);margin:0;margin-top:var(--fdToolLayout_Content_Container_Margin_Top);overflow:hidden;padding:0;width:100%}.fd-tool-layout__content-container:after,.fd-tool-layout__content-container:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__content-container--transparent{--fdToolLayout_Content_Container_Background:transparent;--fdToolLayout_Content_Container_BoxShadow:none}.fd-tool-layout__content-container--list{--fdToolLayout_Content_Container_Background:var(--sapGroup_ContentBackground)}.fd-tool-layout--tablet{--fdToolLayout_Padding:.5rem;--fdToolLayout_Content_Container_Border_Radius:.5rem}.fd-tool-layout--phone{--fdToolLayout_Padding:.25rem;--fdToolLayout_Content_Container_Margin_Top:.25rem;--fdToolLayout_Content_Container_Border_Radius:.25rem}.fd-tool-layout__header-container{width:100%}.fd-tool-layout__content-container{overflow:hidden}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
140
+ }
141
+ __decorate([
142
+ applyCssClass,
143
+ __metadata("design:type", Function),
144
+ __metadata("design:paramtypes", []),
145
+ __metadata("design:returntype", Array)
146
+ ], ToolLayoutComponent.prototype, "buildComponentCssClass", null);
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutComponent, decorators: [{
148
+ type: Component,
149
+ args: [{ selector: '[fdbToolLayout]', template: ` <ng-content></ng-content>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, styles: ["/*!\n * Fundamental Library Styles v0.30.2\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-tool-layout{--fdToolLayout_Padding:.5rem .5rem 0 .5rem;--fdToolLayout_Navigation_Container_Margin_Top:.5rem;--fdToolLayout_Navigation_Container_Margin_Right:.5rem;--fdToolLayout_Content_Container_Margin_Top:.5rem;--fdToolLayout_Content_Container_Border_Radius:.5rem .5rem 0 0;--fdToolLayout_Content_Container_Background:var(--sapBackgroundColor);--fdToolLayout_Content_Container_BoxShadow:var(--sapToolLayoutContent_Shadow1);-webkit-box-sizing:border-box;background:var(--fdToolLayout_Background);border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:100%;line-height:var(--sapContent_LineHeight);margin:0;padding:0;padding:var(--fdToolLayout_Padding);width:100%}.fd-tool-layout:after,.fd-tool-layout:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__container{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-tool-layout__container:after,.fd-tool-layout__container:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__header-container{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-tool-layout__header-container:after,.fd-tool-layout__header-container:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__navigation-container{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;margin-right:var(--fdToolLayout_Navigation_Container_Margin_Right);margin-top:var(--fdToolLayout_Navigation_Container_Margin_Top);padding:0}.fd-tool-layout__navigation-container:after,.fd-tool-layout__navigation-container:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__navigation-container[dir=rtl],[dir=rtl] .fd-tool-layout__navigation-container{margin-left:var(--fdToolLayout_Navigation_Container_Margin_Right);margin-right:0}.fd-tool-layout__navigation-container--horizontal,.fd-tool-layout__navigation-container--popup{--fdToolLayout_Navigation_Container_Margin_Top:0;--fdToolLayout_Navigation_Container_Margin_Right:0}.fd-tool-layout__navigation-container--horizontal{flex:1;min-width:100%}.fd-tool-layout__navigation-container--horizontal+.fd-tool-layout__content-container{min-width:100%}.fd-tool-layout__content-container{-webkit-box-sizing:border-box;-webkit-box-flex:1;-ms-flex:1;-webkit-box-shadow:var(--fdToolLayout_Content_Container_BoxShadow);background:var(--fdToolLayout_Content_Container_Background);border:0;border-radius:var(--fdToolLayout_Content_Container_Border_Radius);box-shadow:var(--fdToolLayout_Content_Container_BoxShadow);box-sizing:border-box;color:var(--sapTextColor);flex:1;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:100%;line-height:var(--sapContent_LineHeight);margin:0;margin-top:var(--fdToolLayout_Content_Container_Margin_Top);overflow:hidden;padding:0;width:100%}.fd-tool-layout__content-container:after,.fd-tool-layout__content-container:before{box-sizing:inherit;font-size:inherit}.fd-tool-layout__content-container--transparent{--fdToolLayout_Content_Container_Background:transparent;--fdToolLayout_Content_Container_BoxShadow:none}.fd-tool-layout__content-container--list{--fdToolLayout_Content_Container_Background:var(--sapGroup_ContentBackground)}.fd-tool-layout--tablet{--fdToolLayout_Padding:.5rem;--fdToolLayout_Content_Container_Border_Radius:.5rem}.fd-tool-layout--phone{--fdToolLayout_Padding:.25rem;--fdToolLayout_Content_Container_Margin_Top:.25rem;--fdToolLayout_Content_Container_Border_Radius:.25rem}.fd-tool-layout__header-container{width:100%}.fd-tool-layout__content-container{overflow:hidden}\n"] }]
150
+ }], propDecorators: { class: [{
151
+ type: Input
152
+ }], mode: [{
153
+ type: Input
154
+ }], buildComponentCssClass: [] } });
155
+
156
+ class ToolLayoutModule {
157
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
158
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutModule, imports: [ToolLayoutComponent,
159
+ ToolLayoutContainerDirective,
160
+ ToolLayoutContentContainerDirective,
161
+ ToolLayoutHeaderContainerDirective,
162
+ ToolLayoutNavigationContainerDirective], exports: [ToolLayoutComponent,
163
+ ToolLayoutContainerDirective,
164
+ ToolLayoutContentContainerDirective,
165
+ ToolLayoutHeaderContainerDirective,
166
+ ToolLayoutNavigationContainerDirective] }); }
167
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutModule }); }
168
+ }
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ToolLayoutModule, decorators: [{
170
+ type: NgModule,
171
+ args: [{
172
+ imports: [
173
+ ToolLayoutComponent,
174
+ ToolLayoutContainerDirective,
175
+ ToolLayoutContentContainerDirective,
176
+ ToolLayoutHeaderContainerDirective,
177
+ ToolLayoutNavigationContainerDirective
178
+ ],
179
+ exports: [
180
+ ToolLayoutComponent,
181
+ ToolLayoutContainerDirective,
182
+ ToolLayoutContentContainerDirective,
183
+ ToolLayoutHeaderContainerDirective,
184
+ ToolLayoutNavigationContainerDirective
185
+ ]
186
+ }]
187
+ }] });
188
+
189
+ /**
190
+ * Generated bundle index. Do not edit.
191
+ */
192
+
193
+ export { ToolLayoutComponent, ToolLayoutContainerDirective, ToolLayoutContentContainerDirective, ToolLayoutHeaderContainerDirective, ToolLayoutModule, ToolLayoutNavigationContainerDirective };
194
+ //# sourceMappingURL=fundamental-ngx-btp-tool-layout.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fundamental-ngx-btp-tool-layout.mjs","sources":["../../../../libs/btp/tool-layout/src/directives/tool-layout-container.directive.ts","../../../../libs/btp/tool-layout/src/directives/tool-layout-content-container.directive.ts","../../../../libs/btp/tool-layout/src/directives/tool-layout-header-container.directive.ts","../../../../libs/btp/tool-layout/src/directives/tool-layout-navigation-container.directive.ts","../../../../libs/btp/tool-layout/src/tool-layout.component.ts","../../../../libs/btp/tool-layout/src/tool-layout.module.ts","../../../../libs/btp/tool-layout/src/fundamental-ngx-btp-tool-layout.ts"],"sourcesContent":["import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[fdbToolLayoutContainer]',\n standalone: true,\n host: {\n class: 'fd-tool-layout__container'\n }\n})\nexport class ToolLayoutContainerDirective {}\n","import { Directive, ElementRef, inject, Input, OnChanges, OnInit } from '@angular/core';\nimport { applyCssClass, CssClassBuilder, HasElementRef } from '@fundamental-ngx/cdk/utils';\n\nexport type ToolLayoutContentContainerBackground = '' | 'transparent' | 'list';\n\n@Directive({\n selector: '[fdbToolLayoutContentContainer]',\n standalone: true\n})\nexport class ToolLayoutContentContainerDirective implements OnChanges, OnInit, CssClassBuilder, HasElementRef {\n /** user's custom classes */\n @Input()\n class: string;\n\n /**\n * the background of the Content Container\n * Available options: '' | 'transparent' | 'list'\n * Default background has the color var(--sapBackgroundColor)\n * List background will apply var(--sapGroup_ContentBackground) background to the content area\n */\n @Input()\n background: ToolLayoutContentContainerBackground;\n\n /** @hidden */\n readonly elementRef: ElementRef<HTMLElement> = inject(ElementRef);\n\n /** @hidden\n * CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return [\n 'fd-tool-layout__content-container',\n this.background ? `fd-tool-layout__content-container--${this.background}` : '',\n this.class\n ];\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[fdbToolLayoutHeaderContainer]',\n standalone: true,\n host: {\n class: 'fd-tool-layout__header-container'\n }\n})\nexport class ToolLayoutHeaderContainerDirective {}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[fdbToolLayoutNavigationContainer]',\n standalone: true,\n host: {\n class: 'fd-tool-layout__navigation-container'\n }\n})\nexport class ToolLayoutNavigationContainerDirective {\n /**\n * whether the navigation is a popup\n */\n @HostBinding('class.fd-tool-layout__navigation-container--popup')\n @Input()\n popup = false;\n\n /**\n * whether the navigation is horizontal\n */\n @HostBinding('class.fd-tool-layout__navigation-container--horizontal')\n @Input()\n horizontal = false;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n Input,\n OnChanges,\n OnInit,\n ViewEncapsulation\n} from '@angular/core';\nimport { FdbViewMode } from '@fundamental-ngx/btp/shared';\nimport { applyCssClass, CssClassBuilder, HasElementRef, Nullable } from '@fundamental-ngx/cdk/utils';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdbToolLayout]', // Using camel case, because it should become directive sometime in the future\n template: ` <ng-content></ng-content>`,\n styleUrls: ['./tool-layout.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class ToolLayoutComponent implements OnChanges, OnInit, CssClassBuilder, HasElementRef {\n /** user's custom classes */\n @Input()\n class: string;\n\n /** Whether the Tool Layout is in Desktop, Tablet or Mobile/Phone mode\n * Types available: '' | 'tablet' | 'phone'\n * The default (not specified) mode is desktop.\n */\n @Input()\n mode: Nullable<FdbViewMode>;\n\n /** @hidden */\n readonly elementRef: ElementRef<HTMLElement> = inject(ElementRef);\n\n /** @hidden\n * CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n @applyCssClass\n buildComponentCssClass(): string[] {\n return ['fd-tool-layout', this.mode ? `fd-tool-layout--${this.mode}` : '', this.class];\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { ToolLayoutContainerDirective } from './directives/tool-layout-container.directive';\nimport { ToolLayoutContentContainerDirective } from './directives/tool-layout-content-container.directive';\nimport { ToolLayoutHeaderContainerDirective } from './directives/tool-layout-header-container.directive';\nimport { ToolLayoutNavigationContainerDirective } from './directives/tool-layout-navigation-container.directive';\nimport { ToolLayoutComponent } from './tool-layout.component';\n\n@NgModule({\n imports: [\n ToolLayoutComponent,\n ToolLayoutContainerDirective,\n ToolLayoutContentContainerDirective,\n ToolLayoutHeaderContainerDirective,\n ToolLayoutNavigationContainerDirective\n ],\n exports: [\n ToolLayoutComponent,\n ToolLayoutContainerDirective,\n ToolLayoutContentContainerDirective,\n ToolLayoutHeaderContainerDirective,\n ToolLayoutNavigationContainerDirective\n ]\n})\nexport class ToolLayoutModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ throw new Error('Do not import anything from the `@fundamental-ngx/btp`, use secondary entrypoint exports instead!');
2
+ var index = 'noop';
3
+
4
+ /**
5
+ * Generated bundle index. Do not edit.
6
+ */
7
+ //# sourceMappingURL=fundamental-ngx-btp.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fundamental-ngx-btp.mjs","sources":["../../../../libs/btp/index.ts","../../../../libs/btp/fundamental-ngx-btp.ts"],"sourcesContent":["throw new Error('Do not import anything from the `@fundamental-ngx/btp`, use secondary entrypoint exports instead!');\nexport default 'noop';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA,MAAM,IAAI,KAAK,CAAC,mGAAmG,CAAC,CAAC;AACrH,YAAe,MAAM;;ACDrB;;AAEG"}
package/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: "noop";
2
+ export default _default;
@@ -0,0 +1,3 @@
1
+ # @fundamental-ngx/btp/navigation
2
+
3
+ Secondary entry point of `@fundamental-ngx/btp`. It can be used by importing from `@fundamental-ngx/btp/navigation`.
@@ -0,0 +1,10 @@
1
+ import { TemplateRef, ViewContainerRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class NavigationHomeDirective {
4
+ readonly templateRef: TemplateRef<any>;
5
+ private _viewContainerRef;
6
+ /** @hidden */
7
+ constructor(templateRef: TemplateRef<any>, _viewContainerRef: ViewContainerRef);
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<NavigationHomeDirective, never>;
9
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NavigationHomeDirective, "[fdbNavigationHome]", never, {}, {}, never, never, true, never>;
10
+ }
@@ -0,0 +1,8 @@
1
+ import { NavigationComponent } from '../navigation.component';
2
+ import * as i0 from "@angular/core";
3
+ export declare class NavigationItemSpacerDirective {
4
+ /** @hidden */
5
+ readonly _navigationComponent: NavigationComponent;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<NavigationItemSpacerDirective, never>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NavigationItemSpacerDirective, "li[fdb-navigation-list-spacer]", never, {}, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,10 @@
1
+ export * from './directives/navigation-home.directive';
2
+ export * from './directives/navigation-list-spacer.directive';
3
+ export * from './navigation-content-end.component';
4
+ export * from './navigation-content-start.component';
5
+ export * from './navigation-link.component';
6
+ export * from './navigation-list/navigation-list-item.component';
7
+ export * from './navigation-list/navigation-list.component';
8
+ export * from './navigation.component';
9
+ export * from './navigation.types';
10
+ export * from './navigation-list/navigation-list-overflow-item.component';
@@ -0,0 +1,34 @@
1
+ import { Signal, TemplateRef } from '@angular/core';
2
+ import { FdbViewMode } from '@fundamental-ngx/btp/shared';
3
+ import { Nullable } from '@fundamental-ngx/cdk/utils';
4
+ import { FdbNavigationListItemComponent } from './navigation-list-item-component.token';
5
+ import { FdbNavigationState, FdbNavigationType } from './navigation.types';
6
+ export declare abstract class FdbNavigationComponent {
7
+ abstract state: Signal<FdbNavigationState>;
8
+ abstract type: Signal<FdbNavigationType>;
9
+ abstract mode: Signal<FdbViewMode>;
10
+ abstract homeSeparator: Signal<boolean>;
11
+ abstract homeLinkTemplate: Signal<TemplateRef<void> | null>;
12
+ abstract setNextItemActive(): void;
13
+ abstract setActiveItem(item: FdbNavigationListItemComponent): void;
14
+ abstract setPreviousItemActive(): void;
15
+ abstract keyDownHandler(event: KeyboardEvent): void;
16
+ abstract focusMoreButton(): void;
17
+ abstract getMoreButton(): Nullable<FdbNavigationListItemComponent>;
18
+ /** @hidden */
19
+ isSnapped: Signal<boolean>;
20
+ /** @hidden */
21
+ isPopup: Signal<boolean>;
22
+ /** @hidden */
23
+ isExpanded: Signal<boolean>;
24
+ /** @hidden */
25
+ isHorizontal: Signal<boolean>;
26
+ /** @hidden */
27
+ isVertical: Signal<boolean>;
28
+ /** @hidden */
29
+ isDesktop: Signal<boolean>;
30
+ /** @hidden */
31
+ isTablet: Signal<boolean>;
32
+ /** @hidden */
33
+ isPhone: Signal<boolean>;
34
+ }
@@ -0,0 +1,23 @@
1
+ import { AfterViewInit } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { NavigationContentComponent } from './navigation-content.token';
4
+ import { FdbNavigationListItemComponent } from './navigation-list-item-component.token';
5
+ import * as i0 from "@angular/core";
6
+ export declare class NavigationContentEndComponent extends NavigationContentComponent implements AfterViewInit {
7
+ /** @hidden */
8
+ private readonly _listItems;
9
+ /** @hidden */
10
+ showHome: boolean;
11
+ /** @hidden */
12
+ refresh$: Subject<void>;
13
+ /** @hidden */
14
+ private readonly _destroyRef;
15
+ /** @hidden */
16
+ ngAfterViewInit(): void;
17
+ /** @hidden */
18
+ getNavigatableItems(): FdbNavigationListItemComponent[];
19
+ /** @hidden */
20
+ showMoreOpened(): boolean;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<NavigationContentEndComponent, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<NavigationContentEndComponent, "fdb-navigation-content-end", never, {}, {}, ["_listItems"], ["*"], true, never>;
23
+ }
@@ -0,0 +1,54 @@
1
+ import { AfterViewInit } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { NavigationContentComponent } from './navigation-content.token';
4
+ import { FdbNavigationListItemComponent } from './navigation-list-item-component.token';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@fundamental-ngx/core/scrollbar";
7
+ export declare class NavigationContentStartComponent extends NavigationContentComponent implements AfterViewInit {
8
+ /** @hidden */
9
+ private readonly _navigationItems;
10
+ /** @hidden */
11
+ private readonly _navigationLists;
12
+ /** @hidden */
13
+ private readonly _showMoreOverflow;
14
+ /** @hidden */
15
+ private set _showMoreOverflowItemCmp(value);
16
+ /** @hidden */
17
+ linkTemplate: import("@angular/core").Signal<import("@angular/core").TemplateRef<void> | null>;
18
+ /** @hidden */
19
+ showHome: boolean;
20
+ /** @hidden */
21
+ showOverflowButton: import("@angular/core").WritableSignal<boolean>;
22
+ /** @hidden */
23
+ _hiddenItems: FdbNavigationListItemComponent[];
24
+ /** @hidden */
25
+ refresh$: Subject<void>;
26
+ /** @hidden */
27
+ private _calculationInProgress;
28
+ /** @hidden */
29
+ private readonly _canTrackItems;
30
+ /** @hidden */
31
+ private readonly _navigationComponent;
32
+ /** @hidden */
33
+ private readonly _elementRef;
34
+ /** @hidden */
35
+ private readonly _cdr;
36
+ /** @hidden */
37
+ private readonly _scrollbar;
38
+ /** @hidden */
39
+ private readonly _destroyRef;
40
+ /** @hidden */
41
+ constructor();
42
+ /** @hidden */
43
+ ngAfterViewInit(): void;
44
+ /** @hidden */
45
+ getNavigatableItems(): FdbNavigationListItemComponent[];
46
+ /** @hidden */
47
+ showMoreOpened(): boolean;
48
+ /** @hidden */
49
+ private _calculateVisibleItems;
50
+ /** @hidden */
51
+ private _handleOverflowItems;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<NavigationContentStartComponent, never>;
53
+ static ɵcmp: i0.ɵɵComponentDeclaration<NavigationContentStartComponent, "fdb-navigation-content-start", never, {}, {}, ["_navigationItems", "_navigationLists"], ["ul[fdb-navigation-list]"], true, [{ directive: typeof i1.ScrollbarDirective; inputs: {}; outputs: {}; }]>;
54
+ }
@@ -0,0 +1,11 @@
1
+ import { Nullable } from '@fundamental-ngx/cdk/utils';
2
+ import { Observable } from 'rxjs';
3
+ import { FdbNavigationListItemComponent } from './navigation-list-item-component.token';
4
+ export declare abstract class NavigationContentComponent {
5
+ abstract showHome: boolean;
6
+ abstract refresh$: Observable<void>;
7
+ abstract getNavigatableItems(): FdbNavigationListItemComponent[];
8
+ abstract showMoreOpened(): boolean;
9
+ /** @hidden */
10
+ showMoreOverflowItem: Nullable<FdbNavigationListItemComponent>;
11
+ }
@@ -0,0 +1,49 @@
1
+ import { ElementRef, OnChanges, OnInit, TemplateRef } from '@angular/core';
2
+ import { RouterLink, RouterLinkActive } from '@angular/router';
3
+ import { CssClassBuilder, HasElementRef } from '@fundamental-ngx/cdk/utils';
4
+ import { FdbNavigationListItemComponent } from './navigation-list-item-component.token';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/router";
7
+ export declare class NavigationLinkComponent implements OnInit, OnChanges, CssClassBuilder, HasElementRef {
8
+ /** @hidden */
9
+ class: string;
10
+ /** @hidden */
11
+ glyph: string;
12
+ /** Label to be displayed as a link text. */
13
+ label: string;
14
+ /** Whether the link is for the external resource. */
15
+ external: boolean;
16
+ /** @hidden */
17
+ textRenderer: TemplateRef<any>;
18
+ /** @hidden */
19
+ _tabindex: number;
20
+ /** @hidden */
21
+ readonly elementRef: ElementRef<HTMLElement>;
22
+ /** @hidden */
23
+ readonly _routerLink: RouterLink | null;
24
+ /** @hidden */
25
+ readonly _routerLinkActive: RouterLinkActive | null;
26
+ /**
27
+ * If user applies RouterLink, we need to check if the link is active
28
+ * @hidden
29
+ **/
30
+ protected isActive: import("@angular/core").Signal<boolean | undefined>;
31
+ /** @hidden */
32
+ protected navigationListItemComponent: FdbNavigationListItemComponent;
33
+ /** @hidden */
34
+ private readonly _navigationComponent;
35
+ /** @hidden */
36
+ constructor();
37
+ /** @hidden */
38
+ buildComponentCssClass(): string[];
39
+ /** @hidden */
40
+ private _onClick;
41
+ /** @hidden */
42
+ private _focusHandler;
43
+ /** @hidden */
44
+ ngOnChanges(): void;
45
+ /** @hidden */
46
+ ngOnInit(): void;
47
+ static ɵfac: i0.ɵɵFactoryDeclaration<NavigationLinkComponent, never>;
48
+ static ɵcmp: i0.ɵɵComponentDeclaration<NavigationLinkComponent, "a[fdb-navigation-link]", never, { "class": { "alias": "class"; "required": false; }; "glyph": { "alias": "glyph"; "required": false; }; "label": { "alias": "label"; "required": true; }; "external": { "alias": "external"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.RouterLinkActive; inputs: {}; outputs: {}; }]>;
49
+ }