@mirai/core 0.3.466 → 0.3.468

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.
@@ -189,9 +189,8 @@ const CardHotel = function () {
189
189
  id: 'HOTELS:ITEM:SITE'
190
190
  })
191
191
  }, translate(_CardHotel.L10N.ACTION_VIEW_HOTEL))), /*#__PURE__*/_react.default.createElement(_ui.View, {
192
- row: true,
193
- className: [style.offset, style.spaceBetween, style.summary]
194
- }, /*#__PURE__*/_react.default.createElement(_ui.View, null, (hasDiscountClub || discountPercentage > 0) && /*#__PURE__*/_react.default.createElement(_ui.View, {
192
+ className: [style.offset, style.summary]
193
+ }, (hasDiscountClub || discountPercentage > 0) && /*#__PURE__*/_react.default.createElement(_ui.View, {
195
194
  row: true
196
195
  }, hasDiscountClub && /*#__PURE__*/_react.default.createElement(_ui.Text, {
197
196
  bold: true,
@@ -203,10 +202,14 @@ const CardHotel = function () {
203
202
  small: true
204
203
  }, translate(_CardHotel.L10N.LABEL_DISCOUNT, {
205
204
  value: "".concat(discountPercentage, "%")
206
- }))), /*#__PURE__*/_react.default.createElement(_ui.Text, {
205
+ }))), /*#__PURE__*/_react.default.createElement(_ui.View, {
206
+ row: true,
207
+ className: [style.gap, style.content]
208
+ }, /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
207
209
  bold: true,
208
210
  headline: true,
209
- level: isMobile || price >= 10000 ? 3 : 2
211
+ level: isMobile || price >= 10000 ? 3 : 2,
212
+ className: style.price
210
213
  }, (0, _locale.currencyFormat)({
211
214
  currency,
212
215
  locale,
@@ -227,7 +230,7 @@ const CardHotel = function () {
227
230
  })), /*#__PURE__*/_react.default.createElement(_ui.Button, {
228
231
  busy: busy,
229
232
  onPress: handlePress
230
- }, translate(_CardHotel.L10N.ACTION_VIEW_MORE)))));
233
+ }, translate(_CardHotel.L10N.ACTION_VIEW_MORE))))));
231
234
  };
232
235
  exports.CardHotel = CardHotel;
233
236
  CardHotel.displayName = 'Mirai:Core:Rates:CardHotel';
