sass-cms-template-common 0.0.31 → 0.0.33

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.
package/dist/index.d.ts CHANGED
@@ -4615,6 +4615,33 @@ declare interface IRecipesServices {
4615
4615
  authentication: Authentication;
4616
4616
  }
4617
4617
 
4618
+ /**
4619
+ * Traspaso del token al cambiar de gestor — NAA-5150.
4620
+ *
4621
+ * El access token vive en `sessionStorage`, que es **por origen**: el token de
4622
+ * `usuarios.…` no es el mismo objeto que el de `noticias.…`. Cuando el usuario
4623
+ * pasa de un gestor a otro por el menú lateral, el gestor destino arranca con lo
4624
+ * que tenga guardado de la última vez — y si esa vez era otro usuario, lo muestra
4625
+ * a él. No hace falta ni un logout de por medio: alcanza con haber entrado antes
4626
+ * con otra cuenta en ese dominio.
4627
+ *
4628
+ * La solución es la misma que ya usa la login app para entregar la sesión: pasar
4629
+ * el token en el **fragmento** de la URL destino (`#access_token=…`), que el
4630
+ * gestor consume al arrancar y guarda pisando el viejo. El fragmento no viaja al
4631
+ * servidor y el destino lo borra de la barra de direcciones apenas lo lee.
4632
+ *
4633
+ * Es lo mismo que hace `AppShell.navigateToModule` de `@bluestack-cms/ui` en la
4634
+ * familia Vite; esta es la pieza equivalente para los gestores Next.
4635
+ */
4636
+ /**
4637
+ * ¿El destino es otro origen? Solo ahí hace falta el traspaso: dentro del mismo
4638
+ * gestor el `sessionStorage` ya es el mismo.
4639
+ *
4640
+ * Las rutas relativas (`/users/1`), el `#` de los ítems sin destino y las URL
4641
+ * absolutas al propio origen quedan afuera.
4642
+ */
4643
+ export declare function isCrossOriginHref(href: string): boolean;
4644
+
4618
4645
  declare interface ISectionsServices {
4619
4646
  axiosApi: AxiosInstance;
4620
4647
  authentication: Authentication;
@@ -4767,6 +4794,28 @@ export declare type MultiSelectFieldConfig = BaseFieldConfig & {
4767
4794
 
4768
4795
  export declare type NavBlock = NavLinkItem;
4769
4796
 
4797
+ /**
4798
+ * `onClick` para los ítems del menú que llevan a otro gestor: navega pasándole la
4799
+ * sesión actual en el fragmento.
4800
+ *
4801
+ * No hace nada —y deja que el enlace navegue solo— cuando el destino es del mismo
4802
+ * origen, cuando no hay token que pasar (login propio del gestor, sesión sin
4803
+ * abrir) o cuando el usuario pidió abrir en otra pestaña (ctrl/cmd/click del
4804
+ * medio): en ese último caso el navegador ya se encarga y no hay que interceptar.
4805
+ *
4806
+ * @param event Click del enlace.
4807
+ * @param href Destino ya resuelto del ítem.
4808
+ */
4809
+ export declare function navigateWithAuthHandoff(event: {
4810
+ preventDefault: () => void;
4811
+ defaultPrevented: boolean;
4812
+ button?: number;
4813
+ metaKey?: boolean;
4814
+ ctrlKey?: boolean;
4815
+ shiftKey?: boolean;
4816
+ altKey?: boolean;
4817
+ }, href: string): void;
4818
+
4770
4819
  export declare type NavigationModule = keyof CmsMessages['navigation'];
4771
4820
 
4772
4821
  export declare type NavItemPermissions = {