@mirai/core 0.3.284 → 0.3.286

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.
@@ -15,6 +15,7 @@ var _Finder2 = require("./Finder.constants");
15
15
  var _Finder3 = require("./Finder.l10n");
16
16
  var style = _interopRequireWildcard(require("./Finder.module.css"));
17
17
  var _helpers = require("./helpers");
18
+ var _getAvailableWidth = require("./helpers/getAvailableWidth");
18
19
  var _helpers2 = require("../../helpers");
19
20
  var _prepareRoom = require("../../helpers/prepareRoom");
20
21
  var _shared__ = require("../__shared__");
@@ -40,7 +41,8 @@ const Finder = _ref => {
40
41
  ...others
41
42
  } = _ref;
42
43
  const {
43
- isMobile
44
+ isMobile,
45
+ width: deviceWidth
44
46
  } = (0, _ui.useDevice)();
45
47
  const {
46
48
  dateFormat,
@@ -65,6 +67,7 @@ const Finder = _ref => {
65
67
  const [unavailability, setUnavailability] = (0, _react.useState)();
66
68
  const [value, setValue] = (0, _react.useState)((0, _helpers.parseValue)(storeFinder));
67
69
  const [visited, setVisited] = (0, _react.useState)({});
70
+ const [width, setWidth] = (0, _react.useState)();
68
71
  (0, _react.useEffect)(() => {
69
72
  if (!(storeFinder !== null && storeFinder !== void 0 && storeFinder.occupation)) set({
70
73
  finder: {
@@ -84,6 +87,10 @@ const Finder = _ref => {
84
87
  return () => document.removeEventListener('click', handleClickOutside, true);
85
88
  // eslint-disable-next-line react-hooks/exhaustive-deps
86
89
  }, []);
90
+ (0, _react.useEffect)(() => {
91
+ if (layout === 'column' && ref.current) setWidth((0, _getAvailableWidth.getAvailableWidth)(ref.current));
92
+ // eslint-disable-next-line react-hooks/exhaustive-deps
93
+ }, [deviceWidth]);
87
94
  (0, _react.useEffect)(() => {
88
95
  setUnavailability({
89
96
  disabledDates: []
@@ -182,32 +189,41 @@ const Finder = _ref => {
182
189
  if (focus === _Finder2.VIEW.PLACE && !visited.calendar && calendar.length !== 2) setFocus(_Finder2.VIEW.CALENDAR);else if (!compacted || assisted && [_Finder2.VIEW.CALENDAR, _Finder2.VIEW.PLACE].includes(focus)) setFocus(undefined);
183
190
  };
184
191
  const {
185
- place = {},
186
192
  calendar = [],
187
193
  occupation,
194
+ place = {},
188
195
  promocode
189
196
  } = value;
190
197
  const {
191
- testId
192
- } = others;
198
+ id: ids = [],
199
+ isHotel
200
+ } = place;
193
201
  const dataSource = (0, _helpers.getDataSource)({
194
202
  type,
195
203
  ...store
196
204
  });
197
- const {
198
- place: {
199
- id: ids = [],
200
- isHotel
201
- } = {}
202
- } = value || {};
203
205
  const {
204
206
  hotel: {
205
207
  id: idHotel
206
208
  } = {}
207
209
  } = store;
208
210
  const id = type !== HOTEL ? isHotel && ids.length === 1 ? ids[0] : undefined : idHotel;
209
- const isCompacted = compacted && isMobile || compacted && !isMobile && !focus;
210
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isCompacted && /*#__PURE__*/_react.default.createElement(_Finder.Compact, {
211
+ const is = {
212
+ compacted: compacted && isMobile || compacted && !isMobile && !focus,
213
+ column: !isMobile && layout === 'column'
214
+ };
215
+ const fieldProps = {
216
+ compacted: is.compacted,
217
+ className: style.field,
218
+ ...(is.column ? {
219
+ centered: true,
220
+ style: width ? {
221
+ maxWidth: width,
222
+ width
223
+ } : undefined
224
+ } : undefined)
225
+ };
226
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, is.compacted && /*#__PURE__*/_react.default.createElement(_Finder.Compact, {
211
227
  value,
212
228
  dataSource,
213
229
  onExpand: setFocus,
@@ -220,33 +236,27 @@ const Finder = _ref => {
220
236
  className: (0, _ui.styles)(style.finder, layout && style[layout], others.className)
221
237
  }, dataSource.places && /*#__PURE__*/_react.default.createElement(_shared__.Field, _extends({}, _Finder2.FIELD.PLACE, {
222
238
  caption: (0, _helpers.getPlaceCaption)(place.value, dataSource.places.options),
223
- compacted: isCompacted,
224
239
  label: translate(_Finder3.L10N.LABEL_WHERE),
225
240
  placeholder: dataSource.places.placeholder || translate(_Finder3.L10N.LABEL_WHERE_PLACEHOLDER),
226
241
  visible: focus === _Finder2.VIEW.PLACE,
227
- onPress: () => setFocus(focus !== _Finder2.VIEW.PLACE ? _Finder2.VIEW.PLACE : undefined),
228
- className: {
229
- backgroundColor: 'red',
230
- maxWidth: 128
231
- }
232
- }), /*#__PURE__*/_react.default.createElement(_components.Places, {
242
+ onPress: () => setFocus(focus !== _Finder2.VIEW.PLACE ? _Finder2.VIEW.PLACE : undefined)
243
+ }, fieldProps), /*#__PURE__*/_react.default.createElement(_components.Places, {
233
244
  autoColumn: focus === _Finder2.VIEW.PLACE,
234
245
  dataSource: dataSource.places.options,
235
246
  text: compacted ? text : undefined,
236
247
  value: place.value,
237
248
  onChange: handlePlaceChange,
238
249
  onSubmit: isMobile ? compacted ? handleSubmit : assisted ? assistant : undefined : undefined,
239
- testId: testId ? "".concat(testId, "-places") : undefined
250
+ testId: others.testId ? "".concat(others.testId, "-places") : undefined
240
251
  })), /*#__PURE__*/_react.default.createElement(_shared__.Field, _extends({}, _Finder2.FIELD.CALENDAR, {
241
252
  caption: calendar.length ? (0, _helpers3.getCalendarCaption)(calendar, translate, dateFormat) : undefined,
242
253
  centered: type !== HOTEL,
243
- compacted: isCompacted,
244
254
  label: translate(_Finder3.L10N.LABEL_WHEN),
245
255
  placeholder: (0, _helpers3.getCalendarCaption)(undefined, translate, dateFormat),
246
256
  visible: focus === _Finder2.VIEW.CALENDAR,
247
257
  onPosition: setCalendarPosition,
248
258
  onPress: () => setFocus(focus !== _Finder2.VIEW.CALENDAR ? _Finder2.VIEW.CALENDAR : undefined)
249
- }), /*#__PURE__*/_react.default.createElement(_components.Calendar, _extends({}, (0, _helpers.parseCalendarProps)(dataSource.calendar, id, occupation, type, unavailability, dataSource.variants), {
259
+ }, fieldProps), /*#__PURE__*/_react.default.createElement(_components.Calendar, _extends({}, (0, _helpers.parseCalendarProps)(dataSource.calendar, id, occupation, type, unavailability, dataSource.variants), {
250
260
  id: id,
251
261
  currency: currency,
252
262
  locale: locale,
@@ -267,9 +277,8 @@ const Finder = _ref => {
267
277
  }),
268
278
  onSubmit: isMobile ? compacted ? handleSubmit : assisted ? assistant : undefined : undefined,
269
279
  className: (0, _ui.styles)((calendarPosition === null || calendarPosition === void 0 ? void 0 : calendarPosition.top) && style.calendarOnTop),
270
- testId: testId ? "".concat(testId, "-calendar") : undefined
271
- }))), /*#__PURE__*/_react.default.createElement(_shared__.FieldOccupation, {
272
- compacted: isCompacted,
280
+ testId: others.testId ? "".concat(others.testId, "-calendar") : undefined
281
+ }))), /*#__PURE__*/_react.default.createElement(_shared__.FieldOccupation, _extends({
273
282
  dataSource: (0, _helpers.getOccupationDataSource)({
274
283
  ...dataSource,
275
284
  places: (_dataSource$places = dataSource.places) === null || _dataSource$places === void 0 ? void 0 : _dataSource$places.options,
@@ -294,9 +303,8 @@ const Finder = _ref => {
294
303
  ...error,
295
304
  occupation: undefined
296
305
  }),
297
- testId: testId ? "".concat(testId, "-occupation") : undefined
298
- }), /*#__PURE__*/_react.default.createElement(_shared__.FieldPromocode, {
299
- compacted: isCompacted,
306
+ testId: others.testId ? "".concat(others.testId, "-occupation") : undefined
307
+ }, fieldProps)), /*#__PURE__*/_react.default.createElement(_shared__.FieldPromocode, _extends({
300
308
  value: promocode,
301
309
  visible: focus === _Finder2.VIEW.PROMOCODE,
302
310
  onChange: (promocode, event) => handleChange(_Finder2.VIEW.PROMOCODE, promocode, event),
@@ -304,13 +312,13 @@ const Finder = _ref => {
304
312
  onLeave: !compacted ? () => setFocus(undefined) : undefined,
305
313
  onPress: isMobile && compacted ? () => setFocus(focus !== _Finder2.VIEW.PROMOCODE ? _Finder2.VIEW.PROMOCODE : undefined) : undefined,
306
314
  onSubmit: isMobile && compacted ? handleSubmit : undefined,
307
- testId: testId ? "".concat(testId, "-promocode") : undefined
308
- }), !isCompacted && /*#__PURE__*/_react.default.createElement(_ui.Button, {
315
+ testId: others.testId ? "".concat(others.testId, "-promocode") : undefined
316
+ }, fieldProps)), !is.compacted && /*#__PURE__*/_react.default.createElement(_ui.Button, {
309
317
  large: true,
310
318
  wide: isMobile,
311
319
  onPress: handleSubmit,
312
320
  className: style.button,
313
- testId: testId ? "".concat(testId, "-submit") : undefined
321
+ testId: others.testId ? "".concat(others.testId, "-submit") : undefined
314
322
  }, text || translate(_Finder3.L10N.ACTION_SEARCH))));
315
323
  };
316
324
  exports.Finder = Finder;
@@ -1 +1 @@
1
- {"version":3,"file":"Finder.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Finder","_Finder2","_Finder3","style","_helpers","_helpers2","_prepareRoom","_shared__","_Occupation","_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","HOTEL","TYPE","memoizedScrollY","Finder","_ref","_dataSource$places","assisted","compacted","layout","text","onChange","onSubmit","others","isMobile","useDevice","dateFormat","translate","useLocale","ref","useRef","value","currency","propCurrency","finder","storeFinder","forwarder","locale","type","store","useStore","calendarPosition","setCalendarPosition","useState","setCurrency","error","setError","focus","setFocus","unavailability","setUnavailability","setValue","parseValue","visited","setVisited","useEffect","occupation","prepareRoom","DATASOURCE","handleClickOutside","_ref$current","undefined","current","contains","document","addEventListener","removeEventListener","disabledDates","place","callback","calendar","handleSubmit","nextValue","Event","subscribe","EVENT","FINDER","unsubscribe","handleScroll","scrollY","window","GAP_SCROLL","JSON","stringify","concat","handleChange","field","fieldValue","next","handlePlaceChange","event","_fetchUrlParams","VIEW","PLACE","isHotel","fetchUrlParams","location","search","fetchCurrency","id","assistant","firstError","keys","filter","forwarderUrl","getForwarderUrl","href","CALENDAR","includes","promocode","testId","dataSource","getDataSource","ids","hotel","idHotel","isCompacted","createElement","Fragment","Compact","onExpand","View","role","row","className","styles","places","Field","FIELD","caption","getPlaceCaption","options","label","L10N","LABEL_WHERE","placeholder","LABEL_WHERE_PLACEHOLDER","visible","onPress","backgroundColor","maxWidth","Places","autoColumn","getCalendarCaption","centered","LABEL_WHEN","onPosition","Calendar","parseCalendarProps","variants","onError","onValid","top","calendarOnTop","FieldOccupation","getOccupationDataSource","hotels","getHotels","placesSource","maxRooms","OCCUPATION","FieldPromocode","PROMOCODE","onEnter","onLeave","Button","large","wide","button","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","bool","oneOf","string","func"],"sources":["../../../src/components/Finder/Finder.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { Calendar, Places } from './components';\nimport { Compact } from './Finder.compact';\nimport { FIELD, GAP_SCROLL, TYPE, VIEW } from './Finder.constants';\nimport { L10N } from './Finder.l10n';\nimport * as style from './Finder.module.css';\nimport {\n getDataSource,\n getForwarderUrl,\n getHotels,\n getOccupationDataSource,\n getPlaceCaption,\n parseCalendarProps,\n parseValue,\n} from './helpers';\nimport { fetchCurrency, fetchUrlParams } from '../../helpers';\nimport { prepareRoom } from '../../helpers/prepareRoom';\nimport { Field, FieldOccupation, FieldPromocode } from '../__shared__';\nimport { DATASOURCE } from '../__shared__/Occupation/Occupation.constants';\nimport { getCalendarCaption } from '../helpers';\nimport { EVENT } from '../helpers';\n\nconst { HOTEL } = TYPE;\nlet memoizedScrollY = 0;\n\nconst Finder = ({ assisted = true, compacted = false, layout, text, onChange = () => {}, onSubmit, ...others }) => {\n const { isMobile } = useDevice();\n const { dateFormat, translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: { currency: propCurrency, finder: storeFinder, forwarder, locale, type = HOTEL, ...store },\n } = useStore();\n\n const [calendarPosition, setCalendarPosition] = useState();\n const [currency, setCurrency] = useState();\n const [error, setError] = useState({});\n const [focus, setFocus] = useState();\n const [unavailability, setUnavailability] = useState();\n const [value, setValue] = useState(parseValue(storeFinder));\n const [visited, setVisited] = useState({});\n\n useEffect(() => {\n if (!storeFinder?.occupation) set({ finder: { ...storeFinder, occupation: [prepareRoom(DATASOURCE)] } });\n if (isMobile) return;\n\n const handleClickOutside = ({ target } = {}) => !ref.current?.contains(target) && setFocus(undefined);\n document.addEventListener('click', handleClickOutside, true);\n\n return () => document.removeEventListener('click', handleClickOutside, true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n setUnavailability({ disabledDates: [] });\n }, [value?.occupation, value?.place]);\n\n useEffect(() => {\n const callback = ({ calendar, finder, focus } = {}) => {\n if (finder) return handleSubmit({ nextValue: finder });\n\n setUnavailability(calendar);\n if (focus) setFocus(focus);\n };\n\n Event.subscribe(EVENT.FINDER, callback);\n return () => Event.unsubscribe(EVENT.FINDER, callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // ! TODO: Why this one? Is not responsibility of <Finder> change the currency when prop changes.\n useEffect(() => setCurrency(propCurrency), [propCurrency]);\n\n useEffect(() => {\n if (!compacted) return;\n\n const handleScroll = () => {\n const { scrollY } = window;\n if (scrollY > memoizedScrollY + GAP_SCROLL || scrollY < memoizedScrollY - GAP_SCROLL) {\n memoizedScrollY = scrollY;\n setFocus(undefined);\n }\n };\n window.addEventListener('scroll', handleScroll);\n\n return () => window.removeEventListener('scroll', handleScroll);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [compacted]);\n\n useEffect(\n () => JSON.stringify(value) !== JSON.stringify(parseValue(storeFinder)) && setValue(parseValue(storeFinder)),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [storeFinder],\n );\n\n useEffect(() => {\n focus && setVisited({ ...visited, [`${focus}`]: true });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [focus]);\n\n const handleChange = (field, fieldValue) => {\n const next = { ...value, [field]: fieldValue };\n\n setValue(next);\n onChange(next, field, fieldValue);\n };\n\n const handlePlaceChange = async (place, event) => {\n handleChange(VIEW.PLACE, place, event);\n if (place.isHotel && !fetchUrlParams(window.location.search)?.currency) {\n // ! TODO: Same here, this should be responsibility of <Core>...\n setCurrency(await fetchCurrency(place.id[0]));\n }\n assisted && assistant();\n };\n\n const handleSubmit = ({ nextValue = value } = {}) => {\n const [firstError] = Object.keys(error).filter((key) => !!error[key]);\n if (firstError) return setFocus(firstError);\n\n setFocus(undefined);\n set({ finder: nextValue });\n const forwarderUrl = getForwarderUrl({ ...nextValue, currency, forwarder, locale, store, type });\n\n if (onSubmit) onSubmit({ ...nextValue, forwarderUrl });\n else window.location.href = forwarderUrl;\n };\n\n const assistant = () => {\n if (!assisted) return setFocus(undefined);\n\n const { calendar = [] } = value;\n if (focus === VIEW.PLACE && !visited.calendar && calendar.length !== 2) setFocus(VIEW.CALENDAR);\n else if (!compacted || (assisted && [VIEW.CALENDAR, VIEW.PLACE].includes(focus))) setFocus(undefined);\n };\n\n const { place = {}, calendar = [], occupation, promocode } = value;\n const { testId } = others;\n const dataSource = getDataSource({ type, ...store });\n const { place: { id: ids = [], isHotel } = {} } = value || {};\n const { hotel: { id: idHotel } = {} } = store;\n const id = type !== HOTEL ? (isHotel && ids.length === 1 ? ids[0] : undefined) : idHotel;\n const isCompacted = (compacted && isMobile) || (compacted && !isMobile && !focus);\n\n return (\n <>\n {isCompacted && <Compact {...{ value, dataSource }} onExpand={setFocus} onSubmit={handleSubmit} />}\n <View\n role=\"finder\"\n ref={ref}\n row={!isMobile}\n testId={others.testId}\n className={styles(style.finder, layout && style[layout], others.className)}\n >\n {dataSource.places && (\n <Field\n {...FIELD.PLACE}\n caption={getPlaceCaption(place.value, dataSource.places.options)}\n compacted={isCompacted}\n label={translate(L10N.LABEL_WHERE)}\n placeholder={dataSource.places.placeholder || translate(L10N.LABEL_WHERE_PLACEHOLDER)}\n visible={focus === VIEW.PLACE}\n onPress={() => setFocus(focus !== VIEW.PLACE ? VIEW.PLACE : undefined)}\n className={{ backgroundColor: 'red', maxWidth: 128 }}\n >\n <Places\n autoColumn={focus === VIEW.PLACE}\n dataSource={dataSource.places.options}\n text={compacted ? text : undefined}\n value={place.value}\n onChange={handlePlaceChange}\n onSubmit={isMobile ? (compacted ? handleSubmit : assisted ? assistant : undefined) : undefined}\n testId={testId ? `${testId}-places` : undefined}\n />\n </Field>\n )}\n\n <Field\n {...FIELD.CALENDAR}\n caption={calendar.length ? getCalendarCaption(calendar, translate, dateFormat) : undefined}\n centered={type !== HOTEL}\n compacted={isCompacted}\n label={translate(L10N.LABEL_WHEN)}\n placeholder={getCalendarCaption(undefined, translate, dateFormat)}\n visible={focus === VIEW.CALENDAR}\n onPosition={setCalendarPosition}\n onPress={() => setFocus(focus !== VIEW.CALENDAR ? VIEW.CALENDAR : undefined)}\n >\n <Calendar\n {...parseCalendarProps(dataSource.calendar, id, occupation, type, unavailability, dataSource.variants)}\n id={id}\n currency={currency}\n locale={locale}\n text={compacted ? text : undefined}\n unavailability={unavailability}\n value={calendar}\n onChange={(calendar, event) => {\n handleChange(VIEW.CALENDAR, calendar, event);\n if (calendar.length === 2 && assisted) assistant();\n }}\n onError={(calendar) => setError({ ...error, calendar })}\n onValid={() => setError({ ...error, calendar: undefined })}\n onSubmit={isMobile ? (compacted ? handleSubmit : assisted ? assistant : undefined) : undefined}\n className={styles(calendarPosition?.top && style.calendarOnTop)}\n testId={testId ? `${testId}-calendar` : undefined}\n />\n </Field>\n\n <FieldOccupation\n compacted={isCompacted}\n dataSource={getOccupationDataSource({\n ...dataSource,\n places: dataSource.places?.options,\n place: place?.value,\n })}\n hotels={getHotels(dataSource.placesSource, place.value)}\n maxRooms={dataSource.maxRooms}\n text={compacted ? text : undefined}\n value={occupation}\n visible={focus === VIEW.OCCUPATION}\n onChange={(occupation, event) => handleChange(VIEW.OCCUPATION, occupation, event)}\n onError={(occupation) => {\n if (!isMobile && focus !== VIEW.OCCUPATION) setFocus(VIEW.OCCUPATION);\n setError({ ...error, occupation });\n }}\n onPress={() => setFocus(focus !== VIEW.OCCUPATION ? VIEW.OCCUPATION : undefined)}\n onSubmit={isMobile ? (compacted ? handleSubmit : assisted ? assistant : undefined) : undefined}\n onValid={() => setError({ ...error, occupation: undefined })}\n testId={testId ? `${testId}-occupation` : undefined}\n />\n\n <FieldPromocode\n compacted={isCompacted}\n value={promocode}\n visible={focus === VIEW.PROMOCODE}\n onChange={(promocode, event) => handleChange(VIEW.PROMOCODE, promocode, event)}\n onEnter={!compacted ? () => setFocus(VIEW.PROMOCODE) : undefined}\n onLeave={!compacted ? () => setFocus(undefined) : undefined}\n onPress={\n isMobile && compacted ? () => setFocus(focus !== VIEW.PROMOCODE ? VIEW.PROMOCODE : undefined) : undefined\n }\n onSubmit={isMobile && compacted ? handleSubmit : undefined}\n testId={testId ? `${testId}-promocode` : undefined}\n />\n\n {!isCompacted && (\n <Button\n large\n wide={isMobile}\n onPress={handleSubmit}\n className={style.button}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {text || translate(L10N.ACTION_SEARCH)}\n </Button>\n )}\n </View>\n </>\n );\n};\n\nFinder.displayName = 'Mirai:Core:Finder';\n\nFinder.propTypes = {\n assisted: PropTypes.bool,\n compacted: PropTypes.bool,\n layout: PropTypes.oneOf(['column']),\n text: PropTypes.string,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Finder };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Finder.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Finder","_Finder2","_Finder3","style","_helpers","_getAvailableWidth","_helpers2","_prepareRoom","_shared__","_Occupation","_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","HOTEL","TYPE","memoizedScrollY","Finder","_ref","_dataSource$places","assisted","compacted","layout","text","onChange","onSubmit","others","isMobile","width","deviceWidth","useDevice","dateFormat","translate","useLocale","ref","useRef","value","currency","propCurrency","finder","storeFinder","forwarder","locale","type","store","useStore","calendarPosition","setCalendarPosition","useState","setCurrency","error","setError","focus","setFocus","unavailability","setUnavailability","setValue","parseValue","visited","setVisited","setWidth","useEffect","occupation","prepareRoom","DATASOURCE","handleClickOutside","_ref$current","undefined","current","contains","document","addEventListener","removeEventListener","getAvailableWidth","disabledDates","place","callback","calendar","handleSubmit","nextValue","Event","subscribe","EVENT","FINDER","unsubscribe","handleScroll","scrollY","window","GAP_SCROLL","JSON","stringify","concat","handleChange","field","fieldValue","next","handlePlaceChange","event","_fetchUrlParams","VIEW","PLACE","isHotel","fetchUrlParams","location","search","fetchCurrency","id","assistant","firstError","keys","filter","forwarderUrl","getForwarderUrl","href","CALENDAR","includes","promocode","ids","dataSource","getDataSource","hotel","idHotel","is","column","fieldProps","className","centered","maxWidth","createElement","Fragment","Compact","onExpand","View","role","row","testId","styles","places","Field","FIELD","caption","getPlaceCaption","options","label","L10N","LABEL_WHERE","placeholder","LABEL_WHERE_PLACEHOLDER","visible","onPress","Places","autoColumn","getCalendarCaption","LABEL_WHEN","onPosition","Calendar","parseCalendarProps","variants","onError","onValid","top","calendarOnTop","FieldOccupation","getOccupationDataSource","hotels","getHotels","placesSource","maxRooms","OCCUPATION","FieldPromocode","PROMOCODE","onEnter","onLeave","Button","large","wide","button","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","bool","oneOf","string","func"],"sources":["../../../src/components/Finder/Finder.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { Calendar, Places } from './components';\nimport { Compact } from './Finder.compact';\nimport { FIELD, GAP_SCROLL, TYPE, VIEW } from './Finder.constants';\nimport { L10N } from './Finder.l10n';\nimport * as style from './Finder.module.css';\nimport {\n getDataSource,\n getForwarderUrl,\n getHotels,\n getOccupationDataSource,\n getPlaceCaption,\n parseCalendarProps,\n parseValue,\n} from './helpers';\nimport { getAvailableWidth } from './helpers/getAvailableWidth';\nimport { fetchCurrency, fetchUrlParams } from '../../helpers';\nimport { prepareRoom } from '../../helpers/prepareRoom';\nimport { Field, FieldOccupation, FieldPromocode } from '../__shared__';\nimport { DATASOURCE } from '../__shared__/Occupation/Occupation.constants';\nimport { getCalendarCaption } from '../helpers';\nimport { EVENT } from '../helpers';\n\nconst { HOTEL } = TYPE;\nlet memoizedScrollY = 0;\n\nconst Finder = ({ assisted = true, compacted = false, layout, text, onChange = () => {}, onSubmit, ...others }) => {\n const { isMobile, width: deviceWidth } = useDevice();\n const { dateFormat, translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: { currency: propCurrency, finder: storeFinder, forwarder, locale, type = HOTEL, ...store },\n } = useStore();\n\n const [calendarPosition, setCalendarPosition] = useState();\n const [currency, setCurrency] = useState();\n const [error, setError] = useState({});\n const [focus, setFocus] = useState();\n const [unavailability, setUnavailability] = useState();\n const [value, setValue] = useState(parseValue(storeFinder));\n const [visited, setVisited] = useState({});\n const [width, setWidth] = useState();\n\n useEffect(() => {\n if (!storeFinder?.occupation) set({ finder: { ...storeFinder, occupation: [prepareRoom(DATASOURCE)] } });\n if (isMobile) return;\n\n const handleClickOutside = ({ target } = {}) => !ref.current?.contains(target) && setFocus(undefined);\n document.addEventListener('click', handleClickOutside, true);\n\n return () => document.removeEventListener('click', handleClickOutside, true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (layout === 'column' && ref.current) setWidth(getAvailableWidth(ref.current));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [deviceWidth]);\n\n useEffect(() => {\n setUnavailability({ disabledDates: [] });\n }, [value?.occupation, value?.place]);\n\n useEffect(() => {\n const callback = ({ calendar, finder, focus } = {}) => {\n if (finder) return handleSubmit({ nextValue: finder });\n\n setUnavailability(calendar);\n if (focus) setFocus(focus);\n };\n\n Event.subscribe(EVENT.FINDER, callback);\n return () => Event.unsubscribe(EVENT.FINDER, callback);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // ! TODO: Why this one? Is not responsibility of <Finder> change the currency when prop changes.\n useEffect(() => setCurrency(propCurrency), [propCurrency]);\n\n useEffect(() => {\n if (!compacted) return;\n\n const handleScroll = () => {\n const { scrollY } = window;\n if (scrollY > memoizedScrollY + GAP_SCROLL || scrollY < memoizedScrollY - GAP_SCROLL) {\n memoizedScrollY = scrollY;\n setFocus(undefined);\n }\n };\n window.addEventListener('scroll', handleScroll);\n\n return () => window.removeEventListener('scroll', handleScroll);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [compacted]);\n\n useEffect(\n () => JSON.stringify(value) !== JSON.stringify(parseValue(storeFinder)) && setValue(parseValue(storeFinder)),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [storeFinder],\n );\n\n useEffect(() => {\n focus && setVisited({ ...visited, [`${focus}`]: true });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [focus]);\n\n const handleChange = (field, fieldValue) => {\n const next = { ...value, [field]: fieldValue };\n\n setValue(next);\n onChange(next, field, fieldValue);\n };\n\n const handlePlaceChange = async (place, event) => {\n handleChange(VIEW.PLACE, place, event);\n if (place.isHotel && !fetchUrlParams(window.location.search)?.currency) {\n // ! TODO: Same here, this should be responsibility of <Core>...\n setCurrency(await fetchCurrency(place.id[0]));\n }\n assisted && assistant();\n };\n\n const handleSubmit = ({ nextValue = value } = {}) => {\n const [firstError] = Object.keys(error).filter((key) => !!error[key]);\n if (firstError) return setFocus(firstError);\n\n setFocus(undefined);\n set({ finder: nextValue });\n const forwarderUrl = getForwarderUrl({ ...nextValue, currency, forwarder, locale, store, type });\n\n if (onSubmit) onSubmit({ ...nextValue, forwarderUrl });\n else window.location.href = forwarderUrl;\n };\n\n const assistant = () => {\n if (!assisted) return setFocus(undefined);\n\n const { calendar = [] } = value;\n if (focus === VIEW.PLACE && !visited.calendar && calendar.length !== 2) setFocus(VIEW.CALENDAR);\n else if (!compacted || (assisted && [VIEW.CALENDAR, VIEW.PLACE].includes(focus))) setFocus(undefined);\n };\n\n const { calendar = [], occupation, place = {}, promocode } = value;\n const { id: ids = [], isHotel } = place;\n\n const dataSource = getDataSource({ type, ...store });\n const { hotel: { id: idHotel } = {} } = store;\n const id = type !== HOTEL ? (isHotel && ids.length === 1 ? ids[0] : undefined) : idHotel;\n\n const is = {\n compacted: (compacted && isMobile) || (compacted && !isMobile && !focus),\n column: !isMobile && layout === 'column',\n };\n\n const fieldProps = {\n compacted: is.compacted,\n className: style.field,\n ...(is.column ? { centered: true, style: width ? { maxWidth: width, width } : undefined } : undefined),\n };\n\n return (\n <>\n {is.compacted && <Compact {...{ value, dataSource }} onExpand={setFocus} onSubmit={handleSubmit} />}\n <View\n role=\"finder\"\n ref={ref}\n row={!isMobile}\n testId={others.testId}\n className={styles(style.finder, layout && style[layout], others.className)}\n >\n {dataSource.places && (\n <Field\n {...FIELD.PLACE}\n caption={getPlaceCaption(place.value, dataSource.places.options)}\n label={translate(L10N.LABEL_WHERE)}\n placeholder={dataSource.places.placeholder || translate(L10N.LABEL_WHERE_PLACEHOLDER)}\n visible={focus === VIEW.PLACE}\n onPress={() => setFocus(focus !== VIEW.PLACE ? VIEW.PLACE : undefined)}\n {...fieldProps}\n >\n <Places\n autoColumn={focus === VIEW.PLACE}\n dataSource={dataSource.places.options}\n text={compacted ? text : undefined}\n value={place.value}\n onChange={handlePlaceChange}\n onSubmit={isMobile ? (compacted ? handleSubmit : assisted ? assistant : undefined) : undefined}\n testId={others.testId ? `${others.testId}-places` : undefined}\n />\n </Field>\n )}\n\n <Field\n {...FIELD.CALENDAR}\n caption={calendar.length ? getCalendarCaption(calendar, translate, dateFormat) : undefined}\n centered={type !== HOTEL}\n label={translate(L10N.LABEL_WHEN)}\n placeholder={getCalendarCaption(undefined, translate, dateFormat)}\n visible={focus === VIEW.CALENDAR}\n onPosition={setCalendarPosition}\n onPress={() => setFocus(focus !== VIEW.CALENDAR ? VIEW.CALENDAR : undefined)}\n {...fieldProps}\n >\n <Calendar\n {...parseCalendarProps(dataSource.calendar, id, occupation, type, unavailability, dataSource.variants)}\n id={id}\n currency={currency}\n locale={locale}\n text={compacted ? text : undefined}\n unavailability={unavailability}\n value={calendar}\n onChange={(calendar, event) => {\n handleChange(VIEW.CALENDAR, calendar, event);\n if (calendar.length === 2 && assisted) assistant();\n }}\n onError={(calendar) => setError({ ...error, calendar })}\n onValid={() => setError({ ...error, calendar: undefined })}\n onSubmit={isMobile ? (compacted ? handleSubmit : assisted ? assistant : undefined) : undefined}\n className={styles(calendarPosition?.top && style.calendarOnTop)}\n testId={others.testId ? `${others.testId}-calendar` : undefined}\n />\n </Field>\n\n <FieldOccupation\n dataSource={getOccupationDataSource({\n ...dataSource,\n places: dataSource.places?.options,\n place: place?.value,\n })}\n hotels={getHotels(dataSource.placesSource, place.value)}\n maxRooms={dataSource.maxRooms}\n text={compacted ? text : undefined}\n value={occupation}\n visible={focus === VIEW.OCCUPATION}\n onChange={(occupation, event) => handleChange(VIEW.OCCUPATION, occupation, event)}\n onError={(occupation) => {\n if (!isMobile && focus !== VIEW.OCCUPATION) setFocus(VIEW.OCCUPATION);\n setError({ ...error, occupation });\n }}\n onPress={() => setFocus(focus !== VIEW.OCCUPATION ? VIEW.OCCUPATION : undefined)}\n onSubmit={isMobile ? (compacted ? handleSubmit : assisted ? assistant : undefined) : undefined}\n onValid={() => setError({ ...error, occupation: undefined })}\n testId={others.testId ? `${others.testId}-occupation` : undefined}\n {...fieldProps}\n />\n\n <FieldPromocode\n value={promocode}\n visible={focus === VIEW.PROMOCODE}\n onChange={(promocode, event) => handleChange(VIEW.PROMOCODE, promocode, event)}\n onEnter={!compacted ? () => setFocus(VIEW.PROMOCODE) : undefined}\n onLeave={!compacted ? () => setFocus(undefined) : undefined}\n onPress={\n isMobile && compacted ? () => setFocus(focus !== VIEW.PROMOCODE ? VIEW.PROMOCODE : undefined) : undefined\n }\n onSubmit={isMobile && compacted ? handleSubmit : undefined}\n testId={others.testId ? `${others.testId}-promocode` : undefined}\n {...fieldProps}\n />\n\n {!is.compacted && (\n <Button\n large\n wide={isMobile}\n onPress={handleSubmit}\n className={style.button}\n testId={others.testId ? `${others.testId}-submit` : undefined}\n >\n {text || translate(L10N.ACTION_SEARCH)}\n </Button>\n )}\n </View>\n </>\n );\n};\n\nFinder.displayName = 'Mirai:Core:Finder';\n\nFinder.propTypes = {\n assisted: PropTypes.bool,\n compacted: PropTypes.bool,\n layout: PropTypes.oneOf(['column']),\n text: PropTypes.string,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Finder };\n"],"mappings":"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"}
@@ -1,23 +1,54 @@
1
1
  :root {
2
- --mirai-finder-background: transparent;
3
- --mirai-finder-border-radius: var(--mirai-ui-button-radius);
4
- --mirai-finder-padding: 0;
5
- --mirai-finder-gap: var(--mirai-ui-space-XS);
2
+ /* finder */
3
+ --mirai-finder-background: none;
4
+ --mirai-finder-border: none;
5
+ --mirai-finder-border-radius: none;
6
+ --mirai-finder-gap: var(--mirai-ui-space-XXS);
6
7
  --mirai-finder-modal-content-max-height: calc(100vh - calc(var(--mirai-ui-space-XXL) + var(--mirai-ui-space-XL)));
8
+ --mirai-finder-padding: 0;
9
+
10
+ --mirai-finder-field-separator: solid var(--mirai-ui-border-width) var(--mirai-ui-content-border);
11
+
12
+ --mirai-finder-field-custom-height: var(--mirai-ui-input-min-height);
13
+ --mirai-finder-field-custom-border: var(--mirai-finder-field-border);
14
+ --mirai-finder-field-custom-border-radius: var(--mirai-finder-field-border-radius);
15
+
16
+ /* booking style */
17
+ /* --mirai-finder-background: #ffb700;
18
+ --mirai-finder-border-radius: var(--mirai-ui-input-text-radius);
19
+ --mirai-finder-padding: var(--mirai-ui-space-XXS); */
20
+
21
+ /* airbnb style */
22
+ --mirai-finder-background: transparent;
23
+ --mirai-finder-border: var(--mirai-ui-input-text-border);
24
+ --mirai-finder-border-radius: calc(var(--mirai-ui-input-text-radius) * 4);
25
+ --mirai-finder-gap: 0;
26
+
27
+ --mirai-finder-field-custom-height: var(--mirai-ui-space-XXL);
28
+ --mirai-finder-field-custom-border: 0;
29
+ --mirai-finder-field-custom-border-radius: 0;
7
30
  }
8
31
 
9
32
  .finder {
10
33
  background-color: var(--mirai-finder-background);
11
- padding: var(--mirai-finder-padding);
34
+ border: var(--mirai-finder-border);
35
+ border-radius: var(--mirai-finder-border-radius);
36
+ overflow: hidden;
12
37
  flex: 0;
13
38
  flex-wrap: wrap;
14
39
  justify-content: center;
15
- gap: var(--mirai-finder-gap);
40
+ padding: var(--mirai-finder-padding);
16
41
  }
17
42
 
18
43
  .button {
19
44
  border-radius: var(--mirai-finder-border-radius);
20
- height: var(--mirai-finder-field-height);
45
+ height: var(--mirai-finder-field-custom-height);
46
+ }
47
+
48
+ .field {
49
+ border: var(--mirai-finder-field-custom-border);
50
+ border-radius: var(--mirai-finder-field-custom-border-radius);
51
+ height: var(--mirai-finder-field-custom-height);
21
52
  }
22
53
 
23
54
  .compact {
@@ -59,13 +90,14 @@
59
90
  white-space: nowrap;
60
91
  }
61
92
 
93
+ /* S */
62
94
  @media only screen and (max-width: 430px) {
63
95
  .finder {
64
96
  width: 100%;
65
97
  }
66
98
 
67
- .button {
68
- margin-top: var(--mirai-ui-space-XS);
99
+ .field {
100
+ border-bottom: var(--mirai-finder-field-separator);
69
101
  }
70
102
 
71
103
  .compact {
@@ -88,17 +120,27 @@
88
120
  }
89
121
  }
90
122
 
123
+ /* M & L */
91
124
  @media only screen and (min-width: 431px) {
92
125
  .finder {
126
+ gap: var(--mirai-finder-gap);
93
127
  width: fit-content;
94
128
  }
95
129
 
96
130
  .finder.column {
97
131
  flex-direction: column;
132
+ width: 100%;
133
+ }
134
+
135
+ .finder:not(.column) .field {
136
+ border-right: var(--mirai-finder-field-separator);
137
+ }
138
+
139
+ .finder.column .field {
140
+ border-bottom: var(--mirai-finder-field-separator);
98
141
  }
99
142
 
100
- .finder.column > span,
101
- .finder.column > button {
143
+ .finder.column > .button {
102
144
  width: 100%;
103
145
  }
104
146
 
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getAvailableWidth = void 0;
7
+ const getAvailableWidth = el => {
8
+ const {
9
+ width,
10
+ paddingLeft,
11
+ paddingRight,
12
+ borderLeftWidth,
13
+ borderRightWidth
14
+ } = window.getComputedStyle(el);
15
+ return parseFloat(width) - (parseFloat(paddingLeft) + parseFloat(paddingRight)) - (parseFloat(borderLeftWidth) + parseFloat(borderRightWidth));
16
+ };
17
+ exports.getAvailableWidth = getAvailableWidth;
18
+ //# sourceMappingURL=getAvailableWidth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAvailableWidth.js","names":["getAvailableWidth","el","width","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","window","getComputedStyle","parseFloat","exports"],"sources":["../../../../src/components/Finder/helpers/getAvailableWidth.js"],"sourcesContent":["export const getAvailableWidth = (el) => {\n const { width, paddingLeft, paddingRight, borderLeftWidth, borderRightWidth } = window.getComputedStyle(el);\n\n return (\n parseFloat(width) -\n (parseFloat(paddingLeft) + parseFloat(paddingRight)) -\n (parseFloat(borderLeftWidth) + parseFloat(borderRightWidth))\n );\n};\n"],"mappings":";;;;;;AAAO,MAAMA,iBAAiB,GAAIC,EAAE,IAAK;EACvC,MAAM;IAAEC,KAAK;IAAEC,WAAW;IAAEC,YAAY;IAAEC,eAAe;IAAEC;EAAiB,CAAC,GAAGC,MAAM,CAACC,gBAAgB,CAACP,EAAE,CAAC;EAE3G,OACEQ,UAAU,CAACP,KAAK,CAAC,IAChBO,UAAU,CAACN,WAAW,CAAC,GAAGM,UAAU,CAACL,YAAY,CAAC,CAAC,IACnDK,UAAU,CAACJ,eAAe,CAAC,GAAGI,UAAU,CAACH,gBAAgB,CAAC,CAAC;AAEhE,CAAC;AAACI,OAAA,CAAAV,iBAAA,GAAAA,iBAAA"}
@@ -33,6 +33,7 @@ const Field = _ref => {
33
33
  const {
34
34
  isMobile
35
35
  } = (0, _ui.useDevice)();
36
+ const [hover, setHover] = (0, _react.useState)(false);
36
37
  const Wrapper = !isMobile ? _ui.Layer : _react.Fragment;
37
38
  const {
38
39
  testId
@@ -43,8 +44,11 @@ const Field = _ref => {
43
44
  onPosition: visible ? onPosition : undefined,
44
45
  className: style.layerContent
45
46
  } : undefined, !compacted && /*#__PURE__*/_react.default.createElement(_ui.Pressable, _extends({}, others, {
47
+ role: "field",
46
48
  onPress: onPress,
47
- className: (0, _ui.styles)(style.field, visible && style.focus, others.className)
49
+ onEnter: () => setHover(true),
50
+ onLeave: () => setHover(false),
51
+ className: (0, _ui.styles)(style.field, visible && style.focus, hover && style.hover, others.className)
48
52
  }), !isMobile && icon && /*#__PURE__*/_react.default.createElement(_ui.Icon, {
49
53
  value: icon,
50
54
  className: style.icon
@@ -1 +1 @@
1
- {"version":3,"file":"Field.js","names":["_ui","require","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","style","_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","Field","_ref","caption","centered","children","compacted","error","icon","inputMode","label","placeholder","visible","warning","onPosition","onPress","others","isMobile","useDevice","Wrapper","Layer","Fragment","testId","createElement","undefined","className","layerContent","Pressable","styles","field","focus","Icon","value","View","input","Text","small","action","ICON","UNFOLD","ERROR","WARNING","React","Modal","LayerContent","portal","title","onClose","onOverflow","concat","exports","displayName","propTypes","PropTypes","oneOfType","string","array","bool","node","func","tabIndex","number"],"sources":["../../../../src/components/__shared__/Field/Field.jsx"],"sourcesContent":["import { Icon, Layer, LayerContent, Modal, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { Fragment } from 'react';\n\nimport * as style from './Field.module.css';\nimport { ICON } from '../../helpers';\n\nconst Field = ({\n caption,\n centered,\n children,\n compacted = false,\n error = false,\n icon,\n inputMode = false,\n label,\n placeholder,\n visible,\n warning = false,\n onPosition,\n onPress = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n\n const Wrapper = !isMobile ? Layer : Fragment;\n const { testId } = others;\n\n return (\n <Wrapper\n {...(!isMobile\n ? { centered, visible, onPosition: visible ? onPosition : undefined, className: style.layerContent }\n : undefined)}\n >\n {!compacted && (\n <Pressable\n {...others}\n onPress={onPress}\n className={styles(style.field, visible && style.focus, others.className)}\n >\n {!isMobile && icon && <Icon value={icon} className={style.icon} />}\n\n <View className={style.input}>\n {isMobile && label && (\n <Text small className={style.label}>\n {label}\n </Text>\n )}\n {inputMode ? (\n children\n ) : (\n <Text action className={styles(style.caption, !caption && placeholder && style.placeholder)}>\n {caption || placeholder}\n </Text>\n )}\n </View>\n\n {!isMobile && !inputMode && <Icon value={ICON.UNFOLD} className={style.icon} />}\n\n {(error || warning) && (\n <Icon\n value={error ? ICON.ERROR : ICON.WARNING}\n className={styles(style.icon, error ? style.error : style.warning)}\n />\n )}\n </Pressable>\n )}\n\n {children &&\n !inputMode &&\n React.createElement(\n isMobile ? Modal : LayerContent,\n isMobile\n ? {\n portal: true,\n title: label,\n visible,\n onClose: onPress,\n onOverflow: onPress,\n ['testId']: testId ? `${testId}-modal` : undefined,\n }\n : undefined,\n children,\n )}\n </Wrapper>\n );\n};\n\nField.displayName = 'Mirai:Core:Field';\n\nField.propTypes = {\n caption: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n centered: PropTypes.bool,\n children: PropTypes.node,\n compacted: PropTypes.bool,\n error: PropTypes.bool,\n icon: PropTypes.func,\n inputMode: PropTypes.bool,\n label: PropTypes.string,\n placeholder: PropTypes.string,\n tabIndex: PropTypes.number,\n visible: PropTypes.bool,\n warning: PropTypes.bool,\n onPosition: PropTypes.func,\n onPress: PropTypes.func,\n};\n\nexport { Field };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Field.js","names":["_ui","require","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","style","_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","Field","_ref","caption","centered","children","compacted","error","icon","inputMode","label","placeholder","visible","warning","onPosition","onPress","others","isMobile","useDevice","hover","setHover","useState","Wrapper","Layer","Fragment","testId","createElement","undefined","className","layerContent","Pressable","role","onEnter","onLeave","styles","field","focus","Icon","value","View","input","Text","small","action","ICON","UNFOLD","ERROR","WARNING","React","Modal","LayerContent","portal","title","onClose","onOverflow","concat","exports","displayName","propTypes","PropTypes","oneOfType","string","array","bool","node","func","tabIndex","number"],"sources":["../../../../src/components/__shared__/Field/Field.jsx"],"sourcesContent":["import { Icon, Layer, LayerContent, Modal, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useState, Fragment } from 'react';\n\nimport * as style from './Field.module.css';\nimport { ICON } from '../../helpers';\n\nconst Field = ({\n caption,\n centered,\n children,\n compacted = false,\n error = false,\n icon,\n inputMode = false,\n label,\n placeholder,\n visible,\n warning = false,\n onPosition,\n onPress = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n\n const [hover, setHover] = useState(false);\n\n const Wrapper = !isMobile ? Layer : Fragment;\n const { testId } = others;\n\n return (\n <Wrapper\n {...(!isMobile\n ? { centered, visible, onPosition: visible ? onPosition : undefined, className: style.layerContent }\n : undefined)}\n >\n {!compacted && (\n <Pressable\n {...others}\n role=\"field\"\n onPress={onPress}\n onEnter={() => setHover(true)}\n onLeave={() => setHover(false)}\n className={styles(style.field, visible && style.focus, hover && style.hover, others.className)}\n >\n {!isMobile && icon && <Icon value={icon} className={style.icon} />}\n\n <View className={style.input}>\n {isMobile && label && (\n <Text small className={style.label}>\n {label}\n </Text>\n )}\n {inputMode ? (\n children\n ) : (\n <Text action className={styles(style.caption, !caption && placeholder && style.placeholder)}>\n {caption || placeholder}\n </Text>\n )}\n </View>\n\n {!isMobile && !inputMode && <Icon value={ICON.UNFOLD} className={style.icon} />}\n\n {(error || warning) && (\n <Icon\n value={error ? ICON.ERROR : ICON.WARNING}\n className={styles(style.icon, error ? style.error : style.warning)}\n />\n )}\n </Pressable>\n )}\n\n {children &&\n !inputMode &&\n React.createElement(\n isMobile ? Modal : LayerContent,\n isMobile\n ? {\n portal: true,\n title: label,\n visible,\n onClose: onPress,\n onOverflow: onPress,\n ['testId']: testId ? `${testId}-modal` : undefined,\n }\n : undefined,\n children,\n )}\n </Wrapper>\n );\n};\n\nField.displayName = 'Mirai:Core:Field';\n\nField.propTypes = {\n caption: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n centered: PropTypes.bool,\n children: PropTypes.node,\n compacted: PropTypes.bool,\n error: PropTypes.bool,\n icon: PropTypes.func,\n inputMode: PropTypes.bool,\n label: PropTypes.string,\n placeholder: PropTypes.string,\n tabIndex: PropTypes.number,\n visible: PropTypes.bool,\n warning: PropTypes.bool,\n onPosition: PropTypes.func,\n onPress: PropTypes.func,\n};\n\nexport { Field };\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,MAAA,GAAAC,uBAAA,CAAAJ,OAAA;AAEA,IAAAK,KAAA,GAAAD,uBAAA,CAAAJ,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AAAqC,SAAAO,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,SAAAJ,wBAAAI,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,SAAAd,uBAAA0B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAErC,MAAMK,KAAK,GAAGC,IAAA,IAeR;EAAA,IAfS;IACbC,OAAO;IACPC,QAAQ;IACRC,QAAQ;IACRC,SAAS,GAAG,KAAK;IACjBC,KAAK,GAAG,KAAK;IACbC,IAAI;IACJC,SAAS,GAAG,KAAK;IACjBC,KAAK;IACLC,WAAW;IACXC,OAAO;IACPC,OAAO,GAAG,KAAK;IACfC,UAAU;IACVC,OAAO,GAAGA,CAAA,KAAM,CAAC,CAAC;IAClB,GAAGC;EACL,CAAC,GAAAd,IAAA;EACC,MAAM;IAAEe;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAEhC,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAEzC,MAAMC,OAAO,GAAG,CAACL,QAAQ,GAAGM,SAAK,GAAGC,eAAQ;EAC5C,MAAM;IAAEC;EAAO,CAAC,GAAGT,MAAM;EAEzB,oBACElD,MAAA,CAAAU,OAAA,CAAAkD,aAAA,CAACJ,OAAO,EACD,CAACL,QAAQ,GACV;IAAEb,QAAQ;IAAEQ,OAAO;IAAEE,UAAU,EAAEF,OAAO,GAAGE,UAAU,GAAGa,SAAS;IAAEC,SAAS,EAAE5D,KAAK,CAAC6D;EAAa,CAAC,GAClGF,SAAS,EAEZ,CAACrB,SAAS,iBACTxC,MAAA,CAAAU,OAAA,CAAAkD,aAAA,CAAChE,GAAA,CAAAoE,SAAS,EAAAtC,QAAA,KACJwB,MAAM;IACVe,IAAI,EAAC,OAAO;IACZhB,OAAO,EAAEA,OAAQ;IACjBiB,OAAO,EAAEA,CAAA,KAAMZ,QAAQ,CAAC,IAAI,CAAE;IAC9Ba,OAAO,EAAEA,CAAA,KAAMb,QAAQ,CAAC,KAAK,CAAE;IAC/BQ,SAAS,EAAE,IAAAM,UAAM,EAAClE,KAAK,CAACmE,KAAK,EAAEvB,OAAO,IAAI5C,KAAK,CAACoE,KAAK,EAAEjB,KAAK,IAAInD,KAAK,CAACmD,KAAK,EAAEH,MAAM,CAACY,SAAS;EAAE,IAE9F,CAACX,QAAQ,IAAIT,IAAI,iBAAI1C,MAAA,CAAAU,OAAA,CAAAkD,aAAA,CAAChE,GAAA,CAAA2E,IAAI;IAACC,KAAK,EAAE9B,IAAK;IAACoB,SAAS,EAAE5D,KAAK,CAACwC;EAAK,CAAE,CAAC,eAElE1C,MAAA,CAAAU,OAAA,CAAAkD,aAAA,CAAChE,GAAA,CAAA6E,IAAI;IAACX,SAAS,EAAE5D,KAAK,CAACwE;EAAM,GAC1BvB,QAAQ,IAAIP,KAAK,iBAChB5C,MAAA,CAAAU,OAAA,CAAAkD,aAAA,CAAChE,GAAA,CAAA+E,IAAI;IAACC,KAAK;IAACd,SAAS,EAAE5D,KAAK,CAAC0C;EAAM,GAChCA,KACG,CACP,EACAD,SAAS,GACRJ,QAAQ,gBAERvC,MAAA,CAAAU,OAAA,CAAAkD,aAAA,CAAChE,GAAA,CAAA+E,IAAI;IAACE,MAAM;IAACf,SAAS,EAAE,IAAAM,UAAM,EAAClE,KAAK,CAACmC,OAAO,EAAE,CAACA,OAAO,IAAIQ,WAAW,IAAI3C,KAAK,CAAC2C,WAAW;EAAE,GACzFR,OAAO,IAAIQ,WACR,CAEJ,CAAC,EAEN,CAACM,QAAQ,IAAI,CAACR,SAAS,iBAAI3C,MAAA,CAAAU,OAAA,CAAAkD,aAAA,CAAChE,GAAA,CAAA2E,IAAI;IAACC,KAAK,EAAEM,aAAI,CAACC,MAAO;IAACjB,SAAS,EAAE5D,KAAK,CAACwC;EAAK,CAAE,CAAC,EAE9E,CAACD,KAAK,IAAIM,OAAO,kBAChB/C,MAAA,CAAAU,OAAA,CAAAkD,aAAA,CAAChE,GAAA,CAAA2E,IAAI;IACHC,KAAK,EAAE/B,KAAK,GAAGqC,aAAI,CAACE,KAAK,GAAGF,aAAI,CAACG,OAAQ;IACzCnB,SAAS,EAAE,IAAAM,UAAM,EAAClE,KAAK,CAACwC,IAAI,EAAED,KAAK,GAAGvC,KAAK,CAACuC,KAAK,GAAGvC,KAAK,CAAC6C,OAAO;EAAE,CACpE,CAEM,CACZ,EAEAR,QAAQ,IACP,CAACI,SAAS,iBACVuC,cAAK,CAACtB,aAAa,CACjBT,QAAQ,GAAGgC,SAAK,GAAGC,gBAAY,EAC/BjC,QAAQ,GACJ;IACEkC,MAAM,EAAE,IAAI;IACZC,KAAK,EAAE1C,KAAK;IACZE,OAAO;IACPyC,OAAO,EAAEtC,OAAO;IAChBuC,UAAU,EAAEvC,OAAO;IACnB,CAAC,QAAQ,GAAGU,MAAM,MAAA8B,MAAA,CAAM9B,MAAM,cAAWE;EAC3C,CAAC,GACDA,SAAS,EACbtB,QACF,CACK,CAAC;AAEd,CAAC;AAACmD,OAAA,CAAAvD,KAAA,GAAAA,KAAA;AAEFA,KAAK,CAACwD,WAAW,GAAG,kBAAkB;AAEtCxD,KAAK,CAACyD,SAAS,GAAG;EAChBvD,OAAO,EAAEwD,kBAAS,CAACC,SAAS,CAAC,CAACD,kBAAS,CAACE,MAAM,EAAEF,kBAAS,CAACG,KAAK,CAAC,CAAC;EACjE1D,QAAQ,EAAEuD,kBAAS,CAACI,IAAI;EACxB1D,QAAQ,EAAEsD,kBAAS,CAACK,IAAI;EACxB1D,SAAS,EAAEqD,kBAAS,CAACI,IAAI;EACzBxD,KAAK,EAAEoD,kBAAS,CAACI,IAAI;EACrBvD,IAAI,EAAEmD,kBAAS,CAACM,IAAI;EACpBxD,SAAS,EAAEkD,kBAAS,CAACI,IAAI;EACzBrD,KAAK,EAAEiD,kBAAS,CAACE,MAAM;EACvBlD,WAAW,EAAEgD,kBAAS,CAACE,MAAM;EAC7BK,QAAQ,EAAEP,kBAAS,CAACQ,MAAM;EAC1BvD,OAAO,EAAE+C,kBAAS,CAACI,IAAI;EACvBlD,OAAO,EAAE8C,kBAAS,CAACI,IAAI;EACvBjD,UAAU,EAAE6C,kBAAS,CAACM,IAAI;EAC1BlD,OAAO,EAAE4C,kBAAS,CAACM;AACrB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  :root {
2
+ /* ! TODO: We should refactor this */
2
3
  --mirai-finder-field-background: var(--mirai-ui-input-background);
3
4
  --mirai-finder-field-border: var(--mirai-ui-input-text-border);
4
5
  --mirai-finder-field-border-radius: var(--mirai-ui-input-text-radius);
@@ -32,6 +33,7 @@
32
33
  background-color: var(--mirai-finder-field-background);
33
34
  border: var(--mirai-finder-field-border);
34
35
  border-radius: var(--mirai-finder-field-border-radius);
36
+ box-sizing: border-box;
35
37
  cursor: pointer;
36
38
  display: flex;
37
39
  flex-direction: var(--mirai-ui-row-direction);
@@ -39,11 +41,16 @@
39
41
  justify-content: flex-start;
40
42
  transition: border-color var(--mirai-ui-motion-collapse) var(--mirai-ui-motion-easing),
41
43
  box-shadow var(--mirai-ui-motion-collapse) var(--mirai-ui-motion-easing);
44
+ z-index: 0;
42
45
  }
43
46
 
44
47
  .field.focus {
45
- border-color: var(--mirai-finder-field-border-focus);
46
- box-shadow: var(--mirai-ui-focus-shadow);
48
+ border: var(--mirai-finder-field-border);
49
+ border-color: var(--mirai-finder-field-border-focus) !important;
50
+ }
51
+
52
+ .field.hover {
53
+ opacity: 1;
47
54
  }
48
55
 
49
56
  .icon {
@@ -98,4 +105,8 @@
98
105
  height: var(--mirai-finder-field-height);
99
106
  padding: 0 var(--mirai-finder-field-padding-x);
100
107
  }
108
+
109
+ .field.focus {
110
+ /* box-shadow: var(--mirai-ui-focus-shadow); */
111
+ }
101
112
  }
@@ -61,13 +61,16 @@ const FieldOccupation = exports.FieldOccupation = /*#__PURE__*/_react.default.fo
61
61
  visible: visible,
62
62
  warning: warning,
63
63
  onPress: onPress,
64
- className: style.occupation,
65
- testId: testId ? "".concat(testId, "-field") : undefined
64
+ className: [style.occupation, others.className],
65
+ testId: testId ? "".concat(testId, "-field") : undefined,
66
+ style: others.style
66
67
  }, /*#__PURE__*/_react.default.createElement(_Occupation.Occupation, _extends({}, others, {
67
68
  ref: ref,
68
69
  type: type,
69
70
  value: value,
70
- onSubmit: onSubmit
71
+ onSubmit: onSubmit,
72
+ className: undefined,
73
+ style: undefined
71
74
  })));
72
75
  });
73
76
  FieldOccupation.displayName = 'Mirai:Core:FieldOccupation';
@@ -1 +1 @@
1
- {"version":3,"file":"FieldOccupation.js","names":["_dataSources","require","_locale","_propTypes","_interopRequireDefault","_react","_FieldOccupation","style","_interopRequireWildcard","_prepareRoom","_helpers","_Field","_Occupation","_Occupation2","_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","FieldOccupation","exports","React","forwardRef","_ref","ref","compacted","error","hotels","value","visible","warning","onPress","onSubmit","others","translate","useLocale","config","dataSource","lodgingDenomination","individual","useStore","minRooms","testId","type","getAccommodationType","caption","getOccupationSummary","Array","map","prepareRoom","createElement","Field","icon","ICON","PEOPLE","label","L10N","LABEL_WHO","className","occupation","concat","undefined","Occupation","displayName","propTypes","PropTypes","bool","array","arrayOf","SHAPE","VALUE","func"],"sources":["../../../../src/components/__shared__/FieldOccupation/FieldOccupation.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './FieldOccupation.l10n';\nimport * as style from './FieldOccupation.module.css';\nimport { prepareRoom } from '../../../helpers/prepareRoom';\nimport { getAccommodationType, getOccupationSummary, ICON } from '../../helpers';\nimport { Field } from '../Field';\nimport { Occupation as OccupationBase } from '../Occupation';\nimport { SHAPE } from '../Occupation/Occupation.constants';\n\nconst FieldOccupation = React.forwardRef(\n ({ compacted, error, hotels = [], value, visible, warning, onPress, onSubmit, ...others }, ref) => {\n const { translate } = useLocale();\n const {\n value: { config: { hotels: dataSource, lodgingDenomination: individual } = {} },\n } = useStore();\n\n const { minRooms = 1, testId } = others;\n const type = getAccommodationType({ dataSource, hotels, individual });\n const caption = getOccupationSummary(\n value || [...Array(minRooms)].map(() => prepareRoom(others.dataSource)),\n translate,\n type,\n );\n\n return (\n <Field\n caption={caption}\n compacted={compacted}\n error={error}\n icon={ICON.PEOPLE}\n label={translate(L10N.LABEL_WHO)}\n visible={visible}\n warning={warning}\n onPress={onPress}\n className={style.occupation}\n testId={testId ? `${testId}-field` : undefined}\n >\n <OccupationBase {...others} ref={ref} type={type} value={value} onSubmit={onSubmit} />\n </Field>\n );\n },\n);\n\nFieldOccupation.displayName = 'Mirai:Core:FieldOccupation';\n\nFieldOccupation.propTypes = {\n compacted: PropTypes.bool,\n error: PropTypes.bool,\n hotels: PropTypes.array,\n value: PropTypes.arrayOf(PropTypes.arrayOf(SHAPE.VALUE)),\n visible: PropTypes.bool,\n warning: PropTypes.bool,\n onPress: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { FieldOccupation };\n"],"mappings":"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"}
1
+ {"version":3,"file":"FieldOccupation.js","names":["_dataSources","require","_locale","_propTypes","_interopRequireDefault","_react","_FieldOccupation","style","_interopRequireWildcard","_prepareRoom","_helpers","_Field","_Occupation","_Occupation2","_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","FieldOccupation","exports","React","forwardRef","_ref","ref","compacted","error","hotels","value","visible","warning","onPress","onSubmit","others","translate","useLocale","config","dataSource","lodgingDenomination","individual","useStore","minRooms","testId","type","getAccommodationType","caption","getOccupationSummary","Array","map","prepareRoom","createElement","Field","icon","ICON","PEOPLE","label","L10N","LABEL_WHO","className","occupation","concat","undefined","Occupation","displayName","propTypes","PropTypes","bool","array","arrayOf","SHAPE","VALUE","func"],"sources":["../../../../src/components/__shared__/FieldOccupation/FieldOccupation.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './FieldOccupation.l10n';\nimport * as style from './FieldOccupation.module.css';\nimport { prepareRoom } from '../../../helpers/prepareRoom';\nimport { getAccommodationType, getOccupationSummary, ICON } from '../../helpers';\nimport { Field } from '../Field';\nimport { Occupation as OccupationBase } from '../Occupation';\nimport { SHAPE } from '../Occupation/Occupation.constants';\n\nconst FieldOccupation = React.forwardRef(\n ({ compacted, error, hotels = [], value, visible, warning, onPress, onSubmit, ...others }, ref) => {\n const { translate } = useLocale();\n const {\n value: { config: { hotels: dataSource, lodgingDenomination: individual } = {} },\n } = useStore();\n\n const { minRooms = 1, testId } = others;\n const type = getAccommodationType({ dataSource, hotels, individual });\n const caption = getOccupationSummary(\n value || [...Array(minRooms)].map(() => prepareRoom(others.dataSource)),\n translate,\n type,\n );\n\n return (\n <Field\n caption={caption}\n compacted={compacted}\n error={error}\n icon={ICON.PEOPLE}\n label={translate(L10N.LABEL_WHO)}\n visible={visible}\n warning={warning}\n onPress={onPress}\n className={[style.occupation, others.className]}\n testId={testId ? `${testId}-field` : undefined}\n style={others.style}\n >\n <OccupationBase\n {...others}\n ref={ref}\n type={type}\n value={value}\n onSubmit={onSubmit}\n className={undefined}\n style={undefined}\n />\n </Field>\n );\n },\n);\n\nFieldOccupation.displayName = 'Mirai:Core:FieldOccupation';\n\nFieldOccupation.propTypes = {\n compacted: PropTypes.bool,\n error: PropTypes.bool,\n hotels: PropTypes.array,\n value: PropTypes.arrayOf(PropTypes.arrayOf(SHAPE.VALUE)),\n visible: PropTypes.bool,\n warning: PropTypes.bool,\n onPress: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { FieldOccupation };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,MAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,gBAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAC,uBAAA,CAAAP,OAAA;AACA,IAAAQ,YAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AACA,IAAAY,YAAA,GAAAZ,OAAA;AAA2D,SAAAa,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,SAAAP,wBAAAO,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,SAAAnB,uBAAA+B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAE3D,MAAMK,eAAe,GAAAC,OAAA,CAAAD,eAAA,gBAAGE,cAAK,CAACC,UAAU,CACtC,CAAAC,IAAA,EAA2FC,GAAG,KAAK;EAAA,IAAlG;IAAEC,SAAS;IAAEC,KAAK;IAAEC,MAAM,GAAG,EAAE;IAAEC,KAAK;IAAEC,OAAO;IAAEC,OAAO;IAAEC,OAAO;IAAEC,QAAQ;IAAE,GAAGC;EAAO,CAAC,GAAAV,IAAA;EACvF,MAAM;IAAEW;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAM;IACJP,KAAK,EAAE;MAAEQ,MAAM,EAAE;QAAET,MAAM,EAAEU,UAAU;QAAEC,mBAAmB,EAAEC;MAAW,CAAC,GAAG,CAAC;IAAE;EAChF,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM;IAAEC,QAAQ,GAAG,CAAC;IAAEC;EAAO,CAAC,GAAGT,MAAM;EACvC,MAAMU,IAAI,GAAG,IAAAC,6BAAoB,EAAC;IAAEP,UAAU;IAAEV,MAAM;IAAEY;EAAW,CAAC,CAAC;EACrE,MAAMM,OAAO,GAAG,IAAAC,6BAAoB,EAClClB,KAAK,IAAI,CAAC,GAAGmB,KAAK,CAACN,QAAQ,CAAC,CAAC,CAACO,GAAG,CAAC,MAAM,IAAAC,wBAAW,EAAChB,MAAM,CAACI,UAAU,CAAC,CAAC,EACvEH,SAAS,EACTS,IACF,CAAC;EAED,oBACEhE,MAAA,CAAAe,OAAA,CAAAwD,aAAA,CAACjE,MAAA,CAAAkE,KAAK;IACJN,OAAO,EAAEA,OAAQ;IACjBpB,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA,KAAM;IACb0B,IAAI,EAAEC,aAAI,CAACC,MAAO;IAClBC,KAAK,EAAErB,SAAS,CAACsB,qBAAI,CAACC,SAAS,CAAE;IACjC5B,OAAO,EAAEA,OAAQ;IACjBC,OAAO,EAAEA,OAAQ;IACjBC,OAAO,EAAEA,OAAQ;IACjB2B,SAAS,EAAE,CAAC7E,KAAK,CAAC8E,UAAU,EAAE1B,MAAM,CAACyB,SAAS,CAAE;IAChDhB,MAAM,EAAEA,MAAM,MAAAkB,MAAA,CAAMlB,MAAM,cAAWmB,SAAU;IAC/ChF,KAAK,EAAEoD,MAAM,CAACpD;EAAM,gBAEpBF,MAAA,CAAAe,OAAA,CAAAwD,aAAA,CAAChE,WAAA,CAAA4E,UAAc,EAAApD,QAAA,KACTuB,MAAM;IACVT,GAAG,EAAEA,GAAI;IACTmB,IAAI,EAAEA,IAAK;IACXf,KAAK,EAAEA,KAAM;IACbI,QAAQ,EAAEA,QAAS;IACnB0B,SAAS,EAAEG,SAAU;IACrBhF,KAAK,EAAEgF;EAAU,EAClB,CACI,CAAC;AAEZ,CACF,CAAC;AAED1C,eAAe,CAAC4C,WAAW,GAAG,4BAA4B;AAE1D5C,eAAe,CAAC6C,SAAS,GAAG;EAC1BvC,SAAS,EAAEwC,kBAAS,CAACC,IAAI;EACzBxC,KAAK,EAAEuC,kBAAS,CAACC,IAAI;EACrBvC,MAAM,EAAEsC,kBAAS,CAACE,KAAK;EACvBvC,KAAK,EAAEqC,kBAAS,CAACG,OAAO,CAACH,kBAAS,CAACG,OAAO,CAACC,kBAAK,CAACC,KAAK,CAAC,CAAC;EACxDzC,OAAO,EAAEoC,kBAAS,CAACC,IAAI;EACvBpC,OAAO,EAAEmC,kBAAS,CAACC,IAAI;EACvBnC,OAAO,EAAEkC,kBAAS,CAACM,IAAI;EACvBvC,QAAQ,EAAEiC,kBAAS,CAACM;AACtB,CAAC"}
@@ -6,7 +6,7 @@ exports[`component:<FieldOccupation> inherit:className 1`] = `
6
6
  class="container"
7
7
  >
8
8
  <div
9
- class="pressable"
9
+ class="pressable mirai"
10
10
  >
11
11
  <span
12
12
  class="icon headline-3"
@@ -66,7 +66,7 @@ exports[`component:<FieldOccupation> inherit:className 1`] = `
66
66
  style="left: 0px; top: 0px;"
67
67
  >
68
68
  <div
69
- class="view mirai"
69
+ class="view"
70
70
  >
71
71
  <div
72
72
  class="scrollview vertical notIndicator"
@@ -34,7 +34,8 @@ const FieldPromocode = _ref => {
34
34
  label: translate(_FieldPromocode.L10N.LABEL_PROMO_CODE),
35
35
  visible: visible,
36
36
  onPress: onPress,
37
- className: style.container
37
+ className: (style.container, others.className),
38
+ style: others.style
38
39
  }, /*#__PURE__*/_react.default.createElement(_ui.View, {
39
40
  row: true,
40
41
  className: (0, _ui.styles)(compacted && style.content)
@@ -44,7 +45,7 @@ const FieldPromocode = _ref => {
44
45
  name: "mirai:finder:promocode"
45
46
  }, others, {
46
47
  placeholder: translate(_FieldPromocode.L10N.LABEL_PROMO_CODE),
47
- className: (0, _ui.styles)(style.input, compacted && style.compacted, others.className)
48
+ className: (0, _ui.styles)(style.input, compacted && style.compacted)
48
49
  })), onSubmit && /*#__PURE__*/_react.default.createElement(_ui.Button, {
49
50
  onPress: onSubmit
50
51
  }, translate(_FieldPromocode.L10N.ACTION_SEARCH))));
@@ -1 +1 @@
1
- {"version":3,"file":"FieldPromocode.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_FieldPromocode","style","_interopRequireWildcard","_helpers","_Field","_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","FieldPromocode","_ref","compacted","visible","onPress","onSubmit","others","translate","useLocale","createElement","Field","icon","ICON","DISCOUNT","inputMode","label","L10N","LABEL_PROMO_CODE","className","container","View","row","styles","content","Icon","value","Input","name","placeholder","input","Button","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","bool","func"],"sources":["../../../../src/components/__shared__/FieldPromocode/FieldPromocode.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Icon, Input, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './FieldPromocode.l10n';\nimport * as style from './FieldPromocode.module.css';\nimport { ICON } from '../../helpers';\nimport { Field } from '../Field';\n\nconst FieldPromocode = ({ compacted, visible, onPress, onSubmit, ...others }) => {\n const { translate } = useLocale();\n\n return (\n <Field\n compacted={compacted}\n icon={ICON.DISCOUNT}\n inputMode={!compacted}\n label={translate(L10N.LABEL_PROMO_CODE)}\n visible={visible}\n onPress={onPress}\n className={style.container}\n >\n <View row className={styles(compacted && style.content)}>\n {compacted && <Icon value={ICON.DISCOUNT} />}\n <Input\n name=\"mirai:finder:promocode\"\n {...others}\n placeholder={translate(L10N.LABEL_PROMO_CODE)}\n className={styles(style.input, compacted && style.compacted, others.className)}\n />\n {onSubmit && <Button onPress={onSubmit}>{translate(L10N.ACTION_SEARCH)}</Button>}\n </View>\n </Field>\n );\n};\n\nFieldPromocode.displayName = 'Mirai:Core:FieldPromocode';\n\nFieldPromocode.propTypes = {\n compacted: PropTypes.bool,\n visible: PropTypes.bool,\n onPress: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { FieldPromocode };\n"],"mappings":"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"}
1
+ {"version":3,"file":"FieldPromocode.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_FieldPromocode","style","_interopRequireWildcard","_helpers","_Field","_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","FieldPromocode","_ref","compacted","visible","onPress","onSubmit","others","translate","useLocale","createElement","Field","icon","ICON","DISCOUNT","inputMode","label","L10N","LABEL_PROMO_CODE","className","container","View","row","styles","content","Icon","value","Input","name","placeholder","input","Button","ACTION_SEARCH","exports","displayName","propTypes","PropTypes","bool","func"],"sources":["../../../../src/components/__shared__/FieldPromocode/FieldPromocode.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Icon, Input, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './FieldPromocode.l10n';\nimport * as style from './FieldPromocode.module.css';\nimport { ICON } from '../../helpers';\nimport { Field } from '../Field';\n\nconst FieldPromocode = ({ compacted, visible, onPress, onSubmit, ...others }) => {\n const { translate } = useLocale();\n\n return (\n <Field\n compacted={compacted}\n icon={ICON.DISCOUNT}\n inputMode={!compacted}\n label={translate(L10N.LABEL_PROMO_CODE)}\n visible={visible}\n onPress={onPress}\n className={(style.container, others.className)}\n style={others.style}\n >\n <View row className={styles(compacted && style.content)}>\n {compacted && <Icon value={ICON.DISCOUNT} />}\n <Input\n name=\"mirai:finder:promocode\"\n {...others}\n placeholder={translate(L10N.LABEL_PROMO_CODE)}\n className={styles(style.input, compacted && style.compacted)}\n />\n {onSubmit && <Button onPress={onSubmit}>{translate(L10N.ACTION_SEARCH)}</Button>}\n </View>\n </Field>\n );\n};\n\nFieldPromocode.displayName = 'Mirai:Core:FieldPromocode';\n\nFieldPromocode.propTypes = {\n compacted: PropTypes.bool,\n visible: PropTypes.bool,\n onPress: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { FieldPromocode };\n"],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ .container {
2
+ overflow: hidden;
3
+ }
4
+
1
5
  input.input {
2
6
  background-color: transparent;
3
7
  overflow: hidden;
@@ -24,12 +28,8 @@ input.input:focus {
24
28
  }
25
29
 
26
30
  @media only screen and (min-width: 431px) {
27
- .container {
28
- max-width: 192px;
29
- }
30
-
31
31
  input.input {
32
- height: var(--mirai-finder-field-height);
33
- max-width: calc(var(--mirai-ui-space-XL) * 2.5);
32
+ max-width: calc(var(--mirai-ui-space-XL) * 2);
33
+ height: calc(var(--mirai-finder-field-height)- calc(var(--mirai-ui-border-width) * 2));
34
34
  }
35
35
  }
@@ -6,7 +6,7 @@ exports[`component:<FieldPromocode> inherit:className 1`] = `
6
6
  class="container"
7
7
  >
8
8
  <div
9
- class="pressable"
9
+ class="pressable mirai"
10
10
  >
11
11
  <span
12
12
  class="icon headline-3"
@@ -54,7 +54,7 @@ exports[`component:<FieldPromocode> inherit:className 1`] = `
54
54
  class="view row"
55
55
  >
56
56
  <input
57
- class="input mirai"
57
+ class="input"
58
58
  name="mirai:finder:promocode"
59
59
  placeholder="common.label.promo_code"
60
60
  type="text"
@@ -18,7 +18,6 @@ const SCRIPT_ID = 'aplazame_script';
18
18
  const Aplazame = _ref => {
19
19
  let {
20
20
  showErrors,
21
- onChange = () => {},
22
21
  onError = () => {},
23
22
  ...others
24
23
  } = _ref;
@@ -32,9 +31,6 @@ const Aplazame = _ref => {
32
31
  return () => document.removeEventListener(_ButtonPayment.EVENT_APLAZAME_RESPONSE, handleResponse);
33
32
  }, []);
34
33
  (0, _react.useEffect)(() => {
35
- onChange({
36
- isSpanish: checked
37
- });
38
34
  setError(checked ? undefined : {
39
35
  spanishIdcard: {
40
36
  required: true
@@ -77,7 +73,6 @@ const Aplazame = _ref => {
77
73
  exports.Aplazame = Aplazame;
78
74
  Aplazame.propTypes = {
79
75
  showErrors: _propTypes.default.bool,
80
- onChange: _propTypes.default.func,
81
76
  onError: _propTypes.default.func
82
77
  };
83
78
  //# sourceMappingURL=Aplazame.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Aplazame.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Aplazame","_ButtonPayment","_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","SCRIPT_ID","Aplazame","_ref","showErrors","onChange","onError","others","translate","useLocale","checked","setChecked","useState","error","setError","useEffect","document","addEventListener","EVENT_APLAZAME_RESPONSE","handleResponse","removeEventListener","isSpanish","undefined","spanishIdcard","required","_ref2","detail","checkoutId","publicKey","process","env","METHOD_APLAZAME_PUBLICKEY","exists","getElementById","script","createElement","id","src","concat","METHOD_APLAZAME_SCRIPT","NODE_ENV","async","defer","onload","aplazame","checkout","head","appendChild","InputOption","name","label","L10N","LABEL_SPANISH_RESIDENT","showRequired","exports","propTypes","PropTypes","bool","func"],"sources":["../../../../../../src/components/__shared__/Payment/components/Aplazame/Aplazame.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { InputOption } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Aplazame.l10n';\nimport { EVENT_APLAZAME_RESPONSE } from '../../../ButtonPayment/ButtonPayment.constants';\n\nconst SCRIPT_ID = 'aplazame_script';\n\nconst Aplazame = ({ showErrors, onChange = () => {}, onError = () => {}, ...others }) => {\n const { translate } = useLocale();\n\n const [checked, setChecked] = useState(false);\n const [error, setError] = useState();\n\n useEffect(() => {\n document.addEventListener(EVENT_APLAZAME_RESPONSE, handleResponse);\n return () => document.removeEventListener(EVENT_APLAZAME_RESPONSE, handleResponse);\n }, []);\n\n useEffect(() => {\n onChange({ isSpanish: checked });\n setError(checked ? undefined : { spanishIdcard: { required: true } });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [checked]);\n\n useEffect(() => {\n onError(error || {});\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [error]);\n\n const handleResponse = ({ detail: { checkoutId, publicKey = process.env.METHOD_APLAZAME_PUBLICKEY } = {} }) => {\n const exists = document.getElementById(SCRIPT_ID);\n const script = exists || document.createElement('script');\n script.id = SCRIPT_ID;\n script.src = `${process.env.METHOD_APLAZAME_SCRIPT}?public-key=${publicKey}&\n sandbox=${process.env.NODE_ENV !== 'production' ? 'true' : 'false'}`;\n script.async;\n script.defer;\n // eslint-disable-next-line no-undef\n script.onload = () => aplazame && aplazame.checkout(checkoutId, {});\n\n document.head.appendChild(script);\n };\n\n return (\n <InputOption\n {...others}\n checked={checked}\n error={!checked && showErrors}\n id=\"checkout-spanishIdcard\"\n name=\"spanish-idcard\"\n label={translate(L10N.LABEL_SPANISH_RESIDENT)}\n required\n showRequired\n onChange={setChecked}\n />\n );\n};\n\nAplazame.propTypes = {\n showErrors: PropTypes.bool,\n onChange: PropTypes.func,\n onError: PropTypes.func,\n};\n\nexport { Aplazame };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Aplazame.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Aplazame","_ButtonPayment","_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","SCRIPT_ID","Aplazame","_ref","showErrors","onError","others","translate","useLocale","checked","setChecked","useState","error","setError","useEffect","document","addEventListener","EVENT_APLAZAME_RESPONSE","handleResponse","removeEventListener","undefined","spanishIdcard","required","_ref2","detail","checkoutId","publicKey","process","env","METHOD_APLAZAME_PUBLICKEY","exists","getElementById","script","createElement","id","src","concat","METHOD_APLAZAME_SCRIPT","NODE_ENV","async","defer","onload","aplazame","checkout","head","appendChild","InputOption","name","label","L10N","LABEL_SPANISH_RESIDENT","showRequired","onChange","exports","propTypes","PropTypes","bool","func"],"sources":["../../../../../../src/components/__shared__/Payment/components/Aplazame/Aplazame.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { InputOption } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Aplazame.l10n';\nimport { EVENT_APLAZAME_RESPONSE } from '../../../ButtonPayment/ButtonPayment.constants';\n\nconst SCRIPT_ID = 'aplazame_script';\n\nconst Aplazame = ({ showErrors, onError = () => {}, ...others }) => {\n const { translate } = useLocale();\n\n const [checked, setChecked] = useState(false);\n const [error, setError] = useState();\n\n useEffect(() => {\n document.addEventListener(EVENT_APLAZAME_RESPONSE, handleResponse);\n return () => document.removeEventListener(EVENT_APLAZAME_RESPONSE, handleResponse);\n }, []);\n\n useEffect(() => {\n setError(checked ? undefined : { spanishIdcard: { required: true } });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [checked]);\n\n useEffect(() => {\n onError(error || {});\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [error]);\n\n const handleResponse = ({ detail: { checkoutId, publicKey = process.env.METHOD_APLAZAME_PUBLICKEY } = {} }) => {\n const exists = document.getElementById(SCRIPT_ID);\n const script = exists || document.createElement('script');\n script.id = SCRIPT_ID;\n script.src = `${process.env.METHOD_APLAZAME_SCRIPT}?public-key=${publicKey}&\n sandbox=${process.env.NODE_ENV !== 'production' ? 'true' : 'false'}`;\n script.async;\n script.defer;\n // eslint-disable-next-line no-undef\n script.onload = () => aplazame && aplazame.checkout(checkoutId, {});\n\n document.head.appendChild(script);\n };\n\n return (\n <InputOption\n {...others}\n checked={checked}\n error={!checked && showErrors}\n id=\"checkout-spanishIdcard\"\n name=\"spanish-idcard\"\n label={translate(L10N.LABEL_SPANISH_RESIDENT)}\n required\n showRequired\n onChange={setChecked}\n />\n );\n};\n\nAplazame.propTypes = {\n showErrors: PropTypes.bool,\n onError: PropTypes.func,\n};\n\nexport { Aplazame };\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.3.284",
3
+ "version": "0.3.286",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable react/prop-types */
2
- import { Button, ScrollView, Slider, Text, useDevice, View } from '@mirai/ui';
2
+ import { Button, ScrollView, Text, useDevice, View } from '@mirai/ui';
3
3
  import React from 'react';
4
4
 
5
5
  import * as style from './routes.module.css';
@@ -22,7 +22,7 @@ export const Home = () => {
22
22
  <View className={style.backgroundImage} />
23
23
  </View>
24
24
 
25
- <View data-mirai-component="finder" id="finder" className={style.inHome} />
25
+ <View data-mirai-component="finder" className={style.inHome} />
26
26
 
27
27
  <View row={!isMobile} tag="section" className={[style.section, style.spaceBetween, style.wrapper]}>
28
28
  <View className={style.texts}>
@@ -47,7 +47,9 @@ export const Home = () => {
47
47
  </Text>
48
48
  </View>
49
49
 
50
- <View className={[style.image, style.square]} />
50
+ <View className={style.finderColumn}>
51
+ <View data-mirai-component="finder" data-layout="column" />
52
+ </View>
51
53
  </View>
52
54
 
53
55
  <View row tag="section" className={[style.section, style.wrapper, style.centered]}>
@@ -33,6 +33,13 @@
33
33
  align-self: flex-start;
34
34
  }
35
35
 
36
+ .finderColumn {
37
+ background-color: var(--mirai-ui-content-background);
38
+ max-width: calc(var(--mirai-ui-breakpoint-S) - var(--mirai-ui-space-M));
39
+ min-width: calc(var(--mirai-ui-breakpoint-S) - var(--mirai-ui-space-M));
40
+ padding: var(--mirai-ui-space-M);
41
+ }
42
+
36
43
  .image {
37
44
  background-color: var(--mirai-ui-content-background);
38
45
  }