@posiwise/shared-components 0.0.144 → 0.0.146

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.
@@ -16,51 +16,20 @@ export class PwTabsComponent extends AppBaseComponent {
16
16
  if (this.withSubscription) {
17
17
  this.getUserSubscription().subscribe((subscription) => {
18
18
  this.items.forEach(item => {
19
- // prepends the subscription slug to the route while keeping routerLink as an array
20
- if (Array.isArray(item.routerLink) && item.routerLink.length > 0) {
21
- const originalRoute = item.routerLink[0];
22
- item.routerLink = [`/${subscription?.slug}${originalRoute}`];
23
- }
19
+ // prepends the subscription slug to the route
20
+ item.routerLink = `/${subscription?.slug}${item.routerLink[0]}`;
24
21
  item.visible = item?.state
25
22
  ? this.permissionService.evaluatePermissions(item.state['permission'], PermissionService.selectedProduct?.feature_key, PermissionService.selectedProduct?.permission_key)
26
23
  : item.visible;
27
24
  });
28
- this.updateActiveTab();
29
25
  });
30
26
  }
31
- else {
32
- // For non-subscription tabs, update active tab after view init
33
- setTimeout(() => this.updateActiveTab(), 0);
34
- }
35
27
  this.routeEventSubscription = this.router.events.subscribe(e => {
36
28
  if (e instanceof NavigationEnd) {
37
- this.updateActiveTab();
29
+ this.tabInstance.activeItem = this.items.find(item => item.routerLink === this.router.url);
38
30
  }
39
31
  });
40
32
  }
41
- updateActiveTab() {
42
- if (!this.tabInstance || !this.items.length) {
43
- return;
44
- }
45
- const currentUrl = this.router.url.split('?')[0];
46
- const matchedItem = this.items.find(item => {
47
- if (!item.routerLink || !item.visible) {
48
- return false;
49
- }
50
- const routePath = Array.isArray(item.routerLink) ? item.routerLink[0] : item.routerLink;
51
- return routePath === currentUrl;
52
- });
53
- if (matchedItem) {
54
- // Clear previous activeItem first to ensure only one tab is active
55
- this.tabInstance.activeItem = null;
56
- // Then set the new activeItem
57
- this.tabInstance.activeItem = matchedItem;
58
- }
59
- else {
60
- // Clear activeItem if no match found
61
- this.tabInstance.activeItem = null;
62
- }
63
- }
64
33
  ngOnDestroy() {
65
34
  this.routeEventSubscription.unsubscribe();
66
35
  }
