@hgdc/ui 0.17.0 → 0.17.1

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.
@@ -1,6 +1,7 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { createContext, useContext, useEffect, useLayoutEffect, useRef } from "react";
3
3
  import { cn } from "./cn.js";
4
+ import { useBackgroundOrganizationRefresh } from "./product-switch.js";
4
5
  const SIZES = { sm: 24, md: 40, lg: 64 };
5
6
  /** Durée de la boucle du H (`styles.css`, `.family-loader [data-fill]`). */
6
7
  export const FAMILY_LOADER_PERIOD_MS = 2000;
@@ -105,6 +106,8 @@ export function FamilyLoaderHost() {
105
106
  * que dans la coque et que dans le produit qu'on vient de quitter (ADR 0015).
106
107
  */
107
108
  export function FamilyLoaderRoot({ children }) {
109
+ // Une fois par document : relecture des organisations après un passage depuis la barre (ADR 0016).
110
+ useBackgroundOrganizationRefresh();
108
111
  return (_jsxs(FamilyLoaderRootContext, { value: true, children: [children, _jsx(FamilyLoaderHost, {})] }));
109
112
  }
110
113
  /**
@@ -22,8 +22,14 @@ export declare function takeOrgSyncCookie(doc?: Document): boolean;
22
22
  */
23
23
  export declare function startBackgroundRefresh(doc?: Document): HTMLIFrameElement | null;
24
24
  /**
25
- * À monter une fois par document dans la coque (`AppShell` le fait) : relecture en arrière-plan
26
- * après un passage depuis la barre, et préchargement au survol des autres produits. Le cadre vit
27
- * hors de l'arbre React : un démontage ne l'interrompt pas, il se retire seul.
25
+ * Relecture en arrière-plan si l'entrée l'a demandé. Montée à la racine du document
26
+ * (`FamilyLoaderRoot`), pour toutes les pages, y compris celles hors de la coque : la page « il te
27
+ * faut une organisation » d'une personne qui vient d'accepter une invitation en a le plus besoin.
28
+ * Le cadre vit hors de l'arbre React : un démontage ne l'interrompt pas, il se retire seul.
29
+ */
30
+ export declare function useBackgroundOrganizationRefresh(): void;
31
+ /**
32
+ * Dans la coque (`AppShell` le fait) : la relecture ci-dessus si la racine ne l'a pas déjà faite
33
+ * (le cookie ne sert qu'une fois), et le préchargement au survol des autres produits.
28
34
  */
29
35
  export declare function useProductSwitch(enabled?: boolean): void;
@@ -68,9 +68,19 @@ export function startBackgroundRefresh(doc = document) {
68
68
  return frame;
69
69
  }
70
70
  /**
71
- * À monter une fois par document dans la coque (`AppShell` le fait) : relecture en arrière-plan
72
- * après un passage depuis la barre, et préchargement au survol des autres produits. Le cadre vit
73
- * hors de l'arbre React : un démontage ne l'interrompt pas, il se retire seul.
71
+ * Relecture en arrière-plan si l'entrée l'a demandé. Montée à la racine du document
72
+ * (`FamilyLoaderRoot`), pour toutes les pages, y compris celles hors de la coque : la page « il te
73
+ * faut une organisation » d'une personne qui vient d'accepter une invitation en a le plus besoin.
74
+ * Le cadre vit hors de l'arbre React : un démontage ne l'interrompt pas, il se retire seul.
75
+ */
76
+ export function useBackgroundOrganizationRefresh() {
77
+ useEffect(() => {
78
+ startBackgroundRefresh();
79
+ }, []);
80
+ }
81
+ /**
82
+ * Dans la coque (`AppShell` le fait) : la relecture ci-dessus si la racine ne l'a pas déjà faite
83
+ * (le cookie ne sert qu'une fois), et le préchargement au survol des autres produits.
74
84
  */
75
85
  export function useProductSwitch(enabled = true) {
76
86
  useEffect(() => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hgdc/ui",
3
- "version": "0.17.0",
3
+ "version": "0.17.1",
4
4
  "description": "Interface de la H family : jetons de la DA, thèmes, polices et composants.",
5
5
  "license": "UNLICENSED",
6
6
  "homepage": "https://github.com/hugogebel-boop/hgdc-kit/tree/main/packages/ui#readme",