@fundamental-ngx/core 0.35.0-rc.3 → 0.35.0-rc.4

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 (112) hide show
  1. package/action-bar/package.json +1 -1
  2. package/action-sheet/package.json +1 -1
  3. package/alert/package.json +1 -1
  4. package/avatar/package.json +1 -1
  5. package/avatar-group/package.json +1 -1
  6. package/bar/package.json +1 -1
  7. package/breadcrumb/package.json +1 -1
  8. package/busy-indicator/package.json +1 -1
  9. package/button/package.json +1 -1
  10. package/calendar/package.json +1 -1
  11. package/card/package.json +1 -1
  12. package/carousel/package.json +1 -1
  13. package/checkbox/package.json +1 -1
  14. package/combobox/package.json +1 -1
  15. package/date-picker/package.json +1 -1
  16. package/datetime/package.json +1 -1
  17. package/datetime-picker/package.json +1 -1
  18. package/dialog/package.json +1 -1
  19. package/dynamic-page/package.json +1 -1
  20. package/dynamic-side-content/package.json +1 -1
  21. package/esm2020/list/list-item/list-item.component.mjs +3 -3
  22. package/esm2020/radio/radio-button/radio-button.component.mjs +5 -3
  23. package/facets/package.json +1 -1
  24. package/feed-input/package.json +1 -1
  25. package/feed-list-item/package.json +1 -1
  26. package/fesm2015/fundamental-ngx-core-list.mjs +2 -2
  27. package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  28. package/fesm2015/fundamental-ngx-core-radio.mjs +4 -2
  29. package/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
  30. package/fesm2020/fundamental-ngx-core-list.mjs +2 -2
  31. package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  32. package/fesm2020/fundamental-ngx-core-radio.mjs +4 -2
  33. package/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
  34. package/file-uploader/package.json +1 -1
  35. package/fixed-card-layout/package.json +1 -1
  36. package/flexible-column-layout/package.json +1 -1
  37. package/form/package.json +1 -1
  38. package/formatted-text/package.json +1 -1
  39. package/grid-list/package.json +1 -1
  40. package/icon/package.json +1 -1
  41. package/illustrated-message/package.json +1 -1
  42. package/infinite-scroll/package.json +1 -1
  43. package/info-label/package.json +1 -1
  44. package/inline-help/package.json +1 -1
  45. package/input-group/package.json +1 -1
  46. package/layout-grid/package.json +1 -1
  47. package/layout-panel/package.json +1 -1
  48. package/link/package.json +1 -1
  49. package/list/esm2020/list-item/list-item.component.mjs +3 -3
  50. package/list/fesm2015/fundamental-ngx-core-list.mjs +2 -2
  51. package/list/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  52. package/list/fesm2020/fundamental-ngx-core-list.mjs +2 -2
  53. package/list/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  54. package/list/package.json +1 -1
  55. package/menu/package.json +1 -1
  56. package/message-box/package.json +1 -1
  57. package/message-strip/package.json +1 -1
  58. package/message-toast/package.json +1 -1
  59. package/micro-process-flow/package.json +1 -1
  60. package/mobile-mode/package.json +1 -1
  61. package/multi-input/package.json +1 -1
  62. package/nested-list/package.json +1 -1
  63. package/notification/package.json +1 -1
  64. package/object-identifier/package.json +1 -1
  65. package/object-marker/package.json +1 -1
  66. package/object-number/package.json +1 -1
  67. package/object-status/package.json +1 -1
  68. package/package.json +1 -1
  69. package/pagination/package.json +1 -1
  70. package/panel/package.json +1 -1
  71. package/popover/package.json +1 -1
  72. package/product-switch/package.json +1 -1
  73. package/progress-indicator/package.json +1 -1
  74. package/quick-view/package.json +1 -1
  75. package/radio/esm2020/radio-button/radio-button.component.mjs +5 -3
  76. package/radio/fesm2015/fundamental-ngx-core-radio.mjs +4 -2
  77. package/radio/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
  78. package/radio/fesm2020/fundamental-ngx-core-radio.mjs +4 -2
  79. package/radio/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
  80. package/radio/package.json +1 -1
  81. package/radio/radio-button/radio-button.component.d.ts +1 -1
  82. package/rating-indicator/package.json +1 -1
  83. package/resizable-card-layout/package.json +1 -1
  84. package/scroll-spy/package.json +1 -1
  85. package/scrollbar/package.json +1 -1
  86. package/segmented-button/package.json +1 -1
  87. package/select/package.json +1 -1
  88. package/shared/package.json +1 -1
  89. package/shellbar/package.json +1 -1
  90. package/side-navigation/package.json +1 -1
  91. package/slider/package.json +1 -1
  92. package/split-button/package.json +1 -1
  93. package/splitter/package.json +1 -1
  94. package/status-indicator/package.json +1 -1
  95. package/step-input/package.json +1 -1
  96. package/switch/package.json +1 -1
  97. package/table/package.json +1 -1
  98. package/tabs/package.json +1 -1
  99. package/text/package.json +1 -1
  100. package/theming/package.json +1 -1
  101. package/tile/package.json +1 -1
  102. package/time/package.json +1 -1
  103. package/time-picker/package.json +1 -1
  104. package/timeline/package.json +1 -1
  105. package/title/package.json +1 -1
  106. package/token/package.json +1 -1
  107. package/toolbar/package.json +1 -1
  108. package/tree/package.json +1 -1
  109. package/upload-collection/package.json +1 -1
  110. package/utils/package.json +1 -1
  111. package/vertical-navigation/package.json +1 -1
  112. package/wizard/package.json +1 -1
@@ -84,7 +84,7 @@ export class ListItemComponent extends ListFocusItem {
84
84
  this._muteEvent(event);
85
85
  }
86
86
  else if (this.radio) {
87
- this.radio.labelClicked(event);
87
+ this.radio.labelClicked(event, false);
88
88
  this._muteEvent(event);
89
89
  }
90
90
  else if (this.interactive) {
@@ -106,7 +106,7 @@ export class ListItemComponent extends ListFocusItem {
106
106
  }
107
107
  }
108
108
  if (this.radio && !this.link) {
109
- this.radio.labelClicked(event);
109
+ this.radio.labelClicked(event, false);
110
110
  }
111
111
  }
112
112
  /** @hidden */
@@ -251,4 +251,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
251
251
  type: HostListener,
252
252
  args: ['click', ['$event']]
253
253
  }] } });
