{"version":3,"file":"shared-lib.0YuYLLEI.mjs","names":["useId","useMemo","_Fragment"],"sources":["https:/framerusercontent.com/modules/1KRS1ZGxivWwjjuwPuKq/9lwvWLWDCYJRsLyWAfDx/GivzFrame.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,useReducedMotion}from\"framer-motion\";import{useId,useMemo}from\"react\";function Star({color,size=11}){return /*#__PURE__*/_jsx(\"svg\",{width:size,height:size,viewBox:\"0 0 12 12\",fill:\"none\",\"aria-hidden\":\"true\",style:{display:\"block\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M6 0.6c.35 2.6 2.8 5.05 5.4 5.4-2.6.35-5.05 2.8-5.4 5.4-.35-2.6-2.8-5.05-5.4-5.4C3.2 5.65 5.65 3.2 6 .6z\",fill:color})});}/** Tiled diagonal hatch, drawn as an SVG so the strokes stay sub-pixel and smooth. */function hatchTile(color){const svg='<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"127\" height=\"126\" fill=\"none\">'+'<path fill=\"transparent\" stroke=\"'+color+'\" stroke-miterlimit=\"10\" stroke-width=\"4\" '+'d=\"M-2 24 23-1M-2 66 66-2M-2 108 107-1M20 128 126 22m1 41-65 65m67-25-25 25\"/></svg>';return'url(\"data:image/svg+xml,'+encodeURIComponent(svg)+'\")';}/**\r\n * Rails and rules must read stronger than the hatch — that is the relationship\r\n * on the reference site. Same hue, alpha multiplied. Falls back untouched if the\r\n * colour is not a plain rgb()/rgba() string.\r\n */function strongLine(color,factor){const m=/^rgba?\\(\\s*([\\d.]+)[\\s,]+([\\d.]+)[\\s,]+([\\d.]+)(?:[\\s,/]+([\\d.]+))?\\s*\\)$/i.exec(String(color).trim());if(!m)return color;const a=m[4]===undefined?1:parseFloat(m[4]);const next=Math.min(1,Math.round(a*factor*100)/100);return\"rgba(\"+m[1]+\", \"+m[2]+\", \"+m[3]+\", \"+next+\")\";}/**\r\n * @framerSupportedLayoutWidth any-prefer-fixed\r\n * @framerSupportedLayoutHeight any-prefer-fixed\r\n */export default function GivzFrame(props){const{frameWidth=1320,lineColor=\"rgba(20,20,15,0.20)\",glowColor=\"rgba(102,205,52,0.45)\",rails=true,topRule=true,bottomRule=false,stars=true,sideHatch=true,overImageFill=false,hatchTop=0,hatchBottom=0,internalLines=\"\",boundedRules=false,animate=true,speed=1}=props;const isStatic=useIsStaticRenderer();const reduceMotion=useReducedMotion();/* Le halo qui suivait le curseur le long des filets a été RETIRÉ le\r\n       2026-08-08 à la demande du client : « ça ne sert à rien à part alourdir\r\n       le site ». Il coûtait un écouteur `pointermove` au niveau du document\r\n       PAR INSTANCE, soit ~42 écouteurs déclenchés à chaque mouvement de\r\n       souris, plus deux calques `background-attachment:fixed` par filet. Ne\r\n       pas le réintroduire sans un vrai besoin. */const moving=animate&&!isStatic&&!reduceMotion;const staticBeam=animate&&isStatic&&!reduceMotion;/* Continuous comet loops with speed multiplier. */const rate=Math.min(Math.max(speed,.25),3);const verticalSweep=3.1/rate;const horizontalSweep=2.6/rate;/**\r\n     * Chaque section porte sa propre instance de ce composant, et toutes\r\n     * montaient avec les mêmes délais : en descendant la page, les filets hauts\r\n     * partaient tous ensemble. On tire donc une graine déterministe de l'id\r\n     * React de l'instance (stable entre serveur et client, contrairement à\r\n     * Math.random) pour décaler chaque comète — d'une section à l'autre ET d'un\r\n     * filet à l'autre.\r\n     */const scopeSeed=useId();const seed=useMemo(()=>{let hash=0;for(let index=0;index<scopeSeed.length;index++){hash=hash*31+scopeSeed.charCodeAt(index)>>>0;}return hash;},[scopeSeed]);const jitter=slot=>{const value=(seed>>>slot%11)*2654435761;return(value>>>8)%1e3/1e3;};/**\r\n     * Every instance injects a <style> tag into the SAME document. With plain\r\n     * `.gfr-*` selectors the last instance in the DOM wins for all of them, so\r\n     * the two green sections were painting their white rails and rules over the\r\n     * nine light ones (white on white = invisible). Scoping every rule to a\r\n     * per-instance class keeps each instance's colours to itself.\r\n     */const sc=\".gfr-\"+(scopeSeed.replace(/[^a-zA-Z0-9_-]/g,\"\")||\"x\");const scopeClass=sc.slice(1);const hatch=hatchTile(\"rgba(20,20,15,0.10)\");const ruleColor=strongLine(lineColor,2.1);const parsedInternalLines=useMemo(()=>{return internalLines.split(\",\").map(value=>Number.parseFloat(value.trim())).filter(value=>Number.isFinite(value)&&value>=0);},[internalLines]);const css=`\r\n${sc}.gfr-root { position:absolute; inset:0; z-index:${overImageFill?0:-1}; pointer-events:none; overflow:hidden; }\r\n${sc} .gfr-in { position:relative; height:100%; width:100%; max-width:min(${frameWidth}px, calc(100% - 20px)); margin:0 auto; }\r\n${sc} .gfr-rail { position:absolute; top:0; bottom:0; width:1px; background:${ruleColor}; z-index:2; }\r\n${sc} .gfr-rule { position:absolute; left:0; right:0; height:1px; background:${ruleColor}; }\r\n${sc} .gfr-rule-full { position:absolute; left:0; right:0; height:1px; background:${ruleColor}; }\r\n/* Les halos radiaux sur les filets ont \\xe9t\\xe9 retir\\xe9s le 2026-08-09 : le client\r\n   ne veut plus que l'\\xe9toile filante. */\r\n${sc} .gfr-star { position:absolute; transform:translate(-50%,-50%); }\r\n${sc} .gfr-band { position:absolute; left:0; right:0; opacity:1;\r\n  background-image:${hatch}; background-size:22px; background-repeat:repeat; }\r\n${sc} .gfr-side { position:absolute; top:0; bottom:0; width:100vw; opacity:1; z-index:0;\r\n  background-image:${hatch}; background-size:22px; background-repeat:repeat; }\r\n${sc} .gfr-side-l { right:100%; background-position:right top; }\r\n${sc} .gfr-side-r { left:100%; background-position:left top; }\r\n/* \\xc9toile filante, exactement le rendu des com\\xe8tes du diagramme Givz\r\n   Intelligence : un coeur fin et net (2px) doubl\\xe9 d'un halo flout\\xe9 (7px), tous\r\n   deux peints par le m\\xeame d\\xe9grad\\xe9 qui monte de transparent \\xe0 la couleur pleine\r\n   c\\xf4t\\xe9 t\\xeate. Le bo\\xeetier gfr-comet ne sert qu'\\xe0 porter le d\\xe9placement. */\r\n${sc} .gfr-comet-v { position:absolute; left:0; width:1px; height:170px; z-index:3; will-change:transform; }\r\n${sc} .gfr-comet-v .cc { position:absolute; top:0; bottom:0; left:-0.5px; right:-0.5px; border-radius:2px;\r\n  background:linear-gradient(to bottom, transparent 0%, ${glowColor} 100%); }\r\n${sc} .gfr-comet-h { position:absolute; top:0; height:1px; width:220px; z-index:3; will-change:transform; }\r\n${sc} .gfr-comet-h .cc { position:absolute; left:0; right:0; top:-0.5px; bottom:-0.5px; border-radius:2px;\r\n  background:linear-gradient(to right, transparent 0%, ${glowColor} 100%); }\r\n@media (prefers-reduced-motion: reduce) { ${sc} .gfr-comet-v, ${sc} .gfr-comet-h { display:none; } }\r\n`;/**\r\n     * Une étoile filante ne va pas au bout de sa course : elle s'éteint en\r\n     * chemin. L'opacité retombe donc à zéro entre 52 % et 78 % du trajet, à un\r\n     * point tiré par instance et par filet, puis y reste jusqu'au recyclage.\r\n     */const cometProps=(axis,slot)=>{const sweep=axis===\"v\"?verticalSweep:horizontalSweep;const key=axis===\"v\"?\"top\":\"left\";const delay=jitter(slot)*sweep*.95;const fade=.52+jitter(slot+6)*.26;return{initial:{[key]:\"-14%\",opacity:0},animate:{[key]:[\"-14%\",\"106%\"],opacity:[0,1,1,0,0]},transition:{[key]:{duration:sweep,repeat:Infinity,delay,ease:\"linear\"},opacity:{duration:sweep,repeat:Infinity,delay,times:[0,.09,Math.max(.22,fade-.16),fade,1],ease:\"linear\"}}};};/**\r\n     * Les filets horizontaux. Par défaut ils traversent toute la largeur de la\r\n     * section ; avec `boundedRules` ils sont rendus DANS `.gfr-in`, donc bornés\r\n     * exactement aux deux rails — ils s'arrêtent au montant au lieu de le\r\n     * traverser.\r\n     */const streak=/*#__PURE__*/_jsx(\"span\",{className:\"cc\"});const Rule=({place,slot})=>/*#__PURE__*/_jsxs(\"div\",{className:\"gfr-rule-full\",style:place,children:[moving&&/*#__PURE__*/_jsx(motion.div,{className:\"gfr-comet-h\",...cometProps(\"h\",slot),children:streak}),staticBeam&&/*#__PURE__*/_jsx(\"div\",{className:\"gfr-comet-h\",style:{left:\"44%\",opacity:1},children:streak})]});/* Chaque filet a son propre créneau — jamais deux étoiles en phase, ni\r\n       dans une section, ni d'une section à l'autre. */const rules=/*#__PURE__*/_jsxs(_Fragment,{children:[topRule&&/*#__PURE__*/_jsx(Rule,{place:{top:0},slot:2}),bottomRule&&/*#__PURE__*/_jsx(Rule,{place:{bottom:0},slot:3}),parsedInternalLines.map((offset,index)=>/*#__PURE__*/_jsx(Rule,{place:{top:offset},slot:4+index},`internal-${index}-${offset}`))]});return /*#__PURE__*/_jsxs(\"div\",{style:{...props.style},className:\"gfr-root \"+scopeClass,\"aria-hidden\":\"true\",children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:css}}),hatchTop>0&&/*#__PURE__*/_jsx(\"div\",{className:\"gfr-band\",style:{top:0,height:hatchTop}}),hatchBottom>0&&/*#__PURE__*/_jsx(\"div\",{className:\"gfr-band\",style:{bottom:0,height:hatchBottom}}),!boundedRules&&rules,/*#__PURE__*/_jsxs(\"div\",{className:\"gfr-in\",children:[boundedRules&&rules,sideHatch&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{className:\"gfr-side gfr-side-l\"}),/*#__PURE__*/_jsx(\"div\",{className:\"gfr-side gfr-side-r\"})]}),rails&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{className:\"gfr-rail\",style:{left:0},children:[moving&&/*#__PURE__*/_jsx(motion.div,{className:\"gfr-comet-v\",...cometProps(\"v\",0),children:streak}),staticBeam&&/*#__PURE__*/_jsx(\"div\",{className:\"gfr-comet-v\",style:{top:\"36%\",opacity:1},children:streak})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"gfr-rail\",style:{right:0},children:[moving&&/*#__PURE__*/_jsx(motion.div,{className:\"gfr-comet-v\",...cometProps(\"v\",1),children:streak}),staticBeam&&/*#__PURE__*/_jsx(\"div\",{className:\"gfr-comet-v\",style:{top:\"64%\",opacity:1},children:streak})]})]}),stars&&topRule&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{className:\"gfr-star\",style:{left:0,top:0},children:/*#__PURE__*/_jsx(Star,{color:lineColor})}),/*#__PURE__*/_jsx(\"div\",{className:\"gfr-star\",style:{left:\"100%\",top:0},children:/*#__PURE__*/_jsx(Star,{color:lineColor})})]}),stars&&bottomRule&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{className:\"gfr-star\",style:{left:0,top:\"100%\"},children:/*#__PURE__*/_jsx(Star,{color:lineColor})}),/*#__PURE__*/_jsx(\"div\",{className:\"gfr-star\",style:{left:\"100%\",top:\"100%\"},children:/*#__PURE__*/_jsx(Star,{color:lineColor})})]})]})]});}addPropertyControls(GivzFrame,{frameWidth:{type:ControlType.Number,title:\"Largeur\",defaultValue:1320,min:900,max:1800,step:8,unit:\"px\",description:\"1320 = l\\xe9g\\xe8rement au-del\\xe0 du pont OS (1300px). Toujours born\\xe9 \\xe0 100% − 20px.\"},lineColor:{type:ControlType.Color,title:\"Filet\",defaultValue:\"rgba(20,20,15,0.20)\"},glowColor:{type:ControlType.Color,title:\"Halo\",defaultValue:\"rgba(102,205,52,0.45)\"},rails:{type:ControlType.Boolean,title:\"Rails\",defaultValue:true,description:\"D\\xe9cocher pour un filet horizontal seul, sans montants verticaux.\"},topRule:{type:ControlType.Boolean,title:\"Filet haut\",defaultValue:true},bottomRule:{type:ControlType.Boolean,title:\"Filet bas\",defaultValue:false},stars:{type:ControlType.Boolean,title:\"\\xc9toiles\",defaultValue:true},sideHatch:{type:ControlType.Boolean,title:\"Hachures lat\\xe9rales\",defaultValue:true},overImageFill:{type:ControlType.Boolean,title:\"Fond photo\",defaultValue:false,description:\"\\xc0 cocher quand la section a un fond image ou vid\\xe9o. Framer rend ce fond comme un calque enfant : sans cette option l'encadrement passerait dessous et deviendrait invisible.\"},hatchTop:{type:ControlType.Number,title:\"Bande haut\",defaultValue:0,min:0,max:200,step:4,unit:\"px\"},hatchBottom:{type:ControlType.Number,title:\"Bande bas\",defaultValue:0,min:0,max:200,step:4,unit:\"px\"},internalLines:{type:ControlType.String,title:\"Lignes internes\",defaultValue:\"\",placeholder:\"480, 920\"},boundedRules:{type:ControlType.Boolean,title:\"Filets born\\xe9s\",defaultValue:false,description:\"Les filets horizontaux s'arr\\xeatent sur les rails au lieu de les traverser.\"},animate:{type:ControlType.Boolean,title:\"Halo anim\\xe9\",defaultValue:true},speed:{type:ControlType.Number,title:\"Vitesse\",defaultValue:1,min:.25,max:3,step:.05,hidden:p=>!p.animate}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"GivzFrame\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./GivzFrame.map"],"mappings":"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"}