@mirai/core 0.3.65 → 0.3.67

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 (43) hide show
  1. package/build/Core.js +4 -0
  2. package/build/Core.js.map +1 -1
  3. package/build/components/Deals/Deals.js +4 -4
  4. package/build/components/Deals/Deals.js.map +1 -1
  5. package/build/components/Deals/Deals.module.css +6 -0
  6. package/build/components/Rates/Rates.Footer.js +32 -48
  7. package/build/components/Rates/Rates.Footer.js.map +1 -1
  8. package/build/components/Rates/Rates.Header.js +8 -4
  9. package/build/components/Rates/Rates.Header.js.map +1 -1
  10. package/build/components/Rates/Rates.RoomSelector.js +0 -3
  11. package/build/components/Rates/Rates.RoomSelector.js.map +1 -1
  12. package/build/components/Rates/Rates.Skeleton.js +6 -3
  13. package/build/components/Rates/Rates.Skeleton.js.map +1 -1
  14. package/build/components/Rates/Rates.js +53 -25
  15. package/build/components/Rates/Rates.js.map +1 -1
  16. package/build/components/Rates/Rates.module.css +33 -13
  17. package/build/components/Rates/components/Item/Item.Preview.js +22 -6
  18. package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
  19. package/build/components/Rates/components/Item/Item.Summary.js +20 -26
  20. package/build/components/Rates/components/Item/Item.Summary.js.map +1 -1
  21. package/build/components/Rates/components/Item/Item.module.css +9 -15
  22. package/build/components/Rates/components/Item/components/Features/Features.js +15 -18
  23. package/build/components/Rates/components/Item/components/Features/Features.js.map +1 -1
  24. package/build/components/Rates/components/Item/components/Features/Features.module.css +0 -6
  25. package/build/components/Rates/components/Item/components/{Discount/Discount.js → PriceDetails/PriceDetails.js} +23 -18
  26. package/build/components/Rates/components/Item/components/PriceDetails/PriceDetails.js.map +1 -0
  27. package/build/components/Rates/components/Item/components/{Discount/Discount.module.css → PriceDetails/PriceDetails.module.css} +5 -6
  28. package/build/components/Rates/components/Item/components/PriceDetails/index.js +17 -0
  29. package/build/components/Rates/components/Item/components/PriceDetails/index.js.map +1 -0
  30. package/build/components/Rates/components/Item/components/index.js +11 -11
  31. package/build/components/Rates/components/Item/components/index.js.map +1 -1
  32. package/build/components/Rates/components/ModalExtras/ModalExtras.js +176 -0
  33. package/build/components/Rates/components/ModalExtras/ModalExtras.js.map +1 -0
  34. package/build/components/Rates/components/ModalExtras/ModalExtras.l10n.js +18 -0
  35. package/build/components/Rates/components/ModalExtras/ModalExtras.l10n.js.map +1 -0
  36. package/build/components/Rates/components/ModalExtras/ModalExtras.module.css +74 -0
  37. package/build/components/Rates/components/{Item/components/Discount → ModalExtras}/index.js +4 -4
  38. package/build/components/Rates/components/ModalExtras/index.js.map +1 -0
  39. package/build/components/Rates/components/index.js +11 -0
  40. package/build/components/Rates/components/index.js.map +1 -1
  41. package/package.json +1 -1
  42. package/build/components/Rates/components/Item/components/Discount/Discount.js.map +0 -1
  43. package/build/components/Rates/components/Item/components/Discount/index.js.map +0 -1
package/build/Core.js CHANGED
@@ -47,6 +47,10 @@ const Core = _ref => {
47
47
  locale
48
48
  });
49
49
  };
50
+ if (skeleton) {
51
+ const cached = _services.ServiceDictionary.cache(locale);
52
+ if (cached) setDictionary(cached);
53
+ }
50
54
  _dataSources.Event.subscribe(EVENT_INTENT_LOCALE, handleIntentLocale);
51
55
  return () => _dataSources.Event.unsubscribe(EVENT_INTENT_LOCALE, handleIntentLocale);
52
56
  // eslint-disable-next-line react-hooks/exhaustive-deps
