1/*! @version pwa-studio: 12.5.0, @magento/venia-ui: ~11.5.0, @magento/upward-security-headers: ~1.0.14, @magento/pwa-theme-venia: ~2.4.0, @magento/pwa-buildpack: ~11.5.3, @magento/peregrine: ~14.4.1, @magento/pagebuilder: ~9.3.2, @magento/eslint-config: ~1.5.0, @magento/babel-preset-peregrine: ~1.3.3, @apollo/client: ^3.6.7 */ 2(window.webpackJsonp=window.webpackJsonp||[]).push([[110],{"0fq2":function(e,t,n){"use strict" 3var a=n("17x9"),i=n("q1tI"),r=n.n(i),o=n("L/g/"),s=n("y1Xp"),c=n("t/pN"),l=n("dop8"),d={title:"storeLinks-title-0tN section-title-5Wl font-light text-black text-base text-left font-semibold lg_text-lg",body:"storeLinks-body-LSK section-root-jPo border-solid border-b border-gray-light py-4 md_py-5 w-full !static",linksList:"storeLinks-linksList-vVR first_mt-5",link:"storeLinks-link-OpE text-sm block lg_text-base"} 4const m=e=>{const{name:t,items:n,classes:a}=e,i=Object(s.a)(d,a) 5n.sort((e,t)=>e.city.localeCompare(t.city)) 6const m=n.map(e=>r.a.createElement("div",{key:e.id,className:i.linksList},r.a.createElement(l.a,{to:Object(o.a)("/".concat(e.url_key)),className:i.link},e.city,", ",e.region_code))) 7return r.a.createElement(c.a,{id:t,title:t,classes:{root:i.body,title:i.title}},m)} 8m.propTypes={name:a.string,items:Object(a.arrayOf)(Object(a.shape)({id:a.number,city:a.string,region_code:a.string,url_key:a.string})),classes:Object(a.shape)({root:a.string,linksList:a.string,link:a.string,title:a.string})} 9t.a=m},"6Y8P":function(e,t,n){"use strict" 10var a,i,r=n("17x9"),o=n("q1tI"),s=n.n(o),c=n("y1Xp"),l=n("bggx"),d=n("L/g/"),m=n("t/pN"),g=n("dop8"),u="sitemapLinks-sitemapLinkTitle-av3 section-title-5Wl font-light text-black text-base text-left font-semibold lg_text-lg",p="sitemapLinks-sitemapLinkBody-14j section-root-jPo border-solid border-b border-gray-light py-4 md_py-5 w-full",b="sitemapLinks-subSitemapLinkTitle-6ly text-sm mt-3.75 lg_text-base lg_mt-5",y="sitemapLinks-subSubSitemapLink-XrX text-sm block lg_text-base",_=n("+TN3"),f=n("VkAN"),h=n.n(f),k=n("UYTu") 11const O=Object(k.a)(a||(a=h()(["\n query GetStoreConfigForCategoryTree {\n # eslint-disable-next-line @graphql-eslint/require-id-when-available\n storeConfig {\n store_code\n category_url_suffix\n }\n }\n"]))) 12var v={getNavigationMenuQuery:Object(k.a)(i||(i=h()(["\n query GetNavigationMenu($id: String!) {\n categories(filters: { category_uid: { in: [$id] } }) {\n # eslint-disable-next-line @graphql-eslint/require-id-when-available\n items {\n uid\n name\n # eslint-disable-next-line @graphql-eslint/require-id-when-available\n children {\n children_count\n uid\n include_in_menu\n name\n position\n url_path\n url_suffix\n }\n children_count\n include_in_menu\n url_path\n }\n }\n }\n"]))),getCategoryUrlSuffixQuery:O} 13const x=e=>{let{uid:t,name:n,items:a}=e 14const{categoryUrlSuffix:i}=(()=>{const{getCategoryUrlSuffixQuery:e}=v,{data:t}=Object(_.e)(e) 15return{categoryUrlSuffix:Object(o.useMemo)(()=>{if(t){var e 16const n=null==t?void 0:null===(e=t.storeConfig)||void 0===e?void 0:e.category_url_suffix 17return n||""}},[t])}})(),r=a.map(e=>s.a.createElement("div",{key:e.uid},s.a.createElement("h3",{className:b},s.a.createElement(g.a,{to:Object(d.a)("/".concat(e.url_path).concat(i))},e.name)),e.children.map(e=>s.a.createElement(g.a,{key:e.uid,to:Object(d.a)("/".concat(e.url_path).concat(i)),className:y},e.name)))) 18return s.a.createElement(m.a,{id:t,title:n,classes:{root:p,title:u}},r)} 19x.propTypes={uid:r.string,name:r.string,items:Object(r.arrayOf)(Object(r.shape)({uid:r.string,name:r.string,url_path:r.string}))} 20var E=x,j=n("vlXw") 21const S=e=>{const t=Object(c.a)(j.a,e.classes),{categories:n}=e 22return s.a.createElement(l.a,{canOpenMultiple:!0},s.a.createElement("div",{className:t.container},n&&n.map(e=>s.a.createElement("div",{key:e.uid,className:t.categoryBlock},s.a.createElement(E,{uid:e.uid,name:e.name,items:e.children})))))} 23S.propTypes={categories:r.array,classes:Object(r.shape)({container:r.string,categoryBlock:r.string})} 24t.a=S},ASDC:function(e,t,n){"use strict" 25n.r(t),n.d(t,"default",function(){return u}) 26var a=n("q1tI"),i=n.n(a),r=n("CLF5"),o=n("bggx"),s=n("rLZa"),c=n("0fq2"),l=n("6Y8P"),d=n("KYz/"),m=n("vlXw"),g=n("ggdJ") 27var u=()=>{const{loadingCategoryItems:e,loadingStoreList:t,error:n,pageData:a}=Object(g.a)(),{storeListData:u,sitemapRootItems:p}=a 28return n?i.a.createElement("h1",{className:m.a.errorTitle},i.a.createElement(r.a,{id:"sitemapPage.errorTryAgain",defaultMessage:"Something went wrong. Please refresh and try again."})):i.a.createElement(i.a.Fragment,null,i.a.createElement(s.e,null,"Site Map"),i.a.createElement(s.b,{name:"description",content:"Links to all HardwareStore.com website pages to make it easy to access what we offer"}),i.a.createElement("div",{className:m.a.root},i.a.createElement("h1",{className:m.a.title},"Category Index"),e||!p?i.a.createElement(d.a,null):i.a.createElement(l.a,{categories:p})),i.a.createElement("div",{className:m.a.root},i.a.createElement("h2",{className:m.a.title},"Store Index"),t?i.a.createElement(d.a,{itemsCount:8}):i.a.createElement(o.a,{canOpenMultiple:!0},i.a.createElement("div",{className:m.a.container},u&&u.map(e=>i.a.createElement("div",{key:e[0],className:m.a.categoryBlock},i.a.createElement(c.a,{name:e[0],items:e[1]})))))))}},bggx:function(e,t,n){"use strict" 29n.d(t,"b",function(){return l}) 30var a=n("q1tI"),i=n.n(a) 31var r=n("y1Xp"),o=n("vLCg") 32const s=Object(a.createContext)(),{Provider:c}=s 33t.a=(e=>
33{const{canOpenMultiple:t=!0,children:n}=e,s=(e=>{const{canOpenMultiple:t,children:n}=e,[i,r]=Object(a.useState)(new Set([])),o=Object(a.useCallback)(e=>{r(n=>{const a=new Set(n) 34return n.has(e)?a.delete(e):(t||a.clear(),a.add(e)),a})},[t,r]) 35return Object(a.useEffect)(()=>{const e=new Set([]) 36let i 37a.Children.toArray(n).forEach(t=>{if((e=>e.props.isOpen)(t)){const{id:n}=t.props 38e.add(n),i||(i=n)}}),!t&&e.size>1&&(e.clear(),e.add(i)),r(e)},[]),{handleSectionToggle:o,openSectionIds:i}})({canOpenMultiple:t,children:n}),{handleSectionToggle:l,openSectionIds:d}=s,m={handleSectionToggle:l,openSectionIds:d},g=Object(r.a)(o.a,e.classes) 39return i.a.createElement(c,{value:m},i.a.createElement("div",{className:g.root},n))}) 40const l=()=>Object(a.useContext)(s)},ggdJ:function(e,t,n){"use strict" 41n.d(t,"a",function(){return u}) 42var a,i,r=n("Lm/n"),o=n("+TN3"),s=n("q1tI"),c=n("9r/0"),l=n("VkAN"),d=n.n(l),m=n("UYTu") 43var g={queries:{getSitemapCategoryItems:Object(m.a)(a||(a=d()(["\n query getSitemapItems($id: String!) {\n getNavigationMenu(id: $id) {\n uid\n children {\n uid\n name\n children {\n uid\n name\n url_path\n children {\n uid\n name\n url_path\n }\n }\n }\n }\n }\n"]))),getStoreListQuery:Object(m.a)(i||(i=d()(["\n query GetStoreList {\n pickupStoreList {\n id\n city\n region_name\n region_code\n url_key\n }\n }\n"])))}} 44const u=()=>{const{queries:{getSitemapCategoryItems:e,getStoreListQuery:t}}=g,[n,{loading:a,error:i,data:l,called:d}]=Object(r.a)(e,{fetchPolicy:"cache-and-network",nextFetchPolicy:"cache-first"}),{loading:m,error:u,data:p}=Object(o.e)(t),{storeConfig:b}=Object(c.a)({fields:["root_category_uid"]}) 45return Object(s.useEffect)(()=>{!d&&b&&n({variables:{id:b.root_category_uid}})},[d,b,n]),{loadingCategoryItems:a,loadingStoreList:m,error:i||u,pageData:Object(s.useMemo)(()=>{const e={} 46if(l&&(e.sitemapRootItems=l.getNavigationMenu.children),p){const t={} 47p.pickupStoreList.slice().sort((e,t)=>e.region_name.localeCompare(t.region_name)).forEach(e=>{t[e.region_name]=t[e.region_name]?[...t[e.region_name],e]:[e]}),e.storeListData=Object.entries(t)}return e},[l,p])}}},"t/pN":function(e,t,n){"use strict" 48var a=n("pVnL"),i=n.n(a),r=n("QILm"),o=n.n(r),s=n("TSYQ"),c=n.n(s),l=n("17x9"),d=n("q1tI"),m=n.n(d),g=n("y1Xp"),u=n("bggx"),p=n("DNTo"),b=n("Y+L1"),y={root:"section-root-jPo border-solid border-b border-gray-light py-4 md_py-5",contents_container:"section-contents_container-ejY pt-0",contents_container_closed:"section-contents_container_closed-xmF section-contents_container-ejY pt-0 hidden",title:"section-title-5Wl font-light",title_container:"section-title_container-WWG cursor-pointer block w-full m-0",title_wrapper:"section-title_wrapper-n4Z align-center flex gap-3 py-0",open:"section-open-4ct !border-b-green relative",iconClose:"section-iconClose-qwf text-black duration-500 -z-1",iconOpen:"section-iconOpen-P7t text-black text-opacity-40 -rotate-180 transition-transform duration-300 -z-1"} 49const _=["children","id","title","handleClick"],f=e=>{const{children:t,id:n,title:a,handleClick:r}=e,s=o()(e,_),l=Object(g.a)(y,e.classes) 50delete s.isOpen 51const{handleSectionToggle:f,openSectionIds:h}=Object(u.b)(),k=Object(d.useCallback)(()=>{f(n),r&&r(n)},[r,f,n]),O=h.has(n),v=O?l.contents_container:l.contents_container_closed 52return m.a.createElement("div",i()({className:c()([O&&l.open,l.root])},s),m.a.createElement("button",{className:l.title_container,onClick:k,type:"button"},m.a.createElement("span",{className:l.title_wrapper},m.a.createElement("span",{className:l.title},a),m.a.createElement(p.a,{src:b.a,size:24,classes:{icon:O?l.iconOpen:l.iconClose}}))),m.a.createElement("div",{className:v},t))} 53f.propTypes={children:l.node,id:l.string.isRequired,title:l.node||l.string,handleClick:l.func,classes:Object(l.shape)({root:l.string,title_container:l.string,title_wrapper:l.string,title:l.string,contents_container:l.string,contents_container_
53closed:l.string})} 54t.a=m.a.memo(f)},vLCg:function(e,t,n){"use strict" 55t.a={root:"accordion-root-vVq border-none w-full"}}}])
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.