ngx-semantic 2.0.7-beta.2 → 2.0.9

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/README.md +18 -18
  2. package/fesm2022/ngx-semantic-collections-breadcrumb.mjs +13 -13
  3. package/fesm2022/ngx-semantic-collections-breadcrumb.mjs.map +1 -1
  4. package/fesm2022/ngx-semantic-collections-form.mjs +16 -16
  5. package/fesm2022/ngx-semantic-collections-form.mjs.map +1 -1
  6. package/fesm2022/ngx-semantic-collections-grid.mjs +13 -13
  7. package/fesm2022/ngx-semantic-collections-grid.mjs.map +1 -1
  8. package/fesm2022/ngx-semantic-collections-menu.mjs +16 -16
  9. package/fesm2022/ngx-semantic-collections-menu.mjs.map +1 -1
  10. package/fesm2022/ngx-semantic-collections-message.mjs +16 -16
  11. package/fesm2022/ngx-semantic-collections-message.mjs.map +1 -1
  12. package/fesm2022/ngx-semantic-collections-table.mjs +16 -16
  13. package/fesm2022/ngx-semantic-collections-table.mjs.map +1 -1
  14. package/fesm2022/ngx-semantic-core-base.mjs +3 -3
  15. package/fesm2022/ngx-semantic-core-base.mjs.map +1 -1
  16. package/fesm2022/ngx-semantic-elements-button.mjs +10 -10
  17. package/fesm2022/ngx-semantic-elements-button.mjs.map +1 -1
  18. package/fesm2022/ngx-semantic-elements-container.mjs +7 -7
  19. package/fesm2022/ngx-semantic-elements-container.mjs.map +1 -1
  20. package/fesm2022/ngx-semantic-elements-divider.mjs +7 -7
  21. package/fesm2022/ngx-semantic-elements-divider.mjs.map +1 -1
  22. package/fesm2022/ngx-semantic-elements-flag.mjs +7 -7
  23. package/fesm2022/ngx-semantic-elements-flag.mjs.map +1 -1
  24. package/fesm2022/ngx-semantic-elements-header.mjs +10 -10
  25. package/fesm2022/ngx-semantic-elements-header.mjs.map +1 -1
  26. package/fesm2022/ngx-semantic-elements-icon.mjs +10 -10
  27. package/fesm2022/ngx-semantic-elements-icon.mjs.map +1 -1
  28. package/fesm2022/ngx-semantic-elements-image.mjs +10 -10
  29. package/fesm2022/ngx-semantic-elements-image.mjs.map +1 -1
  30. package/fesm2022/ngx-semantic-elements-input.mjs +7 -7
  31. package/fesm2022/ngx-semantic-elements-input.mjs.map +1 -1
  32. package/fesm2022/ngx-semantic-elements-label.mjs +10 -10
  33. package/fesm2022/ngx-semantic-elements-label.mjs.map +1 -1
  34. package/fesm2022/ngx-semantic-elements-list.mjs +10 -10
  35. package/fesm2022/ngx-semantic-elements-list.mjs.map +1 -1
  36. package/fesm2022/ngx-semantic-elements-loader.mjs +7 -7
  37. package/fesm2022/ngx-semantic-elements-loader.mjs.map +1 -1
  38. package/fesm2022/ngx-semantic-elements-placeholder.mjs +19 -19
  39. package/fesm2022/ngx-semantic-elements-placeholder.mjs.map +1 -1
  40. package/fesm2022/ngx-semantic-elements-rail.mjs +7 -7
  41. package/fesm2022/ngx-semantic-elements-rail.mjs.map +1 -1
  42. package/fesm2022/ngx-semantic-elements-reveal.mjs +10 -10
  43. package/fesm2022/ngx-semantic-elements-reveal.mjs.map +1 -1
  44. package/fesm2022/ngx-semantic-elements-segment.mjs +13 -13
  45. package/fesm2022/ngx-semantic-elements-segment.mjs.map +1 -1
  46. package/fesm2022/ngx-semantic-elements-steps.mjs +19 -19
  47. package/fesm2022/ngx-semantic-elements-steps.mjs.map +1 -1
  48. package/fesm2022/ngx-semantic-modules-accordion.mjs +10 -10
  49. package/fesm2022/ngx-semantic-modules-accordion.mjs.map +1 -1
  50. package/fesm2022/ngx-semantic-modules-checkbox.mjs +7 -7
  51. package/fesm2022/ngx-semantic-modules-checkbox.mjs.map +1 -1
  52. package/fesm2022/ngx-semantic-modules-dimmer.mjs +13 -13
  53. package/fesm2022/ngx-semantic-modules-dimmer.mjs.map +1 -1
  54. package/fesm2022/ngx-semantic-modules-dropdown.mjs +19 -19
  55. package/fesm2022/ngx-semantic-modules-dropdown.mjs.map +1 -1
  56. package/fesm2022/ngx-semantic-modules-embed.mjs +10 -10
  57. package/fesm2022/ngx-semantic-modules-embed.mjs.map +1 -1
  58. package/fesm2022/ngx-semantic-modules-modal.mjs +16 -16
  59. package/fesm2022/ngx-semantic-modules-modal.mjs.map +1 -1
  60. package/fesm2022/ngx-semantic-modules-popup.mjs +10 -10
  61. package/fesm2022/ngx-semantic-modules-popup.mjs.map +1 -1
  62. package/fesm2022/ngx-semantic-modules-progress.mjs +7 -7
  63. package/fesm2022/ngx-semantic-modules-progress.mjs.map +1 -1
  64. package/fesm2022/ngx-semantic-modules-rating.mjs +7 -7
  65. package/fesm2022/ngx-semantic-modules-rating.mjs.map +1 -1
  66. package/fesm2022/ngx-semantic-modules-search.mjs +7 -7
  67. package/fesm2022/ngx-semantic-modules-search.mjs.map +1 -1
  68. package/fesm2022/ngx-semantic-modules-select.mjs +13 -13
  69. package/fesm2022/ngx-semantic-modules-select.mjs.map +1 -1
  70. package/fesm2022/ngx-semantic-modules-shape.mjs +10 -10
  71. package/fesm2022/ngx-semantic-modules-shape.mjs.map +1 -1
  72. package/fesm2022/ngx-semantic-modules-sidebar.mjs +16 -16
  73. package/fesm2022/ngx-semantic-modules-sidebar.mjs.map +1 -1
  74. package/fesm2022/ngx-semantic-modules-sticky.mjs +7 -7
  75. package/fesm2022/ngx-semantic-modules-sticky.mjs.map +1 -1
  76. package/fesm2022/ngx-semantic-modules-tabs.mjs +10 -10
  77. package/fesm2022/ngx-semantic-modules-tabs.mjs.map +1 -1
  78. package/fesm2022/ngx-semantic-modules-transition.mjs +7 -7
  79. package/fesm2022/ngx-semantic-modules-transition.mjs.map +1 -1
  80. package/fesm2022/ngx-semantic-modules-visibility.mjs +525 -0
  81. package/fesm2022/ngx-semantic-modules-visibility.mjs.map +1 -0
  82. package/fesm2022/ngx-semantic-views-advertisement.mjs +7 -7
  83. package/fesm2022/ngx-semantic-views-advertisement.mjs.map +1 -1
  84. package/fesm2022/ngx-semantic-views-card.mjs +28 -28
  85. package/fesm2022/ngx-semantic-views-card.mjs.map +1 -1
  86. package/fesm2022/ngx-semantic-views-comment.mjs +31 -31
  87. package/fesm2022/ngx-semantic-views-comment.mjs.map +1 -1
  88. package/fesm2022/ngx-semantic-views-feed.mjs +28 -28
  89. package/fesm2022/ngx-semantic-views-feed.mjs.map +1 -1
  90. package/fesm2022/ngx-semantic-views-items.mjs +28 -28
  91. package/fesm2022/ngx-semantic-views-items.mjs.map +1 -1
  92. package/fesm2022/ngx-semantic-views-statistics.mjs +16 -16
  93. package/fesm2022/ngx-semantic-views-statistics.mjs.map +1 -1
  94. package/fesm2022/ngx-semantic.mjs +15 -9
  95. package/fesm2022/ngx-semantic.mjs.map +1 -1
  96. package/modules/visibility/package.json +4 -0
  97. package/package.json +5 -1
  98. package/types/ngx-semantic-modules-visibility.d.ts +124 -0
  99. package/types/ngx-semantic.d.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-semantic-modules-sidebar.mjs","sources":["../../src/modules/sidebar/sidebar.service.ts","../../src/modules/sidebar/sidebar.component.ts","../../src/modules/sidebar/sidebar-pusher.component.ts","../../src/modules/sidebar/sidebar-container.component.ts","../../src/modules/sidebar/sidebar.module.ts","../../src/modules/sidebar/public-api.ts","../../src/modules/sidebar/ngx-semantic-modules-sidebar.ts"],"sourcesContent":["/**\n * Created by bolorundurowb on 1/1/2021\n */\n\nimport { EventEmitter, Injectable } from '@angular/core';\n\n@Injectable()\nexport class SuiSidebarService {\n public pusherClicked = new EventEmitter<void>();\n public visibilityChanged = new EventEmitter<boolean>();\n\n public notifyPusherClicked(): void {\n this.pusherClicked.emit();\n }\n\n public changeVisibility(isVisible: boolean): void {\n this.visibilityChanged.emit(isVisible);\n }\n}\n","/**\n * Created by bolorundurowb on 12/30/2020\n */\n\nimport { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation, inject } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiSidebarService } from './sidebar.service';\n\nexport type SuiSidebarPosition = 'top' | 'bottom' | 'left' | 'right';\nexport type SuiSidebarWidth = 'thin' | 'very thin' | 'wide' | 'very wide' | null;\nexport type SuiSidebarAnimation = 'overlay' | 'push' | 'scale down' | 'uncover' | 'slide along' | 'slide out' | null;\n\n@Component({\n standalone: true,\n selector: 'sui-sidebar, [sui-sidebar]',\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-content></ng-content>\n `\n})\nexport class SuiSidebarComponent {\n private sidebarService = inject(SuiSidebarService);\n\n @Input() public suiSidebarPosition: SuiSidebarPosition = 'left';\n @Input() public suiSidebarWidth: SuiSidebarWidth = null;\n @Input() public suiSidebarAnimation: SuiSidebarAnimation = null;\n @Input() @InputBoolean() public suiInverted = false;\n @Output() public visibleChange = new EventEmitter<boolean>();\n\n private _visible = true;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(isVisible) {\n this._visible = isVisible;\n this.visibleChange.emit(this._visible);\n this.sidebarService.changeVisibility(this._visible);\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'ui',\n this.suiSidebarPosition,\n this.suiSidebarWidth,\n ClassUtils.getPropClass(this.suiInverted, 'inverted'),\n 'sidebar',\n this.suiSidebarAnimation,\n ClassUtils.getPropClass(this.visible, 'visible')\n ].join(' ');\n }\n\n constructor() {\n const sidebarService = this.sidebarService;\n\n sidebarService.pusherClicked\n .subscribe(() => {\n // only close sidebar on pusher when the visibility is dynamic\n if (this.visibleChange.observers.length > 0) {\n this.visible = false;\n }\n });\n }\n}\n","/**\n * Created by bolorundurowb on 12/30/2020\n */\n\nimport { Component, HostBinding, HostListener, Input, OnInit, ViewEncapsulation, inject } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiSidebarService } from './sidebar.service';\n\n@Component({\n standalone: true,\n selector: 'sui-sidebar-pusher',\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-content></ng-content>\n `\n})\nexport class SuiSidebarPusherComponent implements OnInit {\n private sidebarService = inject(SuiSidebarService);\n\n @Input() @InputBoolean() public suiDimmable = false;\n public isSidebarOpen = false;\n\n @HostBinding('class')\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.isSidebarOpen && this.suiDimmable, 'dimmed'),\n 'pusher'\n ].join(' ');\n }\n\n public ngOnInit(): void {\n this.sidebarService.visibilityChanged\n .subscribe((isVisible) => {\n this.isSidebarOpen = isVisible;\n });\n }\n\n @HostListener('click')\n public onClick(): void {\n if (this.isSidebarOpen) {\n this.sidebarService.notifyPusherClicked();\n }\n }\n}\n","/**\n * Created by bolorundurowb on 1/1/2021\n */\n\nimport { AfterContentInit, Component, ContentChild, ViewEncapsulation } from '@angular/core';\nimport { SuiSidebarComponent } from './sidebar.component';\nimport { SuiSidebarPusherComponent } from './sidebar-pusher.component';\n\n@Component({\n standalone: true,\n selector: 'sui-sidebar-container',\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-content></ng-content>\n `\n})\nexport class SuiSidebarContainerComponent implements AfterContentInit {\n @ContentChild(SuiSidebarComponent) public suiSidebar!: SuiSidebarComponent;\n @ContentChild(SuiSidebarPusherComponent) public suiPusher!: SuiSidebarPusherComponent;\n\n public ngAfterContentInit(): void {\n if (!this.suiSidebar) {\n throw new Error('You must include a <sui-sidebar> element within the container.');\n }\n\n if (!this.suiPusher) {\n throw new Error('You must include a <sui-sidebar-pusher> element within the container.');\n }\n\n this.suiSidebar.visibleChange\n .subscribe((isVisible) => {\n this.suiPusher.isSidebarOpen = isVisible;\n });\n }\n}\n","/**\n * Created by bolorundurowb on 12/30/2020\n */\n\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuiSidebarContainerComponent } from './sidebar-container.component';\nimport { SuiSidebarPusherComponent } from './sidebar-pusher.component';\nimport { SuiSidebarComponent } from './sidebar.component';\nimport { SuiSidebarService } from './sidebar.service';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiSidebarComponent,\n SuiSidebarPusherComponent,\n SuiSidebarContainerComponent\n ],\n exports: [\n SuiSidebarComponent,\n SuiSidebarPusherComponent,\n SuiSidebarContainerComponent\n ],\n providers: [\n SuiSidebarService\n ]\n})\nexport class SuiSidebarModule {\n}\n","/**\n * Created by bolorundurowb on 12/30/2020\n */\n\nexport * from './sidebar-container.component';\nexport * from './sidebar-pusher.component';\nexport * from './sidebar.component';\nexport * from './sidebar.module';\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":"ngx-semantic-modules-sidebar.mjs","sources":["../../src/modules/sidebar/sidebar.service.ts","../../src/modules/sidebar/sidebar.component.ts","../../src/modules/sidebar/sidebar-pusher.component.ts","../../src/modules/sidebar/sidebar-container.component.ts","../../src/modules/sidebar/sidebar.module.ts","../../src/modules/sidebar/public-api.ts","../../src/modules/sidebar/ngx-semantic-modules-sidebar.ts"],"sourcesContent":["/**\n * Created by bolorundurowb on 1/1/2021\n */\n\nimport { EventEmitter, Injectable } from '@angular/core';\n\n@Injectable()\nexport class SuiSidebarService {\n public pusherClicked = new EventEmitter<void>();\n public visibilityChanged = new EventEmitter<boolean>();\n\n public notifyPusherClicked(): void {\n this.pusherClicked.emit();\n }\n\n public changeVisibility(isVisible: boolean): void {\n this.visibilityChanged.emit(isVisible);\n }\n}\n","/**\n * Created by bolorundurowb on 12/30/2020\n */\n\nimport { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation, inject } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiSidebarService } from './sidebar.service';\n\nexport type SuiSidebarPosition = 'top' | 'bottom' | 'left' | 'right';\nexport type SuiSidebarWidth = 'thin' | 'very thin' | 'wide' | 'very wide' | null;\nexport type SuiSidebarAnimation = 'overlay' | 'push' | 'scale down' | 'uncover' | 'slide along' | 'slide out' | null;\n\n@Component({\n standalone: true,\n selector: 'sui-sidebar, [sui-sidebar]',\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-content></ng-content>\n `\n})\nexport class SuiSidebarComponent {\n private sidebarService = inject(SuiSidebarService);\n\n @Input() public suiSidebarPosition: SuiSidebarPosition = 'left';\n @Input() public suiSidebarWidth: SuiSidebarWidth = null;\n @Input() public suiSidebarAnimation: SuiSidebarAnimation = null;\n @Input() @InputBoolean() public suiInverted = false;\n @Output() public visibleChange = new EventEmitter<boolean>();\n\n private _visible = true;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(isVisible) {\n this._visible = isVisible;\n this.visibleChange.emit(this._visible);\n this.sidebarService.changeVisibility(this._visible);\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'ui',\n this.suiSidebarPosition,\n this.suiSidebarWidth,\n ClassUtils.getPropClass(this.suiInverted, 'inverted'),\n 'sidebar',\n this.suiSidebarAnimation,\n ClassUtils.getPropClass(this.visible, 'visible')\n ].join(' ');\n }\n\n constructor() {\n const sidebarService = this.sidebarService;\n\n sidebarService.pusherClicked\n .subscribe(() => {\n // only close sidebar on pusher when the visibility is dynamic\n if (this.visibleChange.observers.length > 0) {\n this.visible = false;\n }\n });\n }\n}\n","/**\n * Created by bolorundurowb on 12/30/2020\n */\n\nimport { Component, HostBinding, HostListener, Input, OnInit, ViewEncapsulation, inject } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiSidebarService } from './sidebar.service';\n\n@Component({\n standalone: true,\n selector: 'sui-sidebar-pusher',\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-content></ng-content>\n `\n})\nexport class SuiSidebarPusherComponent implements OnInit {\n private sidebarService = inject(SuiSidebarService);\n\n @Input() @InputBoolean() public suiDimmable = false;\n public isSidebarOpen = false;\n\n @HostBinding('class')\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.isSidebarOpen && this.suiDimmable, 'dimmed'),\n 'pusher'\n ].join(' ');\n }\n\n public ngOnInit(): void {\n this.sidebarService.visibilityChanged\n .subscribe((isVisible) => {\n this.isSidebarOpen = isVisible;\n });\n }\n\n @HostListener('click')\n public onClick(): void {\n if (this.isSidebarOpen) {\n this.sidebarService.notifyPusherClicked();\n }\n }\n}\n","/**\n * Created by bolorundurowb on 1/1/2021\n */\n\nimport { AfterContentInit, Component, ContentChild, ViewEncapsulation } from '@angular/core';\nimport { SuiSidebarComponent } from './sidebar.component';\nimport { SuiSidebarPusherComponent } from './sidebar-pusher.component';\n\n@Component({\n standalone: true,\n selector: 'sui-sidebar-container',\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-content></ng-content>\n `\n})\nexport class SuiSidebarContainerComponent implements AfterContentInit {\n @ContentChild(SuiSidebarComponent) public suiSidebar!: SuiSidebarComponent;\n @ContentChild(SuiSidebarPusherComponent) public suiPusher!: SuiSidebarPusherComponent;\n\n public ngAfterContentInit(): void {\n if (!this.suiSidebar) {\n throw new Error('You must include a <sui-sidebar> element within the container.');\n }\n\n if (!this.suiPusher) {\n throw new Error('You must include a <sui-sidebar-pusher> element within the container.');\n }\n\n this.suiSidebar.visibleChange\n .subscribe((isVisible) => {\n this.suiPusher.isSidebarOpen = isVisible;\n });\n }\n}\n","/**\n * Created by bolorundurowb on 12/30/2020\n */\n\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuiSidebarContainerComponent } from './sidebar-container.component';\nimport { SuiSidebarPusherComponent } from './sidebar-pusher.component';\nimport { SuiSidebarComponent } from './sidebar.component';\nimport { SuiSidebarService } from './sidebar.service';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiSidebarComponent,\n SuiSidebarPusherComponent,\n SuiSidebarContainerComponent\n ],\n exports: [\n SuiSidebarComponent,\n SuiSidebarPusherComponent,\n SuiSidebarContainerComponent\n ],\n providers: [\n SuiSidebarService\n ]\n})\nexport class SuiSidebarModule {\n}\n","/**\n * Created by bolorundurowb on 12/30/2020\n */\n\nexport * from './sidebar-container.component';\nexport * from './sidebar-pusher.component';\nexport * from './sidebar.component';\nexport * from './sidebar.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -420,8 +420,8 @@ class SuiStickyDirective {
420
420
  this.resetLayout();
421
421
  this.cache = null;
422
422
  }
423
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiStickyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
424
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.7", type: SuiStickyDirective, isStandalone: true, selector: "[suiSticky]", inputs: { suiContext: "suiContext", suiScrollContext: "suiScrollContext", suiOffset: "suiOffset", suiBottomOffset: "suiBottomOffset", suiPushing: "suiPushing", suiSetSize: "suiSetSize", suiJitter: "suiJitter", suiObserveChanges: "suiObserveChanges" }, outputs: { suiOnReposition: "suiOnReposition", suiOnScroll: "suiOnScroll", suiOnStick: "suiOnStick", suiOnUnstick: "suiOnUnstick", suiOnTop: "suiOnTop", suiOnBottom: "suiOnBottom" }, host: { properties: { "class.ui": "this.classUi", "class.sticky": "this.classSticky", "class.fixed": "this.fixed", "class.bound": "this.bound", "class.top": "this.topState", "class.bottom": "this.bottomState" } }, exportAs: ["suiSticky"], ngImport: i0 }); }
423
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiStickyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
424
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.23", type: SuiStickyDirective, isStandalone: true, selector: "[suiSticky]", inputs: { suiContext: "suiContext", suiScrollContext: "suiScrollContext", suiOffset: "suiOffset", suiBottomOffset: "suiBottomOffset", suiPushing: "suiPushing", suiSetSize: "suiSetSize", suiJitter: "suiJitter", suiObserveChanges: "suiObserveChanges" }, outputs: { suiOnReposition: "suiOnReposition", suiOnScroll: "suiOnScroll", suiOnStick: "suiOnStick", suiOnUnstick: "suiOnUnstick", suiOnTop: "suiOnTop", suiOnBottom: "suiOnBottom" }, host: { properties: { "class.ui": "this.classUi", "class.sticky": "this.classSticky", "class.fixed": "this.fixed", "class.bound": "this.bound", "class.top": "this.topState", "class.bottom": "this.bottomState" } }, exportAs: ["suiSticky"], ngImport: i0 }); }
425
425
  }
426
426
  __decorate([
427
427
  InputBoolean()
@@ -432,7 +432,7 @@ __decorate([
432
432
  __decorate([
433
433
  InputBoolean()
434
434
  ], SuiStickyDirective.prototype, "suiObserveChanges", void 0);
435
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiStickyDirective, decorators: [{
435
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiStickyDirective, decorators: [{
436
436
  type: Directive,
437
437
  args: [{
438
438
  standalone: true,
@@ -488,11 +488,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
488
488
  }] } });
489
489
 
490
490
  class SuiStickyModule {
491
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiStickyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
492
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.7", ngImport: i0, type: SuiStickyModule, imports: [CommonModule, SuiStickyDirective], exports: [SuiStickyDirective] }); }
493
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiStickyModule, imports: [CommonModule] }); }
491
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiStickyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
492
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: SuiStickyModule, imports: [CommonModule, SuiStickyDirective], exports: [SuiStickyDirective] }); }
493
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiStickyModule, imports: [CommonModule] }); }
494
494
  }