package/build/Core.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Core.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_reactDom","_components","_Core","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ghosts","EVENT_INTENT_LOCALE","Core","_ref","children","components","skeleton","isMobile","isDesktop","useDevice","value","currency","locale","DEFAULT_LOCALE","useStore","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","handleIntentLocale","_ref2","fetchDictionary","Event","subscribe","unsubscribe","cached","next","createElement","LocaleProvider","Fragment","Notifications","filter","_ref3","desktop","mobile","map","_ref4","index","el","component","props","getGhost","ReactDOM","createPortal","React","COMPONENTS","ghost","process","env","NODE_ENV","exports","propTypes","PropTypes","node","arrayOf","shape","oneOf","keys","any","bool"],"sources":["../src/Core.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { DEFAULT_LOCALE, LocaleProvider } from '@mirai/locale';\nimport { ServiceDictionary } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { COMPONENTS } from './components';\nimport { Notifications } from './Core.Notifications';\nimport { getGhost } from './helpers';\n\nconst ghosts = {};\n\nconst EVENT_INTENT_LOCALE = 'intentLocale';\n\nconst Core = ({ children, components = [], skeleton = false }) => {\n const { isMobile, isDesktop } = useDevice();\n const {\n set,\n value: { currency, locale = DEFAULT_LOCALE },\n } = useStore();\n\n const [dictionary, setDictionary] = useState(!skeleton ? ServiceDictionary.cache(locale) : undefined);\n\n useEffect(() => {\n const handleIntentLocale = async ({ locale }) => {\n const dictionary = await fetchDictionary(locale);\n if (dictionary) set({ locale });\n };\n\n Event.subscribe(EVENT_INTENT_LOCALE, handleIntentLocale);\n return () => Event.unsubscribe(EVENT_INTENT_LOCALE, handleIntentLocale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!skeleton) fetchDictionary(locale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n const fetchDictionary = async (locale) => {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n\n const next = await ServiceDictionary.get(locale, false);\n if (next) setDictionary(next);\n\n return next;\n };\n\n return (\n <LocaleProvider {...{ currency, dictionary, locale }}>\n <>\n <Notifications />\n\n {components\n .filter(({ desktop, mobile }) => !(isMobile && mobile === 'false') && !(isDesktop && desktop === 'false'))\n .map(({ el, component, ...props }, index) => {\n if (!ghosts[index]) ghosts[index] = getGhost(el);\n\n return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\n el,\n ghost: ghosts[index],\n skeleton,\n ['data-testid']: process.env.NODE_ENV === 'production' ? component : undefined,\n }),\n el,\n );\n })}\n </>\n {children}\n </LocaleProvider>\n );\n};\n\nCore.propTypes = {\n children: PropTypes.node,\n components: PropTypes.arrayOf(\n PropTypes.shape({\n component: PropTypes.oneOf(Object.keys(COMPONENTS)),\n el: PropTypes.any,\n }),\n ),\n skeleton: PropTypes.bool,\n};\n\nexport { Core };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAC,uBAAA,CAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAH,sBAAA,CAAAL,OAAA;AAEA,IAAAS,WAAA,GAAAT,OAAA;AACA,IAAAU,KAAA,GAAAV,OAAA;AACA,IAAAW,QAAA,GAAAX,OAAA;AAAqC,SAAAY,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAhB,uBAAA4B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAErC,MAAMC,MAAM,GAAG,CAAC,CAAC;AAEjB,MAAMC,mBAAmB,GAAG,cAAc;AAE1C,MAAMC,IAAI,GAAGC,IAAA,IAAqD;EAAA,IAApD;IAAEC,QAAQ;IAAEC,UAAU,GAAG,EAAE;IAAEC,QAAQ,GAAG;EAAM,CAAC,GAAAH,IAAA;EAC3D,MAAM;IAAEI,QAAQ;IAAEC;EAAU,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAC3C,MAAM;IACJX,GAAG;IACHY,KAAK,EAAE;MAAEC,QAAQ;MAAEC,MAAM,GAAGC;IAAe;EAC7C,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAACX,QAAQ,GAAGY,2BAAiB,CAACC,KAAK,CAACP,MAAM,CAAC,GAAGQ,SAAS,CAAC;EAErG,IAAAC,gBAAS,EAAC,MAAM;IACd,MAAMC,kBAAkB,GAAG,MAAAC,KAAA,IAAsB;MAAA,IAAf;QAAEX;MAAO,CAAC,GAAAW,KAAA;MAC1C,MAAMR,UAAU,GAAG,MAAMS,eAAe,CAACZ,MAAM,CAAC;MAChD,IAAIG,UAAU,EAAEjB,GAAG,CAAC;QAAEc;MAAO,CAAC,CAAC;IACjC,CAAC;IAEDa,kBAAK,CAACC,SAAS,CAACzB,mBAAmB,EAAEqB,kBAAkB,CAAC;IACxD,OAAO,MAAMG,kBAAK,CAACE,WAAW,CAAC1B,mBAAmB,EAAEqB,kBAAkB,CAAC;IACvE;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAD,gBAAS,EAAC,MAAM;IACd,IAAI,CAACf,QAAQ,EAAEkB,eAAe,CAACZ,MAAM,CAAC;IACtC;EACF,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,MAAMY,eAAe,GAAG,MAAOZ,MAAM,IAAK;IACxC,MAAMgB,MAAM,GAAGV,2BAAiB,CAACC,KAAK,CAACP,MAAM,CAAC;IAC9C,IAAIgB,MAAM,EAAEZ,aAAa,CAACY,MAAM,CAAC;IAEjC,MAAMC,IAAI,GAAG,MAAMX,2BAAiB,CAAChC,GAAG,CAAC0B,MAAM,EAAE,KAAK,CAAC;IACvD,IAAIiB,IAAI,EAAEb,aAAa,CAACa,IAAI,CAAC;IAE7B,OAAOA,IAAI;EACb,CAAC;EAED,oBACEzD,MAAA,CAAAY,OAAA,CAAA8C,aAAA,CAAC/D,OAAA,CAAAgE,cAAc;IAAOpB,QAAQ;IAAEI,UAAU;IAAEH;EAAM,gBAChDxC,MAAA,CAAAY,OAAA,CAAA8C,aAAA,CAAA1D,MAAA,CAAAY,OAAA,CAAAgD,QAAA,qBACE5D,MAAA,CAAAY,OAAA,CAAA8C,aAAA,CAACtD,KAAA,CAAAyD,aAAa,MAAE,CAAC,EAEhB5B,UAAU,CACR6B,MAAM,CAACC,KAAA;IAAA,IAAC;MAAEC,OAAO;MAAEC;IAAO,CAAC,GAAAF,KAAA;IAAA,OAAK,EAAE5B,QAAQ,IAAI8B,MAAM,KAAK,OAAO,CAAC,IAAI,EAAE7B,SAAS,IAAI4B,OAAO,KAAK,OAAO,CAAC;EAAA,EAAC,CACzGE,GAAG,CAAC,CAAAC,KAAA,EAA8BC,KAAK,KAAK;IAAA,IAAvC;MAAEC,EAAE;MAAEC,SAAS;MAAE,GAAGC;IAAM,CAAC,GAAAJ,KAAA;IAC/B,IAAI,CAACvC,MAAM,CAACwC,KAAK,CAAC,EAAExC,MAAM,CAACwC,KAAK,CAAC,GAAG,IAAAI,iBAAQ,EAACH,EAAE,CAAC;IAEhD,oBAAOI,iBAAQ,CAACC,YAAY,eAC1BC,cAAK,CAACjB,aAAa,CAACkB,sBAAU,CAACN,SAAS,CAAC,EAAE;MACzC,GAAGC,KAAK;MACRF,EAAE;MACFQ,KAAK,EAAEjD,MAAM,CAACwC,KAAK,CAAC;MACpBlC,QAAQ;MACR,CAAC,aAAa,GAAG4C,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,GAAGV,SAAS,GAAGtB;IACvE,CAAC,CAAC,EACFqB,EACF,CAAC;EACH,CAAC,CACH,CAAC,EACFrC,QACa,CAAC;AAErB,CAAC;AAACiD,OAAA,CAAAnD,IAAA,GAAAA,IAAA;AAEFA,IAAI,CAACoD,SAAS,GAAG;EACflD,QAAQ,EAAEmD,kBAAS,CAACC,IAAI;EACxBnD,UAAU,EAAEkD,kBAAS,CAACE,OAAO,CAC3BF,kBAAS,CAACG,KAAK,CAAC;IACdhB,SAAS,EAAEa,kBAAS,CAACI,KAAK,CAACrE,MAAM,CAACsE,IAAI,CAACZ,sBAAU,CAAC,CAAC;IACnDP,EAAE,EAAEc,kBAAS,CAACM;EAChB,CAAC,CACH,CAAC;EACDvD,QAAQ,EAAEiD,kBAAS,CAACO;AACtB,CAAC"}
1
+ {"version":3,"file":"Core.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_reactDom","_components","_Core","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ghosts","EVENT_INTENT_LOCALE","Core","_ref","children","components","skeleton","isMobile","isDesktop","useDevice","value","currency","locale","DEFAULT_LOCALE","useStore","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","handleIntentLocale","_ref2","fetchDictionary","cached","Event","subscribe","unsubscribe","next","createElement","LocaleProvider","Fragment","Notifications","filter","_ref3","desktop","mobile","map","_ref4","index","el","component","props","getGhost","ReactDOM","createPortal","React","COMPONENTS","ghost","process","env","NODE_ENV","exports","propTypes","PropTypes","node","arrayOf","shape","oneOf","keys","any","bool"],"sources":["../src/Core.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { DEFAULT_LOCALE, LocaleProvider } from '@mirai/locale';\nimport { ServiceDictionary } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { COMPONENTS } from './components';\nimport { Notifications } from './Core.Notifications';\nimport { getGhost } from './helpers';\n\nconst ghosts = {};\n\nconst EVENT_INTENT_LOCALE = 'intentLocale';\n\nconst Core = ({ children, components = [], skeleton = false }) => {\n const { isMobile, isDesktop } = useDevice();\n const {\n set,\n value: { currency, locale = DEFAULT_LOCALE },\n } = useStore();\n\n const [dictionary, setDictionary] = useState(!skeleton ? ServiceDictionary.cache(locale) : undefined);\n\n useEffect(() => {\n const handleIntentLocale = async ({ locale }) => {\n const dictionary = await fetchDictionary(locale);\n if (dictionary) set({ locale });\n };\n\n if (skeleton) {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n }\n\n Event.subscribe(EVENT_INTENT_LOCALE, handleIntentLocale);\n return () => Event.unsubscribe(EVENT_INTENT_LOCALE, handleIntentLocale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (!skeleton) fetchDictionary(locale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n const fetchDictionary = async (locale) => {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n\n const next = await ServiceDictionary.get(locale, false);\n if (next) setDictionary(next);\n\n return next;\n };\n\n return (\n <LocaleProvider {...{ currency, dictionary, locale }}>\n <>\n <Notifications />\n\n {components\n .filter(({ desktop, mobile }) => !(isMobile && mobile === 'false') && !(isDesktop && desktop === 'false'))\n .map(({ el, component, ...props }, index) => {\n if (!ghosts[index]) ghosts[index] = getGhost(el);\n\n return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\n el,\n ghost: ghosts[index],\n skeleton,\n ['data-testid']: process.env.NODE_ENV === 'production' ? component : undefined,\n }),\n el,\n );\n })}\n </>\n {children}\n </LocaleProvider>\n );\n};\n\nCore.propTypes = {\n children: PropTypes.node,\n components: PropTypes.arrayOf(\n PropTypes.shape({\n component: PropTypes.oneOf(Object.keys(COMPONENTS)),\n el: PropTypes.any,\n }),\n ),\n skeleton: PropTypes.bool,\n};\n\nexport { Core };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAC,uBAAA,CAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAH,sBAAA,CAAAL,OAAA;AAEA,IAAAS,WAAA,GAAAT,OAAA;AACA,IAAAU,KAAA,GAAAV,OAAA;AACA,IAAAW,QAAA,GAAAX,OAAA;AAAqC,SAAAY,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAhB,uBAAA4B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAErC,MAAMC,MAAM,GAAG,CAAC,CAAC;AAEjB,MAAMC,mBAAmB,GAAG,cAAc;AAE1C,MAAMC,IAAI,GAAGC,IAAA,IAAqD;EAAA,IAApD;IAAEC,QAAQ;IAAEC,UAAU,GAAG,EAAE;IAAEC,QAAQ,GAAG;EAAM,CAAC,GAAAH,IAAA;EAC3D,MAAM;IAAEI,QAAQ;IAAEC;EAAU,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAC3C,MAAM;IACJX,GAAG;IACHY,KAAK,EAAE;MAAEC,QAAQ;MAAEC,MAAM,GAAGC;IAAe;EAC7C,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAACX,QAAQ,GAAGY,2BAAiB,CAACC,KAAK,CAACP,MAAM,CAAC,GAAGQ,SAAS,CAAC;EAErG,IAAAC,gBAAS,EAAC,MAAM;IACd,MAAMC,kBAAkB,GAAG,MAAAC,KAAA,IAAsB;MAAA,IAAf;QAAEX;MAAO,CAAC,GAAAW,KAAA;MAC1C,MAAMR,UAAU,GAAG,MAAMS,eAAe,CAACZ,MAAM,CAAC;MAChD,IAAIG,UAAU,EAAEjB,GAAG,CAAC;QAAEc;MAAO,CAAC,CAAC;IACjC,CAAC;IAED,IAAIN,QAAQ,EAAE;MACZ,MAAMmB,MAAM,GAAGP,2BAAiB,CAACC,KAAK,CAACP,MAAM,CAAC;MAC9C,IAAIa,MAAM,EAAET,aAAa,CAACS,MAAM,CAAC;IACnC;IAEAC,kBAAK,CAACC,SAAS,CAAC1B,mBAAmB,EAAEqB,kBAAkB,CAAC;IACxD,OAAO,MAAMI,kBAAK,CAACE,WAAW,CAAC3B,mBAAmB,EAAEqB,kBAAkB,CAAC;IACvE;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAD,gBAAS,EAAC,MAAM;IACd,IAAI,CAACf,QAAQ,EAAEkB,eAAe,CAACZ,MAAM,CAAC;IACtC;EACF,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,MAAMY,eAAe,GAAG,MAAOZ,MAAM,IAAK;IACxC,MAAMa,MAAM,GAAGP,2BAAiB,CAACC,KAAK,CAACP,MAAM,CAAC;IAC9C,IAAIa,MAAM,EAAET,aAAa,CAACS,MAAM,CAAC;IAEjC,MAAMI,IAAI,GAAG,MAAMX,2BAAiB,CAAChC,GAAG,CAAC0B,MAAM,EAAE,KAAK,CAAC;IACvD,IAAIiB,IAAI,EAAEb,aAAa,CAACa,IAAI,CAAC;IAE7B,OAAOA,IAAI;EACb,CAAC;EAED,oBACEzD,MAAA,CAAAY,OAAA,CAAA8C,aAAA,CAAC/D,OAAA,CAAAgE,cAAc;IAAOpB,QAAQ;IAAEI,UAAU;IAAEH;EAAM,gBAChDxC,MAAA,CAAAY,OAAA,CAAA8C,aAAA,CAAA1D,MAAA,CAAAY,OAAA,CAAAgD,QAAA,qBACE5D,MAAA,CAAAY,OAAA,CAAA8C,aAAA,CAACtD,KAAA,CAAAyD,aAAa,MAAE,CAAC,EAEhB5B,UAAU,CACR6B,MAAM,CAACC,KAAA;IAAA,IAAC;MAAEC,OAAO;MAAEC;IAAO,CAAC,GAAAF,KAAA;IAAA,OAAK,EAAE5B,QAAQ,IAAI8B,MAAM,KAAK,OAAO,CAAC,IAAI,EAAE7B,SAAS,IAAI4B,OAAO,KAAK,OAAO,CAAC;EAAA,EAAC,CACzGE,GAAG,CAAC,CAAAC,KAAA,EAA8BC,KAAK,KAAK;IAAA,IAAvC;MAAEC,EAAE;MAAEC,SAAS;MAAE,GAAGC;IAAM,CAAC,GAAAJ,KAAA;IAC/B,IAAI,CAACvC,MAAM,CAACwC,KAAK,CAAC,EAAExC,MAAM,CAACwC,KAAK,CAAC,GAAG,IAAAI,iBAAQ,EAACH,EAAE,CAAC;IAEhD,oBAAOI,iBAAQ,CAACC,YAAY,eAC1BC,cAAK,CAACjB,aAAa,CAACkB,sBAAU,CAACN,SAAS,CAAC,EAAE;MACzC,GAAGC,KAAK;MACRF,EAAE;MACFQ,KAAK,EAAEjD,MAAM,CAACwC,KAAK,CAAC;MACpBlC,QAAQ;MACR,CAAC,aAAa,GAAG4C,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,GAAGV,SAAS,GAAGtB;IACvE,CAAC,CAAC,EACFqB,EACF,CAAC;EACH,CAAC,CACH,CAAC,EACFrC,QACa,CAAC;AAErB,CAAC;AAACiD,OAAA,CAAAnD,IAAA,GAAAA,IAAA;AAEFA,IAAI,CAACoD,SAAS,GAAG;EACflD,QAAQ,EAAEmD,kBAAS,CAACC,IAAI;EACxBnD,UAAU,EAAEkD,kBAAS,CAACE,OAAO,CAC3BF,kBAAS,CAACG,KAAK,CAAC;IACdhB,SAAS,EAAEa,kBAAS,CAACI,KAAK,CAACrE,MAAM,CAACsE,IAAI,CAACZ,sBAAU,CAAC,CAAC;IACnDP,EAAE,EAAEc,kBAAS,CAACM;EAChB,CAAC,CACH,CAAC;EACDvD,QAAQ,EAAEiD,kBAAS,CAACO;AACtB,CAAC"}
@@ -14,7 +14,6 @@ var _Deals = require("./Deals.Calendar");
14
14
  var _Deals2 = require("./Deals.constants");
