{"version":3,"file":"FilterBar-JE4cKzUR.js","sources":["../../../app/frontend/pages/Brochure/Directory/Lists/FilterBar.jsx"],"sourcesContent":["import { useState, useEffect } from \"react\"\nimport { useForm, router, usePage } from \"@inertiajs/react\"\nimport Filter from \"./Filter\"\n\nexport default function FilterBar({ data, setData, isDirty }) {\n const { categories, languages } = usePage().props\n\n const filterValues = {\n sort: [\n { value: \"free\", label: \"Free Subscribers\", icon: \"📧\" },\n { value: \"paid\", label: \"Paid Subscribers\", icon: \"💸\" },\n { value: \"trending\", label: \"Trending\", icon: \"📈\" },\n ],\n categories: [\n { value: \"all\", label: \"All Categories\", icon: \"🏷️\" },\n ...categories.map((category) => ({\n value: `${category.handle}`,\n icon: category.emoji,\n label: category.name,\n })),\n ],\n languages: [\n { value: \"all\", label: \"All Languages\", icon: \"🌎\" },\n ...languages.map((language) => ({\n value: language.code,\n icon: language.emoji,\n label: language.name,\n })),\n ],\n }\n\n useEffect(() => {\n onFilter()\n }, [isDirty])\n\n const onFilter = (event) => {\n event && event.preventDefault()\n if (!isDirty) {\n return\n }\n\n if (data.category !== \"all\") {\n router.get(\n `/directory/category/${data.category}`,\n {\n query: data.query,\n language: data.language,\n sort: data.sort,\n },\n { preserveScroll: true }\n )\n } else if (data.language !== \"all\") {\n router.get(\n `/directory/language/${data.language}`,\n {\n query: data.query,\n sort: data.sort,\n },\n { preserveScroll: true }\n )\n } else {\n router.get(\n \"/directory\",\n {\n query: data.query,\n language: data.language,\n category: data.category,\n sort: data.sort,\n },\n { preserveScroll: true }\n )\n }\n\n // Scroll to filterbar position\n const beforeFilterBar = document.getElementById(\"before-filter-bar\")\n if (beforeFilterBar) {\n const filterBarTop = beforeFilterBar.getBoundingClientRect().bottom\n window.scrollTo({\n top: filterBarTop + window.scrollY,\n behavior: \"smooth\",\n })\n }\n }\n\n return (\n
\n
\n \n setData(\"sort\", value)}\n />\n setData(\"category\", value)}\n />\n setData(\"language\", value)}\n />\n \n
\n
\n )\n}\n"],"names":["FilterBar","data","setData","isDirty","categories","languages","usePage","filterValues","category","language","useEffect","onFilter","event","router","beforeFilterBar","filterBarTop","jsx","jsxs","Filter","value"],"mappings":"obAIA,SAAwBA,EAAU,CAAE,KAAAC,EAAM,QAAAC,EAAS,QAAAC,GAAW,CAC5D,KAAM,CAAE,WAAAC,EAAY,UAAAC,CAAU,EAAIC,IAAU,MAEtCC,EAAe,CACnB,KAAM,CACJ,CAAE,MAAO,OAAQ,MAAO,mBAAoB,KAAM,IAAK,EACvD,CAAE,MAAO,OAAQ,MAAO,mBAAoB,KAAM,IAAK,EACvD,CAAE,MAAO,WAAY,MAAO,WAAY,KAAM,IAAK,CACrD,EACA,WAAY,CACV,CAAE,MAAO,MAAO,MAAO,iBAAkB,KAAM,KAAM,EACrD,GAAGH,EAAW,IAAKI,IAAc,CAC/B,MAAO,GAAGA,EAAS,MAAM,GACzB,KAAMA,EAAS,MACf,MAAOA,EAAS,IAAA,EAChB,CACJ,EACA,UAAW,CACT,CAAE,MAAO,MAAO,MAAO,gBAAiB,KAAM,IAAK,EACnD,GAAGH,EAAU,IAAKI,IAAc,CAC9B,MAAOA,EAAS,KAChB,KAAMA,EAAS,MACf,MAAOA,EAAS,IAAA,EAChB,CACJ,CAAA,EAGFC,EAAAA,UAAU,IAAM,CACLC,GAAA,EACR,CAACR,CAAO,CAAC,EAEN,MAAAQ,EAAYC,GAAU,CAE1B,GADAA,GAASA,EAAM,iBACX,CAACT,EACH,OAGEF,EAAK,WAAa,MACbY,EAAA,IACL,uBAAuBZ,EAAK,QAAQ,GACpC,CACE,MAAOA,EAAK,MACZ,SAAUA,EAAK,SACf,KAAMA,EAAK,IACb,EACA,CAAE,eAAgB,EAAK,CAAA,EAEhBA,EAAK,WAAa,MACpBY,EAAA,IACL,uBAAuBZ,EAAK,QAAQ,GACpC,CACE,MAAOA,EAAK,MACZ,KAAMA,EAAK,IACb,EACA,CAAE,eAAgB,EAAK,CAAA,EAGlBY,EAAA,IACL,aACA,CACE,MAAOZ,EAAK,MACZ,SAAUA,EAAK,SACf,SAAUA,EAAK,SACf,KAAMA,EAAK,IACb,EACA,CAAE,eAAgB,EAAK,CAAA,EAKrB,MAAAa,EAAkB,SAAS,eAAe,mBAAmB,EACnE,GAAIA,EAAiB,CACb,MAAAC,EAAeD,EAAgB,sBAAA,EAAwB,OAC7D,OAAO,SAAS,CACd,IAAKC,EAAe,OAAO,QAC3B,SAAU,QAAA,CACX,CACH,CAAA,EAGF,OACGC,EAAA,IAAA,MAAA,CAAI,UAAU,kHACb,eAAC,MACC,CAAA,SAAAC,EAAA,KAAC,OAAA,CACC,SAAUN,EACV,UAAU,8CAEV,SAAA,CAAAK,EAAA,IAACE,EAAA,CACC,MAAM,UACN,KAAK,KACL,OAAQX,EAAa,KACrB,MAAON,EAAK,KACZ,SAAWkB,GAAUjB,EAAQ,OAAQiB,CAAK,CAAA,CAC5C,EACAH,EAAA,IAACE,EAAA,CACC,MAAM,WACN,KAAK,MACL,OAAQX,EAAa,WACrB,MAAON,EAAK,SACZ,SAAWkB,GAAUjB,EAAQ,WAAYiB,CAAK,CAAA,CAChD,EACAH,EAAA,IAACE,EAAA,CACC,MAAM,WACN,KAAK,KACL,OAAQX,EAAa,UACrB,MAAON,EAAK,SACZ,SAAWkB,GAAUjB,EAAQ,WAAYiB,CAAK,CAAA,CAChD,CAAA,CAAA,CAAA,CAEJ,CAAA,CACF,CAAA,CAEJ"}