254
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2xpc3QvbGlzdC1pdGVtL2xpc3QtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9saXN0L2xpc3QtaXRlbS9saXN0LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFFVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdEUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7OztB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RSxDQUFDLFFBQVEsQ0FBQztnQkFvQm5DLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2NoZWNrYm94JztcbmltcG9ydCB7IFJhZGlvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3JhZGlvJztcbmltcG9ydCB7IExpc3RMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9saXN0LWxpbmsuZGlyZWN0aXZlJztcbmltcG9ydCB7IG1lcmdlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzdGFydFdpdGgsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEtleVV0aWwgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgTElTVF9JVEVNX0NPTVBPTkVOVCwgTGlzdEl0ZW1JbnRlcmZhY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgRU5URVIsIFNQQUNFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IExpc3RGb2N1c0l0ZW0gfSBmcm9tICcuLi9saXN0LWZvY3VzLWl0ZW0ubW9kZWwnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5cbmxldCBsaXN0SXRlbVVuaXF1ZUlkID0gMDtcblxuLyoqXG4gKiBUaGUgY29tcG9uZW50IHRoYXQgcmVwcmVzZW50cyBhIGxpc3QgaXRlbS5cbiAqIFRoZSBsaXN0IGl0ZW0gY2FuIGNvbnRhaW4gcGxhaW4gdGV4dCwgbGlua3Mgb3IgYWN0aW9ucy5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1tmZExpc3RJdGVtXSAsW2ZkLWxpc3QtaXRlbV0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9saXN0LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZC1saXN0X19pdGVtJyxcbiAgICAgICAgcm9sZTogJ2xpc3RpdGVtJ1xuICAgIH0sXG4gICAgc3R5bGVVcmxzOiBbJy4vbGlzdC1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IExJU1RfSVRFTV9DT01QT05FTlQsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBMaXN0SXRlbUNvbXBvbmVudClcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTGlzdEZvY3VzSXRlbSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IExpc3RJdGVtQ29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIExpc3RJdGVtQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBMaXN0Rm9jdXNJdGVtXG4gICAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgTGlzdEl0ZW1JbnRlcmZhY2VcbntcbiAgICAvKiogV2hldGhlciBsaXN0IGl0ZW0gaXMgc2VsZWN0ZWQgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLXNlbGVjdGVkJylcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLXNlbGVjdGVkJylcbiAgICBzZWxlY3RlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyBhcmlhLWRlc2NyaWJlZGJ5IGF0dHJpYnV0ZSBmb3IgbGlzdCBpdGVtLlxuICAgICAqIE5vdGUsIHRoYXQgaXQgaXMgYmVpbmcgY29tYmluZWQgd2l0aCBpbnRlcm5hbCB2YWx1ZXMgZm9yIHRoaXMgY29tcG9uZW50XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBhcmlhRGVzY3JpYmVkQnk6IHN0cmluZztcblxuICAgIC8qKiBXaGV0aGVyIHRoZXJlIGlzIG5vIGRhdGEgaW5zaWRlIGxpc3QgaXRlbSAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1saXN0X19pdGVtLS1uby1kYXRhJylcbiAgICBub0RhdGEgPSBmYWxzZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZXJlIGlzIGl0ZW0gcGVyZm9ybXMgc29tZSBhY3Rpb24gKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtbGlzdF9faXRlbS0tYWN0aW9uJylcbiAgICBhY3Rpb24gPSBmYWxzZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZXJlIGlzIGl0ZW0gcGVyZm9ybXMgc29tZSBhY3Rpb24gKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtbGlzdF9faXRlbS0taW50ZXJyYWN0aXZlJylcbiAgICBpbnRlcmFjdGl2ZSA9IGZhbHNlO1xuXG4gICAgLyoqIFdoZXRoZXIgbGlzdCBpdGVtIGNvbnRhaW5zIGJ1c3kgaW5kaWNhdG9yICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLWxpc3RfX2l0ZW0tLWdyb3dpbmcnKVxuICAgIGdyb3dpbmcgPSBmYWxzZTtcblxuICAgIC8qKiBDb3VudGVyIG9uIGxpc3QgaXRlbSAqL1xuICAgIEBJbnB1dCgpXG4gICAgY291bnRlcjogbnVtYmVyO1xuXG4gICAgLyoqIFdoZXRoZXIgbGlzdCBpdGVtIHNob3VsZCBjb250YWluIGFkZGl0aW9uYWwgdW5SZWFkIHN0eWxlcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1saXN0X19pdGVtLS11bnJlYWQnKVxuICAgIHVucmVhZCA9IGZhbHNlO1xuXG4gICAgLyoqIFRleHQgdG8gYmUgcmVhZCBieSBzY3JlZW4gcmVhZGVyIGZvciBzZWxlY3RlZCBsaXN0IGl0ZW0gKi9cbiAgICBASW5wdXQoKVxuICAgIHNlbGVjdGVkTGlzdEl0ZW1TY3JlZW5SZWFkZXJUZXh0OiBzdHJpbmc7XG5cbiAgICAvKiogVGV4dCB0byBiZSByZWFkIGJ5IHNjcmVlbiByZWFkZXIgZm9yIG5hdmlnYXRlZCBsaXN0IGl0ZW0gKi9cbiAgICBASW5wdXQoKVxuICAgIG5hdmlnYXRlZExpc3RJdGVtU2NyZWVuUmVhZGVyVGV4dDogc3RyaW5nO1xuXG4gICAgLyoqIFRleHQgdG8gYmUgcmVhZCBieSBzY3JlZW4gcmVhZGVyIGZvciBuYXZpZ2F0YWJsZSBsaXN0IGl0ZW0gKi9cbiAgICBASW5wdXQoKVxuICAgIG5hdmlnYXRhYmxlTGlzdEl0ZW1TY3JlZW5SZWFkZXJUZXh0OiBzdHJpbmc7XG5cbiAgICAvKiogQGhpZGRlbiBJbXBsZW1lbnRhdGlvbiBvZiBLZXlib2FyZFN1cHBvcnRJdGVtSW50ZXJmYWNlIHwgVE9ETyBSZXZpc2l0IEtleWJvYXJkU3VwcG9ydEl0ZW1JbnRlcmZhY2UqL1xuICAgIEBPdXRwdXQoKVxuICAgIGtleURvd246IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5Ym9hcmRFdmVudD4oKTtcblxuICAgIC8qKiBXaGV0aGVyIGxpc3QgaXRlbSBjb250YWlucyBsaW5rICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1saXN0X19pdGVtLS1saW5rJylcbiAgICBsaW5rID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoQ2hlY2tib3hDb21wb25lbnQpXG4gICAgY2hlY2tib3g6IENoZWNrYm94Q29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkKFJhZGlvQnV0dG9uQ29tcG9uZW50KVxuICAgIHJhZGlvOiBSYWRpb0J1dHRvbkNvbXBvbmVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihMaXN0TGlua0RpcmVjdGl2ZSlcbiAgICBsaW5rRGlyZWN0aXZlczogUXVlcnlMaXN0PExpc3RMaW5rRGlyZWN0aXZlPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihCdXR0b25Db21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBidXR0b25zOiBRdWVyeUxpc3Q8QnV0dG9uQ29tcG9uZW50PjtcblxuICAgIC8qKiBAaGlkZGVuIEFuIFJ4SlMgU3ViamVjdCB0aGF0IHdpbGwga2lsbCB0aGUgZGF0YSBzdHJlYW0gdXBvbiBjb21wb25lbnTigJlzIGRlc3RydWN0aW9uIChmb3IgdW5zdWJzY3JpYmluZykgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfb25EZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX29uTGlua0xpc3RDaGFuZ2VkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNjcmVlblJlYWRlckNvbnRlbnQgPSAnJztcblxuICAgIC8qKiBAaGlkZGVuIGdyb3VwIGhlYWRlciBpZCwgdGhhdCBpcyBiZWluZyBzZXQgYnkgcGFyZW50IGxpc3QgY29tcG9uZW50ICovXG4gICAgX3JlbGF0ZWRHcm91cEhlYWRlcklkOiBzdHJpbmcgfCBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1kZXNjcmliZWRCeScpXG4gICAgZ2V0IGdldENvbWJpbmVkQXJpYURlc2NyaWJlZEJ5KCk6IHN0cmluZyB7XG4gICAgICAgIGxldCBkZXNjcmliZWRCeSA9IHRoaXMuX3VuaXF1ZUlkICsgJy1zY3JlZW5SZWFkZXItY29udGVudCc7XG4gICAgICAgIGlmICh0aGlzLmFyaWFEZXNjcmliZWRCeSkge1xuICAgICAgICAgICAgZGVzY3JpYmVkQnkgKz0gJyAnICsgdGhpcy5hcmlhRGVzY3JpYmVkQnk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX3JlbGF0ZWRHcm91cEhlYWRlcklkKSB7XG4gICAgICAgICAgICBkZXNjcmliZWRCeSArPSAnICcgKyB0aGlzLl9yZWxhdGVkR3JvdXBIZWFkZXJJZDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGVzY3JpYmVkQnk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWFkb25seSBfdW5pcXVlSWQgPSAnZmRwLWxpc3QtaXRlbS0nICsgKytsaXN0SXRlbVVuaXF1ZUlkO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgICAgICBzdXBlcihlbGVtZW50UmVmKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbGlzdGVuT25MaW5rUXVlcnlDaGFuZ2UoKTtcbiAgICAgICAgdGhpcy5fbGlzdGVuT25CdXR0b25RdWVyeUNoYW5nZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBjaGFuZ2VzLnNlbGVjdGVkTGlzdEl0ZW1TY3JlZW5SZWFkZXJUZXh0IHx8XG4gICAgICAgICAgICBjaGFuZ2VzLm5hdmlnYXRlZExpc3RJdGVtU2NyZWVuUmVhZGVyVGV4dCB8fFxuICAgICAgICAgICAgY2hhbmdlcy5uYXZpZ2F0YWJsZUxpc3RJdGVtU2NyZWVuUmVhZGVyVGV4dFxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVNjcmVlblJlYWRlclRleHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLl9vbkRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgICBrZXlkb3duSGFuZGxlcihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtFTlRFUiwgU1BBQ0VdKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuY2hlY2tib3gpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrYm94Lm5leHRWYWx1ZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuX211dGVFdmVudChldmVudCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMucmFkaW8pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJhZGlvLmxhYmVsQ2xpY2tlZChldmVudCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbXV0ZUV2ZW50KGV2ZW50KTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5pbnRlcmFjdGl2ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSAhdGhpcy5zZWxlY3RlZDtcbiAgICAgICAgICAgICAgICB0aGlzLl9tdXRlRXZlbnQoZXZlbnQpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmtleURvd24uZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZXIgZm9yIG1vdXNlIGV2ZW50cyAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgICBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NsaWNrZWQkLm5leHQoZXZlbnQpO1xuICAgICAgICBpZiAodGhpcy5jaGVja2JveCAmJiAhdGhpcy5saW5rKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuY2hlY2tib3guZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSkge1xuICAgICAgICAgICAgICAgIC8vIGNsaWNraW5nIG9uIHRoZSBjaGVja2JveCBpcyBub3Qgc3VwcHJlc3NlZFxuICAgICAgICAgICAgICAgIC8vIHNvIHdlIHNob3VsZCBvbmx5IHByb2Nlc3MgY2xpY2tzIGlmIGNsaWNrZWQgb24gdGhlIGxpc3QtaXRlbSwgbm90IGNoZWNrYm94IGl0c2VsZlxuICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tib3gubmV4dFZhbHVlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMucmFkaW8gJiYgIXRoaXMubGluaykge1xuICAgICAgICAgICAgdGhpcy5yYWRpby5sYWJlbENsaWNrZWQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5PbkxpbmtRdWVyeUNoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5saW5rRGlyZWN0aXZlcy5jaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLCBzdGFydFdpdGgoMCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9vbkxpbmtMaXN0Q2hhbmdlZCQubmV4dCgpO1xuICAgICAgICAgICAgdGhpcy5saW5rID0gdGhpcy5saW5rRGlyZWN0aXZlcy5sZW5ndGggPiAwO1xuICAgICAgICAgICAgaWYgKHRoaXMubGluaykge1xuICAgICAgICAgICAgICAgIG1lcmdlKHRoaXMubGlua0RpcmVjdGl2ZXMudG9BcnJheSgpLm1hcCgoZCkgPT4gZC5fb25SZWFkYWJsZVByb3BlcnR5Q2hhbmdlZCQpKVxuICAgICAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwobWVyZ2UodGhpcy5fb25EZXN0cm95JCwgdGhpcy5fb25MaW5rTGlzdENoYW5nZWQkKSkpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fdXBkYXRlU2NyZWVuUmVhZGVyVGV4dCgpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5PbkJ1dHRvblF1ZXJ5Q2hhbmdlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJ1dHRvbnMuY2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSwgc3RhcnRXaXRoKDApKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5idXR0b25zLmZvckVhY2godGhpcy5fYWRkQ2xhc3NUb0J1dHRvbnMpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2FkZENsYXNzVG9CdXR0b25zKGJ1dHRvbjogQnV0dG9uQ29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIGJ1dHRvbi5jbGFzcyArPSAnIGZkLWxpc3RfX2J1dHRvbic7XG4gICAgICAgIGJ1dHRvbi5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgICAgIGJ1dHRvbi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9tdXRlRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdXBkYXRlU2NyZWVuUmVhZGVyVGV4dCgpOiB2b2lkIHtcbiAgICAgICAgbGV0IGNvbnRlbnQgPSAnJztcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIGNvbnRlbnQgKz0gYCwgJHt0aGlzLnNlbGVjdGVkTGlzdEl0ZW1TY3JlZW5SZWFkZXJUZXh0ID8/ICdzZWxlY3RlZCd9YDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5saW5rRGlyZWN0aXZlcy5zb21lKChkKSA9PiBkLm5hdmlnYXRlZCkpIHtcbiAgICAgICAgICAgIGNvbnRlbnQgKz0gYCwgJHt0aGlzLm5hdmlnYXRlZExpc3RJdGVtU2NyZWVuUmVhZGVyVGV4dCA/PyAnbmF2aWdhdGVkJ31gO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmxpbmtEaXJlY3RpdmVzLnNvbWUoKGQpID0+IGQubmF2aWdhdGlvbkluZGljYXRvcikpIHtcbiAgICAgICAgICAgIGNvbnRlbnQgKz0gYCwgJHt0aGlzLm5hdmlnYXRhYmxlTGlzdEl0ZW1TY3JlZW5SZWFkZXJUZXh0ID8/ICduYXZpZ2F0YWJsZSd9YDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNjcmVlblJlYWRlckNvbnRlbnQgPSBjb250ZW50O1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY2hlY2tib3ggfHwgcmFkaW9cIj5cbiAgICA8ZGl2IGZkLWZvcm0taXRlbSBjbGFzcz1cImZkLWxpc3RfX2Zvcm0taXRlbVwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmZC1jaGVja2JveFwiPjwvbmctY29udGVudD5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZmQtcmFkaW8tYnV0dG9uXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cblxuPHNwYW4gKm5nSWY9XCJjb3VudGVyIHx8IGNvdW50ZXIgPT09IDBcIiBjbGFzcz1cImZkLWxpc3RfX2l0ZW0tY291bnRlclwiPlxuICAgIHt7IGNvdW50ZXIgfCBudW1iZXI6ICcxLjAtMicgfX1cbjwvc3Bhbj5cblxuPHNwYW4gY2xhc3M9XCJmZC1zY3JlZW5yZWFkZXItb25seVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIFtpZF09XCJfdW5pcXVlSWQgKyAnLXNjcmVlblJlYWRlci1jb250ZW50J1wiPnt7XG4gICAgc2NyZWVuUmVhZGVyQ29udGVudFxufX08L3NwYW4+XG4iXX0=
254
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2xpc3QvbGlzdC1pdGVtL2xpc3QtaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9saXN0L2xpc3QtaXRlbS9saXN0LWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFFVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdEUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7OztB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LFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQW9CbkMsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY2hlY2tib3gnO1xuaW1wb3J0IHsgUmFkaW9CdXR0b25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvcmFkaW8nO1xuaW1wb3J0IHsgTGlzdExpbmtEaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL2xpc3QtbGluay5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgbWVyZ2UsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN0YXJ0V2l0aCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgS2V5VXRpbCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBMSVNUX0lURU1fQ09NUE9ORU5ULCBMaXN0SXRlbUludGVyZmFjZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBFTlRFUiwgU1BBQ0UgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgTGlzdEZvY3VzSXRlbSB9IGZyb20gJy4uL2xpc3QtZm9jdXMtaXRlbS5tb2RlbCc7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYnV0dG9uJztcblxubGV0IGxpc3RJdGVtVW5pcXVlSWQgPSAwO1xuXG4vKipcbiAqIFRoZSBjb21wb25lbnQgdGhhdCByZXByZXNlbnRzIGEgbGlzdCBpdGVtLlxuICogVGhlIGxpc3QgaXRlbSBjYW4gY29udGFpbiBwbGFpbiB0ZXh0LCBsaW5rcyBvciBhY3Rpb25zLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkTGlzdEl0ZW1dICxbZmQtbGlzdC1pdGVtXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xpc3QtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLWxpc3RfX2l0ZW0nLFxuICAgICAgICByb2xlOiAnbGlzdGl0ZW0nXG4gICAgfSxcbiAgICBzdHlsZVVybHM6IFsnLi9saXN0LWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTElTVF9JVEVNX0NPTVBPTkVOVCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IExpc3RJdGVtQ29tcG9uZW50KVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBMaXN0Rm9jdXNJdGVtLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTGlzdEl0ZW1Db21wb25lbnQpXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgTGlzdEl0ZW1Db21wb25lbnRcbiAgICBleHRlbmRzIExpc3RGb2N1c0l0ZW1cbiAgICBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBMaXN0SXRlbUludGVyZmFjZVxue1xuICAgIC8qKiBXaGV0aGVyIGxpc3QgaXRlbSBpcyBzZWxlY3RlZCAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtc2VsZWN0ZWQnKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaXMtc2VsZWN0ZWQnKVxuICAgIHNlbGVjdGVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGFyaWEtZGVzY3JpYmVkYnkgYXR0cmlidXRlIGZvciBsaXN0IGl0ZW0uXG4gICAgICogTm90ZSwgdGhhdCBpdCBpcyBiZWluZyBjb21iaW5lZCB3aXRoIGludGVybmFsIHZhbHVlcyBmb3IgdGhpcyBjb21wb25lbnRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFEZXNjcmliZWRCeTogc3RyaW5nO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlcmUgaXMgbm8gZGF0YSBpbnNpZGUgbGlzdCBpdGVtICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLWxpc3RfX2l0ZW0tLW5vLWRhdGEnKVxuICAgIG5vRGF0YSA9IGZhbHNlO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlcmUgaXMgaXRlbSBwZXJmb3JtcyBzb21lIGFjdGlvbiAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1saXN0X19pdGVtLS1hY3Rpb24nKVxuICAgIGFjdGlvbiA9IGZhbHNlO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlcmUgaXMgaXRlbSBwZXJmb3JtcyBzb21lIGFjdGlvbiAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1saXN0X19pdGVtLS1pbnRlcnJhY3RpdmUnKVxuICAgIGludGVyYWN0aXZlID0gZmFsc2U7XG5cbiAgICAvKiogV2hldGhlciBsaXN0IGl0ZW0gY29udGFpbnMgYnVzeSBpbmRpY2F0b3IgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtbGlzdF9faXRlbS0tZ3Jvd2luZycpXG4gICAgZ3Jvd2luZyA9IGZhbHNlO1xuXG4gICAgLyoqIENvdW50ZXIgb24gbGlzdCBpdGVtICovXG4gICAgQElucHV0KClcbiAgICBjb3VudGVyOiBudW1iZXI7XG5cbiAgICAvKiogV2hldGhlciBsaXN0IGl0ZW0gc2hvdWxkIGNvbnRhaW4gYWRkaXRpb25hbCB1blJlYWQgc3R5bGVzICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLWxpc3RfX2l0ZW0tLXVucmVhZCcpXG4gICAgdW5yZWFkID0gZmFsc2U7XG5cbiAgICAvKiogVGV4dCB0byBiZSByZWFkIGJ5IHNjcmVlbiByZWFkZXIgZm9yIHNlbGVjdGVkIGxpc3QgaXRlbSAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VsZWN0ZWRMaXN0SXRlbVNjcmVlblJlYWRlclRleHQ6IHN0cmluZztcblxuICAgIC8qKiBUZXh0IHRvIGJlIHJlYWQgYnkgc2NyZWVuIHJlYWRlciBmb3IgbmF2aWdhdGVkIGxpc3QgaXRlbSAqL1xuICAgIEBJbnB1dCgpXG4gICAgbmF2aWdhdGVkTGlzdEl0ZW1TY3JlZW5SZWFkZXJUZXh0OiBzdHJpbmc7XG5cbiAgICAvKiogVGV4dCB0byBiZSByZWFkIGJ5IHNjcmVlbiByZWFkZXIgZm9yIG5hdmlnYXRhYmxlIGxpc3QgaXRlbSAqL1xuICAgIEBJbnB1dCgpXG4gICAgbmF2aWdhdGFibGVMaXN0SXRlbVNjcmVlblJlYWRlclRleHQ6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuIEltcGxlbWVudGF0aW9uIG9mIEtleWJvYXJkU3VwcG9ydEl0ZW1JbnRlcmZhY2UgfCBUT0RPIFJldmlzaXQgS2V5Ym9hcmRTdXBwb3J0SXRlbUludGVyZmFjZSovXG4gICAgQE91dHB1dCgpXG4gICAga2V5RG93bjogRXZlbnRFbWl0dGVyPEtleWJvYXJkRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PigpO1xuXG4gICAgLyoqIFdoZXRoZXIgbGlzdCBpdGVtIGNvbnRhaW5zIGxpbmsgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLWxpc3RfX2l0ZW0tLWxpbmsnKVxuICAgIGxpbmsgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZChDaGVja2JveENvbXBvbmVudClcbiAgICBjaGVja2JveDogQ2hlY2tib3hDb21wb25lbnQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoUmFkaW9CdXR0b25Db21wb25lbnQpXG4gICAgcmFkaW86IFJhZGlvQnV0dG9uQ29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkcmVuKExpc3RMaW5rRGlyZWN0aXZlKVxuICAgIGxpbmtEaXJlY3RpdmVzOiBRdWVyeUxpc3Q8TGlzdExpbmtEaXJlY3RpdmU+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkcmVuKEJ1dHRvbkNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIGJ1dHRvbnM6IFF1ZXJ5TGlzdDxCdXR0b25Db21wb25lbnQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gQW4gUnhKUyBTdWJqZWN0IHRoYXQgd2lsbCBraWxsIHRoZSBkYXRhIHN0cmVhbSB1cG9uIGNvbXBvbmVudOKAmXMgZGVzdHJ1Y3Rpb24gKGZvciB1bnN1YnNjcmliaW5nKSAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9vbkRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfb25MaW5rTGlzdENoYW5nZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc2NyZWVuUmVhZGVyQ29udGVudCA9ICcnO1xuXG4gICAgLyoqIEBoaWRkZW4gZ3JvdXAgaGVhZGVyIGlkLCB0aGF0IGlzIGJlaW5nIHNldCBieSBwYXJlbnQgbGlzdCBjb21wb25lbnQgKi9cbiAgICBfcmVsYXRlZEdyb3VwSGVhZGVySWQ6IHN0cmluZyB8IG51bGw7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRlc2NyaWJlZEJ5JylcbiAgICBnZXQgZ2V0Q29tYmluZWRBcmlhRGVzY3JpYmVkQnkoKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGRlc2NyaWJlZEJ5ID0gdGhpcy5fdW5pcXVlSWQgKyAnLXNjcmVlblJlYWRlci1jb250ZW50JztcbiAgICAgICAgaWYgKHRoaXMuYXJpYURlc2NyaWJlZEJ5KSB7XG4gICAgICAgICAgICBkZXNjcmliZWRCeSArPSAnICcgKyB0aGlzLmFyaWFEZXNjcmliZWRCeTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fcmVsYXRlZEdyb3VwSGVhZGVySWQpIHtcbiAgICAgICAgICAgIGRlc2NyaWJlZEJ5ICs9ICcgJyArIHRoaXMuX3JlbGF0ZWRHcm91cEhlYWRlcklkO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkZXNjcmliZWRCeTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF91bmlxdWVJZCA9ICdmZHAtbGlzdC1pdGVtLScgKyArK2xpc3RJdGVtVW5pcXVlSWQ7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgICAgIHN1cGVyKGVsZW1lbnRSZWYpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9saXN0ZW5PbkxpbmtRdWVyeUNoYW5nZSgpO1xuICAgICAgICB0aGlzLl9saXN0ZW5PbkJ1dHRvblF1ZXJ5Q2hhbmdlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGNoYW5nZXMuc2VsZWN0ZWRMaXN0SXRlbVNjcmVlblJlYWRlclRleHQgfHxcbiAgICAgICAgICAgIGNoYW5nZXMubmF2aWdhdGVkTGlzdEl0ZW1TY3JlZW5SZWFkZXJUZXh0IHx8XG4gICAgICAgICAgICBjaGFuZ2VzLm5hdmlnYXRhYmxlTGlzdEl0ZW1TY3JlZW5SZWFkZXJUZXh0XG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5fdXBkYXRlU2NyZWVuUmVhZGVyVGV4dCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fb25EZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGtleWRvd25IYW5kbGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0VOVEVSLCBTUEFDRV0pKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5jaGVja2JveCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tib3gubmV4dFZhbHVlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbXV0ZUV2ZW50KGV2ZW50KTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5yYWRpbykge1xuICAgICAgICAgICAgICAgIHRoaXMucmFkaW8ubGFiZWxDbGlja2VkKGV2ZW50LCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbXV0ZUV2ZW50KGV2ZW50KTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5pbnRlcmFjdGl2ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQgPSAhdGhpcy5zZWxlY3RlZDtcbiAgICAgICAgICAgICAgICB0aGlzLl9tdXRlRXZlbnQoZXZlbnQpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmtleURvd24uZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZXIgZm9yIG1vdXNlIGV2ZW50cyAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgICBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NsaWNrZWQkLm5leHQoZXZlbnQpO1xuICAgICAgICBpZiAodGhpcy5jaGVja2JveCAmJiAhdGhpcy5saW5rKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuY2hlY2tib3guZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSkge1xuICAgICAgICAgICAgICAgIC8vIGNsaWNraW5nIG9uIHRoZSBjaGVja2JveCBpcyBub3Qgc3VwcHJlc3NlZFxuICAgICAgICAgICAgICAgIC8vIHNvIHdlIHNob3VsZCBvbmx5IHByb2Nlc3MgY2xpY2tzIGlmIGNsaWNrZWQgb24gdGhlIGxpc3QtaXRlbSwgbm90IGNoZWNrYm94IGl0c2VsZlxuICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tib3gubmV4dFZhbHVlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMucmFkaW8gJiYgIXRoaXMubGluaykge1xuICAgICAgICAgICAgdGhpcy5yYWRpby5sYWJlbENsaWNrZWQoZXZlbnQsIGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25MaW5rUXVlcnlDaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubGlua0RpcmVjdGl2ZXMuY2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSwgc3RhcnRXaXRoKDApKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5fb25MaW5rTGlzdENoYW5nZWQkLm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMubGluayA9IHRoaXMubGlua0RpcmVjdGl2ZXMubGVuZ3RoID4gMDtcbiAgICAgICAgICAgIGlmICh0aGlzLmxpbmspIHtcbiAgICAgICAgICAgICAgICBtZXJnZSh0aGlzLmxpbmtEaXJlY3RpdmVzLnRvQXJyYXkoKS5tYXAoKGQpID0+IGQuX29uUmVhZGFibGVQcm9wZXJ0eUNoYW5nZWQkKSlcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKG1lcmdlKHRoaXMuX29uRGVzdHJveSQsIHRoaXMuX29uTGlua0xpc3RDaGFuZ2VkJCkpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuX3VwZGF0ZVNjcmVlblJlYWRlclRleHQoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25CdXR0b25RdWVyeUNoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idXR0b25zLmNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksIHN0YXJ0V2l0aCgwKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYnV0dG9ucy5mb3JFYWNoKHRoaXMuX2FkZENsYXNzVG9CdXR0b25zKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hZGRDbGFzc1RvQnV0dG9ucyhidXR0b246IEJ1dHRvbkNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBidXR0b24uY2xhc3MgKz0gJyBmZC1saXN0X19idXR0b24nO1xuICAgICAgICBidXR0b24uYnVpbGRDb21wb25lbnRDc3NDbGFzcygpO1xuICAgICAgICBidXR0b24uZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbXV0ZUV2ZW50KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVNjcmVlblJlYWRlclRleHQoKTogdm9pZCB7XG4gICAgICAgIGxldCBjb250ZW50ID0gJyc7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkKSB7XG4gICAgICAgICAgICBjb250ZW50ICs9IGAsICR7dGhpcy5zZWxlY3RlZExpc3RJdGVtU2NyZWVuUmVhZGVyVGV4dCA/PyAnc2VsZWN0ZWQnfWA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubGlua0RpcmVjdGl2ZXMuc29tZSgoZCkgPT4gZC5uYXZpZ2F0ZWQpKSB7XG4gICAgICAgICAgICBjb250ZW50ICs9IGAsICR7dGhpcy5uYXZpZ2F0ZWRMaXN0SXRlbVNjcmVlblJlYWRlclRleHQgPz8gJ25hdmlnYXRlZCd9YDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5saW5rRGlyZWN0aXZlcy5zb21lKChkKSA9PiBkLm5hdmlnYXRpb25JbmRpY2F0b3IpKSB7XG4gICAgICAgICAgICBjb250ZW50ICs9IGAsICR7dGhpcy5uYXZpZ2F0YWJsZUxpc3RJdGVtU2NyZWVuUmVhZGVyVGV4dCA/PyAnbmF2aWdhdGFibGUnfWA7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zY3JlZW5SZWFkZXJDb250ZW50ID0gY29udGVudDtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNoZWNrYm94IHx8IHJhZGlvXCI+XG4gICAgPGRpdiBmZC1mb3JtLWl0ZW0gY2xhc3M9XCJmZC1saXN0X19mb3JtLWl0ZW1cIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZmQtY2hlY2tib3hcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImZkLXJhZGlvLWJ1dHRvblwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbjxzcGFuICpuZ0lmPVwiY291bnRlciB8fCBjb3VudGVyID09PSAwXCIgY2xhc3M9XCJmZC1saXN0X19pdGVtLWNvdW50ZXJcIj5cbiAgICB7eyBjb3VudGVyIHwgbnVtYmVyOiAnMS4wLTInIH19XG48L3NwYW4+XG5cbjxzcGFuIGNsYXNzPVwiZmQtc2NyZWVucmVhZGVyLW9ubHlcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBbaWRdPVwiX3VuaXF1ZUlkICsgJy1zY3JlZW5SZWFkZXItY29udGVudCdcIj57e1xuICAgIHNjcmVlblJlYWRlckNvbnRlbnRcbn19PC9zcGFuPlxuIl19
@@ -188,7 +188,7 @@ class ListItemComponent extends ListFocusItem {
188
188
  this._muteEvent(event);
189
189
  }
