@mirai/core 0.3.305 → 0.3.307

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.
Files changed (63) hide show
  1. package/build/Core.Notifications.module.css +2 -10
  2. package/build/components/BannerLoyalty/BannerLoyalty.module.css +2 -2
  3. package/build/components/Booking/Booking.module.css +2 -2
  4. package/build/components/Booking/__tests__/__snapshots__/Booking.test.js.snap +10 -15
  5. package/build/components/Booking/components/Field/Field.module.css +2 -2
  6. package/build/components/Booking/partials/Booking.Payment.js +16 -0
  7. package/build/components/Booking/partials/Booking.Payment.js.map +1 -1
  8. package/build/components/Chat/Chat.module.css +2 -2
  9. package/build/components/Checkout/Checkout.module.css +2 -2
  10. package/build/components/Checkout/__tests__/__snapshots__/Checkout.test.js.snap +16 -24
  11. package/build/components/Deals/Deals.module.css +2 -2
  12. package/build/components/EventManager/EventManager.constants.js +11 -0
  13. package/build/components/EventManager/EventManager.constants.js.map +1 -0
  14. package/build/components/EventManager/EventManager.js +79 -0
  15. package/build/components/EventManager/EventManager.js.map +1 -0
  16. package/build/components/EventManager/index.js +17 -0
  17. package/build/components/EventManager/index.js.map +1 -0
  18. package/build/components/Finder/Finder.js +14 -1
  19. package/build/components/Finder/Finder.js.map +1 -1
  20. package/build/components/Finder/Finder.module.css +2 -2
  21. package/build/components/Finder/components/Calendar/Calendar.module.css +1 -1
  22. package/build/components/Finder/components/Places/Places.module.css +2 -2
  23. package/build/components/Header/Header.js +2 -1
  24. package/build/components/Header/Header.js.map +1 -1
  25. package/build/components/Header/Header.module.css +2 -2
  26. package/build/components/Header/components/BookingProcess/BookingProcess.module.css +2 -2
  27. package/build/components/Profile/components/Bookings/Bookings.module.css +2 -2
  28. package/build/components/Profile/components/Settings/Settings.module.css +2 -2
  29. package/build/components/Rates/Rates.Skeleton.js +3 -2
  30. package/build/components/Rates/Rates.Skeleton.js.map +1 -1
  31. package/build/components/Rates/Rates.module.css +2 -2
  32. package/build/components/Rates/components/CardHotel/CardHotel.module.css +2 -2
  33. package/build/components/Rates/components/ClubRate/ClubRate.module.css +2 -2
  34. package/build/components/Rates/components/Hotelverse/Hotelverse.module.css +1 -1
  35. package/build/components/Rates/components/Item/Item.Preview.js +3 -1
  36. package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
  37. package/build/components/Rates/components/Item/Item.module.css +2 -2
  38. package/build/components/Rates/components/Item/components/Option/Option.module.css +2 -2
  39. package/build/components/Rates/components/Item/components/RateDetails/RateDetails.module.css +2 -2
  40. package/build/components/Rates/components/Item/components/TooltipDates/TooltipDates.module.css +2 -2
  41. package/build/components/Rates/components/ModalExtras/ModalExtras.module.css +2 -2
  42. package/build/components/Session/Session.module.css +2 -2
  43. package/build/components/Signup/Signup.module.css +2 -2
  44. package/build/components/__shared__/BookingDates/BookingDates.module.css +1 -1
  45. package/build/components/__shared__/BookingTable/BookingTable.module.css +2 -2
  46. package/build/components/__shared__/Countdown/Countdown.js +3 -3
  47. package/build/components/__shared__/Countdown/Countdown.js.map +1 -1
  48. package/build/components/__shared__/Field/Field.module.css +2 -2
  49. package/build/components/__shared__/FieldOccupation/FieldOccupation.module.css +1 -1
  50. package/build/components/__shared__/FieldPromocode/FieldPromocode.module.css +2 -2
  51. package/build/components/__shared__/Footer/Footer.js +7 -3
  52. package/build/components/__shared__/Footer/Footer.js.map +1 -1
  53. package/build/components/__shared__/Footer/Footer.module.css +11 -2
  54. package/build/components/__shared__/Footer/__tests__/__snapshots__/Footer.test.js.snap +53 -8
  55. package/build/components/__shared__/Occupation/Occupation.module.css +2 -2
  56. package/build/components/helpers/constants.js +1 -0
  57. package/build/components/helpers/constants.js.map +1 -1
  58. package/build/index.js +2 -1
  59. package/build/index.js.map +1 -1
  60. package/package.json +1 -1
  61. package/public/App.module.css +1 -1
  62. package/public/routes/Home.jsx +16 -3
  63. package/public/routes/routes.module.css +8 -4
