@mirai/core 0.3.378 → 0.3.380
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__tests__/Checkout/__mocks__/checkout-get.json +935 -0
- package/__tests__/Checkout/__mocks__/checkout-post-PAYLATER.json +10 -0
- package/__tests__/Checkout/__mocks__/checkout-post-TPV.json +7 -0
- package/__tests__/Checkout/__mocks__/checkout-post-TRANSFER.json +10 -0
- package/__tests__/Checkout/checkout.constants.js +8 -0
- package/__tests__/Checkout/checkout.spec.jsx +40 -0
- package/__tests__/Checkout/workflows/form.workflow.js +17 -0
- package/__tests__/Checkout/workflows/index.js +4 -0
- package/__tests__/Checkout/workflows/payment.workflow.js +10 -0
- package/__tests__/Checkout/workflows/review.workflow.js +19 -0
- package/__tests__/Checkout/workflows/submit.workflow.js +9 -0
- package/__tests__/Finder/finder.spec.js +64 -0
- package/__tests__/Finder/workflows/calendar.workflow.js +9 -0
- package/__tests__/Finder/workflows/index.js +3 -0
- package/__tests__/Finder/workflows/occupation.workflow.js +13 -0
- package/__tests__/Finder/workflows/promocode.workflow.js +8 -0
- package/__tests__/Rates/__mocks__/rates-success.json +731 -0
- package/__tests__/Rates/rates.spec.jsx +20 -0
- package/__tests__/Session/session.spec.js +17 -0
- package/__tests__/Session/workflows/bookings.workflow.js +18 -0
- package/__tests__/Session/workflows/forgotPassword.workflow.js +20 -0
- package/__tests__/Session/workflows/index.js +5 -0
- package/__tests__/Session/workflows/login.workflow.js +29 -0
- package/__tests__/Session/workflows/logout.workflow.js +8 -0
- package/__tests__/Session/workflows/profile.workflow.js +49 -0
- package/__tests__/Signup/signup.spec.js +13 -0
- package/__tests__/Signup/workflows/index.js +1 -0
- package/__tests__/Signup/workflows/signup.workflow.js +26 -0
- package/__tests__/constants.js +18 -0
- package/__tests__/helpers/closeNotification.js +7 -0
- package/__tests__/helpers/getWeekNumber.js +8 -0
- package/__tests__/helpers/index.js +2 -0
- package/build/Core.Notifications.js +1 -1
- package/build/Core.Notifications.js.map +1 -1
- package/build/components/Booking/__tests__/__snapshots__/Booking.test.js.snap +10 -10
- package/build/components/Checkout/Checkout.js +1 -0
- package/build/components/Checkout/Checkout.js.map +1 -1
- package/build/components/Checkout/__tests__/__snapshots__/Checkout.test.js.snap +32 -32
- package/build/components/Checkout/partials/Checkout.Confirmation.js +2 -1
- package/build/components/Checkout/partials/Checkout.Confirmation.js.map +1 -1
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Confirmation.test.js.snap +6 -0
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Form.test.js.snap +28 -8
- package/build/components/Deals/__tests__/__snapshots__/Deals.Calendar.test.js.snap +114 -114
- package/build/components/Deals/__tests__/__snapshots__/Deals.test.js.snap +211 -209
- package/build/components/Environment/Environment.js +4 -2
- package/build/components/Environment/Environment.js.map +1 -1
- package/build/components/Finder/Finder.compact.js +10 -5
- package/build/components/Finder/Finder.compact.js.map +1 -1
- package/build/components/Finder/Finder.constants.js +1 -2
- package/build/components/Finder/Finder.constants.js.map +1 -1
- package/build/components/Finder/Finder.js +4 -20
- package/build/components/Finder/Finder.js.map +1 -1
- package/build/components/Finder/__tests__/__snapshots__/Finder.test.js.snap +734 -730
- package/build/components/Finder/components/Calendar/__tests__/__snapshots__/Calendar.test.js.snap +419 -419
- package/build/components/Header/Header.js +1 -0
- package/build/components/Header/Header.js.map +1 -1
- package/build/components/Profile/components/Bookings/Bookings.Search.js +9 -8
- package/build/components/Profile/components/Bookings/Bookings.Search.js.map +1 -1
- package/build/components/Profile/components/Bookings/Bookings.js +1 -0
- package/build/components/Profile/components/Bookings/Bookings.js.map +1 -1
- package/build/components/Profile/components/Settings/Settings.Account.js +2 -2
- package/build/components/Profile/components/Settings/Settings.Account.js.map +1 -1
- package/build/components/Profile/components/Settings/Settings.Password.js +31 -33
- package/build/components/Profile/components/Settings/Settings.Password.js.map +1 -1
- package/build/components/Profile/components/Settings/Settings.Signout.js +11 -8
- package/build/components/Profile/components/Settings/Settings.Signout.js.map +1 -1
- package/build/components/Profile/components/Settings/Settings.js +2 -1
- package/build/components/Profile/components/Settings/Settings.js.map +1 -1
- package/build/components/Profile/components/Settings/Settings.l10n.js +4 -0
- package/build/components/Profile/components/Settings/Settings.l10n.js.map +1 -1
- package/build/components/Profile/components/Settings/Settings.module.css +2 -4
- package/build/components/Session/Session.Account.js +10 -5
- package/build/components/Session/Session.Account.js.map +1 -1
- package/build/components/Session/Session.Login.Modal.js +10 -5
- package/build/components/Session/Session.Login.Modal.js.map +1 -1
- package/build/components/Session/Session.Login.js +2 -1
- package/build/components/Session/Session.Login.js.map +1 -1
- package/build/components/Session/__tests__/__snapshots__/Session.test.js.snap +23 -0
- package/build/components/Signup/Signup.js +3 -1
- package/build/components/Signup/Signup.js.map +1 -1
- package/build/components/Signup/__tests__/__snapshots__/Signup.test.js.snap +9 -6
- package/build/components/__shared__/BookingDetails/BookingDetails.js +2 -1
- package/build/components/__shared__/BookingDetails/BookingDetails.js.map +1 -1
- package/build/components/__shared__/BookingDetails/__tests__/__snapshots__/BookingDetails.test.js.snap +5 -0
- package/build/components/__shared__/BookingSummary/BookingSummary.js +2 -1
- package/build/components/__shared__/BookingSummary/BookingSummary.js.map +1 -1
- package/build/components/__shared__/ButtonMore/ButtonMore.js +1 -1
- package/build/components/__shared__/ButtonMore/ButtonMore.js.map +1 -1
- package/build/components/__shared__/ButtonMore/__tests__/__snapshots__/ButtonMore.test.js.snap +2 -0
- package/build/components/__shared__/FieldOccupation/__tests__/__snapshots__/FieldOccupation.test.js.snap +1 -0
- package/build/components/__shared__/FieldPromocode/FieldPromocode.js +4 -2
- package/build/components/__shared__/FieldPromocode/FieldPromocode.js.map +1 -1
- package/build/components/__shared__/FieldPromocode/__tests__/__snapshots__/FieldPromocode.test.jsx.snap +2 -1
- package/build/components/__shared__/Occupation/Occupation.Group.js +2 -1
- package/build/components/__shared__/Occupation/Occupation.Group.js.map +1 -1
- package/build/components/__shared__/Occupation/__tests__/__snapshots__/Occupation.test.js.snap +6 -0
- package/build/components/__shared__/Payment/Payment.js +2 -1
- package/build/components/__shared__/Payment/Payment.js.map +1 -1
- package/build/components/__shared__/Payment/__tests__/__snapshots__/Payment.test.js.snap +25 -10
- package/build/helpers/consolidateStore.js +1 -1
- package/build/helpers/consolidateStore.js.map +1 -1
- package/build/index.js +2 -1
- package/build/index.js.map +1 -1
- package/package.json +4 -3
- package/playwright.config.js +28 -89
- package/public/routes/Home.jsx +3 -4
- /package/__tests__/bookingQuery/{bookingQuey.spec.js → bookingQuey._spec.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consolidateStore.js","names":["_dataSources","require","_locale","_fetchCurrency","_getAccommodationType","_getLocale","_getMetaRates","_getTags","_prepareRoom","_toOccupation","_Core","_process","_process$env","IS_JEST","process","env","JEST_WORKER_ID","consolidateStore","_config$accomodation","_config$accomodation2","_config$accomodation3","_config$accomodation4","_config$accomodation5","_config$accomodation6","_tags","_promo","_config$languages","components","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","arguments","length","undefined","forceUri","miraiId","isRates","some","component","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","showPrices","pricesWithTaxes","pricesLegend","accomodation","calendar","TAXES","includes","TAX_DEFAULT","to","dateFormat","dateCalc","Date","CALENDAR_FORMAT","language","country","locale","getLocale","currency","TYPE","HOTEL","fetchCurrency","DEFAULT_CURRENCY","club","banner","discount","discountEnabled","rates","variants","active","authentication","idClub","name","conditionsUrl","conditions","privacyPolicyUrl","privacy","applyClubDiscount","idtokenprovider","idHotel","CHAIN","variantDiscount","variantRates","find","toString","url","filter","map","enabled","accommodationType","getAccommodationType","lodgingDenomination","features","home","window","location","origin","warningAvailability","minRoomsEngineNotification","hotels","Object","entries","_ref","key","occupation","dataSource","ADULT","min","age","CHILD","fulfill","maxRooms","rooms","maxOccupation","commissionCode","hsri","COMMISSION_TYPE","chainSelector","tags","placeHolder","trees","options","getTags","placeholder","storageFinder","Storage","adapter","LocalAdapter","get","concat","FINDER_STORAGE_KEY","chainSelectorValue","checkin","clientCode","nights","parties","parseDate","UTC","checkout","parseInt","promo","showPromoNav","configPromo","promoText","place","value","Number","finder","dateDiff","days","toOccupation","places","prepareRoom","promocode","code","host","document","protocol","isDevelopment","NODE_ENV","forwarder","SERVICE_BOOKING","booking","signup","SERVICE_USER","profile","locales","languages","COUNTRIES","reduce","_ref2","props","deals","lisa","meta","getMetaRates","exports"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { COUNTRIES, dateCalc, dateDiff, dateFormat, DEFAULT_CURRENCY, parseDate, UTC } from '@mirai/locale';\n\nimport { fetchCurrency } from './fetchCurrency';\nimport { getAccommodationType } from './getAccommodationType';\nimport { getLocale } from './getLocale';\nimport { getMetaRates } from './getMetaRates';\nimport { getTags } from './getTags';\nimport { prepareRoom } from './prepareRoom';\nimport { toOccupation } from './toOccupation';\nimport { CALENDAR_FORMAT, COMMISSION_TYPE, FINDER_STORAGE_KEY, TAX_DEFAULT, TAXES, TYPE } from '../Core.constants';\n\nconst IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = async ({\n components = [],\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { forceUri = false, miraiId } = urlParams;\n const isRates = components.some(({ component } = {}) => component === 'rates');\n\n // -- calendar -------------------------------------------------------------------------------------------------------\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices: showPrices = false,\n pricesWithTaxes: pricesLegend,\n } = config.accomodation?.calendar || {};\n const calendar = {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX_DEFAULT : undefined,\n showPrices,\n to: !IS_JEST ? dateFormat(dateCalc(new Date(), maxDays, 'days'), CALENDAR_FORMAT) : undefined,\n };\n\n // -- language, country & locale -------------------------------------------------------------------------------------\n const { language, country, locale } = getLocale(instance, urlParams);\n\n // -- currency -------------------------------------------------------------------------------------------------------\n const currency =\n urlParams.currency ||\n instance.currency ||\n (type === TYPE.HOTEL && !IS_JEST ? await fetchCurrency(id) : DEFAULT_CURRENCY);\n\n // -- club -----------------------------------------------------------------------------------------------------------\n let club;\n if (config.club) {\n let {\n accomodation: { club: { banner, discount: discountEnabled = false, rates = false } = {}, variants = [] },\n club: {\n club: { active, authentication, idClub: id, name },\n conditionsUrl: conditions,\n privacyPolicyUrl: privacy,\n },\n } = config;\n\n let { applyClubDiscount, idtokenprovider: idHotel = '' } = urlParams;\n let discount = applyClubDiscount ? applyClubDiscount === 'true' : undefined;\n\n if (discount === undefined) {\n discount = rates;\n if (type === TYPE.CHAIN) {\n let { discount: variantDiscount, rates: variantRates } =\n variants.find(({ id = '' } = {}) => id.toString() === idHotel.toString()) || {};\n discountEnabled = variantDiscount || discountEnabled;\n discount = variantRates || rates;\n }\n }\n\n club = {\n active,\n authentication,\n banner,\n discount: active && discountEnabled ? discount : undefined,\n id,\n name,\n url: { conditions, privacy },\n variants: variants\n .filter(({ club } = {}) => club)\n .map(({ club: { discount: enabled, rates: active } = {}, id } = {}) => ({ active, enabled, id })),\n };\n }\n\n // -- hotel ----------------------------------------------------------------------------------------------------------\n const hotel = {\n accommodationType: getAccommodationType(config.lodgingDenomination, hotelId),\n features: config.accomodation?.features || {},\n id: type === TYPE.CHAIN ? urlParams.idtokenprovider || urlParams.idHotel || hotelId : id,\n url: urlParams.home || window.location.origin,\n warningAvailability: config.minRoomsEngineNotification,\n };\n\n if (type === TYPE.CHAIN) {\n const { hotels = {} } = config;\n hotel.variants = {};\n\n Object.entries(hotels).map(([key, { lodgingDenomination: accommodationType }]) => {\n hotel.variants[key] = { accommodationType };\n });\n }\n\n // -- occupation -----------------------------------------------------------------------------------------------------\n const occupation = {\n dataSource: config.accomodation?.occupation || [\n { type: TYPE.ADULT, min: 1, age: [18] },\n { type: TYPE.CHILD, age: [0, 17], fulfill: true },\n ],\n maxRooms: config.accomodation?.rooms?.maxOccupation,\n variants: config.accomodation?.variants || [],\n };\n\n // -- origin ---------------------------------------------------------------------------------------------------------\n const origin = {\n commissionCode: urlParams.hsri || COMMISSION_TYPE[type],\n };\n\n // -- tags -----------------------------------------------------------------------------------------------------------\n const { chainSelector } = config;\n let tags;\n if (type === TYPE.CHAIN && chainSelector) {\n const { placeHolder = {}, trees = [] } = chainSelector;\n tags = { options: getTags(trees, language), placeholder: placeHolder[language] };\n }\n\n // -- finder ---------------------------------------------------------------------------------------------------------\n const storageFinder = !isRates ? new Storage({ adapter: LocalAdapter }).get(`${FINDER_STORAGE_KEY}:${id}`) || {} : {};\n\n let { chainSelectorValue, checkin, clientCode, nights = isRates ? 1 : 0, parties } = urlParams;\n checkin = checkin ? parseDate(checkin) : isRates ? UTC(new Date()) : undefined;\n let checkout;\n\n if (checkin) checkout = dateCalc(checkin, parseInt(nights), 'days');\n\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = { ...configPromo, placeholder };\n }\n\n let place;\n if (chainSelectorValue && tags) {\n place = tags.options.find(({ value } = {}) => value === Number(chainSelectorValue));\n\n const { id: [id] = [] } = place || {};\n const { accommodationType } = hotel.variants[id] || {};\n if (accommodationType) hotel.accommodationType = accommodationType;\n }\n\n let finder = {\n place: place || storageFinder.place,\n calendar: checkin\n ? [checkin, checkout]\n : storageFinder.calendar && dateDiff(new Date(), new Date(storageFinder.calendar[0])).days > -1\n ? [new Date(storageFinder.calendar[0]), new Date(storageFinder.calendar[1])]\n : [],\n occupation: parties\n ? toOccupation({ chainSelectorValue, occupation, parties, places: tags?.options })\n : isRates\n ? [prepareRoom(occupation.dataSource)]\n : storageFinder.occupation || undefined,\n promocode: clientCode || promo?.code || storageFinder.promocode,\n };\n\n // -- forwarder ------------------------------------------------------------------------------------------------------\n const host = `${document.location.protocol}//${document.location.host}`;\n const isDevelopment = process.env.NODE_ENV === 'development';\n const forwarder = {\n rates: miraiId ? `${host}/step1-rates` : `${process.env.SERVICE_BOOKING}/miraiFrontDispatcher.htm`,\n checkout: miraiId ? `${host}/step2-checkout` : `${process.env.SERVICE_BOOKING}/forwarder_client_form.htm`,\n booking: miraiId ? `${host}/step3-booking` : `${process.env.SERVICE_BOOKING}/forwarder_manage_reservation.htm`,\n signup:\n miraiId || isDevelopment\n ? `${host}/signup`\n : `${process.env.SERVICE_USER}/club/v1/forwarder/registration_process`,\n profile:\n miraiId || isDevelopment ? `${host}/profile` : `${process.env.SERVICE_USER}/club/v1/forwarder/members_area`,\n };\n\n return {\n config,\n cookies,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale,\n locales: config.languages\n ?.map((language) => (language === 'no' ? 'nb' : language))\n .map((language) => `${language}-${COUNTRIES[language]}`),\n\n // entities,\n calendar,\n club,\n components: components.reduce((value, { component, ...props }) => {\n value[component] = props;\n return value;\n }, {}),\n forwarder,\n hotel,\n occupation,\n origin,\n promo,\n session,\n tags,\n // -- components\n deals: undefined,\n finder,\n lisa: undefined, // ! TODO: Rename to chat\n rates: {\n meta: urlParams.rates ? getMetaRates(urlParams.rates) : undefined,\n },\n signup: undefined,\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"consolidateStore.js","names":["_dataSources","require","_locale","_fetchCurrency","_getAccommodationType","_getLocale","_getMetaRates","_getTags","_prepareRoom","_toOccupation","_Core","_process","_process$env","IS_JEST","process","env","JEST_WORKER_ID","consolidateStore","_config$accomodation","_config$accomodation2","_config$accomodation3","_config$accomodation4","_config$accomodation5","_config$accomodation6","_tags","_promo","_config$languages","components","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","arguments","length","undefined","forceUri","miraiId","isRates","some","component","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","showPrices","pricesWithTaxes","pricesLegend","accomodation","calendar","TAXES","includes","TAX_DEFAULT","to","dateFormat","dateCalc","Date","CALENDAR_FORMAT","language","country","locale","getLocale","currency","TYPE","HOTEL","fetchCurrency","DEFAULT_CURRENCY","club","banner","discount","discountEnabled","rates","variants","active","authentication","idClub","name","conditionsUrl","conditions","privacyPolicyUrl","privacy","applyClubDiscount","idtokenprovider","idHotel","CHAIN","variantDiscount","variantRates","find","toString","url","filter","map","enabled","accommodationType","getAccommodationType","lodgingDenomination","features","home","window","location","origin","warningAvailability","minRoomsEngineNotification","hotels","Object","entries","_ref","key","occupation","dataSource","ADULT","min","age","CHILD","fulfill","maxRooms","rooms","maxOccupation","commissionCode","hsri","COMMISSION_TYPE","chainSelector","tags","placeHolder","trees","options","getTags","placeholder","storageFinder","Storage","adapter","LocalAdapter","get","concat","FINDER_STORAGE_KEY","chainSelectorValue","checkin","clientCode","nights","parties","parseDate","UTC","checkout","parseInt","promo","showPromoNav","configPromo","promoText","place","value","Number","finder","dateDiff","days","toOccupation","places","prepareRoom","promocode","code","host","document","protocol","isDevelopment","NODE_ENV","IS_PLAYWRIGHT","forwarder","SERVICE_BOOKING","booking","signup","SERVICE_USER","profile","locales","languages","COUNTRIES","reduce","_ref2","props","deals","lisa","meta","getMetaRates","exports"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { COUNTRIES, dateCalc, dateDiff, dateFormat, DEFAULT_CURRENCY, parseDate, UTC } from '@mirai/locale';\n\nimport { fetchCurrency } from './fetchCurrency';\nimport { getAccommodationType } from './getAccommodationType';\nimport { getLocale } from './getLocale';\nimport { getMetaRates } from './getMetaRates';\nimport { getTags } from './getTags';\nimport { prepareRoom } from './prepareRoom';\nimport { toOccupation } from './toOccupation';\nimport { CALENDAR_FORMAT, COMMISSION_TYPE, FINDER_STORAGE_KEY, TAX_DEFAULT, TAXES, TYPE } from '../Core.constants';\n\nconst IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = async ({\n components = [],\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { forceUri = false, miraiId } = urlParams;\n const isRates = components.some(({ component } = {}) => component === 'rates');\n\n // -- calendar -------------------------------------------------------------------------------------------------------\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices: showPrices = false,\n pricesWithTaxes: pricesLegend,\n } = config.accomodation?.calendar || {};\n const calendar = {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX_DEFAULT : undefined,\n showPrices,\n to: !IS_JEST ? dateFormat(dateCalc(new Date(), maxDays, 'days'), CALENDAR_FORMAT) : undefined,\n };\n\n // -- language, country & locale -------------------------------------------------------------------------------------\n const { language, country, locale } = getLocale(instance, urlParams);\n\n // -- currency -------------------------------------------------------------------------------------------------------\n const currency =\n urlParams.currency ||\n instance.currency ||\n (type === TYPE.HOTEL && !IS_JEST ? await fetchCurrency(id) : DEFAULT_CURRENCY);\n\n // -- club -----------------------------------------------------------------------------------------------------------\n let club;\n if (config.club) {\n let {\n accomodation: { club: { banner, discount: discountEnabled = false, rates = false } = {}, variants = [] },\n club: {\n club: { active, authentication, idClub: id, name },\n conditionsUrl: conditions,\n privacyPolicyUrl: privacy,\n },\n } = config;\n\n let { applyClubDiscount, idtokenprovider: idHotel = '' } = urlParams;\n let discount = applyClubDiscount ? applyClubDiscount === 'true' : undefined;\n\n if (discount === undefined) {\n discount = rates;\n if (type === TYPE.CHAIN) {\n let { discount: variantDiscount, rates: variantRates } =\n variants.find(({ id = '' } = {}) => id.toString() === idHotel.toString()) || {};\n discountEnabled = variantDiscount || discountEnabled;\n discount = variantRates || rates;\n }\n }\n\n club = {\n active,\n authentication,\n banner,\n discount: active && discountEnabled ? discount : undefined,\n id,\n name,\n url: { conditions, privacy },\n variants: variants\n .filter(({ club } = {}) => club)\n .map(({ club: { discount: enabled, rates: active } = {}, id } = {}) => ({ active, enabled, id })),\n };\n }\n\n // -- hotel ----------------------------------------------------------------------------------------------------------\n const hotel = {\n accommodationType: getAccommodationType(config.lodgingDenomination, hotelId),\n features: config.accomodation?.features || {},\n id: type === TYPE.CHAIN ? urlParams.idtokenprovider || urlParams.idHotel || hotelId : id,\n url: urlParams.home || window.location.origin,\n warningAvailability: config.minRoomsEngineNotification,\n };\n\n if (type === TYPE.CHAIN) {\n const { hotels = {} } = config;\n hotel.variants = {};\n\n Object.entries(hotels).map(([key, { lodgingDenomination: accommodationType }]) => {\n hotel.variants[key] = { accommodationType };\n });\n }\n\n // -- occupation -----------------------------------------------------------------------------------------------------\n const occupation = {\n dataSource: config.accomodation?.occupation || [\n { type: TYPE.ADULT, min: 1, age: [18] },\n { type: TYPE.CHILD, age: [0, 17], fulfill: true },\n ],\n maxRooms: config.accomodation?.rooms?.maxOccupation,\n variants: config.accomodation?.variants || [],\n };\n\n // -- origin ---------------------------------------------------------------------------------------------------------\n const origin = {\n commissionCode: urlParams.hsri || COMMISSION_TYPE[type],\n };\n\n // -- tags -----------------------------------------------------------------------------------------------------------\n const { chainSelector } = config;\n let tags;\n if (type === TYPE.CHAIN && chainSelector) {\n const { placeHolder = {}, trees = [] } = chainSelector;\n tags = { options: getTags(trees, language), placeholder: placeHolder[language] };\n }\n\n // -- finder ---------------------------------------------------------------------------------------------------------\n const storageFinder = !isRates ? new Storage({ adapter: LocalAdapter }).get(`${FINDER_STORAGE_KEY}:${id}`) || {} : {};\n\n let { chainSelectorValue, checkin, clientCode, nights = isRates ? 1 : 0, parties } = urlParams;\n checkin = checkin ? parseDate(checkin) : isRates ? UTC(new Date()) : undefined;\n let checkout;\n\n if (checkin) checkout = dateCalc(checkin, parseInt(nights), 'days');\n\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = { ...configPromo, placeholder };\n }\n\n let place;\n if (chainSelectorValue && tags) {\n place = tags.options.find(({ value } = {}) => value === Number(chainSelectorValue));\n\n const { id: [id] = [] } = place || {};\n const { accommodationType } = hotel.variants[id] || {};\n if (accommodationType) hotel.accommodationType = accommodationType;\n }\n\n let finder = {\n place: place || storageFinder.place,\n calendar: checkin\n ? [checkin, checkout]\n : storageFinder.calendar && dateDiff(new Date(), new Date(storageFinder.calendar[0])).days > -1\n ? [new Date(storageFinder.calendar[0]), new Date(storageFinder.calendar[1])]\n : [],\n occupation: parties\n ? toOccupation({ chainSelectorValue, occupation, parties, places: tags?.options })\n : isRates\n ? [prepareRoom(occupation.dataSource)]\n : storageFinder.occupation || undefined,\n promocode: clientCode || promo?.code || storageFinder.promocode,\n };\n\n // -- forwarder ------------------------------------------------------------------------------------------------------\n const host = `${document.location.protocol}//${document.location.host}`;\n const isDevelopment = process.env.NODE_ENV === 'development' || window.IS_PLAYWRIGHT;\n const forwarder = {\n rates: miraiId ? `${host}/step1-rates` : `${process.env.SERVICE_BOOKING}/miraiFrontDispatcher.htm`,\n checkout: miraiId ? `${host}/step2-checkout` : `${process.env.SERVICE_BOOKING}/forwarder_client_form.htm`,\n booking: miraiId ? `${host}/step3-booking` : `${process.env.SERVICE_BOOKING}/forwarder_manage_reservation.htm`,\n signup:\n miraiId || isDevelopment\n ? `${host}/signup`\n : `${process.env.SERVICE_USER}/club/v1/forwarder/registration_process`,\n profile:\n miraiId || isDevelopment ? `${host}/profile` : `${process.env.SERVICE_USER}/club/v1/forwarder/members_area`,\n };\n\n return {\n config,\n cookies,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale,\n locales: config.languages\n ?.map((language) => (language === 'no' ? 'nb' : language))\n .map((language) => `${language}-${COUNTRIES[language]}`),\n\n // entities,\n calendar,\n club,\n components: components.reduce((value, { component, ...props }) => {\n value[component] = props;\n return value;\n }, {}),\n forwarder,\n hotel,\n occupation,\n origin,\n promo,\n session,\n tags,\n // -- components\n deals: undefined,\n finder,\n lisa: undefined, // ! TODO: Rename to chat\n rates: {\n meta: urlParams.rates ? getMetaRates(urlParams.rates) : undefined,\n },\n signup: undefined,\n };\n};\n"],"mappings":"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"}
|
package/build/index.js
CHANGED
|
@@ -62,7 +62,7 @@ window.Mirai.core = async () => {
|
|
|
62
62
|
(0, _helpers.theme)(urlParams);
|
|
63
63
|
|
|
64
64
|
// 6. 1st render
|
|
65
|
-
window && _reactDom.default.render( /*#__PURE__*/_react.default.createElement(_react.default.StrictMode, null, /*#__PURE__*/_react.default.createElement(_dataSources.StoreProvider, {
|
|
65
|
+
window && !window.IS_PLAYWRIGHT && _reactDom.default.render( /*#__PURE__*/_react.default.createElement(_react.default.StrictMode, null, /*#__PURE__*/_react.default.createElement(_dataSources.StoreProvider, {
|
|
66
66
|
value: {
|
|
67
67
|
id: instance.id,
|
|
68
68
|
session,
|
|
@@ -115,6 +115,7 @@ window.Mirai.core = async () => {
|
|
|
115
115
|
components
|
|
116
116
|
}), /*#__PURE__*/_react.default.createElement(_EventManager.EventManager, null)))), instance.el);
|
|
117
117
|
window.Mirai.ready = true;
|
|
118
|
+
_dataSources.Event.publish('mirai.core::ready');
|
|
118
119
|
console.log(log, '[READY]', window.Mirai);
|
|
119
120
|
};
|
|
120
121
|
(async () => {
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_dataSources","require","_services","_react","_interopRequireDefault","_reactDom","_EventManager","_Core","_Core2","_helpers","_package","obj","__esModule","default","window","Mirai","components","undefined","config","environment","process","env","NODE_ENV","Event","services","booking","SERVICE_BOOKING","club","SERVICE_CLUB","dictionary","SERVICE_DICTIONARY","engine","SERVICE_ENGINE","static","SERVICE_STATIC","user","SERVICE_USER","version","core","isProduction","isDevelopment","isPreproduction","log","concat","name","console","urlParams","fetchUrlParams","location","search","cookies","fetchCookies","COOKIE_CART","COOKIE_PESTANA","COOKIE_VALUES","session","fetchSession","loadEnvironment","instance","findInstance","findComponents","length","theme","ReactDOM","render","createElement","StrictMode","StoreProvider","value","id","getLocale","Core","skeleton","el","fetchConfig","Sentry","SENTRY","loadSentry","checkSession","setUser","store","consolidateStore","ServiceFeatures","initialize","ServiceDictionary","cache","locale","get","MetricsProvider","token","METRICS","EventManager","ready","filter","component","arguments","includes","addEventListener","event","persisted"],"sources":["../src/index.js"],"sourcesContent":["/* eslint-disable no-console */\nimport { Event, MetricsProvider, StoreProvider } from '@mirai/data-sources';\nimport { ServiceDictionary, ServiceFeatures } from '@mirai/services';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { EventManager } from './components/EventManager';\nimport { Core } from './Core';\nimport { COOKIE_CART, COOKIE_PESTANA, COOKIE_VALUES } from './Core.definition';\nimport {\n checkSession,\n consolidateStore,\n fetchConfig,\n fetchCookies,\n fetchSession,\n fetchUrlParams,\n findComponents,\n findInstance,\n getLocale,\n loadEnvironment,\n loadSentry,\n theme,\n} from './helpers';\nimport { name, version } from '../package.json';\n\nwindow.Mirai = {\n ...window.Mirai,\n components: undefined,\n config: undefined,\n environment: process.env.NODE_ENV,\n Event,\n services: {\n booking: process.env.SERVICE_BOOKING,\n club: process.env.SERVICE_CLUB,\n dictionary: process.env.SERVICE_DICTIONARY,\n engine: process.env.SERVICE_ENGINE,\n static: process.env.SERVICE_STATIC,\n user: process.env.SERVICE_USER,\n },\n version,\n};\n\nwindow.Mirai.core = async () => {\n const isProduction = process.env.NODE_ENV === 'production';\n const isDevelopment = process.env.NODE_ENV === 'development';\n const isPreproduction = process.env.NODE_ENV === 'preproduction';\n const log = `${isProduction ? '🟢' : isPreproduction ? '🟡' : isDevelopment ? '🔴' : '⚫️'} ${name} v${version}`;\n\n console.log(log, 'starting...');\n\n // 1. Fetch client-side dataSources\n const urlParams = fetchUrlParams(location.search);\n const cookies = fetchCookies([COOKIE_CART, COOKIE_PESTANA, COOKIE_VALUES]);\n let session = fetchSession(urlParams);\n\n // 2. Analyze environment\n const environment = urlParams.env && isProduction ? loadEnvironment(urlParams.env) : undefined;\n if (environment) return;\n\n // 3. Find instance\n const instance = findInstance({ urlParams });\n if (!instance) return;\n\n // 4. Find components\n const components = findComponents();\n if (!components.length) return;\n window.Mirai = { ...window.Mirai, components };\n\n // 5. Theming\n theme(urlParams);\n\n // 6. 1st render\n window &&\n ReactDOM.render(\n <React.StrictMode>\n <StoreProvider value={{ id: instance.id, session, urlParams, ...getLocale(instance, urlParams) }}>\n <Core {...{ components }} skeleton />\n </StoreProvider>\n </React.StrictMode>,\n instance.el,\n );\n\n // 7. Analize id to fetch its config\n const config = await fetchConfig(instance);\n if (!config) return;\n window.Mirai.config = config;\n\n // 8. Sentry\n let Sentry = window.Mirai.Sentry;\n if (!Sentry && process.env.SENTRY) {\n Sentry = loadSentry(process.env.SENTRY, version);\n window.Mirai.Sentry = Sentry;\n }\n\n // 9. Check session\n if (session && !(await checkSession(instance.id, session, config))) session = undefined;\n if (session && Sentry) Sentry.setUser(session);\n\n // 10. Consolidate store\n const store = await consolidateStore({ components, config, cookies, instance, session, urlParams });\n\n // 11. Initialize features\n await ServiceFeatures.initialize();\n\n // 12. Initialize dictionary\n if (!ServiceDictionary.cache(store.locale)) await ServiceDictionary.get(store.locale, false);\n\n // 13. Render components\n ReactDOM.render(\n <React.StrictMode>\n <MetricsProvider token={process.env.METRICS}>\n <StoreProvider value={store}>\n <Core {...{ components }} />\n <EventManager />\n </StoreProvider>\n </MetricsProvider>\n </React.StrictMode>,\n instance.el,\n );\n\n window.Mirai.ready = true;\n\n console.log(log, '[READY]', window.Mirai);\n};\n\n(async () => {\n await window.Mirai.core();\n\n const { components = [], ready } = window.Mirai;\n\n if (ready && components.filter(({ component } = {}) => ['booking', 'checkout', 'rates'].includes(component).length)) {\n window.addEventListener('pageshow', (event) => event.persisted && window.Mirai.core());\n }\n})();\n"],"mappings":";;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,SAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAcA,IAAAS,QAAA,GAAAT,OAAA;AAAgD,SAAAG,uBAAAO,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAvBhD;;AAyBAG,MAAM,CAACC,KAAK,GAAG;EACb,GAAGD,MAAM,CAACC,KAAK;EACfC,UAAU,EAAEC,SAAS;EACrBC,MAAM,EAAED,SAAS;EACjBE,WAAW,EAAEC,OAAO,CAACC,GAAG,CAACC,QAAQ;EACjCC,KAAK,EAALA,kBAAK;EACLC,QAAQ,EAAE;IACRC,OAAO,EAAEL,OAAO,CAACC,GAAG,CAACK,eAAe;IACpCC,IAAI,EAAEP,OAAO,CAACC,GAAG,CAACO,YAAY;IAC9BC,UAAU,EAAET,OAAO,CAACC,GAAG,CAACS,kBAAkB;IAC1CC,MAAM,EAAEX,OAAO,CAACC,GAAG,CAACW,cAAc;IAClCC,MAAM,EAAEb,OAAO,CAACC,GAAG,CAACa,cAAc;IAClCC,IAAI,EAAEf,OAAO,CAACC,GAAG,CAACe;EACpB,CAAC;EACDC,OAAO,EAAPA;AACF,CAAC;AAEDvB,MAAM,CAACC,KAAK,CAACuB,IAAI,GAAG,YAAY;EAC9B,MAAMC,YAAY,GAAGnB,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY;EAC1D,MAAMkB,aAAa,GAAGpB,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa;EAC5D,MAAMmB,eAAe,GAAGrB,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,eAAe;EAChE,MAAMoB,GAAG,MAAAC,MAAA,CAAMJ,YAAY,GAAG,IAAI,GAAGE,eAAe,GAAG,IAAI,GAAGD,aAAa,GAAG,IAAI,GAAG,IAAI,OAAAG,MAAA,CAAIC,aAAI,QAAAD,MAAA,CAAKN,gBAAO,CAAE;EAE/GQ,OAAO,CAACH,GAAG,CAACA,GAAG,EAAE,aAAa,CAAC;;EAE/B;EACA,MAAMI,SAAS,GAAG,IAAAC,uBAAc,EAACC,QAAQ,CAACC,MAAM,CAAC;EACjD,MAAMC,OAAO,GAAG,IAAAC,qBAAY,EAAC,CAACC,kBAAW,EAAEC,qBAAc,EAAEC,oBAAa,CAAC,CAAC;EAC1E,IAAIC,OAAO,GAAG,IAAAC,qBAAY,EAACV,SAAS,CAAC;;EAErC;EACA,MAAM3B,WAAW,GAAG2B,SAAS,CAACzB,GAAG,IAAIkB,YAAY,GAAG,IAAAkB,wBAAe,EAACX,SAAS,CAACzB,GAAG,CAAC,GAAGJ,SAAS;EAC9F,IAAIE,WAAW,EAAE;;EAEjB;EACA,MAAMuC,QAAQ,GAAG,IAAAC,qBAAY,EAAC;IAAEb;EAAU,CAAC,CAAC;EAC5C,IAAI,CAACY,QAAQ,EAAE;;EAEf;EACA,MAAM1C,UAAU,GAAG,IAAA4C,uBAAc,EAAC,CAAC;EACnC,IAAI,CAAC5C,UAAU,CAAC6C,MAAM,EAAE;EACxB/C,MAAM,CAACC,KAAK,GAAG;IAAE,GAAGD,MAAM,CAACC,KAAK;IAAEC;EAAW,CAAC;;EAE9C;EACA,IAAA8C,cAAK,EAAChB,SAAS,CAAC;;EAEhB;EACAhC,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","names":["_dataSources","require","_services","_react","_interopRequireDefault","_reactDom","_EventManager","_Core","_Core2","_helpers","_package","obj","__esModule","default","window","Mirai","components","undefined","config","environment","process","env","NODE_ENV","Event","services","booking","SERVICE_BOOKING","club","SERVICE_CLUB","dictionary","SERVICE_DICTIONARY","engine","SERVICE_ENGINE","static","SERVICE_STATIC","user","SERVICE_USER","version","core","isProduction","isDevelopment","isPreproduction","log","concat","name","console","urlParams","fetchUrlParams","location","search","cookies","fetchCookies","COOKIE_CART","COOKIE_PESTANA","COOKIE_VALUES","session","fetchSession","loadEnvironment","instance","findInstance","findComponents","length","theme","IS_PLAYWRIGHT","ReactDOM","render","createElement","StrictMode","StoreProvider","value","id","getLocale","Core","skeleton","el","fetchConfig","Sentry","SENTRY","loadSentry","checkSession","setUser","store","consolidateStore","ServiceFeatures","initialize","ServiceDictionary","cache","locale","get","MetricsProvider","token","METRICS","EventManager","ready","publish","filter","component","arguments","includes","addEventListener","event","persisted"],"sources":["../src/index.js"],"sourcesContent":["/* eslint-disable no-console */\nimport { Event, MetricsProvider, StoreProvider } from '@mirai/data-sources';\nimport { ServiceDictionary, ServiceFeatures } from '@mirai/services';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { EventManager } from './components/EventManager';\nimport { Core } from './Core';\nimport { COOKIE_CART, COOKIE_PESTANA, COOKIE_VALUES } from './Core.definition';\nimport {\n checkSession,\n consolidateStore,\n fetchConfig,\n fetchCookies,\n fetchSession,\n fetchUrlParams,\n findComponents,\n findInstance,\n getLocale,\n loadEnvironment,\n loadSentry,\n theme,\n} from './helpers';\nimport { name, version } from '../package.json';\n\nwindow.Mirai = {\n ...window.Mirai,\n components: undefined,\n config: undefined,\n environment: process.env.NODE_ENV,\n Event,\n services: {\n booking: process.env.SERVICE_BOOKING,\n club: process.env.SERVICE_CLUB,\n dictionary: process.env.SERVICE_DICTIONARY,\n engine: process.env.SERVICE_ENGINE,\n static: process.env.SERVICE_STATIC,\n user: process.env.SERVICE_USER,\n },\n version,\n};\n\nwindow.Mirai.core = async () => {\n const isProduction = process.env.NODE_ENV === 'production';\n const isDevelopment = process.env.NODE_ENV === 'development';\n const isPreproduction = process.env.NODE_ENV === 'preproduction';\n const log = `${isProduction ? '🟢' : isPreproduction ? '🟡' : isDevelopment ? '🔴' : '⚫️'} ${name} v${version}`;\n\n console.log(log, 'starting...');\n\n // 1. Fetch client-side dataSources\n const urlParams = fetchUrlParams(location.search);\n const cookies = fetchCookies([COOKIE_CART, COOKIE_PESTANA, COOKIE_VALUES]);\n let session = fetchSession(urlParams);\n\n // 2. Analyze environment\n const environment = urlParams.env && isProduction ? loadEnvironment(urlParams.env) : undefined;\n if (environment) return;\n\n // 3. Find instance\n const instance = findInstance({ urlParams });\n if (!instance) return;\n\n // 4. Find components\n const components = findComponents();\n if (!components.length) return;\n window.Mirai = { ...window.Mirai, components };\n\n // 5. Theming\n theme(urlParams);\n\n // 6. 1st render\n window &&\n !window.IS_PLAYWRIGHT &&\n ReactDOM.render(\n <React.StrictMode>\n <StoreProvider value={{ id: instance.id, session, urlParams, ...getLocale(instance, urlParams) }}>\n <Core {...{ components }} skeleton />\n </StoreProvider>\n </React.StrictMode>,\n instance.el,\n );\n\n // 7. Analize id to fetch its config\n const config = await fetchConfig(instance);\n if (!config) return;\n window.Mirai.config = config;\n\n // 8. Sentry\n let Sentry = window.Mirai.Sentry;\n if (!Sentry && process.env.SENTRY) {\n Sentry = loadSentry(process.env.SENTRY, version);\n window.Mirai.Sentry = Sentry;\n }\n\n // 9. Check session\n if (session && !(await checkSession(instance.id, session, config))) session = undefined;\n if (session && Sentry) Sentry.setUser(session);\n\n // 10. Consolidate store\n const store = await consolidateStore({ components, config, cookies, instance, session, urlParams });\n\n // 11. Initialize features\n await ServiceFeatures.initialize();\n\n // 12. Initialize dictionary\n if (!ServiceDictionary.cache(store.locale)) await ServiceDictionary.get(store.locale, false);\n\n // 13. Render components\n ReactDOM.render(\n <React.StrictMode>\n <MetricsProvider token={process.env.METRICS}>\n <StoreProvider value={store}>\n <Core {...{ components }} />\n <EventManager />\n </StoreProvider>\n </MetricsProvider>\n </React.StrictMode>,\n instance.el,\n );\n\n window.Mirai.ready = true;\n Event.publish('mirai.core::ready');\n\n console.log(log, '[READY]', window.Mirai);\n};\n\n(async () => {\n await window.Mirai.core();\n\n const { components = [], ready } = window.Mirai;\n\n if (ready && components.filter(({ component } = {}) => ['booking', 'checkout', 'rates'].includes(component).length)) {\n window.addEventListener('pageshow', (event) => event.persisted && window.Mirai.core());\n }\n})();\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mirai/core",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.380",
|
|
4
4
|
"source": "src/index.js",
|
|
5
5
|
"repository": "https://gitlab.com/miraicorp/dev/frontend/core",
|
|
6
6
|
"author": "JΛVI <hello@soyjavi.com>",
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
"test": "node scripts/test.js --watchAll=false --silent",
|
|
17
17
|
"test:coverage": "node scripts/test.js --coverage --coverageReporters=text --detectOpenHandles --forceExit --silent",
|
|
18
18
|
"test:watch": "node scripts/test.js",
|
|
19
|
-
"test:e2e": "yarn playwright test",
|
|
19
|
+
"test:e2e": "yarn playwright test --ui",
|
|
20
|
+
"test:e2e:ci": "NODE_ENV=CI yarn playwright test",
|
|
20
21
|
"test:e2e:recorder": "yarn playwright codegen",
|
|
21
22
|
"test:e2e:report": "yarn playwright show-report",
|
|
22
23
|
"pipeline": "yarn lint && yarn test",
|
|
@@ -41,7 +42,7 @@
|
|
|
41
42
|
"@babel/preset-react": "7.18.6",
|
|
42
43
|
"@mirai/eslint": "0.1.3",
|
|
43
44
|
"@parcel/transformer-inline-string": "2.11.0",
|
|
44
|
-
"@playwright/test": "^1.
|
|
45
|
+
"@playwright/test": "^1.45.3",
|
|
45
46
|
"@testing-library/react": "12.1.5",
|
|
46
47
|
"@testing-library/react-hooks": "7.0.2",
|
|
47
48
|
"jest-fetch-mock": "^3.0.3",
|
package/playwright.config.js
CHANGED
|
@@ -1,110 +1,49 @@
|
|
|
1
|
-
// @ts-check
|
|
2
1
|
const { devices } = require('@playwright/test');
|
|
3
2
|
|
|
4
|
-
/**
|
|
5
|
-
* Read environment variables from file.
|
|
6
|
-
* https://github.com/motdotla/dotenv
|
|
7
|
-
*/
|
|
8
|
-
// require('dotenv').config();
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* @see https://playwright.dev/docs/test-configuration
|
|
12
|
-
* @type {import('@playwright/test').PlaywrightTestConfig}
|
|
13
|
-
*/
|
|
14
3
|
const config = {
|
|
15
4
|
testDir: './__tests__',
|
|
16
|
-
/* Maximum time one test can run for. */
|
|
17
5
|
timeout: 30 * 1000,
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Maximum time expect() should wait for the condition to be met.
|
|
21
|
-
* For example in `await expect(locator).toHaveText();`
|
|
22
|
-
*/
|
|
23
|
-
timeout: 5000,
|
|
24
|
-
},
|
|
25
|
-
/* Run tests in files in parallel */
|
|
26
|
-
fullyParallel: true,
|
|
27
|
-
/* Fail the build on CI if you accidentally left test.only in the source code. */
|
|
28
|
-
forbidOnly: !!process.env.CI,
|
|
29
|
-
/* Retry on CI only */
|
|
30
|
-
retries: process.env.CI ? 2 : 0,
|
|
31
|
-
/* Opt out of parallel tests on CI. */
|
|
32
|
-
workers: process.env.CI ? 1 : undefined,
|
|
33
|
-
/* Reporter to use. See https://playwright.dev/docs/test-reporters */
|
|
34
|
-
reporter: 'html',
|
|
35
|
-
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
|
|
6
|
+
retries: 1,
|
|
36
7
|
use: {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
/* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
|
|
8
|
+
headless: true,
|
|
9
|
+
viewport: { width: 1280, height: 720 },
|
|
10
|
+
ignoreHTTPSErrors: true,
|
|
11
|
+
video: 'retain-on-failure',
|
|
43
12
|
trace: 'on-first-retry',
|
|
44
|
-
video: 'on',
|
|
45
13
|
},
|
|
46
14
|
|
|
47
|
-
/* Configure projects for major browsers */
|
|
48
15
|
projects: [
|
|
49
16
|
{
|
|
50
|
-
name: '
|
|
17
|
+
name: 'iPhone 12',
|
|
18
|
+
use: {
|
|
19
|
+
...devices['iPhone 12'],
|
|
20
|
+
isMobile: true,
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'Desktop',
|
|
51
25
|
use: {
|
|
52
26
|
...devices['Desktop Chrome'],
|
|
27
|
+
viewport: { width: 1280, height: 720 },
|
|
53
28
|
},
|
|
54
29
|
},
|
|
55
|
-
|
|
56
|
-
// {
|
|
57
|
-
// name: 'firefox',
|
|
58
|
-
// use: {
|
|
59
|
-
// ...devices['Desktop Firefox'],
|
|
60
|
-
// },
|
|
61
|
-
// },
|
|
62
|
-
|
|
63
|
-
// {
|
|
64
|
-
// name: 'webkit',
|
|
65
|
-
// use: {
|
|
66
|
-
// ...devices['Desktop Safari'],
|
|
67
|
-
// },
|
|
68
|
-
// },
|
|
69
|
-
|
|
70
|
-
/* Test against mobile viewports. */
|
|
71
|
-
// {
|
|
72
|
-
// name: 'Mobile Chrome',
|
|
73
|
-
// use: {
|
|
74
|
-
// ...devices['Pixel 5'],
|
|
75
|
-
// },
|
|
76
|
-
// },
|
|
77
|
-
// {
|
|
78
|
-
// name: 'Mobile Safari',
|
|
79
|
-
// use: {
|
|
80
|
-
// ...devices['iPhone 12'],
|
|
81
|
-
// },
|
|
82
|
-
// },
|
|
83
|
-
|
|
84
|
-
/* Test against branded browsers. */
|
|
85
|
-
// {
|
|
86
|
-
// name: 'Microsoft Edge',
|
|
87
|
-
// use: {
|
|
88
|
-
// channel: 'msedge',
|
|
89
|
-
// },
|
|
90
|
-
// },
|
|
91
|
-
// {
|
|
92
|
-
// name: 'Google Chrome',
|
|
93
|
-
// use: {
|
|
94
|
-
// channel: 'chrome',
|
|
95
|
-
// },
|
|
96
|
-
// },
|
|
97
30
|
],
|
|
98
31
|
|
|
99
|
-
|
|
100
|
-
|
|
32
|
+
reporter: [
|
|
33
|
+
// /
|
|
34
|
+
['list'],
|
|
35
|
+
['html', { outputFolder: 'playwright-report' }],
|
|
36
|
+
],
|
|
101
37
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
38
|
+
webServer: process.env.CI
|
|
39
|
+
? {
|
|
40
|
+
command:
|
|
41
|
+
'rm -rf dist && NODE_ENV=production parcel build public/index.html --no-cache --no-source-maps --no-autoinstall --detailed-report && serve dist -l tcp:local.mirai.com:8080 -s -C',
|
|
42
|
+
port: 8080,
|
|
43
|
+
reuseExistingServer: !process.env.CI,
|
|
44
|
+
timeout: 120 * 1000,
|
|
45
|
+
}
|
|
46
|
+
: undefined,
|
|
108
47
|
};
|
|
109
48
|
|
|
110
49
|
module.exports = config;
|
package/public/routes/Home.jsx
CHANGED
|
@@ -27,6 +27,7 @@ export const Home = () => {
|
|
|
27
27
|
}, [resident]);
|
|
28
28
|
|
|
29
29
|
const showResident = locale === 'es-ES';
|
|
30
|
+
const testId = window.IS_PLAYWRIGHT ? 'finder' : undefined;
|
|
30
31
|
|
|
31
32
|
return (
|
|
32
33
|
<>
|
|
@@ -56,8 +57,8 @@ export const Home = () => {
|
|
|
56
57
|
</View>
|
|
57
58
|
)}
|
|
58
59
|
|
|
59
|
-
<View data-mirai-component="finder" data-mobile="false" />
|
|
60
|
-
<View data-mirai-component="finder" data-compacted data-mobile="true" />
|
|
60
|
+
<View data-mirai-component="finder" data-mobile="false" data-test-id={testId} />
|
|
61
|
+
<View data-mirai-component="finder" data-compacted data-mobile="true" data-test-id={testId} />
|
|
61
62
|
</View>
|
|
62
63
|
|
|
63
64
|
<View row={!isMobile} tag="section" className={[style.section, style.spaceBetween, style.wrapper]}>
|
|
@@ -82,8 +83,6 @@ export const Home = () => {
|
|
|
82
83
|
comfort in the heart of the city.
|
|
83
84
|
</Text>
|
|
84
85
|
</View>
|
|
85
|
-
|
|
86
|
-
<View data-mirai-component="finder" data-layout="column" data-mobile="false" className={style.column} />
|
|
87
86
|
</View>
|
|
88
87
|
|
|
89
88
|
<View row={!isMobile} tag="section" className={[style.section, style.accent, style.testimonials]}>
|
|
File without changes
|