{"version":3,"file":"TradingTableau.DU4p3DbQ.mjs","names":["useRef","useState","useCallback","useMemo"],"sources":["https:/framerusercontent.com/modules/OPXo8JxAs1mJNDoaRkjs/76CxwSWR7vk4TwY7xMFJ/TradingTableau.js"],"sourcesContent":["// Framer Code Component — Engine Info\n// Two-column layout: title left, content right (Section mode)\n// OR full-width styled table (Table mode)\n// Auto-detects content type from CMS RichText\n// ControlType.RichText passe un React node (JSX), pas un string\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState,useRef,useEffect,useMemo,useCallback}from\"react\";// ─── Parsers ─────────────────────────────────────────────────\nfunction parseHtml(html){if(!html||typeof html!==\"string\"||!html.trim())return[];const parser=new DOMParser;const doc=parser.parseFromString(html,\"text/html\");const nodes=Array.from(doc.body.childNodes);const sections=[];let currentTitle=\"\";let currentBody=[];for(const node of nodes){const el=node;const tag=el.tagName?.toLowerCase()||\"\";const isHeading=/^h[1-6]$/.test(tag);const isBoldParagraph=tag===\"p\"&&el.childNodes.length===1&&el.firstChild?.tagName?.toLowerCase()===\"strong\";if(isHeading||isBoldParagraph){if(currentTitle){sections.push({title:currentTitle,body:currentBody.join(\"\")});}currentTitle=(el.textContent||\"\").trim();currentBody=[];}else{const outerHTML=el.outerHTML||(node.textContent||\"\").trim();if(outerHTML.trim())currentBody.push(outerHTML);}}if(currentTitle){sections.push({title:currentTitle,body:currentBody.join(\"\")});}return sections;}function parseTable(html){if(!html||typeof html!==\"string\")return null;const parser=new DOMParser;const doc=parser.parseFromString(html,\"text/html\");const table=doc.querySelector(\"table\");if(!table)return null;const headers=[];const rows=[];const thead=table.querySelector(\"thead\");const headerRow=thead?thead.querySelector(\"tr\"):table.querySelector(\"tr\");if(headerRow){headerRow.querySelectorAll(\"th, td\").forEach(cell=>{headers.push(cell.innerHTML.trim());});}const tbody=table.querySelector(\"tbody\");const bodyRows=tbody?tbody.querySelectorAll(\"tr\"):table.querySelectorAll(\"tr\");bodyRows.forEach((tr,i)=>{if(!thead&&i===0)return;const cells=[];tr.querySelectorAll(\"td, th\").forEach(cell=>{cells.push(cell.innerHTML.trim());});if(cells.length>0)rows.push(cells);});if(headers.length===0&&rows.length===0)return null;return{headers,rows};}function detectContentType(html){if(!html||!html.trim())return\"empty\";const parser=new DOMParser;const doc=parser.parseFromString(html,\"text/html\");if(doc.querySelector(\"table\"))return\"table\";return\"sections\";}// ─── CSS ─────────────────────────────────────────────────────\nconst richTextCSS=`\n.engine-info-rt ul, .engine-info-rt ol { margin: 0; padding-left: 1.4em; }\n.engine-info-rt li { margin-bottom: 0.3em; }\n.engine-info-rt p { margin: 0 0 0.4em 0; }\n.engine-info-rt p:last-child { margin-bottom: 0; }\n.engine-info-rt strong { font-weight: 600; }\n.engine-info-rt a { color: inherit; text-decoration: underline; }\n.engine-info-rt * { font-family: inherit; font-size: inherit; font-weight: inherit; color: inherit; line-height: inherit; }\n`;// ─── Sub-components ──────────────────────────────────────────\nfunction InfoRow({section,isLast,isStacked,titleWidthPercent,titleFont,titleSize,titleWeight,titleColor,textFont,textSize,textWeight,textColor,textLineHeight,showDivider,dividerColor,dividerThickness,itemPaddingY,columnGap,rowGap,cellPaddingX}){const hasHtml=/<[a-z][\\s\\S]*>/i.test(section.body);return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",paddingTop:itemPaddingY,paddingBottom:itemPaddingY,paddingLeft:cellPaddingX,paddingRight:cellPaddingX,borderBottom:showDivider&&!isLast?`${dividerThickness}px solid ${dividerColor}`:\"none\",display:\"flex\",flexDirection:isStacked?\"column\":\"row\",alignItems:\"flex-start\",gap:isStacked?rowGap:columnGap,boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:isStacked?\"100%\":`${titleWidthPercent}%`,flexShrink:0,flexGrow:0,flexBasis:isStacked?\"auto\":`${titleWidthPercent}%`},children:/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:titleFont,fontSize:titleSize,fontWeight:titleWeight,color:titleColor,lineHeight:1.4,display:\"block\"},children:section.title})}),/*#__PURE__*/_jsx(\"div\",{style:{flex:\"1 1 0\",minWidth:0,width:isStacked?\"100%\":\"auto\"},children:hasHtml?/*#__PURE__*/_jsx(\"div\",{className:\"engine-info-rt\",dangerouslySetInnerHTML:{__html:section.body},style:{fontFamily:textFont,fontSize:textSize,fontWeight:textWeight,color:textColor,lineHeight:textLineHeight}}):/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:textFont,fontSize:textSize,fontWeight:textWeight,color:textColor,lineHeight:textLineHeight,whiteSpace:\"pre-line\",display:\"block\"},children:section.body})})]});}function TableView({data,isStacked,titleWidthPercent,titleFont,titleSize,titleWeight,titleColor,textFont,textSize,textWeight,textColor,textLineHeight,showDivider,dividerColor,dividerThickness,itemPaddingY,columnGap,tableHeaderBg,tableHeaderPadding,tableCellPaddingX,tableStripedBg,tableStriped}){const borderStyle=showDivider?`${dividerThickness}px solid ${dividerColor}`:\"none\";const cellPadding=`${itemPaddingY}px ${tableCellPaddingX}px`;if(isStacked&&data.headers.length>0){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",width:\"100%\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"row\",alignItems:\"baseline\",gap:columnGap,padding:cellPadding,background:tableHeaderBg,borderBottom:borderStyle},children:data.headers.map((header,i)=>/*#__PURE__*/_jsx(\"div\",{className:\"engine-info-rt\",dangerouslySetInnerHTML:{__html:header},style:{width:i===0?`${titleWidthPercent}%`:undefined,minWidth:i===0?`${titleWidthPercent}%`:0,flexShrink:i===0?0:1,flex:i===0?\"none\":1,fontFamily:titleFont,fontSize:titleSize,fontWeight:titleWeight,color:titleColor,lineHeight:1.4}},i))}),data.rows.map((row,ri)=>/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"row\",alignItems:\"baseline\",gap:columnGap,padding:cellPadding,borderBottom:showDivider&&ri<data.rows.length-1?borderStyle:\"none\"},children:row.map((cell,ci)=>/*#__PURE__*/_jsx(\"div\",{className:\"engine-info-rt\",dangerouslySetInnerHTML:{__html:cell},style:{width:ci===0?`${titleWidthPercent}%`:undefined,minWidth:ci===0?`${titleWidthPercent}%`:0,flexShrink:ci===0?0:1,flex:ci===0?\"none\":1,fontFamily:ci===0?titleFont:textFont,fontSize:ci===0?titleSize:textSize,fontWeight:ci===0?titleWeight:textWeight,color:ci===0?titleColor:textColor,lineHeight:ci===0?1.4:textLineHeight}},ci))},ri))]});}return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",overflowX:\"auto\"},children:/*#__PURE__*/_jsxs(\"table\",{style:{width:\"100%\",borderCollapse:\"collapse\",borderSpacing:0},children:[data.headers.length>0&&/*#__PURE__*/_jsx(\"thead\",{children:/*#__PURE__*/_jsx(\"tr\",{children:data.headers.map((header,i)=>/*#__PURE__*/_jsx(\"th\",{style:{padding:`${tableHeaderPadding}px ${tableCellPaddingX}px`,textAlign:\"left\",fontFamily:titleFont,fontSize:titleSize,fontWeight:titleWeight,color:titleColor,lineHeight:1.4,borderBottom:borderStyle,background:tableHeaderBg,whiteSpace:\"nowrap\"},children:/*#__PURE__*/_jsx(\"span\",{dangerouslySetInnerHTML:{__html:header}})},i))})}),/*#__PURE__*/_jsx(\"tbody\",{children:data.rows.map((row,ri)=>/*#__PURE__*/_jsx(\"tr\",{style:{background:tableStriped&&ri%2===1?tableStripedBg:\"transparent\"},children:row.map((cell,ci)=>/*#__PURE__*/_jsx(\"td\",{style:{padding:cellPadding,textAlign:\"left\",borderBottom:showDivider&&ri<data.rows.length-1?borderStyle:\"none\",verticalAlign:\"top\"},children:/*#__PURE__*/_jsx(\"div\",{className:\"engine-info-rt\",dangerouslySetInnerHTML:{__html:cell},style:{fontFamily:ci===0?titleFont:textFont,fontSize:ci===0?titleSize:textSize,fontWeight:ci===0?titleWeight:textWeight,color:ci===0?titleColor:textColor,lineHeight:ci===0?1.4:textLineHeight}})},ci))},ri))})]})});}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function EngineInfo(props){const{content,layoutMode,breakpoint,titleWidthPercent,titleFont,titleSize,titleWeight,titleColor,textFont,textSize,textWeight,textColor,textLineHeight,showDivider,showTopDivider,dividerColor,dividerThickness,itemPaddingY,columnGap,rowGap,tableHeaderBg,tableHeaderPadding,tableCellPaddingX,tableStriped,tableStripedBg,style}=props;const containerRef=useRef(null);const hiddenRef=useRef(null);const[extractedHtml,setExtractedHtml]=useState(\"\");const[containerWidth,setContainerWidth]=useState(0);// Lecture stable du HTML depuis le RichText (compatible localisation Framer)\nconst readHtml=useCallback(()=>{const html=hiddenRef.current?.innerHTML??\"\";// On met à jour même si vide, et on compare pour éviter les boucles\nsetExtractedHtml(prev=>prev===html?prev:html);},[]);// Observer PERSISTANT — monté une seule fois, jamais détaché.\n// Évite la race condition où Framer mute le DOM (changement de locale)\n// entre le teardown de l'ancien observer et l'attache du nouveau.\nuseEffect(()=>{const el=hiddenRef.current;if(!el)return;readHtml();const observer=new MutationObserver(readHtml);observer.observe(el,{childList:true,subtree:true,characterData:true,attributes:true});return()=>observer.disconnect();},[readHtml]);// Relecture quand le node RichText change (la ref de `content` change\n// à la volée au switch de langue natif Framer).\nuseEffect(()=>{const raf=requestAnimationFrame(readHtml);const t1=setTimeout(readHtml,50);const t2=setTimeout(readHtml,300)// contenu localisé peint en différé\n;return()=>{cancelAnimationFrame(raf);clearTimeout(t1);clearTimeout(t2);};},[content,readHtml]);// Responsive: observe container width\nuseEffect(()=>{if(!containerRef.current)return;// Initial measure\nsetContainerWidth(containerRef.current.offsetWidth);const ro=new ResizeObserver(entries=>{for(const entry of entries){setContainerWidth(entry.contentRect.width);}});ro.observe(containerRef.current);return()=>ro.disconnect();},[]);// Compute stacked state from layoutMode\nconst isStacked=useMemo(()=>{if(layoutMode===\"horizontal\")return false;if(layoutMode===\"vertical\")return true;// auto\nreturn containerWidth>0&&containerWidth<breakpoint;},[layoutMode,containerWidth,breakpoint]);const contentType=useMemo(()=>detectContentType(extractedHtml),[extractedHtml]);const sections=useMemo(()=>contentType===\"sections\"?parseHtml(extractedHtml):[],[extractedHtml,contentType]);const tableData=useMemo(()=>contentType===\"table\"?parseTable(extractedHtml):null,[extractedHtml,contentType]);return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{...style,display:\"flex\",flexDirection:\"column\",width:\"100%\",position:\"relative\",borderTop:showDivider&&showTopDivider&&contentType===\"sections\"&&sections.length>0?`${dividerThickness}px solid ${dividerColor}`:\"none\"},children:[/*#__PURE__*/_jsx(\"style\",{children:richTextCSS}),/*#__PURE__*/_jsx(\"div\",{ref:hiddenRef,\"aria-hidden\":\"true\",style:{position:\"absolute\",width:1,height:1,overflow:\"hidden\",clip:\"rect(0,0,0,0)\",whiteSpace:\"nowrap\",pointerEvents:\"none\"},children:content}),contentType===\"empty\"&&/*#__PURE__*/_jsx(\"div\",{style:{padding:16,color:\"#999\",fontSize:14,textAlign:\"center\",opacity:.5},children:\"Connectez un champ Formatted Text du CMS (sections ou tableau)\"}),contentType===\"sections\"&&sections.map((section,index)=>/*#__PURE__*/_jsx(InfoRow,{section:section,isLast:index===sections.length-1,isStacked:isStacked,titleWidthPercent:titleWidthPercent,titleFont:titleFont,titleSize:titleSize,titleWeight:titleWeight,titleColor:titleColor,textFont:textFont,textSize:textSize,textWeight:textWeight,textColor:textColor,textLineHeight:textLineHeight,showDivider:showDivider,dividerColor:dividerColor,dividerThickness:dividerThickness,itemPaddingY:itemPaddingY,columnGap:columnGap,rowGap:rowGap,cellPaddingX:tableCellPaddingX},index)),contentType===\"table\"&&tableData&&/*#__PURE__*/_jsx(TableView,{data:tableData,isStacked:isStacked,titleWidthPercent:titleWidthPercent,titleFont:titleFont,titleSize:titleSize,titleWeight:titleWeight,titleColor:titleColor,textFont:textFont,textSize:textSize,textWeight:textWeight,textColor:textColor,textLineHeight:textLineHeight,showDivider:showDivider,dividerColor:dividerColor,dividerThickness:dividerThickness,itemPaddingY:itemPaddingY,columnGap:columnGap,tableHeaderBg:tableHeaderBg,tableHeaderPadding:tableHeaderPadding,tableCellPaddingX:tableCellPaddingX,tableStripedBg:tableStripedBg,tableStriped:tableStriped})]});}EngineInfo.defaultProps={type:\"Engine Info\",content:null,layoutMode:\"vertical\",breakpoint:480,titleWidthPercent:30,titleFont:\"Hanken Grotesk, sans-serif\",titleSize:18,titleWeight:600,titleColor:\"#1a1a1a\",textFont:\"Hanken Grotesk, sans-serif\",textSize:15,textWeight:400,textColor:\"#666666\",textLineHeight:1.6,showDivider:true,showTopDivider:true,dividerColor:\"#e5e5e5\",dividerThickness:1,itemPaddingY:20,columnGap:32,rowGap:8,tableHeaderBg:\"rgba(0,0,0,0.03)\",tableHeaderPadding:20,tableCellPaddingX:16,tableStriped:false,tableStripedBg:\"rgba(0,0,0,0.02)\"};addPropertyControls(EngineInfo,{type:{type:ControlType.String,title:\"Type\",defaultValue:\"Engine Info\"},content:{type:ControlType.RichText,title:\"Content\"},layoutMode:{type:ControlType.Enum,title:\"Layout\",defaultValue:\"vertical\",options:[\"auto\",\"horizontal\",\"vertical\"],optionTitles:[\"Auto (responsive)\",\"Always horizontal\",\"Always vertical\"],displaySegmentedControl:false},breakpoint:{type:ControlType.Number,title:\"Breakpoint\",defaultValue:480,min:200,max:2e3,step:10,unit:\"px\",hidden:props=>props.layoutMode!==\"auto\"},titleWidthPercent:{type:ControlType.Number,title:\"Title Width\",defaultValue:30,min:15,max:50,step:5,unit:\"%\"},titleFont:{type:ControlType.String,title:\"Title Font\",defaultValue:\"Hanken Grotesk, sans-serif\"},titleSize:{type:ControlType.Number,title:\"Title Size\",defaultValue:18,min:10,max:48,step:1},titleWeight:{type:ControlType.Number,title:\"Title Weight\",defaultValue:600,min:100,max:900,step:100},titleColor:{type:ControlType.Color,title:\"Title Color\",defaultValue:\"#1a1a1a\"},textFont:{type:ControlType.String,title:\"Text Font\",defaultValue:\"Hanken Grotesk, sans-serif\"},textSize:{type:ControlType.Number,title:\"Text Size\",defaultValue:15,min:10,max:36,step:1},textWeight:{type:ControlType.Number,title:\"Text Weight\",defaultValue:400,min:100,max:900,step:100},textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#666666\"},textLineHeight:{type:ControlType.Number,title:\"Text Line Height\",defaultValue:1.6,min:1,max:2.5,step:.1},showDivider:{type:ControlType.Boolean,title:\"Show Divider\",defaultValue:true},showTopDivider:{type:ControlType.Boolean,title:\"Top Divider\",defaultValue:true,hidden:props=>!props.showDivider},dividerColor:{type:ControlType.Color,title:\"Divider Color\",defaultValue:\"#e5e5e5\",hidden:props=>!props.showDivider},dividerThickness:{type:ControlType.Number,title:\"Divider Thickness\",defaultValue:1,min:1,max:4,step:.5,hidden:props=>!props.showDivider},itemPaddingY:{type:ControlType.Number,title:\"Item Padding Y\",defaultValue:20,min:4,max:48,step:2},columnGap:{type:ControlType.Number,title:\"Column Gap\",defaultValue:32,min:8,max:80,step:4},rowGap:{type:ControlType.Number,title:\"Row Gap (Stacked)\",defaultValue:8,min:0,max:32,step:2},tableHeaderBg:{type:ControlType.Color,title:\"Header Bg\",defaultValue:\"rgba(0,0,0,0.03)\"},tableHeaderPadding:{type:ControlType.Number,title:\"Header Padding\",defaultValue:20,min:4,max:48,step:2,unit:\"px\"},tableCellPaddingX:{type:ControlType.Number,title:\"Padding X\",defaultValue:16,min:0,max:48,step:2,unit:\"px\"},tableStriped:{type:ControlType.Boolean,title:\"Striped Rows\",defaultValue:false},tableStripedBg:{type:ControlType.Color,title:\"Stripe Color\",defaultValue:\"rgba(0,0,0,0.02)\",hidden:props=>!props.tableStriped,description:`More components at [Memselon ☁️](http://memselon.com)`}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"EngineInfo\",\"slots\":[\"content\"],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TradingTableau.map"],"mappings":"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"}