@@ -1 +1 @@
1
- {"version":3,"file":"CardHotel.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_CardHotel","style","_helpers","_helpers2","_shared__","_helpers3","_helpers4","_Rates","_components","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","DEFAULT_WIDTH","CardHotel","board","discountPercentage","features","distance","location","url","hasDiscountClub","id","images","name","nights","price","stars","taxes","unavailability","arguments","length","undefined","isMobile","width","useDevice","locale","translate","useLocale","ref","useRef","value","currency","finder","forwarder","hotel","hotelId","tags","options","places","useStore","busy","setBusy","useState","sliderWidth","setSliderWidth","useEffect","_ref$current","current","clientWidth","handlePress","Event","publish","EVENT","METRICS","setTimeout","find","isHotel","ids","includes","toString","window","href","concat","rates","toUrlParams","fetchUrlParams","search","getFinderParams","place","idtokenprovider","SUBMIT_DELAY","caption","action","small","placeId","title","placeName","promocode","hotelName","confidential","discount","breakdown","createElement","Card","View","className","card","preview","Slider","height","metrics","slider","row","type","DISCOUNT_TYPE","PROMOTION","DEAL","Text","bold","tag","Icon","ICON","DISCOUNT","toUpperCase","offset","spaceBetween","LOCATION","L10N","LABEL_DISTANCE","Intl","NumberFormat","unit","minimumFractionDigits","maximumFractionDigits","format","headline","level","Array","from","Action","getHotelUrl","target","onPress","ACTION_VIEW_HOTEL","summary","LABEL_ONLY_MEMBERS","accent","LABEL_DISCOUNT","currencyFormat","tiny","LABEL_PER_NIGHT","light","getLabelTaxes","PriceDetails","Button","ACTION_VIEW_MORE","exports","displayName","propTypes","PropTypes","shape","number","string","bool","oneOfType","arrayOf"],"sources":["../../../../../src/components/Rates/components/CardHotel/CardHotel.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './CardHotel.l10n';\nimport * as style from './CardHotel.module.css';\nimport { getHotelUrl } from './helpers';\nimport { fetchUrlParams } from '../../../../helpers';\nimport { Card } from '../../../__shared__';\nimport { EVENT, ICON, SUBMIT_DELAY, toUrlParams } from '../../../helpers';\nimport { getFinderParams, getLabelTaxes } from '../../helpers';\nimport { DISCOUNT_TYPE } from '../../Rates.constants';\nimport { PriceDetails, Slider } from '../Item/components';\n\nconst DEFAULT_WIDTH = 374;\n\nconst CardHotel = ({\n board = {},\n discountPercentage = 0,\n features: { distance, location, url } = {},\n hasDiscountClub = false,\n id,\n images = [],\n name,\n nights = 1,\n price,\n stars,\n taxes,\n unavailability,\n} = {}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const ref = useRef(null);\n const { value: { currency, finder, forwarder = {}, hotel, id: hotelId, tags: { options: places = [] } = {} } = {} } =\n useStore();\n\n const [busy, setBusy] = useState(false);\n const [sliderWidth, setSliderWidth] = useState(DEFAULT_WIDTH);\n\n useEffect(() => {\n if (ref.current) setSliderWidth(ref.current?.clientWidth - 1);\n }, [width]);\n\n const handlePress = () => {\n setBusy(true);\n Event.publish(EVENT.METRICS, { id: 'HOTELS:ITEM:SELECT' });\n\n setTimeout(() => {\n const { value } = places.find(({ isHotel, id: ids = [] } = {}) => isHotel && ids.includes(id.toString())) || {};\n setBusy(false);\n window.location.href = `${forwarder.rates}${toUrlParams({\n ...fetchUrlParams(window.location.search),\n ...getFinderParams({ ...finder, ...{ place: { id: undefined, value } }, hotel }),\n idtokenprovider: id,\n })}`;\n }, SUBMIT_DELAY);\n };\n\n const caption = { action: !isMobile, small: isMobile };\n const { features = {} } = hotel || {};\n const { place: { id: [placeId] = [], isHotel, title: placeName } = {}, promocode } = finder || {};\n const { name: hotelName } = (placeId ? (isHotel ? features[placeId] : { name: placeName }) : features[hotelId]) || {};\n const { confidential, discount: { breakdown = [] } = {} } = board;\n\n return (\n <Card>\n <View ref={ref} className={style.card}>\n <View className={style.preview}>\n <Slider height={208} images={images} metrics=\"HOTELS:ITEM\" width={sliderWidth} className={style.slider} />\n\n <View row className={style.tags}>\n {promocode &&\n breakdown?.find(\n ({ type } = {}) => type === DISCOUNT_TYPE.PROMOTION || (type === DISCOUNT_TYPE.DEAL && confidential),\n ) && (\n <Text bold small className={style.tag}>\n <Icon action value={ICON.DISCOUNT} />\n {` ${promocode.toUpperCase()}`}\n </Text>\n )}\n </View>\n </View>\n\n {distance && (\n <View row className={[style.offset, style.spaceBetween]}>\n <View row className={style.row}>\n <Icon value={ICON.LOCATION} />\n <Text small>\n {translate(L10N.LABEL_DISTANCE, {\n distance: Intl.NumberFormat(locale, {\n style: 'unit',\n unit: 'kilometer',\n minimumFractionDigits: 1,\n maximumFractionDigits: 1,\n }).format(distance),\n name: hotelName,\n })}\n </Text>\n </View>\n </View>\n )}\n\n <View className={style.offset}>\n <Text bold headline={!isMobile} level={3}>\n {name}\n </Text>\n {stars > 0 && (\n <Text headline={!isMobile} level={3}>\n {Array.from({ length: stars }, () => '★')}\n </Text>\n )}\n\n <Text {...caption}>{location}</Text>\n\n {url && (\n <Action\n href={unavailability ? getHotelUrl(url) : url}\n small={isMobile}\n target=\"_blank\"\n onPress={() => Event.publish(EVENT.METRICS, { id: 'HOTELS:ITEM:SITE' })}\n >\n {translate(L10N.ACTION_VIEW_HOTEL)}\n </Action>\n )}\n </View>\n\n <View row className={[style.offset, style.spaceBetween, style.summary]}>\n <View>\n {(hasDiscountClub || discountPercentage > 0) && (\n <View row>\n {hasDiscountClub && (\n <Text bold small className={style.tag}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n )}\n\n {discountPercentage > 0 && (\n <Text accent bold small>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n </View>\n )}\n\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n\n <Text small={!isMobile} tiny={isMobile}>\n {currencyFormat({ currency, value: price / nights })} {translate(L10N.LABEL_PER_NIGHT)}\n </Text>\n\n <Text light small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxes))}\n </Text>\n\n <PriceDetails board={board} />\n </View>\n\n <Button busy={busy} onPress={handlePress}>\n {translate(L10N.ACTION_VIEW_MORE)}\n </Button>\n </View>\n </View>\n </Card>\n );\n};\n\nCardHotel.displayName = 'Mirai:Core:Rates:CardHotel';\n\nCardHotel.propTypes = {\n board: PropTypes.shape({}),\n discountPercentage: PropTypes.number,\n features: PropTypes.shape({\n distance: PropTypes.string,\n location: PropTypes.string,\n url: PropTypes.string,\n }),\n hasDiscountClub: PropTypes.bool,\n id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n images: PropTypes.arrayOf(PropTypes.string),\n name: PropTypes.string,\n nights: PropTypes.number,\n price: PropTypes.number,\n stars: PropTypes.number,\n taxes: PropTypes.number,\n unavailability: PropTypes.bool,\n};\n\nexport { CardHotel };\n"],"mappings":"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"}
1
+ {"version":3,"file":"CardHotel.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_CardHotel","style","_helpers","_helpers2","_shared__","_helpers3","_helpers4","_Rates","_components","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","DEFAULT_WIDTH","CardHotel","board","discountPercentage","features","distance","location","url","hasDiscountClub","id","images","name","nights","price","stars","taxes","unavailability","arguments","length","undefined","isMobile","width","useDevice","locale","translate","useLocale","ref","useRef","value","currency","finder","forwarder","hotel","hotelId","tags","options","places","useStore","busy","setBusy","useState","sliderWidth","setSliderWidth","useEffect","_ref$current","current","clientWidth","handlePress","Event","publish","EVENT","METRICS","setTimeout","find","isHotel","ids","includes","toString","window","href","concat","rates","toUrlParams","fetchUrlParams","search","getFinderParams","place","idtokenprovider","SUBMIT_DELAY","caption","action","small","placeId","title","placeName","promocode","hotelName","confidential","discount","breakdown","createElement","Card","View","className","card","preview","Slider","height","metrics","slider","row","type","DISCOUNT_TYPE","PROMOTION","DEAL","Text","bold","tag","Icon","ICON","DISCOUNT","toUpperCase","offset","spaceBetween","LOCATION","L10N","LABEL_DISTANCE","Intl","NumberFormat","unit","minimumFractionDigits","maximumFractionDigits","format","headline","level","Array","from","Action","getHotelUrl","target","onPress","ACTION_VIEW_HOTEL","summary","LABEL_ONLY_MEMBERS","accent","LABEL_DISCOUNT","gap","content","currencyFormat","tiny","LABEL_PER_NIGHT","light","getLabelTaxes","PriceDetails","Button","ACTION_VIEW_MORE","exports","displayName","propTypes","PropTypes","shape","number","string","bool","oneOfType","arrayOf"],"sources":["../../../../../src/components/Rates/components/CardHotel/CardHotel.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { L10N } from './CardHotel.l10n';\nimport * as style from './CardHotel.module.css';\nimport { getHotelUrl } from './helpers';\nimport { fetchUrlParams } from '../../../../helpers';\nimport { Card } from '../../../__shared__';\nimport { EVENT, ICON, SUBMIT_DELAY, toUrlParams } from '../../../helpers';\nimport { getFinderParams, getLabelTaxes } from '../../helpers';\nimport { DISCOUNT_TYPE } from '../../Rates.constants';\nimport { PriceDetails, Slider } from '../Item/components';\n\nconst DEFAULT_WIDTH = 374;\n\nconst CardHotel = ({\n board = {},\n discountPercentage = 0,\n features: { distance, location, url } = {},\n hasDiscountClub = false,\n id,\n images = [],\n name,\n nights = 1,\n price,\n stars,\n taxes,\n unavailability,\n} = {}) => {\n const { isMobile, width } = useDevice();\n const { locale, translate } = useLocale();\n const ref = useRef(null);\n const { value: { currency, finder, forwarder = {}, hotel, id: hotelId, tags: { options: places = [] } = {} } = {} } =\n useStore();\n\n const [busy, setBusy] = useState(false);\n const [sliderWidth, setSliderWidth] = useState(DEFAULT_WIDTH);\n\n useEffect(() => {\n if (ref.current) setSliderWidth(ref.current?.clientWidth - 1);\n }, [width]);\n\n const handlePress = () => {\n setBusy(true);\n Event.publish(EVENT.METRICS, { id: 'HOTELS:ITEM:SELECT' });\n\n setTimeout(() => {\n const { value } = places.find(({ isHotel, id: ids = [] } = {}) => isHotel && ids.includes(id.toString())) || {};\n setBusy(false);\n window.location.href = `${forwarder.rates}${toUrlParams({\n ...fetchUrlParams(window.location.search),\n ...getFinderParams({ ...finder, ...{ place: { id: undefined, value } }, hotel }),\n idtokenprovider: id,\n })}`;\n }, SUBMIT_DELAY);\n };\n\n const caption = { action: !isMobile, small: isMobile };\n const { features = {} } = hotel || {};\n const { place: { id: [placeId] = [], isHotel, title: placeName } = {}, promocode } = finder || {};\n const { name: hotelName } = (placeId ? (isHotel ? features[placeId] : { name: placeName }) : features[hotelId]) || {};\n const { confidential, discount: { breakdown = [] } = {} } = board;\n\n return (\n <Card>\n <View ref={ref} className={style.card}>\n <View className={style.preview}>\n <Slider height={208} images={images} metrics=\"HOTELS:ITEM\" width={sliderWidth} className={style.slider} />\n\n <View row className={style.tags}>\n {promocode &&\n breakdown?.find(\n ({ type } = {}) => type === DISCOUNT_TYPE.PROMOTION || (type === DISCOUNT_TYPE.DEAL && confidential),\n ) && (\n <Text bold small className={style.tag}>\n <Icon action value={ICON.DISCOUNT} />\n {` ${promocode.toUpperCase()}`}\n </Text>\n )}\n </View>\n </View>\n\n {distance && (\n <View row className={[style.offset, style.spaceBetween]}>\n <View row className={style.row}>\n <Icon value={ICON.LOCATION} />\n <Text small>\n {translate(L10N.LABEL_DISTANCE, {\n distance: Intl.NumberFormat(locale, {\n style: 'unit',\n unit: 'kilometer',\n minimumFractionDigits: 1,\n maximumFractionDigits: 1,\n }).format(distance),\n name: hotelName,\n })}\n </Text>\n </View>\n </View>\n )}\n\n <View className={style.offset}>\n <Text bold headline={!isMobile} level={3}>\n {name}\n </Text>\n {stars > 0 && (\n <Text headline={!isMobile} level={3}>\n {Array.from({ length: stars }, () => '★')}\n </Text>\n )}\n\n <Text {...caption}>{location}</Text>\n\n {url && (\n <Action\n href={unavailability ? getHotelUrl(url) : url}\n small={isMobile}\n target=\"_blank\"\n onPress={() => Event.publish(EVENT.METRICS, { id: 'HOTELS:ITEM:SITE' })}\n >\n {translate(L10N.ACTION_VIEW_HOTEL)}\n </Action>\n )}\n </View>\n\n <View className={[style.offset, style.summary]}>\n {(hasDiscountClub || discountPercentage > 0) && (\n <View row>\n {hasDiscountClub && (\n <Text bold small className={style.tag}>\n {translate(L10N.LABEL_ONLY_MEMBERS)}\n </Text>\n )}\n\n {discountPercentage > 0 && (\n <Text accent bold small>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n </View>\n )}\n <View row className={[style.gap, style.content]}>\n <View>\n <Text bold headline level={isMobile || price >= 10000 ? 3 : 2} className={style.price}>\n {currencyFormat({ currency, locale, maximumFractionDigits: 0, value: price })}\n </Text>\n\n <Text small={!isMobile} tiny={isMobile}>\n {currencyFormat({ currency, value: price / nights })} {translate(L10N.LABEL_PER_NIGHT)}\n </Text>\n\n <Text light small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxes))}\n </Text>\n\n <PriceDetails board={board} />\n </View>\n\n <Button busy={busy} onPress={handlePress}>\n {translate(L10N.ACTION_VIEW_MORE)}\n </Button>\n </View>\n </View>\n </View>\n </Card>\n );\n};\n\nCardHotel.displayName = 'Mirai:Core:Rates:CardHotel';\n\nCardHotel.propTypes = {\n board: PropTypes.shape({}),\n discountPercentage: PropTypes.number,\n features: PropTypes.shape({\n distance: PropTypes.string,\n location: PropTypes.string,\n url: PropTypes.string,\n }),\n hasDiscountClub: PropTypes.bool,\n id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n images: PropTypes.arrayOf(PropTypes.string),\n name: PropTypes.string,\n nights: PropTypes.number,\n price: PropTypes.number,\n stars: PropTypes.number,\n taxes: PropTypes.number,\n unavailability: PropTypes.bool,\n};\n\nexport { CardHotel };\n"],"mappings":"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"}
@@ -32,10 +32,18 @@
32
32
  }
