@mirai/core 0.3.312 → 0.3.314
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/Rates/components/Item/Item.Summary.js +2 -0
- package/build/components/Rates/components/Item/Item.Summary.js.map +1 -1
- package/build/components/Rates/components/Item/components/PriceDetails/PriceDetails.js +8 -1
- package/build/components/Rates/components/Item/components/PriceDetails/PriceDetails.js.map +1 -1
- package/build/components/Rates/components/ModalMapView/ModalMapView.js +1 -1
- package/build/components/Rates/components/ModalMapView/ModalMapView.js.map +1 -1
- package/build/services/Rates/__tests__/__mocks__/rates-response-cancel-types.json +42 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes-no-local.json +6 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response-no-taxes.json +36 -0
- package/build/services/Rates/__tests__/__mocks__/rates-response.json +4 -0
- package/build/services/Rates/helpers/parseItem.js +2 -0
- package/build/services/Rates/helpers/parseItem.js.map +1 -1
- package/package.json +1 -1
|
@@ -46,6 +46,7 @@ const Summary = _ref => {
|
|
|
46
46
|
basePrice,
|
|
47
47
|
cancellationId,
|
|
48
48
|
checkoutPrice,
|
|
49
|
+
confidential,
|
|
49
50
|
dayPrice,
|
|
50
51
|
discount,
|
|
51
52
|
fees,
|
|
@@ -64,6 +65,7 @@ const Summary = _ref => {
|
|
|
64
65
|
basePrice,
|
|
65
66
|
cancellationId,
|
|
66
67
|
checkoutPrice,
|
|
68
|
+
confidential,
|
|
67
69
|
discount,
|
|
68
70
|
fees,
|
|
69
71
|
id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Item.Summary.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Summary","_ref","id","roomId","isSoldOut","multiRoom","name","roomName","nights","selected","selectedBoard","taxesType","onSelect","isMobile","useDevice","currencyFormat","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","keys","length","basePrice","cancellationId","checkoutPrice","dayPrice","discount","fees","originalPrice","price","rateId","taxes","totalPriceRaw","isSelected","handlePress","undefined","percentage","discountPercentage","createElement","Fragment","View","className","offset","summary","Text","accent","bold","small","L10N","LABEL_DISCOUNT","concat","row","gap","content","end","headline","level","maximumFractionDigits","action","light","lineThrough","tiny","LABEL_PER_NIGHT","getLabelTaxes","PriceDetails","board","priceDetails","Button","disabled","secondary","onPress","LABEL_NOT_AVAILABLE","LABEL_DESELECT","LABEL_SELECT","ACTION_RESERVE","exports","displayName","propTypes","PropTypes","number","bool","string","shape","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Summary.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { PriceDetails } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { getLabelTaxes } from '../../helpers';\n\nconst Summary = ({\n id: roomId,\n isSoldOut = false,\n multiRoom = false,\n name: roomName,\n nights = 2,\n selected = {},\n selectedBoard = {},\n taxesType,\n onSelect,\n}) => {\n const { isMobile } = useDevice();\n const { currencyFormat, translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => Object.keys(selected).length === 0 && setBusy(false), [selected]);\n\n const {\n basePrice,\n cancellationId,\n checkoutPrice,\n dayPrice,\n discount,\n fees,\n id,\n name,\n originalPrice,\n price,\n rateId,\n taxes,\n totalPriceRaw,\n } = selectedBoard;\n\n const isSelected = selected.id === id;\n\n const handlePress = () => {\n if (!multiRoom) setBusy(true);\n onSelect(\n !isSelected\n ? {\n basePrice,\n cancellationId,\n checkoutPrice,\n discount,\n fees,\n id,\n name,\n price,\n rateId,\n roomId,\n roomName,\n taxes,\n totalPriceRaw,\n }\n : undefined,\n );\n };\n\n const { percentage: discountPercentage = 0 } = discount || {};\n\n return (\n <>\n <View className={[style.offset, style.summary]}>\n {!isSoldOut && discountPercentage > 0 && (\n <Text accent bold small>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n\n <View row className={[style.gap, style.content, isSoldOut && style.end]}>\n {!isSoldOut && (\n <View>\n <View row className={style.price}>\n <Text bold headline level={isMobile || multiRoom || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, maximumFractionDigits: 0, value: price })}\n </Text>\n\n {price !== originalPrice && (\n <Text action light className={style.lineThrough}>\n {currencyFormat({ currency, maximumFractionDigits: 0, value: originalPrice })}\n </Text>\n )}\n </View>\n\n {nights > 1 && (\n <Text small={!isMobile} tiny={isMobile}>{`${currencyFormat({ currency, value: dayPrice })} ${translate(\n L10N.LABEL_PER_NIGHT,\n )}`}</Text>\n )}\n\n {!!taxesType && (\n <Text light small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n\n {(discountPercentage > 0 || fees > 0 || taxes > 0) && (\n <PriceDetails {...{ board: selectedBoard }} className={style.priceDetails} />\n )}\n </View>\n )}\n\n <Button busy={busy} disabled={isSoldOut} secondary={multiRoom && isSelected} onPress={handlePress}>\n {translate(\n isSoldOut\n ? L10N.LABEL_NOT_AVAILABLE\n : multiRoom\n ? isSelected\n ? L10N.LABEL_DESELECT\n : L10N.LABEL_SELECT\n : L10N.ACTION_RESERVE,\n )}\n </Button>\n </View>\n </View>\n </>\n );\n};\n\nSummary.displayName = 'Mirai:Core:Rates:Item:Summary';\n\nSummary.propTypes = {\n id: PropTypes.number,\n isSoldOut: PropTypes.bool,\n multiRoom: PropTypes.bool,\n name: PropTypes.string,\n nights: PropTypes.number,\n selected: PropTypes.shape({}),\n selectedBoard: PropTypes.shape({}),\n taxesType: PropTypes.number,\n onSelect: PropTypes.func,\n};\n\nexport { Summary };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAC,uBAAA,CAAAN,OAAA;AAEA,IAAAO,WAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAH,uBAAA,CAAAN,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAA8C,SAAAW,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAhB,uBAAA4B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAE9C,MAAMC,OAAO,GAAGC,IAAA,IAUV;EAAA,IAVW;IACfC,EAAE,EAAEC,MAAM;IACVC,SAAS,GAAG,KAAK;IACjBC,SAAS,GAAG,KAAK;IACjBC,IAAI,EAAEC,QAAQ;IACdC,MAAM,GAAG,CAAC;IACVC,QAAQ,GAAG,CAAC,CAAC;IACbC,aAAa,GAAG,CAAC,CAAC;IAClBC,SAAS;IACTC;EACF,CAAC,GAAAX,IAAA;EACC,MAAM;IAAEY;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IAAEC,cAAc;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjD,MAAM;IAAEC,KAAK,EAAE;MAAEC;IAAS,CAAC,GAAG,CAAC;EAAE,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAE/C,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAEvC,IAAAC,gBAAS,EAAC,MAAMlC,MAAM,CAACmC,IAAI,CAAChB,QAAQ,CAAC,CAACiB,MAAM,KAAK,CAAC,IAAIJ,OAAO,CAAC,KAAK,CAAC,EAAE,CAACb,QAAQ,CAAC,CAAC;EAEjF,MAAM;IACJkB,SAAS;IACTC,cAAc;IACdC,aAAa;IACbC,QAAQ;IACRC,QAAQ;IACRC,IAAI;IACJ9B,EAAE;IACFI,IAAI;IACJ2B,aAAa;IACbC,KAAK;IACLC,MAAM;IACNC,KAAK;IACLC;EACF,CAAC,GAAG3B,aAAa;EAEjB,MAAM4B,UAAU,GAAG7B,QAAQ,CAACP,EAAE,KAAKA,EAAE;EAErC,MAAMqC,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAI,CAAClC,SAAS,EAAEiB,OAAO,CAAC,IAAI,CAAC;IAC7BV,QAAQ,CACN,CAAC0B,UAAU,GACP;MACEX,SAAS;MACTC,cAAc;MACdC,aAAa;MACbE,QAAQ;MACRC,IAAI;MACJ9B,EAAE;MACFI,IAAI;MACJ4B,KAAK;MACLC,MAAM;MACNhC,MAAM;MACNI,QAAQ;MACR6B,KAAK;MACLC;IACF,CAAC,GACDG,SACN,CAAC;EACH,CAAC;EAED,MAAM;IAAEC,UAAU,EAAEC,kBAAkB,GAAG;EAAE,CAAC,GAAGX,QAAQ,IAAI,CAAC,CAAC;EAE7D,oBACE3D,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAAvE,MAAA,CAAAY,OAAA,CAAA4D,QAAA,qBACExE,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAA4E,IAAI;IAACC,SAAS,EAAE,CAACtE,KAAK,CAACuE,MAAM,EAAEvE,KAAK,CAACwE,OAAO;EAAE,GAC5C,CAAC5C,SAAS,IAAIsC,kBAAkB,GAAG,CAAC,iBACnCtE,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAAgF,IAAI;IAACC,MAAM;IAACC,IAAI;IAACC,KAAK;EAAA,GACpBpC,SAAS,CAACqC,UAAI,CAACC,cAAc,EAAE;IAAEpC,KAAK,KAAAqC,MAAA,CAAKb,kBAAkB;EAAI,CAAC,CAC/D,CACP,eAEDtE,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAA4E,IAAI;IAACW,GAAG;IAACV,SAAS,EAAE,CAACtE,KAAK,CAACiF,GAAG,EAAEjF,KAAK,CAACkF,OAAO,EAAEtD,SAAS,IAAI5B,KAAK,CAACmF,GAAG;EAAE,GACrE,CAACvD,SAAS,iBACThC,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAA4E,IAAI,qBACHzE,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAA4E,IAAI;IAACW,GAAG;IAACV,SAAS,EAAEtE,KAAK,CAAC0D;EAAM,gBAC/B9D,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAAgF,IAAI;IAACE,IAAI;IAACS,QAAQ;IAACC,KAAK,EAAEhD,QAAQ,IAAIR,SAAS,IAAI6B,KAAK,IAAI,KAAK,GAAG,CAAC,GAAG;EAAE,GACxEnB,cAAc,CAAC;IAAEI,QAAQ;IAAE2C,qBAAqB,EAAE,CAAC;IAAE5C,KAAK,EAAEgB;EAAM,CAAC,CAChE,CAAC,EAENA,KAAK,KAAKD,aAAa,iBACtB7D,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAAgF,IAAI;IAACc,MAAM;IAACC,KAAK;IAAClB,SAAS,EAAEtE,KAAK,CAACyF;EAAY,GAC7ClD,cAAc,CAAC;IAAEI,QAAQ;IAAE2C,qBAAqB,EAAE,CAAC;IAAE5C,KAAK,EAAEe;EAAc,CAAC,CACxE,CAEJ,CAAC,EAENzB,MAAM,GAAG,CAAC,iBACTpC,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAAgF,IAAI;IAACG,KAAK,EAAE,CAACvC,QAAS;IAACqD,IAAI,EAAErD;EAAS,MAAA0C,MAAA,CAAKxC,cAAc,CAAC;IAAEI,QAAQ;IAAED,KAAK,EAAEY;EAAS,CAAC,CAAC,OAAAyB,MAAA,CAAIvC,SAAS,CACpGqC,UAAI,CAACc,eACP,CAAC,CAAS,CACX,EAEA,CAAC,CAACxD,SAAS,iBACVvC,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAAgF,IAAI;IAACe,KAAK;IAACZ,KAAK,EAAE,CAACvC,QAAS;IAACqD,IAAI,EAAErD;EAAS,GAC1CG,SAAS,CAAC,IAAAoD,sBAAa,EAACzD,SAAS,CAAC,CAC/B,CACP,EAEA,CAAC+B,kBAAkB,GAAG,CAAC,IAAIV,IAAI,GAAG,CAAC,IAAII,KAAK,GAAG,CAAC,kBAC/ChE,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAACrE,WAAA,CAAA+F,YAAY;IAAOC,KAAK,EAAE5D,aAAa;IAAIoC,SAAS,EAAEtE,KAAK,CAAC+F;EAAa,CAAE,CAE1E,CACP,eAEDnG,MAAA,CAAAY,OAAA,CAAA2D,aAAA,CAAC1E,GAAA,CAAAuG,MAAM;IAACnD,IAAI,EAAEA,IAAK;IAACoD,QAAQ,EAAErE,SAAU;IAACsE,SAAS,EAAErE,SAAS,IAAIiC,UAAW;IAACqC,OAAO,EAAEpC;EAAY,GAC/FvB,SAAS,CACRZ,SAAS,GACLiD,UAAI,CAACuB,mBAAmB,GACxBvE,SAAS,GACTiC,UAAU,GACRe,UAAI,CAACwB,cAAc,GACnBxB,UAAI,CAACyB,YAAY,GACnBzB,UAAI,CAAC0B,cACX,CACM,CACJ,CACF,CACN,CAAC;AAEP,CAAC;AAACC,OAAA,CAAAhF,OAAA,GAAAA,OAAA;AAEFA,OAAO,CAACiF,WAAW,GAAG,+BAA+B;AAErDjF,OAAO,CAACkF,SAAS,GAAG;EAClBhF,EAAE,EAAEiF,kBAAS,CAACC,MAAM;EACpBhF,SAAS,EAAE+E,kBAAS,CAACE,IAAI;EACzBhF,SAAS,EAAE8E,kBAAS,CAACE,IAAI;EACzB/E,IAAI,EAAE6E,kBAAS,CAACG,MAAM;EACtB9E,MAAM,EAAE2E,kBAAS,CAACC,MAAM;EACxB3E,QAAQ,EAAE0E,kBAAS,CAACI,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7B7E,aAAa,EAAEyE,kBAAS,CAACI,KAAK,CAAC,CAAC,CAAC,CAAC;EAClC5E,SAAS,EAAEwE,kBAAS,CAACC,MAAM;EAC3BxE,QAAQ,EAAEuE,kBAAS,CAACK;AACtB,CAAC"}
|
|
1
|
+
{"version":3,"file":"Item.Summary.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Item","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Summary","_ref","id","roomId","isSoldOut","multiRoom","name","roomName","nights","selected","selectedBoard","taxesType","onSelect","isMobile","useDevice","currencyFormat","translate","useLocale","value","currency","useStore","busy","setBusy","useState","useEffect","keys","length","basePrice","cancellationId","checkoutPrice","confidential","dayPrice","discount","fees","originalPrice","price","rateId","taxes","totalPriceRaw","isSelected","handlePress","undefined","percentage","discountPercentage","createElement","Fragment","View","className","offset","summary","Text","accent","bold","small","L10N","LABEL_DISCOUNT","concat","row","gap","content","end","headline","level","maximumFractionDigits","action","light","lineThrough","tiny","LABEL_PER_NIGHT","getLabelTaxes","PriceDetails","board","priceDetails","Button","disabled","secondary","onPress","LABEL_NOT_AVAILABLE","LABEL_DESELECT","LABEL_SELECT","ACTION_RESERVE","exports","displayName","propTypes","PropTypes","number","bool","string","shape","func"],"sources":["../../../../../src/components/Rates/components/Item/Item.Summary.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { PriceDetails } from './components';\nimport { L10N } from './Item.l10n';\nimport * as style from './Item.module.css';\nimport { getLabelTaxes } from '../../helpers';\n\nconst Summary = ({\n id: roomId,\n isSoldOut = false,\n multiRoom = false,\n name: roomName,\n nights = 2,\n selected = {},\n selectedBoard = {},\n taxesType,\n onSelect,\n}) => {\n const { isMobile } = useDevice();\n const { currencyFormat, translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const [busy, setBusy] = useState(false);\n\n useEffect(() => Object.keys(selected).length === 0 && setBusy(false), [selected]);\n\n const {\n basePrice,\n cancellationId,\n checkoutPrice,\n confidential,\n dayPrice,\n discount,\n fees,\n id,\n name,\n originalPrice,\n price,\n rateId,\n taxes,\n totalPriceRaw,\n } = selectedBoard;\n\n const isSelected = selected.id === id;\n\n const handlePress = () => {\n if (!multiRoom) setBusy(true);\n onSelect(\n !isSelected\n ? {\n basePrice,\n cancellationId,\n checkoutPrice,\n confidential,\n discount,\n fees,\n id,\n name,\n price,\n rateId,\n roomId,\n roomName,\n taxes,\n totalPriceRaw,\n }\n : undefined,\n );\n };\n\n const { percentage: discountPercentage = 0 } = discount || {};\n\n return (\n <>\n <View className={[style.offset, style.summary]}>\n {!isSoldOut && discountPercentage > 0 && (\n <Text accent bold small>\n {translate(L10N.LABEL_DISCOUNT, { value: `${discountPercentage}%` })}\n </Text>\n )}\n\n <View row className={[style.gap, style.content, isSoldOut && style.end]}>\n {!isSoldOut && (\n <View>\n <View row className={style.price}>\n <Text bold headline level={isMobile || multiRoom || price >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, maximumFractionDigits: 0, value: price })}\n </Text>\n\n {price !== originalPrice && (\n <Text action light className={style.lineThrough}>\n {currencyFormat({ currency, maximumFractionDigits: 0, value: originalPrice })}\n </Text>\n )}\n </View>\n\n {nights > 1 && (\n <Text small={!isMobile} tiny={isMobile}>{`${currencyFormat({ currency, value: dayPrice })} ${translate(\n L10N.LABEL_PER_NIGHT,\n )}`}</Text>\n )}\n\n {!!taxesType && (\n <Text light small={!isMobile} tiny={isMobile}>\n {translate(getLabelTaxes(taxesType))}\n </Text>\n )}\n\n {(discountPercentage > 0 || fees > 0 || taxes > 0) && (\n <PriceDetails {...{ board: selectedBoard }} className={style.priceDetails} />\n )}\n </View>\n )}\n\n <Button busy={busy} disabled={isSoldOut} secondary={multiRoom && isSelected} onPress={handlePress}>\n {translate(\n isSoldOut\n ? L10N.LABEL_NOT_AVAILABLE\n : multiRoom\n ? isSelected\n ? L10N.LABEL_DESELECT\n : L10N.LABEL_SELECT\n : L10N.ACTION_RESERVE,\n )}\n </Button>\n </View>\n </View>\n </>\n );\n};\n\nSummary.displayName = 'Mirai:Core:Rates:Item:Summary';\n\nSummary.propTypes = {\n id: PropTypes.number,\n isSoldOut: PropTypes.bool,\n multiRoom: PropTypes.bool,\n name: PropTypes.string,\n nights: PropTypes.number,\n selected: PropTypes.shape({}),\n selectedBoard: PropTypes.shape({}),\n taxesType: PropTypes.number,\n onSelect: PropTypes.func,\n};\n\nexport { Summary };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAC,uBAAA,CAAAN,OAAA;AAEA,IAAAO,WAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAH,uBAAA,CAAAN,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAA8C,SAAAW,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAhB,uBAAA4B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAE9C,MAAMC,OAAO,GAAGC,IAAA,IAUV;EAAA,IAVW;IACfC,EAAE,EAAEC,MAAM;IACVC,SAAS,GAAG,KAAK;IACjBC,SAAS,GAAG,KAAK;IACjBC,IAAI,EAAEC,QAAQ;IACdC,MAAM,GAAG,CAAC;IACVC,QAAQ,GAAG,CAAC,CAAC;IACbC,aAAa,GAAG,CAAC,CAAC;IAClBC,SAAS;IACTC;EACF,CAAC,GAAAX,IAAA;EACC,MAAM;IAAEY;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IAAEC,cAAc;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjD,MAAM;IAAEC,KAAK,EAAE;MAAEC;IAAS,CAAC,GAAG,CAAC;EAAE,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAE/C,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAEvC,IAAAC,gBAAS,EAAC,MAAMlC,MAAM,CAACmC,IAAI,CAAChB,QAAQ,CAAC,CAACiB,MAAM,KAAK,CAAC,IAAIJ,OAAO,CAAC,KAAK,CAAC,EAAE,CAACb,QAAQ,CAAC,CAAC;EAEjF,MAAM;IACJkB,SAAS;IACTC,cAAc;IACdC,aAAa;IACbC,YAAY;IACZC,QAAQ;IACRC,QAAQ;IACRC,IAAI;IACJ/B,EAAE;IACFI,IAAI;IACJ4B,aAAa;IACbC,KAAK;IACLC,MAAM;IACNC,KAAK;IACLC;EACF,CAAC,GAAG5B,aAAa;EAEjB,MAAM6B,UAAU,GAAG9B,QAAQ,CAACP,EAAE,KAAKA,EAAE;EAErC,MAAMsC,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAI,CAACnC,SAAS,EAAEiB,OAAO,CAAC,IAAI,CAAC;IAC7BV,QAAQ,CACN,CAAC2B,UAAU,GACP;MACEZ,SAAS;MACTC,cAAc;MACdC,aAAa;MACbC,YAAY;MACZE,QAAQ;MACRC,IAAI;MACJ/B,EAAE;MACFI,IAAI;MACJ6B,KAAK;MACLC,MAAM;MACNjC,MAAM;MACNI,QAAQ;MACR8B,KAAK;MACLC;IACF,CAAC,GACDG,SACN,CAAC;EACH,CAAC;EAED,MAAM;IAAEC,UAAU,EAAEC,kBAAkB,GAAG;EAAE,CAAC,GAAGX,QAAQ,IAAI,CAAC,CAAC;EAE7D,oBACE5D,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAAxE,MAAA,CAAAY,OAAA,CAAA6D,QAAA,qBACEzE,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAA6E,IAAI;IAACC,SAAS,EAAE,CAACvE,KAAK,CAACwE,MAAM,EAAExE,KAAK,CAACyE,OAAO;EAAE,GAC5C,CAAC7C,SAAS,IAAIuC,kBAAkB,GAAG,CAAC,iBACnCvE,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAAiF,IAAI;IAACC,MAAM;IAACC,IAAI;IAACC,KAAK;EAAA,GACpBrC,SAAS,CAACsC,UAAI,CAACC,cAAc,EAAE;IAAErC,KAAK,KAAAsC,MAAA,CAAKb,kBAAkB;EAAI,CAAC,CAC/D,CACP,eAEDvE,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAA6E,IAAI;IAACW,GAAG;IAACV,SAAS,EAAE,CAACvE,KAAK,CAACkF,GAAG,EAAElF,KAAK,CAACmF,OAAO,EAAEvD,SAAS,IAAI5B,KAAK,CAACoF,GAAG;EAAE,GACrE,CAACxD,SAAS,iBACThC,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAA6E,IAAI,qBACH1E,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAA6E,IAAI;IAACW,GAAG;IAACV,SAAS,EAAEvE,KAAK,CAAC2D;EAAM,gBAC/B/D,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAAiF,IAAI;IAACE,IAAI;IAACS,QAAQ;IAACC,KAAK,EAAEjD,QAAQ,IAAIR,SAAS,IAAI8B,KAAK,IAAI,KAAK,GAAG,CAAC,GAAG;EAAE,GACxEpB,cAAc,CAAC;IAAEI,QAAQ;IAAE4C,qBAAqB,EAAE,CAAC;IAAE7C,KAAK,EAAEiB;EAAM,CAAC,CAChE,CAAC,EAENA,KAAK,KAAKD,aAAa,iBACtB9D,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAAiF,IAAI;IAACc,MAAM;IAACC,KAAK;IAAClB,SAAS,EAAEvE,KAAK,CAAC0F;EAAY,GAC7CnD,cAAc,CAAC;IAAEI,QAAQ;IAAE4C,qBAAqB,EAAE,CAAC;IAAE7C,KAAK,EAAEgB;EAAc,CAAC,CACxE,CAEJ,CAAC,EAEN1B,MAAM,GAAG,CAAC,iBACTpC,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAAiF,IAAI;IAACG,KAAK,EAAE,CAACxC,QAAS;IAACsD,IAAI,EAAEtD;EAAS,MAAA2C,MAAA,CAAKzC,cAAc,CAAC;IAAEI,QAAQ;IAAED,KAAK,EAAEa;EAAS,CAAC,CAAC,OAAAyB,MAAA,CAAIxC,SAAS,CACpGsC,UAAI,CAACc,eACP,CAAC,CAAS,CACX,EAEA,CAAC,CAACzD,SAAS,iBACVvC,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAAiF,IAAI;IAACe,KAAK;IAACZ,KAAK,EAAE,CAACxC,QAAS;IAACsD,IAAI,EAAEtD;EAAS,GAC1CG,SAAS,CAAC,IAAAqD,sBAAa,EAAC1D,SAAS,CAAC,CAC/B,CACP,EAEA,CAACgC,kBAAkB,GAAG,CAAC,IAAIV,IAAI,GAAG,CAAC,IAAII,KAAK,GAAG,CAAC,kBAC/CjE,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAACtE,WAAA,CAAAgG,YAAY;IAAOC,KAAK,EAAE7D,aAAa;IAAIqC,SAAS,EAAEvE,KAAK,CAACgG;EAAa,CAAE,CAE1E,CACP,eAEDpG,MAAA,CAAAY,OAAA,CAAA4D,aAAA,CAAC3E,GAAA,CAAAwG,MAAM;IAACpD,IAAI,EAAEA,IAAK;IAACqD,QAAQ,EAAEtE,SAAU;IAACuE,SAAS,EAAEtE,SAAS,IAAIkC,UAAW;IAACqC,OAAO,EAAEpC;EAAY,GAC/FxB,SAAS,CACRZ,SAAS,GACLkD,UAAI,CAACuB,mBAAmB,GACxBxE,SAAS,GACTkC,UAAU,GACRe,UAAI,CAACwB,cAAc,GACnBxB,UAAI,CAACyB,YAAY,GACnBzB,UAAI,CAAC0B,cACX,CACM,CACJ,CACF,CACN,CAAC;AAEP,CAAC;AAACC,OAAA,CAAAjF,OAAA,GAAAA,OAAA;AAEFA,OAAO,CAACkF,WAAW,GAAG,+BAA+B;AAErDlF,OAAO,CAACmF,SAAS,GAAG;EAClBjF,EAAE,EAAEkF,kBAAS,CAACC,MAAM;EACpBjF,SAAS,EAAEgF,kBAAS,CAACE,IAAI;EACzBjF,SAAS,EAAE+E,kBAAS,CAACE,IAAI;EACzBhF,IAAI,EAAE8E,kBAAS,CAACG,MAAM;EACtB/E,MAAM,EAAE4E,kBAAS,CAACC,MAAM;EACxB5E,QAAQ,EAAE2E,kBAAS,CAACI,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7B9E,aAAa,EAAE0E,kBAAS,CAACI,KAAK,CAAC,CAAC,CAAC,CAAC;EAClC7E,SAAS,EAAEyE,kBAAS,CAACC,MAAM;EAC3BzE,QAAQ,EAAEwE,kBAAS,CAACK;AACtB,CAAC"}
|
|
@@ -72,6 +72,13 @@ const PriceDetails = _ref => {
|
|
|
72
72
|
return total + value;
|
|
73
73
|
}, 0);
|
|
74
74
|
const total = basePrice + boardFees + boardTaxes + totalBaseExtras - totalBreakdown;
|
|
75
|
+
const {
|
|
76
|
+
confidential
|
|
77
|
+
} = cart.length === 0 ? board : cart.reduce((total, current) => ({
|
|
78
|
+
confidential: current.confidential && total.confidential
|
|
79
|
+
}), {
|
|
80
|
+
confidential: true
|
|
81
|
+
});
|
|
75
82
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
76
83
|
row: true
|
|
77
84
|
}, /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
|
|
@@ -109,7 +116,7 @@ const PriceDetails = _ref => {
|
|
|
109
116
|
className: style.item
|
|
110
117
|
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
111
118
|
action: true
|
|
112
|
-
}, translate(_Item.L10N.LABEL_DISCOUNT_TYPE[type]), promocode && has.discountPromocode && " ".concat(promocode.toUpperCase())), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
119
|
+
}, translate(_Item.L10N.LABEL_DISCOUNT_TYPE[type]), promocode && (has.discountPromocode || has.discountDeal && confidential) && " ".concat(promocode.toUpperCase())), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
113
120
|
action: true
|
|
114
121
|
}, currencyFormat({
|
|
115
122
|
currency,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PriceDetails.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_helpers","style","_interopRequireWildcard","_Rates","_Item","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","PriceDetails","_ref","board","cart","extras","others","isMobile","useDevice","value","currency","finder","promocode","useStore","currencyFormat","translate","useLocale","basePrice","discount","breakdown","fees","boardFees","taxes","boardTaxes","totalBaseExtras","length","getPrices","discountDeal","find","_ref2","type","DISCOUNT_TYPE","DEAL","discountPromocode","_ref3","PROMOTION","totalBreakdown","reduce","total","_ref4","createElement","View","row","Tooltip","pressable","Template","className","item","Text","action","L10N","LABEL_BASE_PRICE","LABEL_EXTRAS","map","_ref5","key","LABEL_DISCOUNT_TYPE","concat","toUpperCase","LABEL_TAXES","LABEL_FEES","anchor","bold","LABEL_TOTAL","tooltip","accent","small","LABEL_PRICE_DETAILS","exports","displayName","propTypes","PropTypes","shape","arrayOf","number","percentage","originalPrice"],"sources":["../../../../../../../src/components/Rates/components/Item/components/PriceDetails/PriceDetails.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { getPrices } from './helpers';\nimport * as style from './PriceDetails.module.css';\nimport { DISCOUNT_TYPE } from '../../../../Rates.constants';\nimport { L10N } from '../../Item.l10n';\n\nconst PriceDetails = ({ board = {}, cart = [], extras = [], ...others }) => {\n const { isMobile } = useDevice();\n const { value: { currency, finder: { promocode } = {} } = {} } = useStore();\n const { currencyFormat, translate } = useLocale();\n\n const {\n basePrice = 0,\n discount: { breakdown = [] } = {},\n fees: boardFees = 0,\n taxes: boardTaxes = 0,\n totalBaseExtras = 0,\n } = cart.length === 0 ? board : getPrices({ cart, extras, ...others });\n\n const has = {\n discountDeal: breakdown.find(({ type }) => type === DISCOUNT_TYPE.DEAL),\n discountPromocode: breakdown.find(({ type }) => type === DISCOUNT_TYPE.PROMOTION),\n };\n\n const totalBreakdown = breakdown.reduce((total, { value }) => total + value, 0);\n const total = basePrice + boardFees + boardTaxes + totalBaseExtras - totalBreakdown;\n\n return (\n <View row>\n <Tooltip\n pressable\n Template={() => (\n <View className={style.breakdown}>\n {basePrice > 0 && (\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_BASE_PRICE)}</Text>\n <Text action>{currencyFormat({ currency, value: basePrice })}</Text>\n </View>\n )}\n\n {totalBaseExtras > 0 && (\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_EXTRAS)}</Text>\n <Text action>{currencyFormat({ currency, value: totalBaseExtras })}</Text>\n </View>\n )}\n\n {breakdown?.map(({ type, value }) => (\n <View row key={type} className={style.item}>\n <Text action>\n {translate(L10N.LABEL_DISCOUNT_TYPE[type])}\n {promocode && has.discountPromocode && ` ${promocode.toUpperCase()}`}\n </Text>\n <Text action>{currencyFormat({ currency, value: -value })}</Text>\n </View>\n ))}\n\n {boardTaxes > 0 && (\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_TAXES)}</Text>\n <Text action>{currencyFormat({ currency, value: boardTaxes })}</Text>\n </View>\n )}\n\n {boardFees > 0 && (\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_FEES)}</Text>\n <Text action>{currencyFormat({ currency, value: boardFees })}</Text>\n </View>\n )}\n\n <View className={style.anchor} />\n\n <View row className={style.item}>\n <Text bold>{translate(L10N.LABEL_TOTAL)}</Text>\n <Text bold>{currencyFormat({ currency, value: total })}</Text>\n </View>\n </View>\n )}\n className={style.tooltip}\n >\n <Text accent action={!isMobile} small={isMobile} className={others.className}>\n {`${translate(L10N.LABEL_PRICE_DETAILS)} >`}\n </Text>\n </Tooltip>\n </View>\n );\n};\n\nPriceDetails.displayName = 'Mirai:Core:Rates:Item:PriceDetails';\n\nPriceDetails.propTypes = {\n board: PropTypes.shape({\n discount: PropTypes.shape({\n breakdown: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.number,\n value: PropTypes.number,\n }),\n ),\n percentage: PropTypes.number,\n }),\n originalPrice: PropTypes.number,\n }),\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n extras: PropTypes.arrayOf(PropTypes.shape({})),\n};\n\nexport { PriceDetails };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PriceDetails.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_helpers","style","_interopRequireWildcard","_Rates","_Item","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","PriceDetails","_ref","board","cart","extras","others","isMobile","useDevice","value","currency","finder","promocode","useStore","currencyFormat","translate","useLocale","basePrice","discount","breakdown","fees","boardFees","taxes","boardTaxes","totalBaseExtras","length","getPrices","discountDeal","find","_ref2","type","DISCOUNT_TYPE","DEAL","discountPromocode","_ref3","PROMOTION","totalBreakdown","reduce","total","_ref4","confidential","current","createElement","View","row","Tooltip","pressable","Template","className","item","Text","action","L10N","LABEL_BASE_PRICE","LABEL_EXTRAS","map","_ref5","key","LABEL_DISCOUNT_TYPE","concat","toUpperCase","LABEL_TAXES","LABEL_FEES","anchor","bold","LABEL_TOTAL","tooltip","accent","small","LABEL_PRICE_DETAILS","exports","displayName","propTypes","PropTypes","shape","arrayOf","number","percentage","originalPrice"],"sources":["../../../../../../../src/components/Rates/components/Item/components/PriceDetails/PriceDetails.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { getPrices } from './helpers';\nimport * as style from './PriceDetails.module.css';\nimport { DISCOUNT_TYPE } from '../../../../Rates.constants';\nimport { L10N } from '../../Item.l10n';\n\nconst PriceDetails = ({ board = {}, cart = [], extras = [], ...others }) => {\n const { isMobile } = useDevice();\n const { value: { currency, finder: { promocode } = {} } = {} } = useStore();\n const { currencyFormat, translate } = useLocale();\n\n const {\n basePrice = 0,\n discount: { breakdown = [] } = {},\n fees: boardFees = 0,\n taxes: boardTaxes = 0,\n totalBaseExtras = 0,\n } = cart.length === 0 ? board : getPrices({ cart, extras, ...others });\n\n const has = {\n discountDeal: breakdown.find(({ type }) => type === DISCOUNT_TYPE.DEAL),\n discountPromocode: breakdown.find(({ type }) => type === DISCOUNT_TYPE.PROMOTION),\n };\n\n const totalBreakdown = breakdown.reduce((total, { value }) => total + value, 0);\n const total = basePrice + boardFees + boardTaxes + totalBaseExtras - totalBreakdown;\n const { confidential } =\n cart.length === 0\n ? board\n : cart.reduce((total, current) => ({ confidential: current.confidential && total.confidential }), {\n confidential: true,\n });\n\n return (\n <View row>\n <Tooltip\n pressable\n Template={() => (\n <View className={style.breakdown}>\n {basePrice > 0 && (\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_BASE_PRICE)}</Text>\n <Text action>{currencyFormat({ currency, value: basePrice })}</Text>\n </View>\n )}\n\n {totalBaseExtras > 0 && (\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_EXTRAS)}</Text>\n <Text action>{currencyFormat({ currency, value: totalBaseExtras })}</Text>\n </View>\n )}\n\n {breakdown?.map(({ type, value }) => (\n <View row key={type} className={style.item}>\n <Text action>\n {translate(L10N.LABEL_DISCOUNT_TYPE[type])}\n {promocode &&\n (has.discountPromocode || (has.discountDeal && confidential)) &&\n ` ${promocode.toUpperCase()}`}\n </Text>\n <Text action>{currencyFormat({ currency, value: -value })}</Text>\n </View>\n ))}\n\n {boardTaxes > 0 && (\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_TAXES)}</Text>\n <Text action>{currencyFormat({ currency, value: boardTaxes })}</Text>\n </View>\n )}\n\n {boardFees > 0 && (\n <View row className={style.item}>\n <Text action>{translate(L10N.LABEL_FEES)}</Text>\n <Text action>{currencyFormat({ currency, value: boardFees })}</Text>\n </View>\n )}\n\n <View className={style.anchor} />\n\n <View row className={style.item}>\n <Text bold>{translate(L10N.LABEL_TOTAL)}</Text>\n <Text bold>{currencyFormat({ currency, value: total })}</Text>\n </View>\n </View>\n )}\n className={style.tooltip}\n >\n <Text accent action={!isMobile} small={isMobile} className={others.className}>\n {`${translate(L10N.LABEL_PRICE_DETAILS)} >`}\n </Text>\n </Tooltip>\n </View>\n );\n};\n\nPriceDetails.displayName = 'Mirai:Core:Rates:Item:PriceDetails';\n\nPriceDetails.propTypes = {\n board: PropTypes.shape({\n discount: PropTypes.shape({\n breakdown: PropTypes.arrayOf(\n PropTypes.shape({\n type: PropTypes.number,\n value: PropTypes.number,\n }),\n ),\n percentage: PropTypes.number,\n }),\n originalPrice: PropTypes.number,\n }),\n cart: PropTypes.arrayOf(PropTypes.shape({})),\n extras: PropTypes.arrayOf(PropTypes.shape({})),\n};\n\nexport { PriceDetails };\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalMapView.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_ModalMapView","style","_helpers2","_shared__","_helpers3","_helpers4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","memoizedSelected","ModalMapView","_ref","_selected$features","items","nights","visible","onClose","others","isMobile","useDevice","translate","useLocale","value","currency","finder","forwarder","hotel","locale","tags","options","places","useStore","mapRef","useRef","map","setMap","useState","selected","setSelected","theme","Theme","icon","label","customMarker","accent","base","place","title","useEffect","loadGMaps","then","bounds","window","google","maps","LatLngBounds","Map","current","fullscreenControl","mapTypeControl","addListener","undefined","markers","forEach","marker","dataSource","item","position","lat","latitude","lng","longitude","price","text","currencyFormat","fancy","symbol","Marker","highlightMarker","resetMarker","push","extend","fitBounds","catch","Event","publish","EVENT","NOTIFICATION","error","L10N","NOTIFICATION_ERROR_MAP","panTo","itemIndex","findIndex","_ref2","id","index","setIcon","fillColor","strokeColor","scale","setLabel","color","priceMarker","setZIndex","handlePress","find","isHotel","ids","includes","toString","location","href","concat","rates","toUrlParams","fetchUrlParams","search","getFinderParams","idtokenprovider","createElement","Modal","fit","className","modal","View","ref","Card","styles","card","image","images","backgroundImage","content","Text","bold","headline","name","action","light","small","features","anchor","row","maximumFractionDigits","tiny","LABEL_PER_NIGHT","Button","onPress","ACTION_VIEW_MORE","exports","propTypes","PropTypes","arrayOf","shape","number","string","func","displayName"],"sources":["../../../../../src/components/Rates/components/ModalMapView/ModalMapView.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Button, Modal, styles, Theme, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { customMarker, loadGMaps } from './helpers';\nimport { L10N } from './ModalMapView.l10n';\nimport * as style from './ModalMapView.module.css';\nimport { fetchUrlParams } from '../../../../helpers';\nimport { Card } from '../../../__shared__';\nimport { EVENT, toUrlParams } from '../../../helpers';\nimport { getFinderParams } from '../../helpers';\n\nlet memoizedSelected;\n\nconst ModalMapView = ({ items = [], nights = 1, visible, onClose, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { currency, finder, forwarder = {}, hotel, locale, tags: { options: places = [] } = {} },\n } = useStore();\n\n const mapRef = useRef();\n const [map, setMap] = useState();\n const [selected, setSelected] = useState();\n\n const theme = Theme.get();\n const { icon, label } = customMarker(theme);\n const { accent, base } = theme;\n const { place: { title } = {} } = finder;\n\n useEffect(() => {\n if (!visible) return;\n\n loadGMaps()\n .then(() => {\n const bounds = new window.google.maps.LatLngBounds();\n const map = new window.google.maps.Map(mapRef.current, {\n fullscreenControl: false,\n mapTypeControl: false,\n });\n\n map.addListener('click', () => setSelected());\n map.addListener('dragstart', () => setSelected());\n setMap(map);\n\n if (!visible) return;\n\n setSelected(undefined);\n map.markers = map.markers || [];\n map.markers.forEach((marker) => marker.setMap());\n map.markers = [];\n\n items.forEach((dataSource = {}) => {\n const item = { ...dataSource, position: { lat: dataSource.latitude, lng: dataSource.longitude } };\n const { price, position } = item;\n const text = currencyFormat({ currency, fancy: true, locale, symbol: true, value: price });\n const marker = new window.google.maps.Marker({ map, position, icon, label: { ...label, text } });\n\n marker.addListener('click', () => setSelected(item));\n marker.addListener('mouseover', () => highlightMarker(marker, item));\n marker.addListener('mouseout', () => (memoizedSelected !== item ? resetMarker(marker, item) : undefined));\n\n map.markers.push(marker);\n bounds.extend(position);\n });\n\n if (items.length > 0) map.fitBounds(bounds);\n })\n .catch(() => {\n Event.publish(EVENT.NOTIFICATION, { error: true, ...L10N.NOTIFICATION_ERROR_MAP });\n onClose();\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [items, visible]);\n\n useEffect(() => {\n memoizedSelected = selected;\n if (!map || !items.length) return;\n if (selected) map.panTo(selected.position);\n\n const itemIndex = selected ? items.findIndex(({ id }) => id === selected.id) : -1;\n map.markers.forEach((marker, index) => {\n index === itemIndex ? highlightMarker(marker, items[index]) : resetMarker(marker, items[index], index);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selected]);\n\n const highlightMarker = (marker, { price } = {}) => {\n marker.setIcon({ ...icon, fillColor: accent, strokeColor: accent, scale: 1.1 });\n marker.setLabel({ ...label, color: base, text: priceMarker(price) });\n marker.setZIndex(1024);\n };\n\n const resetMarker = (marker, { price } = {}, index) => {\n marker.setIcon(icon);\n marker.setLabel({ ...label, text: priceMarker(price) });\n marker.setZIndex(index);\n };\n\n const priceMarker = (price) => currencyFormat({ currency, fancy: true, locale, symbol: true, value: price });\n\n const handlePress = () => {\n const { id } = selected;\n const { value } = places.find(({ isHotel, id: ids = [] } = {}) => isHotel && ids.includes(id.toString())) || {};\n\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 };\n\n return (\n <Modal {...others} {...{ title, visible, onClose }} fit className={[style.modal, others.className]}>\n <View ref={mapRef} className={style.map} />\n\n <Card className={styles(style.card, selected && style.visible)}>\n <View\n className={style.image}\n style={selected?.images ? { backgroundImage: `url(${selected?.images[0]})` } : undefined}\n />\n <View className={style.content}>\n <Text bold headline={!isMobile}>\n {selected?.name}\n </Text>\n <Text action={!isMobile} light small={isMobile} className={style.location}>\n {selected?.features?.location}\n </Text>\n\n <View className={style.anchor} />\n\n <View row>\n <View>\n <Text bold>{currencyFormat({ currency, locale, maximumFractionDigits: 0, value: selected?.price })}</Text>\n <Text light small={!isMobile} tiny={isMobile}>\n {currencyFormat({ currency, value: selected?.price / nights })} {translate(L10N.LABEL_PER_NIGHT)}\n </Text>\n </View>\n <View className={style.anchor} />\n <Button small onPress={handlePress}>\n {translate(L10N.ACTION_VIEW_MORE)}\n </Button>\n </View>\n </View>\n </Card>\n </Modal>\n );\n};\n\nModalMapView.propTypes = {\n items: PropTypes.arrayOf(PropTypes.shape({})),\n nights: PropTypes.number,\n title: PropTypes.string,\n visible: PropTypes.visible,\n onClose: PropTypes.func,\n};\n\nModalMapView.displayName = 'Mirai:Core:Rates:ModalMapView';\n\nexport { ModalMapView };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModalMapView.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_ModalMapView","style","_helpers2","_shared__","_helpers3","_helpers4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","memoizedSelected","ModalMapView","_ref","_selected$features","items","nights","visible","onClose","others","isMobile","useDevice","translate","useLocale","value","currency","finder","forwarder","hotel","locale","tags","options","places","useStore","mapRef","useRef","map","setMap","useState","selected","setSelected","theme","Theme","icon","label","customMarker","accent","base","place","title","useEffect","loadGMaps","then","bounds","window","google","maps","LatLngBounds","Map","current","fullscreenControl","mapTypeControl","addListener","undefined","markers","forEach","marker","dataSource","item","position","lat","latitude","lng","longitude","price","text","currencyFormat","fancy","symbol","Marker","highlightMarker","resetMarker","push","extend","fitBounds","catch","Event","publish","EVENT","NOTIFICATION","error","L10N","NOTIFICATION_ERROR_MAP","panTo","itemIndex","findIndex","_ref2","id","index","setIcon","fillColor","strokeColor","scale","setLabel","color","priceMarker","setZIndex","handlePress","find","isHotel","ids","includes","toString","location","href","concat","rates","toUrlParams","fetchUrlParams","search","getFinderParams","idtokenprovider","createElement","Modal","fit","className","modal","View","ref","Card","styles","card","image","images","backgroundImage","content","Text","bold","headline","name","action","light","small","features","anchor","row","maximumFractionDigits","tiny","LABEL_PER_NIGHT","Button","onPress","ACTION_VIEW_MORE","exports","propTypes","PropTypes","arrayOf","shape","number","string","func","displayName"],"sources":["../../../../../src/components/Rates/components/ModalMapView/ModalMapView.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { currencyFormat, useLocale } from '@mirai/locale';\nimport { Button, Modal, styles, Theme, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { customMarker, loadGMaps } from './helpers';\nimport { L10N } from './ModalMapView.l10n';\nimport * as style from './ModalMapView.module.css';\nimport { fetchUrlParams } from '../../../../helpers';\nimport { Card } from '../../../__shared__';\nimport { EVENT, toUrlParams } from '../../../helpers';\nimport { getFinderParams } from '../../helpers';\n\nlet memoizedSelected;\n\nconst ModalMapView = ({ items = [], nights = 1, visible, onClose, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { currency, finder = {}, forwarder = {}, hotel, locale, tags: { options: places = [] } = {} },\n } = useStore();\n\n const mapRef = useRef();\n const [map, setMap] = useState();\n const [selected, setSelected] = useState();\n\n const theme = Theme.get();\n const { icon, label } = customMarker(theme);\n const { accent, base } = theme;\n const { place: { title } = {} } = finder;\n\n useEffect(() => {\n if (!visible) return;\n\n loadGMaps()\n .then(() => {\n const bounds = new window.google.maps.LatLngBounds();\n const map = new window.google.maps.Map(mapRef.current, {\n fullscreenControl: false,\n mapTypeControl: false,\n });\n\n map.addListener('click', () => setSelected());\n map.addListener('dragstart', () => setSelected());\n setMap(map);\n\n if (!visible) return;\n\n setSelected(undefined);\n map.markers = map.markers || [];\n map.markers.forEach((marker) => marker.setMap());\n map.markers = [];\n\n items.forEach((dataSource = {}) => {\n const item = { ...dataSource, position: { lat: dataSource.latitude, lng: dataSource.longitude } };\n const { price, position } = item;\n const text = currencyFormat({ currency, fancy: true, locale, symbol: true, value: price });\n const marker = new window.google.maps.Marker({ map, position, icon, label: { ...label, text } });\n\n marker.addListener('click', () => setSelected(item));\n marker.addListener('mouseover', () => highlightMarker(marker, item));\n marker.addListener('mouseout', () => (memoizedSelected !== item ? resetMarker(marker, item) : undefined));\n\n map.markers.push(marker);\n bounds.extend(position);\n });\n\n if (items.length > 0) map.fitBounds(bounds);\n })\n .catch(() => {\n Event.publish(EVENT.NOTIFICATION, { error: true, ...L10N.NOTIFICATION_ERROR_MAP });\n onClose();\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [items, visible]);\n\n useEffect(() => {\n memoizedSelected = selected;\n if (!map || !items.length) return;\n if (selected) map.panTo(selected.position);\n\n const itemIndex = selected ? items.findIndex(({ id }) => id === selected.id) : -1;\n map.markers.forEach((marker, index) => {\n index === itemIndex ? highlightMarker(marker, items[index]) : resetMarker(marker, items[index], index);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [selected]);\n\n const highlightMarker = (marker, { price } = {}) => {\n marker.setIcon({ ...icon, fillColor: accent, strokeColor: accent, scale: 1.1 });\n marker.setLabel({ ...label, color: base, text: priceMarker(price) });\n marker.setZIndex(1024);\n };\n\n const resetMarker = (marker, { price } = {}, index) => {\n marker.setIcon(icon);\n marker.setLabel({ ...label, text: priceMarker(price) });\n marker.setZIndex(index);\n };\n\n const priceMarker = (price) => currencyFormat({ currency, fancy: true, locale, symbol: true, value: price });\n\n const handlePress = () => {\n const { id } = selected;\n const { value } = places.find(({ isHotel, id: ids = [] } = {}) => isHotel && ids.includes(id.toString())) || {};\n\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 };\n\n return (\n <Modal {...others} {...{ title, visible, onClose }} fit className={[style.modal, others.className]}>\n <View ref={mapRef} className={style.map} />\n\n <Card className={styles(style.card, selected && style.visible)}>\n <View\n className={style.image}\n style={selected?.images ? { backgroundImage: `url(${selected?.images[0]})` } : undefined}\n />\n <View className={style.content}>\n <Text bold headline={!isMobile}>\n {selected?.name}\n </Text>\n <Text action={!isMobile} light small={isMobile} className={style.location}>\n {selected?.features?.location}\n </Text>\n\n <View className={style.anchor} />\n\n <View row>\n <View>\n <Text bold>{currencyFormat({ currency, locale, maximumFractionDigits: 0, value: selected?.price })}</Text>\n <Text light small={!isMobile} tiny={isMobile}>\n {currencyFormat({ currency, value: selected?.price / nights })} {translate(L10N.LABEL_PER_NIGHT)}\n </Text>\n </View>\n <View className={style.anchor} />\n <Button small onPress={handlePress}>\n {translate(L10N.ACTION_VIEW_MORE)}\n </Button>\n </View>\n </View>\n </Card>\n </Modal>\n );\n};\n\nModalMapView.propTypes = {\n items: PropTypes.arrayOf(PropTypes.shape({})),\n nights: PropTypes.number,\n title: PropTypes.string,\n visible: PropTypes.visible,\n onClose: PropTypes.func,\n};\n\nModalMapView.displayName = 'Mirai:Core:Rates:ModalMapView';\n\nexport { ModalMapView };\n"],"mappings":"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"}
|
|
@@ -76,6 +76,7 @@
|
|
|
76
76
|
"roomId": 44933,
|
|
77
77
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
78
78
|
"rateId": "25246--44933--253900b0--318610",
|
|
79
|
+
"confidential": false,
|
|
79
80
|
"included": [],
|
|
80
81
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
81
82
|
"restrictions": [],
|
|
@@ -101,6 +102,7 @@
|
|
|
101
102
|
"roomId": 44933,
|
|
102
103
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
103
104
|
"rateId": "25247--44933--253900b0--318610",
|
|
105
|
+
"confidential": false,
|
|
104
106
|
"included": [],
|
|
105
107
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
106
108
|
"restrictions": [],
|
|
@@ -126,6 +128,7 @@
|
|
|
126
128
|
"roomId": 44933,
|
|
127
129
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
128
130
|
"rateId": "25245--44933--253900b0--318610",
|
|
131
|
+
"confidential": false,
|
|
129
132
|
"included": [],
|
|
130
133
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
131
134
|
"restrictions": [],
|
|
@@ -151,6 +154,7 @@
|
|
|
151
154
|
"roomId": 44933,
|
|
152
155
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
153
156
|
"rateId": "25246--44933--253900b0--318610",
|
|
157
|
+
"confidential": false,
|
|
154
158
|
"included": [],
|
|
155
159
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
156
160
|
"restrictions": [],
|
|
@@ -176,6 +180,7 @@
|
|
|
176
180
|
"roomId": 44933,
|
|
177
181
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
178
182
|
"rateId": "25247--44933--253900b0--318610",
|
|
183
|
+
"confidential": false,
|
|
179
184
|
"included": [],
|
|
180
185
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
181
186
|
"restrictions": [],
|
|
@@ -201,6 +206,7 @@
|
|
|
201
206
|
"roomId": 44933,
|
|
202
207
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
203
208
|
"rateId": "25245--44933--253900b0--318610",
|
|
209
|
+
"confidential": false,
|
|
204
210
|
"included": [],
|
|
205
211
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
206
212
|
"restrictions": [],
|
|
@@ -335,6 +341,7 @@
|
|
|
335
341
|
"roomId": 44932,
|
|
336
342
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
337
343
|
"rateId": "25246--44932--253897b0--318610",
|
|
344
|
+
"confidential": false,
|
|
338
345
|
"included": [],
|
|
339
346
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
340
347
|
"restrictions": [],
|
|
@@ -360,6 +367,7 @@
|
|
|
360
367
|
"roomId": 44932,
|
|
361
368
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
362
369
|
"rateId": "25247--44932--253897b0--318610",
|
|
370
|
+
"confidential": false,
|
|
363
371
|
"included": [],
|
|
364
372
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
365
373
|
"restrictions": [],
|
|
@@ -385,6 +393,7 @@
|
|
|
385
393
|
"roomId": 44932,
|
|
386
394
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
387
395
|
"rateId": "25245--44932--253897b0--318610",
|
|
396
|
+
"confidential": false,
|
|
388
397
|
"included": [],
|
|
389
398
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
390
399
|
"restrictions": [],
|
|
@@ -410,6 +419,7 @@
|
|
|
410
419
|
"roomId": 44932,
|
|
411
420
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
412
421
|
"rateId": "25246--44932--253897b0--318610",
|
|
422
|
+
"confidential": false,
|
|
413
423
|
"included": [],
|
|
414
424
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
415
425
|
"restrictions": [],
|
|
@@ -435,6 +445,7 @@
|
|
|
435
445
|
"roomId": 44932,
|
|
436
446
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
437
447
|
"rateId": "25247--44932--253897b0--318610",
|
|
448
|
+
"confidential": false,
|
|
438
449
|
"included": [],
|
|
439
450
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
440
451
|
"restrictions": [],
|
|
@@ -460,6 +471,7 @@
|
|
|
460
471
|
"roomId": 44932,
|
|
461
472
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
462
473
|
"rateId": "25245--44932--253897b0--318610",
|
|
474
|
+
"confidential": false,
|
|
463
475
|
"included": [],
|
|
464
476
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
465
477
|
"restrictions": [],
|
|
@@ -594,6 +606,7 @@
|
|
|
594
606
|
"roomId": 44935,
|
|
595
607
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
596
608
|
"rateId": "25246--44935--253905b0--318610",
|
|
609
|
+
"confidential": false,
|
|
597
610
|
"included": [],
|
|
598
611
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
599
612
|
"restrictions": [],
|
|
@@ -619,6 +632,7 @@
|
|
|
619
632
|
"roomId": 44935,
|
|
620
633
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
621
634
|
"rateId": "25247--44935--253905b0--318610",
|
|
635
|
+
"confidential": false,
|
|
622
636
|
"included": [],
|
|
623
637
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
624
638
|
"restrictions": [],
|
|
@@ -644,6 +658,7 @@
|
|
|
644
658
|
"roomId": 44935,
|
|
645
659
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
646
660
|
"rateId": "25245--44935--253905b0--318610",
|
|
661
|
+
"confidential": false,
|
|
647
662
|
"included": [],
|
|
648
663
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
649
664
|
"restrictions": [],
|
|
@@ -669,6 +684,7 @@
|
|
|
669
684
|
"roomId": 44935,
|
|
670
685
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
671
686
|
"rateId": "25246--44935--253905b0--318610",
|
|
687
|
+
"confidential": false,
|
|
672
688
|
"included": [],
|
|
673
689
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
674
690
|
"restrictions": [],
|
|
@@ -694,6 +710,7 @@
|
|
|
694
710
|
"roomId": 44935,
|
|
695
711
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
696
712
|
"rateId": "25247--44935--253905b0--318610",
|
|
713
|
+
"confidential": false,
|
|
697
714
|
"included": [],
|
|
698
715
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
699
716
|
"restrictions": [],
|
|
@@ -719,6 +736,7 @@
|
|
|
719
736
|
"roomId": 44935,
|
|
720
737
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
721
738
|
"rateId": "25245--44935--253905b0--318610",
|
|
739
|
+
"confidential": false,
|
|
722
740
|
"included": [],
|
|
723
741
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
724
742
|
"restrictions": [],
|
|
@@ -859,6 +877,7 @@
|
|
|
859
877
|
"roomId": 44934,
|
|
860
878
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
861
879
|
"rateId": "25246--44934--268895b0--318610",
|
|
880
|
+
"confidential": false,
|
|
862
881
|
"included": [],
|
|
863
882
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
864
883
|
"restrictions": [],
|
|
@@ -884,6 +903,7 @@
|
|
|
884
903
|
"roomId": 44934,
|
|
885
904
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
886
905
|
"rateId": "25247--44934--268895b0--318610",
|
|
906
|
+
"confidential": false,
|
|
887
907
|
"included": [],
|
|
888
908
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
889
909
|
"restrictions": [],
|
|
@@ -909,6 +929,7 @@
|
|
|
909
929
|
"roomId": 44934,
|
|
910
930
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
911
931
|
"rateId": "25245--44934--268895b0--318610",
|
|
932
|
+
"confidential": false,
|
|
912
933
|
"included": [],
|
|
913
934
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
914
935
|
"restrictions": [],
|
|
@@ -934,6 +955,7 @@
|
|
|
934
955
|
"roomId": 44934,
|
|
935
956
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
936
957
|
"rateId": "25246--44934--268895b0--318610",
|
|
958
|
+
"confidential": false,
|
|
937
959
|
"included": [],
|
|
938
960
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
939
961
|
"restrictions": [],
|
|
@@ -959,6 +981,7 @@
|
|
|
959
981
|
"roomId": 44934,
|
|
960
982
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
961
983
|
"rateId": "25247--44934--268895b0--318610",
|
|
984
|
+
"confidential": false,
|
|
962
985
|
"included": [],
|
|
963
986
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
964
987
|
"restrictions": [],
|
|
@@ -984,6 +1007,7 @@
|
|
|
984
1007
|
"roomId": 44934,
|
|
985
1008
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
986
1009
|
"rateId": "25245--44934--268895b0--318610",
|
|
1010
|
+
"confidential": false,
|
|
987
1011
|
"included": [],
|
|
988
1012
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
989
1013
|
"restrictions": [],
|
|
@@ -1119,6 +1143,7 @@
|
|
|
1119
1143
|
"roomId": 44936,
|
|
1120
1144
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
1121
1145
|
"rateId": "25246--44936--253909b0--318610",
|
|
1146
|
+
"confidential": false,
|
|
1122
1147
|
"included": [],
|
|
1123
1148
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
1124
1149
|
"restrictions": [],
|
|
@@ -1144,6 +1169,7 @@
|
|
|
1144
1169
|
"roomId": 44936,
|
|
1145
1170
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
1146
1171
|
"rateId": "25247--44936--253909b0--318610",
|
|
1172
|
+
"confidential": false,
|
|
1147
1173
|
"included": [],
|
|
1148
1174
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
1149
1175
|
"restrictions": [],
|
|
@@ -1169,6 +1195,7 @@
|
|
|
1169
1195
|
"roomId": 44936,
|
|
1170
1196
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
1171
1197
|
"rateId": "25245--44936--253909b0--318610",
|
|
1198
|
+
"confidential": false,
|
|
1172
1199
|
"included": [],
|
|
1173
1200
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
1174
1201
|
"restrictions": [],
|
|
@@ -1194,6 +1221,7 @@
|
|
|
1194
1221
|
"roomId": 44936,
|
|
1195
1222
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
1196
1223
|
"rateId": "25246--44936--253909b0--318610",
|
|
1224
|
+
"confidential": false,
|
|
1197
1225
|
"included": [],
|
|
1198
1226
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
1199
1227
|
"restrictions": [],
|
|
@@ -1219,6 +1247,7 @@
|
|
|
1219
1247
|
"roomId": 44936,
|
|
1220
1248
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
1221
1249
|
"rateId": "25247--44936--253909b0--318610",
|
|
1250
|
+
"confidential": false,
|
|
1222
1251
|
"included": [],
|
|
1223
1252
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
1224
1253
|
"restrictions": [],
|
|
@@ -1244,6 +1273,7 @@
|
|
|
1244
1273
|
"roomId": 44936,
|
|
1245
1274
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
1246
1275
|
"rateId": "25245--44936--253909b0--318610",
|
|
1276
|
+
"confidential": false,
|
|
1247
1277
|
"included": [],
|
|
1248
1278
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
1249
1279
|
"restrictions": [],
|
|
@@ -1385,6 +1415,7 @@
|
|
|
1385
1415
|
"roomId": 44937,
|
|
1386
1416
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
1387
1417
|
"rateId": "25246--44937--253918b0--318610",
|
|
1418
|
+
"confidential": false,
|
|
1388
1419
|
"included": [],
|
|
1389
1420
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
1390
1421
|
"restrictions": [],
|
|
@@ -1410,6 +1441,7 @@
|
|
|
1410
1441
|
"roomId": 44937,
|
|
1411
1442
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
1412
1443
|
"rateId": "25247--44937--253918b0--318610",
|
|
1444
|
+
"confidential": false,
|
|
1413
1445
|
"included": [],
|
|
1414
1446
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
1415
1447
|
"restrictions": [],
|
|
@@ -1435,6 +1467,7 @@
|
|
|
1435
1467
|
"roomId": 44937,
|
|
1436
1468
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
1437
1469
|
"rateId": "25245--44937--253918b0--318610",
|
|
1470
|
+
"confidential": false,
|
|
1438
1471
|
"included": [],
|
|
1439
1472
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
1440
1473
|
"restrictions": [],
|
|
@@ -1460,6 +1493,7 @@
|
|
|
1460
1493
|
"roomId": 44937,
|
|
1461
1494
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
1462
1495
|
"rateId": "25246--44937--253918b0--318610",
|
|
1496
|
+
"confidential": false,
|
|
1463
1497
|
"included": [],
|
|
1464
1498
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
1465
1499
|
"restrictions": [],
|
|
@@ -1485,6 +1519,7 @@
|
|
|
1485
1519
|
"roomId": 44937,
|
|
1486
1520
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
1487
1521
|
"rateId": "25247--44937--253918b0--318610",
|
|
1522
|
+
"confidential": false,
|
|
1488
1523
|
"included": [],
|
|
1489
1524
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
1490
1525
|
"restrictions": [],
|
|
@@ -1510,6 +1545,7 @@
|
|
|
1510
1545
|
"roomId": 44937,
|
|
1511
1546
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
1512
1547
|
"rateId": "25245--44937--253918b0--318610",
|
|
1548
|
+
"confidential": false,
|
|
1513
1549
|
"included": [],
|
|
1514
1550
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
1515
1551
|
"restrictions": [],
|
|
@@ -1653,6 +1689,7 @@
|
|
|
1653
1689
|
"roomId": 44938,
|
|
1654
1690
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
1655
1691
|
"rateId": "25246--44938--253925b0--318610",
|
|
1692
|
+
"confidential": false,
|
|
1656
1693
|
"included": [],
|
|
1657
1694
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
1658
1695
|
"restrictions": [],
|
|
@@ -1678,6 +1715,7 @@
|
|
|
1678
1715
|
"roomId": 44938,
|
|
1679
1716
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
1680
1717
|
"rateId": "25247--44938--253925b0--318610",
|
|
1718
|
+
"confidential": false,
|
|
1681
1719
|
"included": [],
|
|
1682
1720
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
1683
1721
|
"restrictions": [],
|
|
@@ -1703,6 +1741,7 @@
|
|
|
1703
1741
|
"roomId": 44938,
|
|
1704
1742
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
1705
1743
|
"rateId": "25245--44938--253925b0--318610",
|
|
1744
|
+
"confidential": false,
|
|
1706
1745
|
"included": [],
|
|
1707
1746
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
1708
1747
|
"restrictions": [],
|
|
@@ -1728,6 +1767,7 @@
|
|
|
1728
1767
|
"roomId": 44938,
|
|
1729
1768
|
"cancellationId": "nonRefundable-No es posible cancelar sin penalización.-true",
|
|
1730
1769
|
"rateId": "25246--44938--253925b0--318610",
|
|
1770
|
+
"confidential": false,
|
|
1731
1771
|
"included": [],
|
|
1732
1772
|
"paymentConditions": "Prepago de 100%: Pago seguro online",
|
|
1733
1773
|
"restrictions": [],
|
|
@@ -1753,6 +1793,7 @@
|
|
|
1753
1793
|
"roomId": 44938,
|
|
1754
1794
|
"cancellationId": "specialConditions-No es posible cancelar sin penalización.-true",
|
|
1755
1795
|
"rateId": "25247--44938--253925b0--318610",
|
|
1796
|
+
"confidential": false,
|
|
1756
1797
|
"included": [],
|
|
1757
1798
|
"paymentConditions": "Prepago de 30%: Pago seguro online",
|
|
1758
1799
|
"restrictions": [],
|
|
@@ -1778,6 +1819,7 @@
|
|
|
1778
1819
|
"roomId": 44938,
|
|
1779
1820
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta 4 días antes de la llegada-false",
|
|
1780
1821
|
"rateId": "25245--44938--253925b0--318610",
|
|
1822
|
+
"confidential": false,
|
|
1781
1823
|
"included": [],
|
|
1782
1824
|
"paymentConditions": "Hoy no pagarás nada. El 13-abr-2024 te cobraremos en tu tarjeta el importe correspondiente a 1 noche. Si quedara importe pendiente, lo abonarás en el establecimiento. Pago seguro online",
|
|
1783
1825
|
"restrictions": [],
|
|
@@ -33,6 +33,7 @@
|
|
|
33
33
|
"roomId": 53330,
|
|
34
34
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta varias horas antes de la llegada.-false",
|
|
35
35
|
"rateId": "35093--53330--295253b0",
|
|
36
|
+
"confidential": false,
|
|
36
37
|
"included": [],
|
|
37
38
|
"paymentConditions": "Pago en el establecimiento. Tarjeta de crédito sólo como garantía de la reserva. ",
|
|
38
39
|
"restrictions": [],
|
|
@@ -128,6 +129,7 @@
|
|
|
128
129
|
"roomId": 53331,
|
|
129
130
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta varias horas antes de la llegada.-false",
|
|
130
131
|
"rateId": "35093--53331--295255b0",
|
|
132
|
+
"confidential": false,
|
|
131
133
|
"included": [],
|
|
132
134
|
"paymentConditions": "Pago en el establecimiento. Tarjeta de crédito sólo como garantía de la reserva. ",
|
|
133
135
|
"restrictions": [],
|
|
@@ -229,6 +231,7 @@
|
|
|
229
231
|
"roomId": 53739,
|
|
230
232
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta varias horas antes de la llegada.-false",
|
|
231
233
|
"rateId": "35093--53739--297911b0",
|
|
234
|
+
"confidential": false,
|
|
232
235
|
"included": [],
|
|
233
236
|
"paymentConditions": "Pago en el establecimiento. Tarjeta de crédito sólo como garantía de la reserva. ",
|
|
234
237
|
"restrictions": [],
|
|
@@ -330,6 +333,7 @@
|
|
|
330
333
|
"roomId": 53333,
|
|
331
334
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta varias horas antes de la llegada.-false",
|
|
332
335
|
"rateId": "35093--53333--295259b0",
|
|
336
|
+
"confidential": false,
|
|
333
337
|
"included": [],
|
|
334
338
|
"paymentConditions": "Pago en el establecimiento. Tarjeta de crédito sólo como garantía de la reserva. ",
|
|
335
339
|
"restrictions": [],
|
|
@@ -431,6 +435,7 @@
|
|
|
431
435
|
"roomId": 53332,
|
|
432
436
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta varias horas antes de la llegada.-false",
|
|
433
437
|
"rateId": "35093--53332--295257b0",
|
|
438
|
+
"confidential": false,
|
|
434
439
|
"included": [],
|
|
435
440
|
"paymentConditions": "Pago en el establecimiento. Tarjeta de crédito sólo como garantía de la reserva. ",
|
|
436
441
|
"restrictions": [],
|
|
@@ -533,6 +538,7 @@
|
|
|
533
538
|
"roomId": 53335,
|
|
534
539
|
"cancellationId": "freeCancellation-Cancelación sin cargo hasta varias horas antes de la llegada.-false",
|
|
535
540
|
"rateId": "35093--53335--295263b0",
|
|
541
|
+
"confidential": false,
|
|
536
542
|
"included": [],
|
|
537
543
|
"paymentConditions": "Pago en el establecimiento. Tarjeta de crédito sólo como garantía de la reserva. ",
|
|
538
544
|
"restrictions": [],
|
|
@@ -73,6 +73,7 @@
|
|
|
73
73
|
"roomId": 3862,
|
|
74
74
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
75
75
|
"rateId": "4824--3862--2283b0--206539",
|
|
76
|
+
"confidential": false,
|
|
76
77
|
"included": [],
|
|
77
78
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
78
79
|
"restrictions": [],
|
|
@@ -97,6 +98,7 @@
|
|
|
97
98
|
"roomId": 3862,
|
|
98
99
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
99
100
|
"rateId": "4824--3862--2283b0--217946",
|
|
101
|
+
"confidential": false,
|
|
100
102
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
101
103
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
102
104
|
"restrictions": [],
|
|
@@ -121,6 +123,7 @@
|
|
|
121
123
|
"roomId": 3862,
|
|
122
124
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
123
125
|
"rateId": "4824--3862--2283b0--206542",
|
|
126
|
+
"confidential": false,
|
|
124
127
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
125
128
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
126
129
|
"restrictions": [],
|
|
@@ -145,6 +148,7 @@
|
|
|
145
148
|
"roomId": 3862,
|
|
146
149
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
147
150
|
"rateId": "4824--3862--2283b0",
|
|
151
|
+
"confidential": false,
|
|
148
152
|
"included": [],
|
|
149
153
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
150
154
|
"restrictions": [],
|
|
@@ -169,6 +173,7 @@
|
|
|
169
173
|
"roomId": 3862,
|
|
170
174
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
171
175
|
"rateId": "4824--3862--2283b0--217946",
|
|
176
|
+
"confidential": false,
|
|
172
177
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
173
178
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
174
179
|
"restrictions": [],
|
|
@@ -193,6 +198,7 @@
|
|
|
193
198
|
"roomId": 3862,
|
|
194
199
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
195
200
|
"rateId": "4824--3862--2283b0--206542",
|
|
201
|
+
"confidential": false,
|
|
196
202
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
197
203
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
198
204
|
"restrictions": [],
|
|
@@ -217,6 +223,7 @@
|
|
|
217
223
|
"roomId": 3862,
|
|
218
224
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
219
225
|
"rateId": "4824--3862--2283b0",
|
|
226
|
+
"confidential": false,
|
|
220
227
|
"included": [],
|
|
221
228
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
222
229
|
"restrictions": [],
|
|
@@ -241,6 +248,7 @@
|
|
|
241
248
|
"roomId": 3862,
|
|
242
249
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
243
250
|
"rateId": "4824--3862--2283b0--217946",
|
|
251
|
+
"confidential": false,
|
|
244
252
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
245
253
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
246
254
|
"restrictions": [],
|
|
@@ -265,6 +273,7 @@
|
|
|
265
273
|
"roomId": 3862,
|
|
266
274
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
267
275
|
"rateId": "4824--3862--2283b0--206542",
|
|
276
|
+
"confidential": false,
|
|
268
277
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
269
278
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
270
279
|
"restrictions": [],
|
|
@@ -426,6 +435,7 @@
|
|
|
426
435
|
"roomId": 4103,
|
|
427
436
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
428
437
|
"rateId": "4824--4103--2280b0--206539",
|
|
438
|
+
"confidential": false,
|
|
429
439
|
"included": [],
|
|
430
440
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
431
441
|
"restrictions": [],
|
|
@@ -450,6 +460,7 @@
|
|
|
450
460
|
"roomId": 4103,
|
|
451
461
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
452
462
|
"rateId": "4824--4103--2280b0--217946",
|
|
463
|
+
"confidential": false,
|
|
453
464
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
454
465
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
455
466
|
"restrictions": [],
|
|
@@ -474,6 +485,7 @@
|
|
|
474
485
|
"roomId": 4103,
|
|
475
486
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
476
487
|
"rateId": "4824--4103--2280b0--206542",
|
|
488
|
+
"confidential": false,
|
|
477
489
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
478
490
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
479
491
|
"restrictions": [],
|
|
@@ -498,6 +510,7 @@
|
|
|
498
510
|
"roomId": 4103,
|
|
499
511
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
500
512
|
"rateId": "4824--4103--2280b0",
|
|
513
|
+
"confidential": false,
|
|
501
514
|
"included": [],
|
|
502
515
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
503
516
|
"restrictions": [],
|
|
@@ -522,6 +535,7 @@
|
|
|
522
535
|
"roomId": 4103,
|
|
523
536
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
524
537
|
"rateId": "4824--4103--2280b0--217946",
|
|
538
|
+
"confidential": false,
|
|
525
539
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
526
540
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
527
541
|
"restrictions": [],
|
|
@@ -546,6 +560,7 @@
|
|
|
546
560
|
"roomId": 4103,
|
|
547
561
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
548
562
|
"rateId": "4824--4103--2280b0--206542",
|
|
563
|
+
"confidential": false,
|
|
549
564
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
550
565
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
551
566
|
"restrictions": [],
|
|
@@ -570,6 +585,7 @@
|
|
|
570
585
|
"roomId": 4103,
|
|
571
586
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
572
587
|
"rateId": "4824--4103--2280b0",
|
|
588
|
+
"confidential": false,
|
|
573
589
|
"included": [],
|
|
574
590
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
575
591
|
"restrictions": [],
|
|
@@ -594,6 +610,7 @@
|
|
|
594
610
|
"roomId": 4103,
|
|
595
611
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
596
612
|
"rateId": "4824--4103--2280b0--217946",
|
|
613
|
+
"confidential": false,
|
|
597
614
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
598
615
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
599
616
|
"restrictions": [],
|
|
@@ -618,6 +635,7 @@
|
|
|
618
635
|
"roomId": 4103,
|
|
619
636
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
620
637
|
"rateId": "4824--4103--2280b0--206542",
|
|
638
|
+
"confidential": false,
|
|
621
639
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
622
640
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
623
641
|
"restrictions": [],
|
|
@@ -770,6 +788,7 @@
|
|
|
770
788
|
"roomId": 3842,
|
|
771
789
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
772
790
|
"rateId": "4824--3842--2281b0",
|
|
791
|
+
"confidential": false,
|
|
773
792
|
"included": [],
|
|
774
793
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
775
794
|
"restrictions": [],
|
|
@@ -794,6 +813,7 @@
|
|
|
794
813
|
"roomId": 3842,
|
|
795
814
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
796
815
|
"rateId": "4824--3842--2281b0--217946",
|
|
816
|
+
"confidential": false,
|
|
797
817
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
798
818
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
799
819
|
"restrictions": [],
|
|
@@ -818,6 +838,7 @@
|
|
|
818
838
|
"roomId": 3842,
|
|
819
839
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
820
840
|
"rateId": "4824--3842--2281b0--206542",
|
|
841
|
+
"confidential": false,
|
|
821
842
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
822
843
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
823
844
|
"restrictions": [],
|
|
@@ -842,6 +863,7 @@
|
|
|
842
863
|
"roomId": 3842,
|
|
843
864
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
844
865
|
"rateId": "4824--3842--2281b0",
|
|
866
|
+
"confidential": false,
|
|
845
867
|
"included": [],
|
|
846
868
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
847
869
|
"restrictions": [],
|
|
@@ -866,6 +888,7 @@
|
|
|
866
888
|
"roomId": 3842,
|
|
867
889
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
868
890
|
"rateId": "4824--3842--2281b0--217946",
|
|
891
|
+
"confidential": false,
|
|
869
892
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
870
893
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
871
894
|
"restrictions": [],
|
|
@@ -890,6 +913,7 @@
|
|
|
890
913
|
"roomId": 3842,
|
|
891
914
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
892
915
|
"rateId": "4824--3842--2281b0--206542",
|
|
916
|
+
"confidential": false,
|
|
893
917
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
894
918
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
895
919
|
"restrictions": [],
|
|
@@ -914,6 +938,7 @@
|
|
|
914
938
|
"roomId": 3842,
|
|
915
939
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
916
940
|
"rateId": "4824--3842--2281b0",
|
|
941
|
+
"confidential": false,
|
|
917
942
|
"included": [],
|
|
918
943
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
919
944
|
"restrictions": [],
|
|
@@ -938,6 +963,7 @@
|
|
|
938
963
|
"roomId": 3842,
|
|
939
964
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
940
965
|
"rateId": "4824--3842--2281b0--217946",
|
|
966
|
+
"confidential": false,
|
|
941
967
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
942
968
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
943
969
|
"restrictions": [],
|
|
@@ -962,6 +988,7 @@
|
|
|
962
988
|
"roomId": 3842,
|
|
963
989
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
964
990
|
"rateId": "4824--3842--2281b0--206542",
|
|
991
|
+
"confidential": false,
|
|
965
992
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
966
993
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
967
994
|
"restrictions": [],
|
|
@@ -1131,6 +1158,7 @@
|
|
|
1131
1158
|
"roomId": 9098,
|
|
1132
1159
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
1133
1160
|
"rateId": "4824--9098--40590b0",
|
|
1161
|
+
"confidential": false,
|
|
1134
1162
|
"included": [],
|
|
1135
1163
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
1136
1164
|
"restrictions": [],
|
|
@@ -1155,6 +1183,7 @@
|
|
|
1155
1183
|
"roomId": 9098,
|
|
1156
1184
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
1157
1185
|
"rateId": "4824--9098--40590b0--217946",
|
|
1186
|
+
"confidential": false,
|
|
1158
1187
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
1159
1188
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
1160
1189
|
"restrictions": [],
|
|
@@ -1179,6 +1208,7 @@
|
|
|
1179
1208
|
"roomId": 9098,
|
|
1180
1209
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
1181
1210
|
"rateId": "4824--9098--40590b0--206542",
|
|
1211
|
+
"confidential": false,
|
|
1182
1212
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
1183
1213
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
1184
1214
|
"restrictions": [],
|
|
@@ -1203,6 +1233,7 @@
|
|
|
1203
1233
|
"roomId": 9098,
|
|
1204
1234
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
1205
1235
|
"rateId": "4824--9098--40590b0",
|
|
1236
|
+
"confidential": false,
|
|
1206
1237
|
"included": [],
|
|
1207
1238
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
1208
1239
|
"restrictions": [],
|
|
@@ -1227,6 +1258,7 @@
|
|
|
1227
1258
|
"roomId": 9098,
|
|
1228
1259
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
1229
1260
|
"rateId": "4824--9098--40590b0--217946",
|
|
1261
|
+
"confidential": false,
|
|
1230
1262
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
1231
1263
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
1232
1264
|
"restrictions": [],
|
|
@@ -1251,6 +1283,7 @@
|
|
|
1251
1283
|
"roomId": 9098,
|
|
1252
1284
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
1253
1285
|
"rateId": "4824--9098--40590b0--206542",
|
|
1286
|
+
"confidential": false,
|
|
1254
1287
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
1255
1288
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
1256
1289
|
"restrictions": [],
|
|
@@ -1275,6 +1308,7 @@
|
|
|
1275
1308
|
"roomId": 9098,
|
|
1276
1309
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
1277
1310
|
"rateId": "4824--9098--40590b0",
|
|
1311
|
+
"confidential": false,
|
|
1278
1312
|
"included": [],
|
|
1279
1313
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
1280
1314
|
"restrictions": [],
|
|
@@ -1299,6 +1333,7 @@
|
|
|
1299
1333
|
"roomId": 9098,
|
|
1300
1334
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-true",
|
|
1301
1335
|
"rateId": "4824--9098--40590b0--217946",
|
|
1336
|
+
"confidential": false,
|
|
1302
1337
|
"included": ["100% ONLINE PREPAYMENT"],
|
|
1303
1338
|
"paymentConditions": "Prepayment required: 100%: Online secure payment",
|
|
1304
1339
|
"restrictions": [],
|
|
@@ -1323,6 +1358,7 @@
|
|
|
1323
1358
|
"roomId": 9098,
|
|
1324
1359
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
1325
1360
|
"rateId": "4824--9098--40590b0--206542",
|
|
1361
|
+
"confidential": false,
|
|
1326
1362
|
"included": ["SPECIAL PRICE FOR THE PARKING : 25 EUR +10% TAXES"],
|
|
1327
1363
|
"paymentConditions": "Pay at the property. Credit Card only as a booking guarantee. ",
|
|
1328
1364
|
"restrictions": [],
|
|
@@ -55,6 +55,7 @@
|
|
|
55
55
|
"roomId": 61103,
|
|
56
56
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to 8 days prior to arrival-false",
|
|
57
57
|
"rateId": "7818--61103--335428b0--207167",
|
|
58
|
+
"confidential": false,
|
|
58
59
|
"included": [],
|
|
59
60
|
"paymentConditions": "Payment is made directly at the property; exceptions are stated in the cancellation policy for payments in advance. The hotel reserves the right to pre-authorize your card prior to arrival",
|
|
60
61
|
"restrictions": [],
|
|
@@ -79,6 +80,7 @@
|
|
|
79
80
|
"roomId": 61103,
|
|
80
81
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
81
82
|
"rateId": "7818--61103--335428b0--205800",
|
|
83
|
+
"confidential": false,
|
|
82
84
|
"included": [],
|
|
83
85
|
"paymentConditions": "Pay on arrival at the property. Credit Card only as a booking guarantee. ",
|
|
84
86
|
"restrictions": [],
|
|
@@ -207,6 +209,7 @@
|
|
|
207
209
|
"roomId": 60815,
|
|
208
210
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to 8 days prior to arrival-false",
|
|
209
211
|
"rateId": "7818--60815--334026b0--207167",
|
|
212
|
+
"confidential": false,
|
|
210
213
|
"included": [],
|
|
211
214
|
"paymentConditions": "Payment is made directly at the property; exceptions are stated in the cancellation policy for payments in advance. The hotel reserves the right to pre-authorize your card prior to arrival",
|
|
212
215
|
"restrictions": [],
|
|
@@ -231,6 +234,7 @@
|
|
|
231
234
|
"roomId": 60815,
|
|
232
235
|
"cancellationId": "freeCancellation-Cancellation with no penalty up to some hours before arrival.-false",
|
|
233
236
|
"rateId": "7818--60815--334026b0--205800",
|
|
237
|
+
"confidential": false,
|
|
234
238
|
"included": [],
|
|
235
239
|
"paymentConditions": "Pay on arrival at the property. Credit Card only as a booking guarantee. ",
|
|
236
240
|
"restrictions": [],
|
|
@@ -29,6 +29,7 @@ const parseItem = _ref => {
|
|
|
29
29
|
cancellationPolicyText: cancelText,
|
|
30
30
|
cancellationPolicyTooltip: cancelTitle,
|
|
31
31
|
cancellationPolicyTypeEnum: cancelId,
|
|
32
|
+
confidentialRate,
|
|
32
33
|
prepay,
|
|
33
34
|
// 2. rates
|
|
34
35
|
id: rateId,
|
|
@@ -125,6 +126,7 @@ const parseItem = _ref => {
|
|
|
125
126
|
cancellationId: cancellation.id,
|
|
126
127
|
rateId,
|
|
127
128
|
// rate info
|
|
129
|
+
confidential: !!confidentialRate,
|
|
128
130
|
included: [...new Set(Object.values(included).flat())].slice(0, 3),
|
|
129
131
|
paymentConditions,
|
|
130
132
|
restrictions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseItem.js","names":["_getIncrements","require","_getPrice","_normalizePrice","_parseDiscount","VARIABLE_OFFER","parseItem","_ref","currency","fees","hotelCurrency","id","roomId","rates","baseRates","taxes","cancellations","boards","Object","values","forEach","cancellationPolicyDeadline","cancelCaption","cancellationPolicyName","cancelName","cancellationPolicyText","cancelText","cancellationPolicyTooltip","cancelTitle","cancellationPolicyTypeEnum","cancelId","prepay","rateId","includedList","included","isClub","name","offer","paymentSortText","paymentTitle","paymentText","paymentConditions","pendingSecondsValid","countdown","rateWarnings","warnings","boardOptions","arguments","length","undefined","restrictions","entries","map","key","value","isVariableOffer","cancellation","find","concat","caption","toUpperCase","slice","trim","highlight","title","text","push","discountPercentage","discountPricesBefore","offerDiscountPercentInCents","parseInt","filter","now","Date","cancellationId","setSeconds","getSeconds","Set","flat","_ref2","boardGroupName","detail","discounts","minRoomsPerReservation","minSelected","maxRoomsPerReservation","maxSelected","offersApplied","deals","originalAvgPrice","totalBasePrice","totalLocalTaxes","localTaxes","totalPriceOriginal","totalPriceWithTaxes","totalPrice","withTaxesAvgPrice","clientCodeDiscountPercentInCents","promoCodeValue","clientCodeTotal","promoCode","clubDiscountPercentInCents","clubValue","clubTotal","club","dealValue","offerTotal","deal","price","basePrice","withoutTaxes","originalPrice","Math","max","withTaxes","original","getPrice","checkoutPrice","normalizePrice","dayPrice","discount","parseDiscount","offerDates","offerDay","_ref3","dayStandardFormat","date","totalPriceRaw","variants","boardTranslation","detailName","getIncrements","exports"],"sources":["../../../../src/services/Rates/helpers/parseItem.js"],"sourcesContent":["import { getIncrements } from './getIncrements';\nimport { getPrice } from './getPrice';\nimport { normalizePrice } from './normalizePrice';\nimport { parseDiscount } from './parseDiscount';\n\nconst VARIABLE_OFFER = 'OFFER_WARNING_ONLY_X_NIGHTS';\n\nexport const parseItem = ({ currency, fees, hotelCurrency, id: roomId, rates: baseRates = {}, taxes }) => {\n const cancellations = [];\n const rates = [];\n const boards = [];\n\n Object.values(baseRates).forEach(\n ({\n // 1. cancellations\n cancellationPolicyDeadline: cancelCaption,\n cancellationPolicyName: cancelName,\n cancellationPolicyText: cancelText,\n cancellationPolicyTooltip: cancelTitle,\n cancellationPolicyTypeEnum: cancelId,\n prepay,\n // 2. rates\n id: rateId,\n includedList: included,\n isClub,\n name,\n offer = false,\n paymentSortText: paymentTitle,\n paymentText: paymentConditions,\n pendingSecondsValid: countdown,\n rateWarnings: warnings,\n // 3. boards\n boardOptions = {},\n } = {}) => {\n const restrictions = Object.entries(warnings).map(([key, value] = []) => ({\n isVariableOffer: key === VARIABLE_OFFER,\n value,\n }));\n // 1. get cancellations\n let cancellation = cancellations.find(({ id } = {}) => id === `${cancelId}-${cancelTitle}-${prepay}`);\n\n if (!cancellation) {\n cancellation = {\n caption: `${cancelCaption ? `${cancelCaption[0].toUpperCase()}${cancelCaption.slice(1)}` : ''}${\n paymentTitle ? '.' : ''\n } ${paymentTitle || ''}`.trim(),\n highlight: cancelId === 'freeCancellation',\n id: `${cancelId}-${cancelTitle}-${prepay}`,\n name: cancelName,\n paymentConditions,\n title: cancelTitle,\n text: cancelText,\n };\n cancellations.push(cancellation);\n }\n\n // 2. get rates\n const [discountPercentage] = Object.values(boardOptions)\n .map(({ discountPricesBefore: { offerDiscountPercentInCents: value = 0 } = {} } = {}) =>\n value !== null ? parseInt(value / 100) : undefined,\n )\n .filter((value) => value > 0);\n const now = new Date();\n\n rates.push({\n id: rateId,\n cancellationId: cancellation.id,\n countdown: countdown !== null ? now.setSeconds(now.getSeconds() + countdown) : undefined,\n discountPercentage,\n included: [...new Set(Object.values(included).flat())],\n isClub,\n name,\n offer,\n restrictions,\n });\n\n // 3. get boards\n Object.values(boardOptions).forEach(\n ({\n boardGroupName: name,\n detail,\n discountPricesBefore: discounts = {},\n id,\n minRoomsPerReservation: minSelected,\n maxRoomsPerReservation: maxSelected,\n offersApplied: deals,\n originalAvgPrice,\n totalBasePrice,\n totalLocalTaxes: localTaxes,\n totalPriceOriginal,\n totalPriceWithTaxes: totalPrice,\n withTaxesAvgPrice,\n }) => {\n const {\n clientCodeDiscountPercentInCents: promoCodeValue,\n clientCodeTotal: promoCode,\n clubDiscountPercentInCents: clubValue,\n clubTotal: club,\n offerDiscountPercentInCents: dealValue,\n offerTotal: deal,\n } = discounts;\n const price = taxes && fees ? totalPrice : totalPriceOriginal;\n const basePrice =\n totalBasePrice +\n (deal && dealValue ? deal.withoutTaxes * (dealValue / 10000) : 0) +\n (club && clubValue ? club.withoutTaxes * (clubValue / 10000) : 0) +\n (promoCode && promoCodeValue ? promoCode.withoutTaxes * (promoCodeValue / 10000) : 0);\n const originalPrice =\n (taxes\n ? Math.max(deal?.withTaxes || 0, club?.withTaxes || 0, promoCode?.withTaxes || 0)\n : Math.max(deal?.original || 0, club?.original || 0, promoCode?.original || 0)) || price;\n\n boards.push({\n roomId,\n cancellationId: cancellation.id,\n rateId,\n // rate info\n included: [...new Set(Object.values(included).flat())].slice(0, 3),\n paymentConditions,\n restrictions,\n // board info\n basePrice: getPrice({ currency, hotelCurrency, price: basePrice }),\n checkoutPrice: normalizePrice(totalPriceOriginal, hotelCurrency),\n dayPrice: getPrice({ currency, hotelCurrency, price: taxes ? withTaxesAvgPrice : originalAvgPrice }),\n deals,\n discount: parseDiscount({ currency, hotelCurrency, ...discounts, originalPrice, totalPrice: price }),\n id,\n fees: getPrice({ currency, hotelCurrency, price: localTaxes }),\n maxSelected,\n minSelected,\n name,\n offerDates: detail.filter(({ offerDay } = {}) => offerDay).map(({ dayStandardFormat: date }) => date),\n originalPrice: getPrice({ currency, hotelCurrency, price: originalPrice }),\n price: getPrice({ currency, hotelCurrency, price }),\n taxes: getPrice({\n currency,\n hotelCurrency,\n price: totalPrice - totalBasePrice - (fees ? localTaxes : 0),\n }),\n totalPriceRaw: totalPrice + (!fees ? localTaxes : 0),\n variants: detail\n .map(({ boardTranslation: name, dayStandardFormat: value } = {}) => ({ name, value }))\n .filter(({ name: detailName } = {}) => detailName !== name),\n });\n },\n );\n },\n );\n\n return { ...getIncrements({ cancellations, rates, boards }) };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parseItem.js","names":["_getIncrements","require","_getPrice","_normalizePrice","_parseDiscount","VARIABLE_OFFER","parseItem","_ref","currency","fees","hotelCurrency","id","roomId","rates","baseRates","taxes","cancellations","boards","Object","values","forEach","cancellationPolicyDeadline","cancelCaption","cancellationPolicyName","cancelName","cancellationPolicyText","cancelText","cancellationPolicyTooltip","cancelTitle","cancellationPolicyTypeEnum","cancelId","confidentialRate","prepay","rateId","includedList","included","isClub","name","offer","paymentSortText","paymentTitle","paymentText","paymentConditions","pendingSecondsValid","countdown","rateWarnings","warnings","boardOptions","arguments","length","undefined","restrictions","entries","map","key","value","isVariableOffer","cancellation","find","concat","caption","toUpperCase","slice","trim","highlight","title","text","push","discountPercentage","discountPricesBefore","offerDiscountPercentInCents","parseInt","filter","now","Date","cancellationId","setSeconds","getSeconds","Set","flat","_ref2","boardGroupName","detail","discounts","minRoomsPerReservation","minSelected","maxRoomsPerReservation","maxSelected","offersApplied","deals","originalAvgPrice","totalBasePrice","totalLocalTaxes","localTaxes","totalPriceOriginal","totalPriceWithTaxes","totalPrice","withTaxesAvgPrice","clientCodeDiscountPercentInCents","promoCodeValue","clientCodeTotal","promoCode","clubDiscountPercentInCents","clubValue","clubTotal","club","dealValue","offerTotal","deal","price","basePrice","withoutTaxes","originalPrice","Math","max","withTaxes","original","confidential","getPrice","checkoutPrice","normalizePrice","dayPrice","discount","parseDiscount","offerDates","offerDay","_ref3","dayStandardFormat","date","totalPriceRaw","variants","boardTranslation","detailName","getIncrements","exports"],"sources":["../../../../src/services/Rates/helpers/parseItem.js"],"sourcesContent":["import { getIncrements } from './getIncrements';\nimport { getPrice } from './getPrice';\nimport { normalizePrice } from './normalizePrice';\nimport { parseDiscount } from './parseDiscount';\n\nconst VARIABLE_OFFER = 'OFFER_WARNING_ONLY_X_NIGHTS';\n\nexport const parseItem = ({ currency, fees, hotelCurrency, id: roomId, rates: baseRates = {}, taxes }) => {\n const cancellations = [];\n const rates = [];\n const boards = [];\n\n Object.values(baseRates).forEach(\n ({\n // 1. cancellations\n cancellationPolicyDeadline: cancelCaption,\n cancellationPolicyName: cancelName,\n cancellationPolicyText: cancelText,\n cancellationPolicyTooltip: cancelTitle,\n cancellationPolicyTypeEnum: cancelId,\n confidentialRate,\n prepay,\n // 2. rates\n id: rateId,\n includedList: included,\n isClub,\n name,\n offer = false,\n paymentSortText: paymentTitle,\n paymentText: paymentConditions,\n pendingSecondsValid: countdown,\n rateWarnings: warnings,\n // 3. boards\n boardOptions = {},\n } = {}) => {\n const restrictions = Object.entries(warnings).map(([key, value] = []) => ({\n isVariableOffer: key === VARIABLE_OFFER,\n value,\n }));\n // 1. get cancellations\n let cancellation = cancellations.find(({ id } = {}) => id === `${cancelId}-${cancelTitle}-${prepay}`);\n\n if (!cancellation) {\n cancellation = {\n caption: `${cancelCaption ? `${cancelCaption[0].toUpperCase()}${cancelCaption.slice(1)}` : ''}${\n paymentTitle ? '.' : ''\n } ${paymentTitle || ''}`.trim(),\n highlight: cancelId === 'freeCancellation',\n id: `${cancelId}-${cancelTitle}-${prepay}`,\n name: cancelName,\n paymentConditions,\n title: cancelTitle,\n text: cancelText,\n };\n cancellations.push(cancellation);\n }\n\n // 2. get rates\n const [discountPercentage] = Object.values(boardOptions)\n .map(({ discountPricesBefore: { offerDiscountPercentInCents: value = 0 } = {} } = {}) =>\n value !== null ? parseInt(value / 100) : undefined,\n )\n .filter((value) => value > 0);\n const now = new Date();\n\n rates.push({\n id: rateId,\n cancellationId: cancellation.id,\n countdown: countdown !== null ? now.setSeconds(now.getSeconds() + countdown) : undefined,\n discountPercentage,\n included: [...new Set(Object.values(included).flat())],\n isClub,\n name,\n offer,\n restrictions,\n });\n\n // 3. get boards\n Object.values(boardOptions).forEach(\n ({\n boardGroupName: name,\n detail,\n discountPricesBefore: discounts = {},\n id,\n minRoomsPerReservation: minSelected,\n maxRoomsPerReservation: maxSelected,\n offersApplied: deals,\n originalAvgPrice,\n totalBasePrice,\n totalLocalTaxes: localTaxes,\n totalPriceOriginal,\n totalPriceWithTaxes: totalPrice,\n withTaxesAvgPrice,\n }) => {\n const {\n clientCodeDiscountPercentInCents: promoCodeValue,\n clientCodeTotal: promoCode,\n clubDiscountPercentInCents: clubValue,\n clubTotal: club,\n offerDiscountPercentInCents: dealValue,\n offerTotal: deal,\n } = discounts;\n const price = taxes && fees ? totalPrice : totalPriceOriginal;\n const basePrice =\n totalBasePrice +\n (deal && dealValue ? deal.withoutTaxes * (dealValue / 10000) : 0) +\n (club && clubValue ? club.withoutTaxes * (clubValue / 10000) : 0) +\n (promoCode && promoCodeValue ? promoCode.withoutTaxes * (promoCodeValue / 10000) : 0);\n const originalPrice =\n (taxes\n ? Math.max(deal?.withTaxes || 0, club?.withTaxes || 0, promoCode?.withTaxes || 0)\n : Math.max(deal?.original || 0, club?.original || 0, promoCode?.original || 0)) || price;\n\n boards.push({\n roomId,\n cancellationId: cancellation.id,\n rateId,\n // rate info\n confidential: !!confidentialRate,\n included: [...new Set(Object.values(included).flat())].slice(0, 3),\n paymentConditions,\n restrictions,\n // board info\n basePrice: getPrice({ currency, hotelCurrency, price: basePrice }),\n checkoutPrice: normalizePrice(totalPriceOriginal, hotelCurrency),\n dayPrice: getPrice({ currency, hotelCurrency, price: taxes ? withTaxesAvgPrice : originalAvgPrice }),\n deals,\n discount: parseDiscount({ currency, hotelCurrency, ...discounts, originalPrice, totalPrice: price }),\n id,\n fees: getPrice({ currency, hotelCurrency, price: localTaxes }),\n maxSelected,\n minSelected,\n name,\n offerDates: detail.filter(({ offerDay } = {}) => offerDay).map(({ dayStandardFormat: date }) => date),\n originalPrice: getPrice({ currency, hotelCurrency, price: originalPrice }),\n price: getPrice({ currency, hotelCurrency, price }),\n taxes: getPrice({\n currency,\n hotelCurrency,\n price: totalPrice - totalBasePrice - (fees ? localTaxes : 0),\n }),\n totalPriceRaw: totalPrice + (!fees ? localTaxes : 0),\n variants: detail\n .map(({ boardTranslation: name, dayStandardFormat: value } = {}) => ({ name, value }))\n .filter(({ name: detailName } = {}) => detailName !== name),\n });\n },\n );\n },\n );\n\n return { ...getIncrements({ cancellations, rates, boards }) };\n};\n"],"mappings":"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"}
|