@hgdc/ui 0.46.0 → 0.47.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.
Files changed (48) hide show
  1. package/dist/app-shell.d.ts +18 -123
  2. package/dist/app-shell.js +18 -431
  3. package/dist/assistant-bar.d.ts +16 -0
  4. package/dist/assistant-bar.js +25 -0
  5. package/dist/assistant-labels.d.ts +29 -0
  6. package/dist/assistant-labels.js +42 -0
  7. package/dist/assistant-parts.d.ts +19 -0
  8. package/dist/assistant-parts.js +38 -0
  9. package/dist/assistant-text.d.ts +15 -0
  10. package/dist/assistant-text.js +30 -0
  11. package/dist/assistant-types.d.ts +59 -0
  12. package/dist/assistant-types.js +1 -0
  13. package/dist/assistant-view.d.ts +7 -120
  14. package/dist/assistant-view.js +9 -127
  15. package/dist/family-svg.d.ts +1 -1
  16. package/dist/family-svg.js +3 -0
  17. package/dist/product-badge.js +1 -0
  18. package/dist/products.js +1 -0
  19. package/dist/shell-assistant.d.ts +37 -0
  20. package/dist/shell-assistant.js +83 -0
  21. package/dist/shell-context.d.ts +11 -0
  22. package/dist/shell-context.js +8 -0
  23. package/dist/shell-links.d.ts +35 -0
  24. package/dist/shell-links.js +46 -0
  25. package/dist/sidebar-head.d.ts +10 -0
  26. package/dist/sidebar-head.js +28 -0
  27. package/dist/sidebar-nav-group.d.ts +33 -0
  28. package/dist/sidebar-nav-group.js +105 -0
  29. package/dist/sidebar-nav.d.ts +38 -0
  30. package/dist/sidebar-nav.js +60 -0
  31. package/dist/sidebar-rail.d.ts +12 -0
  32. package/dist/sidebar-rail.js +53 -0
  33. package/dist/use-content-loading.d.ts +13 -0
  34. package/dist/use-content-loading.js +42 -0
  35. package/dist/use-product-leave.d.ts +9 -0
  36. package/dist/use-product-leave.js +32 -0
  37. package/email-icons/id.png +0 -0
  38. package/family/app/id/apple-touch-icon.png +0 -0
  39. package/family/app/id/favicon.ico +0 -0
  40. package/family/app/id/favicon.svg +1 -0
  41. package/family/app/id/icon-192.png +0 -0
  42. package/family/app/id/icon-512.png +0 -0
  43. package/family/app/id/icon-maskable-512.png +0 -0
  44. package/family/id-dark.svg +1 -0
  45. package/family/id.svg +1 -0
  46. package/family/tile/id.svg +1 -0
  47. package/package.json +1 -1
  48. package/styles.css +6 -2
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Délai entre le clic vers un autre produit et le H : une page prérendue s'affiche avant (une ou
3
+ * deux images), le H n'apparaît alors jamais ; une page à charger le montre aussitôt après.
4
+ */
5
+ export declare const PRODUCT_LEAVE_DELAY_MS = 100;
6
+ export declare function useProductLeave(): {
7
+ leaving: boolean;
8
+ leave: () => void;
9
+ };
@@ -0,0 +1,32 @@
1
+ import { useCallback, useEffect, useRef, useState } from "react";
2
+ /**
3
+ * Délai entre le clic vers un autre produit et le H : une page prérendue s'affiche avant (une ou
4
+ * deux images), le H n'apparaît alors jamais ; une page à charger le montre aussitôt après.
5
+ */
6
+ export const PRODUCT_LEAVE_DELAY_MS = 100;
7
+ export function useProductLeave() {
8
+ const [leaving, setLeaving] = useState(false);
9
+ // Après `PRODUCT_LEAVE_DELAY_MS` seulement : une page prérendue au survol s'affiche avant, sans
10
+ // que le H apparaisse (ADR 0020). Sinon le H couvre le contenu jusqu'au départ de la page.
11
+ const leaveTimer = useRef(undefined);
12
+ const leave = useCallback(() => {
13
+ window.clearTimeout(leaveTimer.current);
14
+ leaveTimer.current = window.setTimeout(() => setLeaving(true), PRODUCT_LEAVE_DELAY_MS);
15
+ }, []);
16
+ useEffect(() => {
17
+ // Retour arrière depuis l'autre produit (cache de page) : la page revient telle quelle.
18
+ const onPageShow = (event) => {
19
+ if (!event.persisted)
20
+ return;
21
+ window.clearTimeout(leaveTimer.current);
22
+ setLeaving(false);
23
+ delete document.documentElement.dataset.hgdcSwitching;
24
+ };
25
+ window.addEventListener("pageshow", onPageShow);
26
+ return () => {
27
+ window.removeEventListener("pageshow", onPageShow);
28
+ window.clearTimeout(leaveTimer.current);
29
+ };
30
+ }, []);
31
+ return { leaving, leave };
32
+ }
Binary file
Binary file
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><style>.d{display:none}@media (prefers-color-scheme:dark){.l{display:none}.d{display:inline}}</style><g class="l"><svg x="2.56" y="2.56" width="58.88" height="58.88" viewBox="14 14 52 52"><defs><linearGradient id="lg" x1="14" y1="14" x2="66" y2="66" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff2a2a"/><stop offset="1" stop-color="#e60000"/></linearGradient><filter id="ls" x="-20%" y="-20%" width="140%" height="140%"><feGaussianBlur stdDeviation="1.1"/></filter></defs><path d="M24.5 14H51.5A10.5 10.5 0 0 1 62 24.5V51.5A10.5 10.5 0 0 1 51.5 62H24.5A10.5 10.5 0 0 1 14 51.5V24.5A10.5 10.5 0 0 1 24.5 14Z" fill="url(#lg)" fill-opacity="0.4" fill-rule="evenodd"/><path d="M28.5 18H55.5A10.5 10.5 0 0 1 66 28.5V55.5A10.5 10.5 0 0 1 55.5 66H28.5A10.5 10.5 0 0 1 18 55.5V28.5A10.5 10.5 0 0 1 28.5 18Z" fill="url(#lg)" fill-rule="evenodd"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" transform="translate(0 1.6)" fill="#6b0000" fill-opacity="0.45" filter="url(#ls)"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" fill="#fff" fill-rule="evenodd"/></svg></g><g class="d"><svg x="2.56" y="2.56" width="58.88" height="58.88" viewBox="14 14 52 52"><defs><linearGradient id="dg" x1="14" y1="14" x2="66" y2="66" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff7d7d"/><stop offset="1" stop-color="#ff2a2a"/></linearGradient><filter id="ds" x="-20%" y="-20%" width="140%" height="140%"><feGaussianBlur stdDeviation="1.1"/></filter></defs><path d="M24.5 14H51.5A10.5 10.5 0 0 1 62 24.5V51.5A10.5 10.5 0 0 1 51.5 62H24.5A10.5 10.5 0 0 1 14 51.5V24.5A10.5 10.5 0 0 1 24.5 14Z" fill="url(#dg)" fill-opacity="0.61" fill-rule="evenodd"/><path d="M28.5 18H55.5A10.5 10.5 0 0 1 66 28.5V55.5A10.5 10.5 0 0 1 55.5 66H28.5A10.5 10.5 0 0 1 18 55.5V28.5A10.5 10.5 0 0 1 28.5 18Z" fill="url(#dg)" fill-rule="evenodd"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" transform="translate(0 1.6)" fill="#6b0000" fill-opacity="0.45" filter="url(#ds)"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" fill="#fff" fill-rule="evenodd"/></svg></g></svg>
Binary file
Binary file
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="14 14 52 52"><defs><linearGradient id="g" x1="14" y1="14" x2="66" y2="66" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff7d7d"/><stop offset="1" stop-color="#ff2a2a"/></linearGradient><filter id="s" x="-20%" y="-20%" width="140%" height="140%"><feGaussianBlur stdDeviation="1.1"/></filter></defs><path d="M24.5 14H51.5A10.5 10.5 0 0 1 62 24.5V51.5A10.5 10.5 0 0 1 51.5 62H24.5A10.5 10.5 0 0 1 14 51.5V24.5A10.5 10.5 0 0 1 24.5 14Z" fill="url(#g)" fill-opacity="0.61" fill-rule="evenodd"/><path d="M28.5 18H55.5A10.5 10.5 0 0 1 66 28.5V55.5A10.5 10.5 0 0 1 55.5 66H28.5A10.5 10.5 0 0 1 18 55.5V28.5A10.5 10.5 0 0 1 28.5 18Z" fill="url(#g)" fill-rule="evenodd"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" transform="translate(0 1.6)" fill="#6b0000" fill-opacity="0.45" filter="url(#s)"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" fill="#fff" fill-rule="evenodd"/></svg>
package/family/id.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="14 14 52 52"><defs><linearGradient id="g" x1="14" y1="14" x2="66" y2="66" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff2a2a"/><stop offset="1" stop-color="#e60000"/></linearGradient><filter id="s" x="-20%" y="-20%" width="140%" height="140%"><feGaussianBlur stdDeviation="1.1"/></filter></defs><path d="M24.5 14H51.5A10.5 10.5 0 0 1 62 24.5V51.5A10.5 10.5 0 0 1 51.5 62H24.5A10.5 10.5 0 0 1 14 51.5V24.5A10.5 10.5 0 0 1 24.5 14Z" fill="url(#g)" fill-opacity="0.4" fill-rule="evenodd"/><path d="M28.5 18H55.5A10.5 10.5 0 0 1 66 28.5V55.5A10.5 10.5 0 0 1 55.5 66H28.5A10.5 10.5 0 0 1 18 55.5V28.5A10.5 10.5 0 0 1 28.5 18Z" fill="url(#g)" fill-rule="evenodd"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" transform="translate(0 1.6)" fill="#6b0000" fill-opacity="0.45" filter="url(#s)"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" fill="#fff" fill-rule="evenodd"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><svg x="0" y="0" width="64" height="64" viewBox="14 14 52 52"><defs><linearGradient id="g" x1="14" y1="14" x2="66" y2="66" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ff2a2a"/><stop offset="1" stop-color="#e60000"/></linearGradient><filter id="s" x="-20%" y="-20%" width="140%" height="140%"><feGaussianBlur stdDeviation="1.1"/></filter></defs><path d="M24.5 14H51.5A10.5 10.5 0 0 1 62 24.5V51.5A10.5 10.5 0 0 1 51.5 62H24.5A10.5 10.5 0 0 1 14 51.5V24.5A10.5 10.5 0 0 1 24.5 14Z" fill="url(#g)" fill-opacity="0.4" fill-rule="evenodd"/><path d="M28.5 18H55.5A10.5 10.5 0 0 1 66 28.5V55.5A10.5 10.5 0 0 1 55.5 66H28.5A10.5 10.5 0 0 1 18 55.5V28.5A10.5 10.5 0 0 1 28.5 18Z" fill="url(#g)" fill-rule="evenodd"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" transform="translate(0 1.6)" fill="#6b0000" fill-opacity="0.45" filter="url(#s)"/><path d="M37.8 28L46.2 28L46.2 37.8L56 37.8L56 46.2L46.2 46.2L46.2 56L37.8 56L37.8 46.2L28 46.2L28 37.8L37.8 37.8Z" fill="#fff" fill-rule="evenodd"/></svg></svg>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hgdc/ui",
3
- "version": "0.46.0",
3
+ "version": "0.47.1",
4
4
  "description": "Interface de la H Collection : 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",
