@mirai/core 0.3.47 → 0.3.49

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 (32) hide show
  1. package/build/components/Finder/Finder.compact.js +1 -1
  2. package/build/components/Finder/Finder.compact.js.map +1 -1
  3. package/build/components/Finder/Finder.js +10 -3
  4. package/build/components/Finder/Finder.js.map +1 -1
  5. package/build/components/Finder/__tests__/__snapshots__/Finder.test.js.snap +3478 -208
  6. package/build/components/Finder/components/Calendar/Calendar.js +1 -1
  7. package/build/components/Finder/components/Calendar/Calendar.js.map +1 -1
  8. package/build/components/Finder/components/Calendar/Calendar.l10n.js +2 -2
  9. package/build/components/Finder/components/Calendar/Calendar.l10n.js.map +1 -1
  10. package/build/components/Finder/components/Places/Places.js +4 -8
  11. package/build/components/Finder/components/Places/Places.js.map +1 -1
  12. package/build/components/Finder/components/Places/Places.l10n.js +2 -2
  13. package/build/components/Finder/components/Places/Places.l10n.js.map +1 -1
  14. package/build/components/Finder/components/Places/Places.module.css +19 -15
  15. package/build/components/Finder/components/Places/__tests__/__snapshots__/Places.test.js.snap +72 -72
  16. package/build/components/Finder/components/Places/helpers/calcColumns.js +4 -10
  17. package/build/components/Finder/components/Places/helpers/calcColumns.js.map +1 -1
  18. package/build/components/Rates/Rates.js +9 -3
  19. package/build/components/Rates/Rates.js.map +1 -1
  20. package/build/components/Rates/components/Item/Item.js +14 -1
  21. package/build/components/Rates/components/Item/Item.js.map +1 -1
  22. package/build/components/Rates/components/Item/Item.l10n.js +6 -0
  23. package/build/components/Rates/components/Item/Item.l10n.js.map +1 -1
  24. package/build/components/Rates/components/Item/Item.module.css +4 -0
  25. package/build/components/Rates/components/Item/components/Discount/Discount.js +2 -2
  26. package/build/components/Rates/components/Item/components/Discount/Discount.js.map +1 -1
  27. package/build/components/Rates/components/Item/components/Discount/Discount.module.css +0 -7
  28. package/build/components/__shared__/Field/Field.module.css +4 -0
  29. package/build/components/__shared__/FieldPromocode/FieldPromocode.module.css +6 -1
  30. package/build/services/Rates/get.js +2 -2
  31. package/build/services/Rates/get.js.map +1 -1
  32. package/package.json +1 -1
@@ -167,7 +167,7 @@ const Calendar = _ref => {
167
167
  testId: testId ? "".concat(testId, "-submit") : undefined,
168
168
  disabled: !from || !to,
169
169
  onPress: handleSubmit
170
- }, translate(_Calendar2.L10N.ACTION_SEARCH))));
170
+ }, translate(_Calendar2.L10N.ACTION_NEXT))));
171
171
  };
172
172
  exports.Calendar = Calendar;
