@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.
- package/build/components/Finder/Finder.compact.js +1 -1
- package/build/components/Finder/Finder.compact.js.map +1 -1
- package/build/components/Finder/Finder.js +10 -3
- package/build/components/Finder/Finder.js.map +1 -1
- package/build/components/Finder/__tests__/__snapshots__/Finder.test.js.snap +3478 -208
- package/build/components/Finder/components/Calendar/Calendar.js +1 -1
- package/build/components/Finder/components/Calendar/Calendar.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.l10n.js +2 -2
- package/build/components/Finder/components/Calendar/Calendar.l10n.js.map +1 -1
- package/build/components/Finder/components/Places/Places.js +4 -8
- package/build/components/Finder/components/Places/Places.js.map +1 -1
- package/build/components/Finder/components/Places/Places.l10n.js +2 -2
- package/build/components/Finder/components/Places/Places.l10n.js.map +1 -1
- package/build/components/Finder/components/Places/Places.module.css +19 -15
- package/build/components/Finder/components/Places/__tests__/__snapshots__/Places.test.js.snap +72 -72
- package/build/components/Finder/components/Places/helpers/calcColumns.js +4 -10
- package/build/components/Finder/components/Places/helpers/calcColumns.js.map +1 -1
- package/build/components/Rates/Rates.js +9 -3
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/components/Item/Item.js +14 -1
- package/build/components/Rates/components/Item/Item.js.map +1 -1
- package/build/components/Rates/components/Item/Item.l10n.js +6 -0
- package/build/components/Rates/components/Item/Item.l10n.js.map +1 -1
- package/build/components/Rates/components/Item/Item.module.css +4 -0
- package/build/components/Rates/components/Item/components/Discount/Discount.js +2 -2
- package/build/components/Rates/components/Item/components/Discount/Discount.js.map +1 -1
- package/build/components/Rates/components/Item/components/Discount/Discount.module.css +0 -7
- package/build/components/__shared__/Field/Field.module.css +4 -0
- package/build/components/__shared__/FieldPromocode/FieldPromocode.module.css +6 -1
- package/build/services/Rates/get.js +2 -2
- package/build/services/Rates/get.js.map +1 -1
- 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.
|
|
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
|
-
|
|
9
|
-
id: '
|
|
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","
|
|
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.
|
|
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","
|
|
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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Places.l10n.js","names":["L10N","exports","
|
|
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:
|
|
3
|
-
--mirai-places-item-
|
|
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-
|
|
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:
|
|
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-
|
|
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
|
}
|
package/build/components/Finder/components/Places/__tests__/__snapshots__/Places.test.js.snap
CHANGED
|
@@ -11,56 +11,56 @@ exports[`component:<Places> inherit:className 1`] = `
|
|
|
11
11
|
<li
|
|
12
12
|
class="pressable"
|
|
13
13
|
>
|
|
14
|
-
<
|
|
15
|
-
class="text bold
|
|
14
|
+
<span
|
|
15
|
+
class="text bold paragraph"
|
|
16
16
|
>
|
|
17
17
|
Gran Canaria
|
|
18
|
-
</
|
|
18
|
+
</span>
|
|
19
19
|
</li>
|
|
20
20
|
<li
|
|
21
21
|
class="pressable"
|
|
22
22
|
>
|
|
23
|
-
<
|
|
24
|
-
class="text
|
|
23
|
+
<span
|
|
24
|
+
class="text action"
|
|
25
25
|
>
|
|
26
26
|
Gloria Palace Amadores Thalasso & Hotel
|
|
27
|
-
</
|
|
27
|
+
</span>
|
|
28
28
|
</li>
|
|
29
29
|
<li
|
|
30
30
|
class="pressable"
|
|
31
31
|
>
|
|
32
|
-
<
|
|
33
|
-
class="text
|
|
32
|
+
<span
|
|
33
|
+
class="text action"
|
|
34
34
|
>
|
|
35
35
|
Gloria Palace Royal Hotel & Spa **** sup
|
|
36
|
-
</
|
|
36
|
+
</span>
|
|
37
37
|
</li>
|
|
38
38
|
<li
|
|
39
39
|
class="pressable"
|
|
40
40
|
>
|
|
41
|
-
<
|
|
42
|
-
class="text
|
|
41
|
+
<span
|
|
42
|
+
class="text action"
|
|
43
43
|
>
|
|
44
44
|
Gloria Palace San Agustín Thalasso & Hotel
|
|
45
|
-
</
|
|
45
|
+
</span>
|
|
46
46
|
</li>
|
|
47
47
|
<li
|
|
48
48
|
class="pressable"
|
|
49
49
|
>
|
|
50
|
-
<
|
|
51
|
-
class="text bold
|
|
50
|
+
<span
|
|
51
|
+
class="text bold paragraph"
|
|
52
52
|
>
|
|
53
53
|
Lanzarote
|
|
54
|
-
</
|
|
54
|
+
</span>
|
|
55
55
|
</li>
|
|
56
56
|
<li
|
|
57
57
|
class="pressable"
|
|
58
58
|
>
|
|
59
|
-
<
|
|
60
|
-
class="text
|
|
59
|
+
<span
|
|
60
|
+
class="text action"
|
|
61
61
|
>
|
|
62
62
|
Gloria Izaro Club Hotel
|
|
63
|
-
</
|
|
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
|
-
<
|
|
82
|
-
class="text bold
|
|
81
|
+
<span
|
|
82
|
+
class="text bold paragraph"
|
|
83
83
|
>
|
|
84
84
|
Gran Canaria
|
|
85
|
-
</
|
|
85
|
+
</span>
|
|
86
86
|
</li>
|
|
87
87
|
<li
|
|
88
88
|
class="pressable"
|
|
89
89
|
>
|
|
90
|
-
<
|
|
91
|
-
class="text
|
|
90
|
+
<span
|
|
91
|
+
class="text action"
|
|
92
92
|
>
|
|
93
93
|
Gloria Palace Amadores Thalasso & Hotel
|
|
94
|
-
</
|
|
94
|
+
</span>
|
|
95
95
|
</li>
|
|
96
96
|
<li
|
|
97
97
|
class="pressable"
|
|
98
98
|
>
|
|
99
|
-
<
|
|
100
|
-
class="text
|
|
99
|
+
<span
|
|
100
|
+
class="text action"
|
|
101
101
|
>
|
|
102
102
|
Gloria Palace Royal Hotel & Spa **** sup
|
|
103
|
-
</
|
|
103
|
+
</span>
|
|
104
104
|
</li>
|
|
105
105
|
<li
|
|
106
106
|
class="pressable"
|
|
107
107
|
>
|
|
108
|
-
<
|
|
109
|
-
class="text
|
|
108
|
+
<span
|
|
109
|
+
class="text action"
|
|
110
110
|
>
|
|
111
111
|
Gloria Palace San Agustín Thalasso & Hotel
|
|
112
|
-
</
|
|
112
|
+
</span>
|
|
113
113
|
</li>
|
|
114
114
|
<li
|
|
115
115
|
class="pressable"
|
|
116
116
|
>
|
|
117
|
-
<
|
|
118
|
-
class="text bold
|
|
117
|
+
<span
|
|
118
|
+
class="text bold paragraph"
|
|
119
119
|
>
|
|
120
120
|
Lanzarote
|
|
121
|
-
</
|
|
121
|
+
</span>
|
|
122
122
|
</li>
|
|
123
123
|
<li
|
|
124
124
|
class="pressable"
|
|
125
125
|
>
|
|
126
|
-
<
|
|
127
|
-
class="text
|
|
126
|
+
<span
|
|
127
|
+
class="text action"
|
|
128
128
|
>
|
|
129
129
|
Gloria Izaro Club Hotel
|
|
130
|
-
</
|
|
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
|
-
<
|
|
149
|
-
class="text bold
|
|
148
|
+
<span
|
|
149
|
+
class="text bold paragraph"
|
|
150
150
|
>
|
|
151
151
|
Gran Canaria
|
|
152
|
-
</
|
|
152
|
+
</span>
|
|
153
153
|
</li>
|
|
154
154
|
<li
|
|
155
155
|
class="pressable"
|
|
156
156
|
>
|
|
157
|
-
<
|
|
158
|
-
class="text
|
|
157
|
+
<span
|
|
158
|
+
class="text action"
|
|
159
159
|
>
|
|
160
160
|
Gloria Palace Amadores Thalasso & Hotel
|
|
161
|
-
</
|
|
161
|
+
</span>
|
|
162
162
|
</li>
|
|
163
163
|
<li
|
|
164
164
|
class="pressable"
|
|
165
165
|
>
|
|
166
|
-
<
|
|
167
|
-
class="text
|
|
166
|
+
<span
|
|
167
|
+
class="text action"
|
|
168
168
|
>
|
|
169
169
|
Gloria Palace Royal Hotel & Spa **** sup
|
|
170
|
-
</
|
|
170
|
+
</span>
|
|
171
171
|
</li>
|
|
172
172
|
<li
|
|
173
173
|
class="pressable"
|
|
174
174
|
>
|
|
175
|
-
<
|
|
176
|
-
class="text
|
|
175
|
+
<span
|
|
176
|
+
class="text action"
|
|
177
177
|
>
|
|
178
178
|
Gloria Palace San Agustín Thalasso & Hotel
|
|
179
|
-
</
|
|
179
|
+
</span>
|
|
180
180
|
</li>
|
|
181
181
|
<li
|
|
182
182
|
class="pressable"
|
|
183
183
|
>
|
|
184
|
-
<
|
|
185
|
-
class="text bold
|
|
184
|
+
<span
|
|
185
|
+
class="text bold paragraph"
|
|
186
186
|
>
|
|
187
187
|
Lanzarote
|
|
188
|
-
</
|
|
188
|
+
</span>
|
|
189
189
|
</li>
|
|
190
190
|
<li
|
|
191
191
|
class="pressable"
|
|
192
192
|
>
|
|
193
|
-
<
|
|
194
|
-
class="text
|
|
193
|
+
<span
|
|
194
|
+
class="text action"
|
|
195
195
|
>
|
|
196
196
|
Gloria Izaro Club Hotel
|
|
197
|
-
</
|
|
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
|
-
<
|
|
230
|
-
class="text bold
|
|
229
|
+
<span
|
|
230
|
+
class="text bold paragraph"
|
|
231
231
|
>
|
|
232
232
|
Gran Canaria
|
|
233
|
-
</
|
|
233
|
+
</span>
|
|
234
234
|
</li>
|
|
235
235
|
<li
|
|
236
236
|
class="pressable"
|
|
237
237
|
data-testid="mirai-item-1"
|
|
238
238
|
>
|
|
239
|
-
<
|
|
240
|
-
class="text
|
|
239
|
+
<span
|
|
240
|
+
class="text action"
|
|
241
241
|
>
|
|
242
242
|
Gloria Palace Amadores Thalasso & Hotel
|
|
243
|
-
</
|
|
243
|
+
</span>
|
|
244
244
|
</li>
|
|
245
245
|
<li
|
|
246
246
|
class="pressable"
|
|
247
247
|
data-testid="mirai-item-2"
|
|
248
248
|
>
|
|
249
|
-
<
|
|
250
|
-
class="text
|
|
249
|
+
<span
|
|
250
|
+
class="text action"
|
|
251
251
|
>
|
|
252
252
|
Gloria Palace Royal Hotel & Spa **** sup
|
|
253
|
-
</
|
|
253
|
+
</span>
|
|
254
254
|
</li>
|
|
255
255
|
<li
|
|
256
256
|
class="pressable"
|
|
257
257
|
data-testid="mirai-item-3"
|
|
258
258
|
>
|
|
259
|
-
<
|
|
260
|
-
class="text
|
|
259
|
+
<span
|
|
260
|
+
class="text action"
|
|
261
261
|
>
|
|
262
262
|
Gloria Palace San Agustín Thalasso & Hotel
|
|
263
|
-
</
|
|
263
|
+
</span>
|
|
264
264
|
</li>
|
|
265
265
|
<li
|
|
266
266
|
class="pressable"
|
|
267
267
|
data-testid="mirai-item-4"
|
|
268
268
|
>
|
|
269
|
-
<
|
|
270
|
-
class="text bold
|
|
269
|
+
<span
|
|
270
|
+
class="text bold paragraph"
|
|
271
271
|
>
|
|
272
272
|
Lanzarote
|
|
273
|
-
</
|
|
273
|
+
</span>
|
|
274
274
|
</li>
|
|
275
275
|
<li
|
|
276
276
|
class="pressable"
|
|
277
277
|
data-testid="mirai-item-5"
|
|
278
278
|
>
|
|
279
|
-
<
|
|
280
|
-
class="text
|
|
279
|
+
<span
|
|
280
|
+
class="text action"
|
|
281
281
|
>
|
|
282
282
|
Gloria Izaro Club Hotel
|
|
283
|
-
</
|
|
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
|
|
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
|
-
|
|
32
|
-
|
|
26
|
+
ItemsPerColumn: itemsPerColumn = ITEMS_PER_COLUMN,
|
|
27
|
+
ItemWidth: itemWidth = ITEM_WIDTH
|
|
33
28
|
} = _ui.Theme.get(THEME_KEY);
|
|
34
|
-
|
|
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;
|