33
33
 
34
34
  .card .summary {
35
- align-items: flex-end;
36
35
  margin-bottom: var(--mirai-ui-space-XXS);
37
36
  }
38
37
 
38
+ .card .summary .content {
39
+ align-items: flex-end;
40
+ justify-content: space-between;
41
+ }
42
+
43
+ .card .summary .price {
44
+ margin: var(--mirai-ui-space-XXS) 0;
45
+ }
46
+
39
47
  .preview {
40
48
  position: relative;
41
49
  }
@@ -49,7 +57,7 @@
49
57
  }
50
58
 
51
59
  .preview .tags .tag,
52
- .summary .tag {
60
+ .summary .tag {
53
61
  align-items: center;
54
62
  background-color: var(--mirai-ui-accent);
55
63
  border-radius: var(--mirai-ui-border-radius);
@@ -61,7 +69,7 @@
61
69
 
62
70
  .summary .tag {
63
71
  display: inline-flex;
64
- gap: calc(var(--mirai-ui-space-XXS) / 2);
72
+ gap: calc(var(--mirai-ui-space-XXS) / 2);
65
73
  padding: 0 var(--mirai-ui-space-XXS);
66
74
  margin-right: var(--mirai-ui-space-XXS);
67
75
  width: fit-content;
@@ -48,60 +48,64 @@ exports[`<Rates> <CardHotel> renders 1`] = `
48
48
  />
49
49
  </ui-view>
50
50
  <ui-view
51
- class="view row"
51
+ class="view"
52
52
  >
53
53
  <ui-view
54
- class="view"
54
+ class="view row"
55
55
  >
56
- <ui-text
57
- class="text bold headline-2"
58
- >
59
- 0 €
60
- </ui-text>
61
- <ui-text
62
- class="text small"
63
- >
64
- NaN € finder.label.per_night
65
- </ui-text>
66
- <ui-text
67
- class="text light small"
68
- />
69
56
  <ui-view
70
- class="view row"
57
+ class="view"
71
58
  >
72
- <ui-tooltip
73
- class="container"
59
+ <ui-text
60
+ class="text bold headline-2"
74
61
  >
75
- <ui-view
76
- class="view"
62
+ 0 €
63
+ </ui-text>
64
+ <ui-text
65
+ class="text small"
66
+ >
67
+ NaN € finder.label.per_night
68
+ </ui-text>
69
+ <ui-text
70
+ class="text light small"
71
+ />
72
+ <ui-view
73
+ class="view row"
74
+ >
75
+ <ui-tooltip
76
+ class="container"
77
77
  >
78
- <ui-text
79
- class="text medium accent action dispatcher"
78
+ <ui-view
79
+ class="view"
80
80
  >
81
- finder.label.price_details
82
- </ui-text>
83
- </ui-view>
84
- </ui-tooltip>
81
+ <ui-text
82
+ class="text medium accent action dispatcher"
83
+ >
84
+ finder.label.price_details
85
+ </ui-text>
86
+ </ui-view>
87
+ </ui-tooltip>
88
+ </ui-view>
85
89
  </ui-view>
86
- </ui-view>
87
- <ui-button
88
- class="pressable button"
89
- disabled="false"
90
- tabindex="0"
91
- >
92
- <ui-view
93
- class="view busyContainer"
90
+ <ui-button
91
+ class="pressable button"
92
+ disabled="false"
93
+ tabindex="0"
94
94
  >
95
95
  <ui-view
96
- class="view spinner"
97
- />
98
- </ui-view>
99
- <ui-view
100
- class="view row children"
101
- >
102
- common.action.view_more
103
- </ui-view>
104
- </ui-button>
96
+ class="view busyContainer"
97
+ >
98
+ <ui-view
99
+ class="view spinner"
100
+ />
101
+ </ui-view>
102
+ <ui-view
103
+ class="view row children"
104
+ >
105
+ common.action.view_more
106
+ </ui-view>
107
+ </ui-button>
108
+ </ui-view>
105
109
  </ui-view>
106
110
  </ui-view>
107
111
  </ui-view>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.3.466",
3
+ "version": "0.3.468",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",