15
15
  var _Deals3 = require("./Deals.l10n");
16
16
  var style = _interopRequireWildcard(require("./Deals.module.css"));
17
- var _Deals4 = _interopRequireDefault(require("./Deals.skeleton"));
18
17
  var _helpers = require("./helpers");
19
18
  var _shared__ = require("../__shared__");
20
19
  var _helpers2 = require("../__shared__/Occupation/helpers");
@@ -158,7 +157,7 @@ const Deals = _ref => {
158
157
  error,
159
158
  value
160
159
  });
161
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, dataSource ? /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
160
+ return /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
162
161
  role: "deals",
163
162
  className: (0, _ui.styles)(style.deals, className)
164
163
  }), /*#__PURE__*/_react.default.createElement(_ui.View, {
@@ -167,7 +166,8 @@ const Deals = _ref => {
167
166
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
168
167
  bold: true,
169
168
  headline: true,
170
- level: 2
169
+ level: isMobile ? 3 : 2,
170
+ markdown: false
171
171
  }, translate(_Deals3.L10N.LABEL_SELECT_DATES_PERSONS)), /*#__PURE__*/_react.default.createElement(_ui.Action, {
172
172
  onPress: handleClear,
173
173
  className: style.action
@@ -221,7 +221,7 @@ const Deals = _ref => {
221
221
  onPress: handleSubmit,
222
222
  className: style.cta,
223
223
  testId: testId ? "".concat(testId, "-submit") : undefined
224
- }, translate(_Deals3.L10N.ACTION_SEARCH)))) : /*#__PURE__*/_react.default.createElement(_Deals4.default, null));
224
+ }, translate(_Deals3.L10N.ACTION_SEARCH))));
225
225
  };
226
226
  exports.Deals = Deals;
