@fundamental-ngx/core 0.33.3 → 0.33.4-rc.11

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 (174) hide show
  1. package/README.md +1 -3
  2. package/action-bar/package.json +1 -1
  3. package/action-sheet/package.json +1 -1
  4. package/alert/package.json +1 -1
  5. package/avatar/package.json +1 -1
  6. package/avatar-group/package.json +1 -1
  7. package/bar/package.json +1 -1
  8. package/breadcrumb/package.json +1 -1
  9. package/busy-indicator/package.json +1 -1
  10. package/button/package.json +1 -1
  11. package/calendar/package.json +1 -1
  12. package/card/package.json +1 -1
  13. package/carousel/package.json +1 -1
  14. package/checkbox/checkbox/checkbox.component.d.ts +30 -35
  15. package/checkbox/esm2020/checkbox/checkbox.component.mjs +61 -80
  16. package/checkbox/fesm2015/fundamental-ngx-core-checkbox.mjs +59 -77
  17. package/checkbox/fesm2015/fundamental-ngx-core-checkbox.mjs.map +1 -1
  18. package/checkbox/fesm2020/fundamental-ngx-core-checkbox.mjs +59 -77
  19. package/checkbox/fesm2020/fundamental-ngx-core-checkbox.mjs.map +1 -1
  20. package/checkbox/package.json +1 -1
  21. package/combobox/package.json +1 -1
  22. package/date-picker/package.json +1 -1
  23. package/datetime/package.json +1 -1
  24. package/datetime-picker/package.json +1 -1
  25. package/dialog/package.json +1 -1
  26. package/dynamic-page/package.json +1 -1
  27. package/dynamic-side-content/package.json +1 -1
  28. package/esm2020/checkbox/checkbox/checkbox.component.mjs +61 -80
  29. package/esm2020/list/list-item/list-item.component.mjs +6 -2
  30. package/esm2020/message-box/message-box-body/message-box-body.component.mjs +12 -10
  31. package/esm2020/message-box/message-box-footer/message-box-footer.component.mjs +12 -9
  32. package/esm2020/message-box/message-box-header/message-box-header.component.mjs +30 -16
  33. package/esm2020/message-box/message-box-semantic-icon/message-box-semantic-icon.component.mjs +12 -14
  34. package/esm2020/message-box/message-box.component.mjs +5 -15
  35. package/esm2020/message-box/utils/message-box-config.class.mjs +3 -2
  36. package/esm2020/multi-input/multi-input.component.mjs +38 -11
  37. package/esm2020/upload-collection/upload-collection-item.directive.mjs +81 -8
  38. package/esm2020/utils/helpers/range-selector.mjs +113 -0
  39. package/esm2020/utils/public_api.mjs +2 -1
  40. package/facets/package.json +1 -1
  41. package/feed-input/package.json +1 -1
  42. package/feed-list-item/package.json +1 -1
  43. package/fesm2015/fundamental-ngx-core-checkbox.mjs +59 -77
  44. package/fesm2015/fundamental-ngx-core-checkbox.mjs.map +1 -1
  45. package/fesm2015/fundamental-ngx-core-list.mjs +5 -1
  46. package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  47. package/fesm2015/fundamental-ngx-core-message-box.mjs +67 -56
  48. package/fesm2015/fundamental-ngx-core-message-box.mjs.map +1 -1
  49. package/fesm2015/fundamental-ngx-core-multi-input.mjs +40 -11
  50. package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
  51. package/fesm2015/fundamental-ngx-core-upload-collection.mjs +80 -7
  52. package/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  53. package/fesm2015/fundamental-ngx-core-utils.mjs +114 -1
  54. package/fesm2015/fundamental-ngx-core-utils.mjs.map +1 -1
  55. package/fesm2020/fundamental-ngx-core-checkbox.mjs +59 -77
  56. package/fesm2020/fundamental-ngx-core-checkbox.mjs.map +1 -1
  57. package/fesm2020/fundamental-ngx-core-list.mjs +5 -1
  58. package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  59. package/fesm2020/fundamental-ngx-core-message-box.mjs +62 -55
  60. package/fesm2020/fundamental-ngx-core-message-box.mjs.map +1 -1
  61. package/fesm2020/fundamental-ngx-core-multi-input.mjs +38 -11
  62. package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
  63. package/fesm2020/fundamental-ngx-core-upload-collection.mjs +80 -7
  64. package/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  65. package/fesm2020/fundamental-ngx-core-utils.mjs +114 -1
  66. package/fesm2020/fundamental-ngx-core-utils.mjs.map +1 -1
  67. package/file-uploader/package.json +1 -1
  68. package/fixed-card-layout/package.json +1 -1
  69. package/flexible-column-layout/package.json +1 -1
  70. package/form/package.json +1 -1
  71. package/formatted-text/package.json +1 -1
  72. package/grid-list/package.json +1 -1
  73. package/icon/package.json +1 -1
  74. package/illustrated-message/package.json +1 -1
  75. package/infinite-scroll/package.json +1 -1
  76. package/info-label/package.json +1 -1
  77. package/inline-help/package.json +1 -1
  78. package/input-group/package.json +1 -1
  79. package/layout-grid/package.json +1 -1
  80. package/layout-panel/package.json +1 -1
  81. package/link/package.json +1 -1
  82. package/list/esm2020/list-item/list-item.component.mjs +6 -2
  83. package/list/fesm2015/fundamental-ngx-core-list.mjs +5 -1
  84. package/list/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  85. package/list/fesm2020/fundamental-ngx-core-list.mjs +5 -1
  86. package/list/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  87. package/list/package.json +1 -1
  88. package/menu/package.json +1 -1
  89. package/message-box/esm2020/message-box-body/message-box-body.component.mjs +12 -10
  90. package/message-box/esm2020/message-box-footer/message-box-footer.component.mjs +12 -9
  91. package/message-box/esm2020/message-box-header/message-box-header.component.mjs +30 -16
  92. package/message-box/esm2020/message-box-semantic-icon/message-box-semantic-icon.component.mjs +12 -14
  93. package/message-box/esm2020/message-box.component.mjs +5 -15
  94. package/message-box/esm2020/utils/message-box-config.class.mjs +3 -2
  95. package/message-box/fesm2015/fundamental-ngx-core-message-box.mjs +67 -56
  96. package/message-box/fesm2015/fundamental-ngx-core-message-box.mjs.map +1 -1
  97. package/message-box/fesm2020/fundamental-ngx-core-message-box.mjs +62 -55
  98. package/message-box/fesm2020/fundamental-ngx-core-message-box.mjs.map +1 -1
  99. package/message-box/message-box-body/message-box-body.component.d.ts +6 -4
  100. package/message-box/message-box-footer/message-box-footer.component.d.ts +6 -4
  101. package/message-box/message-box-header/message-box-header.component.d.ts +16 -8
  102. package/message-box/message-box-semantic-icon/message-box-semantic-icon.component.d.ts +6 -4
  103. package/message-box/message-box.component.d.ts +4 -9
  104. package/message-box/package.json +1 -1
  105. package/message-box/utils/message-box-config.class.d.ts +2 -4
  106. package/message-strip/package.json +1 -1
  107. package/message-toast/package.json +1 -1
  108. package/micro-process-flow/package.json +1 -1
  109. package/mobile-mode/package.json +1 -1
  110. package/multi-input/esm2020/multi-input.component.mjs +38 -11
  111. package/multi-input/fesm2015/fundamental-ngx-core-multi-input.mjs +40 -11
  112. package/multi-input/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
  113. package/multi-input/fesm2020/fundamental-ngx-core-multi-input.mjs +38 -11
  114. package/multi-input/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
  115. package/multi-input/multi-input.component.d.ts +8 -1
  116. package/multi-input/package.json +1 -1
  117. package/nested-list/package.json +1 -1
  118. package/notification/package.json +1 -1
  119. package/object-identifier/package.json +1 -1
  120. package/object-marker/package.json +1 -1
  121. package/object-number/package.json +1 -1
  122. package/object-status/package.json +1 -1
  123. package/package.json +1 -1
  124. package/pagination/package.json +1 -1
  125. package/panel/package.json +1 -1
  126. package/popover/package.json +1 -1
  127. package/product-switch/package.json +1 -1
  128. package/progress-indicator/package.json +1 -1
  129. package/quick-view/package.json +1 -1
  130. package/radio/package.json +1 -1
  131. package/rating-indicator/package.json +1 -1
  132. package/resizable-card-layout/package.json +1 -1
  133. package/scroll-spy/package.json +1 -1
  134. package/scrollbar/package.json +1 -1
  135. package/segmented-button/package.json +1 -1
  136. package/select/package.json +1 -1
  137. package/shared/package.json +1 -1
  138. package/shellbar/package.json +1 -1
  139. package/side-navigation/package.json +1 -1
  140. package/slider/package.json +1 -1
  141. package/split-button/package.json +1 -1
  142. package/splitter/package.json +1 -1
  143. package/status-indicator/package.json +1 -1
  144. package/step-input/package.json +1 -1
  145. package/switch/package.json +1 -1
  146. package/table/package.json +1 -1
  147. package/tabs/package.json +1 -1
  148. package/text/package.json +1 -1
  149. package/tile/package.json +1 -1
  150. package/time/package.json +1 -1
  151. package/time-picker/package.json +1 -1
  152. package/timeline/package.json +1 -1
  153. package/title/package.json +1 -1
  154. package/token/package.json +1 -1
  155. package/toolbar/package.json +1 -1
  156. package/tree/package.json +1 -1
  157. package/upload-collection/esm2020/upload-collection-item.directive.mjs +81 -8
  158. package/upload-collection/fesm2015/fundamental-ngx-core-upload-collection.mjs +80 -7
  159. package/upload-collection/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  160. package/upload-collection/fesm2020/fundamental-ngx-core-upload-collection.mjs +80 -7
  161. package/upload-collection/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  162. package/upload-collection/package.json +1 -1
  163. package/upload-collection/upload-collection-item.directive.d.ts +32 -2
  164. package/utils/esm2020/helpers/range-selector.mjs +113 -0
  165. package/utils/esm2020/public_api.mjs +2 -1
  166. package/utils/fesm2015/fundamental-ngx-core-utils.mjs +114 -1
  167. package/utils/fesm2015/fundamental-ngx-core-utils.mjs.map +1 -1
  168. package/utils/fesm2020/fundamental-ngx-core-utils.mjs +114 -1
  169. package/utils/fesm2020/fundamental-ngx-core-utils.mjs.map +1 -1
  170. package/utils/helpers/range-selector.d.ts +84 -0
  171. package/utils/package.json +1 -1
  172. package/utils/public_api.d.ts +1 -0
  173. package/vertical-navigation/package.json +1 -1
  174. package/wizard/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-list.mjs","sources":["../../../../libs/core/src/lib/list/directives/list-link.directive.ts","../../../../libs/core/src/lib/list/list-focus-item.model.ts","../../../../libs/core/src/lib/list/list-item/list-item.component.ts","../../../../libs/core/src/lib/list/list-item/list-item.component.html","../../../../libs/core/src/lib/list/directives/list-navigation-item-arrow.directive.ts","../../../../libs/core/src/lib/list/directives/list-navigation-item-text.directive.ts","../../../../libs/core/src/lib/list/list-navigation-item/list-navigation-item.component.ts","../../../../libs/core/src/lib/list/list-navigation-item/list-navigation-item.component.html","../../../../libs/core/src/lib/list/list.component.ts","../../../../libs/core/src/lib/list/list.component.html","../../../../libs/core/src/lib/list/list-message.directive.ts","../../../../libs/core/src/lib/list/directives/list-footer.directive.ts","../../../../libs/core/src/lib/list/directives/list-title.directive.ts","../../../../libs/core/src/lib/list/directives/list-group-header.directive.ts","../../../../libs/core/src/lib/list/directives/list-secondary.directive.ts","../../../../libs/core/src/lib/list/directives/list-icon.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-byline.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-byline-left.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-byline-right.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-content.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-thumbnail.directive.ts","../../../../libs/core/src/lib/list/directives/list-title-text.directive.ts","../../../../libs/core/src/lib/list/list.module.ts","../../../../libs/core/src/lib/list/fundamental-ngx-core-list.ts"],"sourcesContent":["import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-link], [fdListLink]'\n})\nexport class ListLinkDirective {\n /** Defines if navigation indicator arrow should be included inside list item */\n @Input()\n @HostBinding('class.fd-list__link--navigation-indicator')\n navigationIndicator = false;\n\n /** Defines if link should be treated as a navigated */\n @Input()\n @HostBinding('class.is-navigated')\n navigated = false;\n\n /** Defines if item is selected */\n @Input()\n @HostBinding('class.is-selected')\n selected = false;\n\n /** @hidden */\n @HostBinding('class.fd-list__link')\n fdListLinkClass = true;\n}\n","import { ElementRef, EventEmitter } from '@angular/core';\nimport { KeyboardSupportItemInterface } from '@fundamental-ngx/core/utils';\n\nexport class ListFocusItem implements KeyboardSupportItemInterface {\n /** @hidden Implementation of KeyboardSupportItemInterface */\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n constructor(readonly elementRef: ElementRef) {}\n\n /** @hidden */\n click(): void {\n this.elementRef?.nativeElement?.click();\n }\n\n /** @hidden */\n focus(): void {\n this.elementRef?.nativeElement?.focus();\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n Output,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { coerceNumberProperty } from '@angular/cdk/coercion';\n\nimport { CheckboxComponent } from '@fundamental-ngx/core/checkbox';\nimport { RadioButtonComponent } from '@fundamental-ngx/core/radio';\nimport { ListLinkDirective } from '../directives/list-link.directive';\nimport { Subject } from 'rxjs';\nimport { startWith, takeUntil } from 'rxjs/operators';\nimport { KeyUtil } from '@fundamental-ngx/core/utils';\nimport { LIST_ITEM_COMPONENT, ListItemInterface } from '@fundamental-ngx/core/utils';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { ListFocusItem } from '../list-focus-item.model';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\n\n/**\n * The component that represents a list item.\n * The list item can contain plain text, links or actions.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdListItem] ,[fd-list-item]',\n templateUrl: './list-item.component.html',\n host: {\n class: 'fd-list__item',\n role: 'listitem'\n },\n providers: [\n {\n provide: LIST_ITEM_COMPONENT,\n useExisting: forwardRef(() => ListItemComponent)\n },\n {\n provide: ListFocusItem,\n useExisting: forwardRef(() => ListItemComponent)\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class ListItemComponent extends ListFocusItem implements AfterContentInit, OnDestroy, ListItemInterface {\n /** Whether list item is selected */\n @Input()\n @HostBinding('attr.aria-selected')\n @HostBinding('class.is-selected')\n selected = false;\n\n /** tab index attribute */\n @Input()\n @HostBinding('attr.tabindex')\n get tabindex(): number {\n return this._tabIndex;\n }\n set tabindex(value: number) {\n this._tabIndex = coerceNumberProperty(value, -1);\n }\n\n /** Whether there is no data inside list item */\n @Input()\n @HostBinding('class.fd-list__item--no-data')\n noData = false;\n\n /** Whether there is item performs some action */\n @Input()\n @HostBinding('class.fd-list__item--action')\n action = false;\n\n /** Whether there is item performs some action */\n @Input()\n @HostBinding('class.fd-list__item--interractive')\n interactive = false;\n\n /** Whether list item contains busy indicator */\n @Input()\n @HostBinding('class.fd-list__item--growing')\n growing = false;\n\n /** Counter on list item */\n @Input()\n counter: number;\n\n /** Whether list item should contain additional unRead styles */\n @Input()\n @HostBinding('class.fd-list__item--unread')\n unread = false;\n\n /** @hidden Implementation of KeyboardSupportItemInterface | TODO Revisit KeyboardSupportItemInterface*/\n @Output()\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n /** Whether list item contains link */\n @HostBinding('class.fd-list__item--link')\n link = false;\n\n /** @hidden */\n @ContentChild(CheckboxComponent)\n checkbox: CheckboxComponent;\n\n /** @hidden */\n @ContentChild(RadioButtonComponent)\n radio: RadioButtonComponent;\n\n /** @hidden */\n @ContentChildren(ListLinkDirective)\n linkDirectives: QueryList<ListLinkDirective>;\n\n /** @hidden */\n @ContentChildren(ButtonComponent, { descendants: true })\n buttons: QueryList<ButtonComponent>;\n\n /** @hidden Implementation of KeyboardSupportItemInterface | TODO Revisit KeyboardSupportItemInterface*/\n clicked = new EventEmitter<MouseEvent>();\n\n /** An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n private _tabIndex = 0;\n\n constructor(public elementRef: ElementRef, private _changeDetectorRef: ChangeDetectorRef) {\n super(elementRef);\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._listenOnLinkQueryChange();\n this._listenOnButtonQueryChange();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onDestroy$.next();\n this._onDestroy$.complete();\n }\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n keydownHandler(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n if (this.checkbox) {\n this.checkbox.nextValue();\n this._muteEvent(event);\n }\n if (this.radio) {\n this.radio.labelClicked(event);\n this._muteEvent(event);\n }\n }\n this.keyDown.emit(event);\n }\n\n /** Handler for mouse events */\n @HostListener('click', ['$event'])\n onClick(event: MouseEvent): void {\n this.clicked.emit(event);\n if (this.checkbox && !this.link) {\n this.checkbox.nextValue();\n }\n if (this.radio && !this.link) {\n this.radio.labelClicked(event);\n }\n }\n\n /** @hidden */\n private _listenOnLinkQueryChange(): void {\n this.linkDirectives.changes.pipe(takeUntil(this._onDestroy$), startWith(0)).subscribe(() => {\n this.link = this.linkDirectives.length > 0;\n this._changeDetectorRef.detectChanges();\n });\n }\n\n /** @hidden */\n private _listenOnButtonQueryChange(): void {\n this.buttons.changes.pipe(takeUntil(this._onDestroy$), startWith(0)).subscribe(() => {\n this.buttons.forEach(this._addClassToButtons);\n });\n }\n\n /** @hidden */\n private _addClassToButtons(button: ButtonComponent): void {\n button.class += 'fd-list__button';\n button.buildComponentCssClass();\n button.detectChanges();\n }\n\n /** @hidden */\n private _muteEvent(event: Event): void {\n event.stopPropagation();\n event.preventDefault();\n }\n}\n","<ng-container *ngIf=\"checkbox || radio\">\n <div fd-form-item class=\"fd-list__form-item\">\n <ng-content select=\"fd-checkbox\"></ng-content>\n <ng-content select=\"fd-radio-button\"></ng-content>\n </div>\n</ng-container>\n\n<ng-content></ng-content>\n\n<span *ngIf=\"counter || counter === 0\" class=\"fd-list__item-counter\">\n {{ counter.toString() | slice: 0:5 }}\n</span>\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-navigation-item-arrow], [fdListNavigaitonItemArrow]'\n})\nexport class ListNavigationItemArrowDirective {\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item-arrow')\n navigationItemArrowClass = true;\n\n /** @hidden */\n @HostBinding('class.sap-icon--navigation-right-arrow')\n rightArrowClass = true;\n\n /** @hidden */\n @HostBinding('class.sap-icon--navigation-down-arrow')\n downArrowClass = false;\n\n /** @hidden */\n @HostBinding('class.is-expanded')\n expanded = false;\n\n /** @hidden */\n _setExpanded(expanded: boolean): void {\n if (this.expanded !== expanded) {\n this.rightArrowClass = !this.rightArrowClass;\n this.downArrowClass = !this.downArrowClass;\n }\n this.expanded = expanded;\n }\n}\n","import { Directive, ElementRef, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-navigation-item-text], [fdListNavigaitonItemText]'\n})\nexport class ListNavigationItemTextDirective {\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item-text')\n navigationItemTextClass = true;\n\n constructor(private _elementRef: ElementRef) {}\n\n /** @hidden */\n get elementRef(): ElementRef<HTMLElement> {\n return this._elementRef;\n }\n}\n","import { AfterContentInit, Component, ContentChild, forwardRef, HostBinding, HostListener, Input } from '@angular/core';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport { ListComponent } from '../list.component';\nimport { ListNavigationItemArrowDirective } from '../directives/list-navigation-item-arrow.directive';\nimport { ListNavigationItemTextDirective } from '../directives/list-navigation-item-text.directive';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-list-navigation-item], [fdListNavigaitonItem]',\n templateUrl: './list-navigation-item.component.html',\n styleUrls: ['./list-navigation-item.component.scss']\n})\nexport class ListNavigationItemComponent implements AfterContentInit {\n /** Whether or not the list item is expanded. */\n @Input()\n @HostBinding('class.is-expanded')\n expanded = false;\n\n /** Whether or not this list item is indicated for navigation. */\n @Input()\n @HostBinding('class.fd-list__navigation-item--indicated')\n indicated = false;\n\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item')\n _navigationItemClass = true;\n\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item--expandable')\n _isExpandable = false;\n\n /** @hidden */\n @HostBinding('attr.tabindex')\n _tabIndex;\n\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item--condensed')\n _condensed = false;\n\n /** @hidden */\n @ContentChild(forwardRef(() => ListComponent))\n _listComponent: ListComponent;\n\n /** @hidden */\n @ContentChild(ListNavigationItemArrowDirective)\n _listNavigationItemArrow: ListNavigationItemArrowDirective;\n\n /** @hidden */\n @ContentChild(IconComponent)\n _iconComponent: IconComponent;\n\n /** @hidden */\n @ContentChild(ListNavigationItemTextDirective)\n _text: ListNavigationItemTextDirective;\n\n /** @hidden */\n _innerText: string;\n\n /** @hidden */\n ngAfterContentInit(): void {\n if (this._listComponent) {\n this._isExpandable = true;\n } else {\n this._tabIndex = 0;\n }\n if (this._iconComponent) {\n this._iconComponent._navigationItemIcon = true;\n }\n this._innerText = this._text.elementRef.nativeElement.innerText;\n }\n\n /** @hidden */\n @HostListener('click', ['$event'])\n onItemClick(event: MouseEvent): void {\n event.stopPropagation();\n this._handleExpandedChanges(!this.expanded);\n }\n\n /** @hidden */\n _childIndicatedAndCollapsed(): boolean {\n let retVal = false;\n this._listComponent?._navItems?.forEach((navItem) => {\n if (navItem.indicated && !navItem.expanded) {\n retVal = true;\n }\n });\n\n return retVal;\n }\n\n /** @hidden */\n private _handleExpandedChanges(expanded: boolean): void {\n if (this._isExpandable) {\n this.expanded = expanded;\n this._listNavigationItemArrow._setExpanded(this.expanded);\n }\n }\n}\n","<ng-container *ngIf=\"!expanded || !_isExpandable || !_condensed || !_listComponent\">\n <ng-content></ng-content\n ><span *ngIf=\"indicated || _childIndicatedAndCollapsed()\" class=\"fd-list__navigation-item-indicator\"></span>\n</ng-container>\n<ng-container *ngIf=\"expanded && _isExpandable && _condensed && _listComponent\">\n <div\n class=\"fd-popover__body fd-popover__body--no-arrow fd-list__navigation-item-popover--first-level\"\n aria-hidden=\"false\"\n >\n <ul class=\"fd-list\">\n <li class=\"fd-list__navigation-item fd-list__navigation-item--condensed\">\n <fd-icon class=\"fd-list__navigation-item-icon\" [glyph]=\"_iconComponent.glyph\"></fd-icon>\n <span class=\"fd-list__navigation-item-text\">{{ _innerText }}</span>\n </li>\n </ul>\n </div>\n <div\n class=\"fd-popover__body fd-popover__body--no-arrow fd-list__navigation-item-popover--second-level\"\n aria-hidden=\"false\"\n >\n <ul class=\"fd-list\">\n <li\n *ngFor=\"let navItem of _listComponent._navItems\"\n class=\"fd-list__navigation-item fd-list__navigation-item--condensed\"\n [class.fd-list__navigation-item--indicated]=\"navItem.indicated\"\n tabindex=\"0\"\n >\n <span *ngIf=\"navItem._innerText\" class=\"fd-list__navigation-item-text\">{{ navItem._innerText }}</span>\n <span *ngIf=\"navItem.indicated\" class=\"fd-list__navigation-item-indicator\"></span>\n </li>\n </ul>\n </div>\n</ng-container>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { ListItemComponent } from './list-item/list-item.component';\nimport { merge, Subject, Subscription } from 'rxjs';\nimport { startWith, takeUntil } from 'rxjs/operators';\nimport { FocusEscapeDirection, KeyboardSupportService } from '@fundamental-ngx/core/utils';\nimport { ListGroupHeaderDirective } from './directives/list-group-header.directive';\nimport { ListFocusItem } from './list-focus-item.model';\nimport { ContentDensityService } from '@fundamental-ngx/core/utils';\nimport { ListNavigationItemComponent } from './list-navigation-item/list-navigation-item.component';\n\ntype FocusItem = ListGroupHeaderDirective | ListItemComponent;\n/**\n * The directive that represents a list.\n * It is used to display a list of items with simple information such as scopes, names, etc.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-list], [fdList]',\n templateUrl: `./list.component.html`,\n host: {\n class: 'fd-list',\n role: 'list'\n },\n styleUrls: ['./list.component.scss', '../utils/drag-and-drop/drag-and-drop.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [KeyboardSupportService]\n})\nexport class ListComponent implements OnInit, AfterContentInit, OnDestroy {\n /** Whether dropdown mode is included to component, used for Select and Combobox */\n @Input()\n @HostBinding('class.fd-list--dropdown')\n dropdownMode = false;\n\n /** Whether multi mode is included to component, used for MultiInput */\n @Input()\n @HostBinding('class.fd-list--multi-input')\n multiInputMode = false;\n\n /** Whether list is used in mobile mode*/\n @Input()\n @HostBinding('class.fd-list--mobile')\n mobileMode = false;\n\n /** Whether compact mode is included to component */\n @Input()\n @HostBinding('class.fd-list--compact')\n compact?: boolean;\n\n /** Whether list component contains message */\n @Input()\n @HostBinding('class.fd-list--has-message')\n hasMessage = false;\n\n /** Whether list component has removed borders */\n @Input()\n @HostBinding('class.fd-list--no-border')\n noBorder = false;\n\n /** Whether list component has navigation indicators */\n @Input()\n @HostBinding('class.fd-list--navigation-indication')\n navigationIndicator = false;\n\n /** Whether list component has checkboxes or radio buttons included */\n @Input()\n @HostBinding('class.fd-list--selection')\n selection = false;\n\n /** Whether internal keyboard support should be enabled. It's enabled by default */\n @Input()\n keyboardSupport = true;\n\n /** Whether list should have a byline */\n @Input()\n @HostBinding('class.fd-list--byline')\n byline = false;\n\n /** Event thrown, when focus escapes the list */\n @Output()\n focusEscapeList = new EventEmitter<FocusEscapeDirection>();\n\n /** Whether list component includes links */\n @HostBinding('class.fd-list--navigation')\n hasNavigation = false;\n\n /** @hidden */\n @ContentChildren(ListItemComponent)\n items: QueryList<ListItemComponent>;\n\n /** @hidden */\n @ContentChildren(ListNavigationItemComponent)\n _navItems: QueryList<ListNavigationItemComponent>;\n\n /** @hidden */\n @ContentChildren(ListFocusItem)\n private _focusItems: QueryList<FocusItem>;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** An RxJS Subject that will kill the data stream upon queryList changes (for unsubscribing) */\n private readonly _onRefresh$: Subject<void> = new Subject<void>();\n\n /** An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _keyboardSupportService: KeyboardSupportService<FocusItem>,\n private _cdr: ChangeDetectorRef,\n @Optional() private _contentDensityService: ContentDensityService\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n if (this.compact === undefined && this._contentDensityService) {\n this._subscriptions.add(\n this._contentDensityService._isCompactDensity.subscribe((isCompact) => {\n this.compact = isCompact;\n this._cdr.detectChanges();\n })\n );\n }\n this._listenOnListFocusEscape();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._keyboardSupportService.setKeyboardService(this._focusItems, false);\n this._listenOnQueryChange();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onDestroy$.next();\n this._onDestroy$.complete();\n }\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n keyDownHandler(event: KeyboardEvent): void {\n if (this.keyboardSupport) {\n this._keyboardSupportService.onKeyDown(event);\n }\n }\n\n /** Set fake focus on element with passed index */\n setItemActive(index: number): void {\n this._keyboardSupportService.keyManager.setActiveItem(index);\n }\n\n /** @hidden */\n private _listenOnQueryChange(): void {\n this._focusItems.changes.pipe(startWith(0), takeUntil(this._onDestroy$)).subscribe(() => {\n this._recheckLinks();\n this._listenOnItemsClick();\n });\n }\n\n /** @hidden */\n private _listenOnItemsClick(): void {\n /** Finish all of the streams, from before */\n this._onRefresh$.next();\n /** Merge refresh/destroy observables */\n const refreshObs = merge(this._onRefresh$, this._onDestroy$);\n this._focusItems.forEach((item, index) =>\n item.clicked.pipe(takeUntil(refreshObs)).subscribe(() => this.setItemActive(index))\n );\n }\n\n /** @hidden */\n private _recheckLinks(): void {\n const items = this.items.filter((item) => item.link);\n this.hasNavigation = items.length > 0;\n }\n\n /** @hidden */\n private _listenOnListFocusEscape(): void {\n this._keyboardSupportService.focusEscapeList\n .pipe(takeUntil(this._onDestroy$))\n .subscribe((direction) => this.focusEscapeList.emit(direction));\n }\n}\n","<ng-content></ng-content>\n","import { Directive, ElementRef, Input, OnChanges, OnInit } from '@angular/core';\nimport { MessageStates } from '@fundamental-ngx/core/form';\nimport { applyCssClass } from '@fundamental-ngx/core/utils';\nimport { CssClassBuilder } from '@fundamental-ngx/core/utils';\n\n@Directive({\n selector: '[fd-list-message], [fdListMessage]'\n})\nexport class ListMessageDirective implements OnChanges, OnInit, CssClassBuilder {\n /** Type of the message. Can be 'success' | 'error' | 'warning' | 'information' */\n @Input()\n type: MessageStates;\n\n /** Apply user custom styles */\n @Input()\n class: string;\n\n /** @hidden */\n constructor(private _elementRef: ElementRef) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return ['fd-list__message', this.type ? 'fd-list__message--' + this.type : '', this.class];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fdListFooter], [fd-list-footer]'\n})\nexport class ListFooterDirective {\n /** @hidden */\n @HostBinding('class.fd-list__footer')\n fdListFooterClass = true;\n}\n","import { Directive, ElementRef, HostBinding, Input, OnInit } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-title], [fdListTitle]'\n})\nexport class ListTitleDirective implements OnInit {\n /** @hidden */\n @HostBinding('class.fd-list__title')\n fdListTitleClass = true;\n\n /** Whether or not this should be wrapped, when too much text. */\n @Input()\n @HostBinding('class.fd-list__title--wrap')\n wrap = false;\n\n /** @hidden */\n constructor(public elRef: ElementRef) {}\n\n /** @hidden */\n ngOnInit(): void {\n const nativeEl = this.elRef.nativeElement;\n if (nativeEl.tagName === 'A') {\n nativeEl.setAttribute('tabIndex', '-1');\n }\n }\n}\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output\n} from '@angular/core';\nimport { coerceNumberProperty } from '@angular/cdk/coercion';\n\nimport { ListFocusItem } from '../list-focus-item.model';\n\n@Directive({\n selector: '[fdListGroupHeader], [fd-list-group-header]',\n host: {\n '[style.outline]': '\"none\"',\n '[class.fd-list__item]': 'true',\n '[class.fd-list__group-header]': 'true'\n },\n providers: [\n {\n provide: ListFocusItem,\n useExisting: forwardRef(() => ListGroupHeaderDirective)\n }\n ]\n})\nexport class ListGroupHeaderDirective extends ListFocusItem {\n /** tab index attribute */\n @Input()\n @HostBinding('attr.tabindex')\n get tabindex(): number {\n return this._tabIndex;\n }\n set tabindex(value: number) {\n this._tabIndex = coerceNumberProperty(value, -1);\n }\n /** @hidden Implementation of KeyboardSupportItemInterface */\n @Output()\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n /** @hidden */\n clicked = new EventEmitter<MouseEvent>();\n\n /** @hidden */\n private _tabIndex = -1;\n\n constructor(readonly elementRef: ElementRef) {\n super(elementRef);\n }\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n keydownHandler(event: KeyboardEvent): void {\n this.keyDown.emit(event);\n }\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-secondary] ,[fdListSecondary]'\n})\nexport class ListSecondaryDirective {\n /** @hidden */\n @HostBinding('class.fd-list__secondary')\n fdListSecondaryClass = true;\n}\n","import { Directive, ElementRef, HostBinding, Input, OnChanges, OnInit } from '@angular/core';\nimport { applyCssClass } from '@fundamental-ngx/core/utils';\n\n@Directive({\n selector: '[fdListIcon], [fd-list-icon]'\n})\nexport class ListIconDirective implements OnChanges, OnInit {\n /** The icon name to display. See the icon page for the list of icons\n * here: https://sap.github.io/fundamental-ngx/icon\n * */\n @Input()\n glyph: string;\n\n /** Apply user custom styles */\n @Input()\n class: string;\n\n /** Role attribute for list icon */\n @Input()\n @HostBinding('attr.role')\n role = 'presentation';\n\n constructor(private _elementRef: ElementRef) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return ['fd-list__icon', this.glyph ? 'sap-icon--' + this.glyph : '', this.class];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n}\n","import { Directive, Input } from '@angular/core';\n\n@Directive({\n selector: '[fdListByline], [fd-list-byline]',\n host: {\n class: 'fd-list__byline',\n '[class.fd-list__byline--2-col]': 'twoCol',\n '[class.fd-list__byline--wrap]': 'wrap'\n }\n})\nexport class ListBylineDirective {\n /** Whether or not this is a 2-column byline. */\n @Input()\n twoCol = false;\n\n /** Whether or not this should be wrapped, when too much text. */\n @Input()\n wrap = false;\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[fdListBylineLeft], [fd-list-byline-left]'\n})\nexport class ListBylineLeftDirective {\n /** @hidden */\n @HostBinding('class.fd-list__byline-left')\n fdListBylineLeftClass = true;\n\n /** Whether or not this should be wrapped, when too much text. */\n @Input()\n @HostBinding('class.fd-list__byline-left--wrap')\n wrap = false;\n}\n","import { Directive, Input } from '@angular/core';\n\nexport type ListBylineStatus = 'neutral' | 'positive' | 'negative' | 'critical' | 'informative';\n\n@Directive({\n selector: '[fdListBylineRight], [fd-list-byline-right]',\n host: {\n class: 'fd-list__byline-right',\n '[class.fd-list__byline-right--neutral]': 'status === \"neutral\"',\n '[class.fd-list__byline-right--positive]': 'status === \"positive\"',\n '[class.fd-list__byline-right--negative]': 'status === \"negative\"',\n '[class.fd-list__byline-right--critical]': 'status === \"critical\"',\n '[class.fd-list__byline-right--informative]': 'status === \"informative\"',\n '[class.fd-list__byline-right--wrap]': 'wrap'\n }\n})\nexport class ListBylineRightDirective {\n /** Semantic status of byline\n * Possible options are:\n * 'neutral' | 'positive' | 'negative' | 'critical' | 'informative'\n */\n @Input()\n status: ListBylineStatus;\n\n /** Whether or not this should be wrapped, when too much text. */\n @Input()\n wrap = false;\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[fdListContent], [fd-list-content]'\n})\nexport class ListContentDirective {\n /** @hidden */\n @HostBinding('class.fd-list__content')\n fdListContentClass = true;\n\n /** Whether or not this is a 2-column content. */\n @Input()\n @HostBinding('class.fd-list__content--2-col')\n twoCol = false;\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fdListThumbnail], [fd-list-thumbnail]'\n})\nexport class ListThumbnailDirective {\n /** @hidden */\n @HostBinding('class.fd-list__thumbnail')\n fdListThumbnailClass = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-title-text], [fdListTitleText]'\n})\nexport class ListTitleTextDirective {\n /** @hidden */\n @HostBinding('class.fd-list__title-text')\n fdListTitleText = true;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ListComponent } from './list.component';\nimport { ListItemComponent } from './list-item/list-item.component';\nimport { ListMessageDirective } from './list-message.directive';\nimport { ListLinkDirective } from './directives/list-link.directive';\nimport { FormModule } from '@fundamental-ngx/core/form';\nimport { ListFooterDirective } from './directives/list-footer.directive';\nimport { ListTitleDirective } from './directives/list-title.directive';\nimport { ListGroupHeaderDirective } from './directives/list-group-header.directive';\nimport { ListSecondaryDirective } from './directives/list-secondary.directive';\nimport { ListIconDirective } from './directives/list-icon.directive';\nimport { ListBylineDirective } from './directives/byline/list-byline.directive';\nimport { ListBylineLeftDirective } from './directives/byline/list-byline-left.directive';\nimport { ListBylineRightDirective } from './directives/byline/list-byline-right.directive';\nimport { ListContentDirective } from './directives/byline/list-content.directive';\nimport { ListThumbnailDirective } from './directives/byline/list-thumbnail.directive';\nimport { ListTitleTextDirective } from './directives/list-title-text.directive';\nimport { ListNavigationItemComponent } from './list-navigation-item/list-navigation-item.component';\nimport { ListNavigationItemArrowDirective } from './directives/list-navigation-item-arrow.directive';\nimport { ListNavigationItemTextDirective } from './directives/list-navigation-item-text.directive';\nimport { IconModule } from '@fundamental-ngx/core/icon';\n\n@NgModule({\n declarations: [\n ListComponent,\n ListItemComponent,\n ListTitleDirective,\n ListSecondaryDirective,\n ListIconDirective,\n ListFooterDirective,\n ListGroupHeaderDirective,\n ListMessageDirective,\n ListLinkDirective,\n ListBylineDirective,\n ListBylineLeftDirective,\n ListBylineRightDirective,\n ListContentDirective,\n ListThumbnailDirective,\n ListTitleTextDirective,\n ListNavigationItemComponent,\n ListNavigationItemArrowDirective,\n ListNavigationItemTextDirective\n ],\n imports: [CommonModule, FormModule, IconModule],\n exports: [\n ListComponent,\n ListItemComponent,\n ListTitleDirective,\n ListFooterDirective,\n ListGroupHeaderDirective,\n ListSecondaryDirective,\n ListIconDirective,\n ListMessageDirective,\n ListLinkDirective,\n ListBylineDirective,\n ListBylineLeftDirective,\n ListBylineRightDirective,\n ListContentDirective,\n ListThumbnailDirective,\n ListTitleTextDirective,\n ListNavigationItemComponent,\n ListNavigationItemArrowDirective,\n ListNavigationItemTextDirective\n ]\n})\nexport class ListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-list.mjs","sources":["../../../../libs/core/src/lib/list/directives/list-link.directive.ts","../../../../libs/core/src/lib/list/list-focus-item.model.ts","../../../../libs/core/src/lib/list/list-item/list-item.component.ts","../../../../libs/core/src/lib/list/list-item/list-item.component.html","../../../../libs/core/src/lib/list/directives/list-navigation-item-arrow.directive.ts","../../../../libs/core/src/lib/list/directives/list-navigation-item-text.directive.ts","../../../../libs/core/src/lib/list/list-navigation-item/list-navigation-item.component.ts","../../../../libs/core/src/lib/list/list-navigation-item/list-navigation-item.component.html","../../../../libs/core/src/lib/list/list.component.ts","../../../../libs/core/src/lib/list/list.component.html","../../../../libs/core/src/lib/list/list-message.directive.ts","../../../../libs/core/src/lib/list/directives/list-footer.directive.ts","../../../../libs/core/src/lib/list/directives/list-title.directive.ts","../../../../libs/core/src/lib/list/directives/list-group-header.directive.ts","../../../../libs/core/src/lib/list/directives/list-secondary.directive.ts","../../../../libs/core/src/lib/list/directives/list-icon.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-byline.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-byline-left.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-byline-right.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-content.directive.ts","../../../../libs/core/src/lib/list/directives/byline/list-thumbnail.directive.ts","../../../../libs/core/src/lib/list/directives/list-title-text.directive.ts","../../../../libs/core/src/lib/list/list.module.ts","../../../../libs/core/src/lib/list/fundamental-ngx-core-list.ts"],"sourcesContent":["import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-link], [fdListLink]'\n})\nexport class ListLinkDirective {\n /** Defines if navigation indicator arrow should be included inside list item */\n @Input()\n @HostBinding('class.fd-list__link--navigation-indicator')\n navigationIndicator = false;\n\n /** Defines if link should be treated as a navigated */\n @Input()\n @HostBinding('class.is-navigated')\n navigated = false;\n\n /** Defines if item is selected */\n @Input()\n @HostBinding('class.is-selected')\n selected = false;\n\n /** @hidden */\n @HostBinding('class.fd-list__link')\n fdListLinkClass = true;\n}\n","import { ElementRef, EventEmitter } from '@angular/core';\nimport { KeyboardSupportItemInterface } from '@fundamental-ngx/core/utils';\n\nexport class ListFocusItem implements KeyboardSupportItemInterface {\n /** @hidden Implementation of KeyboardSupportItemInterface */\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n constructor(readonly elementRef: ElementRef) {}\n\n /** @hidden */\n click(): void {\n this.elementRef?.nativeElement?.click();\n }\n\n /** @hidden */\n focus(): void {\n this.elementRef?.nativeElement?.focus();\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n Output,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { coerceNumberProperty } from '@angular/cdk/coercion';\n\nimport { CheckboxComponent } from '@fundamental-ngx/core/checkbox';\nimport { RadioButtonComponent } from '@fundamental-ngx/core/radio';\nimport { ListLinkDirective } from '../directives/list-link.directive';\nimport { Subject } from 'rxjs';\nimport { startWith, takeUntil } from 'rxjs/operators';\nimport { KeyUtil } from '@fundamental-ngx/core/utils';\nimport { LIST_ITEM_COMPONENT, ListItemInterface } from '@fundamental-ngx/core/utils';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { ListFocusItem } from '../list-focus-item.model';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\n\n/**\n * The component that represents a list item.\n * The list item can contain plain text, links or actions.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdListItem] ,[fd-list-item]',\n templateUrl: './list-item.component.html',\n host: {\n class: 'fd-list__item',\n role: 'listitem'\n },\n providers: [\n {\n provide: LIST_ITEM_COMPONENT,\n useExisting: forwardRef(() => ListItemComponent)\n },\n {\n provide: ListFocusItem,\n useExisting: forwardRef(() => ListItemComponent)\n }\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class ListItemComponent extends ListFocusItem implements AfterContentInit, OnDestroy, ListItemInterface {\n /** Whether list item is selected */\n @Input()\n @HostBinding('attr.aria-selected')\n @HostBinding('class.is-selected')\n selected = false;\n\n /** tab index attribute */\n @Input()\n @HostBinding('attr.tabindex')\n get tabindex(): number {\n return this._tabIndex;\n }\n set tabindex(value: number) {\n this._tabIndex = coerceNumberProperty(value, -1);\n }\n\n /** Whether there is no data inside list item */\n @Input()\n @HostBinding('class.fd-list__item--no-data')\n noData = false;\n\n /** Whether there is item performs some action */\n @Input()\n @HostBinding('class.fd-list__item--action')\n action = false;\n\n /** Whether there is item performs some action */\n @Input()\n @HostBinding('class.fd-list__item--interractive')\n interactive = false;\n\n /** Whether list item contains busy indicator */\n @Input()\n @HostBinding('class.fd-list__item--growing')\n growing = false;\n\n /** Counter on list item */\n @Input()\n counter: number;\n\n /** Whether list item should contain additional unRead styles */\n @Input()\n @HostBinding('class.fd-list__item--unread')\n unread = false;\n\n /** @hidden Implementation of KeyboardSupportItemInterface | TODO Revisit KeyboardSupportItemInterface*/\n @Output()\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n /** Whether list item contains link */\n @HostBinding('class.fd-list__item--link')\n link = false;\n\n /** @hidden */\n @ContentChild(CheckboxComponent)\n checkbox: CheckboxComponent;\n\n /** @hidden */\n @ContentChild(RadioButtonComponent)\n radio: RadioButtonComponent;\n\n /** @hidden */\n @ContentChildren(ListLinkDirective)\n linkDirectives: QueryList<ListLinkDirective>;\n\n /** @hidden */\n @ContentChildren(ButtonComponent, { descendants: true })\n buttons: QueryList<ButtonComponent>;\n\n /** @hidden Implementation of KeyboardSupportItemInterface | TODO Revisit KeyboardSupportItemInterface*/\n clicked = new EventEmitter<MouseEvent>();\n\n /** An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n private _tabIndex = 0;\n\n constructor(public elementRef: ElementRef, private _changeDetectorRef: ChangeDetectorRef) {\n super(elementRef);\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._listenOnLinkQueryChange();\n this._listenOnButtonQueryChange();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onDestroy$.next();\n this._onDestroy$.complete();\n }\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n keydownHandler(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n if (this.checkbox) {\n this.checkbox.nextValue();\n this._muteEvent(event);\n }\n if (this.radio) {\n this.radio.labelClicked(event);\n this._muteEvent(event);\n }\n }\n this.keyDown.emit(event);\n }\n\n /** Handler for mouse events */\n @HostListener('click', ['$event'])\n onClick(event: MouseEvent): void {\n this.clicked.emit(event);\n if (this.checkbox && !this.link) {\n if (!this.checkbox.elementRef.nativeElement.contains(event.target as Node)) {\n // clicking on the checkbox is not suppressed\n // so we should only process clicks if clicked on the list-item, not checkbox itself\n this.checkbox.nextValue();\n }\n }\n if (this.radio && !this.link) {\n this.radio.labelClicked(event);\n }\n }\n\n /** @hidden */\n private _listenOnLinkQueryChange(): void {\n this.linkDirectives.changes.pipe(takeUntil(this._onDestroy$), startWith(0)).subscribe(() => {\n this.link = this.linkDirectives.length > 0;\n this._changeDetectorRef.detectChanges();\n });\n }\n\n /** @hidden */\n private _listenOnButtonQueryChange(): void {\n this.buttons.changes.pipe(takeUntil(this._onDestroy$), startWith(0)).subscribe(() => {\n this.buttons.forEach(this._addClassToButtons);\n });\n }\n\n /** @hidden */\n private _addClassToButtons(button: ButtonComponent): void {\n button.class += 'fd-list__button';\n button.buildComponentCssClass();\n button.detectChanges();\n }\n\n /** @hidden */\n private _muteEvent(event: Event): void {\n event.stopPropagation();\n event.preventDefault();\n }\n}\n","<ng-container *ngIf=\"checkbox || radio\">\n <div fd-form-item class=\"fd-list__form-item\">\n <ng-content select=\"fd-checkbox\"></ng-content>\n <ng-content select=\"fd-radio-button\"></ng-content>\n </div>\n</ng-container>\n\n<ng-content></ng-content>\n\n<span *ngIf=\"counter || counter === 0\" class=\"fd-list__item-counter\">\n {{ counter.toString() | slice: 0:5 }}\n</span>\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-navigation-item-arrow], [fdListNavigaitonItemArrow]'\n})\nexport class ListNavigationItemArrowDirective {\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item-arrow')\n navigationItemArrowClass = true;\n\n /** @hidden */\n @HostBinding('class.sap-icon--navigation-right-arrow')\n rightArrowClass = true;\n\n /** @hidden */\n @HostBinding('class.sap-icon--navigation-down-arrow')\n downArrowClass = false;\n\n /** @hidden */\n @HostBinding('class.is-expanded')\n expanded = false;\n\n /** @hidden */\n _setExpanded(expanded: boolean): void {\n if (this.expanded !== expanded) {\n this.rightArrowClass = !this.rightArrowClass;\n this.downArrowClass = !this.downArrowClass;\n }\n this.expanded = expanded;\n }\n}\n","import { Directive, ElementRef, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-navigation-item-text], [fdListNavigaitonItemText]'\n})\nexport class ListNavigationItemTextDirective {\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item-text')\n navigationItemTextClass = true;\n\n constructor(private _elementRef: ElementRef) {}\n\n /** @hidden */\n get elementRef(): ElementRef<HTMLElement> {\n return this._elementRef;\n }\n}\n","import { AfterContentInit, Component, ContentChild, forwardRef, HostBinding, HostListener, Input } from '@angular/core';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport { ListComponent } from '../list.component';\nimport { ListNavigationItemArrowDirective } from '../directives/list-navigation-item-arrow.directive';\nimport { ListNavigationItemTextDirective } from '../directives/list-navigation-item-text.directive';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-list-navigation-item], [fdListNavigaitonItem]',\n templateUrl: './list-navigation-item.component.html',\n styleUrls: ['./list-navigation-item.component.scss']\n})\nexport class ListNavigationItemComponent implements AfterContentInit {\n /** Whether or not the list item is expanded. */\n @Input()\n @HostBinding('class.is-expanded')\n expanded = false;\n\n /** Whether or not this list item is indicated for navigation. */\n @Input()\n @HostBinding('class.fd-list__navigation-item--indicated')\n indicated = false;\n\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item')\n _navigationItemClass = true;\n\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item--expandable')\n _isExpandable = false;\n\n /** @hidden */\n @HostBinding('attr.tabindex')\n _tabIndex;\n\n /** @hidden */\n @HostBinding('class.fd-list__navigation-item--condensed')\n _condensed = false;\n\n /** @hidden */\n @ContentChild(forwardRef(() => ListComponent))\n _listComponent: ListComponent;\n\n /** @hidden */\n @ContentChild(ListNavigationItemArrowDirective)\n _listNavigationItemArrow: ListNavigationItemArrowDirective;\n\n /** @hidden */\n @ContentChild(IconComponent)\n _iconComponent: IconComponent;\n\n /** @hidden */\n @ContentChild(ListNavigationItemTextDirective)\n _text: ListNavigationItemTextDirective;\n\n /** @hidden */\n _innerText: string;\n\n /** @hidden */\n ngAfterContentInit(): void {\n if (this._listComponent) {\n this._isExpandable = true;\n } else {\n this._tabIndex = 0;\n }\n if (this._iconComponent) {\n this._iconComponent._navigationItemIcon = true;\n }\n this._innerText = this._text.elementRef.nativeElement.innerText;\n }\n\n /** @hidden */\n @HostListener('click', ['$event'])\n onItemClick(event: MouseEvent): void {\n event.stopPropagation();\n this._handleExpandedChanges(!this.expanded);\n }\n\n /** @hidden */\n _childIndicatedAndCollapsed(): boolean {\n let retVal = false;\n this._listComponent?._navItems?.forEach((navItem) => {\n if (navItem.indicated && !navItem.expanded) {\n retVal = true;\n }\n });\n\n return retVal;\n }\n\n /** @hidden */\n private _handleExpandedChanges(expanded: boolean): void {\n if (this._isExpandable) {\n this.expanded = expanded;\n this._listNavigationItemArrow._setExpanded(this.expanded);\n }\n }\n}\n","<ng-container *ngIf=\"!expanded || !_isExpandable || !_condensed || !_listComponent\">\n <ng-content></ng-content\n ><span *ngIf=\"indicated || _childIndicatedAndCollapsed()\" class=\"fd-list__navigation-item-indicator\"></span>\n</ng-container>\n<ng-container *ngIf=\"expanded && _isExpandable && _condensed && _listComponent\">\n <div\n class=\"fd-popover__body fd-popover__body--no-arrow fd-list__navigation-item-popover--first-level\"\n aria-hidden=\"false\"\n >\n <ul class=\"fd-list\">\n <li class=\"fd-list__navigation-item fd-list__navigation-item--condensed\">\n <fd-icon class=\"fd-list__navigation-item-icon\" [glyph]=\"_iconComponent.glyph\"></fd-icon>\n <span class=\"fd-list__navigation-item-text\">{{ _innerText }}</span>\n </li>\n </ul>\n </div>\n <div\n class=\"fd-popover__body fd-popover__body--no-arrow fd-list__navigation-item-popover--second-level\"\n aria-hidden=\"false\"\n >\n <ul class=\"fd-list\">\n <li\n *ngFor=\"let navItem of _listComponent._navItems\"\n class=\"fd-list__navigation-item fd-list__navigation-item--condensed\"\n [class.fd-list__navigation-item--indicated]=\"navItem.indicated\"\n tabindex=\"0\"\n >\n <span *ngIf=\"navItem._innerText\" class=\"fd-list__navigation-item-text\">{{ navItem._innerText }}</span>\n <span *ngIf=\"navItem.indicated\" class=\"fd-list__navigation-item-indicator\"></span>\n </li>\n </ul>\n </div>\n</ng-container>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { ListItemComponent } from './list-item/list-item.component';\nimport { merge, Subject, Subscription } from 'rxjs';\nimport { startWith, takeUntil } from 'rxjs/operators';\nimport { FocusEscapeDirection, KeyboardSupportService } from '@fundamental-ngx/core/utils';\nimport { ListGroupHeaderDirective } from './directives/list-group-header.directive';\nimport { ListFocusItem } from './list-focus-item.model';\nimport { ContentDensityService } from '@fundamental-ngx/core/utils';\nimport { ListNavigationItemComponent } from './list-navigation-item/list-navigation-item.component';\n\ntype FocusItem = ListGroupHeaderDirective | ListItemComponent;\n/**\n * The directive that represents a list.\n * It is used to display a list of items with simple information such as scopes, names, etc.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-list], [fdList]',\n templateUrl: `./list.component.html`,\n host: {\n class: 'fd-list',\n role: 'list'\n },\n styleUrls: ['./list.component.scss', '../utils/drag-and-drop/drag-and-drop.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [KeyboardSupportService]\n})\nexport class ListComponent implements OnInit, AfterContentInit, OnDestroy {\n /** Whether dropdown mode is included to component, used for Select and Combobox */\n @Input()\n @HostBinding('class.fd-list--dropdown')\n dropdownMode = false;\n\n /** Whether multi mode is included to component, used for MultiInput */\n @Input()\n @HostBinding('class.fd-list--multi-input')\n multiInputMode = false;\n\n /** Whether list is used in mobile mode*/\n @Input()\n @HostBinding('class.fd-list--mobile')\n mobileMode = false;\n\n /** Whether compact mode is included to component */\n @Input()\n @HostBinding('class.fd-list--compact')\n compact?: boolean;\n\n /** Whether list component contains message */\n @Input()\n @HostBinding('class.fd-list--has-message')\n hasMessage = false;\n\n /** Whether list component has removed borders */\n @Input()\n @HostBinding('class.fd-list--no-border')\n noBorder = false;\n\n /** Whether list component has navigation indicators */\n @Input()\n @HostBinding('class.fd-list--navigation-indication')\n navigationIndicator = false;\n\n /** Whether list component has checkboxes or radio buttons included */\n @Input()\n @HostBinding('class.fd-list--selection')\n selection = false;\n\n /** Whether internal keyboard support should be enabled. It's enabled by default */\n @Input()\n keyboardSupport = true;\n\n /** Whether list should have a byline */\n @Input()\n @HostBinding('class.fd-list--byline')\n byline = false;\n\n /** Event thrown, when focus escapes the list */\n @Output()\n focusEscapeList = new EventEmitter<FocusEscapeDirection>();\n\n /** Whether list component includes links */\n @HostBinding('class.fd-list--navigation')\n hasNavigation = false;\n\n /** @hidden */\n @ContentChildren(ListItemComponent)\n items: QueryList<ListItemComponent>;\n\n /** @hidden */\n @ContentChildren(ListNavigationItemComponent)\n _navItems: QueryList<ListNavigationItemComponent>;\n\n /** @hidden */\n @ContentChildren(ListFocusItem)\n private _focusItems: QueryList<FocusItem>;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** An RxJS Subject that will kill the data stream upon queryList changes (for unsubscribing) */\n private readonly _onRefresh$: Subject<void> = new Subject<void>();\n\n /** An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */\n private readonly _onDestroy$: Subject<void> = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _keyboardSupportService: KeyboardSupportService<FocusItem>,\n private _cdr: ChangeDetectorRef,\n @Optional() private _contentDensityService: ContentDensityService\n ) {}\n\n /** @hidden */\n ngOnInit(): void {\n if (this.compact === undefined && this._contentDensityService) {\n this._subscriptions.add(\n this._contentDensityService._isCompactDensity.subscribe((isCompact) => {\n this.compact = isCompact;\n this._cdr.detectChanges();\n })\n );\n }\n this._listenOnListFocusEscape();\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._keyboardSupportService.setKeyboardService(this._focusItems, false);\n this._listenOnQueryChange();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._onDestroy$.next();\n this._onDestroy$.complete();\n }\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n keyDownHandler(event: KeyboardEvent): void {\n if (this.keyboardSupport) {\n this._keyboardSupportService.onKeyDown(event);\n }\n }\n\n /** Set fake focus on element with passed index */\n setItemActive(index: number): void {\n this._keyboardSupportService.keyManager.setActiveItem(index);\n }\n\n /** @hidden */\n private _listenOnQueryChange(): void {\n this._focusItems.changes.pipe(startWith(0), takeUntil(this._onDestroy$)).subscribe(() => {\n this._recheckLinks();\n this._listenOnItemsClick();\n });\n }\n\n /** @hidden */\n private _listenOnItemsClick(): void {\n /** Finish all of the streams, from before */\n this._onRefresh$.next();\n /** Merge refresh/destroy observables */\n const refreshObs = merge(this._onRefresh$, this._onDestroy$);\n this._focusItems.forEach((item, index) =>\n item.clicked.pipe(takeUntil(refreshObs)).subscribe(() => this.setItemActive(index))\n );\n }\n\n /** @hidden */\n private _recheckLinks(): void {\n const items = this.items.filter((item) => item.link);\n this.hasNavigation = items.length > 0;\n }\n\n /** @hidden */\n private _listenOnListFocusEscape(): void {\n this._keyboardSupportService.focusEscapeList\n .pipe(takeUntil(this._onDestroy$))\n .subscribe((direction) => this.focusEscapeList.emit(direction));\n }\n}\n","<ng-content></ng-content>\n","import { Directive, ElementRef, Input, OnChanges, OnInit } from '@angular/core';\nimport { MessageStates } from '@fundamental-ngx/core/form';\nimport { applyCssClass } from '@fundamental-ngx/core/utils';\nimport { CssClassBuilder } from '@fundamental-ngx/core/utils';\n\n@Directive({\n selector: '[fd-list-message], [fdListMessage]'\n})\nexport class ListMessageDirective implements OnChanges, OnInit, CssClassBuilder {\n /** Type of the message. Can be 'success' | 'error' | 'warning' | 'information' */\n @Input()\n type: MessageStates;\n\n /** Apply user custom styles */\n @Input()\n class: string;\n\n /** @hidden */\n constructor(private _elementRef: ElementRef) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return ['fd-list__message', this.type ? 'fd-list__message--' + this.type : '', this.class];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fdListFooter], [fd-list-footer]'\n})\nexport class ListFooterDirective {\n /** @hidden */\n @HostBinding('class.fd-list__footer')\n fdListFooterClass = true;\n}\n","import { Directive, ElementRef, HostBinding, Input, OnInit } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-title], [fdListTitle]'\n})\nexport class ListTitleDirective implements OnInit {\n /** @hidden */\n @HostBinding('class.fd-list__title')\n fdListTitleClass = true;\n\n /** Whether or not this should be wrapped, when too much text. */\n @Input()\n @HostBinding('class.fd-list__title--wrap')\n wrap = false;\n\n /** @hidden */\n constructor(public elRef: ElementRef) {}\n\n /** @hidden */\n ngOnInit(): void {\n const nativeEl = this.elRef.nativeElement;\n if (nativeEl.tagName === 'A') {\n nativeEl.setAttribute('tabIndex', '-1');\n }\n }\n}\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output\n} from '@angular/core';\nimport { coerceNumberProperty } from '@angular/cdk/coercion';\n\nimport { ListFocusItem } from '../list-focus-item.model';\n\n@Directive({\n selector: '[fdListGroupHeader], [fd-list-group-header]',\n host: {\n '[style.outline]': '\"none\"',\n '[class.fd-list__item]': 'true',\n '[class.fd-list__group-header]': 'true'\n },\n providers: [\n {\n provide: ListFocusItem,\n useExisting: forwardRef(() => ListGroupHeaderDirective)\n }\n ]\n})\nexport class ListGroupHeaderDirective extends ListFocusItem {\n /** tab index attribute */\n @Input()\n @HostBinding('attr.tabindex')\n get tabindex(): number {\n return this._tabIndex;\n }\n set tabindex(value: number) {\n this._tabIndex = coerceNumberProperty(value, -1);\n }\n /** @hidden Implementation of KeyboardSupportItemInterface */\n @Output()\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n /** @hidden */\n clicked = new EventEmitter<MouseEvent>();\n\n /** @hidden */\n private _tabIndex = -1;\n\n constructor(readonly elementRef: ElementRef) {\n super(elementRef);\n }\n\n /** @hidden */\n @HostListener('keydown', ['$event'])\n keydownHandler(event: KeyboardEvent): void {\n this.keyDown.emit(event);\n }\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-secondary] ,[fdListSecondary]'\n})\nexport class ListSecondaryDirective {\n /** @hidden */\n @HostBinding('class.fd-list__secondary')\n fdListSecondaryClass = true;\n}\n","import { Directive, ElementRef, HostBinding, Input, OnChanges, OnInit } from '@angular/core';\nimport { applyCssClass } from '@fundamental-ngx/core/utils';\n\n@Directive({\n selector: '[fdListIcon], [fd-list-icon]'\n})\nexport class ListIconDirective implements OnChanges, OnInit {\n /** The icon name to display. See the icon page for the list of icons\n * here: https://sap.github.io/fundamental-ngx/icon\n * */\n @Input()\n glyph: string;\n\n /** Apply user custom styles */\n @Input()\n class: string;\n\n /** Role attribute for list icon */\n @Input()\n @HostBinding('attr.role')\n role = 'presentation';\n\n constructor(private _elementRef: ElementRef) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return ['fd-list__icon', this.glyph ? 'sap-icon--' + this.glyph : '', this.class];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n}\n","import { Directive, Input } from '@angular/core';\n\n@Directive({\n selector: '[fdListByline], [fd-list-byline]',\n host: {\n class: 'fd-list__byline',\n '[class.fd-list__byline--2-col]': 'twoCol',\n '[class.fd-list__byline--wrap]': 'wrap'\n }\n})\nexport class ListBylineDirective {\n /** Whether or not this is a 2-column byline. */\n @Input()\n twoCol = false;\n\n /** Whether or not this should be wrapped, when too much text. */\n @Input()\n wrap = false;\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[fdListBylineLeft], [fd-list-byline-left]'\n})\nexport class ListBylineLeftDirective {\n /** @hidden */\n @HostBinding('class.fd-list__byline-left')\n fdListBylineLeftClass = true;\n\n /** Whether or not this should be wrapped, when too much text. */\n @Input()\n @HostBinding('class.fd-list__byline-left--wrap')\n wrap = false;\n}\n","import { Directive, Input } from '@angular/core';\n\nexport type ListBylineStatus = 'neutral' | 'positive' | 'negative' | 'critical' | 'informative';\n\n@Directive({\n selector: '[fdListBylineRight], [fd-list-byline-right]',\n host: {\n class: 'fd-list__byline-right',\n '[class.fd-list__byline-right--neutral]': 'status === \"neutral\"',\n '[class.fd-list__byline-right--positive]': 'status === \"positive\"',\n '[class.fd-list__byline-right--negative]': 'status === \"negative\"',\n '[class.fd-list__byline-right--critical]': 'status === \"critical\"',\n '[class.fd-list__byline-right--informative]': 'status === \"informative\"',\n '[class.fd-list__byline-right--wrap]': 'wrap'\n }\n})\nexport class ListBylineRightDirective {\n /** Semantic status of byline\n * Possible options are:\n * 'neutral' | 'positive' | 'negative' | 'critical' | 'informative'\n */\n @Input()\n status: ListBylineStatus;\n\n /** Whether or not this should be wrapped, when too much text. */\n @Input()\n wrap = false;\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[fdListContent], [fd-list-content]'\n})\nexport class ListContentDirective {\n /** @hidden */\n @HostBinding('class.fd-list__content')\n fdListContentClass = true;\n\n /** Whether or not this is a 2-column content. */\n @Input()\n @HostBinding('class.fd-list__content--2-col')\n twoCol = false;\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fdListThumbnail], [fd-list-thumbnail]'\n})\nexport class ListThumbnailDirective {\n /** @hidden */\n @HostBinding('class.fd-list__thumbnail')\n fdListThumbnailClass = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[fd-list-title-text], [fdListTitleText]'\n})\nexport class ListTitleTextDirective {\n /** @hidden */\n @HostBinding('class.fd-list__title-text')\n fdListTitleText = true;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ListComponent } from './list.component';\nimport { ListItemComponent } from './list-item/list-item.component';\nimport { ListMessageDirective } from './list-message.directive';\nimport { ListLinkDirective } from './directives/list-link.directive';\nimport { FormModule } from '@fundamental-ngx/core/form';\nimport { ListFooterDirective } from './directives/list-footer.directive';\nimport { ListTitleDirective } from './directives/list-title.directive';\nimport { ListGroupHeaderDirective } from './directives/list-group-header.directive';\nimport { ListSecondaryDirective } from './directives/list-secondary.directive';\nimport { ListIconDirective } from './directives/list-icon.directive';\nimport { ListBylineDirective } from './directives/byline/list-byline.directive';\nimport { ListBylineLeftDirective } from './directives/byline/list-byline-left.directive';\nimport { ListBylineRightDirective } from './directives/byline/list-byline-right.directive';\nimport { ListContentDirective } from './directives/byline/list-content.directive';\nimport { ListThumbnailDirective } from './directives/byline/list-thumbnail.directive';\nimport { ListTitleTextDirective } from './directives/list-title-text.directive';\nimport { ListNavigationItemComponent } from './list-navigation-item/list-navigation-item.component';\nimport { ListNavigationItemArrowDirective } from './directives/list-navigation-item-arrow.directive';\nimport { ListNavigationItemTextDirective } from './directives/list-navigation-item-text.directive';\nimport { IconModule } from '@fundamental-ngx/core/icon';\n\n@NgModule({\n declarations: [\n ListComponent,\n ListItemComponent,\n ListTitleDirective,\n ListSecondaryDirective,\n ListIconDirective,\n ListFooterDirective,\n ListGroupHeaderDirective,\n ListMessageDirective,\n ListLinkDirective,\n ListBylineDirective,\n ListBylineLeftDirective,\n ListBylineRightDirective,\n ListContentDirective,\n ListThumbnailDirective,\n ListTitleTextDirective,\n ListNavigationItemComponent,\n ListNavigationItemArrowDirective,\n ListNavigationItemTextDirective\n ],\n imports: [CommonModule, FormModule, IconModule],\n exports: [\n ListComponent,\n ListItemComponent,\n ListTitleDirective,\n ListFooterDirective,\n ListGroupHeaderDirective,\n ListSecondaryDirective,\n ListIconDirective,\n ListMessageDirective,\n ListLinkDirective,\n ListBylineDirective,\n ListBylineLeftDirective,\n ListBylineRightDirective,\n ListContentDirective,\n ListThumbnailDirective,\n ListTitleTextDirective,\n ListNavigationItemComponent,\n ListNavigationItemArrowDirective,\n ListNavigationItemTextDirective\n ]\n})\nexport class ListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}