495
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiStickyModule, decorators: [{
495
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiStickyModule, decorators: [{
496
496
  type: NgModule,
497
497
  args: [{
498
498
  imports: [CommonModule, SuiStickyDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-semantic-modules-sticky.mjs","sources":["../../src/modules/sticky/sticky.directive.ts","../../src/modules/sticky/sticky.module.ts","../../src/modules/sticky/ngx-semantic-modules-sticky.ts"],"sourcesContent":["/**\n * Semantic UI [Sticky](https://semantic-ui.com/modules/sticky.html) — Angular port of `$.fn.sticky`.\n * Add `suiSticky` to the element that should stick; set `suiContext` to a selector or element for bounds.\n * Requires Semantic UI sticky CSS (and typically `position: relative` on the rail/column container).\n */\n\nimport { DOCUMENT } from '@angular/common';\nimport { AfterViewInit, ChangeDetectorRef, Directive, ElementRef, EventEmitter, HostBinding, Input, NgZone, OnDestroy, OnInit, Output, Renderer2, inject } from '@angular/core';\nimport { InputBoolean } from 'ngx-semantic/core/util';\nimport { Subject, fromEvent } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n/** Cached layout (see Semantic UI `save.positions`). */\nexport interface SuiStickyCache {\n fits: boolean;\n sameHeight: boolean;\n scrollContext: {height: number};\n element: {\n margin: {top: number; bottom: number};\n top: number;\n left: number;\n width: number;\n height: number;\n bottom: number;\n };\n context: {\n top: number;\n height: number;\n bottom: number;\n };\n}\n\n@Directive({\n standalone: true,\n selector: '[suiSticky]',\n exportAs: 'suiSticky'\n})\nexport class SuiStickyDirective implements OnInit, AfterViewInit, OnDestroy {\n private readonly document = inject<Document>(DOCUMENT);\n private readonly el = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly renderer = inject(Renderer2);\n private readonly zone = inject(NgZone);\n private readonly cdr = inject(ChangeDetectorRef);\n\n @Input() public suiContext: string | HTMLElement | null = null;\n @Input() public suiScrollContext: 'window' | string = 'window';\n @Input() public suiOffset = 0;\n @Input() public suiBottomOffset = 0;\n @Input() @InputBoolean() public suiPushing = false;\n @Input() @InputBoolean() public suiSetSize = true;\n @Input() public suiJitter = 5;\n @Input() @InputBoolean() public suiObserveChanges = false;\n\n @Output() public readonly suiOnReposition = new EventEmitter<void>();\n @Output() public readonly suiOnScroll = new EventEmitter<void>();\n @Output() public readonly suiOnStick = new EventEmitter<void>();\n @Output() public readonly suiOnUnstick = new EventEmitter<void>();\n @Output() public readonly suiOnTop = new EventEmitter<void>();\n @Output() public readonly suiOnBottom = new EventEmitter<void>();\n\n public cache: SuiStickyCache | null = null;\n\n @HostBinding('class.ui') protected readonly classUi = true;\n @HostBinding('class.sticky') protected readonly classSticky = true;\n @HostBinding('class.fixed') fixed = false;\n @HostBinding('class.bound') bound = false;\n @HostBinding('class.top') topState = false;\n @HostBinding('class.bottom') bottomState = false;\n\n private readonly destroy$ = new Subject<void>();\n private lastScroll?: number;\n private elementScroll = 0;\n private scrollEl: Window | HTMLElement = window;\n private contextEl: HTMLElement | null = null;\n private containerEl: HTMLElement | null = null;\n private mutationObserver: MutationObserver | null = null;\n private refreshTimer: ReturnType<typeof setTimeout> | null = null;\n\n public ngOnInit(): void {\n this.scrollEl = this.resolveScrollElement();\n const win = this.document.defaultView!;\n this.zone.runOutsideAngular(() => {\n const scrollTarget = this.scrollEl === window ? win : this.scrollEl;\n fromEvent(scrollTarget, 'scroll', { passive: true })\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n requestAnimationFrame(() => {\n const top = this.readScrollTop();\n this.zone.run(() => {\n this.stick(top);\n this.suiOnScroll.emit();\n });\n });\n });\n fromEvent(win, 'resize', { passive: true })\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n requestAnimationFrame(() => this.zone.run(() => this.refresh(false)));\n });\n });\n }\n\n public ngAfterViewInit(): void {\n queueMicrotask(() => this.refresh(true));\n }\n\n public ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n this.mutationObserver?.disconnect();\n if (this.refreshTimer) {\n clearTimeout(this.refreshTimer);\n }\n this.reset();\n }\n\n /** Mirrors `sticky('refresh')`. */\n public refresh(hardRefresh = false): void {\n this.resetLayout();\n this.determineContainer();\n this.determineContext();\n if (!this.contextEl) {\n return;\n }\n if (hardRefresh) {\n this.determineContainer();\n }\n this.savePositions();\n this.suiOnReposition.emit();\n this.cdr.markForCheck();\n if (this.suiObserveChanges && typeof MutationObserver !== 'undefined' && !this.mutationObserver) {\n this.mutationObserver = new MutationObserver(() => this.scheduleRefresh());\n this.mutationObserver.observe(this.contextEl, { childList: true, subtree: true });\n this.mutationObserver.observe(this.el.nativeElement, { childList: true, subtree: true });\n }\n }\n\n private scheduleRefresh(): void {\n if (this.refreshTimer) {\n clearTimeout(this.refreshTimer);\n }\n this.refreshTimer = setTimeout(() => {\n this.refreshTimer = null;\n this.refresh(false);\n }, 100);\n }\n\n private resolveScrollElement(): Window | HTMLElement {\n if (this.suiScrollContext === 'window') {\n return window;\n }\n const found = this.document.querySelector(this.suiScrollContext);\n return (found as HTMLElement) || window;\n }\n\n private readScrollTop(): number {\n return this.scrollEl === window ? window.scrollY : (this.scrollEl as HTMLElement).scrollTop;\n }\n\n private determineContainer(): void {\n const host = this.el.nativeElement;\n this.containerEl = (host.offsetParent as HTMLElement) || host.parentElement;\n }\n\n private determineContext(): void {\n if (this.suiContext === null) {\n this.contextEl = this.containerEl;\n return;\n }\n if (typeof this.suiContext === 'string') {\n this.contextEl = this.document.querySelector(this.suiContext) as HTMLElement | null;\n return;\n }\n this.contextEl = this.suiContext;\n }\n\n private savePositions(): void {\n const mod = this.el.nativeElement;\n const ctx = this.contextEl!;\n const scrollH = window.innerHeight;\n\n const cs = getComputedStyle(mod);\n const marginTop = parseInt(cs.marginTop, 10) || 0;\n const marginBottom = parseInt(cs.marginBottom, 10) || 0;\n\n const sy = window.scrollY;\n const sx = window.scrollX;\n const er = mod.getBoundingClientRect();\n const cr = ctx.getBoundingClientRect();\n\n const elementOffsetTop = er.top + sy;\n const contextOffsetTop = cr.top + sy;\n const elementOffsetLeft = er.left + sx;\n\n const elementHeight = mod.offsetHeight;\n const contextHeight = ctx.offsetHeight;\n\n const elementTop = elementOffsetTop - marginTop;\n const contextBottom = contextOffsetTop + contextHeight;\n\n this.cache = {\n fits: elementHeight + this.suiOffset <= scrollH,\n sameHeight: elementHeight === contextHeight,\n scrollContext: { height: scrollH },\n element: {\n margin: { top: marginTop, bottom: marginBottom },\n top: elementTop,\n left: elementOffsetLeft,\n width: mod.offsetWidth,\n height: elementHeight,\n bottom: elementOffsetTop + elementHeight\n },\n context: {\n top: contextOffsetTop,\n height: contextHeight,\n bottom: contextBottom\n }\n };\n\n this.setContainerSize();\n if (!this.isCacheValid()) {\n this.cache = null;\n this.resetLayout();\n return;\n }\n this.stick(this.readScrollTop());\n }\n\n private isCacheValid(): boolean {\n if (!this.cache) {\n return false;\n }\n const style = getComputedStyle(this.el.nativeElement);\n if (style.display === 'none' || style.visibility === 'hidden') {\n return false;\n }\n return this.cache.element.height <= this.cache.context.height;\n }\n\n private setContainerSize(): void {\n if (!this.cache || !this.containerEl) {\n return;\n }\n const tag = this.containerEl.tagName;\n if (tag === 'HTML' || tag === 'BODY') {\n return;\n }\n const ch = this.containerEl.offsetHeight;\n const ctxH = this.cache.context.height;\n if (Math.abs(ch - ctxH) > this.suiJitter) {\n this.renderer.setStyle(this.containerEl, 'height', `${ctxH}px`);\n }\n }\n\n /**\n * Port of Semantic UI `module.stick` — initial / fixed-top / bound-bottom transitions\n * (simplified: no oversized inner scroll in this version).\n */\n private stick(cachedPosition: number): void {\n const cache = this.cache;\n if (!cache || cache.sameHeight) {\n return;\n }\n\n const offset = this.bottomState && this.suiPushing ? this.suiBottomOffset : this.suiOffset;\n const scroll = {\n top: cachedPosition + offset,\n bottom: cachedPosition + offset + cache.scrollContext.height\n };\n\n const element = cache.element;\n const context = cache.context;\n const elementScroll = cache.fits ? 0 : this.computeElementScroll(cachedPosition);\n\n if (this.isInitialPosition()) {\n if (scroll.top >= context.bottom) {\n this.bindBottom();\n } else if (scroll.top > element.top) {\n if (element.height + scroll.top - elementScroll >= context.bottom) {\n this.bindBottom();\n } else {\n this.fixTop();\n }\n }\n } else if (this.fixed) {\n if (this.topState) {\n if (scroll.top <= element.top) {\n this.setInitialPosition();\n } else if (element.height + scroll.top - elementScroll >= context.bottom) {\n this.bindBottom();\n } else if (!cache.fits) {\n this.applyElementScroll(elementScroll);\n this.lastScroll = scroll.top;\n }\n } else if (this.bottomState) {\n if (scroll.bottom - element.height <= element.top) {\n this.setInitialPosition();\n } else if (scroll.bottom >= context.bottom) {\n this.bindBottom();\n } else if (!cache.fits) {\n this.applyElementScroll(elementScroll);\n this.lastScroll = scroll.top;\n }\n }\n } else if (this.bound && this.bottomState) {\n if (scroll.top <= element.top) {\n this.setInitialPosition();\n } else if (this.suiPushing) {\n if (this.bound && scroll.bottom <= context.bottom) {\n this.fixBottom();\n }\n } else {\n if (this.bound && scroll.top <= context.bottom - element.height) {\n this.fixTop();\n }\n }\n }\n\n this.lastScroll = cachedPosition;\n this.cdr.markForCheck();\n }\n\n private isInitialPosition(): boolean {\n return !this.fixed && !this.bound;\n }\n\n private computeElementScroll(scroll: number): number {\n const cache = this.cache!;\n const delta = this.lastScroll === undefined ? 0 : scroll - this.lastScroll;\n const maxScroll = cache.element.height - cache.scrollContext.height + this.suiOffset;\n let es = this.elementScroll;\n if (this.topState) {\n es = Math.abs(parseInt(this.el.nativeElement.style.top || '0', 10)) || 0;\n } else if (this.bottomState) {\n es = Math.abs(parseInt(this.el.nativeElement.style.bottom || '0', 10)) || 0;\n }\n const possible = es + delta;\n if (cache.fits || possible < 0) {\n return 0;\n }\n if (possible > maxScroll) {\n return maxScroll;\n }\n return possible;\n }\n\n private applyElementScroll(scroll: number): void {\n this.elementScroll = scroll;\n if (this.topState) {\n this.renderer.setStyle(this.el.nativeElement, 'bottom', '');\n this.renderer.setStyle(this.el.nativeElement, 'top', `${-scroll}px`);\n }\n if (this.bottomState) {\n this.renderer.setStyle(this.el.nativeElement, 'top', '');\n this.renderer.setStyle(this.el.nativeElement, 'bottom', `${scroll}px`);\n }\n }\n\n private bindBottom(): void {\n this.unfix();\n this.unbind();\n this.clearPositionStyles();\n this.renderer.removeStyle(this.el.nativeElement, 'margin-top');\n this.fixed = false;\n this.bound = true;\n this.topState = false;\n this.bottomState = true;\n this.suiOnBottom.emit();\n this.suiOnUnstick.emit();\n }\n\n private fixTop(): void {\n this.unfix();\n this.unbind();\n const cache = this.cache!;\n if (this.suiSetSize) {\n this.renderer.setStyle(this.el.nativeElement, 'width', `${cache.element.width}px`, 2);\n this.renderer.setStyle(this.el.nativeElement, 'height', `${cache.element.height}px`, 2);\n }\n if (this.containerEl) {\n this.renderer.setStyle(this.containerEl, 'min-height', `${cache.element.height}px`);\n }\n this.renderer.setStyle(this.el.nativeElement, 'margin-top', `${this.suiOffset}px`);\n this.renderer.setStyle(this.el.nativeElement, 'left', `${cache.element.left}px`);\n this.renderer.setStyle(this.el.nativeElement, 'bottom', '');\n this.renderer.setStyle(this.el.nativeElement, 'margin-bottom', '');\n this.fixed = true;\n this.bound = false;\n this.topState = true;\n this.bottomState = false;\n this.suiOnStick.emit();\n }\n\n private fixBottom(): void {\n this.unfix();\n this.unbind();\n const cache = this.cache!;\n if (this.suiSetSize) {\n this.renderer.setStyle(this.el.nativeElement, 'width', `${cache.element.width}px`, 2);\n this.renderer.setStyle(this.el.nativeElement, 'height', `${cache.element.height}px`, 2);\n }\n if (this.containerEl) {\n this.renderer.setStyle(this.containerEl, 'min-height', `${cache.element.height}px`);\n }\n this.renderer.setStyle(this.el.nativeElement, 'margin-top', `${this.suiOffset}px`);\n this.renderer.setStyle(this.el.nativeElement, 'left', `${cache.element.left}px`);\n this.fixed = true;\n this.bound = false;\n this.topState = false;\n this.bottomState = true;\n this.suiOnStick.emit();\n }\n\n private setInitialPosition(): void {\n const wasStuck = this.fixed || this.bound;\n this.unfix();\n this.unbind();\n this.lastScroll = undefined;\n this.elementScroll = 0;\n if (wasStuck) {\n this.suiOnUnstick.emit();\n }\n }\n\n private unbind(): void {\n if (!this.bound) {\n return;\n }\n this.bound = false;\n this.topState = false;\n this.bottomState = false;\n }\n\n private unfix(): void {\n if (!this.fixed) {\n return;\n }\n if (this.containerEl) {\n this.renderer.removeStyle(this.containerEl, 'min-height');\n }\n this.renderer.removeStyle(this.el.nativeElement, 'margin-top');\n this.renderer.removeStyle(this.el.nativeElement, 'left');\n this.renderer.removeStyle(this.el.nativeElement, 'width');\n this.renderer.removeStyle(this.el.nativeElement, 'height');\n this.renderer.removeStyle(this.el.nativeElement, 'top');\n this.renderer.removeStyle(this.el.nativeElement, 'bottom');\n this.fixed = false;\n this.topState = false;\n this.bottomState = false;\n }\n\n private clearPositionStyles(): void {\n this.renderer.removeStyle(this.el.nativeElement, 'left');\n this.renderer.removeStyle(this.el.nativeElement, 'top');\n this.renderer.removeStyle(this.el.nativeElement, 'bottom');\n this.renderer.removeStyle(this.el.nativeElement, 'margin-bottom');\n }\n\n private resetLayout(): void {\n this.unfix();\n this.unbind();\n this.clearPositionStyles();\n this.renderer.removeStyle(this.el.nativeElement, 'margin-top');\n if (this.containerEl) {\n this.renderer.removeStyle(this.containerEl, 'height');\n this.renderer.removeStyle(this.containerEl, 'min-height');\n }\n this.renderer.removeStyle(this.el.nativeElement, 'width');\n this.renderer.removeStyle(this.el.nativeElement, 'height');\n this.fixed = false;\n this.bound = false;\n this.topState = false;\n this.bottomState = false;\n }\n\n private reset(): void {\n this.resetLayout();\n this.cache = null;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuiStickyDirective } from './sticky.directive';\n\n@NgModule({\n imports: [CommonModule, SuiStickyDirective],\n exports: [SuiStickyDirective]\n})\nexport class SuiStickyModule {}\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":"ngx-semantic-modules-sticky.mjs","sources":["../../src/modules/sticky/sticky.directive.ts","../../src/modules/sticky/sticky.module.ts","../../src/modules/sticky/ngx-semantic-modules-sticky.ts"],"sourcesContent":["/**\n * Semantic UI [Sticky](https://semantic-ui.com/modules/sticky.html) — Angular port of `$.fn.sticky`.\n * Add `suiSticky` to the element that should stick; set `suiContext` to a selector or element for bounds.\n * Requires Semantic UI sticky CSS (and typically `position: relative` on the rail/column container).\n */\n\nimport { DOCUMENT } from '@angular/common';\nimport { AfterViewInit, ChangeDetectorRef, Directive, ElementRef, EventEmitter, HostBinding, Input, NgZone, OnDestroy, OnInit, Output, Renderer2, inject } from '@angular/core';\nimport { InputBoolean } from 'ngx-semantic/core/util';\nimport { Subject, fromEvent } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n/** Cached layout (see Semantic UI `save.positions`). */\nexport interface SuiStickyCache {\n fits: boolean;\n sameHeight: boolean;\n scrollContext: {height: number};\n element: {\n margin: {top: number; bottom: number};\n top: number;\n left: number;\n width: number;\n height: number;\n bottom: number;\n };\n context: {\n top: number;\n height: number;\n bottom: number;\n };\n}\n\n@Directive({\n standalone: true,\n selector: '[suiSticky]',\n exportAs: 'suiSticky'\n})\nexport class SuiStickyDirective implements OnInit, AfterViewInit, OnDestroy {\n private readonly document = inject<Document>(DOCUMENT);\n private readonly el = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly renderer = inject(Renderer2);\n private readonly zone = inject(NgZone);\n private readonly cdr = inject(ChangeDetectorRef);\n\n @Input() public suiContext: string | HTMLElement | null = null;\n @Input() public suiScrollContext: 'window' | string = 'window';\n @Input() public suiOffset = 0;\n @Input() public suiBottomOffset = 0;\n @Input() @InputBoolean() public suiPushing = false;\n @Input() @InputBoolean() public suiSetSize = true;\n @Input() public suiJitter = 5;\n @Input() @InputBoolean() public suiObserveChanges = false;\n\n @Output() public readonly suiOnReposition = new EventEmitter<void>();\n @Output() public readonly suiOnScroll = new EventEmitter<void>();\n @Output() public readonly suiOnStick = new EventEmitter<void>();\n @Output() public readonly suiOnUnstick = new EventEmitter<void>();\n @Output() public readonly suiOnTop = new EventEmitter<void>();\n @Output() public readonly suiOnBottom = new EventEmitter<void>();\n\n public cache: SuiStickyCache | null = null;\n\n @HostBinding('class.ui') protected readonly classUi = true;\n @HostBinding('class.sticky') protected readonly classSticky = true;\n @HostBinding('class.fixed') fixed = false;\n @HostBinding('class.bound') bound = false;\n @HostBinding('class.top') topState = false;\n @HostBinding('class.bottom') bottomState = false;\n\n private readonly destroy$ = new Subject<void>();\n private lastScroll?: number;\n private elementScroll = 0;\n private scrollEl: Window | HTMLElement = window;\n private contextEl: HTMLElement | null = null;\n private containerEl: HTMLElement | null = null;\n private mutationObserver: MutationObserver | null = null;\n private refreshTimer: ReturnType<typeof setTimeout> | null = null;\n\n public ngOnInit(): void {\n this.scrollEl = this.resolveScrollElement();\n const win = this.document.defaultView!;\n this.zone.runOutsideAngular(() => {\n const scrollTarget = this.scrollEl === window ? win : this.scrollEl;\n fromEvent(scrollTarget, 'scroll', { passive: true })\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n requestAnimationFrame(() => {\n const top = this.readScrollTop();\n this.zone.run(() => {\n this.stick(top);\n this.suiOnScroll.emit();\n });\n });\n });\n fromEvent(win, 'resize', { passive: true })\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n requestAnimationFrame(() => this.zone.run(() => this.refresh(false)));\n });\n });\n }\n\n public ngAfterViewInit(): void {\n queueMicrotask(() => this.refresh(true));\n }\n\n public ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n this.mutationObserver?.disconnect();\n if (this.refreshTimer) {\n clearTimeout(this.refreshTimer);\n }\n this.reset();\n }\n\n /** Mirrors `sticky('refresh')`. */\n public refresh(hardRefresh = false): void {\n this.resetLayout();\n this.determineContainer();\n this.determineContext();\n if (!this.contextEl) {\n return;\n }\n if (hardRefresh) {\n this.determineContainer();\n }\n this.savePositions();\n this.suiOnReposition.emit();\n this.cdr.markForCheck();\n if (this.suiObserveChanges && typeof MutationObserver !== 'undefined' && !this.mutationObserver) {\n this.mutationObserver = new MutationObserver(() => this.scheduleRefresh());\n this.mutationObserver.observe(this.contextEl, { childList: true, subtree: true });\n this.mutationObserver.observe(this.el.nativeElement, { childList: true, subtree: true });\n }\n }\n\n private scheduleRefresh(): void {\n if (this.refreshTimer) {\n clearTimeout(this.refreshTimer);\n }\n this.refreshTimer = setTimeout(() => {\n this.refreshTimer = null;\n this.refresh(false);\n }, 100);\n }\n\n private resolveScrollElement(): Window | HTMLElement {\n if (this.suiScrollContext === 'window') {\n return window;\n }\n const found = this.document.querySelector(this.suiScrollContext);\n return (found as HTMLElement) || window;\n }\n\n private readScrollTop(): number {\n return this.scrollEl === window ? window.scrollY : (this.scrollEl as HTMLElement).scrollTop;\n }\n\n private determineContainer(): void {\n const host = this.el.nativeElement;\n this.containerEl = (host.offsetParent as HTMLElement) || host.parentElement;\n }\n\n private determineContext(): void {\n if (this.suiContext === null) {\n this.contextEl = this.containerEl;\n return;\n }\n if (typeof this.suiContext === 'string') {\n this.contextEl = this.document.querySelector(this.suiContext) as HTMLElement | null;\n return;\n }\n this.contextEl = this.suiContext;\n }\n\n private savePositions(): void {\n const mod = this.el.nativeElement;\n const ctx = this.contextEl!;\n const scrollH = window.innerHeight;\n\n const cs = getComputedStyle(mod);\n const marginTop = parseInt(cs.marginTop, 10) || 0;\n const marginBottom = parseInt(cs.marginBottom, 10) || 0;\n\n const sy = window.scrollY;\n const sx = window.scrollX;\n const er = mod.getBoundingClientRect();\n const cr = ctx.getBoundingClientRect();\n\n const elementOffsetTop = er.top + sy;\n const contextOffsetTop = cr.top + sy;\n const elementOffsetLeft = er.left + sx;\n\n const elementHeight = mod.offsetHeight;\n const contextHeight = ctx.offsetHeight;\n\n const elementTop = elementOffsetTop - marginTop;\n const contextBottom = contextOffsetTop + contextHeight;\n\n this.cache = {\n fits: elementHeight + this.suiOffset <= scrollH,\n sameHeight: elementHeight === contextHeight,\n scrollContext: { height: scrollH },\n element: {\n margin: { top: marginTop, bottom: marginBottom },\n top: elementTop,\n left: elementOffsetLeft,\n width: mod.offsetWidth,\n height: elementHeight,\n bottom: elementOffsetTop + elementHeight\n },\n context: {\n top: contextOffsetTop,\n height: contextHeight,\n bottom: contextBottom\n }\n };\n\n this.setContainerSize();\n if (!this.isCacheValid()) {\n this.cache = null;\n this.resetLayout();\n return;\n }\n this.stick(this.readScrollTop());\n }\n\n private isCacheValid(): boolean {\n if (!this.cache) {\n return false;\n }\n const style = getComputedStyle(this.el.nativeElement);\n if (style.display === 'none' || style.visibility === 'hidden') {\n return false;\n }\n return this.cache.element.height <= this.cache.context.height;\n }\n\n private setContainerSize(): void {\n if (!this.cache || !this.containerEl) {\n return;\n }\n const tag = this.containerEl.tagName;\n if (tag === 'HTML' || tag === 'BODY') {\n return;\n }\n const ch = this.containerEl.offsetHeight;\n const ctxH = this.cache.context.height;\n if (Math.abs(ch - ctxH) > this.suiJitter) {\n this.renderer.setStyle(this.containerEl, 'height', `${ctxH}px`);\n }\n }\n\n /**\n * Port of Semantic UI `module.stick` — initial / fixed-top / bound-bottom transitions\n * (simplified: no oversized inner scroll in this version).\n */\n private stick(cachedPosition: number): void {\n const cache = this.cache;\n if (!cache || cache.sameHeight) {\n return;\n }\n\n const offset = this.bottomState && this.suiPushing ? this.suiBottomOffset : this.suiOffset;\n const scroll = {\n top: cachedPosition + offset,\n bottom: cachedPosition + offset + cache.scrollContext.height\n };\n\n const element = cache.element;\n const context = cache.context;\n const elementScroll = cache.fits ? 0 : this.computeElementScroll(cachedPosition);\n\n if (this.isInitialPosition()) {\n if (scroll.top >= context.bottom) {\n this.bindBottom();\n } else if (scroll.top > element.top) {\n if (element.height + scroll.top - elementScroll >= context.bottom) {\n this.bindBottom();\n } else {\n this.fixTop();\n }\n }\n } else if (this.fixed) {\n if (this.topState) {\n if (scroll.top <= element.top) {\n this.setInitialPosition();\n } else if (element.height + scroll.top - elementScroll >= context.bottom) {\n this.bindBottom();\n } else if (!cache.fits) {\n this.applyElementScroll(elementScroll);\n this.lastScroll = scroll.top;\n }\n } else if (this.bottomState) {\n if (scroll.bottom - element.height <= element.top) {\n this.setInitialPosition();\n } else if (scroll.bottom >= context.bottom) {\n this.bindBottom();\n } else if (!cache.fits) {\n this.applyElementScroll(elementScroll);\n this.lastScroll = scroll.top;\n }\n }\n } else if (this.bound && this.bottomState) {\n if (scroll.top <= element.top) {\n this.setInitialPosition();\n } else if (this.suiPushing) {\n if (this.bound && scroll.bottom <= context.bottom) {\n this.fixBottom();\n }\n } else {\n if (this.bound && scroll.top <= context.bottom - element.height) {\n this.fixTop();\n }\n }\n }\n\n this.lastScroll = cachedPosition;\n this.cdr.markForCheck();\n }\n\n private isInitialPosition(): boolean {\n return !this.fixed && !this.bound;\n }\n\n private computeElementScroll(scroll: number): number {\n const cache = this.cache!;\n const delta = this.lastScroll === undefined ? 0 : scroll - this.lastScroll;\n const maxScroll = cache.element.height - cache.scrollContext.height + this.suiOffset;\n let es = this.elementScroll;\n if (this.topState) {\n es = Math.abs(parseInt(this.el.nativeElement.style.top || '0', 10)) || 0;\n } else if (this.bottomState) {\n es = Math.abs(parseInt(this.el.nativeElement.style.bottom || '0', 10)) || 0;\n }\n const possible = es + delta;\n if (cache.fits || possible < 0) {\n return 0;\n }\n if (possible > maxScroll) {\n return maxScroll;\n }\n return possible;\n }\n\n private applyElementScroll(scroll: number): void {\n this.elementScroll = scroll;\n if (this.topState) {\n this.renderer.setStyle(this.el.nativeElement, 'bottom', '');\n this.renderer.setStyle(this.el.nativeElement, 'top', `${-scroll}px`);\n }\n if (this.bottomState) {\n this.renderer.setStyle(this.el.nativeElement, 'top', '');\n this.renderer.setStyle(this.el.nativeElement, 'bottom', `${scroll}px`);\n }\n }\n\n private bindBottom(): void {\n this.unfix();\n this.unbind();\n this.clearPositionStyles();\n this.renderer.removeStyle(this.el.nativeElement, 'margin-top');\n this.fixed = false;\n this.bound = true;\n this.topState = false;\n this.bottomState = true;\n this.suiOnBottom.emit();\n this.suiOnUnstick.emit();\n }\n\n private fixTop(): void {\n this.unfix();\n this.unbind();\n const cache = this.cache!;\n if (this.suiSetSize) {\n this.renderer.setStyle(this.el.nativeElement, 'width', `${cache.element.width}px`, 2);\n this.renderer.setStyle(this.el.nativeElement, 'height', `${cache.element.height}px`, 2);\n }\n if (this.containerEl) {\n this.renderer.setStyle(this.containerEl, 'min-height', `${cache.element.height}px`);\n }\n this.renderer.setStyle(this.el.nativeElement, 'margin-top', `${this.suiOffset}px`);\n this.renderer.setStyle(this.el.nativeElement, 'left', `${cache.element.left}px`);\n this.renderer.setStyle(this.el.nativeElement, 'bottom', '');\n this.renderer.setStyle(this.el.nativeElement, 'margin-bottom', '');\n this.fixed = true;\n this.bound = false;\n this.topState = true;\n this.bottomState = false;\n this.suiOnStick.emit();\n }\n\n private fixBottom(): void {\n this.unfix();\n this.unbind();\n const cache = this.cache!;\n if (this.suiSetSize) {\n this.renderer.setStyle(this.el.nativeElement, 'width', `${cache.element.width}px`, 2);\n this.renderer.setStyle(this.el.nativeElement, 'height', `${cache.element.height}px`, 2);\n }\n if (this.containerEl) {\n this.renderer.setStyle(this.containerEl, 'min-height', `${cache.element.height}px`);\n }\n this.renderer.setStyle(this.el.nativeElement, 'margin-top', `${this.suiOffset}px`);\n this.renderer.setStyle(this.el.nativeElement, 'left', `${cache.element.left}px`);\n this.fixed = true;\n this.bound = false;\n this.topState = false;\n this.bottomState = true;\n this.suiOnStick.emit();\n }\n\n private setInitialPosition(): void {\n const wasStuck = this.fixed || this.bound;\n this.unfix();\n this.unbind();\n this.lastScroll = undefined;\n this.elementScroll = 0;\n if (wasStuck) {\n this.suiOnUnstick.emit();\n }\n }\n\n private unbind(): void {\n if (!this.bound) {\n return;\n }\n this.bound = false;\n this.topState = false;\n this.bottomState = false;\n }\n\n private unfix(): void {\n if (!this.fixed) {\n return;\n }\n if (this.containerEl) {\n this.renderer.removeStyle(this.containerEl, 'min-height');\n }\n this.renderer.removeStyle(this.el.nativeElement, 'margin-top');\n this.renderer.removeStyle(this.el.nativeElement, 'left');\n this.renderer.removeStyle(this.el.nativeElement, 'width');\n this.renderer.removeStyle(this.el.nativeElement, 'height');\n this.renderer.removeStyle(this.el.nativeElement, 'top');\n this.renderer.removeStyle(this.el.nativeElement, 'bottom');\n this.fixed = false;\n this.topState = false;\n this.bottomState = false;\n }\n\n private clearPositionStyles(): void {\n this.renderer.removeStyle(this.el.nativeElement, 'left');\n this.renderer.removeStyle(this.el.nativeElement, 'top');\n this.renderer.removeStyle(this.el.nativeElement, 'bottom');\n this.renderer.removeStyle(this.el.nativeElement, 'margin-bottom');\n }\n\n private resetLayout(): void {\n this.unfix();\n this.unbind();\n this.clearPositionStyles();\n this.renderer.removeStyle(this.el.nativeElement, 'margin-top');\n if (this.containerEl) {\n this.renderer.removeStyle(this.containerEl, 'height');\n this.renderer.removeStyle(this.containerEl, 'min-height');\n }\n this.renderer.removeStyle(this.el.nativeElement, 'width');\n this.renderer.removeStyle(this.el.nativeElement, 'height');\n this.fixed = false;\n this.bound = false;\n this.topState = false;\n this.bottomState = false;\n }\n\n private reset(): void {\n this.resetLayout();\n this.cache = null;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SuiStickyDirective } from './sticky.directive';\n\n@NgModule({\n imports: [CommonModule, SuiStickyDirective],\n exports: [SuiStickyDirective]\n})\nexport class SuiStickyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -25,8 +25,8 @@ class SuiTabComponent {
25
25
  ClassUtils.getPropClass(this.disabled, 'disabled')
26
26
  ].join(' ');
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.7", type: SuiTabComponent, isStandalone: true, selector: "sui-tab", inputs: { suiContent: "suiContent", suiTitle: "suiTitle", suiIcon: "suiIcon", suiLabel: "suiLabel", suiLoading: "suiLoading", disabled: "disabled", suiLabelColour: "suiLabelColour", suiLabelCircular: "suiLabelCircular" }, host: { properties: { "class": "this.classes" } }, viewQueries: [{ propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true, static: true }], exportAs: ["suiTab"], ngImport: i0, template: `
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: SuiTabComponent, isStandalone: true, selector: "sui-tab", inputs: { suiContent: "suiContent", suiTitle: "suiTitle", suiIcon: "suiIcon", suiLabel: "suiLabel", suiLoading: "suiLoading", disabled: "disabled", suiLabelColour: "suiLabelColour", suiLabelCircular: "suiLabelCircular" }, host: { properties: { "class": "this.classes" } }, viewQueries: [{ propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true, static: true }], exportAs: ["suiTab"], ngImport: i0, template: `
30
30
  <ng-template #contentTemplate>
31
31
  <ng-content></ng-content>
32
32
  </ng-template>
@@ -41,7 +41,7 @@ __decorate([
41
41
  __decorate([
42
42
  InputBoolean()
43
43
  ], SuiTabComponent.prototype, "suiLabelCircular", void 0);
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTabComponent, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTabComponent, decorators: [{
45
45
  type: Component,
46
46
  args: [{
47
47
  standalone: true,
@@ -153,8 +153,8 @@ class SuiTabsComponent {
153
153
  this.hasTabs = tabs.length > 0;
154
154
  this.currentTab = tabs[this.selectedTabIndex];
155
155
  }
156
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
157
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.7", type: SuiTabsComponent, isStandalone: true, selector: "sui-tabs", inputs: { suiTabMenuPosition: "suiTabMenuPosition", suiTabType: "suiTabType", suiColour: "suiColour", suiInverted: "suiInverted" }, outputs: { suiSelectedIndexChanged: "suiSelectedIndexChanged" }, queries: [{ propertyName: "tabs", predicate: SuiTabComponent }], ngImport: i0, template: `
156
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
157
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: SuiTabsComponent, isStandalone: true, selector: "sui-tabs", inputs: { suiTabMenuPosition: "suiTabMenuPosition", suiTabType: "suiTabType", suiColour: "suiColour", suiInverted: "suiInverted" }, outputs: { suiSelectedIndexChanged: "suiSelectedIndexChanged" }, queries: [{ propertyName: "tabs", predicate: SuiTabComponent }], ngImport: i0, template: `
158
158
  @if (hasTabs) {
159
159
  @if (isTop) {
160
160
  <ng-container *ngTemplateOutlet="tabMenu"></ng-container>
@@ -214,7 +214,7 @@ class SuiTabsComponent {
214
214
  __decorate([
215
215
  InputBoolean()
216
216
  ], SuiTabsComponent.prototype, "suiInverted", void 0);
217
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTabsComponent, decorators: [{
217
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTabsComponent, decorators: [{
218
218
  type: Component,
219
219
  args: [{
220
220
  standalone: true,
@@ -306,15 +306,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
306
306
  * Created by bolorundurowb on 12/22/2020
307
307
  */
308
308
  class SuiTabsModule {
309
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
310
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.7", ngImport: i0, type: SuiTabsModule, imports: [CommonModule,
309
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
310
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: SuiTabsModule, imports: [CommonModule,
311
311
  SuiTabComponent,
312
312
  SuiTabsComponent], exports: [SuiTabComponent,
313
313
  SuiTabsComponent] }); }
314
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTabsModule, imports: [CommonModule,
314
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTabsModule, imports: [CommonModule,
315
315
  SuiTabsComponent] }); }
316
316
  }
317
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTabsModule, decorators: [{
317
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTabsModule, decorators: [{
318
318
  type: NgModule,
319
319
  args: [{
320
320
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-semantic-modules-tabs.mjs","sources":["../../src/modules/tabs/tab.component.ts","../../src/modules/tabs/tabs.component.ts","../../src/modules/tabs/tabs.module.ts","../../src/modules/tabs/public-api.ts","../../src/modules/tabs/ngx-semantic-modules-tabs.ts"],"sourcesContent":["/**\n * Created by bolorundurowb on 12/22/2020\n */\n\nimport { Component, HostBinding, Input, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiColour } from 'ngx-semantic/core/enums';\n\n@Component({\n standalone: true,\n selector: 'sui-tab',\n exportAs: 'suiTab',\n preserveWhitespaces: false,\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-template #contentTemplate>\n <ng-content></ng-content>\n </ng-template>\n `\n})\nexport class SuiTabComponent {\n @Input() public suiContent!: TemplateRef<any>;\n @Input() public suiTitle: string | null = null;\n @Input() public suiIcon: string | null = null;\n @Input() public suiLabel: string | number | null = null;\n @Input() @InputBoolean() public suiLoading = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() public suiLabelColour: SuiColour = null;\n @Input() @InputBoolean() public suiLabelCircular = false;\n\n @ViewChild('contentTemplate', { static: true }) public contentTemplate!: TemplateRef<any>;\n\n @HostBinding('class')\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiLoading, 'loading'),\n ClassUtils.getPropClass(this.disabled, 'disabled')\n ].join(' ');\n }\n}\n","/**\n * Created by bolorundurowb on 12/22/2020\n */\n\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n Component,\n ContentChildren, EventEmitter,\n Input, Output,\n QueryList, ViewEncapsulation\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiTabComponent } from './tab.component';\nimport { SuiColour } from 'ngx-semantic/core/enums';\nimport { SuiMenuAttachment, SuiMenuDirective, SuiMenuItemDirective } from 'ngx-semantic/collections/menu';\nimport { SuiSegmentAttachment, SuiSegmentDirective } from 'ngx-semantic/elements/segment';\nimport { SuiIconDirective } from 'ngx-semantic/elements/icon';\nimport { SuiLabelDirective } from 'ngx-semantic/elements/label';\n\nexport type SuiTabType = 'basic' | 'pointing' | 'secondary' | 'text' | 'bordered' | 'borderless';\nexport type SuiTabMenuPosition = 'top' | 'bottom';\n\n@Component({\n standalone: true,\n imports: [\n CommonModule,\n SuiSegmentDirective,\n SuiMenuDirective,\n SuiMenuItemDirective,\n SuiIconDirective,\n SuiLabelDirective\n ],\n selector: 'sui-tabs',\n preserveWhitespaces: false,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (hasTabs) {\n @if (isTop) {\n <ng-container *ngTemplateOutlet=\"tabMenu\"></ng-container>\n }\n\n <div class=\"active tab\"\n sui-segment\n [class.loading]=\"currentTab?.suiLoading\"\n [suiAttached]=\"segmentAttachment\">\n @if (currentTab) {\n <ng-container\n *ngTemplateOutlet=\"currentTab.contentTemplate\">\n </ng-container>\n }\n </div>\n\n @if (!isTop) {\n <ng-container *ngTemplateOutlet=\"tabMenu\"></ng-container>\n }\n }\n\n <ng-template #tabMenu>\n <div sui-menu\n [suiInverted]=\"suiInverted\"\n [suiColour]=\"suiColour\"\n [suiAttached]=\"menuAttachment\"\n [suiTabular]=\"isBasic\"\n [suiSecondary]=\"isSecondary\"\n [suiPointing]=\"isPointing\"\n [suiText]=\"isText\"\n [suiBorderless]=\"isBorderless\">\n @for (tab of tabs; track tab; let i = $index) {\n <div suiMenuItem\n [disabled]=\"tab.disabled\"\n [suiActive]=\"isTabSelected(i)\"\n (click)=\"changeTab(tab, i)\">\n @if (tab.suiIcon) {\n <i sui-icon\n [suiIconType]=\"tab.suiIcon\"></i>\n }\n\n {{tab.suiTitle}}\n\n @if (tab.suiLabel) {\n <div sui-label\n [suiColour]=\"tab.suiLabelColour\"\n [suiCircular]=\"tab.suiLabelCircular\">\n {{tab.suiLabel}}\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n `\n})\nexport class SuiTabsComponent implements AfterContentChecked {\n @ContentChildren(SuiTabComponent) public tabs: QueryList<SuiTabComponent> = new QueryList<SuiTabComponent>();\n\n @Input() public suiTabMenuPosition: SuiTabMenuPosition = 'top';\n @Input() public suiTabType: SuiTabType = 'basic';\n @Input() public suiColour: SuiColour = null;\n @Input() @InputBoolean() public suiInverted = false;\n\n @Output() public readonly suiSelectedIndexChanged = new EventEmitter<number>();\n\n private selectedTabIndex = 0;\n public hasTabs = false;\n public currentTab: SuiTabComponent | null = null;\n\n get isSecondary(): boolean {\n return this.suiTabType === 'secondary';\n }\n\n get isBasic(): boolean {\n return this.suiTabType === 'basic';\n }\n\n get isPointing(): boolean {\n return this.suiTabType === 'pointing';\n }\n\n get isText(): boolean {\n return this.suiTabType === 'text';\n }\n\n get isBorderless(): boolean {\n return this.suiTabType === 'borderless';\n }\n\n get isTop(): boolean {\n return this.suiTabMenuPosition === 'top';\n }\n\n get menuAttachment(): SuiMenuAttachment {\n if (this.suiTabType === 'basic') {\n if (this.isTop) {\n return 'top';\n } else {\n return 'bottom';\n }\n }\n\n return null;\n }\n\n get segmentAttachment(): SuiSegmentAttachment {\n if (this.suiTabType === 'basic') {\n if (this.isTop) {\n return 'bottom attached';\n } else {\n return 'top attached';\n }\n }\n\n return null;\n }\n\n public changeTab(tab: SuiTabComponent, index: number): void {\n if (tab.disabled) {\n return;\n }\n\n const tabChanged = this.selectedTabIndex !== index;\n\n this.selectedTabIndex = index;\n this.setCurrentTab();\n\n if (tabChanged) {\n this.suiSelectedIndexChanged.emit(this.selectedTabIndex);\n }\n }\n\n public isTabSelected(index: number): boolean {\n return this.selectedTabIndex === index;\n }\n\n public ngAfterContentChecked(): void {\n this.setCurrentTab();\n }\n\n private setCurrentTab(): void {\n const tabs = this.tabs.toArray();\n this.hasTabs = tabs.length > 0;\n this.currentTab = tabs[this.selectedTabIndex];\n }\n}\n","/**\n * Created by bolorundurowb on 12/22/2020\n */\n\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SuiTabComponent } from './tab.component';\nimport { SuiTabsComponent } from './tabs.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiTabComponent,\n SuiTabsComponent\n ],\n exports: [\n SuiTabComponent,\n SuiTabsComponent\n ]\n})\nexport class SuiTabsModule {\n}\n","/**\n * Created by bolorundurowb on 12/22/2020\n */\n\nexport * from './tabs.component';\nexport * from './tab.component';\nexport * from './tabs.module';\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":"ngx-semantic-modules-tabs.mjs","sources":["../../src/modules/tabs/tab.component.ts","../../src/modules/tabs/tabs.component.ts","../../src/modules/tabs/tabs.module.ts","../../src/modules/tabs/public-api.ts","../../src/modules/tabs/ngx-semantic-modules-tabs.ts"],"sourcesContent":["/**\n * Created by bolorundurowb on 12/22/2020\n */\n\nimport { Component, HostBinding, Input, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiColour } from 'ngx-semantic/core/enums';\n\n@Component({\n standalone: true,\n selector: 'sui-tab',\n exportAs: 'suiTab',\n preserveWhitespaces: false,\n encapsulation: ViewEncapsulation.None,\n template: `\n <ng-template #contentTemplate>\n <ng-content></ng-content>\n </ng-template>\n `\n})\nexport class SuiTabComponent {\n @Input() public suiContent!: TemplateRef<any>;\n @Input() public suiTitle: string | null = null;\n @Input() public suiIcon: string | null = null;\n @Input() public suiLabel: string | number | null = null;\n @Input() @InputBoolean() public suiLoading = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() public suiLabelColour: SuiColour = null;\n @Input() @InputBoolean() public suiLabelCircular = false;\n\n @ViewChild('contentTemplate', { static: true }) public contentTemplate!: TemplateRef<any>;\n\n @HostBinding('class')\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiLoading, 'loading'),\n ClassUtils.getPropClass(this.disabled, 'disabled')\n ].join(' ');\n }\n}\n","/**\n * Created by bolorundurowb on 12/22/2020\n */\n\nimport {\n AfterContentChecked,\n ChangeDetectionStrategy,\n Component,\n ContentChildren, EventEmitter,\n Input, Output,\n QueryList, ViewEncapsulation\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiTabComponent } from './tab.component';\nimport { SuiColour } from 'ngx-semantic/core/enums';\nimport { SuiMenuAttachment, SuiMenuDirective, SuiMenuItemDirective } from 'ngx-semantic/collections/menu';\nimport { SuiSegmentAttachment, SuiSegmentDirective } from 'ngx-semantic/elements/segment';\nimport { SuiIconDirective } from 'ngx-semantic/elements/icon';\nimport { SuiLabelDirective } from 'ngx-semantic/elements/label';\n\nexport type SuiTabType = 'basic' | 'pointing' | 'secondary' | 'text' | 'bordered' | 'borderless';\nexport type SuiTabMenuPosition = 'top' | 'bottom';\n\n@Component({\n standalone: true,\n imports: [\n CommonModule,\n SuiSegmentDirective,\n SuiMenuDirective,\n SuiMenuItemDirective,\n SuiIconDirective,\n SuiLabelDirective\n ],\n selector: 'sui-tabs',\n preserveWhitespaces: false,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (hasTabs) {\n @if (isTop) {\n <ng-container *ngTemplateOutlet=\"tabMenu\"></ng-container>\n }\n\n <div class=\"active tab\"\n sui-segment\n [class.loading]=\"currentTab?.suiLoading\"\n [suiAttached]=\"segmentAttachment\">\n @if (currentTab) {\n <ng-container\n *ngTemplateOutlet=\"currentTab.contentTemplate\">\n </ng-container>\n }\n </div>\n\n @if (!isTop) {\n <ng-container *ngTemplateOutlet=\"tabMenu\"></ng-container>\n }\n }\n\n <ng-template #tabMenu>\n <div sui-menu\n [suiInverted]=\"suiInverted\"\n [suiColour]=\"suiColour\"\n [suiAttached]=\"menuAttachment\"\n [suiTabular]=\"isBasic\"\n [suiSecondary]=\"isSecondary\"\n [suiPointing]=\"isPointing\"\n [suiText]=\"isText\"\n [suiBorderless]=\"isBorderless\">\n @for (tab of tabs; track tab; let i = $index) {\n <div suiMenuItem\n [disabled]=\"tab.disabled\"\n [suiActive]=\"isTabSelected(i)\"\n (click)=\"changeTab(tab, i)\">\n @if (tab.suiIcon) {\n <i sui-icon\n [suiIconType]=\"tab.suiIcon\"></i>\n }\n\n {{tab.suiTitle}}\n\n @if (tab.suiLabel) {\n <div sui-label\n [suiColour]=\"tab.suiLabelColour\"\n [suiCircular]=\"tab.suiLabelCircular\">\n {{tab.suiLabel}}\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n `\n})\nexport class SuiTabsComponent implements AfterContentChecked {\n @ContentChildren(SuiTabComponent) public tabs: QueryList<SuiTabComponent> = new QueryList<SuiTabComponent>();\n\n @Input() public suiTabMenuPosition: SuiTabMenuPosition = 'top';\n @Input() public suiTabType: SuiTabType = 'basic';\n @Input() public suiColour: SuiColour = null;\n @Input() @InputBoolean() public suiInverted = false;\n\n @Output() public readonly suiSelectedIndexChanged = new EventEmitter<number>();\n\n private selectedTabIndex = 0;\n public hasTabs = false;\n public currentTab: SuiTabComponent | null = null;\n\n get isSecondary(): boolean {\n return this.suiTabType === 'secondary';\n }\n\n get isBasic(): boolean {\n return this.suiTabType === 'basic';\n }\n\n get isPointing(): boolean {\n return this.suiTabType === 'pointing';\n }\n\n get isText(): boolean {\n return this.suiTabType === 'text';\n }\n\n get isBorderless(): boolean {\n return this.suiTabType === 'borderless';\n }\n\n get isTop(): boolean {\n return this.suiTabMenuPosition === 'top';\n }\n\n get menuAttachment(): SuiMenuAttachment {\n if (this.suiTabType === 'basic') {\n if (this.isTop) {\n return 'top';\n } else {\n return 'bottom';\n }\n }\n\n return null;\n }\n\n get segmentAttachment(): SuiSegmentAttachment {\n if (this.suiTabType === 'basic') {\n if (this.isTop) {\n return 'bottom attached';\n } else {\n return 'top attached';\n }\n }\n\n return null;\n }\n\n public changeTab(tab: SuiTabComponent, index: number): void {\n if (tab.disabled) {\n return;\n }\n\n const tabChanged = this.selectedTabIndex !== index;\n\n this.selectedTabIndex = index;\n this.setCurrentTab();\n\n if (tabChanged) {\n this.suiSelectedIndexChanged.emit(this.selectedTabIndex);\n }\n }\n\n public isTabSelected(index: number): boolean {\n return this.selectedTabIndex === index;\n }\n\n public ngAfterContentChecked(): void {\n this.setCurrentTab();\n }\n\n private setCurrentTab(): void {\n const tabs = this.tabs.toArray();\n this.hasTabs = tabs.length > 0;\n this.currentTab = tabs[this.selectedTabIndex];\n }\n}\n","/**\n * Created by bolorundurowb on 12/22/2020\n */\n\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SuiTabComponent } from './tab.component';\nimport { SuiTabsComponent } from './tabs.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SuiTabComponent,\n SuiTabsComponent\n ],\n exports: [\n SuiTabComponent,\n SuiTabsComponent\n ]\n})\nexport class SuiTabsModule {\n}\n","/**\n * Created by bolorundurowb on 12/22/2020\n */\n\nexport * from './tabs.component';\nexport * from './tab.component';\nexport * from './tabs.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -654,8 +654,8 @@ class SuiTransitionComponent {
654
654
  ]);
655
655
  this.hostClassList = ClassUtils.removeExcessWhitespace(tokens);
656
656
  }
657
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTransitionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
658
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.7", type: SuiTransitionComponent, isStandalone: true, selector: "sui-transition", inputs: { suiAnimation: "suiAnimation", suiDuration: "suiDuration", suiDirection: "suiDirection", suiVisible: "suiVisible", suiPlay: "suiPlay", suiDisabled: "suiDisabled" }, outputs: { suiVisibleChange: "suiVisibleChange", suiAnimationStart: "suiAnimationStart", suiAnimationComplete: "suiAnimationComplete", suiOnShow: "suiOnShow", suiOnHide: "suiOnHide" }, host: { properties: { "class": "hostClassList" } }, exportAs: ["suiTransition"], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
657
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTransitionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
658
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: SuiTransitionComponent, isStandalone: true, selector: "sui-transition", inputs: { suiAnimation: "suiAnimation", suiDuration: "suiDuration", suiDirection: "suiDirection", suiVisible: "suiVisible", suiPlay: "suiPlay", suiDisabled: "suiDisabled" }, outputs: { suiVisibleChange: "suiVisibleChange", suiAnimationStart: "suiAnimationStart", suiAnimationComplete: "suiAnimationComplete", suiOnShow: "suiOnShow", suiOnHide: "suiOnHide" }, host: { properties: { "class": "hostClassList" } }, exportAs: ["suiTransition"], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
659
659
  }
660
660
  __decorate([
661
661
  InputBoolean()
@@ -663,7 +663,7 @@ __decorate([
663
663
  __decorate([
664
664
  InputBoolean()
665
665
  ], SuiTransitionComponent.prototype, "suiDisabled", void 0);
666
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTransitionComponent, decorators: [{
666
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTransitionComponent, decorators: [{
667
667
  type: Component,
668
668
  args: [{
669
669
  standalone: true,
@@ -701,11 +701,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImpor
701
701
  }] } });
702
702
 
703
703
  class SuiTransitionModule {
704
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTransitionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
705
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.7", ngImport: i0, type: SuiTransitionModule, imports: [SuiTransitionComponent], exports: [SuiTransitionComponent] }); }
706
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTransitionModule }); }
704
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTransitionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
705
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: SuiTransitionModule, imports: [SuiTransitionComponent], exports: [SuiTransitionComponent] }); }
706
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTransitionModule }); }
707
707
  }
708
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: SuiTransitionModule, decorators: [{
708
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: SuiTransitionModule, decorators: [{
709
709
  type: NgModule,
710
710
  args: [{
711
711
  imports: [SuiTransitionComponent],