227
227
  Deals.propTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"Deals.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Deals","_Deals2","_Deals3","style","_Deals4","_helpers","_shared__","_helpers2","_toParties","_helpers3","_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","Deals","_ref","id","offerId","skeleton","others","isMobile","useDevice","translate","useLocale","value","cookies","currency","deals","hotel","language","locale","origin","urlParams","store","useStore","ref","useRef","busy","setBusy","useState","dataSource","setDataSource","error","setError","visible","setVisible","visited","setVisited","useEffect","handleClickOutside","_ref2","_ref$current","current","contains","type","document","addEventListener","removeEventListener","ServiceDeals","getCurrency","catch","occupation","minRooms","handleChange","Array","map","prepareRoom","concat","field","fieldValue","handleClear","undefined","handleSubmit","calendar","promoCode","params","idoffers","idtokenprovider","lang","checkin","dateFormat","format","nights","dateDiff","days","clientCode","parties","window","btoa","JSON","stringify","toParties","hsri","commissionCode","location","href","process","env","SERVICE_BOOKING","REDIRECT_PATH","toQueryString","className","testId","isValid","validate","createElement","Fragment","View","role","styles","row","header","Text","bold","headline","level","L10N","LABEL_SELECT_DATES_PERSONS","Action","onPress","action","Icon","ICON","CLEAR","actionIcon","ACTION_CLEAR","Calendar","FIELD","CALENDAR","onChange","event","extras","FieldOccupation","hotels","OCCUPATION","onError","onValid","FieldPromocode","PROMOCODE","onEnter","onLeave","footer","Button","disabled","large","wide","cta","ACTION_SEARCH","exports","propTypes","PropTypes","string","bool"],"sources":["../../../src/components/Deals/Deals.jsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport { useStore } from '@mirai/data-sources';\nimport { dateFormat, dateDiff, useLocale } from '@mirai/locale';\nimport { ServiceDeals } from '@mirai/services';\nimport { Action, Button, Icon, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { Calendar } from './Deals.Calendar';\nimport { FIELD, REDIRECT_PATH } from './Deals.constants';\nimport { L10N } from './Deals.l10n';\nimport * as style from './Deals.module.css';\nimport Skeleton from './Deals.skeleton';\nimport { getCurrency, validate } from './helpers';\nimport { FieldOccupation, FieldPromocode } from '../__shared__';\nimport { prepareRoom } from '../__shared__/Occupation/helpers';\nimport { toParties } from '../__shared__/Occupation/helpers/toParties';\nimport { ICON, toQueryString } from '../helpers';\n\nconst Deals = ({ id: offerId, skeleton, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n set,\n value: { cookies = {}, currency, deals: value = {}, hotel, language, locale, origin, urlParams = {}, ...store },\n } = useStore();\n const ref = useRef(null);\n\n const [busy, setBusy] = useState(false);\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState({});\n const [visible, setVisible] = useState();\n const [visited, setVisited] = useState({});\n\n useEffect(() => {\n if (isMobile) return;\n\n const handleClickOutside = ({ target }) => !ref.current?.contains(target) && target.type !== 'text' && setVisible();\n document.addEventListener('click', handleClickOutside, true);\n\n return () => {\n setBusy(false);\n document.removeEventListener('click', handleClickOutside, true);\n };\n }, []);\n\n useEffect(() => {\n if (skeleton) return;\n\n (async () =>\n setDataSource(\n await ServiceDeals.get({\n ...store,\n currency: getCurrency({ cookies, currency, urlParams }),\n hotel,\n locale,\n offerId,\n }).catch(() => {}),\n ))();\n }, [currency, locale]);\n\n useEffect(() => {\n const { occupation: { minRooms = 1, dataSource: occupation = [] } = {} } = dataSource || {};\n\n !value?.occupation &&\n occupation.length > 0 &&\n handleChange(\n 'occupation',\n [...Array(minRooms)].map(() => prepareRoom(occupation)),\n );\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource]);\n\n useEffect(() => {\n visible && setVisited({ ...visited, [`${visible}`]: true });\n }, [visible]);\n\n const handleChange = (field, fieldValue) => {\n if (!dataSource) return;\n\n set({ deals: { ...value, [field]: fieldValue } });\n };\n\n const handleClear = () => {\n set({ deals: undefined });\n setError({});\n setVisited(false);\n };\n\n const handleSubmit = () => {\n setBusy(true);\n const { calendar, occupation, promoCode } = value;\n\n const params = {\n idoffers: offerId,\n idtokenprovider: hotel.id,\n lang: language,\n checkin: dateFormat(calendar[0], { format: 'DD/MM/YYYY' }),\n nights: dateDiff(calendar[0], calendar[1]).days,\n clientCode: promoCode || '',\n currency: getCurrency({ urlParams, cookies, currency }) || '',\n parties: window.btoa(JSON.stringify(toParties(occupation))),\n hsri: origin.commissionCode,\n };\n window.location.href = `${process.env.SERVICE_BOOKING}/${REDIRECT_PATH}${toQueryString(params)}`;\n\n setBusy(true);\n };\n\n const { className, testId } = others;\n const { calendar = [], occupation, promoCode = '' } = value;\n\n const isValid = validate({ dataSource, error, value });\n\n return (\n <>\n {dataSource ? (\n <View {...others} role=\"deals\" className={styles(style.deals, className)}>\n <View row className={style.header}>\n <Text bold headline level={2}>\n {translate(L10N.LABEL_SELECT_DATES_PERSONS)}\n </Text>\n\n <Action onPress={handleClear} className={style.action}>\n <Icon value={ICON.CLEAR} className={style.actionIcon} />\n {translate(L10N.ACTION_CLEAR)}\n </Action>\n </View>\n\n <Calendar\n {...dataSource?.calendar}\n value={calendar}\n visible={visible === FIELD.CALENDAR}\n visited={visited.calendar}\n onChange={(calendar, event) => handleChange('calendar', calendar, event)}\n onPress={() => setVisible(visible !== FIELD.CALENDAR ? FIELD.CALENDAR : undefined)}\n testId={testId ? `${testId}-calendar` : undefined}\n />\n\n <View row={!isMobile} className={style.extras}>\n <FieldOccupation\n {...dataSource?.occupation}\n error={!!error.occupation}\n hotels={[hotel?.id]}\n ref={ref}\n value={occupation}\n visible={visible === FIELD.OCCUPATION}\n onChange={(occupation) => handleChange('occupation', occupation)}\n onError={(occupation) => {\n if (!isMobile && visible !== FIELD.OCCUPATION) setVisible(FIELD.OCCUPATION);\n setError({ ...error, occupation });\n }}\n onPress={() => setVisible(visible !== FIELD.OCCUPATION ? FIELD.OCCUPATION : undefined)}\n onValid={() => setError({ ...error, occupation: undefined })}\n testId={testId ? `${testId}-occupation` : undefined}\n />\n\n <FieldPromocode\n value={promoCode}\n visible={visible === FIELD.PROMOCODE}\n onChange={(promoCode) => handleChange('promoCode', promoCode)}\n onEnter={() => setVisible(FIELD.PROMOCODE)}\n onLeave={() => setVisible(undefined)}\n testId={testId ? `${testId}-promocode` : undefined}\n />\n\n {!isMobile && <View className={style.footer} />}\n\n <Button\n busy={busy}\n disabled={!isValid}\n large\n wide={isMobile}\n onPress={handleSubmit}\n className={style.cta}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {translate(L10N.ACTION_SEARCH)}\n </Button>\n </View>\n </View>\n ) : (\n <Skeleton />\n )}\n </>\n );\n};\n\nDeals.propTypes = {\n id: PropTypes.string,\n skeleton: PropTypes.bool,\n};\n\nexport { Deals };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Deals.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Deals","_Deals2","_Deals3","style","_helpers","_shared__","_helpers2","_toParties","_helpers3","_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","Deals","_ref","id","offerId","skeleton","others","isMobile","useDevice","translate","useLocale","value","cookies","currency","deals","hotel","language","locale","origin","urlParams","store","useStore","ref","useRef","busy","setBusy","useState","dataSource","setDataSource","error","setError","visible","setVisible","visited","setVisited","useEffect","handleClickOutside","_ref2","_ref$current","current","contains","type","document","addEventListener","removeEventListener","ServiceDeals","getCurrency","catch","occupation","minRooms","handleChange","Array","map","prepareRoom","concat","field","fieldValue","handleClear","undefined","handleSubmit","calendar","promoCode","params","idoffers","idtokenprovider","lang","checkin","dateFormat","format","nights","dateDiff","days","clientCode","parties","window","btoa","JSON","stringify","toParties","hsri","commissionCode","location","href","process","env","SERVICE_BOOKING","REDIRECT_PATH","toQueryString","className","testId","isValid","validate","createElement","View","role","styles","row","header","Text","bold","headline","level","markdown","L10N","LABEL_SELECT_DATES_PERSONS","Action","onPress","action","Icon","ICON","CLEAR","actionIcon","ACTION_CLEAR","Calendar","FIELD","CALENDAR","onChange","event","extras","FieldOccupation","hotels","OCCUPATION","onError","onValid","FieldPromocode","PROMOCODE","onEnter","onLeave","footer","Button","disabled","large","wide","cta","ACTION_SEARCH","exports","propTypes","PropTypes","string","bool"],"sources":["../../../src/components/Deals/Deals.jsx"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps */\nimport { useStore } from '@mirai/data-sources';\nimport { dateFormat, dateDiff, useLocale } from '@mirai/locale';\nimport { ServiceDeals } from '@mirai/services';\nimport { Action, Button, Icon, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { Calendar } from './Deals.Calendar';\nimport { FIELD, REDIRECT_PATH } from './Deals.constants';\nimport { L10N } from './Deals.l10n';\nimport * as style from './Deals.module.css';\nimport { getCurrency, validate } from './helpers';\nimport { FieldOccupation, FieldPromocode } from '../__shared__';\nimport { prepareRoom } from '../__shared__/Occupation/helpers';\nimport { toParties } from '../__shared__/Occupation/helpers/toParties';\nimport { ICON, toQueryString } from '../helpers';\n\nconst Deals = ({ id: offerId, skeleton, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n set,\n value: { cookies = {}, currency, deals: value = {}, hotel, language, locale, origin, urlParams = {}, ...store },\n } = useStore();\n const ref = useRef(null);\n\n const [busy, setBusy] = useState(false);\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState({});\n const [visible, setVisible] = useState();\n const [visited, setVisited] = useState({});\n\n useEffect(() => {\n if (isMobile) return;\n\n const handleClickOutside = ({ target }) => !ref.current?.contains(target) && target.type !== 'text' && setVisible();\n document.addEventListener('click', handleClickOutside, true);\n\n return () => {\n setBusy(false);\n document.removeEventListener('click', handleClickOutside, true);\n };\n }, []);\n\n useEffect(() => {\n if (skeleton) return;\n\n (async () =>\n setDataSource(\n await ServiceDeals.get({\n ...store,\n currency: getCurrency({ cookies, currency, urlParams }),\n hotel,\n locale,\n offerId,\n }).catch(() => {}),\n ))();\n }, [currency, locale]);\n\n useEffect(() => {\n const { occupation: { minRooms = 1, dataSource: occupation = [] } = {} } = dataSource || {};\n\n !value?.occupation &&\n occupation.length > 0 &&\n handleChange(\n 'occupation',\n [...Array(minRooms)].map(() => prepareRoom(occupation)),\n );\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource]);\n\n useEffect(() => {\n visible && setVisited({ ...visited, [`${visible}`]: true });\n }, [visible]);\n\n const handleChange = (field, fieldValue) => {\n if (!dataSource) return;\n\n set({ deals: { ...value, [field]: fieldValue } });\n };\n\n const handleClear = () => {\n set({ deals: undefined });\n setError({});\n setVisited(false);\n };\n\n const handleSubmit = () => {\n setBusy(true);\n const { calendar, occupation, promoCode } = value;\n\n const params = {\n idoffers: offerId,\n idtokenprovider: hotel.id,\n lang: language,\n checkin: dateFormat(calendar[0], { format: 'DD/MM/YYYY' }),\n nights: dateDiff(calendar[0], calendar[1]).days,\n clientCode: promoCode || '',\n currency: getCurrency({ urlParams, cookies, currency }) || '',\n parties: window.btoa(JSON.stringify(toParties(occupation))),\n hsri: origin.commissionCode,\n };\n window.location.href = `${process.env.SERVICE_BOOKING}/${REDIRECT_PATH}${toQueryString(params)}`;\n\n setBusy(true);\n };\n\n const { className, testId } = others;\n const { calendar = [], occupation, promoCode = '' } = value;\n\n const isValid = validate({ dataSource, error, value });\n\n return (\n <View {...others} role=\"deals\" className={styles(style.deals, className)}>\n <View row className={style.header}>\n <Text bold headline level={isMobile ? 3 : 2} markdown={false}>\n {translate(L10N.LABEL_SELECT_DATES_PERSONS)}\n </Text>\n\n <Action onPress={handleClear} className={style.action}>\n <Icon value={ICON.CLEAR} className={style.actionIcon} />\n {translate(L10N.ACTION_CLEAR)}\n </Action>\n </View>\n\n <Calendar\n {...dataSource?.calendar}\n value={calendar}\n visible={visible === FIELD.CALENDAR}\n visited={visited.calendar}\n onChange={(calendar, event) => handleChange('calendar', calendar, event)}\n onPress={() => setVisible(visible !== FIELD.CALENDAR ? FIELD.CALENDAR : undefined)}\n testId={testId ? `${testId}-calendar` : undefined}\n />\n\n <View row={!isMobile} className={style.extras}>\n <FieldOccupation\n {...dataSource?.occupation}\n error={!!error.occupation}\n hotels={[hotel?.id]}\n ref={ref}\n value={occupation}\n visible={visible === FIELD.OCCUPATION}\n onChange={(occupation) => handleChange('occupation', occupation)}\n onError={(occupation) => {\n if (!isMobile && visible !== FIELD.OCCUPATION) setVisible(FIELD.OCCUPATION);\n setError({ ...error, occupation });\n }}\n onPress={() => setVisible(visible !== FIELD.OCCUPATION ? FIELD.OCCUPATION : undefined)}\n onValid={() => setError({ ...error, occupation: undefined })}\n testId={testId ? `${testId}-occupation` : undefined}\n />\n\n <FieldPromocode\n value={promoCode}\n visible={visible === FIELD.PROMOCODE}\n onChange={(promoCode) => handleChange('promoCode', promoCode)}\n onEnter={() => setVisible(FIELD.PROMOCODE)}\n onLeave={() => setVisible(undefined)}\n testId={testId ? `${testId}-promocode` : undefined}\n />\n\n {!isMobile && <View className={style.footer} />}\n\n <Button\n busy={busy}\n disabled={!isValid}\n large\n wide={isMobile}\n onPress={handleSubmit}\n className={style.cta}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {translate(L10N.ACTION_SEARCH)}\n </Button>\n </View>\n </View>\n );\n};\n\nDeals.propTypes = {\n id: PropTypes.string,\n skeleton: PropTypes.bool,\n};\n\nexport { Deals };\n"],"mappings":"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"}
@@ -19,6 +19,12 @@
19
19
  padding: var(--mirai-ui-space-XS) var(--mirai-ui-space-M);
20
20
  }
21
21
 
22
+ .header [data-role='text'] {
23
+ overflow: hidden;
24
+ text-overflow: ellipsis;
25
+ white-space: nowrap;
26
+ }
27
+
22
28
  .footer {
23
29
  flex: 1;
24
30
  }
@@ -8,11 +8,10 @@ var _dataSources = require("@mirai/data-sources");
8
8
  var _locale = require("@mirai/locale");
9
9
  var _ui = require("@mirai/ui");
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
- var _react = _interopRequireDefault(require("react"));
12
- var _helpers = require("./helpers");
11
+ var _react = _interopRequireWildcard(require("react"));
13
12
  var _Rates = require("./Rates.l10n");
14
13
  var style = _interopRequireWildcard(require("./Rates.module.css"));
15
- var _helpers2 = require("../helpers");
14
+ var _helpers = require("../helpers");
16
15
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
16
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -22,12 +21,9 @@ const Footer = _ref => {
22
21
  dataSource: {
23
22
  taxes
24
23
  } = {},
25
- filter: {
26
- clubDiscount = false
27
- } = {},
28
- multiRoom = false,
24
+ extras,
29
25
  occupation = [],
30
- onChange = () => {}
26
+ onSubmit = () => {}
31
27
  } = _ref;
32
28
  const {
33
29
  isMobile
@@ -37,20 +33,11 @@ const Footer = _ref => {
37
33
  } = (0, _locale.useLocale)();
38
34
  const {
39
35
  value: {
40
- currency,
41
- forwarder,
42
- urlParams
36
+ currency
43
37
  } = {}
44
38
  } = (0, _dataSources.useStore)();
45
- const handlePress = () => {
46
- document.location.href = (0, _helpers.getForwarderUrl)({
47
- cart,
48
- clubDiscount,
49
- currency,
50
- forwarder,
51
- urlParams
52
- });
53
- };
39
+ const [busy, setBusy] = (0, _react.useState)(false);
40
+ (0, _react.useEffect)(() => !extras && setBusy(false), [extras]);
54
41
  const items = cart.filter(item => item !== undefined);
55
42
  const totalPrice = cart.reduce(function (value) {
56
43
  let {
@@ -58,11 +45,13 @@ const Footer = _ref => {
58
45
  } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
59
46
  return value + price;
60
47
  }, 0);
61
- const valid = !multiRoom || items.length === occupation.length;
48
+ const valid = items.length === occupation.length;
49
+ const handleSubmit = () => {
50
+ setBusy(true);
51
+ onSubmit();
52
+ };
62
53
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
63
- className: (0, _ui.styles)(style.footer,
64
- // ((!multiRoom && items.length) || (multiRoom && items.length === occupation.length)) && style.visible,
65
- items.length && style.visible)
54
+ className: (0, _ui.styles)(style.footer, items.length && style.visible)
66
55
  }, /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
67
56
  className: style.wrapper,
68
57
  wide: true
@@ -75,17 +64,24 @@ const Footer = _ref => {
75
64
  roomName
76
65
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
77
66
  let index = arguments.length > 1 ? arguments[1] : undefined;
67
+ const guests = occupation[index].reduce(function (total) {
68
+ let {
69
+ amount
70
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
71
+ return total + amount;
72
+ }, 0);
78
73
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
79
74
  row: true,
80
75
  key: id,
81
76
  className: style.cartItem
82
- }, multiRoom && /*#__PURE__*/_react.default.createElement(_ui.Text, {
83
- bold: true,
84
- small: !isMobile,
85
- tiny: isMobile,
86
- upperCase: true,
77
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
78
+ row: true,
87
79
  className: style.room
88
- }, "Room ".concat(index + 1)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
80
+ }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
81
+ value: guests === 1 ? _helpers.ICON.PERSON : guests === 2 ? _helpers.ICON.GROUP : _helpers.ICON.GROUPS
82
+ }), /*#__PURE__*/_react.default.createElement(_ui.Text, {
83
+ small: true
84
+ }, guests)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
89
85
  bold: true,
90
86
  action: !isMobile,
91
87
  small: isMobile,
@@ -100,14 +96,6 @@ const Footer = _ref => {
100
96
  }, (0, _locale.currencyFormat)({
101
97
  currency,
102
98
  value: amount * price
103
- })), !multiRoom && /*#__PURE__*/_react.default.createElement(_ui.Button, {
104
- small: true,
105
- squared: true,
106
- transparent: true,
107
- onPress: () => onChange(undefined, index),
108
- className: style.buttonClose
109
- }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
110
- value: _helpers2.ICON.CLOSE
111
99
  })));
