PageSourceSearch

http://healthnutbeauty.com/js/route-fur91xkb.js

js healthnutbeauty.com collected 2026-10-06 15:04:43 UTC 11,628 bytes, 1 lines download raw bytes

1import{u as w,a as z,c as B,r as h,j as e}from"./components-HmsziQjw.js";import{k as J,n as Q}from"./index-CvDSd44r.js";import{p as W}from"./Parser-D0GuP5sP.js";import{a as X,S as Z}from"./Sections-CCXFDNlh.js";import{u as O,A as ee}from"./ReviewStar-DaOpUoTC.js";import{B as v}from"./Button-CVLj3YgK.js";import{F as R}from"./icon-CLslFKqv.js";import{I as H}from"./Image-BKWsrb4B.js";import{S as te,a as se}from"./index-CiIkUTit.js";import{B as le}from"./BannerMain-BOHRNAmK.js";import{C as oe}from"./CtaButton-Mdj6gye1.js";import{t as re}from"./anchors-BHrMCINq.js";import{u as ie}from"./useAbTestValue-BJUeVoxO.js";import"./clsx-B-dksMZM.js";import"./index-Dx6YXFZL.js";import"./OfferProvider-MsxdXEw7.js";import"./LinkWithPrefetch-DMBkk574.js";import"./SwiperArrows-N5AoyvW3.js";import"./navigation-CBt0_yQT.js";import"./SwiperPagination-D8TAH3CY.js";import"./Money-CfQCfdJ7.js";import"./useAddToCart-cn6OE5dy.js";import"./ProductUpsellItem.module-D6H8d7ch.js";import"./logo-Brj3VckZ.js";import"./ModalWrapper-BFeZDNIC.js";import"./CloseButton-DQ-kT81-.js";import"./index-CQx-SUfh.js";import"./index-CbleA0oG.js";import"./GridCrossSellItem.module-DNvBgwA7.js";const $=h.createContext(null);function ne(t){return x.some(r=>r.val===t)}function ae(t){return V.some(r=>r.val===t)}function ce({children:t}){var k;const r=w(),l=z({key:"shop-all-sort-filter"}),i=B(),{collection:o,sortAndFilter:s}=l.data||r,[c,n]=h.useState(s.sort||"manual"),[p,a]=h.useState(s.productTypes||[]);h.useEffect(()=>{n(s.sort||"manual"),a(s.productTypes||[])},[s.sort,s.productTypes]),h.useEffect(()=>{l.load(i.pathname+i.search)},[i.pathname,i.search]);const u=(((k=s.productTypes)==null?void 0:k.length)??0)>0||!!(s.sort&&s.sort!=="manual")||!!(s.filter&&s.filter!=="all"),N=({filterInput:_,sortInput:f,typesInput:L,skipUrlCheck:M=!1})=>{const{handle:U,filter:D,sort:K,productTypes:Y=[]}=s,E=ne(_)?_:D,C=ae(f)?f:K,q=L!==void 0?L:Y;let T=`/collections/${U}`;E&&(T+=`/${E}`);const j=new URLSearchParams;C&&C!=="manual"&&j.set("sort",C),q.forEach(g=>{j.append("type",g)});const I=j.toString(),b=I?`${T}?${I}`:T;if(M)l.load(b);else{const g=window.location.pathname+window.location.search;b!==g&&l.load(b)}},G={sortAndFilter:s,collection:o,selectedSort:c,selectedTypes:p,hasFiltersApplied:u,setSelectedSort:n,setSelectedTypes:a,handleApply:(_,f)=>{n(_),a(f),N({sortInput:_,typesInput:f,skipUrlCheck:!1})},handleClear:()=>{n("manual"),a([]);const{handle:_}=s,f=`/collections/${_}`;l.load(f)},filterAndSort:N,isLoading:l.state!=="idle"};return e.jsx($.Provider,{value:G,children:t})}function y(){const t=h.useContext($);if(!t)throw new Error("useShopAllSortFilter must be used within a ShopAllSortFilterProvider");return t}function pe(){const{sortAndFilter:t,filterAndSort:r}=y(),{filter:l}=t,i=B(),[o,s]=h.useState({header:x[0].filterText,text:x[0].heroText??""});h.useEffect(()=>{let n=x.find(u=>u.val===l);n||(n=x[0]);const{filterText:p,heroText:a}=n;s({header:p,text:a??""})},[i.pathname,l]);const c=n=>{r({filterInput:n,skipUrlCheck:!0});const p=x.find(a=>a.val===n);if(p){const{filterText:a,heroText:u}=p;s({header:a,text:u??""})}};return e.jsx(X,{headerText:o.header,headerBody:o.text&&W(o.text),tabValue:x,filter:l,handleClick:c})}const x=[{val:"all",filterText:"Shop All",heroText:"Targeted relief for [bold]((every stage of life))"},{val:"best-seller",filterText:"Best Sellers",heroText:"[bold]((Customer favorite)) products & routines"},{val:"new-arrivals",filterText:"New Arrivals",heroText:"[bold]((The latest must-haves)) in women's health"},{val:"bundle-and-save",filterText:"Bundle & Save",heroText:"Hand-curated kits with [bold]((built-in savings))"},{val:"health-essential",filterText:"Daily Essentials",heroText:"Simple, effective, everyday support*"},{val:"vaginal-health",filterText:"Vaginal Health",heroText:"Your go-to for [bold]((intimate [br]{{mobile}}balance, comfort & care*))"},{val:"hormone-health",filterText:"Hormone Health",heroText:"Feel your best [bold]((through every cycle & stage*))"},{val:"women-40-plus",filterText:"Healthy Aging",heroText:"Support for [bold]((menopause symptoms & beyond*))"},{val:"probiotics",filterText:"Probiotics",heroText:"[bold]((Fiber and probiotics)) for gut health & beyond*"}],de="_shop-all-sort-filter__container_6de7p_1",he="_shop-all-sort-filter__button_6de7p_57",ue="_shop-all-sort-filter__clear-all-button_6de7p_72",me="_shop-all-sort-filter__selected-count_6de7p_86",S={shopAllSortFilterContainer:de,shopAllSortFilterButton:he,shopAllSortFilterClearAllButton:ue,shopAllSortFilterSelectedCount:me};function _e(){const{open:t}=O(),{sortAndFilter:r,hasFiltersApplied:l,handleClear:i}=y(),{productTypes:o=[]}=r;return e.jsxs(e.Fragment,{children:[e.jsx(pe,{}),e.jsxs("div",{className:S.shopAllSortFilterContainer,children:[e.jsxs(v,{className:S.shopAllSortFilterButton,onClick:()=>t("sort-filter"),children:[e.jsx(H,{src:R,alt:"Filter icon",width:15,height:15}),"Sort & Filter",o.length>0&&e.jsxs("span",{className:S.shopAllSortFilterSelectedCount,children:[o.length," Selected"]})]}),l&&e.jsx(v,{className:S.shopAllSortFilterClearAllButton,onClick:i,children:"Clear All"})]})]})}const V=[{val:"manual",key:"MANUAL",reverse:!1,text:"Featured"},{val:"best-selling",key:"BEST_SELLING",reverse:!1,text:"Best Sellers"},{val:"created-descending",key:"CREATED",reverse:!0,text:"Newest"},{val:"price-ascending",key:"PRICE",reverse:!1,text:"Price: Low to High"},{val:"price-descending",key:"PRICE",reverse:!0,text:"Price: High to Low"}
1],fe="_sort-options_s0n1b_29",xe="_sort-options__list_s0n1b_34",Ae="_sort-options__item_s0n1b_39",Fe="_sort-options__radio_s0n1b_53",Se="_sort-options__label_s0n1b_79",F={sortOptions:fe,sortOptionsList:xe,sortOptionsItem:Ae,sortOptionsRadio:Fe,sortOptionsLabel:Se};function ve({selectedSort:t,onSortChange:r,name:l}){const i=h.useId(),o=l||`shop-all-sort-${i}`;return e.jsx("div",{className:F.sortOptions,children:e.jsx("div",{className:F.sortOptionsList,children:V.map(s=>e.jsxs("label",{className:F.sortOptionsItem,children:[e.jsx("input",{type:"radio",name:o,value:s.val,checked:t===s.val,onChange:()=>r(s.val),className:F.sortOptionsRadio}),e.jsx("span",{className:F.sortOptionsLabel,children:s.text})]},s.val))})})}const ye="_product-type-filter_uumdv_29",Ce="_product-type-filter__list_uumdv_34",Te="_product-type-filter__item_uumdv_39",je="_product-type-filter__checkbox_uumdv_45",be="_product-type-filter__label_uumdv_70",ge="_product-type-filter__clear_uumdv_81",A={productTypeFilter:ye,productTypeFilterList:Ce,productTypeFilterItem:Te,productTypeFilterCheckbox:je,productTypeFilterLabel:be,productTypeFilterClear:ge},we=[{value:"capsules",label:"Capsules"},{value:"gummies",label:"Gummies"},{value:"powders",label:"Powders"},{value:"suppository",label:"Suppository"},{value:"intimate-hygiene",label:"Intimate Hygiene"}];function Ne({selectedTypes:t,onChange:r}){const l=o=>{const s=t.includes(o)?t.filter(c=>c!==o):[...t,o];r(s)},i=()=>{r([])};return e.jsxs("div",{className:A.productTypeFilter,children:[e.jsx("div",{className:A.productTypeFilterList,children:we.map(o=>e.jsxs("label",{className:A.productTypeFilterItem,children:[e.jsx("input",{type:"checkbox",checked:t.includes(o.value),onChange:()=>l(o.value),className:A.productTypeFilterCheckbox}),e.jsx("span",{className:A.productTypeFilterLabel,children:o.label})]},o.value))}),t.length>0&&e.jsx(v,{onClick:i,className:A.productTypeFilterClear,style:{color:re("orange")},children:"Clear Selection"})]})}const ke="_sort-filter-aside_9rtw9_29",Le="_sort-filter-aside__content_9rtw9_40",Ee="_sort-filter-aside__section_9rtw9_54",Ie="_sort-filter-aside__title_9rtw9_64",Pe="_sort-filter-aside__footer_9rtw9_72",Be="_sort-filter-aside__clear_9rtw9_80",Oe="_sort-filter-aside__heading_9rtw9_95",d={sortFilterAside:ke,sortFilterAsideContent:Le,sortFilterAsideSection:Ee,sortFilterAsideTitle:Ie,sortFilterAsideFooter:Pe,sortFilterAsideClear:Be,sortFilterAsideHeading:Oe};function P({mode:t}){const r=O(),{selectedSort:l,selectedTypes:i,setSelectedSort:o,setSelectedTypes:s,handleApply:c,handleClear:n}=y(),p=()=>{c(l,i),t==="aside"&&r.close()},a=()=>{n(),t==="aside"&&r.close()},u=e.jsxs("div",{className:d.sortFilterAside,children:[e.jsxs("div",{className:d.sortFilterAsideContent,children:[e.jsxs("div",{className:d.sortFilterAsideSection,children:[e.jsx("h2",{className:d.sortFilterAsideTitle,children:"Sort By"}),e.jsx(ve,{selectedSort:l,onSortChange:o})]}),e.jsxs("div",{className:d.sortFilterAsideSection,children:[e.jsx("h2",{className:d.sortFilterAsideTitle,children:"Filter By"}),e.jsx(Ne,{selectedTypes:i,onChange:s})]})]}),e.jsxs("div",{className:d.sortFilterAsideFooter,children:[e.jsx(oe,{...t==="inline"&&{vwoIdentifier:"sortFilterApplyButtonClicked"},textColor:"white",backgroundColor:{startColor:"orange",endColor:"orange"},hoverColor:"white",onClick:p,children:"APPLY"}),e.jsx(v,{className:d.sortFilterAsideClear,onClick:a,children:"Clear All"})]})]});return t==="aside"?e.jsx(ee,{type:"sort-filter",heading:e.jsxs("div",{className:d.sortFilterAsideHeading,children:[e.jsx(H,{src:R,alt:"Filter icon",width:15,height:15}),"SORT & FILTER"]}
1),openFrom:"left",children:u}):u}const Re="_shop-all_1vptd_1",He="_shop-all__filters_1vptd_42",$e="_shop-all__products_1vptd_54",Ve="_shop-all__products-grid_1vptd_59",Ge="_shop-all__empty-state_1vptd_76",Me="_shop-all__empty-state-icon_1vptd_93",Ue="_shop-all__empty-state-message_1vptd_106",De="_shop-all__empty-state-link_1vptd_123",m={shopAll:Re,shopAllFilters:He,shopAllProducts:$e,shopAllProductsGrid:Ve,shopAllEmptyState:Ge,shopAllEmptyStateIcon:Me,shopAllEmptyStateMessage:Ue,shopAllEmptyStateLink:De};function Ke(){const{collection:t,hasFiltersApplied:r,handleClear:l}=y();return e.jsxs(e.Fragment,{children:[e.jsx(le,{}),e.jsx(_e,{}),e.jsx(P,{mode:"aside"}),e.jsxs("div",{className:m.shopAll,children:[e.jsx("div",{className:m.shopAllFilters,children:e.jsx(P,{mode:"inline"})}),e.jsx("div",{className:m.shopAllProducts,children:e.jsx(J,{connection:t.products,children:({nodes:i,isLoading:o,PreviousLink:s,NextLink:c})=>e.jsxs(e.Fragment,{children:[e.jsx(s,{children:o?"Loading...":e.jsx("span",{children:"↑ Load previous"})}),i.length===0&&r?e.jsxs("div",{className:m.shopAllEmptyState,children:[e.jsx("p",{className:m.shopAllEmptyStateIcon,children:"!"}),e.jsxs("p",{className:m.shopAllEmptyStateMessage,children:["Sorry, no products found."," ",e.jsx("button",{className:m.shopAllEmptyStateLink,onClick:l,children:"Browse All Products"})]})]}):e.jsxs("div",{className:m.shopAllProductsGrid,children:[!r&&e.jsx(te,{products:i}),i.map(n=>e.jsx(se,{product:n},n.id))]}),e.jsx(c,{children:o?"Loading...":e.jsx("span",{children:"Load more ↓"})})]})})})]})]})}function Ye(){return e.jsx(ce,{children:e.jsx(Ke,{})})}function qe(){var a;const{shopData:t,product:r,sectionData:l,blog:i,baseReview:o,initialReview:s,featuredReviews:c,featuredReviewsAb:n}=w(),p=ie(c,[["featuredReviewsAb",!0,n]],[c,n]);return e.jsx(e.Fragment,{children:((a=l==null?void 0:l.sections)==null?void 0:a.reference)&&e.jsx(Z,{sections:l.sections.reference,product:r,shopData:t,blog:i,baseReview:o,initialReview:s,featuredReviews:p})})}const jt=({data:t})=>{var l,i;const r={title:`${(t==null?void 0:t.collection.seo.title)??(t==null?void 0:t.collection.title)??""} | O Positiv`,description:((l=t==null?void 0:t.collection.seo.description)==null?void 0:l.slice(0,155))??((i=t==null?void 0:t.collection.description)==null?void 0:i.slice(0,155)),url:t==null?void 0:t.canonicalUrl,...(t==null?void 0:t.noIndex)&&{robots:{noIndex:!0,noFollow:!0}}};return Q(r)};function bt(){const{isShopAll:t}=w();return t?e.jsx(Ye,{}):e.jsx(qe,{})}export{bt as default,jt as meta};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.