1try{let e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="50277252-0fad-4acf-8538-c51bc23ab4f4",e._sentryDebugIdIdentifier="sentry-dbid-50277252-0fad-4acf-8538-c51bc23ab4f4")}catch(e){}("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{}).SENTRY_RELEASE={id:"a1914b02daa8c613ead1e27da03d97f802f0ebde"};(self.webpackChunkinvisiblefence=self.webpackChunkinvisiblefence||[]).push([[2260],{23325:function(e,n){n.A=function(e){var n;return!!e&&(null==e||null===(n=e.variants)||void 0===n?void 0:n.some(e=>{var n;const t=null===(n=e.metafields)||void 0===n?void 0:n.find(e=>"company_owned_dealer_variant"===(null==e?void 0:e.name));return t&&"true"===t.value}))}},25090:function(e,n){n.A=(e,n)=>(null==e?void 0:e.includes("prostaff_eligible"))&&!n},56901:function(e,n,t){t.d(n,{A:function(){return _}});var i=t(40107),a=t(14041),r=t(15813),o=t(54453),l=t(77282),c=t(40671),u=t(93910),d=t(41204),m=t(98676),s=t(50320),p=t(72304),v=t(23325),f=t(25090);const g=(e,n)=>{const t=((e,n)=>(e||[]).map(e=>{var t;return null===(t=(e=>null==e?void 0:e.canadaStore)(e))||void 0===t?void 0:t[n]}).filter(e=>((e,n)=>"number"==typeof e&&("compareAtPrice"!==n||e>0))(e,n)))(e,n);return{min:t.length?Math.min.apply(Math,(0,i.A)(t)):0,max:t.length?Math.max.apply(Math,(0,i.A)(t)):0}};var h=t(45655),P=t(90785),b=t(82901),y=t(28610),A=t(34930);const V=r.Ay.div` 2 width: 100%; 3 height: 100%; 4 text-align: left; 5 padding: 0.625rem; 6 border: 1px solid ${({theme:e})=>e.productCard.borderColor}; 7 display: flex; 8 flex-direction: column; 9 background-color: ${({theme:e})=>e.productCard.backgroundColor}; 10 box-shadow: ${({theme:e})=>e.productCard.boxShadow}; 11 12 &:hover { 13 border: 1px solid ${({theme:e})=>e.productCard.borderColorHover}; 14 box-shadow: ${({theme:e})=>e.productCard.boxShadowHover}; 15 } 16 17 @media (min-width: ${A.A.md}) { 18 padding: 1rem; 19 } 20 21 .main-image-link { 22 flex-grow: 0; 23 } 24`,x=r.Ay.img` 25 width: 100%; 26 height: 100%; 27 margin-bottom: 1rem; 28 object-fit: contain; 29 object-position: top center; 30 aspect-ratio: 1; 31`,C=r.Ay.div` 32 margin-bottom: 1rem; 33`,E=r.Ay.div` 34 margin: 0 0 ${({theme:e})=>e.productCard.inlineRatingsMarginBottom}; 35 text-align: revert; 36 width: fit-content; 37`,w=(0,r.Ay)(h.LocalizedLink)` 38 flex-grow: 0; 39 text-decoration: none; 40 color: ${({theme:e})=>e.productCard.titleColor}; 41 42 &:hover { 43 color: ${({theme:e})=>e.productCard.titleColorHover}; 44 } 45 46 .product-title, 47 h2 { 48 margin: 0px 0px 0.25em; 49 font-size: 1rem; 50 @media (min-width: ${A.A.xs}) { 51 font-size: clamp(1rem, 4vw, 1.1875rem); 52 } 53 54 text-transform: ${({theme:e})=>e.productCard.titleTextTransform}; 55 font-weight: ${({theme:e})=>e.productCard.titleFontWeight}; 56 color: inherit; 57 } 58`,$=r.Ay.ul` 59 list-style: revert; 60 list-style-position: outside; 61 text-align: left; 62 margin-bottom: 0; 63 padding: 0; 64 padding-left: 1rem; 65 flex-grow: 1; 66 67 li { 68 margin-bottom: 0.25rem; 69 } 70`,S=r.Ay.div` 71 font-size: 1.1875rem; 72 font-weight: revert; 73 font-weight: bolder; 74 margin-top: 0.625rem; 75 color: ${({theme:e})=>e.productCard.priceColor}; 76 77 .pre-discount-price { 78 color: grey; 79 font-weight: 400; 80 margin-right: 0.2rem; 81 text-decoration: line-through; 82 } 83 84 s { 85 font-size: 1rem; 86 } 87`,R=r.Ay.span` 88 color: ${({theme:e})=>e.colors.onSaleRed}; 89`;function D(e,n){const t=JSON.parse(JSON.stringify(e));if(t.variants=t.variants.filter(e=>e.metafields.some(e=>("company_owned_dealer_variant"===e.name||"company_owned_dealer_variant"===e.key)&&e.value===n.toString())),t.variants.length>0){var i,a;let e=null===(i=t.variants[0])||void 0===i?void 0:i.price,n=null===(a=t.variants[0])||void 0===a?void 0:a.price;
89t.variants.forEach(t=>{t.price<e&&(e=t.price),t.price>n&&(n=t.price)}),t.priceRangeV2={minVariantPrice:{amount:e},maxVariantPrice:{amount:n}},t.price=e}else t.priceRangeV2={minVariantPrice:{amount:null},maxVariantPrice:{amount:null}},t.price=null;return t}var _=({product:e,sanityProduct:n,showFeatureList:t,showRatings:r,showInlineRatings:A,hideProductPrices:_,productTitleAs:F="h2",categorySource:T=""})=>{var k,N,M;const{tt:I}=(0,y.useUiComponentsInternationalContext)(),O=(0,a.useContext)(d.U6),L=(null==O?void 0:O.currency)||"USD",{0:U,1:z}=(0,a.useState)(!1),{title:H,productType:j,handle:G,image:B,sku:Y}=e,q=(0,a.useMemo)(()=>(0,P.Ti)((0,b.H)(e,Y)),[e,Y]),J="CAD"===L?"en-ca/":"",K=(0,a.useContext)(c.b);let W=`${J}${(0,p.A)({productHandle:G,productType:j})}`;const Q=F;if(W.includes("product/product")){const e=W.split("/");e.splice(1,1),W=e.join("/")}else if(W.includes("p/")){if(W.includes("p/p/")){const e=W.split("/");e.splice(1,1),W=e.join("/")}const e=W.split("/"),n=e.indexOf("p");-1!==n&&e.length===n+2&&(W=`${W}/${Y}`)}const X=(0,a.useContext)(u.C),{formatPrice:Z}=(0,a.useContext)(l.MI),ee={}.GATSBY_PRO_STAFF_DISCOUNT_PERCENTAGE;(0,a.useEffect)(()=>{"undefined"!=typeof window&&z(!0)},[]);return a.createElement(V,null,a.createElement(h.LocalizedLink,{to:`/${W}`,className:"main-image-link",onClick:()=>{"function"==typeof e.insights&&(0,o.OR)(null==e?void 0:e.insights)},state:{searchedProduct:e.queryID||null,categorySource:T},tabIndex:-1,"aria-hidden":"true"},a.createElement(x,{src:B.src,alt:B.altText,width:350,height:350})),U&&A&&q&&a.createElement(E,{className:"ratings-container",id:`BVRRInlineRating-${q}`,"data-bazaarvoice-id":q,"data-bazaarvoice-slug":W}),U&&r&&q&&a.createElement(C,{"data-bv-show":"inline_rating","data-bv-product-id":q,"data-bv-seo":"false","data-bv-redirect-url":`/${W}`}),a.createElement(w,{to:`/${W}`,onClick:()=>{"function"==typeof e.insights&&(0,o.OR)(null==e?void 0:e.insights)},state:{searchedProduct:e.queryID||null,categorySource:T}},a.createElement(Q,{className:"product-title"},H)),t&&(null==e?void 0:e.features)&&a.createElement($,null,e.features.map(e=>a.createElement("li",{key:e},e))),_||"Coming Soon"===(null==e||null===(k=e.productLifecycle)||void 0===k?void 0:k.value)||"Obsolete"===(null==e||null===(N=e.productLifecycle)||void 0===N?void 0:N.value)?a.createElement(S,null,"Obsolete"===(null==e||null===(M=e.productLifecycle)||void 0===M?void 0:M.value)?"Discontinued":"Coming Soon"):a.createElement(S,null,"CAD"===L?(()=>{var t,i,r,o,l;const c=(e=>{var n;const{min:t,max:i}=g(null==e||null===(n=e.store)||void 0===n?void 0:n.variants,"compareAtPrice");return{minVariantPrice:{amount:t,currencyCode:"CAD"},maxVariantPrice:{amount:i,currencyCode:"CAD"}}})(n),u=(e=>{var n;const{min:t,max:i}=g(null==e||null===(n=e.store)||void 0===n?void 0:n.variants,"price");return{minVariantPrice:{amount:t,currencyCode:"CAD"},maxVariantPrice:{amount:i,currencyCode:"CAD"}}})(n),d=c.minVariantPrice.amount,s=u.minVariantPrice.amount;return Number.parseFloat(null==c||null===(t=c.minVariantPrice)||void 0===t?void 0:t.amount)<Number.parseFloat(null==c||null===(i=c.maxVariantPrice)||void 0===i?void 0:i.amount)&&Number.parseFloat(null==c||null===(r=c.minVariantPrice)||void 0===r?void 0:r.amount)>Number.parseFloat(u.minVariantPrice.amount)?a.createElement(a.Fragment,null,a.createElement("s",null,Z(c.minVariantPrice.amount)," -",Z(c.maxVariantPrice.amount)),a.createElement("br",null),a.createElement(R,null,I(e=>e.productCommon.salePrice,{amount:`${Z(u.minVariantPrice.amount)} - ${Z(u.maxVariantPrice.amount)}`}))):Number.parseFloat(null==u||null===(o=u.minVariantPrice)||void 0===o?void 0:o.amount)<Number.parseFloat(null==u||null===(l=u.maxVariantPrice)||void 0===l?void 0:l.amount)?null!=X&&X.isProStaff()&&(0,f.A)(e.tags,!d)?`${Z((0,m.A)({price:u.minVariantPrice.amount,percentageDiscount:ee}))} - ${Z((0,m.A)({price:u.maxVariantPrice.amount,percentageDiscount:ee}))}`:`${Z(u.minVariantPrice.amount)} - ${Z(u.maxVariantPrice.amount)}`:e.variants&&d>s?a.createElement(a.Fragment,null,a.createElement("s",null,Z(d)),a.createElement("br",null),a.createElement(R,null,I(e=>
89e.productCommon.salePrice,{amount:Z(s)}))):Z(s)})():(()=>{var n,t,r,o,l,c,u,d,p,g,h,P,b,y,A,V,x;let C=e;null!=K&&null!==(n=K.storedDealer)&&void 0!==n&&n.isCOS&&(0,v.A)(e)?C=D(e,!0):null!=K&&null!==(t=K.storedDealer)&&void 0!==t&&t.isCOS||!(0,v.A)(e)||(C=D(e,!1));const E=null===(r=C.variants)||void 0===r?void 0:r.map(e=>{var n;return(0,s.A)({compareAtPrice:e.compareAtPrice,currentPrice:e.price,isProStaff:null!==(n=null==X?void 0:X.isProStaff())&&void 0!==n&&n,percentageDiscount:ee,productTags:C.tags})}),w=null==E?void 0:E.filter(e=>e.isApplied);if((null==w?void 0:w.length)>0&&w.length===E.length){const e=Math.min.apply(Math,(0,i.A)(w.map(e=>e.price))),n=Math.max.apply(Math,(0,i.A)(w.map(e=>e.price))),t=Math.min.apply(Math,(0,i.A)(w.map(e=>e.regularPrice))),r=Math.max.apply(Math,(0,i.A)(w.map(e=>e.regularPrice))),o=(e,n)=>e===n?Z(e):`${Z(e)} - ${Z(n)}`;return a.createElement(a.Fragment,null,a.createElement("s",null,o(t,r)),a.createElement("br",null),a.createElement(R,null,I(e=>e.productCommon.salePrice,{amount:o(e,n)})))}const $=(e=>{var n,t,i;const{minVariantPrice:a,maxVariantPrice:r}=null!==(n=e.priceRangeV2)&&void 0!==n?n:{};let o=null===(t=e.variants[0])||void 0===t?void 0:t.compareAtPrice,l=null===(i=e.variants[0])||void 0===i?void 0:i.compareAtPrice;return(null==a?void 0:a.amount)<(null==r?void 0:r.amount)&&o>
890&&e.variants.forEach(e=>{o>e.compareAtPrice&&(o=e.compareAtPrice),l<e.compareAtPrice&&(l=e.compareAtPrice)}),{minVariantPrice:{amount:o,currencyCode:"USD"},maxVariantPrice:{amount:l,currencyCode:"USD"}}})(C);return Number.parseFloat(null==$||null===(o=$.minVariantPrice)||void 0===o?void 0:o.amount)<Number.parseFloat(null==$||null===(l=$.maxVariantPrice)||void 0===l?void 0:l.amount)&&Number.parseFloat(null==$||null===(c=$.minVariantPrice)||void 0===c?void 0:c.amount)>(null===(u=e.priceRangeV2)||void 0===u||null===(d=u.minVariantPrice)||void 0===d?void 0:d.amount)?a.createElement(a.Fragment,null,a.createElement("s",null,Z($.minVariantPrice.amount)," -",Z($.maxVariantPrice.amount)),a.createElement("br",null),a.createElement(R,null,I(e=>e.productCommon.salePrice,{amount:`${Z(C.priceRangeV2.minVariantPrice.amount)} - ${Z(C.priceRangeV2.maxVariantPrice.amount)}`}))):(null===(p=C)||void 0===p||null===(g=p.priceRangeV2)||void 0===g||null===(h=g.minVariantPrice)||void 0===h?void 0:h.amount)<(null===(P=C)||void 0===P||null===(b=P.priceRangeV2)||void 0===b||null===(y=b.maxVariantPrice)||void 0===y?void 0:y.amount)?null!=X&&X.isProStaff()&&(0,f.A)(C.tags,!(null!==(S=C.variants[0])&&void 0!==S&&S.compareAtPrice))?`${Z((0,m.A)({price:C.priceRangeV2.minVariantPrice.amount,percentageDiscount:ee}))} - ${Z((0,m.A)({price:C.priceRangeV2.maxVariantPrice.amount,percentageDiscount:ee}))}`:`${Z(C.priceRangeV2.minVariantPrice.amount)} - ${Z(C.priceRangeV2.maxVariantPrice.amount)}`:C.variants&&(null===(A=C.variants[0])||void 0===A?void 0:A.compareAtPrice)>(null===(V=C.variants[0])||void 0===V?void 0:V.price)?a.createElement(a.Fragment,null,a.createElement("s",null,Z(null===(_=C.variants[0])||void 0===_?void 0:_.compareAtPrice)),a.createElement("br",null),a.createElement(R,null,I(e=>e.productCommon.salePrice,{amount:Z(null===(F=C.variants[0])||void 0===F?void 0:F.price)}))):C.price?null!=X&&X.isProStaff()&&(0,f.A)(C.tags,!(null!==(T=C.variants[0])&&void 0!==T&&T.price))?a.createElement(a.Fragment,null,a.createElement("span",{className:"pre-discount-price"},Z(C.price)),Z((0,m.A)({price:C.price,percentageDiscount:{}.GATSBY_PRO_STAFF_DISCOUNT_PERCENTAGE}))):`${Z(C.price)}`:`${Z(null===(x=C.variants[0])||void 0===x?void 0:x.price)}`;var S,_,F,T})()))}},82901:function(e,n,t){t.d(n,{G:function(){return c},H:function(){return l}});const i=e=>{const n="invisible-fence-brand";return!(!e||!n.includes(e))},a=()=>i("invisible-fence"),r=e=>"object"==typeof e&&null!==e?e.value:"string"==typeof e?e:void 0,o=e=>{var n,t,i,a,o,l,c;return r(null==e?void 0:e.globalSKU)||r(null==e||null===(n=e.shopifyProduct)||void 0===n?void 0:n.globalSKU)||(null==e||null===(t=e.shopifyProduct)||void 0===t||null===(i=t.metafields)||void 0===i||null===(a=i.find(e=>"globalsku"===e.name))||void 0===a?void 0:a.value)||(null==e||null===(o=e.store)||void 0===o||null===(l=o.metafields)||void 0===l||null===(c=l.find(e=>"globalsku"===e.name))||void 0===c?void 0:c.value)},l=(e,n)=>{if(!a())return o(e)||n||void 0},c=(e,n)=>{var t,i,r;if(a())return;const l=(null==n?void 0:n.sku)||(null==e||null===(t=e.shopifyProduct)||void 0===t||null===(i=t.variants)||void 0===i||null===(r=i[0])||void 0===r?void 0:r.sku)||void 0;return o(e)||l}}}]); 90//# sourceMappingURL=b076b10f217adea08bf20bca16f07b1bea8a1acc-51a6f058e9c078f94812.js.map
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.