112
100
  }))), /*#__PURE__*/_react.default.createElement(_ui.View, {
113
101
  row: true,
@@ -125,29 +113,25 @@ const Footer = _ref => {
125
113
  lighten: true,
126
114
  small: !isMobile || !taxes,
127
115
  tiny: isMobile
128
- }, taxes || translate(_Rates.L10N.LABEL_INCLUDES_TAXES_FEES))), /*#__PURE__*/_react.default.createElement(_ui.View, {
129
- row: !isMobile,
130
- className: style.buttons
131
- }, !isMobile && valid && /*#__PURE__*/_react.default.createElement(_ui.Action, null, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
132
- value: _helpers2.ICON.ADD_EXTRAS
133
- }), "!Add Extras"), /*#__PURE__*/_react.default.createElement(_ui.Button, {
116
+ }, taxes || translate(_Rates.L10N.LABEL_INCLUDES_TAXES_FEES))), /*#__PURE__*/_react.default.createElement(_ui.Button, {
117
+ busy: busy,
134
118
  disabled: !valid,
135
119
  large: !isMobile,
136
120
  wide: isMobile,
137
- onPress: handlePress
138
- }, translate(_Rates.L10N.ACTION_RESERVE)))));
121
+ onPress: handleSubmit
122
+ }, translate(_Rates.L10N.ACTION_RESERVE))));
139
123
  };
