{"version":3,"file":"Superfields.C3kgAFEj.mjs","names":["useRef","useState","useMemo","Children","Cookies","useRef","useMemo","_Fragment","useContext"],"sources":["https:/framerusercontent.com/modules/JfW6EfEeJnrqM1YQCYmc/AmWfw7T06LArboPCU8W9/Masonry.js","https:/ga.jspm.io/npm:js-cookie@3.0.1/dist/js.cookie.mjs","https:/framerusercontent.com/modules/c1jaZMVo1HBulMCJfZHW/nlasUjfvw2PNBWz7VogG/FavouriteStore.js","https:/framerusercontent.com/modules/1o5Bk6b6qvbR58A6b2Ej/Mqjy9QGn7gISXUH9A2We/Superfields.js"],"sourcesContent":["// Code from Nikolay Goncharuk on GitHub:\n// https://github.com/GoncharukBro/react-smart-masonry/blob/master/src/Masonry.tsx\n// https://github.com/GoncharukBro/react-smart-masonry/blob/master/src/useResize.ts\n//\n// Modified by Isaac Roberts for Superfields\n// https://superfields.io\n//\n// Copyright (c) 2021 Nikolay Goncharuk\n// MIT License\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useState,useLayoutEffect,useEffect,useMemo,useRef,Children,isValidElement}from\"react\";const DEFAULT_COLUMNS=1;const DEFAULT_GAP=0;export default function Masonry({breakpoints,columns=DEFAULT_COLUMNS,gapH=DEFAULT_GAP,gapV=DEFAULT_GAP,reverse=false,autoArrange=false,alignment=\"center\",children,style,...otherProps},forwardedRef){const elements=useRef([]);const previousLayout=useRef([]);const[arrange,setArrange]=useState(false);const[layoutVersion,setLayoutVersion]=useState(0);const resizeObservers=useRef(new Map);const updateTimeoutRef=useRef(null);const earliestChangedIndex=useRef(null);// Replace image load handler with resize observer handler\nconst handleElementResize=element=>{if(!resizeObservers.current.has(element)){let lastUpdatedHeight=element.offsetHeight;const observer=new ResizeObserver(entries=>{const entry=entries[0];const newHeight=entry.target.offsetHeight;if(newHeight!==lastUpdatedHeight&&Math.abs(newHeight-lastUpdatedHeight)>2){lastUpdatedHeight=newHeight;// Find the index of the changed element\nconst changedIndex=elements.current.findIndex(el=>el.element===element);// Update earliest changed index\nif(earliestChangedIndex.current===null){earliestChangedIndex.current=changedIndex;}else{earliestChangedIndex.current=Math.min(earliestChangedIndex.current,changedIndex);}// Only set timeout if one isn't already running\nif(!updateTimeoutRef.current){const delay=layoutVersion===0?10:200// 10ms for first update, 200ms for subsequent\n;updateTimeoutRef.current=setTimeout(()=>{setLayoutVersion(v=>v+1);updateTimeoutRef.current=null;},delay);}}});observer.observe(element);resizeObservers.current.set(element,observer);}};const addElement=index=>element=>{if(element!==null){temporaryElements.push({element,index});elements.current=temporaryElements;handleElementResize(element);}};// Cleanup resize observers when component unmounts\nuseEffect(()=>{return()=>{resizeObservers.current.forEach(observer=>observer.disconnect());resizeObservers.current.clear();};},[]);// Clean up timeout on unmount\nuseEffect(()=>{return()=>{if(updateTimeoutRef.current){clearTimeout(updateTimeoutRef.current);}};},[]);useLayoutEffect(()=>{if(autoArrange&&!arrange)setArrange(true);if(autoArrange&&arrange)setLayoutVersion(v=>v+1);return()=>{if(autoArrange&&arrange)setArrange(false);};},[autoArrange]);const layout=useMemo(()=>{if(columns<1)return[];const arrayOfChildren=Children.toArray(children);if(reverse)arrayOfChildren.reverse();const newLayout=Array.from({length:columns},()=>{return[];});const columnHeights=newLayout.map(()=>0);// Use the ref directly instead of parsing from layoutVersion\nconst changedIndex=earliestChangedIndex.current??-1;const getColumnIndex=index=>{if(autoArrange&&arrange&&elements.current.length>0){// If we're after the changed element, find the shortest column\nif(changedIndex===-1||index>changedIndex){const columnIndex=columnHeights.findIndex(item=>{return item===Math.min(...columnHeights);});const element=elements.current.find(item=>item.index===index);const elementHeight=element?.element.getBoundingClientRect().height;columnHeights[columnIndex]+=(elementHeight||0)+gapV;return columnIndex;}else{// For elements before or at the changed index, use their current column\nconst element=elements.current.find(item=>item.index===index);if(element){const currentColumn=previousLayout.current.findIndex(col=>col.some(item=>item.index===index));if(currentColumn!==-1){const elementHeight=element.element.getBoundingClientRect().height;columnHeights[currentColumn]+=(elementHeight||0)+gapV;return currentColumn;}}// Fallback to default behavior if element not found\nconst columnIndex=columnHeights.findIndex(item=>{return item===Math.min(...columnHeights);});const elementHeight=element?.element.getBoundingClientRect().height;columnHeights[columnIndex]+=(elementHeight||0)+gapV;return columnIndex;}}return index%columns;};arrayOfChildren.forEach((child,index)=>{if(child&&/*#__PURE__*/isValidElement(child)){newLayout[getColumnIndex(index)].push({element:child,index});}});// Store the new layout for next render\npreviousLayout.current=newLayout;return newLayout;},[layoutVersion,arrange,children,columns,reverse,autoArrange]);const temporaryElements=[];return /*#__PURE__*/_jsx(\"div\",{ref:forwardedRef,style:{display:\"flex\",gap:gapH,...style},...otherProps,children:layout.map((column,columnIndex)=>/*#__PURE__*/_jsx(\"div\",{style:{flex:1,display:\"flex\",flexDirection:\"column\",alignItems:alignment,gap:gapV},children:column.map((item,itemIndex)=>/*#__PURE__*/_jsx(\"div\",{ref:addElement(item.index),children:item.element},itemIndex))},columnIndex))});}Masonry.displayName=\"Superfields/Masonry\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Masonry\",\"slots\":[\"children\"],\"annotations\":{\"framerContractVersion\":\"1\"}},\"MasonryProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Masonry.map","function assign(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)e[r]=n[r]}return e}var e={read:function(e){'\"'===e[0]&&(e=e.slice(1,-1));return e.replace(/(%[\\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function init(e,t){function set(n,r,i){if(\"undefined\"!==typeof document){i=assign({},t,i);\"number\"===typeof i.expires&&(i.expires=new Date(Date.now()+864e5*i.expires));i.expires&&(i.expires=i.expires.toUTCString());n=encodeURIComponent(n).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var o=\"\";for(var c in i)if(i[c]){o+=\"; \"+c;true!==i[c]&&(o+=\"=\"+i[c].split(\";\")[0])}return document.cookie=n+\"=\"+e.write(r,n)+o}}function get(t){if(\"undefined\"!==typeof document&&(!arguments.length||t)){var n=document.cookie?document.cookie.split(\"; \"):[];var r={};for(var i=0;i<n.length;i++){var o=n[i].split(\"=\");var c=o.slice(1).join(\"=\");try{var a=decodeURIComponent(o[0]);r[a]=e.read(c,a);if(t===a)break}catch(e){}}return t?r[t]:r}}return Object.create({set:set,get:get,remove:function(e,t){set(e,\"\",assign({},t,{expires:-1}))},withAttributes:function(e){return init(this.converter,assign({},this.attributes,e))},withConverter:function(e){return init(assign({},this.converter,e),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var t=init(e,{path:\"/\"});export{t as default};\n\n//# sourceMappingURL=js.cookie.mjs.map","import{create}from\"https://framerusercontent.com/modules/XPZpWLgM1p9otlAim6ab/YZGwyfuvWTDLYoiYQunH/zustand.js\";import Cookies from\"js-cookie\";const useBaseStore=create((set,get)=>({collections:{},getFavourites:slugFieldId=>{const state=get().collections[slugFieldId];return state||[];},setFavourites:(slugFieldId,favourites)=>{set(state=>({collections:{...state.collections,[slugFieldId]:favourites}}));Cookies.set(`superfieldsFavourites_${slugFieldId}`,favourites);},addFavourite:(slugFieldId,favourite)=>{const currentFavourites=get().getFavourites(slugFieldId);get().setFavourites(slugFieldId,[...currentFavourites,favourite]);},removeFavourite:(slugFieldId,favouriteToRemove)=>{const currentFavourites=get().getFavourites(slugFieldId);get().setFavourites(slugFieldId,currentFavourites.filter(fav=>fav!==favouriteToRemove));}}));const useFavouriteStore=(slugFieldId,selector,cmsCollectionName=null)=>{return useBaseStore(state=>{let newState={favourites:state.getFavourites(slugFieldId)};if(!Array.isArray(state.collections[slugFieldId])){// Load favourites from cookies\ntry{const cookieId=`superfieldsFavourites_${slugFieldId}`;let savedState=Cookies.get(cookieId);if(!savedState&&cmsCollectionName){const cmsNameCookieId=`superfieldsFavourites_${cmsCollectionName}`;savedState=Cookies.get(cmsNameCookieId);if(savedState){Cookies.set(cookieId,savedState);Cookies.remove(cmsNameCookieId);}}if(savedState){const savedFavourites=savedState.split(\",\");state.setFavourites(slugFieldId,savedFavourites);newState.favourites=savedFavourites;}}catch(error){console.error(\"Failed to load or parse favourites cookie:\",error);}}for(const key in state){const value=state[key];if(typeof value===\"function\"){newState[key]=(...args)=>value(slugFieldId,...args);}else{newState[key]=value;}}return selector(newState);});};export default useFavouriteStore;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FavouriteStore.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget,// @ts-ignore\nResolveLinks,// @ts-ignore\nuseQueryData,// @ts-ignore\nPathVariablesContext,MotionConfigContext}from\"framer\";import{cloneElement,useEffect,useRef,useMemo,memo,useContext,useId}from\"react\";import{LayoutGroup}from\"framer-motion\";import{Message,sortingControls,FAVOURITES_FILTER_ID,DELIMITER,FieldType,FilterFieldType,FilterTextCondition,DEFAULT_SORTING_ID}from\"https://framerusercontent.com/modules/FZjYlw33eNo8pxLbSFLX/9cz7ek89fMdNfYUyPOlg/SuperfieldsShared.js\";import{getCollectionData,addFieldsToSelect}from\"https://framerusercontent.com/modules/PNm0aYRdp2Urx1MCseUn/jWeh7GKvm3RetCKspgqG/CMSLibrary.js\";import Masonry from\"https://framerusercontent.com/modules/JfW6EfEeJnrqM1YQCYmc/AmWfw7T06LArboPCU8W9/Masonry.js\";import useSuperfieldsStore from\"https://framerusercontent.com/modules/OoGHZMzWDzm2mNN7bmeR/SrfgZxoYwWZOduOAI06A/Store.js\";import useFavouriteStore from\"https://framerusercontent.com/modules/c1jaZMVo1HBulMCJfZHW/nlasUjfvw2PNBWz7VogG/FavouriteStore.js\";const fieldTypeNames={[FieldType.String]:\"Text\",[FieldType.Number]:\"Number\",[FieldType.Date]:\"Date\",[FieldType.Boolean]:\"Toggle\",[FieldType.Enum]:\"Option\"};var Order;(function(Order){Order[\"Ascending\"]=\"ascending\";Order[\"Descending\"]=\"descending\";})(Order||(Order={}));var PaginationType;(function(PaginationType){PaginationType[\"PrevNextButtons\"]=\"prevNextButtons\";PaginationType[\"LoadMoreButton\"]=\"loadMoreButton\";PaginationType[\"FramerPagination\"]=\"framerPagination\";})(PaginationType||(PaginationType={}));export var LayoutType;(function(LayoutType){LayoutType[\"Stack\"]=\"stack\";LayoutType[\"Grid\"]=\"grid\";LayoutType[\"Masonry\"]=\"masonry\";})(LayoutType||(LayoutType={}));export var SearchFieldType;(function(SearchFieldType){SearchFieldType[\"Default\"]=\"default\";SearchFieldType[\"Reference\"]=\"reference\";})(SearchFieldType||(SearchFieldType={}));/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 600\n * @framerDisableUnlink\n */export default function Superfields(props){const{superfieldsId,layout,componentConfig,cmsCollectionName,favouritesOnly,searchFields,sortingField,urlParameters,slugFieldName,scrollUp,transition,customOverrideFilter=null,customOverrideSort=null}=props;const id=useId();const collectionList=props.collectionList?.[0];const emptyState=props.emptyState?.[0];const isCanvas=RenderTarget.current()===RenderTarget.canvas;const isOptimizing=typeof window===\"undefined\";const scrollUpRef=useRef(null);const itemCountRef=useRef(-1);const isFirstRender=useRef(true);const{query,queryParent,propertyControlsById,propertyControlsByTitle,childrenFunction,collections,multiReferenceQueries,multiReferenceIdMap}=useMemo(()=>getCollectionData(collectionList),[collectionList]);const mainCollection=collections[0];const framerPaginationSize=isCanvas?0:queryParent?.props?.pageSize||0;const framerPagination=framerPaginationSize>0;const paginationActive=framerPagination||props.pagination;const[filters,randomizationSeed,search,sortOption,defaultSortOption,sortingUrlParameter,paginationType,itemsPerPage,page,setPage,setTotalItems,paginationButtonsCount,storeSearchFields,setPaginationType]=useSuperfieldsStore(superfieldsId,state=>[state.filters,state.randomizationSeed,state.search,state.sortOption,state.defaultSortOption,state.sortingUrlParameter,state.paginationType,state.itemsPerPage,state.page,state.setPage,state.setTotalItems,state.paginationButtonsCount,state.searchFields,state.setPaginationType],state=>{state.itemsPerPage=framerPagination?framerPaginationSize:props.pagination?props.itemsPerPage:0;state.paginationActive=paginationActive;// Only set searchFields if not already set in store\n// This can also be set from the SearchBar. If that happens, it should take precedence.\nif(!state.searchFields){state.searchFields=props.searchFields;}if(!isOptimizing&&!isCanvas){if(props.randomize){const seededValue=Math.floor(Math.random()*1e8);state.randomizationSeed=seededValue;if(typeof window!==\"undefined\"&&import.meta.env?.DEV){console.debug(\"[Superfields] seeded randomization\",{superfieldsId,seededValue,source:\"props.randomize\"});}}const urlParams=new URLSearchParams(window.location.search);if(urlParameters?.search&&urlParameters.searchName){const searchParam=urlParams.get(urlParameters.searchName);if(searchParam){state.search=searchParam;}}if(urlParameters?.pagination&&urlParameters.paginationName){const pageParam=urlParams.get(urlParameters.paginationName);if(pageParam){const parsedPage=parseInt(pageParam,10);const maxPages=Math.ceil(data.length/state.itemsPerPage);if(!isNaN(parsedPage)&&parsedPage>=1&&parsedPage<=maxPages){state.page=parsedPage-1// Convert to 0-based index\n;}}}}});// Calculate paginationType dynamically based on paginationButtonsCount\nconst calculatedPaginationType=useMemo(()=>{return paginationButtonsCount>0?\"prevNextButtons\":framerPagination?\"framerPagination\":props.pagination?props.paginationType:null;},[paginationButtonsCount,framerPagination,props.pagination,props.paginationType]);// Update the store's paginationType when calculatedPaginationType changes\nuseEffect(()=>{setPaginationType(calculatedPaginationType);},[calculatedPaginationType,setPaginationType]);const randomize=props.randomize||(randomizationSeed?true:false);const mainAlias=mainCollection?.alias;const mainPropertyControlsByTitle=propertyControlsByTitle[mainAlias]||{};const mainPropertyControlsById=propertyControlsById[mainAlias]||{};const slugFieldId=mainPropertyControlsByTitle[slugFieldName||\"Slug\"]?.id;const filterIds=Object.keys(filters);let sort=props.sorting?sortingField:null;if(sortOption&&sortOption.id!==DEFAULT_SORTING_ID){sort=sortOption;}const favourites=useFavouriteStore(slugFieldId,state=>state.favourites,cmsCollectionName);// Use storeSearchFields if available, otherwise use props.searchFields\nconst finalSearchFields=storeSearchFields||props.searchFields;const select=useMemo(()=>{return modifySelect(query,filters,props.search,finalSearchFields,sort,propertyControlsByTitle,collections);},[query,filters,props.search,finalSearchFields,sort?.sortBy,sort?.fieldName]);useEffect(()=>{if(typeof window!==\"undefined\"&&import.meta.env?.DEV){console.debug(\"[Superfields] randomization state\",{superfieldsId,propsRandomize:props.randomize,derivedRandomize:randomize,randomizationSeed,isCanvas});}},[superfieldsId,props.randomize,randomize,randomizationSeed,isCanvas]);const multiReferenceSelects=useMemo(()=>{const selects={};for(const alias of Object.keys(multiReferenceQueries)){// const cmsFieldsForCollection = []\n// for (const fieldId of Object.keys(mainPropertyControlsById)) {\n//     const field = mainPropertyControlsById[fieldId]\n//     // if (field?.title)\n// }\nlet cmsField=mainPropertyControlsById[alias];if(!cmsField){for(const key of Object.keys(multiReferenceIdMap)){if(multiReferenceIdMap[key]===alias){cmsField=mainPropertyControlsById[key];break;}}}if(cmsField){const fieldTitle=cmsField.title;const referenceSearchFields=[];for(const searchField of finalSearchFields){if(searchField.fieldType===\"reference\"&&searchField.fieldName===fieldTitle){referenceSearchFields.push({fieldName:searchField.referenceFieldName,fieldType:\"default\"});}}const referenceFilters={};for(const filterId of Object.keys(filters)){const filter=filters[filterId];if(filter.fieldType===FilterFieldType.MultiReference&&filter.fieldName===fieldTitle){referenceFilters[filterId]={...filter,fieldName:filter.referenceFieldName,fieldType:filter.referenceFieldType,referenceFieldName:undefined,referenceFieldType:undefined};}}selects[alias]=modifySelect(multiReferenceQueries[alias],referenceFilters,props.search,referenceSearchFields,null,propertyControlsByTitle,[...collections].sort((a,b)=>a.alias===alias?-1:b.alias===alias?1:0));}else{const rQuery=multiReferenceQueries[alias];if(rQuery){selects[alias]=rQuery.select;}}}return selects;},[multiReferenceQueries,filters,props.search,finalSearchFields]);const originalData=query?useQueryData({...query,select}):[];const multiReferenceItemsById={};for(const fieldId of Object.keys(multiReferenceQueries)){const refSelect=multiReferenceSelects[fieldId];const refQuery=multiReferenceQueries[fieldId];const refDataItemsById={};if(refSelect&&refQuery){const refData=useQueryData({...refQuery,select:refSelect,where:undefined,orderBy:undefined});for(const item of refData){refDataItemsById[item.id]=item;}}multiReferenceItemsById[fieldId]=refDataItemsById;}const[data,dataIds,dataItemsById]=useMemo(()=>{const data=mapCollectionDataValues(originalData,propertyControlsById,mainAlias,multiReferenceItemsById,multiReferenceIdMap);const dataIds=originalData.map(item=>item.id);const dataItemsById={};if(!isCanvas&&Array.isArray(data)){for(const item of data){dataItemsById[item.id]=item;}}return[data,dataIds,dataItemsById];},[originalData,propertyControlsById,mainAlias,multiReferenceItemsById,multiReferenceIdMap]);const scrollToTop=()=>{if(scrollUp&&scrollUpRef.current&&!isOptimizing&&!isCanvas){const rect=scrollUpRef.current.getBoundingClientRect();const topIsInView=rect.top>=0&&rect.top<=window.innerHeight;if(!topIsInView){scrollUpRef.current.scrollIntoView({behavior:scrollUp.scrollStyle});}}};useEffect(()=>{if(isFirstRender.current){return;}if(scrollUp&&(scrollUp.filteringEnabled&&filterIds.length>0||scrollUp.sortingEnabled&&sort?.sortBy!==\"defaultSorting\")){scrollToTop();}},[filters,sort?.sortBy]);useEffect(()=>{if(isFirstRender.current){isFirstRender.current=false;return;}if(paginationActive&&scrollUp&&scrollUp.paginationEnabled&&paginationType==\"prevNextButtons\"){scrollToTop();}// Update URL parameter\nif(paginationActive&&urlParameters?.pagination&&urlParameters.paginationName&&!isOptimizing){const url=new URL(window.location.href);const pageNumber=page+1// Convert to 1-based\n;if(pageNumber>1){url.searchParams.set(urlParameters.paginationName,pageNumber.toString());}else{url.searchParams.delete(urlParameters.paginationName);}window.history.replaceState({path:url.href},\"\",url.href);}},[page,paginationActive,paginationType,urlParameters]);useEffect(()=>{if(!urlParameters?.search||!urlParameters.searchName||isCanvas||isOptimizing){return;}const url=new URL(window.location.href);if(search){url.searchParams.set(urlParameters.searchName,search);}else{url.searchParams.delete(urlParameters.searchName);}window.history.replaceState({path:url.href},\"\",url.href);},[search,urlParameters]);useEffect(()=>{if(isCanvas||isOptimizing){return;}const url=new URL(window.location.href);let hasUrlParameterFilter=false;for(const filterId of filterIds){const filter=filters[filterId];if(filter&&filter.urlParameter){hasUrlParameterFilter=true;const value=filter.value;if(value!=null&&value!==undefined&&value!==\"\"){url.searchParams.set(filter.urlParameter,value.toString());}else{url.searchParams.delete(filter.urlParameter);}}}if(hasUrlParameterFilter){window.history.replaceState({path:url.href},\"\",url.href);}},[filters,urlParameters]);useEffect(()=>{if(isCanvas||isOptimizing||!sortingUrlParameter){return;}const url=new URL(window.location.href);if(sortOption&&sortOption.title!==defaultSortOption?.title){url.searchParams.set(sortingUrlParameter,sortOption.title);}else{url.searchParams.delete(sortingUrlParameter);}window.history.replaceState({path:url.href},\"\",url.href);},[sortOption,defaultSortOption,sortingUrlParameter]);// Filtering\nconst filteredData=useMemo(()=>{if(isCanvas||!filterIds.length){return dataIds;}let itemIds=dataIds;for(const filterId of filterIds){if(filterId==FAVOURITES_FILTER_ID){continue;}const filter=filters[filterId];const{fieldName,fieldType}=filter;const filterValue=filter.value;const conditionContains=filter?.condition===FilterTextCondition.Contains;const fields=[];if(fieldType===FilterFieldType.MultipleOptions){for(const n of fieldName.split(DELIMITER)){const field=mainPropertyControlsByTitle[n.trim()];if(field){fields.push(field);}}}else if(fieldType===FilterFieldType.Reference||fieldType===FilterFieldType.MultiReference){const{referenceFieldName}=filter;const field=mainPropertyControlsByTitle[fieldName];const isMultiRef=field?.type===\"multicollectionreference\";if(field&&(field.type===\"collectionreference\"||isMultiRef)){const collection=collections.find(c=>c.alias===field.id||isMultiRef&&c.alias===multiReferenceIdMap[field.id]);const collectionPropControls=collection?.data?.propertyControls;if(collectionPropControls){let propertyControlId=null;let propertyControl=null;for(const propertyId of Object.keys(collectionPropControls)){const control=collectionPropControls[propertyId];if(control.title===referenceFieldName){propertyControlId=propertyId;propertyControl=control;break;}}if(propertyControl&&propertyControlId){if(isMultiRef){fields.push({...field,referenceAlias:multiReferenceIdMap[field.id],referenceId:propertyControlId,referenceType:propertyControl.type});}else{fields.push({id:`${field.id}.${propertyControlId}`,type:propertyControl.type});}}}}}else{const field=mainPropertyControlsByTitle[fieldName];if(field){fields.push(field);}}const isMultipleFields=fields.length>1;if(filter&&fields.length&&filterValue!=null&&filterValue!=undefined){const filteredData=[];for(const id of itemIds){let foundMatch=false;const dataItem=dataItemsById[id];if(isMultipleFields){for(const field of fields){if(processField(field,dataItem[field.id],filterValue,filter.multiSelect,conditionContains,multiReferenceItemsById)){foundMatch=true;break;}}}else{const field=fields[0];foundMatch=processField(field,dataItem[field.id],filterValue,filter.multiSelect,conditionContains,multiReferenceItemsById);}if(foundMatch){filteredData.push(id);}}itemIds=filteredData;}}return itemIds;},[filters,data]);// Favourites filter\nconst favouriteFilterValue=filters[FAVOURITES_FILTER_ID]?.value;const favouriteFilteredData=useMemo(()=>{if(isCanvas||!slugFieldId||!favouritesOnly&&typeof favouriteFilterValue!==FieldType.Boolean){return dataIds;}const shouldFilterFavorites=favouriteFilterValue===true||favouritesOnly;if(!Array.isArray(favourites)||favourites.length===0){if(shouldFilterFavorites){return[];}}else{return dataIds.filter(id=>favourites.includes(dataItemsById[id][slugFieldId])===shouldFilterFavorites);}return dataIds;},[favouriteFilterValue,favouritesOnly,favourites,data]);const customFilteredData=useMemo(()=>{if(!customOverrideFilter){return dataIds;}const value=customOverrideFilter({dataIds,dataItemsById,collections,propertyControlsById,propertyControlsByTitle,mainPropertyControlsByTitle});if(Array.isArray(value)){return value;}return dataIds;},[customOverrideFilter,data]);// Search\nconst searchText=search?.trim().toLowerCase()??\"\";const[searchData,hasSearch,missingSearchField]=useMemo(()=>{if(isCanvas||!searchText.length||!Array.isArray(data)){return[dataIds,false,null];}let missingFieldName=null;// 0: Hidden\n// 1: Includes text\n// 2: Includes full word\n// 3: Starts with\n// 4: Exact match\nconst levels=[[...dataIds],[],[],[],[]];const itemLevels=new Array(data.length).fill(0);for(let i=0;i<finalSearchFields.length;i++){const{fieldType,fieldName,referenceFieldName}=finalSearchFields[i];const{property}=getPropertyControl(fieldName,fieldType,referenceFieldName,null,propertyControlsByTitle,mainAlias,\"Title\");if(!property){missingFieldName=fieldName;break;}const propertyID=property.id;const propertyType=property.type;const propIsString=propertyType==FieldType.String||propertyType==FieldType.Enum;const propIsNumber=propertyType==FieldType.Number;const propIsMultiReference=propertyType==\"multicollectionreference\";for(const ii in data){const cmsItem=data[ii];let level=0;if(propIsMultiReference){const items=dataItemsById[cmsItem.id]?.[propertyID];const alias=multiReferenceIdMap[property.id];const propertyControls=propertyControlsByTitle[alias];if(propertyControls&&typeof propertyControls===\"object\"&&Array.isArray(items)){const rPropertyControl=propertyControls[referenceFieldName||\"Title\"];const propId=rPropertyControl?.id;if(propId){for(const rItem of items){if(rItem){const rValue=rItem[propId];level=Math.max(level,getSearchLevelForValue(rValue,searchText));}}}}}else{const value=dataItemsById[cmsItem.id]?.[propertyID];level=getSearchLevelForValue(value,searchText);}// Move item to new level if it's a higher level\nconst oldLevel=itemLevels[ii];if(level>oldLevel){// Remove from old level\nconst oldLevelItems=[];for(const item of levels[oldLevel]){if(item!=cmsItem.id){oldLevelItems.push(item);}}levels[oldLevel]=oldLevelItems;// Add to new level\nlevels[level].push(cmsItem.id);itemLevels[ii]=level;}}}if(missingFieldName){return[dataIds,false,missingFieldName];}return[[...levels[4],...levels[3],...levels[2],...levels[1]],true,missingFieldName];},[searchText,data,finalSearchFields]);// Pagination, randomization and sorting are applied after filtering and search\nlet itemIds=searchData.filter(itemId=>filteredData.includes(itemId)&&favouriteFilteredData.includes(itemId)&&customFilteredData.includes(itemId));const itemCount=itemIds.length;const pageCount=itemsPerPage&&itemCount?Math.ceil(itemCount/itemsPerPage):1;if(itemCount!==itemCountRef.current){setTotalItems(itemCount);// 🔧 FIX: Reset page if it's now out of range after filtering\n// When filters change and reduce totalItems, the current page might exceed the new pageCount\n// Example: On page 3 with 9 items (3 pages), filter to 3 items (1 page) → reset to page 0\nif(page>=pageCount&&pageCount>0){setPage(Math.max(0,pageCount-1));}}itemCountRef.current=itemCount;// Randomization\nconst dataOrder=useMemo(()=>{if(randomizationSeed&&!isCanvas&&Array.isArray(data)){if(typeof window!==\"undefined\"&&import.meta.env?.DEV){console.debug(\"[Superfields] shuffling data\",{superfieldsId,randomizationSeed,itemCount:data.length});}const newDataOrder=Array.from({length:data.length},(_,i)=>i);return shuffle(newDataOrder,randomizationSeed);}if(typeof window!==\"undefined\"&&import.meta.env?.DEV){console.debug(\"[Superfields] shuffling skipped\",{superfieldsId,randomizationSeed,isCanvas,hasData:Array.isArray(data)});}return null;},[randomizationSeed,isCanvas,data]);if(!isCanvas&&!hasSearch&&randomize){let orderedItemIds=dataIds;if(dataOrder){orderedItemIds=new Array(dataIds.length);for(let i=0;i<dataOrder.length;i++){orderedItemIds[dataOrder[i]]=dataIds[i];}}itemIds=orderedItemIds.filter(itemId=>itemIds.includes(itemId));}const canSort=!isCanvas&&!randomize&&!hasSearch;let missingSortField=\"\";let mismatchedSortFieldName=\"\";let mismatchedSortFieldType=\"\";if(canSort&&sort&&sort.sortBy!==\"defaultSorting\"){const{sortBy}=sort;const isReference=sort.fieldType===\"reference\";const fieldType=isReference?sort.referenceFieldType:sort.fieldType;const{property,mismatchedFieldName,mismatchedFieldType}=getPropertyControl(sort.fieldName,sort.fieldType,sort.referenceFieldName,sort.referenceFieldType,propertyControlsByTitle,mainAlias);if(mismatchedFieldName){mismatchedSortFieldName=mismatchedFieldName;mismatchedSortFieldType=mismatchedFieldType;}else{const fieldId=property?.id;if(sortBy===\"field\"&&fieldId||sortBy===\"favourites\"&&slugFieldId){const isAscending=sortBy===\"favourites\"?sort.favouritesSort===\"favouritesLast\":fieldType===FieldType.String&&sort.stringSort===\"ascending\"||fieldType===FieldType.Number&&sort.numberSort===\"ascending\"||fieldType===FieldType.Date&&sort.dateSort===\"ascending\"||fieldType===FieldType.Boolean&&sort.booleanSort===\"noYes\"||fieldType===FieldType.Enum&&(sort.enumSort===\"optionOrder\"||sort.enumSort===\"ascending\");const getSortValue=id=>{if(sortBy===\"favourites\"){const slug=dataItemsById[id]?.[slugFieldId];return Array.isArray(favourites)&&favourites.includes(slug)?1:0;}const value=dataItemsById[id]?.[fieldId];if(value==null){return null;}switch(fieldType){case FieldType.Number:return Number(value);case FieldType.Date:return new Date(value).getTime();case FieldType.Boolean:return value?1:0;case FieldType.Enum:return sort.enumSort===\"optionOrder\"||sort.enumSort===\"reverseOptionOrder\"?property.optionTitles?property.optionTitles.indexOf(value):-1:String(value);default:return String(value);}};const sortedItemIds=[...itemIds].sort((a,b)=>{const aValue=getSortValue(a);const bValue=getSortValue(b);if(aValue===null&&bValue===null)return 0;if(aValue===null)return 1;if(bValue===null)return-1;let comparison;if(fieldType===FieldType.String||fieldType===FieldType.Enum&&(sort.enumSort===\"ascending\"||sort.enumSort===\"descending\")){comparison=aValue.localeCompare(bValue);}else{comparison=aValue<bValue?-1:aValue>bValue?1:0;}return isAscending?comparison:-comparison;});itemIds=sortedItemIds;}else{missingSortField=sort.fieldName;}}}if(canSort&&customOverrideSort){const value=customOverrideSort({itemIds,dataItemsById,collections,propertyControlsById,propertyControlsByTitle});if(Array.isArray(value)){itemIds=value;}}// Pagination\nif(!isCanvas&&paginationActive){switch(paginationType){case\"prevNextButtons\":itemIds=itemIds.slice(page*itemsPerPage,(page+1)*itemsPerPage);break;case\"loadMoreButton\":case\"framerPagination\":itemIds=itemIds.slice(0,(page+1)*itemsPerPage);break;}}const memoizedChildren=useMemo(()=>{if(isCanvas||!collectionList||!query||!childrenFunction){return null;}// 🔍 DEBUG LOG 1: Check itemIds entering memoizedChildren\nconsole.log(\"🔍 [DEBUG 1] itemIds:\",itemIds.length,\"items:\",itemIds.slice(0,5));const{offset,limit}=query;const paginationInfo={currentPage:page+1,totalPages:pageCount,isLoading:false};const loadMore=()=>{if(paginationActive){const newPage=page+1;if(newPage>=0&&newPage<pageCount){setPage(newPage);}}};const originalDataItemsById={};for(const item of originalData){originalDataItemsById[item.id]=item;}const items=itemIds.map(itemId=>originalDataItemsById[itemId]).filter(Boolean);let clChildren=childrenFunction(items,paginationInfo,loadMore);// 🔍 DEBUG LOG 2: Check what childrenFunction returns\nconsole.log(\"🔍 [DEBUG 2] clChildren:\",{isArray:Array.isArray(clChildren),length:Array.isArray(clChildren)?clChildren.length:\"N/A\",hasPropsChildren:!!clChildren?.props?.children,propsChildrenLength:Array.isArray(clChildren?.props?.children)?clChildren.props.children.length:\"N/A\"});const modifyChildren=elements=>{let newChildren=elements;if(Array.isArray(elements)&&elements.length&&componentConfig&&componentConfig.variant.length>0){const componentChildren=[];let isComponentWithVariants=true;for(let i=0;i<elements.length;i++){const child=elements[i];const key=child.key??child.props?.id;const component=/*#__PURE__*/_jsx(MemoizedComponentVariantSwitch,{child:child,componentConfig:componentConfig},key);if(component===child){isComponentWithVariants=false;break;}else{componentChildren.push(/*#__PURE__*/_jsx(LayoutGroup,{id:key,children:component},key));}}if(isComponentWithVariants){newChildren=componentChildren;}}// 🔧 TEST FIX: Return children directly without wrapping/modifying\n// The children are already LayoutGroup components from Framer\n// Stripping their wrapper and spreading props onto div breaks the animation system\nreturn newChildren;};let children=null;if(Array.isArray(clChildren)){children=modifyChildren(clChildren);}else if(Array.isArray(clChildren?.props?.children)){const childrenArray=clChildren.props.children;let arrayIndex=childrenArray.findIndex(child=>Array.isArray(child));if(arrayIndex==-1){children=modifyChildren(childrenArray);}else{let newChildren=[];for(const child of childrenArray){if(Array.isArray(child)){newChildren=newChildren.concat(modifyChildren(child));}else{newChildren.push(child);}}children=newChildren;}}// 🔍 DEBUG LOG 3: Check children after modifyChildren\nconsole.log(\"🔍 [DEBUG 3] children after processing:\",{length:Array.isArray(children)?children.length:\"N/A\",keys:Array.isArray(children)?children.map(c=>c?.key||c?.props?.id||\"no-key\").slice(0,5):[]});const childrenSlugs=[];if(Array.isArray(children)){for(const child of children){let slug=null;const id=child.props?.child?.key;if(id){slug=dataItemsById[id]?.[slugFieldId];}childrenSlugs.push(slug);}}// 🔍 DEBUG LOG 4: Final check before render - are children populated correctly?\nconsole.log(\"🔍 [DEBUG 4] Final render:\",{childrenCount:children?.length,slugsCount:childrenSlugs.length,sampleChildren:children?.slice(0,3).map((c,i)=>({index:i,hasChild:!!c,type:c?.type?.name||c?.type||\"unknown\",key:c?.key||\"no-key\",slug:childrenSlugs[i]}))});if(!children)return null;return children.map((child,index)=>/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{[slugFieldId]:childrenSlugs[index]||null},children:child},child?.key||childrenSlugs[index]||index));},[isCanvas,collectionList,query,itemIds,page,componentConfig]);if(!collectionList){return /*#__PURE__*/_jsx(Message,{title:\"Connect a CMS Collection List\",subtitle:\"Drag the handle on the right side to a Collection List or select from the dropdown list. The Collection List must be outside of a page to be connected.\"});}else if(!isCanvas&&!query){return /*#__PURE__*/_jsx(Message,{title:\"Connect a CMS Collection List\",subtitle:\"The layer that's connected isn't a Collection List. Make sure the Collection List isn't inside of any other layers or components when connecting it.\"});}else if(missingSearchField){return /*#__PURE__*/_jsx(Message,{title:`\"${missingSearchField}\" field does not exist in your CMS collection`,subtitle:`The field \"${missingSearchField}\" is in the search fields list, but there are no fields in your CMS collection with that name. Edit the field name in the search fields list or add a new CMS field with that name.`});}else if(missingSortField){return /*#__PURE__*/_jsx(Message,{title:`\"${missingSortField}\" field does not exist in your CMS collection`,subtitle:`The field \"${missingSortField}\" is in the search fields list, but there are no fields in your CMS collection with that name. Edit the field name in the sorting configuration or add a new CMS field with that name.`});}else if(mismatchedSortFieldName){return /*#__PURE__*/_jsx(Message,{title:`\"${mismatchedSortFieldName}\" is not a ${fieldTypeNames[mismatchedSortFieldType]||mismatchedSortFieldType} field.`,subtitle:\"Please update the Superfields sorting mode to match the field type on the CMS collection\"});}let layoutStyle={};if(layout){switch(layout.type){case\"stack\":const isVertical=layout.direction==\"vertical\";layoutStyle={display:\"flex\",flexDirection:isVertical?\"column\":\"row\",flexWrap:layout.wrap?\"wrap\":\"nowrap\",alignItems:isVertical?layout.alignV:layout.alignH,justifyContent:layout.distribute,gap:layout.gap};break;case\"grid\":// Columns\nlet gridTemplateColumns=\"\";if(layout.columns==\"auto\"){if(layout.gridWidthType==\"min\"){gridTemplateColumns=`repeat(auto-fill, minmax(${layout.gridWidth}px, 1fr))`;}else{// \"fixed\"\ngridTemplateColumns=`repeat(auto-fill, ${layout.gridWidth}px)`;}}else{if(layout.gridWidthType==\"min\"){gridTemplateColumns=`repeat(${layout.columnCount}, minmax(${layout.gridWidth}px, 1fr))`;}else{// \"fixed\"\ngridTemplateColumns=`repeat(${layout.columnCount}, ${layout.gridWidth}px)`;}}// Rows\nlet gridAutoRows=\"\";switch(layout.gridHeightType){case\"fixed\":gridAutoRows=`${layout.gridHeight}px`;break;case\"fit\":gridAutoRows=\"min-content\";break;}layoutStyle={display:\"grid\",gridTemplateColumns,gridAutoRows,justifyContent:layout.gridAlign,alignItems:layout.gridAlignV,columnGap:layout.gapH,rowGap:layout.gapV};break;}}const isMasonry=layout?.type===\"masonry\";const collectionListStyle={...isMasonry?{}:collectionList.props?.style,...props.style,...layoutStyle,position:\"relative\",padding:layout?layout.paddingIsMixed?`${layout.paddingTop}px ${layout.paddingRight}px ${layout.paddingBottom}px ${layout.paddingLeft}px`:`${layout.padding}px`:undefined};const masonryProps=isMasonry?{columns:layout.masonryColumns,gapH:layout.gapH,gapV:layout.gapV,alignment:layout.masonryItemWidth===\"fit\"?layout.masonryAlign:\"stretch\",autoArrange:true,reverse:false}:{};// Canvas view\nif(isCanvas){if(collectionList){let paginationPreviewOffset=0;let paginationItemsAfter=0;if(paginationActive&&paginationType!==\"framerPagination\"){try{// const children = collectionList.type.type(collectionList.props).props.children.props\n// \t.children;\n// if (children.length > 1) {\n// \tfor (let i = 0; i < children.length; i++) {\n// \t\tif (children[i].key == \"repeated\") {\n// \t\t\tpaginationPreviewOffset = i;\n// \t\t\tpaginationItemsAfter = children.length - i - 1;\n// \t\t\tbreak;\n// \t\t}\n// \t}\n// }\n}catch{console.warn(\"Failed to calculate Superfields pagination preview offset.\");}}if(isMasonry){return /*#__PURE__*/_jsx(Message,{title:\"Preview site to view masonry layout\",subtitle:\"The CMS masonry layout is not available in the editor. Preview or publish your site to see the CMS items.\"});// const htmlElement = collectionList.props?.__node?.cache?.htmlElement;\n// if (htmlElement) {\n// \tlet reactFiberKey = \"\";\n// \tfor (const key of Object.keys(htmlElement)) {\n// \t\tif (key.startsWith(\"__reactFiber\")) {\n// \t\t\treactFiberKey = key;\n// \t\t}\n// \t}\n// \t// Solution for getting React children from CMS collection on canvas by Fehmi Ozuseven\n// \tlet cmsChildren =\n// \t\thtmlElement[reactFiberKey]?.memoizedProps?.children?.[0]?.props?.children?.props\n// \t\t\t?.children?.[1]?.props?.children?.[0]?.props?.children;\n// \tconsole.log(cmsChildren);\n// \tif (Array.isArray(cmsChildren)) {\n// \t\tlet children = [];\n// \t\tfor (const child of cmsChildren) {\n// \t\t\tif (child.key == \"repeated\" && Array.isArray(child.props?.children)) {\n// \t\t\t\tchildren = children.concat(child.props.children);\n// \t\t\t} else {\n// \t\t\t\tchildren.push(child);\n// \t\t\t}\n// \t\t}\n// \t\treturn (\n// \t\t\t<div data-superfields style={collectionListStyle}>\n// \t\t\t\t<MemoizedMasonry {...masonryProps}>{children}</MemoizedMasonry>\n// \t\t\t</div>\n// \t\t);\n// \t}\n// }\n}else{const id=props.id??\"a\"+String(Math.floor(Math.random()*999999999));return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/cloneElement(collectionList,{id,style:collectionListStyle}),paginationActive&&paginationType!==\"framerPagination\"&&/*#__PURE__*/_jsx(\"style\",{children:`#${id} > *:nth-child(n+${itemsPerPage+1+paginationPreviewOffset})${paginationItemsAfter?`:not(:nth-last-child(-n+${paginationItemsAfter}))`:\"\"} { display: none !important; }`})]});}}else{return /*#__PURE__*/_jsx(\"div\",{style:{height:100}});}}// Empty state\nif(!itemIds?.length){if(emptyState){return /*#__PURE__*/cloneElement(emptyState,{style:{...emptyState.props.style,...props.style},\"data-superfields\":true});}else{return /*#__PURE__*/_jsx(\"div\",{\"data-superfields\":true});}}return /*#__PURE__*/_jsxs(\"div\",{...collectionList.props,style:collectionListStyle,className:isMasonry?\"\":collectionList.props?.className||\"\",\"data-superfields\":true,children:[/*#__PURE__*/_jsx(Transition,{value:transition,children:isMasonry?/*#__PURE__*/_jsx(MemoizedMasonry,{...masonryProps,children:memoizedChildren}):memoizedChildren}),paginationActive&&scrollUp&&/*#__PURE__*/_jsx(\"div\",{ref:scrollUpRef,style:{position:\"absolute\",top:scrollUp.offset,pointerEvents:\"none\"}})]});}addPropertyControls(Superfields,{superfieldsId:{type:ControlType.Number,defaultValue:0,step:1,min:0,displayStepper:true,title:\"ID\"},collectionList:{type:ControlType.ComponentInstance},emptyState:{type:ControlType.ComponentInstance},layout:{type:ControlType.Object,optional:true,controls:{type:{type:ControlType.Enum,defaultValue:\"stack\",options:[\"stack\",\"grid\",\"masonry\"],optionTitles:[\"Stack\",\"Grid\",\"Masonry\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},direction:{type:ControlType.Enum,defaultValue:\"vertical\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontal\",\"Vertical\"],optionIcons:[\"direction-horizontal\",\"direction-vertical\"],displaySegmentedControl:true,hidden:props=>props.type!=\"stack\"},distribute:{type:ControlType.Enum,defaultValue:\"start\",options:[\"start\",\"center\",\"end\",\"space-between\",\"space-around\",\"space-evenly\"],optionTitles:[\"Start\",\"Center\",\"End\",\"Space Between\",\"Space Around\",\"Space Evenly\"],hidden:props=>props.type!=\"stack\"},alignH:{type:ControlType.Enum,defaultValue:\"start\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Top\",\"Center\",\"Bottom\"],optionIcons:[\"align-top\",\"align-middle\",\"align-bottom\"],displaySegmentedControl:true,title:\"Align\",hidden:props=>props.type!=\"stack\"||props.direction!=\"horizontal\"},alignV:{type:ControlType.Enum,defaultValue:\"start\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Left\",\"Center\",\"Right\"],optionIcons:[\"align-left\",\"align-center\",\"align-right\"],displaySegmentedControl:true,title:\"Align\",hidden:props=>props.type!=\"stack\"||props.direction!=\"vertical\"},wrap:{type:ControlType.Boolean,defaultValue:false,hidden:props=>props.type!=\"stack\"},columns:{type:ControlType.Enum,defaultValue:\"fixed\",options:[\"auto\",\"fixed\"],optionTitles:[\"Auto\",\"Fixed\"],displaySegmentedControl:true,hidden:props=>props.type!=\"grid\"},columnCount:{type:ControlType.Number,defaultValue:2,min:1,step:1,displayStepper:true,title:\" \",hidden:props=>props.type!=\"grid\"||props.columns==\"auto\"},gridWidthType:{type:ControlType.Enum,defaultValue:\"min\",options:[\"min\",\"fixed\"],optionTitles:[\"Min\",\"Fixed\"],displaySegmentedControl:true,title:\"Width\",hidden:props=>props.type!=\"grid\"},gridWidth:{type:ControlType.Number,defaultValue:200,min:1,step:1,title:\" \",hidden:props=>props.type!=\"grid\"},gridHeightType:{type:ControlType.Enum,defaultValue:\"fit\",options:[\"fit\",\"fixed\"],optionTitles:[\"Fit\",\"Fixed\"],displaySegmentedControl:true,title:\"Height\",hidden:props=>props.type!=\"grid\"},gridHeight:{type:ControlType.Number,defaultValue:200,min:1,step:1,title:\" \",hidden:props=>props.type!=\"grid\"||props.gridHeightType!=\"fixed\"},gridAlign:{type:ControlType.Enum,defaultValue:\"center\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Left\",\"Center\",\"Right\"],displaySegmentedControl:true,title:\"Align\",hidden:props=>props.type!=\"grid\"},gridAlignV:{type:ControlType.Enum,defaultValue:\"start\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Top\",\"Center\",\"Bottom\"],optionIcons:[\"align-top\",\"align-middle\",\"align-bottom\"],displaySegmentedControl:true,title:\" \",hidden:props=>props.type!=\"grid\"||props.gridHeightType!==\"fit\"},masonryColumns:{type:ControlType.Number,defaultValue:3,min:1,step:1,displayStepper:true,title:\"Columns\",hidden:props=>props.type!==\"masonry\"},masonryItemWidth:{type:ControlType.Enum,defaultValue:\"fill\",options:[\"fit\",\"fill\"],optionTitles:[\"Fit\",\"Fill\"],displaySegmentedControl:true,title:\"Item Width\",hidden:props=>props.type!==\"masonry\"},masonryAlign:{type:ControlType.Enum,defaultValue:\"center\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Left\",\"Center\",\"Right\"],displaySegmentedControl:true,title:\"Align\",hidden:props=>props.type!==\"masonry\"||props.masonryItemWidth!==\"fit\"},gap:{type:ControlType.Number,defaultValue:10,min:0,step:1,hidden:props=>props.type!==\"stack\"},gapH:{type:ControlType.Number,defaultValue:10,min:0,step:1,hidden:props=>props.type!==\"grid\"&&(props.type!==\"masonry\"||props.masonryColumns===1)},gapV:{type:ControlType.Number,defaultValue:10,min:0,step:1,hidden:props=>props.type!==\"grid\"&&props.type!==\"masonry\"},padding:{type:ControlType.FusedNumber,defaultValue:0,toggleKey:\"paddingIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0}}},componentConfig:{type:ControlType.Object,optional:true,title:\"Component\",controls:{variant:{type:ControlType.String,defaultValue:\"\",placeholder:\"Variant Name\",preventLocalization:true,description:\"Override the component's variant for responsive design.\\n\\n*Note:* The component must be the only layer inside the Collection List to use this.\\n\\n*Note:* Variant does not appear while editing. Preview your project to see the variant.\"}}},scrollUp:{type:ControlType.Object,optional:true,defaultValue:{scrollStyle:\"smooth\",offset:0},title:\"Scroll to Top\",controls:{scrollStyle:{type:ControlType.Enum,defaultValue:\"smooth\",options:[\"smooth\",\"instant\"],optionTitles:[\"Smooth\",\"Instant\"],displaySegmentedControl:true,title:\"Scroll\"},offset:{type:ControlType.Number,defaultValue:-32,step:1,description:\" \"},paginationEnabled:{type:ControlType.Boolean,defaultValue:true,title:\"Pagination\"},filteringEnabled:{type:ControlType.Boolean,defaultValue:false,title:\"Filters\"},sortingEnabled:{type:ControlType.Boolean,defaultValue:false,title:\"Sorting\",description:\"Scroll to the top of the Superfields component when page, filter, or sorting is changed.\"}}},transition:{type:ControlType.Transition,defaultValue:{type:false},description:\" \"},// urlParameters: {\n//     type: ControlType.Object,\n//     title: \"URL Parameters\",\n//     description: \" \",\n//     controls: {\n//         pagination: {\n//             type: ControlType.Boolean,\n//             defaultValue: false,\n//         },\n//         paginationName: {\n//             type: ControlType.String,\n//             defaultValue: \"page\",\n//             placeholder: \"URL Parameter\",\n//             title: \"Name\",\n//             description: \"Current page\",\n//             hidden: (props) => !props.pagination,\n//         },\n//         search: {\n//             type: ControlType.Boolean,\n//             defaultValue: false,\n//         },\n//         searchName: {\n//             type: ControlType.String,\n//             defaultValue: \"search\",\n//             placeholder: \"URL Parameter\",\n//             title: \"Name\",\n//             description: \"Search input text\",\n//             // \"Search input text\\n\\n*Note:* URL parameters for filters and sorting can be added on the Filter and Sorting Selector components.\",\n//             hidden: (props) => !props.search,\n//         },\n//     },\n// },\npagination:{type:ControlType.Boolean,defaultValue:false},paginationType:{type:ControlType.Enum,defaultValue:\"pagination\",options:[\"prevNextButtons\",\"loadMoreButton\"],optionTitles:[\"Prev/Next Buttons\",\"Load More Button\"],title:\"Type\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.pagination},itemsPerPage:{type:ControlType.Number,defaultValue:4,min:1,step:1,displayStepper:true,hidden:props=>!props.pagination},filtering:{type:ControlType.Boolean,defaultValue:false},favouriting:{type:ControlType.Boolean,defaultValue:false},favouritesOnly:{type:ControlType.Boolean,defaultValue:false,hidden:props=>!props.favouriting},search:{type:ControlType.Boolean,defaultValue:false},searchFields:{type:ControlType.Array,defaultValue:[{fieldType:\"default\",fieldName:\"Title\"}],title:\"Fields\",control:{type:ControlType.Object,controls:{fieldType:{type:ControlType.Enum,defaultValue:\"default\",options:[\"reference\",\"default\"],optionTitles:[\"Yes\",\"No\"],displaySegmentedControl:true,title:\"Reference\"},fieldName:{type:ControlType.String,defaultValue:\"Title\",placeholder:\"CMS Field Name\",preventLocalization:true},referenceFieldName:{type:ControlType.String,defaultValue:\"\",placeholder:\"CMS Field Name\",preventLocalization:true,hidden:props=>props.fieldType!==\"reference\"}}},description:\"CMS fields to search\",hidden:props=>!props.search},randomize:{type:ControlType.Boolean,defaultValue:false},sorting:{type:ControlType.Boolean,defaultValue:false,hidden:props=>props.randomize},sortingField:{type:ControlType.Object,optional:true,hidden:props=>props.randomize||!props.sorting,controls:sortingControls()},slugFieldName:{type:ControlType.String,defaultValue:\"Slug\",placeholder:\"Slug Field Name\",preventLocalization:true,hidden:props=>!props.favouriting&&!props.sorting},cmsCollectionName:{type:ControlType.String,defaultValue:\"\",preventLocalization:true,hidden:props=>true}});function ComponentVariantSwitch({child,componentConfig}){const componentChild=child?.props?.children?.props?.children;const componentProps=componentChild?.props;const component=componentProps?.children;const variant=componentConfig.variant;if(!component){return child;}const clonedComponent=cloneComponent(componentChild,variant);if(clonedComponent){return clonedComponent;}if(componentProps&&typeof componentProps===\"object\"&&componentProps?.hasOwnProperty(\"href\")){const clonedChild=cloneComponent(componentProps.children?.props?.children,variant);if(clonedChild){return /*#__PURE__*/cloneElement(componentChild,{children:{...componentProps?.children,props:{...componentProps?.children?.props,children:clonedChild}}});}}const clonedChild=cloneComponent(componentProps?.children,variant);if(clonedChild){return /*#__PURE__*/cloneElement(componentChild,{children:clonedChild});}if(clonedComponent?.props?.hasOwnProperty(\"variant\")){return /*#__PURE__*/cloneElement(component,{variant});}return child;}const MemoizedComponentVariantSwitch=/*#__PURE__*/memo(ComponentVariantSwitch);const MemoizedMasonry=/*#__PURE__*/memo(Masonry);function cloneComponent(componentChild,variant){const componentProps=componentChild?.props;const component=componentProps?.children;if(componentChild?.type==ResolveLinks){return /*#__PURE__*/_jsx(ResolveLinks,{...componentProps,children:(...values)=>{const element=component(...values);return /*#__PURE__*/cloneElement(element,{children:{...element.props.children,props:{...element.props.children.props,children:{...element.props.children.props.children,props:{...element.props.children.props.children.props,variant}}}}});}});}else if(!component?.type?.propertyControls){const cData=component?.props?.children;if(component&&cData){const variantProp=cData.type?.propertyControls?.variant;if(variantProp){return /*#__PURE__*/cloneElement(component,{children:{...cData,props:{...cData.props,variant}}});}}}return null;}function shuffle(array,seed){// Create a copy of the original array to avoid modifying it directly\nconst shuffled=array.slice();// Create a seeded random number generator\nlet currentSeed=seed;const random=()=>{const x=Math.sin(currentSeed++)*1e4;return x-Math.floor(x);};// Fisher-Yates shuffle algorithm\nfor(let i=shuffled.length-1;i>0;i--){const j=Math.floor(random()*(i+1));[shuffled[i],shuffled[j]]=[shuffled[j],shuffled[i]];}return shuffled;}function getPropertyControl(fieldName,fieldType,referenceFieldName,referenceFieldType,propertyControlsByTitle,mainAlias,defaultReferencePropertyTitle=\"\"){let property=propertyControlsByTitle[mainAlias]?.[fieldName]||null;let mismatchedFieldName=\"\";let mismatchedFieldType=\"\";if(property){if(property.type===\"collectionreference\"){const alias=property.id;const propertyControls=propertyControlsByTitle[alias];if(propertyControls){const name=fieldType===\"reference\"?referenceFieldName:defaultReferencePropertyTitle;const control=propertyControls[name];if(control){if(referenceFieldType&&referenceFieldType!==control.type){mismatchedFieldName=fieldName;mismatchedFieldType=control.type;}else{property={...control,id:`${alias}.${control.id}`};}}}}else if(property.type!==fieldType){mismatchedFieldName=fieldName;mismatchedFieldType=fieldType;}}return{property,mismatchedFieldName,mismatchedFieldType};}function processField(field,fieldValue,filterValue,multiSelect,conditionContains,multiReferenceItemsById){if(field.type===\"multicollectionreference\"&&Array.isArray(fieldValue)){// const rItems = multiReferenceItemsById[field.referenceAlias]\nfor(const item of fieldValue){if(!item){continue;}const itemValue=item[field.referenceId];if(itemValue===null||itemValue===undefined){continue;}if(filterData(itemValue,filterValue,field.referenceType,multiSelect,conditionContains)){return true;}}}else{if(fieldValue===null||fieldValue===undefined){return false;}return filterData(fieldValue,filterValue,field.type,multiSelect,conditionContains);}return false;}function filterData(fieldValue,filterValue,fieldType,multiSelect,conditionContains){if(typeof filterValue==\"string\"&&multiSelect){const values=filterValue.split(DELIMITER);switch(fieldType){case FieldType.String:case FieldType.Enum:if(conditionContains){for(const v of values){if(fieldValue.includes(v)){return true;}}}else{if(values.includes(fieldValue)){return true;}}break;}}else{switch(fieldType){case FieldType.Boolean:if(fieldValue==filterValue){return true;}break;case FieldType.String:case FieldType.Enum:if(conditionContains){if(fieldValue?.includes(filterValue)){return true;}}else{if(fieldValue==filterValue){return true;}}break;}}return false;}function modifySelect(query,filters,search,searchFields,sort,propertyControlsByTitle,collections){const filterIds=Object.keys(filters);const hasFilters=filterIds.length;if(query?.select&&(hasFilters||search||sort?.sortBy===\"field\")){const fields=[];if(hasFilters){for(const filterId of filterIds){const filter=filters[filterId];if(filter.fieldType===FilterFieldType.MultipleOptions){for(const name of filter.fieldName.split(DELIMITER)){fields.push({name:name});}}else if(filter.fieldType===FilterFieldType.Reference){fields.push({name:filter.fieldName,referenceFieldName:filter.referenceFieldName});}else{fields.push({name:filter.fieldName});}}}for(const field of searchFields){if(field.fieldType===\"reference\"){fields.push({name:field.fieldName,referenceFieldName:field.referenceFieldName});}else{fields.push({name:field.fieldName});}}if(sort&&sort.sortBy===\"field\"){fields.push({name:sort.fieldName});}// Deduplicate fields\nconst uniqueFields=[];for(const field of fields){if(!uniqueFields.some(f=>f.name===field.name&&f.referenceFieldName===field.referenceFieldName)){uniqueFields.push(field);}}return addFieldsToSelect(uniqueFields,query,propertyControlsByTitle,collections);}return query?.select;}function mapCollectionDataValues(items,propertyControlsById,mainAlias,multiReferenceItemsById,multiReferenceIdMap){if(!Array.isArray(items)||typeof propertyControlsById!==\"object\"||typeof multiReferenceItemsById!==\"object\"||typeof multiReferenceIdMap!==\"object\"||typeof mainAlias!==\"string\"){return items// Return the original array if inputs are invalid\n;}const mainPropertyControlsById=propertyControlsById[mainAlias];// Create a shallow copy of the items array\nconst copiedItems=items.map(item=>({...item}));for(const propertyId of Object.keys(mainPropertyControlsById)){const property=mainPropertyControlsById[propertyId];if(property.type===\"enum\"){const optionMap={};if(property.options&&property.optionTitles){for(let i=0;i<property.options.length;i++){optionMap[property.options[i]]=property.optionTitles[i];}}for(const item of copiedItems){if(item[propertyId]){item[propertyId]=optionMap[item[propertyId]]||\"\";}}}else if(property.type===\"multicollectionreference\"){const alias=multiReferenceIdMap[propertyId];const referenceItemsById=multiReferenceItemsById[alias];if(referenceItemsById){for(const item of copiedItems){const referenceItems=item[alias];const rPropertyControlsById=propertyControlsById[alias];const newItemValues=[];if(Array.isArray(referenceItems)&&typeof rPropertyControlsById===\"object\"){const rCopiedItems=referenceItems.map(item=>{const value=typeof item===\"string\"?referenceItemsById[item]:item;return value?{...value}:{};});for(const propertyId of Object.keys(rPropertyControlsById)){const property=rPropertyControlsById[propertyId];if(property.type===\"enum\"){const optionMap={};if(property.options&&property.optionTitles){for(let i=0;i<property.options.length;i++){optionMap[property.options[i]]=property.optionTitles[i];}}for(const item of rCopiedItems){if(item[propertyId]){item[propertyId]=optionMap[item[propertyId]]||\"\";}}}}for(const item of rCopiedItems){newItemValues.push(item);}}item[propertyId]=newItemValues;}}}}return copiedItems;}function getSearchLevelForValue(value,searchText){if(value==undefined||value==null){return 0;}const text=String(value).toLowerCase();if(text==searchText){return 4;}else if(text.includes(searchText)){if(text.startsWith(searchText)){return 3;}else if((\" \"+text+\" \").includes(\" \"+searchText+\" \")){return 2;}else{return 1;}}return 0;}const Transition=({value,children})=>{const config=useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Superfields\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerIntrinsicWidth\":\"600\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any\"}},\"LayoutType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchFieldType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Superfields.map"],"mappings":"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"}