1"use strict";(self.webpackChunknestseekers=self.webpackChunknestseekers||[]).push([["react_components_pages_ListingLocationPage_tsx"],{"./react/components/pages/ListingLocationPage.tsx"(e,t,n){n.r(t),n.d(t,{default:()=>M});var r=n("./node_modules/react/index.js"),a=n("./react/components/App/UserMenuContent.tsx"),l=n("./react/components/headers/ListingHeader.tsx"),s=n("./react/components/links/Breadcrumbs.tsx"),o=n("./node_modules/@radix-ui/react-icons/dist/react-icons.esm.js"),c=n("./node_modules/@react-google-maps/api/dist/esm.js"),i=n("./react/components/shadcn/ui/button.tsx"),u=n("./node_modules/classnames/index.js"),d=n.n(u),m=n("./react/components/listing/GoogleMapsAddress.tsx"),f=n("./node_modules/react-router-dom/esm/react-router-dom.js"),p=n("./react/routes/admin.ts"),g=n("./react/components/shadcn/ui/card.tsx"),b=n("./react/components/ui/image/ResponsiveImage.tsx");function y(e){var t=e.building,n=e.changed,a=e.remove;return r.createElement(g.Zp,{className:d()("relative",{"bg-yellow-100 dark:bg-sky-950 ":n})},r.createElement(g.aR,{className:"flex flex-row justify-between items-start"},r.createElement(g.ZB,null,"Building"),r.createElement("div",null,r.createElement(i.$,{onClick:a,className:"hover:bg-red-500 hover:text-white",variant:"ghost",size:"sm",title:"Remove listing from building"},r.createElement(o.MKb,{className:"h-4 w-4"})))),r.createElement(g.Wu,null,r.createElement("div",{className:"flex gap-5"},t.photo?r.createElement("div",{className:"align-top w-32"},r.createElement("a",{href:t.url},r.createElement(b.A,{src:t.photo,alt:t.name,height:96,className:"rounded-md"}))):null,r.createElement("div",{className:"align-top"},r.createElement("a",{href:t.url},r.createElement("h2",{className:"text-xl font-medium mb1"},t.name)))),r.createElement("div",null,r.createElement(v,{label:"Address",value:t.gAddress}),r.createElement(v,{label:"Street address",value:t.street_address}),r.createElement(v,{label:"City",value:t.city}),r.createElement(v,{label:"State",value:t.state}),r.createElement(v,{label:"Postal Code",value:t.zipcode}),r.createElement(v,{label:"Country",value:t.country}),r.createElement(v,{label:"Region",value:t.region?t.region.name:""})),r.createElement("div",{className:"mt-4"},r.createElement("div",{className:"mb-2 text-md font-medium"},"The listing address is determined by the Building."),r.createElement(f.N_,{to:(0,p.B)(p.w.BuildingLocation,{pk:String(t.pk)}),className:"flex items-center justify-center gap-2 w-full rounded-md bg-blue-600 hover:bg-blue-700 active:bg-blue-800 text-white font-semibold text-sm py-2.5 px-4 transition-colors shadow-sm"},"Edit Building Address",r.createElement("span",{className:"text-base leading-none"},"â")))))}var v=function(e){var t=e.label,n=e.value;return r.createElement("div",{className:"space-y-2"},r.createElement("div",{className:"flex"},r.createElement("label",{className:"text-sm w-32 mr-2 font-light p-1"},t),r.createElement("span",{className:d()("grow break-words text-sm font-semibold p-1",{})},String(null!=n?n:""))))},h=n("./react/components/listing/useAddressState.ts"),E=n("./react/components/listing/useGeocode.ts"),x=n("./react/components/listing/useListingAddressFields.ts"),N=n("./react/components/listing/useMapState.ts"),w=n("./react/api/staffAPI.ts");function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function j(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,l=[],s=!0,o=!1;try{for(n=n.call(e);!(s=(r=n.next()).done)&&(l.push(r.value),!t||l.length!==t);s=!0);}catch(e){o=!0,a=e}finally{try{s||null==n.return||n.return()}finally{if(o)throw a}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return O(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?O(e,t):void 0}}
1(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var A=n("./react/components/listing/AddressComponents.tsx"),k=n("./react/components/listing/SelectGecodeResult.tsx"),S=n("./react/components/shadcn/ui/radio-group.tsx"),C=n("./react/components/shadcn/ui/typography.tsx"),P=n("./react/components/ui/Info.tsx");function R(e){var t=e.buildings,n=e.selected,a=e.select;return r.createElement("div",{className:"p-4 space-y-4"},r.createElement(C.H4,null,"Buildings at Address"),r.createElement(P.A,null,"Multiple buildings exist in the database for this address. Please select the most recent and appropriate building."),r.createElement(S.z,{value:n?String(n):null,onValueChange:function(e){return a(parseInt(e))}},t.map(function(e){return r.createElement("div",{key:e.pk,onClick:function(){return a(e.pk)},className:d()("flex space-x-4 p-2 cursor-pointer",{"bg-slate-100 dark:bg-slate-800 rounded-lg":e.pk===n})},r.createElement("div",{className:"w-8 pt-4"},r.createElement(S.C,{value:String(e.pk),id:"building-".concat(e.pk)})),r.createElement("div",{className:"w-40"},r.createElement(b.A,{src:e.photo,alt:e.name,height:96,className:"rounded-md"})),r.createElement("div",null,r.createElement("div",null,r.createElement("label",{htmlFor:"building-".concat(e.pk),className:"dark:text-slate-100"},e.name)),r.createElement("div",{className:"text-sm dark:text-slate-300"},e.gAddress)))})))}var L={streetViewControl:!1};const I=function(e){var t,n,a,l,s=e.pk,u=e.className,f=function(e){var t,n,a=(0,w.q4H)(e),l=(0,h.A)(),s=l.address,o=l.updateAddress,c=j((0,r.useState)(),2),i=c[0],u=c[1];(0,r.useEffect)(function(){var e=null==a?void 0:a.data;e&&(o(e),u(e))},[null==a?void 0:a.data]);var d=j((0,r.useState)(!1),2),m=d[0],f=d[1],p=(0,r.useCallback)(function(t){(null==i?void 0:i.can_change)&&(f(!0),(0,w.JDq)(e,t).then(function(){null==a||a.refetch()}).catch(console.error).finally(function(){f(!1)}))},[i,e,o]),g=j((0,r.useState)(null),2),b=g[0],y=g[1],v={building:null==s?void 0:s.building,changed:(null==s||null===(t=s.building)||void 0===t?void 0:t.pk)!==(null==i||null===(n=i.building)||void 0===n?void 0:n.pk),selectBuilding:function(e){o(e?{building:null==b?void 0:b.find(function(t){return t.pk===e})}:{building:null})},buildings:b,removed:null===(null==s?void 0:s.building)&&(null==i?void 0:i.building)};(0,r.useEffect)(function(){s&&s.gAddress&&s.house_num&&s.street&&s.city&&s.state&&s.zipcode&&s.country?(0,w.jXX)({address:s.gAddress}).then(function(e){y(e)},console.error):y(null)},[s]);var O=(0,N.A)(s),A=O.isLoaded,k=O.onLoad,S=O.onUnmount,C=O.center,P=O.geocoder,R=(0,r.useCallback)(function(e){o({lat:e.latLng.lat(),lng:e.latLng.lng()})},[o]),L=(0,E.Ay)(P,o),I=L.geocodeResults,_=L.updateAddressFromResult,B=L.isGeocoding,M=(0,x.f)(s,o,i,P),D=M.addressComponentsProps,H=M.changed,U=M.reset,F=M.isValidating;return{address:s,addressComponentsProps:D,building:v,canChange:null==s?void 0:s.can_change,center:C,changed:H,cleanAddress:i,geocodeResults:I,isGeocoding:B,isLoaded:A&&!!s,isSaving:m,isValidating:F,onDrag:R,onLoad:k,onUnmount:S,reset:U,save:p,updateAddressFromResult:_}}(s),p=f.address,g=f.addressComponentsProps,b=f.building,v=f.canChange,O=f.center,S=f.changed,C=f.geocodeResults,I=f.isGeocoding,_=f.isLoaded,B=f.isSaving,M=f.isValidating,D=f.onDrag,H=f.onLoad,U=f.onUnmount,F=f.reset,G=f.save,T=f.updateAddressFromResult;if(!p||0===Object.keys(p).length)return null;var z=((null===(a=b.buildings)||void 0===a?void 0:a.length)||0)>1;return r.createElement("div",{className:d()("flex flex-col md:flex-row md:space-x-8 flex-wrap md:flex-nowrap",u)},r.createElement("div",{className:"basis-4/12 space-y-4"},p.building&&b.building&&r.createElement(y,{building:b.building,changed:b.changed,remove:function(){return b.selectBuilding(null)}}),C&&r.createElement(k.c,{results:C,select:T}),r.createElement("div",{className:"text-xs"},"Set full address using Google Maps:"),r.createElement(m.B,g.gAddress),r.createElement(A.v,{address:p,className:d()("p-1 rounded-md border border-dashed border-transparent",{"opacity-30":I,"pointer-events-none":I,"border-amber-500":S}),addressComponentsProps:g}),S&&r.createElement("div",{className:"pl-36 flex p-1 space-x-2"},r.createElement(i.$,{variant:"outline",onClick:F,disabled:B},"Reset"),r.createElement(i.$,{variant:"default",disabled:!S,onClick:function(){return G(p)}},"Save changes"," ",B&&r.createElement(o.jfu,{className:"animate-spin w-4 h-4 ml-2"})))),r.createElement("div",{className:"basis-8/12 space-y-4"},_&&r.createElement(c.u6,{mapContainerClassName:"w-full h-96",center:O,zoom:p?18:10,onLoad:H,onUnmount:U,options:L},r.createElement(c.X0,{position:O,draggable:null!=v?v:void 0,onDragEnd:D})),v&&r.createElement(P.A,null,"Move the marker to adjust where it is displayed on the map."),M&&r.createElement("div",null,"Validating changes..."),z&&r.createElement(r.Fragment,null,r.createElement("hr",{className:"dark:border-gray-700 my-4 border-gray-300"}),r.createElement(R,{buildings:null!==(t=b.buildings)&&void 0!==t?t:[],selected:null!==(n=null===(l=p.building)||void 0===l?void 0:l.pk)&&void 0!==n?n:null,
1select:b.selectBuilding}))))};var _=n("./node_modules/react-router/esm/react-router.js"),B=n("./react/components/PageHeader.tsx");const M=function(){var e=(0,_.g)().pk,t=parseInt(e,10),n=[{url:(0,p.B)(p.w.AdminHome),title:"home"},{url:(0,p.B)(p.w.Listings),title:"listings"}];return r.createElement(a.A,null,r.createElement(s.A,{items:n}),r.createElement("div",{className:"space-y-8"},r.createElement(l.A,{pk:t}),r.createElement(B.A,{documentTitle:"#".concat(e," Manage Location")},"Manage Location"),r.createElement(I,{pk:t})))}},"./react/components/shadcn/ui/card.tsx"(e,t,n){n.d(t,{BT:()=>y,Wu:()=>v,ZB:()=>b,Zp:()=>p,aR:()=>g,wL:()=>h});var r=n("./node_modules/react/index.js"),a=n("./react/utils/shadcn.ts");function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function s(e){if(Array.isArray(e))return e}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function c(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){o(e,t,n[t])})}return e}function u(e,t){if(null==e)return{};var n,r,a,l={};if("undefined"!=typeof Reflect&&Reflect.ownKeys){for(n=Reflect.ownKeys(e),a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}if(l=function(e,t){if(null==e)return{};var n,r,a={},l=Object.getOwnPropertyNames(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n]);return a}(e,t),Object.getOwnPropertySymbols)for(n=Object.getOwnPropertySymbols(e),a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}function d(e,t){return s(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,l=[],s=!0,o=!1;try{for(n=n.call(e);!(s=(r=n.next()).done)&&(l.push(r.value),!t||l.length!==t);s=!0);}catch(e){o=!0,a=e}finally{try{s||null==n.return||n.return()}finally{if(o)throw a}}return l}}(e,t)||f(e,t)||c()}function m(e){return s(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||f(e)||c()}function f(e,t){if(e){if("string"==typeof e)return l(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void 0}}var p=r.forwardRef(function(e,t){var n=m([e,t]),l=n[0],s=n.slice(1),o=l.className,c=u(l,["className"]),f=d(s,1)[0];return r.createElement("div",i({ref:f,className:(0,a.cn)("rounded-lg border bg-card text-card-foreground shadow",o)},c))});p.displayName="Card";var g=r.forwardRef(function(e,t){var n=m([e,t]),l=n[0],s=n.slice(1),o=l.className,c=u(l,["className"]),f=d(s,1)[0];return r.createElement("div",i({ref:f,className:(0,a.cn)("flex flex-col space-y-1.5 p-6",o)},c))});g.displayName="CardHeader";var b=r.forwardRef(function(e,t){var n=m([e,t]),l=n[0],s=n.slice(1),o=l.className,c=u(l,["className"]),f=d(s,1)[0];return r.createElement("h3",i({ref:f,className:(0,a.cn)("font-semibold leading-none tracking-tight",o)},c))});b.displayName="CardTitle";var y=r.forwardRef(function(e,t){var n=m([e,t]),l=n[0],s=n.slice(1),o=l.className,c=u(l,["className"]),f=d(s,1)[0];return r.createElement("p",i({ref:f,className:(0,a.cn)("text-sm text-muted-foreground",o)}
1,c))});y.displayName="CardDescription";var v=r.forwardRef(function(e,t){var n=m([e,t]),l=n[0],s=n.slice(1),o=l.className,c=u(l,["className"]),f=d(s,1)[0];return r.createElement("div",i({ref:f,className:(0,a.cn)("p-6 pt-0",o)},c))});v.displayName="CardContent";var h=r.forwardRef(function(e,t){var n=m([e,t]),l=n[0],s=n.slice(1),o=l.className,c=u(l,["className"]),f=d(s,1)[0];return r.createElement("div",i({ref:f,className:(0,a.cn)("flex items-center p-6 pt-0",o)},c))});h.displayName="CardFooter"},"./react/components/shadcn/ui/radio-group.tsx"(e,t,n){n.d(t,{C:()=>y,z:()=>b});var r=n("./node_modules/react/index.js"),a=n("./node_modules/@radix-ui/react-radio-group/dist/index.mjs"),l=n("./react/utils/shadcn.ts"),s=n("./node_modules/@radix-ui/react-icons/dist/react-icons.esm.js");function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function c(e){if(Array.isArray(e))return e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){i(e,t,n[t])})}return e}function m(e,t){if(null==e)return{};var n,r,a,l={};if("undefined"!=typeof Reflect&&Reflect.ownKeys){for(n=Reflect.ownKeys(e),a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}if(l=function(e,t){if(null==e)return{};var n,r,a={},l=Object.getOwnPropertyNames(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n]);return a}(e,t),Object.getOwnPropertySymbols)for(n=Object.getOwnPropertySymbols(e),a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}function f(e,t){return c(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,l=[],s=!0,o=!1;try{for(n=n.call(e);!(s=(r=n.next()).done)&&(l.push(r.value),!t||l.length!==t);s=!0);}catch(e){o=!0,a=e}finally{try{s||null==n.return||n.return()}finally{if(o)throw a}}return l}}(e,t)||g(e,t)||u()}function p(e){return c(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||g(e)||u()}function g(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}var b=r.forwardRef(function(e,t){var n,s,o=p([e,t]),c=o[0],i=o.slice(1),u=c.className,g=m(c,["className"]),b=f(i,1)[0];return r.createElement(a.bL,(n=d({className:(0,l.cn)("grid gap-2",u)},g),s=null!=(s={ref:b})?s:{},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(s)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(s)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(s,e))}),n))});b.displayName=a.bL.displayName;var y=r.forwardRef(function(e,t){var n=p([e,t]),o=n[0],c=n.slice(1),i=o.className,u=m(o,["className"]),g=f(c,1)[0];return r.createElement(a.q7,d({ref:g,className:(0,l.cn)("aspect-square h-4 w-4 rounded-full border border-white/90 text-white/90 shadow focus:outline-none focus-visible:ring-1 focus-visible:ring-white/50 disabled:cursor-not-allowed disabled:opacity-50",i)},u),r.createElement(a.C1,{className:(0,l.cn)("flex items-center justify-center text-white/90")},r.createElement(s.RiX,{className:"h-3.5 w-3.5"})))});y.displayName=a.q7.displayName},"./react/components/shadcn/ui/typography.tsx"(e,t,n){n.d(t,{Cy:()=>i,H3:()=>a,H4:()=>l,H5:()=>s,Oc:()=>u,P:()=>o,UL:()=>c});var r=n("./node_modules/react/index.js");function a(e){var t=e.children;
1return r.createElement("h3",{className:"scroll-m-20 text-2xl font-semibold tracking-tight"},t)}function l(e){var t=e.children;return r.createElement("h4",{className:"scroll-m-20 text-xl font-semibold tracking-tight"},t)}function s(e){var t=e.children;return r.createElement("h5",{className:"scroll-m-20 text-lg font-semibold tracking-tight"},t)}function o(e){var t=e.children;return r.createElement("p",{className:"leading-7 not-first:mt-6"},t)}function c(e){var t=e.children;return r.createElement("ul",{className:"my-6 ml-6 list-disc [&>li]:mt-2"},t)}function i(e){var t=e.children;return r.createElement("code",{className:"relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold"},t)}function u(e){var t=e.children;return r.createElement("small",{className:"text-sm font-medium leading-none"},t)}}}]);
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.