{"version":3,"file":"CMSCount.B8SdORML.mjs","names":["useState","useMemo","_Fragment","getCmsQueryFromSlot","displayText"],"sources":["https:/framerusercontent.com/modules/ACiSfH9XmEeGQw9FrwJm/sonBlYtuqlTIWRiEwECO/CMSSearch.js","https:/framerusercontent.com/modules/DFGnklwUoXT2zvj0cnTg/jIxp0qXUkCFuEwovK0XM/CMSCount.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useEffect,useMemo}from\"react\";import{addPropertyControls,ControlType,useQueryData}from\"framer\";// Import utilities and types from shared modules\nimport{getCollectionStore,getCollectionStoreKey,globalInitStore,getCollectionInfo,evGetRandomString}from\"https://framerusercontent.com/modules/2VZikWBxCagm4nJReNjX/uFUqD0e9fJ1WAIOOmgia/store_management.js\";// Helper to get available searchable fields from CMS\nconst getAvailableSearchFields=propertyControls=>{if(!propertyControls)return[];return Object.entries(propertyControls).filter(([,control])=>{// Only include searchable field types\nconst searchableTypes=[\"string\",\"richtext\"];return searchableTypes.includes(control.type);}).map(([key,control])=>({key,title:control.title||key,type:control.type}));};// Debounce hook\nfunction useDebounce(value,delay){const[debounced,setDebounced]=useState(value);useEffect(()=>{const handler=setTimeout(()=>setDebounced(value),delay);return()=>clearTimeout(handler);},[value,delay]);return debounced;}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerDisableUnlink\n */export default function CMSSearch(props){const{collection,searchFields,searchDisplayTitle=\"Search\",placeholder,debounceDelay,storeKey,urlPrefix,style,containerStyles,labelStyles,inputStyles,iconStyles,debugMode,id}=props;const newId=id?id:evGetRandomString();const uniqueClassName=`cms-collection-${newId}`;// Get store key for this collection using new logic\nconst actualStoreKey=getCollectionStoreKey(collection,storeKey);// Initialize store immediately if we have a store key (fixes race condition)\nif(actualStoreKey){getCollectionStore(actualStoreKey);}// Watch for store initialization (for debugging/monitoring only)\nconst[initState]=globalInitStore();const isStoreInitialized=actualStoreKey&&initState.storeInitialized.includes(actualStoreKey);// Extract collection info from slot connection - memoized\nconst collectionInfo=useMemo(()=>getCollectionInfo(collection),[collection]);// Get store for this collection\nconst useStore=actualStoreKey?getCollectionStore(actualStoreKey):null;const[state,setState]=useStore?useStore():[null,null];// Local input value for immediate UI updates\nconst[inputValue,setInputValue]=useState(\"\");// Debounced search term\nconst debouncedSearchTerm=useDebounce(inputValue,debounceDelay);// Clear search function\nconst handleClearSearch=()=>{setInputValue(\"\");};// Memoized dynamic placeholder with count support - prevents render loops\nconst dynamicPlaceholder=useMemo(()=>{if(!placeholder.includes(\"{count}\")){return placeholder;}// Check if we have active filters\nconst hasActiveFilters=state&&(state.searchTerm&&state.searchTerm.trim()!==\"\"||state.filters&&state.filters.length>0||state.sort&&state.sort.length>0);let count=0;if(hasActiveFilters&&state?.count!==undefined){// Use filtered count when filters are active\ncount=state.count;}else if(collectionInfo){// Use total collection count when no filters are active\nconst originalQuery=getCmsQueryFromSlot(collection);if(originalQuery){try{const unfiltered=useQueryData(originalQuery);count=unfiltered?.length||0;}catch(error){console.warn(\"Error getting collection count:\",error);count=0;}}}return placeholder.replace(/{count}/g,String(count));},[placeholder,state?.count,state?.searchTerm,state?.filters,state?.sort,collectionInfo,collection]);// Update store when debounced search term changes - SIMPLIFIED\nuseEffect(()=>{if(setState&&state){setState({...state,searchTerm:debouncedSearchTerm,searchFields:searchFields,searchDisplayTitle:searchDisplayTitle});}},[debouncedSearchTerm,searchFields,searchDisplayTitle,setState]);// Initialize from URL parameters on component mount\n// useEffect(() => {\n//     if (isStoreInitialized && setState && state && !hasInitializedFromURL) {\n//         const urlParams = new URLSearchParams(window.location.search)\n//         const searchParam = urlPrefix ? `${urlPrefix}_search` : \"search\"\n//         const urlSearchTerm = urlParams.get(searchParam)\n//         if (urlSearchTerm) {\n//             setInputValue(urlSearchTerm)\n//             setState({\n//                 ...state,\n//                 searchTerm: urlSearchTerm,\n//                 searchFields: searchFields,\n//             })\n//         }\n//         setHasInitializedFromURL(true)\n//     }\n// }, [\n//     isStoreInitialized,\n//     setState,\n//     state,\n//     hasInitializedFromURL,\n//     urlPrefix,\n//     searchFields,\n// ])\n// const urlParams = new URLSearchParams(window.location.search)\n// const searchParam = urlPrefix ? `${urlPrefix}_search` : \"search\"\n// const urlSearchTerm = urlParams.get(searchParam)\nuseEffect(()=>{},[]);// Sync input value with store on change (including clears from other components)\nuseEffect(()=>{if(state&&state.searchTerm!==inputValue){setInputValue(state.searchTerm||\"\");}},[state?.searchTerm]);// Get available fields for validation/debugging (only in preview/live) - memoized\nconst availableFields=useMemo(()=>collectionInfo?getAvailableSearchFields(collectionInfo.propertyControls):[],[collectionInfo?.propertyControls]);const validFields=useMemo(()=>availableFields&&availableFields.length>0?searchFields.filter(fieldTitle=>availableFields.some(field=>field.title.toLowerCase()===fieldTitle.toLowerCase())):searchFields,[availableFields,searchFields]);const invalidFields=useMemo(()=>availableFields&&availableFields.length>0?searchFields.filter(fieldTitle=>!availableFields.some(field=>field.title.toLowerCase()===fieldTitle.toLowerCase())):[],[availableFields,searchFields]);let paddingLeft=0;const defaultPadding=\"8px 16px 8px 16px\";let curAppliedPadding=0;if(defaultPadding==inputStyles?.padding){curAppliedPadding=16;}else{const paddingArr=inputStyles?.padding.split(\" \");if(paddingArr.length>3){curAppliedPadding=parseInt(paddingArr[3].replace(\"px\",\"\"));}else{curAppliedPadding=parseInt(paddingArr[0].replace(\"px\",\"\"));}}if(iconStyles?.showSearchIcon){paddingLeft=(iconStyles?.iconSize||16)+curAppliedPadding;}else{paddingLeft=curAppliedPadding;}let paddingRight=0;if(defaultPadding==inputStyles?.padding){curAppliedPadding=16;}else{const paddingArr=inputStyles?.padding.split(\" \");if(paddingArr.length>1){curAppliedPadding=parseInt(paddingArr[1].replace(\"px\",\"\"));}else{curAppliedPadding=parseInt(paddingArr[0].replace(\"px\",\"\"));}}if(iconStyles?.showClearButton){paddingRight=(iconStyles?.clearIconSize||16)+curAppliedPadding;}else{paddingRight=curAppliedPadding;}return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                .${uniqueClassName} {\n                    display: flex;\n                    flex-direction: column;\n                    gap: 8px;\n                    overflow: hidden;\n                }\n\n                .${uniqueClassName}-debug-info {\n                    padding: 8px;\n                    background-color: #e8f5e8;\n                    border-radius: 4px;\n                    font-size: 12px;\n                    color: #2d5a2d;\n                    border: 1px solid #c3e6c3;\n                }\n\n                .${uniqueClassName}-validation-warning {\n                    padding: 12px;\n                    background-color: #f8d7da;\n                    border: 1px solid #f5c6cb;\n                    border-radius: 6px;\n                    color: #721c24;\n                    font-size: 13px;\n                }\n\n                .${uniqueClassName}-validation-title {\n                    font-weight: 500;\n                    margin-bottom: 4px;\n                }\n\n                .${uniqueClassName}-validation-note {\n                    font-size: 12px;\n                    margin-top: 4px;\n                    opacity: 0.8;\n                }\n\n                .${uniqueClassName}-search-container {\n                    display: flex;\n                    flex-direction: column;\n                    gap: 4px;\n                }\n\n                .${uniqueClassName}-label {\n                    font-size: 14px;\n                    font-weight: 500;\n                    display: flex;\n                    align-items: center;\n                    gap: 8px;\n                }\n\n                .${uniqueClassName}-field-badge {\n                    font-size: 11px;\n                    color: #666;\n                    font-weight: 400;\n                    background-color: #f8f9fa;\n                    padding: 2px 6px;\n                    border-radius: 3px;\n                }\n\n                .${uniqueClassName}-input-wrapper {\n                    position: relative;\n                    display: flex;\n                    align-items: center;\n                }\n\n                .${uniqueClassName}-search-icon {\n                    position: absolute;\n                    left: ${iconStyles?.iconPosition||12}px;\n                    z-index: 1;\n                    pointer-events: none;\n                    display: flex;\n                    align-items: center;\n                    height: 100%;\n                }\n\n                .${uniqueClassName}-input {\n                    outline: none;\n                    transition: border-color 0.2s ease, box-shadow 0.2s ease;\n                    width: 100%;\n                    color: ${inputStyles?.textColor||\"#333\"};\n                }\n\n                .${uniqueClassName}-input::placeholder {\n                    color: ${inputStyles?.placeholderColor||\"#999\"};\n                }\n\n                .${uniqueClassName}-input:hover:not(:focus) {\n                    border-color: ${inputStyles?.hoverBorderColor||inputStyles?.selectedBorderColor||\"#007AFF\"} !important;\n                    background-color: ${inputStyles?.hoverBackgroundColor||\"#f8f9fa\"} !important;\n                    color: ${inputStyles?.hoverTextColor||inputStyles?.textColor||\"#333\"} !important;\n                }\n\n                .${uniqueClassName}-input:focus {\n                    border-color: ${inputStyles?.selectedBorderColor||\"#007AFF\"} !important;\n                    background-color: ${inputStyles?.selectedBackgroundColor||\"#fff\"} !important;\n                    color: ${inputStyles?.selectedTextColor||inputStyles?.textColor||\"#333\"} !important;\n                }\n\n                .${uniqueClassName}-clear-button {\n                    position: absolute;\n                    right: ${iconStyles?.clearIconPosition||8}px;\n                    background: none;\n                    border: none;\n                    cursor: pointer;\n                    padding: 4px;\n                    display: flex;\n                    align-items: center;\n                    justify-content: center;\n                    border-radius: 50%;\n                    background-color: ${iconStyles?.clearIconBgColor||\"transparent\"};\n                    transition: background-color 0.2s ease;\n\n                }\n\n                .${uniqueClassName}-clear-button:hover {\n                    background-color: ${iconStyles?.clearIconHoverBgColor||\"#f3f4f6\"};\n                }\n            `}),/*#__PURE__*/_jsxs(\"div\",{className:uniqueClassName,style:{...containerStyles,...containerStyles?.border,...style},children:[debugMode&&collectionInfo&&state&&state.debug&&/*#__PURE__*/_jsxs(\"div\",{className:`${uniqueClassName}-debug-info`,children:[/*#__PURE__*/_jsx(\"div\",{children:/*#__PURE__*/_jsx(\"strong\",{children:\"CMS MultiFilter Search - SIMPLIFIED\"})}),/*#__PURE__*/_jsxs(\"div\",{children:[\"Collection: \",collectionInfo.collectionName,\" (\",collectionInfo.collectionId,\")\"]}),/*#__PURE__*/_jsx(\"div\",{children:\"Store Initialized: ✅\"}),/*#__PURE__*/_jsx(\"div\",{children:\"Store Connected: ✅\"}),/*#__PURE__*/_jsxs(\"div\",{children:[\"Property Controls Found:\",\" \",Object.keys(collectionInfo&&collectionInfo.propertyControls||{}).length]}),/*#__PURE__*/_jsxs(\"div\",{children:[\"Available Fields:\",\" \",availableFields.map(f=>f.title).join(\", \")||\"None\"]}),validFields.length>0&&/*#__PURE__*/_jsxs(\"div\",{children:[\"✅ Valid Search Fields: \",validFields.join(\", \")]}),invalidFields.length>0&&/*#__PURE__*/_jsxs(\"div\",{children:[\"⚠ Invalid Search Fields:\",\" \",invalidFields.join(\", \")]}),state.searchTerm&&/*#__PURE__*/_jsxs(\"div\",{children:['Active Search: \"',state.searchTerm,'\" (Always OR across fields)']})]}),collection&&collectionInfo&&invalidFields.length>0&&/*#__PURE__*/_jsxs(\"div\",{className:`${uniqueClassName}-validation-warning`,children:[/*#__PURE__*/_jsx(\"div\",{className:`${uniqueClassName}-validation-title`,children:\"Invalid Search Fields:\"}),/*#__PURE__*/_jsx(\"div\",{children:invalidFields.join(\", \")}),/*#__PURE__*/_jsxs(\"div\",{className:`${uniqueClassName}-validation-note`,children:[\"Available:\",\" \",availableFields.map(f=>f.title).join(\", \")||\"None found\"]})]}),/*#__PURE__*/_jsxs(\"div\",{className:`${uniqueClassName}-search-container`,children:[labelStyles?.labelToggle&&/*#__PURE__*/_jsxs(\"label\",{className:`${uniqueClassName}-label`,style:{...labelStyles,...labelStyles?.fontFamily,fontSize:labelStyles?.fontFamily?.fontSize||\"14px\"},children:[searchDisplayTitle,searchFields.length>0&&debugMode&&/*#__PURE__*/_jsxs(\"span\",{className:`${uniqueClassName}-field-badge`,children:[searchFields.length,\" field\",searchFields.length!==1?\"s\":\"\",\" • OR\"]})]}),/*#__PURE__*/_jsxs(\"div\",{className:`${uniqueClassName}-input-wrapper`,children:[iconStyles?.showSearchIcon&&/*#__PURE__*/_jsx(\"div\",{className:`${uniqueClassName}-search-icon`,children:/*#__PURE__*/_jsx(\"svg\",{width:iconStyles?.iconSize||16,height:iconStyles?.iconSize||16,viewBox:\"0 0 24 24\",fill:\"none\",style:{color:iconStyles?.iconColor||\"#6B7280\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M21 21L16.514 16.506M19 10.5C19 15.194 15.194 19 10.5 19S2 15.194 2 10.5 5.806 2 10.5 2 19 5.806 19 10.5Z\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})})}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",placeholder:dynamicPlaceholder,value:inputValue,onChange:e=>setInputValue(e.target.value),className:`${uniqueClassName}-input`,style:{...inputStyles,...inputStyles?.border,paddingLeft,paddingRight,...inputStyles?.fontFamily,fontSize:inputStyles?.fontFamily?.fontSize||\"14px\"}}),iconStyles?.showClearButton&&inputValue&&/*#__PURE__*/_jsx(\"button\",{onClick:handleClearSearch,className:`${uniqueClassName}-clear-button`,children:/*#__PURE__*/_jsx(\"svg\",{width:iconStyles?.clearIconSize||16,height:iconStyles?.clearIconSize||16,viewBox:\"0 0 24 24\",fill:\"none\",style:{color:iconStyles?.clearIconColor||\"#6B7280\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M18 6L6 18M6 6L18 18\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})})})]})]})]})]});}// Property Controls - SIMPLIFIED\naddPropertyControls(CMSSearch,{collection:{type:ControlType.Slot,title:\"Collection\",description:\"Connect your CMS Collection List component here\",maxCount:1},searchFields:{type:ControlType.Array,title:\"Search Fields\",description:\"CMS field names to search through (uses OR logic across fields)\",control:{type:ControlType.String,placeholder:\"Field title (e.g., Title, Content, Description)\"},defaultValue:[\"Title\"]},searchDisplayTitle:{type:ControlType.String,title:\"Display Title\",description:\"Label shown in facet chips (e.g., 'Search', 'Find', 'Query')\",defaultValue:\"Search\",placeholder:\"Search\"},placeholder:{type:ControlType.String,title:\"Search Placeholder\",defaultValue:\"Search...\",description:\"Use {count} to show current result count\"},debounceDelay:{type:ControlType.Number,title:\"Debounce Delay (ms)\",description:\"Wait time before triggering search (prevents too many requests)\",min:0,max:1e3,step:50,defaultValue:300},containerStyles:{type:ControlType.Object,title:\"Container Styles\",description:\"Styling for outer container (background, padding, borders)\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background Color\",description:\"Background color for search container\",defaultValue:\"transparent\",optional:true},padding:{type:ControlType.Padding,title:\"Padding\",description:\"Inner spacing for search container\",defaultValue:\"0px\"},border:{type:ControlType.Border,title:\"Border\",description:\"Border for search container\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 0)\"}},borderRadius:{type:ControlType.BorderRadius,title:\"Border Radius\",description:\"Corner rounding for search container\",defaultValue:\"0px\"}},defaultValue:[{backgroundColor:\"transparent\"}]},labelStyles:{type:ControlType.Object,title:\"Label Styles\",description:\"Styling for search label text (e.g., 'Search')\",controls:{labelToggle:{type:ControlType.Boolean,title:\"Toggle\",description:\"Show or hide the search label\",enabledTitle:\"Show\",disabledTitle:\"Hide\"},fontFamily:{type:ControlType.Font,title:\"Font\",description:\"Typography settings for label text\",controls:\"extended\",defaultValue:{fontSize:\"14px\"},hidden:props=>!props.labelToggle},padding:{type:ControlType.Padding,title:\"Padding\",description:\"Spacing around label text\",defaultValue:\"0px 0px 8px 0px\",hidden:props=>!props.labelToggle},color:{type:ControlType.Color,title:\"Color\",description:\"Label text color\",defaultValue:\"#333\",optional:true,hidden:props=>!props.labelToggle}},defaultValue:[{padding:\"8px 0 0 8px\",color:\"#333\"}]},inputStyles:{type:ControlType.Object,title:\"Input Styles\",description:\"Styling for the search input field\",controls:{fontFamily:{type:ControlType.Font,title:\"Font\",description:\"Typography settings for input text\",controls:\"extended\",defaultValue:{fontSize:\"14px\"}},padding:{type:ControlType.Padding,title:\"Padding\",description:\"Inner spacing within input field\",defaultValue:\"8px 16px 8px 16px\"},placeholderColor:{type:ControlType.Color,title:\"Placeholder Color\",description:\"Color of placeholder text\",defaultValue:\"#999\",optional:true},textColor:{type:ControlType.Color,title:\"Text Color\",description:\"Default input text color\",defaultValue:\"#ccc\",optional:true},backgroundColor:{type:ControlType.Color,title:\"Background Color\",description:\"Default input background color\",defaultValue:\"white\",optional:true},border:{type:ControlType.Border,title:\"Border\",description:\"Input field border styling\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"#dee2e6\"}},borderRadius:{type:ControlType.BorderRadius,title:\"Border Radius\",description:\"Corner rounding for input field\",defaultValue:\"6px\"},selectedTextColor:{type:ControlType.Color,title:\"Focus Text Color\",description:\"Text color when input is focused\",defaultValue:\"#333\",optional:true},selectedBackgroundColor:{type:ControlType.Color,title:\"Focus Background\",description:\"Background color when focused\",defaultValue:\"white\",optional:true},selectedBorderColor:{type:ControlType.Color,title:\"Focus Border Color\",description:\"Border color when focused\",defaultValue:\"#000\"},hoverTextColor:{type:ControlType.Color,title:\"Hover Text Color\",description:\"Text color on hover\",defaultValue:\"#333\",optional:true},hoverBackgroundColor:{type:ControlType.Color,title:\"Hover Background\",description:\"Background color on hover\",defaultValue:\"#f8f9fa\",optional:true},hoverBorderColor:{type:ControlType.Color,title:\"Hover Border Color\",description:\"Border color on hover\",defaultValue:\"#007AFF\",optional:true}},defaultValue:[{backgroundColor:\"#fff\",borderRadius:\"6px\",selectedBorderColor:\"#000\"}]},iconStyles:{type:ControlType.Object,title:\"Icon Styles\",description:\"Styling for search and clear icons\",controls:{showSearchIcon:{type:ControlType.Boolean,title:\"Show Search Icon\",description:\"Display search icon in input field\",defaultValue:true},iconSize:{type:ControlType.Number,title:\"Search Icon Size\",description:\"Size of search icon\",defaultValue:16,min:12,max:50,step:1,unit:\"px\",hidden:props=>props.showSearchIcon===false},iconPosition:{type:ControlType.Number,title:\"Search Icon Position\",description:\"Distance from left edge\",defaultValue:12,min:0,max:100,step:1,unit:\"px\",hidden:props=>props.showSearchIcon===false},iconColor:{type:ControlType.Color,title:\"Search Icon Color\",description:\"Color of search icon\",defaultValue:\"#6B7280\",hidden:props=>props.showSearchIcon===false},showClearButton:{type:ControlType.Boolean,title:\"Show Clear Button\",description:\"Display X button to clear search\",defaultValue:true,hidden:props=>props.showSearchIcon===false},clearIconSize:{type:ControlType.Number,title:\"Clear Icon Size\",description:\"Size of clear (X) icon\",defaultValue:16,min:12,max:50,step:1,unit:\"px\",hidden:props=>props.showSearchIcon===false||props.showClearButton===false},clearIconPosition:{type:ControlType.Number,title:\"Clear Icon Position\",description:\"Distance from right edge\",defaultValue:8,min:0,max:100,step:1,unit:\"px\",hidden:props=>props.showSearchIcon===false||props.showClearButton===false},clearIconColor:{type:ControlType.Color,title:\"Clear Icon Color\",description:\"Color of clear icon\",defaultValue:\"#6B7280\",hidden:props=>props.showSearchIcon===false||props.showClearButton===false},clearIconBgColor:{type:ControlType.Color,title:\"Clear Icon Background\",description:\"Background color for clear button\",defaultValue:\"transparent\",hidden:props=>props.showSearchIcon===false||props.showClearButton===false},clearIconHoverColor:{type:ControlType.Color,title:\"Clear Icon Hover Color\",description:\"Icon color on hover\",defaultValue:\"#374151\",hidden:props=>props.showSearchIcon===false||props.showClearButton===false},clearIconHoverBgColor:{type:ControlType.Color,title:\"Clear Icon Hover Background Color\",defaultValue:\"#f3f4f6\",hidden:props=>props.showSearchIcon===false||props.showClearButton===false}},defaultValue:{showSearchIcon:true,showClearButton:true,iconSize:16,iconColor:\"#6B7280\"}},storeKey:{type:ControlType.String,title:\"Filter Group\",description:\"Components with same group share filters. Leave empty or 'auto' to use collection name.\",defaultValue:\"auto\",placeholder:\"auto (uses collection name)\"},urlPrefix:{type:ControlType.String,title:\"URL Prefix\",description:\"Prefix for URL parameter. If set, uses '{prefix}_search' instead of 'search'\",placeholder:\"e.g., 'product' creates '?product_search=...'\",optional:true},debugMode:{type:ControlType.Boolean,title:\"🛠 Debug Mode\",defaultValue:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CMSSearch\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CMSSearch.map","import{jsx as _jsx}from\"react/jsx-runtime\";// @ts-ignore-next-line\nimport{addPropertyControls,ControlType,useQueryData}from\"framer\";import{getCollectionStore,getCollectionStoreKey,getCollectionInfo,isCanvas,getCmsQueryFromSlot}from\"https://framerusercontent.com/modules/2VZikWBxCagm4nJReNjX/uFUqD0e9fJ1WAIOOmgia/store_management.js\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerDisableUnlink\n */export default function CMSCount({collection,template=\"Showing {start}-{end} of {total}\",showWhenZero=true,storeKey,style,countStyles={},id,...rest}){// Get store key for this collection using new logic\nconst actualStoreKey=getCollectionStoreKey(collection,storeKey);// Initialize store immediately if we have a store key (fixes race condition)\nif(actualStoreKey){getCollectionStore(actualStoreKey);}// Extract collection info from slot connection\nconst collectionInfo=getCollectionInfo(collection);// Get store and subscribe to changes - this automatically subscribes to updates\nconst store=actualStoreKey?getCollectionStore(actualStoreKey):null;const[state]=store?store():[null];// Check if we have active filters (improved logic from CMSSearch)\nconst hasActiveFilters=state&&(state.searchTerm&&state.searchTerm.trim()!==\"\"||state.filters&&state.filters.length>0||state.sort&&state.sort.length>0);// Calculate current count using same logic as CMSSearch\nlet currentCount=0;if(hasActiveFilters&&state?.count!==undefined){// Use filtered count when filters are active\ncurrentCount=state.count;}else if(collectionInfo){// Use total collection count when no filters are active\nconst originalQuery=getCmsQueryFromSlot(collection);if(originalQuery){try{const unfiltered=useQueryData(originalQuery);currentCount=unfiltered?.length||0;}catch(error){console.warn(\"CMSCount: Error getting collection count:\",error);currentCount=0;}}}// Get pagination info for range display\nconst cmsItem=collection?.[0]?.props?.children?.props?.children;const pageSize=cmsItem?.props?.pageSize||currentCount;const currentPage=1// Framer collections typically show page 1 by default\n;// Calculate range values (from archive implementation)\nconst totalResults=currentCount;const resultsPerPage=Math.min(pageSize,totalResults);const startResult=totalResults>0?1:0;const endResult=Math.min(resultsPerPage,totalResults);// Canvas mode handling\nif(isCanvas){// In Canvas (editor) mode\nif(collection&&collection.length>0){// Show template as-is with placeholder values for styling preview\nconst displayText=template.replace(/{start}/g,\"1\").replace(/{end}/g,\"10\").replace(/{total}/g,\"50\").replace(/{count}/g,\"50\");return /*#__PURE__*/_jsx(\"div\",{...rest,style:{style,...countStyles,...countStyles?.font,fontSize:countStyles?.font?.fontSize||\"12px\",...countStyles?.border},children:displayText});}else{// No collection connected in Canvas mode\nreturn /*#__PURE__*/_jsx(\"div\",{...rest,style:{style,...countStyles,...countStyles?.font,fontSize:countStyles?.font?.fontSize||\"12px\",...countStyles?.border},children:\"Connect CMS Collection\"});}}// Preview/Live mode - use real data\n// Don't show if count is 0 and showWhenZero is false\nif(!showWhenZero&&currentCount===0){return null;}// Generate the display text with all placeholders\nconst displayText=template.replace(/{start}/g,String(startResult)).replace(/{end}/g,String(endResult)).replace(/{total}/g,String(totalResults)).replace(/{count}/g,String(currentCount));return /*#__PURE__*/_jsx(\"div\",{...rest,style:{style,...countStyles,...countStyles?.font,fontSize:countStyles?.font?.fontSize||\"12px\",...countStyles?.border},children:displayText});}addPropertyControls(CMSCount,{collection:{type:ControlType.Slot,title:\"Collection\",description:\"Connect your CMS Collection List component here\",maxCount:1},template:{type:ControlType.String,title:\"Template\",defaultValue:\"Result: {total}\",description:'{total}=total results, {count}=filtered count. Example: \"Result: {total}\"'},showWhenZero:{type:ControlType.Boolean,title:\"Show When Zero\",description:\"Show count even when zero results found\",defaultValue:true},storeKey:{type:ControlType.String,title:\"Filter Group\",description:\"Components with same group share filters. Leave empty or 'auto' to use collection name.\",defaultValue:\"auto\",placeholder:\"auto (uses collection name)\"},countStyles:{type:ControlType.Object,title:\"Count Styles\",description:\"Styling for count display text including font, colors, and spacing\",controls:{font:{type:ControlType.Font,title:\"Font\",description:\"Typography settings for count text\",controls:\"extended\",defaultValue:{fontSize:\"12px\"}},padding:{type:ControlType.Padding,title:\"Padding\",description:\"Inner spacing around count text\",defaultValue:\"0px\"},color:{type:ControlType.Color,title:\"Text Color\",description:\"Color of count text\",defaultValue:\"#000\",optional:true},backgroundColor:{type:ControlType.Color,title:\"Background Color\",description:\"Background color behind count text\",defaultValue:\"transparent\",optional:true},border:{type:ControlType.Border,title:\"Border\",description:\"Border style around count display\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"#000\"}},borderRadius:{type:ControlType.BorderRadius,title:\"Border Radius\",description:\"Corner rounding for count container\",defaultValue:\"0px\"}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CMSCount\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CMSCount.map"],"mappings":"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"}