{"version":3,"sources":["../../../node_modules/@bingads-webui/overreact-bingads/src/request-contract-helper/header.js","../../../node_modules/@bingads-webui/overreact-bingads/src/environment/edm.js","../../../node_modules/@bingads-webui/overreact-bingads/src/request-contract-helper/bulk.js","../../../node_modules/@bingads-webui/overreact-bingads/src/request-contract-helper/use-variables.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/environment/schema.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/environment/requestor.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/environment/environment-instance.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/entity/audience-kpi-estimation-v2/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/entity/audience-kpi-estimation-v2/hooks/use-audience-kpi-estimation-v2.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/entity/campaign-ids-with-esc-budget-landscape/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/entity/campaign-ids-with-esc-budget-landscape/hooks/use-campaign-ids-with-esc-budget-landscape.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/entity/esc-budget-landscape/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-ad-insight/src/entity/esc-budget-landscape/hooks/use-esc-budget-landscape.js","../../../node_modules/@bingads-webui/overreact-cc/src/environment/requestor.js","../../../node_modules/@bingads-webui/overreact-cc/src/environment/schema.js","../../../node_modules/@bingads-webui/overreact-cc/src/environment/environment-instance.js","../../../node_modules/@bingads-webui/overreact-cc/src/environment/use-cc-environment.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/user/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/user/spec/mutation.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/user/hooks/use-user.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/customer/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/customer/spec/mutation.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/customer/hooks/use-customer.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/account/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/account/spec/mutation.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/account/hooks/use-account.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/account/spec/coll-fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/account/hooks/use-accounts.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/sub-geographies/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/sub-geographies/hooks/use-sub-geographies.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/time-zones/spec/coll-fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/time-zones/hooks/use-time-zones.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/countries/spec/coll-fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/countries/hooks/use-countries.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/currencies/spec/coll-fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/currencies/hooks/use-currencies.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/currency-countries-mappings/spec/coll-fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/currency-countries-mappings/hooks/use-currency-countries-mappings.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/country-currencies-mappings/spec/coll-fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/country-currencies-mappings/hooks/use-country-currencies-mappings.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/validate-address/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/validate-address/hooks/use-validate-address.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/sign-up/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/sign-up/hooks/use-sign-up.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/estimate-taxes/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/estimate-taxes/hooks/use-estimate-taxes.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/top-up-limit/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/top-up-limit/hooks/use-top-up-limit.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/offline-payment-instructions/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/offline-payment-instructions/hooks/use-offline-payment-instructions.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/create-expert-from-smart/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/create-expert-from-smart/hooks/use-create-expert-from-smart.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/payment-instrument/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/payment-instrument/hooks/use-payment-instrument.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/get-coupon-details/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/get-coupon-details/hooks/use-get-coupon-details.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/get-coupon-string-for-signup/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/get-coupon-string-for-signup/hooks/use-get-coupon-string-for-signup.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/get-coupon-valid-for-customer-website/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/get-coupon-valid-for-customer-website/hooks/use-get-coupon-valid-for-customer-website.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/save-coupon-string-for-signup/spec/fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/save-coupon-string-for-signup/hooks/use-save-coupon-string-for-signup.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/country-timezones-mapping/spec/coll-fetch.js","../../../node_modules/@bingads-webui/overreact-cc/src/entity/country-timezones-mapping/hooks/use-country-timezones-mapping.js"],"names":["getDefaultHeaderObj","cache-control","content-type","x-ms-lastwritetime","x-ms-applicationname","x-ms-requestid","uuidv4","edm","EDM","schemas","_objectSpread","$ROOT","$$ref","type","properties","Customers","items","$$ODataExtension","Name","NavigationProperty","_","mapObject","schema","name","extend","resIdsPlugin","odataPlugin","odataBulkUpsertPlugin","window","campaignODataConfigs","bulkUpsertSchema","rootResourceIdentifier","types","resolve","ResourceIdentifier","defineConstProperty","Error","usePostponeReadVariables","lookupCacheByVariables","useMemo","fetch","postponeRead","refetch","Schema","customer","account","campaign","audience_kpi_estimation_v2","campaign_ids_with_esc_budget_landscape","use_esc_budget_landscape","getRequestor","serviceRoot","additionalHeader","uri","requestVerb","headers","body","url","concat","requestHeader","method","isString","JSON","stringify","then","response","getReader","read","_ref","value","TextDecoder","decode","status","json","catch","responseJSONParseError","responseJSON","ok","middlewares","_defineProperty","middlewareTypes","FETCH_POLICY","createFetchPolicyMiddleware","ERROR","createErrorMiddleware","store","Store","env","AD_INSIGHT_ENVIRONMENT_TAG","getEnvironmentInstance","requestor","customStore","customMiddleWares","Environment","networkRequestor","environmentLookupFn","environmentTag","fetchRequestContract","createRequestContract","dataPath","verb","requestVerbs","POST","fetchPolicy","FetchPolicy","NetworkOnly","uriFactoryFn","params","variables","descriptor","locator","customer_id","account_id","initialSearch","omit","searchString","isEmpty","queryString","Number","headerFactoryFn","payloadFactoryFn","data","keySelector","parentKeySelector","fetchResponseContract","createResponseContract","requestContract","responseType","responseTypes","ENTITY","r","processorFn","fetchSpec","createSpec","specTypes","FETCH","refetchSpec","REFETCH","DEFAULT_CONFIG","useAudienceKPIEstimationV2","config","arguments","length","undefined","dataRefId","useDataRefId","defaultConfig","fetchConfig","refetchConfig","_useFetch","useFetch","_useFetch2","_slicedToArray","error","refetchFn","useRefetch","useCallback","parameter","_len","rest","Array","_key","apply","payload","GET","campaign_id","localeParam","localeUs","isCCError","ResultType","locale","options","restfulService","RestfulServiceBase","cleanedRootUrl","URI","path","toString","currentLocale","uriWithLocale","addQuery","http","ajax","Promise","reject","user","sub_geography","time_zones","countries","currencies","currency_countries_mappings","country_currencies_mappings","validate_address","sign_up","estimate_taxes","top_up_limit","offline_payment_instructions","create_expert_from_smart","payment_instrument","get_coupon_details","get_coupon_string_for_signup","get_coupon_valid_for_customer_website","save_coupon_string_for_signup","country_timezones_mapping","CC_ENVIRONMENT_TAG","useCCEnvironment","customMiddlewares","overreactRequestor","uid","search","cid","id","getDefaultOptions","mutationRequestContract","PATCH","User","mutationResponseContract","mutationSpec","MUTATION","DEFAULT_CONFIG_VALLUE","useUser","dataLocator","mutation","param","requestConfig","updateFn","useMutation","update","_fetch","StoreOrNetwork","Customer","useCustomer","aid","Account","useAccount","updateWithVariables","_len2","_key2","top","skip","predicates","customerId","isNumber","COLL","countryCode","subGeography","Key","timeZones","useCurrencies","currencyCountriesMappings","currency","countryCurrenciesMapping","country","address","accountId","BusinessAddress","entity","OriginalAddress","BusinessName","isMca","isUp","noupsw","isExpertStandalone","isSubscriptionAds","isStreamlined","isPMaxLite","isChinaSignup","isFullyManagedFacebookAdAccountEnabled","isBingAdsOptional","authType","isSwitchedFromSmart","prefix","suffix","upse","mfba","push","idp","suffixString","join","searchAndSuffixString","X-Requested-With","contentType","totalAmount","isTaxIncluded","estimateTaxes","topUpLimit","currencyCode","OfflinePaymentInstructions","Id","paymentInstrument","ccl","cco","coupon","useGetCouponDetails","websiteUrl","result","websiteURL","couponString"],"mappings":"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","file":"static/js/application.initial~8b1fb191.24fa9a4b.chunk.js","sourcesContent":["import { v4 as uuidv4 } from 'uuid';\r\n\r\nfunction generateRequestId() {\r\n return uuidv4();\r\n}\r\n\r\nexport function getDefaultHeaderObj() {\r\n return {\r\n 'cache-control': 'no-cache',\r\n 'content-type': 'application/json',\r\n 'x-ms-lastwritetime': 'Max',\r\n 'x-ms-applicationname': 'bingadsweb',\r\n 'x-ms-requestid': generateRequestId(),\r\n };\r\n}\r\n","// TODO: make this edm as a separate package in smart project?\r\nimport _ from 'underscore';\r\nimport { EDM } from '@bingads-webui/edm-core';\r\nimport { resIdsPlugin } from '@bingads-webui/edm-resource-identifiers';\r\nimport { odataPlugin } from '@bingads-webui/edm-odata';\r\nimport { odataBulkUpsertPlugin } from '@bingads-webui/edm-bulk';\r\nimport { defineConstProperty } from '@bingads-webui/reflection';\r\nimport { schemas } from '@bingads-webui/campaign-odata-schemas';\r\nimport * as bulkUpsertSchema from '@bingads-webui/odata-bulk-upsert-config';\r\n\r\nexport const edm = new EDM({\r\n schemas: {\r\n $ROOT: {\r\n $$ref: '$ROOT',\r\n type: 'object',\r\n properties: {\r\n Customers: {\r\n type: 'array',\r\n items: schemas['Model/Customer'],\r\n },\r\n },\r\n $$ODataExtension: {\r\n Name: '$ROOT',\r\n NavigationProperty: [\r\n 'Customers',\r\n ],\r\n },\r\n },\r\n ..._.mapObject(\r\n schemas,\r\n (schema, name) => _.extend(schema, { $$ref: name })\r\n ),\r\n },\r\n});\r\n\r\nresIdsPlugin(edm);\r\n\r\nodataPlugin(edm, '' /* we don't use edm to send request so make host url empty */, {});\r\n\r\nodataBulkUpsertPlugin(edm, _.extend({}, window.campaignODataConfigs, {\r\n bulkUpsertSchema,\r\n}));\r\n\r\nconst root = edm.types.resolve('$ROOT');\r\n\r\nconst rootResourceIdentifier = new root.ResourceIdentifier();\r\ndefineConstProperty(edm, 'root', rootResourceIdentifier);\r\ndefineConstProperty(edm, 'Customers', rootResourceIdentifier.Customers);\r\n","import _ from 'underscore';\r\nimport { serialize, parse, populateIds } from '@bingads-webui/odata-bulk-upsert';\r\nimport { edm } from '../environment/edm';\r\n\r\nclass BulkError extends Error {\r\n constructor({\r\n entity,\r\n errors,\r\n }) {\r\n super();\r\n this.entity = entity;\r\n this.errors = errors;\r\n }\r\n}\r\n\r\nexport function getBulkUrl(params) {\r\n const { variables } = params;\r\n const { locator } = variables;\r\n const { descriptor } = locator;\r\n const { cid, aid } = descriptor;\r\n\r\n const entity = edm\r\n .Customers.$withKey(cid)\r\n .Accounts.$withKey(aid);\r\n\r\n return `${entity.path}/Default.BulkUpsert`;\r\n}\r\n\r\nexport function getBulkPayload(entitySchema, data) {\r\n const CsvRows = serialize(entitySchema, data);\r\n const payload = {\r\n CsvRows,\r\n };\r\n\r\n return payload;\r\n}\r\n\r\nexport function getProcessedBulkResult(response, request) {\r\n const { data } = request;\r\n const csvData = parse(response);\r\n const {\r\n results,\r\n errors,\r\n } = csvData;\r\n\r\n const ret = populateIds(results, data);\r\n\r\n if (!_.isEmpty(errors)) {\r\n throw new BulkError({\r\n entity: ret,\r\n errors,\r\n });\r\n }\r\n\r\n return Array.isArray(ret) ? ret : [ret];\r\n}\r\n","import { useMemo } from 'react';\r\nimport _ from 'underscore';\r\n\r\nconst DEFAULT_OPTIONS = {};\r\n\r\nexport const postponeReadConfig = {\r\n fetch: { postponeRead: true },\r\n};\r\n\r\nexport const usePostponeReadVariables = lookupCacheByVariables => useMemo(\r\n () => (\r\n lookupCacheByVariables ?\r\n {\r\n fetch: {\r\n postponeRead: true,\r\n lookupCacheByVariables,\r\n },\r\n refetch: {\r\n lookupCacheByVariables,\r\n },\r\n } :\r\n {\r\n fetch: {\r\n postponeRead: true,\r\n },\r\n }),\r\n [lookupCacheByVariables]\r\n);\r\n\r\nexport const useCustomerLevelVariables = ({\r\n customerId,\r\n userId,\r\n}) => useMemo(() => ({\r\n locator: {\r\n descriptor: {\r\n uid: userId,\r\n cid: customerId,\r\n customer_id: customerId,\r\n },\r\n },\r\n}), [userId, customerId]);\r\n\r\nexport const useAccountLevelVariables = ({\r\n customerId,\r\n accountId,\r\n userId,\r\n options = DEFAULT_OPTIONS,\r\n}) => useMemo(() => (_.extend({}, options, {\r\n locator: {\r\n descriptor: {\r\n uid: userId,\r\n cid: customerId,\r\n aid: accountId,\r\n customer_id: customerId,\r\n account_id: accountId,\r\n },\r\n order: ['cid', 'aid'],\r\n },\r\n})), [options, userId, customerId, accountId]);\r\n","import { Schema } from '@bingads-webui-react/overreact';\r\n\r\nconst schemaToModelMapping = {\r\n customer: 'customer',\r\n account: 'account',\r\n campaign: 'campaign',\r\n audience_kpi_estimation_v2: 'audience_kpi_estimation_v2',\r\n campaign_ids_with_esc_budget_landscape: 'campaign_ids_with_esc_budget_landscape',\r\n use_esc_budget_landscape: 'use_esc_budget_landscape',\r\n};\r\n\r\nexport const schema = new Schema(schemaToModelMapping, () => {});\r\n","import { isString } from 'underscore';\r\n\r\nexport function getRequestor(serviceRoot, additionalHeader) {\r\n return function networkRequestor(uri, requestVerb, headers, body) {\r\n const url = `${serviceRoot}${uri}`;\r\n const requestHeader = {\r\n ...additionalHeader,\r\n ...headers,\r\n };\r\n\r\n return fetch(url, {\r\n method: requestVerb,\r\n headers: requestHeader,\r\n body: isString(body) ? body : JSON.stringify(body),\r\n }).then((response) => {\r\n if (isString(body)) {\r\n const reader = response.body.getReader();\r\n return reader.read().then(({ value }) => {\r\n const responseString = new TextDecoder().decode(value);\r\n return responseString;\r\n });\r\n }\r\n\r\n if (response.status === 401) {\r\n const error = {\r\n status: response.status,\r\n };\r\n throw error;\r\n } else if (response.status === 204) {\r\n return {};\r\n }\r\n\r\n // read the JSON response in the body\r\n return response.json().catch((responseJSONParseError) => {\r\n // handle JSON parsing error here\r\n const error = {\r\n status: response.status,\r\n responseJSONParseError,\r\n };\r\n throw error;\r\n }).then((responseJSON) => {\r\n if (!response.ok) {\r\n // 400/500 error with JSON body\r\n const error = {\r\n status: response.status,\r\n responseJSON,\r\n };\r\n throw error;\r\n }\r\n\r\n // normal response with JSON body\r\n return responseJSON;\r\n });\r\n });\r\n };\r\n}\r\n","import {\r\n Environment,\r\n middlewareTypes,\r\n createFetchPolicyMiddleware,\r\n createErrorMiddleware,\r\n Store,\r\n} from '@bingads-webui-react/overreact';\r\nimport { schema } from './schema';\r\n\r\nexport { getRequestor } from './requestor';\r\n\r\nexport const middlewares = {\r\n [middlewareTypes.FETCH_POLICY]: createFetchPolicyMiddleware(),\r\n [middlewareTypes.ERROR]: createErrorMiddleware(),\r\n};\r\n\r\nconst store = new Store();\r\nlet env = null;\r\n\r\nexport const AD_INSIGHT_ENVIRONMENT_TAG = 'Ad_Insight_Endpoint';\r\n\r\nexport function getEnvironmentInstance(requestor, customStore, customMiddleWares) {\r\n if (!env) {\r\n env = new Environment(\r\n requestor,\r\n schema,\r\n customStore || store,\r\n customMiddleWares || middlewares,\r\n AD_INSIGHT_ENVIRONMENT_TAG\r\n );\r\n }\r\n // allow caller to update requestor\r\n env.networkRequestor = requestor;\r\n env.middlewares = customMiddleWares || middlewares;\r\n\r\n return env;\r\n}\r\n\r\nexport function environmentLookupFn(environmentTag) {\r\n return environmentTag === AD_INSIGHT_ENVIRONMENT_TAG;\r\n}\r\n","/* eslint-disable camelcase */\r\nimport _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport stringify from 'json-stable-stringify';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy\r\n} from '@bingads-webui-react/overreact';\r\nimport { getDefaultHeaderObj } from '@bingads-webui/overreact-bingads';\r\n\r\nimport { schema } from '../../../environment/schema';\r\n\r\nfunction odataUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const { locator } = variables;\r\n const { descriptor } = locator;\r\n const {\r\n customer_id,\r\n account_id,\r\n } = descriptor;\r\n\r\n const initialSearch = _.omit(variables, 'locator');\r\n const searchString = _.isEmpty(initialSearch) ? '' : `?${queryString.stringify(initialSearch)}`;\r\n\r\n return `/Customers(${Number(customer_id)})/Accounts(${Number(account_id)})/Default.AudienceKPIEstimationV2${searchString}`;\r\n}\r\n\r\nfunction odataHeaderFactory() {\r\n return getDefaultHeaderObj();\r\n}\r\n\r\nfunction odataPayloadFactory(params) {\r\n return params.data;\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'customer:account:audience_kpi_estimation_v2',\r\n verb: requestVerbs.POST,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: odataUrlFactory,\r\n headerFactoryFn: odataHeaderFactory,\r\n payloadFactoryFn: odataPayloadFactory,\r\n keySelector: variables => stringify(variables),\r\n parentKeySelector: variables => variables.locator.descriptor.account_id,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: r => stringify(r),\r\n processorFn: r => r,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/index';\r\nimport { fetchRequestContract, fetchResponseContract } from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function useAudienceKPIEstimationV2(variables, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const {\r\n fetch: fetchConfig,\r\n refetch: refetchConfig,\r\n } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, variables, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetchConfig);\r\n\r\n const refetch = useCallback((parameter = {}, ...rest) => {\r\n refetchFn(\r\n {\r\n variables: {\r\n ...variables,\r\n ...parameter.variables,\r\n },\r\n payload: {\r\n ...parameter.payload,\r\n },\r\n },\r\n refetchConfig,\r\n ...rest\r\n );\r\n }, [refetchFn, refetchConfig, variables]);\r\n\r\n return [{ data, error }, { refetch }];\r\n}\r\n","/* eslint-disable camelcase */\r\nimport _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\nimport { getDefaultHeaderObj } from '@bingads-webui/overreact-bingads';\r\n\r\nimport { schema } from '../../../environment/schema';\r\n\r\nfunction odataUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const { locator } = variables;\r\n const { descriptor } = locator;\r\n const {\r\n customer_id,\r\n account_id,\r\n } = descriptor;\r\n\r\n const initialSearch = _.omit(variables, 'locator');\r\n const searchString = _.isEmpty(initialSearch) ? '' : `?${queryString.stringify(initialSearch)}`;\r\n\r\n return `/Customers(${Number(customer_id)})/Accounts(${Number(account_id)})/Recommendation.GetCampaignIdsWithESCBudgetLandscape${searchString}`;\r\n}\r\n\r\nfunction odataHeaderFactory() {\r\n return getDefaultHeaderObj();\r\n}\r\n\r\nconst CampaignIdsWithEscBudgetLandscapeDataKey = 'CampaignIdsWithEscBudgetLandscapeDataKey';\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'customer:account:campaign_ids_with_esc_budget_landscape',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: odataUrlFactory,\r\n headerFactoryFn: odataHeaderFactory,\r\n keySelector: () => CampaignIdsWithEscBudgetLandscapeDataKey,\r\n parentKeySelector: variables => variables.locator.descriptor.account_id,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n // we hard code the key here to make it possible to remove invalid data cache\r\n keySelector: () => CampaignIdsWithEscBudgetLandscapeDataKey,\r\n processorFn: r => r,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/index';\r\nimport { fetchRequestContract, fetchResponseContract } from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function useCampaignIdsWithESCBudgetLandscape(dataLocator, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n const { fetch: fetchConfig, refetch: refetchConfig } = defaultConfig;\r\n\r\n const fetch = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetchConfig);\r\n\r\n const read = useCallback((param = {}, requestConfig, ...rest) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig, ...rest);\r\n }, [dataLocator, refetchFn]);\r\n\r\n const [data, error] = fetch;\r\n\r\n return [{\r\n data,\r\n error,\r\n }, {\r\n read,\r\n }];\r\n}\r\n","/* eslint-disable camelcase */\r\nimport _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport stringify from 'json-stable-stringify';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy\r\n} from '@bingads-webui-react/overreact';\r\nimport { getDefaultHeaderObj } from '@bingads-webui/overreact-bingads';\r\n\r\nimport { schema } from '../../../environment/schema';\r\n\r\nfunction odataUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const { locator } = variables;\r\n const { descriptor } = locator;\r\n const {\r\n customer_id,\r\n account_id,\r\n campaign_id,\r\n } = descriptor;\r\n\r\n const initialSearch = _.omit(variables, 'locator');\r\n const searchString = _.isEmpty(initialSearch) ? '' : `?${queryString.stringify(initialSearch)}`;\r\n\r\n return `/Customers(${Number(customer_id)})/Accounts(${Number(account_id)})/Campaigns(${Number(campaign_id)})/Recommendation.GetESCBudgetLandscape${searchString}`;\r\n}\r\n\r\nfunction odataHeaderFactory() {\r\n return getDefaultHeaderObj();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'customer:account:campaign:use_esc_budget_landscape',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: odataUrlFactory,\r\n headerFactoryFn: odataHeaderFactory,\r\n keySelector: variables => stringify(variables),\r\n parentKeySelector: variables => variables.locator.descriptor.campaign_id,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: r => stringify(r),\r\n processorFn: r => r,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/index';\r\nimport { fetchRequestContract, fetchResponseContract } from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function useESCBudgetLandscape(dataLocator, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n const { fetch: fetchConfig, refetch: refetchConfig } = defaultConfig;\r\n\r\n const fetch = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetchConfig);\r\n\r\n const read = useCallback((param = {}, requestConfig, ...rest) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig, ...rest);\r\n }, [dataLocator, refetchFn]);\r\n\r\n const [data, error] = fetch;\r\n\r\n return [{\r\n data,\r\n error,\r\n }, {\r\n read,\r\n }];\r\n}\r\n","import URI from 'urijs';\r\nimport Promise from 'bluebird';\r\nimport RestfulServiceBase from '@bingads-webui-clientcenter/restful-service';\r\n\r\n// Some cc calls take LCIDCookie as local input, which will return non-English data\r\nconst localeParam = 'mkt';\r\nconst localeUs = 'en-US';\r\n\r\nconst isCCError = response => response.ResultType === 1 || response.ResultType === 3;\r\n\r\nexport function getRequestor({\r\n serviceRoot,\r\n locale,\r\n}) {\r\n return function networkRequestor(uri, requestVerb, options, body) {\r\n const restfulService = new RestfulServiceBase({});\r\n const cleanedRootUrl = URI(serviceRoot).path('').toString();\r\n const currentLocale = locale || localeUs;\r\n const uriWithLocale = URI(uri).addQuery(localeParam, currentLocale).toString();\r\n\r\n const url = `${cleanedRootUrl}${uriWithLocale}`;\r\n\r\n return restfulService.http.ajax(url, {\r\n method: requestVerb,\r\n data: JSON.stringify(body),\r\n ...options,\r\n }).then((response) => {\r\n if (isCCError(response)) {\r\n return Promise.reject(response);\r\n }\r\n return response;\r\n });\r\n };\r\n}\r\n","import { Schema } from '@bingads-webui-react/overreact';\r\n\r\nconst schemaToModelMapping = {\r\n user: 'user',\r\n customer: 'customer',\r\n account: 'account',\r\n sub_geography: 'sub_geography',\r\n time_zones: 'time_zones',\r\n countries: 'countries',\r\n currencies: 'currencies',\r\n currency_countries_mappings: 'currency_countries_mappings',\r\n country_currencies_mappings: 'country_currencies_mappings',\r\n validate_address: 'validate_address',\r\n sign_up: 'sign_up',\r\n estimate_taxes: 'estimate_taxes',\r\n top_up_limit: 'top_up_limit',\r\n offline_payment_instructions: 'offline_payment_instructions',\r\n create_expert_from_smart: 'create_expert_from_smart',\r\n payment_instrument: 'payment_instrument',\r\n get_coupon_details: 'get_coupon_details',\r\n get_coupon_string_for_signup: 'get_coupon_string_for_signup',\r\n get_coupon_valid_for_customer_website: 'get_coupon_valid_for_customer_website',\r\n save_coupon_string_for_signup: 'save_coupon_string_for_signup',\r\n country_timezones_mapping: 'country_timezones_mapping',\r\n};\r\n\r\nexport const schema = new Schema(schemaToModelMapping, () => { });\r\n","import {\r\n Environment,\r\n middlewareTypes,\r\n createFetchPolicyMiddleware,\r\n createErrorMiddleware,\r\n Store,\r\n} from '@bingads-webui-react/overreact';\r\nimport { schema } from './schema';\r\n\r\nexport const middlewares = {\r\n [middlewareTypes.FETCH_POLICY]: createFetchPolicyMiddleware(),\r\n [middlewareTypes.ERROR]: createErrorMiddleware(),\r\n};\r\n\r\nconst store = new Store();\r\nlet env = null;\r\n\r\nexport const CC_ENVIRONMENT_TAG = 'ClientCenter_Endpoint';\r\n\r\nexport function getEnvironmentInstance(requestor, customStore, customMiddlewares) {\r\n if (!env) {\r\n env = new Environment(\r\n requestor,\r\n schema,\r\n customStore || store,\r\n customMiddlewares || middlewares,\r\n CC_ENVIRONMENT_TAG\r\n );\r\n }\r\n\r\n // allow caller to update requestor\r\n env.networkRequestor = requestor;\r\n env.middlewares = customMiddlewares || middlewares;\r\n\r\n return env;\r\n}\r\n\r\nexport function environmentLookupFn(environmentTag) {\r\n return environmentTag === CC_ENVIRONMENT_TAG;\r\n}\r\n","import { useMemo } from 'react';\r\nimport { getRequestor } from './requestor';\r\nimport { getEnvironmentInstance } from './environment-instance';\r\n\r\nexport function useCCEnvironment({\r\n serviceRoot,\r\n store,\r\n middlewares,\r\n locale,\r\n}) {\r\n return useMemo(() => {\r\n const overreactRequestor = getRequestor({\r\n serviceRoot,\r\n locale,\r\n });\r\n return getEnvironmentInstance(overreactRequestor, store, middlewares);\r\n }, [locale, middlewares, serviceRoot, store]);\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n id: uid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/User${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n keySelector: variables => variables.locator.descriptor.uid,\r\n parentKeySelector: variables => variables.locator.descriptor.uid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: user => user.id,\r\n processorFn: response => response,\r\n});\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n id: uid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/User${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nfunction ccPayloadFactory(params) {\r\n const { data } = params;\r\n return data.User ? data : { User: data };\r\n}\r\n\r\nexport const mutationRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user',\r\n verb: requestVerbs.PATCH,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n payloadFactoryFn: ccPayloadFactory,\r\n keySelector: variables => variables.locator.descriptor.uid,\r\n parentKeySelector: variables => variables.locator.descriptor.uid,\r\n});\r\n\r\nexport const mutationResponseContract = createResponseContract({\r\n requestContract: mutationRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: user => user.id,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n useMutation,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nimport {\r\n mutationRequestContract,\r\n mutationResponseContract,\r\n} from '../spec/mutation';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\nconst mutationSpec = createSpec(\r\n mutationRequestContract, mutationResponseContract,\r\n specTypes.MUTATION, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG_VALLUE = {};\r\n\r\nexport function useUser(dataLocator, config = DEFAULT_CONFIG_VALLUE) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || DEFAULT_CONFIG_VALLUE,\r\n refetch: config.refetch || DEFAULT_CONFIG_VALLUE,\r\n mutation: config.mutation || DEFAULT_CONFIG_VALLUE,\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch, mutation } = defaultConfig;\r\n\r\n const fetch = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n const updateFn = useMutation(dataRefId, mutationSpec, mutation.update);\r\n\r\n const update = useCallback((data, ...rest) => {\r\n updateFn({ ...dataLocator }, data, ...rest);\r\n }, [dataLocator, updateFn]);\r\n\r\n const [data, error] = fetch;\r\n\r\n return [{ data, error }, { read, update }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n id: cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Customer${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.StoreOrNetwork,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n keySelector: variables => variables.locator.descriptor.cid,\r\n parentKeySelector: variables => variables.locator.descriptor.uid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: customer => customer.id,\r\n processorFn: response => response,\r\n});\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n id: cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Customer${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nfunction ccPayloadFactory(params) {\r\n const { data } = params;\r\n return data.Customer ? data : { Customer: data };\r\n}\r\n\r\nexport const mutationRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer',\r\n verb: requestVerbs.PATCH,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n payloadFactoryFn: ccPayloadFactory,\r\n keySelector: variables => variables.locator.descriptor.cid,\r\n parentKeySelector: variables => variables.locator.descriptor.uid,\r\n});\r\n\r\nexport const mutationResponseContract = createResponseContract({\r\n requestContract: mutationRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: customer => customer.id,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n useMutation,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nimport {\r\n mutationRequestContract,\r\n mutationResponseContract,\r\n} from '../spec/mutation';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\nconst mutationSpec = createSpec(\r\n mutationRequestContract, mutationResponseContract,\r\n specTypes.MUTATION, null, environmentLookupFn\r\n);\r\n\r\nexport function useCustomer(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n mutation: config.mutation || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch, mutation } = defaultConfig;\r\n\r\n const fetch = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n const updateFn = useMutation(dataRefId, mutationSpec, mutation.update);\r\n\r\n const update = useCallback((data, ...rest) => {\r\n updateFn({ ...dataLocator }, data, ...rest);\r\n }, [dataLocator, updateFn]);\r\n\r\n const [data, error] = fetch;\r\n\r\n return [{ data, error }, { read, update }];\r\n}\r\n\r\nexport function useCustomerWithDefaultSetting({\r\n cid,\r\n uid,\r\n}) {\r\n const customerVariables = useMemo(() => ({\r\n locator: {\r\n descriptor: { cid, uid },\r\n },\r\n }), [cid, uid]);\r\n return useCustomer(customerVariables);\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid, aid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n id: aid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Account${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:account',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.StoreOrNetwork,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n keySelector: variables => variables.locator.descriptor.aid,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: account => account.id,\r\n processorFn: response => response,\r\n});\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid, aid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n id: aid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Account${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nfunction ccPayloadFactory(params) {\r\n const { data } = params;\r\n return data.Account ? data : { Account: data };\r\n}\r\n\r\nexport const mutationRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:account',\r\n verb: requestVerbs.PATCH,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n payloadFactoryFn: ccPayloadFactory,\r\n keySelector: variables => variables.locator.descriptor.aid,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const mutationResponseContract = createResponseContract({\r\n requestContract: mutationRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: account => account.id,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n useMutation,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nimport {\r\n mutationRequestContract,\r\n mutationResponseContract,\r\n} from '../spec/mutation';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\nconst mutationSpec = createSpec(\r\n mutationRequestContract, mutationResponseContract,\r\n specTypes.MUTATION, null, environmentLookupFn\r\n);\r\n\r\nexport function useAccount(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n mutation: config.mutation || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch, mutation } = defaultConfig;\r\n\r\n const fetch = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n const updateFn = useMutation(dataRefId, mutationSpec, mutation.update);\r\n\r\n const update = useCallback((data, ...rest) => {\r\n updateFn({ ...dataLocator }, data, ...rest);\r\n }, [dataLocator, updateFn]);\r\n\r\n const updateWithVariables = useCallback((data, variables, ...rest) => {\r\n updateFn({ ...dataLocator, ...variables }, data, ...rest);\r\n }, [dataLocator, updateFn]);\r\n\r\n const [data, error] = fetch;\r\n\r\n return [{ data, error }, { read, update, updateWithVariables }];\r\n}\r\n\r\nexport function useAccountWithDefaultSetting({\r\n aid,\r\n cid,\r\n uid,\r\n}) {\r\n const accountVariables = useMemo(() => ({\r\n locator: {\r\n descriptor: { cid, aid, uid },\r\n },\r\n }), [aid, uid, cid]);\r\n\r\n return useAccount(accountVariables);\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n top,\r\n skip,\r\n predicates,\r\n name,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n let search = {\r\n uid,\r\n cid,\r\n customerId: cid,\r\n };\r\n if (_.isNumber(top)) {\r\n search = {\r\n ...search,\r\n top,\r\n };\r\n }\r\n if (_.isNumber(skip)) {\r\n search = {\r\n ...search,\r\n skip,\r\n };\r\n }\r\n if (predicates) {\r\n search = {\r\n ...search,\r\n predicates: JSON.stringify(predicates),\r\n };\r\n }\r\n if (name) {\r\n search = {\r\n ...search,\r\n name,\r\n };\r\n }\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Account${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:account',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.StoreOrNetwork,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: account => account.id,\r\n processorFn: response => response.value,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/coll-fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function useAccounts(dataLocator, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const fetch = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig, ...rest) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig, ...rest);\r\n }, [dataLocator, refetchFn]);\r\n\r\n const [data, error] = fetch;\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n countryCode,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n countryCode,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/DomainData/LocalizedMappingSubGeography${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:sub_geography',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n keySelector: variables => variables.countryCode,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: subGeography => subGeography.Key,\r\n processorFn: response => response.value,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useSubGeographies(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/DomainData/TimeZoneMapping${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:time_zones',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: timeZones => timeZones.id,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/coll-fetch';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec =\r\n createSpec(fetchRequestContract, fetchResponseContract, specTypes.REFETCH);\r\n\r\nexport function useTimeZones(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/DomainData/CountryMapping${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:countries',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: countries => countries.id,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/coll-fetch';\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useCountries(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/DomainData/CurrencyMapping${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:currencies',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: currencies => currencies.id,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/coll-fetch';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useCurrencies(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Currency/CurrencyCountriesMapping${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:currency_countries_mappings',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: currencyCountriesMappings => currencyCountriesMappings.currency,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/coll-fetch';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useCurrencyCountriesMappings(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Currency/CountryCurrenciesMapping${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:country_currencies_mappings',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: countryCurrenciesMapping => countryCurrenciesMapping.country,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/coll-fetch';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useCountryCurrenciesMappings(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory() {\r\n return 'cc/Account/ValidateAddressAndTax';\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nfunction ccPayloadFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n address,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid, aid } = descriptor;\r\n\r\n return {\r\n uid,\r\n customerId: cid,\r\n accountId: aid,\r\n Account: {\r\n BusinessAddress: address,\r\n },\r\n };\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:account:validate_address',\r\n verb: requestVerbs.POST,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n payloadFactoryFn: ccPayloadFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.aid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: entity => entity.OriginalAddress.BusinessName,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useValidateAddress(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport stringify from 'json-stable-stringify';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n isMca,\r\n isUp,\r\n noupsw,\r\n isExpertStandalone,\r\n isSubscriptionAds,\r\n isStreamlined,\r\n isPMaxLite,\r\n isChinaSignup,\r\n isFullyManagedFacebookAdAccountEnabled,\r\n isBingAdsOptional,\r\n authType,\r\n isSwitchedFromSmart,\r\n } = variables;\r\n\r\n let search = {};\r\n let prefix = '';\r\n const suffix = [];\r\n\r\n if (isMca) {\r\n search = { isMca: true };\r\n } else if (isSubscriptionAds) {\r\n prefix = 'subscription/';\r\n } else if (isUp) {\r\n search = { upse: true, noupsw };\r\n prefix = 'enhanced/';\r\n\r\n if (isFullyManagedFacebookAdAccountEnabled) {\r\n // if mfba=true, customer will be created with ManagedFacebookAdAccount DB pilot set to true\r\n search.mfba = 'true';\r\n }\r\n if (isBingAdsOptional) {\r\n suffix.push('bing-opt-out');\r\n }\r\n } else if (isChinaSignup) {\r\n prefix = 'china/';\r\n } else if (isExpertStandalone) {\r\n prefix = 'expert/';\r\n } else if (isStreamlined) {\r\n // For streamlined signup, we'll create ESC account by default\r\n // If we do need to create expert account, we'll pass search.isExpert='true'\r\n prefix = 'unified/';\r\n } else if (isPMaxLite) {\r\n prefix = 'PMaxLite/';\r\n } else if (isSwitchedFromSmart) {\r\n prefix = 'smart/';\r\n }\r\n\r\n if (!_.isEmpty(authType)) {\r\n search.idp = authType;\r\n }\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n const suffixString = _.isEmpty(suffix) ? '' : suffix.join('&');\r\n\r\n const searchAndSuffixString = searchString ? `${searchString}&${suffixString}` : `?${suffixString}`;\r\n\r\n return `${prefix}Signup/CustomerAccountUserSignup${searchAndSuffixString}`;\r\n}\r\n\r\nfunction ccOptionsFactory(params) {\r\n const { data } = params;\r\n const defaultOptions = getDefaultOptions();\r\n return {\r\n ...defaultOptions,\r\n headers: {\r\n 'X-Requested-With': 'XMLHttpRequest',\r\n },\r\n contentType: 'application/x-www-form-urlencoded',\r\n data,\r\n };\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'sign_up',\r\n verb: requestVerbs.POST,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => stringify(variables),\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: entity => stringify(entity),\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useSignUp(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n const { fetch: fetchConfig, refetch: refetchConfig } = defaultConfig;\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetchConfig);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n payload: { ...param.data },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport stringify from 'json-stable-stringify';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n totalAmount,\r\n isTaxIncluded,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid, aid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n accountId: aid,\r\n totalAmount,\r\n isTaxIncluded,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Billing/EstimateTaxesAllPayments${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:account:estimate_taxes',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.aid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: estimateTaxes => stringify(estimateTaxes),\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useEstimateTaxes(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport stringify from 'json-stable-stringify';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid, aid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n accountId: aid,\r\n customerId: cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/PaymentUtility/TopUpLimit${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:account:top_up_limit',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.aid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: topUpLimit => stringify(topUpLimit),\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useTopUpLimit(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport stringify from 'json-stable-stringify';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n currencyCode,\r\n countryCode,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n currencyCode,\r\n countryCode,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/Payment/OfflinePaymentInstructions${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:offline_payment_instructions',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: OfflinePaymentInstructions => stringify(OfflinePaymentInstructions),\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useOfflinePaymentInstructions(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid, aid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n accountId: aid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Account/CreateExpertFromSmart${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n const defaultOptions = getDefaultOptions();\r\n return {\r\n ...defaultOptions,\r\n headers: {\r\n 'X-Requested-With': 'XMLHttpRequest',\r\n },\r\n };\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:account:create_expert_from_smart',\r\n verb: requestVerbs.POST,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.aid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: entity => entity.id,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nexport function useCreateExpertFromSmart(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n const { fetch: fetchConfig, refetch: refetchConfig } = defaultConfig;\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetchConfig);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n Id,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n Id,\r\n cid,\r\n uid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/PaymentInstrument${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:payment_instrument',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.StoreOrNetwork,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n keySelector: variables => variables.Id,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.ENTITY,\r\n keySelector: paymentInstrument => paymentInstrument.Id,\r\n processorFn: response => response,\r\n});\r\n\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function usePaymentInstrument(dataLocator, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n ccl,\r\n cco,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n let search = {\r\n cid,\r\n uid,\r\n };\r\n if (ccl) {\r\n search = {\r\n ...search,\r\n ccl,\r\n };\r\n }\r\n if (cco) {\r\n search = {\r\n ...search,\r\n cco,\r\n };\r\n }\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Coupon/GetCouponDetails${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:get_coupon_details',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: coupon => coupon.id,\r\n processorFn: response => response,\r\n});\r\n\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function useGetCouponDetails(dataLocator, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig, ...rest) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig, ...rest);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n cid,\r\n uid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Coupon/GetCouponStringForSignup${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:get_coupon_string_for_signup',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: coupon => coupon.id,\r\n processorFn: response => response,\r\n});\r\n\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function useGetCouponStringForSignup(dataLocator, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig, ...rest) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig, ...rest);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n websiteUrl,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n cid,\r\n uid,\r\n websiteUrl,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Coupon/GetCouponValidForCustomerWebsite${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:get_coupon_valid_for_customer_website',\r\n verb: requestVerbs.GET,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: result => result.websiteURL,\r\n processorFn: response => response,\r\n});\r\n\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function useGetCouponValidForCustomerWebsite(dataLocator, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig, ...rest) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig, ...rest);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n FetchPolicy,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n id,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n cid,\r\n uid,\r\n id,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/Coupon/SaveCouponStringForSignup${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nfunction ccPayloadFactory(params) {\r\n const { data } = params;\r\n return data;\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:save_coupon_string_for_signup',\r\n verb: requestVerbs.PATCH,\r\n fetchPolicy: FetchPolicy.NetworkOnly,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n payloadFactoryFn: ccPayloadFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: coupon => coupon.couponString,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/fetch';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.REFETCH, null, environmentLookupFn\r\n);\r\n\r\nconst DEFAULT_CONFIG = {};\r\n\r\nexport function useSaveCouponStringForSignup(dataLocator, config = DEFAULT_CONFIG) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const update = useCallback((param = {}, requestConfig, ...rest) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n payload: { ...param.data },\r\n }, requestConfig, ...rest);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { update }];\r\n}\r\n","import _ from 'underscore';\r\nimport queryString from 'query-string';\r\nimport {\r\n createRequestContract,\r\n createResponseContract,\r\n\r\n requestVerbs,\r\n responseTypes,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport { schema } from '../../../environment/schema';\r\nimport { getDefaultOptions } from '../../../request-contract-helper/index';\r\n\r\nfunction ccUrlFactory(params) {\r\n const { variables } = params;\r\n\r\n const {\r\n locator,\r\n } = variables;\r\n\r\n const { descriptor } = locator;\r\n const { uid, cid } = descriptor;\r\n\r\n const search = {\r\n uid,\r\n cid,\r\n };\r\n\r\n const searchString = _.isEmpty(search) ? '' : `?${queryString.stringify(search)}`;\r\n\r\n return `cc/API/TimeZone/GetTimeZonesPerCountry${searchString}`;\r\n}\r\n\r\nfunction ccOptionsFactory() {\r\n return getDefaultOptions();\r\n}\r\n\r\nexport const fetchRequestContract = createRequestContract({\r\n schema,\r\n dataPath: 'user:customer:country_timezones_mapping',\r\n verb: requestVerbs.GET,\r\n uriFactoryFn: ccUrlFactory,\r\n headerFactoryFn: ccOptionsFactory,\r\n parentKeySelector: variables => variables.locator.descriptor.cid,\r\n});\r\n\r\nexport const fetchResponseContract = createResponseContract({\r\n requestContract: fetchRequestContract,\r\n responseType: responseTypes.COLL,\r\n keySelector: timeZones => timeZones.country,\r\n processorFn: response => response,\r\n});\r\n","import { useCallback, useMemo } from 'react';\r\n\r\nimport {\r\n createSpec,\r\n specTypes,\r\n useFetch,\r\n useDataRefId,\r\n useRefetch,\r\n} from '@bingads-webui-react/overreact';\r\n\r\nimport {\r\n fetchRequestContract,\r\n fetchResponseContract,\r\n} from '../spec/coll-fetch';\r\n\r\nimport { environmentLookupFn } from '../../../environment/environment-instance';\r\n\r\nconst fetchSpec = createSpec(\r\n fetchRequestContract, fetchResponseContract,\r\n specTypes.FETCH, null, environmentLookupFn\r\n);\r\nconst refetchSpec =\r\n createSpec(fetchRequestContract, fetchResponseContract, specTypes.REFETCH);\r\n\r\nexport function useCountryTimeZonesMapping(dataLocator, config = {}) {\r\n const dataRefId = useDataRefId(null, environmentLookupFn);\r\n\r\n const defaultConfig = useMemo(() => ({\r\n fetch: config.fetch || {},\r\n refetch: config.refetch || {},\r\n }), [config]);\r\n\r\n const { fetch: fetchConfig, refetch } = defaultConfig;\r\n\r\n const [data, error] = useFetch(dataRefId, fetchSpec, dataLocator, fetchConfig);\r\n const refetchFn = useRefetch(dataRefId, refetchSpec, refetch);\r\n\r\n const read = useCallback((param = {}, requestConfig) => {\r\n refetchFn({\r\n variables: { ...dataLocator, ...param.variables },\r\n }, requestConfig);\r\n }, [dataLocator, refetchFn]);\r\n\r\n return [{ data, error }, { read }];\r\n}\r\n"],"sourceRoot":""}