@fundamental-ngx/core 0.35.5-rc.6 → 0.35.6

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 (175) 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/esm2020/breadcrumb.component.mjs +1 -1
  8. package/breadcrumb/fesm2015/fundamental-ngx-core-breadcrumb.mjs +1 -1
  9. package/breadcrumb/fesm2020/fundamental-ngx-core-breadcrumb.mjs +1 -1
  10. package/breadcrumb/package.json +1 -1
  11. package/busy-indicator/package.json +1 -1
  12. package/button/package.json +1 -1
  13. package/calendar/package.json +1 -1
  14. package/card/package.json +1 -1
  15. package/carousel/package.json +1 -1
  16. package/checkbox/package.json +1 -1
  17. package/combobox/package.json +1 -1
  18. package/content-density/package.json +4 -4
  19. package/date-picker/date-picker.component.d.ts +1 -10
  20. package/date-picker/date-picker.module.d.ts +2 -3
  21. package/date-picker/esm2020/date-picker.component.mjs +6 -30
  22. package/date-picker/esm2020/date-picker.module.mjs +1 -5
  23. package/date-picker/fesm2015/fundamental-ngx-core-date-picker.mjs +5 -33
  24. package/date-picker/fesm2015/fundamental-ngx-core-date-picker.mjs.map +1 -1
  25. package/date-picker/fesm2020/fundamental-ngx-core-date-picker.mjs +5 -33
  26. package/date-picker/fesm2020/fundamental-ngx-core-date-picker.mjs.map +1 -1
  27. package/date-picker/package.json +1 -1
  28. package/datetime/package.json +1 -1
  29. package/datetime-picker/package.json +1 -1
  30. package/dialog/package.json +1 -1
  31. package/dynamic-page/package.json +1 -1
  32. package/dynamic-side-content/package.json +1 -1
  33. package/esm2020/breadcrumb/breadcrumb.component.mjs +1 -1
  34. package/esm2020/date-picker/date-picker.component.mjs +6 -30
  35. package/esm2020/date-picker/date-picker.module.mjs +1 -5
  36. package/esm2020/menu/menu-item/menu-item.component.mjs +43 -7
  37. package/esm2020/menu/menu.component.mjs +37 -34
  38. package/esm2020/menu/services/menu.service.mjs +14 -13
  39. package/esm2020/shellbar/product-menu/product-menu.component.mjs +1 -1
  40. package/esm2020/shellbar/user-menu/shellbar-user-menu.component.mjs +1 -1
  41. package/esm2020/split-button/split-button.component.mjs +6 -6
  42. package/esm2020/tabs/tab-list.component.mjs +1 -1
  43. package/esm2020/time/time-column/time-column.component.mjs +2 -12
  44. package/esm2020/tree/tree-child.component.mjs +2 -2
  45. package/facets/package.json +1 -1
  46. package/feed-input/package.json +1 -1
  47. package/feed-list-item/package.json +1 -1
  48. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +1 -1
  49. package/fesm2015/fundamental-ngx-core-date-picker.mjs +5 -33
  50. package/fesm2015/fundamental-ngx-core-date-picker.mjs.map +1 -1
  51. package/fesm2015/fundamental-ngx-core-menu.mjs +90 -50
  52. package/fesm2015/fundamental-ngx-core-menu.mjs.map +1 -1
  53. package/fesm2015/fundamental-ngx-core-shellbar.mjs +2 -2
  54. package/fesm2015/fundamental-ngx-core-split-button.mjs +5 -5
  55. package/fesm2015/fundamental-ngx-core-split-button.mjs.map +1 -1
  56. package/fesm2015/fundamental-ngx-core-tabs.mjs +1 -1
  57. package/fesm2015/fundamental-ngx-core-time.mjs +1 -11
  58. package/fesm2015/fundamental-ngx-core-time.mjs.map +1 -1
  59. package/fesm2015/fundamental-ngx-core-tree.mjs +1 -1
  60. package/fesm2015/fundamental-ngx-core-tree.mjs.map +1 -1
  61. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +1 -1
  62. package/fesm2020/fundamental-ngx-core-date-picker.mjs +5 -33
  63. package/fesm2020/fundamental-ngx-core-date-picker.mjs.map +1 -1
  64. package/fesm2020/fundamental-ngx-core-menu.mjs +90 -50
  65. package/fesm2020/fundamental-ngx-core-menu.mjs.map +1 -1
  66. package/fesm2020/fundamental-ngx-core-shellbar.mjs +2 -2
  67. package/fesm2020/fundamental-ngx-core-split-button.mjs +5 -5
  68. package/fesm2020/fundamental-ngx-core-split-button.mjs.map +1 -1
  69. package/fesm2020/fundamental-ngx-core-tabs.mjs +1 -1
  70. package/fesm2020/fundamental-ngx-core-time.mjs +1 -11
  71. package/fesm2020/fundamental-ngx-core-time.mjs.map +1 -1
  72. package/fesm2020/fundamental-ngx-core-tree.mjs +1 -1
  73. package/fesm2020/fundamental-ngx-core-tree.mjs.map +1 -1
  74. package/file-uploader/package.json +1 -1
  75. package/fixed-card-layout/package.json +1 -1
  76. package/flexible-column-layout/package.json +1 -1
  77. package/form/package.json +1 -1
  78. package/formatted-text/package.json +1 -1
  79. package/grid-list/package.json +1 -1
  80. package/icon/package.json +1 -1
  81. package/illustrated-message/package.json +1 -1
  82. package/infinite-scroll/package.json +1 -1
  83. package/info-label/package.json +1 -1
  84. package/inline-help/package.json +1 -1
  85. package/input-group/package.json +1 -1
  86. package/layout-grid/package.json +1 -1
  87. package/layout-panel/package.json +1 -1
  88. package/link/package.json +1 -1
  89. package/list/package.json +1 -1
  90. package/menu/esm2020/menu-item/menu-item.component.mjs +43 -7
  91. package/menu/esm2020/menu.component.mjs +37 -34
  92. package/menu/esm2020/services/menu.service.mjs +14 -13
  93. package/menu/fesm2015/fundamental-ngx-core-menu.mjs +90 -50
  94. package/menu/fesm2015/fundamental-ngx-core-menu.mjs.map +1 -1
  95. package/menu/fesm2020/fundamental-ngx-core-menu.mjs +90 -50
  96. package/menu/fesm2020/fundamental-ngx-core-menu.mjs.map +1 -1
  97. package/menu/menu-item/menu-item.component.d.ts +27 -7
  98. package/menu/menu.component.d.ts +10 -10
  99. package/menu/package.json +1 -1
  100. package/menu/services/menu.service.d.ts +3 -3
  101. package/message-box/package.json +1 -1
  102. package/message-strip/package.json +1 -1
  103. package/message-toast/package.json +1 -1
  104. package/micro-process-flow/package.json +1 -1
  105. package/mobile-mode/package.json +1 -1
  106. package/multi-input/package.json +1 -1
  107. package/nested-list/package.json +1 -1
  108. package/notification/package.json +1 -1
  109. package/object-identifier/package.json +1 -1
  110. package/object-marker/package.json +1 -1
  111. package/object-number/package.json +1 -1
  112. package/object-status/package.json +1 -1
  113. package/overflow-layout/package.json +14 -14
  114. package/package.json +2 -2
  115. package/pagination/package.json +1 -1
  116. package/panel/package.json +1 -1
  117. package/popover/package.json +1 -1
  118. package/product-switch/package.json +1 -1
  119. package/progress-indicator/package.json +1 -1
  120. package/quick-view/package.json +1 -1
  121. package/radio/package.json +1 -1
  122. package/rating-indicator/package.json +1 -1
  123. package/resizable-card-layout/package.json +1 -1
  124. package/scroll-spy/package.json +1 -1
  125. package/scrollbar/package.json +1 -1
  126. package/segmented-button/package.json +1 -1
  127. package/select/package.json +1 -1
  128. package/shared/package.json +1 -1
  129. package/shellbar/esm2020/product-menu/product-menu.component.mjs +1 -1
  130. package/shellbar/esm2020/user-menu/shellbar-user-menu.component.mjs +1 -1
  131. package/shellbar/fesm2015/fundamental-ngx-core-shellbar.mjs +2 -2
  132. package/shellbar/fesm2020/fundamental-ngx-core-shellbar.mjs +2 -2
  133. package/shellbar/package.json +1 -1
  134. package/side-navigation/package.json +1 -1
  135. package/slider/package.json +1 -1
  136. package/split-button/esm2020/split-button.component.mjs +6 -6
  137. package/split-button/fesm2015/fundamental-ngx-core-split-button.mjs +5 -5
  138. package/split-button/fesm2015/fundamental-ngx-core-split-button.mjs.map +1 -1
  139. package/split-button/fesm2020/fundamental-ngx-core-split-button.mjs +5 -5
  140. package/split-button/fesm2020/fundamental-ngx-core-split-button.mjs.map +1 -1
  141. package/split-button/package.json +1 -1
  142. package/splitter/package.json +1 -1
  143. package/status-indicator/package.json +1 -1
  144. package/step-input/package.json +1 -1
  145. package/switch/package.json +1 -1
  146. package/table/package.json +1 -1
  147. package/tabs/esm2020/tab-list.component.mjs +1 -1
  148. package/tabs/fesm2015/fundamental-ngx-core-tabs.mjs +1 -1
  149. package/tabs/fesm2020/fundamental-ngx-core-tabs.mjs +1 -1
  150. package/tabs/package.json +1 -1
  151. package/text/package.json +1 -1
  152. package/theming/package.json +1 -1
  153. package/tile/package.json +1 -1
  154. package/time/esm2020/time-column/time-column.component.mjs +2 -12
  155. package/time/fesm2015/fundamental-ngx-core-time.mjs +1 -11
  156. package/time/fesm2015/fundamental-ngx-core-time.mjs.map +1 -1
  157. package/time/fesm2020/fundamental-ngx-core-time.mjs +1 -11
  158. package/time/fesm2020/fundamental-ngx-core-time.mjs.map +1 -1
  159. package/time/package.json +1 -1
  160. package/time/time-column/time-column.component.d.ts +0 -2
  161. package/time-picker/package.json +1 -1
  162. package/timeline/package.json +1 -1
  163. package/title/package.json +1 -1
  164. package/token/package.json +1 -1
  165. package/toolbar/package.json +1 -1
  166. package/tree/esm2020/tree-child.component.mjs +2 -2
  167. package/tree/fesm2015/fundamental-ngx-core-tree.mjs +1 -1
  168. package/tree/fesm2015/fundamental-ngx-core-tree.mjs.map +1 -1
  169. package/tree/fesm2020/fundamental-ngx-core-tree.mjs +1 -1
  170. package/tree/fesm2020/fundamental-ngx-core-tree.mjs.map +1 -1
  171. package/tree/package.json +1 -1
  172. package/upload-collection/package.json +1 -1
  173. package/utils/package.json +2 -2
  174. package/vertical-navigation/package.json +1 -1
  175. package/wizard/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-tree.mjs","sources":["../../../../../libs/core/src/lib/tree/tree-child.component.ts","../../../../../libs/core/src/lib/tree/tree-child.component.html","../../../../../libs/core/src/lib/tree/tree.component.ts","../../../../../libs/core/src/lib/tree/tree.component.html","../../../../../libs/core/src/lib/tree/tree.module.ts","../../../../../libs/core/src/lib/tree/fundamental-ngx-core-tree.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { TreeRowObject } from './tree-row-object.model';\n\n@Component({\n selector: 'fd-tree-child',\n templateUrl: './tree-child.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TreeChildComponent implements OnInit {\n @Input() row: TreeRowObject;\n\n @Input() hideChildren: boolean;\n\n @Input() displayTreeActions: boolean;\n\n @Output() editClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @Output() deleteClicked: EventEmitter<any> = new EventEmitter<any>();\n\n ngOnInit(): void {\n this.hideChildren = false;\n }\n\n toggleDisplayChildren(hideAll?): void {\n if (hideAll !== undefined) {\n this.hideChildren = hideAll;\n } else {\n this.hideChildren = !this.hideChildren;\n }\n }\n\n typeOf(variable?): string {\n let retVal;\n if (typeof variable === 'string') {\n retVal = 'string';\n } else if (typeof variable === 'object') {\n retVal = 'object';\n }\n\n return retVal;\n }\n\n editTreeItem(row?): void {\n if (row) {\n this.editClicked.emit(row);\n }\n }\n\n deleteTreeItem(row?): void {\n if (row) {\n this.deleteClicked.emit(row);\n }\n }\n}\n","<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n","import {\n AfterContentInit,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n QueryList,\n ViewChildren,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { TreeRowObject } from './tree-row-object.model';\nimport { TreeChildComponent } from './tree-child.component';\n\n@Component({\n selector: 'fd-tree',\n templateUrl: './tree.component.html',\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./tree.component.scss']\n})\nexport class TreeComponent implements OnInit, AfterContentInit {\n @Input() headers: string[];\n\n @Input() treeData: TreeRowObject[];\n\n @Input() hideAll: boolean;\n\n @Input() displayTreeActions: boolean;\n\n @Output() editRowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @Output() deleteRowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChildren(TreeChildComponent) treeChildren: QueryList<TreeChildComponent>;\n\n ngOnInit(): void {\n this.hideAll = false;\n }\n\n ngAfterContentInit(): void {\n if (this.treeData && this.treeData.length) {\n this.treeData.forEach((row) => {\n this.getChildDepth(row, 0);\n this.handleEmptyTrailingCells(row); // handle empty cells for parents\n });\n }\n }\n\n toggleDisplayAll(): void {\n this.hideAll = !this.hideAll;\n this.treeChildren.forEach((child) => {\n child.toggleDisplayChildren(this.hideAll);\n });\n }\n\n getChildDepth(row, depth): void {\n if (depth > 0) {\n row.sublevelClass = 'fd-tree__group--sublevel-' + depth;\n }\n if (row.children) {\n row.children.forEach((child) => {\n this.getChildDepth(child, depth + 1);\n this.handleEmptyTrailingCells(child); // handle empty cells for children\n });\n }\n }\n\n handleEmptyTrailingCells(row): void {\n if (\n row &&\n row.rowData &&\n row.rowData.length &&\n typeof row.rowData[0] !== 'object' &&\n this.headers &&\n this.headers.length\n ) {\n while (row.rowData.length < this.headers.length) {\n row.rowData.push('');\n }\n } else if (\n row &&\n row.rowData &&\n row.rowData.length &&\n typeof row.rowData[0] === 'object' &&\n this.headers &&\n this.headers.length\n ) {\n while (row.rowData.length < this.headers.length) {\n row.rowData.push({\n displayText: ''\n });\n }\n }\n }\n\n editClicked(row): void {\n this.editRowClicked.emit(row);\n }\n\n deleteClicked(row): void {\n this.deleteRowClicked.emit(row);\n }\n}\n","<div class=\"fd-tree fd-tree--header\" *ngIf=\"headers.length > 0\">\n <div class=\"fd-tree__row fd-tree__row--header\">\n <div class=\"fd-tree__col fd-tree__col--control\">\n <button\n (click)=\"toggleDisplayAll()\"\n class=\"fd-tree__control\"\n aria-label=\"Expand all\"\n [class.is-pressed]=\"!hideAll\"\n [attr.aria-pressed]=\"!hideAll\"\n ></button>\n {{ headers[0] }}\n </div>\n <div class=\"fd-tree__col\" *ngFor=\"let header of headers | slice: 1\">\n {{ header }}\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\"></div>\n </div>\n</div>\n<ul class=\"fd-tree\" id=\"ENusD653\" role=\"tree\">\n <fd-tree-child\n (editClicked)=\"editClicked($event)\"\n (deleteClicked)=\"deleteClicked($event)\"\n [displayTreeActions]=\"displayTreeActions\"\n *ngFor=\"let row of treeData\"\n [row]=\"row\"\n ></fd-tree-child>\n</ul>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TreeComponent } from './tree.component';\nimport { TreeChildComponent } from './tree-child.component';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { IconModule } from '@fundamental-ngx/core/icon';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { MenuModule } from '@fundamental-ngx/core/menu';\n\n@NgModule({\n declarations: [TreeComponent, TreeChildComponent],\n imports: [CommonModule, ButtonModule, IconModule, PopoverModule, MenuModule],\n exports: [TreeComponent, TreeChildComponent]\n})\nexport class TreeModule {}\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-tree.mjs","sources":["../../../../../libs/core/src/lib/tree/tree-child.component.ts","../../../../../libs/core/src/lib/tree/tree-child.component.html","../../../../../libs/core/src/lib/tree/tree.component.ts","../../../../../libs/core/src/lib/tree/tree.component.html","../../../../../libs/core/src/lib/tree/tree.module.ts","../../../../../libs/core/src/lib/tree/fundamental-ngx-core-tree.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { TreeRowObject } from './tree-row-object.model';\n\n@Component({\n selector: 'fd-tree-child',\n templateUrl: './tree-child.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TreeChildComponent implements OnInit {\n @Input() row: TreeRowObject;\n\n @Input() hideChildren: boolean;\n\n @Input() displayTreeActions: boolean;\n\n @Output() editClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @Output() deleteClicked: EventEmitter<any> = new EventEmitter<any>();\n\n ngOnInit(): void {\n this.hideChildren = false;\n }\n\n toggleDisplayChildren(hideAll?): void {\n if (hideAll !== undefined) {\n this.hideChildren = hideAll;\n } else {\n this.hideChildren = !this.hideChildren;\n }\n }\n\n typeOf(variable?): string {\n let retVal;\n if (typeof variable === 'string') {\n retVal = 'string';\n } else if (typeof variable === 'object') {\n retVal = 'object';\n }\n\n return retVal;\n }\n\n editTreeItem(row?): void {\n if (row) {\n this.editClicked.emit(row);\n }\n }\n\n deleteTreeItem(row?): void {\n if (row) {\n this.deleteClicked.emit(row);\n }\n }\n}\n","<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n","import {\n AfterContentInit,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n QueryList,\n ViewChildren,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { TreeRowObject } from './tree-row-object.model';\nimport { TreeChildComponent } from './tree-child.component';\n\n@Component({\n selector: 'fd-tree',\n templateUrl: './tree.component.html',\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./tree.component.scss']\n})\nexport class TreeComponent implements OnInit, AfterContentInit {\n @Input() headers: string[];\n\n @Input() treeData: TreeRowObject[];\n\n @Input() hideAll: boolean;\n\n @Input() displayTreeActions: boolean;\n\n @Output() editRowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @Output() deleteRowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChildren(TreeChildComponent) treeChildren: QueryList<TreeChildComponent>;\n\n ngOnInit(): void {\n this.hideAll = false;\n }\n\n ngAfterContentInit(): void {\n if (this.treeData && this.treeData.length) {\n this.treeData.forEach((row) => {\n this.getChildDepth(row, 0);\n this.handleEmptyTrailingCells(row); // handle empty cells for parents\n });\n }\n }\n\n toggleDisplayAll(): void {\n this.hideAll = !this.hideAll;\n this.treeChildren.forEach((child) => {\n child.toggleDisplayChildren(this.hideAll);\n });\n }\n\n getChildDepth(row, depth): void {\n if (depth > 0) {\n row.sublevelClass = 'fd-tree__group--sublevel-' + depth;\n }\n if (row.children) {\n row.children.forEach((child) => {\n this.getChildDepth(child, depth + 1);\n this.handleEmptyTrailingCells(child); // handle empty cells for children\n });\n }\n }\n\n handleEmptyTrailingCells(row): void {\n if (\n row &&\n row.rowData &&\n row.rowData.length &&\n typeof row.rowData[0] !== 'object' &&\n this.headers &&\n this.headers.length\n ) {\n while (row.rowData.length < this.headers.length) {\n row.rowData.push('');\n }\n } else if (\n row &&\n row.rowData &&\n row.rowData.length &&\n typeof row.rowData[0] === 'object' &&\n this.headers &&\n this.headers.length\n ) {\n while (row.rowData.length < this.headers.length) {\n row.rowData.push({\n displayText: ''\n });\n }\n }\n }\n\n editClicked(row): void {\n this.editRowClicked.emit(row);\n }\n\n deleteClicked(row): void {\n this.deleteRowClicked.emit(row);\n }\n}\n","<div class=\"fd-tree fd-tree--header\" *ngIf=\"headers.length > 0\">\n <div class=\"fd-tree__row fd-tree__row--header\">\n <div class=\"fd-tree__col fd-tree__col--control\">\n <button\n (click)=\"toggleDisplayAll()\"\n class=\"fd-tree__control\"\n aria-label=\"Expand all\"\n [class.is-pressed]=\"!hideAll\"\n [attr.aria-pressed]=\"!hideAll\"\n ></button>\n {{ headers[0] }}\n </div>\n <div class=\"fd-tree__col\" *ngFor=\"let header of headers | slice: 1\">\n {{ header }}\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\"></div>\n </div>\n</div>\n<ul class=\"fd-tree\" id=\"ENusD653\" role=\"tree\">\n <fd-tree-child\n (editClicked)=\"editClicked($event)\"\n (deleteClicked)=\"deleteClicked($event)\"\n [displayTreeActions]=\"displayTreeActions\"\n *ngFor=\"let row of treeData\"\n [row]=\"row\"\n ></fd-tree-child>\n</ul>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TreeComponent } from './tree.component';\nimport { TreeChildComponent } from './tree-child.component';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { IconModule } from '@fundamental-ngx/core/icon';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { MenuModule } from '@fundamental-ngx/core/menu';\n\n@NgModule({\n declarations: [TreeComponent, TreeChildComponent],\n imports: [CommonModule, ButtonModule, IconModule, PopoverModule, MenuModule],\n exports: [TreeComponent, TreeChildComponent]\n})\nexport class TreeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@ class TreeChildComponent {
47
47
  }
48
48
  }
49
49
  TreeChildComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: TreeChildComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
50
- TreeChildComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: TreeChildComponent, selector: "fd-tree-child", inputs: { row: "row", hideChildren: "hideChildren", displayTreeActions: "displayTreeActions" }, outputs: { editClicked: "editClicked", deleteClicked: "deleteClicked" }, ngImport: i0, template: "<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n", components: [{ type: i1.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { type: i2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { type: i2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { type: TreeChildComponent, selector: "fd-tree-child", inputs: ["row", "hideChildren", "displayTreeActions"], outputs: ["editClicked", "deleteClicked"] }], directives: [{ type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { type: i2.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { type: i2.MenuTitleDirective, selector: "[fd-menu-title]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
50
+ TreeChildComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: TreeChildComponent, selector: "fd-tree-child", inputs: { row: "row", hideChildren: "hideChildren", displayTreeActions: "displayTreeActions" }, outputs: { editClicked: "editClicked", deleteClicked: "deleteClicked" }, ngImport: i0, template: "<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n", components: [{ type: i1.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { type: i2.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { type: i2.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { type: TreeChildComponent, selector: "fd-tree-child", inputs: ["row", "hideChildren", "displayTreeActions"], outputs: ["editClicked", "deleteClicked"] }], directives: [{ type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { type: i2.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { type: i2.MenuTitleDirective, selector: "[fd-menu-title]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
51
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: TreeChildComponent, decorators: [{
52
52
  type: Component,
53
53
  args: [{ selector: 'fd-tree-child', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n" }]
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-tree.mjs","sources":["../../../../../libs/core/src/lib/tree/tree-child.component.ts","../../../../../libs/core/src/lib/tree/tree-child.component.html","../../../../../libs/core/src/lib/tree/tree.component.ts","../../../../../libs/core/src/lib/tree/tree.component.html","../../../../../libs/core/src/lib/tree/tree.module.ts","../../../../../libs/core/src/lib/tree/fundamental-ngx-core-tree.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { TreeRowObject } from './tree-row-object.model';\n\n@Component({\n selector: 'fd-tree-child',\n templateUrl: './tree-child.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TreeChildComponent implements OnInit {\n @Input() row: TreeRowObject;\n\n @Input() hideChildren: boolean;\n\n @Input() displayTreeActions: boolean;\n\n @Output() editClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @Output() deleteClicked: EventEmitter<any> = new EventEmitter<any>();\n\n ngOnInit(): void {\n this.hideChildren = false;\n }\n\n toggleDisplayChildren(hideAll?): void {\n if (hideAll !== undefined) {\n this.hideChildren = hideAll;\n } else {\n this.hideChildren = !this.hideChildren;\n }\n }\n\n typeOf(variable?): string {\n let retVal;\n if (typeof variable === 'string') {\n retVal = 'string';\n } else if (typeof variable === 'object') {\n retVal = 'object';\n }\n\n return retVal;\n }\n\n editTreeItem(row?): void {\n if (row) {\n this.editClicked.emit(row);\n }\n }\n\n deleteTreeItem(row?): void {\n if (row) {\n this.deleteClicked.emit(row);\n }\n }\n}\n","<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n","import {\n AfterContentInit,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n QueryList,\n ViewChildren,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { TreeRowObject } from './tree-row-object.model';\nimport { TreeChildComponent } from './tree-child.component';\n\n@Component({\n selector: 'fd-tree',\n templateUrl: './tree.component.html',\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./tree.component.scss']\n})\nexport class TreeComponent implements OnInit, AfterContentInit {\n @Input() headers: string[];\n\n @Input() treeData: TreeRowObject[];\n\n @Input() hideAll: boolean;\n\n @Input() displayTreeActions: boolean;\n\n @Output() editRowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @Output() deleteRowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChildren(TreeChildComponent) treeChildren: QueryList<TreeChildComponent>;\n\n ngOnInit(): void {\n this.hideAll = false;\n }\n\n ngAfterContentInit(): void {\n if (this.treeData && this.treeData.length) {\n this.treeData.forEach((row) => {\n this.getChildDepth(row, 0);\n this.handleEmptyTrailingCells(row); // handle empty cells for parents\n });\n }\n }\n\n toggleDisplayAll(): void {\n this.hideAll = !this.hideAll;\n this.treeChildren.forEach((child) => {\n child.toggleDisplayChildren(this.hideAll);\n });\n }\n\n getChildDepth(row, depth): void {\n if (depth > 0) {\n row.sublevelClass = 'fd-tree__group--sublevel-' + depth;\n }\n if (row.children) {\n row.children.forEach((child) => {\n this.getChildDepth(child, depth + 1);\n this.handleEmptyTrailingCells(child); // handle empty cells for children\n });\n }\n }\n\n handleEmptyTrailingCells(row): void {\n if (\n row &&\n row.rowData &&\n row.rowData.length &&\n typeof row.rowData[0] !== 'object' &&\n this.headers &&\n this.headers.length\n ) {\n while (row.rowData.length < this.headers.length) {\n row.rowData.push('');\n }\n } else if (\n row &&\n row.rowData &&\n row.rowData.length &&\n typeof row.rowData[0] === 'object' &&\n this.headers &&\n this.headers.length\n ) {\n while (row.rowData.length < this.headers.length) {\n row.rowData.push({\n displayText: ''\n });\n }\n }\n }\n\n editClicked(row): void {\n this.editRowClicked.emit(row);\n }\n\n deleteClicked(row): void {\n this.deleteRowClicked.emit(row);\n }\n}\n","<div class=\"fd-tree fd-tree--header\" *ngIf=\"headers.length > 0\">\n <div class=\"fd-tree__row fd-tree__row--header\">\n <div class=\"fd-tree__col fd-tree__col--control\">\n <button\n (click)=\"toggleDisplayAll()\"\n class=\"fd-tree__control\"\n aria-label=\"Expand all\"\n [class.is-pressed]=\"!hideAll\"\n [attr.aria-pressed]=\"!hideAll\"\n ></button>\n {{ headers[0] }}\n </div>\n <div class=\"fd-tree__col\" *ngFor=\"let header of headers | slice: 1\">\n {{ header }}\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\"></div>\n </div>\n</div>\n<ul class=\"fd-tree\" id=\"ENusD653\" role=\"tree\">\n <fd-tree-child\n (editClicked)=\"editClicked($event)\"\n (deleteClicked)=\"deleteClicked($event)\"\n [displayTreeActions]=\"displayTreeActions\"\n *ngFor=\"let row of treeData\"\n [row]=\"row\"\n ></fd-tree-child>\n</ul>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TreeComponent } from './tree.component';\nimport { TreeChildComponent } from './tree-child.component';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { IconModule } from '@fundamental-ngx/core/icon';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { MenuModule } from '@fundamental-ngx/core/menu';\n\n@NgModule({\n declarations: [TreeComponent, TreeChildComponent],\n imports: [CommonModule, ButtonModule, IconModule, PopoverModule, MenuModule],\n exports: [TreeComponent, TreeChildComponent]\n})\nexport class TreeModule {}\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-tree.mjs","sources":["../../../../../libs/core/src/lib/tree/tree-child.component.ts","../../../../../libs/core/src/lib/tree/tree-child.component.html","../../../../../libs/core/src/lib/tree/tree.component.ts","../../../../../libs/core/src/lib/tree/tree.component.html","../../../../../libs/core/src/lib/tree/tree.module.ts","../../../../../libs/core/src/lib/tree/fundamental-ngx-core-tree.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { TreeRowObject } from './tree-row-object.model';\n\n@Component({\n selector: 'fd-tree-child',\n templateUrl: './tree-child.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TreeChildComponent implements OnInit {\n @Input() row: TreeRowObject;\n\n @Input() hideChildren: boolean;\n\n @Input() displayTreeActions: boolean;\n\n @Output() editClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @Output() deleteClicked: EventEmitter<any> = new EventEmitter<any>();\n\n ngOnInit(): void {\n this.hideChildren = false;\n }\n\n toggleDisplayChildren(hideAll?): void {\n if (hideAll !== undefined) {\n this.hideChildren = hideAll;\n } else {\n this.hideChildren = !this.hideChildren;\n }\n }\n\n typeOf(variable?): string {\n let retVal;\n if (typeof variable === 'string') {\n retVal = 'string';\n } else if (typeof variable === 'object') {\n retVal = 'object';\n }\n\n return retVal;\n }\n\n editTreeItem(row?): void {\n if (row) {\n this.editClicked.emit(row);\n }\n }\n\n deleteTreeItem(row?): void {\n if (row) {\n this.deleteClicked.emit(row);\n }\n }\n}\n","<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n","import {\n AfterContentInit,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n QueryList,\n ViewChildren,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { TreeRowObject } from './tree-row-object.model';\nimport { TreeChildComponent } from './tree-child.component';\n\n@Component({\n selector: 'fd-tree',\n templateUrl: './tree.component.html',\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./tree.component.scss']\n})\nexport class TreeComponent implements OnInit, AfterContentInit {\n @Input() headers: string[];\n\n @Input() treeData: TreeRowObject[];\n\n @Input() hideAll: boolean;\n\n @Input() displayTreeActions: boolean;\n\n @Output() editRowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @Output() deleteRowClicked: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChildren(TreeChildComponent) treeChildren: QueryList<TreeChildComponent>;\n\n ngOnInit(): void {\n this.hideAll = false;\n }\n\n ngAfterContentInit(): void {\n if (this.treeData && this.treeData.length) {\n this.treeData.forEach((row) => {\n this.getChildDepth(row, 0);\n this.handleEmptyTrailingCells(row); // handle empty cells for parents\n });\n }\n }\n\n toggleDisplayAll(): void {\n this.hideAll = !this.hideAll;\n this.treeChildren.forEach((child) => {\n child.toggleDisplayChildren(this.hideAll);\n });\n }\n\n getChildDepth(row, depth): void {\n if (depth > 0) {\n row.sublevelClass = 'fd-tree__group--sublevel-' + depth;\n }\n if (row.children) {\n row.children.forEach((child) => {\n this.getChildDepth(child, depth + 1);\n this.handleEmptyTrailingCells(child); // handle empty cells for children\n });\n }\n }\n\n handleEmptyTrailingCells(row): void {\n if (\n row &&\n row.rowData &&\n row.rowData.length &&\n typeof row.rowData[0] !== 'object' &&\n this.headers &&\n this.headers.length\n ) {\n while (row.rowData.length < this.headers.length) {\n row.rowData.push('');\n }\n } else if (\n row &&\n row.rowData &&\n row.rowData.length &&\n typeof row.rowData[0] === 'object' &&\n this.headers &&\n this.headers.length\n ) {\n while (row.rowData.length < this.headers.length) {\n row.rowData.push({\n displayText: ''\n });\n }\n }\n }\n\n editClicked(row): void {\n this.editRowClicked.emit(row);\n }\n\n deleteClicked(row): void {\n this.deleteRowClicked.emit(row);\n }\n}\n","<div class=\"fd-tree fd-tree--header\" *ngIf=\"headers.length > 0\">\n <div class=\"fd-tree__row fd-tree__row--header\">\n <div class=\"fd-tree__col fd-tree__col--control\">\n <button\n (click)=\"toggleDisplayAll()\"\n class=\"fd-tree__control\"\n aria-label=\"Expand all\"\n [class.is-pressed]=\"!hideAll\"\n [attr.aria-pressed]=\"!hideAll\"\n ></button>\n {{ headers[0] }}\n </div>\n <div class=\"fd-tree__col\" *ngFor=\"let header of headers | slice: 1\">\n {{ header }}\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\"></div>\n </div>\n</div>\n<ul class=\"fd-tree\" id=\"ENusD653\" role=\"tree\">\n <fd-tree-child\n (editClicked)=\"editClicked($event)\"\n (deleteClicked)=\"deleteClicked($event)\"\n [displayTreeActions]=\"displayTreeActions\"\n *ngFor=\"let row of treeData\"\n [row]=\"row\"\n ></fd-tree-child>\n</ul>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TreeComponent } from './tree.component';\nimport { TreeChildComponent } from './tree-child.component';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { IconModule } from '@fundamental-ngx/core/icon';\nimport { PopoverModule } from '@fundamental-ngx/core/popover';\nimport { MenuModule } from '@fundamental-ngx/core/menu';\n\n@NgModule({\n declarations: [TreeComponent, TreeChildComponent],\n imports: [CommonModule, ButtonModule, IconModule, PopoverModule, MenuModule],\n exports: [TreeComponent, TreeChildComponent]\n})\nexport class TreeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
package/tree/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/tree",
3
- "version": "0.35.5-rc.6",
3
+ "version": "0.35.6",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/upload-collection",
3
- "version": "0.35.5-rc.6",
3
+ "version": "0.35.6",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/utils",
3
- "version": "0.35.5-rc.6",
3
+ "version": "0.35.6",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0",
7
7
  "@angular/forms": "^13.0.0",
8
8
  "@angular/animations": "^13.0.0",
9
9
  "@angular/router": "^13.0.0",
10
- "rxjs": "7.5.6"
10
+ "rxjs": "7.5.4"
11
11
  },
12
12
  "dependencies": {
13
13
  "tslib": "^2.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/vertical-navigation",
3
- "version": "0.35.5-rc.6",
3
+ "version": "0.35.6",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/wizard",
3
- "version": "0.35.5-rc.6",
3
+ "version": "0.35.6",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"