@@ -1,11 +1,3 @@
1
- :root {
2
- --mirai-ui-breakpoint-S: 430px;
3
- --mirai-ui-layer-XL: 100;
4
- --mirai-ui-motion-expand: 300ms;
5
- --mirai-ui-motion-easing: cubic-bezier(0.1, 0.1, 0.25, 0.9);
6
- --mirai-ui-space-S: 12px;
7
- }
8
-
9
1
  .notifications {
10
2
  max-height: calc(100vh - calc(var(--mirai-ui-space-S) * 2));
11
3
  padding: var(--mirai-ui-space-S);
@@ -20,7 +12,7 @@
20
12
  }
21
13
 
22
14
  /* S */
23
- @media only screen and (max-width: 430px) {
15
+ @media only screen and (max-width: 480px) {
24
16
  .notifications {
25
17
  right: 0;
26
18
  }
@@ -36,7 +28,7 @@
36
28
  }
37
29
 
38
30
  /* M & L */
39
- @media only screen and (min-width: 431px) {
31
+ @media only screen and (min-width: 481px) {
40
32
  .notifications {
41
33
  left: calc(50% - calc(var(--mirai-ui-breakpoint-S) / 2));
42
34
  max-width: calc(var(--mirai-ui-breakpoint-S) - calc(var(--mirai-ui-space-S) * 2));
@@ -33,7 +33,7 @@
33
33
  }
34
34
 
35
35
  /* S */
36
- @media only screen and (max-width: 430px) {
36
+ @media only screen and (max-width: 480px) {
37
37
  .container > * {
38
38
  gap: var(--mirai-ui-space-XS);
39
39
  padding: var(--mirai-ui-space-S);
@@ -51,7 +51,7 @@
51
51
  }
52
52
 
53
53
  /* M & L */
54
- @media only screen and (min-width: 431px) {
54
+ @media only screen and (min-width: 481px) {
55
55
  .container > * {
56
56
  gap: var(--mirai-ui-space-M);
57
57
  padding: var(--mirai-ui-space-L);
@@ -118,7 +118,7 @@ body {
118
118
  }
119
119
 
120
120
  /* S */
121
- @media only screen and (max-width: 430px) {
121
+ @media only screen and (max-width: 480px) {
122
122
  /* -- Temporal fix -------------------------------------------------------- */
123
123
  [data-role='booking'] [data-role='menu-content'] {
124
124
  position: relative;
@@ -131,7 +131,7 @@ body {
131
131
  }
132
132
 
133
133
  /* M & L */
134
- @media only screen and (min-width: 431px) {
134
+ @media only screen and (min-width: 481px) {
135
135
  /* -- Temporal fix -------------------------------------------------------- */
136
136
  [data-role='booking'] [data-role='menu-content'] {
137
137
  position: relative;
@@ -246,9 +246,8 @@ exports[`component:<Booking> inherit:className 1`] = `
246
246
  © 2024
247
247
  <button
248
248
  class="pressable action inline small"
249
- >
250
- .
251
- </button>
249
+ />
250
+ .
252
251
  </span>
253
252
  <span
254
253
  class="text light small"
@@ -524,9 +523,8 @@ exports[`component:<Booking> prop:skeleton 1`] = `
524
523
  © 2024
525
524
  <button
526
525
  class="pressable action inline small"
527
- >
528
- .
529
- </button>
526
+ />
527
+ .
530
528
  </span>
531
529
  <span
532
530
  class="text light small"
@@ -802,9 +800,8 @@ exports[`component:<Booking> renders 1`] = `
802
800
  © 2024
803
801
  <button
804
802
  class="pressable action inline small"
805
- >
806
- .
807
- </button>
803
+ />
804
+ .
808
805
  </span>
809
806
  <span
810
807
  class="text light small"
@@ -1081,9 +1078,8 @@ exports[`component:<Booking> testID 1`] = `
1081
1078
  © 2024
1082
1079
  <button
1083
1080
  class="pressable action inline small"
1084
- >
1085
- .
1086
- </button>
1081
+ />
1082
+ .
1087
1083
  </span>
1088
1084
  <span
1089
1085
  class="text light small"
@@ -1359,9 +1355,8 @@ exports[`component:<Booking> with a store 1`] = `
1359
1355
  © 2024
1360
1356
  <button
1361
1357
  class="pressable action inline small"
1362
- >
1363
- .
1364
- </button>
1358
+ />
1359
+ .
1365
1360
  </span>
1366
1361
  <span
1367
1362
  class="text light small"
@@ -33,13 +33,13 @@
33
33
  }
34
34
  }
35
35
 
36
- @media only screen and (max-width: 430px) {
36
+ @media only screen and (max-width: 480px) {
37
37
  .field.withValue:not(:last-child) {
38
38
  margin-bottom: var(--mirai-ui-space-S);
39
39
  }
40
40
  }
41
41
 
42
- @media only screen and (min-width: 431px) {
42
+ @media only screen and (min-width: 481px) {
43
43
  .field.withValue:not(:last-child) {
44
44
  margin-bottom: var(--mirai-ui-space-M);
45
45
  }
@@ -52,6 +52,22 @@ const BookingPayment = _ref => {
52
52
  const [error, setError] = (0, _react.useState)({});
53
53
  const [visiblePayment, setVisiblePayment] = (0, _react.useState)(false);
54
54
  const [requiredFields, setRequiredFields] = (0, _react.useState)();
55
+ (0, _react.useEffect)(() => {
56
+ const interval = setInterval(() => {
57
+ const {
58
+ payment: {
59
+ info: {
60
+ time: {
61
+ value
62
+ } = {}
63
+ } = {}
64
+ } = {}
65
+ } = dataSource || {};
66
+ const now = new Date().getTime();
67
+ if (value < now) window.location.reload();
68
+ }, 1000);
69
+ return () => clearInterval(interval);
70
+ }, [dataSource]);
55
71
  (0, _react.useEffect)(() => {
56
72
  const isPayLater = utm_medium === 'email' && utm_source === 'confirmation';
57
73
  setVisiblePayment(isPayLater);
@@ -1 +1 @@
1
- {"version":3,"file":"Booking.Payment.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_shared__","_helpers","_Booking","_Booking2","style","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","BookingPayment","_ref","_payment$config","_payment$info","_payment$info2","_payment$config2","dataSource","onError","isMobile","useDevice","locale","translate","useLocale","value","hotel","payment","storePayment","urlParams","code","idHotel","id","tracking","utm_medium","utm_source","useStore","method","busy","setBusy","useState","error","setError","visiblePayment","setVisiblePayment","requiredFields","setRequiredFields","useEffect","isPayLater","Event","publish","EVENT","PAY_LATER","handleError","window","scrollTo","top","behavior","handleSubmit","hasErrors","ServiceBooking","update","catch","handlePress","currency","price","prepayment","info","time","hasRequiredFields","keys","paymentCurrency","days","dateDiff","Date","createElement","Fragment","Notification","small","warning","wide","View","row","className","notificationPayment","React","Text","Countdown","action","l10n","L10N","NOTIFICATION_PAY_LATER","timestamp","date","toLocaleDateString","FORMAT_PAY_LATER_DATE","Action","inline","onPress","noPrint","ACTION_COMPLETE_NOW","NotificationRequiredFields","form","values","Payment","config","publicKey","parseDate","undefined","showErrors","onChange","ButtonPayment","promise","getButtonPaymentKey","payLater","amount","currencyFormat","exports","displayName","propTypes","PropTypes","any","func"],"sources":["../../../../src/components/Booking/partials/Booking.Payment.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, dateDiff, parseDate, useLocale } from '@mirai/locale';\nimport { ServiceBooking } from '@mirai/services';\nimport { Action, Text, Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { ButtonPayment, Countdown, NotificationRequiredFields, Payment } from '../../__shared__';\nimport { EVENT, getButtonPaymentKey } from '../../helpers';\nimport { FORMAT_PAY_LATER_DATE } from '../Booking.constants';\nimport { L10N } from '../Booking.l10n';\nimport * as style from '../Booking.module.css';\n\nconst BookingPayment = ({ dataSource = {}, onError = () => {} }) => {\n const { isMobile } = useDevice();\n const { locale, translate } = useLocale();\n const {\n value: {\n hotel = {},\n payment: storePayment = {},\n urlParams: { code, idHotel: id, tracking, utm_medium, utm_source } = {},\n },\n } = useStore();\n\n const { method } = storePayment;\n\n const [busy, setBusy] = useState(false);\n const [error, setError] = useState({});\n const [visiblePayment, setVisiblePayment] = useState(false);\n const [requiredFields, setRequiredFields] = useState();\n\n useEffect(() => {\n const isPayLater = utm_medium === 'email' && utm_source === 'confirmation';\n\n setVisiblePayment(isPayLater);\n isPayLater && Event.publish(EVENT.PAY_LATER, { utm_medium, utm_source });\n }, [utm_source, utm_medium]);\n\n const handleError = () => {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n setRequiredFields(error);\n };\n\n const handleSubmit = (value) => {\n if (hasErrors) return handleError();\n setRequiredFields();\n onError();\n const { id } = dataSource;\n return ServiceBooking.update({ code, id, payment: { ...storePayment, ...value }, tracking }).catch((error) => {\n setBusy(false);\n onError(error);\n });\n };\n\n const handlePress = () => {\n if (hasErrors) {\n handleError();\n return false;\n }\n\n setBusy(true);\n };\n\n const { currency, payment = {}, price: { prepayment = {} } = {} } = dataSource || {};\n const { info: { time = {} } = {} } = payment;\n const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;\n const hasErrors = Object.keys(error || {}).length > 0;\n const { currency: paymentCurrency, value } = prepayment[method] || {};\n const { days } = dateDiff(new Date(), new Date(time?.value));\n\n return (\n <>\n <Notification small={isMobile} warning wide>\n <View row={!isMobile} className={style.notificationPayment}>\n {React.createElement(\n days >= 3 ? Text : Countdown,\n {\n action: !isMobile,\n l10n: L10N.NOTIFICATION_PAY_LATER,\n small: isMobile,\n timestamp: time?.value,\n },\n translate(L10N.NOTIFICATION_PAY_LATER, {\n date: new Date(time?.value).toLocaleDateString(locale, FORMAT_PAY_LATER_DATE),\n }),\n )}\n {!visiblePayment && (\n <Action\n inline\n small={isMobile}\n onPress={() => setVisiblePayment(true)}\n className={[style.action, style.noPrint]}\n >\n {translate(L10N.ACTION_COMPLETE_NOW)}\n </Action>\n )}\n </View>\n </Notification>\n\n {hasRequiredFields && <NotificationRequiredFields form=\"checkout\" values={requiredFields} />}\n\n {visiblePayment && (\n <Payment\n {...{\n ...payment,\n config: { ...payment.config, publicKey: payment.config?.publicKey[method] },\n info: { ...payment.info, date: payment.info?.date ? parseDate(payment.info?.date) : undefined },\n }}\n currency={currency}\n showErrors={hasRequiredFields}\n onChange={() => setRequiredFields()}\n onError={setError}\n className={style.noPrint}\n >\n <ButtonPayment\n {...{\n ...payment,\n config: { ...payment.config, publicKey: payment.config?.publicKey[method] },\n }}\n busy={busy}\n hotel={{ ...hotel, id }}\n wide={isMobile}\n promise={handleSubmit}\n onError={handleError}\n onPress={handlePress}\n >\n {translate(getButtonPaymentKey({ ...payment.config, ...payment.info, method, payLater: true }), {\n amount: currencyFormat({ currency: paymentCurrency, locale, value }),\n })}\n </ButtonPayment>\n </Payment>\n )}\n </>\n );\n};\n\nBookingPayment.displayName = 'Mirai:Core:Booking:BookingPayment';\n\nBookingPayment.propTypes = {\n dataSource: PropTypes.any,\n onError: PropTypes.func,\n};\n\nexport { BookingPayment };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Booking.Payment.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_shared__","_helpers","_Booking","_Booking2","style","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","BookingPayment","_ref","_payment$config","_payment$info","_payment$info2","_payment$config2","dataSource","onError","isMobile","useDevice","locale","translate","useLocale","value","hotel","payment","storePayment","urlParams","code","idHotel","id","tracking","utm_medium","utm_source","useStore","method","busy","setBusy","useState","error","setError","visiblePayment","setVisiblePayment","requiredFields","setRequiredFields","useEffect","interval","setInterval","info","time","now","Date","getTime","window","location","reload","clearInterval","isPayLater","Event","publish","EVENT","PAY_LATER","handleError","scrollTo","top","behavior","handleSubmit","hasErrors","ServiceBooking","update","catch","handlePress","currency","price","prepayment","hasRequiredFields","keys","paymentCurrency","days","dateDiff","createElement","Fragment","Notification","small","warning","wide","View","row","className","notificationPayment","React","Text","Countdown","action","l10n","L10N","NOTIFICATION_PAY_LATER","timestamp","date","toLocaleDateString","FORMAT_PAY_LATER_DATE","Action","inline","onPress","noPrint","ACTION_COMPLETE_NOW","NotificationRequiredFields","form","values","Payment","config","publicKey","parseDate","undefined","showErrors","onChange","ButtonPayment","promise","getButtonPaymentKey","payLater","amount","currencyFormat","exports","displayName","propTypes","PropTypes","any","func"],"sources":["../../../../src/components/Booking/partials/Booking.Payment.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, dateDiff, parseDate, useLocale } from '@mirai/locale';\nimport { ServiceBooking } from '@mirai/services';\nimport { Action, Text, Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { ButtonPayment, Countdown, NotificationRequiredFields, Payment } from '../../__shared__';\nimport { EVENT, getButtonPaymentKey } from '../../helpers';\nimport { FORMAT_PAY_LATER_DATE } from '../Booking.constants';\nimport { L10N } from '../Booking.l10n';\nimport * as style from '../Booking.module.css';\n\nconst BookingPayment = ({ dataSource = {}, onError = () => {} }) => {\n const { isMobile } = useDevice();\n const { locale, translate } = useLocale();\n const {\n value: {\n hotel = {},\n payment: storePayment = {},\n urlParams: { code, idHotel: id, tracking, utm_medium, utm_source } = {},\n },\n } = useStore();\n\n const { method } = storePayment;\n\n const [busy, setBusy] = useState(false);\n const [error, setError] = useState({});\n const [visiblePayment, setVisiblePayment] = useState(false);\n const [requiredFields, setRequiredFields] = useState();\n\n useEffect(() => {\n const interval = setInterval(() => {\n const { payment: { info: { time: { value } = {} } = {} } = {} } = dataSource || {};\n const now = new Date().getTime();\n\n if (value < now) window.location.reload();\n }, 1000);\n\n return () => clearInterval(interval);\n }, [dataSource]);\n\n useEffect(() => {\n const isPayLater = utm_medium === 'email' && utm_source === 'confirmation';\n\n setVisiblePayment(isPayLater);\n isPayLater && Event.publish(EVENT.PAY_LATER, { utm_medium, utm_source });\n }, [utm_source, utm_medium]);\n\n const handleError = () => {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n setRequiredFields(error);\n };\n\n const handleSubmit = (value) => {\n if (hasErrors) return handleError();\n setRequiredFields();\n onError();\n const { id } = dataSource;\n return ServiceBooking.update({ code, id, payment: { ...storePayment, ...value }, tracking }).catch((error) => {\n setBusy(false);\n onError(error);\n });\n };\n\n const handlePress = () => {\n if (hasErrors) {\n handleError();\n return false;\n }\n\n setBusy(true);\n };\n\n const { currency, payment = {}, price: { prepayment = {} } = {} } = dataSource || {};\n const { info: { time = {} } = {} } = payment;\n const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;\n const hasErrors = Object.keys(error || {}).length > 0;\n const { currency: paymentCurrency, value } = prepayment[method] || {};\n const { days } = dateDiff(new Date(), new Date(time?.value));\n\n return (\n <>\n <Notification small={isMobile} warning wide>\n <View row={!isMobile} className={style.notificationPayment}>\n {React.createElement(\n days >= 3 ? Text : Countdown,\n {\n action: !isMobile,\n l10n: L10N.NOTIFICATION_PAY_LATER,\n small: isMobile,\n timestamp: time?.value,\n },\n translate(L10N.NOTIFICATION_PAY_LATER, {\n date: new Date(time?.value).toLocaleDateString(locale, FORMAT_PAY_LATER_DATE),\n }),\n )}\n {!visiblePayment && (\n <Action\n inline\n small={isMobile}\n onPress={() => setVisiblePayment(true)}\n className={[style.action, style.noPrint]}\n >\n {translate(L10N.ACTION_COMPLETE_NOW)}\n </Action>\n )}\n </View>\n </Notification>\n\n {hasRequiredFields && <NotificationRequiredFields form=\"checkout\" values={requiredFields} />}\n\n {visiblePayment && (\n <Payment\n {...{\n ...payment,\n config: { ...payment.config, publicKey: payment.config?.publicKey[method] },\n info: { ...payment.info, date: payment.info?.date ? parseDate(payment.info?.date) : undefined },\n }}\n currency={currency}\n showErrors={hasRequiredFields}\n onChange={() => setRequiredFields()}\n onError={setError}\n className={style.noPrint}\n >\n <ButtonPayment\n {...{\n ...payment,\n config: { ...payment.config, publicKey: payment.config?.publicKey[method] },\n }}\n busy={busy}\n hotel={{ ...hotel, id }}\n wide={isMobile}\n promise={handleSubmit}\n onError={handleError}\n onPress={handlePress}\n >\n {translate(getButtonPaymentKey({ ...payment.config, ...payment.info, method, payLater: true }), {\n amount: currencyFormat({ currency: paymentCurrency, locale, value }),\n })}\n </ButtonPayment>\n </Payment>\n )}\n </>\n );\n};\n\nBookingPayment.displayName = 'Mirai:Core:Booking:BookingPayment';\n\nBookingPayment.propTypes = {\n dataSource: PropTypes.any,\n onError: PropTypes.func,\n};\n\nexport { BookingPayment };\n"],"mappings":"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"}
@@ -62,14 +62,14 @@
62
62
  }
63
63
 
64
64
  /* mobile */
65
- @media only screen and (max-width: 430px) {
65
+ @media only screen and (max-width: 480px) {
66
66
  .container {
67
67
  height: 100vh;
68
68
  }
69
69
  }
70
70
 
71
71
  /* tablet & desktop */
72
- @media only screen and (min-width: 431px) {
72
+ @media only screen and (min-width: 481px) {
73
73
  .container {
74
74
  border-radius: var(--mirai-chat-border-radius);
75
75
  bottom: var(--mirai-chat-space);
@@ -125,7 +125,7 @@ body {
125
125
  }
126
126
 
127
127
  /* S */
128
- @media only screen and (max-width: 430px) {
128
+ @media only screen and (max-width: 480px) {
129
129
  .cta {
130
130
  margin-top: var(--mirai-ui-space-L);
131
131
  }
@@ -166,7 +166,7 @@ body {
166
166
  }
167
167
 
168
168
  /* M & L */
169
- @media only screen and (min-width: 431px) {
169
+ @media only screen and (min-width: 481px) {
170
170
  .details .item .image {
171
171
  height: var(--mirai-ui-space-XXL);
172
172
  min-height: var(--mirai-ui-space-XXL);
@@ -229,9 +229,8 @@ exports[`component:<Checkout> Test A/B variant A 1`] = `
229
229
  © 2024
230
230
  <button
231
231
  class="pressable action inline small"
232
- >
233
- .
234
- </button>
232
+ />
233
+ .
235
234
  </span>
236
235
  <span
237
236
  class="text light small"
@@ -490,9 +489,8 @@ exports[`component:<Checkout> Test A/B variant B 1`] = `
490
489
  © 2024
491
490
  <button
492
491
  class="pressable action inline small"
493
- >
494
- .
495
- </button>
492
+ />
493
+ .
496
494
  </span>
497
495
  <span
498
496
  class="text light small"
@@ -751,9 +749,8 @@ exports[`component:<Checkout> inherit:className 1`] = `
751
749
  © 2024
752
750
  <button
753
751
  class="pressable action inline small"
754
- >
755
- .
756
- </button>
752
+ />
753
+ .
757
754
  </span>
758
755
  <span
759
756
  class="text light small"
@@ -1012,9 +1009,8 @@ exports[`component:<Checkout> prop:session (false) 1`] = `
1012
1009
  © 2024
1013
1010
  <button
1014
1011
  class="pressable action inline small"
1015
- >
1016
- .
1017
- </button>
1012
+ />
1013
+ .
1018
1014
  </span>
1019
1015
  <span
1020
1016
  class="text light small"
@@ -1273,9 +1269,8 @@ exports[`component:<Checkout> prop:skeleton 1`] = `
1273
1269
  © 2024
1274
1270
  <button
1275
1271
  class="pressable action inline small"
1276
- >
1277
- .
1278
- </button>
1272
+ />
1273
+ .
1279
1274
  </span>
1280
1275
  <span
1281
1276
  class="text light small"
@@ -1534,9 +1529,8 @@ exports[`component:<Checkout> renders 1`] = `
1534
1529
  © 2024
1535
1530
  <button
1536
1531
  class="pressable action inline small"
1537
- >
1538
- .
1539
- </button>
1532
+ />
1533
+ .
1540
1534
  </span>
1541
1535
  <span
1542
1536
  class="text light small"
@@ -1796,9 +1790,8 @@ exports[`component:<Checkout> testID 1`] = `
1796
1790
  © 2024
1797
1791
  <button
1798
1792
  class="pressable action inline small"
1799
- >
1800
- .
1801
- </button>
1793
+ />
1794
+ .
1802
1795
  </span>
1803
1796
  <span
1804
1797
  class="text light small"
@@ -2057,9 +2050,8 @@ exports[`component:<Checkout> with a store 1`] = `
2057
2050
  © 2024
2058
2051
  <button
2059
2052
  class="pressable action inline small"
2060
- >
2061
- .
2062
- </button>
2053
+ />
2054
+ .
2063
2055
  </span>
2064
2056
  <span
2065
2057
  class="text light small"
@@ -27,7 +27,7 @@
27
27
  color: var(--mirai-ui-content-light);
28
28
  }
29
29
 
30
- @media only screen and (max-width: 430px) {
30
+ @media only screen and (max-width: 480px) {
31
31
  .deals {
32
32
  padding-bottom: var(--mirai-ui-space-M);
33
33
  width: 100%;
@@ -68,7 +68,7 @@
68
68
  }
69
69
  }
70
70
 
71
- @media only screen and (min-width: 431px) {
71
+ @media only screen and (min-width: 481px) {
72
72
  .deals {
73
73
  width: fit-content;
74
74
  }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.EVENT = void 0;
7
+ const EVENT = exports.EVENT = {
8
+ FINDER_CHANGE: 'finderChange',
9
+ SET_STORE: 'setStore'
10
+ };
11
+ //# sourceMappingURL=EventManager.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventManager.constants.js","names":["EVENT","exports","FINDER_CHANGE","SET_STORE"],"sources":["../../../src/components/EventManager/EventManager.constants.js"],"sourcesContent":["const EVENT = {\n FINDER_CHANGE: 'finderChange',\n SET_STORE: 'setStore',\n};\n\nexport { EVENT };\n"],"mappings":";;;;;;AAAA,MAAMA,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACZE,aAAa,EAAE,cAAc;EAC7BC,SAAS,EAAE;AACb,CAAC"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.EventManager = void 0;
7
+ var _dataSources = require("@mirai/data-sources");
8
+ var _react = require("react");
9
+ var _EventManager = require("./EventManager.constants");
10
+ var _helpers = require("../helpers");
11
+ const EventManager = () => {
12
+ const {
13
+ value: {
14
+ finder = {},
15
+ origin = {},
16
+ tags = {}
17
+ } = {},
18
+ set
19
+ } = (0, _dataSources.useStore)();
20
+ (0, _react.useEffect)(() => {
21
+ _dataSources.Event.subscribe(_helpers.EVENT.FINDER_FIELD_CHANGE, handleFinderFieldChange);
22
+ _dataSources.Event.subscribe(_EventManager.EVENT.SET_STORE, handleSetStore);
23
+ return () => {
24
+ _dataSources.Event.unsubscribe(_helpers.EVENT.FINDER_FIELD_CHANGE, handleFinderFieldChange);
25
+ _dataSources.Event.unsubscribe(_EventManager.EVENT.SET_STORE, handleSetStore);
26
+ };
27
+ // eslint-disable-next-line react-hooks/exhaustive-deps
28
+ }, [finder, origin]);
29
+ const handleFinderFieldChange = value => _dataSources.Event.publish(_EventManager.EVENT.FINDER_CHANGE, value);
30
+ const handleSetStore = function () {
31
+ var _tags$options;
32
+ let {
33
+ chainSelectorValue: placeId,
34
+ calendar,
35
+ hsri: commissionCode,
36
+ occupation,
37
+ promocode,
38
+ submit
39
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
40
+ let next = {};
41
+ if (commissionCode) next.origin = {
42
+ ...origin,
43
+ commissionCode
44
+ };
45
+ if (calendar !== null && calendar !== void 0 && calendar.length && (calendar === null || calendar === void 0 ? void 0 : calendar.length) === 2) next.finder = {
46
+ ...finder,
47
+ calendar
48
+ };
49
+ if (occupation !== null && occupation !== void 0 && occupation.length) next.finder = {
50
+ ...finder,
51
+ ...next.finder,
52
+ occupation
53
+ };
54
+ if (promocode !== undefined && promocode !== null) next.finder = {
55
+ ...finder,
56
+ ...next.finder,
57
+ promocode
58
+ };
59
+ if (placeId) next.finder = {
60
+ ...finder,
61
+ ...next.finder,
62
+ place: tags === null || tags === void 0 ? void 0 : (_tags$options = tags.options) === null || _tags$options === void 0 ? void 0 : _tags$options.find(function () {
63
+ let {
64
+ value
65
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
66
+ return value === placeId;
67
+ })
68
+ };
69
+ if (submit) next.finder = {
70
+ ...finder,
71
+ ...next.finder,
72
+ submit
73
+ };
74
+ set(next);
75
+ };
76
+ return null;
77
+ };
78
+ exports.EventManager = EventManager;
79
+ //# sourceMappingURL=EventManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventManager.js","names":["_dataSources","require","_react","_EventManager","_helpers","EventManager","value","finder","origin","tags","set","useStore","useEffect","Event","subscribe","CORE_EVENT","FINDER_FIELD_CHANGE","handleFinderFieldChange","EVENT","SET_STORE","handleSetStore","unsubscribe","publish","FINDER_CHANGE","_tags$options","chainSelectorValue","placeId","calendar","hsri","commissionCode","occupation","promocode","submit","arguments","length","undefined","next","place","options","find","exports"],"sources":["../../../src/components/EventManager/EventManager.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useEffect } from 'react';\n\nimport { EVENT } from './EventManager.constants';\nimport { EVENT as CORE_EVENT } from '../helpers';\n\nconst EventManager = () => {\n const { value: { finder = {}, origin = {}, tags = {} } = {}, set } = useStore();\n\n useEffect(() => {\n Event.subscribe(CORE_EVENT.FINDER_FIELD_CHANGE, handleFinderFieldChange);\n Event.subscribe(EVENT.SET_STORE, handleSetStore);\n\n return () => {\n Event.unsubscribe(CORE_EVENT.FINDER_FIELD_CHANGE, handleFinderFieldChange);\n Event.unsubscribe(EVENT.SET_STORE, handleSetStore);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [finder, origin]);\n\n const handleFinderFieldChange = (value) => Event.publish(EVENT.FINDER_CHANGE, value);\n\n const handleSetStore = ({\n chainSelectorValue: placeId,\n calendar,\n hsri: commissionCode,\n occupation,\n promocode,\n submit,\n } = {}) => {\n let next = {};\n\n if (commissionCode) next.origin = { ...origin, commissionCode };\n if (calendar?.length && calendar?.length === 2) next.finder = { ...finder, calendar };\n if (occupation?.length) next.finder = { ...finder, ...next.finder, occupation };\n if (promocode !== undefined && promocode !== null) next.finder = { ...finder, ...next.finder, promocode };\n if (placeId)\n next.finder = { ...finder, ...next.finder, place: tags?.options?.find(({ value } = {}) => value === placeId) };\n if (submit) next.finder = { ...finder, ...next.finder, submit };\n\n set(next);\n };\n\n return null;\n};\n\nexport { EventManager };\n"],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _EventManager = require("./EventManager");
7
+ Object.keys(_EventManager).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _EventManager[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _EventManager[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_EventManager","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/components/EventManager/index.js"],"sourcesContent":["export * from './EventManager';\n"],"mappings":";;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -158,7 +158,15 @@ const Finder = _ref => {
158
158
  return () => window.removeEventListener('scroll', handleScroll);
159
159
  // eslint-disable-next-line react-hooks/exhaustive-deps
160
160
  }, [compacted]);
161
- (0, _react.useEffect)(() => JSON.stringify(value) !== JSON.stringify((0, _helpers.parseValue)(storeFinder)) && setValue((0, _helpers.parseValue)(storeFinder)),
161
+ (0, _react.useEffect)(() => {
162
+ if (JSON.stringify(value) !== JSON.stringify((0, _helpers.parseValue)(storeFinder))) {
163
+ const nextValue = (0, _helpers.parseValue)(storeFinder);
164
+ setValue(nextValue);
165
+ if (storeFinder.submit) handleSubmit({
166
+ nextValue
167
+ });
168
+ }
169
+ },
162
170
  // eslint-disable-next-line react-hooks/exhaustive-deps
163
171
  [storeFinder]);
164
172
  (0, _react.useEffect)(() => {
@@ -176,6 +184,11 @@ const Finder = _ref => {
176
184
  setValue(next);
177
185
  onChange(next, field, fieldValue);
178
186
  storage && (0, _helpers.setStorage)(next);
187
+ _dataSources.Event.publish(_helpers3.EVENT.FINDER_FIELD_CHANGE, {
188
+ field,
189
+ previousValue: value[field],
190
+ value: fieldValue
191
+ });
179
192
  };
180
193
  const handlePlaceChange = async (place, event) => {
181
194
  setWarning();