cloud-ide-layout 1.0.112 → 1.0.113

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 (12) hide show
  1. package/fesm2022/{cloud-ide-layout-cloud-ide-layout-B69VSPoc.mjs → cloud-ide-layout-cloud-ide-layout-BdeMOoAp.mjs} +43 -9
  2. package/fesm2022/{cloud-ide-layout-cloud-ide-layout-B69VSPoc.mjs.map → cloud-ide-layout-cloud-ide-layout-BdeMOoAp.mjs.map} +1 -1
  3. package/fesm2022/{cloud-ide-layout-drawer-theme.component-DlUZDcaF.mjs → cloud-ide-layout-drawer-theme.component-BTefQuBy.mjs} +2 -2
  4. package/fesm2022/{cloud-ide-layout-drawer-theme.component-DlUZDcaF.mjs.map → cloud-ide-layout-drawer-theme.component-BTefQuBy.mjs.map} +1 -1
  5. package/fesm2022/{cloud-ide-layout-floating-entity-selection.component-Bmxe5h-w.mjs → cloud-ide-layout-floating-entity-selection.component-BSsLTUAc.mjs} +2 -2
  6. package/fesm2022/{cloud-ide-layout-floating-entity-selection.component-Bmxe5h-w.mjs.map → cloud-ide-layout-floating-entity-selection.component-BSsLTUAc.mjs.map} +1 -1
  7. package/fesm2022/{cloud-ide-layout-home-wrapper.component-DVX-kibW.mjs → cloud-ide-layout-home-wrapper.component-DdCvSxtT.mjs} +2 -2
  8. package/fesm2022/{cloud-ide-layout-home-wrapper.component-DVX-kibW.mjs.map → cloud-ide-layout-home-wrapper.component-DdCvSxtT.mjs.map} +1 -1
  9. package/fesm2022/{cloud-ide-layout-sidedrawer-notes.component-C0wGoiPy.mjs → cloud-ide-layout-sidedrawer-notes.component-CZNF9Iyp.mjs} +2 -2
  10. package/fesm2022/{cloud-ide-layout-sidedrawer-notes.component-C0wGoiPy.mjs.map → cloud-ide-layout-sidedrawer-notes.component-CZNF9Iyp.mjs.map} +1 -1
  11. package/fesm2022/cloud-ide-layout.mjs +1 -1
  12. package/package.json +1 -1
@@ -1268,7 +1268,7 @@ class CideLytFloatingEntitySelectionService {
1268
1268
  }