173
173
  Calendar.displayName = 'Mirai:Finder:Calendar';
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Calendar","_Calendar2","style","_helpers","_shared__","_helpers2","_helpers3","_helpers4","_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","Calendar","_ref","_getDataSource","_getDataSource$places","_getDataSource$places2","_getDataSource$places3","_getDataSource2","currency","id","locale","pricesLegend","rangeMaxDays","RANGE_MAX_DAYS","rangeMinDays","showPrices","onChange","onError","onSubmit","onValid","others","isMobile","useDevice","translate","useLocale","value","store","useStore","focus","setFocus","useState","prices","setPrices","setValue","valueFormat","visibleDate","setVisibleDate","useEffect","nextValue","parseValue","getPrices","dateCalc","Date","MONTHS","from","to","ERROR","NOT_FILLED","rangeMonths","undefined","IS_JEST","next","fetchPrices","current","values","handleChange","event","handleNavigation","handleScroll","_ref2","percentY","date","getVisibleDate","handleSubmit","testId","props","range","config","hotels","dataSource","lodgingDenomination","individual","tagId","getDataSource","places","options","find","ids","isHotel","accommodationType","getAccommodationType","getHotels","placesSource","createElement","View","role","captions","format","CALENDAR_FORMAT","months","MONTHS_IN_MOBILE","scrollEventThrottle","SCROLL_EVENT_MS","onFocus","onNavigation","onScroll","className","styles","calendar","Notification","inline","small","notification","L10N","LABEL_INFO_PRICES","accommodation","LABEL_ACCOMMODATION_TYPE","type","guests","nights","taxType","row","footer","BookingDates","Button","concat","disabled","onPress","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","oneOf","CURRENCIES","string","number","bool","TAX","TAX_FREE","TAX_PARTIAL","arrayOf","instanceOf","func"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, dateCalc } from '@mirai/locale';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Calendar as CalendarBase, Notification, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { ERROR, MONTHS, RANGE_MAX_DAYS, SCROLL_EVENT_MS, TAX, TAX_FREE, TAX_PARTIAL } from './Calendar.constants';\nimport { L10N } from './Calendar.l10n';\nimport * as style from './Calendar.module.css';\nimport { fetchPrices, getVisibleDate, parseValue, valueFormat } from './helpers';\nimport { BookingDates } from '../../../__shared__';\nimport { getAccommodationType } from '../../../__shared__/FieldOccupation/helpers';\nimport { CALENDAR_FORMAT, IS_JEST, MONTHS_IN_MOBILE } from '../../../helpers';\nimport { getDataSource, getHotels } from '../../helpers';\n\nconst Calendar = ({\n currency,\n id,\n locale,\n pricesLegend,\n rangeMaxDays = RANGE_MAX_DAYS,\n rangeMinDays,\n showPrices,\n onChange,\n onError,\n onSubmit,\n onValid,\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: store } = useStore();\n\n const [focus, setFocus] = useState();\n const [prices, setPrices] = useState();\n const [value, setValue] = useState(valueFormat(others.value));\n const [visibleDate, setVisibleDate] = useState();\n\n useEffect(() => {\n setPrices();\n\n const nextValue = visibleDate || (value?.length && value[0] && parseValue(value)[0]);\n showPrices && id && getPrices((nextValue && dateCalc(nextValue, -1, 'months')) || new Date(), MONTHS);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency, id, showPrices]);\n\n useEffect(() => {\n const [from, to] = value || [];\n\n if (onValid && from && to) onValid();\n else if (onError && (!from || !to)) onError(ERROR.NOT_FILLED);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const getPrices = async (from, rangeMonths = 2) => {\n if (IS_JEST || !from) return;\n\n const next = await fetchPrices({ currency, from, id, locale, rangeMonths });\n setPrices((current) => {\n return { currency: next.currency, values: { ...current?.values, ...next?.values } };\n });\n };\n\n const handleChange = (next = [], event) => {\n setFocus(undefined);\n setValue(valueFormat(next));\n onChange && onChange(next, event);\n };\n\n const handleNavigation = (value) => {\n setVisibleDate(value);\n\n return showPrices && getPrices(value);\n };\n\n const handleScroll = ({ percentY }) => {\n const date = getVisibleDate(percentY, others.to);\n setVisibleDate(date);\n\n return showPrices && id && getPrices(date, MONTHS);\n };\n\n const handleSubmit = (event) => onSubmit(value, event);\n\n const { testId } = others;\n const props = { ...others, locale, range: true, rangeMaxDays, rangeMinDays };\n const [from, to] = parseValue(value);\n const { config: { hotels: dataSource, lodgingDenomination: individual } = {} } = store || {};\n\n const tagId = getDataSource(store)?.places?.options?.find(\n ({ id: ids = [], isHotel } = {}) => isHotel && ids[0] === id,\n )?.value;\n\n const accommodationType = getAccommodationType({\n dataSource,\n hotels: getHotels(getDataSource(store)?.placesSource, tagId),\n individual: individual && typeof individual === 'object' ? individual[id] : individual,\n });\n\n return (\n <View role=\"calendar\">\n <CalendarBase\n {...props}\n captions={prices?.values}\n format={CALENDAR_FORMAT}\n months={isMobile ? MONTHS_IN_MOBILE : undefined}\n scrollEventThrottle={SCROLL_EVENT_MS}\n value={value}\n onChange={handleChange}\n onFocus={setFocus}\n onNavigation={handleNavigation}\n onScroll={handleScroll}\n className={styles(style.calendar, others.className)}\n />\n\n {prices?.currency && (\n <Notification inline small className={style.notification}>\n {translate(L10N.LABEL_INFO_PRICES, {\n accommodation: translate(L10N.LABEL_ACCOMMODATION_TYPE, { type: accommodationType }),\n currency,\n guests: 2,\n nights: 1,\n taxType: pricesLegend,\n })}\n </Notification>\n )}\n\n <View row className={style.footer}>\n <BookingDates {...{ from, focus, to, rangeMinDays }} />\n\n {onSubmit && (\n <Button testId={testId ? `${testId}-submit` : undefined} disabled={!from || !to} onPress={handleSubmit}>\n {translate(L10N.ACTION_SEARCH)}\n </Button>\n )}\n </View>\n </View>\n );\n};\n\nCalendar.displayName = 'Mirai:Finder:Calendar';\n\nCalendar.propTypes = {\n currency: PropTypes.oneOf(CURRENCIES),\n id: PropTypes.string,\n locale: PropTypes.string,\n rangeMaxDays: PropTypes.number,\n rangeMinDays: PropTypes.number,\n showPrices: PropTypes.bool,\n pricesLegend: PropTypes.oneOf([TAX, TAX_FREE, TAX_PARTIAL]),\n value: PropTypes.arrayOf(PropTypes.instanceOf(Date)),\n onChange: PropTypes.func,\n onError: PropTypes.func,\n onSubmit: PropTypes.func,\n onValid: PropTypes.func,\n};\n\nexport { Calendar };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Calendar.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Calendar","_Calendar2","style","_helpers","_shared__","_helpers2","_helpers3","_helpers4","_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","Calendar","_ref","_getDataSource","_getDataSource$places","_getDataSource$places2","_getDataSource$places3","_getDataSource2","currency","id","locale","pricesLegend","rangeMaxDays","RANGE_MAX_DAYS","rangeMinDays","showPrices","onChange","onError","onSubmit","onValid","others","isMobile","useDevice","translate","useLocale","value","store","useStore","focus","setFocus","useState","prices","setPrices","setValue","valueFormat","visibleDate","setVisibleDate","useEffect","nextValue","parseValue","getPrices","dateCalc","Date","MONTHS","from","to","ERROR","NOT_FILLED","rangeMonths","undefined","IS_JEST","next","fetchPrices","current","values","handleChange","event","handleNavigation","handleScroll","_ref2","percentY","date","getVisibleDate","handleSubmit","testId","props","range","config","hotels","dataSource","lodgingDenomination","individual","tagId","getDataSource","places","options","find","ids","isHotel","accommodationType","getAccommodationType","getHotels","placesSource","createElement","View","role","captions","format","CALENDAR_FORMAT","months","MONTHS_IN_MOBILE","scrollEventThrottle","SCROLL_EVENT_MS","onFocus","onNavigation","onScroll","className","styles","calendar","Notification","inline","small","notification","L10N","LABEL_INFO_PRICES","accommodation","LABEL_ACCOMMODATION_TYPE","type","guests","nights","taxType","row","footer","BookingDates","Button","concat","disabled","onPress","ACTION_NEXT","exports","displayName","propTypes","PropTypes","oneOf","CURRENCIES","string","number","bool","TAX","TAX_FREE","TAX_PARTIAL","arrayOf","instanceOf","func"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { CURRENCIES, dateCalc } from '@mirai/locale';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Calendar as CalendarBase, Notification, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { ERROR, MONTHS, RANGE_MAX_DAYS, SCROLL_EVENT_MS, TAX, TAX_FREE, TAX_PARTIAL } from './Calendar.constants';\nimport { L10N } from './Calendar.l10n';\nimport * as style from './Calendar.module.css';\nimport { fetchPrices, getVisibleDate, parseValue, valueFormat } from './helpers';\nimport { BookingDates } from '../../../__shared__';\nimport { getAccommodationType } from '../../../__shared__/FieldOccupation/helpers';\nimport { CALENDAR_FORMAT, IS_JEST, MONTHS_IN_MOBILE } from '../../../helpers';\nimport { getDataSource, getHotels } from '../../helpers';\n\nconst Calendar = ({\n currency,\n id,\n locale,\n pricesLegend,\n rangeMaxDays = RANGE_MAX_DAYS,\n rangeMinDays,\n showPrices,\n onChange,\n onError,\n onSubmit,\n onValid,\n ...others\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const { value: store } = useStore();\n\n const [focus, setFocus] = useState();\n const [prices, setPrices] = useState();\n const [value, setValue] = useState(valueFormat(others.value));\n const [visibleDate, setVisibleDate] = useState();\n\n useEffect(() => {\n setPrices();\n\n const nextValue = visibleDate || (value?.length && value[0] && parseValue(value)[0]);\n showPrices && id && getPrices((nextValue && dateCalc(nextValue, -1, 'months')) || new Date(), MONTHS);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currency, id, showPrices]);\n\n useEffect(() => {\n const [from, to] = value || [];\n\n if (onValid && from && to) onValid();\n else if (onError && (!from || !to)) onError(ERROR.NOT_FILLED);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const getPrices = async (from, rangeMonths = 2) => {\n if (IS_JEST || !from) return;\n\n const next = await fetchPrices({ currency, from, id, locale, rangeMonths });\n setPrices((current) => {\n return { currency: next.currency, values: { ...current?.values, ...next?.values } };\n });\n };\n\n const handleChange = (next = [], event) => {\n setFocus(undefined);\n setValue(valueFormat(next));\n onChange && onChange(next, event);\n };\n\n const handleNavigation = (value) => {\n setVisibleDate(value);\n\n return showPrices && getPrices(value);\n };\n\n const handleScroll = ({ percentY }) => {\n const date = getVisibleDate(percentY, others.to);\n setVisibleDate(date);\n\n return showPrices && id && getPrices(date, MONTHS);\n };\n\n const handleSubmit = (event) => onSubmit(value, event);\n\n const { testId } = others;\n const props = { ...others, locale, range: true, rangeMaxDays, rangeMinDays };\n const [from, to] = parseValue(value);\n const { config: { hotels: dataSource, lodgingDenomination: individual } = {} } = store || {};\n\n const tagId = getDataSource(store)?.places?.options?.find(\n ({ id: ids = [], isHotel } = {}) => isHotel && ids[0] === id,\n )?.value;\n\n const accommodationType = getAccommodationType({\n dataSource,\n hotels: getHotels(getDataSource(store)?.placesSource, tagId),\n individual: individual && typeof individual === 'object' ? individual[id] : individual,\n });\n\n return (\n <View role=\"calendar\">\n <CalendarBase\n {...props}\n captions={prices?.values}\n format={CALENDAR_FORMAT}\n months={isMobile ? MONTHS_IN_MOBILE : undefined}\n scrollEventThrottle={SCROLL_EVENT_MS}\n value={value}\n onChange={handleChange}\n onFocus={setFocus}\n onNavigation={handleNavigation}\n onScroll={handleScroll}\n className={styles(style.calendar, others.className)}\n />\n\n {prices?.currency && (\n <Notification inline small className={style.notification}>\n {translate(L10N.LABEL_INFO_PRICES, {\n accommodation: translate(L10N.LABEL_ACCOMMODATION_TYPE, { type: accommodationType }),\n currency,\n guests: 2,\n nights: 1,\n taxType: pricesLegend,\n })}\n </Notification>\n )}\n\n <View row className={style.footer}>\n <BookingDates {...{ from, focus, to, rangeMinDays }} />\n\n {onSubmit && (\n <Button testId={testId ? `${testId}-submit` : undefined} disabled={!from || !to} onPress={handleSubmit}>\n {translate(L10N.ACTION_NEXT)}\n </Button>\n )}\n </View>\n </View>\n );\n};\n\nCalendar.displayName = 'Mirai:Finder:Calendar';\n\nCalendar.propTypes = {\n currency: PropTypes.oneOf(CURRENCIES),\n id: PropTypes.string,\n locale: PropTypes.string,\n rangeMaxDays: PropTypes.number,\n rangeMinDays: PropTypes.number,\n showPrices: PropTypes.bool,\n pricesLegend: PropTypes.oneOf([TAX, TAX_FREE, TAX_PARTIAL]),\n value: PropTypes.arrayOf(PropTypes.instanceOf(Date)),\n onChange: PropTypes.func,\n onError: PropTypes.func,\n onSubmit: PropTypes.func,\n onValid: PropTypes.func,\n};\n\nexport { Calendar };\n"],"mappings":"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"}
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.L10N = void 0;
7
7
  const L10N = exports.L10N = {
8
- ACTION_SEARCH: {
9
- id: 'common.action.search'
8
+ ACTION_NEXT: {
9
+ id: 'finder.action.next'
10
10
  },
11
11
  LABEL_ACCOMMODATION_TYPE: {
12
12
  id: 'common.label.accommodation_type'
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.l10n.js","names":["L10N","exports","ACTION_SEARCH","id","LABEL_ACCOMMODATION_TYPE","LABEL_INFO_PRICES"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_SEARCH: { id: 'common.action.search' },\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_INFO_PRICES: { id: 'finder.label.info_prices' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,aAAa,EAAE;IAAEC,EAAE,EAAE;EAAuB,CAAC;EAC7CC,wBAAwB,EAAE;IAAED,EAAE,EAAE;EAAkC,CAAC;EACnEE,iBAAiB,EAAE;IAAEF,EAAE,EAAE;EAA2B;AACtD,CAAC"}
1
+ {"version":3,"file":"Calendar.l10n.js","names":["L10N","exports","ACTION_NEXT","id","LABEL_ACCOMMODATION_TYPE","LABEL_INFO_PRICES"],"sources":["../../../../../src/components/Finder/components/Calendar/Calendar.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_NEXT: { id: 'finder.action.next' },\n\n LABEL_ACCOMMODATION_TYPE: { id: 'common.label.accommodation_type' },\n LABEL_INFO_PRICES: { id: 'finder.label.info_prices' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,WAAW,EAAE;IAAEC,EAAE,EAAE;EAAqB,CAAC;EAEzCC,wBAAwB,EAAE;IAAED,EAAE,EAAE;EAAkC,CAAC;EACnEE,iBAAiB,EAAE;IAAEF,EAAE,EAAE;EAA2B;AACtD,CAAC"}
@@ -27,7 +27,6 @@ const Places = _ref => {
27
27
  const {
28
28
  translate
29
29
  } = (0, _locale.useLocale)();
30
- const ref = (0, _react.useRef)(null);
31
30
  const [columns, setColumns] = (0, _react.useState)();
32
31
  (0, _react.useEffect)(() => {
33
32
  const {
@@ -35,8 +34,7 @@ const Places = _ref => {
35
34
  } = device;
36
35
  if (!isMobile && autoColumn) setColumns(autoColumn ? (0, _helpers.calcColumns)({
37
36
  dataSource,
38
- device,
39
- ref
37
+ device
40
38
  }) : undefined);
41
39
  }, [autoColumn, device, dataSource]);
42
40
  const {
@@ -44,8 +42,7 @@ const Places = _ref => {
44
42
  } = others;
45
43
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
46
44
  role: "places",
47
- className: style.container,
48
- ref: ref
45
+ className: style.container
49
46
  }, /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
50
47
  scrollIndicator: true,
51
48
  snap: true,
@@ -68,9 +65,8 @@ const Places = _ref => {
68
65
  onPress: () => onChange(item),
69
66
  testId: testId ? "".concat(testId, "-item-").concat(index) : undefined
70
67
  }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
68
+ action: level !== 0,
71
69
  bold: !isHotel,
72
- headline: true,
73
- level: level === 0 ? 3 : 4,
74
70
  className: style.title
75
71
  }, '\u00A0'.repeat(level), title));
76
72
  })), onSubmit && /*#__PURE__*/_react.default.createElement(_ui.View, {
@@ -80,7 +76,7 @@ const Places = _ref => {
80
76
  className: [style.button, style.submit],
81
77
  onPress: onSubmit,
82
78
  testId: testId ? "".concat(testId, "-submit") : undefined
83
- }, translate(_Places.L10N.ACTION_CLOSE))));
79
+ }, translate(_Places.L10N.ACTION_NEXT))));
84
80
  };
