@updevs/components 1.0.0-alpha.6 → 1.0.0-alpha.8

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 (99) hide show
  1. package/card/directives/card-actions.directive.d.ts +1 -2
  2. package/card/directives/card-footer.directive.d.ts +1 -2
  3. package/card/directives/card-header.directive.d.ts +1 -2
  4. package/card/directives/card-image.directive.d.ts +1 -2
  5. package/esm2022/button/button.component.mjs +5 -5
  6. package/esm2022/button/upd-button.module.mjs +5 -5
  7. package/esm2022/card/card.component.mjs +4 -4
  8. package/esm2022/card/directives/card-actions.directive.mjs +8 -8
  9. package/esm2022/card/directives/card-footer.directive.mjs +8 -8
  10. package/esm2022/card/directives/card-header.directive.mjs +8 -8
  11. package/esm2022/card/directives/card-image.directive.mjs +8 -8
  12. package/esm2022/card/upd-card.module.mjs +5 -5
  13. package/esm2022/dropdown/dropdown.component.mjs +10 -11
  14. package/esm2022/dropdown/upd-dropdown.module.mjs +5 -5
  15. package/esm2022/form/form.module.mjs +5 -5
  16. package/esm2022/form-controls/checkbox/checkbox.component.mjs +5 -5
  17. package/esm2022/form-controls/checkbox/upd-checkbox.module.mjs +5 -5
  18. package/esm2022/form-controls/input/directives/input-append.directive.mjs +8 -8
  19. package/esm2022/form-controls/input/directives/input-prepend.directive.mjs +8 -8
  20. package/esm2022/form-controls/input/input.component.mjs +4 -4
  21. package/esm2022/form-controls/input/upd-input.module.mjs +5 -5
  22. package/esm2022/form-controls/radio/radio.component.mjs +5 -5
  23. package/esm2022/form-controls/radio/upd-radio.module.mjs +5 -5
  24. package/esm2022/form-controls/select/components/multiple/select-multiple.component.mjs +9 -10
  25. package/esm2022/form-controls/select/components/single/select.component.mjs +9 -10
  26. package/esm2022/form-controls/select/models/abstractions/base-select.component.mjs +4 -4
  27. package/esm2022/form-controls/select/upd-select.module.mjs +5 -5
  28. package/esm2022/form-controls/textarea/textarea.component.mjs +5 -5
  29. package/esm2022/form-controls/textarea/upd-textarea.module.mjs +5 -5
  30. package/esm2022/form-controls/time-picker/time-picker.component.mjs +4 -4
  31. package/esm2022/form-controls/time-picker/time-selector/time-selector.component.mjs +7 -8
  32. package/esm2022/form-controls/time-picker/upd-time-picker.module.mjs +6 -6
  33. package/esm2022/layout/abstractions/base-page.component.mjs +6 -6
  34. package/esm2022/layout/layouts/blank-layout/blank-layout.component.mjs +4 -4
  35. package/esm2022/layout/layouts/blank-layout/blank-layout.module.mjs +5 -5
  36. package/esm2022/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.mjs +17 -19
  37. package/esm2022/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.module.mjs +6 -6
  38. package/esm2022/layout/models/upd-layout-config.model.mjs +1 -1
  39. package/esm2022/layout/pages/auth-flow/auth-flow-routing.module.mjs +5 -5
  40. package/esm2022/layout/pages/auth-flow/auth-flow.module.mjs +5 -5
  41. package/esm2022/layout/pages/auth-flow/logged-out/logged-out.component.mjs +4 -4
  42. package/esm2022/layout/pages/auth-flow/login/login.component.mjs +6 -6
  43. package/esm2022/layout/pages/auth-flow/oauth-callback/oauth-callback.component.mjs +4 -4
  44. package/esm2022/layout/partials/footer/footer-copyright.directive.mjs +5 -7
  45. package/esm2022/layout/partials/footer/footer.component.mjs +13 -12
  46. package/esm2022/layout/partials/header/header.component.mjs +16 -18
  47. package/esm2022/layout/partials/page-header/page-header.component.mjs +6 -7
  48. package/esm2022/layout/partials/sidebar/sidebar.component.mjs +14 -15
  49. package/esm2022/layout/services/upd-layout-config.service.mjs +6 -6
  50. package/esm2022/layout/upd-layout.module.mjs +5 -5
  51. package/esm2022/lib/upd-components.module.mjs +5 -5
  52. package/esm2022/link/link.component.mjs +4 -4
  53. package/esm2022/link/upd-link.module.mjs +5 -5
  54. package/esm2022/list/list.component.mjs +10 -10
  55. package/esm2022/list/upd-list.module.mjs +6 -6
  56. package/esm2022/popover/popover.component.mjs +5 -5
  57. package/esm2022/popover/popover.directive.mjs +15 -15
  58. package/esm2022/popover/upd-popover.module.mjs +5 -5
  59. package/fesm2022/updevs-components-button.mjs +8 -8
  60. package/fesm2022/updevs-components-button.mjs.map +1 -1
  61. package/fesm2022/updevs-components-card.mjs +32 -32
  62. package/fesm2022/updevs-components-card.mjs.map +1 -1
  63. package/fesm2022/updevs-components-dropdown.mjs +14 -15
  64. package/fesm2022/updevs-components-dropdown.mjs.map +1 -1
  65. package/fesm2022/updevs-components-form-controls-checkbox.mjs +8 -8
  66. package/fesm2022/updevs-components-form-controls-checkbox.mjs.map +1 -1
  67. package/fesm2022/updevs-components-form-controls-input.mjs +20 -20
  68. package/fesm2022/updevs-components-form-controls-input.mjs.map +1 -1
  69. package/fesm2022/updevs-components-form-controls-radio.mjs +8 -8
  70. package/fesm2022/updevs-components-form-controls-radio.mjs.map +1 -1
  71. package/fesm2022/updevs-components-form-controls-select.mjs +20 -21
  72. package/fesm2022/updevs-components-form-controls-select.mjs.map +1 -1
  73. package/fesm2022/updevs-components-form-controls-textarea.mjs +8 -8
  74. package/fesm2022/updevs-components-form-controls-textarea.mjs.map +1 -1
  75. package/fesm2022/updevs-components-form-controls-time-picker.mjs +14 -15
  76. package/fesm2022/updevs-components-form-controls-time-picker.mjs.map +1 -1
  77. package/fesm2022/updevs-components-form.mjs +4 -4
  78. package/fesm2022/updevs-components-form.mjs.map +1 -1
  79. package/fesm2022/updevs-components-layout.mjs +98 -101
  80. package/fesm2022/updevs-components-layout.mjs.map +1 -1
  81. package/fesm2022/updevs-components-link.mjs +7 -7
  82. package/fesm2022/updevs-components-link.mjs.map +1 -1
  83. package/fesm2022/updevs-components-list.mjs +14 -14
  84. package/fesm2022/updevs-components-list.mjs.map +1 -1
  85. package/fesm2022/updevs-components-popover.mjs +22 -22
  86. package/fesm2022/updevs-components-popover.mjs.map +1 -1
  87. package/fesm2022/updevs-components.mjs +4 -4
  88. package/fesm2022/updevs-components.mjs.map +1 -1
  89. package/form-controls/input/directives/input-append.directive.d.ts +1 -2
  90. package/form-controls/input/directives/input-prepend.directive.d.ts +1 -2
  91. package/layout/abstractions/base-page.component.d.ts +1 -2
  92. package/layout/layouts/vertical-sidebar-layout/vertical-sidebar-layout.component.d.ts +4 -5
  93. package/layout/partials/footer/footer-copyright.directive.d.ts +0 -1
  94. package/layout/partials/footer/footer.component.d.ts +1 -3
  95. package/layout/partials/header/header.component.d.ts +4 -6
  96. package/layout/partials/sidebar/sidebar.component.d.ts +1 -3
  97. package/list/list.component.d.ts +3 -4
  98. package/package.json +5 -5
  99. package/popover/popover.directive.d.ts +8 -10