package/styles.css CHANGED
@@ -297,6 +297,8 @@
297
297
  --product-docs-to: #0aa3c1;
298
298
  --product-iassistant-from: #d946ef;
299
299
  --product-iassistant-to: #c026d3;
300
+ --product-id-from: #ff2a2a;
301
+ --product-id-to: #e60000;
300
302
  --glow-blue: #2c78fd;
301
303
  --glow-violet: #7343fe;
302
304
  --glow-pink: #fe5292;
@@ -862,7 +864,8 @@
862
864
  :root[data-hgdc-product="status"] [data-slot="shell-frame"] [data-product="status"],
863
865
  :root[data-hgdc-product="analytics"] [data-slot="shell-frame"] [data-product="analytics"],
864
866
  :root[data-hgdc-product="docs"] [data-slot="shell-frame"] [data-product="docs"],
865
- :root[data-hgdc-product="iassistant"] [data-slot="shell-frame"] [data-product="iassistant"] {
867
+ :root[data-hgdc-product="iassistant"] [data-slot="shell-frame"] [data-product="iassistant"],
868
+ :root[data-hgdc-product="id"] [data-slot="shell-frame"] [data-product="id"] {
866
869
  display: contents;
867
870
  }
868
871
  :root[data-hgdc-product="account"] [data-slot="shell-frame-rail"] [data-product="account"],
@@ -872,7 +875,8 @@
872
875
  :root[data-hgdc-product="status"] [data-slot="shell-frame-rail"] [data-product="status"],
873
876
  :root[data-hgdc-product="analytics"] [data-slot="shell-frame-rail"] [data-product="analytics"],
874
877
  :root[data-hgdc-product="docs"] [data-slot="shell-frame-rail"] [data-product="docs"],
875
- :root[data-hgdc-product="iassistant"] [data-slot="shell-frame-rail"] [data-product="iassistant"] {
878
+ :root[data-hgdc-product="iassistant"] [data-slot="shell-frame-rail"] [data-product="iassistant"],
879
+ :root[data-hgdc-product="id"] [data-slot="shell-frame-rail"] [data-product="id"] {
876
880
  display: flex;
877
881
  background: var(--shell-active);
878
882
  color: var(--shell-foreground);