SPB Git forge

spb/job-ka

Public
227commits 1branches 0releases
37.7 MBsize
maindefault branch
28 min agolast push
HTML 82.1% Python 14.6% TypeScript 1.9% CSS 1% JavaScript 0.5%
1018 B · 27 lines typescript
Raw Blame History
1// -----------------------------------------------------------------------------2// Job·Ka — Agrégateur d'offres d'emploi (province de Québec)3// Auteur : Simon-Pierre Boucher — contact@spboucher.ai4// fiche/current.ts : mini-magasin « fiche affichée » partagé entre la page5//   fiche et le header compact (favoris ♥ + partage). Le toggle favoris du6//   compte KA exige l'objet Job complet (titre, image, prix pour le hub) :7//   la page le publie ici, le header le lit sans re-fetch.8// -----------------------------------------------------------------------------9import { useSyncExternalStore } from "react";10import type { Job } from "../api";1112let current: Job | null = null;13const subs = new Set<() => void>();1415export function setCurrentListing(l: Job | null) {16  current = l;17  subs.forEach((f) => f());18}1920export function useCurrentListing(): Job | null {21  return useSyncExternalStore(22    (cb) => { subs.add(cb); return () => { subs.delete(cb); }; },23    () => current,24    () => null,25  );26}27