{"version":3,"file":"js/8155-ded91cb0d66bfac3eb64.chunk.js","mappings":"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","sources":["webpack://sniffspot/./frontend/src/actions/search-filters.actions.js","webpack://sniffspot/./frontend/src/actions/spot.actions.js","webpack://sniffspot/./frontend/src/consts/search-filter.const.js","webpack://sniffspot/./frontend/src/pages/listings/utils.js"],"sourcesContent":["import { gql } from '@apollo/client';\n\nexport const CHANGE_SEARCH_FILTERS = 'CHANGE_SEARCH_FILTERS';\nexport const RESET_SEARCH_FILTERS = 'RESET_SEARCH_FILTERS';\nexport const SET_SEARCH_FILTERS_COUNT = 'SET_SEARCH_FILTERS_COUNT';\nexport const SET_SEARCH_FILTERS_REFRESH = 'SET_SEARCH_FILTERS_REFRESH';\n\nexport const saveFilters =\n (filters) =>\n (dispatch, _getState, { apolloClient }) => {\n const filtersSpot = JSON.stringify(filters).replace(/\"/g, '\\\\\"');\n\n return apolloClient\n .mutate({\n mutation: gql`\n mutation {\n trackEvent(name: \"Search filter\" properties:\"${filtersSpot}\")\n }\n `,\n })\n .catch((err) => {\n console.error(err);\n });\n };\n\nexport const setSearchFilters = (value) => (dispatch) => {\n dispatch({ type: CHANGE_SEARCH_FILTERS, value });\n};\n\nexport const resetSearchFilters = () => (dispatch) => {\n dispatch({ type: RESET_SEARCH_FILTERS });\n};\n\nexport const setSearchFiltersCount = (value) => (dispatch) => {\n dispatch({ type: SET_SEARCH_FILTERS_COUNT, value });\n};\n\nexport const setSearchFiltersRefresh = (value) => (dispatch) => {\n dispatch({ type: SET_SEARCH_FILTERS_REFRESH, value });\n};\n","// TODO Remove. spot-list.actions.js is new version.\nimport AppolloClient from 'apollo-boost';\nimport { createUploadLink } from 'apollo-upload-client';\nimport { gql } from '@apollo/client';\nimport { apiDomain, COOKIE_MODE } from '../consts/env.consts';\nimport { SPOT_UPDATE } from '../graphql/spot.mutations';\nimport { SPOT_INFO_LISTING_QUERY, SPOT_REVIEWS_DATA, SPOTS_PAGED_WITH_BOX_QUERY } from '../graphql/spots.queries';\nimport { QUERY_USER_DETAILS } from '../graphql/user-queries';\nimport { SPOT_INFO_QUERY } from '../graphql/spots.queries';\nimport { SPOT_GRAPHQL_ERROR } from './spot.error';\nimport { REVIEW_FRAGMENT } from '../graphql/review-fragments';\nimport { SET_USER_LOCATION } from './user.actions';\nimport { getSearchFiltersForServer } from '../pages/listings/utils';\nimport { SET_SEARCH_FILTERS_REFRESH } from './search-filters.actions';\nimport { setUserDetails } from './user.actions';\n\nexport const SET_SPOT_DATA = 'SET_SPOT_DATA';\nexport const SET_MAP_DATA = 'SET_MAP_DATA';\nexport const SET_SPOTS_LIST = 'SET_SPOTS_LIST';\nexport const SET_LOADING = 'SET_LOADING';\nexport const SET_SPOTS_LIST_SUCCESS = 'SET_SPOTS_LIST_SUCCESS';\nexport const SET_SPOTS_LIST_ERROR = 'SET_SPOTS_LIST_ERROR';\nexport const SET_FILTERED_SPOTS = 'SET_FILTERED_SPOTS';\nexport const ADD_REVIEWS_TO_LIST = 'ADD_REVIEWS_TO_LIST';\nexport const GET_SPOT_INFO = 'GET_SPOT_INFO';\nexport const GET_SPOT_INFO_SUCCESS = 'GET_SPOT_INFO_SUCCESS';\nexport const GET_SPOT_INFO_ERROR = 'GET_SPOT_INFO_ERROR';\nexport const CLEAR_DATA = 'CLEAR_DATA';\nexport const GET_MORE_COMMENTS = 'GET_MORE_COMMENTS';\nexport const GET_MORE_COMMENTS_SUCCESS = 'GET_MORE_COMMENTS_SUCCESS';\nexport const GET_MORE_COMMENTS_ERROR = 'GET_MORE_COMMENTS_ERROR';\nexport const SET_ACTIVE_LISTINGS_ITEM = 'SET_ACTIVE_LISTINGS_ITEM';\nexport const SET_INACTIVE_LISTINGS_ITEM = 'SET_INACTIVE_LISTINGS_ITEM';\nexport const SUBSCRIBE_FOR_UPDATE = 'SUBSCRIBE_FOR_UPDATE';\nexport const SUBSCRIBE_FOR_UPDATE_SUCCESS = 'SUBSCRIBE_FOR_UPDATE_SUCCESS';\nexport const SUBSCRIBE_FOR_UPDATE_ERROR = 'SUBSCRIBE_FOR_UPDATE_ERROR';\nexport const UPDATE_SPOT = 'UPDATE_SPOT';\nexport const UPDATE_SPOT_SUCCESS = 'UPDATE_SPOT_SUCCESS';\nexport const UPDATE_SPOT_ERROR = 'UPDATE_SPOT_ERROR';\nexport const UPDATE_PAGINATION_METADATA = 'UPDATE_PAGINATION_METADATA';\nexport const SET_CURRENT_PAGE = 'SET_CURRENT_PAGE';\nexport const SET_SPOTS_LIST_METADATA = 'SET_SPOTS_LIST_METADATA';\nexport const SET_SPOTS_LIST_LOADING = 'SET_SPOTS_LIST_LOADING';\nexport const SET_OTHER_SPOTS_LIST = 'SET_OTHER_SPOTS_LIST';\nexport const SET_SPOT_REVIEWS_DATA = 'SET_SPOT_REVIEWS_DATA';\n\nexport const getSpotsListBoxMobile = ({ center, bounds, filters, force = false, forceCenter }) => {\n return (dispatch, getState, { apolloClient }) => {\n const state = getState();\n if (!center && !bounds && state.map.doNotLoadSpots) {\n return Promise.resolve();\n } else {\n const requestTs = Date.now();\n dispatch({ type: SET_SPOTS_LIST, requestTs });\n\n let reqCenter = center || { lat: state.map.center?.lat, lng: state.map.center?.lng };\n let reqBounds = bounds || state.map.bounds;\n\n if (bounds && bounds.ne.lat !== 0) {\n reqCenter = undefined;\n }\n\n if (!bounds && state.map.bounds.ne.lat === 0 && state.map.bounds.sw.lat === 0) {\n reqBounds = undefined;\n }\n\n if (forceCenter) {\n reqCenter = forceCenter;\n reqBounds = undefined;\n }\n\n return apolloClient\n .query({\n query: SPOTS_PAGED_WITH_BOX_QUERY,\n variables: {\n center: forceCenter ? reqCenter : force ? undefined : reqCenter,\n bounds: !center ? reqBounds : undefined,\n filtersNew: filters || getSearchFiltersForServer(state.searchFilters.filters),\n },\n })\n .then((resp) => {\n dispatch({ type: SET_SPOTS_LIST_METADATA, value: resp.data.spotsPagedWithBox.spots.metadata });\n const lastSearch = { center, bounds, filters, force, forceCenter };\n const spots = resp.data.spotsPagedWithBox.spots.collection;\n\n if (resp.data.spotsPagedWithBox.box.center.lat && resp.data.spotsPagedWithBox.box.center.lng) {\n reqCenter = {\n lat: resp.data.spotsPagedWithBox.box.center.lat,\n lng: resp.data.spotsPagedWithBox.box.center.lng,\n };\n }\n\n dispatch({ type: SET_SEARCH_FILTERS_REFRESH, value: false });\n dispatch({ type: SET_MAP_DATA, value: { center: reqCenter, lastSearch } });\n dispatch({ type: SET_SPOTS_LIST_SUCCESS, data: spots, requestTs });\n\n if (force) {\n if (forceCenter) {\n dispatch({ type: SET_MAP_DATA, value: { isCalcZoom: true, listingSpots: spots } });\n } else {\n dispatch({ type: SET_USER_LOCATION, value: { location: reqCenter } });\n }\n }\n return spots;\n })\n .catch((err) => {\n dispatch({ type: SET_SPOTS_LIST_ERROR, data: err, requestTs });\n return [];\n });\n }\n };\n};\n\nexport const getSpotInfo = (spotId) => {\n return (dispatch, getState, { apolloClient }) => {\n dispatch({ type: GET_SPOT_INFO });\n\n return apolloClient\n .query({\n query: SPOT_INFO_QUERY,\n variables: {\n id: spotId,\n },\n })\n .then((resp) => {\n dispatch({ type: GET_SPOT_INFO_SUCCESS });\n dispatch({\n type: SET_SPOT_DATA,\n data: resp.data.spot,\n });\n return resp;\n })\n .catch((err) => {\n console.error(err);\n dispatch({ type: GET_SPOT_INFO_ERROR });\n dispatch({\n type: SET_SPOTS_LIST,\n data: [],\n });\n return {};\n });\n };\n};\n\nexport const getSpotInfoListing = (spotId) => {\n return (dispatch, getState, { apolloClient }) => {\n dispatch({ type: GET_SPOT_INFO });\n\n return apolloClient\n .query({\n query: SPOT_INFO_LISTING_QUERY,\n variables: {\n id: spotId,\n },\n })\n .then((resp) => {\n dispatch({ type: GET_SPOT_INFO_SUCCESS });\n dispatch({\n type: SET_SPOT_DATA,\n data: resp.data.spot,\n });\n return resp;\n })\n .catch((err) => {\n console.error(err);\n dispatch({ type: GET_SPOT_INFO_ERROR });\n dispatch({\n type: SET_SPOTS_LIST,\n data: [],\n });\n return {};\n });\n };\n};\n\nexport const getSpotReviewsData = (variables) => {\n return (dispatch, getState, { apolloClient }) => {\n return apolloClient\n .query({ query: SPOT_REVIEWS_DATA, variables })\n .then((resp) => {\n dispatch({ type: SET_SPOT_REVIEWS_DATA, data: resp.data.spot.reviews });\n return resp;\n })\n .catch((err) => {\n console.error(err);\n return {};\n });\n };\n};\n\nexport const getSpotShortInfo = (spotId) => {\n return (dispatch, getState, { apolloClient }) => {\n dispatch({ type: GET_SPOT_INFO });\n\n return apolloClient\n .query({\n query: SPOT_INFO_QUERY,\n variables: {\n id: spotId,\n },\n })\n .then((resp) => {\n dispatch({ type: GET_SPOT_INFO_SUCCESS });\n dispatch({\n type: SET_SPOT_DATA,\n data: resp.data.spot,\n });\n return resp;\n })\n .catch((err) => {\n console.error(err);\n dispatch({ type: GET_SPOT_INFO_ERROR });\n dispatch({\n type: SET_SPOTS_LIST,\n data: [],\n });\n return {};\n });\n };\n};\n\nexport const getMoreComments = (dispatch, spotId, skip, sortBy, sortOrder) => {\n dispatch({ type: GET_MORE_COMMENTS });\n new AppolloClient({ uri: `${apiDomain}/graphql` })\n .query({\n query: gql`{\n spot(id: ${spotId}) {\n id\n reviews(skip: ${skip}, first: 5, sortBy: ${sortBy}, sortOrder: ${sortOrder}) {\n ...Review\n }\n }\n }\n ${REVIEW_FRAGMENT}`,\n })\n .then((resp) => {\n dispatch({ type: GET_MORE_COMMENTS_SUCCESS });\n dispatch({ type: ADD_REVIEWS_TO_LIST, data: resp.data.spot.reviews });\n })\n .catch((err) => {\n dispatch({ type: GET_MORE_COMMENTS_ERROR });\n console.warn(err);\n });\n};\n\nexport const subscribeForUpdates = (dispatch, email) => {\n dispatch({ type: SUBSCRIBE_FOR_UPDATE });\n new AppolloClient({ uri: `${apiDomain}/graphql` })\n .mutate({\n mutation: gql`\n mutation {\n subscribe(email: \"${email}\")\n }`,\n })\n .then((resp) => {\n if (resp.data.subscribe) {\n dispatch({ type: SUBSCRIBE_FOR_UPDATE_SUCCESS });\n } else {\n dispatch({ type: SUBSCRIBE_FOR_UPDATE_ERROR });\n }\n })\n .catch((err) => {\n console.warn('Subscribe error', err);\n dispatch({ type: SUBSCRIBE_FOR_UPDATE_ERROR });\n });\n};\n\nexport const updateSpot = (spot) => {\n return (dispatch, getState, { apolloClient }) => {\n const stateSpot = getState().spot;\n\n if (stateSpot === spot) {\n dispatch({ type: UPDATE_SPOT_SUCCESS });\n return;\n }\n\n const s = { id: stateSpot.id };\n\n Object.keys(stateSpot).forEach((key) => {\n if (stateSpot[key] !== spot[key]) {\n s[key] = spot[key];\n if (['enclosureType', 'dogsPresent', 'domesticAnimalsPresent', 'peoplePresent'].includes(key)) {\n s[key] = s[key] == null ? null : s[key].toLowerCase();\n }\n\n if (key == 'maximumDogsAllowed' || key == 'reservationDelayTime') {\n s[key] = parseInt(spot[key]);\n }\n\n if (key == 'photos') {\n /* eslint-disable no-unused-vars */\n s.photos = spot.photos.map(({ __typename, imageAws, file, orientation, status, warning, details, ...rest }) => rest);\n /* eslint-enable no-unused-vars */\n }\n\n if (['dogsAmenities', 'essentialAmenities', 'peopleAmenities', 'venueAmenities'].includes(key)) {\n s[key] = spot[key] && spot[key].map((amenities) => amenities.name);\n }\n }\n });\n\n if (spot.publishType) {\n s.publishType = spot.publishType;\n }\n\n dispatch({ type: UPDATE_SPOT });\n\n apolloClient\n .mutate({\n link: new createUploadLink({\n credentials: COOKIE_MODE,\n uri: `${apiDomain}/graphql`,\n }),\n variables: s,\n mutation: SPOT_UPDATE,\n update: (proxy, { data: { updateSpot } }) => {\n const spot = updateSpot.spot;\n const data = proxy.readQuery({ query: QUERY_USER_DETAILS });\n const userSpots = data.me.spots.filter((s) => s.id !== spot.id);\n // eslint-disable-next-line no-undef\n const newData = structuredClone(data);\n newData.me.spots = [...userSpots, spot];\n\n proxy.writeQuery({ query: QUERY_USER_DETAILS, data: newData });\n dispatch(setUserDetails(newData.me));\n },\n })\n .then((resp) => {\n dispatch({ type: SET_SPOT_DATA, data: resp.data.updateSpot.spot });\n if (resp.data.updateSpot.errors && resp.data.updateSpot.errors.length) {\n dispatch({ type: UPDATE_SPOT_ERROR });\n dispatch({ type: SPOT_GRAPHQL_ERROR, error: resp.data.updateSpot.errors });\n } else {\n dispatch({ type: UPDATE_SPOT_SUCCESS });\n }\n })\n .catch((error) => {\n console.warn('error', error);\n dispatch({ type: UPDATE_SPOT_ERROR });\n });\n };\n};\n","import { MAX_DOGS } from './spot.consts';\n\nexport const SF_FENCE_OPTIONS = [\n {\n value: undefined,\n label: 'Any height',\n },\n {\n value: 'FT_3',\n label: '3+ ft',\n },\n {\n value: 'FT_4',\n label: '4+ ft',\n },\n {\n value: 'FT_5',\n label: '5+ ft',\n },\n {\n value: 'FT_6_PLUS',\n label: '6+ ft',\n },\n];\n\nexport const SF_SIZE_OPTIONS = [\n {\n value: 0.25,\n label: '0.25+ acres',\n },\n {\n value: 0.5,\n label: '0.5+ acres',\n },\n {\n value: 1,\n label: '1+ acre',\n },\n {\n value: 2,\n label: '2+ acres',\n },\n {\n value: 5,\n label: '5+ acres',\n },\n {\n value: 10,\n label: '10+ acres',\n },\n];\n\nexport const SF_DISTANCE_OPTIONS = [\n {\n value: 0.5,\n label: 'Less than 0.5 mi',\n },\n {\n value: 1,\n label: 'Less than 1 mi',\n },\n {\n value: 5,\n label: 'Less than 5 mi',\n },\n {\n value: 10,\n label: 'Less than 10 mi',\n },\n {\n value: 20,\n label: 'Less than 20 mi',\n },\n {\n value: 50,\n label: 'Less than 50 mi',\n },\n];\n\nexport const SF_AVAILABILITY_OPTIONS = [\n {\n value: null,\n label: 'Anytime',\n },\n {\n value: 'TODAY',\n label: 'Today',\n },\n {\n value: 'TOMORROW',\n label: 'Tomorrow',\n },\n {\n value: 'THISWEEKEND',\n label: 'This weekend',\n },\n];\n\nconst tempMaxDogs = [];\n\nfor (let i = 0; i < MAX_DOGS; i++) {\n tempMaxDogs.push({\n value: i + 1,\n label: `${i + 1} dog${i > 0 ? 's' : ''}`,\n });\n}\n\nexport const SF_MAX_DOGS_OPTIONS = [\n {\n value: undefined,\n label: 'Any',\n },\n ...tempMaxDogs,\n];\n\nexport const SF_SORT_BY_OPTIONS = [\n {\n value: undefined,\n label: 'Relevance',\n },\n {\n value: 'DISTANCE',\n label: 'Distance',\n },\n];\n\nexport const SF_REVIEW_RATING_OPTIONS = [\n {\n value: 0.0001,\n label: 'Any rating',\n },\n {\n value: 4,\n label: '4.0+',\n },\n {\n value: 4.5,\n label: '4.5+',\n },\n {\n value: 4.8,\n label: '4.8+',\n },\n];\n\nexport const SF_ADVANCE_NOTICE_OPTIONS = [\n {\n value: 6,\n label: '6 hours or less',\n },\n {\n value: 2,\n label: '2 hours or less',\n },\n {\n value: 0.0001,\n label: 'None',\n },\n];\n","import { SF_FENCE_OPTIONS } from '../../consts/search-filter.const';\n\nexport function getFiltersForServer(filters) {\n if (!filters) {\n return {};\n }\n\n let tmp = {};\n\n if (filters.availability && filters.availability.startDate) {\n tmp = { ...filters.availability };\n }\n\n tmp.minimumSize = filters.size.min || undefined;\n tmp.maximumSize = filters.size.max || undefined;\n tmp.reviewRating = filters.reviewRating || undefined;\n tmp.advanceNotice = filters.advanceNotice || undefined;\n tmp.maximumPrice = filters.price || undefined;\n tmp.enclosureType = filters.enclosureType || undefined;\n tmp.fenceHeight = filters.fenceHeight || undefined;\n tmp.dogsPresent = filters.dogsPresent ? undefined : 'NO';\n tmp.peoplePresent = filters.peoplePresent ? undefined : 'NO';\n tmp.domesticAnimalsPresent = filters.domesticAnimalsPresent ? undefined : 'NO';\n tmp.privateEntry = filters.privateEntry ? 'YES' : undefined;\n tmp.tags = filters.tags?.length ? filters.tags : undefined;\n\n return tmp;\n}\n\nexport function getSearchFiltersForServer(filters) {\n if (!filters) {\n return {};\n }\n\n let tmp = {};\n tmp.availableDates = filters.availableDates || undefined;\n tmp.availableTimes = filters.availableTimes || undefined;\n tmp.enclosureType = filters.enclosureType || undefined;\n tmp.fenceHeight = filters.fencing || SF_FENCE_OPTIONS[0].value || undefined;\n tmp.minimumSize = filters.minimumSize || undefined;\n tmp.reviewRating = filters.reviewRating || undefined;\n tmp.advanceNotice = filters.advanceNotice || undefined;\n tmp.distance = filters.distance || undefined;\n tmp.dogsPresent = filters.dogsPresent ? 'NO' : undefined;\n tmp.peoplePresent = filters.peoplePresent ? 'NO' : undefined;\n tmp.domesticAnimalsPresent = filters.domesticAnimalsPresent ? 'NO' : undefined;\n tmp.topSpots = filters.topSpots || undefined;\n tmp.newSpots = filters.newSpots || undefined;\n tmp.cleanerSpots = filters.cleanerSpots || undefined;\n tmp.sniffpassDiscount = filters.sniffpassDiscount || undefined;\n tmp.amenities = filters.amenities?.length > 0 ? filters.amenities : undefined;\n tmp.maximumDogsAllowed = filters.maximumDogsAllowed || undefined;\n tmp.minimumPrice = filters.minimumPrice || undefined;\n tmp.maximumPrice = filters.maximumPrice || undefined;\n tmp.sortBy = filters.sortBy || undefined;\n tmp.showPublicSpots = filters.showPublicSpots || undefined;\n tmp.showPrivateSpots = filters.showPrivateSpots || undefined;\n\n return tmp;\n}\n"],"names":["CHANGE_SEARCH_FILTERS","RESET_SEARCH_FILTERS","SET_SEARCH_FILTERS_COUNT","SET_SEARCH_FILTERS_REFRESH","setSearchFilters","value","dispatch","type","resetSearchFilters","setSearchFiltersCount","setSearchFiltersRefresh","SET_SPOT_DATA","SET_MAP_DATA","SET_SPOTS_LIST","SET_LOADING","SET_SPOTS_LIST_SUCCESS","SET_SPOTS_LIST_ERROR","SET_FILTERED_SPOTS","ADD_REVIEWS_TO_LIST","GET_SPOT_INFO","GET_SPOT_INFO_SUCCESS","GET_SPOT_INFO_ERROR","CLEAR_DATA","GET_MORE_COMMENTS","GET_MORE_COMMENTS_SUCCESS","GET_MORE_COMMENTS_ERROR","SET_ACTIVE_LISTINGS_ITEM","SET_INACTIVE_LISTINGS_ITEM","SUBSCRIBE_FOR_UPDATE","SUBSCRIBE_FOR_UPDATE_SUCCESS","SUBSCRIBE_FOR_UPDATE_ERROR","UPDATE_SPOT","UPDATE_SPOT_SUCCESS","UPDATE_SPOT_ERROR","UPDATE_PAGINATION_METADATA","SET_CURRENT_PAGE","SET_SPOTS_LIST_METADATA","SET_SPOTS_LIST_LOADING","SET_SPOT_REVIEWS_DATA","getSpotsListBoxMobile","_ref","center","bounds","filters","_ref$force","force","forceCenter","getState","_ref2","apolloClient","state","map","doNotLoadSpots","_state$map$center","_state$map$center2","requestTs","Date","now","reqCenter","lat","lng","reqBounds","ne","undefined","sw","query","SPOTS_PAGED_WITH_BOX_QUERY","variables","filtersNew","getSearchFiltersForServer","searchFilters","then","resp","data","spotsPagedWithBox","spots","metadata","lastSearch","collection","box","isCalcZoom","listingSpots","SET_USER_LOCATION","location","err","Promise","resolve","getSpotInfo","spotId","_ref3","SPOT_INFO_QUERY","id","spot","console","error","getSpotInfoListing","_ref4","SPOT_INFO_LISTING_QUERY","getSpotReviewsData","_ref5","SPOT_REVIEWS_DATA","reviews","getSpotShortInfo","_ref6","getMoreComments","skip","sortBy","sortOrder","AppolloClient","uri","concat","apiDomain","gql","_templateObject","_taggedTemplateLiteral","REVIEW_FRAGMENT","warn","updateSpot","_ref7","stateSpot","s","Object","keys","forEach","key","includes","toLowerCase","parseInt","photos","_ref8","__typename","imageAws","file","orientation","status","warning","details","_objectWithoutProperties","_excluded","amenities","name","publishType","mutate","link","createUploadLink","credentials","COOKIE_MODE","mutation","SPOT_UPDATE","update","proxy","_ref9","readQuery","QUERY_USER_DETAILS","userSpots","me","filter","newData","structuredClone","_toConsumableArray","writeQuery","setUserDetails","errors","length","SPOT_GRAPHQL_ERROR","SF_FENCE_OPTIONS","label","SF_SIZE_OPTIONS","SF_DISTANCE_OPTIONS","SF_AVAILABILITY_OPTIONS","tempMaxDogs","i","MAX_DOGS","push","SF_MAX_DOGS_OPTIONS","SF_SORT_BY_OPTIONS","SF_REVIEW_RATING_OPTIONS","SF_ADVANCE_NOTICE_OPTIONS","_filters$amenities","tmp","availableDates","availableTimes","enclosureType","fenceHeight","fencing","minimumSize","reviewRating","advanceNotice","distance","dogsPresent","peoplePresent","domesticAnimalsPresent","topSpots","newSpots","cleanerSpots","sniffpassDiscount","maximumDogsAllowed","minimumPrice","maximumPrice","showPublicSpots","showPrivateSpots"],"sourceRoot":""}