140
124
  exports.Footer = Footer;
141
125
  Footer.propTypes = {
142
126
  cart: _propTypes.default.arrayOf(_propTypes.default.shape({})),
143
127
  dataSource: _propTypes.default.shape({}),
128
+ extras: _propTypes.default.arrayOf(_propTypes.default.shape({})),
144
129
  filter: _propTypes.default.shape({}),
145
- multiRoom: _propTypes.default.bool,
146
130
  occupation: _propTypes.default.arrayOf(_propTypes.default.arrayOf(_propTypes.default.shape({
147
131
  ages: _propTypes.default.arrayOf(_propTypes.default.number),
148
132
  amount: _propTypes.default.number,
149
133
  type: _propTypes.default.number
150
134
  }))),
151
- onChange: _propTypes.default.func
135
+ onSubmit: _propTypes.default.func
152
136
  };
153
137
  //# sourceMappingURL=Rates.Footer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Footer.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_helpers","_Rates","style","_interopRequireWildcard","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Footer","_ref","cart","dataSource","taxes","filter","clubDiscount","multiRoom","occupation","onChange","isMobile","useDevice","translate","useLocale","value","currency","forwarder","urlParams","useStore","handlePress","document","location","href","getForwarderUrl","items","item","undefined","totalPrice","reduce","price","arguments","length","valid","createElement","View","className","styles","footer","visible","wrapper","wide","map","amount","id","name","roomName","index","row","key","cartItem","Text","bold","small","tiny","upperCase","room","concat","action","description","lighten","currencyFormat","Button","squared","transparent","onPress","buttonClose","Icon","ICON","CLOSE","summary","headline","level","L10N","LABEL_INCLUDES_TAXES_FEES","buttons","Action","ADD_EXTRAS","disabled","large","ACTION_RESERVE","exports","propTypes","PropTypes","arrayOf","shape","bool","ages","number","type","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Action, Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { getForwarderUrl } from './helpers';\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst Footer = ({\n cart = [],\n dataSource: { taxes } = {},\n filter: { clubDiscount = false } = {},\n multiRoom = false,\n occupation = [],\n onChange = () => {},\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency, forwarder, urlParams } = {} } = useStore();\n\n const handlePress = () => {\n document.location.href = getForwarderUrl({ cart, clubDiscount, currency, forwarder, urlParams });\n };\n\n const items = cart.filter((item) => item !== undefined);\n const totalPrice = cart.reduce((value, { price } = {}) => value + price, 0);\n const valid = !multiRoom || items.length === occupation.length;\n\n return (\n <View\n className={styles(\n style.footer,\n // ((!multiRoom && items.length) || (multiRoom && items.length === occupation.length)) && style.visible,\n items.length && style.visible,\n )}\n >\n <View>\n <View className={style.wrapper} wide>\n {items.map(({ amount = 1, id, name, price, roomName } = {}, index) => {\n return (\n <View row key={id} className={style.cartItem}>\n {multiRoom && (\n <Text bold small={!isMobile} tiny={isMobile} upperCase className={style.room}>\n {`Room ${index + 1}`}\n </Text>\n )}\n\n <Text bold action={!isMobile} small={isMobile} className={style.description}>\n {`${roomName} `}\n <Text lighten small>{`| ${name}`}</Text>\n </Text>\n\n <Text bold action={!isMobile} small={isMobile}>\n {currencyFormat({ currency, value: amount * price })}\n </Text>\n\n {!multiRoom && (\n <Button\n small\n squared\n transparent\n onPress={() => onChange(undefined, index)}\n className={style.buttonClose}\n >\n <Icon value={ICON.CLOSE} />\n </Button>\n )}\n </View>\n );\n })}\n </View>\n </View>\n\n <View row className={[style.wrapper, style.summary]}>\n <View className={style.totalPrice}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ currency, value: totalPrice })}\n </Text>\n\n <Text lighten small={!isMobile || !taxes} tiny={isMobile}>\n {taxes || translate(L10N.LABEL_INCLUDES_TAXES_FEES)}\n </Text>\n </View>\n\n <View row={!isMobile} className={style.buttons}>\n {!isMobile && valid && (\n <Action>\n <Icon value={ICON.ADD_EXTRAS} />\n !Add Extras\n </Action>\n )}\n\n <Button disabled={!valid} large={!isMobile} wide={isMobile} onPress={handlePress}>\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n </View>\n </View>\n </View>\n );\n};\n\nFooter.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n dataSource: PropTypes.shape({}),\n filter: PropTypes.shape({}),\n multiRoom: PropTypes.bool,\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n onChange: PropTypes.func,\n};\n\nexport { Footer };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Footer.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Rates","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Footer","_ref","cart","dataSource","taxes","extras","occupation","onSubmit","isMobile","useDevice","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","items","filter","item","undefined","totalPrice","reduce","price","arguments","length","valid","handleSubmit","createElement","View","className","styles","footer","visible","wrapper","wide","map","amount","id","name","roomName","index","guests","total","row","key","cartItem","room","Icon","ICON","PERSON","GROUP","GROUPS","Text","small","bold","action","description","concat","lighten","currencyFormat","summary","headline","level","tiny","L10N","LABEL_INCLUDES_TAXES_FEES","Button","disabled","large","onPress","ACTION_RESERVE","exports","propTypes","PropTypes","arrayOf","shape","ages","number","type","func"],"sources":["../../../src/components/Rates/Rates.Footer.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Button, Icon, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst Footer = ({ cart = [], dataSource: { taxes } = {}, extras, occupation = [], onSubmit = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => !extras && setBusy(false), [extras]);\n\n const items = cart.filter((item) => item !== undefined);\n const totalPrice = cart.reduce((value, { price } = {}) => value + price, 0);\n const valid = items.length === occupation.length;\n\n const handleSubmit = () => {\n setBusy(true);\n onSubmit();\n };\n\n return (\n <View className={styles(style.footer, items.length && style.visible)}>\n <View>\n <View className={style.wrapper} wide>\n {items.map(({ amount = 1, id, name, price, roomName } = {}, index) => {\n const guests = occupation[index].reduce((total, { amount } = {}) => total + amount, 0);\n\n return (\n <View row key={id} className={style.cartItem}>\n <View row className={style.room}>\n <Icon value={guests === 1 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS} />\n <Text small>{guests}</Text>\n </View>\n\n <Text bold action={!isMobile} small={isMobile} className={style.description}>\n {`${roomName} `}\n <Text lighten small>{`| ${name}`}</Text>\n </Text>\n\n <Text bold action={!isMobile} small={isMobile}>\n {currencyFormat({ currency, value: amount * price })}\n </Text>\n </View>\n );\n })}\n </View>\n </View>\n\n <View row className={[style.wrapper, style.summary]}>\n <View className={style.totalPrice}>\n <Text bold headline level={isMobile ? 3 : 2}>\n {currencyFormat({ currency, value: totalPrice })}\n </Text>\n\n <Text lighten small={!isMobile || !taxes} tiny={isMobile}>\n {taxes || translate(L10N.LABEL_INCLUDES_TAXES_FEES)}\n </Text>\n </View>\n\n <Button busy={busy} disabled={!valid} large={!isMobile} wide={isMobile} onPress={handleSubmit}>\n {translate(L10N.ACTION_RESERVE)}\n </Button>\n </View>\n </View>\n );\n};\n\nFooter.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n dataSource: PropTypes.shape({}),\n extras: PropTypes.arrayOf(PropTypes.shape({})),\n filter: PropTypes.shape({}),\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n onSubmit: PropTypes.func,\n};\n\nexport { Footer };\n"],"mappings":"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"}