@@ -1 +1 @@
1
- {"version":3,"file":"updevs-components-list.mjs","sources":["../../../../projects/updevs/components/list/src/models/list-item.model.ts","../../../../projects/updevs/components/list/src/list.component.ts","../../../../projects/updevs/components/list/src/list.component.html","../../../../projects/updevs/components/list/src/upd-list.module.ts","../../../../projects/updevs/components/list/src/updevs-components-list.ts"],"sourcesContent":["import { BgColorStyleType } from '@updevs/sdk/layout';\n\nimport { ListItem } from './list-item';\nimport { BadgePositionType } from './badge-position.type';\n\nexport class ListItemModel implements ListItem {\n id?: any;\n text?: string;\n description?: string;\n icon?: string;\n isChecked?: boolean;\n isSwitch?: boolean;\n hasCheckbox?: boolean;\n isDisabled?: boolean;\n isActive?: boolean;\n leftBoxText?: string;\n leftBoxImage?: string;\n badgeColor?: BgColorStyleType;\n badgeText?: string;\n badgePosition?: BadgePositionType;\n children?: ListItemModel[];\n get hasLeftBox(): boolean {\n return !!this.leftBoxImage || !!this.leftBoxText || !!this.badgeColor || this.hasCheckbox === true;\n }\n get hasLeftBadge(): boolean {\n return !!this.badgeColor && this.badgePosition === 'left';\n }\n get hasBottomRightBadge(): boolean {\n return !!this.badgeColor && this.badgePosition === 'left-box-bottom-right';\n }\n\n constructor(init?: ListItem) {\n Object.assign(this, init);\n }\n}\n","import {\n Component,\n HostBinding,\n Input,\n Renderer2,\n ElementRef,\n OnInit,\n RendererStyleFlags2,\n ViewEncapsulation,\n Output,\n EventEmitter,\n OnChanges,\n SimpleChanges\n} from '@angular/core';\n\nimport { ListItem } from './models/list-item';\nimport { ListItemModel } from './models/list-item.model';\n\n@Component({\n selector: 'upd-list',\n templateUrl: './list.component.html',\n styleUrls: ['./list.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class ListComponent implements OnInit, OnChanges {\n @HostBinding('class') localWrapperClasses = '';\n\n /**\n * List items.\n * If provided, the single will be considered static.\n */\n @Input() items?: ListItem[];\n /**\n * Whether the content should overflow or not.\n */\n @Input() shouldOverflow = false;\n /**\n * Whether the list will fit the layout of the container.\n * If set to false, the list's round borders will be visible. It'll have a detached behavior.\n */\n @Input() isFlush = true;\n @Input() isVisible = true;\n @Input() isHoverable = false;\n @Input() shouldDisplayItemsCounter = false;\n @Input() wrapperClasses = '';\n /**\n * Maximum height of the component.\n * Note: The unit should also be provided, i.e.: 350px, 35rem, etc.\n */\n @Input() maxHeight?: string;\n /**\n * Translation key used to inform no records have been found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() noRecordsFoundKey?: string = 'NoRecordsFound';\n /**\n * Translation key used to describe 1 item found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() itemFoundKey?: string = 'Item';\n /**\n * Translation key used to describe items (plural) found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() itemsFoundKey?: string = 'Items';\n\n @Output() readonly checkboxChanged = new EventEmitter<ListItem>();\n @Output() readonly selectedItem = new EventEmitter<ListItem>();\n\n listItems: ListItemModel[] = [];\n currentSelection: ListItem[] = [];\n\n private localBackupItems: ListItem[] = [];\n\n constructor(\n private renderer: Renderer2,\n private elementRef: ElementRef\n ) {\n }\n\n ngOnInit(): void {\n this.setupStyle();\n this.updateWrapperClasses();\n this.setupItems();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateWrapperClasses();\n\n if (!!changes['items']) {\n this.setupItems();\n }\n }\n\n onCheckboxChange(item: ListItem, isChecked: boolean): void {\n item.isChecked = isChecked;\n this.checkboxChanged.emit(item);\n }\n\n onSelectItem(evt: any, item: ListItem): void {\n evt.stopPropagation();\n this.selectedItem.emit(item);\n }\n\n private setupItems(): void {\n const tempItems: ListItemModel[] = [];\n\n this.items?.forEach(it => {\n const parent = new ListItemModel(it);\n\n if ((it.children?.length || 0) > 0) {\n parent.children = [];\n it.children?.forEach(child => parent.children!.push(new ListItemModel(child)));\n }\n\n tempItems.push(parent);\n });\n\n this.listItems = [...tempItems];\n }\n\n private setupStyle(): void {\n if (!!this.maxHeight) {\n this.renderer.setStyle(this.elementRef.nativeElement, 'max-height', this.maxHeight, RendererStyleFlags2.Important);\n }\n }\n\n private updateWrapperClasses(): void {\n this.localWrapperClasses = 'list-group' + ` ${this.wrapperClasses}`;\n\n if (this.isFlush) {\n this.localWrapperClasses += ' list-group-flush';\n }\n\n if (this.isHoverable) {\n this.localWrapperClasses += ' list-group-hoverable';\n }\n\n if (this.shouldOverflow) {\n this.localWrapperClasses += ' overflow-auto';\n }\n\n if (!this.isVisible) {\n this.localWrapperClasses += ' list-hidden';\n }\n }\n}\n","<ng-container *ngIf=\"listItems.length > 0; else noDataTpl\">\n <ng-container *ngFor=\"let item of listItems\">\n <ng-container *ngIf=\"(item.children?.length || 0) > 0; else rowTpl\">\n <div class=\"list-group-header sticky-top\">{{item.text}}</div>\n <ng-container *ngFor=\"let child of item.children\">\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:child}\"></ng-container>\n </ng-container>\n </ng-container>\n <ng-template #rowTpl>\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n </ng-template>\n </ng-container>\n</ng-container>\n<ng-template #noDataTpl>\n <div class=\"list-group-item\">\n <upd-icon tablerIcon=\"alert-triangle\" wrapperClasses=\"text-yellow\"></upd-icon>\n {{noRecordsFoundKey | transloco}}\n </div>\n</ng-template>\n\n<div *ngIf=\"shouldDisplayItemsCounter\" class=\"list-items-counter bg-muted text-muted-fg\">\n {{listItems.length}} {{(listItems.length === 1 ? itemFoundKey : itemsFoundKey) | transloco}}\n</div>\n\n<ng-template #listItemTpl let-item=\"item\">\n <div class=\"list-group-item\" [class.list-group-item-action]=\"!item.hasLeftBox\" [class.active]=\"item.isActive\"\n [class.disabled]=\"item.isDisabled\" (click)=\"onSelectItem($event, item)\">\n <span *ngIf=\"!item.hasLeftBox; else customContentTpl\">{{item.text}}</span>\n <ng-template #customContentTpl>\n <div class=\"row\">\n <ng-container [ngTemplateOutlet]=\"leftBoxTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n <div class=\"col text-truncate\">\n <div *ngIf=\"!!item.text\" class=\"text-body d-block\">{{item.text}}</div>\n <div *ngIf=\"!!item.description\" class=\"text-muted text-truncate mt-n1\">{{item.description}}</div>\n </div>\n </div>\n </ng-template>\n </div>\n</ng-template>\n\n<ng-template #leftBoxTpl let-item=\"item\">\n <div *ngIf=\"item.hasCheckbox\" class=\"col-auto\">\n <upd-checkbox (changed)=\"onCheckboxChange(item, $event)\" [isChecked]=\"item.isChecked || false\"\n [isSwitch]=\"item.isSwitch || false\"></upd-checkbox>\n <!-- [wrapperClasses]=\"'dropdown-item' + (item.isDisabled ? ' disabled' : '') +(item.isActive ? ' active' : '')\"-->\n </div>\n <div *ngIf=\"item.hasLeftBadge\" class=\"col-auto\">\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{item.badgeText}}</span>\n </div>\n <div *ngIf=\"!!item.leftBoxImage || !!item.leftBoxText\" class=\"col-auto\">\n <a href=\"#\"> <!-- TODO: change. -->\n <span class=\"avatar\" style=\"background-image: url({{item.leftBoxImage}})\">{{item.leftBoxText}}\n <span *ngIf=\"item.hasBottomRightBadge\"\n class=\"badge bg-{{item.badgeColor}} ms-auto\">{{item.badgeText}}</span>\n </span>\n </a>\n </div>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslocoService, TranslocoModule } from '@ngneat/transloco';\nimport { UpdCheckboxModule } from '@updevs/components/form-controls/checkbox';\nimport { UpdIconsModule } from '@updevs/icons';\n\nimport * as en from './assets/i18n/en.json';\nimport * as pt from './assets/i18n/pt.json';\nimport { ListComponent } from './list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TranslocoModule,\n UpdCheckboxModule,\n UpdIconsModule\n ],\n declarations: [\n ListComponent\n ],\n exports: [\n ListComponent\n ]\n})\nexport class UpdListModule {\n constructor(translocoService: TranslocoService) {\n translocoService.setTranslation(en, 'en');\n translocoService.setTranslation(pt, 'pt');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4","en","pt","i1"],"mappings":"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"}
1
+ {"version":3,"file":"updevs-components-list.mjs","sources":["../../../../projects/updevs/components/list/src/models/list-item.model.ts","../../../../projects/updevs/components/list/src/list.component.ts","../../../../projects/updevs/components/list/src/list.component.html","../../../../projects/updevs/components/list/src/upd-list.module.ts","../../../../projects/updevs/components/list/src/updevs-components-list.ts"],"sourcesContent":["import { BgColorStyleType } from '@updevs/sdk/layout';\n\nimport { ListItem } from './list-item';\nimport { BadgePositionType } from './badge-position.type';\n\nexport class ListItemModel implements ListItem {\n id?: any;\n text?: string;\n description?: string;\n icon?: string;\n isChecked?: boolean;\n isSwitch?: boolean;\n hasCheckbox?: boolean;\n isDisabled?: boolean;\n isActive?: boolean;\n leftBoxText?: string;\n leftBoxImage?: string;\n badgeColor?: BgColorStyleType;\n badgeText?: string;\n badgePosition?: BadgePositionType;\n children?: ListItemModel[];\n get hasLeftBox(): boolean {\n return !!this.leftBoxImage || !!this.leftBoxText || !!this.badgeColor || this.hasCheckbox === true;\n }\n get hasLeftBadge(): boolean {\n return !!this.badgeColor && this.badgePosition === 'left';\n }\n get hasBottomRightBadge(): boolean {\n return !!this.badgeColor && this.badgePosition === 'left-box-bottom-right';\n }\n\n constructor(init?: ListItem) {\n Object.assign(this, init);\n }\n}\n","import {\n Component,\n HostBinding,\n Input,\n Renderer2,\n ElementRef,\n OnInit,\n RendererStyleFlags2,\n ViewEncapsulation,\n Output,\n EventEmitter,\n OnChanges,\n SimpleChanges, inject\n} from '@angular/core';\n\nimport { ListItem } from './models/list-item';\nimport { ListItemModel } from './models/list-item.model';\n\n@Component({\n selector: 'upd-list',\n templateUrl: './list.component.html',\n styleUrls: ['./list.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class ListComponent implements OnInit, OnChanges {\n @HostBinding('class') localWrapperClasses = '';\n\n /**\n * List items.\n * If provided, the single will be considered static.\n */\n @Input() items?: ListItem[];\n /**\n * Whether the content should overflow or not.\n */\n @Input() shouldOverflow = false;\n /**\n * Whether the list will fit the layout of the container.\n * If set to false, the list's round borders will be visible. It'll have a detached behavior.\n */\n @Input() isFlush = true;\n @Input() isVisible = true;\n @Input() isHoverable = false;\n @Input() shouldDisplayItemsCounter = false;\n @Input() wrapperClasses = '';\n /**\n * Maximum height of the component.\n * Note: The unit should also be provided, i.e.: 350px, 35rem, etc.\n */\n @Input() maxHeight?: string;\n /**\n * Translation key used to inform no records have been found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() noRecordsFoundKey?: string = 'NoRecordsFound';\n /**\n * Translation key used to describe 1 item found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() itemFoundKey?: string = 'Item';\n /**\n * Translation key used to describe items (plural) found.\n * If translation is not being used, you can insert the custom text here as well.\n */\n @Input() itemsFoundKey?: string = 'Items';\n\n @Output() readonly checkboxChanged = new EventEmitter<ListItem>();\n @Output() readonly selectedItem = new EventEmitter<ListItem>();\n\n listItems: ListItemModel[] = [];\n currentSelection: ListItem[] = [];\n\n private localBackupItems: ListItem[] = [];\n\n private readonly renderer = inject(Renderer2);\n private readonly elementRef = inject(ElementRef);\n\n ngOnInit(): void {\n this.setupStyle();\n this.updateWrapperClasses();\n this.setupItems();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateWrapperClasses();\n\n if (!!changes['items']) {\n this.setupItems();\n }\n }\n\n onCheckboxChange(item: ListItem, isChecked: boolean): void {\n item.isChecked = isChecked;\n this.checkboxChanged.emit(item);\n }\n\n onSelectItem(evt: any, item: ListItem): void {\n evt.stopPropagation();\n this.selectedItem.emit(item);\n }\n\n private setupItems(): void {\n const tempItems: ListItemModel[] = [];\n\n this.items?.forEach(it => {\n const parent = new ListItemModel(it);\n\n if ((it.children?.length || 0) > 0) {\n parent.children = [];\n it.children?.forEach(child => parent.children!.push(new ListItemModel(child)));\n }\n\n tempItems.push(parent);\n });\n\n this.listItems = [...tempItems];\n }\n\n private setupStyle(): void {\n if (!!this.maxHeight) {\n this.renderer.setStyle(this.elementRef.nativeElement, 'max-height', this.maxHeight, RendererStyleFlags2.Important);\n }\n }\n\n private updateWrapperClasses(): void {\n this.localWrapperClasses = 'list-group' + ` ${this.wrapperClasses}`;\n\n if (this.isFlush) {\n this.localWrapperClasses += ' list-group-flush';\n }\n\n if (this.isHoverable) {\n this.localWrapperClasses += ' list-group-hoverable';\n }\n\n if (this.shouldOverflow) {\n this.localWrapperClasses += ' overflow-auto';\n }\n\n if (!this.isVisible) {\n this.localWrapperClasses += ' list-hidden';\n }\n }\n}\n","@if (listItems.length > 0) {\n @for (item of listItems; track item) {\n @if ((item.children?.length || 0) > 0) {\n <div class=\"list-group-header sticky-top\">{{ item.text }}</div>\n @for (child of item.children; track child) {\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:child}\"></ng-container>\n }\n } @else {\n <ng-container [ngTemplateOutlet]=\"listItemTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n }\n }\n} @else {\n <div class=\"list-group-item\">\n <upd-icon tablerIcon=\"alert-triangle\" wrapperClasses=\"text-yellow\"></upd-icon>\n {{ noRecordsFoundKey | transloco }}\n </div>\n}\n\n@if (shouldDisplayItemsCounter) {\n <div class=\"list-items-counter bg-muted text-muted-fg\">\n {{ listItems.length }} {{ (listItems.length === 1 ? itemFoundKey : itemsFoundKey) | transloco }}\n </div>\n}\n\n<ng-template #listItemTpl let-item=\"item\">\n <div class=\"list-group-item\" [class.list-group-item-action]=\"!item.hasLeftBox\" [class.active]=\"item.isActive\"\n [class.disabled]=\"item.isDisabled\" (click)=\"onSelectItem($event, item)\">\n @if (!item.hasLeftBox) {\n <span>{{ item.text }}</span>\n } @else {\n <div class=\"row\">\n <ng-container [ngTemplateOutlet]=\"leftBoxTpl\" [ngTemplateOutletContext]=\"{item:item}\"></ng-container>\n <div class=\"col text-truncate\">\n @if (!!item.text) {\n <div class=\"text-body d-block\">{{ item.text }}</div>\n }\n @if (!!item.description) {\n <div class=\"text-muted text-truncate mt-n1\">{{ item.description }}</div>\n }\n </div>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #leftBoxTpl let-item=\"item\">\n @if (item.hasCheckbox) {\n <div class=\"col-auto\">\n <upd-checkbox (changed)=\"onCheckboxChange(item, $event)\" [isChecked]=\"item.isChecked || false\"\n [isSwitch]=\"item.isSwitch || false\"></upd-checkbox>\n <!-- [wrapperClasses]=\"'dropdown-item' + (item.isDisabled ? ' disabled' : '') +(item.isActive ? ' active' : '')\"-->\n </div>\n }\n @if (item.hasLeftBadge) {\n <div class=\"col-auto\">\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{ item.badgeText }}</span>\n </div>\n }\n @if (!!item.leftBoxImage || !!item.leftBoxText) {\n <div class=\"col-auto\">\n <a href=\"#\"> <!-- TODO: change. -->\n <span class=\"avatar\" style=\"background-image: url({{item.leftBoxImage}})\">{{ item.leftBoxText }}\n @if (item.hasBottomRightBadge) {\n <span class=\"badge bg-{{item.badgeColor}} ms-auto\">{{ item.badgeText }}</span>\n }\n </span>\n </a>\n </div>\n }\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslocoService, TranslocoModule } from '@ngneat/transloco';\nimport { UpdCheckboxModule } from '@updevs/components/form-controls/checkbox';\nimport { UpdIconsModule } from '@updevs/icons';\n\nimport * as en from './assets/i18n/en.json';\nimport * as pt from './assets/i18n/pt.json';\nimport { ListComponent } from './list.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TranslocoModule,\n UpdCheckboxModule,\n UpdIconsModule\n ],\n declarations: [\n ListComponent\n ],\n exports: [\n ListComponent\n ]\n})\nexport class UpdListModule {\n constructor(translocoService: TranslocoService) {\n translocoService.setTranslation(en, 'en');\n translocoService.setTranslation(pt, 'pt');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4","en","pt","i1"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, ViewEncapsulation, HostBinding, Input, Directive, HostListener, NgModule } from '@angular/core';
2
+ import { Component, ViewEncapsulation, HostBinding, Input, inject, ElementRef, Renderer2, ViewContainerRef, NgZone, Injector, Directive, HostListener, NgModule } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
- import * as i1$1 from '@updevs/sdk/layout';
5
+ import { PositioningService, DynamicComponentLoaderService } from '@updevs/sdk/layout';
6
6
 
7
7
  class PopoverComponent {
8
8
  constructor() {
@@ -37,12 +37,12 @@ class PopoverComponent {
37
37
  ...(this.customClasses?.split(' ') || [])
38
38
  ].join(' ');
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.11", type: PopoverComponent, selector: "upd-popover", inputs: { title: "title", text: "text", titleTemplate: "titleTemplate", template: "template", placement: "placement", customClasses: "customClasses" }, host: { properties: { "class": "this.classes", "attr.data-popper-placement": "this.popperPlacement", "role": "this.role" } }, usesOnChanges: true, ngImport: i0, template: "<div class=\"popover-arrow upd-popover-arrow -{{placement}}\"></div>\n<ng-container *ngIf=\"!!title || !!titleTemplate\">\n <h3 *ngIf=\"title; else titleTpl\" [innerHTML]=\"title\" class=\"popover-header\"></h3>\n <ng-template #titleTpl>\n <div class=\"popover-header\">\n <ng-template [ngTemplateOutlet]=\"titleTemplate!\"></ng-template>\n </div>\n </ng-template>\n</ng-container>\n<div class=\"popover-body\">\n <ng-container *ngIf=\"!!text; else contentTpl\">\n <span [innerHTML]=\"text\"></span>\n </ng-container>\n <ng-template #contentTpl>\n <ng-container *ngIf=\"!template; else customContentTpl\">\n <ng-content></ng-content>\n </ng-container>\n <ng-template #customContentTpl [ngTemplateOutlet]=\"template!\"></ng-template>\n </ng-template>\n</div>\n", styles: [".upd-popover{position:absolute;margin:0}.upd-popover-arrow{position:absolute}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.1", type: PopoverComponent, selector: "upd-popover", inputs: { title: "title", text: "text", titleTemplate: "titleTemplate", template: "template", placement: "placement", customClasses: "customClasses" }, host: { properties: { "class": "this.classes", "attr.data-popper-placement": "this.popperPlacement", "role": "this.role" } }, usesOnChanges: true, ngImport: i0, template: "<div class=\"popover-arrow upd-popover-arrow -{{placement}}\"></div>\n@if (!!title || !!titleTemplate) {\n @if (!!title) {\n <h3 [innerHTML]=\"title\" class=\"popover-header\"></h3>\n } @else {\n <div class=\"popover-header\">\n <ng-template [ngTemplateOutlet]=\"titleTemplate!\"></ng-template>\n </div>\n }\n}\n<div class=\"popover-body\">\n @if (!!text) {\n <span [innerHTML]=\"text\"></span>\n } @else {\n @if (!template) {\n <ng-content></ng-content>\n } @else {\n <ng-template [ngTemplateOutlet]=\"template!\"></ng-template>\n }\n }\n</div>\n", styles: [".upd-popover{position:absolute;margin:0}.upd-popover-arrow{position:absolute}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: PopoverComponent, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: PopoverComponent, decorators: [{
44
44
  type: Component,
45
- args: [{ selector: 'upd-popover', encapsulation: ViewEncapsulation.None, template: "<div class=\"popover-arrow upd-popover-arrow -{{placement}}\"></div>\n<ng-container *ngIf=\"!!title || !!titleTemplate\">\n <h3 *ngIf=\"title; else titleTpl\" [innerHTML]=\"title\" class=\"popover-header\"></h3>\n <ng-template #titleTpl>\n <div class=\"popover-header\">\n <ng-template [ngTemplateOutlet]=\"titleTemplate!\"></ng-template>\n </div>\n </ng-template>\n</ng-container>\n<div class=\"popover-body\">\n <ng-container *ngIf=\"!!text; else contentTpl\">\n <span [innerHTML]=\"text\"></span>\n </ng-container>\n <ng-template #contentTpl>\n <ng-container *ngIf=\"!template; else customContentTpl\">\n <ng-content></ng-content>\n </ng-container>\n <ng-template #customContentTpl [ngTemplateOutlet]=\"template!\"></ng-template>\n </ng-template>\n</div>\n", styles: [".upd-popover{position:absolute;margin:0}.upd-popover-arrow{position:absolute}\n"] }]
45
+ args: [{ selector: 'upd-popover', encapsulation: ViewEncapsulation.None, template: "<div class=\"popover-arrow upd-popover-arrow -{{placement}}\"></div>\n@if (!!title || !!titleTemplate) {\n @if (!!title) {\n <h3 [innerHTML]=\"title\" class=\"popover-header\"></h3>\n } @else {\n <div class=\"popover-header\">\n <ng-template [ngTemplateOutlet]=\"titleTemplate!\"></ng-template>\n </div>\n }\n}\n<div class=\"popover-body\">\n @if (!!text) {\n <span [innerHTML]=\"text\"></span>\n } @else {\n @if (!template) {\n <ng-content></ng-content>\n } @else {\n <ng-template [ngTemplateOutlet]=\"template!\"></ng-template>\n }\n }\n</div>\n", styles: [".upd-popover{position:absolute;margin:0}.upd-popover-arrow{position:absolute}\n"] }]
46
46
  }], propDecorators: { classes: [{
47
47
  type: HostBinding,
48
48
  args: ['class']
@@ -67,20 +67,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
67
67
  }] } });
68
68
 
69
69
  class PopoverDirective {
70
- constructor(elementRef, renderer, viewContainerRef, ngZone, injector, positioningService, dynamicComponentLoaderService) {
71
- this.elementRef = elementRef;
72
- this.renderer = renderer;
73
- this.viewContainerRef = viewContainerRef;
74
- this.ngZone = ngZone;
75
- this.injector = injector;
76
- this.positioningService = positioningService;
77
- this.dynamicComponentLoaderService = dynamicComponentLoaderService;
70
+ constructor() {
78
71
  this.placement = 'top';
79
72
  /**
80
73
  * This makes the popover behave like a tooltip.
81
74
  * It means it'll show/hide depending on whether the mouse is over or not the element.
82
75
  */
83
76
  this.actAsTooltip = false;
77
+ this.elementRef = inject(ElementRef);
78
+ this.renderer = inject(Renderer2);
79
+ this.viewContainerRef = inject(ViewContainerRef);
80
+ this.ngZone = inject(NgZone);
81
+ this.injector = inject(Injector);
82
+ this.positioningService = inject(PositioningService);
83
+ this.dynamicComponentLoaderService = inject(DynamicComponentLoaderService);
84
84
  }
85
85
  onMouseEnter() {
86
86
  if (this.actAsTooltip) {
@@ -151,15 +151,15 @@ class PopoverDirective {
151
151
  break;
152
152
  }
153
153
  }
154
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: PopoverDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.NgZone }, { token: i0.Injector }, { token: i1$1.PositioningService }, { token: i1$1.DynamicComponentLoaderService }], target: i0.ɵɵFactoryTarget.Directive }); }
155
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.11", type: PopoverDirective, selector: "[updPopover]", inputs: { text: ["updPopover", "text"], title: ["updPopoverTitle", "title"], popoverTitleTemplate: ["updPopoverTitleTemplate", "popoverTitleTemplate"], popoverTemplate: ["updPopoverTemplate", "popoverTemplate"], placement: ["updPopoverPlacement", "placement"], customClasses: ["updPopoverCustomClasses", "customClasses"], actAsTooltip: ["updPopoverActAsTooltip", "actAsTooltip"] }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "click": "onClick()" } }, ngImport: i0 }); }
154
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: PopoverDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
155
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: PopoverDirective, selector: "[updPopover]", inputs: { text: ["updPopover", "text"], title: ["updPopoverTitle", "title"], popoverTitleTemplate: ["updPopoverTitleTemplate", "popoverTitleTemplate"], popoverTemplate: ["updPopoverTemplate", "popoverTemplate"], placement: ["updPopoverPlacement", "placement"], customClasses: ["updPopoverCustomClasses", "customClasses"], actAsTooltip: ["updPopoverActAsTooltip", "actAsTooltip"] }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "click": "onClick()" } }, ngImport: i0 }); }
156
156
  }
