{"version":3,"file":"CSVDataTable.B4-Hy_KO.mjs","names":["useState","useMemo","useCallback","_Fragment"],"sources":["https:/framerusercontent.com/modules/TQx9Xzs91mbX2xcKg8MC/1Oi1lkhqkL8Cy5PBnNTM/CSVDataTable.js"],"sourcesContent":["// CSV Data Table with sorting, filtering, pagination and all datatable features\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useMemo,useCallback,startTransition,useEffect}from\"react\";import{addPropertyControls,ControlType}from\"framer\";// Helper function to properly parse CSV lines with quoted values\nconst parseCSVLine=line=>{const result=[];let current=\"\";let inQuotes=false;for(let i=0;i<line.length;i++){const char=line[i];if(char==='\"'){if(inQuotes&&line[i+1]==='\"'){// Handle escaped quotes\ncurrent+='\"';i++;}else{// Toggle quote state\ninQuotes=!inQuotes;}}else if(char===\",\"&&!inQuotes){// Only split on commas outside of quotes\nresult.push(current.trim());current=\"\";}else{current+=char;}}result.push(current.trim());return result;};/**\n * CSV Data Table\n *\n * @framerIntrinsicWidth 800\n * @framerIntrinsicHeight 600\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function CSVDataTable(props){const{csvFile=\"\",darkMode=false,backgroundColor,borderColor,hoverColor,inputBackgroundColor,accentColor,mutedTextColor,darkBackgroundColor,darkBorderColor,darkHoverColor,darkInputBackgroundColor,darkAccentColor,darkMutedTextColor,rowsPerPage,showSearch,headerFont,bodyFont,borderRadius,enableFiltering=false,filterableColumns=\"\"}=props;// Dark mode color overrides (shadcn style)\nconst bgColor=darkMode?darkBackgroundColor:backgroundColor;const borderCol=darkMode?darkBorderColor:borderColor;const hoverCol=darkMode?darkHoverColor:hoverColor;const accentCol=darkMode?darkAccentColor:accentColor;const mutedText=darkMode?darkMutedTextColor:mutedTextColor;const cardBg=darkMode?darkBackgroundColor:backgroundColor;const inputBg=darkMode?darkInputBackgroundColor:inputBackgroundColor;const[data,setData]=useState([]);const[headers,setHeaders]=useState([]);const[sortConfig,setSortConfig]=useState(null);const[searchTerm,setSearchTerm]=useState(\"\");const[currentPage,setCurrentPage]=useState(1);const[selectedRows,setSelectedRows]=useState(new Set);const[visibleColumns,setVisibleColumns]=useState(new Set);const[showColumnMenu,setShowColumnMenu]=useState(false);const[error,setError]=useState(null);// New filtering state with checkboxes\nconst[columnFilters,setColumnFilters]=useState(new Map);const[showFilterMenu,setShowFilterMenu]=useState(false);const[filterSearchTerms,setFilterSearchTerms]=useState(new Map);// Parse filterable columns from comma-separated string\nconst filterableColumnIndices=useMemo(()=>{if(!enableFiltering||!filterableColumns.trim())return new Set;const columnNames=filterableColumns.split(\",\").map(col=>col.trim().toLowerCase());return new Set(headers.map((header,index)=>columnNames.includes(header.toLowerCase())?index:-1).filter(index=>index!==-1));},[enableFiltering,filterableColumns,headers]);// Get unique values for each filterable column\nconst columnUniqueValues=useMemo(()=>{const uniqueValues=new Map;filterableColumnIndices.forEach(columnIndex=>{const values=new Set;data.forEach(row=>{const value=row[columnIndex]?.trim()||\"\";if(value){values.add(value);}});uniqueValues.set(columnIndex,Array.from(values).sort());});return uniqueValues;},[data,filterableColumnIndices]);// Parse CSV from property control\nuseEffect(()=>{if(!csvFile){startTransition(()=>{setData([]);setHeaders([]);setCurrentPage(1);setSortConfig(null);setSearchTerm(\"\");setSelectedRows(new Set);setColumnFilters(new Map);setFilterSearchTerms(new Map);setError(null);});return;}fetch(csvFile).then(response=>{if(!response.ok){throw new Error(`Failed to load CSV: ${response.statusText}`);}return response.text();}).then(text=>{const lines=text.split(\"\\n\").filter(line=>line.trim());if(lines.length===0){throw new Error(\"CSV file is empty\");}// Use proper CSV parsing to handle quoted values\nconst parsedHeaders=parseCSVLine(lines[0]);const parsedData=lines.slice(1).map(line=>parseCSVLine(line));startTransition(()=>{setHeaders(parsedHeaders);setData(parsedData);setCurrentPage(1);setSortConfig(null);setSearchTerm(\"\");setSelectedRows(new Set);setVisibleColumns(new Set(parsedHeaders.map((_,i)=>i)));setColumnFilters(new Map);setFilterSearchTerms(new Map);setError(null);});}).catch(error=>{console.error(\"Error loading CSV:\",error);startTransition(()=>{setError(error.message||\"Failed to load CSV file\");setData([]);setHeaders([]);});});},[csvFile]);const handleSort=useCallback(columnIndex=>{startTransition(()=>{setSortConfig(prevConfig=>{if(prevConfig?.key===columnIndex){return{key:columnIndex,direction:prevConfig.direction===\"asc\"?\"desc\":\"asc\"};}return{key:columnIndex,direction:\"asc\"};});});},[]);const toggleCheckboxFilter=useCallback((columnIndex,value)=>{startTransition(()=>{setColumnFilters(prev=>{const newFilters=new Map(prev);const columnFilter=newFilters.get(columnIndex)||new Set;const newColumnFilter=new Set(columnFilter);if(newColumnFilter.has(value)){newColumnFilter.delete(value);}else{newColumnFilter.add(value);}if(newColumnFilter.size===0){newFilters.delete(columnIndex);}else{newFilters.set(columnIndex,newColumnFilter);}return newFilters;});setCurrentPage(1);});},[]);const selectAllInColumn=useCallback(columnIndex=>{startTransition(()=>{setColumnFilters(prev=>{const newFilters=new Map(prev);const allValues=columnUniqueValues.get(columnIndex)||[];const searchTerm=filterSearchTerms.get(columnIndex)?.toLowerCase()||\"\";const filteredValues=allValues.filter(value=>value.toLowerCase().includes(searchTerm));newFilters.set(columnIndex,new Set(filteredValues));return newFilters;});setCurrentPage(1);});},[columnUniqueValues,filterSearchTerms]);const clearColumnFilter=useCallback(columnIndex=>{startTransition(()=>{setColumnFilters(prev=>{const newFilters=new Map(prev);newFilters.delete(columnIndex);return newFilters;});setCurrentPage(1);});},[]);const clearAllFilters=useCallback(()=>{startTransition(()=>{setColumnFilters(new Map);setCurrentPage(1);});},[]);const setFilterSearchTerm=useCallback((columnIndex,term)=>{startTransition(()=>{setFilterSearchTerms(prev=>{const newTerms=new Map(prev);if(term){newTerms.set(columnIndex,term);}else{newTerms.delete(columnIndex);}return newTerms;});});},[]);// Apply column filters first, then search\nconst columnFilteredData=useMemo(()=>{if(columnFilters.size===0)return data;return data.filter(row=>{return Array.from(columnFilters.entries()).every(([columnIndex,allowedValues])=>{const cellValue=row[columnIndex]?.trim()||\"\";return allowedValues.has(cellValue);});});},[data,columnFilters]);// Apply search term to column-filtered data\nconst filteredData=useMemo(()=>{if(!searchTerm)return columnFilteredData;return columnFilteredData.filter(row=>row.some(cell=>cell.toLowerCase().includes(searchTerm.toLowerCase())));},[columnFilteredData,searchTerm]);const sortedData=useMemo(()=>{if(!sortConfig)return filteredData;return[...filteredData].sort((a,b)=>{const aVal=a[sortConfig.key]||\"\";const bVal=b[sortConfig.key]||\"\";const aNum=parseFloat(aVal);const bNum=parseFloat(bVal);if(!isNaN(aNum)&&!isNaN(bNum)){return sortConfig.direction===\"asc\"?aNum-bNum:bNum-aNum;}return sortConfig.direction===\"asc\"?aVal.localeCompare(bVal):bVal.localeCompare(aVal);});},[filteredData,sortConfig]);const totalPages=Math.ceil(sortedData.length/rowsPerPage);const startIndex=(currentPage-1)*rowsPerPage;const paginatedData=sortedData.slice(startIndex,startIndex+rowsPerPage);const handlePageChange=useCallback(page=>{startTransition(()=>setCurrentPage(page));},[]);const handleSearchChange=useCallback(e=>{startTransition(()=>{setSearchTerm(e.target.value);setCurrentPage(1);});},[]);const toggleRowSelection=useCallback(rowIndex=>{startTransition(()=>{setSelectedRows(prev=>{const newSet=new Set(prev);if(newSet.has(rowIndex)){newSet.delete(rowIndex);}else{newSet.add(rowIndex);}return newSet;});});},[]);const toggleAllRows=useCallback(()=>{startTransition(()=>{if(selectedRows.size===paginatedData.length){setSelectedRows(new Set);}else{setSelectedRows(new Set(paginatedData.map((_,i)=>startIndex+i)));}});},[selectedRows.size,paginatedData.length,startIndex]);const toggleColumn=useCallback(columnIndex=>{startTransition(()=>{setVisibleColumns(prev=>{const newSet=new Set(prev);if(newSet.has(columnIndex)){// Don't allow hiding all columns\nif(newSet.size>1){newSet.delete(columnIndex);}}else{newSet.add(columnIndex);}return newSet;});});},[]);const activeFilterCount=columnFilters.size;return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:\"100%\",backgroundColor:bgColor,display:\"flex\",flexDirection:\"column\",padding:24,gap:16,borderRadius},children:[showSearch&&data.length>0&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",gap:12},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",flex:1,maxWidth:320},children:[/*#__PURE__*/_jsxs(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:mutedText,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{position:\"absolute\",left:12,top:\"50%\",transform:\"translateY(-50%)\",opacity:.5,pointerEvents:\"none\"},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"11\",cy:\"11\",r:\"8\"}),/*#__PURE__*/_jsx(\"path\",{d:\"m21 21-4.35-4.35\"})]}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",placeholder:\"Search data...\",value:searchTerm,onChange:handleSearchChange,style:{width:\"100%\",padding:\"8px 12px 8px 40px\",borderRadius:8,border:`1px solid ${borderCol}`,backgroundColor:inputBg,color:mutedText,outline:\"none\",transition:\"all 0.2s cubic-bezier(0.4, 0, 0.2, 1)\",...bodyFont,fontSize:\"14px\",boxShadow:darkMode?\"0 1px 2px 0 rgba(0, 0, 0, 0.3)\":\"0 1px 2px 0 rgba(0, 0, 0, 0.05)\"},onFocus:e=>{e.currentTarget.style.borderColor=accentCol;e.currentTarget.style.boxShadow=darkMode?`0 0 0 3px ${accentCol}20, 0 1px 2px 0 rgba(0, 0, 0, 0.3)`:`0 0 0 3px ${accentCol}15, 0 1px 2px 0 rgba(0, 0, 0, 0.05)`;},onBlur:e=>{e.currentTarget.style.borderColor=borderCol;e.currentTarget.style.boxShadow=darkMode?\"0 1px 2px 0 rgba(0, 0, 0, 0.3)\":\"0 1px 2px 0 rgba(0, 0, 0, 0.05)\";}})]}),enableFiltering&&filterableColumnIndices.size>0&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\"},children:[/*#__PURE__*/_jsxs(\"button\",{onClick:()=>setShowFilterMenu(!showFilterMenu),style:{padding:\"8px 16px\",borderRadius:8,border:`1px solid ${borderCol}`,backgroundColor:activeFilterCount>0?accentCol:cardBg,color:activeFilterCount>0?\"#FFFFFF\":mutedText,cursor:\"pointer\",transition:\"all 0.2s cubic-bezier(0.4, 0, 0.2, 1)\",fontSize:\"14px\",fontWeight:500,display:\"flex\",alignItems:\"center\",gap:8,boxShadow:darkMode?\"0 1px 2px 0 rgba(0, 0, 0, 0.3)\":\"0 1px 2px 0 rgba(0, 0, 0, 0.05)\",...bodyFont},onMouseEnter:e=>{if(activeFilterCount===0){e.currentTarget.style.backgroundColor=hoverCol;}},onMouseLeave:e=>{if(activeFilterCount===0){e.currentTarget.style.backgroundColor=cardBg;}},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polygon\",{points:\"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3\"})}),\"Filter\",activeFilterCount>0&&/*#__PURE__*/_jsx(\"span\",{style:{backgroundColor:darkMode?\"#FFFFFF\":accentCol,color:darkMode?accentCol:\"#FFFFFF\",padding:\"2px 6px\",borderRadius:12,fontSize:\"12px\",fontWeight:600,minWidth:20,textAlign:\"center\"},children:activeFilterCount})]}),showFilterMenu&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",top:\"calc(100% + 8px)\",right:0,backgroundColor:cardBg,border:`1px solid ${borderCol}`,borderRadius:12,padding:16,minWidth:320,maxWidth:400,boxShadow:darkMode?\"0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -2px rgba(0, 0, 0, 0.3)\":\"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)\",zIndex:100,display:\"flex\",flexDirection:\"column\",gap:12},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",marginBottom:8},children:[/*#__PURE__*/_jsx(\"h3\",{style:{margin:0,fontSize:\"14px\",fontWeight:600,color:mutedText,...headerFont},children:\"Filter Columns\"}),activeFilterCount>0&&/*#__PURE__*/_jsx(\"button\",{onClick:clearAllFilters,style:{padding:\"4px 8px\",borderRadius:6,border:\"none\",backgroundColor:\"transparent\",color:accentCol,cursor:\"pointer\",fontSize:\"12px\",fontWeight:500,...bodyFont},children:\"Clear all\"})]}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:16,maxHeight:500,overflowY:\"auto\"},children:headers.map((header,columnIndex)=>{if(!filterableColumnIndices.has(columnIndex))return null;const uniqueValues=columnUniqueValues.get(columnIndex)||[];const selectedValues=columnFilters.get(columnIndex)||new Set;const searchTerm=filterSearchTerms.get(columnIndex)||\"\";const filteredValues=uniqueValues.filter(value=>value.toLowerCase().includes(searchTerm.toLowerCase()));return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:8,padding:12,backgroundColor:hoverCol,borderRadius:8},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"},children:[/*#__PURE__*/_jsx(\"label\",{style:{fontSize:\"13px\",fontWeight:600,color:mutedText,...bodyFont},children:header}),selectedValues.size>0&&/*#__PURE__*/_jsx(\"button\",{onClick:()=>clearColumnFilter(columnIndex),style:{padding:\"2px 6px\",borderRadius:4,border:\"none\",backgroundColor:\"transparent\",color:accentCol,cursor:\"pointer\",fontSize:\"11px\",fontWeight:500,...bodyFont},children:\"Clear\"})]}),uniqueValues.length>5&&/*#__PURE__*/_jsx(\"input\",{type:\"text\",placeholder:\"Search...\",value:searchTerm,onChange:e=>setFilterSearchTerm(columnIndex,e.target.value),style:{padding:\"6px 10px\",borderRadius:6,border:`1px solid ${borderCol}`,backgroundColor:inputBg,color:mutedText,outline:\"none\",fontSize:\"13px\",...bodyFont}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6,maxHeight:200,overflowY:\"auto\"},children:[filteredValues.map(value=>{const isChecked=selectedValues.has(value);return /*#__PURE__*/_jsxs(\"label\",{style:{display:\"flex\",alignItems:\"center\",gap:8,cursor:\"pointer\",padding:\"4px 6px\",borderRadius:4,transition:\"background-color 0.15s\"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor=cardBg;},onMouseLeave:e=>{e.currentTarget.style.backgroundColor=\"transparent\";},children:[/*#__PURE__*/_jsx(\"input\",{type:\"checkbox\",checked:isChecked,onChange:()=>toggleCheckboxFilter(columnIndex,value),style:{cursor:\"pointer\",accentColor:accentCol}}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"13px\",color:mutedText,...bodyFont},children:value})]},value);}),filteredValues.length===0&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"12px\",color:mutedText,opacity:.6,padding:\"8px 0\",textAlign:\"center\"},children:\"No matches found\"})]})]},columnIndex);})})]})]})]}),data.length===0?/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",color:mutedText,gap:16,padding:48,border:`2px dashed ${borderCol}`,borderRadius:12,...bodyFont},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:64,height:64,borderRadius:12,backgroundColor:hoverCol,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsxs(\"svg\",{width:\"32\",height:\"32\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{opacity:.4},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"14 2 14 8 20 8\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"16\",y1:\"13\",x2:\"8\",y2:\"13\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"16\",y1:\"17\",x2:\"8\",y2:\"17\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"10\",y1:\"9\",x2:\"8\",y2:\"9\"})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",maxWidth:320},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"16px\",fontWeight:600,marginBottom:8,color:mutedText},children:error?\"Failed to load CSV\":\"No data available\"}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:\"14px\",opacity:.7,lineHeight:\"1.5\"},children:error||\"Upload a CSV file using the property panel to get started\"})]})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{overflow:\"auto\",border:`1px solid ${borderCol}`,borderRadius,boxShadow:darkMode?\"0 1px 3px 0 rgba(0, 0, 0, 0.4), 0 1px 2px 0 rgba(0, 0, 0, 0.3)\":\"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)\"},children:/*#__PURE__*/_jsxs(\"table\",{style:{width:\"100%\",borderCollapse:\"collapse\"},children:[/*#__PURE__*/_jsx(\"thead\",{children:/*#__PURE__*/_jsx(\"tr\",{style:{borderBottom:`1px solid ${borderCol}`},children:headers.map((header,index)=>/*#__PURE__*/_jsx(\"th\",{onClick:()=>handleSort(index),style:{backgroundColor:hoverCol,color:mutedText,padding:\"12px 16px\",textAlign:\"left\",cursor:\"pointer\",userSelect:\"none\",transition:\"background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1)\",...headerFont,fontSize:\"12px\",fontWeight:600,textTransform:\"uppercase\",letterSpacing:\"0.05em\",display:visibleColumns.has(index)?\"table-cell\":\"none\",position:\"sticky\",top:0,zIndex:10},onMouseEnter:e=>{e.currentTarget.style.backgroundColor=darkMode?\"#27272A\":borderColor;},onMouseLeave:e=>{e.currentTarget.style.backgroundColor=hoverCol;},children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6},children:[header,columnFilters.has(index)&&/*#__PURE__*/_jsx(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:accentCol,stroke:accentCol,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polygon\",{points:\"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3\"})}),sortConfig?.key===index?/*#__PURE__*/_jsx(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{transform:sortConfig.direction===\"desc\"?\"rotate(180deg)\":\"none\",transition:\"transform 0.2s cubic-bezier(0.4, 0, 0.2, 1)\"},children:/*#__PURE__*/_jsx(\"polyline\",{points:\"18 15 12 9 6 15\"})}):/*#__PURE__*/_jsxs(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{opacity:.3},children:[/*#__PURE__*/_jsx(\"polyline\",{points:\"7 10 12 15 17 10\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"7 14 12 9 17 14\"})]})]})},index))})}),/*#__PURE__*/_jsx(\"tbody\",{children:paginatedData.map((row,rowIndex)=>{const globalRowIndex=startIndex+rowIndex;const isSelected=selectedRows.has(globalRowIndex);return /*#__PURE__*/_jsx(\"tr\",{style:{backgroundColor:isSelected?accentCol+\"08\":\"transparent\",borderBottom:`1px solid ${borderCol}`,transition:\"background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1)\"},onMouseEnter:e=>{if(!isSelected){e.currentTarget.style.backgroundColor=hoverCol;}},onMouseLeave:e=>{if(!isSelected){e.currentTarget.style.backgroundColor=\"transparent\";}},children:row.map((cell,cellIndex)=>/*#__PURE__*/_jsx(\"td\",{style:{padding:\"12px 16px\",color:mutedText,...bodyFont,fontSize:\"14px\",display:visibleColumns.has(cellIndex)?\"table-cell\":\"none\"},children:cell},cellIndex))},rowIndex);})})]})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",...bodyFont,flexWrap:\"wrap\",gap:12},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:mutedText,fontSize:\"14px\",fontWeight:500},children:selectedRows.size>0?`${selectedRows.size} of ${sortedData.length} row(s) selected`:`${sortedData.length} row(s) total`}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:8,alignItems:\"center\"},children:[/*#__PURE__*/_jsxs(\"span\",{style:{color:mutedText,fontSize:\"14px\",fontWeight:500},children:[\"Page \",currentPage,\" of \",totalPages]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:4},children:[/*#__PURE__*/_jsx(\"button\",{onClick:()=>handlePageChange(currentPage-1),disabled:currentPage===1,style:{padding:\"8px 16px\",borderRadius:8,border:`1px solid ${borderCol}`,backgroundColor:cardBg,color:mutedText,cursor:currentPage===1?\"not-allowed\":\"pointer\",opacity:currentPage===1?.5:1,transition:\"all 0.2s cubic-bezier(0.4, 0, 0.2, 1)\",fontSize:\"14px\",fontWeight:500,boxShadow:darkMode?\"0 1px 2px 0 rgba(0, 0, 0, 0.3)\":\"0 1px 2px 0 rgba(0, 0, 0, 0.05)\"},onMouseEnter:e=>{if(currentPage!==1){e.currentTarget.style.backgroundColor=hoverCol;e.currentTarget.style.borderColor=darkMode?\"#3F3F46\":mutedTextColor+\"40\";}},onMouseLeave:e=>{e.currentTarget.style.backgroundColor=cardBg;e.currentTarget.style.borderColor=borderCol;},children:\"Previous\"}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>handlePageChange(currentPage+1),disabled:currentPage===totalPages,style:{padding:\"8px 16px\",borderRadius:8,border:`1px solid ${borderCol}`,backgroundColor:cardBg,color:mutedText,cursor:currentPage===totalPages?\"not-allowed\":\"pointer\",opacity:currentPage===totalPages?.5:1,transition:\"all 0.2s cubic-bezier(0.4, 0, 0.2, 1)\",fontSize:\"14px\",fontWeight:500,boxShadow:darkMode?\"0 1px 2px 0 rgba(0, 0, 0, 0.3)\":\"0 1px 2px 0 rgba(0, 0, 0, 0.05)\"},onMouseEnter:e=>{if(currentPage!==totalPages){e.currentTarget.style.backgroundColor=hoverCol;e.currentTarget.style.borderColor=darkMode?\"#3F3F46\":mutedTextColor+\"40\";}},onMouseLeave:e=>{e.currentTarget.style.backgroundColor=cardBg;e.currentTarget.style.borderColor=borderCol;},children:\"Next\"})]})]})]})]})]});}addPropertyControls(CSVDataTable,{csvFile:{type:ControlType.File,title:\"CSV File\",allowedFileTypes:[\"csv\"]},darkMode:{type:ControlType.Boolean,title:\"Dark Mode\",defaultValue:false,enabledTitle:\"Dark\",disabledTitle:\"Light\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF\",hidden:({darkMode})=>darkMode},borderColor:{type:ControlType.Color,title:\"Border\",defaultValue:\"#E5E7EB\",hidden:({darkMode})=>darkMode},hoverColor:{type:ControlType.Color,title:\"Hover Color\",defaultValue:\"#F9FAFB\",hidden:({darkMode})=>darkMode},inputBackgroundColor:{type:ControlType.Color,title:\"Input Background\",defaultValue:\"#FFFFFF\",hidden:({darkMode})=>darkMode},accentColor:{type:ControlType.Color,title:\"Accent Color\",defaultValue:\"#3B82F6\",hidden:({darkMode})=>darkMode},mutedTextColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#6B7280\",hidden:({darkMode})=>darkMode},darkBackgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#09090B\",hidden:({darkMode})=>!darkMode},darkBorderColor:{type:ControlType.Color,title:\"Border\",defaultValue:\"#27272A\",hidden:({darkMode})=>!darkMode},darkHoverColor:{type:ControlType.Color,title:\"Hover Color\",defaultValue:\"#18181B\",hidden:({darkMode})=>!darkMode},darkInputBackgroundColor:{type:ControlType.Color,title:\"Input Background\",defaultValue:\"#18181B\",hidden:({darkMode})=>!darkMode},darkAccentColor:{type:ControlType.Color,title:\"Accent Color\",defaultValue:\"#3B82F6\",hidden:({darkMode})=>!darkMode},darkMutedTextColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#A1A1AA\",hidden:({darkMode})=>!darkMode},borderRadius:{type:ControlType.Number,title:\"Border Radius\",defaultValue:12,min:0,max:32,step:1,unit:\"px\"},rowsPerPage:{type:ControlType.Number,title:\"Rows Per Page\",defaultValue:10,min:5,max:100,step:5},showSearch:{type:ControlType.Boolean,title:\"Show Search\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},enableFiltering:{type:ControlType.Boolean,title:\"Enable Filtering\",defaultValue:false,enabledTitle:\"Enabled\",disabledTitle:\"Disabled\"},filterableColumns:{type:ControlType.String,title:\"Filterable Columns\",defaultValue:\"\",placeholder:\"e.g., Name, Email, Status\",description:\"Comma-separated column names to enable filtering\",hidden:({enableFiltering})=>!enableFiltering,displayTextArea:true},headerFont:{type:ControlType.Font,title:\"Header Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"12px\",variant:\"Medium\",letterSpacing:\"0em\",lineHeight:\"1em\"}},bodyFont:{type:ControlType.Font,title:\"Body Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"14px\",variant:\"Regular\",letterSpacing:\"0em\",lineHeight:\"1.3em\"}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CSVDataTable\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"800\",\"framerIntrinsicHeight\":\"600\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CSVDataTable.map"],"mappings":"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"}