@@ -78,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
78
47
  }], withSubscription: [{
79
48
  type: Input
80
49
  }] } });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHctdGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NoYXJlZC1jb21wb25lbnRzL3NyYy9saWIvcHctdGFicy9wdy10YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2hhcmVkLWNvbXBvbmVudHMvc3JjL2xpYi9wdy10YWJzL3B3LXRhYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSTlELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQU8xQyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxnQkFBZ0I7SUFjakQsWUFBWSxRQUFrQjtRQUMxQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFicEIsVUFBSyxHQUFlLEVBQUUsQ0FBQztRQU12QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFRekIsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRTtnQkFDaEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQ3RCLG1GQUFtRjtvQkFDbkYsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsVUFB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RUFBRTtnQkFJdkMsZ0JBQWdCO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IEFwcEJhc2VDb21wb25lbnQgfSBmcm9tICdAcG9zaXdpc2UvYXBwLWJhc2UtY29tcG9uZW50JztcbmltcG9ydCB7IFBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnQHBvc2l3aXNlL2NvbW1vbi1zZXJ2aWNlcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXV0aWxpdGllcyc7XG5cbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgVGFiTWVudSB9IGZyb20gJ3ByaW1lbmcvdGFibWVudSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gYXMgUnhTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy10YWJzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHctdGFicy5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgUHdUYWJzQ29tcG9uZW50IGV4dGVuZHMgQXBwQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKVxuICAgIGl0ZW1zOiBNZW51SXRlbVtdID0gW107XG5cbiAgICBAVmlld0NoaWxkKCd0YWJNZW51JywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gICAgdGFiSW5zdGFuY2U6IFRhYk1lbnU7XG5cbiAgICBASW5wdXQoKVxuICAgIHdpdGhTdWJzY3JpcHRpb24gPSBmYWxzZTtcblxuICAgIGFjdGl2ZVRhYjogTWVudUl0ZW07XG5cbiAgICBwcml2YXRlIHJvdXRlRXZlbnRTdWJzY3JpcHRpb246IFJ4U3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMud2l0aFN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5nZXRVc2VyU3Vic2NyaXB0aW9uKCkuc3Vic2NyaWJlKChzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXRlbXMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gcHJlcGVuZHMgdGhlIHN1YnNjcmlwdGlvbiBzbHVnIHRvIHRoZSByb3V0ZSB3aGlsZSBrZWVwaW5nIHJvdXRlckxpbmsgYXMgYW4gYXJyYXlcbiAgICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbS5yb3V0ZXJMaW5rKSAmJiBpdGVtLnJvdXRlckxpbmsubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3JpZ2luYWxSb3V0ZSA9IGl0ZW0ucm91dGVyTGlua1swXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ucm91dGVyTGluayA9IFtgLyR7c3Vic2NyaXB0aW9uPy5zbHVnfSR7b3JpZ2luYWxSb3V0ZX1gXTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpdGVtLnZpc2libGUgPSBpdGVtPy5zdGF0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgPyB0aGlzLnBlcm1pc3Npb25TZXJ2aWNlLmV2YWx1YXRlUGVybWlzc2lvbnMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnN0YXRlWydwZXJtaXNzaW9uJ10sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZXJtaXNzaW9uU2VydmljZS5zZWxlY3RlZFByb2R1Y3Q/LmZlYXR1cmVfa2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGVybWlzc2lvblNlcnZpY2Uuc2VsZWN0ZWRQcm9kdWN0Py5wZXJtaXNzaW9uX2tleVxuICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGl0ZW0udmlzaWJsZTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZVRhYigpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBGb3Igbm9uLXN1YnNjcmlwdGlvbiB0YWJzLCB1cGRhdGUgYWN0aXZlIHRhYiBhZnRlciB2aWV3IGluaXRcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy51cGRhdGVBY3RpdmVUYWIoKSwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJvdXRlRXZlbnRTdWJzY3JpcHRpb24gPSB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGUgPT4ge1xuICAgICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVBY3RpdmVUYWIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVBY3RpdmVUYWIoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy50YWJJbnN0YW5jZSB8fCAhdGhpcy5pdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRVcmwgPSB0aGlzLnJvdXRlci51cmwuc3BsaXQoJz8nKVswXTtcbiAgICAgICAgY29uc3QgbWF0Y2hlZEl0ZW0gPSB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PiB7XG4gICAgICAgICAgICBpZiAoIWl0ZW0ucm91dGVyTGluayB8fCAhaXRlbS52aXNpYmxlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3Qgcm91dGVQYXRoID0gQXJyYXkuaXNBcnJheShpdGVtLnJvdXRlckxpbmspID8gaXRlbS5yb3V0ZXJMaW5rWzBdIDogaXRlbS5yb3V0ZXJMaW5rO1xuICAgICAgICAgICAgcmV0dXJuIHJvdXRlUGF0aCA9PT0gY3VycmVudFVybDtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKG1hdGNoZWRJdGVtKSB7XG4gICAgICAgICAgICAvLyBDbGVhciBwcmV2aW91cyBhY3RpdmVJdGVtIGZpcnN0IHRvIGVuc3VyZSBvbmx5IG9uZSB0YWIgaXMgYWN0aXZlXG4gICAgICAgICAgICB0aGlzLnRhYkluc3RhbmNlLmFjdGl2ZUl0ZW0gPSBudWxsO1xuICAgICAgICAgICAgLy8gVGhlbiBzZXQgdGhlIG5ldyBhY3RpdmVJdGVtXG4gICAgICAgICAgICB0aGlzLnRhYkluc3RhbmNlLmFjdGl2ZUl0ZW0gPSBtYXRjaGVkSXRlbTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIENsZWFyIGFjdGl2ZUl0ZW0gaWYgbm8gbWF0Y2ggZm91bmRcbiAgICAgICAgICAgIHRoaXMudGFiSW5zdGFuY2UuYWN0aXZlSXRlbSA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5yb3V0ZUV2ZW50U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZCBwdy10YWIgb3ZlcmZsb3ctaGlkZGVuXCI+XG4gIDxwLXRhYk1lbnUgW21vZGVsXT1cIml0ZW1zXCJcbiAgICAjdGFiTWVudT48L3AtdGFiTWVudT5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkYXNoYm9hcmQtYm9keVwiPlxuICAgICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHctdGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NoYXJlZC1jb21wb25lbnRzL3NyYy9saWIvcHctdGFicy9wdy10YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2hhcmVkLWNvbXBvbmVudHMvc3JjL2xpYi9wdy10YWJzL3B3LXRhYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSTlELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQU8xQyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxnQkFBZ0I7SUFjakQsWUFBWSxRQUFrQjtRQUMxQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFicEIsVUFBSyxHQUFlLEVBQUUsQ0FBQztRQU12QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFRekIsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRTtnQkFDaEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQ3RCLDhDQUE4QztvQkFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUNoRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksRUFBRSxLQUFLO3dCQUN0QixDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUN4QixpQkFBaUIsQ0FBQyxlQUFlLEVBQUUsV0FBVyxFQUM5QyxpQkFBaUIsQ0FBQyxlQUFlLEVBQUUsY0FBYyxDQUNwRDt3QkFDSCxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDdkIsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFFRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzNELElBQUksQ0FBQyxZQUFZLGFBQWEsRUFBRSxDQUFDO2dCQUM3QixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDekMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUM5QyxDQUFDO1lBQ04sQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVRLFdBQVc7UUFDaEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlDLENBQUM7K0dBOUNRLGVBQWU7bUdBQWYsZUFBZSxnUENmNUIsMlBBU0E7OzRGRE1hLGVBQWU7a0JBSjNCLFNBQVM7K0JBQ0ksU0FBUzs2RUFLbkIsS0FBSztzQkFESixLQUFLO2dCQUlOLFdBQVc7c0JBRFYsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUl2QyxnQkFBZ0I7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgQXBwQmFzZUNvbXBvbmVudCB9IGZyb20gJ0Bwb3Npd2lzZS9hcHAtYmFzZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2UvY29tbW9uLXNlcnZpY2VzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tdXRpbGl0aWVzJztcblxuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBUYWJNZW51IH0gZnJvbSAncHJpbWVuZy90YWJtZW51JztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiBhcyBSeFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3B3LXRhYnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wdy10YWJzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQd1RhYnNDb21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpXG4gICAgaXRlbXM6IE1lbnVJdGVtW10gPSBbXTtcblxuICAgIEBWaWV3Q2hpbGQoJ3RhYk1lbnUnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgICB0YWJJbnN0YW5jZTogVGFiTWVudTtcblxuICAgIEBJbnB1dCgpXG4gICAgd2l0aFN1YnNjcmlwdGlvbiA9IGZhbHNlO1xuXG4gICAgYWN0aXZlVGFiOiBNZW51SXRlbTtcblxuICAgIHByaXZhdGUgcm91dGVFdmVudFN1YnNjcmlwdGlvbjogUnhTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAodGhpcy53aXRoU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmdldFVzZXJTdWJzY3JpcHRpb24oKS5zdWJzY3JpYmUoKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtcy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBwcmVwZW5kcyB0aGUgc3Vic2NyaXB0aW9uIHNsdWcgdG8gdGhlIHJvdXRlXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0ucm91dGVyTGluayA9IGAvJHtzdWJzY3JpcHRpb24/LnNsdWd9JHtpdGVtLnJvdXRlckxpbmtbMF19YDtcbiAgICAgICAgICAgICAgICAgICAgaXRlbS52aXNpYmxlID0gaXRlbT8uc3RhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgID8gdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5zdGF0ZVsncGVybWlzc2lvbiddLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGVybWlzc2lvblNlcnZpY2Uuc2VsZWN0ZWRQcm9kdWN0Py5mZWF0dXJlX2tleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBlcm1pc3Npb25TZXJ2aWNlLnNlbGVjdGVkUHJvZHVjdD8ucGVybWlzc2lvbl9rZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBpdGVtLnZpc2libGU7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucm91dGVFdmVudFN1YnNjcmlwdGlvbiA9IHRoaXMucm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoZSA9PiB7XG4gICAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRhYkluc3RhbmNlLmFjdGl2ZUl0ZW0gPSB0aGlzLml0ZW1zLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgIGl0ZW0gPT4gaXRlbS5yb3V0ZXJMaW5rID09PSB0aGlzLnJvdXRlci51cmxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5yb3V0ZUV2ZW50U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZCBwdy10YWIgb3ZlcmZsb3ctaGlkZGVuXCI+XG4gIDxwLXRhYk1lbnUgW21vZGVsXT1cIml0ZW1zXCJcbiAgICAjdGFiTWVudT48L3AtdGFiTWVudT5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkYXNoYm9hcmQtYm9keVwiPlxuICAgICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1363,51 +1363,20 @@ class PwTabsComponent extends AppBaseComponent {
1363
1363
  if (this.withSubscription) {
1364
1364
  this.getUserSubscription().subscribe((subscription) => {
1365
1365
  this.items.forEach(item => {
1366
- // prepends the subscription slug to the route while keeping routerLink as an array
1367
- if (Array.isArray(item.routerLink) && item.routerLink.length > 0) {
1368
- const originalRoute = item.routerLink[0];
1369
- item.routerLink = [`/${subscription?.slug}${originalRoute}`];
1370
- }
1366
+ // prepends the subscription slug to the route
1367
+ item.routerLink = `/${subscription?.slug}${item.routerLink[0]}`;
1371
1368
  item.visible = item?.state
1372
1369
  ? this.permissionService.evaluatePermissions(item.state['permission'], PermissionService.selectedProduct?.feature_key, PermissionService.selectedProduct?.permission_key)
1373
1370
  : item.visible;
1374
1371
  });
1375
- this.updateActiveTab();
1376
1372
  });
1377
1373
  }
1378
- else {
1379
- // For non-subscription tabs, update active tab after view init
1380
- setTimeout(() => this.updateActiveTab(), 0);
1381
- }
1382
1374
  this.routeEventSubscription = this.router.events.subscribe(e => {
1383
1375
  if (e instanceof NavigationEnd) {
1384
- this.updateActiveTab();
1376
+ this.tabInstance.activeItem = this.items.find(item => item.routerLink === this.router.url);
1385
1377
  }
1386
1378
  });
1387
1379
  }
1388
- updateActiveTab() {
1389
- if (!this.tabInstance || !this.items.length) {
1390
- return;
1391
- }
1392
- const currentUrl = this.router.url.split('?')[0];
1393
- const matchedItem = this.items.find(item => {
1394
- if (!item.routerLink || !item.visible) {
1395
- return false;
1396
- }
1397
- const routePath = Array.isArray(item.routerLink) ? item.routerLink[0] : item.routerLink;
1398
- return routePath === currentUrl;
1399
- });
1400
- if (matchedItem) {
1401
- // Clear previous activeItem first to ensure only one tab is active
1402
- this.tabInstance.activeItem = null;
1403
- // Then set the new activeItem
1404
- this.tabInstance.activeItem = matchedItem;
1405
- }
1406
- else {
1407
- // Clear activeItem if no match found
1408
- this.tabInstance.activeItem = null;
1409
- }
1410
- }
1411
1380
  ngOnDestroy() {
1412
1381
  this.routeEventSubscription.unsubscribe();
1413
1382
  }