{"version":3,"file":"script/bundle-14.51093b24cf.js","mappings":"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","sources":["webpack://touchweb/./src/apps/tradera/configure-dayjs.js","webpack://touchweb/./src/constants/time.ts","webpack://touchweb/./src/lang/translate.tsx","webpack://touchweb/./src/legacy/static/app.js","webpack://touchweb/./src/legacy/static/utils/modules.js","webpack://touchweb/./src/localization/countrycode.js","webpack://touchweb/./src/localization/format-price.ts","webpack://touchweb/./src/localization/languagecode.js","webpack://touchweb/./src/services/boot-site-wide-notifications.js","webpack://touchweb/./src/services/global-socket.js","webpack://touchweb/./src/services/socket-io-channel.js","webpack://touchweb/./src/services/toasts.tsx","webpack://touchweb/./src/state/environment/selectors.ts","webpack://touchweb/./src/state/language/selectors.ts","webpack://touchweb/./src/state/member/selectors.ts","webpack://touchweb/./src/state/multi-currency/reducer.ts","webpack://touchweb/./src/state/multi-currency/selectors.ts","webpack://touchweb/./src/state/services/types/webapi-member-generated.ts","webpack://touchweb/./src/state/shipping-region/selectors.ts","webpack://touchweb/./src/utils/api.ts","webpack://touchweb/./src/utils/cookie-helpers.ts","webpack://touchweb/./src/utils/date.js","webpack://touchweb/./src/utils/http.ts","webpack://touchweb/./src/utils/scheduler.ts","webpack://touchweb/./src/utils/time-api.js","webpack://touchweb/./src/utils/server-date.js","webpack://touchweb/./src/constants/hosts.ts","webpack://touchweb/./src/utils/url.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport isSameOrAfter from 'dayjs/plugin/isSameOrAfter';\n\nexport const configureDayjs = (preferredLanguageCode) => {\n dayjs.locale(preferredLanguageCode);\n dayjs.extend(isBetween);\n dayjs.extend(isSameOrAfter);\n};\n","export const DAY_IN_SECONDS = 24 * 60 * 60;\nexport const HOUR_IN_SECONDS = 60 * 60;\nexport const MINUTE_IN_SECONDS = 60;\n\nexport const DAY_IN_MILLISECONDS = DAY_IN_SECONDS * 1000;\nexport const HOUR_IN_MILLISECONDS = HOUR_IN_SECONDS * 1000;\nexport const MINUTE_IN_MILLISECONDS = MINUTE_IN_SECONDS * 1000;\nexport const SECOND_IN_MILLISECONDS = 1000;\n","import React, { useRef } from 'react';\nimport { toLocalizedUrl } from 'tradera/utils/url';\nimport {\n NS_TOUCHWEB,\n I18N_FRONTEND_NAMESPACES,\n TRANS_SUFFIX\n} from './constants.mjs';\nimport { isServer } from 'tradera/utils/nextjs';\nimport { useAppSelector as useSelector } from 'tradera/state/hooks';\n\n// eslint-disable-next-line no-restricted-imports\nimport {\n type TFunction,\n type TranslationProps,\n useTranslation,\n Trans as TransComponent,\n I18nextProvider as NextI18nextProvider\n} from 'react-i18next';\nimport type { i18n } from 'i18next';\nimport type { RootState } from 'tradera/state/configure-store';\nimport { selectPreferredLanguageCode } from 'tradera/state/language/selectors';\nimport type { AddTranslation } from 'tradera/lang/translations-context';\nimport { useAddTranslation } from 'tradera/lang/translations-context';\nimport { useQuery } from 'tradera/hooks/use-query';\n\nexport type TranslationFunction = TFunction;\n\nexport const I18nextProvider = NextI18nextProvider;\n\nconst createWrappedT =\n (\n i18nObject: i18n,\n t: TranslationFunction,\n addTranslation: AddTranslation,\n language: string,\n hasLoadedAllTranslations: boolean,\n throwOnTransSuffix?: boolean,\n isShowingTranslationKeysEnabled?: boolean\n ) =>\n (\n i18nKey: string,\n options?: TranslationProps | string,\n ...args: object[]\n ) => {\n if (\n typeof i18nKey === 'string' &&\n i18nKey.endsWith(TRANS_SUFFIX) &&\n throwOnTransSuffix\n ) {\n throw new Error(\n `t function keys should not have \"Trans\" suffix, got key \"${i18nKey}\". Use Trans component instead.`\n );\n }\n const translation = t(\n i18nKey,\n // @ts-ignore: TS2698 because I have no idea how these types from/using i18n work\n { ...options, lng: language, hasLoadedAllTranslations },\n // @ts-ignore: TS2345 because I have no idea how these types from/using i18n work\n ...args\n );\n if (isServer) {\n addTranslationForHydration(\n i18nKey,\n options,\n language,\n i18nObject,\n addTranslation\n );\n }\n return isShowingTranslationKeysEnabled ? i18nKey : translation;\n };\n\nconst isQueryToggleEnabled = (query: string | null) => {\n if (query === null) return false;\n return ['1', 'true', ''].includes(query);\n};\n\n/**\n * i18next translation wrappers for translating static text in react components\n * When to use what?\n * -----\n * 1. For functional components use `useTranslator()` hook\n * 2. For class components use `withTranslator()` HOC\n */\n\n/**\n * Translation hook, wrapper for react-i18next\n */\nexport const useTranslator = () => {\n const addTranslation = useAddTranslation();\n const [isShowingTranslationKeysEnabledQuery] = useQuery('translation-keys');\n const isShowingTranslationKeysEnabled = isQueryToggleEnabled(\n isShowingTranslationKeysEnabledQuery\n );\n const language = useSelector(selectPreferredLanguageCode);\n const loadedLanguages =\n useSelector((state: RootState) => state.status?.loadedLanguages) || [];\n const hasLoadedAllTranslations = loadedLanguages.includes(language);\n const { t, ready, i18n } = useTranslation(I18N_FRONTEND_NAMESPACES);\n const wrappedT: TranslationFunction = React.useMemo(\n () =>\n createWrappedT(\n i18n,\n t,\n addTranslation,\n language,\n hasLoadedAllTranslations,\n true,\n isShowingTranslationKeysEnabled\n ),\n [\n hasLoadedAllTranslations,\n i18n,\n t,\n addTranslation,\n language,\n isShowingTranslationKeysEnabled\n ]\n );\n return { t: ready ? wrappedT : () => '...', i18n };\n};\n\nconst addTranslationForHydration = (\n i18nKey: string,\n options = {},\n language: string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n i18n: any,\n addTranslation: AddTranslation\n) => {\n const { key, namespaces } = i18n.translator.extractFromKey(\n i18nKey,\n options\n );\n const namespace = namespaces[namespaces.length - 1];\n const { res, exactUsedKey } = i18n.translator.resolve(key, {\n ...options,\n lng: language,\n ns: namespace\n });\n const pluralizedKey = exactUsedKey || i18nKey;\n\n addTranslation(namespace, pluralizedKey, res);\n};\n\nexport type WithTranslatorProps = ReturnType['t'];\n\n/**\n * Translation HOC, wrapper for react-i18next\n */\nexport function withTranslator<\n TComponent extends WithTranslatorProps = WithTranslatorProps\n>(\n WrappedComponent: React.ComponentType\n): React.ComponentType {\n function WithTranslator(\n props: Omit\n ) {\n const { t } = useTranslator();\n return ;\n }\n\n WithTranslator.displayName = `withTranslator(${\n WrappedComponent.displayName || WrappedComponent.name\n }`;\n return WithTranslator;\n}\n\nexport type WithUrlLocalizerProps = ReturnType<\n typeof useUrlLocalizer\n>['toLocalizedUrl'];\n\n/**\n * Localization HOC, wrapper for URL-localizer\n * @param {Component} WrappedComponent\n */\nexport function withUrlLocalizer<\n TComponent extends WithUrlLocalizerProps = WithUrlLocalizerProps\n>(WrappedComponent: React.ComponentType) {\n function WithUrlLocalizer(\n props: Omit\n ) {\n const { toLocalizedUrl } = useUrlLocalizer();\n return ;\n }\n\n WithUrlLocalizer.displayName = `withUrlLocalizer(${\n WrappedComponent.displayName || WrappedComponent.name\n }`;\n\n return WithUrlLocalizer;\n}\n\n/**\n * Current language hook, wrapper for react-i18next\n */\nexport const useCurrentLanguage = () => {\n const preferredLanguage = useSelector(selectPreferredLanguageCode);\n // Using language from Redux instead of i18n.language since that\n // will always be 'sv' if we don't clone the instance.\n return {\n language: preferredLanguage\n };\n};\n\n/**\n * Returns function to append language prefix to link\n */\nexport const useUrlLocalizer = () => {\n const preferredLanguage = useSelector(selectPreferredLanguageCode);\n const urlLocalizer = useRef(function toLocalizedUrlWrapper(\n url: T\n ): T | string {\n return toLocalizedUrl(url, preferredLanguage);\n });\n return {\n toLocalizedUrl: urlLocalizer.current\n };\n};\n\nexport type TransProps = Omit<\n React.ComponentProps,\n 'i18nKey'\n> & {\n i18nKey: string;\n};\n\nexport const Trans = (props: TransProps) => {\n const addTranslation = useAddTranslation();\n const language = useSelector(selectPreferredLanguageCode);\n const [isShowingTranslationKeysEnabledQuery] = useQuery('translation-keys');\n const isShowingTranslationKeysEnabled = isQueryToggleEnabled(\n isShowingTranslationKeysEnabledQuery\n );\n const loadedLanguages =\n useSelector((state: RootState) => state.status?.loadedLanguages) || [];\n const hasLoadedAllTranslations = loadedLanguages.includes(language);\n const { t, ready, i18n } = useTranslation(I18N_FRONTEND_NAMESPACES);\n const { i18nKey, children, defaults } = props;\n const wrappedT = React.useMemo(\n () =>\n createWrappedT(\n i18n,\n t,\n addTranslation,\n language,\n hasLoadedAllTranslations,\n false,\n isShowingTranslationKeysEnabled\n ),\n [\n hasLoadedAllTranslations,\n i18n,\n t,\n addTranslation,\n language,\n isShowingTranslationKeysEnabled\n ]\n );\n\n // TODO: since we don't have TS everywhere we still need to check these things, when we have TS we can use TS to enforce most of it instead instead\n\n if (!i18nKey) {\n throw new Error('Trans component key must have a i18nKey property');\n }\n if (!i18nKey.endsWith(TRANS_SUFFIX)) {\n throw new Error(\n `Trans component key must have the \"Trans\" suffix, got key \"${i18nKey}\"`\n );\n }\n if (children) {\n throw new Error(\n `Trans component must not have children, use components or t('${i18nKey}') function instead`\n );\n }\n if (defaults) {\n throw new Error(\n 'Trans components must not have defaults, use lokalise instead.'\n );\n }\n if (!ready) {\n return <>...;\n }\n return ;\n};\n","import 'core-js/modules/es.promise.finally';\nimport 'core-js/modules/es.array.iterator';\nimport 'intersection-observer';\nimport 'custom-event-polyfill';\nimport 'whatwg-fetch';\n\nimport initData from 'init-data';\nimport {\n handleModuleError,\n isSpaModule,\n loadModule,\n loadSpaModule,\n runModule\n} from 'utils/modules';\nimport { bootLanguages } from 'tradera/lang/boot-languages';\nimport { GtmService as gtm } from 'tradera/services/google-tagmanager/google-tagmanager-service';\nimport { bootSiteWideNotifications } from 'tradera/services/boot-site-wide-notifications';\nimport { syncServerTime } from 'tradera/utils/server-date';\nimport { configureDayjs } from 'tradera/apps/tradera/configure-dayjs';\nimport { isServer } from 'tradera/utils/nextjs';\nimport 'tradera/styles/global.scss';\n\nconst bootInit = () => {\n bootLanguages();\n gtm.loadGtmScript();\n\n if (initData) {\n configureDayjs(initData.languageCodeIso2);\n syncServerTime();\n\n if (initData.featureSwitches['site-wide-notifications']) {\n bootSiteWideNotifications({\n socketUrl: initData.webLiveUrl,\n joinMemberRoom: !!initData.memberId\n });\n }\n\n const module = initData.module.split('/')[4];\n let moduleLoader;\n if (isSpaModule(module, initData)) {\n moduleLoader = loadSpaModule(initData);\n } else {\n moduleLoader = import('./init-module')\n .then((initModule) => initModule.default(initData))\n .then(() => loadModule(module, initData))\n .then((loadedModule) => runModule(loadedModule, initData));\n }\n moduleLoader\n .then(() => {\n window.document.body.setAttribute('data-module-loaded', 'true');\n return;\n })\n .catch(handleModuleError);\n }\n};\n\nif (!isServer) {\n bootInit();\n}\n","import { logger } from 'packages/logger';\n\nfunction isSpaModule(module, initData) {\n const { isSinglePageApp } = initData;\n switch (module) {\n case 'endless-recommendation':\n case 'favourite-sellers':\n case 'landing':\n case 'report-item':\n case 'verify-bankid':\n case 'tradera-shop':\n return true;\n\n default:\n return isSinglePageApp;\n }\n}\n\nasync function loadSpaModule(initData) {\n const module = await import(\n /* webpackChunkName: \"tradera\" */ '../../../apps/tradera/'\n );\n return module.default(initData);\n}\n\nasync function loadModule(module) {\n switch (module) {\n // Fallback modules for when SPA is toggled off\n // TODO: Remove when fully incorporated in SPA\n case 'order-checkout':\n case 'verify-bankid':\n case 'landing':\n case 'cart':\n case 'upi':\n case 'inr':\n return await import(\n /* webpackChunkName: \"tradera\" */ '../../../apps/tradera/'\n );\n\n // Non-SPA modules\n case 'basic':\n return await import(\n /* webpackChunkName: \"basic\" */ '../app/pages/basic'\n );\n case 'messages':\n return await import(\n /* webpackChunkName: \"messages\" */ '../app/pages/messages'\n );\n default:\n return await import(\n /* webpackChunkName: \"basic\" */ '../app/pages/basic'\n );\n }\n}\n\nfunction runModule(module, initData = {}) {\n if (!module.default) {\n console.error(`Cannot run module \"${module}\" without exported default`);\n }\n return module.default(initData);\n}\n\nconst handleModuleError = (error) => logger(error);\n\nexport { isSpaModule, loadSpaModule, loadModule, runModule, handleModuleError };\n","export const isSwedenCountryCodeOrUndefined = (countryCodeIso2) =>\n countryCodeIso2 === undefined ||\n countryCodeIso2 === null ||\n countryCodeIso2.toLowerCase() === 'se';\n\nexport const isSwedenCountryNameOrUndefined = (countryName) =>\n countryName === undefined ||\n countryName === null ||\n countryName.toLowerCase() === 'sweden';\n\nexport const isDenmarkCountryCode = (countryCodeIso2) =>\n !isSwedenCountryCodeOrUndefined(countryCodeIso2) &&\n countryCodeIso2.toLowerCase() === 'dk';\n\nexport const isNetherlandsCountryCode = (countryCodeIso2) =>\n !isSwedenCountryCodeOrUndefined(countryCodeIso2) &&\n countryCodeIso2.toLowerCase() === 'nl';\n\nexport const areCountryCodesIso2Equal = (first, second) =>\n (first || 'SE').toUpperCase() === (second || 'SE').toUpperCase();\n","import { formatNumberWithSeparators } from 'tradera/utils/format';\n\nexport type Price = string | number;\n\ntype FormatPriceOptions = {\n currency: string;\n preferredCurrency: string;\n style: 'decimal' | 'currency' | 'percent' | 'unit';\n currencyDisplay: 'code' | 'symbol' | 'narrowSymbol' | 'name';\n useGrouping: boolean;\n roundUp: boolean;\n minimumFractionDigits: number;\n maximumFractionDigits: number;\n};\n\nexport type OverrideFormatPriceOptions = Partial;\n\nexport const formatPrice = (\n price: Price,\n inputLocale: string | null,\n overrideOptions: OverrideFormatPriceOptions = {}\n): string => {\n const locale = inputLocale || 'sv-SE';\n const defaultOptions: FormatPriceOptions = {\n style: 'currency',\n currency: 'SEK',\n preferredCurrency: 'SEK',\n currencyDisplay:\n locale.startsWith('sv') &&\n (overrideOptions.currency || 'SEK') === 'SEK' &&\n (overrideOptions.preferredCurrency || 'SEK') === 'SEK'\n ? 'symbol'\n : 'code',\n useGrouping: false,\n minimumFractionDigits: 0,\n maximumFractionDigits: 2,\n roundUp: false\n };\n const options = {\n ...defaultOptions,\n ...overrideOptions\n };\n let priceAsNumber = typeof price !== 'number' ? parseInt(price) : price;\n\n if (options.roundUp) {\n const decimalFactorForRounding = Math.pow(\n 10,\n options.maximumFractionDigits\n );\n priceAsNumber =\n Math.ceil(priceAsNumber * decimalFactorForRounding) /\n decimalFactorForRounding;\n }\n\n if (!isLocaleFormattingSupportedInBrowser) {\n const suffix =\n options.currencyDisplay === 'code' && options.currency === 'SEK'\n ? 'kr'\n : options.currency;\n return `${priceAsNumber} ${suffix}`;\n }\n\n const formattedPrice = priceAsNumber.toLocaleString(locale, options);\n return formatNumberWithSeparators(formattedPrice);\n};\n\n// https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString\nfunction toLocaleStringSupportsLocales() {\n try {\n Number(0).toLocaleString('i');\n } catch (e: unknown) {\n return (\n e !== null &&\n typeof e === 'object' &&\n 'name' in e &&\n e.name === 'RangeError'\n );\n }\n return false;\n}\n\n// https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString\nfunction toLocaleStringSupportsOptions() {\n return !!(\n typeof Intl === 'object' &&\n Intl &&\n typeof Intl.NumberFormat === 'function'\n );\n}\n\nconst isLocaleFormattingSupportedInBrowser =\n toLocaleStringSupportsLocales() && toLocaleStringSupportsOptions();\n","export const isSwedishOrUndefined = (languageCodeIso2) =>\n languageCodeIso2 === undefined || languageCodeIso2.toLowerCase() === 'sv';\n\nexport const getLanguageFromCountryCode = (countryCodeIso2) => {\n const key = countryCodeIso2?.toLowerCase() || 'se';\n const languageMap = {\n se: 'sv',\n dk: 'da',\n de: 'de',\n fr: 'fr',\n nl: 'nl'\n };\n return languageMap[key] || 'en';\n};\n\nexport const getCountryCodeForFlagFromLanguage = (languageCode) => {\n const key = languageCode?.toLowerCase() || 'sv';\n const countryMap = {\n en: 'gb', // We default to GB which isn't strictly correct\n da: 'dk',\n de: 'de',\n fr: 'fr',\n nl: 'nl'\n };\n return countryMap[key] || 'se';\n};\n\nexport const getCountryCodeFromLanguage = (languageCode) => {\n const key = languageCode?.toLowerCase() || 'sv';\n const countryMap = {\n da: 'dk',\n de: 'de',\n fr: 'fr',\n nl: 'nl'\n };\n return countryMap[key] || 'se';\n};\n\nexport const areLanguageCodesIso2Equal = (first, second) =>\n (first || 'SV').toUpperCase() === (second || 'SV').toUpperCase();\n","import {\n showItemFirstBidToast,\n showItemOutbiddedToast,\n showItemPaidToast,\n showItemSoldToast,\n showItemWishListReminderToast,\n showItemWonToast\n} from './toasts';\nimport { getGlobalSocket } from './global-socket';\nimport { touchWebClient } from 'tradera/utils/http';\n\nconst refreshLoginState = async (socket) => {\n try {\n const response = await touchWebClient.get('login/state');\n\n if (!response.data?.isLoggedIn) {\n return;\n }\n\n socket.disconnect();\n socket.connect();\n } catch {\n // Could not get token.\n }\n};\n\nexport const bootSiteWideNotifications = ({ socketUrl, joinMemberRoom }) => {\n if (!joinMemberRoom) {\n return;\n }\n\n const socket = getGlobalSocket(socketUrl);\n let isRetry = false;\n socket.on('JoinMemberRoom', async ({ success }) => {\n // To avoid infinite loop\n if (success || isRetry) {\n // eslint-disable-next-line better-mutation/no-mutation\n isRetry = false;\n return;\n }\n\n // eslint-disable-next-line better-mutation/no-mutation\n isRetry = true;\n await refreshLoginState(socket);\n });\n socket.addEventListener('MemberItemOutbidded', (data) =>\n showItemOutbiddedToast(data.ItemId, data.NewLeadingBidAmount)\n );\n socket.addEventListener('MemberItemFirstBid', (data) =>\n showItemFirstBidToast(data.ItemId)\n );\n socket.addEventListener('MemberItemSold', (data) =>\n showItemSoldToast(data.ItemId, data.Price)\n );\n socket.addEventListener('MemberItemWon', (data) =>\n showItemWonToast(data.ItemId, data.Price)\n );\n socket.addEventListener('MemberItemPaid', (data) =>\n showItemPaidToast(data.ItemId)\n );\n socket.addEventListener('MemberItemWishListReminder', (data) =>\n showItemWishListReminderToast(data.ItemId, data.TimeLeftMinutes)\n );\n socket.join('member');\n};\n","import { SocketIoChannel } from 'tradera/services/socket-io-channel';\nimport { isServer } from 'tradera/utils/nextjs';\n\nlet globalSocket = null;\n\nexport const getGlobalSocket = (socketUrl) => {\n if (isServer) {\n throw new Error('Must not be used on server.');\n }\n if (!globalSocket) {\n // eslint-disable-next-line better-mutation/no-mutation\n globalSocket = new SocketIoChannel(socketUrl, true);\n }\n return globalSocket;\n};\n","import io from 'socket.io-client';\nimport { logger } from 'packages/logger';\nimport { isServer } from 'tradera/utils/nextjs';\n\nexport class MissingSocketIoServerUrl extends ReferenceError {}\nexport class MissingRoomId extends ReferenceError {}\n\nconst isAllowedToConnect = !isServer;\n\n/**\n * Connect to a socket.io channel & add callbacks for events it broadcasts\n * @param {string} socketIoServerUrl\n */\nexport class SocketIoChannel {\n constructor(socketIoServerUrl, autoConnect = false) {\n if (!socketIoServerUrl) {\n throw new MissingSocketIoServerUrl();\n }\n this.socket = io(socketIoServerUrl, {\n autoConnect: isAllowedToConnect && autoConnect\n });\n this.events = {};\n this.rooms = new Set();\n\n this.socket.on('connect', () => {\n // Rejoin room on reconnect if network connection is lost\n this.rooms.forEach((room) => this.join(room));\n });\n\n this.socket.on('clientEvent', (payload) => {\n if (!payload.Type) {\n logger('socket.io missing clientEvent Type', {\n contexts: {\n socketIo: {\n payload\n }\n }\n });\n return;\n }\n const callback = this.events[payload.Type];\n if (callback) {\n callback(payload.Event, this);\n } else {\n logger(`socket.io unknown clientEvent type`, {\n contexts: {\n socketIo: {\n type: payload.Type\n }\n }\n });\n }\n });\n }\n\n connect() {\n if (isAllowedToConnect && !this.isConnected()) this.socket.connect();\n }\n\n join(room) {\n if (!room) {\n throw new MissingRoomId();\n }\n if (this.isConnected()) {\n this.socket.emit('join', room);\n }\n if (!this.rooms.has(room)) {\n // Queue join until connect\n this.rooms.add(room);\n }\n }\n\n leave(room, rejoinOnConnect = false) {\n if (!room) {\n throw new MissingRoomId();\n }\n if (this.isConnected() && this.rooms.has(room)) {\n this.socket.emit('leave', room);\n }\n if (!rejoinOnConnect) {\n this.rooms.delete(room);\n }\n }\n\n addEventListener(event, callback) {\n this.events[event] = callback;\n }\n\n removeEventListener(event) {\n delete this.events[event];\n }\n\n on(event, callback) {\n this.socket.on(event, callback);\n }\n\n off(event, callback) {\n this.socket.off(event, callback);\n }\n\n isConnected() {\n return this.socket?.connected;\n }\n\n disconnect() {\n if (!this || !this.isConnected()) return;\n this.rooms.forEach((room) => this.leave(room, true));\n this.socket.disconnect();\n }\n}\n","import { createElement } from 'react';\nimport { toast } from 'react-toastify';\n\nimport { ItemToast } from 'tradera/components/toasts/item-toast';\nimport { MessageToast } from 'tradera/components/toasts/message-toast';\nimport { isServer } from 'tradera/utils/nextjs';\nimport { webApiClient } from '../utils/http';\nimport { createQueue } from './toast-queue';\nimport type { ItemBasicInfoApiResponse } from 'tradera/state/services/types/webapi-browse-generated';\n\nconst queuedToasts = createQueue();\n\nconst openNextToast = async () => {\n if (isServer) {\n return;\n }\n if (queuedToasts.isInProgress()) {\n return;\n }\n const nextItem = queuedToasts.next();\n if (nextItem) {\n try {\n const queueLength = queuedToasts.getLength();\n const toastOptions = {\n autoClose: Math.max(2, 5 - queueLength) * 1000,\n onClose: () => {\n queuedToasts.notifyDone();\n openNextToast();\n }\n };\n if (nextItem.eventData.itemId) {\n const response =\n await webApiClient.get(\n `/browse/item-basic-info/${nextItem.eventData.itemId}`\n );\n const { imageUrl, itemUrl, shortDescription } =\n response.data.item || {};\n toast(\n // TODO: convert to JSX when we have a proper story for this\n createElement(ItemToast, {\n imageUrl,\n itemUrl,\n shortDescription,\n type: nextItem.type,\n eventData: nextItem.eventData\n }),\n toastOptions\n );\n } else if (nextItem.eventData.message) {\n const { message, header, messageData, headerData } =\n nextItem.eventData;\n toast(\n ,\n { ...toastOptions, type: nextItem.eventData.type }\n );\n }\n } catch (e) {\n queuedToasts.notifyDone();\n openNextToast();\n throw e;\n }\n }\n};\n\nconst handleNotification = async (\n type: string,\n eventData:\n | {\n message: string;\n header?: string | null;\n messageData: unknown;\n headerData: unknown;\n type: (typeof toast.TYPE)[keyof typeof toast.TYPE] | string;\n }\n | {\n itemId: number;\n newLeadingBidAmount?: number;\n price?: number;\n timeLeftMinutes?: number;\n },\n ttlInMinutes = 10\n) => {\n if (document.visibilityState !== 'visible') {\n // We don't want to show messages if page is not visible. If we do they will queue up!\n return;\n }\n queuedToasts.add({ type, eventData }, ttlInMinutes);\n openNextToast();\n};\n\nexport const showItemOutbiddedToast = (\n itemId: number,\n newLeadingBidAmount: number\n) =>\n handleNotification('ItemOutbidded', {\n itemId,\n newLeadingBidAmount\n });\n\nexport const showItemFirstBidToast = (itemId: number) =>\n handleNotification('ItemFirstBid', { itemId });\n\nexport const showItemSoldToast = (itemId: number, price: number) =>\n handleNotification('ItemSold', { itemId, price });\n\nexport const showItemWonToast = (itemId: number, price: number) =>\n handleNotification('ItemWon', { itemId, price });\n\nexport const showItemPaidToast = (itemId: number) =>\n handleNotification('ItemPaid', { itemId });\n\nexport const showItemWishListReminderToast = (\n itemId: number,\n timeLeftMinutes: number\n) =>\n handleNotification(\n 'ItemWishListReminder',\n { itemId, timeLeftMinutes },\n timeLeftMinutes > 10 ? 10 : 2\n );\n\n/**\n *\n * @param message The message translation key\n * @param header The header translation key\n * @param messageData Any data that's needed for the message translation key\n * @param headerData Any data that's needed for the header translation key\n */\nexport const showSuccessToast = (\n message: string,\n header?: string,\n messageData: unknown = null,\n headerData: unknown = null\n) => {\n handleNotification('Message', {\n message,\n header,\n messageData,\n headerData,\n type: toast.TYPE.SUCCESS\n });\n};\n\nexport const showErrorToast = (\n message: string,\n header?: string | null,\n messageData: unknown = null,\n headerData: unknown = null\n) => {\n handleNotification('Message', {\n header,\n message,\n messageData,\n headerData,\n type: toast.TYPE.ERROR\n });\n};\n\nexport const showInfoToast = (\n message: string,\n header?: string,\n messageData = null,\n headerData = null\n) => {\n handleNotification('Message', {\n message,\n header,\n messageData,\n headerData,\n type: toast.TYPE.INFO\n });\n};\n\n// export const ToastTestButton = () => (\n// {\n// e.preventDefault();\n// showItemWishListReminderToast(85391643, 3);\n// showItemOutbiddedToast(85391639, 99);\n// showItemFirstBidToast(85391639);\n// showItemSoldToast(85391639, 1234);\n// showItemWonToast(85391639, 1234);\n// showItemPaidToast(85391639);\n// }}>\n// Test\n// \n// );\n","import type { RootState } from '../configure-store';\n\nexport const selectEnvironment = (state: RootState) => state.environment;\n\nexport const selectFeatureSwitches = (state: RootState) =>\n state?.environment?.featureSwitches;\nexport const selectIsFeatureEnabled =\n (featureName: string) => (state: RootState) =>\n selectFeatureSwitches(state)?.[featureName] === true;\n\nexport const selectEnvVariables = (state: RootState) =>\n state.environment.variables;\n\nexport const selectWebLiveUrl = (state: RootState) =>\n state.environment.variables.PUBLIC_WEB_LIVE_URL;\n\nexport const selectBrowserName = (state: RootState) =>\n state?.environment?.browserName;\n\nexport const selectIsNativeApp = (state: RootState) =>\n !!state?.environment?.isNativeAppContext;\n\nexport const selectNativeAppLanguage = (state: RootState) =>\n state?.environment?.appLanguage;\n","import { DEFAULT_LANGUAGE } from 'tradera/lang/constants.mjs';\nimport type { RootState } from '../configure-store';\nimport { createSelector } from '@reduxjs/toolkit';\n\nexport const selectAvailableLanguages = (state: RootState) =>\n state.language.available;\n\nexport const selectAvailableLanguageCodesIso2 = createSelector(\n selectAvailableLanguages,\n (available) => available?.map((x) => x.languageCodeIso2)\n);\n\nexport const selectPreferredLanguage = (state: RootState) =>\n state.language.preferred;\n\nexport const selectPreferredLanguageCode = (state: RootState) =>\n state?.language?.preferred?.languageCodeIso2 || DEFAULT_LANGUAGE;\n\nexport const selectLocale = (state: RootState) => {\n const language = selectPreferredLanguageCode(state);\n const country = state.language.memberCountryCodeIso2 || 'SE';\n\n return `${language}-${country}`;\n};\n\nexport const selectIsForeignLanguageActivated = (state: RootState) =>\n selectPreferredLanguage(state)?.languageCodeIso2 !== DEFAULT_LANGUAGE;\n\nexport const selectAutomaticTranslationPreferred = (\n state: RootState\n): boolean => state.language.automaticTranslationPreferred ?? true;\n","import { selectShippingRegionCountryCodeIso2 } from 'tradera/state/shipping-region/selectors';\nimport { areCountryCodesIso2Equal } from 'tradera/localization/countrycode';\nimport type { RootState } from '../configure-store';\nimport { RequirementTypeApi } from '../services/types/webapi-member-generated';\n\nexport const selectMember = (state: RootState) => state.member;\n\nexport const selectIsLoggedIn = (state: RootState) => state.member?.isLoggedIn;\n\nexport const selectGeolocation = (state: RootState) =>\n state.member?.geolocation;\n\nexport const selectMemberId = (state: RootState) => state?.member?.memberId;\n\nexport const selectMemberAlias = (state: RootState) =>\n state.member?.memberAlias;\n\nexport const selectMemberEmail = (state: RootState) =>\n state.member?.memberEmail;\n\nexport const selectMemberFirstName = (state: RootState) =>\n state.member?.memberFirstName;\n\nexport const selectMemberLastName = (state: RootState) =>\n state.member?.memberLastName;\n\nexport const selectMemberBirthdate = (state: RootState) =>\n state.member?.memberBirthdate;\n\nexport const selectCurrencyCode = (state: RootState) =>\n state.member?.currencyCode;\n\n// Prefer using selectShippingRegionCountryCodeIso2 to be safe for all users, non-logged in and logged in.\nexport const selectMemberCountryCodeIso2 = (state: RootState) =>\n state.member?.memberCountryCodeIso2;\n\nexport const selectIsOutsideSweden = (state: RootState) =>\n state.member?.geolocation?.isoCode &&\n state.member?.geolocation?.isoCode.toLowerCase() !== 'se';\n\nexport const showDanishFromCountry = (state: RootState) => {\n const fromCountry = selectShippingRegionCountryCodeIso2(state);\n return areCountryCodesIso2Equal(fromCountry, 'DK');\n};\n\nexport const selectMemberTown = (state: RootState) => state.member?.memberTown;\n\nexport const selectMemberPermissions = (state: RootState) =>\n state.member.permissions;\n\nexport const selectIsUnderage = (state: RootState) => {\n const permissions = selectMemberPermissions(state);\n return (\n permissions?.sellPermission?.isPermitted === false &&\n permissions?.sellPermission?.requirementsNotMet?.includes(\n RequirementTypeApi.IsOverMinimumAge\n )\n );\n};\n\nexport const selectIsCompany = (state: RootState) => state.member?.isCompany;\n\nexport const selectIsImpersonationSession = (state: RootState) =>\n state.member?.isImpersonationSession;\n\nexport const selectMemberState = (state: RootState) =>\n state.member?.memberState;\n\nexport const selectIsTrustedMember = (state: RootState) =>\n state.member?.isTrustedMember;\n","import { type PayloadAction, createSlice } from '@reduxjs/toolkit';\n\nexport type Currency = {\n code: string;\n rate: number;\n valueDate: string;\n updatedDate: string;\n symbolSuffix: string;\n shortName: string;\n longName: string;\n decimals: number;\n};\n\nexport const defaultCurrency: Currency = {\n code: 'SEK',\n rate: 1,\n valueDate: '0000-01-01',\n updatedDate: '0000-01-01T00:00:00.0000000Z',\n symbolSuffix: 'kr',\n shortName: 'SEK',\n longName: 'Svensk krona',\n decimals: 0\n};\n\ntype MultiCurrencyState = {\n enabled: boolean;\n currencies: Currency[];\n preferredCurrency: Currency | null;\n};\n\nconst initialState: MultiCurrencyState = {\n enabled: false,\n currencies: [],\n preferredCurrency: null\n};\n\nconst resolveCurrency = (\n enabled: boolean,\n currencyCode: string | undefined,\n currencies: Currency[]\n) => {\n if (!enabled || !currencyCode) {\n return null;\n }\n return (\n currencies.find((currency) => currency.code === currencyCode) || null\n );\n};\n\nconst multiCurrencySlice = createSlice({\n name: 'multiCurrency',\n initialState,\n reducers: {\n initialize: (\n state,\n action: PayloadAction<{\n enabled: boolean;\n preferredCurrency: string;\n currencies?: Currency[];\n }>\n ) => {\n const {\n currencies = [],\n enabled,\n preferredCurrency\n } = action.payload;\n\n return {\n ...state,\n enabled,\n currencies,\n preferredCurrency: resolveCurrency(\n enabled,\n preferredCurrency,\n currencies\n )\n };\n },\n setPreferredCurrency: (\n state,\n { payload }: PayloadAction<{ currencyCode: string }>\n ) => {\n const { enabled, currencies } = state;\n\n return {\n ...state,\n preferredCurrency: resolveCurrency(\n enabled,\n payload.currencyCode,\n currencies\n )\n };\n }\n }\n});\n\nexport const { initialize, setPreferredCurrency } = multiCurrencySlice.actions;\nexport default multiCurrencySlice.reducer;\n","import type { RootState } from '../configure-store';\nimport { defaultCurrency } from './reducer';\n\nexport const selectCurrencies = (state: RootState) =>\n state.multiCurrency.currencies;\n\nexport const selectPreferredCurrency = (state: RootState) =>\n state.multiCurrency.preferredCurrency ||\n state.multiCurrency.currencies.find((c) => c.code === 'SEK') ||\n defaultCurrency;\n\nexport const selectIsPreferredCurrencySEK = (state: RootState) =>\n selectPreferredCurrency(state)?.code === 'SEK';\n\nexport const selectShowCurrencySelection = (state: RootState) =>\n !!(\n state.multiCurrency.enabled &&\n state.multiCurrency.preferredCurrency &&\n state.multiCurrency.currencies &&\n state.multiCurrency.currencies.length > 0\n );\n","/* eslint-disable */\n/* tslint:disable */\n/*\n * ---------------------------------------------------------------\n * ## THIS FILE WAS GENERATED VIA SWAGGER-TYPESCRIPT-API ##\n * ## ##\n * ## AUTHOR: acacode ##\n * ## SOURCE: https://github.com/acacode/swagger-typescript-api ##\n * ---------------------------------------------------------------\n */\n\nexport interface ActivesummaryRequest {\n request?: MemberActiveItemsSummaryApiRequest;\n}\n\nexport interface AutoShipmentCheckoutEnabledUpdateParams {\n request?: SetAutoShipmentCheckoutMemberEnabledApiRequest;\n}\n\nexport interface BankIdPasswordRecoveryCancelCreateParams {\n request?: BankIdPasswordRecoveryCancelApiRequest;\n}\n\nexport interface BankIdProgressWithIdRequest {\n bankIdOrderRef?: string;\n /** @format int32 */\n memberid?: number;\n}\n\nexport interface BankIdRecoveryWithIdCreateParams {\n request?: BankIdBeginWithIdApiRequest;\n}\n\nexport interface BankaccountCreateParams {\n request?: SetBankAccountPayoutTransferMethodApiRequest;\n}\n\nexport interface BankaccountDeleteParams {\n request?: RemoveBankAccountPayoutTransferMethodApiRequest;\n}\n\nexport interface BankidVerificationRequest {\n /** @format int32 */\n fixedPrice?: number;\n}\n\nexport interface BlockedMembersCreateParams {\n request?: BlockMemberApiRequest;\n}\n\nexport interface BlockedMembersDeleteParams {\n request?: UnblockMemberApiRequest;\n}\n\nexport interface BlockedMembersRequest {\n request?: GetBlockedMembersApiRequest;\n}\n\nexport interface BlueshiftCredentialsRequest {\n request?: GetBlueshiftEventApiCredentialsApiRequest;\n}\n\nexport interface BraintreeOnboardingDetailsRequest {\n request?: GetBraintreeOnboardingDetailsApiRequest;\n}\n\nexport interface BuyerCreateParams {\n request?: SaveFeedbackAsBuyerApiRequest;\n}\n\nexport interface BuyerRequest {\n /** @format int32 */\n transactionId?: number;\n}\n\nexport interface BuyerTransactionVisibilityCreateParams {\n request?: SetBuyerTransactionVisibilityApiRequest;\n}\n\nexport interface ChangeStatusToAppealedCreateParams {\n request?: ChangeDisputeStatusToAppealedApiRequest;\n}\n\nexport interface ChangealiasCreateParams {\n request?: ChangeAliasApiRequest;\n}\n\nexport interface ChangeemailCreateParams {\n request?: ChangeEmailWithIdApiRequest;\n memberId: string;\n}\n\nexport interface ChangepasswordCreate2Params {\n request?: ChangePasswordWithIdApiRequest;\n memberId: string;\n}\n\nexport interface ChangepasswordCreateParams {\n request?: ChangePasswordApiRequest;\n}\n\nexport interface CombinedShippingDaysUpdateParams {\n request?: SetCombinedShippingMemberDaysApiRequest;\n}\n\nexport interface CombinedShippingEnabledUpdateParams {\n request?: SetCombinedShippingMemberEnabledApiRequest;\n}\n\nexport interface CommentCreateParams {\n request?: CommentFeedbackApiRequest;\n}\n\nexport interface CommitonpaymentEnabledUpdateParams {\n request?: SetCommitOnPaymentMemberEnabledApiRequest;\n}\n\nexport interface CompanyContactSsnRequest {\n request?: MemberHasCompanyContactSsnApiRequest;\n}\n\nexport interface CompanyContactSsnUpdateParams {\n request?: UpdateMemberCompanyContactSsnApiRequest;\n}\n\nexport interface CompanyDac7StatusRequest {\n request?: GetMemberCompanyDac7StatusApiRequest;\n}\n\nexport interface CompanyMoneyTransferLicenseStatusRequest {\n request?: GetMemberCompanyMoneyTransferLicenseStatusApiRequest;\n}\n\nexport interface CompleteQuestionnaireCreateParams {\n request?: CompleteQuestionnaireApiRequest;\n}\n\nexport interface CompletehyperwallettransfermethodCreateParams {\n request?: CompleteHyperwalletTransferMethodApiRequest;\n}\n\nexport interface ConfirmCreateParams {\n request?: ConfirmMutualFeedbackRemovalApiRequest;\n}\n\nexport interface ConfirmationValidationRequest {\n /** @format int32 */\n id?: number;\n}\n\nexport interface ConsentCreateParams {\n request?: SetMemberConsentApiRequest;\n}\n\nexport interface ContactSellerCreateParams {\n request?: ContactSellerApiRequest;\n}\n\nexport interface CreateCreateParams {\n request?: CreateFeedbackRemovalApiRequest;\n}\n\nexport interface CreateVerificationCodeCreateParams {\n request?: CreateVerificationCodeApiRequest;\n}\n\nexport interface CreateVerificationCodeWithMemberIdCreateParams {\n request?: CreateVerificationCodeWithMemberIdApiRequest;\n}\n\nexport interface CreationValidationRequest {\n /** @format int32 */\n transactionId?: number;\n}\n\nexport interface CurrencyUpdateParams {\n request?: UpdateMemberCurrencyApiRequest;\n}\n\nexport interface DeactivateaccountCreateParams {\n request?: DeactivateMemberAccountPermanentlyApiRequest;\n}\n\nexport interface DeactivateaccountRequest {\n request?: GetAccountDeactivationSettingsApiRequest;\n}\n\nexport interface DeactivateaccounttemporarilyCreateParams {\n request?: DeactivateMemberAccountTemporarilyApiRequest;\n}\n\nexport interface DenyCreateParams {\n request?: DenyMutualFeedbackRemovalApiRequest;\n}\n\nexport interface DetailsRequest {\n request?: MemberContactDetailsApiRequest;\n}\n\nexport interface DetailsUpdateParams {\n request?: UpdateMemberContactDetailsApiRequest;\n}\n\nexport interface DisputeCreateParams {\n request?: CreateDisputeApiRequest;\n}\n\nexport interface DisputeRequest {\n /** @format int32 */\n transactionId?: number;\n}\n\nexport interface DisputeMessageCreateParams {\n request?: AddDisputeMessageApiRequest;\n}\n\nexport interface DisputesRequest {\n transactionIds?: number[];\n}\n\nexport interface EmailSettingsRequest {\n request?: MemberEmailSettingsApiRequest;\n}\n\nexport interface EmailSettingsUpdateParams {\n request?: UpdateMemberEmailSettingsApiRequest;\n}\n\nexport interface EmailnotifyRequest {\n /** @format int32 */\n memberId?: number;\n}\n\nexport interface EmailnotifyUpdateParams {\n request?: SetMessagingEmailNotifyApiRequest;\n}\n\nexport interface EndingtodaycountRequest {\n request?: GetWishlistItemsEndingTodayCountApiRequest;\n}\n\nexport interface FeatureSummaryByIdsRequest {\n itemIds?: number[];\n}\n\nexport interface FeedbackRequest {\n /** @format int32 */\n memberId?: number;\n feedbackRoleFilter?: FeedbackRoleFilter;\n feedbackRatingFilter?: FeedbackRatingFilter;\n /** @format int32 */\n skip?: number;\n /** @format int32 */\n take?: number;\n}\n\nexport interface FeedbackRemovalDetailsRequest {\n /** @format int32 */\n feedbackRemovalRequestId?: number;\n}\n\nexport interface FeedbackRemovalsCreateParams {\n request?: FeedbackRemovalsApiRequest;\n}\n\nexport interface FeedbacksRequest {\n /** @format int32 */\n transactionId?: number;\n showDeleted?: boolean;\n}\n\nexport interface FindRequest {\n query?: string;\n /** @format int32 */\n page?: number;\n /** @format int32 */\n pageSize?: number;\n}\n\nexport interface GetGeoParams {\n request?: GetMemberGeoDataApiRequest;\n}\n\nexport interface GetSsnParams {\n request?: MemberHasSsnApiRequest;\n}\n\nexport interface GetavailablecountriesforshippingRequest {\n request?: GetAvailableCountriesForShippingApiRequest;\n}\n\nexport interface GetcreditmemobyencryptedidRequest {\n encryptedId?: string;\n}\n\nexport interface GetcreditmemopdfRequest {\n /** @format int64 */\n invoiceId?: number;\n creditMemoDocumentId?: string;\n}\n\nexport interface GetcreditmemopdfbyidRequest {\n /** @format int64 */\n creditMemoId?: number;\n}\n\nexport interface GethyperwalletmemberdetailsRequest {\n request?: GetHyperwalletMemberDetailsApiRequest;\n}\n\nexport interface GetinvoicecsvRequest {\n /** @format int64 */\n invoiceId?: number;\n}\n\nexport interface GetinvoicepdfRequest {\n /** @format int64 */\n invoiceId?: number;\n}\n\nexport interface GetinvoicepdfbyencryptedidRequest {\n encryptedId?: string;\n}\n\nexport interface GetinvoicesRequest {\n /** @format int32 */\n pageIndex?: number;\n /** @format int32 */\n itemsPerPage?: number;\n}\n\nexport interface GetiscombinedshippingenabledRequest {\n request?: GetIsCombinedShippingEnabledApiRequest;\n}\n\nexport interface GetistraderapayenabledRequest {\n request?: GetIsTraderaPayEnabledApiRequest;\n}\n\nexport interface GetshippinginvoicememberRequest {\n request?: GetShippingInvoiceMemberApiRequest;\n}\n\nexport interface GettraderapayonboardingdetailsRequest {\n request?: GetTraderaPayOnboardingDetailsApiRequest;\n}\n\nexport interface GradeTransactionsRequest {\n gradeIds?: number[];\n}\n\nexport interface HasTinRequest {\n request?: GetMemberHasTaxIdentificationNumberApiRequest;\n}\n\nexport interface HyperwalletauthenticationtokenRequest {\n request?: GetHyperwalletAuthenticationTokenApiRequest;\n}\n\nexport interface HyperwallettransfermethodviewmodelRequest {\n request?: GetHyperwalletTransferMethodViewModelApiRequest;\n}\n\nexport interface ImageUploadUrlRequest {\n contentType?: string;\n}\n\nexport interface InitializeQuestionnaireCreateParams {\n request?: InitializeQuestionnaireApiRequest;\n}\n\nexport interface ItemIdsRequest {\n request?: GetWishListItemIdsApiRequest;\n}\n\nexport interface ItemShippedCreateParams {\n request?: SetItemShippedApiRequest;\n}\n\nexport interface ItemShippingBookedCreateParams {\n request?: SetItemShippingBookedApiRequest;\n}\n\nexport interface ItemVisibilityCreateParams {\n request?: SetItemVisibilityApiRequest;\n}\n\nexport interface ItemsRequest {\n /** @format int32 */\n memberId?: number;\n role?: FeedbackRoleFilter;\n rating?: FeedbackRatingFilter;\n /** @format int32 */\n skip?: number;\n /** @format int32 */\n take?: number;\n}\n\nexport interface LanguageUpdateParams {\n request?: UpdateMemberLanguageApiRequest;\n}\n\nexport interface LastnotifiedCreateParams {\n request?: SetLastNotifiedApiRequest;\n}\n\nexport interface ListingFeeRequest {\n request?: MemberListingFeeApiRequest;\n}\n\nexport interface MakeAnOfferEnabledUpdateParams {\n request?: SetMakeAnOfferMemberEnabledApiRequest;\n}\n\nexport interface MarkAsEscalatedCreateParams {\n request?: MarkDisputeAsEscalatedApiRequest;\n}\n\nexport interface MarkAsSolvedCreateParams {\n request?: MarkDisputeAsSolvedApiRequest;\n}\n\nexport interface MarkedAsPaidBySellerCreateParams {\n request?: MarkAsPaidBySellerApiRequest;\n}\n\nexport interface MatchbankCreateParams {\n request?: MatchBankApiRequest;\n}\n\nexport interface McpStrikeConfirmCreateParams {\n request?: ConfirmMutualCancelOfPurchaseStrikeApiRequest;\n}\n\nexport interface McpStrikeCreateParams {\n request?: AddMutualCancelOfPurchaseStrikeApiRequest;\n}\n\nexport interface McpStrikeRequest {\n /** @format uuid */\n purchaseOrderId?: string;\n}\n\nexport interface MemberLocalizationRequest {\n request?: GetMemberLocalizationApiRequest;\n}\n\nexport interface MemberconsentRequest {\n request?: GetMemberConsentApiRequest;\n}\n\nexport interface MemberemailnotificationssettingsviewmodelRequest {\n request?: GetMemberEmailNotificationsSettingsViewModelApiRequest;\n}\n\nexport interface MemberprofilesettingsviewmodelRequest {\n request?: GetMemberProfileSettingsViewModelApiRequest;\n}\n\nexport interface MembersecuritysettingsviewmodelRequest {\n request?: GetMemberSecuritySettingsViewModelApiRequest;\n}\n\nexport interface MembersellersettingsviewmodelRequest {\n request?: GetMemberSellerSettingsViewModelApiRequest;\n}\n\nexport interface MessagingConfigurationRequest {\n request?: GetMessagingConfigurationApiRequest;\n}\n\nexport interface MoneyTransferLicenseAgreementRequest {\n /** @format date-time */\n asOf?: string;\n}\n\nexport interface NewDisputeItemSelectorPageRequest {\n /** @format uuid */\n purchaseOrderId?: string;\n}\n\nexport interface NewDisputePageRequest {\n /** @format uuid */\n purchaseOrderId?: string;\n /** @deprecated */\n itemIds?: number[];\n transactionIds?: number[];\n}\n\nexport interface NotificationsRequest {\n /** @format int32 */\n take?: number;\n /** @format int32 */\n skip?: number;\n}\n\nexport interface OpenSupportThreadCreateParams {\n request?: CreateDisputeSupportMessagingThreadApiRequest;\n}\n\nexport interface PagedTransactionsRequest {\n /** @format int32 */\n skip?: number;\n /** @format int32 */\n take?: number;\n}\n\nexport interface PaymentproviderDeleteParams {\n request?: RemovePayoutTransferMethodApiRequest;\n}\n\nexport interface PayoutfrequencyRequest {\n request?: GetPayoutFrequencyApiRequest;\n}\n\nexport interface PayoutfrequencyoptionsRequest {\n request?: GetPayoutFrequencyOptionsApiRequest;\n}\n\nexport interface PayoutsettingsmodalviewmodelRequest {\n tinkRedirectPath?: string;\n}\n\nexport interface PayoutsettingsviewmodelRequest {\n request?: GetPayoutSettingsViewModelApiRequest;\n}\n\nexport interface PaypalCreateParams {\n request?: SetPayPalPayoutTransferMethodApiRequest;\n}\n\nexport interface PaypalDeleteParams {\n request?: RemovePayPalPayoutTransferMethodApiRequest;\n}\n\nexport interface PendingActionsRequest {\n request?: GetKycPendingActionsApiRequest;\n}\n\nexport interface PicklistRequest {\n /** @format int32 */\n pageIndex?: number;\n /** @format int32 */\n itemsPerPage?: number;\n retrieveHidden?: boolean;\n paidStatus?: PickListFilterPaidStatus;\n shippedStatus?: PickListFilterShippedStatus;\n /** @format date-time */\n from?: string;\n /** @format date-time */\n to?: string;\n}\n\nexport interface PicklistV2Request {\n /** @format int32 */\n skip?: number;\n /** @format int32 */\n take?: number;\n retrieveHidden?: boolean;\n paidStatus?: PickListFilterPaidStatus;\n shippedStatus?: PickListFilterShippedStatus;\n /** @format date-time */\n fromDate?: string;\n /** @format date-time */\n toDate?: string;\n}\n\nexport interface PonrStrikeCreateParams {\n request?: AddPurchaseOrderNotReceivedStrikeApiRequest;\n}\n\nexport interface PonrStrikeRequest {\n /** @format uuid */\n purchaseOrderId?: string;\n}\n\nexport interface ProfileHomepageThemeRequest {\n request?: GetHomepageThemeSettingApiRequest;\n}\n\nexport interface ProfileHomepageThemeUpdateParams {\n request?: UpdateHomepageThemeApiRequest;\n}\n\nexport interface ProfilePageRequest {\n /** @format int32 */\n memberId?: number;\n languageCodeIso2?: string;\n}\n\nexport interface PublicProfileHeroImageDeleteParams {\n request?: RemoveMemberPublicProfileHeroImageApiRequest;\n}\n\nexport interface PublicProfileHeroImageUpdateParams {\n request?: UpdateMemberPublicProfileHeroImageApiRequest;\n}\n\nexport interface PublicProfileInformationUpdateParams {\n request?: UpdateMemberPublicProfileInformationApiRequest;\n}\n\nexport interface PublicprofileRequest {\n /** @format int32 */\n memberId?: number;\n toLanguageCodeIso2?: string;\n}\n\nexport interface PurchaseRequest {\n /** @format int32 */\n transactionId?: number;\n}\n\nexport interface PurchaseOrderStrikeCreateParams {\n request?: AddPurchaseOrderStrikeApiRequest;\n}\n\nexport interface PurchaseOrderStrikesRequest {\n /** @format uuid */\n purchaseOrderId?: string;\n}\n\nexport interface PurchaseorderRequest {\n /** @format uuid */\n purchaseOrderId?: string;\n}\n\nexport interface PurchaseorderitemRequest {\n /** @format uuid */\n purchaseOrderId?: string;\n}\n\nexport interface PutSsnParams {\n request?: UpdateMemberSsnApiRequest;\n}\n\nexport interface PutTinParams {\n request?: UpdateMemberTaxIdentificationNumberApiRequest;\n}\n\nexport interface QuestionnaireRequest {\n actionType?: string;\n languageCodeIso2?: string;\n}\n\nexport interface ReferralCodeCreateParams {\n request?: GenerateMemberReferralCodeApiRequest;\n}\n\nexport interface RemovetraderapaypayoutdestinationCreateParams {\n request?: RemoveTraderaPayPayoutDestinationApiRequest;\n}\n\nexport interface ResendverificationCreateParams {\n request?: ResendPayoutTransferMethodVerificationCodeApiRequest;\n}\n\nexport interface RestartItemsSummaryRequest {\n itemIds?: number[];\n}\n\nexport interface SelectedDescriptionLanguageUpdateParams {\n request?: UpdateMemberSelectedDescriptionLanguageApiRequest;\n}\n\nexport interface SellerAutoFeedbackRequest {\n request?: SellerAutoFeedbackApiRequest;\n}\n\nexport interface SellerAutoFeedbackUpdateParams {\n request?: SaveSellerAutoFeedbackSettingsApiRequest;\n}\n\nexport interface SellerAutoPaymentReminderRequest {\n request?: SellerAutoPaymentReminderApiRequest;\n}\n\nexport interface SellerAutoPaymentReminderUpdateParams {\n request?: SaveSellerAutoPaymentReminderSettingsApiRequest;\n}\n\nexport interface SellerCreateParams {\n request?: SaveFeedbackAsSellerApiRequest;\n}\n\nexport interface SellerRequest {\n /** @format int32 */\n transactionId?: number;\n}\n\nexport interface SellerMagicalSyiEnabledRequest {\n request?: GetMagicalSyiEnabledApiRequest;\n}\n\nexport interface SellerMagicalSyiEnabledUpdateParams {\n request?: SetMagicalSyiEnabledApiRequest;\n}\n\nexport interface SelloprofileRequest {\n request?: MemberSelloProfileApiRequest;\n}\n\nexport interface ServerStorageRequest {\n request?: MemberServerStorageListApiRequest;\n}\n\nexport interface ServerStorageUpdateParams {\n request?: MemberServerStoragePutApiRequest;\n}\n\nexport interface SessionDataRequest {\n request?: MemberSessionDataApiRequest;\n}\n\nexport interface SethyperwalletpayeeverificationassubmittedCreateParams {\n request?: SetHyperwalletPayeeVerificationAsSubmittedApiRequest;\n}\n\nexport interface SetpayoutfrequencyCreateParams {\n request?: SetPayoutFrequencyApiRequest;\n}\n\nexport interface ShippingFeeRuleFreeShippingCostLimitUpdateParams {\n request?: SetShippingFeeRuleFreeShippingCostLimitApiRequest;\n}\n\nexport interface ShippingFeeRuleShippingOptionUpdateParams {\n request?: SetShippingFeeRuleShippingOptionApiRequest;\n}\n\nexport interface ShippingFromCountryUpdateParams {\n request?: UpdateMemberShippingFromCountryApiRequest;\n}\n\nexport interface ShopDetailsRequest {\n /** @format int32 */\n memberId?: number;\n}\n\nexport interface ShopitemOrderhistoryRequest {\n /** @format int32 */\n itemId?: number;\n}\n\nexport interface ShouldCollectTinRequest {\n request?: GetMemberShouldCollectTaxIdentificationNumberApiRequest;\n}\n\nexport interface SilentRequest {\n request?: GetMessagingSilentApiRequest;\n}\n\nexport interface SilentUpdateParams {\n request?: SetMessagingSilentApiRequest;\n}\n\nexport interface SmsCheckCreateParams {\n request?: SmsCheckApiRequest;\n}\n\nexport interface SmsVerificationCreateParams {\n request?: SendVerificationSmsApiRequest;\n}\n\nexport interface SmsVerificationRequest {\n action?: string;\n}\n\nexport interface SmsVerificationWithIdCreateParams {\n request?: SendVerificationSmsWithIdApiRequest;\n}\n\nexport interface SolditemsRequest {\n soldItemStateFilter?: string;\n soldItemOrderBy?: string;\n retrieveHidden?: boolean;\n /** @format int32 */\n take?: number;\n /** @format int32 */\n skip?: number;\n}\n\nexport interface SoldsummaryRequest {\n request?: MemberSoldItemsSummaryApiRequest;\n}\n\nexport interface StatsRequest {\n request?: GetMessagingStatsApiRequest;\n}\n\nexport interface StatsThisMonthRequest {\n request?: MemberStatsThisMonthApiRequest;\n}\n\nexport interface SummaryRequest {\n /** @format int32 */\n memberId?: number;\n}\n\nexport interface SuspendedUntilRequest {\n request?: GetMemberSuspendedUntilApiRequest;\n}\n\nexport interface SwishCreateParams {\n request?: SetSwishPayoutTransferMethodApiRequest;\n}\n\nexport interface SystemMessagesRequest {\n request?: GetSystemMessagesApiRequest;\n}\n\nexport interface TinImageUploadUrlCreateParams {\n request?: CreateTaxIdentificationImageUploadUrlApiRequest;\n}\n\nexport interface TinkBankaccountsRequest {\n code?: string;\n}\n\nexport interface TinkaccountCreateParams {\n request?: SetPayoutTransferMethodUsingTinkApiRequest;\n}\n\nexport interface ResponseError {\n errorCode?: string | null;\n fieldName?: string | null;\n message?: string | null;\n}\n\nexport interface ResponseError2 {\n transactionIds?: number[];\n}\n\nexport interface ResponseError5 {\n request?: WebChangeEmailWithIdApiRequest;\n}\n\nexport interface ResponseError8 {\n /** @format int32 */\n skip?: number;\n /** @format int32 */\n take?: number;\n}\n\nexport interface ResponseStatus {\n errorCode?: string | null;\n errors?: ResponseError[] | null;\n message?: string | null;\n stackTrace?: string | null;\n}\n\nexport interface BankIdAuthenticationBeginApiResponse {\n autoStartToken?: string | null;\n bankIdOrderRef?: string | null;\n qrData?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface BankIdAuthenticationCancelApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface BankIdAuthenticationProgressApiResponse {\n isCompleted: boolean;\n progress?: string | null;\n qrData?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ItemImageUrls {\n medium?: string | null;\n normal?: string | null;\n}\n\nexport enum ItemTransactionTypeApiDto {\n Auction = 'Auction',\n Bin = 'Bin',\n Cart = 'Cart',\n PurchaseOfferOnActive = 'PurchaseOfferOnActive',\n PurchaseOfferOnEnded = 'PurchaseOfferOnEnded'\n}\n\nexport enum ItemTypeApiDto {\n Auction = 'Auction',\n AuctionBin = 'AuctionBin',\n PureBin = 'PureBin',\n ShopItem = 'ShopItem'\n}\n\nexport interface BlockMemberApiRequest {\n aliasToBlock?: string | null;\n}\n\nexport interface BlockMemberApiResponse {\n /** @format int32 */\n blockedMemberId: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface AddDisputeMessageApiRequest {\n attachments?: string[] | null;\n message?: string | null;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface AddDisputeMessageApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ChangeDisputeStatusToAppealedApiRequest {\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface ChangeDisputeStatusToAppealedApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface CreateDisputeApiRequest {\n message?: string | null;\n /** @format int32 */\n reason: number;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface CreateDisputeApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetDisputeApiResponse {\n dispute?: DisputeApiDto | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetDisputesApiResponse {\n disputes?: DisputeApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MarkDisputeAsEscalatedApiRequest {\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface MarkDisputeAsEscalatedApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MarkDisputeAsSolvedApiRequest {\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface MarkDisputeAsSolvedApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface CreateDisputeImageUploadUrlApiRequest {\n contentType?: string | null;\n}\n\nexport interface CreateDisputeImageUploadUrlApiResponse {\n objectName?: string | null;\n responseStatus?: ResponseStatus | null;\n uploadUrl?: string | null;\n}\n\nexport interface CreateDisputeSupportMessagingThreadApiRequest {\n /** @format int32 */\n disputeId: number;\n}\n\nexport interface CreateDisputeSupportMessagingThreadApiResponse {\n responseStatus?: ResponseStatus | null;\n threadId?: string | null;\n}\n\nexport interface DisputeV2FormData {\n comment?: string | null;\n images?: DisputeV2Image[] | null;\n itemIds?: number[] | null;\n /** @format uuid */\n purchaseOrderId: string;\n reason?: string | null;\n status?: string | null;\n suggestedSolution?: string | null;\n transactionIds?: number[] | null;\n}\n\nexport interface DisputeV2Image {\n fileName?: string | null;\n objectName?: string | null;\n}\n\nexport interface DisputeV2ItemData {\n imageUrl?: string | null;\n /** @format int32 */\n itemId: number;\n itemUrl?: string | null;\n /** @format double */\n price: number;\n title?: string | null;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface DisputeV2MemberData {\n alias?: string | null;\n /** @format int32 */\n memberId: number;\n}\n\nexport interface DisputeV2PurchaseOrderData {\n buyerMember?: DisputeV2MemberData | null;\n /** @format double */\n buyerProtectionCost: number;\n /** @format date-time */\n createdDate: string;\n /** @format int32 */\n orderNumber: number;\n /** @format uuid */\n purchaseOrderId: string;\n /** @format double */\n selectedShippingCostAfterRefunds: number;\n sellerMember?: DisputeV2MemberData | null;\n shipping?: DisputeV2Shipping | null;\n /** @format double */\n totalOrderAmount: number;\n}\n\nexport interface DisputeV2PurchaseOrderItemData {\n hasReportedDispute: boolean;\n imageUrl?: string | null;\n /** @format int32 */\n itemId: number;\n itemUrl?: string | null;\n /** @format double */\n price: number;\n title?: string | null;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface DisputeV2Shipping {\n isSoldByTradera: boolean;\n /** @format uuid */\n shipmentId: string;\n /** @format double */\n shippingCost: number;\n shippingProvider?: string | null;\n}\n\nexport interface EscalateDisputeV2ApiRequest {\n /** @format int32 */\n disputeId: number;\n}\n\nexport interface EscalateDisputeV2ApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetDisputeDataV2ApiResponse {\n /** @format date-time */\n createdDate: string;\n /** @format int32 */\n disputeId: number;\n formData?: DisputeV2FormData | null;\n items?: DisputeV2ItemData[] | null;\n purchaseOrder?: DisputeV2PurchaseOrderData | null;\n responseStatus?: ResponseStatus | null;\n /** @format date-time */\n updatedDate: string;\n}\n\nexport interface MarkDisputeAsSolvedV2ApiRequest {\n /** @format int32 */\n disputeId: number;\n}\n\nexport interface MarkDisputeAsSolvedV2ApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SaveDisputeDataV2ApiRequest {\n formData?: DisputeV2FormData | null;\n}\n\nexport interface SaveDisputeDataV2ApiResponse {\n /** @format int32 */\n disputeId: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface DisputeApiDto {\n /** @format int32 */\n buyerMemberId: number;\n isHandledByExternalPart: boolean;\n /** @format int32 */\n itemId: number;\n message?: string | null;\n messages?: DisputeMessageDto[] | null;\n /** @format int32 */\n sellerMemberId: number;\n status: DisputeStatus;\n /** @format date-time */\n timeStamp: string;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface DisputeMessageDto {\n attachments?: string[] | null;\n /** @format date-time */\n created: string;\n /** @format uuid */\n id: string;\n sentBy: MessageSentBy;\n text?: string | null;\n}\n\nexport enum ContactBuyerQuestionAnswer {\n BuyerAndSellerAreInAgreement = 'BuyerAndSellerAreInAgreement',\n BuyerIsNotResponding = 'BuyerIsNotResponding',\n BuyerRefusesPayment = 'BuyerRefusesPayment',\n SellerHasNotContactedBuyer = 'SellerHasNotContactedBuyer'\n}\n\nexport enum DisputeStatus {\n New = 'New',\n WaitingForSeller = 'WaitingForSeller',\n TraderaIsInvestigating = 'TraderaIsInvestigating',\n ToBeClosed = 'ToBeClosed',\n WaitingForBuyer = 'WaitingForBuyer',\n BuyerWonDispute = 'BuyerWonDispute',\n SellerWonDispute = 'SellerWonDispute',\n WaitingForReturn = 'WaitingForReturn',\n Appealed = 'Appealed',\n AvslutadUnder120Kr = 'AvslutadUnder120Kr',\n NotEscalated = 'NotEscalated',\n BuyerMarkedAsSolved = 'BuyerMarkedAsSolved',\n AvailableForPickupTradera = 'AvailableForPickupTradera',\n AvailableForPickupSeller = 'AvailableForPickupSeller',\n WaitingForKlarnaOrPayPal = 'WaitingForKlarnaOrPayPal',\n TheOffice = 'TheOffice',\n Other = 'Other'\n}\n\nexport enum MessageSentBy {\n CsAgent = 'CsAgent',\n Buyer = 'Buyer',\n Seller = 'Seller'\n}\n\nexport enum PurchaseOrderCancellationItemActions {\n RestartItems = 'RestartItems',\n MakeItemsAvailableForPurchaseOffer = 'MakeItemsAvailableForPurchaseOffer',\n DoNothing = 'DoNothing'\n}\n\nexport enum StrikeType {\n None = 'None',\n ItemNotReceived = 'ItemNotReceived',\n UnpaidItem = 'UnpaidItem',\n MutualCancelOfPurchase = 'MutualCancelOfPurchase',\n UnpaidItemAfterGracePeriod = 'UnpaidItemAfterGracePeriod'\n}\n\nexport interface ItemStrikeSubmission {\n strikeSubmitted: boolean;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface AddPurchaseOrderNotReceivedStrikeApiRequest {\n comment?: string | null;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface AddPurchaseOrderNotReceivedStrikeApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface PurchaseOrderNotReceivedStrikeApiResponse {\n items?: ItemStrikeSubmission[] | null;\n responseStatus?: ResponseStatus | null;\n strikeSubmitted: boolean;\n}\n\nexport interface AddMutualCancelOfPurchaseStrikeApiRequest {\n comment?: string | null;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface AddMutualCancelOfPurchaseStrikeApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ConfirmMutualCancelOfPurchaseStrikeApiRequest {\n approved: boolean;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface ConfirmMutualCancelOfPurchaseStrikeApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MutualCancelOfPurchaseStrikeApiResponse {\n items?: StrikeItem[] | null;\n /** @format uuid */\n purchaseOrderId: string;\n responseStatus?: ResponseStatus | null;\n strikeConfirmed: boolean;\n strikeSubmitted: boolean;\n}\n\nexport interface StrikeItem {\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface AddPurchaseOrderStrikeApiRequest {\n comment?: string | null;\n contactBuyerQuestionAnswer: ContactBuyerQuestionAnswer;\n itemAction: PurchaseOrderCancellationItemActions;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface AddPurchaseOrderStrikeApiResponse {\n itemAction: PurchaseOrderCancellationItemActions;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetPurchaseOrderStrikeItemsApiResponse {\n responseStatus?: ResponseStatus | null;\n strikes?: Strike[] | null;\n}\n\nexport interface Strike {\n strikeType: StrikeType;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface AddUnpaidPurchaseOrderStrikeApiRequest {\n comment?: string | null;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface AddUnpaidPurchaseOrderStrikeApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UnpaidItemStrikeApiResponse {\n responseStatus?: ResponseStatus | null;\n strikeSubmitted: boolean;\n}\n\nexport interface UnpaidPurchaseOrderStrikeApiResponse {\n items?: ItemStrikeSubmission[] | null;\n responseStatus?: ResponseStatus | null;\n strikeSubmitted: boolean;\n}\n\nexport interface CommentFeedbackApiRequest {\n comment?: string | null;\n /** @format int32 */\n gradeId: number;\n /** @format int32 */\n memberId: number;\n}\n\nexport interface CommentFeedbackApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ContactSellerApiRequest {\n /** @format int32 */\n itemId: number;\n message?: string | null;\n sendCopytoSender: boolean;\n}\n\nexport interface ContactSellerApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface Country {\n countryCodeIso2?: string | null;\n countryNameEng?: string | null;\n countryNameSwe?: string | null;\n}\n\nexport interface BlockedMemberDto {\n alias?: string | null;\n /** @format date-time */\n createdDate: string;\n /** @format int32 */\n memberId: number;\n}\n\nexport interface BookedShipping {\n hasProviderBookingFailed: boolean;\n hasShipmentLabel: boolean;\n hasShipmentReceipt: boolean;\n /** @format uuid */\n shipmentCheckoutId: string;\n /** @format uuid */\n shipmentId: string;\n shippingType?: string | null;\n trackingId?: string | null;\n trackingLink?: string | null;\n}\n\nexport interface BuyerPaidDataDto {\n /** @format int32 */\n numberOfItems: number;\n /** @format uuid */\n purchaseOrderId: string;\n shipmentBookingType?: string | null;\n}\n\nexport interface BuyerProtectionApiDto {\n /** @format double */\n buyerProtectionCost: number;\n}\n\nexport interface ContactDetailsApiDto {\n countryCodeIso2?: string | null;\n alias?: string | null;\n companyName?: string | null;\n country?: string | null;\n email?: string | null;\n firstName?: string | null;\n fullName?: string | null;\n isCompany: boolean;\n lastName?: string | null;\n /** @format int32 */\n memberId: number;\n organizationNumber?: string | null;\n phoneNumber?: string | null;\n streetName?: string | null;\n town?: string | null;\n zipCode?: string | null;\n}\n\nexport interface CreditSafeLookupResult {\n firstName?: string | null;\n givenName?: string | null;\n lastName?: string | null;\n socialSecurityNumber?: string | null;\n}\n\nexport interface CreditSafeNameVerificationResult {\n lookupResult?: CreditSafeLookupResult | null;\n status: CreditSafeNameVerificationStatus;\n}\n\nexport enum CreditSafeNameVerificationStatus {\n Valid = 'Valid',\n Invalid = 'Invalid',\n SSNFail = 'SSNFail',\n NotFound = 'NotFound',\n Error = 'Error'\n}\n\nexport interface DetailedSellerRatingApiDto {\n /** @format double */\n averageRating: number;\n category?: string | null;\n /** @format int32 */\n categoryCount: number;\n}\n\nexport interface DetailedSellerRatingSummaryForMemberApiDto {\n communication?: DetailedSellerRatingApiDto | null;\n deliveryTime?: DetailedSellerRatingApiDto | null;\n /** @format double */\n detailedSellerRatingAverage: number;\n itemDescription?: DetailedSellerRatingApiDto | null;\n /** @format int32 */\n memberId: number;\n shippingCost?: DetailedSellerRatingApiDto | null;\n}\n\nexport interface DiscountDto {\n /** @format double */\n amount: number;\n /** @format date-time */\n created: string;\n type?: string | null;\n}\n\nexport interface FeatureSummaryApiDto {\n /** @format int32 */\n cost: number;\n /** @format int32 */\n count: number;\n name?: string | null;\n}\n\nexport interface FeedbackItemApiDto {\n feedbackMemberCountryCodeIso2?: string | null;\n /** @format date-time */\n created: string;\n feedbackMemberAlias?: string | null;\n /** @format int32 */\n feedbackMemberId: number;\n feedbackMemberRole: FeedbackRoleApiDto;\n /** @format int32 */\n gradeId: number;\n /** @format int32 */\n itemCategoryId: number;\n /** @format date-time */\n itemEndDate: string;\n /** @format int32 */\n itemId: number;\n /** @format int32 */\n itemMaxBid: number;\n itemShortDescription?: string | null;\n mutualFeedbackRemovalItem?: MutualFeedbackRemovalItemApiDto | null;\n rating: FeedbackRatingApiDto;\n reply?: string | null;\n text?: string | null;\n /** @format int32 */\n totalRating: number;\n}\n\nexport enum FeedbackRatingApiDto {\n None = 'None',\n Negative = 'Negative',\n Positive = 'Positive'\n}\n\nexport enum FeedbackRatingFilter {\n All = 'All',\n Positive = 'Positive',\n Negative = 'Negative'\n}\n\nexport interface FeedbackReminderDataDto {\n isSeller: boolean;\n}\n\nexport enum FeedbackRoleApiDto {\n Buyer = 'Buyer',\n Seller = 'Seller'\n}\n\nexport enum FeedbackRoleFilter {\n All = 'All',\n Seller = 'Seller',\n Buyer = 'Buyer',\n LeftBy = 'LeftBy'\n}\n\nexport interface FeedbackSummaryItemApiDto {\n /** @format int32 */\n totalNegative: number;\n /** @format int32 */\n totalPositive: number;\n}\n\nexport enum HomepageTheme {\n Default = 'Default',\n Fashion = 'Fashion'\n}\n\nexport interface ItemTransactionApiDto {\n /** @format int32 */\n bidCount?: number | null;\n /** @format int32 */\n buyItNowPrice?: number | null;\n /** @format int32 */\n buyerMemberId: number;\n discounts?: DiscountDto[] | null;\n hasBuyerLeftFeedback: boolean;\n hasSellerLeftFeedback: boolean;\n hasTraderaAsMerchantOfRecord: boolean;\n imageUrl?: string | null;\n imageUrlTemplate?: string | null;\n isHidden: boolean;\n isPaid: boolean;\n isPaynovaPayment: boolean;\n /** @format int32 */\n itemCategoryId: number;\n /** @format int32 */\n itemId: number;\n /** @format int32 */\n itemPrice?: number | null;\n itemResellPublished: boolean;\n itemTitle?: string | null;\n itemTransactionType: ItemTransactionTypeApiDto;\n /** @format int32 */\n openingBid?: number | null;\n /** @format int32 */\n orderNumber: number;\n paidStatus?: string | null;\n /** @format uuid */\n purchaseOrderId: string;\n selectedShipping?: ShippingApiDto | null;\n sellerAlias?: string | null;\n /** @format int32 */\n sellerMemberId: number;\n /** @format int32 */\n sellerRating: number;\n trackingLink?: string | null;\n /** @format date-time */\n transactionDate: string;\n /** @format int32 */\n transactionId: number;\n}\n\nexport enum MemberAccountState {\n None = 'None',\n Active = 'Active',\n TemporarySuspended = 'TemporarySuspended',\n PermanentlySuspended = 'PermanentlySuspended',\n Deregistered = 'Deregistered'\n}\n\nexport interface MemberActiveItemsSummaryApiDto {\n /** @format int32 */\n auctionCount: number;\n /** @format int32 */\n bidCount: number;\n /** @format int32 */\n bidSum: number;\n /** @format int32 */\n buyItNowCount: number;\n /** @format int32 */\n itemCount: number;\n /** @format int32 */\n shopItemCount: number;\n /** @format int32 */\n sumOpeningBids: number;\n}\n\nexport interface MemberContactDetailsApiDto {\n countryCodeIso2?: string | null;\n alias?: string | null;\n country?: string | null;\n email?: string | null;\n firstName?: string | null;\n fullName?: string | null;\n lastName?: string | null;\n /** @format int32 */\n memberId: number;\n phoneNumber?: string | null;\n ssn?: string | null;\n streetName?: string | null;\n town?: string | null;\n zipCode?: string | null;\n}\n\nexport interface MemberLoginDetailDto {\n accountState: MemberAccountState;\n alias?: string | null;\n hasTraderMessage: boolean;\n heroImageUrl?: string | null;\n isCompanyUser: boolean;\n /** @format int32 */\n memberId: number;\n /** @format date-time */\n memberSince: string;\n /** @format int32 */\n totalRating: number;\n}\n\nexport interface MemberPermissionsApiDto {\n apiRegistrationPermission?: PermissionApiDto | null;\n sellPermission?: PermissionApiDto | null;\n}\n\nexport interface MemberSoldItemApiDto {\n /** @format int32 */\n bidCount?: number | null;\n bookedShipping?: BookedShipping | null;\n buyerContactDetails?: MemberContactDetailsApiDto | null;\n buyerMemberAlias?: string | null;\n /** @format int32 */\n buyerMemberId: number;\n /** @format int32 */\n buyerTotalRating: number;\n /** @format int32 */\n categoryId: number;\n discounts?: DiscountDto[] | null;\n /** @format int32 */\n fixedPrice?: number | null;\n hasBuyerLeftFeedback: boolean;\n hasSellerLeftFeedback: boolean;\n hiddenBySeller: boolean;\n isDiscountAfterPaymentSupported: boolean;\n isDiscountBeforePaymentSupported: boolean;\n isMarkedAsPaidByBuyer: boolean;\n isMarkedAsPaidBySeller: boolean;\n isMarkedAsShipped: boolean;\n /** @deprecated */\n isPaidWithIntegratedPaymentOption: boolean;\n isShippingBooked: boolean;\n /** @format int32 */\n itemId: number;\n itemTitle?: string | null;\n itemTransactionType: ItemTransactionTypeApiDto;\n /** @format int32 */\n leadingBid?: number | null;\n mainImage?: ItemImageUrls | null;\n mainImageTemplate?: string | null;\n offeredShippingOptions?: ShippingApiDto[] | null;\n /** @format int32 */\n openingBid?: number | null;\n paidStatus?: string | null;\n /** @deprecated */\n paymentProvider?: string | null;\n /** @format int32 */\n price: number;\n /** @format uuid */\n purchaseOrderId: string;\n /** @format int32 */\n reservedPrice?: number | null;\n selectedShipping?: ShippingApiDto | null;\n shippingDiscount?: ShippingDiscount | null;\n soldItemState?: string | null;\n /** @deprecated */\n trackingLink?: string | null;\n /** @format date-time */\n transactionDate: string;\n /** @format int32 */\n transactionId: number;\n userReference?: string | null;\n}\n\nexport interface MemberSoldItemsSummaryApiDto {\n /** @format int32 */\n auctionCount: number;\n /** @format int32 */\n bidCount: number;\n /** @format int32 */\n bidSum: number;\n /** @format int32 */\n buyItNowCount: number;\n /** @format int32 */\n itemCount: number;\n /** @format int32 */\n shopItemCount: number;\n /** @format int32 */\n sumOpeningBids: number;\n /** @format int32 */\n totalPrice: number;\n}\n\nexport interface MutualFeedbackRemovalItemApiDto {\n /** @format int32 */\n feedbackRemovalRequestId?: number | null;\n status: MutualFeedbackRemovalStatus;\n /** @deprecated */\n statusText?: string | null;\n /** @format int32 */\n transactionId: number;\n}\n\nexport enum MutualFeedbackRemovalStatus {\n Available = 'Available',\n Unavailable = 'Unavailable',\n Requested = 'Requested',\n Received = 'Received',\n Denied = 'Denied'\n}\n\nexport interface NotificationApiDto {\n /** @format int32 */\n amount: number;\n buyerPaidData?: BuyerPaidDataDto | null;\n feedbackReminderData?: FeedbackReminderDataDto | null;\n isRead: boolean;\n /** @format int32 */\n itemId: number;\n mainImage?: ItemImageUrls | null;\n mainImageTemplate?: string | null;\n /** @format int32 */\n memberId: number;\n purchaseOrderUnpaidData?: PurchaseOrderUnpaidDataDto | null;\n shipmentSentData?: ShipmentSentDataDto | null;\n /** @format date-time */\n timeStamp: string;\n title?: string | null;\n type?: string | null;\n wishListItemsEndingTodayData?: WishListItemsEndingTodayDataDto | null;\n wishlistItemPriceLoweredData?: WishlistItemPriceLoweredDataDto | null;\n}\n\nexport interface OfferedShippingOption {\n /** @format int32 */\n cost: number;\n type?: string | null;\n}\n\nexport interface PaymentOptionApiDto {\n displayName?: string | null;\n paymentType?: string | null;\n}\n\nexport interface PermissionApiDto {\n isPermitted: boolean;\n requirementsNotMet?: RequirementTypeApi[] | null;\n}\n\nexport interface PickListBuyerApiDto {\n buyerContactDetails?: MemberContactDetailsApiDto | null;\n buyerMemberAlias?: string | null;\n /** @format int32 */\n buyerMemberId: number;\n /** @format int32 */\n feedbackCount: number;\n items?: MemberSoldItemApiDto[] | null;\n}\n\nexport interface PickListBuyerV2ApiDto {\n buyerContactDetails?: ContactDetailsApiDto | null;\n buyerMemberAlias?: string | null;\n /** @format int32 */\n buyerMemberId: number;\n items?: PickListItemApiDto[] | null;\n}\n\nexport interface PickListItemApiDto {\n hasSellerLeftFeedback: boolean;\n hiddenBySeller: boolean;\n isMarkedAsPaidBySeller: boolean;\n isMarkedAsShipped: boolean;\n /** @format int32 */\n itemId: number;\n itemTitle?: string | null;\n itemUrl?: string | null;\n mainImage?: ItemImageUrls | null;\n mainImageTemplate?: string | null;\n offeredShippingOptions?: OfferedShippingOption[] | null;\n /** @format int32 */\n price: number;\n /** @format uuid */\n purchaseOrderId: string;\n selectedShipping?: SelectedShippingOption | null;\n temporaryShippingAddress?: Address | null;\n /** @format double */\n totalDiscountAmount: number;\n /** @format date-time */\n transactionDate: string;\n /** @format int32 */\n transactionId: number;\n userReference?: string | null;\n}\n\nexport interface PublicProfileApiDto {\n alias?: string | null;\n city?: string | null;\n country?: string | null;\n /** @format double */\n detailedSellerRating?: number | null;\n hasShop: boolean;\n isCompanyUser: boolean;\n /** @format int32 */\n memberId: number;\n /** @format int32 */\n totalRating: number;\n zipCode?: string | null;\n}\n\nexport interface PurchaseOrderUnpaidDataDto {\n /** @format int32 */\n numberOfItems: number;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport enum RequirementTypeApi {\n Unknown = 'Unknown',\n IsOverMinimumAge = 'IsOverMinimumAge'\n}\n\nexport interface SelectedShippingOption {\n /** @format int32 */\n cost: number;\n type?: string | null;\n}\n\nexport enum SellerAutoFeedbackCriteria {\n Manual = 'Manual',\n PositiveFeedback = 'PositiveFeedback',\n Paid = 'Paid'\n}\n\nexport interface ShipmentSentDataDto {\n /** @format int32 */\n numberOfItems: number;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface ShippingApiDto {\n fromCountryCodeIso2?: string | null;\n toCountryCodeIso2?: string | null;\n /** @format double */\n cost: number;\n isFreeShipping: boolean;\n isTakeaway: boolean;\n name?: string | null;\n partnerProvider?: string | null;\n /** @format int32 */\n productId?: number | null;\n type?: string | null;\n /** @format int32 */\n weight?: number | null;\n}\n\nexport interface TotalFeedbackSummaryForMemberApiDto {\n lastMonth?: FeedbackSummaryItemApiDto | null;\n lastSixMonths?: FeedbackSummaryItemApiDto | null;\n lastTwelveMonths?: FeedbackSummaryItemApiDto | null;\n /** @format int32 */\n memberId: number;\n sinceRegistration?: FeedbackSummaryItemApiDto | null;\n unique?: FeedbackSummaryItemApiDto | null;\n}\n\nexport interface TranslatedFeedbackItemApiDto {\n /** @format int32 */\n gradeId: number;\n reply?: string | null;\n text?: string | null;\n}\n\nexport interface WishListItemsEndingTodayDataDto {\n /** @format int32 */\n numberOfItems: number;\n}\n\nexport enum WishListStatusFilter {\n All = 'All',\n Active = 'Active',\n Ended = 'Ended'\n}\n\nexport interface WishlistItemPriceLoweredDataDto {\n currencyCode?: string | null;\n /** @format int32 */\n newPrice: number;\n}\n\nexport interface GetNotificationsApiResponse {\n items?: NotificationApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n /** @format int64 */\n unreadCount: number;\n}\n\nexport type GetUnreadNotificationsCountApiRequest = object;\n\nexport interface GetUnreadNotificationsCountApiResponse {\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n unreadCount: number;\n}\n\nexport type SetLastNotifiedApiRequest = object;\n\nexport interface SetLastNotifiedApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface CreditMemoByEncryptedIdApiResponse {\n /** @format byte */\n pdfFileContent?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface CreditMemoDto {\n creditMemoDocumentId?: string | null;\n /** @format int64 */\n invoiceId: number;\n}\n\nexport interface GetBraintreeInvoicePaymentApiResponse {\n /** @format double */\n amount: number;\n /** @format int64 */\n invoiceId: number;\n orderId?: string | null;\n responseStatus?: ResponseStatus | null;\n status?: string | null;\n}\n\nexport interface GetCreditMemoPdfApiResponse {\n /** @format byte */\n pdfFileContent?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetInvoiceCsvApiResponse {\n /** @format byte */\n csvFileContent?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetInvoicePdfApiResponse {\n /** @format byte */\n pdfFileContent?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetInvoicesApiResponse {\n invoices?: InvoiceDto[] | null;\n isBillingUnderMaintenance: boolean;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n}\n\nexport interface InvoiceDto {\n /** @format double */\n amountOwed: number;\n creditMemos?: CreditMemoDto[] | null;\n csvGenerated: boolean;\n /** @format date-time */\n dueDate: string;\n /** @format double */\n invoiceAmount: number;\n /** @format date-time */\n invoiceDate: string;\n /** @format int64 */\n invoiceId: number;\n /** @format int64 */\n ocr: number;\n paymentStatus?: string | null;\n}\n\nexport interface FindMembersApiResponse {\n members?: MemberLoginDetailDto[] | null;\n responseStatus?: ResponseStatus | null;\n /** @format int32 */\n totalCount: number;\n}\n\nexport interface GetAllItemsForLeaveFeedbackAsBuyerApiResponse {\n items?: ItemTransactionApiDto[] | null;\n /** @format int64 */\n itemsLeft: number;\n /** @format int64 */\n paidTotalCount: number;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n}\n\nexport interface GetAllItemsForLeaveFeedbackAsSellerApiResponse {\n items?: MemberSoldItemApiDto[] | null;\n /** @format int64 */\n itemsLeft: number;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n}\n\nexport type GetAvailableCountriesForShippingApiRequest = object;\n\nexport interface GetAvailableCountriesForShippingApiResponse {\n availableCountries?: Country[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetBlockedMembersApiRequest = object;\n\nexport interface GetBlockedMembersApiResponse {\n blockedMembers?: BlockedMemberDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetBlueshiftEventApiCredentialsApiRequest = object;\n\nexport interface GetBlueshiftEventApiCredentialsApiResponse {\n eventApiKey?: string | null;\n eventSignature?: string | null;\n responseStatus?: ResponseStatus | null;\n verificationKey?: string | null;\n}\n\nexport interface GetImageUploadUrlApiResponse {\n responseStatus?: ResponseStatus | null;\n signedUrl?: string | null;\n}\n\nexport type GetIsCombinedShippingEnabledApiRequest = object;\n\nexport interface GetIsCombinedShippingEnabledApiResponse {\n isEnabled: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetItemsForLeaveFeedbackAsBuyerApiResponse {\n responseStatus?: ResponseStatus | null;\n transactions?: ItemTransactionApiDto[] | null;\n}\n\nexport interface GetItemsForLeaveFeedbackAsSellerApiResponse {\n items?: MemberSoldItemApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMemberGeoDataApiRequest = object;\n\nexport interface GetMemberGeoDataApiResponse {\n /** @format double */\n latitude: number;\n /** @format double */\n longitude: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMemberSuspendedUntilApiRequest = object;\n\nexport interface GetMemberSuspendedUntilApiResponse {\n responseStatus?: ResponseStatus | null;\n /** @format date-time */\n suspendedUntil?: string | null;\n}\n\nexport type GetMemberVatDetailsApiRequest = object;\n\nexport interface GetMemberVatDetailsApiResponse {\n memberIsSubjectToVat: boolean;\n responseStatus?: ResponseStatus | null;\n /** @format byte */\n selectableVatValues?: string | null;\n}\n\nexport interface GetMemberWithAliasApiResponse {\n alias?: string | null;\n hasShopAccount: boolean;\n isCompanyUser: boolean;\n /** @format int32 */\n memberId: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetSystemMessagesApiRequest = object;\n\nexport interface GetSystemMessagesApiResponse {\n items?: SystemMessage[] | null;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n}\n\nexport interface GetTransactionFeedbacksApiResponse {\n feedbacks?: TransactionFeedbackApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GradeTransactionsApiResponse {\n gradesTransactions?: Record;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface CompleteQuestionnaireApiRequest {\n languageCodeIso2?: string | null;\n fieldValues?: Record;\n /** @format int32 */\n questionnaireId: number;\n}\n\nexport interface CompleteQuestionnaireApiResponse {\n alias?: string | null;\n isValid: boolean;\n responseStatus?: ResponseStatus | null;\n ruleViolations?: Record;\n}\n\nexport type GetKycPendingActionsApiRequest = object;\n\nexport interface GetKycPendingActionsApiResponse {\n /** @format int32 */\n memberId: number;\n pendingActionActionTypes?: string[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetKycQuestionnairePageDefinitionApiResponse {\n alias?: string | null;\n /** @format int32 */\n memberId: number;\n pageDefinition?: any;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface InitializeQuestionnaireApiRequest {\n alias?: string | null;\n}\n\nexport interface InitializeQuestionnaireApiResponse {\n /** @format int32 */\n questionnaireId: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface LeaveFeedbackAsBuyerApiResponse {\n responseStatus?: ResponseStatus | null;\n transaction?: ItemTransactionApiDto | null;\n}\n\nexport interface LeaveFeedbackAsSellerApiResponse {\n responseStatus?: ResponseStatus | null;\n transaction?: ItemTransactionApiDto | null;\n}\n\nexport type MemberContactDetailsApiRequest = object;\n\nexport interface MemberContactDetailsApiResponse {\n countryCodeIso2?: string | null;\n alias?: string | null;\n country?: string | null;\n email?: string | null;\n firstName?: string | null;\n fullName?: string | null;\n lastName?: string | null;\n /** @format int32 */\n memberId: number;\n phoneNumber?: string | null;\n responseStatus?: ResponseStatus | null;\n ssn?: string | null;\n streetName?: string | null;\n town?: string | null;\n zipCode?: string | null;\n}\n\nexport type MemberEmailSettingsApiRequest = object;\n\nexport interface MemberEmailSettingsApiResponse {\n acceptsNewsLetter: boolean;\n acceptsOfferEmails: boolean;\n acceptsUnknownDeviceOrIpEmails: boolean;\n acceptsUpiInfoEmails: boolean;\n /** @format int32 */\n memberId: number;\n notifyBeforeWishListItemEnds: boolean;\n notifyOnFirstWinningBid: boolean;\n notifyWhenItemBecomesUnsold: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MemberFeedbackApiResponse {\n accountState: MemberAccountState;\n detailedSellerRatingSummaryForMember?: DetailedSellerRatingSummaryForMemberApiDto | null;\n items?: FeedbackItemApiDto[] | null;\n /** @format date-time */\n memberSince: string;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n totalFeedbackSummary?: TotalFeedbackSummaryForMemberApiDto | null;\n}\n\nexport interface MemberFeedbackItemsApiResponse {\n items?: FeedbackItemApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n}\n\nexport interface MemberFeedbackSummaryApiResponse {\n accountState: MemberAccountState;\n detailedSellerRatingSummary?: DetailedSellerRatingSummaryForMemberApiDto | null;\n /** @format date-time */\n memberSince: string;\n responseStatus?: ResponseStatus | null;\n totalFeedbackSummary?: TotalFeedbackSummaryForMemberApiDto | null;\n}\n\nexport interface MemberPurchaseApiResponse {\n buyer?: MemberContactDetailsApiDto | null;\n item?: ItemTransactionApiDto | null;\n responseStatus?: ResponseStatus | null;\n seller?: MemberContactDetailsApiDto | null;\n}\n\nexport interface MemberPurchaseOrderApiResponse {\n buyer?: ContactDetailsApiDto | null;\n isAutomaticSellerReimbursementAllowed: boolean;\n items?: ItemTransactionApiDto[] | null;\n paymentMethod?: string | null;\n responseStatus?: ResponseStatus | null;\n seller?: ContactDetailsApiDto | null;\n}\n\nexport interface MemberPurchaseOrderItemApiResponse {\n items?: ItemTransactionApiDto[] | null;\n paymentMethod?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type MemberSelloProfileApiRequest = object;\n\nexport interface MemberSelloProfileApiResponse {\n accountState: MemberAccountState;\n alias?: string | null;\n city?: string | null;\n /** @format int32 */\n combinedShippingDays: number;\n /** @format float */\n detailedSellerRatingAverage?: number | null;\n email?: string | null;\n firstName?: string | null;\n hasShop: boolean;\n isCompanyUser: boolean;\n isSwedishUser: boolean;\n /** @format int32 */\n memberId: number;\n /** @format date-time */\n memberSince: string;\n responseStatus?: ResponseStatus | null;\n /** @format int32 */\n totalRating: number;\n}\n\nexport type MemberServerStorageListApiRequest = object;\n\nexport interface MemberServerStorageListApiResponse {\n responseStatus?: ResponseStatus | null;\n rows?: Row[] | null;\n}\n\nexport interface MemberServerStoragePutApiRequest {\n key?: string | null;\n value?: string | null;\n}\n\nexport interface MemberServerStoragePutApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type MemberSessionDataApiRequest = object;\n\nexport interface MemberSessionDataApiResponse {\n countryCodeIso2?: string | null;\n languageCodeIso2?: string | null;\n /** @format int32 */\n age?: number | null;\n alias?: string | null;\n aliasSlug?: string | null;\n appleId?: string | null;\n automaticTranslationPreferred: boolean;\n birthDate?: string | null;\n blueshiftEventSignature?: string | null;\n city?: string | null;\n country?: string | null;\n currencyCode?: string | null;\n /** @format float */\n detailedSellerRating?: number | null;\n email?: string | null;\n facebookId?: string | null;\n firstName?: string | null;\n gender?: string | null;\n googleId?: string | null;\n hasTraderaPay: boolean;\n heroImageUrl?: string | null;\n isBuyer: boolean;\n isSeller: boolean;\n isTrustedMember: boolean;\n klarnaId?: string | null;\n lastName?: string | null;\n /** @format int32 */\n memberId: number;\n memberIdHash?: string | null;\n /** @format int32 */\n memberState: number;\n permissions?: MemberPermissionsApiDto | null;\n /** @format date-time */\n registrationDate: string;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MemberShopDetailsApiResponse {\n alias?: string | null;\n companyInfo?: string | null;\n contactInfo?: string | null;\n hasLogo: boolean;\n logoFormat?: string | null;\n /** @format int32 */\n memberId: number;\n purchaseTerms?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface FirebaseConfiguration {\n apiKey?: string | null;\n authDomain?: string | null;\n databaseUrl?: string | null;\n functionsEmulatorUrl?: string | null;\n projectId?: string | null;\n region?: string | null;\n storageBucket?: string | null;\n}\n\nexport type GetMessagingConfigurationApiRequest = object;\n\nexport interface GetMessagingConfigurationApiResponse {\n firebaseConfiguration?: FirebaseConfiguration | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetMessagingEmailNotifyApiResponse {\n emailNotify: MessagingEmailNotification;\n /** @format int32 */\n memberId: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetMessagingItemApiResponse {\n /** @format int32 */\n price: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMessagingSilentApiRequest = object;\n\nexport interface GetMessagingSilentApiResponse {\n enabled: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMessagingStatsApiRequest = object;\n\nexport interface GetMessagingStatsApiResponse {\n responseStatus?: ResponseStatus | null;\n /** @format int32 */\n threads: number;\n /** @format int32 */\n threadsUnread: number;\n}\n\nexport enum MessagingEmailNotification {\n All = 'All',\n Unread = 'Unread',\n None = 'None'\n}\n\nexport interface SetMessagingEmailNotifyApiRequest {\n emailNotify: MessagingEmailNotification;\n}\n\nexport interface SetMessagingEmailNotifyApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetMessagingSilentApiRequest {\n enabled: boolean;\n}\n\nexport interface SetMessagingSilentApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ConfirmMutualFeedbackRemovalApiRequest {\n /** @format int32 */\n feedbackRemovalRequestId: number;\n}\n\nexport interface ConfirmMutualFeedbackRemovalApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport enum ConfirmationStatus {\n ConfirmationAllowed = 'ConfirmationAllowed',\n RequestIsOlderThen30Days = 'RequestIsOlderThen30Days',\n RequestedBySubmitter = 'RequestedBySubmitter'\n}\n\nexport interface CreateFeedbackRemovalApiRequest {\n comment?: string | null;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface CreateFeedbackRemovalApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport enum CreationStatus {\n CreationAllowed = 'CreationAllowed',\n CreatedBySubmitter = 'CreatedBySubmitter',\n CanBeAcceptedByReceiver = 'CanBeAcceptedByReceiver'\n}\n\nexport interface DenyMutualFeedbackRemovalApiRequest {\n /** @format int32 */\n feedbackRemovalRequestId: number;\n}\n\nexport interface DenyMututalFeedbackRemovalApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport enum FeedbackRemovalFlowStatus {\n CanBeStarted = 'CanBeStarted',\n CanBeAccepted = 'CanBeAccepted',\n SubmittedAlready = 'SubmittedAlready',\n NotApplicable = 'NotApplicable'\n}\n\nexport enum FeedbackRemovalState {\n Pending = 'Pending',\n Accepted = 'Accepted',\n Rejected = 'Rejected'\n}\n\nexport interface FlowStatusRequest {\n /** @format int32 */\n feedbackMemberId: number;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface FlowStatusResponse {\n feedbacksRemovalRequest?: MutualFeedbackRemovalApiDto | null;\n flowStatus: FeedbackRemovalFlowStatus;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface MemberDetails {\n alias?: string | null;\n /** @format int32 */\n id: number;\n}\n\nexport interface MutualFeedbackRemovalApiDto {\n comment?: string | null;\n /** @format date-time */\n completed?: string | null;\n /** @format date-time */\n created: string;\n fromMember?: MemberDetails | null;\n /** @format int32 */\n id: number;\n isCompleted: boolean;\n /** @format int32 */\n itemId: number;\n status?: FeedbackRemovalState | null;\n toMember?: MemberDetails | null;\n /** @format int32 */\n transactionBuyerMemberId: number;\n /** @format int32 */\n transactionId: number;\n /** @format int32 */\n transactionSellerMemberId: number;\n}\n\nexport interface TransactionFeedbackApiDto {\n /** @format date-time */\n created: string;\n fromMemberAlias?: string | null;\n /** @format int32 */\n fromMemberId: number;\n memberRole: TransactionFeedbackRole;\n rating: TransactionFeedbackRating;\n text?: string | null;\n toMemberAlias?: string | null;\n /** @format int32 */\n toMemberId: number;\n}\n\nexport enum TransactionFeedbackRating {\n None = 'None',\n Negative = 'Negative',\n Positive = 'Positive'\n}\n\nexport enum TransactionFeedbackRole {\n Buyer = 'Buyer',\n Seller = 'Seller'\n}\n\nexport interface FeedbackRemovalApiResponse {\n feedbackRemovalRequest?: MutualFeedbackRemovalApiDto | null;\n feedbacks?: TransactionFeedbackApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface FeedbackRemovalsApiRequest {\n feedbacks?: FlowStatusRequest[] | null;\n}\n\nexport interface FeedbackRemovalsApiResponse {\n feedbacksRemovalRequests?: FlowStatusResponse[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ValidateConfirmationApiResponse {\n confirmationStatus: ConfirmationStatus;\n feedbackRemovalRequest?: MutualFeedbackRemovalApiDto | null;\n feedbacks?: TransactionFeedbackApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ValidateCreationApiResponse {\n creationStatus: CreationStatus;\n feedbackRemovalRequest?: MutualFeedbackRemovalApiDto | null;\n feedbacks?: TransactionFeedbackApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport enum AvailablePayoutOption {\n SwedishBankAccount = 'SwedishBankAccount',\n InternationalBankAccount = 'InternationalBankAccount',\n PayPal = 'PayPal',\n Swish = 'Swish',\n Tink = 'Tink',\n Unknown = 'Unknown'\n}\n\nexport interface CompleteHyperwalletTransferMethodApiRequest {\n transferMethodToken?: string | null;\n transferMethodType?: string | null;\n}\n\nexport interface CompleteHyperwalletTransferMethodApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetHyperwalletAuthenticationTokenApiRequest = object;\n\nexport interface GetHyperwalletAuthenticationTokenApiResponse {\n authenticationToken?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetHyperwalletMemberDetailsApiRequest = object;\n\nexport interface GetHyperwalletMemberDetailsApiResponse {\n payeeVerificationStatus?: string | null;\n responseStatus?: ResponseStatus | null;\n userToken?: string | null;\n}\n\nexport type GetHyperwalletTransferMethodViewModelApiRequest = object;\n\nexport interface GetHyperwalletTransferMethodViewModelApiResponse {\n responseStatus?: ResponseStatus | null;\n userToken?: string | null;\n widgetBaseUrl?: string | null;\n}\n\nexport type GetIsTraderaPayEnabledApiRequest = object;\n\nexport interface GetIsTraderaPayEnabledApiResponse {\n isEnabled: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetPayoutSettingsModalViewModelApiResponse {\n availablePayoutOptions?: AvailablePayoutOption[] | null;\n hyperwallet?: PayoutSettingsModalHyperwallet | null;\n member?: PayoutSettingsModalMember | null;\n payoutFrequencyOption?: string | null;\n responseStatus?: ResponseStatus | null;\n tink?: PayoutSettingsModalTink | null;\n}\n\nexport type GetPayoutSettingsViewModelApiRequest = object;\n\nexport interface GetPayoutSettingsViewModelApiResponse {\n hyperwalletOnboardingProblems?: HyperwalletOnboardingProblem[] | null;\n hyperwalletPayeeVerificationStatus?: string | null;\n payoutDestination?: string | null;\n payoutDestinationType?: string | null;\n payoutFrequencyOption?: string | null;\n payoutFrequencyOptions?: string[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetPayoutTransferMethodUpdateStatusApiResponse {\n errorCode?: string | null;\n responseStatus?: ResponseStatus | null;\n status?: string | null;\n}\n\nexport interface HyperwalletOnboardingProblem {\n details?: string | null;\n type?: string | null;\n}\n\nexport interface MatchBankApiRequest {\n bankAccountNumber?: string | null;\n clearingNumber?: string | null;\n}\n\nexport interface MatchBankApiResponse {\n bankFound: boolean;\n /** @deprecated */\n bankName?: string | null;\n ok: boolean;\n /** @deprecated */\n requireBankIdVerification: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface PayoutSettingsModalHyperwallet {\n userToken?: string | null;\n widgetBaseUrl?: string | null;\n}\n\nexport interface PayoutSettingsModalMember {\n emailAddress?: string | null;\n isCompany: boolean;\n /** @format int32 */\n memberId: number;\n phoneNumber?: string | null;\n requireBankIdVerification: boolean;\n}\n\nexport interface PayoutSettingsModalTink {\n tinkLinkUrl?: string | null;\n}\n\nexport type RemoveBankAccountPayoutTransferMethodApiRequest = object;\n\nexport interface RemoveBankAccountPayoutTransferMethodApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type RemovePayPalPayoutTransferMethodApiRequest = object;\n\nexport interface RemovePayPalPayoutTransferMethodApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type RemovePayoutTransferMethodApiRequest = object;\n\nexport interface RemovePayoutTransferMethodApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ResendPayoutTransferMethodVerificationCodeApiRequest {\n /** @format uuid */\n processCorrelationId: string;\n swishNumber?: string | null;\n}\n\nexport interface ResendPayoutTransferMethodVerificationCodeApiResponse {\n errorCode?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetBankAccountPayoutTransferMethodApiRequest {\n bankAccountNumber?: string | null;\n bankIdOrderRef?: string | null;\n clearingNumber?: string | null;\n}\n\nexport interface SetBankAccountPayoutTransferMethodApiResponse {\n errorCode?: string | null;\n /** @format uuid */\n processCorrelationId: string;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type SetHyperwalletPayeeVerificationAsSubmittedApiRequest = object;\n\nexport interface SetHyperwalletPayeeVerificationAsSubmittedApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetPayPalPayoutTransferMethodApiRequest {\n bankIdOrderRef?: string | null;\n emailAddress?: string | null;\n}\n\nexport interface SetPayPalPayoutTransferMethodApiResponse {\n errorCode?: string | null;\n /** @format uuid */\n processCorrelationId: string;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetPayoutTransferMethodUsingTinkApiRequest {\n accountNumber?: string | null;\n bankIdOrderRef?: string | null;\n}\n\nexport interface SetPayoutTransferMethodUsingTinkApiResponse {\n errorCode?: string | null;\n /** @format uuid */\n processCorrelationId: string;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetSwishPayoutTransferMethodApiRequest {\n bankIdOrderRef?: string | null;\n swishNumber?: string | null;\n}\n\nexport interface SetSwishPayoutTransferMethodApiResponse {\n errorCode?: string | null;\n /** @format uuid */\n processCorrelationId: string;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface VerifyPayoutTransferMethodApiRequest {\n /** @format uuid */\n processCorrelationId: string;\n verificationCode?: string | null;\n}\n\nexport interface VerifyPayoutTransferMethodApiResponse {\n errorCode?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface BankIdBeginWithIdApiRequest {\n /** @format int32 */\n memberId: number;\n}\n\nexport interface BankIdPasswordRecoveryCancelApiRequest {\n bankIdOrderRef?: string | null;\n /** @format int32 */\n memberid: number;\n}\n\nexport interface ChangeAliasApiRequest {\n browser?: string | null;\n ipAddress?: string | null;\n location?: string | null;\n newAlias?: string | null;\n operatingSystem?: string | null;\n}\n\nexport interface ChangeAliasApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ChangeEmailWithIdApiRequest {\n bankIdOrderRef?: string | null;\n email?: string | null;\n /** @format int32 */\n memberId: number;\n userIpAddress?: string | null;\n}\n\nexport interface ChangeEmailWithIdApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ChangePasswordApiRequest {\n password?: string | null;\n}\n\nexport interface ChangePasswordApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ChangePasswordWithIdApiRequest {\n /** @format int32 */\n memberId: number;\n password?: string | null;\n}\n\nexport interface CreateTaxIdentificationImageUploadUrlApiRequest {\n contentType?: string | null;\n}\n\nexport interface CreateTaxIdentificationImageUploadUrlApiResponse {\n objectName?: string | null;\n responseStatus?: ResponseStatus | null;\n uploadUrl?: string | null;\n}\n\nexport type CreateVerificationCodeApiRequest = object;\n\nexport interface CreateVerificationCodeApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface CreateVerificationCodeWithMemberIdApiRequest {\n /** @format int32 */\n memberId: number;\n recoveryFlowType: RecoveryFlowType;\n}\n\nexport interface CreateVerificationCodeWithMemberIdApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type DeactivateMemberAccountPermanentlyApiRequest = object;\n\nexport interface DeactivateMemberAccountPermanentlyApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface DeactivateMemberAccountTemporarilyApiRequest {\n comment?: string | null;\n}\n\nexport interface DeactivateMemberAccountTemporarilyApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GenerateMemberReferralCodeApiRequest = object;\n\nexport interface GenerateMemberReferralCodeApiResponse {\n /** @format double */\n amount: number;\n referralCode?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetAccountDeactivationSettingsApiRequest = object;\n\nexport interface GetAccountDeactivationSettingsApiResponse {\n isAccountDeactivationAllowed: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetBraintreeOnboardingDetailsApiRequest = object;\n\nexport interface GetBraintreeOnboardingDetailsApiResponse {\n isAccountDetailsSupplied: boolean;\n maskedBankAccount?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetHomepageThemeSettingApiRequest = object;\n\nexport interface GetHomepageThemeSettingApiResponse {\n isChangeAllowed: boolean;\n responseStatus?: ResponseStatus | null;\n theme: HomepageTheme;\n}\n\nexport type GetMagicalSyiEnabledApiRequest = object;\n\nexport interface GetMagicalSyiEnabledApiResponse {\n enabled: boolean;\n isChangeAllowed: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetMemberBankIdVerificationApiResponse {\n bankIdFormattedPersonalNumber?: string | null;\n /** @format date-time */\n lastVerifiedDate: string;\n /** @format date-time */\n manualIdentityVerificationValidTo: string;\n needInitialVerification: boolean;\n needsVerification: boolean;\n responseStatus?: ResponseStatus | null;\n supportsVerification: boolean;\n verificationReason: VerificationReason;\n}\n\nexport type GetMemberCompanyDac7StatusApiRequest = object;\n\nexport interface GetMemberCompanyDac7StatusApiResponse {\n isUnderDac7Requirements: boolean;\n hasRegisteredTaxIdentificationNumber: boolean;\n hasRegisteredVatNumber: boolean;\n responseStatus?: ResponseStatus | null;\n shouldProvideTaxBasis: boolean;\n /** @deprecated */\n shouldProvideVatNumber: boolean;\n}\n\nexport type GetMemberCompanyMoneyTransferLicenseStatusApiRequest = object;\n\nexport interface GetMemberCompanyMoneyTransferLicenseStatusApiResponse {\n hasApprovedMoneyTransferLicenseAgreement: boolean;\n hasCompanyContactSsn: boolean;\n /** @deprecated */\n isCompanyContactSignatory: boolean;\n isEligibleToSignMoneyTransferLicenseAgreement: boolean;\n /** @deprecated */\n isUnderLicense: boolean;\n moneyTransferLicenseAgreementName?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMemberConsentApiRequest = object;\n\nexport interface GetMemberConsentApiResponse {\n hasTraderaPayConsent: boolean;\n isEligibleToSignMoneyTransferLicenseAgreement: boolean;\n /** @deprecated */\n isUnderLicense: boolean;\n needsConsentOfTraderaPayAgreement?: string | null;\n responseStatus?: ResponseStatus | null;\n signatoryVerificationRequired: boolean;\n}\n\nexport type GetMemberEmailNotificationsSettingsViewModelApiRequest = object;\n\nexport interface GetMemberEmailNotificationsSettingsViewModelApiResponse {\n email?: MemberEmailNotificationsSettingsEmailApiDto | null;\n /** @format int32 */\n memberId: number;\n messaging?: MemberEmailNotificationsSettingsMessagingApiDto | null;\n responseStatus?: ResponseStatus | null;\n silentMessaging?: MemberSilentMessagingSettingApiDto | null;\n}\n\nexport type GetMemberHasTaxIdentificationNumberApiRequest = object;\n\nexport interface GetMemberHasTaxIdentificationNumberApiResponse {\n hasTaxIdentificationNumber: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMemberLocalizationApiRequest = object;\n\nexport interface GetMemberLocalizationApiResponse {\n languageCodeIso2?: string | null;\n automaticTranslationPreferred: boolean;\n currencyCode?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMemberProfileSettingsViewModelApiRequest = object;\n\nexport interface GetMemberProfileSettingsViewModelApiResponse {\n accountInformation?: MemberProfileSettingsAccountInformationApiDto | null;\n /** @format int32 */\n memberId: number;\n personalData?: MemberProfileSettingsPersonalDataApiDto | null;\n presentation?: MemberProfileSettingsPresentationApiDto | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMemberSecuritySettingsViewModelApiRequest = object;\n\nexport interface GetMemberSecuritySettingsViewModelApiResponse {\n accountDeactivation?: MemberSecuritySettingsAccountDeactivationApiDto | null;\n memberBlocking?: MemberSecuritySettingsMemberBlockingApiDto | null;\n /** @format int32 */\n memberId: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetMemberSellerSettingsViewModelApiRequest = object;\n\nexport interface GetMemberSellerSettingsViewModelApiResponse {\n autoFeedback?: MemberSellerSettingsAutoFeedbackApiDto | null;\n autoShipmentCheckout?: MemberSellerSettingsAutoShipmentCheckoutApiDto | null;\n combinedShipping?: MemberSellerSettingsCombinedShippingApiDto | null;\n commitOnPayment?: MemberSellerSettingsCommitOnPaymentApiDto | null;\n itemLocalization?: MemberSellerSettingsItemLocalizationApiDto | null;\n magicalSyi?: MemberSellerSettingsMagicalSyiApiDto | null;\n makeAnOffer?: MemberSellerSettingsMakeAnOfferApiDto | null;\n /** @format int32 */\n memberId: number;\n responseStatus?: ResponseStatus | null;\n shippingFeeRule?: MemberSellerSettingsShippingFeeRuleApiDto | null;\n}\n\nexport type GetMemberShouldCollectTaxIdentificationNumberApiRequest = object;\n\nexport interface GetMemberShouldCollectTaxIdentificationNumberApiResponse {\n responseStatus?: ResponseStatus | null;\n shouldCollectBirthDate: boolean;\n shouldCollectTaxIdentificationNumber: boolean;\n}\n\nexport type GetMemberVerificationStatusApiRequest = object;\n\nexport interface GetMemberVerificationStatusApiResponse {\n hasAnyActiveTraderaPayConsent: boolean;\n hasCompanyContactSsn: boolean;\n hasSsn: boolean;\n isEligibleToSignMoneyTransferLicenseAgreement: boolean;\n /** @deprecated */\n isUnderLicense: boolean;\n needsBankIdVerification: boolean;\n needsConsentOfTraderaPayAgreement?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetMoneyTransferLicenseAgreementApiResponse {\n agreementName?: string | null;\n /** @format date-time */\n inEffectAsOf: string;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetPayoutFrequencyApiRequest = object;\n\nexport type GetPayoutFrequencyOptionsApiRequest = object;\n\nexport type GetShippingInvoiceMemberApiRequest = object;\n\nexport interface GetShippingInvoiceMemberApiResponse {\n enabled: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type GetTraderaPayOnboardingDetailsApiRequest = object;\n\nexport interface GetTraderaPayOnboardingDetailsApiResponse {\n isBankAccountDetailsSupplied: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetTranslatedMemberFeedbackApiResponse {\n isTranslationOnDemandDisabled: boolean;\n items?: TranslatedFeedbackItemApiDto[] | null;\n providerName?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface HeroImageUrlApiDto {\n max?: string | null;\n med?: string | null;\n min?: string | null;\n}\n\nexport interface MemberEmailNotificationsSettingsEmailApiDto {\n acceptsNewsLetter: boolean;\n acceptsOfferEmails: boolean;\n acceptsUnknownDeviceOrIpEmails: boolean;\n acceptsUpiInfoEmails: boolean;\n notifyBeforeWishListItemEnds: boolean;\n notifyOnFirstWinningBid: boolean;\n notifyWhenItemBecomesUnsold: boolean;\n}\n\nexport interface MemberEmailNotificationsSettingsMessagingApiDto {\n emailNotifyAll: boolean;\n isAllowedToSetParticipation: boolean;\n participates: boolean;\n}\n\nexport type MemberHasCompanyContactSsnApiRequest = object;\n\nexport interface MemberHasCompanyContactSsnApiResponse {\n hasCompanyContactSsn: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type MemberHasSsnApiRequest = object;\n\nexport interface MemberHasSsnApiResponse {\n hasSsn: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MemberProfileSettingsAccountInformationApiDto {\n alias?: string | null;\n emailAddress?: string | null;\n}\n\nexport interface MemberProfileSettingsPersonalDataApiDto {\n countryCodeIso2?: string | null;\n city?: string | null;\n country?: string | null;\n firstName?: string | null;\n isNameChangeAllowed: boolean;\n lastName?: string | null;\n phoneNumber?: string | null;\n phoneNumberUnvalidated?: string | null;\n streetName?: string | null;\n zipCode?: string | null;\n}\n\nexport interface MemberProfileSettingsPresentationApiDto {\n heroImageUrls?: HeroImageUrlApiDto | null;\n information?: string | null;\n}\n\nexport interface MemberSecuritySettingsAccountDeactivationApiDto {\n isAccountDeactivationAllowed: boolean;\n}\n\nexport interface MemberSecuritySettingsBlockedMemberApiDto {\n alias?: string | null;\n /** @format int32 */\n memberId: number;\n}\n\nexport interface MemberSecuritySettingsMemberBlockingApiDto {\n blockedMembers?: MemberSecuritySettingsBlockedMemberApiDto[] | null;\n}\n\nexport interface MemberSellerSettingsAutoFeedbackApiDto {\n enabled: boolean;\n message?: string | null;\n type: SellerAutoFeedbackType;\n}\n\nexport interface MemberSellerSettingsAutoShipmentCheckoutApiDto {\n enabled: boolean;\n isChangeAllowed: boolean;\n}\n\nexport interface MemberSellerSettingsCombinedShippingApiDto {\n /** @format int32 */\n days: number;\n enabled: boolean;\n isChangeAllowed: boolean;\n}\n\nexport interface MemberSellerSettingsCommitOnPaymentApiDto {\n enabled: boolean;\n isChangeAllowed: boolean;\n}\n\nexport interface MemberSellerSettingsItemLocalizationApiDto {\n selectedDescriptionLanguageCodeIso2?: string | null;\n shippingFromCountryCodeIso2?: string | null;\n}\n\nexport interface MemberSellerSettingsMagicalSyiApiDto {\n enabled: boolean;\n isChangeAllowed: boolean;\n}\n\nexport interface MemberSellerSettingsMakeAnOfferApiDto {\n enabled: boolean;\n isChangeAllowed: boolean;\n}\n\nexport interface MemberSellerSettingsShippingFeeRuleApiDto {\n /** @format int32 */\n freeShippingCostLimit: number;\n shippingOption?: string | null;\n useFreeShippingCostLimit: boolean;\n}\n\nexport interface MemberSilentMessagingSettingApiDto {\n enabled: boolean;\n isChangeAllowed: boolean;\n}\n\nexport interface PayoutFrequencyApiResponse {\n payoutFrequencyOption?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface PayoutFrequencyOptionsApiResponse {\n options?: string[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport enum RecoveryFlowType {\n Email = 'Email',\n Sms = 'Sms'\n}\n\nexport interface RemoveMemberPublicProfileHeroImageApiRequest {\n userIpAddress?: string | null;\n}\n\nexport interface RemoveMemberPublicProfileHeroImageApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type RemoveTraderaPayPayoutDestinationApiRequest = object;\n\nexport interface RemoveTraderaPayPayoutDestinationApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SaveSellerAutoFeedbackSettingsApiRequest {\n criteria: SellerAutoFeedbackCriteria;\n message?: string | null;\n}\n\nexport interface SaveSellerAutoFeedbackSettingsApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SaveSellerAutoPaymentReminderSettingsApiRequest {\n enabled: boolean;\n}\n\nexport interface SaveSellerAutoPaymentReminderSettingsApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SaveWinnerEmailApiRequest {\n winnerEmail?: string | null;\n}\n\nexport interface SaveWinnerEmailApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport enum SellerAutoFeedbackType {\n Manual = 'Manual',\n PositiveFeedback = 'PositiveFeedback',\n Paid = 'Paid'\n}\n\nexport interface SendVerificationSmsApiRequest {\n cellphoneNumber?: string | null;\n countryCode?: string | null;\n}\n\nexport interface SendVerificationSmsApiResponse {\n errorMessage?: string | null;\n responseStatus?: ResponseStatus | null;\n sentToCountryCode?: string | null;\n sentToTelephoneNumber?: string | null;\n smsSid?: string | null;\n successful: boolean;\n}\n\nexport interface SendVerificationSmsWithIdApiRequest {\n cellphoneNumber?: string | null;\n countryCode?: string | null;\n /** @format int32 */\n memberId: number;\n recoveryFlowType: RecoveryFlowType;\n}\n\nexport interface SetAutoShipmentCheckoutMemberEnabledApiRequest {\n enabled: boolean;\n}\n\nexport interface SetAutoShipmentCheckoutMemberEnabledApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetCombinedShippingMemberDaysApiRequest {\n /** @format int32 */\n days: number;\n}\n\nexport interface SetCombinedShippingMemberDaysApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetCombinedShippingMemberEnabledApiRequest {\n enabled: boolean;\n}\n\nexport interface SetCombinedShippingMemberEnabledApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetCommitOnPaymentMemberEnabledApiRequest {\n enabled: boolean;\n}\n\nexport interface SetCommitOnPaymentMemberEnabledApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetMagicalSyiEnabledApiRequest {\n enabled: boolean;\n}\n\nexport interface SetMagicalSyiEnabledApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetMakeAnOfferMemberEnabledApiRequest {\n enabled: boolean;\n}\n\nexport interface SetMakeAnOfferMemberEnabledApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetMemberConsentApiRequest {\n agreementName?: string | null;\n}\n\nexport interface SetMemberConsentApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetPayoutFrequencyApiRequest {\n payoutFrequencyOption?: string | null;\n}\n\nexport interface SetPayoutFrequencyApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetShippingFeeRuleFreeShippingCostLimitApiRequest {\n /** @format int32 */\n freeShippingCostLimit: number;\n useFreeShippingCostLimit: boolean;\n}\n\nexport interface SetShippingFeeRuleFreeShippingCostLimitApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetShippingFeeRuleShippingOptionApiRequest {\n shippingOption?: string | null;\n}\n\nexport interface SetShippingFeeRuleShippingOptionApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SmsCheckApiRequest {\n smsSid?: string | null;\n}\n\nexport interface SmsCheckApiResponse {\n responseStatus?: ResponseStatus | null;\n successful: boolean;\n}\n\nexport interface SmsVerificationDTO {\n action?: string | null;\n cellphoneNumber?: string | null;\n /** @format date-time */\n timestamp: string;\n}\n\nexport interface SmsVerificationsApiResponse {\n responseStatus?: ResponseStatus | null;\n verifications?: SmsVerificationDTO[] | null;\n}\n\nexport interface TaxIdentificationNumberImage {\n filename?: string | null;\n objectName?: string | null;\n}\n\nexport interface TinkBankAccountDto {\n accountNumber?: string | null;\n icon?: string | null;\n name?: string | null;\n}\n\nexport interface TinkGetBankAccountsApiResponse {\n accounts?: TinkBankAccountDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateHomepageThemeApiRequest {\n theme: HomepageTheme;\n}\n\nexport interface UpdateHomepageThemeApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberCompanyContactSsnApiRequest {\n companyContactSsn?: string | null;\n}\n\nexport interface UpdateMemberCompanyContactSsnApiResponse {\n isValid: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberContactDetailsApiRequest {\n alias?: string | null;\n country?: string | null;\n email?: string | null;\n firstName?: string | null;\n fullName?: string | null;\n lastName?: string | null;\n phoneNumber?: string | null;\n streetName?: string | null;\n town?: string | null;\n userIpAddress?: string | null;\n zipCode?: string | null;\n}\n\nexport interface UpdateMemberContactDetailsApiResponse {\n creditSafeVerificationResult?: CreditSafeNameVerificationResult | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberCurrencyApiRequest {\n currencyCode?: string | null;\n}\n\nexport interface UpdateMemberCurrencyApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberEmailSettingsApiRequest {\n acceptsNewsLetter: boolean;\n acceptsOfferEmails: boolean;\n acceptsUnknownDeviceOrIpEmails?: boolean | null;\n acceptsUpiInfoEmails: boolean;\n notifyBeforeWishListItemEnds: boolean;\n notifyOnFirstWinningBid: boolean;\n notifyWhenItemBecomesUnsold: boolean;\n}\n\nexport interface UpdateMemberEmailSettingsApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberLanguageApiRequest {\n languageCodeIso2?: string | null;\n userIpAddress?: string | null;\n}\n\nexport interface UpdateMemberLanguageApiResponse {\n isValid: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberPublicProfileHeroImageApiRequest {\n heroImageUrl?: string | null;\n userIpAddress?: string | null;\n}\n\nexport interface UpdateMemberPublicProfileHeroImageApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberPublicProfileInformationApiRequest {\n information?: string | null;\n userIpAddress?: string | null;\n}\n\nexport interface UpdateMemberPublicProfileInformationApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberSelectedDescriptionLanguageApiRequest {\n languageCodeIso2?: string | null;\n}\n\nexport interface UpdateMemberSelectedDescriptionLanguageApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberShippingFromCountryApiRequest {\n countryCodeIso2?: string | null;\n}\n\nexport interface UpdateMemberShippingFromCountryApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberSsnApiRequest {\n ssn?: string | null;\n}\n\nexport interface UpdateMemberSsnApiResponse {\n isValid: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberTaxIdentificationNumberApiRequest {\n birthDate?: string | null;\n images?: TaxIdentificationNumberImage[] | null;\n taxIdentificationNumber?: string | null;\n}\n\nexport interface UpdateMemberTaxIdentificationNumberApiResponse {\n isValid: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberTranslationPreferredApiRequest {\n isAutomaticTranslationPreferred: boolean;\n}\n\nexport interface UpdateMemberTranslationPreferredApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface UpdateMemberVatNumberApiRequest {\n vatNumber?: string | null;\n}\n\nexport interface UpdateMemberVatNumberApiResponse {\n isValid: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ValidateExistingPasswordForMemberApiRequest {\n existingPassword?: string | null;\n}\n\nexport interface ValidateExistingPasswordForMemberApiResponse {\n isValid: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport enum VerificationReason {\n VerificationNotNeeded = 'VerificationNotNeeded',\n NeedInitialVerification = 'NeedInitialVerification',\n NeedsVerificationFixedPriceLimitTwoMonthValidation = 'NeedsVerificationFixedPriceLimitTwoMonthValidation',\n NeedsVerificationFixedPriceLimitExpensive = 'NeedsVerificationFixedPriceLimitExpensive'\n}\n\nexport interface VerifyNonMobilePincodeApiRequest {\n pincode?: string | null;\n}\n\nexport interface VerifyNonMobilePincodeWithIdApiRequest {\n /** @format int32 */\n memberId: number;\n pincode?: string | null;\n recoveryFlowType: RecoveryFlowType;\n}\n\nexport interface VerifyPincodeApiRequest {\n pincode?: string | null;\n}\n\nexport interface VerifyPincodeApiResponse {\n hasActiveVerificationCode: boolean;\n responseStatus?: ResponseStatus | null;\n success: boolean;\n /** @format int32 */\n verificationAttempts: number;\n}\n\nexport interface VerifyPincodeWithIdApiRequest {\n /** @format int32 */\n memberId: number;\n pincode?: string | null;\n recoveryFlowType: RecoveryFlowType;\n}\n\nexport interface PublicProfileApiResponse {\n selectedDescriptionLanguageCodeIso2?: string | null;\n shippingFromCountryCodeIso2?: string | null;\n accountState: MemberAccountState;\n alias?: string | null;\n city?: string | null;\n /** @format int32 */\n combinedShippingDays: number;\n /** @format float */\n detailedSellerRatingAverage?: number | null;\n firstName?: string | null;\n hasShop: boolean;\n heroImage?: string | null;\n information?: string | null;\n isCompanyUser: boolean;\n isSwedishUser: boolean;\n /** @format int32 */\n memberId: number;\n /** @format date-time */\n memberSince: string;\n responseStatus?: ResponseStatus | null;\n shopLogoUrl?: string | null;\n /** @format int32 */\n totalRating: number;\n translatedInformation?: string | null;\n}\n\nexport interface Row {\n /** @format date-time */\n createdDate: string;\n key?: string | null;\n /** @format date-time */\n updatedDate: string;\n value?: string | null;\n}\n\nexport interface SaveFeedbackAsBuyerApiRequest {\n /** @format int32 */\n commResponsiveness?: number | null;\n comment?: string | null;\n isPositive: boolean;\n /** @format int32 */\n itemAsDescribed?: number | null;\n /**\n * @deprecated\n * @format int32\n */\n itemId: number;\n reportInr: boolean;\n /**\n * @deprecated\n * @format int32\n */\n sellerMemberId: number;\n /** @format int32 */\n shippingHandlingCharges?: number | null;\n /** @format int32 */\n shippingTime?: number | null;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface SaveFeedbackAsBuyerApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SaveFeedbackAsSellerApiRequest {\n /**\n * @deprecated\n * @format int32\n */\n buyerMemberId: number;\n comment?: string | null;\n isPositive: boolean;\n /**\n * @deprecated\n * @format int32\n */\n itemId: number;\n /** @format int32 */\n paymentTime?: number | null;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface SaveFeedbackAsSellerApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type SellerAutoFeedbackApiRequest = object;\n\nexport interface SellerAutoFeedbackApiResponse {\n /** @format date-time */\n created: string;\n criteria: SellerAutoFeedbackCriteria;\n message?: string | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type SellerAutoPaymentReminderApiRequest = object;\n\nexport interface SellerAutoPaymentReminderApiResponse {\n enabled: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface CampaignCodeItem {\n auctionId?: number[] | null;\n campaignCode?: string | null;\n /** @format int32 */\n campaignCodeId: number;\n}\n\nexport interface CommissionFeeSummaryDto {\n /** @format double */\n maxFee: number;\n /** @format double */\n maxPercentage: number;\n /** @format double */\n minFee: number;\n /** @format double */\n minPercentage: number;\n}\n\nexport interface FeatureSummaryByIdsApiResponse {\n campaignCodes?: CampaignCodeItem[] | null;\n featureSummaryList?: FeatureSummaryApiDto[] | null;\n isCompanyUser: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface FeatureSummaryDto {\n /** @format int32 */\n count: number;\n name?: string | null;\n /** @format int32 */\n price: number;\n}\n\nexport interface ItemApiDto {\n /** @format int32 */\n id: number;\n mainImageUrl?: ItemImageUrls | null;\n mainImageUrlTemplate?: string | null;\n /** @format int32 */\n price: number;\n /** @deprecated */\n selectedShipping?: SelectedShipping | null;\n shortDescription?: string | null;\n}\n\nexport interface MarkAsPaidBySellerApiRequest {\n paidConfirmed: boolean;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface MarkAsPaidBySellerApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport type MemberActiveItemsSummaryApiRequest = object;\n\nexport interface MemberActiveItemsSummaryApiResponse {\n responseStatus?: ResponseStatus | null;\n summary?: MemberActiveItemsSummaryApiDto | null;\n}\n\nexport type MemberListingFeeApiRequest = object;\n\nexport interface MemberListingFeeApiResponse {\n /** @format int32 */\n maxFreeListingsPerMonth: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MemberPickListApiResponse {\n /** @format int32 */\n hiddenCount: number;\n items?: PickListBuyerApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n}\n\nexport interface MemberPickListV2ApiResponse {\n /** @format int64 */\n filterHitCount: number;\n /** @format int32 */\n hiddenCount: number;\n items?: PickListBuyerV2ApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n /** @format int64 */\n totalCount: number;\n}\n\nexport interface MemberSoldItemBuyerInfoApiResponse {\n buyerContactDetails?: ContactDetailsApiDto | null;\n buyerProfile?: PublicProfileApiDto | null;\n items?: MemberSoldItemApiDto[] | null;\n paidStatus?: string | null;\n paymentMethod?: string | null;\n paymentOptions?: PaymentOptionApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n sellerContactDetails?: ContactDetailsApiDto | null;\n /** @format double */\n totalOrderPrice: number;\n /** @format double */\n totalOrderPriceWithoutShipping: number;\n /** @format double */\n vatPercent?: number | null;\n}\n\nexport interface MemberSoldItemByTransactionIdApiResponse {\n item?: MemberSoldItemApiDto | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MemberSoldItemShippingInfoV2ApiResponse {\n buyerContactDetails?: ContactDetailsApiDto | null;\n isQuickFlowPossible: boolean;\n /** @deprecated */\n item?: ItemApiDto | null;\n items?: ItemApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n selectedShipping?: SelectedShipping | null;\n /** @format uuid */\n shipmentCheckoutId: string;\n}\n\nexport interface MemberSoldItemsApiResponse {\n /** @format int32 */\n hiddenCount: number;\n items?: MemberSoldItemApiDto[] | null;\n /** @format int32 */\n notPaidCount: number;\n /** @format int32 */\n paidCount: number;\n responseStatus?: ResponseStatus | null;\n /** @format int32 */\n shippedCount: number;\n /** @format int64 */\n totalCount: number;\n}\n\nexport interface MemberSoldItemsByPurchaseOrderIdApiResponse {\n items?: MemberSoldItemApiDto[] | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport type MemberSoldItemsSummaryApiRequest = object;\n\nexport interface MemberSoldItemsSummaryApiResponse {\n responseStatus?: ResponseStatus | null;\n summary?: MemberSoldItemsSummaryApiDto | null;\n}\n\nexport type MemberStatsThisMonthApiRequest = object;\n\nexport interface MemberStatsThisMonthApiResponse {\n /** @format int32 */\n activeThisMonthCount: number;\n /** @format int32 */\n listedThisMonthCount: number;\n /** @format int32 */\n maxFreeListingsPerMonth: number;\n responseStatus?: ResponseStatus | null;\n /** @format int32 */\n soldThisMonthCount: number;\n /** @format int32 */\n unsoldThisMonthCount: number;\n}\n\nexport interface OrderInfoApiResponse {\n bookedShipping?: BookedShipping | null;\n buyerProtection?: BuyerProtectionApiDto | null;\n /** @format double */\n discountCodeAmount?: number | null;\n discounts?: DiscountDto[] | null;\n isFeedbackLeftByBuyer: boolean;\n isMarkedAsShipped: boolean;\n items?: OrderItem[] | null;\n offeredShippingOptions?: ShippingApiDto[] | null;\n paidStatus?: string | null;\n paymentMethod?: string | null;\n /** @format double */\n paymentMethodAmount?: number | null;\n paymentOptions?: PaymentOptionApiDto[] | null;\n /** @format uuid */\n purchaseOrderId: string;\n responseStatus?: ResponseStatus | null;\n selectedShipping?: ShippingApiDto | null;\n sellerContactDetails?: ContactDetailsApiDto | null;\n sellerProfile?: PublicProfileApiDto | null;\n shippingDiscount?: ShippingDiscount | null;\n /** @format double */\n totalOrderPrice: number;\n /** @format double */\n totalOrderPriceWithoutShipping: number;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface OrderItem {\n imageUrl?: string | null;\n imageUrlTemplate?: string | null;\n /** @format int32 */\n itemId: number;\n /** @format double */\n price: number;\n shortDescription?: string | null;\n /** @format date-time */\n transactionDate: string;\n}\n\nexport interface RestartItemsSummaryApiResponse {\n commission?: CommissionFeeSummaryDto | null;\n features?: FeatureSummaryDto[] | null;\n isCompany: boolean;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SelectedShipping {\n /** @format int32 */\n productId?: number | null;\n providerId?: string | null;\n}\n\nexport interface SetItemShippedApiRequest {\n /** @format uuid */\n purchaseOrderId: string;\n shipped: boolean;\n}\n\nexport interface SetItemShippedApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetItemShippingBookedApiRequest {\n booked: boolean;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface SetItemShippingBookedApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetTransactionItemShippedApiRequest {\n shipped: boolean;\n /** @format int32 */\n transactionId: number;\n}\n\nexport interface SetTransactionItemShippedApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ShopItemPurchaseHistoryApiResponse {\n /** @format int32 */\n categoryId: number;\n /** @format date-time */\n endDate: string;\n imageUrl?: string | null;\n imageUrlTemplate?: string | null;\n /** @format int32 */\n itemId: number;\n purchases?: ShopItemPurchase[] | null;\n responseStatus?: ResponseStatus | null;\n shortDescription?: string | null;\n userReference?: string | null;\n}\n\nexport interface SetBuyerTransactionVisibilityApiRequest {\n hidden: boolean;\n transactionIdList?: number[] | null;\n}\n\nexport interface SetBuyerTransactionVisibilityApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetItemVisibilityApiRequest {\n hidden: boolean;\n itemIds?: number[] | null;\n}\n\nexport interface SetItemVisibilityApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SetTransactionVisibilityApiRequest {\n hidden: boolean;\n /** @format uuid */\n purchaseOrderId: string;\n}\n\nexport interface SetTransactionVisibilityApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface SystemMessage {\n severity: SystemMessageSeverity;\n type: SystemMessageType;\n}\n\nexport enum SystemMessageSeverity {\n Warning = 'Warning',\n Info = 'Info'\n}\n\nexport enum SystemMessageType {\n InvoiceOverdue = 'InvoiceOverdue',\n InvoiceUnpaid = 'InvoiceUnpaid',\n PayoutFailed = 'PayoutFailed',\n PayoutReadyBankAccountMissing = 'PayoutReadyBankAccountMissing',\n BankAccountMissing = 'BankAccountMissing',\n HyperwalletPayeeVerificationRequired = 'HyperwalletPayeeVerificationRequired',\n HyperwalletPayeeVerificationUnderReview = 'HyperwalletPayeeVerificationUnderReview',\n PayoutProviderOnboardingFailed = 'PayoutProviderOnboardingFailed',\n KycQuestionnaire = 'KycQuestionnaire',\n PayoutReadyVerificationRequired = 'PayoutReadyVerificationRequired',\n OutstandingTraderaPayLicense = 'OutstandingTraderaPayLicense',\n PayoutReadyOutstandingTraderaPayLicense = 'PayoutReadyOutstandingTraderaPayLicense',\n CollectVatNumber = 'CollectVatNumber',\n CollectTin = 'CollectTin'\n}\n\nexport interface UnblockMemberApiRequest {\n /** @format int32 */\n memberIdToUnblock: number;\n}\n\nexport interface UnblockMemberApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface NewDisputeItemSelectorPageApiResponse {\n items?: DisputeV2PurchaseOrderItemData[] | null;\n purchaseOrder?: DisputeV2PurchaseOrderData | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface NewDisputePageApiResponse {\n items?: DisputeV2ItemData[] | null;\n purchaseOrder?: DisputeV2PurchaseOrderData | null;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface ProfilePageApiResponse {\n accountState?: string | null;\n alias?: string | null;\n city?: string | null;\n cleanedAlias?: string | null;\n /** @format int32 */\n combinedShippingDays: number;\n /** @format float */\n detailedSellerRatingAverage?: number | null;\n existsInFavouriteSellers: boolean;\n hasShop: boolean;\n heroImageUrl?: string | null;\n inFavouriteSellers: boolean;\n intro?: string | null;\n isCompany: boolean;\n isCompanyUser: boolean;\n /** @format int32 */\n memberId: number;\n /** @format date-time */\n memberSince: string;\n /** @format int32 */\n profileMemberId: number;\n responseStatus?: ResponseStatus | null;\n /** @format int32 */\n totalRating?: number | null;\n translatedIntro?: string | null;\n}\n\nexport interface WebChangeEmailWithIdApiRequest {\n bankIdOrderRef?: string | null;\n email?: string | null;\n /** @format int32 */\n memberId: number;\n}\n\nexport enum ItemState {\n BidderAuctionRemoved = 'BidderAuctionRemoved',\n BidderBidRemoved = 'BidderBidRemoved',\n BidderEndedWon = 'BidderEndedWon',\n BidderEndedReservedPriceNotReached = 'BidderEndedReservedPriceNotReached',\n BidderEndedNotWon = 'BidderEndedNotWon',\n BidderActiveLeading = 'BidderActiveLeading',\n BidderActiveReservedPriceNotReached = 'BidderActiveReservedPriceNotReached',\n BidderActiveOverbidden = 'BidderActiveOverbidden',\n GeneralActive = 'GeneralActive',\n GeneralEnded = 'GeneralEnded',\n PurchasedNotPaid = 'PurchasedNotPaid',\n PurchasedPaid = 'PurchasedPaid',\n PurchasedDone = 'PurchasedDone',\n ShopItemActive = 'ShopItemActive',\n ShopItemEnded = 'ShopItemEnded',\n ShopItemEndedWon = 'ShopItemEndedWon',\n BuyItNowEndedWon = 'BuyItNowEndedWon',\n BuyItNowEnded = 'BuyItNowEnded',\n BuyItNowActive = 'BuyItNowActive',\n SellerActiveBids = 'SellerActiveBids',\n SellerActiveNoBids = 'SellerActiveNoBids',\n SellerReservedPriceNotReached = 'SellerReservedPriceNotReached',\n SellerSoldNotPaid = 'SellerSoldNotPaid',\n SellerSoldDone = 'SellerSoldDone',\n SellerSoldShipped = 'SellerSoldShipped',\n SellerSoldPaid = 'SellerSoldPaid',\n SellerSoldShippingBooked = 'SellerSoldShippingBooked'\n}\n\nexport interface WishListApiResponse {\n items: WishListItemCardViewModel[];\n responseStatus?: ResponseStatus | null;\n /** @format int32 */\n totalCount: number;\n}\n\nexport interface WishListItemCardViewModel {\n /** @format int32 */\n buyNowPrice: number;\n displayHighlighted: boolean;\n /** @format date-time */\n endDate: string;\n hasFreeShipping: boolean;\n imageSecondaryUrl: string;\n imageUrl: string;\n isActive: boolean;\n isLeading: boolean;\n isOverbidden: boolean;\n isWinner: boolean;\n /** @format int32 */\n itemId: number;\n itemState: ItemState;\n itemType: string;\n itemUrl: string;\n /** @format int32 */\n maxBidAmount: number;\n preferredShipping: WishListItemShippingOptionViewModel;\n /** @format int32 */\n price: number;\n sellerAlias: string;\n /** @format int32 */\n sellerMemberId: number;\n shortDescription: string;\n /** @format int32 */\n totalBids: number;\n}\n\nexport interface WishListItemShippingOptionViewModel {\n /** @format double */\n cost: number;\n type: string;\n}\n\nexport interface AddItemToWishListApiRequest {\n /** @format int32 */\n itemId: number;\n}\n\nexport interface AddItemToWishListApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface GetWishListApiResponse {\n responseStatus?: ResponseStatus | null;\n /** @format int32 */\n totalCount: number;\n wishListItems?: WishListItemDto[] | null;\n}\n\nexport type GetWishListItemIdsApiRequest = object;\n\nexport interface GetWishListItemIdsApiResponse {\n responseStatus?: ResponseStatus | null;\n wishListItemsIds?: number[] | null;\n}\n\nexport type GetWishlistItemsEndingTodayCountApiRequest = object;\n\nexport interface GetWishlistItemsEndingTodayCountApiResponse {\n /** @format int32 */\n numberOfItems: number;\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface MemberBidInfo {\n auctionRemoved: boolean;\n bidRemoved: boolean;\n /** @format int32 */\n maxBidAmount: number;\n /** @format int32 */\n memberId: number;\n reservePriceReached: boolean;\n}\n\nexport interface RemoveItemFromWishListApiResponse {\n responseStatus?: ResponseStatus | null;\n}\n\nexport interface RemoveItemsFromWishListApiRequest {\n itemIds?: number[] | null;\n}\n\nexport interface WishListItemDto {\n /** @format date-time */\n addedToWishList: string;\n /** @format int32 */\n bidCount: number;\n boughtByCurrentMember: boolean;\n /** @format int32 */\n categoryId: number;\n /** @format int32 */\n currentBidAmount: number;\n displayHighlighted: boolean;\n /** @format date-time */\n endDate: string;\n /** @format int32 */\n fixedPrice: number;\n hasCommitUpFront: boolean;\n hasEnded: boolean;\n hasReservePrice: boolean;\n isAuthenticated: boolean;\n isAvailableForOffers?: boolean | null;\n isBuyItNow: boolean;\n isPaid?: boolean | null;\n isShopItem: boolean;\n /** @format int32 */\n itemId: number;\n /** @format int32 */\n itemPrice?: number | null;\n /** @format int32 */\n leadingBidMemberId?: number | null;\n mainImage?: ItemImageUrls | null;\n mainImageTemplate?: string | null;\n memberBid?: MemberBidInfo | null;\n /** @format int32 */\n nextValidBidAmount?: number | null;\n /** @format int32 */\n openingBid?: number | null;\n preferredShipping?: ShippingApiDto | null;\n reservePriceReached: boolean;\n secondaryImage?: ItemImageUrls | null;\n secondaryImageTemplate?: string | null;\n sellerAlias?: string | null;\n /** @format int32 */\n sellerMemberId: number;\n /** @format int32 */\n sellerTotalRating: number;\n title?: string | null;\n /** @format date-time */\n transactionDate?: string | null;\n /** @format int32 */\n transactionType?: number | null;\n type: ItemTypeApiDto;\n}\n\nexport interface Address {\n countryCodeIso2?: string | null;\n city?: string | null;\n country?: string | null;\n street?: string | null;\n zipCode?: string | null;\n}\n\nexport interface ShippingDiscount {\n partnerProvider?: string | null;\n /** @format int32 */\n price: number;\n /** @format int32 */\n shippingProductId?: number | null;\n shippingProvider?: string | null;\n}\n\nexport enum PickListFilterPaidStatus {\n All = 'All',\n Paid = 'Paid',\n Unpaid = 'Unpaid'\n}\n\nexport enum PickListFilterShippedStatus {\n All = 'All',\n Shipped = 'Shipped',\n NotShipped = 'NotShipped'\n}\n\nexport interface ShopItemPurchase {\n buyerMemberAlias?: string | null;\n /** @format int32 */\n buyerMemberId: number;\n /** @format int32 */\n buyerTotalRating: number;\n /** @format int32 */\n categoryId: number;\n /** @format int32 */\n price: number;\n /** @format date-time */\n transactionDate: string;\n}\n\nexport interface TransactionFeedbackRemovalRequest {\n /** @format int32 */\n transactionId?: number;\n}\n\nexport interface TransactionItemShippedCreateParams {\n request?: SetTransactionItemShippedApiRequest;\n}\n\nexport interface TransactionVisibilityCreateParams {\n request?: SetTransactionVisibilityApiRequest;\n}\n\nexport interface TransactionsRequest {\n transactionIds?: number[];\n}\n\nexport interface TranslatedRequest {\n toLanguageCodeIso2?: string;\n feedbackIds?: number[];\n}\n\nexport interface TranslationPreferredUpdateParams {\n request?: UpdateMemberTranslationPreferredApiRequest;\n}\n\nexport interface UnreadNotificationsCountRequest {\n request?: GetUnreadNotificationsCountApiRequest;\n}\n\nexport interface UpiStrikeRequest {\n /** @format int32 */\n transactionId?: number;\n}\n\nexport interface UppoStrikeCreateParams {\n request?: AddUnpaidPurchaseOrderStrikeApiRequest;\n}\n\nexport interface UppoStrikeRequest {\n /** @format uuid */\n purchaseOrderId?: string;\n}\n\nexport interface V2EscalateCreateParams {\n request?: EscalateDisputeV2ApiRequest;\n}\n\nexport interface V2GetDataRequest {\n /** @format int32 */\n disputeId?: number;\n}\n\nexport interface V2ImageUploadUrlCreateParams {\n request?: CreateDisputeImageUploadUrlApiRequest;\n}\n\nexport interface V2MarkAsSolvedCreateParams {\n request?: MarkDisputeAsSolvedV2ApiRequest;\n}\n\nexport interface V2SaveDataCreateParams {\n request?: SaveDisputeDataV2ApiRequest;\n}\n\nexport interface ValidateExistingPasswordCreateParams {\n request?: ValidateExistingPasswordForMemberApiRequest;\n}\n\nexport interface VatNumberUpdateParams {\n request?: UpdateMemberVatNumberApiRequest;\n}\n\nexport interface VatdetailsRequest {\n request?: GetMemberVatDetailsApiRequest;\n}\n\nexport interface VerificationStatusRequest {\n request?: GetMemberVerificationStatusApiRequest;\n}\n\nexport interface VerifyCreateParams {\n request?: VerifyPayoutTransferMethodApiRequest;\n}\n\nexport interface VerifyNonmobilePincodeCreateParams {\n request?: VerifyNonMobilePincodeApiRequest;\n}\n\nexport interface VerifyNonmobilePincodeWithIdCreateParams {\n request?: VerifyNonMobilePincodeWithIdApiRequest;\n}\n\nexport interface VerifyPincodeCreateParams {\n request?: VerifyPincodeApiRequest;\n}\n\nexport interface VerifyPincodeWithIdCreateParams {\n request?: VerifyPincodeWithIdApiRequest;\n}\n\nexport interface WinnerEmailUpdateParams {\n request?: SaveWinnerEmailApiRequest;\n}\n\nexport interface WishListRequest {\n shippingCountryCodeIso2?: string;\n languageCodeIso2?: string;\n automaticTranslationPreferred?: boolean;\n statusFilter?: string;\n /** @format int32 */\n pageSize?: number;\n /** @format int32 */\n page?: number;\n}\n\nexport interface WishlistCreateParams {\n request?: AddItemToWishListApiRequest;\n}\n\nexport interface WishlistDeleteParams {\n request?: RemoveItemsFromWishListApiRequest;\n}\n\nexport interface WishlistRequest {\n statusFilter?: WishListStatusFilter;\n /** @format int32 */\n take?: number;\n /** @format int32 */\n skip?: number;\n languageCodeIso2?: string;\n}\n\nexport interface WithAliasRequest {\n alias?: string;\n}\n","import {\n selectGeolocation,\n selectIsLoggedIn,\n selectIsOutsideSweden\n} from 'tradera/state/member/selectors';\nimport { selectPreferredLanguage } from 'tradera/state/language/selectors';\nimport { getLanguageFromCountryCode } from 'tradera/localization/languagecode';\nimport {\n isDenmarkCountryCode,\n isNetherlandsCountryCode,\n isSwedenCountryCodeOrUndefined\n} from 'tradera/localization/countrycode';\nimport type { RootState } from '../configure-store';\n\nexport const selectShowRegionSelection = (state: RootState) =>\n !selectIsLoggedIn(state) && selectIsOutsideSweden(state);\nexport const selectAvailableShippingCountryCodes = (state: RootState) =>\n state.shippingRegion.availableShippingCountryCodes;\nexport const selectAvailableShippingCountries = (state: RootState) =>\n state.shippingRegion.availableShippingCountries;\nexport const selectShippingCountry = (state: RootState) =>\n state.shippingRegion.shippingCountry;\nexport const selectIsLoadingAvailableShippingCountries = (state: RootState) =>\n state.shippingRegion.isLoadingAvailableShippingCountries;\nexport const selectHasLoadedAvailableShippingCountries = (state: RootState) =>\n state.shippingRegion.hasLoadedAvailableShippingCountries;\nexport const selectShippingRegionCountryCodeIso2 = (state: RootState) =>\n state.shippingRegion.shippingCountry?.countryCodeIso2;\nexport const selectIsSwedishVisitor = (state: RootState) =>\n isSwedenCountryCodeOrUndefined(selectShippingRegionCountryCodeIso2(state));\nexport const selectIsDanishVisitor = (state: RootState) =>\n isDenmarkCountryCode(selectShippingRegionCountryCodeIso2(state));\nexport const selectIsDutchVisitor = (state: RootState) =>\n isNetherlandsCountryCode(selectShippingRegionCountryCodeIso2(state));\n\nconst gpsMatchesLanguage = (state: RootState) => {\n const geoLocation = selectGeolocation(state);\n if (!geoLocation) {\n return true;\n }\n const country = geoLocation?.isoCode?.toLowerCase();\n const expectedLang = getLanguageFromCountryCode(country);\n const language =\n selectPreferredLanguage(state)?.languageCodeIso2?.toLowerCase() || 'sv';\n return expectedLang === language;\n};\n\nexport const selectShowLocalizationRegionPicker = (state: RootState) =>\n !selectIsLoggedIn(state) &&\n !state.shippingRegion.regionPickerDismissed &&\n !state.shippingRegion.shippingCountryCookieValue &&\n !gpsMatchesLanguage(state);\n","import axios, {\n type AxiosError,\n type AxiosInstance,\n type AxiosResponse,\n type CancelTokenSource\n} from 'axios';\n\nimport { logger } from 'packages/logger';\nimport { isServer } from 'tradera/utils/nextjs';\nimport { getLanguage } from 'tradera/utils/language';\nimport { toLocalizedUrl } from 'tradera/utils/url';\n\n/**\n * Standardized api error codes\n */\nexport const API_ERRORS = {\n IGNORE_ME: 'IGNORE_ME',\n ABORTED: 'ABORTED',\n CANCELLED: 'CANCELLED',\n NETWORK: 'NETWORK',\n TIMEOUT: 'TIMEOUT',\n VERSION_MISMATCH: 'VERSION_MISMATCH',\n LOGGED_OUT: 'LOGGED_OUT'\n};\n\nexport const defaultJsonRequestHeaders = {\n // Force json response\n Accept: 'application/json',\n // For WebAPI and RequiresAuthorization to handle ajax request\n 'X-Requested-With': 'XMLHttpRequest'\n};\n\n/**\n * Standard Axios configs\n */\nexport const axiosConfigs = {\n // Requests to endpoints with authentication\n authenticated: {\n // Send auth cookies\n withCredentials: true,\n headers: defaultJsonRequestHeaders\n },\n notAuthenticated: {\n // Dont send auth cookies\n withCredentials: false,\n headers: defaultJsonRequestHeaders\n }\n};\n\nconst isMissingAuthToken = (responseString: string) => {\n try {\n const responseObject = JSON.parse(responseString);\n const isMissing =\n responseObject.responseStatus.errorCode === 'MissingAuthToken';\n return isMissing;\n } catch {\n return false;\n }\n};\n\nconst isUnauthorized = (statusCode: number) => statusCode === 401;\n\nexport const addAntiCacheParam = (url?: string) => {\n const antiCacheRegExp = /([?&]_=)[^&]*/;\n return antiCacheRegExp.test(url || '')\n ? url?.replace(antiCacheRegExp, '$1' + new Date().getTime())\n : url +\n (/\\?/.test(url || '') ? '&' : '?') +\n '_=' +\n new Date().getTime();\n};\n\nconst submitOriginalRequest = async (error: AxiosError) =>\n axios({\n ...error.config,\n url: addAntiCacheParam(error.config.url)\n });\n\nconst handleMissingAuthToken = async (error: AxiosError) => {\n const refreshAccessToken = async () =>\n axios.get(toLocalizedUrl('/login/state', getLanguage()));\n const handleErrorAfterRefresh = async (\n errorAfterRefreshToken: AxiosError\n ) => {\n if (isUnauthorized(errorAfterRefreshToken.request?.status)) {\n // eslint-disable-next-line better-mutation/no-mutation\n error.message = API_ERRORS.LOGGED_OUT;\n }\n return Promise.reject(error);\n };\n return refreshAccessToken()\n .then(() => submitOriginalRequest(error))\n .catch(handleErrorAfterRefresh);\n};\n\nconst handleUnauthorized = async (error: AxiosError) => {\n const checkLoginState = async () =>\n axios.get(toLocalizedUrl('/login/state', getLanguage()));\n return checkLoginState().then((response) => {\n const isLoggedIn = response.data?.isLoggedIn;\n if (isLoggedIn) {\n return submitOriginalRequest(error);\n }\n // eslint-disable-next-line better-mutation/no-mutation\n error.message = API_ERRORS.LOGGED_OUT;\n // eslint-disable-next-line promise/no-return-wrap\n return Promise.reject(error);\n });\n};\n\nexport const errorResponseInterceptor = (error: AxiosError) => {\n if (isMissingAuthToken(error.request?.response)) {\n return handleMissingAuthToken(error);\n } else if (isUnauthorized(error.request?.status)) {\n return handleUnauthorized(error);\n }\n return Promise.reject(error);\n};\n\n/**\n * Create Axios instance or decorate existing instance with interceptor for expired token responses\n *\n */\nexport const axiosWithTokenRefresh = (axiosInstance?: AxiosInstance) => {\n let instance;\n if (axiosInstance === undefined) {\n instance = axios.create();\n } else {\n instance = axiosInstance;\n }\n instance.interceptors.response.use(\n (response) => response,\n errorResponseInterceptor\n );\n return instance;\n};\n\nconst cancelTokens: Record = {};\n\n/**\n * Create new or return existing cancellation function\n *\n * Usage:\n * const { cancel, cancelToken } = utilizeCancelToken('tokenId')\n * if (cancel) cancel();\n * axios.get('http://api.com/...', { cancelToken });\n *\n * @param {string} tokenId - A string ID shared between requests that cancel together\n */\nexport const utilizeCancelToken = (tokenId: string) => {\n if (isServer) {\n throw new Error(\n 'This implementation is not compatible with SSR as global properties like cancelTokens here are shared between server instances'\n );\n }\n let cancel;\n if (tokenId in cancelTokens) {\n cancel = cancelTokens[tokenId].cancel;\n }\n // eslint-disable-next-line better-mutation/no-mutation\n cancelTokens[tokenId] = axios.CancelToken.source();\n return {\n cancel,\n cancelToken: cancelTokens[tokenId].token\n };\n};\n\n/**\n * Check response version and throw error if different from current\n *\n */\nexport const checkResponseVersion = (version = '12.0.0') => {\n return (response: AxiosResponse) => {\n if (\n response.headers &&\n response.headers['X-Tradera-Version'] &&\n response.headers['X-Tradera-Version'] !== version\n ) {\n throw new Error(API_ERRORS.VERSION_MISMATCH);\n } else {\n return response;\n }\n };\n};\n\n/**\n * Checks redirect response for logged out user\n * This is an old solution. New solutions return a 401 response instead (see handleError).\n * Requires Axios config to include { withCredentials: true }\n *\n */\nexport const checkResponseLoggedOut = () => {\n return (response: AxiosResponse) => {\n if (\n response.data &&\n typeof response.data === 'string' &&\n response.data.includes('Logga in')\n ) {\n throw new Error(API_ERRORS.LOGGED_OUT);\n } else {\n return response;\n }\n };\n};\n\n/**\n * Final standardized formatting of an api response\n *\n */\nexport const finalizeResponse = () => {\n return (response: AxiosResponse) => {\n const { data, status } = response;\n return {\n data,\n status\n };\n };\n};\n\ntype StatusHandlers = Record;\n\n/**\n * Common network request error handling\n */\nexport const handleError = (statusHandlers: StatusHandlers = {}) => {\n return (error: AxiosError) => {\n const status = error.response && error.response.status;\n const message = error.message ? error.message : error.toString();\n /* eslint-disable better-mutation/no-mutation */\n if (axios.isCancel(error)) {\n error.message = API_ERRORS.CANCELLED;\n } else if (message.includes('timeout') || status === 408) {\n error.message = API_ERRORS.TIMEOUT;\n } else if (message.includes('Network')) {\n error.message = API_ERRORS.NETWORK;\n } else if (message.includes('Request aborted')) {\n error.message = API_ERRORS.ABORTED;\n } else if (status === 401) {\n error.message = API_ERRORS.LOGGED_OUT;\n } else if (status && status in statusHandlers) {\n error.message = statusHandlers[status];\n }\n throw error;\n };\n};\n\nexport const reloadOnUnauthorized = (error: AxiosError) => {\n switch (error.message) {\n case API_ERRORS.LOGGED_OUT:\n window.location.reload();\n break;\n default:\n throw error;\n }\n};\n\nexport const isClientNetworkError = (error: AxiosError) => {\n switch (error.message) {\n case API_ERRORS.IGNORE_ME:\n case API_ERRORS.CANCELLED:\n case API_ERRORS.ABORTED:\n case API_ERRORS.NETWORK:\n case API_ERRORS.TIMEOUT:\n return true;\n default:\n return false;\n }\n};\n\nexport const logError = (error: AxiosError, scope?: object) => {\n if (!isClientNetworkError(error)) {\n logger(error, scope);\n }\n};\n","import cookie from 'cookie';\n\nexport const getCookieFromString = (cookieString: string, key: string) =>\n cookie.parse(cookieString)[key] || null;\n\n/**\n * Helper function for cookie and GDPR utilities do NOT use this directly. Use the cookie\n * utility instead as that is GDPR compliant.\n * @returns\n */\nexport const getCookieFromBrowser = (key: string) =>\n getCookieFromString(window.document.cookie, key);\n\n/**\n * Helper function for cookie and GDPR utilities do NOT use this directly. Use the cookie\n * utility instead as that is GDPR compliant.\n * @returns\n */\nexport const setCookieToBrowser = (s: string) => {\n window.document.cookie = s;\n};\n","import plainDayjs from 'dayjs';\nimport isBetween from 'dayjs/plugin/isBetween';\nimport isSameOrAfter from 'dayjs/plugin/isSameOrAfter';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\nimport localizedFormat from 'dayjs/plugin/localizedFormat';\nimport relativeTime from 'dayjs/plugin/relativeTime';\nimport localeData from 'dayjs/plugin/localeData';\nimport {\n DAY_IN_SECONDS,\n HOUR_IN_SECONDS,\n MINUTE_IN_SECONDS\n} from 'tradera/constants/time';\nimport 'dayjs/locale/sv';\nimport 'dayjs/locale/da';\nimport 'dayjs/locale/de';\nimport 'dayjs/locale/fr';\nimport 'dayjs/locale/nl';\n\nplainDayjs.extend(isBetween);\nplainDayjs.extend(isSameOrAfter);\nplainDayjs.extend(utc);\nplainDayjs.extend(timezone);\nplainDayjs.extend(localizedFormat);\nplainDayjs.extend(relativeTime);\nplainDayjs.extend(localeData);\n\nexport const dayjs = plainDayjs;\n\nexport const localizedDayjs =\n (locale) =>\n (...args) =>\n dayjs(...args).locale(locale);\n\nconst swedishTimeZone = 'Europe/Stockholm';\n\nexport const swedishTimeZoneDate = (date, localizedDayjsFn) => {\n // This is a workaround for locale being lost when using .tz() in Nextweb\n const locale = localizedDayjsFn().locale();\n return localizedDayjsFn(date).tz(swedishTimeZone).locale(locale);\n};\n\nexport const formatUtcDateAsSwedishTimeZoneDate = (\n date,\n localizedDayjsFn,\n options = {}\n) => {\n const formatArray = [\n options.includeWeekday && 'ddd', // tor\n 'D MMM', // 19 okt\n options.includeYear && 'YYYY', // 2023\n !options.excludeTime && 'HH:mm' // 09:50\n ];\n const format = formatArray.filter(Boolean).join(' ');\n\n return swedishTimeZoneDate(date, localizedDayjsFn).format(format);\n};\n\nexport const getCurrentSwedishTimeZoneDate = () =>\n dayjs().tz(swedishTimeZone).format('YYYYMMDD');\n\n/**\n * Format a number of seconds to an object of time units\n *\n * @param {number} seconds\n * @param {object} [options]\n * @param {string} [options.startUnit] - Time part to start counting from, empty for all parts\n * @param {string} [options.endUnit] - Time part to stop counting on, empty for all parts\n * @returns {{string: integer}}\n */\nexport const getTimeSpanParts = (seconds, options = {}) => {\n const optionsWithDefaults = {\n startUnit: '',\n endUnit: '',\n ...options\n };\n const parts = {};\n let remaining = seconds;\n let started = !optionsWithDefaults.startUnit;\n for (const [part, length] of Object.entries(TIME_SPAN_UNIT_LENGTHS)) {\n if (!started && part === optionsWithDefaults.startUnit) started = true;\n if (started) {\n if (remaining >= length) {\n parts[part] = Math.floor(remaining / length);\n }\n // eslint-disable-next-line better-mutation/no-mutation\n remaining %= length;\n if (remaining === 0 || optionsWithDefaults.endUnit === part) break;\n }\n }\n return parts;\n};\n\nexport const TIME_SPAN_UNITS = {\n DAYS: 'days',\n HOURS: 'hours',\n MINUTES: 'minutes',\n SECONDS: 'seconds'\n};\n\nconst TIME_SPAN_UNIT_LENGTHS = {\n [TIME_SPAN_UNITS.DAYS]: DAY_IN_SECONDS,\n [TIME_SPAN_UNITS.HOURS]: HOUR_IN_SECONDS,\n [TIME_SPAN_UNITS.MINUTES]: MINUTE_IN_SECONDS,\n [TIME_SPAN_UNITS.SECONDS]: 1\n};\n\n/**\n *\n * @param string locale\n */\nexport const getMonths = (locale) => {\n dayjs.locale(locale);\n return dayjs.months();\n};\n","import ENDPOINTS from 'tradera/constants/endpoints';\nimport {\n axiosWithTokenRefresh,\n checkResponseVersion,\n finalizeResponse,\n handleError,\n utilizeCancelToken,\n axiosConfigs\n} from 'tradera/utils/api';\nimport initData from 'tradera/legacy/static/packages/init-data';\nimport { toLocalizedUrl } from 'tradera/utils/url';\nimport { getLanguage } from 'tradera/utils/language';\nimport { isServer } from 'tradera/utils/nextjs';\nimport type { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios';\n\ntype HttpClientConfig = AxiosRequestConfig & { cancelTokenId?: string };\n\nconst ensureClientOnly = () => {\n // Cancel tokens would be shared per server instance so ensure we are not on server.\n if (isServer) {\n throw new Error('This HTTP client is only safe to use on frontend');\n }\n};\n\n// Prevents URL:s that begins with // when that was not intended.\nconst getSafeUrl = (baseUrl: string, url?: string) => {\n if (baseUrl.endsWith('/') && url?.startsWith('/')) {\n return baseUrl + url.substring(1);\n }\n return baseUrl + url;\n};\n\nconst httpClient = (baseUrl: string, shouldLocalizeUrl?: boolean) => {\n const axiosWrapper = (\n url: string | undefined,\n httpClientConfig: HttpClientConfig,\n axiosCaller: (\n axios: AxiosInstance,\n url: string,\n config: AxiosRequestConfig\n ) => Promise>\n ) => {\n const { cancelTokenId, ...axiosConfig } = httpClientConfig;\n const version = initData.version;\n if (cancelTokenId) {\n const { cancel, cancelToken } = utilizeCancelToken(cancelTokenId);\n // eslint-disable-next-line better-mutation/no-mutation\n axiosConfig.cancelToken = cancelToken;\n if (cancel) {\n cancel();\n }\n }\n const safeUrl = getSafeUrl(baseUrl, url);\n const localizedUrl = shouldLocalizeUrl\n ? toLocalizedUrl(safeUrl, getLanguage())\n : safeUrl;\n return axiosCaller(axiosWithTokenRefresh(), localizedUrl, axiosConfig)\n .then(\n version ? checkResponseVersion(version) : (response) => response\n )\n .then(finalizeResponse())\n .catch(handleError());\n };\n\n return {\n get: (\n url: string,\n httpClientConfig: HttpClientConfig = axiosConfigs.authenticated\n ) => {\n ensureClientOnly();\n return axiosWrapper(url, httpClientConfig, (axios, url, config) =>\n axios.get(url, config)\n );\n },\n post: (\n url: string,\n payload: TRequest,\n httpClientConfig: HttpClientConfig = axiosConfigs.authenticated\n ) => {\n ensureClientOnly();\n return axiosWrapper(url, httpClientConfig, (axios, url, config) =>\n axios.post, TRequest>(\n url,\n payload,\n config\n )\n );\n },\n put: (\n url: string,\n payload: TRequest,\n httpClientConfig: HttpClientConfig = axiosConfigs.authenticated\n ) => {\n ensureClientOnly();\n return axiosWrapper(url, httpClientConfig, (axios, url, config) =>\n axios.put, TRequest>(\n url,\n payload,\n config\n )\n );\n },\n delete: (\n url: string,\n httpClientConfig: HttpClientConfig = axiosConfigs.authenticated\n ) => {\n ensureClientOnly();\n return axiosWrapper(url, httpClientConfig, (axios, url, config) =>\n axios.delete(url, config)\n );\n },\n request: (\n config: AxiosRequestConfig,\n httpClientConfig: HttpClientConfig = axiosConfigs.authenticated\n ) => {\n ensureClientOnly();\n return axiosWrapper(\n config.url,\n httpClientConfig,\n (axios, url, enhancedConfig) => {\n return axios.request({ ...config, ...enhancedConfig, url });\n }\n );\n }\n };\n};\n\nconst trpcClient = (endpoint: string) => {\n const client = httpClient(`/api/${endpoint}`, false);\n function unpackResponse(response: { data: TResponse }) {\n return response.data;\n }\n return {\n command: (\n commandName: string,\n payload: TRequest,\n httpClientConfig?: HttpClientConfig\n ): Promise =>\n client\n .post<\n TResponse,\n TRequest\n >(`/commands/${commandName}`, payload, httpClientConfig)\n .then(unpackResponse),\n query: (\n queryName: string,\n httpClientConfig?: HttpClientConfig\n ) =>\n client\n .get(`/queries/${queryName}`, httpClientConfig)\n .then(unpackResponse)\n };\n};\n\nexport const defaultClient = httpClient('');\nexport const touchWebClient = httpClient('/', true);\nexport const nextwebClient = httpClient('/api');\nexport const webApiClient = httpClient(ENDPOINTS.WEB_API, false);\nexport const cmsApiClient = httpClient('/api/cms');\nexport const marketingApiClient = httpClient(ENDPOINTS.MARKETING_PUBLIC_API);\nexport const memberIdentificationClient = trpcClient('member-identification');\nexport const translationDynamicApiClient = trpcClient(\n 'translation-dynamic-api'\n);\nexport const shippingRecommendationsClient = trpcClient(\n 'shipping-recommendations'\n);\n","import { logger } from 'tradera/legacy/static/packages/logger';\nimport { isServer } from 'tradera/utils/nextjs';\nimport type { TaskPriority } from 'src/types/scheduler-polyfill.d.ts';\n\ntype isInputPendingOptions = { includeContinuous: boolean };\ntype PostTaskCallback = () => unknown;\n\ndeclare global {\n interface Navigator {\n scheduling: {\n isInputPending: (options?: isInputPendingOptions) => boolean;\n };\n }\n\n interface Window {\n scheduler: Scheduler;\n }\n}\n\nconst LONG_RUNNING_TASK_DURATION = 50; // ms\n\nconst polyfillScheduler = () => {\n if (isServer) {\n return Promise.reject();\n }\n\n if (typeof window.scheduler !== 'undefined') {\n return Promise.resolve();\n }\n\n return import('scheduler-polyfill');\n};\n\nconst schedulerPolyfill = polyfillScheduler();\n\nexport const isInputPending = (): boolean =>\n Boolean(navigator.scheduling?.isInputPending({ includeContinuous: true }));\n\n/**\n * Pauses a synchronous task to allow other main thread tasks on the event loop to run (good for INP)\n * Note that nested setTimeout can cause an up to a 15ms delay in loops\n * (https://chromestatus.com/feature/5710690097561600), so use sparingly and with `isInputPending`:\n * if (isInputPending()) {\n * await yieldToMain();\n * }\n * Docs: https://web.dev/articles/optimize-long-tasks#use_asyncawait_to_create_yield_points\n */\nexport const yieldToMain = (): Promise =>\n new Promise((resolve) => {\n setTimeout(resolve, 0);\n });\n\n/**\n * Loop through an array (or other iterable object) of as a background task\n *\n * For each iteration this will pause if there is a user interaction event that needs\n * to be handled on the main thread or if it has exceeded the limit of a long running task (>=50ms);\n */\nexport const forEachYield = async (\n array: Array,\n callback: (\n element: ArrayType,\n index: number,\n array: Array\n ) => void\n): Promise => {\n let deadline = performance.now() + LONG_RUNNING_TASK_DURATION;\n let index = 0;\n\n for (const element of array) {\n if (isInputPending() || performance.now() >= deadline) {\n // There's a pending user input. Yield here:\n await yieldToMain();\n deadline = performance.now() + LONG_RUNNING_TASK_DURATION;\n }\n callback(element, index, array);\n index += 1;\n }\n};\n\nconst postTask = async (\n taskCallback: PostTaskCallback,\n priority: TaskPriority\n) => {\n try {\n await schedulerPolyfill;\n } catch (error) {\n if (isServer) {\n logger('scheduler-polyfill does not support a node environment');\n }\n // Fallback to ensure taskCallback() is always called\n await yieldToMain();\n return taskCallback();\n }\n\n return await scheduler.postTask(taskCallback, { priority });\n};\n\nexport const queueUserBlockingTask = (taskCallback: PostTaskCallback) =>\n postTask(taskCallback, 'user-blocking');\n\nexport const queueUserVisibleTask = (taskCallback: PostTaskCallback) =>\n postTask(taskCallback, 'user-visible');\n\nexport const queueBackgroundTask = (taskCallback: PostTaskCallback) =>\n postTask(taskCallback, 'background');\n","import { webApiClient } from 'tradera/utils/http';\n\nconst timeDiffInMs = (start) => {\n return Date.now() - start;\n};\n\nconst queryServerTime = async (retryCount) => {\n const latencyLimit = 2000;\n const maxRetries = 2;\n const requestStart = Date.now();\n const {\n data: { currentTime }\n } = await webApiClient.get('/discover/server-time');\n const latency = timeDiffInMs(requestStart);\n\n if (latency < latencyLimit) {\n return { currentTime: Date.parse(currentTime), latency };\n } else if (retryCount < maxRetries) {\n return queryServerTime(retryCount + 1);\n } else {\n return null;\n }\n};\n\n/**\n * Requests server time and returns\n * { currentTime, latency }\n */\nexport const getServerTime = async () => {\n return await queryServerTime(0);\n};\n","/* eslint-disable better-mutation/no-mutation */\n\nimport { getServerTime } from 'tradera/utils/time-api';\nimport { isServer } from 'tradera/utils/nextjs';\n\nlet _minServerCheckInterval = 1000 * 60 * 5;\nlet _serverDiff = 0;\nlet _didGetServerResponse = false;\nlet _lastCheckAtMs = null;\n\nconst updateServerDiff = async () => {\n _lastCheckAtMs = Date.now();\n const serverTimeObject = await getServerTime();\n if (serverTimeObject) {\n _didGetServerResponse = true;\n // We add the whole latency even though it may give a later\n // time than in reality since a later time gives less time\n // left until auctions expire. This is better than showing\n // too much time left.\n const timeNowOnServer = new Date(\n serverTimeObject.currentTime + serverTimeObject.latency\n );\n _serverDiff = timeNowOnServer.getTime() - Date.now();\n }\n};\n\nconst shouldCheckServer = () =>\n _lastCheckAtMs === null ||\n Date.now() - _lastCheckAtMs >= _minServerCheckInterval;\n\nlet _initialPromise = null;\n\n/**\n * Gets the date on the server and shall be used for calculating auction time left.\n * @returns The date or null if server did not respond at least once.\n */\nexport const syncServerTime = async () => {\n if (isServer) {\n throw new Error('Never call this on server');\n }\n if (shouldCheckServer()) {\n const promise = updateServerDiff();\n if (!_didGetServerResponse) {\n _initialPromise = promise;\n }\n }\n\n if (_initialPromise) {\n try {\n await _initialPromise;\n } catch {\n // Don't throw any errors.\n }\n _initialPromise = null;\n }\n\n return _didGetServerResponse ? new Date(Date.now() + _serverDiff) : null;\n};\n\nexport const resetForTesting = () => {\n _minServerCheckInterval = 0;\n _didGetServerResponse = null;\n};\n","export default {\n TRADERA: 'https://www.tradera.com'\n};\n","import qs from 'qs';\nimport HOSTS from 'tradera/constants/hosts';\nimport initData from 'tradera/legacy/static/packages/init-data';\nimport { formatNextPathnameInfo } from 'next/dist/shared/lib/router/utils/format-next-pathname-info';\nimport { getNextPathnameInfo } from 'next/dist/shared/lib/router/utils/get-next-pathname-info';\n\nimport { logger } from 'packages/logger';\nimport {\n URL_LANGUAGES,\n DEFAULT_LANGUAGE,\n SUPPORTED_LANGUAGES\n} from 'tradera/lang/constants.mjs';\nimport { removePropertiesWithoutValue } from 'tradera/utils/object';\n\n// List of SPA paths for the regex match, without initial slash\nconst SPA_REGEX_PATHS = [\n 'search',\n 'campaign',\n 'charity',\n 'categories',\n 'profile\\\\/items',\n 'brand\\\\/.+',\n // Category\n '[a-z]+[\\\\w\\\\-]+[\\\\-|_]\\\\d+'\n];\nconst SPA_PATH_REGEX = new RegExp(\n `^(/(${URL_LANGUAGES.join('|')}))?/(${SPA_REGEX_PATHS.join('|')})`\n);\n\n/**\n * Removes priceRange from query params if fromPrice or toPrice is present.\n */\nconst prunePriceRange = (queryParams: Record) => {\n if (queryParams.fromPrice || queryParams.toPrice) {\n const { priceRange, ...result } = queryParams;\n return result;\n }\n return queryParams;\n};\n\ntype FormatQueryParamsQueryParams = Record & {\n category?: string;\n categoryId?: string;\n};\n/**\n * Format query params parsed from query string\n */\nexport const formatQueryParams = (\n queryParams: FormatQueryParamsQueryParams\n) => {\n const {\n category: queryCategory,\n categoryId: queryCategoryId,\n ...rest\n } = removePropertiesWithoutValue(queryParams);\n const formattedQueryParams = prunePriceRange(rest);\n const categoryId = parseInt(queryCategory || queryCategoryId || '0', 10);\n if (categoryId > 0) {\n formattedQueryParams.categoryId = categoryId;\n }\n return formattedQueryParams;\n};\n\n/**\n * Check if url is absolute\n */\nexport const isAbsoluteUrl = (url: string): boolean =>\n new RegExp('^(?:[a-z]+:)?//', 'i').test(url);\n\n/**\n * Tests if a given url or path is an SPA link or not\n */\nexport function isSpaLink(urlOrPath: string): boolean {\n let pathname;\n if (/(^http)s?:\\/\\//i.test(urlOrPath)) {\n try {\n pathname = new URL(urlOrPath).pathname;\n } catch {\n return false;\n }\n } else {\n pathname = urlOrPath;\n }\n return SPA_PATH_REGEX.test(pathname);\n}\n\n/**\n * Takes an object and returns a new object without route parameters\n */\nexport const stripRouteParametersFromQueryParameters = (\n queryParams: Record,\n params: Record | undefined\n) => {\n if (!params) return queryParams;\n\n const excludeKeys = new Set(Object.keys(params));\n\n const filteredPairs = Object.entries(queryParams).filter(\n ([key]) => !excludeKeys.has(key)\n );\n return Object.fromEntries(filteredPairs);\n};\n\n/**\n * Takes an object and returns a new object without pagination properties\n */\nexport function stripCategoryIdFromQueryParameters<\n T extends Record\n>(queryParams: T): Omit {\n // Using object spread to exclude listed variables from 'rest'\n const { categoryId, ...rest } = queryParams;\n return rest;\n}\n\n/**\n * Removes tradera base from a url, leaving path and query\n */\nexport const stripHost = (url: string): string =>\n typeof url === 'string' && url.startsWith('http')\n ? url.replace(HOSTS.TRADERA, '')\n : url;\n\n/**\n * Takes an object and returns a new object without itm properties\n * Itm tags should no longer be used, so this method will then be obsolete\n */\nexport function stripItmFromQueryParameters>(\n queryParams: T\n): Omit {\n // Using object spread to exclude listed variables from 'rest'\n const { itm_source, itm_medium, ...rest } = queryParams;\n return rest;\n}\n\n/**\n * Takes an object and returns a new object without pagination properties\n */\nexport function stripPaginationFromQueryParameters<\n T extends Record\n>(queryParams: T): Omit {\n // Using object spread to exclude listed variables from 'rest'\n // The parameters \"spage\", \"page\" and possible \"fe\" are deprecated and should no longer be used.\n // However, it may still be useful to remove them from the query parameters here,\n // in case they are used in old links.\n const { spage, paging, page, fe, ...rest } = queryParams;\n return rest;\n}\n\n/**\n * Takes an object and returns a new object without savedQueryName properties\n */\nexport function stripSavedQueryNameFromQueryParameters<\n T extends Record\n>(queryParams: T): Omit {\n // Using object spread to exclude listed variables from 'rest'\n const { savedQueryName, ...rest } = queryParams;\n return rest;\n}\n\n/**\n * Takes an object and returns a new object without saveSearch properties\n */\nexport function stripSaveSearchNameFromQueryParameters<\n T extends Record\n>(queryParams: T): Omit {\n // Using object spread to exclude listed variables from 'rest'\n const { saveSearch, ...rest } = queryParams;\n return rest;\n}\n\n/**\n * Takes an url and adds tradera base url if it is not already an absolute url\n */\nexport const toAbsoluteUrl = (relativeUrl: string): string =>\n relativeUrl.startsWith('http')\n ? relativeUrl\n : `${HOSTS.TRADERA}${\n relativeUrl.startsWith('/') ? relativeUrl : '/' + relativeUrl\n }`;\n\n// Help TS understand that the parameter is a string\nconst isString = (str: unknown): str is string => {\n if (str === null || str === undefined || str === '' || str === false)\n return false;\n\n return true;\n};\n\n/**\n * From URL to URL with language prefix\n */\nexport function toLocalizedUrl(\n url: T,\n languageCodeIso2?: string\n): T | string {\n if (!isString(url)) {\n return url;\n }\n\n const ignoredUrls = [initData.webApiUrl, '/api/webapi/', '/support/'];\n const isIgnoredUrl = ignoredUrls.find(\n (domain) => url.indexOf(domain) !== -1\n );\n if (isIgnoredUrl) {\n return url;\n }\n\n if (!languageCodeIso2) {\n logger(`Missing language code for URL ${url}`);\n return url;\n }\n\n if (url.startsWith('//')) {\n throw new Error(\n `Attempt to localize protocol relative url: ${url}. This is not supported at the moment`\n );\n }\n\n const RELATIVE_DOMAIN = 'https://example.com';\n const urlObject = new URL(url, RELATIVE_DOMAIN);\n // eslint-disable-next-line better-mutation/no-mutation\n urlObject.pathname = setLanguagePrefix(\n urlObject.pathname,\n languageCodeIso2\n );\n return urlObject.toString().replace(RELATIVE_DOMAIN, '');\n}\n\n/**\n * Creates query parameters object from search string\n */\nexport const toQueryParameters = (search: string) =>\n qs.parse(search, { ignoreQueryPrefix: true });\n\ntype ToSearchStringOptions = {\n addQueryPrefix?: boolean;\n encode?: boolean;\n skipNulls?: boolean;\n arrayFormat?: 'indices' | 'brackets' | 'repeat' | 'comma';\n};\n\n/**\n * Creates search string from all properties in object\n */\nexport const toSearchString = (\n queryParams: object,\n {\n addQueryPrefix = true,\n encode = true,\n skipNulls = true,\n arrayFormat = 'repeat' //qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' }) ==> 'a=b&a=c'\n }: ToSearchStringOptions = {}\n): string =>\n qs.stringify(queryParams, {\n addQueryPrefix: addQueryPrefix,\n encode: encode,\n skipNulls: skipNulls,\n arrayFormat: arrayFormat\n });\n\nconst setLanguagePrefix = (path: string, languageCodeIso2: string) => {\n // Inspired by `next/src/server/web/next-url.ts`\n const nextConfig = {\n i18n: {\n defaultLocale: DEFAULT_LANGUAGE,\n locales: SUPPORTED_LANGUAGES\n }\n };\n const pathnameInfo = getNextPathnameInfo(path, {\n nextConfig,\n parseData: true\n });\n const localizedPathname = formatNextPathnameInfo({\n ...pathnameInfo,\n defaultLocale: DEFAULT_LANGUAGE,\n locale: languageCodeIso2\n });\n return localizedPathname;\n};\n\nexport const getBackToHereRedirectUrl = () => {\n // Add random query parameter to force reload when redirecting to this url\n // and only the hash differs\n const queryParams = {\n ...qs.parse(location.search, { ignoreQueryPrefix: true }),\n forceRedirect: Math.round(Math.random() * 100000)\n };\n return (\n location.protocol +\n '//' +\n location.host +\n location.pathname +\n qs.stringify(queryParams, { addQueryPrefix: true })\n );\n};\n\nexport const replacePartInPath = (\n path: string,\n oldPart: string,\n newPart: string\n) => {\n if (path.indexOf('?') > -1) {\n throw new Error('? is not valid in argument.');\n }\n return path\n .split('/')\n .map((part) => (part === oldPart ? newPart : part))\n .join('/');\n};\n\n/**\n * Converts an API request to URLSearchParams for use in a GET request\n */\nexport const convertApiRequestToURLParams = (\n apiRequest: Record\n): URLSearchParams => {\n return Object.entries(apiRequest).reduce((acc, [key, value]) => {\n if (value !== null && value !== undefined) {\n acc.append(key, value.toString());\n }\n return acc;\n }, new URLSearchParams());\n};\n\nexport const getHeroImageUrl = (\n heroImageUrl: string,\n version: 'small' | 'medium' | 'large' = 'medium'\n) => {\n if (heroImageUrl) {\n return `https://img.tradera.net/heroimages/${version}-square/${heroImageUrl}`;\n }\n return undefined;\n};\n"],"names":["configureDayjs","preferredLanguageCode","dayjs","isBetween","isSameOrAfter","DAY_IN_SECONDS","HOUR_IN_SECONDS","MINUTE_IN_SECONDS","MINUTE_IN_MILLISECONDS","SECOND_IN_MILLISECONDS","createWrappedT","i18nObject","t","addTranslation","language","hasLoadedAllTranslations","throwOnTransSuffix","isShowingTranslationKeysEnabled","i18nKey","options","endsWith","TRANS_SUFFIX","Error","_len","arguments","length","args","Array","_key","translation","_objectSpread","lng","isServer","addTranslationForHydration","isQueryToggleEnabled","query","includes","useTranslator","useAddTranslation","isShowingTranslationKeysEnabledQuery","_slicedToArray","useQuery","useSelector","selectPreferredLanguageCode","state","_state$status","status","loadedLanguages","_useTranslation","useTranslation","I18N_FRONTEND_NAMESPACES","ready","i18n","wrappedT","React","undefined","_i18n$translator$extr","translator","extractFromKey","key","namespaces","namespace","_i18n$translator$reso","resolve","ns","res","exactUsedKey","withTranslator","WrappedComponent","WithTranslator","props","_jsx","displayName","name","useCurrentLanguage","useUrlLocalizer","preferredLanguage","toLocalizedUrl","useRef","url","current","Trans","_state$status2","_useTranslation2","children","defaults","TransComponent","NS_TOUCHWEB","_Fragment","bootInit","bootLanguages","gtm","loadGtmScript","initData","languageCodeIso2","syncServerTime","featureSwitches","bootSiteWideNotifications","socketUrl","webLiveUrl","joinMemberRoom","memberId","module","split","moduleLoader","isSpaModule","loadSpaModule","then","initModule","default","loadModule","loadedModule","runModule","window","document","body","setAttribute","catch","handleModuleError","isSinglePageApp","async","console","error","logger","isSwedenCountryCodeOrUndefined","countryCodeIso2","toLowerCase","isDenmarkCountryCode","isNetherlandsCountryCode","areCountryCodesIso2Equal","first","second","toUpperCase","formatPrice","price","inputLocale","overrideOptions","locale","style","currency","preferredCurrency","currencyDisplay","startsWith","useGrouping","minimumFractionDigits","maximumFractionDigits","roundUp","priceAsNumber","parseInt","decimalFactorForRounding","Math","pow","ceil","isLocaleFormattingSupportedInBrowser","formattedPrice","toLocaleString","formatNumberWithSeparators","Number","e","toLocaleStringSupportsLocales","Intl","NumberFormat","isSwedishOrUndefined","getLanguageFromCountryCode","se","dk","de","fr","nl","getCountryCodeForFlagFromLanguage","languageCode","en","da","getCountryCodeFromLanguage","areLanguageCodesIso2Equal","_ref","socket","getGlobalSocket","isRetry","on","_ref2","success","_response$data","touchWebClient","get","data","isLoggedIn","disconnect","connect","refreshLoginState","addEventListener","showItemOutbiddedToast","ItemId","NewLeadingBidAmount","showItemFirstBidToast","showItemSoldToast","Price","showItemWonToast","showItemPaidToast","showItemWishListReminderToast","TimeLeftMinutes","join","globalSocket","SocketIoChannel","MissingSocketIoServerUrl","ReferenceError","MissingRoomId","isAllowedToConnect","constructor","socketIoServerUrl","autoConnect","this","io","events","rooms","Set","forEach","room","payload","Type","contexts","socketIo","callback","Event","type","isConnected","emit","has","add","leave","rejoinOnConnect","delete","event","removeEventListener","off","_this$socket","connected","queuedToasts","createQueue","openNextToast","isInProgress","nextItem","next","queueLength","getLength","toastOptions","autoClose","max","onClose","notifyDone","eventData","itemId","webApiClient","item","imageUrl","itemUrl","shortDescription","toast","createElement","ItemToast","message","_nextItem$eventData","header","messageData","headerData","MessageToast","handleNotification","ttlInMinutes","visibilityState","newLeadingBidAmount","timeLeftMinutes","showSuccessToast","TYPE","SUCCESS","showErrorToast","ERROR","showInfoToast","INFO","selectEnvironment","environment","selectFeatureSwitches","_state$environment","selectIsFeatureEnabled","featureName","_selectFeatureSwitche","selectWebLiveUrl","variables","PUBLIC_WEB_LIVE_URL","selectIsNativeApp","_state$environment3","isNativeAppContext","selectAvailableLanguages","available","selectAvailableLanguageCodesIso2","createSelector","map","x","selectPreferredLanguage","preferred","_state$language","_state$language$prefe","DEFAULT_LANGUAGE","selectIsForeignLanguageActivated","_selectPreferredLangu","selectAutomaticTranslationPreferred","_state$language$autom","automaticTranslationPreferred","selectMember","member","selectIsLoggedIn","_state$member","selectGeolocation","_state$member2","geolocation","selectMemberId","_state$member3","selectMemberAlias","_state$member4","memberAlias","selectMemberBirthdate","_state$member8","memberBirthdate","selectIsOutsideSweden","_state$member11","_state$member11$geolo","_state$member12","_state$member12$geolo","isoCode","selectMemberTown","_state$member13","memberTown","selectIsUnderage","_permissions$sellPerm","_permissions$sellPerm2","_permissions$sellPerm3","permissions","selectMemberPermissions","sellPermission","isPermitted","requirementsNotMet","RequirementTypeApi","IsOverMinimumAge","selectIsCompany","_state$member14","isCompany","selectMemberState","_state$member16","memberState","defaultCurrency","code","rate","valueDate","updatedDate","symbolSuffix","shortName","longName","decimals","resolveCurrency","enabled","currencyCode","currencies","find","multiCurrencySlice","createSlice","initialState","reducers","initialize","action","_action$payload","_action$payload$curre","setPreferredCurrency","_multiCurrencySlice$a","actions","selectCurrencies","multiCurrency","selectPreferredCurrency","c","selectIsPreferredCurrencySEK","_selectPreferredCurre","selectShowCurrencySelection","HomepageTheme","MessagingEmailNotification","SystemMessageSeverity","selectShowRegionSelection","selectAvailableShippingCountryCodes","shippingRegion","availableShippingCountryCodes","selectAvailableShippingCountries","availableShippingCountries","selectShippingCountry","shippingCountry","selectIsLoadingAvailableShippingCountries","isLoadingAvailableShippingCountries","selectHasLoadedAvailableShippingCountries","hasLoadedAvailableShippingCountries","selectShippingRegionCountryCodeIso2","_state$shippingRegion","selectIsSwedishVisitor","selectIsDanishVisitor","selectIsDutchVisitor","selectShowLocalizationRegionPicker","regionPickerDismissed","shippingCountryCookieValue","_geoLocation$isoCode","_selectPreferredLangu2","geoLocation","country","gpsMatchesLanguage","API_ERRORS","IGNORE_ME","ABORTED","CANCELLED","NETWORK","TIMEOUT","VERSION_MISMATCH","LOGGED_OUT","defaultJsonRequestHeaders","Accept","axiosConfigs","authenticated","withCredentials","headers","notAuthenticated","isUnauthorized","statusCode","addAntiCacheParam","antiCacheRegExp","test","replace","Date","getTime","submitOriginalRequest","axios","config","errorResponseInterceptor","_error$request","_error$request2","responseString","JSON","parse","responseStatus","errorCode","isMissingAuthToken","request","response","getLanguage","refreshAccessToken","_errorAfterRefreshTok","errorAfterRefreshToken","Promise","reject","handleMissingAuthToken","checkLoginState","handleUnauthorized","axiosWithTokenRefresh","axiosInstance","instance","interceptors","use","cancelTokens","utilizeCancelToken","tokenId","cancel","source","cancelToken","token","checkResponseVersion","version","checkResponseLoggedOut","finalizeResponse","handleError","statusHandlers","toString","reloadOnUnauthorized","location","reload","isClientNetworkError","logError","scope","getCookieFromBrowser","getCookieFromString","cookieString","cookie","setCookieToBrowser","s","plainDayjs","utc","timezone","localizedFormat","relativeTime","localeData","localizedDayjs","swedishTimeZone","swedishTimeZoneDate","date","localizedDayjsFn","tz","formatUtcDateAsSwedishTimeZoneDate","format","includeWeekday","includeYear","excludeTime","filter","Boolean","getCurrentSwedishTimeZoneDate","getTimeSpanParts","seconds","optionsWithDefaults","startUnit","endUnit","parts","remaining","started","Object","entries","TIME_SPAN_UNIT_LENGTHS","part","floor","TIME_SPAN_UNITS","DAYS","HOURS","MINUTES","SECONDS","ensureClientOnly","httpClient","baseUrl","shouldLocalizeUrl","axiosWrapper","httpClientConfig","axiosCaller","cancelTokenId","axiosConfig","_objectWithoutProperties","_excluded","_utilizeCancelToken","safeUrl","getSafeUrl","substring","localizedUrl","post","put","enhancedConfig","trpcClient","endpoint","client","unpackResponse","command","commandName","queryName","defaultClient","ENDPOINTS","WEB_API","marketingApiClient","MARKETING_PUBLIC_API","memberIdentificationClient","translationDynamicApiClient","shippingRecommendationsClient","schedulerPolyfill","scheduler","yieldToMain","setTimeout","forEachYield","array","deadline","performance","now","index","element","_navigator$scheduling","navigator","scheduling","isInputPending","includeContinuous","postTask","taskCallback","priority","queueUserBlockingTask","queueBackgroundTask","queryServerTime","requestStart","currentTime","latency","start","retryCount","_minServerCheckInterval","_serverDiff","_didGetServerResponse","_lastCheckAtMs","updateServerDiff","serverTimeObject","getServerTime","timeNowOnServer","_initialPromise","promise","RegExp","URL_LANGUAGES","formatQueryParams","queryParams","_removePropertiesWith","removePropertiesWithoutValue","queryCategory","category","queryCategoryId","categoryId","formattedQueryParams","fromPrice","toPrice","priceRange","prunePriceRange","_excluded2","stripCategoryIdFromQueryParameters","_excluded3","stripItmFromQueryParameters","itm_source","itm_medium","_excluded4","stripPaginationFromQueryParameters","spage","paging","page","fe","_excluded5","stripSavedQueryNameFromQueryParameters","savedQueryName","_excluded6","stripSaveSearchNameFromQueryParameters","saveSearch","_excluded7","toAbsoluteUrl","relativeUrl","HOSTS","isString","str","webApiUrl","domain","indexOf","RELATIVE_DOMAIN","urlObject","URL","pathname","setLanguagePrefix","toQueryParameters","search","qs","ignoreQueryPrefix","toSearchString","_ref3","_ref3$addQueryPrefix","addQueryPrefix","_ref3$encode","encode","_ref3$skipNulls","skipNulls","_ref3$arrayFormat","arrayFormat","path","nextConfig","defaultLocale","locales","SUPPORTED_LANGUAGES","pathnameInfo","getNextPathnameInfo","parseData","formatNextPathnameInfo","getBackToHereRedirectUrl","forceRedirect","round","random","protocol","host","replacePartInPath","oldPart","newPart"],"sourceRoot":""}