{"version":3,"file":"Filter.B9-Duhvb.mjs","names":["useId","useRef","useState","useMemo","Children","n","r","t","e","useBaseStore","useRef","useTransition","useMemo","Cookies","useRef","useMemo","_Fragment","useContext"],"sources":["https:/framerusercontent.com/modules/FZjYlw33eNo8pxLbSFLX/9cz7ek89fMdNfYUyPOlg/SuperfieldsShared.js","https:/framerusercontent.com/modules/PNm0aYRdp2Urx1MCseUn/jWeh7GKvm3RetCKspgqG/CMSLibrary.js","https:/framerusercontent.com/modules/JfW6EfEeJnrqM1YQCYmc/AmWfw7T06LArboPCU8W9/Masonry.js","https:/framerusercontent.com/modules/XPZpWLgM1p9otlAim6ab/YZGwyfuvWTDLYoiYQunH/zustand.js","https:/framerusercontent.com/modules/OoGHZMzWDzm2mNN7bmeR/SrfgZxoYwWZOduOAI06A/Store.js","https:/ga.jspm.io/npm:js-cookie@3.0.5/dist/js.cookie.mjs","https:/framerusercontent.com/modules/c1jaZMVo1HBulMCJfZHW/nlasUjfvw2PNBWz7VogG/FavouriteStore.js","https:/framerusercontent.com/modules/1o5Bk6b6qvbR58A6b2Ej/Mqjy9QGn7gISXUH9A2We/Superfields.js","https:/framerusercontent.com/modules/LYyAFjx6EnDQcWGl8jCk/AOjSDah83MGhBemBiHqT/Filter.js"],"sourcesContent":["// @ts-ignore\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType,useRouter,PathVariablesContext}from\"framer\";import{motion}from\"framer-motion\";import{cloneElement,useContext,useId}from\"react\";export const DEFAULT_SORTING_ID=\"[{(DEFAULT_SORTING)}]\";export const FAVOURITES_FILTER_ID=\"[{(FAVOURITES)}]\";export const DELIMITER=\"_&%#|_\"// Used for multi-select items and multiple options field names\n;export var FieldType;(function(FieldType){FieldType[\"String\"]=\"string\";FieldType[\"Number\"]=\"number\";FieldType[\"Boolean\"]=\"boolean\";FieldType[\"Enum\"]=\"enum\";FieldType[\"Date\"]=\"date\";})(FieldType||(FieldType={}));export var FilterFieldType;(function(FilterFieldType){FilterFieldType[\"Option\"]=\"option\";FilterFieldType[\"Toggle\"]=\"toggle\";FilterFieldType[\"Text\"]=\"text\";FilterFieldType[\"Reference\"]=\"reference\";FilterFieldType[\"MultiReference\"]=\"multiReference\";FilterFieldType[\"MultipleOptions\"]=\"multipleOptions\";})(FilterFieldType||(FilterFieldType={}));export var FilterTextCondition;(function(FilterTextCondition){FilterTextCondition[\"Equals\"]=\"equals\";FilterTextCondition[\"Contains\"]=\"contains\";})(FilterTextCondition||(FilterTextCondition={}));export function useSlug(){const{currentPathVariables}=useRouter();const pathVariables=useContext(PathVariablesContext);let slug=null;let slugFieldId=null;if(pathVariables){slugFieldId=Object.keys(pathVariables)[0];slug=pathVariables[slugFieldId];}if(currentPathVariables&&!slug&&!slugFieldId){slugFieldId=Object.keys(currentPathVariables)[0];slug=currentPathVariables[slugFieldId];}return{slug,slugFieldId};}export const calculateTotalPages=(totalItems,itemsPerPage)=>{if(itemsPerPage<=0){return 0;}return Math.ceil(totalItems/itemsPerPage);};export const useInstanceId=()=>{const id=useId();const cleanId=id.replace(/:/g,\"\");const instanceId=`superfields-${cleanId}`;return instanceId;};/**\n * Reusable control description for the “Superfields CMS ID” picker.\n *\n * Accepts an optional `hidden` predicate so individual components can decide when\n * the control should be shown (e.g. only in advanced modes).\n * This is done for type safety\n */export function superfieldsId({hidden}={}){return{superfieldsId:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,title:\"CMS ID\",description:\"Match with ID on Superfields component\",hidden}};}export const buttonPropertyControls=({text=\"\"})=>({appearance:{type:ControlType.Enum,defaultValue:\"default\",options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Custom\"],displaySegmentedControl:true},customLayer:{type:ControlType.ComponentInstance,title:\"Layer\",description:\"Connect a custom layer from outside the breakpoint\",hidden:props=>props.appearance!==\"custom\"},text:{type:ControlType.String,defaultValue:text,hidden:props=>props.appearance!==\"default\"},fill:fillProp({color:\"#000\",gradientColorA:\"#8C8C8C\",gradientColorB:\"#000\",hidden:props=>props.appearance!==\"default\"}),fontColor:{type:ControlType.Color,defaultValue:\"#FFF\",hidden:props=>props.appearance!==\"default\"},font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.4},hidden:props=>props.appearance!==\"default\"},padding:{type:ControlType.FusedNumber,defaultValue:12,toggleKey:\"paddingIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,hidden:props=>props.appearance!==\"default\"},radius:{type:ControlType.FusedNumber,defaultValue:8,toggleKey:\"radiusIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusBottomRight\",\"radiusBottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0,hidden:props=>props.appearance!==\"default\"},border:borderPropertyControl({hidden:props=>props.appearance!==\"default\"}),shadows:{type:ControlType.BoxShadow,hidden:props=>props.appearance!==\"default\"},bgBlur:{type:ControlType.Number,min:0,max:100,step:1,displayStepper:true,title:\"BG Blur\",hidden:props=>props.appearance!==\"default\"}});export function Button({props,onClick,onMouseEnter=null}){if(props.appearance==\"custom\"){let layer=props.customLayer?.[0];const width=props.style?.width;const height=props.style?.height;if(layer&&props.style&&(width||height)){layer=/*#__PURE__*/cloneElement(layer,{style:{...layer.props.style,...width&&{width:width},...height&&{height:height}}});}return /*#__PURE__*/_jsx(\"div\",{\"data-superfields\":true,style:{display:\"contents\"},onClick:onClick,children:layer});}return /*#__PURE__*/_jsxs(\"div\",{\"data-superfields\":true,onClick:onClick,style:{position:\"relative\",display:\"flex\",justifyContent:props.font?.textAlign||\"center\",alignItems:\"center\",...createBackground(props.fill),color:props.fontColor,padding:props.paddingIsMixed?`${props.paddingTop}px ${props.paddingRight}px ${props.paddingBottom}px ${props.paddingLeft}px`:`${props.padding}px`,borderRadius:props.radiusIsMixed?`${props.radiusTopLeft}px ${props.radiusTopRight}px ${props.radiusBottomRight}px ${props.radiusBottomLeft}px`:`${props.radius}px`,userSelect:\"none\",cursor:\"pointer\",flex:props.sizing==\"fill\"?\"1 0 0\":undefined,textWrap:props.style?.width==\"100%\"?undefined:\"nowrap\",boxShadow:props.shadows,backdropFilter:props.bgBlur?`blur(${props.bgBlur}px)`:undefined,...props.font,...props.style},children:[props.text,/*#__PURE__*/_jsx(Border,{...props.border})]});}Button.displayName=\"Superfields/Button\";export const borderPropertyControl=(props={})=>({type:ControlType.Object,optional:true,controls:{color:{type:ControlType.Color,defaultValue:\"#222\"},width:{type:ControlType.FusedNumber,defaultValue:1,toggleKey:\"widthIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"widthTop\",\"widthRight\",\"widthBottom\",\"widthLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},style:{type:ControlType.Enum,defaultValue:\"solid\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]}},...props});export function Border({width,widthIsMixed,widthTop,widthRight,widthBottom,widthLeft,style,color,transition,animate,radius=\"inherit\"}){return /*#__PURE__*/_jsx(motion.div,{animate:{borderColor:color,...animate},style:{position:\"absolute\",inset:0,borderWidth:widthIsMixed?`${widthTop}px ${widthRight}px ${widthBottom}px ${widthLeft}px`:`${width}px`,borderStyle:style,borderRadius:radius,pointerEvents:\"none\"},initial:false,transition:transition});}Border.displayName=\"Superfields/Border\";export function Message({title,subtitle}){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",width:\"100%\",height:\"100%\",placeContent:\"center\",placeItems:\"center\",flexDirection:\"column\",gap:16,backgroundColor:\"rgba(136, 85, 255, 0.1)\",borderRadius:6,border:\"1px dashed rgb(136, 85, 255)\",color:\"rgb(136, 85, 255)\",fontSize:16,padding:20,minHeight:200,textWrap:\"balance\"},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontWeight:600,textAlign:\"center\"},children:title}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,opacity:.7,lineHeight:1.5,textAlign:\"center\"},children:subtitle})]});}Message.displayName=\"Superfields/Message\";export const EmptyState=Message;export function createBackground(fill,on=null){if(fill){let{color,colorA,colorB}=fill;if(typeof on==\"boolean\"){if(on){color=fill.colorOn;colorA=fill.colorAOn;colorB=fill.colorBOn;}else{color=fill.colorOff;colorA=fill.colorAOff;colorB=fill.colorBOff;}}if(fill.type==\"color\"){return{backgroundColor:color,backgroundImage:\"none\"};}else{return{backgroundColor:\"none\",backgroundImage:`linear-gradient(${fill.gradientAngle}deg, ${colorB}, ${colorA})`};}}return{};}export function fillProp({color=\"#FFF\",gradientColorA=\"#FFF\",gradientColorB=\"#BDBDBD\",noDefault=false,...props}){return{type:ControlType.Object,optional:true,defaultValue:noDefault?undefined:{type:\"color\",color,colorA:gradientColorA,colorB:gradientColorB,gradientAngle:0},controls:{type:{type:ControlType.Enum,defaultValue:\"color\",options:[\"color\",\"gradient\"],optionTitles:[\"Color\",\"Gradient\"],displaySegmentedControl:true},color:{type:ControlType.Color,defaultValue:color,hidden:props=>props.type!=\"color\"},colorA:{type:ControlType.Color,defaultValue:gradientColorA,title:\"Colors\",hidden:props=>props.type!=\"gradient\"},colorB:{type:ControlType.Color,defaultValue:gradientColorB,title:\" \",hidden:props=>props.type!=\"gradient\"},gradientAngle:{type:ControlType.Number,defaultValue:0,title:\"Angle\",step:1,min:0,max:360,unit:\"\\xb0\",hidden:props=>props.type!=\"gradient\"}},...props};}export function fillPropOnOff({colorOn=\"#FFF\",colorAOn=\"#FFF\",colorBOn=\"#000\",colorOff=\"#FFF\",colorAOff=\"#FFF\",colorBOff=\"#000\",noDefault=false,...props}){return{type:ControlType.Object,optional:true,defaultValue:noDefault?undefined:{type:\"color\",colorOn,colorAOn,colorBOn,colorOff,colorAOff,colorBOff,gradientAngle:0},controls:{type:{type:ControlType.Enum,defaultValue:\"color\",options:[\"color\",\"gradient\"],optionTitles:[\"Color\",\"Gradient\"],displaySegmentedControl:true},colorOn:{type:ControlType.Color,defaultValue:colorOn,hidden:props=>props.type!=\"color\"},colorAOn:{type:ControlType.Color,defaultValue:colorAOn,title:\"Colors On\",hidden:props=>props.type!=\"gradient\"},colorBOn:{type:ControlType.Color,defaultValue:colorBOn,title:\" \",hidden:props=>props.type!=\"gradient\"},colorOff:{type:ControlType.Color,defaultValue:colorOff,hidden:props=>props.type!=\"color\"},colorAOff:{type:ControlType.Color,defaultValue:colorAOff,title:\"Colors Off\",hidden:props=>props.type!=\"gradient\"},colorBOff:{type:ControlType.Color,defaultValue:colorBOff,title:\" \",hidden:props=>props.type!=\"gradient\"},gradientAngle:{type:ControlType.Number,defaultValue:0,title:\"Angle\",step:1,min:0,max:360,unit:\"\\xb0\",hidden:props=>props.type!=\"gradient\"}},...props};}export function parsePadding(padding){if(typeof padding!==\"string\"){return[0,0,0,0];}const values=padding.split(\" \");const parsedValues=values.map(value=>parseInt(value.replace(\"px\",\"\"),10));switch(parsedValues.length){case 1:const p=parsedValues[0];return[p,p,p,p];case 4:return parsedValues;}return[0,0,0,0];}export function sortingControls({defaultSorting=false,hidden=null}={}){return{sortBy:{type:ControlType.Enum,defaultValue:\"field\",options:[\"field\",\"favourites\",...defaultSorting?[\"defaultSorting\"]:[]],optionTitles:[\"CMS Field\",\"Favourites\",...defaultSorting?[\"Default Sorting\"]:[]],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden},fieldName:{type:ControlType.String,defaultValue:\"\",placeholder:\"CMS Field Name\",hidden:props=>props.sortBy!==\"field\"||hidden?.(props)},fieldType:{type:ControlType.Enum,defaultValue:\"string\",options:[\"string\",\"number\",\"date\",\"boolean\",\"enum\",\"reference\"],optionTitles:[\"Text\",\"Number\",\"Date\",\"Toggle\",\"Option\",\"Reference\"],hidden:props=>props.sortBy!==\"field\"||hidden?.(props)},referenceFieldName:{type:ControlType.String,defaultValue:\"Title\",placeholder:\"Reference Field Name\",hidden:props=>props.sortBy!==\"field\"||props.fieldType!==\"reference\"||hidden?.(props)},referenceFieldType:{type:ControlType.Enum,defaultValue:\"string\",options:[\"string\",\"number\",\"date\",\"boolean\",\"enum\"],optionTitles:[\"Text\",\"Number\",\"Date\",\"Toggle\",\"Option\"],hidden:props=>props.sortBy!==\"field\"||props.fieldType!==\"reference\"||hidden?.(props)},stringSort:{type:ControlType.Enum,defaultValue:\"ascending\",options:[\"ascending\",\"descending\"],optionTitles:[\"A → Z\",\"Z → A\"],displaySegmentedControl:true,title:\"Sort\",hidden:props=>sortFieldType(props)!==\"string\"||hidden?.(props)},numberSort:{type:ControlType.Enum,defaultValue:\"ascending\",options:[\"ascending\",\"descending\"],optionTitles:[\"Ascending ↑\",\"Descending ↓\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",title:\"Sort\",hidden:props=>sortFieldType(props)!==\"number\"||hidden?.(props)},dateSort:{type:ControlType.Enum,defaultValue:\"ascending\",options:[\"ascending\",\"descending\"],optionTitles:[\"Ascending ↑\",\"Descending ↓\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",title:\"Sort\",hidden:props=>sortFieldType(props)!==\"date\"||hidden?.(props)},booleanSort:{type:ControlType.Enum,defaultValue:\"ascending\",options:[\"yesNo\",\"noYes\"],optionTitles:[\"Yes, No\",\"No, Yes\"],displaySegmentedControl:true,title:\"Sort\",hidden:props=>sortFieldType(props)!==\"boolean\"||hidden?.(props)},enumSort:{type:ControlType.Enum,defaultValue:\"ascending\",options:[\"optionOrder\",\"reverseOptionOrder\",\"ascending\",\"descending\"],optionTitles:[\"Option Order\",\"Reverse Order\",\"A → Z\",\"Z → A\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",title:\"Sort\",hidden:props=>sortFieldType(props)!==\"enum\"||hidden?.(props)},favouritesSort:{type:ControlType.Enum,defaultValue:\"favouritesFirst\",options:[\"favouritesFirst\",\"favouritesLast\"],optionTitles:[\"Favourites First\",\"Favourites Last\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",title:\"Sort\",hidden:props=>props.sortBy!==\"favourites\"||hidden?.(props)}};}const sortFieldType=props=>{return props.sortBy===\"field\"?props.fieldType===\"reference\"?props.referenceFieldType:props.fieldType:false;};\nexport const __FramerMetadata__ = {\"exports\":{\"buttonPropertyControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Border\":{\"type\":\"reactComponent\",\"name\":\"Border\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"superfieldsId\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"sortingControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Message\":{\"type\":\"reactComponent\",\"name\":\"Message\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"FilterFieldType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FieldType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useInstanceId\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderPropertyControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Button\":{\"type\":\"reactComponent\",\"name\":\"Button\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"DEFAULT_SORTING_ID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FilterTextCondition\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"EmptyState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FAVOURITES_FILTER_ID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"calculateTotalPages\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useSlug\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DELIMITER\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fillPropOnOff\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parsePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fillProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createBackground\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SuperfieldsShared.map","/**\n * Extracts query metadata and collection information from a Framer Collection List component.\n * Returns query object, collections, property controls, and other metadata needed for CMS operations.\n */export function getCollectionData(collectionList){// Traverse component tree to find the query object\n// Framer's Collection List component structure varies, so we check multiple levels\n// Query is stored in props.query of one of the nested components\nlet queryParent=null;if(collectionList?.props?.query){queryParent=collectionList;}else if(collectionList?.props?.children?.props?.query){queryParent=collectionList.props.children;}else if(collectionList?.props?.children?.props?.children?.props?.query){queryParent=collectionList.props.children.props.children;}const query=queryParent?.props?.query;const from=query?.from;// Extract collection(s) from query.from clause\n// Can be single Collection or LeftJoin (multiple collections joined)\nlet collections=[];if(from){if(from.type===\"Collection\"){collections.push(from);}else if(from.type===\"LeftJoin\"){// Recursively process joined collections\nprocessJoin(from.left,collections);processJoin(from.right,collections);}}const select=query?.select;// Determine main collection when multiple collections are joined\n// Main collection is the one whose \"id\" field is selected (without alias)\n// This ensures consistent ordering: main collection first, then referenced collections\nif(collections.length>1&&Array.isArray(select)){for(const field of select){if(field.type==\"Identifier\"&&field.name==\"id\"&&!field.alias){const mainCollection=collections.find(c=>c.alias==field.collection);if(mainCollection){collections=[mainCollection,...collections.filter(c=>c!==mainCollection)];}break;}}}// Extract multi-reference field queries\n// Multi-reference fields use ARRAY() or FLAT_ARRAY() functions in the select clause\n// Each function argument contains a sub-query for the referenced collection\nconst multiReferenceQueries={};const multiReferenceIdMap={};if(Array.isArray(select)){for(const field of select){if(field.type===\"FunctionCall\"&&(field.functionName===\"ARRAY\"||field.functionName===\"FLAT_ARRAY\")&&Array.isArray(field.arguments)){for(const argument of field.arguments){if(argument.from?.type===\"Collection\"){const alias=argument.from.alias;// Field ID can be from alias or from where clause's right side\nlet fieldId=alias;const right=argument.where?.right;if(right&&right.type===\"Identifier\"&&right.name){fieldId=right.name;}collections.push({...argument.from,fieldId});multiReferenceIdMap[fieldId]=alias;multiReferenceIdMap[alias]=alias;multiReferenceQueries[alias]=argument;}}}}}let queryData=collections[0]?.data;// Build property controls index: by ID and by title for each collection\n// This allows quick lookup of field definitions by either ID or name\nconst propertyControlsById={};const propertyControlsByTitle={};for(const collection of collections){const byId={};const byName={};propertyControlsById[collection.alias]=byId;propertyControlsByTitle[collection.alias]=byName;const propertyControls=collection.data?.propertyControls;// Index each field definition by both ID and title for flexible lookups\nfor(const id of Object.keys(propertyControls)){const control={id,...propertyControls[id]};byId[id]=control;byName[control.title]=control;}}// Extract the children render function from Collection List\n// This function is used to render CMS items with proper data binding\n// Structure varies, so we check multiple nesting levels\nlet childrenFunction=null;if(collectionList){const clpc=collectionList.props?.children;if(typeof clpc==\"function\"){childrenFunction=clpc;}else if(typeof clpc?.props?.children==\"function\"){childrenFunction=clpc.props.children;}else if(typeof clpc?.props?.children?.props?.children==\"function\"){childrenFunction=clpc.props.children.props.children;}}return{query,queryParent,queryData,collections,propertyControlsById,propertyControlsByTitle,childrenFunction,multiReferenceQueries,multiReferenceIdMap};}// Recursively process LeftJoin queries to extract all collections\n// LeftJoin can be nested (e.g., Collection1 LEFT JOIN (Collection2 LEFT JOIN Collection3))\nfunction processJoin(join,collections){if(join&&typeof join===\"object\"){if(join.type===\"Collection\"){collections.push(join);}else if(join.type===\"LeftJoin\"){// Recursively process nested joins\nprocessJoin(join.left,collections);processJoin(join.right,collections);}}}/**\n * Adds fields to a query's select array.\n * Used to include additional fields needed for filtering, search, or sorting.\n *\n * @param fields - Array of { name: string, referenceFieldName?: string }\n * @param query - Original query object\n * @param propertyControlsByTitle - Field definitions indexed by title\n * @param collections - Collection metadata\n * @returns New select array with added fields (deduplicated)\n */export function addFieldsToSelect(fields,query,propertyControlsByTitle,collections){// Create copy of existing select array to avoid mutation\nconst select=Array.isArray(query?.select)?[...query.select]:[];for(const field of fields){const selectItem=getSelectItemForField(field.name,field.referenceFieldName,query,propertyControlsByTitle,collections,select);// Only add if field exists and isn't already in select\nif(selectItem){select.push(selectItem);}}return select;}/**\n * Gets the select item configuration for a CMS field.\n * Returns null if field doesn't exist or is already in select array.\n *\n * @param name - Field name (e.g., \"Title\", \"Category\")\n * @param referenceFieldName - If field is a reference, name of field in referenced collection\n * @param query - Query object (currently unused but kept for compatibility)\n * @param propertyControlsByTitle - Field definitions indexed by title\n * @param collections - Collection metadata\n * @param select - Existing select array to check for duplicates (optional)\n * @returns Select item object or null\n */export function getSelectItemForField(name,referenceFieldName,query,propertyControlsByTitle,collections,select=null){const mainAlias=collections[0]?.alias||\"\";const propertyControl=propertyControlsByTitle[mainAlias]?.[name];if(!propertyControl){return null;}const fieldId=propertyControl?.id;const alias=referenceFieldName?fieldId:mainAlias;// For reference fields, get the referenced collection's field definition\nconst referencedField=referenceFieldName?propertyControlsByTitle[fieldId]?.[referenceFieldName]:null;// Check if field is already in select array to avoid duplicates\nif(select){let matchFound=false;for(const item of select){if(item.type===\"Identifier\"){if(referenceFieldName){// For reference fields, match by alias format: \"fieldId.referencedFieldId\"\nif(referencedField&&item.alias===`${fieldId}.${referencedField.id}`&&item.collection===fieldId&&item.name===referencedField.id){matchFound=true;break;}}else{// For regular fields, match by fieldId and collection\nif(item.name===fieldId&&item.collection===alias){matchFound=true;break;}}}else if(item.type===\"FunctionCall\"){// Match function calls by alias (e.g., ARRAY() functions)\nif(item.alias===fieldId){matchFound=true;break;}}}if(matchFound){return null;}}// Build select item object\nif(referenceFieldName){// Reference field: points to a field in the referenced collection\n// Format: alias = \"fieldId.referencedFieldId\", collection = fieldId, name = referencedFieldId\nif(referencedField){return{alias:`${fieldId}.${referencedField.id}`,collection:fieldId,name:referencedField.id,type:\"Identifier\"};}}else{// Regular field: points directly to a field in the main collection\nreturn{collection:alias,name:fieldId,type:\"Identifier\"};}}\nexport const __FramerMetadata__ = {\"exports\":{\"getCollectionData\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"addFieldsToSelect\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSelectItemForField\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CMSLibrary.map","// 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","// https://ga.jspm.io/npm:zustand@3.7.0/esm/index.js\n// The only changes are changing default exports to regular export\n// to export multiple functions in one file.\nimport{useEffect as t,useLayoutEffect as e,useReducer as n,useRef as r,useDebugValue as c}from\"react\";function createStore(t){let e;const n=new Set;const setState=(t,r)=>{const c=\"function\"===typeof t?t(e):t;if(c!==e){const t=e;e=r?c:Object.assign({},e,c);n.forEach(n=>n(e,t));}};const getState=()=>e;const subscribeWithSelector=(t,r=getState,c=Object.is)=>{console.warn(\"[DEPRECATED] Please use `subscribeWithSelector` middleware\");let o=r(e);function listenerToAdd(){const n=r(e);if(!c(o,n)){const e=o;t(o=n,e);}}n.add(listenerToAdd);return()=>n.delete(listenerToAdd);};const subscribe=(t,e,r)=>{if(e||r)return subscribeWithSelector(t,e,r);n.add(t);return()=>n.delete(t);};const destroy=()=>n.clear();const r={setState:setState,getState:getState,subscribe:subscribe,destroy:destroy};e=t(setState,getState,r);return r;}const o=\"undefined\"===typeof window||!window.navigator||/ServerSideRendering|^Deno\\//.test(window.navigator.userAgent);const s=o?t:e;export function create(t){const e=\"function\"===typeof t?createStore(t):t;const useStore=(t=e.getState,o=Object.is)=>{const[,u]=n(t=>t+1,0);const i=e.getState();const a=r(i);const d=r(t);const l=r(o);const f=r(false);const S=r();void 0===S.current&&(S.current=t(i));let b;let g=false;if(a.current!==i||d.current!==t||l.current!==o||f.current){b=t(i);g=!o(S.current,b);}s(()=>{g&&(S.current=b);a.current=i;d.current=t;l.current=o;f.current=false;});const w=r(i);s(()=>{const listener=()=>{try{const t=e.getState();const n=d.current(t);if(!l.current(S.current,n)){a.current=t;S.current=n;u();}}catch(t){f.current=true;u();}};const t=e.subscribe(listener);e.getState()!==w.current&&listener();return t;},[]);const p=g?b:S.current;c(p);return p;};Object.assign(useStore,e);useStore[Symbol.iterator]=function(){console.warn(\"[useStore, api] = create() is deprecated and will be removed in v4\");const t=[useStore,e];return{next(){const e=t.length<=0;return{value:t.shift(),done:e};}};};return useStore;}// https://ga.jspm.io/npm:zustand@3.7.0/esm/shallow.js\nexport function shallow(e,t){if(Object.is(e,t))return true;if(\"object\"!==typeof e||null===e||\"object\"!==typeof t||null===t)return false;const l=Object.keys(e);if(l.length!==Object.keys(t).length)return false;for(let r=0;r<l.length;r++)if(!Object.prototype.hasOwnProperty.call(t,l[r])||!Object.is(e[l[r]],t[l[r]]))return false;return true;}\nexport const __FramerMetadata__ = {\"exports\":{\"create\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"shallow\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./zustand.map","import{create,shallow}from\"https://framerusercontent.com/modules/XPZpWLgM1p9otlAim6ab/YZGwyfuvWTDLYoiYQunH/zustand.js\";// @ts-ignore\nimport{useRouter}from\"framer\";import{useRef,useTransition,useMemo,useEffect}from\"react\";// Create a function to generate the initial state\nconst createInitialState=()=>({totalItems:0,filters:{},randomizationSeed:null,search:\"\",sortOption:null,defaultSortOption:null,sortingUrlParameter:null,page:0,itemsPerPage:0,paginationType:null,paginationActive:false,paginationButtonsCount:0,searchFields:null});const useBaseStore=create((set,get)=>({instances:{},getState:id=>{const path=getCurrentPath();const state=get().instances[path]?.[id];return state||createInitialState();},setState:(id,updates)=>{const path=getCurrentPath();set(state=>({instances:{...state.instances,[path]:{...state.instances[path],[id]:{...state.getState(id),...updates}}}}));},// Example of how to update a specific state property\n    setTotalItems:(id,totalItems)=>{get().setState(id,{totalItems});},setFilterValue:(id,fieldName,value)=>{const currentFilters=get().getState(id).filters;console.log(`🟣 [FILTER VALUE CHANGED] \"${fieldName}\" = \"${value}\" (was: \"${currentFilters[fieldName]?.value}\")`);get().setState(id,{filters:{...currentFilters,[fieldName]:{...currentFilters[fieldName],value}}});},setRandomizationSeed:(id,randomizationSeed)=>{get().setState(id,{randomizationSeed});},setSearch:(id,search)=>{get().setState(id,{search});},setSortOption:(id,sortOption)=>{get().setState(id,{sortOption});},setPage:(id,page)=>{get().setState(id,{page});},setSearchFields:(id,searchFields)=>{get().setState(id,{searchFields});},setPaginationButtonsCount:(id,paginationButtonsCount)=>{get().setState(id,{paginationButtonsCount});},setPaginationType:(id,paginationType)=>{get().setState(id,{paginationType});},deinitializePaginationButton:id=>{get().setState(id,{paginationButtonsCount:get().getState(id).paginationButtonsCount-1});}}));const useSuperfieldsStore=(id,selector,initialize=null)=>{const initializedRef=useRef(false);const[_,startTransition]=useTransition();const{currentRouteId}=useRouter();const previousRouteIdRef=useRef(currentRouteId);// Memoize the function wrappers\nconst memoizedFunctions=useMemo(()=>{const functions={};const state=useBaseStore.getState();for(const key in state){const value=state[key];if(typeof value===\"function\"){if(key.startsWith(\"set\")){functions[key]=(...args)=>{if(typeof window!==\"undefined\"){startTransition(()=>value(id,...args));}else{value(id,...args);}};}else{functions[key]=(...args)=>value(id,...args);}}}return functions;},[id]);// Reset the store when the route changes\nuseEffect(()=>{if(previousRouteIdRef.current!==currentRouteId){// Route has changed, reset the initialized state\nconsole.log(`🔴 [ROUTE CHANGED] ${previousRouteIdRef.current} → ${currentRouteId}`);previousRouteIdRef.current=currentRouteId;// If there's an initialize function, call it with a fresh state\nif(initialize){const state=useBaseStore.getState();const freshState=createInitialState();initialize(freshState);state.setState(id,freshState);}initializedRef.current=true;}},[currentRouteId,id,initialize]);// Initial setup effect\nuseEffect(()=>{if(initialize&&!initializedRef.current){const state=useBaseStore.getState();const currentState=state.getState(id);const initializedState={...currentState};initialize(initializedState);state.setState(id,initializedState);}initializedRef.current=true;},[]);return useBaseStore(state=>{const path=getCurrentPath();if(!state.instances[path]?.[id]){const initialState=createInitialState();state.setState(id,initialState);}let newState={...state.getState(id),...memoizedFunctions};return selector(newState);},shallow);};export default useSuperfieldsStore;const getCurrentPath=()=>{if(typeof window===\"undefined\"){return\"/\";}return window.location.pathname;};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Store.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","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget,// @ts-ignore\nuseQueryData,withCSS}from\"framer\";import{motion}from\"framer-motion\";import{borderPropertyControl,Border,fillProp,fillPropOnOff,createBackground,superfieldsId,FAVOURITES_FILTER_ID,DELIMITER,FilterFieldType,FilterTextCondition}from\"https://framerusercontent.com/modules/FZjYlw33eNo8pxLbSFLX/9cz7ek89fMdNfYUyPOlg/SuperfieldsShared.js\";import{getCollectionData,getSelectItemForField}from\"https://framerusercontent.com/modules/PNm0aYRdp2Urx1MCseUn/jWeh7GKvm3RetCKspgqG/CMSLibrary.js\";import useSuperfieldsStore from\"https://framerusercontent.com/modules/OoGHZMzWDzm2mNN7bmeR/SrfgZxoYwWZOduOAI06A/Store.js\";export var FilterBy;(function(FilterBy){FilterBy[\"Field\"]=\"field\";FilterBy[\"Favourites\"]=\"favourites\";})(FilterBy||(FilterBy={}));export var FilterType;(function(FilterType){FilterType[\"Dropdown\"]=\"dropdown\";FilterType[\"ButtonGroup\"]=\"buttonGroup\";FilterType[\"ToggleSwitch\"]=\"toggleSwitch\";FilterType[\"Checkbox\"]=\"checkbox\";})(FilterType||(FilterType={}));export var OptionMode;(function(OptionMode){OptionMode[\"Auto\"]=\"auto\";OptionMode[\"Manual\"]=\"manual\";})(OptionMode||(OptionMode={}));export var OptionOrder;(function(OptionOrder){OptionOrder[\"Default\"]=\"default\";OptionOrder[\"Alphabetical\"]=\"alphabetical\";})(OptionOrder||(OptionOrder={}));const ALL_SELECTED_VALUE=\"[{(ALL)}]\";const LAYOUT_ALIGNMENTS={fill:\"center\",left:\"start\",center:\"center\",right:\"end\"};const TOGGLE_VALUES={all:null,[ALL_SELECTED_VALUE]:null,off:false,on:true};const DASHES_ONLY_REGEX=/^-+$/;const CONDITION_FIELD_TYPES=[FilterFieldType.Text,FilterFieldType.Option,FilterFieldType.MultipleOptions];const DIVIDER=\"divider\";const FAVOURITES_URL_PARAMETER=\"favorites\";const TRUE_VALUES=[\"true\",\"yes\",\"on\"];const FALSE_VALUES=[\"false\",\"no\",\"off\"];function FilterComponent(props){const{superfieldsId,filterBy,options,referenceFieldName,referenceFieldType,isCommaSeparatedTextField,buttonGroupLayout,buttonGroupStyle,toggleMultiOptions,toggleTwoStateOptions,toggleTwoStateText,dropdownStyle,toggleSwitchStyle,checkboxStyle,layout,transition}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const rawFieldType=filterBy==\"field\"?props.fieldType:FilterFieldType.Toggle;const fieldName=filterBy===\"field\"?rawFieldType==FilterFieldType.MultipleOptions?props.optionFieldNames.join(DELIMITER):props.fieldName:FAVOURITES_FILTER_ID;const isReference=isReferenceType(rawFieldType);const fieldType=rawFieldType===FilterFieldType.MultipleOptions?FilterFieldType.Option:isReference?referenceFieldType:rawFieldType;const filterType=filterBy===\"field\"?fieldType===FilterFieldType.Toggle?props.filterTypeToggle:props.filterTypeOption:props.filterTypeToggle;const allOption=fieldType===FilterFieldType.Toggle?toggleMultiOptions.allOption:options.allOption;const showDividers=(fieldType===FilterFieldType.Option||fieldType===FilterFieldType.Text)&&options.optionMode===\"manual\";const instanceId=filterBy===\"favourites\"?FAVOURITES_FILTER_ID:isReference?`${fieldName}${DELIMITER}${referenceFieldName}`:fieldName;const urlParameter=props.urlParameter?props.urlParameter.name||(filterBy===\"field\"?rawFieldType==FilterFieldType.MultipleOptions?props.optionFieldNames.join(\",\"):fieldName:FAVOURITES_URL_PARAMETER):null;const collectionList=props.collectionList?.[0];const{query,propertyControlsById,propertyControlsByTitle,collections,multiReferenceIdMap,multiReferenceQueries}=getCollectionData(collectionList);const mainCollection=collections[0];const mainAlias=mainCollection?.alias;const mainPropertyControlsById=propertyControlsById[mainAlias]||{};const mainPropertyControlsByTitle=propertyControlsByTitle[mainAlias]||{};const select=[{collection:mainAlias,name:\"id\",type:\"Identifier\"}];let multiReferenceSelect=null;let rAlias=null;if(!isCanvas&&rawFieldType!==FilterFieldType.MultipleOptions){if(rawFieldType===FilterFieldType.Reference){const selectItem=getSelectItemForField(fieldName,referenceFieldName,query,propertyControlsByTitle,collections);if(selectItem){select.push(selectItem);rAlias=selectItem.collection;}}else if(rawFieldType===FilterFieldType.MultiReference){const propertyControl=mainPropertyControlsByTitle[fieldName];if(propertyControl){const fieldId=propertyControl?.id;const rCollection=collections.find(c=>c.alias===fieldId||c.alias===multiReferenceIdMap[fieldId]);if(rCollection){rAlias=rCollection.alias;const originalSelect=query?.select||[];for(const item of originalSelect){if(item.type===\"FunctionCall\"){if(item.alias===rAlias){select.push(item);const rPropertyControlsById=propertyControlsById[item.alias];if(rPropertyControlsById){for(const rFieldId in rPropertyControlsById){const control=rPropertyControlsById[rFieldId];if(control.title==referenceFieldName){multiReferenceSelect=[{collection:item.alias,name:\"id\",type:\"Identifier\"},{collection:item.alias,name:rFieldId,type:\"Identifier\"}];}}}break;}}}}}}else{const selectItem=getSelectItemForField(fieldName,null,query,propertyControlsByTitle,collections);if(selectItem){select.push(selectItem);}}}const collectionData=query?useQueryData({...query,select}):[];let rCollectionData=[];if(Array.isArray(multiReferenceSelect)){const selectValue=multiReferenceSelect.find(v=>v&&v.hasOwnProperty(\"collection\"));if(selectValue){const rQuery=multiReferenceQueries[selectValue.collection];if(rQuery){rCollectionData=useQueryData({...rQuery,select:multiReferenceSelect,where:undefined,orderBy:undefined});}}}let optionValues=[];if(fieldType===FilterFieldType.Option||fieldType===FilterFieldType.Text){if(options.optionMode===\"auto\"){if(Object.keys(mainPropertyControlsById)?.length){if(rawFieldType===FilterFieldType.MultipleOptions){const{optionFieldNames}=props;const optionValuesList=[];for(const fieldId in mainPropertyControlsById){const control=mainPropertyControlsById[fieldId];if(optionFieldNames.includes(control.title)){if(control.type===\"enum\"){optionValuesList.push(control.optionTitles);}else if(control.type===\"string\"){const allValues=new Set;for(const index in collectionData){if(!isNaN(index)){const value=collectionData[index][fieldId];if(value!=\"\"&&value!=null){allValues.add(value);}}}optionValuesList.push(Array.from(allValues));}}}optionValues=Array.from(new Set(optionValuesList.flat()));// Remove none option\nif(props.multipleOptionsNoneOption.length&&optionValues.includes(props.multipleOptionsNoneOption)){optionValues.splice(optionValues.indexOf(props.multipleOptionsNoneOption),1);}}else{let control=null;let fieldId=null;if(isReference){const rPropertyControlsByTitle=propertyControlsByTitle[rAlias];if(rPropertyControlsByTitle){control=rPropertyControlsByTitle[referenceFieldName];}fieldId=control?rawFieldType===FilterFieldType.Reference?`${rAlias}.${control.id}`:control.id:null;}else{control=mainPropertyControlsByTitle[fieldName];fieldId=control?control.id:null;}if(control){if(control.type===\"enum\"){optionValues=control.optionTitles;}else if(control.type===\"string\"){const data=rawFieldType===FilterFieldType.MultiReference?rCollectionData:collectionData;const allValues=new Set;for(const index in data){if(!isNaN(index)){const value=data[index][fieldId];if(value!==\"\"&&value!==null&&value!==undefined){if(isCommaSeparatedTextField&&fieldType===FilterFieldType.Text){// Split comma-separated values and add each individually\nconst splitValues=value.split(\",\").map(v=>v.trim()).filter(v=>v!==\"\");splitValues.forEach(v=>allValues.add(v));}else{allValues.add(value);}}}}optionValues=Array.from(allValues);}}}}else if(isCanvas&&(filterType!==\"dropdown\"||!allOption)){optionValues=[options.placeholder];}if(options.optionOrder===\"alphabetical\"){optionValues=optionValues.sort();}}else if(options.optionMode===\"manual\"){optionValues=options.optionValues;}}if(!Array.isArray(optionValues)){optionValues=[];}const defaultOptionIsValid=options.defaultValue.length&&optionValues.includes(options.defaultValue);let offValue=null;let onValue=null;let defaultValue=null;if(fieldType==FilterFieldType.Toggle){if(filterType==\"dropdown\"||filterType==\"buttonGroup\"){const values=[];if(toggleMultiOptions.allOption){values.push(null);}if(toggleMultiOptions.order==\"yesNo\"){if(toggleMultiOptions.yesOption){values.push(true);}if(toggleMultiOptions.noOption){values.push(false);}}else{if(toggleMultiOptions.noOption){values.push(false);}if(toggleMultiOptions.yesOption){values.push(true);}}defaultValue=values.includes(TOGGLE_VALUES[toggleMultiOptions.defaultValue])?TOGGLE_VALUES[toggleMultiOptions.defaultValue]:values[0];}else{offValue=TOGGLE_VALUES[toggleTwoStateOptions.offState];onValue=TOGGLE_VALUES[toggleTwoStateOptions.onState];defaultValue=toggleTwoStateOptions.defaultValue==\"off\"?offValue:onValue;}}else{defaultValue=defaultOptionIsValid?options.defaultValue:!options.allOption&&filterType==\"dropdown\"?optionValues[0]??null:null;}const getInitialValue=()=>{let initialValue=defaultValue;if(urlParameter&&!isCanvas){const urlParams=new URLSearchParams(window.location.search);const paramValue=urlParams.get(urlParameter);if(paramValue){if(fieldType===FilterFieldType.Toggle){const lowerParamValue=paramValue.toLowerCase();if(TRUE_VALUES.includes(lowerParamValue)){initialValue=true;}else if(FALSE_VALUES.includes(lowerParamValue)){initialValue=false;}}else{if(paramValue.includes(DELIMITER)){const values=paramValue.split(DELIMITER);if(values.every(value=>optionValues.includes(value))){initialValue=paramValue;}}else if(optionValues.includes(paramValue)){initialValue=paramValue;}}}}return initialValue;};const initialValue=getInitialValue();const initialFiltersForInstanceId={fieldName,referenceFieldName:isReference?referenceFieldName:null,referenceFieldType:isReference?referenceFieldType:null,value:initialValue,defaultValue,multiSelect:filterType==\"buttonGroup\"&&props.multiSelect,fieldType:rawFieldType,noneOption:rawFieldType==FilterFieldType.MultipleOptions?props.multipleOptionsNoneOption:undefined,condition:CONDITION_FIELD_TYPES.includes(fieldType)?isCommaSeparatedTextField&&fieldType===FilterFieldType.Text?FilterTextCondition.Contains:props.textCondition:FilterTextCondition.Equals,urlParameter};const[_filters,setFilterValue]=useSuperfieldsStore(superfieldsId,state=>[state.filters,state.setFilterValue],state=>{const existingFilter=state.filters[instanceId];const initialValue=getInitialValue();// Only initialize if filter doesn't exist, OR if URL param should override\nif(!existingFilter||urlParameter&&initialValue!==defaultValue){state.filters[instanceId]=initialFiltersForInstanceId;}});// HACK: There is a race condition in useSuperFieldsStore\n// The initial data is stale and requires a rerender to get updated.\n// The following ensure we get the initial data correctly, but this will need fixing\n// inside the useSuperfieldsStore.\nconst filters=_filters[instanceId]?_filters:{[instanceId]:initialFiltersForInstanceId};const value=isCanvas?defaultValue:filters[instanceId]?.value;const setFilter=newValue=>{setFilterValue(instanceId,newValue);};const optionItems=[];if(fieldType===FilterFieldType.Option||fieldType===FilterFieldType.Text){for(let i=0;i<optionValues.length;i++){const value=optionValues[i];if(showDividers&&isDivider(value)){optionItems.push(DIVIDER);}else if(value){optionItems.push({value,text:value});}}}else if(fieldType==FilterFieldType.Toggle){if(toggleMultiOptions.order==\"yesNo\"){if(toggleMultiOptions.yesOption){optionItems.push({value:\"on\",text:toggleMultiOptions.yesText});}if(toggleMultiOptions.noOption){optionItems.push({value:\"off\",text:toggleMultiOptions.noText});}}else{if(toggleMultiOptions.noOption){optionItems.push({value:\"off\",text:toggleMultiOptions.noText});}if(toggleMultiOptions.yesOption){optionItems.push({value:\"on\",text:toggleMultiOptions.yesText});}}}const layers=[];switch(filterType){case\"dropdown\":const dropdownArrow=dropdownStyle.arrow;const pt=dropdownStyle.paddingIsMixed?dropdownStyle.paddingTop:dropdownStyle.padding;const pl=dropdownStyle.paddingIsMixed?dropdownStyle.paddingLeft:dropdownStyle.padding;const pb=dropdownStyle.paddingIsMixed?dropdownStyle.paddingBottom:dropdownStyle.padding;const pr=(dropdownStyle.paddingIsMixed?dropdownStyle.paddingRight:dropdownStyle.padding)+(dropdownArrow?dropdownArrow.size+dropdownArrow.gap:0);const dropdownRadius=dropdownStyle.radiusIsMixed?`${dropdownStyle.radiusTopLeft}px ${dropdownStyle.radiusTopRight}px ${dropdownStyle.radiusBottomRight}px ${dropdownStyle.radiusBottomLeft}px`:`${dropdownStyle.radius}px`;layers.push(/*#__PURE__*/_jsxs(\"select\",{className:\"superfields-dropdown\",value:fieldType==FilterFieldType.Toggle?({true:\"on\",false:\"off\",null:ALL_SELECTED_VALUE})[String(value)]:value||(allOption?ALL_SELECTED_VALUE:defaultValue),onChange:event=>{if(fieldType==FilterFieldType.Toggle){setFilter(TOGGLE_VALUES[event.target.value]);}else{setFilter(event.target.value==ALL_SELECTED_VALUE?null:event.target.value);}},style:{position:\"relative\",appearance:\"none\",height:\"100%\",cursor:\"pointer\",...createBackground(dropdownStyle.fill),color:dropdownStyle.fontColor,padding:`${pt}px ${pr}px ${pb}px ${pl}px`,borderRadius:dropdownRadius,border:\"none\",boxShadow:dropdownStyle.shadows,backdropFilter:dropdownStyle.bgBlur?`blur(${dropdownStyle.bgBlur}px)`:undefined,...props.font,...props.style},children:[allOption&&/*#__PURE__*/_jsx(\"option\",{value:ALL_SELECTED_VALUE,children:fieldType==FilterFieldType.Toggle?toggleMultiOptions.allText:options.allText}),optionItems.map((item,index)=>item===DIVIDER?/*#__PURE__*/_jsx(\"hr\",{}):/*#__PURE__*/_jsx(\"option\",{value:item.value,children:item.text},index))]}),dropdownStyle.border&&/*#__PURE__*/_jsx(Border,{...dropdownStyle.border,radius:dropdownRadius}));if(dropdownArrow){layers.push(/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:dropdownArrow.size,height:dropdownArrow.size,viewBox:\"0 0 18 18\",fill:\"none\",strokeWidth:dropdownArrow.stroke,stroke:dropdownArrow.color??dropdownStyle.fontColor,strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{display:\"block\",position:\"absolute\",right:dropdownStyle.paddingIsMixed?dropdownStyle.paddingRight:dropdownStyle.padding,top:`calc(50% - ${dropdownArrow.size/2}px)`,pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M2 5.5L9 12.5L16 5.5\"})}));}break;case\"buttonGroup\":layers.push(/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:buttonGroupLayout.direction==\"horizontal\"?\"row\":\"column\",flexWrap:buttonGroupLayout.wrap?\"wrap\":\"nowrap\",justifyContent:buttonGroupLayout.distribute,columnGap:buttonGroupLayout.gapH,rowGap:buttonGroupLayout.gapV,textAlign:props.font?.textAlign||\"center\",...props.style},children:[allOption&&/*#__PURE__*/_jsx(FilterButton,{selected:value==null,onClick:()=>setFilter(null),text:options.allText,direction:buttonGroupLayout.direction,width:buttonGroupLayout.width,transition:transition,...buttonGroupStyle}),optionItems.map((item,index)=>item===DIVIDER?/*#__PURE__*/_jsx(ButtonGroupDivider,{...props.dividerStyle,layout:buttonGroupLayout}):/*#__PURE__*/_jsx(FilterButton,{selected:fieldType==FilterFieldType.Toggle?value==(item.value==\"on\"):props.multiSelect?value?value.split(DELIMITER).includes(item.value):false:value==item.value,onClick:()=>{if(fieldType==FilterFieldType.Toggle){setFilter(item.value==\"on\");}else if(props.multiSelect){if(!value){setFilter(item.value);}else{const values=value?value.split(DELIMITER):[];if(value==item.value){if(options.allOption||!defaultOptionIsValid){setFilter(null);}}else if(values.includes(item.value)){setFilter(values.filter(v=>v!=item.value).join(DELIMITER));}else{setFilter(`${value}${DELIMITER}${item.value}`);}}}else{if(value==item.value&&(!defaultOptionIsValid||options.allOption)){setFilter(null);}else{setFilter(item.value);}}},text:item.text,direction:buttonGroupLayout.direction,width:buttonGroupLayout.width,transition:transition,...buttonGroupStyle},index))]}));break;case\"toggleSwitch\":const{height,padding,border,switchBorder}=toggleSwitchStyle;return /*#__PURE__*/_jsxs(\"div\",{onClick:()=>setFilter(value==onValue?offValue:onValue),style:{display:\"flex\",flexDirection:toggleTwoStateText?.location==\"left\"?\"row-reverse\":\"row\",gap:toggleTwoStateText?.gap,alignItems:\"center\",justifyContent:LAYOUT_ALIGNMENTS[layout],cursor:\"pointer\",...props.style},children:[/*#__PURE__*/_jsxs(motion.div,{animate:{...createBackground(toggleSwitchStyle.fill,value==onValue)},style:{position:\"relative\",height:height,width:height*2-padding*2,padding:padding,borderRadius:toggleSwitchStyle.radius},initial:false,transition:transition,children:[border&&/*#__PURE__*/_jsx(motion.div,{animate:{borderColor:value==onValue?border.colorOn:border.colorOff},style:{position:\"absolute\",inset:0,boxSizing:\"border-box\",borderRadius:toggleSwitchStyle.radius,borderWidth:border.width,borderStyle:border.style},initial:false,transition:transition}),/*#__PURE__*/_jsx(motion.div,{animate:{translateX:value==onValue?\"100%\":\"0%\",...createBackground(toggleSwitchStyle.switchFill,value==onValue)},style:{position:\"absolute\",height:height-padding*2,aspectRatio:1,left:padding,borderRadius:toggleSwitchStyle.radius-padding,boxShadow:toggleSwitchStyle.shadows,boxSizing:\"border-box\"},// layout\ninitial:false,transition:transition,children:switchBorder&&/*#__PURE__*/_jsx(motion.div,{animate:{borderColor:value==onValue?switchBorder.colorOn:switchBorder.colorOff},style:{position:\"absolute\",inset:0,boxSizing:\"border-box\",borderRadius:toggleSwitchStyle.radius-padding,borderWidth:switchBorder.width,borderStyle:switchBorder.style},initial:false,transition:transition})})]}),toggleTwoStateText&&/*#__PURE__*/_jsx(\"p\",{style:{color:toggleTwoStateText.fontColor,margin:0,userSelect:\"none\",flex:layout==\"fill\"?1:undefined,...props.font},children:value==onValue?toggleTwoStateText.onText:toggleTwoStateText.offText})]});break;case\"checkbox\":layers.push(/*#__PURE__*/_jsxs(\"div\",{onClick:()=>setFilter(value==onValue?offValue:onValue),style:{display:\"flex\",flexDirection:toggleTwoStateText?.location==\"left\"?\"row-reverse\":\"row\",gap:toggleTwoStateText?.gap,alignItems:\"center\",justifyContent:LAYOUT_ALIGNMENTS[layout],cursor:\"pointer\",...props.style},children:[/*#__PURE__*/_jsx(motion.div,{animate:{backgroundColor:value==onValue?checkboxStyle.fillOn??\"transparent\":checkboxStyle.fillOff??\"transparent\",color:checkboxStyle.icon?.colorOn},style:{display:\"flex\",justifyContent:\"center\",alignItems:\"center\",width:checkboxStyle.size,height:checkboxStyle.size,borderRadius:checkboxStyle.radius,position:\"relative\"},initial:false,transition:transition,children:checkboxStyle.icon&&/*#__PURE__*/_jsx(motion.svg,{xmlns:\"http://www.w3.org/2000/svg\",width:checkboxStyle.icon.size,height:checkboxStyle.icon.size,viewBox:\"0 0 24 24\",strokeWidth:checkboxStyle.icon.lineWidth*(24/checkboxStyle.icon.size),stroke:\"currentColor\",fill:\"none\",strokeLinecap:checkboxStyle.icon.rounded?\"round\":\"butt\",strokeLinejoin:checkboxStyle.icon.rounded?\"round\":\"miter\",animate:{opacity:value==onValue?1:0},style:{display:\"block\"},initial:false,transition:transition,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12l5 5l10 -10\"})})}),toggleTwoStateText&&/*#__PURE__*/_jsx(\"p\",{style:{color:toggleTwoStateText.fontColor,margin:0,userSelect:\"none\",flex:layout==\"fill\"?1:undefined,...props.font},children:value==onValue?toggleTwoStateText.onText:toggleTwoStateText.offText})]}));break;}return /*#__PURE__*/_jsx(\"div\",{\"data-superfields\":true,style:{position:\"relative\",userSelect:\"none\",...props.font,...props.style},children:layers});}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerDisableUnlink\n */const Filter=withCSS(FilterComponent,[\"select.superfields-dropdown:focus-visible { outline: none; }\"],\"superfields-filter\");export default Filter;const paddingRadiusProps={padding:{type:ControlType.FusedNumber,defaultValue:16,toggleKey:\"paddingIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},radius:{type:ControlType.FusedNumber,defaultValue:8,toggleKey:\"radiusIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusBottomRight\",\"radiusBottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0}};addPropertyControls(Filter,{...superfieldsId(),filterBy:{type:ControlType.Enum,defaultValue:\"field\",options:[\"field\",\"favourites\"],optionTitles:[\"CMS Field\",\"Favourites\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},fieldType:{type:ControlType.Enum,defaultValue:FilterFieldType.Option,options:[FilterFieldType.Option,FilterFieldType.Toggle,FilterFieldType.Text,FilterFieldType.Reference,FilterFieldType.MultiReference,FilterFieldType.MultipleOptions],optionTitles:[\"Option\",\"Toggle\",\"Text\",\"Reference\",\"Multi-Reference\",\"Multiple Options\"],hidden:props=>props.filterBy!=\"field\"},fieldName:{type:ControlType.String,defaultValue:\"\",placeholder:\"CMS Field Name\",hidden:props=>props.filterBy!==\"field\"||props.fieldType===FilterFieldType.MultipleOptions},referenceFieldType:{type:ControlType.Enum,defaultValue:FilterFieldType.Text,options:[FilterFieldType.Option,FilterFieldType.Toggle,FilterFieldType.Text],optionTitles:[\"Option\",\"Toggle\",\"Text\"],hidden:props=>props.filterBy!==\"field\"||!isReferenceType(props.fieldType)},referenceFieldName:{type:ControlType.String,defaultValue:\"Title\",placeholder:\"Reference CMS Field Name\",hidden:props=>props.filterBy!==\"field\"||!isReferenceType(props.fieldType)},optionFieldNames:{type:ControlType.Array,title:\"Field Names\",control:{type:ControlType.String,defaultValue:\"\",placeholder:\"CMS Field Name\"},hidden:props=>props.filterBy!==\"field\"||props.fieldType!==FilterFieldType.MultipleOptions},filterTypeOption:{type:ControlType.Enum,defaultValue:\"dropdown\",options:[\"dropdown\",\"buttonGroup\"],optionTitles:[\"Dropdown\",\"Buttons\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",title:\"Type\",hidden:props=>!isOptionType(props)},filterTypeToggle:{type:ControlType.Enum,defaultValue:\"toggleSwitch\",options:[\"toggleSwitch\",\"checkbox\",\"dropdown\",\"buttonGroup\"],optionTitles:[\"Toggle Switch\",\"Checkbox\",\"Dropdown\",\"Buttons\"],title:\"Type\",hidden:props=>fieldType(props)!=FilterFieldType.Toggle},options:{type:ControlType.Object,controls:{defaultValue:{type:ControlType.String,defaultValue:\"\",placeholder:\"Default Value\"},optionMode:{type:ControlType.Enum,defaultValue:\"auto\",options:[\"manual\",\"auto\"],optionTitles:[\"Manual\",\"Auto\"],displaySegmentedControl:true,title:\"Options\"},optionValues:{type:ControlType.Array,title:\" \",control:{type:ControlType.String,defaultValue:\"\"},hidden:props=>props.optionMode!==\"manual\"},optionOrder:{type:ControlType.Enum,defaultValue:\"default\",options:[\"default\",\"alphabetical\"],optionTitles:[\"Default\",\"Alphabetical\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",title:\"Order\",description:\"Connect the collection list to enable auto options.\",hidden:props=>props.optionMode!==\"auto\"},placeholder:{type:ControlType.String,defaultValue:\"[Preview project]\",hidden:props=>props.optionMode!==\"auto\"},allOption:{type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},allText:{type:ControlType.String,defaultValue:\"All\",title:\" \",hidden:props=>!props.allOption}},hidden:props=>!isOptionType(props)},textCondition:{type:ControlType.Enum,defaultValue:FilterTextCondition.Equals,options:[FilterTextCondition.Equals,FilterTextCondition.Contains],optionTitles:[\"Equals\",\"Contains\"],displaySegmentedControl:true,title:\"Condition\",hidden:props=>!CONDITION_FIELD_TYPES.includes(fieldType(props))||props.options.optionMode!==\"manual\"},multipleOptionsNoneOption:{type:ControlType.String,defaultValue:\"\",placeholder:\"None Option Name\",title:\"None Option\",hidden:props=>props.fieldType!==FilterFieldType.MultipleOptions},collectionList:{type:ControlType.ComponentInstance,hidden:props=>!isOptionType(props)||props.options.optionMode!=\"auto\"},toggleMultiOptions:{type:ControlType.Object,title:\"Options\",controls:{defaultValue:{type:ControlType.Enum,defaultValue:null,options:[\"all\",\"on\",\"off\"],optionTitles:[\"All\",\"Yes\",\"No\"],displaySegmentedControl:true},allOption:{type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},allText:{type:ControlType.String,defaultValue:\"All\",title:\" \",hidden:props=>!props.allOption},yesOption:{type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},yesText:{type:ControlType.String,defaultValue:\"On\",title:\" \",hidden:props=>!props.yesOption},noOption:{type:ControlType.Boolean,defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"},noText:{type:ControlType.String,defaultValue:\"Off\",title:\" \",hidden:props=>!props.noOption},order:{type:ControlType.Enum,defaultValue:\"yesNo\",options:[\"yesNo\",\"noYes\"],optionTitles:[\"Yes/No\",\"No/Yes\"],displaySegmentedControl:true,hidden:props=>!props.yesOption||!props.noOption}},hidden:props=>fieldType(props)!=FilterFieldType.Toggle||filterType(props)!=\"dropdown\"&&filterType(props)!=\"buttonGroup\"},toggleTwoStateOptions:{type:ControlType.Object,title:\"Options\",icon:\"boolean\",controls:{defaultValue:{type:ControlType.Enum,defaultValue:\"off\",options:[\"off\",\"on\"],optionTitles:[\"Off\",\"On\"],displaySegmentedControl:true},offState:{type:ControlType.Enum,defaultValue:\"all\",options:[\"all\",\"on\",\"off\"],optionTitles:[\"All Items\",\"On/True Only\",\"Off/False Only\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},onState:{type:ControlType.Enum,defaultValue:\"on\",options:[\"all\",\"on\",\"off\"],optionTitles:[\"All Items\",\"On/True Only\",\"Off/False Only\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"}},hidden:props=>fieldType(props)!=FilterFieldType.Toggle||filterType(props)!=\"toggleSwitch\"&&filterType(props)!=\"checkbox\"},toggleTwoStateText:{type:ControlType.Object,optional:true,defaultValue:{offText:\"Off\",onText:\"On\",location:\"right\",gap:10},title:\"Text\",controls:{offText:{type:ControlType.String,defaultValue:\"Off\"},onText:{type:ControlType.String,defaultValue:\"On\"},fontColor:{type:ControlType.Color,defaultValue:\"#000\"},location:{type:ControlType.Enum,defaultValue:\"right\",options:[\"left\",\"right\"],optionTitles:[\"Left\",\"Right\"],displaySegmentedControl:true},gap:{type:ControlType.Number,defaultValue:10,min:0,step:1}},hidden:props=>fieldType(props)!=FilterFieldType.Toggle||filterType(props)!=\"toggleSwitch\"&&filterType(props)!=\"checkbox\"},multiSelect:{type:ControlType.Boolean,defaultValue:false,title:\"Multi-Select\",hidden:props=>filterType(props)!=\"buttonGroup\"||fieldType(props)==FilterFieldType.Toggle},font:{type:ControlType.Font,controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.4}},buttonGroupStyle:{type:ControlType.Object,title:\"Buttons\",buttonTitle:\"Styles\",controls:{fill:fillPropOnOff({colorOff:\"#F0F0F0\",colorAOff:\"#EDEDED\",colorBOff:\"#CCC\",colorOn:\"#0075FF\",colorAOn:\"#70B3FF\",colorBOn:\"#0075FF\"}),selectedFontColor:{type:ControlType.Color,defaultValue:\"#FFF\",title:\"Font Color On\"},defaultFontColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Font Color Off\"},...paddingRadiusProps,border:{type:ControlType.Object,optional:true,controls:{selectedColor:{type:ControlType.Color,defaultValue:\"#0051ad\",title:\"Color On\"},defaultColor:{type:ControlType.Color,defaultValue:\"#222\",title:\"Color Off\"},width:{type:ControlType.FusedNumber,defaultValue:1,toggleKey:\"widthIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"widthTop\",\"widthRight\",\"widthBottom\",\"widthLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},style:{type:ControlType.Enum,defaultValue:\"solid\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]}}},shadowsSelected:{type:ControlType.BoxShadow,title:\"Shadow On\"},shadows:{type:ControlType.BoxShadow,title:\"Shadow Off\"},bgBlur:{type:ControlType.Number,min:0,max:100,step:1,displayStepper:true,title:\"BG Blur\"}},hidden:props=>filterType(props)!=\"buttonGroup\"},buttonGroupLayout:{type:ControlType.Object,title:\"Layout\",buttonTitle:\"Stack\",controls:{direction:{type:ControlType.Enum,defaultValue:\"horizontal\",options:[\"horizontal\",\"vertical\"],displaySegmentedControl:true},distribute:{type:ControlType.Enum,defaultValue:\"center\",options:[\"flex-start\",\"center\",\"flex-end\",\"space-between\",\"space-around\",\"space-evenly\"],optionTitles:[\"Start\",\"Center\",\"End\",\"Space Between\",\"Space Around\",\"Space Evenly\"]},wrap:{type:ControlType.Boolean,defaultValue:false},gapH:{type:ControlType.Number,defaultValue:8,min:0,step:1},gapV:{type:ControlType.Number,defaultValue:8,min:0,step:1},width:{type:ControlType.Enum,defaultValue:\"fit\",options:[\"fit\",\"fill\"],optionTitles:[\"Fit\",\"Fill\"],displaySegmentedControl:true}},hidden:props=>filterType(props)!=\"buttonGroup\"},dividerStyle:{type:ControlType.Object,title:\"Dividers\",controls:{color:{type:ControlType.Color,defaultValue:\"rgba(0, 0, 0, 0.25)\"},width:{type:ControlType.Number,defaultValue:1,min:0,displayStepper:true},rounded:{type:ControlType.Boolean,defaultValue:false},marginH:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true},marginV:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true,description:\"Add a divider by using *---* as an option name\"}},hidden:props=>filterType(props)!=\"buttonGroup\"||fieldType(props)!=FilterFieldType.Option&&fieldType(props)!=FilterFieldType.Text||props.options.optionMode!==\"manual\"},dropdownStyle:{type:ControlType.Object,title:\"Dropdown\",buttonTitle:\"Styles\",controls:{fill:fillProp({color:\"#F0F0F0\"}),fontColor:{type:ControlType.Color,defaultValue:\"#000\"},...paddingRadiusProps,arrow:{type:ControlType.Object,defaultValue:{size:12,gap:10},optional:true,buttonTitle:\"Style\",controls:{color:{type:ControlType.Color,optional:true},size:{type:ControlType.Number,defaultValue:12,min:1,step:1},gap:{type:ControlType.Number,defaultValue:10,min:0,step:1},stroke:{type:ControlType.Number,defaultValue:2,min:.1,step:.1,displayStepper:true}}},border:borderPropertyControl(),shadows:{type:ControlType.BoxShadow},bgBlur:{type:ControlType.Number,min:0,max:100,step:1,displayStepper:true,title:\"BG Blur\"}},hidden:props=>filterType(props)!=\"dropdown\"},toggleSwitchStyle:{type:ControlType.Object,title:\"Toggle Switch\",buttonTitle:\"Styles\",icon:\"boolean\",controls:{fill:fillPropOnOff({colorOn:\"#0075FF\",colorAOn:\"#70B3FF\",colorBOn:\"#0075FF\",colorOff:\"#EDEDED\",colorAOff:\"#EDEDED\",colorBOff:\"#CCC\"}),border:{type:ControlType.Object,optional:true,controls:{colorOn:{type:ControlType.Color,defaultValue:\"#222\"},colorOff:{type:ControlType.Color,defaultValue:\"#222\"},width:{type:ControlType.Number,defaultValue:1,min:0,step:1},style:{type:ControlType.Enum,defaultValue:\"solid\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]}}},switchFill:fillPropOnOff({colorOn:\"#FFF\",colorAOn:\"#FFF\",colorBOn:\"#D6D6D6\",colorOff:\"#FFF\",colorAOff:\"#FFF\",colorBOff:\"#D6D6D6\"}),switchBorder:{type:ControlType.Object,optional:true,controls:{colorOn:{type:ControlType.Color,defaultValue:\"#222\"},colorOff:{type:ControlType.Color,defaultValue:\"#222\"},width:{type:ControlType.Number,defaultValue:1,min:0,step:1},style:{type:ControlType.Enum,defaultValue:\"solid\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]}}},shadows:{type:ControlType.BoxShadow,defaultValue:\"0px 2px 4px 0px rgba(0,0,0,0.2)\"},height:{type:ControlType.Number,defaultValue:32,min:1,step:1},padding:{type:ControlType.Number,defaultValue:4,min:0,step:1,displayStepper:true},radius:{type:ControlType.Number,defaultValue:16,min:0}},hidden:props=>filterType(props)!=\"toggleSwitch\"},checkboxStyle:{type:ControlType.Object,title:\"Checkbox\",buttonTitle:\"Styles\",controls:{fillOn:{type:ControlType.Color,defaultValue:\"#0075FF\"},fillOff:{type:ControlType.Color,defaultValue:\"#EDEDED\"},size:{type:ControlType.Number,defaultValue:24,min:1,step:1},radius:{type:ControlType.Number,defaultValue:6,min:0},icon:{type:ControlType.Object,optional:true,defaultValue:{size:16,color:\"#FFF\",rounded:true},buttonTitle:\"Options\",controls:{size:{type:ControlType.Number,defaultValue:16,min:1,step:1},lineWidth:{type:ControlType.Number,defaultValue:2,min:1,step:.1},colorOn:{type:ControlType.Color,defaultValue:\"#FFF\",title:\"Color\"},rounded:{type:ControlType.Boolean,defaultValue:true}}}},hidden:props=>filterType(props)!=\"checkbox\"},transition:{type:ControlType.Transition,defaultValue:{type:\"spring\",duration:.2,bounce:0},hidden:props=>filterType(props)==\"dropdown\"}});const isReferenceType=fieldType=>fieldType===FilterFieldType.Reference||fieldType===FilterFieldType.MultiReference;function filterType(props){if(props.filterBy==\"field\"){const type=isReferenceType(props.fieldType)?props.referenceFieldType:props.fieldType;if(type==FilterFieldType.Toggle){return props.filterTypeToggle;}else{return props.filterTypeOption;}}else{return props.filterTypeToggle;}}function fieldType(props){if(props.filterBy==\"field\"){const type=isReferenceType(props.fieldType)?props.referenceFieldType:props.fieldType;return type===FilterFieldType.MultipleOptions?FilterFieldType.Option:type;}else{return FilterFieldType.Toggle;}}function isOptionType(props){if(props.filterBy==\"field\"){if(isReferenceType(props.fieldType)){return props.referenceFieldType==FilterFieldType.Option||props.referenceFieldType==FilterFieldType.Text;}else{return props.fieldType==FilterFieldType.Option||props.fieldType==FilterFieldType.Text||props.fieldType==FilterFieldType.MultipleOptions;}}else{return false;}}function isDivider(text){return text?DASHES_ONLY_REGEX.test(text)&&text.length>=3:false;}function FilterButton(props){const{selected,border}=props;return /*#__PURE__*/_jsxs(motion.div,{onClick:props.onClick,animate:{...createBackground(props.fill,selected),color:selected?props.selectedFontColor:props.defaultFontColor,boxShadow:selected&&props.shadowsSelected?props.shadowsSelected:props.shadows},style:{position:\"relative\",width:props.direction==\"vertical\"&&props.width==\"fill\"?\"100%\":\"max-content\",flex:props.width==\"fill\"?1:undefined,cursor:\"pointer\",padding:props.paddingIsMixed?`${props.paddingTop}px ${props.paddingRight}px ${props.paddingBottom}px ${props.paddingLeft}px`:`${props.padding}px`,borderRadius:props.radiusIsMixed?`${props.radiusTopLeft}px ${props.radiusTopRight}px ${props.radiusBottomRight}px ${props.radiusBottomLeft}px`:`${props.radius}px`,backdropFilter:props.bgBlur?`blur(${props.bgBlur}px)`:undefined},initial:false,transition:props.transition,children:[props.text,border&&/*#__PURE__*/_jsx(Border,{...border,color:selected?border.selectedColor:border.defaultColor,transition:props.transition})]});}function ButtonGroupDivider({color,width,rounded,marginH,marginV,layout}){const horizontal=layout.direction==\"vertical\";return /*#__PURE__*/_jsx(\"div\",{style:{backgroundColor:color,width:horizontal?undefined:width,height:horizontal?width:undefined,margin:`${marginV}px ${marginH}px`,borderRadius:rounded?1e4:undefined,alignSelf:\"stretch\"}});}\nexport const __FramerMetadata__ = {\"exports\":{\"OptionOrder\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FilterBy\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FilterType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"OptionMode\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Filter\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Filter.map"],"mappings":"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"}