@@ -67,7 +67,9 @@ const Header = _ref => {
67
67
  }, children, discount !== undefined && /*#__PURE__*/_react.default.createElement(_ui.View, {
68
68
  row: true,
69
69
  wide: isMobile,
70
- className: [style.tag, clubDiscount && style.highlight]
70
+ className: [style.tag, style.clubDiscount, clubDiscount && style.highlight]
71
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, {
72
+ row: true
71
73
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
72
74
  action: true,
73
75
  bold: true
@@ -75,11 +77,13 @@ const Header = _ref => {
75
77
  pressable: true,
76
78
  Template: () => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
77
79
  bold: true,
78
- small: true
80
+ action: !isMobile,
81
+ small: isMobile
79
82
  }, translate(_Rates.L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, {
80
83
  club: name
81
84
  })), clubConditions ? /*#__PURE__*/_react.default.createElement(_ui.Text, {
82
- small: true
85
+ small: !isMobile,
86
+ tiny: isMobile
83
87
  }, translate(_Rates.L10N.LABEL_CLUB_CONDITIONS, {
84
88
  conditions: /*#__PURE__*/_react.default.createElement(_ui.Action, {
85
89
  href: clubConditions,
@@ -93,7 +97,7 @@ const Header = _ref => {
93
97
  className: style.tooltip
94
98
  }, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
95
99
  value: _helpers.ICON.INFO
96
- })), /*#__PURE__*/_react.default.createElement(_ui.Switch, {
100
+ }))), /*#__PURE__*/_react.default.createElement(_ui.Switch, {
97
101
  checked: clubDiscount,
98
102
  name: "clubDiscount",
99
103
  onChange: nextValue => handleChange({
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Rates","style","_interopRequireWildcard","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Header","_ref","dataSource","clubConditions","children","value","onChange","onCurrency","others","isMobile","useDevice","translate","useLocale","club","discount","name","currency","locale","useStore","handleChange","clubDiscount","arguments","length","undefined","next","contentBackground","Theme","createElement","View","row","className","styles","header","backgroundColor","opacity","wide","tag","highlight","Text","action","bold","L10N","LABEL_CLUB_DISCOUNT","Tooltip","pressable","Template","Fragment","small","LABEL_CLUB_MEMBERS_EXCLUSIVE","LABEL_CLUB_CONDITIONS","conditions","Action","href","inline","target","ACTION_CLUB_VIEW_CONDITIONS","LABEL_CLUB_BENEFITS","tooltip","Icon","ICON","INFO","Switch","checked","nextValue","input","position","currencyValue","InputSelect","options","CURRENCIES","map","concat","Intl","DisplayNames","type","of","values","selectCurrencies","exports","displayName","propTypes","PropTypes","node","shape","board","string","bool","func"],"sources":["../../../src/components/Rates/Rates.Header.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Action, Icon, InputSelect, styles, Switch, Text, Theme, Tooltip, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON, opacity } from '../helpers';\n\nconst Header = ({\n dataSource: { clubConditions } = {},\n children,\n value = {},\n onChange = () => {},\n onCurrency = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { club: { discount, name } = {}, currency, locale } = {} } = useStore();\n\n const handleChange = ({ clubDiscount } = {}) => {\n const next = { ...value };\n\n if (clubDiscount !== undefined) next.clubDiscount = clubDiscount;\n\n onChange(next);\n };\n\n const { clubDiscount = false } = value;\n\n const { contentBackground } = Theme.get();\n\n return (\n <View\n row\n className={styles(style.header, !isMobile && others.className)}\n style={{ backgroundColor: opacity(contentBackground, 0.66) }}\n >\n {children}\n\n {discount !== undefined && (\n <View row wide={isMobile} className={[style.tag, clubDiscount && style.highlight]}>\n <Text action bold>\n {translate(L10N.LABEL_CLUB_DISCOUNT)}\n </Text>\n <Tooltip\n pressable\n Template={() => (\n <>\n <Text bold small>\n {translate(L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, { club: name })}\n </Text>\n {clubConditions ? (\n <Text small>\n {translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action href={clubConditions} inline target=\"_blank\" className={style.action}>\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })}\n </Text>\n ) : (\n <Text small>{translate(L10N.LABEL_CLUB_BENEFITS)}</Text>\n )}\n </>\n )}\n className={style.tooltip}\n >\n <Icon value={ICON.INFO} />\n </Tooltip>\n\n <Switch\n checked={clubDiscount}\n name=\"clubDiscount\"\n onChange={(nextValue) => handleChange({ clubDiscount: nextValue })}\n className={style.input}\n />\n </View>\n )}\n\n <View style={{ position: 'relative' }}>\n <Text className={style.currencyValue}>{currency}</Text>\n <InputSelect\n name=\"currency\"\n options={CURRENCIES.map(\n (currency) => `${currency} - ${new Intl.DisplayNames(locale, { type: 'currency' }).of(currency)}`,\n )}\n values={CURRENCIES}\n value={currency}\n onChange={onCurrency}\n className={[style.input, style.selectCurrencies]}\n />\n </View>\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Rates.Header';\n\nHeader.propTypes = {\n children: PropTypes.node,\n dataSource: PropTypes.shape({}),\n value: PropTypes.shape({\n board: PropTypes.string,\n clubDiscount: PropTypes.bool,\n }),\n onChange: PropTypes.func,\n onCurrency: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Rates","style","_interopRequireWildcard","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Header","_ref","dataSource","clubConditions","children","value","onChange","onCurrency","others","isMobile","useDevice","translate","useLocale","club","discount","name","currency","locale","useStore","handleChange","clubDiscount","arguments","length","undefined","next","contentBackground","Theme","createElement","View","row","className","styles","header","backgroundColor","opacity","wide","tag","highlight","Text","action","bold","L10N","LABEL_CLUB_DISCOUNT","Tooltip","pressable","Template","Fragment","small","LABEL_CLUB_MEMBERS_EXCLUSIVE","tiny","LABEL_CLUB_CONDITIONS","conditions","Action","href","inline","target","ACTION_CLUB_VIEW_CONDITIONS","LABEL_CLUB_BENEFITS","tooltip","Icon","ICON","INFO","Switch","checked","nextValue","input","position","currencyValue","InputSelect","options","CURRENCIES","map","concat","Intl","DisplayNames","type","of","values","selectCurrencies","exports","displayName","propTypes","PropTypes","node","shape","board","string","bool","func"],"sources":["../../../src/components/Rates/Rates.Header.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, useLocale } from '@mirai/locale';\nimport { useDevice } from '@mirai/ui';\nimport { Action, Icon, InputSelect, styles, Switch, Text, Theme, Tooltip, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON, opacity } from '../helpers';\n\nconst Header = ({\n dataSource: { clubConditions } = {},\n children,\n value = {},\n onChange = () => {},\n onCurrency = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: { club: { discount, name } = {}, currency, locale } = {} } = useStore();\n\n const handleChange = ({ clubDiscount } = {}) => {\n const next = { ...value };\n\n if (clubDiscount !== undefined) next.clubDiscount = clubDiscount;\n\n onChange(next);\n };\n\n const { clubDiscount = false } = value;\n\n const { contentBackground } = Theme.get();\n\n return (\n <View\n row\n className={styles(style.header, !isMobile && others.className)}\n style={{ backgroundColor: opacity(contentBackground, 0.66) }}\n >\n {children}\n\n {discount !== undefined && (\n <View row wide={isMobile} className={[style.tag, style.clubDiscount, clubDiscount && style.highlight]}>\n <View row>\n <Text action bold>\n {translate(L10N.LABEL_CLUB_DISCOUNT)}\n </Text>\n\n <Tooltip\n pressable\n Template={() => (\n <>\n <Text bold action={!isMobile} small={isMobile}>\n {translate(L10N.LABEL_CLUB_MEMBERS_EXCLUSIVE, { club: name })}\n </Text>\n\n {clubConditions ? (\n <Text small={!isMobile} tiny={isMobile}>\n {translate(L10N.LABEL_CLUB_CONDITIONS, {\n conditions: (\n <Action href={clubConditions} inline target=\"_blank\" className={style.action}>\n {translate(L10N.ACTION_CLUB_VIEW_CONDITIONS)}\n </Action>\n ),\n })}\n </Text>\n ) : (\n <Text small>{translate(L10N.LABEL_CLUB_BENEFITS)}</Text>\n )}\n </>\n )}\n className={style.tooltip}\n >\n <Icon value={ICON.INFO} />\n </Tooltip>\n </View>\n\n <Switch\n checked={clubDiscount}\n name=\"clubDiscount\"\n onChange={(nextValue) => handleChange({ clubDiscount: nextValue })}\n className={style.input}\n />\n </View>\n )}\n\n <View style={{ position: 'relative' }}>\n <Text className={style.currencyValue}>{currency}</Text>\n <InputSelect\n name=\"currency\"\n options={CURRENCIES.map(\n (currency) => `${currency} - ${new Intl.DisplayNames(locale, { type: 'currency' }).of(currency)}`,\n )}\n values={CURRENCIES}\n value={currency}\n onChange={onCurrency}\n className={[style.input, style.selectCurrencies]}\n />\n </View>\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Rates.Header';\n\nHeader.propTypes = {\n children: PropTypes.node,\n dataSource: PropTypes.shape({}),\n value: PropTypes.shape({\n board: PropTypes.string,\n clubDiscount: PropTypes.bool,\n }),\n onChange: PropTypes.func,\n onCurrency: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":"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"}
@@ -36,9 +36,6 @@ const RoomSelector = _ref => {
36
36
  } = {}
37
37
  }
38
38
  } = (0, _dataSources.useStore)();
39
-
40
- // const lastRoomIndex = cart.findIndex((item) => )
41
-
42
39
  return occupation.length >= 2 ? /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
43
40
  horizontal: true,
44
41
  snap: false,
@@ -1 +1 @@
1
- {"version":3,"file":"Rates.RoomSelector.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Rates","style","_interopRequireWildcard","_helpers","_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","RoomSelector","_ref","cart","occupation","room","roomIndex","onPress","isMobile","useDevice","translate","useLocale","value","hotel","accommodationType","useStore","createElement","ScrollView","horizontal","snap","className","roomSelector","map","items","undefined","index","guests","reduce","total","amount","textProps","bold","action","small","hasCart","Pressable","disabled","tag","active","highlight","Text","L10N","LABEL_SELECT","capitalize","concat","LABEL_ACCOMMODATION_TYPE","type","headline","separator","Icon","level","ICON","PERSON","GROUP","GROUPS","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","func"],"sources":["../../../src/components/Rates/Rates.RoomSelector.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Pressable, ScrollView, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst RoomSelector = ({ cart = [], occupation = [], room: roomIndex, onPress = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { hotel: { accommodationType } = {} },\n } = useStore();\n\n // const lastRoomIndex = cart.findIndex((item) => )\n\n return occupation.length >= 2 ? (\n <ScrollView horizontal snap={false} className={style.roomSelector}>\n {occupation.map((items = [], index) => {\n const guests = items.reduce((total, { amount } = {}) => total + amount, 0);\n const textProps = { bold: index <= roomIndex, action: !isMobile, small: isMobile };\n const hasCart = index <= roomIndex || cart[index] !== undefined;\n\n return (\n <Pressable\n disabled={!hasCart}\n key={index}\n onPress={() => onPress(index)}\n className={[\n style.tag,\n style.room,\n index === roomIndex ? style.active : hasCart ? style.highlight : undefined,\n ]}\n >\n {index === roomIndex && !cart[index] && (\n <Text {...textProps} bold={false}>\n {translate(L10N.LABEL_SELECT)}\n </Text>\n )}\n <Text {...textProps} capitalize>{`${translate(L10N.LABEL_ACCOMMODATION_TYPE, {\n type: accommodationType,\n })} ${index + 1}`}</Text>\n\n <Text headline className={style.separator}>\n |\n </Text>\n <Icon\n headline\n level={isMobile ? 3 : 2}\n value={guests === 1 || guests > 3 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text {...textProps} bold>\n {guests}\n </Text>\n </Pressable>\n );\n })}\n </ScrollView>\n ) : null;\n};\n\nRoomSelector.displayName = 'Mirai:Core:Rates.RoomSelector';\n\nRoomSelector.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n room: PropTypes.number,\n onPress: PropTypes.func,\n};\n\nexport { RoomSelector };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Rates.RoomSelector.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Rates","style","_interopRequireWildcard","_helpers","_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","RoomSelector","_ref","cart","occupation","room","roomIndex","onPress","isMobile","useDevice","translate","useLocale","value","hotel","accommodationType","useStore","createElement","ScrollView","horizontal","snap","className","roomSelector","map","items","undefined","index","guests","reduce","total","amount","textProps","bold","action","small","hasCart","Pressable","disabled","tag","active","highlight","Text","L10N","LABEL_SELECT","capitalize","concat","LABEL_ACCOMMODATION_TYPE","type","headline","separator","Icon","level","ICON","PERSON","GROUP","GROUPS","exports","displayName","propTypes","PropTypes","arrayOf","shape","ages","number","func"],"sources":["../../../src/components/Rates/Rates.RoomSelector.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Icon, Pressable, ScrollView, Text, useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Rates.l10n';\nimport * as style from './Rates.module.css';\nimport { ICON } from '../helpers';\n\nconst RoomSelector = ({ cart = [], occupation = [], room: roomIndex, onPress = () => {} }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { hotel: { accommodationType } = {} },\n } = useStore();\n\n return occupation.length >= 2 ? (\n <ScrollView horizontal snap={false} className={style.roomSelector}>\n {occupation.map((items = [], index) => {\n const guests = items.reduce((total, { amount } = {}) => total + amount, 0);\n const textProps = { bold: index <= roomIndex, action: !isMobile, small: isMobile };\n const hasCart = index <= roomIndex || cart[index] !== undefined;\n\n return (\n <Pressable\n disabled={!hasCart}\n key={index}\n onPress={() => onPress(index)}\n className={[\n style.tag,\n style.room,\n index === roomIndex ? style.active : hasCart ? style.highlight : undefined,\n ]}\n >\n {index === roomIndex && !cart[index] && (\n <Text {...textProps} bold={false}>\n {translate(L10N.LABEL_SELECT)}\n </Text>\n )}\n <Text {...textProps} capitalize>{`${translate(L10N.LABEL_ACCOMMODATION_TYPE, {\n type: accommodationType,\n })} ${index + 1}`}</Text>\n\n <Text headline className={style.separator}>\n |\n </Text>\n <Icon\n headline\n level={isMobile ? 3 : 2}\n value={guests === 1 || guests > 3 ? ICON.PERSON : guests === 2 ? ICON.GROUP : ICON.GROUPS}\n />\n <Text {...textProps} bold>\n {guests}\n </Text>\n </Pressable>\n );\n })}\n </ScrollView>\n ) : null;\n};\n\nRoomSelector.displayName = 'Mirai:Core:Rates.RoomSelector';\n\nRoomSelector.propTypes = {\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n occupation: PropTypes.arrayOf(\n PropTypes.arrayOf(\n PropTypes.shape({\n ages: PropTypes.arrayOf(PropTypes.number),\n amount: PropTypes.number,\n type: PropTypes.number,\n }),\n ),\n ),\n room: PropTypes.number,\n onPress: PropTypes.func,\n};\n\nexport { RoomSelector };\n"],"mappings":"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"}
@@ -11,8 +11,11 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
11
11
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
12
  var _default = () => {
13
13
  const {
14
- isMobile
14
+ isMobile,
15
+ isDesktop,
16
+ width
15
17
  } = (0, _ui.useDevice)();
18
+ const isTablet = !isMobile && width <= 1179;
16
19
  const props = {
17
20
  color: 'base'
18
21
  };
@@ -50,14 +53,14 @@ var _default = () => {
50
53
  justifyContent: 'space-between'
51
54
  }
52
55
  }, Array.from({
53
- length: isMobile ? 1 : 3
56
+ length: isMobile ? 1 : isTablet ? 2 : 3
54
57
  }).map((_, index) => /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, _extends({
55
58
  key: index
56
59
  }, props, {
57
60
  style: {
58
61
  boxSizing: 'border-box',
59
62
  flex: 1,
60
- flexBasis: "calc(33.33% - calc(calc(var(--mirai-ui-space-M) * 2) / 3))",
63
+ flexBasis: isTablet ? 'calc(50% - calc(var(--mirai-ui-space-M) / 2))' : isDesktop ? "calc(33.33% - calc(calc(var(--mirai-ui-space-M) * 2) / 3))" : undefined,
61
64
  overflow: 'hidden'
62
65
  }
63
66
  }), /*#__PURE__*/_react.default.createElement(_shared__.Skeleton, {