157
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: PopoverDirective, decorators: [{
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: PopoverDirective, decorators: [{
158
158
  type: Directive,
159
159
  args: [{
160
160
  selector: '[updPopover]'
161
161
  }]
162
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.NgZone }, { type: i0.Injector }, { type: i1$1.PositioningService }, { type: i1$1.DynamicComponentLoaderService }]; }, propDecorators: { text: [{
162
+ }], propDecorators: { text: [{
163
163
  type: Input,
164
164
  args: ['updPopover']
165
165
  }], title: [{
@@ -192,13 +192,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
192
192
  }] } });
193
193
 
194
194
  class UpdPopoverModule {
195
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: UpdPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
196
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.11", ngImport: i0, type: UpdPopoverModule, declarations: [PopoverComponent,
195
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
196
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: UpdPopoverModule, declarations: [PopoverComponent,
197
197
  PopoverDirective], imports: [CommonModule], exports: [PopoverComponent,
198
198
  PopoverDirective] }); }
199
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: UpdPopoverModule, imports: [CommonModule] }); }
199
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdPopoverModule, imports: [CommonModule] }); }
200
200
  }
201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: UpdPopoverModule, decorators: [{
201
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdPopoverModule, decorators: [{
202
202
  type: NgModule,
203
203
  args: [{
204
204
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"updevs-components-popover.mjs","sources":["../../../../projects/updevs/components/popover/src/popover.component.ts","../../../../projects/updevs/components/popover/src/popover.component.html","../../../../projects/updevs/components/popover/src/popover.directive.ts","../../../../projects/updevs/components/popover/src/upd-popover.module.ts","../../../../projects/updevs/components/popover/src/updevs-components-popover.ts"],"sourcesContent":["import { Component, Input, HostBinding, SimpleChanges, OnInit, OnChanges, ViewEncapsulation, TemplateRef } from '@angular/core';\nimport { TopBottomLeftRightType } from '@updevs/sdk/types';\n\n@Component({\n selector: 'upd-popover',\n templateUrl: './popover.component.html',\n styleUrls: ['./popover.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class PopoverComponent implements OnInit, OnChanges {\n @HostBinding('class') classes = '';\n @HostBinding('attr.data-popper-placement') popperPlacement = '';\n @HostBinding('role') readonly role = 'tooltip';\n\n @Input() title?: string;\n @Input() text?: string;\n @Input() titleTemplate?: TemplateRef<any>;\n @Input() template?: TemplateRef<any>;\n @Input() placement: TopBottomLeftRightType = 'top';\n @Input() customClasses?: string;\n\n get isVisible(): boolean {\n return this._isVisible;\n }\n\n private _isVisible = false;\n\n ngOnInit(): void {\n this.updateClasses();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateClasses();\n }\n\n setVisible(isVisible: boolean): void {\n this._isVisible = isVisible;\n this.updateClasses();\n }\n\n private updateClasses(): void {\n this.popperPlacement = this.placement;\n this.classes = [\n 'popover',\n 'bs-popover-auto',\n !this._isVisible ? 'fade' : '',\n this._isVisible ? 'show' : '',\n 'upd-popover',\n `-${this.placement}`,\n ...(this.customClasses?.split(' ') || [])\n ].join(' ');\n }\n}\n","<div class=\"popover-arrow upd-popover-arrow -{{placement}}\"></div>\n<ng-container *ngIf=\"!!title || !!titleTemplate\">\n <h3 *ngIf=\"title; else titleTpl\" [innerHTML]=\"title\" class=\"popover-header\"></h3>\n <ng-template #titleTpl>\n <div class=\"popover-header\">\n <ng-template [ngTemplateOutlet]=\"titleTemplate!\"></ng-template>\n </div>\n </ng-template>\n</ng-container>\n<div class=\"popover-body\">\n <ng-container *ngIf=\"!!text; else contentTpl\">\n <span [innerHTML]=\"text\"></span>\n </ng-container>\n <ng-template #contentTpl>\n <ng-container *ngIf=\"!template; else customContentTpl\">\n <ng-content></ng-content>\n </ng-container>\n <ng-template #customContentTpl [ngTemplateOutlet]=\"template!\"></ng-template>\n </ng-template>\n</div>\n","import {\n Directive,\n Input,\n TemplateRef,\n ViewContainerRef,\n Renderer2,\n ElementRef,\n Injector,\n NgZone,\n ComponentRef,\n HostListener\n} from '@angular/core';\nimport { TopBottomLeftRightType } from '@updevs/sdk/types';\nimport { PositioningService, ComputePositionResult, DynamicComponentLoaderService } from '@updevs/sdk/layout';\n\nimport { PopoverComponent } from './popover.component';\n\n@Directive({\n selector: '[updPopover]'\n})\nexport class PopoverDirective {\n @Input('updPopover') text?: string;\n @Input('updPopoverTitle') title?: string;\n @Input('updPopoverTitleTemplate') popoverTitleTemplate?: TemplateRef<any>;\n @Input('updPopoverTemplate') popoverTemplate?: TemplateRef<any>;\n @Input('updPopoverPlacement') placement: TopBottomLeftRightType = 'top';\n @Input('updPopoverCustomClasses') customClasses?: string;\n /**\n * This makes the popover behave like a tooltip.\n * It means it'll show/hide depending on whether the mouse is over or not the element.\n */\n @Input('updPopoverActAsTooltip') actAsTooltip = false;\n\n private popoverComponentRef?: ComponentRef<PopoverComponent>;\n\n constructor(\n private elementRef: ElementRef,\n private renderer: Renderer2,\n private viewContainerRef: ViewContainerRef,\n private ngZone: NgZone,\n private injector: Injector,\n private positioningService: PositioningService,\n private dynamicComponentLoaderService: DynamicComponentLoaderService\n ) {\n }\n\n @HostListener('mouseenter')\n onMouseEnter(): void {\n if (this.actAsTooltip) {\n this.initPopover();\n }\n }\n\n @HostListener('mouseleave')\n onMouseLeave(): void {\n if (this.actAsTooltip) {\n this.disposePopover();\n }\n }\n\n @HostListener('click')\n onClick(): void {\n if (!this.actAsTooltip) {\n if (this.popoverComponentRef?.instance.isVisible) {\n this.disposePopover();\n } else {\n this.initPopover();\n }\n }\n }\n\n private initPopover(): void {\n this.setupPopover();\n this.popoverComponentRef!.instance.setVisible(true);\n this.ngZone.runOutsideAngular(() =>\n this.positioningService\n .computePosition(this.elementRef, this.popoverComponentRef!.location, { placement: this.placement })\n .subscribe(resp => this.updatePosition(resp))\n );\n }\n\n private disposePopover(): void {\n this.viewContainerRef.clear();\n this.popoverComponentRef!.instance.setVisible(false);\n }\n\n private setupPopover(): void {\n this.viewContainerRef.clear();\n\n this.popoverComponentRef = this.dynamicComponentLoaderService.load(PopoverComponent, this.viewContainerRef, this.injector);\n this.popoverComponentRef!.instance.title = this.title;\n this.popoverComponentRef!.instance.text = this.text;\n this.popoverComponentRef!.instance.titleTemplate = this.popoverTitleTemplate;\n this.popoverComponentRef!.instance.template = this.popoverTemplate;\n this.popoverComponentRef!.instance.placement = this.placement;\n this.popoverComponentRef!.instance.customClasses = this.customClasses;\n }\n\n private updatePosition(result: ComputePositionResult): void {\n const nativeElement = this.popoverComponentRef!.location.nativeElement;\n const arrowElement = this.popoverComponentRef!.location.nativeElement.querySelector('.popover-arrow');\n const popoverBox = nativeElement.getBoundingClientRect();\n const arrowBox = arrowElement.getBoundingClientRect();\n\n switch (this.placement) {\n case 'top':\n this.renderer.setStyle(nativeElement, 'top', `${result.y - arrowBox.height}px`);\n this.renderer.setStyle(nativeElement, 'left', `${result.x}px`);\n this.renderer.setStyle(arrowElement, 'left', `${(popoverBox.width / 2) - (arrowBox.width / 2)}px`);\n break;\n case 'bottom':\n this.renderer.setStyle(nativeElement, 'top', `${result.y + arrowBox.height}px`);\n this.renderer.setStyle(nativeElement, 'left', `${result.x}px`);\n this.renderer.setStyle(arrowElement, 'left', `${(popoverBox.width / 2) - (arrowBox.width / 2)}px`);\n break;\n case 'left':\n this.renderer.setStyle(nativeElement, 'top', `${result.y}px`);\n this.renderer.setStyle(nativeElement, 'left', `${result.x - arrowBox.width}px`);\n this.renderer.setStyle(arrowElement, 'top', `${(popoverBox.height / 2) - (arrowBox.height / 2)}px`);\n break;\n case 'right':\n this.renderer.setStyle(nativeElement, 'top', `${result.y}px`);\n this.renderer.setStyle(nativeElement, 'left', `${result.x + arrowBox.width}px`);\n this.renderer.setStyle(arrowElement, 'top', `${(popoverBox.height / 2) - (arrowBox.height / 2)}px`);\n break;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PopoverComponent } from './popover.component';\nimport { PopoverDirective } from './popover.directive';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n PopoverComponent,\n PopoverDirective\n ],\n exports: [\n PopoverComponent,\n PopoverDirective\n ]\n})\nexport class UpdPopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"updevs-components-popover.mjs","sources":["../../../../projects/updevs/components/popover/src/popover.component.ts","../../../../projects/updevs/components/popover/src/popover.component.html","../../../../projects/updevs/components/popover/src/popover.directive.ts","../../../../projects/updevs/components/popover/src/upd-popover.module.ts","../../../../projects/updevs/components/popover/src/updevs-components-popover.ts"],"sourcesContent":["import { Component, Input, HostBinding, SimpleChanges, OnInit, OnChanges, ViewEncapsulation, TemplateRef } from '@angular/core';\nimport { TopBottomLeftRightType } from '@updevs/sdk/types';\n\n@Component({\n selector: 'upd-popover',\n templateUrl: './popover.component.html',\n styleUrls: ['./popover.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class PopoverComponent implements OnInit, OnChanges {\n @HostBinding('class') classes = '';\n @HostBinding('attr.data-popper-placement') popperPlacement = '';\n @HostBinding('role') readonly role = 'tooltip';\n\n @Input() title?: string;\n @Input() text?: string;\n @Input() titleTemplate?: TemplateRef<any>;\n @Input() template?: TemplateRef<any>;\n @Input() placement: TopBottomLeftRightType = 'top';\n @Input() customClasses?: string;\n\n get isVisible(): boolean {\n return this._isVisible;\n }\n\n private _isVisible = false;\n\n ngOnInit(): void {\n this.updateClasses();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateClasses();\n }\n\n setVisible(isVisible: boolean): void {\n this._isVisible = isVisible;\n this.updateClasses();\n }\n\n private updateClasses(): void {\n this.popperPlacement = this.placement;\n this.classes = [\n 'popover',\n 'bs-popover-auto',\n !this._isVisible ? 'fade' : '',\n this._isVisible ? 'show' : '',\n 'upd-popover',\n `-${this.placement}`,\n ...(this.customClasses?.split(' ') || [])\n ].join(' ');\n }\n}\n","<div class=\"popover-arrow upd-popover-arrow -{{placement}}\"></div>\n@if (!!title || !!titleTemplate) {\n @if (!!title) {\n <h3 [innerHTML]=\"title\" class=\"popover-header\"></h3>\n } @else {\n <div class=\"popover-header\">\n <ng-template [ngTemplateOutlet]=\"titleTemplate!\"></ng-template>\n </div>\n }\n}\n<div class=\"popover-body\">\n @if (!!text) {\n <span [innerHTML]=\"text\"></span>\n } @else {\n @if (!template) {\n <ng-content></ng-content>\n } @else {\n <ng-template [ngTemplateOutlet]=\"template!\"></ng-template>\n }\n }\n</div>\n","import {\n Directive,\n Input,\n TemplateRef,\n ViewContainerRef,\n Renderer2,\n ElementRef,\n Injector,\n NgZone,\n ComponentRef,\n HostListener, inject\n} from '@angular/core';\nimport { TopBottomLeftRightType } from '@updevs/sdk/types';\nimport { PositioningService, ComputePositionResult, DynamicComponentLoaderService } from '@updevs/sdk/layout';\n\nimport { PopoverComponent } from './popover.component';\n\n@Directive({\n selector: '[updPopover]'\n})\nexport class PopoverDirective {\n @Input('updPopover') text?: string;\n @Input('updPopoverTitle') title?: string;\n @Input('updPopoverTitleTemplate') popoverTitleTemplate?: TemplateRef<any>;\n @Input('updPopoverTemplate') popoverTemplate?: TemplateRef<any>;\n @Input('updPopoverPlacement') placement: TopBottomLeftRightType = 'top';\n @Input('updPopoverCustomClasses') customClasses?: string;\n /**\n * This makes the popover behave like a tooltip.\n * It means it'll show/hide depending on whether the mouse is over or not the element.\n */\n @Input('updPopoverActAsTooltip') actAsTooltip = false;\n\n private popoverComponentRef?: ComponentRef<PopoverComponent>;\n\n private readonly elementRef = inject(ElementRef);\n private readonly renderer = inject(Renderer2);\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly ngZone = inject(NgZone);\n private readonly injector = inject(Injector);\n private readonly positioningService = inject(PositioningService);\n private readonly dynamicComponentLoaderService = inject(DynamicComponentLoaderService);\n\n @HostListener('mouseenter')\n onMouseEnter(): void {\n if (this.actAsTooltip) {\n this.initPopover();\n }\n }\n\n @HostListener('mouseleave')\n onMouseLeave(): void {\n if (this.actAsTooltip) {\n this.disposePopover();\n }\n }\n\n @HostListener('click')\n onClick(): void {\n if (!this.actAsTooltip) {\n if (this.popoverComponentRef?.instance.isVisible) {\n this.disposePopover();\n } else {\n this.initPopover();\n }\n }\n }\n\n private initPopover(): void {\n this.setupPopover();\n this.popoverComponentRef!.instance.setVisible(true);\n this.ngZone.runOutsideAngular(() =>\n this.positioningService\n .computePosition(this.elementRef, this.popoverComponentRef!.location, { placement: this.placement })\n .subscribe(resp => this.updatePosition(resp))\n );\n }\n\n private disposePopover(): void {\n this.viewContainerRef.clear();\n this.popoverComponentRef!.instance.setVisible(false);\n }\n\n private setupPopover(): void {\n this.viewContainerRef.clear();\n\n this.popoverComponentRef = this.dynamicComponentLoaderService.load(PopoverComponent, this.viewContainerRef, this.injector);\n this.popoverComponentRef!.instance.title = this.title;\n this.popoverComponentRef!.instance.text = this.text;\n this.popoverComponentRef!.instance.titleTemplate = this.popoverTitleTemplate;\n this.popoverComponentRef!.instance.template = this.popoverTemplate;\n this.popoverComponentRef!.instance.placement = this.placement;\n this.popoverComponentRef!.instance.customClasses = this.customClasses;\n }\n\n private updatePosition(result: ComputePositionResult): void {\n const nativeElement = this.popoverComponentRef!.location.nativeElement;\n const arrowElement = this.popoverComponentRef!.location.nativeElement.querySelector('.popover-arrow');\n const popoverBox = nativeElement.getBoundingClientRect();\n const arrowBox = arrowElement.getBoundingClientRect();\n\n switch (this.placement) {\n case 'top':\n this.renderer.setStyle(nativeElement, 'top', `${result.y - arrowBox.height}px`);\n this.renderer.setStyle(nativeElement, 'left', `${result.x}px`);\n this.renderer.setStyle(arrowElement, 'left', `${(popoverBox.width / 2) - (arrowBox.width / 2)}px`);\n break;\n case 'bottom':\n this.renderer.setStyle(nativeElement, 'top', `${result.y + arrowBox.height}px`);\n this.renderer.setStyle(nativeElement, 'left', `${result.x}px`);\n this.renderer.setStyle(arrowElement, 'left', `${(popoverBox.width / 2) - (arrowBox.width / 2)}px`);\n break;\n case 'left':\n this.renderer.setStyle(nativeElement, 'top', `${result.y}px`);\n this.renderer.setStyle(nativeElement, 'left', `${result.x - arrowBox.width}px`);\n this.renderer.setStyle(arrowElement, 'top', `${(popoverBox.height / 2) - (arrowBox.height / 2)}px`);\n break;\n case 'right':\n this.renderer.setStyle(nativeElement, 'top', `${result.y}px`);\n this.renderer.setStyle(nativeElement, 'left', `${result.x + arrowBox.width}px`);\n this.renderer.setStyle(arrowElement, 'top', `${(popoverBox.height / 2) - (arrowBox.height / 2)}px`);\n break;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PopoverComponent } from './popover.component';\nimport { PopoverDirective } from './popover.directive';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n PopoverComponent,\n PopoverDirective\n ],\n exports: [\n PopoverComponent,\n PopoverDirective\n ]\n})\nexport class UpdPopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -2,11 +2,11 @@ import * as i0 from '@angular/core';
2
2
  import { NgModule } from '@angular/core';
3
3
 
4
4
  class UpdComponentsModule {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: UpdComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.11", ngImport: i0, type: UpdComponentsModule }); }
7
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: UpdComponentsModule }); }
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: UpdComponentsModule }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdComponentsModule }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: UpdComponentsModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: UpdComponentsModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  imports: []
@@ -1 +1 @@
1
- {"version":3,"file":"updevs-components.mjs","sources":["../../../../projects/updevs/components/src/lib/upd-components.module.ts","../../../../projects/updevs/components/src/updevs-components.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\n\n@NgModule({\n imports: []\n})\nexport class UpdComponentsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAKa,mBAAmB,CAAA;+GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;gHAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;gHAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,EAAE;AACd,iBAAA,CAAA;;;ACJD;;AAEG;;;;"}
1
+ {"version":3,"file":"updevs-components.mjs","sources":["../../../../projects/updevs/components/src/lib/upd-components.module.ts","../../../../projects/updevs/components/src/updevs-components.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\n\n@NgModule({\n imports: []\n})\nexport class UpdComponentsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAKa,mBAAmB,CAAA;8GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;+GAAnB,mBAAmB,EAAA,CAAA,CAAA,EAAA;;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,EAAE;AACd,iBAAA,CAAA;;;ACJD;;AAEG;;;;"}
@@ -1,8 +1,7 @@
1
1
  import { TemplateRef } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class InputAppendDirective {
4
- templateRef: TemplateRef<any>;
5
- constructor(templateRef: TemplateRef<any>);
4
+ readonly templateRef: TemplateRef<any>;
6
5
  static ɵfac: i0.ɵɵFactoryDeclaration<InputAppendDirective, never>;
7
6
  static ɵdir: i0.ɵɵDirectiveDeclaration<InputAppendDirective, "ng-template[updInputAppend]", never, {}, {}, never, never, false, never>;
8
7
  }
@@ -1,8 +1,7 @@
1
1
  import { TemplateRef } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class InputPrependDirective {
4
- templateRef: TemplateRef<any>;
5
- constructor(templateRef: TemplateRef<any>);
4
+ readonly templateRef: TemplateRef<any>;
6
5
  static ɵfac: i0.ɵɵFactoryDeclaration<InputPrependDirective, never>;
7
6
  static ɵdir: i0.ɵɵDirectiveDeclaration<InputPrependDirective, "ng-template[updInputPrepend]", never, {}, {}, never, never, false, never>;
8
7
  }
@@ -5,8 +5,7 @@ import * as i0 from "@angular/core";
5
5
  * Basic page structure.
6
6
  */
7
7
  export declare abstract class BasePageComponent extends BaseComponent implements OnDestroy {
8
- protected _layoutService: LayoutService;
9
- protected constructor();
8
+ protected readonly _layoutService: LayoutService;
10
9
  ngOnDestroy(): void;
11
10
  static ɵfac: i0.ɵɵFactoryDeclaration<BasePageComponent, never>;
12
11
  static ɵdir: i0.ɵɵDirectiveDeclaration<BasePageComponent, never, never, {}, {}, never, never, false, never>;
@@ -1,12 +1,11 @@
1
- import { OnInit, ChangeDetectorRef } from '@angular/core';
2
- import { BaseComponent, LayoutService, PageHeaderModel } from '@updevs/sdk/layout';
1
+ import { OnInit } from '@angular/core';
2
+ import { BaseComponent, PageHeaderModel } from '@updevs/sdk/layout';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class VerticalSidebarLayoutComponent extends BaseComponent implements OnInit {
5
- private changeDetectorRef;
6
- private layoutService;
7
5
  showPageHeader: boolean;
8
6
  pageHeader?: PageHeaderModel;
9
- constructor(changeDetectorRef: ChangeDetectorRef, layoutService: LayoutService);
7
+ private readonly changeDetectorRef;
8
+ private readonly layoutService;
10
9
  ngOnInit(): void;
11
10
  static ɵfac: i0.ɵɵFactoryDeclaration<VerticalSidebarLayoutComponent, never>;
12
11
  static ɵcmp: i0.ɵɵComponentDeclaration<VerticalSidebarLayoutComponent, "upd-vertical-sidebar-layout", never, {}, {}, never, never, false, never>;
@@ -1,6 +1,5 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class FooterCopyrightDirective {
3
- constructor();
4
3
  static ɵfac: i0.ɵɵFactoryDeclaration<FooterCopyrightDirective, never>;
5
4
  static ɵdir: i0.ɵɵDirectiveDeclaration<FooterCopyrightDirective, "[updFooterCopyright]", never, {}, {}, never, never, false, never>;
6
5
  }
@@ -1,10 +1,8 @@
1
1
  import { TemplateRef, OnInit, OnChanges, SimpleChanges } from '@angular/core';
2
2
  import { LinkModel } from '@updevs/sdk/core';
3
3
  import { BaseComponent } from '@updevs/sdk/layout';
4
- import { TranslocoService } from '@ngneat/transloco';
5
4
  import * as i0 from "@angular/core";
6
5
  export declare class FooterComponent extends BaseComponent implements OnInit, OnChanges {
7
- private translocoService;
8
6
  wrapperClasses: string;
9
7
  footerCopyrightTemplate?: TemplateRef<any>;
10
8
  /**
@@ -36,7 +34,7 @@ export declare class FooterComponent extends BaseComponent implements OnInit, On
36
34
  */
37
35
  version?: string;
38
36
  private baseWrapperClasses;
39
- constructor(translocoService: TranslocoService);
37
+ private readonly translocoService;
40
38
  ngOnInit(): void;
41
39
  ngOnChanges(changes: SimpleChanges): void;
42
40
  private updateWrapperClasses;
@@ -1,13 +1,9 @@
1
1
  import { OnChanges, SimpleChanges, OnInit } from '@angular/core';
2
- import { UpdCoreLayoutConfigService, BaseComponent, LayoutService } from '@updevs/sdk/layout';
2
+ import { BaseComponent } from '@updevs/sdk/layout';
3
3
  import { TablerIconsType } from '@updevs/icons';
4
- import { TranslocoService } from '@ngneat/transloco';
5
4
  import { HeaderStyleType } from './header-style.type';
6
5
  import * as i0 from "@angular/core";
7
6
  export declare class HeaderComponent extends BaseComponent implements OnInit, OnChanges {
8
- private coreLayoutConfigService;
9
- private layoutService;
10
- private translocoService;
11
7
  wrapperClasses: string;
12
8
  style: HeaderStyleType;
13
9
  showSearchBar: boolean;
@@ -19,7 +15,9 @@ export declare class HeaderComponent extends BaseComponent implements OnInit, On
19
15
  showLanguageSwitcher: boolean;
20
16
  showUserMenu: boolean;
21
17
  private baseWrapperClasses;
22
- constructor(coreLayoutConfigService: UpdCoreLayoutConfigService, layoutService: LayoutService, translocoService: TranslocoService);
18
+ private readonly coreLayoutConfigService;
19
+ private readonly layoutService;
20
+ private readonly translocoService;
23
21
  ngOnInit(): void;
24
22
  ngOnChanges(changes: SimpleChanges): void;
25
23
  switchTheme(): void;
@@ -1,14 +1,12 @@
1
1
  import { OnInit } from '@angular/core';
2
- import { Router } from '@angular/router';
3
2
  import { RouteDataModel } from '@updevs/sdk/routes';
4
3
  import { BaseComponent } from '@updevs/sdk/layout';
5
4
  import * as i0 from "@angular/core";
6
5
  export declare class SidebarComponent extends BaseComponent implements OnInit {
7
- private router;
8
6
  wrapperClasses: string;
9
7
  theme: string;
10
8
  menuItems: RouteDataModel[];
11
- constructor(router: Router);
9
+ private readonly router;
12
10
  ngOnInit(): void;
13
11
  onMenuItemClick(item: RouteDataModel): void;
14
12
  hasChildren(item: RouteDataModel): boolean;
@@ -1,10 +1,8 @@
1
- import { Renderer2, ElementRef, OnInit, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
1
+ import { OnInit, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
2
  import { ListItem } from './models/list-item';
3
3
  import { ListItemModel } from './models/list-item.model';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class ListComponent implements OnInit, OnChanges {
6
- private renderer;
7
- private elementRef;
8
6
  localWrapperClasses: string;
9
7
  /**
10
8
  * List items.
@@ -49,7 +47,8 @@ export declare class ListComponent implements OnInit, OnChanges {
49
47
  listItems: ListItemModel[];
50
48
  currentSelection: ListItem[];
51
49
  private localBackupItems;
52
- constructor(renderer: Renderer2, elementRef: ElementRef);
50
+ private readonly renderer;
51
+ private readonly elementRef;
53
52
  ngOnInit(): void;
54
53
  ngOnChanges(changes: SimpleChanges): void;
55
54
  onCheckboxChange(item: ListItem, isChecked: boolean): void;
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@updevs/components",
3
- "version": "1.0.0-alpha.6",
3
+ "version": "1.0.0-alpha.8",
4
4
  "peerDependencies": {
5
- "@angular/common": "^16.2.7",
6
- "@angular/core": "^16.2.7",
5
+ "@angular/common": "^18.0.1",
6
+ "@angular/core": "^18.0.1",
7
7
  "@ngneat/transloco": "^6.0.0",
8
- "@updevs/icons": "^1.0.5",
9
- "@updevs/sdk": "^1.0.0-alpha.16"
8
+ "@updevs/icons": "^1.0.7",
9
+ "@updevs/sdk": "^1.0.0-alpha.18"
10
10
  },
11
11
  "dependencies": {
12
12
  "tslib": "^2.3.0"
@@ -1,15 +1,7 @@
1
- import { TemplateRef, ViewContainerRef, Renderer2, ElementRef, Injector, NgZone } from '@angular/core';
1
+ import { TemplateRef } from '@angular/core';
2
2
  import { TopBottomLeftRightType } from '@updevs/sdk/types';
3
- import { PositioningService, DynamicComponentLoaderService } from '@updevs/sdk/layout';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class PopoverDirective {
6
- private elementRef;
7
- private renderer;
8
- private viewContainerRef;
9
- private ngZone;
10
- private injector;
11
- private positioningService;
12
- private dynamicComponentLoaderService;
13
5
  text?: string;
14
6
  title?: string;
15
7
  popoverTitleTemplate?: TemplateRef<any>;
@@ -22,7 +14,13 @@ export declare class PopoverDirective {
22
14
  */
23
15
  actAsTooltip: boolean;
24
16
  private popoverComponentRef?;
25
- constructor(elementRef: ElementRef, renderer: Renderer2, viewContainerRef: ViewContainerRef, ngZone: NgZone, injector: Injector, positioningService: PositioningService, dynamicComponentLoaderService: DynamicComponentLoaderService);
17
+ private readonly elementRef;
18
+ private readonly renderer;
19
+ private readonly viewContainerRef;
20
+ private readonly ngZone;
21
+ private readonly injector;
22
+ private readonly positioningService;
23
+ private readonly dynamicComponentLoaderService;
26
24
  onMouseEnter(): void;
27
25
  onMouseLeave(): void;
28
26
  onClick(): void;