@mirai/core 0.3.146 → 0.3.148
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/Booking/components/Field/Field.module.css +1 -1
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Menu.test.js.snap +4 -4
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Modal.test.js.snap +8 -8
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Others.test.js.snap +8 -8
- package/build/components/BookingQuery/__tests__/__snapshots__/BookingQuery.test.js.snap +12 -12
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Confirmation.test.js.snap +6 -6
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Form.test.js.snap +4 -4
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Session.test.js.snap +8 -8
- package/build/components/Deals/__tests__/__snapshots__/Deals.test.js.snap +1 -1
- package/build/components/Profile/Profile.constants.js +8 -5
- package/build/components/Profile/Profile.constants.js.map +1 -1
- package/build/components/Profile/Profile.js +10 -42
- package/build/components/Profile/Profile.js.map +1 -1
- package/build/components/Profile/Profile.module.css +1 -67
- package/build/components/Profile/components/Bookings/Bookings.js +15 -24
- package/build/components/Profile/components/Bookings/Bookings.js.map +1 -1
- package/build/components/Profile/components/Bookings/Bookings.l10n.js +3 -0
- package/build/components/Profile/components/Bookings/Bookings.l10n.js.map +1 -1
- package/build/components/Profile/components/Bookings/Bookings.module.css +7 -2
- package/build/components/Profile/components/Bookings/__tests__/__snapshots__/Bookings.test.js.snap +11 -1
- package/build/components/Profile/{Profile.Account.js → components/Settings/Settings.Account.js} +22 -23
- package/build/components/Profile/components/Settings/Settings.Account.js.map +1 -0
- package/build/components/Profile/{Profile.Password.js → components/Settings/Settings.Password.js} +16 -15
- package/build/components/Profile/components/Settings/Settings.Password.js.map +1 -0
- package/build/components/Profile/{Profile.Signout.js → components/Settings/Settings.Signout.js} +18 -22
- package/build/components/Profile/components/Settings/Settings.Signout.js.map +1 -0
- package/build/components/Profile/components/Settings/Settings.constants.js +24 -0
- package/build/components/Profile/components/Settings/Settings.constants.js.map +1 -0
- package/build/components/Profile/components/Settings/Settings.js +61 -0
- package/build/components/Profile/components/Settings/Settings.js.map +1 -0
- package/build/components/Profile/{Profile.l10n.js → components/Settings/Settings.l10n.js} +9 -9
- package/build/components/Profile/components/Settings/Settings.l10n.js.map +1 -0
- package/build/components/Profile/components/Settings/Settings.module.css +70 -0
- package/build/components/Profile/components/Settings/index.js +17 -0
- package/build/components/Profile/components/Settings/index.js.map +1 -0
- package/build/components/Profile/components/index.js +11 -0
- package/build/components/Profile/components/index.js.map +1 -1
- package/build/components/Session/Session.Account.js +28 -25
- package/build/components/Session/Session.Account.js.map +1 -1
- package/build/components/Session/Session.Login.js +9 -9
- package/build/components/Session/Session.Login.js.map +1 -1
- package/build/components/Session/Session.l10n.js +11 -13
- package/build/components/Session/Session.l10n.js.map +1 -1
- package/build/components/Session/Session.module.css +32 -7
- package/build/components/Session/__tests__/__snapshots__/Session.test.js.snap +30 -36
- package/build/components/Session/helpers/template.js +1 -1
- package/build/components/Session/helpers/template.js.map +1 -1
- package/build/components/Signup/Signup.js +6 -2
- package/build/components/Signup/Signup.js.map +1 -1
- package/build/components/Signup/__tests__/__snapshots__/Signup.test.js.snap +9 -9
- package/build/components/__shared__/ButtonPayment/__tests__/__snapshots__/ButtonPayment.test.js.snap +4 -4
- package/build/components/__shared__/Field/__tests__/__snapshots__/Field.test.js.snap +15 -15
- package/build/components/__shared__/FieldOccupation/__tests__/__snapshots__/FieldOccupation.test.js.snap +1 -1
- package/build/components/__shared__/Occupation/__tests__/__snapshots__/Occupation.test.js.snap +6 -6
- package/build/components/helpers/ICON.js +2 -0
- package/build/components/helpers/ICON.js.map +1 -1
- package/build/components/helpers/__tests__/__snapshots__/parseHtml.test.js.snap +30 -30
- package/build/components/helpers/parseHtml.js +2 -2
- package/build/components/helpers/parseHtml.js.map +1 -1
- package/package.json +1 -1
- package/public/App.Container.jsx +0 -7
- package/public/App.module.css +0 -21
- package/build/components/Profile/Profile.Account.js.map +0 -1
- package/build/components/Profile/Profile.Password.js.map +0 -1
- package/build/components/Profile/Profile.Signout.js.map +0 -1
- package/build/components/Profile/Profile.l10n.js.map +0 -1
|
@@ -21,17 +21,14 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
21
21
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
22
22
|
const Bookings = () => {
|
|
23
23
|
const {
|
|
24
|
-
isMobile
|
|
25
|
-
isDesktop
|
|
24
|
+
isMobile
|
|
26
25
|
} = (0, _ui.useDevice)();
|
|
27
26
|
const {
|
|
28
27
|
currencyFormat,
|
|
29
28
|
locale,
|
|
30
29
|
translate
|
|
31
30
|
} = (0, _locale.useLocale)();
|
|
32
|
-
const ref = (0, _react.useRef)(null);
|
|
33
31
|
const [dataSource, setDataSource] = (0, _react.useState)();
|
|
34
|
-
const [menu, setMenu] = (0, _react.useState)();
|
|
35
32
|
const [search, setSearch] = (0, _react.useState)();
|
|
36
33
|
(0, _react.useEffect)(() => {
|
|
37
34
|
(async () => {
|
|
@@ -48,17 +45,6 @@ const Bookings = () => {
|
|
|
48
45
|
})();
|
|
49
46
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
50
47
|
}, []);
|
|
51
|
-
(0, _react.useEffect)(() => {
|
|
52
|
-
const handleClickOutside = _ref => {
|
|
53
|
-
var _ref$current;
|
|
54
|
-
let {
|
|
55
|
-
target
|
|
56
|
-
} = _ref;
|
|
57
|
-
if ((_ref$current = ref.current) !== null && _ref$current !== void 0 && _ref$current.contains(target) && !!menu) setMenu(undefined);
|
|
58
|
-
};
|
|
59
|
-
document.addEventListener('click', handleClickOutside, true);
|
|
60
|
-
return () => document.removeEventListener('click', handleClickOutside, true);
|
|
61
|
-
}, [menu]);
|
|
62
48
|
const handleManage = url => {
|
|
63
49
|
document.location = url;
|
|
64
50
|
};
|
|
@@ -72,18 +58,23 @@ const Bookings = () => {
|
|
|
72
58
|
dataSource: dataSource !== undefined
|
|
73
59
|
};
|
|
74
60
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
75
|
-
|
|
76
|
-
},
|
|
61
|
+
className: style.container
|
|
62
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
63
|
+
row: true,
|
|
64
|
+
className: style.title
|
|
65
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
66
|
+
bold: true,
|
|
67
|
+
headline: true,
|
|
68
|
+
level: 2
|
|
69
|
+
}, translate(_Bookings2.L10N.ACTION_MY_BOOKINGS)), has.bookings && /*#__PURE__*/_react.default.createElement(_Bookings3.Search, {
|
|
77
70
|
value: search,
|
|
78
71
|
onChange: setSearch
|
|
79
|
-
}), Object.entries(bookings || {}).map((
|
|
80
|
-
let [id, items = []] =
|
|
72
|
+
})), has.bookings ? Object.entries(bookings || {}).map((_ref, index) => {
|
|
73
|
+
let [id, items = []] = _ref;
|
|
81
74
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
82
75
|
key: index,
|
|
83
76
|
bold: true,
|
|
84
|
-
headline:
|
|
85
|
-
level: isDesktop ? 3 : undefined,
|
|
86
|
-
className: style.titleGroup
|
|
77
|
+
headline: !isMobile
|
|
87
78
|
}, translate({
|
|
88
79
|
id
|
|
89
80
|
}, {
|
|
@@ -153,11 +144,11 @@ const Bookings = () => {
|
|
|
153
144
|
disabled: true
|
|
154
145
|
}, translate(_Bookings2.L10N.LABEL_CANCELLED))));
|
|
155
146
|
})));
|
|
156
|
-
})
|
|
147
|
+
}) : has.dataSource ? /*#__PURE__*/_react.default.createElement(_ui.Notification, {
|
|
157
148
|
info: true,
|
|
158
149
|
large: true,
|
|
159
150
|
className: style.notification
|
|
160
|
-
}, translate(_Bookings2.L10N.LABEL_NO_BOOKINGS)) :
|
|
151
|
+
}, translate(_Bookings2.L10N.LABEL_NO_BOOKINGS)) : null);
|
|
161
152
|
};
|
|
162
153
|
exports.Bookings = Bookings;
|
|
163
154
|
Bookings.displayName = 'Mirai:Core:Profile:Bookings';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bookings.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Bookings","_Bookings2","style","_Bookings3","_helpers","_shared__","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","Bookings","isMobile","isDesktop","useDevice","currencyFormat","locale","translate","useLocale","ref","useRef","dataSource","setDataSource","useState","menu","setMenu","search","setSearch","useEffect","storage","Storage","adapter","LocalAdapter","cache","CACHE_LIMIT","STORAGE_KEY","response","ServiceUser","bookings","catch","handleClickOutside","_ref","_ref$current","current","contains","undefined","document","addEventListener","removeEventListener","handleManage","url","location","groupDatasource","caption","action","small","keys","createElement","View","Fragment","Search","value","onChange","entries","map","_ref2","index","id","items","Text","bold","headline","level","className","titleGroup","num","Cards","booking","checkIn","checkOut","currency","hotel","image","city","price","total","text","taxesText","status","manage","site","is","cancelled","past","L10N","LABEL_PAST_BOOKINGS","Card","card","backgroundImage","concat","offset","getCalendarCaption","parseDate","Action","href","inline","ACTION_VIEW_HOTEL","row","spaceBetween","symbol","Tooltip","accent","LABEL_PRICE_DETAILS","Button","onPress","ACTION_MANAGE_BOOKING","disabled","LABEL_CANCELLED","Notification","info","large","notification","LABEL_NO_BOOKINGS","exports","displayName","propTypes"],"sources":["../../../../../src/components/Profile/components/Bookings/Bookings.jsx"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport { Action, Button, Notification, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { CACHE_LIMIT, STORAGE_KEY } from './Bookings.constants';\nimport { L10N } from './Bookings.l10n';\nimport * as style from './Bookings.module.css';\nimport { Search } from './Bookings.Search';\nimport { groupDatasource } from './helpers';\nimport { Card, Cards } from '../../../__shared__';\nimport { getCalendarCaption } from '../../../helpers';\n\nconst Bookings = () => {\n const { isMobile, isDesktop } = useDevice();\n const { currencyFormat, locale, translate } = useLocale();\n\n const ref = useRef(null);\n\n const [dataSource, setDataSource] = useState();\n const [menu, setMenu] = useState();\n const [search, setSearch] = useState();\n\n useEffect(() => {\n (async () => {\n // * TODO: We should cache as long as the service responds so slow\n const storage = new Storage({ adapter: LocalAdapter, cache: CACHE_LIMIT });\n const cache = storage.get(STORAGE_KEY);\n if (cache) setDataSource(cache);\n\n const response = await ServiceUser.bookings().catch(() => {});\n storage.set(STORAGE_KEY, response);\n\n setDataSource(response || []);\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n const handleClickOutside = ({ target }) => {\n if (ref.current?.contains(target) && !!menu) setMenu(undefined);\n };\n document.addEventListener('click', handleClickOutside, true);\n\n return () => document.removeEventListener('click', handleClickOutside, true);\n }, [menu]);\n\n const handleManage = (url) => {\n document.location = url;\n };\n\n const bookings = groupDatasource(dataSource, search);\n const caption = { action: !isMobile, small: isMobile };\n const has = {\n bookings: Object.keys(bookings || {}).length > 0 || search,\n dataSource: dataSource !== undefined,\n };\n\n return (\n <View ref={ref}>\n {has.bookings ? (\n <>\n <Search value={search} onChange={setSearch} />\n\n {Object.entries(bookings || {}).map(([id, items = []], index) => (\n <>\n <Text key={index} bold headline level={isDesktop ? 3 : undefined} className={style.titleGroup}>\n {translate({ id }, { num: items.length })}\n </Text>\n\n <Cards>\n {items.map(\n ({\n booking,\n checkIn,\n checkOut,\n currency,\n hotel,\n image,\n location: { city } = {},\n price: { total, text: taxesText } = {},\n status,\n url: { manage, site } = {},\n } = {}) => {\n const is = { cancelled: status === 'CANCELLED', past: id === L10N.LABEL_PAST_BOOKINGS.id };\n\n return (\n <Card key={booking} className={style.card}>\n {!is.past && <View className={style.image} style={{ backgroundImage: `url(${image})` }} />}\n\n <View className={style.offset}>\n <Text bold headline={!isMobile} level={3}>\n {hotel}\n </Text>\n {checkIn && checkOut && (\n <Text {...caption}>\n {getCalendarCaption(\n [parseDate(checkIn), parseDate(checkOut)],\n translate,\n undefined,\n locale,\n )}\n </Text>\n )}\n {city && <Text {...caption}>{city}</Text>}\n\n <Action {...caption} href={site} inline>\n {translate(L10N.ACTION_VIEW_HOTEL)}\n </Action>\n </View>\n\n <View row className={[style.offset, style.spaceBetween]}>\n <View>\n <Text bold headline level={isMobile || total >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, symbol: true, value: total })}\n </Text>\n\n <Tooltip text={taxesText}>\n <Text accent action={!isMobile} small={isMobile}>\n {`${translate(L10N.LABEL_PRICE_DETAILS)} >`}\n </Text>\n </Tooltip>\n </View>\n\n {!is.cancelled && !is.past && (\n <Button onPress={() => handleManage(manage)}>\n {translate(L10N.ACTION_MANAGE_BOOKING)}\n </Button>\n )}\n\n {is.cancelled && <Button disabled>{translate(L10N.LABEL_CANCELLED)}</Button>}\n </View>\n </Card>\n );\n },\n )}\n </Cards>\n </>\n ))}\n </>\n ) : has.dataSource ? (\n <Notification info large className={style.notification}>\n {translate(L10N.LABEL_NO_BOOKINGS)}\n </Notification>\n ) : undefined}\n </View>\n );\n};\n\nBookings.displayName = 'Mirai:Core:Profile:Bookings';\n\nBookings.propTypes = {};\n\nexport { Bookings };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Bookings.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Bookings","_Bookings2","style","_Bookings3","_helpers","_shared__","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","Bookings","isMobile","useDevice","currencyFormat","locale","translate","useLocale","dataSource","setDataSource","useState","search","setSearch","useEffect","storage","Storage","adapter","LocalAdapter","cache","CACHE_LIMIT","STORAGE_KEY","response","ServiceUser","bookings","catch","handleManage","url","document","location","groupDatasource","caption","action","small","keys","undefined","createElement","View","className","container","row","title","Text","bold","headline","level","L10N","ACTION_MY_BOOKINGS","Search","value","onChange","entries","map","_ref","index","id","items","Fragment","num","Cards","booking","checkIn","checkOut","currency","hotel","image","city","price","total","text","taxesText","status","manage","site","is","cancelled","past","LABEL_PAST_BOOKINGS","Card","card","backgroundImage","concat","offset","getCalendarCaption","parseDate","Action","href","inline","ACTION_VIEW_HOTEL","spaceBetween","symbol","Tooltip","accent","LABEL_PRICE_DETAILS","Button","onPress","ACTION_MANAGE_BOOKING","disabled","LABEL_CANCELLED","Notification","info","large","notification","LABEL_NO_BOOKINGS","exports","displayName","propTypes"],"sources":["../../../../../src/components/Profile/components/Bookings/Bookings.jsx"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { parseDate, useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport { Action, Button, Notification, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { CACHE_LIMIT, STORAGE_KEY } from './Bookings.constants';\nimport { L10N } from './Bookings.l10n';\nimport * as style from './Bookings.module.css';\nimport { Search } from './Bookings.Search';\nimport { groupDatasource } from './helpers';\nimport { Card, Cards } from '../../../__shared__';\nimport { getCalendarCaption } from '../../../helpers';\n\nconst Bookings = () => {\n const { isMobile } = useDevice();\n const { currencyFormat, locale, translate } = useLocale();\n\n const [dataSource, setDataSource] = useState();\n const [search, setSearch] = useState();\n\n useEffect(() => {\n (async () => {\n // * TODO: We should cache as long as the service responds so slow\n const storage = new Storage({ adapter: LocalAdapter, cache: CACHE_LIMIT });\n const cache = storage.get(STORAGE_KEY);\n if (cache) setDataSource(cache);\n\n const response = await ServiceUser.bookings().catch(() => {});\n storage.set(STORAGE_KEY, response);\n\n setDataSource(response || []);\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleManage = (url) => {\n document.location = url;\n };\n\n const bookings = groupDatasource(dataSource, search);\n const caption = { action: !isMobile, small: isMobile };\n const has = {\n bookings: Object.keys(bookings || {}).length > 0 || search,\n dataSource: dataSource !== undefined,\n };\n\n return (\n <View className={style.container}>\n <View row className={style.title}>\n <Text bold headline level={2}>\n {translate(L10N.ACTION_MY_BOOKINGS)}\n </Text>\n {has.bookings && <Search value={search} onChange={setSearch} />}\n </View>\n {has.bookings ? (\n Object.entries(bookings || {}).map(([id, items = []], index) => (\n <>\n <Text key={index} bold headline={!isMobile}>\n {translate({ id }, { num: items.length })}\n </Text>\n\n <Cards>\n {items.map(\n ({\n booking,\n checkIn,\n checkOut,\n currency,\n hotel,\n image,\n location: { city } = {},\n price: { total, text: taxesText } = {},\n status,\n url: { manage, site } = {},\n } = {}) => {\n const is = { cancelled: status === 'CANCELLED', past: id === L10N.LABEL_PAST_BOOKINGS.id };\n\n return (\n <Card key={booking} className={style.card}>\n {!is.past && <View className={style.image} style={{ backgroundImage: `url(${image})` }} />}\n\n <View className={style.offset}>\n <Text bold headline={!isMobile} level={3}>\n {hotel}\n </Text>\n {checkIn && checkOut && (\n <Text {...caption}>\n {getCalendarCaption(\n [parseDate(checkIn), parseDate(checkOut)],\n translate,\n undefined,\n locale,\n )}\n </Text>\n )}\n {city && <Text {...caption}>{city}</Text>}\n\n <Action {...caption} href={site} inline>\n {translate(L10N.ACTION_VIEW_HOTEL)}\n </Action>\n </View>\n\n <View row className={[style.offset, style.spaceBetween]}>\n <View>\n <Text bold headline level={isMobile || total >= 10000 ? 3 : 2}>\n {currencyFormat({ currency, symbol: true, value: total })}\n </Text>\n\n <Tooltip text={taxesText}>\n <Text accent action={!isMobile} small={isMobile}>\n {`${translate(L10N.LABEL_PRICE_DETAILS)} >`}\n </Text>\n </Tooltip>\n </View>\n\n {!is.cancelled && !is.past && (\n <Button onPress={() => handleManage(manage)}>{translate(L10N.ACTION_MANAGE_BOOKING)}</Button>\n )}\n\n {is.cancelled && <Button disabled>{translate(L10N.LABEL_CANCELLED)}</Button>}\n </View>\n </Card>\n );\n },\n )}\n </Cards>\n </>\n ))\n ) : has.dataSource ? (\n <Notification info large className={style.notification}>\n {translate(L10N.LABEL_NO_BOOKINGS)}\n </Notification>\n ) : null}\n </View>\n );\n};\n\nBookings.displayName = 'Mirai:Core:Profile:Bookings';\n\nBookings.propTypes = {};\n\nexport { Bookings };\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bookings.l10n.js","names":["L10N","exports","ACTION_MANAGE_BOOKING","id","ACTION_SEARCH","ACTION_SEARCH_CTA","ACTION_VIEW_HOTEL","LABEL_OPTION_MANAGE","LABEL_CANCELLED","LABEL_NEXT_BOOKINGS","LABEL_NO_BOOKINGS","LABEL_PAST_BOOKINGS","LABEL_PRICE_DETAILS","LABEL_RESERVATION_CODE","LABEL_RESERVATION_CODE_DESCRIPTION","LABEL_SEARCH","LABEL_SEARCH_PLACEHOLDER"],"sources":["../../../../../src/components/Profile/components/Bookings/Bookings.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_MANAGE_BOOKING: { id: 'user.action.manage_booking' },\n ACTION_SEARCH: { id: 'user.action.search' },\n ACTION_SEARCH_CTA: { id: 'common.action.search' },\n ACTION_VIEW_HOTEL: { id: 'common.action.view_hotel' },\n\n LABEL_OPTION_MANAGE: { id: 'user.label.option_manage' },\n\n LABEL_CANCELLED: { id: 'user.label.cancelled' },\n LABEL_NEXT_BOOKINGS: { id: 'user.label.next_bookings' },\n LABEL_NO_BOOKINGS: { id: 'user.label.no_bookings' },\n LABEL_PAST_BOOKINGS: { id: 'user.label.past_bookings' },\n LABEL_PRICE_DETAILS: { id: 'finder.label.price_details' },\n LABEL_RESERVATION_CODE: { id: 'common.label.reservation_code' },\n LABEL_RESERVATION_CODE_DESCRIPTION: { id: 'common.label.reservation_code_description' },\n LABEL_SEARCH: { id: 'user.label.search' },\n LABEL_SEARCH_PLACEHOLDER: { id: 'common.label.search' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,qBAAqB,EAAE;IAAEC,EAAE,EAAE;EAA6B,CAAC;EAC3DC,
|
|
1
|
+
{"version":3,"file":"Bookings.l10n.js","names":["L10N","exports","ACTION_MANAGE_BOOKING","id","ACTION_MY_BOOKINGS","ACTION_SEARCH","ACTION_SEARCH_CTA","ACTION_VIEW_HOTEL","LABEL_OPTION_MANAGE","LABEL_CANCELLED","LABEL_NEXT_BOOKINGS","LABEL_NO_BOOKINGS","LABEL_PAST_BOOKINGS","LABEL_PRICE_DETAILS","LABEL_RESERVATION_CODE","LABEL_RESERVATION_CODE_DESCRIPTION","LABEL_SEARCH","LABEL_SEARCH_PLACEHOLDER"],"sources":["../../../../../src/components/Profile/components/Bookings/Bookings.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_MANAGE_BOOKING: { id: 'user.action.manage_booking' },\n ACTION_MY_BOOKINGS: { id: 'user.action.my_bookings' },\n ACTION_SEARCH: { id: 'user.action.search' },\n ACTION_SEARCH_CTA: { id: 'common.action.search' },\n ACTION_VIEW_HOTEL: { id: 'common.action.view_hotel' },\n\n LABEL_OPTION_MANAGE: { id: 'user.label.option_manage' },\n\n LABEL_CANCELLED: { id: 'user.label.cancelled' },\n LABEL_NEXT_BOOKINGS: { id: 'user.label.next_bookings' },\n LABEL_NO_BOOKINGS: { id: 'user.label.no_bookings' },\n LABEL_PAST_BOOKINGS: { id: 'user.label.past_bookings' },\n LABEL_PRICE_DETAILS: { id: 'finder.label.price_details' },\n LABEL_RESERVATION_CODE: { id: 'common.label.reservation_code' },\n LABEL_RESERVATION_CODE_DESCRIPTION: { id: 'common.label.reservation_code_description' },\n LABEL_SEARCH: { id: 'user.label.search' },\n LABEL_SEARCH_PLACEHOLDER: { id: 'common.label.search' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,qBAAqB,EAAE;IAAEC,EAAE,EAAE;EAA6B,CAAC;EAC3DC,kBAAkB,EAAE;IAAED,EAAE,EAAE;EAA0B,CAAC;EACrDE,aAAa,EAAE;IAAEF,EAAE,EAAE;EAAqB,CAAC;EAC3CG,iBAAiB,EAAE;IAAEH,EAAE,EAAE;EAAuB,CAAC;EACjDI,iBAAiB,EAAE;IAAEJ,EAAE,EAAE;EAA2B,CAAC;EAErDK,mBAAmB,EAAE;IAAEL,EAAE,EAAE;EAA2B,CAAC;EAEvDM,eAAe,EAAE;IAAEN,EAAE,EAAE;EAAuB,CAAC;EAC/CO,mBAAmB,EAAE;IAAEP,EAAE,EAAE;EAA2B,CAAC;EACvDQ,iBAAiB,EAAE;IAAER,EAAE,EAAE;EAAyB,CAAC;EACnDS,mBAAmB,EAAE;IAAET,EAAE,EAAE;EAA2B,CAAC;EACvDU,mBAAmB,EAAE;IAAEV,EAAE,EAAE;EAA6B,CAAC;EACzDW,sBAAsB,EAAE;IAAEX,EAAE,EAAE;EAAgC,CAAC;EAC/DY,kCAAkC,EAAE;IAAEZ,EAAE,EAAE;EAA4C,CAAC;EACvFa,YAAY,EAAE;IAAEb,EAAE,EAAE;EAAoB,CAAC;EACzCc,wBAAwB,EAAE;IAAEd,EAAE,EAAE;EAAsB;AACxD,CAAC"}
|
package/build/components/Profile/components/Bookings/__tests__/__snapshots__/Bookings.test.js.snap
CHANGED
|
@@ -4,6 +4,16 @@ exports[`component:<Bookings> renders 1`] = `
|
|
|
4
4
|
<DocumentFragment>
|
|
5
5
|
<div
|
|
6
6
|
class="view"
|
|
7
|
-
|
|
7
|
+
>
|
|
8
|
+
<div
|
|
9
|
+
class="view row"
|
|
10
|
+
>
|
|
11
|
+
<h2
|
|
12
|
+
class="text bold headline-2"
|
|
13
|
+
>
|
|
14
|
+
user.action.my_bookings
|
|
15
|
+
</h2>
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
8
18
|
</DocumentFragment>
|
|
9
19
|
`;
|
package/build/components/Profile/{Profile.Account.js → components/Settings/Settings.Account.js}
RENAMED
|
@@ -9,11 +9,11 @@ var _locale = require("@mirai/locale");
|
|
|
9
9
|
var _services = require("@mirai/services");
|
|
10
10
|
var _ui = require("@mirai/ui");
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var style = _interopRequireWildcard(require("./
|
|
15
|
-
var _shared__ = require("
|
|
16
|
-
var _helpers = require("
|
|
12
|
+
var _Settings = require("./Settings.constants");
|
|
13
|
+
var _Settings2 = require("./Settings.l10n");
|
|
14
|
+
var style = _interopRequireWildcard(require("./Settings.module.css"));
|
|
15
|
+
var _shared__ = require("../../../__shared__");
|
|
16
|
+
var _helpers = require("../../../helpers");
|
|
17
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
19
|
const Account = () => {
|
|
@@ -69,7 +69,7 @@ const Account = () => {
|
|
|
69
69
|
if (response) {
|
|
70
70
|
_dataSources.Event.publish(_helpers.EVENT.NOTIFICATION, {
|
|
71
71
|
success: true,
|
|
72
|
-
...
|
|
72
|
+
..._Settings2.L10N.SUCCESS_ACCOUNT
|
|
73
73
|
});
|
|
74
74
|
set({
|
|
75
75
|
session: {
|
|
@@ -82,7 +82,7 @@ const Account = () => {
|
|
|
82
82
|
};
|
|
83
83
|
const countryCode = (0, _helpers.getCountryCode)(form.country, countries);
|
|
84
84
|
const has = {
|
|
85
|
-
changes:
|
|
85
|
+
changes: _Settings.ACCOUNT_FIELDS.some(key => form[key] !== session[key]) || countryCode !== session.country,
|
|
86
86
|
dateOfBirth: (_form$dateOfBirth = form.dateOfBirth) === null || _form$dateOfBirth === void 0 ? void 0 : _form$dateOfBirth.length,
|
|
87
87
|
errors: Object.keys(formError).length !== 0
|
|
88
88
|
};
|
|
@@ -93,10 +93,10 @@ const Account = () => {
|
|
|
93
93
|
onSubmit: handleSubmit
|
|
94
94
|
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
95
95
|
wide: true
|
|
96
|
-
}, translate(
|
|
96
|
+
}, translate(_Settings2.L10N.DESCRIPTION_ACCOUNT)), /*#__PURE__*/_react.default.createElement(_shared__.TextRequiredFields, null), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
|
|
97
97
|
name: "firstName",
|
|
98
98
|
error: formError.firstName,
|
|
99
|
-
label: translate(
|
|
99
|
+
label: translate(_Settings2.L10N.FIRSTNAME_LABEL),
|
|
100
100
|
required: true,
|
|
101
101
|
showRequired: true,
|
|
102
102
|
success: form.firstName !== session.firstName,
|
|
@@ -104,7 +104,7 @@ const Account = () => {
|
|
|
104
104
|
}), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
|
|
105
105
|
name: "lastName",
|
|
106
106
|
error: formError.lastName,
|
|
107
|
-
label: translate(
|
|
107
|
+
label: translate(_Settings2.L10N.LASTNAME_LABEL),
|
|
108
108
|
required: true,
|
|
109
109
|
showRequired: true,
|
|
110
110
|
success: form.lastName !== session.lastName,
|
|
@@ -112,7 +112,7 @@ const Account = () => {
|
|
|
112
112
|
}), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
|
|
113
113
|
name: "email",
|
|
114
114
|
disabled: true,
|
|
115
|
-
label: translate(
|
|
115
|
+
label: translate(_Settings2.L10N.EMAIL_LABEL),
|
|
116
116
|
required: true,
|
|
117
117
|
showRequired: true,
|
|
118
118
|
type: "email",
|
|
@@ -120,9 +120,9 @@ const Account = () => {
|
|
|
120
120
|
}), /*#__PURE__*/_react.default.createElement(_ui.InputDate, {
|
|
121
121
|
name: "dateOfBirth",
|
|
122
122
|
error: has.dateOfBirth && !!formError.dateOfBirth,
|
|
123
|
-
hint: has.dateOfBirth && (_formError$dateOfBirt = formError.dateOfBirth) !== null && _formError$dateOfBirt !== void 0 && _formError$dateOfBirt.max ? translate(
|
|
123
|
+
hint: has.dateOfBirth && (_formError$dateOfBirt = formError.dateOfBirth) !== null && _formError$dateOfBirt !== void 0 && _formError$dateOfBirt.max ? translate(_Settings2.L10N.DATEOFBIRTH_ERROR) : undefined,
|
|
124
124
|
format: formatDate,
|
|
125
|
-
label: translate(
|
|
125
|
+
label: translate(_Settings2.L10N.DATEOFBIRTH_LABEL),
|
|
126
126
|
max: (0, _locale.dateFormat)((0, _locale.dateCalc)(new Date(), -18, 'years'), {
|
|
127
127
|
format: formatDate
|
|
128
128
|
}),
|
|
@@ -133,8 +133,8 @@ const Account = () => {
|
|
|
133
133
|
value: form.dateOfBirth
|
|
134
134
|
}), /*#__PURE__*/_react.default.createElement(_ui.InputSelect, {
|
|
135
135
|
name: "country",
|
|
136
|
-
label: translate(
|
|
137
|
-
placeholder: translate(
|
|
136
|
+
label: translate(_Settings2.L10N.COUNTRY_LABEL),
|
|
137
|
+
placeholder: translate(_Settings2.L10N.COUNTRY_PLACEHOLDER),
|
|
138
138
|
options: Object.values(countries),
|
|
139
139
|
required: true,
|
|
140
140
|
showRequired: true,
|
|
@@ -144,22 +144,21 @@ const Account = () => {
|
|
|
144
144
|
name: "subscribed",
|
|
145
145
|
checked: form.subscribed,
|
|
146
146
|
type: "checkbox",
|
|
147
|
-
label: translate(
|
|
148
|
-
|
|
149
|
-
|
|
147
|
+
label: translate(_Settings2.L10N.SUBSCRIBED_LABEL),
|
|
148
|
+
small: true,
|
|
149
|
+
value: form.subscribed
|
|
150
150
|
}), responseError && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
|
|
151
151
|
error: true,
|
|
152
152
|
className: style.notification
|
|
153
|
-
}, translate(
|
|
153
|
+
}, translate(_Settings2.L10N.ERROR)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
154
154
|
busy: busy,
|
|
155
155
|
disabled: busy || has.errors || !has.changes,
|
|
156
156
|
large: true,
|
|
157
157
|
wide: true,
|
|
158
|
-
type: "submit"
|
|
159
|
-
|
|
160
|
-
}, translate(_Profile2.L10N.CTA_ACCOUNT)));
|
|
158
|
+
type: "submit"
|
|
159
|
+
}, translate(_Settings2.L10N.CTA_ACCOUNT)));
|
|
161
160
|
};
|
|
162
161
|
exports.Account = Account;
|
|
163
162
|
Account.displayName = 'Mirai:Core:Profile:Account';
|
|
164
163
|
Account.propTypes = {};
|
|
165
|
-
//# sourceMappingURL=
|
|
164
|
+
//# sourceMappingURL=Settings.Account.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Settings.Account.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Settings","_Settings2","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Account","_form$dateOfBirth","_formError$dateOfBirt","value","locale","session","useStore","translate","useLocale","busy","setBusy","useState","countries","setCountries","form","setForm","formError","setFormError","responseError","setResponseError","formatDate","getDateFormat","useEffect","profile","next","ServiceCountry","list","country","handleSubmit","undefined","parameters","getCountryCode","dateOfBirth","dateFormat","parseDate","format","response","ServiceUser","update","catch","error","Event","publish","EVENT","NOTIFICATION","success","L10N","SUCCESS_ACCOUNT","countryCode","changes","ACCOUNT_FIELDS","some","key","length","errors","keys","createElement","Form","validateOnMount","onChange","onError","onSubmit","Text","wide","DESCRIPTION_ACCOUNT","TextRequiredFields","InputText","name","firstName","label","FIRSTNAME_LABEL","required","showRequired","lastName","LASTNAME_LABEL","disabled","EMAIL_LABEL","type","email","InputDate","hint","max","DATEOFBIRTH_ERROR","DATEOFBIRTH_LABEL","dateCalc","Date","InputSelect","COUNTRY_LABEL","placeholder","COUNTRY_PLACEHOLDER","options","values","InputOption","checked","subscribed","SUBSCRIBED_LABEL","small","Notification","className","notification","ERROR","Button","large","CTA_ACCOUNT","exports","displayName","propTypes"],"sources":["../../../../../src/components/Profile/components/Settings/Settings.Account.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { dateCalc, dateFormat, getDateFormat, parseDate, useLocale } from '@mirai/locale';\nimport { ServiceCountry, ServiceUser } from '@mirai/services';\nimport { Button, Form, InputDate, InputOption, InputSelect, InputText, Notification, Text } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { ACCOUNT_FIELDS } from './Settings.constants';\nimport { L10N } from './Settings.l10n';\nimport * as style from './Settings.module.css';\nimport { TextRequiredFields } from '../../../__shared__';\nimport { EVENT, getCountryCode } from '../../../helpers';\n\nconst Account = () => {\n const {\n set,\n value: { locale, session = {} },\n } = useStore();\n const { translate } = useLocale();\n\n const [busy, setBusy] = useState(false);\n const [countries, setCountries] = useState({});\n const [form, setForm] = useState(session);\n const [formError, setFormError] = useState({});\n const [responseError, setResponseError] = useState();\n\n const formatDate = getDateFormat(locale);\n\n useEffect(() => {\n setResponseError();\n set({ profile: form });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [form]);\n\n useEffect(() => {\n (async () => {\n const next = (await ServiceCountry.list(locale)) || {};\n\n setCountries(next);\n setForm({ ...form, country: next[session.country] });\n })();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n const handleSubmit = async (form) => {\n setBusy(true);\n setResponseError(undefined);\n\n const parameters = {\n ...form,\n country: getCountryCode(form.country, countries),\n dateOfBirth: dateFormat(parseDate(form.dateOfBirth, formatDate), { format: 'DD/MM/YYYY' }),\n };\n\n const response = await ServiceUser.update(parameters).catch((error) => {\n setResponseError(error);\n });\n\n if (response) {\n Event.publish(EVENT.NOTIFICATION, { success: true, ...L10N.SUCCESS_ACCOUNT });\n set({ session: { ...session, ...parameters } });\n }\n setBusy(false);\n };\n\n const countryCode = getCountryCode(form.country, countries);\n const has = {\n changes: ACCOUNT_FIELDS.some((key) => form[key] !== session[key]) || countryCode !== session.country,\n dateOfBirth: form.dateOfBirth?.length,\n errors: Object.keys(formError).length !== 0,\n };\n\n return (\n <Form validateOnMount onChange={setForm} onError={setFormError} onSubmit={handleSubmit}>\n <Text wide>{translate(L10N.DESCRIPTION_ACCOUNT)}</Text>\n <TextRequiredFields />\n <InputText\n name=\"firstName\"\n error={formError.firstName}\n label={translate(L10N.FIRSTNAME_LABEL)}\n required\n showRequired\n success={form.firstName !== session.firstName}\n value={form.firstName}\n />\n <InputText\n name=\"lastName\"\n error={formError.lastName}\n label={translate(L10N.LASTNAME_LABEL)}\n required\n showRequired\n success={form.lastName !== session.lastName}\n value={form.lastName}\n />\n <InputText\n name=\"email\"\n disabled\n label={translate(L10N.EMAIL_LABEL)}\n required\n showRequired\n type=\"email\"\n value={form.email}\n />\n <InputDate\n name=\"dateOfBirth\"\n error={has.dateOfBirth && !!formError.dateOfBirth}\n hint={has.dateOfBirth && formError.dateOfBirth?.max ? translate(L10N.DATEOFBIRTH_ERROR) : undefined}\n format={formatDate}\n label={translate(L10N.DATEOFBIRTH_LABEL)}\n max={dateFormat(dateCalc(new Date(), -18, 'years'), { format: formatDate })}\n required\n showRequired\n success={form.dateOfBirth !== session.dateOfBirth}\n type=\"inputDate\"\n value={form.dateOfBirth}\n />\n <InputSelect\n name=\"country\"\n label={translate(L10N.COUNTRY_LABEL)}\n placeholder={translate(L10N.COUNTRY_PLACEHOLDER)}\n options={Object.values(countries)}\n required\n showRequired\n success={countryCode !== session.country}\n value={form.country}\n />\n <InputOption\n name=\"subscribed\"\n checked={form.subscribed}\n type=\"checkbox\"\n label={translate(L10N.SUBSCRIBED_LABEL)}\n small\n value={form.subscribed}\n />\n\n {responseError && (\n <Notification error className={style.notification}>\n {translate(L10N.ERROR)}\n </Notification>\n )}\n\n <Button busy={busy} disabled={busy || has.errors || !has.changes} large wide type=\"submit\">\n {translate(L10N.CTA_ACCOUNT)}\n </Button>\n </Form>\n );\n};\n\nAccount.displayName = 'Mirai:Core:Profile:Account';\n\nAccount.propTypes = {};\n\nexport { Account };\n"],"mappings":"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"}
|
package/build/components/Profile/{Profile.Password.js → components/Settings/Settings.Password.js}
RENAMED
|
@@ -9,10 +9,10 @@ var _locale = require("@mirai/locale");
|
|
|
9
9
|
var _services = require("@mirai/services");
|
|
10
10
|
var _ui = require("@mirai/ui");
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
-
var
|
|
13
|
-
var style = _interopRequireWildcard(require("./
|
|
14
|
-
var _shared__ = require("
|
|
15
|
-
var _helpers = require("
|
|
12
|
+
var _Settings = require("./Settings.l10n");
|
|
13
|
+
var style = _interopRequireWildcard(require("./Settings.module.css"));
|
|
14
|
+
var _shared__ = require("../../../__shared__");
|
|
15
|
+
var _helpers = require("../../../helpers");
|
|
16
16
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
18
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
@@ -68,7 +68,7 @@ const Password = others => {
|
|
|
68
68
|
if (response) {
|
|
69
69
|
_dataSources.Event.publish(_helpers.EVENT.NOTIFICATION, {
|
|
70
70
|
success: true,
|
|
71
|
-
...
|
|
71
|
+
..._Settings.L10N.SUCCESS_PASSWORD
|
|
72
72
|
});
|
|
73
73
|
}
|
|
74
74
|
setBusy(false);
|
|
@@ -83,12 +83,14 @@ const Password = others => {
|
|
|
83
83
|
onError: setFormError,
|
|
84
84
|
onSubmit: handleSubmit
|
|
85
85
|
}), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
86
|
+
bold: true,
|
|
87
|
+
headline: true,
|
|
86
88
|
wide: true
|
|
87
|
-
}, translate(
|
|
89
|
+
}, translate(_Settings.L10N.DESCRIPTION_PASSWORD)), /*#__PURE__*/_react.default.createElement(_shared__.TextRequiredFields, null), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
|
|
88
90
|
name: "currentPassword",
|
|
89
91
|
error: ((_form$currentPassword = form.currentPassword) === null || _form$currentPassword === void 0 ? void 0 : _form$currentPassword.length) && ((_formError$currentPas = formError.currentPassword) === null || _formError$currentPas === void 0 ? void 0 : _formError$currentPas.test),
|
|
90
|
-
hint: translate(
|
|
91
|
-
label: translate(
|
|
92
|
+
hint: translate(_Settings.L10N.PASSWORD_HINT),
|
|
93
|
+
label: translate(_Settings.L10N.PASSWORD_LABEL),
|
|
92
94
|
required: true,
|
|
93
95
|
showRequired: true,
|
|
94
96
|
success: ((_form$currentPassword2 = form.currentPassword) === null || _form$currentPassword2 === void 0 ? void 0 : _form$currentPassword2.length) && !formError.currentPassword,
|
|
@@ -97,8 +99,8 @@ const Password = others => {
|
|
|
97
99
|
}), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
|
|
98
100
|
name: "password",
|
|
99
101
|
error: ((_form$password = form.password) === null || _form$password === void 0 ? void 0 : _form$password.length) && (((_formError$password = formError.password) === null || _formError$password === void 0 ? void 0 : _formError$password.test) || form.password === form.currentPassword),
|
|
100
|
-
hint: translate(
|
|
101
|
-
label: translate(
|
|
102
|
+
hint: translate(_Settings.L10N.PASSWORD_HINT),
|
|
103
|
+
label: translate(_Settings.L10N.PASSWORD_NEW_LABEL),
|
|
102
104
|
required: true,
|
|
103
105
|
showRequired: true,
|
|
104
106
|
success: ((_form$password2 = form.password) === null || _form$password2 === void 0 ? void 0 : _form$password2.length) && form.password !== form.currentPassword && !formError.password,
|
|
@@ -108,16 +110,15 @@ const Password = others => {
|
|
|
108
110
|
}), has.responseError && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
|
|
109
111
|
error: true,
|
|
110
112
|
className: style.notification
|
|
111
|
-
}, translate(
|
|
113
|
+
}, translate(_Settings.L10N.ERROR)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
112
114
|
busy: busy,
|
|
113
115
|
disabled: busy || has.errors,
|
|
114
116
|
large: true,
|
|
115
117
|
wide: true,
|
|
116
|
-
type: "submit"
|
|
117
|
-
|
|
118
|
-
}, translate(_Profile.L10N.CTA_PASSWORD)));
|
|
118
|
+
type: "submit"
|
|
119
|
+
}, translate(_Settings.L10N.CTA_PASSWORD)));
|
|
119
120
|
};
|
|
120
121
|
exports.Password = Password;
|
|
121
122
|
Password.displayName = 'Mirai:Core:Profile:Password';
|
|
122
123
|
Password.propTypes = {};
|
|
123
|
-
//# sourceMappingURL=
|
|
124
|
+
//# sourceMappingURL=Settings.Password.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Settings.Password.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Settings","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","Password","others","_form$currentPassword","_formError$currentPas","_form$currentPassword2","_form$password","_formError$password","_form$password2","translate","useLocale","value","session","club","id","idClub","email","useStore","busy","setBusy","useState","form","setForm","formError","setFormError","responseError","setResponseError","sessionError","setSessionError","useEffect","handleSubmit","undefined","currentPassword","password","ServiceUser","login","catch","error","response","update","Event","publish","EVENT","NOTIFICATION","success","L10N","SUCCESS_PASSWORD","errors","keys","createElement","Form","validateOnMount","onChange","onError","onSubmit","Text","bold","headline","wide","DESCRIPTION_PASSWORD","TextRequiredFields","InputText","name","test","hint","PASSWORD_HINT","label","PASSWORD_LABEL","required","showRequired","type","PASSWORD_NEW_LABEL","testPassword","Notification","className","notification","ERROR","Button","disabled","large","CTA_PASSWORD","exports","displayName","propTypes"],"sources":["../../../../../src/components/Profile/components/Settings/Settings.Password.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport { Button, Form, InputText, Notification, Text } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Settings.l10n';\nimport * as style from './Settings.module.css';\nimport { TextRequiredFields } from '../../../__shared__';\nimport { EVENT, testPassword } from '../../../helpers';\n\nconst Password = (others) => {\n const { translate } = useLocale();\n const { value: { session: { club: { id: idClub } = {}, email } = {} } = {}, set } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [form, setForm] = useState({});\n const [formError, setFormError] = useState({});\n const [responseError, setResponseError] = useState();\n const [sessionError, setSessionError] = useState();\n\n useEffect(() => {\n setResponseError();\n setSessionError();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [form]);\n\n const handleSubmit = async (form) => {\n setBusy(true);\n setResponseError(undefined);\n setSessionError(undefined);\n\n const { currentPassword, password } = form;\n const session = await ServiceUser.login({ email, idClub, password: currentPassword }).catch((error) => {\n setSessionError(error);\n });\n if (session) set({ session });\n\n const response =\n session &&\n (await ServiceUser.update({\n password,\n }).catch((error) => {\n setResponseError(error);\n }));\n\n if (response) {\n Event.publish(EVENT.NOTIFICATION, { success: true, ...L10N.SUCCESS_PASSWORD });\n }\n\n setBusy(false);\n };\n\n const has = {\n errors: Object.keys(formError).length !== 0 || form.password === form.currentPassword,\n responseError: responseError || sessionError,\n };\n\n return (\n <Form {...others} validateOnMount onChange={setForm} onError={setFormError} onSubmit={handleSubmit}>\n <Text bold headline wide>\n {translate(L10N.DESCRIPTION_PASSWORD)}\n </Text>\n <TextRequiredFields />\n <InputText\n name=\"currentPassword\"\n error={form.currentPassword?.length && formError.currentPassword?.test}\n hint={translate(L10N.PASSWORD_HINT)}\n label={translate(L10N.PASSWORD_LABEL)}\n required\n showRequired\n success={form.currentPassword?.length && !formError.currentPassword}\n type=\"password\"\n value={form.currentPassword}\n />\n\n <InputText\n name=\"password\"\n error={form.password?.length && (formError.password?.test || form.password === form.currentPassword)}\n hint={translate(L10N.PASSWORD_HINT)}\n label={translate(L10N.PASSWORD_NEW_LABEL)}\n required\n showRequired\n success={form.password?.length && form.password !== form.currentPassword && !formError.password}\n test={testPassword}\n type=\"password\"\n value={form.password}\n />\n\n {has.responseError && (\n <Notification error className={style.notification}>\n {translate(L10N.ERROR)}\n </Notification>\n )}\n\n <Button busy={busy} disabled={busy || has.errors} large wide type=\"submit\">\n {translate(L10N.CTA_PASSWORD)}\n </Button>\n </Form>\n );\n};\n\nPassword.displayName = 'Mirai:Core:Profile:Password';\n\nPassword.propTypes = {};\n\nexport { Password };\n"],"mappings":"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"}
|
package/build/components/Profile/{Profile.Signout.js → components/Settings/Settings.Signout.js}
RENAMED
|
@@ -9,10 +9,10 @@ var _locale = require("@mirai/locale");
|
|
|
9
9
|
var _services = require("@mirai/services");
|
|
10
10
|
var _ui = require("@mirai/ui");
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
-
var
|
|
13
|
-
var style = _interopRequireWildcard(require("./
|
|
14
|
-
var _helpers = require("
|
|
15
|
-
var _Session = require("
|
|
12
|
+
var _Settings = require("./Settings.l10n");
|
|
13
|
+
var style = _interopRequireWildcard(require("./Settings.module.css"));
|
|
14
|
+
var _helpers = require("../../../helpers");
|
|
15
|
+
var _Session = require("../../../Session/Session.constants");
|
|
16
16
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
18
|
const Signout = () => {
|
|
@@ -52,49 +52,45 @@ const Signout = () => {
|
|
|
52
52
|
}));
|
|
53
53
|
document.location.href = url;
|
|
54
54
|
};
|
|
55
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
55
|
+
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
56
|
+
className: style.box
|
|
57
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
56
58
|
bold: true,
|
|
57
59
|
headline: true
|
|
58
|
-
}, translate(
|
|
60
|
+
}, translate(_Settings.L10N.TITLE_SIGNOUT, {
|
|
59
61
|
club: club.name
|
|
60
|
-
})), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
61
|
-
className: style.description
|
|
62
|
-
}, translate(_Profile.L10N.DESCRIPTION_SIGNOUT)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
62
|
+
})), /*#__PURE__*/_react.default.createElement(_ui.Text, null, translate(_Settings.L10N.DESCRIPTION_SIGNOUT)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
63
63
|
secondary: true,
|
|
64
64
|
large: true,
|
|
65
65
|
wide: true,
|
|
66
66
|
onPress: handleOpen
|
|
67
|
-
}, translate(
|
|
68
|
-
title: translate(
|
|
67
|
+
}, translate(_Settings.L10N.BUTTON_SIGNOUT)), /*#__PURE__*/_react.default.createElement(_ui.Modal, {
|
|
68
|
+
title: translate(_Settings.L10N.BUTTON_SIGNOUT),
|
|
69
69
|
visible: modal,
|
|
70
70
|
onClose: handleClose
|
|
71
71
|
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
72
|
-
className: style.
|
|
73
|
-
}, !response && /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
74
|
-
className: style.description
|
|
75
|
-
}, translate(_Profile.L10N.DESCRIPTION_SIGNOUT_MODAL)), (response || responseError) && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
|
|
72
|
+
className: style.modal
|
|
73
|
+
}, !response && /*#__PURE__*/_react.default.createElement(_ui.Text, null, translate(_Settings.L10N.DESCRIPTION_SIGNOUT_MODAL)), (response || responseError) && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
|
|
76
74
|
large: !!response,
|
|
77
75
|
error: !!responseError,
|
|
78
76
|
success: !!response,
|
|
79
77
|
className: style.notification
|
|
80
|
-
}, translate(responseError ?
|
|
78
|
+
}, translate(responseError ? _Settings.L10N.ERROR : _Settings.L10N.SUCCESS_SIGNOUT)), !response ? /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
81
79
|
row: true,
|
|
82
80
|
className: style.buttons
|
|
83
81
|
}, /*#__PURE__*/_react.default.createElement(_ui.Action, {
|
|
84
82
|
disabled: busy,
|
|
85
83
|
onPress: handleClose
|
|
86
|
-
}, translate(
|
|
84
|
+
}, translate(_Settings.L10N.ACTION_SIGNOUT_CANCEL)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
87
85
|
busy: busy,
|
|
88
86
|
onPress: handleSubmit
|
|
89
|
-
}, translate(
|
|
90
|
-
className: style.description
|
|
91
|
-
}, translate(_Profile.L10N.DESCRIPTION_SIGNOUT_MODAL_SUCCESS)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
87
|
+
}, translate(_Settings.L10N.CTA_SIGNOUT))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Text, null, translate(_Settings.L10N.DESCRIPTION_SIGNOUT_MODAL_SUCCESS)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
92
88
|
wide: true,
|
|
93
89
|
type: "submit",
|
|
94
90
|
onPress: handleSignup
|
|
95
|
-
}, translate(
|
|
91
|
+
}, translate(_Settings.L10N.CTA_SIGNUP))))));
|
|
96
92
|
};
|
|
97
93
|
exports.Signout = Signout;
|
|
98
94
|
Signout.displayName = 'Mirai:Core:Profile:Signout';
|
|
99
95
|
Signout.propTypes = {};
|
|
100
|
-
//# sourceMappingURL=
|
|
96
|
+
//# sourceMappingURL=Settings.Signout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Settings.Signout.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Settings","style","_helpers","_Session","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Signout","value","club","hotel","language","useStore","translate","useLocale","busy","setBusy","useState","modal","setModal","response","setResponse","responseError","setResponseError","handleSubmit","undefined","ServiceUser","signout","catch","error","handleClose","handleOpen","handleSignup","url","concat","process","env","SERVICE_USER","ENDPOINT","SIGNUP","toUrlParams","idtokenprovider","id","lang","document","location","href","createElement","View","className","box","Text","bold","headline","L10N","TITLE_SIGNOUT","name","DESCRIPTION_SIGNOUT","Button","secondary","large","wide","onPress","BUTTON_SIGNOUT","Modal","title","visible","onClose","DESCRIPTION_SIGNOUT_MODAL","Notification","success","notification","ERROR","SUCCESS_SIGNOUT","row","buttons","Action","disabled","ACTION_SIGNOUT_CANCEL","CTA_SIGNOUT","Fragment","DESCRIPTION_SIGNOUT_MODAL_SUCCESS","type","CTA_SIGNUP","exports","displayName","propTypes"],"sources":["../../../../../src/components/Profile/components/Settings/Settings.Signout.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport { Action, Button, Modal, Notification, Text, View } from '@mirai/ui';\nimport React, { useState } from 'react';\n\nimport { L10N } from './Settings.l10n';\nimport * as style from './Settings.module.css';\nimport { toUrlParams } from '../../../helpers';\nimport { ENDPOINT } from '../../../Session/Session.constants';\n\nconst Signout = () => {\n const {\n value: { club = {}, hotel = {}, language },\n } = useStore();\n const { translate } = useLocale();\n\n const [busy, setBusy] = useState(false);\n const [modal, setModal] = useState(false);\n const [response, setResponse] = useState();\n const [responseError, setResponseError] = useState();\n\n const handleSubmit = async () => {\n setBusy(true);\n setResponseError(undefined);\n\n const response = await ServiceUser.signout().catch((error) => {\n setResponseError(error);\n });\n\n setResponse(response);\n setBusy(false);\n };\n\n const handleClose = () => {\n setModal(false);\n };\n\n const handleOpen = () => {\n setModal(true);\n };\n\n const handleSignup = () => {\n const url = `${process.env.SERVICE_USER}/${ENDPOINT.SIGNUP}${toUrlParams({\n idtokenprovider: hotel.id,\n lang: language,\n })}`;\n\n document.location.href = url;\n };\n\n return (\n <View className={style.box}>\n <Text bold headline>\n {translate(L10N.TITLE_SIGNOUT, { club: club.name })}\n </Text>\n <Text>{translate(L10N.DESCRIPTION_SIGNOUT)}</Text>\n\n <Button secondary large wide onPress={handleOpen}>\n {translate(L10N.BUTTON_SIGNOUT)}\n </Button>\n\n <Modal title={translate(L10N.BUTTON_SIGNOUT)} visible={modal} onClose={handleClose}>\n <View className={style.modal}>\n {!response && <Text>{translate(L10N.DESCRIPTION_SIGNOUT_MODAL)}</Text>}\n\n {(response || responseError) && (\n <Notification\n large={!!response}\n error={!!responseError}\n success={!!response}\n className={style.notification}\n >\n {translate(responseError ? L10N.ERROR : L10N.SUCCESS_SIGNOUT)}\n </Notification>\n )}\n\n {!response ? (\n <View row className={style.buttons}>\n <Action disabled={busy} onPress={handleClose}>\n {translate(L10N.ACTION_SIGNOUT_CANCEL)}\n </Action>\n <Button busy={busy} onPress={handleSubmit}>\n {translate(L10N.CTA_SIGNOUT)}\n </Button>\n </View>\n ) : (\n <>\n <Text>{translate(L10N.DESCRIPTION_SIGNOUT_MODAL_SUCCESS)}</Text>\n <Button wide type=\"submit\" onPress={handleSignup}>\n {translate(L10N.CTA_SIGNUP)}\n </Button>\n </>\n )}\n </View>\n </Modal>\n </View>\n );\n};\n\nSignout.displayName = 'Mirai:Core:Profile:Signout';\n\nSignout.propTypes = {};\n\nexport { Signout };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.CONTEXTS = exports.CONTEXT = exports.ACCOUNT_FIELDS = void 0;
|
|
7
|
+
var _Settings = require("./Settings.l10n");
|
|
8
|
+
var _helpers = require("../../../helpers");
|
|
9
|
+
const ACCOUNT_FIELDS = exports.ACCOUNT_FIELDS = ['firstName', 'lastName', 'dateOfBirth', 'subscribed'];
|
|
10
|
+
const CONTEXT = exports.CONTEXT = {
|
|
11
|
+
ACCOUNT_DETAILS: 1,
|
|
12
|
+
SECURITY: 2,
|
|
13
|
+
SIGNOUT: 3
|
|
14
|
+
};
|
|
15
|
+
const CONTEXTS = exports.CONTEXTS = [{
|
|
16
|
+
id: CONTEXT.ACCOUNT_DETAILS,
|
|
17
|
+
icon: _helpers.ICON.PERSON,
|
|
18
|
+
label: _Settings.L10N.LABEL_PERSONAL_DETAILS
|
|
19
|
+
}, {
|
|
20
|
+
id: CONTEXT.SECURITY,
|
|
21
|
+
icon: _helpers.ICON.LOCK,
|
|
22
|
+
label: _Settings.L10N.LABEL_SECURITY
|
|
23
|
+
}];
|
|
24
|
+
//# sourceMappingURL=Settings.constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Settings.constants.js","names":["_Settings","require","_helpers","ACCOUNT_FIELDS","exports","CONTEXT","ACCOUNT_DETAILS","SECURITY","SIGNOUT","CONTEXTS","id","icon","ICON","PERSON","label","L10N","LABEL_PERSONAL_DETAILS","LOCK","LABEL_SECURITY"],"sources":["../../../../../src/components/Profile/components/Settings/Settings.constants.js"],"sourcesContent":["import { L10N } from './Settings.l10n';\nimport { ICON } from '../../../helpers';\n\nconst ACCOUNT_FIELDS = ['firstName', 'lastName', 'dateOfBirth', 'subscribed'];\n\nconst CONTEXT = {\n ACCOUNT_DETAILS: 1,\n SECURITY: 2,\n SIGNOUT: 3,\n};\n\nconst CONTEXTS = [\n { id: CONTEXT.ACCOUNT_DETAILS, icon: ICON.PERSON, label: L10N.LABEL_PERSONAL_DETAILS },\n { id: CONTEXT.SECURITY, icon: ICON.LOCK, label: L10N.LABEL_SECURITY },\n];\n\nexport { ACCOUNT_FIELDS, CONTEXT, CONTEXTS };\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEA,MAAME,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,CAAC;AAE7E,MAAME,OAAO,GAAAD,OAAA,CAAAC,OAAA,GAAG;EACdC,eAAe,EAAE,CAAC;EAClBC,QAAQ,EAAE,CAAC;EACXC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,QAAQ,GAAAL,OAAA,CAAAK,QAAA,GAAG,CACf;EAAEC,EAAE,EAAEL,OAAO,CAACC,eAAe;EAAEK,IAAI,EAAEC,aAAI,CAACC,MAAM;EAAEC,KAAK,EAAEC,cAAI,CAACC;AAAuB,CAAC,EACtF;EAAEN,EAAE,EAAEL,OAAO,CAACE,QAAQ;EAAEI,IAAI,EAAEC,aAAI,CAACK,IAAI;EAAEH,KAAK,EAAEC,cAAI,CAACG;AAAe,CAAC,CACtE"}
|