1269
1269
  try {
1270
1270
  // Use relative import to avoid circular dependency
1271
- const module = await import('./cloud-ide-layout-floating-entity-selection.component-Bmxe5h-w.mjs');
1271
+ const module = await import('./cloud-ide-layout-floating-entity-selection.component-BSsLTUAc.mjs');
1272
1272
  if (module.CideLytFloatingEntitySelectionComponent) {
1273
1273
  this.containerService.registerComponent('entity-selection-header', module.CideLytFloatingEntitySelectionComponent);
1274
1274
  console.log('✅ Entity selection component registered successfully');
@@ -4820,8 +4820,8 @@ class CideLytSidedrawerWrapperComponent {
4820
4820
  }
4821
4821
  ngOnInit() {
4822
4822
  // Initialize the component map (You'd likely populate this from a config or service)
4823
- this.componentMap['drowar_notes'] = () => import('./cloud-ide-layout-sidedrawer-notes.component-C0wGoiPy.mjs').then(m => m.CideLytSidedrawerNotesComponent);
4824
- this.componentMap['drawer_theme'] = () => import('./cloud-ide-layout-drawer-theme.component-DlUZDcaF.mjs').then(m => m.CideLytDrawerThemeComponent);
4823
+ this.componentMap['drowar_notes'] = () => import('./cloud-ide-layout-sidedrawer-notes.component-CZNF9Iyp.mjs').then(m => m.CideLytSidedrawerNotesComponent);
4824
+ this.componentMap['drawer_theme'] = () => import('./cloud-ide-layout-drawer-theme.component-BTefQuBy.mjs').then(m => m.CideLytDrawerThemeComponent);
4825
4825
  }
4826
4826
  async loadComponent(configFor) {
4827
4827
  console.log('🔍 SIDEDRAWER - Loading component:', configFor, 'Current tab:', this.currentTabId);
@@ -5954,9 +5954,32 @@ class ComponentContextService {
5954
5954
  if (activeTab) {
5955
5955
  // Get current route to match with tab
5956
5956
  const currentUrl = this.router.url.split('?')[0]; // Remove query params for comparison
5957
- const tabRoute = activeTab.route;
5958
- // Check if current route matches the active tab route
5959
- if (currentUrl === tabRoute || currentUrl.startsWith(tabRoute + '/')) {
5957
+ const tabRoute = activeTab.route.split('?')[0]; // Remove query params from tab route too
5958
+ // Normalize routes for comparison (remove leading/trailing slashes and convert to lowercase)
5959
+ const normalizeRoute = (route) => {
5960
+ return route.replace(/^\/+|\/+$/g, '').toLowerCase();
5961
+ };
5962
+ const normalizedCurrent = normalizeRoute(currentUrl);
5963
+ const normalizedTab = normalizeRoute(tabRoute);
5964
+ console.log('🔍 [ComponentContext] Route matching:', {
5965
+ currentUrl,
5966
+ tabRoute,
5967
+ normalizedCurrent,
5968
+ normalizedTab,
5969
+ activeTabId: activeTab.id,
5970
+ activeTabTitle: activeTab.title
5971
+ });
5972
+ // Check if current route matches the active tab route (exact or starts with)
5973
+ // Also check if routes end with the same path segment
5974
+ const currentSegments = normalizedCurrent.split('/');
5975
+ const tabSegments = normalizedTab.split('/');
5976
+ const lastCurrentSegment = currentSegments[currentSegments.length - 1];
5977
+ const lastTabSegment = tabSegments[tabSegments.length - 1];
5978
+ const routesMatch = normalizedCurrent === normalizedTab ||
5979
+ normalizedCurrent.startsWith(normalizedTab + '/') ||
5980
+ normalizedTab.startsWith(normalizedCurrent + '/') ||
5981
+ (lastCurrentSegment && lastTabSegment && lastCurrentSegment === lastTabSegment);
5982
+ if (routesMatch) {
5960
5983
  console.log('🔒 [ComponentContext] Closing active tab:', activeTab.id);
5961
5984
  this.requestService.closeTab(activeTab.id);
5962
5985
  return;
@@ -5965,13 +5988,24 @@ class ComponentContextService {
5965
5988
  const allTabs = this.requestService.tabs();
5966
5989
  const matchingTab = allTabs.find(tab => {
5967
5990
  const tabRoutePath = tab.route.split('?')[0];
5968
- return currentUrl === tabRoutePath || currentUrl.startsWith(tabRoutePath + '/');
5991
+ const normalizedTabPath = normalizeRoute(tabRoutePath);
5992
+ const tabSegments = normalizedTabPath.split('/');
5993
+ const lastTabSegment = tabSegments[tabSegments.length - 1];
5994
+ return normalizedCurrent === normalizedTabPath ||
5995
+ normalizedCurrent.startsWith(normalizedTabPath + '/') ||
5996
+ normalizedTabPath.startsWith(normalizedCurrent + '/') ||
5997
+ (lastCurrentSegment && lastTabSegment && lastCurrentSegment === lastTabSegment);
5969
5998
  });
5970
5999
  if (matchingTab) {
5971
6000
  console.log('🔒 [ComponentContext] Closing matching tab:', matchingTab.id);
5972
6001
  this.requestService.closeTab(matchingTab.id);
5973
6002
  return;
5974
6003
  }
6004
+ // If no match found but we have an active tab, close it anyway
6005
+ // This handles cases where route format might differ slightly
6006
+ console.log('🔒 [ComponentContext] No route match found, but closing active tab anyway:', activeTab.id);
6007
+ this.requestService.closeTab(activeTab.id);
6008
+ return;
5975
6009
  }
5976
6010
  // If neither tab nor floating container, navigate to fallback route
5977
6011
  if (fallbackRoute && fallbackRoute.length > 0) {
@@ -6184,7 +6218,7 @@ const layoutControlPannelChildRoutes = [{
6184
6218
  },
6185
6219
  {
6186
6220
  path: "home",
6187
- loadComponent: () => import('./cloud-ide-layout-home-wrapper.component-DVX-kibW.mjs').then(c => c.CideLytHomeWrapperComponent),
6221
+ loadComponent: () => import('./cloud-ide-layout-home-wrapper.component-DdCvSxtT.mjs').then(c => c.CideLytHomeWrapperComponent),
6188
6222
  canActivate: [authGuard],
6189
6223
  data: {
6190
6224
  sypg_page_code: "cide_lyt_home" // Used by RequestService to fetch tab properties
@@ -7751,4 +7785,4 @@ var floatingEntityRightsSharing_component = /*#__PURE__*/Object.freeze({
7751
7785
  */
7752
7786
 
7753
7787
  export { AppStateHelperService as A, CideLytSharedWrapperComponent as C, ENVIRONMENT_CONFIG as E, NotificationSettingsService as N, CideLytSidebarService as a, CideLytRequestService as b, CideLytSidedrawerService as c, CideLytThemeService as d, AppStateService as e, CloudIdeLayoutService as f, CloudIdeLayoutComponent as g, CideLytSharedService as h, ComponentContextService as i, layoutControlPannelChildRoutes as j, CustomRouteReuseStrategy as k, layoutRoutes as l, CideLytUserStatusService as m, CacheManagerService as n, CideLytFileManagerService as o, processThemeVariable as p, CideLytFloatingEntityRightsSharingComponent as q, CideLytFloatingEntityRightsSharingService as r, setCSSVariable as s, themeFactory as t };
7754
- //# sourceMappingURL=cloud-ide-layout-cloud-ide-layout-B69VSPoc.mjs.map
7788
+ //# sourceMappingURL=cloud-ide-layout-cloud-ide-layout-BdeMOoAp.mjs.map