190
190
  else if (this.radio) {
191
- this.radio.labelClicked(event);
191
+ this.radio.labelClicked(event, false);
192
192
  this._muteEvent(event);
193
193
  }
194
194
  else if (this.interactive) {
@@ -210,7 +210,7 @@ class ListItemComponent extends ListFocusItem {
210
210
  }
211
211
  }
212
212
  if (this.radio && !this.link) {
213
- this.radio.labelClicked(event);
213
+ this.radio.labelClicked(event, false);
214
214
  }
215
215
  }
216
216
  /** @hidden */
@@ -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-group-header.directive.ts","../../../../../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.tokens.ts","../../../../../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-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, OnChanges, SimpleChanges } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Directive({\n selector: '[fd-list-link], [fdListLink]'\n})\nexport class ListLinkDirective implements OnChanges {\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 /** @hidden */\n @HostBinding('class.fd-list__link')\n fdListLinkClass = true;\n\n /** Emits when some of the properties, that should be read by screenreader, are changed */\n readonly _onReadablePropertyChanged$ = new Subject<void>();\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.navigationIndicator || changes.navigated) {\n this._onReadablePropertyChanged$.next();\n }\n }\n}\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input } from '@angular/core';\nimport { KeyboardSupportItemInterface } from '@fundamental-ngx/core/utils';\nimport { Subject } from 'rxjs';\n\n@Directive()\nexport abstract class ListFocusItem implements KeyboardSupportItemInterface {\n /** tab index attribute */\n @Input()\n @HostBinding('attr.tabindex')\n get tabindex(): number {\n if (this._isFirstItem && isNaN(this._tabIndex as number)) {\n return 0;\n }\n return this._tabIndex ?? -1;\n }\n set tabindex(value: number) {\n this._tabIndex = coerceNumberProperty(value, -1);\n }\n\n /** @hidden */\n readonly _focused$ = new Subject<{ focusedWithin: boolean }>();\n\n /** @hidden */\n readonly _clicked$ = new Subject<MouseEvent>();\n\n /** @hidden */\n protected _isFirstItem = false;\n\n /** @hidden */\n protected _tabIndex: number | undefined;\n\n /** @hidden Implementation of KeyboardSupportItemInterface */\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n /** @hidden */\n @HostListener('focusin', ['$event'])\n protected onFocus(event: FocusEvent): void {\n this._focused$.next({\n focusedWithin: event.target !== this.elementRef?.nativeElement\n });\n }\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 /** @hidden */\n setIsFirst(value: boolean): void {\n this._isFirstItem = value;\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 OnChanges,\n OnDestroy,\n Output,\n QueryList,\n SimpleChanges,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { CheckboxComponent } from '@fundamental-ngx/core/checkbox';\nimport { RadioButtonComponent } from '@fundamental-ngx/core/radio';\nimport { ListLinkDirective } from '../directives/list-link.directive';\nimport { merge, 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\nlet listItemUniqueId = 0;\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 styleUrls: ['./list-item.component.scss'],\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\n extends ListFocusItem\n implements AfterContentInit, OnChanges, OnDestroy, ListItemInterface\n{\n /** Whether list item is selected */\n @Input()\n @HostBinding('attr.aria-selected')\n @HostBinding('class.is-selected')\n selected = false;\n\n /**\n * Sets aria-describedby attribute for list item.\n * Note, that it is being combined with internal values for this component\n */\n @Input()\n ariaDescribedBy: string;\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 /** Text to be read by screen reader for selected list item */\n @Input()\n selectedListItemScreenReaderText: string;\n\n /** Text to be read by screen reader for navigated list item */\n @Input()\n navigatedListItemScreenReaderText: string;\n\n /** Text to be read by screen reader for navigatable list item */\n @Input()\n navigatableListItemScreenReaderText: string;\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 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 readonly _onLinkListChanged$ = new Subject<void>();\n\n /** @hidden */\n screenReaderContent = '';\n\n /** @hidden group header id, that is being set by parent list component */\n _relatedGroupHeaderId: string | null;\n\n /** @hidden */\n @HostBinding('attr.aria-describedBy')\n get getCombinedAriaDescribedBy(): string {\n let describedBy = this._uniqueId + '-screenReader-content';\n if (this.ariaDescribedBy) {\n describedBy += ' ' + this.ariaDescribedBy;\n }\n if (this._relatedGroupHeaderId) {\n describedBy += ' ' + this._relatedGroupHeaderId;\n }\n return describedBy;\n }\n\n /** @hidden */\n readonly _uniqueId = 'fdp-list-item-' + ++listItemUniqueId;\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 ngOnChanges(changes: SimpleChanges): void {\n if (\n changes.selectedListItemScreenReaderText ||\n changes.navigatedListItemScreenReaderText ||\n changes.navigatableListItemScreenReaderText\n ) {\n this._updateScreenReaderText();\n }\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 } else if (this.radio) {\n this.radio.labelClicked(event);\n this._muteEvent(event);\n } else if (this.interactive) {\n this.selected = !this.selected;\n this._muteEvent(event);\n return;\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$.next(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._onLinkListChanged$.next();\n this.link = this.linkDirectives.length > 0;\n if (this.link) {\n merge(this.linkDirectives.toArray().map((d) => d._onReadablePropertyChanged$))\n .pipe(takeUntil(merge(this._onDestroy$, this._onLinkListChanged$)))\n .subscribe(() => this._updateScreenReaderText());\n }\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 /** @hidden */\n private _updateScreenReaderText(): void {\n let content = '';\n if (this.selected) {\n content += `, ${this.selectedListItemScreenReaderText ?? 'selected'}`;\n }\n if (this.linkDirectives.some((d) => d.navigated)) {\n content += `, ${this.navigatedListItemScreenReaderText ?? 'navigated'}`;\n }\n if (this.linkDirectives.some((d) => d.navigationIndicator)) {\n content += `, ${this.navigatableListItemScreenReaderText ?? 'navigatable'}`;\n }\n this.screenReaderContent = content;\n this._changeDetectorRef.markForCheck();\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 | number: '1.0-2' }}\n</span>\n\n<span class=\"fd-screenreader-only\" aria-hidden=\"true\" [id]=\"_uniqueId + '-screenReader-content'\">{{\n screenReaderContent\n}}</span>\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output\n} from '@angular/core';\n\nimport { ListFocusItem } from '../list-focus-item.model';\n\nlet uniqueId = 0;\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 /** id of an element to be applied */\n @Input()\n @HostBinding('attr.id')\n nativeElementId: string | null = `fd-list-group-header-${++uniqueId}`;\n\n /** @hidden Implementation of KeyboardSupportItemInterface */\n @Output()\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\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-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 { InjectionToken } from '@angular/core';\n\nexport const FD_LIST = new InjectionToken('List component');\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, Observable, Subject, Subscription } from 'rxjs';\nimport { map, 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';\nimport { FD_LIST } from './list.tokens';\n\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, { provide: FD_LIST, useExisting: ListComponent }]\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<ListFocusItem>;\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<ListFocusItem>,\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, updateOnly = false): void {\n if (updateOnly) {\n this._keyboardSupportService.keyManager.updateActiveItem(index);\n } else {\n this._keyboardSupportService.keyManager.setActiveItem(index);\n }\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 setTimeout(() => {\n // using setTimeout to avoid ExpressionChangedAfterItHasBeenCheckedError\n this.updateItemsProperties();\n });\n });\n }\n\n /** @hidden */\n private _listenOnItemsClick(): void {\n /** Finish all the streams, from before */\n this._onRefresh$.next();\n\n if (!this.keyboardSupport) {\n return;\n }\n\n /** Merge refresh/destroy observables */\n const completion$ = merge(this._onRefresh$, this._onDestroy$);\n const interactionChangesIndexes: Observable<{ index: number; updateOnly: boolean }>[] = this._focusItems.map(\n (item, index) =>\n merge(\n item._clicked$.pipe(map(() => ({ index, updateOnly: false }))),\n item._focused$.pipe(map(({ focusedWithin }) => ({ index, updateOnly: focusedWithin })))\n )\n );\n merge(...interactionChangesIndexes)\n .pipe(takeUntil(completion$))\n .subscribe(({ index, updateOnly }) => this.setItemActive(index, updateOnly));\n }\n\n /** @hidden */\n private updateItemsProperties(): void {\n let closestListHeader: ListGroupHeaderDirective | null = null;\n this._focusItems.forEach((item, index) => {\n if (item instanceof ListGroupHeaderDirective) {\n closestListHeader = item;\n } else if (item instanceof ListItemComponent && closestListHeader) {\n item._relatedGroupHeaderId = closestListHeader.nativeElementId;\n }\n item.setIsFirst(index === 0);\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 { 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-group-header.directive.ts","../../../../../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.tokens.ts","../../../../../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-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, OnChanges, SimpleChanges } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Directive({\n selector: '[fd-list-link], [fdListLink]'\n})\nexport class ListLinkDirective implements OnChanges {\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 /** @hidden */\n @HostBinding('class.fd-list__link')\n fdListLinkClass = true;\n\n /** Emits when some of the properties, that should be read by screenreader, are changed */\n readonly _onReadablePropertyChanged$ = new Subject<void>();\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.navigationIndicator || changes.navigated) {\n this._onReadablePropertyChanged$.next();\n }\n }\n}\n","import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input } from '@angular/core';\nimport { KeyboardSupportItemInterface } from '@fundamental-ngx/core/utils';\nimport { Subject } from 'rxjs';\n\n@Directive()\nexport abstract class ListFocusItem implements KeyboardSupportItemInterface {\n /** tab index attribute */\n @Input()\n @HostBinding('attr.tabindex')\n get tabindex(): number {\n if (this._isFirstItem && isNaN(this._tabIndex as number)) {\n return 0;\n }\n return this._tabIndex ?? -1;\n }\n set tabindex(value: number) {\n this._tabIndex = coerceNumberProperty(value, -1);\n }\n\n /** @hidden */\n readonly _focused$ = new Subject<{ focusedWithin: boolean }>();\n\n /** @hidden */\n readonly _clicked$ = new Subject<MouseEvent>();\n\n /** @hidden */\n protected _isFirstItem = false;\n\n /** @hidden */\n protected _tabIndex: number | undefined;\n\n /** @hidden Implementation of KeyboardSupportItemInterface */\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\n\n /** @hidden */\n @HostListener('focusin', ['$event'])\n protected onFocus(event: FocusEvent): void {\n this._focused$.next({\n focusedWithin: event.target !== this.elementRef?.nativeElement\n });\n }\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 /** @hidden */\n setIsFirst(value: boolean): void {\n this._isFirstItem = value;\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 OnChanges,\n OnDestroy,\n Output,\n QueryList,\n SimpleChanges,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { CheckboxComponent } from '@fundamental-ngx/core/checkbox';\nimport { RadioButtonComponent } from '@fundamental-ngx/core/radio';\nimport { ListLinkDirective } from '../directives/list-link.directive';\nimport { merge, 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\nlet listItemUniqueId = 0;\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 styleUrls: ['./list-item.component.scss'],\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\n extends ListFocusItem\n implements AfterContentInit, OnChanges, OnDestroy, ListItemInterface\n{\n /** Whether list item is selected */\n @Input()\n @HostBinding('attr.aria-selected')\n @HostBinding('class.is-selected')\n selected = false;\n\n /**\n * Sets aria-describedby attribute for list item.\n * Note, that it is being combined with internal values for this component\n */\n @Input()\n ariaDescribedBy: string;\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 /** Text to be read by screen reader for selected list item */\n @Input()\n selectedListItemScreenReaderText: string;\n\n /** Text to be read by screen reader for navigated list item */\n @Input()\n navigatedListItemScreenReaderText: string;\n\n /** Text to be read by screen reader for navigatable list item */\n @Input()\n navigatableListItemScreenReaderText: string;\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 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 readonly _onLinkListChanged$ = new Subject<void>();\n\n /** @hidden */\n screenReaderContent = '';\n\n /** @hidden group header id, that is being set by parent list component */\n _relatedGroupHeaderId: string | null;\n\n /** @hidden */\n @HostBinding('attr.aria-describedBy')\n get getCombinedAriaDescribedBy(): string {\n let describedBy = this._uniqueId + '-screenReader-content';\n if (this.ariaDescribedBy) {\n describedBy += ' ' + this.ariaDescribedBy;\n }\n if (this._relatedGroupHeaderId) {\n describedBy += ' ' + this._relatedGroupHeaderId;\n }\n return describedBy;\n }\n\n /** @hidden */\n readonly _uniqueId = 'fdp-list-item-' + ++listItemUniqueId;\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 ngOnChanges(changes: SimpleChanges): void {\n if (\n changes.selectedListItemScreenReaderText ||\n changes.navigatedListItemScreenReaderText ||\n changes.navigatableListItemScreenReaderText\n ) {\n this._updateScreenReaderText();\n }\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 } else if (this.radio) {\n this.radio.labelClicked(event, false);\n this._muteEvent(event);\n } else if (this.interactive) {\n this.selected = !this.selected;\n this._muteEvent(event);\n return;\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$.next(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, false);\n }\n }\n\n /** @hidden */\n private _listenOnLinkQueryChange(): void {\n this.linkDirectives.changes.pipe(takeUntil(this._onDestroy$), startWith(0)).subscribe(() => {\n this._onLinkListChanged$.next();\n this.link = this.linkDirectives.length > 0;\n if (this.link) {\n merge(this.linkDirectives.toArray().map((d) => d._onReadablePropertyChanged$))\n .pipe(takeUntil(merge(this._onDestroy$, this._onLinkListChanged$)))\n .subscribe(() => this._updateScreenReaderText());\n }\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 /** @hidden */\n private _updateScreenReaderText(): void {\n let content = '';\n if (this.selected) {\n content += `, ${this.selectedListItemScreenReaderText ?? 'selected'}`;\n }\n if (this.linkDirectives.some((d) => d.navigated)) {\n content += `, ${this.navigatedListItemScreenReaderText ?? 'navigated'}`;\n }\n if (this.linkDirectives.some((d) => d.navigationIndicator)) {\n content += `, ${this.navigatableListItemScreenReaderText ?? 'navigatable'}`;\n }\n this.screenReaderContent = content;\n this._changeDetectorRef.markForCheck();\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 | number: '1.0-2' }}\n</span>\n\n<span class=\"fd-screenreader-only\" aria-hidden=\"true\" [id]=\"_uniqueId + '-screenReader-content'\">{{\n screenReaderContent\n}}</span>\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output\n} from '@angular/core';\n\nimport { ListFocusItem } from '../list-focus-item.model';\n\nlet uniqueId = 0;\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 /** id of an element to be applied */\n @Input()\n @HostBinding('attr.id')\n nativeElementId: string | null = `fd-list-group-header-${++uniqueId}`;\n\n /** @hidden Implementation of KeyboardSupportItemInterface */\n @Output()\n keyDown: EventEmitter<KeyboardEvent> = new EventEmitter<KeyboardEvent>();\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-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 { InjectionToken } from '@angular/core';\n\nexport const FD_LIST = new InjectionToken('List component');\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, Observable, Subject, Subscription } from 'rxjs';\nimport { map, 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';\nimport { FD_LIST } from './list.tokens';\n\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, { provide: FD_LIST, useExisting: ListComponent }]\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<ListFocusItem>;\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<ListFocusItem>,\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, updateOnly = false): void {\n if (updateOnly) {\n this._keyboardSupportService.keyManager.updateActiveItem(index);\n } else {\n this._keyboardSupportService.keyManager.setActiveItem(index);\n }\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 setTimeout(() => {\n // using setTimeout to avoid ExpressionChangedAfterItHasBeenCheckedError\n this.updateItemsProperties();\n });\n });\n }\n\n /** @hidden */\n private _listenOnItemsClick(): void {\n /** Finish all the streams, from before */\n this._onRefresh$.next();\n\n if (!this.keyboardSupport) {\n return;\n }\n\n /** Merge refresh/destroy observables */\n const completion$ = merge(this._onRefresh$, this._onDestroy$);\n const interactionChangesIndexes: Observable<{ index: number; updateOnly: boolean }>[] = this._focusItems.map(\n (item, index) =>\n merge(\n item._clicked$.pipe(map(() => ({ index, updateOnly: false }))),\n item._focused$.pipe(map(({ focusedWithin }) => ({ index, updateOnly: focusedWithin })))\n )\n );\n merge(...interactionChangesIndexes)\n .pipe(takeUntil(completion$))\n .subscribe(({ index, updateOnly }) => this.setItemActive(index, updateOnly));\n }\n\n /** @hidden */\n private updateItemsProperties(): void {\n let closestListHeader: ListGroupHeaderDirective | null = null;\n this._focusItems.forEach((item, index) => {\n if (item instanceof ListGroupHeaderDirective) {\n closestListHeader = item;\n } else if (item instanceof ListItemComponent && closestListHeader) {\n item._relatedGroupHeaderId = closestListHeader.nativeElementId;\n }\n item.setIsFirst(index === 0);\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 { 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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"}
@@ -184,7 +184,7 @@ class ListItemComponent extends ListFocusItem {
184
184
  this._muteEvent(event);
185
185
  }
186
186
  else if (this.radio) {
187
- this.radio.labelClicked(event);
187
+ this.radio.labelClicked(event, false);
188
188
  this._muteEvent(event);
189
189
  }
190
190
  else if (this.interactive) {
@@ -206,7 +206,7 @@ class ListItemComponent extends ListFocusItem {
206
206
  }
207
207
  }
208
208
  if (this.radio && !this.link) {
209
- this.radio.labelClicked(event);
209
+ this.radio.labelClicked(event, false);
210
210
  }
211
211
  }
212
212
  /** @hidden */