{"version":3,"file":"js/generated/DogRescuesProfile-44652807e9e69438aa7b.js","mappings":"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","sources":["webpack://sniffspot/./frontend/src/consts/platform.consts.js","webpack://sniffspot/./frontend/src/graphql/dog-fragments.js","webpack://sniffspot/./frontend/src/graphql/dog-queries.js","webpack://sniffspot/./frontend/src/rails/bundles/DogRescuesProfile/components/DogRescuesProfile.client.jsx","webpack://sniffspot/./frontend/src/rails/packs/generated/DogRescuesProfile.js","webpack://sniffspot/./frontend/src/utils.js","webpack://sniffspot/./node_modules/@apollo/client/react/hooks/internal/useIsomorphicLayoutEffect.js","webpack://sniffspot/./node_modules/@apollo/client/react/hooks/useLazyQuery.js"],"sourcesContent":["export const PLATFORM = {\n    IOS: 'IOS',\n    ANDROID: 'ANDROID',\n    DESKTOP: 'DESKTOP',\n};\n","import { gql } from '@apollo/client';\nimport { USER_SHORT_INFO } from './user-fragments';\n\nexport const DOG_SHORT_INFO = gql`\n    fragment DogShortInfo on Dog {\n        id\n        name\n        photos {\n            id\n            imageAws\n            __typename\n        }\n        __typename\n    }\n`;\n\nexport const DOG_INFO = gql`\n    fragment DogInfo on Dog {\n        ...DogShortInfo\n        about \n        birthAt\n        weight\n        neutered\n        gender \n        breeds\n        favoriteActivities \n\n        currentlyFleaPreventative\n        bordatellaNextDueAt\n        dhppNextDueAt\n        leptospirosisNextDueAt\n        rabiesNextDueAt\n        dominancePreference\n        energyLevel\n        socializationLevel\n        trainingLevel\n        playstyleComment\n        reactiveComment\n        photos {\n            imageAws\n            ordinal\n            id\n        }\n        files {\n            uploadedFile\n            ordinal\n            id\n        }\n        owner {\n            ...UserShortInfo\n        }\n    }\n    ${DOG_SHORT_INFO}, ${USER_SHORT_INFO}\n`;\n\nexport const DOG_NAMES_FRAGMENTS = gql`\n    fragment DogName on DogName {\n        about\n        dogname\n        id\n        rank\n        topBreed\n        topGender\n\n        slug\n        noFollow\n\n        cool\n        cute\n        funny\n        unique\n    }\n`;\n\nconst BLOG_AUTHOR_FRAGMENTS = gql`\n    fragment Author on Author {\n        id\n        name\n        slug\n        photo\n        description\n        facebookLink\n        linkedinLink\n        threadLink\n        tiktokLink\n        youtubeLink\n        publicEmail\n    }\n`;\n\nconst BLOG_POST_FRAGMENTS = gql`\n    fragment Post on Post {\n        id\n        slug\n        title\n        thumbnail\n    }\n`;\n\nexport const DOG_NAMES_PAGE_FRAGMENTS = gql`\n    fragment DogNamePage on DogNamePage {\n        id\n        about\n        metaTitle\n        metaDescription\n        slug\n        author {\n            ...Author\n        }\n        chosenFilters {\n            gender {\n                name\n                slug\n            }\n            breed {\n                name\n                slug\n            }\n            state {\n                name\n                slug\n            }\n            fancy {\n                name\n                slug\n            }\n        }\n        dogNames(page: 1, limit: 50) {\n            collection {\n                ...DogName\n            }\n            metadata {\n                totalPages\n            }\n        }\n        faqs {\n            answer\n            question\n        }\n        nextPost {\n            ...Post\n        }\n        previousPost {\n            ...Post\n        }\n        recentPosts {\n            ...Post\n            descriptionShort\n        }\n        relatedPosts {\n            ...Post\n            descriptionShort\n        }\n        genders {\n            gender\n            slug\n            noFollow\n        }\n        allTopBreeds {\n            breed\n            slug\n            shortSlug\n        }\n        topBreeds {\n            breed\n            slug\n            noFollow\n        }\n        fancies {\n            name\n            slug\n            noFollow\n        }\n        states {\n            name\n            slug\n            noFollow\n        }\n    }\n    ${DOG_NAMES_FRAGMENTS}\n    ${BLOG_AUTHOR_FRAGMENTS}\n    ${BLOG_POST_FRAGMENTS}\n`;\n\nexport const DOG_NAMES_PAGE_V2_FRAGMENTS = gql`\n    fragment DogNamePageV2 on DogNamePage {\n        id\n        about\n        metaTitle\n        metaDescription\n        slug\n        thumbnail\n        author {\n            ...Author\n        }\n        chosenFilters {\n            gender {\n                name\n                slug\n            }\n            breed {\n                name\n                slug\n            }\n            state {\n                name\n                slug\n            }\n            fancy {\n                name\n                slug\n            }\n        }\n        dogNames(page: 1, limit: 50) {\n            collection {\n                ...DogName\n            }\n            metadata {\n                totalPages\n            }\n        }\n        coolDogNames(page: 1, limit: 20) {\n            collection {\n                ...DogName\n            }\n            metadata {\n                totalPages\n            }\n        }\n        cuteDogNames(page: 1, limit: 20) {\n            collection {\n                ...DogName\n            }\n            metadata {\n                totalPages\n            }\n        }\n        funnyDogNames(page: 1, limit: 20) {\n            collection {\n                ...DogName\n            }\n            metadata {\n                totalPages\n            }\n        }\n        uniqueDogNames(page: 1, limit: 20) {\n            collection {\n                ...DogName\n            }\n            metadata {\n                totalPages\n            }\n        }\n        faqs {\n            answer\n            question\n        }\n        nextPost {\n            ...Post\n        }\n        previousPost {\n            ...Post\n        }\n        recentPosts {\n            ...Post\n            descriptionShort\n        }\n        relatedPosts {\n            ...Post\n            descriptionShort\n        }\n        genders {\n            gender\n            slug\n            noFollow\n        }\n        allTopBreeds {\n            breed\n            slug\n            shortSlug\n        }\n        topBreeds {\n            breed\n            slug\n            noFollow\n        }\n        fancies {\n            name\n            slug\n            noFollow\n        }\n        states {\n            name\n            slug\n            noFollow\n        }\n    }\n    ${DOG_NAMES_FRAGMENTS}\n    ${BLOG_AUTHOR_FRAGMENTS}\n    ${BLOG_POST_FRAGMENTS}\n`;\n\nexport const DOG_NAMES_PROFILE_PAGE_FRAGMENTS = gql`\n    fragment DogNameProfilePage on DogNameProfilePage {\n        id\n        pageType\n        slug\n        name\n        about\n        meta {\n            description\n            title\n        }\n        noFollow\n        popularGender {\n            name\n            slug\n        }\n        popularBreed {\n            name\n            slug\n        }\n        photos\n        profilesCount\n        dogsCount\n        nameAbouts {\n            about\n            ownerName\n        }\n        rank\n        coolRank\n        cuteRank\n        funnyRank\n        uniqueRank\n        nextPost {\n            id\n            slug\n            thumbnail\n            title\n        }\n        previousPost {\n            id\n            slug\n            thumbnail\n            title\n        }\n        genders {\n            gender\n            slug\n            noFollow\n        }\n        topBreeds {\n            breed\n            slug\n            noFollow\n        }\n        fancies {\n            name\n            slug\n            noFollow\n        }\n        states {\n            name\n            slug\n            noFollow\n        }\n    }\n`;\n\nexport const DOG_RESCUEPAGE_FRAGMENTS = gql`\n    fragment RescuePage on RescuePage {\n        id\n        cities {\n            city\n            slug\n            noFollow\n            rescues {\n                id\n                logo\n                rescueName\n                bio\n                slug\n            }\n        }\n        rescues {\n            id\n            logo\n            rescueName\n            bio\n            slug\n            city\n            cityRank\n            country\n            countryRank\n            state\n            stateRank\n            specializations\n            latitude\n            longitude\n            testimonials(page: 1, limit: 1) {\n                id\n                reviewerName\n                testimonial\n            }\n        }\n        rescuesCount\n        city\n        country\n        faqs {\n            answer\n            question\n        }\n        metaDescription\n        metaTitle\n        pageType\n        slug\n        latitude\n        longitude\n        recentPosts {\n            ...Post\n            descriptionShort\n        }\n        relatedPosts {\n            ...Post\n            descriptionShort\n        }\n        specialization\n        specializations {\n            noFollow\n            specialization\n            slug\n        }\n        state\n        states {\n            city\n            slug\n            state\n            noFollow\n            rescues {\n                id\n                logo\n                rescueName\n                bio\n                slug\n            }\n        }\n    }\n    ${BLOG_AUTHOR_FRAGMENTS}\n    ${BLOG_POST_FRAGMENTS}\n`;\n\nexport const DOG_RESCUE_FRAGMENTS = gql`\n    fragment Rescue on Rescue {\n        address\n        adoptionPolicy\n        adoptionWebsite\n        author {\n            ...Author\n        }\n        bio\n        city\n        cityRank\n        cities {\n            city\n            slug\n            noFollow\n            rescues {\n                id\n                logo\n                rescueName\n                bio\n                slug\n            }\n        }\n        country\n        countryRank\n        id\n        logo\n        mission\n        specializations\n        otherSpecializations\n        specializationsNearby {\n            noFollow\n            specialization\n            slug\n        }\n        pageType\n        publicEmail\n        nextPost {\n            ...Post\n        }\n        previousPost {\n            ...Post\n        }\n        recentPosts {\n            ...Post\n            descriptionShort\n        }\n        relatedPosts {\n            ...Post\n            descriptionShort\n        }\n        rescueName\n        serviceAreas\n        slug\n        state\n        stateRank\n        states {\n            city\n            slug\n            state\n            noFollow\n            rescues {\n                id\n                logo\n                rescueName\n                bio\n                slug\n            }\n        }\n        testimonials(page: 1, limit: 10) {\n            id\n            affiliation\n            reviewerName\n            testimonial\n        }\n        testimonialsCount\n        website\n        specializationRanks\n    }\n    ${BLOG_AUTHOR_FRAGMENTS}\n    ${BLOG_POST_FRAGMENTS}\n`;\n\nexport const DOG_TRAINERPAGE_FRAGMENTS = gql`\n    fragment TrainerPage on TrainerPage {\n        author {\n            ...Author\n        }\n        categories {\n            name\n            slug\n        }\n        category\n        cities {\n            name\n            slug\n            trainers {\n                id\n                avatar\n                bio\n                fullName\n                slug\n            }\n        }\n        city\n        country\n        faqTitle\n        faqs {\n            answer\n            question\n        }\n        id\n        topSectionDesc\n        pageType\n        nextPost {\n            ...Post\n        }\n        previousPost {\n            ...Post\n        }\n        recentPosts {\n            ...Post\n            descriptionShort\n        }\n        relatedPosts {\n            ...Post\n            descriptionShort\n        }\n        slug\n        state\n        states {\n            name\n            slug\n            trainers {\n                id\n                avatar\n                bio\n                fullName\n                slug\n            }\n        }\n        trainers {\n            id\n            avatar\n            bio\n            certifications\n            fullName\n            serviceAreas\n            services\n            slug\n        }\n    }\n    ${BLOG_AUTHOR_FRAGMENTS}\n    ${BLOG_POST_FRAGMENTS}\n`;\n\nexport const DOG_TRAINER_FRAGMENTS = gql`\n    fragment Trainer on Trainer {\n        author {\n            ...Author\n        }\n        avatar\n        behavioralIssues\n        bio\n        certifications\n        cities {\n            name\n            slug\n        }\n        city\n        slug\n        city\n        country\n        email\n        favoritePartInBeingTrainer\n        firstTrainerTip\n        fullName\n        id\n        metaDescription\n        metaTitle\n        pageType\n        nextPost {\n            ...Post\n        }\n        previousPost {\n            ...Post\n        }\n        recentPosts {\n            ...Post\n            descriptionShort\n        }\n        relatedPosts {\n            ...Post\n            descriptionShort\n        }\n        serviceAreas\n        services\n        servicesDetails\n        slug\n        state\n        trainers {\n            id\n            fullName\n            slug\n        }\n        trainingProcess\n        website\n        whyDoYouBecomeTrainer\n\n        countryRank\n        stateRank\n        cityRank\n\n        aggressiveDogTrainingRank\n        deafDogTrainingRank\n        inHomeTrainingRank\n        protectionGuardDogTrainingRank\n        reactiveDogTrainingRank\n        serviceDogTrainingRank\n        boardAndTrainRank\n        offLeashTrainingRank\n        puppyTrainingRank\n        agilityTrainingRank\n        herdingTrainingRank\n\n        aggressiveDogTrainingCityRank\n        deafDogTrainingCityRank\n        inHomeTrainingCityRank\n        protectionGuardDogTrainingCityRank\n        reactiveDogTrainingCityRank\n        serviceDogTrainingCityRank\n        boardAndTrainCityRank\n        offLeashTrainingCityRank\n        puppyTrainingCityRank\n        agilityTrainingCityRank\n        herdingTrainingCityRank\n    }\n    ${BLOG_AUTHOR_FRAGMENTS}\n    ${BLOG_POST_FRAGMENTS}\n`;\n","import { gql } from '@apollo/client';\nimport {\n    DOG_NAMES_FRAGMENTS,\n    DOG_NAMES_PAGE_FRAGMENTS,\n    DOG_NAMES_PAGE_V2_FRAGMENTS,\n    DOG_NAMES_PROFILE_PAGE_FRAGMENTS,\n    DOG_RESCUE_FRAGMENTS,\n    DOG_RESCUEPAGE_FRAGMENTS,\n    DOG_SHORT_INFO,\n    DOG_TRAINER_FRAGMENTS,\n    DOG_TRAINERPAGE_FRAGMENTS,\n} from './dog-fragments';\n\nexport const QUERY_DOGS_LIST = gql`\n    query listDogs($ids: [ID]!) {\n        dogs(ids: $ids) {\n            ...DogShortInfo\n            owner {\n                id\n            }\n        }\n    }\n    ${DOG_SHORT_INFO}\n`;\n\nexport const QUERY_DOG_NAMES = gql`\n    query dogNames($slug: String, $page: Int, $limit: Int, $fancyType: FancyEnum, $sortBy: SortBy, $sortOrder: SortOrder) {\n        dogNames(slug: $slug, page: $page, limit: $limit, fancyType: $fancyType, sortBy: $sortBy, sortOrder: $sortOrder) {\n            ...DogName\n        }\n    }\n    ${DOG_NAMES_FRAGMENTS}\n`;\n\nexport const QUERY_DOG_NAMES_PAGE = gql`\n    query dogNamePage($slug: String) {\n        dogNamePage(slug: $slug) {\n            ...DogNamePage\n        }\n    }\n    ${DOG_NAMES_PAGE_FRAGMENTS}\n`;\n\nexport const QUERY_DOG_NAMES_PROFILE = gql`\n    query dogNameProfilePage($slug: String) {\n        dogNameProfilePage(slug: $slug) {\n            ...DogNameProfilePage\n        }\n    }\n    ${DOG_NAMES_PROFILE_PAGE_FRAGMENTS}\n`;\n\nexport const QUERY_DOG_NAMES_PAGE_V2 = gql`\n    query dogNamePage($slug: String) {\n        dogNamePage(slug: $slug) {\n            ...DogNamePageV2\n        }\n    }\n    ${DOG_NAMES_PAGE_V2_FRAGMENTS}\n`;\n\nexport const QUERY_DOG_RESCUES_PAGE = gql`\n    query dogRescuePage($slug: String) {\n        dogRescuePage(slug: $slug) {\n            __typename\n            ... on RescuePage {\n                ...RescuePage\n            }\n            ... on Rescue {\n                ...Rescue\n            }\n        }\n    }\n    ${DOG_RESCUEPAGE_FRAGMENTS}\n    ${DOG_RESCUE_FRAGMENTS}\n`;\n\nexport const QUERY_DOG_RESCUES_TESTIMONIALS = gql`\n    query dogRescueTesti($slug: String, $page: Int, $limit: Int) {\n        dogRescuePage(slug: $slug) {\n            __typename\n            ... on Rescue {\n                testimonials(page: $page, limit: $limit) {\n                    id\n                    affiliation\n                    reviewerName\n                    testimonial\n                }\n            }\n        }\n    }\n`;\n\nexport const QUERY_DOG_TRAINERS_PAGE = gql`\n    query dogTrainerPage($slug: String) {\n        dogTrainerPage(slug: $slug) {\n            __typename\n            ... on TrainerPage {\n                ...TrainerPage\n            }\n            ... on Trainer {\n                ...Trainer\n            }\n        }\n    }\n    ${DOG_TRAINERPAGE_FRAGMENTS}\n    ${DOG_TRAINER_FRAGMENTS}\n`;\n","import '../../../../../styles.scss';\nimport React, { useState } from 'react';\nimport { ApolloClient, ApolloProvider, InMemoryCache } from '@apollo/client';\nimport { AWS_STATIC_ASSET_HOST } from '../../../../consts/env.consts';\nimport DogRescuesProfilePage from '../../../../pages/dog-rescues/profile';\n\n// eslint-disable-next-line no-undef\n__webpack_public_path__ = `${AWS_STATIC_ASSET_HOST}/packs/`;\n\nconst client = new ApolloClient({\n    uri: '/graphql',\n    cache: new InMemoryCache(),\n});\n\nconst DogRescues =\n    ({ dataSSR, categoriesSSR }, { pathname }) =>\n    () => {\n        return (\n            <ApolloProvider client={client}>\n                <DogRescuesProfilePage {...{ dataSSR, categoriesSSR, pathname, useStateSSR: useState }} />\n            </ApolloProvider>\n        );\n    };\n\nexport default DogRescues;\n","import ReactOnRails from 'react-on-rails';\nimport DogRescuesProfile from '../../bundles/DogRescuesProfile/components/DogRescuesProfile.client.jsx';\n\nReactOnRails.register({DogRescuesProfile});\n","import { PLATFORM } from './consts/platform.consts';\nimport CookieService from './services/cookie.service';\nimport { COOKIE_PARAM_NAME } from './consts/cookies.consts';\n\nexport const loadUserFromStorage = () => {\n    try {\n        let user = CookieService.get(COOKIE_PARAM_NAME.USER);\n        if (user === null) {\n            return {};\n        }\n        return JSON.parse(user);\n    } catch (err) {\n        return undefined;\n    }\n};\n\nexport function getIdFromSlug(slug) {\n    return slug.split('-').pop();\n}\n\nexport function validateEmail(email) {\n    const re =\n        /^(([^<>()\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n    return re.test(String(email).toLowerCase());\n}\n\nexport function getBannerStatus() {\n    let isSmartBannerShow = true;\n    if (CookieService.get(COOKIE_PARAM_NAME.SMARTBANNER_INSTALLED)) {\n        isSmartBannerShow = false;\n    } else {\n        if (CookieService.get(COOKIE_PARAM_NAME.SMARTBANNER_CLOSED)) {\n            isSmartBannerShow = false;\n        }\n    }\n    return isSmartBannerShow;\n}\n\nexport function checkPlatform() {\n    if (navigator.userAgent.match(/iPhone/) || navigator.userAgent.match(/iPad/)) {\n        return PLATFORM.IOS;\n    }\n\n    if (navigator.userAgent.match(/Android/)) {\n        return PLATFORM.ANDROID;\n    }\n\n    return PLATFORM.DESKTOP;\n}\n\nexport function isNumeric(n) {\n    return !isNaN(parseFloat(n)) && isFinite(n);\n}\n\nexport function resizeTextarea(e) {\n    e.style.height = e.scrollHeight + 'px';\n}\n\nexport function smartBannerShow() {\n    if (typeof window === 'undefined') {\n        return false;\n    }\n\n    const platform = checkPlatform();\n    const hasCookie = CookieService.get(COOKIE_PARAM_NAME.SNIFF_APP_DOWNLOAD_BANNER);\n    const myUrl = typeof window === 'undefined' ? '' : window.location.pathname;\n    const ua = typeof window === 'undefined' ? '' : window.navigator.userAgent;\n    const isReserve = myUrl.startsWith('/reserve/');\n    const isSafari = ua.match(/safari/i) && !ua.match(/chrome/i) && !ua.match(/chromium/i);\n\n    if ((platform === PLATFORM.ANDROID || (platform === PLATFORM.IOS && !isSafari)) && !hasCookie && !isReserve) {\n        return true;\n    }\n\n    return false;\n}\n","import * as React from \"rehackt\";\nimport { canUseDOM } from \"../../../utilities/index.js\";\n// use canUseDOM here instead of canUseLayoutEffect because we want to be able\n// to use useLayoutEffect in our jest tests. useLayoutEffect seems to work fine\n// in useSuspenseQuery tests, but to honor the original comment about the\n// warnings for useSyncExternalStore implementation, canUseLayoutEffect is left\n// alone.\nexport var useIsomorphicLayoutEffect = canUseDOM ? React.useLayoutEffect : React.useEffect;\n//# sourceMappingURL=useIsomorphicLayoutEffect.js.map","import { __assign } from \"tslib\";\nimport * as React from \"rehackt\";\nimport { mergeOptions } from \"../../utilities/index.js\";\nimport { createMakeWatchQueryOptions, getDefaultFetchPolicy, getObsQueryOptions, toQueryResult, useQueryInternals, } from \"./useQuery.js\";\nimport { useIsomorphicLayoutEffect } from \"./internal/useIsomorphicLayoutEffect.js\";\n// The following methods, when called will execute the query, regardless of\n// whether the useLazyQuery execute function was called before.\nvar EAGER_METHODS = [\n    \"refetch\",\n    \"reobserve\",\n    \"fetchMore\",\n    \"updateQuery\",\n    \"startPolling\",\n    \"stopPolling\",\n    \"subscribeToMore\",\n];\n/**\n * A hook for imperatively executing queries in an Apollo application, e.g. in response to user interaction.\n *\n * > Refer to the [Queries - Manual execution with useLazyQuery](https://www.apollographql.com/docs/react/data/queries#manual-execution-with-uselazyquery) section for a more in-depth overview of `useLazyQuery`.\n *\n * @example\n * ```jsx\n * import { gql, useLazyQuery } from \"@apollo/client\";\n *\n * const GET_GREETING = gql`\n *   query GetGreeting($language: String!) {\n *     greeting(language: $language) {\n *       message\n *     }\n *   }\n * `;\n *\n * function Hello() {\n *   const [loadGreeting, { called, loading, data }] = useLazyQuery(\n *     GET_GREETING,\n *     { variables: { language: \"english\" } }\n *   );\n *   if (called && loading) return <p>Loading ...</p>\n *   if (!called) {\n *     return <button onClick={() => loadGreeting()}>Load greeting</button>\n *   }\n *   return <h1>Hello {data.greeting.message}!</h1>;\n * }\n * ```\n * @since 3.0.0\n *\n * @param query - A GraphQL query document parsed into an AST by `gql`.\n * @param options - Default options to control how the query is executed.\n * @returns A tuple in the form of `[execute, result]`\n */\nexport function useLazyQuery(query, options) {\n    var _a;\n    var execOptionsRef = React.useRef(void 0);\n    var optionsRef = React.useRef(void 0);\n    var queryRef = React.useRef(void 0);\n    var merged = mergeOptions(options, execOptionsRef.current || {});\n    var document = (_a = merged === null || merged === void 0 ? void 0 : merged.query) !== null && _a !== void 0 ? _a : query;\n    // Use refs to track options and the used query to ensure the `execute`\n    // function remains referentially stable between renders.\n    optionsRef.current = options;\n    queryRef.current = document;\n    var queryHookOptions = __assign(__assign({}, merged), { skip: !execOptionsRef.current });\n    var _b = useQueryInternals(document, queryHookOptions), obsQueryFields = _b.obsQueryFields, useQueryResult = _b.result, client = _b.client, resultData = _b.resultData, observable = _b.observable, onQueryExecuted = _b.onQueryExecuted;\n    var initialFetchPolicy = observable.options.initialFetchPolicy ||\n        getDefaultFetchPolicy(queryHookOptions.defaultOptions, client.defaultOptions);\n    var forceUpdateState = React.useReducer(function (tick) { return tick + 1; }, 0)[1];\n    // We use useMemo here to make sure the eager methods have a stable identity.\n    var eagerMethods = React.useMemo(function () {\n        var eagerMethods = {};\n        var _loop_1 = function (key) {\n            var method = obsQueryFields[key];\n            eagerMethods[key] = function () {\n                if (!execOptionsRef.current) {\n                    execOptionsRef.current = Object.create(null);\n                    // Only the first time populating execOptionsRef.current matters here.\n                    forceUpdateState();\n                }\n                // @ts-expect-error this is just too generic to type\n                return method.apply(this, arguments);\n            };\n        };\n        for (var _i = 0, EAGER_METHODS_1 = EAGER_METHODS; _i < EAGER_METHODS_1.length; _i++) {\n            var key = EAGER_METHODS_1[_i];\n            _loop_1(key);\n        }\n        return eagerMethods;\n    }, [forceUpdateState, obsQueryFields]);\n    var called = !!execOptionsRef.current;\n    var result = React.useMemo(function () { return (__assign(__assign(__assign({}, useQueryResult), eagerMethods), { called: called })); }, [useQueryResult, eagerMethods, called]);\n    var execute = React.useCallback(function (executeOptions) {\n        execOptionsRef.current =\n            executeOptions ? __assign(__assign({}, executeOptions), { fetchPolicy: executeOptions.fetchPolicy || initialFetchPolicy }) : {\n                fetchPolicy: initialFetchPolicy,\n            };\n        var options = mergeOptions(optionsRef.current, __assign({ query: queryRef.current }, execOptionsRef.current));\n        var promise = executeQuery(resultData, observable, client, document, __assign(__assign({}, options), { skip: false }), onQueryExecuted).then(function (queryResult) { return Object.assign(queryResult, eagerMethods); });\n        // Because the return value of `useLazyQuery` is usually floated, we need\n        // to catch the promise to prevent unhandled rejections.\n        promise.catch(function () { });\n        return promise;\n    }, [\n        client,\n        document,\n        eagerMethods,\n        initialFetchPolicy,\n        observable,\n        resultData,\n        onQueryExecuted,\n    ]);\n    var executeRef = React.useRef(execute);\n    useIsomorphicLayoutEffect(function () {\n        executeRef.current = execute;\n    });\n    var stableExecute = React.useCallback(function () {\n        var args = [];\n        for (var _i = 0; _i < arguments.length; _i++) {\n            args[_i] = arguments[_i];\n        }\n        return executeRef.current.apply(executeRef, args);\n    }, []);\n    return [stableExecute, result];\n}\nfunction executeQuery(resultData, observable, client, currentQuery, options, onQueryExecuted) {\n    var query = options.query || currentQuery;\n    var watchQueryOptions = createMakeWatchQueryOptions(client, query, options, false)(observable);\n    var concast = observable.reobserveAsConcast(getObsQueryOptions(observable, client, options, watchQueryOptions));\n    onQueryExecuted(watchQueryOptions);\n    return new Promise(function (resolve) {\n        var result;\n        // Subscribe to the concast independently of the ObservableQuery in case\n        // the component gets unmounted before the promise resolves. This prevents\n        // the concast from terminating early and resolving with `undefined` when\n        // there are no more subscribers for the concast.\n        concast.subscribe({\n            next: function (value) {\n                result = value;\n            },\n            error: function () {\n                resolve(toQueryResult(observable.getCurrentResult(), resultData.previousData, observable, client));\n            },\n            complete: function () {\n                resolve(toQueryResult(observable[\"maskResult\"](result), resultData.previousData, observable, client));\n            },\n        });\n    });\n}\n//# sourceMappingURL=useLazyQuery.js.map"],"names":["PLATFORM","IOS","ANDROID","DESKTOP","DOG_SHORT_INFO","gql","_templateObject","_taggedTemplateLiteral","DOG_INFO","_templateObject2","USER_SHORT_INFO","DOG_NAMES_FRAGMENTS","_templateObject3","BLOG_AUTHOR_FRAGMENTS","_templateObject4","BLOG_POST_FRAGMENTS","_templateObject5","DOG_NAMES_PAGE_FRAGMENTS","_templateObject6","DOG_NAMES_PAGE_V2_FRAGMENTS","_templateObject7","DOG_NAMES_PROFILE_PAGE_FRAGMENTS","_templateObject8","DOG_RESCUEPAGE_FRAGMENTS","_templateObject9","DOG_RESCUE_FRAGMENTS","_templateObject10","DOG_TRAINERPAGE_FRAGMENTS","_templateObject11","DOG_TRAINER_FRAGMENTS","_templateObject12","QUERY_DOGS_LIST","QUERY_DOG_NAMES","QUERY_DOG_NAMES_PAGE","QUERY_DOG_NAMES_PROFILE","QUERY_DOG_RESCUES_PAGE","QUERY_DOG_RESCUES_TESTIMONIALS","QUERY_DOG_TRAINERS_PAGE","__webpack_public_path__","concat","AWS_STATIC_ASSET_HOST","client","ApolloClient","uri","cache","InMemoryCache","_ref","_ref2","dataSSR","categoriesSSR","pathname","React","ApolloProvider","DogRescuesProfilePage","useStateSSR","useState","ReactOnRails","DogRescuesProfile","loadUserFromStorage","user","CookieService","get","COOKIE_PARAM_NAME","USER","JSON","parse","err","getIdFromSlug","slug","split","pop","validateEmail","email","test","String","toLowerCase","checkPlatform","navigator","userAgent","match","resizeTextarea","e","style","height","scrollHeight","smartBannerShow","window","platform","hasCookie","SNIFF_APP_DOWNLOAD_BANNER","myUrl","location","ua","isReserve","startsWith","isSafari","useIsomorphicLayoutEffect","EAGER_METHODS","useLazyQuery","query","options","_a","execOptionsRef","optionsRef","queryRef","merged","current","document","queryHookOptions","skip","_b","obsQueryFields","useQueryResult","result","resultData","observable","onQueryExecuted","initialFetchPolicy","defaultOptions","forceUpdateState","tick","eagerMethods","_loop_1","key","method","Object","create","apply","this","arguments","_i","EAGER_METHODS_1","length","called","execute","executeOptions","fetchPolicy","promise","currentQuery","watchQueryOptions","concast","reobserveAsConcast","Promise","resolve","subscribe","next","value","error","getCurrentResult","previousData","complete","executeQuery","then","queryResult","assign","catch","executeRef","stableExecute","args"],"sourceRoot":""}