85
81
  exports.Places = Places;
86
82
  Places.displayName = 'Mirai:Finder:Places';
@@ -1 +1 @@
1
- {"version":3,"file":"Places.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Places","style","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Places","_ref","autoColumn","dataSource","value","onChange","onSubmit","others","device","useDevice","translate","useLocale","ref","useRef","columns","setColumns","useState","useEffect","isMobile","calcColumns","undefined","testId","createElement","View","role","className","container","ScrollView","scrollIndicator","snap","tag","styles","scrollview","concat","map","item","arguments","length","index","isHotel","level","title","itemValue","Pressable","key","selected","onPress","Text","bold","headline","repeat","footer","Button","disabled","button","submit","L10N","ACTION_CLOSE","exports","displayName","propTypes","PropTypes","bool","arrayOf","shape","id","string","isRequired","number","func"],"sources":["../../../../../src/components/Finder/components/Places/Places.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Pressable, styles, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { calcColumns } from './helpers';\nimport { L10N } from './Places.l10n';\nimport * as style from './Places.module.css';\n\nconst Places = ({ autoColumn = true, dataSource = [], value, onChange = () => {}, onSubmit, ...others }) => {\n const device = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n\n const [columns, setColumns] = useState();\n\n useEffect(() => {\n const { isMobile } = device;\n\n if (!isMobile && autoColumn) setColumns(autoColumn ? calcColumns({ dataSource, device, ref }) : undefined);\n }, [autoColumn, device, dataSource]);\n\n const { testId } = others;\n\n return (\n <View role=\"places\" className={style.container} ref={ref}>\n <ScrollView\n scrollIndicator\n snap\n tag=\"ul\"\n className={styles(style.scrollview, columns && style.columns, columns && style[`columns${columns}`])}\n testId={testId}\n >\n {dataSource.map((item = {}, index) => {\n const { isHotel, level, title, value: itemValue } = item;\n\n return (\n <Pressable\n key={index}\n tag=\"li\"\n className={styles(style.item, itemValue === value && style.selected)}\n onPress={() => onChange(item)}\n testId={testId ? `${testId}-item-${index}` : undefined}\n >\n <Text bold={!isHotel} headline level={level === 0 ? 3 : 4} className={style.title}>\n {'\\u00A0'.repeat(level)}\n {title}\n </Text>\n </Pressable>\n );\n })}\n </ScrollView>\n\n {onSubmit && (\n <View className={style.footer}>\n <Button\n disabled={!value}\n className={[style.button, style.submit]}\n onPress={onSubmit}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {translate(L10N.ACTION_CLOSE)}\n </Button>\n </View>\n )}\n </View>\n );\n};\n\nPlaces.displayName = 'Mirai:Finder:Places';\n\nPlaces.propTypes = {\n autoColumn: PropTypes.bool,\n dataSource: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.arrayOf(PropTypes.string).isRequired,\n isHotel: PropTypes.bool,\n level: PropTypes.number,\n title: PropTypes.string.isRequired,\n value: PropTypes.number.isRequired,\n }),\n ),\n value: PropTypes.number,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Places };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Places.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Places","style","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Places","_ref","autoColumn","dataSource","value","onChange","onSubmit","others","device","useDevice","translate","useLocale","columns","setColumns","useState","useEffect","isMobile","calcColumns","undefined","testId","createElement","View","role","className","container","ScrollView","scrollIndicator","snap","tag","styles","scrollview","concat","map","item","arguments","length","index","isHotel","level","title","itemValue","Pressable","key","selected","onPress","Text","action","bold","repeat","footer","Button","disabled","button","submit","L10N","ACTION_NEXT","exports","displayName","propTypes","PropTypes","bool","arrayOf","shape","id","string","isRequired","number","func"],"sources":["../../../../../src/components/Finder/components/Places/Places.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Pressable, styles, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { calcColumns } from './helpers';\nimport { L10N } from './Places.l10n';\nimport * as style from './Places.module.css';\n\nconst Places = ({ autoColumn = true, dataSource = [], value, onChange = () => {}, onSubmit, ...others }) => {\n const device = useDevice();\n const { translate } = useLocale();\n\n const [columns, setColumns] = useState();\n\n useEffect(() => {\n const { isMobile } = device;\n\n if (!isMobile && autoColumn) setColumns(autoColumn ? calcColumns({ dataSource, device }) : undefined);\n }, [autoColumn, device, dataSource]);\n\n const { testId } = others;\n\n return (\n <View role=\"places\" className={style.container}>\n {/* <Text>Filter</Text> */}\n <ScrollView\n scrollIndicator\n snap\n tag=\"ul\"\n className={styles(style.scrollview, columns && style.columns, columns && style[`columns${columns}`])}\n testId={testId}\n >\n {dataSource.map((item = {}, index) => {\n const { isHotel, level, title, value: itemValue } = item;\n\n return (\n <Pressable\n key={index}\n tag=\"li\"\n className={styles(style.item, itemValue === value && style.selected)}\n onPress={() => onChange(item)}\n testId={testId ? `${testId}-item-${index}` : undefined}\n >\n <Text action={level !== 0} bold={!isHotel} className={style.title}>\n {'\\u00A0'.repeat(level)}\n {title}\n </Text>\n </Pressable>\n );\n })}\n </ScrollView>\n\n {onSubmit && (\n <View className={style.footer}>\n <Button\n disabled={!value}\n className={[style.button, style.submit]}\n onPress={onSubmit}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {translate(L10N.ACTION_NEXT)}\n </Button>\n </View>\n )}\n </View>\n );\n};\n\nPlaces.displayName = 'Mirai:Finder:Places';\n\nPlaces.propTypes = {\n autoColumn: PropTypes.bool,\n dataSource: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.arrayOf(PropTypes.string).isRequired,\n isHotel: PropTypes.bool,\n level: PropTypes.number,\n title: PropTypes.string.isRequired,\n value: PropTypes.number.isRequired,\n }),\n ),\n value: PropTypes.number,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Places };\n"],"mappings":"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"}
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.L10N = void 0;
7
7
  const L10N = exports.L10N = {
8
- ACTION_CLOSE: {
9
- id: 'common.action.close'
8
+ ACTION_NEXT: {
9
+ id: 'finder.action.next'
10
10
  }
11
11
  };
12
12
  //# sourceMappingURL=Places.l10n.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Places.l10n.js","names":["L10N","exports","ACTION_CLOSE","id"],"sources":["../../../../../src/components/Finder/components/Places/Places.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_CLOSE: { id: 'common.action.close' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,YAAY,EAAE;IAAEC,EAAE,EAAE;EAAsB;AAC5C,CAAC"}
1
+ {"version":3,"file":"Places.l10n.js","names":["L10N","exports","ACTION_NEXT","id"],"sources":["../../../../../src/components/Finder/components/Places/Places.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_NEXT: { id: 'finder.action.next' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,WAAW,EAAE;IAAEC,EAAE,EAAE;EAAqB;AAC1C,CAAC"}
@@ -1,9 +1,11 @@
1
1
  :root {
2
- --mirai-places-item-height: 36px;
3
- --mirai-places-item-selected: var(--mirai-ui-accent);
2
+ --mirai-places-item-height: 32px;
3
+ --mirai-places-item-width: 300px;
4
+ --mirai-places-item-background-selected: var(--mirai-ui-accent);
5
+ --mirai-places-item-color-selected: var(--mirai-ui-base);
6
+ /* */
4
7
  --mirai-places-padding: var(--mirai-ui-space-M);
5
- --mirai-places-scrollview-max-height: 80vh;
6
- --mirai-places-width: 300px;
8
+ --mirai-places-items-per-column: 18;
7
9
  }
8
10
 
9
11
  .footer {
@@ -16,20 +18,21 @@
16
18
  align-items: center;
17
19
  box-sizing: border-box;
18
20
  display: flex;
21
+ max-height: var(--mirai-places-item-height);
19
22
  min-height: var(--mirai-places-item-height);
20
- overflow: visible;
23
+ overflow: hidden;
21
24
  padding: 0 var(--mirai-places-padding);
22
25
  width: 100%;
23
26
  }
24
27
 
25
28
  .item.selected,
26
29
  .item:hover {
27
- background-color: var(--mirai-places-item-selected);
30
+ background-color: var(--mirai-places-item-background-selected);
28
31
  }
29
32
 
30
33
  .item.selected *,
31
34
  .item:hover * {
32
- color: var(--mirai-ui-base);
35
+ color: var(--mirai-places-item-color-selected);
33
36
  }
34
37
 
35
38
  .item .title {
@@ -52,32 +55,33 @@
52
55
 
53
56
  .scrollview {
54
57
  flex: 1;
58
+ max-height: 66svh;
55
59
  }
56
60
  }
57
61
 
58
62
  @media only screen and (min-width: 431px) {
59
63
  .container {
64
+ max-height: calc(
65
+ calc(var(--mirai-places-item-height) * calc(var(--mirai-places-items-per-column) + 1)) -
66
+ var(--mirai-places-padding)
67
+ );
60
68
  padding: calc(var(--mirai-places-padding) / 2) 0;
61
69
  }
62
70
 
63
- .scrollview {
64
- max-height: var(--mirai-places-scrollview-max-height);
65
- }
66
-
67
71
  .item {
68
- width: var(--mirai-places-width);
72
+ width: var(--mirai-places-item-width);
69
73
  }
70
74
 
71
75
  .columns {
72
76
  flex-wrap: wrap;
73
- max-width: calc(var(--mirai-places-width) * 3);
77
+ max-width: calc(var(--mirai-places-item-width) * 3);
74
78
  }
75
79
 
76
80
  .columns2 {
77
- width: calc(var(--mirai-places-width) * 2);
81
+ width: calc(var(--mirai-places-item-width) * 2);
78
82
  }
79
83
 
80
84
  .columns3 {
81
- width: calc(var(--mirai-places-width) * 3);
85
+ width: calc(var(--mirai-places-item-width) * 3);
82
86
  }
83
87
  }
@@ -11,56 +11,56 @@ exports[`component:<Places> inherit:className 1`] = `
11
11
  <li
12
12
  class="pressable"
13
13
  >
14
- <h3
15
- class="text bold headline-3"
14
+ <span
15
+ class="text bold paragraph"
16
16
  >
17
17
  Gran Canaria
18
- </h3>
18
+ </span>
19
19
  </li>
20
20
  <li
21
21
  class="pressable"
22
22
  >
23
- <h4
24
- class="text headline-4"
23
+ <span
24
+ class="text action"
25
25
  >
26
26
   Gloria Palace Amadores Thalasso & Hotel
27
- </h4>
27
+ </span>
28
28
  </li>
29
29
  <li
30
30
  class="pressable"
31
31
  >
32
- <h4
33
- class="text headline-4"
32
+ <span
33
+ class="text action"
34
34
  >
35
35
   Gloria Palace Royal Hotel & Spa **** sup
36
- </h4>
36
+ </span>
37
37
  </li>
38
38
  <li
39
39
  class="pressable"
40
40
  >
41
- <h4
42
- class="text headline-4"
41
+ <span
42
+ class="text action"
43
43
  >
44
44
   Gloria Palace San Agustín Thalasso & Hotel
45
- </h4>
45
+ </span>
46
46
  </li>
47
47
  <li
48
48
  class="pressable"
49
49
  >
50
- <h3
51
- class="text bold headline-3"
50
+ <span
51
+ class="text bold paragraph"
52
52
  >
53
53
  Lanzarote
54
- </h3>
54
+ </span>
55
55
  </li>
56
56
  <li
57
57
  class="pressable"
58
58
  >
59
- <h4
60
- class="text headline-4"
59
+ <span
60
+ class="text action"
61
61
  >
62
62
   Gloria Izaro Club Hotel
63
- </h4>
63
+ </span>
64
64
  </li>
65
65
  </ul>
66
66
  </div>
@@ -78,56 +78,56 @@ exports[`component:<Places> prop:autoColumn 1`] = `
78
78
  <li
79
79
  class="pressable"
80
80
  >
81
- <h3
82
- class="text bold headline-3"
81
+ <span
82
+ class="text bold paragraph"
83
83
  >
84
84
  Gran Canaria
85
- </h3>
85
+ </span>
86
86
  </li>
87
87
  <li
88
88
  class="pressable"
89
89
  >
90
- <h4
91
- class="text headline-4"
90
+ <span
91
+ class="text action"
92
92
  >
93
93
   Gloria Palace Amadores Thalasso & Hotel
94
- </h4>
94
+ </span>
95
95
  </li>
96
96
  <li
97
97
  class="pressable"
98
98
  >
99
- <h4
100
- class="text headline-4"
99
+ <span
100
+ class="text action"
101
101
  >
102
102
   Gloria Palace Royal Hotel & Spa **** sup
103
- </h4>
103
+ </span>
104
104
  </li>
105
105
  <li
106
106
  class="pressable"
107
107
  >
108
- <h4
109
- class="text headline-4"
108
+ <span
109
+ class="text action"
110
110
  >
111
111
   Gloria Palace San Agustín Thalasso & Hotel
112
- </h4>
112
+ </span>
113
113
  </li>
114
114
  <li
115
115
  class="pressable"
116
116
  >
117
- <h3
118
- class="text bold headline-3"
117
+ <span
118
+ class="text bold paragraph"
119
119
  >
120
120
  Lanzarote
121
- </h3>
121
+ </span>
122
122
  </li>
123
123
  <li
124
124
  class="pressable"
125
125
  >
126
- <h4
127
- class="text headline-4"
126
+ <span
127
+ class="text action"
128
128
  >
129
129
   Gloria Izaro Club Hotel
130
- </h4>
130
+ </span>
131
131
  </li>
132
132
  </ul>
133
133
  </div>
@@ -145,56 +145,56 @@ exports[`component:<Places> prop:value 1`] = `
145
145
  <li
146
146
  class="pressable"
147
147
  >
148
- <h3
149
- class="text bold headline-3"
148
+ <span
149
+ class="text bold paragraph"
150
150
  >
151
151
  Gran Canaria
152
- </h3>
152
+ </span>
153
153
  </li>
154
154
  <li
155
155
  class="pressable"
156
156
  >
157
- <h4
158
- class="text headline-4"
157
+ <span
158
+ class="text action"
159
159
  >
160
160
   Gloria Palace Amadores Thalasso & Hotel
161
- </h4>
161
+ </span>
162
162
  </li>
163
163
  <li
164
164
  class="pressable"
165
165
  >
166
- <h4
167
- class="text headline-4"
166
+ <span
167
+ class="text action"
168
168
  >
169
169
   Gloria Palace Royal Hotel & Spa **** sup
170
- </h4>
170
+ </span>
171
171
  </li>
172
172
  <li
173
173
  class="pressable"
174
174
  >
175
- <h4
176
- class="text headline-4"
175
+ <span
176
+ class="text action"
177
177
  >
178
178
   Gloria Palace San Agustín Thalasso & Hotel
179
- </h4>
179
+ </span>
180
180
  </li>
181
181
  <li
182
182
  class="pressable"
183
183
  >
184
- <h3
185
- class="text bold headline-3"
184
+ <span
185
+ class="text bold paragraph"
186
186
  >
187
187
  Lanzarote
188
- </h3>
188
+ </span>
189
189
  </li>
190
190
  <li
191
191
  class="pressable"
192
192
  >
193
- <h4
194
- class="text headline-4"
193
+ <span
194
+ class="text action"
195
195
  >
196
196
   Gloria Izaro Club Hotel
197
- </h4>
197
+ </span>
198
198
  </li>
199
199
  </ul>
200
200
  </div>
@@ -226,61 +226,61 @@ exports[`component:<Places> testID 1`] = `
226
226
  class="pressable"
227
227
  data-testid="mirai-item-0"
228
228
  >
229
- <h3
230
- class="text bold headline-3"
229
+ <span
230
+ class="text bold paragraph"
231
231
  >
232
232
  Gran Canaria
233
- </h3>
233
+ </span>
234
234
  </li>
235
235
  <li
236
236
  class="pressable"
237
237
  data-testid="mirai-item-1"
238
238
  >
239
- <h4
240
- class="text headline-4"
239
+ <span
240
+ class="text action"
241
241
  >
242
242
   Gloria Palace Amadores Thalasso & Hotel
243
- </h4>
243
+ </span>
244
244
  </li>
245
245
  <li
246
246
  class="pressable"
247
247
  data-testid="mirai-item-2"
248
248
  >
249
- <h4
250
- class="text headline-4"
249
+ <span
250
+ class="text action"
251
251
  >
252
252
   Gloria Palace Royal Hotel & Spa **** sup
253
- </h4>
253
+ </span>
254
254
  </li>
255
255
  <li
256
256
  class="pressable"
257
257
  data-testid="mirai-item-3"
258
258
  >
259
- <h4
260
- class="text headline-4"
259
+ <span
260
+ class="text action"
261
261
  >
262
262
   Gloria Palace San Agustín Thalasso & Hotel
263
- </h4>
263
+ </span>
264
264
  </li>
265
265
  <li
266
266
  class="pressable"
267
267
  data-testid="mirai-item-4"
268
268
  >
269
- <h3
270
- class="text bold headline-3"
269
+ <span
270
+ class="text bold paragraph"
271
271
  >
272
272
  Lanzarote
273
- </h3>
273
+ </span>
274
274
  </li>
275
275
  <li
276
276
  class="pressable"
277
277
  data-testid="mirai-item-5"
278
278
  >
279
- <h4
280
- class="text headline-4"
279
+ <span
280
+ class="text action"
281
281
  >
282
282
   Gloria Izaro Club Hotel
283
- </h4>
283
+ </span>
284
284
  </li>
285
285
  </ul>
286
286
  </div>
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.calcColumns = void 0;
7
7
  var _ui = require("@mirai/ui");
8
- const ITEM_HEIGHT = '36px';
8
+ const ITEMS_PER_COLUMN = 18;
9
9
  const ITEM_WIDTH = '300px';
10
10
  const MAX_COLUMNS = 3;
11
11
  const THEME_KEY = '--mirai-places';
@@ -20,19 +20,13 @@ const calcColumns = function () {
20
20
  } = [],
21
21
  device: {
22
22
  width: deviceWidth
23
- } = {},
24
- ref: {
25
- current: {
26
- clientHeight: containerHeight
27
- } = {}
28
23
  } = {}
29
24
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
30
25
  const {
31
- ItemHeight: itemHeight = ITEM_HEIGHT,
32
- Width: itemWidth = ITEM_WIDTH
26
+ ItemsPerColumn: itemsPerColumn = ITEMS_PER_COLUMN,
27
+ ItemWidth: itemWidth = ITEM_WIDTH
33
28
  } = _ui.Theme.get(THEME_KEY);
34
- const maxItems = Math.floor(containerHeight / sanitizePx(itemHeight));
35
- let columns = items > maxItems ? Math.floor(items / maxItems) + 1 : undefined;
29
+ let columns = items > itemsPerColumn ? Math.floor(items / itemsPerColumn + 1) : undefined;
36
30
  if (columns * sanitizePx(itemWidth) > deviceWidth * 0.8) columns = Math.floor(deviceWidth / sanitizePx(itemWidth));
37
31
  if (columns >= MAX_COLUMNS) columns = MAX_COLUMNS;
38
32
  return columns;