@mirai/core 0.3.380 → 0.3.382
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/__tests__/Booking/__mocks__/booking-delete.json +1 -0
- package/__tests__/Booking/__mocks__/booking-get.json +105 -0
- package/__tests__/Booking/booking.constants.js +8 -0
- package/__tests__/Booking/workflows/cancel.workflow.js +20 -0
- package/__tests__/Booking/workflows/index.js +5 -0
- package/__tests__/Booking/workflows/openMobileMenu.workflow.js +4 -0
- package/__tests__/Booking/workflows/print.workflow.js +13 -0
- package/__tests__/Booking/workflows/resend.workflow.js +18 -0
- package/__tests__/Booking/workflows/review.workflow.js +17 -0
- package/__tests__/Checkout/workflows/form.workflow.js +1 -1
- package/__tests__/Checkout/workflows/review.workflow.js +1 -1
- package/__tests__/Session/workflows/bookings.workflow.js +3 -3
- package/__tests__/Session/workflows/logout.workflow.js +3 -3
- package/__tests__/Session/workflows/profile.workflow.js +3 -3
- package/__tests__/Signup/workflows/index.js +1 -0
- package/__tests__/Signup/workflows/signup.workflow.js +3 -3
- package/__tests__/Signup/workflows/signupError.workflow.js +22 -0
- package/__tests__/booking.spec.jsx +34 -0
- package/__tests__/{bookingQuery/bookingQuey._spec.js → bookingQuey._spec.js} +1 -2
- package/__tests__/{Checkout/checkout.spec.jsx → checkout.spec.jsx} +6 -4
- package/__tests__/constants.js +3 -1
- package/__tests__/{Finder/finder.spec.js → finder.spec.js} +14 -13
- package/__tests__/{Rates/rates.spec.jsx → rates.spec.jsx} +1 -1
- package/__tests__/session.spec.js +32 -0
- package/__tests__/{Signup/signup.spec.js → signup.spec.js} +8 -4
- package/build/components/Booking/Booking.js +1 -0
- package/build/components/Booking/Booking.js.map +1 -1
- package/build/components/Booking/partials/Booking.Menu.js +4 -2
- package/build/components/Booking/partials/Booking.Menu.js.map +1 -1
- package/build/components/Booking/partials/Booking.Modal.js +4 -2
- package/build/components/Booking/partials/Booking.Modal.js.map +1 -1
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Menu.test.js.snap +20 -0
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Modal.test.js.snap +8 -0
- package/build/components/Session/Session.Account.js +2 -3
- package/build/components/Session/Session.Account.js.map +1 -1
- package/build/components/Session/__tests__/__snapshots__/Session.test.js.snap +2 -2
- package/build/components/__shared__/ButtonPayment/components/FormSipay/__tests__/__snapshots__/FormSipay.test.js.snap +6 -6
- package/build/components/__shared__/Occupation/__tests__/__snapshots__/Occupation.test.js.snap +4 -4
- package/build/helpers/sanitizeComponent.js +1 -0
- package/build/helpers/sanitizeComponent.js.map +1 -1
- package/package.json +2 -2
- package/public/index.html +6 -1
- package/__tests__/Session/session.spec.js +0 -17
|
@@ -77,11 +77,13 @@ const Menu = _ref => {
|
|
|
77
77
|
value: _Booking.ACTION.CANCEL
|
|
78
78
|
}],
|
|
79
79
|
visible: visible,
|
|
80
|
-
onPress: handlePress
|
|
80
|
+
onPress: handlePress,
|
|
81
|
+
testId: "booking-menu"
|
|
81
82
|
}), !isDesktop && /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
82
83
|
large: true,
|
|
83
84
|
wide: true,
|
|
84
|
-
onPress: () => setVisible(!visible)
|
|
85
|
+
onPress: () => setVisible(!visible),
|
|
86
|
+
testId: "show-booking-menu"
|
|
85
87
|
}, translate(_Booking2.L10N.ACTION_SHOW_OPTIONS)));
|
|
86
88
|
};
|
|
87
89
|
exports.Menu = Menu;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Booking.Menu.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Booking","_Booking2","style","_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","Menu","_ref","dataSource","onPress","others","isDesktop","useDevice","translate","useLocale","refContainer","useRef","visible","setVisible","useState","useEffect","current","Event","publish","EVENT","FOOTER_HEIGHT_CHANGE","height","offsetHeight","handlePress","action","isPostponable","state","STATE","CONFIRMED","is","cancelled","CANCELLED","confirmed","postponable","createElement","View","ref","className","styles","menu","noPrint","options","icon","ICON","PRINT","label","L10N","ACTION_PRINT","value","ACTION","divider","MAIL","ACTION_RESEND_BOOKING","RESEND","CALENDAR_EDIT","ACTION_EDIT_BOOKING","EDIT","CALENDAR_CANCEL","ACTION_CANCEL_BOOKING","CANCEL","Button","large","wide","ACTION_SHOW_OPTIONS","exports","displayName","propTypes","PropTypes","shape","oneOf","values","func"],"sources":["../../../../src/components/Booking/partials/Booking.Menu.jsx"],"sourcesContent":["import { Event } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Menu as MenuBase, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { EVENT, ICON } from '../../helpers';\nimport { ACTION, STATE } from '../Booking.constants';\nimport { L10N } from '../Booking.l10n';\nimport * as style from '../Booking.module.css';\n\nconst Menu = ({ dataSource = {}, onPress = () => {}, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const refContainer = useRef();\n\n const [visible, setVisible] = useState(isDesktop);\n\n useEffect(() => {\n setVisible(isDesktop || false);\n\n !isDesktop &&\n refContainer?.current &&\n Event.publish(EVENT.FOOTER_HEIGHT_CHANGE, { height: refContainer?.current.offsetHeight });\n }, [isDesktop]);\n\n const handlePress = (action) => {\n if (!isDesktop) setVisible(false);\n if (!action) return;\n\n onPress(action);\n };\n const { isPostponable = false, state = STATE.CONFIRMED } = dataSource;\n const is = {\n cancelled: state === STATE.CANCELLED,\n confirmed: state === STATE.CONFIRMED,\n postponable: state === STATE.CONFIRMED && isPostponable,\n };\n\n return (\n <View ref={refContainer} {...others} className={styles(style.menu, style.noPrint, others.className)}>\n <MenuBase\n options={[\n { icon: ICON.PRINT, label: translate(L10N.ACTION_PRINT), value: ACTION.PRINT, divider: true },\n { icon: ICON.MAIL, label: translate(L10N.ACTION_RESEND_BOOKING), value: ACTION.RESEND, divider: true },\n is.postponable && {\n icon: ICON.CALENDAR_EDIT,\n label: translate(L10N.ACTION_EDIT_BOOKING),\n value: ACTION.EDIT,\n divider: true,\n },\n is.confirmed && {\n icon: ICON.CALENDAR_CANCEL,\n label: translate(L10N.ACTION_CANCEL_BOOKING),\n value: ACTION.CANCEL,\n },\n ]}\n visible={visible}\n onPress={handlePress}\n />\n\n {!isDesktop && (\n <Button large wide onPress={() => setVisible(!visible)}>\n {translate(L10N.ACTION_SHOW_OPTIONS)}\n </Button>\n )}\n </View>\n );\n};\n\nMenu.displayName = 'Mirai:Core:Booking:Menu';\n\nMenu.propTypes = {\n dataSource: PropTypes.shape({\n state: PropTypes.oneOf(Object.values(STATE)),\n }),\n onPress: PropTypes.func,\n};\n\nexport { Menu };\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Booking.Menu.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Booking","_Booking2","style","_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","Menu","_ref","dataSource","onPress","others","isDesktop","useDevice","translate","useLocale","refContainer","useRef","visible","setVisible","useState","useEffect","current","Event","publish","EVENT","FOOTER_HEIGHT_CHANGE","height","offsetHeight","handlePress","action","isPostponable","state","STATE","CONFIRMED","is","cancelled","CANCELLED","confirmed","postponable","createElement","View","ref","className","styles","menu","noPrint","options","icon","ICON","PRINT","label","L10N","ACTION_PRINT","value","ACTION","divider","MAIL","ACTION_RESEND_BOOKING","RESEND","CALENDAR_EDIT","ACTION_EDIT_BOOKING","EDIT","CALENDAR_CANCEL","ACTION_CANCEL_BOOKING","CANCEL","testId","Button","large","wide","ACTION_SHOW_OPTIONS","exports","displayName","propTypes","PropTypes","shape","oneOf","values","func"],"sources":["../../../../src/components/Booking/partials/Booking.Menu.jsx"],"sourcesContent":["import { Event } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Menu as MenuBase, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { EVENT, ICON } from '../../helpers';\nimport { ACTION, STATE } from '../Booking.constants';\nimport { L10N } from '../Booking.l10n';\nimport * as style from '../Booking.module.css';\n\nconst Menu = ({ dataSource = {}, onPress = () => {}, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const refContainer = useRef();\n\n const [visible, setVisible] = useState(isDesktop);\n\n useEffect(() => {\n setVisible(isDesktop || false);\n\n !isDesktop &&\n refContainer?.current &&\n Event.publish(EVENT.FOOTER_HEIGHT_CHANGE, { height: refContainer?.current.offsetHeight });\n }, [isDesktop]);\n\n const handlePress = (action) => {\n if (!isDesktop) setVisible(false);\n if (!action) return;\n\n onPress(action);\n };\n\n const { isPostponable = false, state = STATE.CONFIRMED } = dataSource;\n const is = {\n cancelled: state === STATE.CANCELLED,\n confirmed: state === STATE.CONFIRMED,\n postponable: state === STATE.CONFIRMED && isPostponable,\n };\n\n return (\n <View ref={refContainer} {...others} className={styles(style.menu, style.noPrint, others.className)}>\n <MenuBase\n options={[\n { icon: ICON.PRINT, label: translate(L10N.ACTION_PRINT), value: ACTION.PRINT, divider: true },\n { icon: ICON.MAIL, label: translate(L10N.ACTION_RESEND_BOOKING), value: ACTION.RESEND, divider: true },\n is.postponable && {\n icon: ICON.CALENDAR_EDIT,\n label: translate(L10N.ACTION_EDIT_BOOKING),\n value: ACTION.EDIT,\n divider: true,\n },\n is.confirmed && {\n icon: ICON.CALENDAR_CANCEL,\n label: translate(L10N.ACTION_CANCEL_BOOKING),\n value: ACTION.CANCEL,\n },\n ]}\n visible={visible}\n onPress={handlePress}\n testId=\"booking-menu\"\n />\n\n {!isDesktop && (\n <Button large wide onPress={() => setVisible(!visible)} testId=\"show-booking-menu\">\n {translate(L10N.ACTION_SHOW_OPTIONS)}\n </Button>\n )}\n </View>\n );\n};\n\nMenu.displayName = 'Mirai:Core:Booking:Menu';\n\nMenu.propTypes = {\n dataSource: PropTypes.shape({\n state: PropTypes.oneOf(Object.values(STATE)),\n }),\n onPress: PropTypes.func,\n};\n\nexport { Menu };\n"],"mappings":"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"}
|
|
@@ -116,13 +116,15 @@ const Modal = _ref => {
|
|
|
116
116
|
large: true,
|
|
117
117
|
secondary: true,
|
|
118
118
|
wide: true,
|
|
119
|
-
onPress: handleClose
|
|
119
|
+
onPress: handleClose,
|
|
120
|
+
testId: "cancel-button"
|
|
120
121
|
}, translate(_Booking5.L10N.ACTION_BACK)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
121
122
|
busy: busy,
|
|
122
123
|
disabled: action === RESEND && !!error,
|
|
123
124
|
large: true,
|
|
124
125
|
wide: true,
|
|
125
|
-
onPress: handleSubmit
|
|
126
|
+
onPress: handleSubmit,
|
|
127
|
+
testId: "submit-button"
|
|
126
128
|
}, action === CANCEL ? translate(_Booking5.L10N.ACTION_CANCEL) : action === EDIT ? translate(_Booking5.L10N.ACTION_POSTPONE) : translate(_Booking5.L10N.ACTION_SEND)))) : /*#__PURE__*/_react.default.createElement(_ui.Notification, {
|
|
127
129
|
large: true,
|
|
128
130
|
error: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Booking.Modal.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Booking","_Booking2","_Booking3","_helpers","_Booking4","_Booking5","style","_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","CANCEL","EDIT","RESEND","ACTION","Modal","_ref","action","dataSource","id","pinCode","token","onChange","onClose","others","translate","useLocale","value","urlParams","idHotel","useStore","busy","setBusy","useState","error","setError","form","setForm","responseError","setResponseError","visible","setVisible","useEffect","handleChange","next","handleError","handleSubmit","method","props","response","ServiceBooking","catch","Event","publish","EVENT","NOTIFICATION","success","L10N","NOTIFICATION_CANCEL_BOOKING_SUCESS","NOTIFICATION_EDIT_BOOKING_SUCCESS","NOTIFICATION_EMAIL_SUCCESS","handleClose","state","STATE","CANCELLED","POSTPONED","undefined","motionExpand","Theme","setTimeout","parseFloat","replace","createElement","title","ACTION_CANCEL_BOOKING","ACTION_EDIT_BOOKING","ACTION_RESEND_BOOKING","preventDefault","View","className","modal","Fragment","React","FormCancel","FormEdit","FormResend","onError","row","buttons","Button","large","secondary","wide","onPress","ACTION_BACK","disabled","ACTION_CANCEL","ACTION_POSTPONE","ACTION_SEND","Notification","LABEL_SERVICE_ERROR","exports","displayName","propTypes","PropTypes","oneOf","values","shape","string","number","func"],"sources":["../../../../src/components/Booking/partials/Booking.Modal.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking } from '@mirai/services';\nimport { Button, Modal as ModalBase, Theme, View } from '@mirai/ui';\nimport { Notification } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { FormCancel } from './Booking.FormCancel';\nimport { FormEdit } from './Booking.FormEdit';\nimport { FormResend } from './Booking.FormResend';\nimport { EVENT } from '../../helpers';\nimport { ACTION, STATE } from '../Booking.constants';\nimport { L10N } from '../Booking.l10n';\nimport * as style from '../Booking.module.css';\n\nconst { CANCEL, EDIT, RESEND } = ACTION;\n\nconst Modal = ({ action, dataSource: { id, pinCode, token } = {}, onChange = () => {}, onClose, ...others }) => {\n const { translate } = useLocale();\n\n const {\n value: { urlParams: { idHotel } = {} },\n } = useStore();\n\n const [busy, setBusy] = useState();\n const [error, setError] = useState();\n const [form, setForm] = useState({});\n const [responseError, setResponseError] = useState();\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n if (action) return setVisible(true);\n\n setForm({});\n setResponseError();\n }, [action]);\n\n const handleChange = (next) => {\n setForm({ ...form, ...next });\n };\n\n const handleError = (error) => {\n setError(error);\n };\n\n const handleSubmit = async () => {\n setBusy(true);\n const method = action === CANCEL ? 'cancel' : action === EDIT ? 'postpone' : 'email';\n const props = { id, idHotel, pinCode, token, ...form };\n const response = await ServiceBooking[method](props).catch(setResponseError);\n setBusy(false);\n\n if (response) {\n Event.publish(EVENT.NOTIFICATION, {\n success: true,\n ...(action === CANCEL\n ? L10N.NOTIFICATION_CANCEL_BOOKING_SUCESS\n : action === EDIT\n ? L10N.NOTIFICATION_EDIT_BOOKING_SUCCESS\n : L10N.NOTIFICATION_EMAIL_SUCCESS),\n });\n handleClose();\n }\n onChange({ response, state: action === CANCEL ? STATE.CANCELLED : action === EDIT ? STATE.POSTPONED : undefined });\n };\n\n const handleClose = () => {\n const { motionExpand = '0.3s' } = Theme.get();\n\n setVisible(false);\n setTimeout(onClose, parseFloat(motionExpand.replace('s')) * 1000);\n };\n\n return (\n <ModalBase\n {...others}\n title={translate(\n action === CANCEL\n ? L10N.ACTION_CANCEL_BOOKING\n : action === EDIT\n ? L10N.ACTION_EDIT_BOOKING\n : L10N.ACTION_RESEND_BOOKING,\n )}\n preventDefault={false}\n visible={visible}\n onClose={handleClose}\n >\n <View className={style.modal}>\n {!responseError ? (\n <>\n {React.createElement(action === CANCEL ? FormCancel : action === EDIT ? FormEdit : FormResend, {\n form,\n onChange: handleChange,\n onError: handleError,\n })}\n <View row className={style.buttons}>\n <Button large secondary wide onPress={handleClose}>\n {translate(L10N.ACTION_BACK)}\n </Button>\n <Button busy={busy} disabled={action === RESEND && !!error} large wide onPress={handleSubmit}>\n {action === CANCEL\n ? translate(L10N.ACTION_CANCEL)\n : action === EDIT\n ? translate(L10N.ACTION_POSTPONE)\n : translate(L10N.ACTION_SEND)}\n </Button>\n </View>\n </>\n ) : (\n <Notification large error wide>\n {translate(L10N.LABEL_SERVICE_ERROR)}\n </Notification>\n )}\n </View>\n </ModalBase>\n );\n};\n\nModal.displayName = 'Mirai:Core:Booking:Modal';\n\nModal.propTypes = {\n action: PropTypes.oneOf(Object.values(ACTION)),\n dataSource: PropTypes.shape({\n id: PropTypes.string,\n pinCode: PropTypes.number,\n token: PropTypes.string,\n }),\n onChange: PropTypes.func,\n onClose: PropTypes.func,\n};\n\nexport { Modal };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Booking.Modal.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Booking","_Booking2","_Booking3","_helpers","_Booking4","_Booking5","style","_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","CANCEL","EDIT","RESEND","ACTION","Modal","_ref","action","dataSource","id","pinCode","token","onChange","onClose","others","translate","useLocale","value","urlParams","idHotel","useStore","busy","setBusy","useState","error","setError","form","setForm","responseError","setResponseError","visible","setVisible","useEffect","handleChange","next","handleError","handleSubmit","method","props","response","ServiceBooking","catch","Event","publish","EVENT","NOTIFICATION","success","L10N","NOTIFICATION_CANCEL_BOOKING_SUCESS","NOTIFICATION_EDIT_BOOKING_SUCCESS","NOTIFICATION_EMAIL_SUCCESS","handleClose","state","STATE","CANCELLED","POSTPONED","undefined","motionExpand","Theme","setTimeout","parseFloat","replace","createElement","title","ACTION_CANCEL_BOOKING","ACTION_EDIT_BOOKING","ACTION_RESEND_BOOKING","preventDefault","View","className","modal","Fragment","React","FormCancel","FormEdit","FormResend","onError","row","buttons","Button","large","secondary","wide","onPress","testId","ACTION_BACK","disabled","ACTION_CANCEL","ACTION_POSTPONE","ACTION_SEND","Notification","LABEL_SERVICE_ERROR","exports","displayName","propTypes","PropTypes","oneOf","values","shape","string","number","func"],"sources":["../../../../src/components/Booking/partials/Booking.Modal.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking } from '@mirai/services';\nimport { Button, Modal as ModalBase, Theme, View } from '@mirai/ui';\nimport { Notification } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { FormCancel } from './Booking.FormCancel';\nimport { FormEdit } from './Booking.FormEdit';\nimport { FormResend } from './Booking.FormResend';\nimport { EVENT } from '../../helpers';\nimport { ACTION, STATE } from '../Booking.constants';\nimport { L10N } from '../Booking.l10n';\nimport * as style from '../Booking.module.css';\n\nconst { CANCEL, EDIT, RESEND } = ACTION;\n\nconst Modal = ({ action, dataSource: { id, pinCode, token } = {}, onChange = () => {}, onClose, ...others }) => {\n const { translate } = useLocale();\n\n const {\n value: { urlParams: { idHotel } = {} },\n } = useStore();\n\n const [busy, setBusy] = useState();\n const [error, setError] = useState();\n const [form, setForm] = useState({});\n const [responseError, setResponseError] = useState();\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n if (action) return setVisible(true);\n\n setForm({});\n setResponseError();\n }, [action]);\n\n const handleChange = (next) => {\n setForm({ ...form, ...next });\n };\n\n const handleError = (error) => {\n setError(error);\n };\n\n const handleSubmit = async () => {\n setBusy(true);\n const method = action === CANCEL ? 'cancel' : action === EDIT ? 'postpone' : 'email';\n const props = { id, idHotel, pinCode, token, ...form };\n const response = await ServiceBooking[method](props).catch(setResponseError);\n setBusy(false);\n\n if (response) {\n Event.publish(EVENT.NOTIFICATION, {\n success: true,\n ...(action === CANCEL\n ? L10N.NOTIFICATION_CANCEL_BOOKING_SUCESS\n : action === EDIT\n ? L10N.NOTIFICATION_EDIT_BOOKING_SUCCESS\n : L10N.NOTIFICATION_EMAIL_SUCCESS),\n });\n handleClose();\n }\n onChange({ response, state: action === CANCEL ? STATE.CANCELLED : action === EDIT ? STATE.POSTPONED : undefined });\n };\n\n const handleClose = () => {\n const { motionExpand = '0.3s' } = Theme.get();\n\n setVisible(false);\n setTimeout(onClose, parseFloat(motionExpand.replace('s')) * 1000);\n };\n\n return (\n <ModalBase\n {...others}\n title={translate(\n action === CANCEL\n ? L10N.ACTION_CANCEL_BOOKING\n : action === EDIT\n ? L10N.ACTION_EDIT_BOOKING\n : L10N.ACTION_RESEND_BOOKING,\n )}\n preventDefault={false}\n visible={visible}\n onClose={handleClose}\n >\n <View className={style.modal}>\n {!responseError ? (\n <>\n {React.createElement(action === CANCEL ? FormCancel : action === EDIT ? FormEdit : FormResend, {\n form,\n onChange: handleChange,\n onError: handleError,\n })}\n <View row className={style.buttons}>\n <Button large secondary wide onPress={handleClose} testId=\"cancel-button\">\n {translate(L10N.ACTION_BACK)}\n </Button>\n <Button\n busy={busy}\n disabled={action === RESEND && !!error}\n large\n wide\n onPress={handleSubmit}\n testId=\"submit-button\"\n >\n {action === CANCEL\n ? translate(L10N.ACTION_CANCEL)\n : action === EDIT\n ? translate(L10N.ACTION_POSTPONE)\n : translate(L10N.ACTION_SEND)}\n </Button>\n </View>\n </>\n ) : (\n <Notification large error wide>\n {translate(L10N.LABEL_SERVICE_ERROR)}\n </Notification>\n )}\n </View>\n </ModalBase>\n );\n};\n\nModal.displayName = 'Mirai:Core:Booking:Modal';\n\nModal.propTypes = {\n action: PropTypes.oneOf(Object.values(ACTION)),\n dataSource: PropTypes.shape({\n id: PropTypes.string,\n pinCode: PropTypes.number,\n token: PropTypes.string,\n }),\n onChange: PropTypes.func,\n onClose: PropTypes.func,\n};\n\nexport { Modal };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AAEA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAC,uBAAA,CAAAP,OAAA;AAEA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,SAAA,GAAAV,OAAA;AACA,IAAAW,QAAA,GAAAX,OAAA;AACA,IAAAY,SAAA,GAAAZ,OAAA;AACA,IAAAa,SAAA,GAAAb,OAAA;AACA,IAAAc,KAAA,GAAAP,uBAAA,CAAAP,OAAA;AAA+C,SAAAe,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,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAnB,uBAAA+B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAE/C,MAAM;EAAEK,MAAM;EAAEC,IAAI;EAAEC;AAAO,CAAC,GAAGC,gBAAM;AAEvC,MAAMC,KAAK,GAAGC,IAAA,IAAkG;EAAA,IAAjG;IAAEC,MAAM;IAAEC,UAAU,EAAE;MAAEC,EAAE;MAAEC,OAAO;MAAEC;IAAM,CAAC,GAAG,CAAC,CAAC;IAAEC,QAAQ,GAAGA,CAAA,KAAM,CAAC,CAAC;IAAEC,OAAO;IAAE,GAAGC;EAAO,CAAC,GAAAR,IAAA;EACzG,MAAM;IAAES;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EAEjC,MAAM;IACJC,KAAK,EAAE;MAAEC,SAAS,EAAE;QAAEC;MAAQ,CAAC,GAAG,CAAC;IAAE;EACvC,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAClC,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAF,eAAQ,EAAC,CAAC;EACpC,MAAM,CAACG,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAJ,eAAQ,EAAC,CAAC,CAAC,CAAC;EACpC,MAAM,CAACK,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAN,eAAQ,EAAC,CAAC;EACpD,MAAM,CAACO,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAR,eAAQ,EAAC,KAAK,CAAC;EAE7C,IAAAS,gBAAS,EAAC,MAAM;IACd,IAAIzB,MAAM,EAAE,OAAOwB,UAAU,CAAC,IAAI,CAAC;IAEnCJ,OAAO,CAAC,CAAC,CAAC,CAAC;IACXE,gBAAgB,CAAC,CAAC;EACpB,CAAC,EAAE,CAACtB,MAAM,CAAC,CAAC;EAEZ,MAAM0B,YAAY,GAAIC,IAAI,IAAK;IAC7BP,OAAO,CAAC;MAAE,GAAGD,IAAI;MAAE,GAAGQ;IAAK,CAAC,CAAC;EAC/B,CAAC;EAED,MAAMC,WAAW,GAAIX,KAAK,IAAK;IAC7BC,QAAQ,CAACD,KAAK,CAAC;EACjB,CAAC;EAED,MAAMY,YAAY,GAAG,MAAAA,CAAA,KAAY;IAC/Bd,OAAO,CAAC,IAAI,CAAC;IACb,MAAMe,MAAM,GAAG9B,MAAM,KAAKN,MAAM,GAAG,QAAQ,GAAGM,MAAM,KAAKL,IAAI,GAAG,UAAU,GAAG,OAAO;IACpF,MAAMoC,KAAK,GAAG;MAAE7B,EAAE;MAAEU,OAAO;MAAET,OAAO;MAAEC,KAAK;MAAE,GAAGe;IAAK,CAAC;IACtD,MAAMa,QAAQ,GAAG,MAAMC,wBAAc,CAACH,MAAM,CAAC,CAACC,KAAK,CAAC,CAACG,KAAK,CAACZ,gBAAgB,CAAC;IAC5EP,OAAO,CAAC,KAAK,CAAC;IAEd,IAAIiB,QAAQ,EAAE;MACZG,kBAAK,CAACC,OAAO,CAACC,cAAK,CAACC,YAAY,EAAE;QAChCC,OAAO,EAAE,IAAI;QACb,IAAIvC,MAAM,KAAKN,MAAM,GACjB8C,cAAI,CAACC,kCAAkC,GACvCzC,MAAM,KAAKL,IAAI,GACf6C,cAAI,CAACE,iCAAiC,GACtCF,cAAI,CAACG,0BAA0B;MACrC,CAAC,CAAC;MACFC,WAAW,CAAC,CAAC;IACf;IACAvC,QAAQ,CAAC;MAAE2B,QAAQ;MAAEa,KAAK,EAAE7C,MAAM,KAAKN,MAAM,GAAGoD,eAAK,CAACC,SAAS,GAAG/C,MAAM,KAAKL,IAAI,GAAGmD,eAAK,CAACE,SAAS,GAAGC;IAAU,CAAC,CAAC;EACpH,CAAC;EAED,MAAML,WAAW,GAAGA,CAAA,KAAM;IACxB,MAAM;MAAEM,YAAY,GAAG;IAAO,CAAC,GAAGC,SAAK,CAAChF,GAAG,CAAC,CAAC;IAE7CqD,UAAU,CAAC,KAAK,CAAC;IACjB4B,UAAU,CAAC9C,OAAO,EAAE+C,UAAU,CAACH,YAAY,CAACI,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;EACnE,CAAC;EAED,oBACEpG,MAAA,CAAAe,OAAA,CAAAsF,aAAA,CAACxG,GAAA,CAAA+C,KAAS,EAAAb,QAAA,KACJsB,MAAM;IACViD,KAAK,EAAEhD,SAAS,CACdR,MAAM,KAAKN,MAAM,GACb8C,cAAI,CAACiB,qBAAqB,GAC1BzD,MAAM,KAAKL,IAAI,GACf6C,cAAI,CAACkB,mBAAmB,GACxBlB,cAAI,CAACmB,qBACX,CAAE;IACFC,cAAc,EAAE,KAAM;IACtBrC,OAAO,EAAEA,OAAQ;IACjBjB,OAAO,EAAEsC;EAAY,iBAErB1F,MAAA,CAAAe,OAAA,CAAAsF,aAAA,CAACxG,GAAA,CAAA8G,IAAI;IAACC,SAAS,EAAEpG,KAAK,CAACqG;EAAM,GAC1B,CAAC1C,aAAa,gBACbnE,MAAA,CAAAe,OAAA,CAAAsF,aAAA,CAAArG,MAAA,CAAAe,OAAA,CAAA+F,QAAA,qBACGC,cAAK,CAACV,aAAa,CAACvD,MAAM,KAAKN,MAAM,GAAGwE,mBAAU,GAAGlE,MAAM,KAAKL,IAAI,GAAGwE,kBAAQ,GAAGC,oBAAU,EAAE;IAC7FjD,IAAI;IACJd,QAAQ,EAAEqB,YAAY;IACtB2C,OAAO,EAAEzC;EACX,CAAC,CAAC,eACF1E,MAAA,CAAAe,OAAA,CAAAsF,aAAA,CAACxG,GAAA,CAAA8G,IAAI;IAACS,GAAG;IAACR,SAAS,EAAEpG,KAAK,CAAC6G;EAAQ,gBACjCrH,MAAA,CAAAe,OAAA,CAAAsF,aAAA,CAACxG,GAAA,CAAAyH,MAAM;IAACC,KAAK;IAACC,SAAS;IAACC,IAAI;IAACC,OAAO,EAAEhC,WAAY;IAACiC,MAAM,EAAC;EAAe,GACtErE,SAAS,CAACgC,cAAI,CAACsC,WAAW,CACrB,CAAC,eACT5H,MAAA,CAAAe,OAAA,CAAAsF,aAAA,CAACxG,GAAA,CAAAyH,MAAM;IACL1D,IAAI,EAAEA,IAAK;IACXiE,QAAQ,EAAE/E,MAAM,KAAKJ,MAAM,IAAI,CAAC,CAACqB,KAAM;IACvCwD,KAAK;IACLE,IAAI;IACJC,OAAO,EAAE/C,YAAa;IACtBgD,MAAM,EAAC;EAAe,GAErB7E,MAAM,KAAKN,MAAM,GACdc,SAAS,CAACgC,cAAI,CAACwC,aAAa,CAAC,GAC7BhF,MAAM,KAAKL,IAAI,GACfa,SAAS,CAACgC,cAAI,CAACyC,eAAe,CAAC,GAC/BzE,SAAS,CAACgC,cAAI,CAAC0C,WAAW,CACxB,CACJ,CACN,CAAC,gBAEHhI,MAAA,CAAAe,OAAA,CAAAsF,aAAA,CAACxG,GAAA,CAAAoI,YAAY;IAACV,KAAK;IAACxD,KAAK;IAAC0D,IAAI;EAAA,GAC3BnE,SAAS,CAACgC,cAAI,CAAC4C,mBAAmB,CACvB,CAEZ,CACG,CAAC;AAEhB,CAAC;AAACC,OAAA,CAAAvF,KAAA,GAAAA,KAAA;AAEFA,KAAK,CAACwF,WAAW,GAAG,0BAA0B;AAE9CxF,KAAK,CAACyF,SAAS,GAAG;EAChBvF,MAAM,EAAEwF,kBAAS,CAACC,KAAK,CAAClH,MAAM,CAACmH,MAAM,CAAC7F,gBAAM,CAAC,CAAC;EAC9CI,UAAU,EAAEuF,kBAAS,CAACG,KAAK,CAAC;IAC1BzF,EAAE,EAAEsF,kBAAS,CAACI,MAAM;IACpBzF,OAAO,EAAEqF,kBAAS,CAACK,MAAM;IACzBzF,KAAK,EAAEoF,kBAAS,CAACI;EACnB,CAAC,CAAC;EACFvF,QAAQ,EAAEmF,kBAAS,CAACM,IAAI;EACxBxF,OAAO,EAAEkF,kBAAS,CAACM;AACrB,CAAC"}
|
|
@@ -7,6 +7,7 @@ exports[`component:<Booking> partial:<Menu> inherit:className 1`] = `
|
|
|
7
7
|
>
|
|
8
8
|
<ui-menu
|
|
9
9
|
class="container"
|
|
10
|
+
data-testid="booking-menu"
|
|
10
11
|
/>
|
|
11
12
|
<ui-menu-content
|
|
12
13
|
class="layer"
|
|
@@ -16,6 +17,7 @@ exports[`component:<Booking> partial:<Menu> inherit:className 1`] = `
|
|
|
16
17
|
>
|
|
17
18
|
<ui-pressable
|
|
18
19
|
class="pressable option value divider"
|
|
20
|
+
data-testid="booking-menu-0"
|
|
19
21
|
tabindex="0"
|
|
20
22
|
>
|
|
21
23
|
<ui-view
|
|
@@ -56,6 +58,7 @@ exports[`component:<Booking> partial:<Menu> inherit:className 1`] = `
|
|
|
56
58
|
</ui-pressable>
|
|
57
59
|
<ui-pressable
|
|
58
60
|
class="pressable option value divider"
|
|
61
|
+
data-testid="booking-menu-1"
|
|
59
62
|
tabindex="0"
|
|
60
63
|
>
|
|
61
64
|
<ui-view
|
|
@@ -91,6 +94,7 @@ exports[`component:<Booking> partial:<Menu> inherit:className 1`] = `
|
|
|
91
94
|
</ui-pressable>
|
|
92
95
|
<ui-pressable
|
|
93
96
|
class="pressable option value divider"
|
|
97
|
+
data-testid="booking-menu-2"
|
|
94
98
|
tabindex="0"
|
|
95
99
|
>
|
|
96
100
|
<ui-view
|
|
@@ -126,6 +130,7 @@ exports[`component:<Booking> partial:<Menu> inherit:className 1`] = `
|
|
|
126
130
|
</ui-pressable>
|
|
127
131
|
<ui-pressable
|
|
128
132
|
class="pressable option value"
|
|
133
|
+
data-testid="booking-menu-3"
|
|
129
134
|
tabindex="0"
|
|
130
135
|
>
|
|
131
136
|
<ui-view
|
|
@@ -172,6 +177,7 @@ exports[`component:<Booking> partial:<Menu> renders 1`] = `
|
|
|
172
177
|
>
|
|
173
178
|
<ui-menu
|
|
174
179
|
class="container"
|
|
180
|
+
data-testid="booking-menu"
|
|
175
181
|
/>
|
|
176
182
|
<ui-menu-content
|
|
177
183
|
class="layer"
|
|
@@ -181,6 +187,7 @@ exports[`component:<Booking> partial:<Menu> renders 1`] = `
|
|
|
181
187
|
>
|
|
182
188
|
<ui-pressable
|
|
183
189
|
class="pressable option value divider"
|
|
190
|
+
data-testid="booking-menu-0"
|
|
184
191
|
tabindex="0"
|
|
185
192
|
>
|
|
186
193
|
<ui-view
|
|
@@ -221,6 +228,7 @@ exports[`component:<Booking> partial:<Menu> renders 1`] = `
|
|
|
221
228
|
</ui-pressable>
|
|
222
229
|
<ui-pressable
|
|
223
230
|
class="pressable option value divider"
|
|
231
|
+
data-testid="booking-menu-1"
|
|
224
232
|
tabindex="0"
|
|
225
233
|
>
|
|
226
234
|
<ui-view
|
|
@@ -256,6 +264,7 @@ exports[`component:<Booking> partial:<Menu> renders 1`] = `
|
|
|
256
264
|
</ui-pressable>
|
|
257
265
|
<ui-pressable
|
|
258
266
|
class="pressable option value divider"
|
|
267
|
+
data-testid="booking-menu-2"
|
|
259
268
|
tabindex="0"
|
|
260
269
|
>
|
|
261
270
|
<ui-view
|
|
@@ -291,6 +300,7 @@ exports[`component:<Booking> partial:<Menu> renders 1`] = `
|
|
|
291
300
|
</ui-pressable>
|
|
292
301
|
<ui-pressable
|
|
293
302
|
class="pressable option value"
|
|
303
|
+
data-testid="booking-menu-3"
|
|
294
304
|
tabindex="0"
|
|
295
305
|
>
|
|
296
306
|
<ui-view
|
|
@@ -338,6 +348,7 @@ exports[`component:<Booking> partial:<Menu> testID 1`] = `
|
|
|
338
348
|
>
|
|
339
349
|
<ui-menu
|
|
340
350
|
class="container"
|
|
351
|
+
data-testid="booking-menu"
|
|
341
352
|
/>
|
|
342
353
|
<ui-menu-content
|
|
343
354
|
class="layer"
|
|
@@ -347,6 +358,7 @@ exports[`component:<Booking> partial:<Menu> testID 1`] = `
|
|
|
347
358
|
>
|
|
348
359
|
<ui-pressable
|
|
349
360
|
class="pressable option value divider"
|
|
361
|
+
data-testid="booking-menu-0"
|
|
350
362
|
tabindex="0"
|
|
351
363
|
>
|
|
352
364
|
<ui-view
|
|
@@ -387,6 +399,7 @@ exports[`component:<Booking> partial:<Menu> testID 1`] = `
|
|
|
387
399
|
</ui-pressable>
|
|
388
400
|
<ui-pressable
|
|
389
401
|
class="pressable option value divider"
|
|
402
|
+
data-testid="booking-menu-1"
|
|
390
403
|
tabindex="0"
|
|
391
404
|
>
|
|
392
405
|
<ui-view
|
|
@@ -422,6 +435,7 @@ exports[`component:<Booking> partial:<Menu> testID 1`] = `
|
|
|
422
435
|
</ui-pressable>
|
|
423
436
|
<ui-pressable
|
|
424
437
|
class="pressable option value divider"
|
|
438
|
+
data-testid="booking-menu-2"
|
|
425
439
|
tabindex="0"
|
|
426
440
|
>
|
|
427
441
|
<ui-view
|
|
@@ -457,6 +471,7 @@ exports[`component:<Booking> partial:<Menu> testID 1`] = `
|
|
|
457
471
|
</ui-pressable>
|
|
458
472
|
<ui-pressable
|
|
459
473
|
class="pressable option value"
|
|
474
|
+
data-testid="booking-menu-3"
|
|
460
475
|
tabindex="0"
|
|
461
476
|
>
|
|
462
477
|
<ui-view
|
|
@@ -503,6 +518,7 @@ exports[`component:<Booking> partial:<Menu> with a store 1`] = `
|
|
|
503
518
|
>
|
|
504
519
|
<ui-menu
|
|
505
520
|
class="container"
|
|
521
|
+
data-testid="booking-menu"
|
|
506
522
|
/>
|
|
507
523
|
<ui-menu-content
|
|
508
524
|
class="layer"
|
|
@@ -512,6 +528,7 @@ exports[`component:<Booking> partial:<Menu> with a store 1`] = `
|
|
|
512
528
|
>
|
|
513
529
|
<ui-pressable
|
|
514
530
|
class="pressable option value divider"
|
|
531
|
+
data-testid="booking-menu-0"
|
|
515
532
|
tabindex="0"
|
|
516
533
|
>
|
|
517
534
|
<ui-view
|
|
@@ -552,6 +569,7 @@ exports[`component:<Booking> partial:<Menu> with a store 1`] = `
|
|
|
552
569
|
</ui-pressable>
|
|
553
570
|
<ui-pressable
|
|
554
571
|
class="pressable option value divider"
|
|
572
|
+
data-testid="booking-menu-1"
|
|
555
573
|
tabindex="0"
|
|
556
574
|
>
|
|
557
575
|
<ui-view
|
|
@@ -587,6 +605,7 @@ exports[`component:<Booking> partial:<Menu> with a store 1`] = `
|
|
|
587
605
|
</ui-pressable>
|
|
588
606
|
<ui-pressable
|
|
589
607
|
class="pressable option value divider"
|
|
608
|
+
data-testid="booking-menu-2"
|
|
590
609
|
tabindex="0"
|
|
591
610
|
>
|
|
592
611
|
<ui-view
|
|
@@ -622,6 +641,7 @@ exports[`component:<Booking> partial:<Menu> with a store 1`] = `
|
|
|
622
641
|
</ui-pressable>
|
|
623
642
|
<ui-pressable
|
|
624
643
|
class="pressable option value"
|
|
644
|
+
data-testid="booking-menu-3"
|
|
625
645
|
tabindex="0"
|
|
626
646
|
>
|
|
627
647
|
<ui-view
|
package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Modal.test.js.snap
CHANGED
|
@@ -88,12 +88,14 @@ exports[`component:<Booking> partial:<Modal> inherit:className 1`] = `
|
|
|
88
88
|
>
|
|
89
89
|
<ui-button
|
|
90
90
|
class="pressable button large secondary wide"
|
|
91
|
+
data-testid="cancel-button"
|
|
91
92
|
tabindex="0"
|
|
92
93
|
>
|
|
93
94
|
common.action.back
|
|
94
95
|
</ui-button>
|
|
95
96
|
<ui-button
|
|
96
97
|
class="pressable button large wide"
|
|
98
|
+
data-testid="submit-button"
|
|
97
99
|
tabindex="0"
|
|
98
100
|
>
|
|
99
101
|
common.action.send
|
|
@@ -193,12 +195,14 @@ exports[`component:<Booking> partial:<Modal> renders 1`] = `
|
|
|
193
195
|
>
|
|
194
196
|
<ui-button
|
|
195
197
|
class="pressable button large secondary wide"
|
|
198
|
+
data-testid="cancel-button"
|
|
196
199
|
tabindex="0"
|
|
197
200
|
>
|
|
198
201
|
common.action.back
|
|
199
202
|
</ui-button>
|
|
200
203
|
<ui-button
|
|
201
204
|
class="pressable button large wide"
|
|
205
|
+
data-testid="submit-button"
|
|
202
206
|
tabindex="0"
|
|
203
207
|
>
|
|
204
208
|
common.action.send
|
|
@@ -301,12 +305,14 @@ exports[`component:<Booking> partial:<Modal> testID 1`] = `
|
|
|
301
305
|
>
|
|
302
306
|
<ui-button
|
|
303
307
|
class="pressable button large secondary wide"
|
|
308
|
+
data-testid="cancel-button"
|
|
304
309
|
tabindex="0"
|
|
305
310
|
>
|
|
306
311
|
common.action.back
|
|
307
312
|
</ui-button>
|
|
308
313
|
<ui-button
|
|
309
314
|
class="pressable button large wide"
|
|
315
|
+
data-testid="submit-button"
|
|
310
316
|
tabindex="0"
|
|
311
317
|
>
|
|
312
318
|
common.action.send
|
|
@@ -406,12 +412,14 @@ exports[`component:<Booking> partial:<Modal> with a store 1`] = `
|
|
|
406
412
|
>
|
|
407
413
|
<ui-button
|
|
408
414
|
class="pressable button large secondary wide"
|
|
415
|
+
data-testid="cancel-button"
|
|
409
416
|
tabindex="0"
|
|
410
417
|
>
|
|
411
418
|
common.action.back
|
|
412
419
|
</ui-button>
|
|
413
420
|
<ui-button
|
|
414
421
|
class="pressable button large wide"
|
|
422
|
+
data-testid="submit-button"
|
|
415
423
|
tabindex="0"
|
|
416
424
|
>
|
|
417
425
|
common.action.send
|
|
@@ -140,8 +140,7 @@ const Account = _ref => {
|
|
|
140
140
|
options: session ? [...options, {
|
|
141
141
|
icon: _helpers2.ICON.LOGOUT,
|
|
142
142
|
label: translate(_Session2.L10N.CTA_LOGOUT),
|
|
143
|
-
value: 'logout'
|
|
144
|
-
testId: 'session-logout'
|
|
143
|
+
value: 'logout'
|
|
145
144
|
}] : null,
|
|
146
145
|
onPress: handlePress,
|
|
147
146
|
testId: "profile-menu"
|
|
@@ -151,7 +150,7 @@ const Account = _ref => {
|
|
|
151
150
|
__html: (0, _helpers2.template)(ghost.outerHTML, session, translate)
|
|
152
151
|
} : undefined,
|
|
153
152
|
className: style.pressable,
|
|
154
|
-
testId: "show-
|
|
153
|
+
testId: "show-profile-menu"
|
|
155
154
|
}, !ghost ? /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
156
155
|
row: true,
|
|
157
156
|
className: (0, _ui.styles)(style.account, compacted && style.compacted)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Session.Account.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_SessionAccount","_Session","_Session2","style","_Core","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Account","_ref","compacted","ghost","isMobile","useDevice","translate","useLocale","ref","useRef","value","components","club","authentication","type","AUTH_TYPE","MIRAI","cookies","hotel","url","hotelUrl","id","session","store","useStore","menu","setMenu","useState","useEffect","handleClickOutside","_ref2","_ref$current","target","current","contains","undefined","document","addEventListener","PESTANA","pestana","token","ServiceUser","logout","removeEventListener","handlePress","handleLogout","getProfileUrl","location","href","profile","window","reload","concat","process","env","SERVICE_USER","ENDPOINT","EXTERNAL_LOGOUT","toUrlParams","idtokenprovider","domain","email","firstName","lastName","level","options","icon","ICON","PERSON","label","L10N","ACTION_MANAGE_ACCOUNT","testId","LIST","ACTION_MY_BOOKINGS","divider","LEVEL","children","createElement","Info","View","role","Menu","visible","LOGOUT","CTA_LOGOUT","onPress","Pressable","dangerouslySetInnerHTML","__html","template","outerHTML","className","pressable","row","styles","account","avatar","Text","action","bold","substr","toUpperCase","exports","displayName","propTypes","PropTypes","bool","any"],"sources":["../../../src/components/Session/Session.Account.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport { Menu, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { getProfileUrl } from './helpers';\nimport { Info } from './Session.Account.Info';\nimport { ENDPOINT } from './Session.constants';\nimport { L10N } from './Session.l10n';\nimport * as style from './Session.module.css';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { ICON, template, toUrlParams } from '../helpers';\n\nconst Account = ({ compacted = false, ghost }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: {\n components = {},\n club: { authentication: { type = AUTH_TYPE.MIRAI } = {} } = {},\n cookies,\n hotel: { url: hotelUrl } = {},\n id,\n session,\n ...store\n },\n } = useStore();\n\n const [menu, setMenu] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = ({ target }) => {\n if (!ref.current?.contains(target)) setMenu(undefined);\n };\n document.addEventListener('click', handleClickOutside, true);\n\n if (type === AUTH_TYPE.PESTANA) {\n const { pestana: token } = cookies;\n\n if (session && !token) {\n ServiceUser.logout();\n set({ session: undefined });\n }\n }\n return () => document.removeEventListener('click', handleClickOutside, true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handlePress = (value) => {\n if (!value) return setMenu(!menu);\n\n setMenu(false);\n if (value === 'logout') return handleLogout();\n\n const url = getProfileUrl({ id, value, ...store });\n if (!url) return;\n\n document.location.href = url;\n };\n\n const handleLogout = () => {\n ServiceUser.logout();\n\n if (type === AUTH_TYPE.MIRAI) {\n set({ session: undefined });\n\n if (components.profile) window.location.href = hotelUrl;\n else window.location.reload();\n\n return;\n }\n\n const url = `${process.env.SERVICE_USER}/${ENDPOINT.EXTERNAL_LOGOUT}${toUrlParams({\n idtokenprovider: id,\n domain: document.location.href,\n })}`;\n\n document.location.href = url;\n };\n\n const { email, firstName = '', lastName = '', level } = session || {};\n\n let options =\n type === AUTH_TYPE.MIRAI\n ? [\n {\n icon: ICON.PERSON,\n label: translate(L10N.ACTION_MANAGE_ACCOUNT),\n value: 'profile',\n testId: 'session-profile',\n },\n { icon: ICON.LIST, label: translate(L10N.ACTION_MY_BOOKINGS), value: 'bookings', testId: 'session-bookings' },\n ]\n : [];\n if (level) options = [{ divider: true, label: translate(L10N.LEVEL, { level }) }, ...options];\n if (!ghost && (compacted || isMobile))\n options = [\n {\n children: <Info {...{ email, firstName, lastName }} />,\n divider: true,\n },\n ...options,\n ];\n\n return (\n <View role=\"account\" ref={ref}>\n <Menu\n visible={menu}\n options={\n session\n ? [\n ...options,\n { icon: ICON.LOGOUT, label: translate(L10N.CTA_LOGOUT), value: 'logout', testId: 'session-logout' },\n ]\n : null\n }\n onPress={handlePress}\n testId=\"profile-menu\"\n >\n <Pressable\n onPress={() => setMenu(!menu)}\n dangerouslySetInnerHTML={ghost ? { __html: template(ghost.outerHTML, session, translate) } : undefined}\n className={style.pressable}\n testId=\"show-session-menu\"\n >\n {!ghost ? (\n <View row className={styles(style.account, compacted && style.compacted)}>\n <View row className={style.avatar}>\n <Text action bold>\n {`${firstName.substr(0, 1)}`.toUpperCase()}\n </Text>\n </View>\n {!isMobile && !compacted && <Info {...{ email, firstName, lastName }} />}\n </View>\n ) : null}\n </Pressable>\n </Menu>\n </View>\n );\n};\n\nAccount.displayName = 'Mirai:Core:Session:Account';\n\nAccount.propTypes = {\n compacted: PropTypes.bool,\n ghost: PropTypes.any,\n};\n\nexport { Account };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Session.Account.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_SessionAccount","_Session","_Session2","style","_Core","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Account","_ref","compacted","ghost","isMobile","useDevice","translate","useLocale","ref","useRef","value","components","club","authentication","type","AUTH_TYPE","MIRAI","cookies","hotel","url","hotelUrl","id","session","store","useStore","menu","setMenu","useState","useEffect","handleClickOutside","_ref2","_ref$current","target","current","contains","undefined","document","addEventListener","PESTANA","pestana","token","ServiceUser","logout","removeEventListener","handlePress","handleLogout","getProfileUrl","location","href","profile","window","reload","concat","process","env","SERVICE_USER","ENDPOINT","EXTERNAL_LOGOUT","toUrlParams","idtokenprovider","domain","email","firstName","lastName","level","options","icon","ICON","PERSON","label","L10N","ACTION_MANAGE_ACCOUNT","testId","LIST","ACTION_MY_BOOKINGS","divider","LEVEL","children","createElement","Info","View","role","Menu","visible","LOGOUT","CTA_LOGOUT","onPress","Pressable","dangerouslySetInnerHTML","__html","template","outerHTML","className","pressable","row","styles","account","avatar","Text","action","bold","substr","toUpperCase","exports","displayName","propTypes","PropTypes","bool","any"],"sources":["../../../src/components/Session/Session.Account.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport { Menu, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { getProfileUrl } from './helpers';\nimport { Info } from './Session.Account.Info';\nimport { ENDPOINT } from './Session.constants';\nimport { L10N } from './Session.l10n';\nimport * as style from './Session.module.css';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { ICON, template, toUrlParams } from '../helpers';\n\nconst Account = ({ compacted = false, ghost }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: {\n components = {},\n club: { authentication: { type = AUTH_TYPE.MIRAI } = {} } = {},\n cookies,\n hotel: { url: hotelUrl } = {},\n id,\n session,\n ...store\n },\n } = useStore();\n\n const [menu, setMenu] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = ({ target }) => {\n if (!ref.current?.contains(target)) setMenu(undefined);\n };\n document.addEventListener('click', handleClickOutside, true);\n\n if (type === AUTH_TYPE.PESTANA) {\n const { pestana: token } = cookies;\n\n if (session && !token) {\n ServiceUser.logout();\n set({ session: undefined });\n }\n }\n return () => document.removeEventListener('click', handleClickOutside, true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handlePress = (value) => {\n if (!value) return setMenu(!menu);\n\n setMenu(false);\n if (value === 'logout') return handleLogout();\n\n const url = getProfileUrl({ id, value, ...store });\n if (!url) return;\n\n document.location.href = url;\n };\n\n const handleLogout = () => {\n ServiceUser.logout();\n\n if (type === AUTH_TYPE.MIRAI) {\n set({ session: undefined });\n\n if (components.profile) window.location.href = hotelUrl;\n else window.location.reload();\n\n return;\n }\n\n const url = `${process.env.SERVICE_USER}/${ENDPOINT.EXTERNAL_LOGOUT}${toUrlParams({\n idtokenprovider: id,\n domain: document.location.href,\n })}`;\n\n document.location.href = url;\n };\n\n const { email, firstName = '', lastName = '', level } = session || {};\n\n let options =\n type === AUTH_TYPE.MIRAI\n ? [\n {\n icon: ICON.PERSON,\n label: translate(L10N.ACTION_MANAGE_ACCOUNT),\n value: 'profile',\n testId: 'session-profile',\n },\n { icon: ICON.LIST, label: translate(L10N.ACTION_MY_BOOKINGS), value: 'bookings', testId: 'session-bookings' },\n ]\n : [];\n if (level) options = [{ divider: true, label: translate(L10N.LEVEL, { level }) }, ...options];\n if (!ghost && (compacted || isMobile))\n options = [\n {\n children: <Info {...{ email, firstName, lastName }} />,\n divider: true,\n },\n ...options,\n ];\n\n return (\n <View role=\"account\" ref={ref}>\n <Menu\n visible={menu}\n options={\n session ? [...options, { icon: ICON.LOGOUT, label: translate(L10N.CTA_LOGOUT), value: 'logout' }] : null\n }\n onPress={handlePress}\n testId=\"profile-menu\"\n >\n <Pressable\n onPress={() => setMenu(!menu)}\n dangerouslySetInnerHTML={ghost ? { __html: template(ghost.outerHTML, session, translate) } : undefined}\n className={style.pressable}\n testId=\"show-profile-menu\"\n >\n {!ghost ? (\n <View row className={styles(style.account, compacted && style.compacted)}>\n <View row className={style.avatar}>\n <Text action bold>\n {`${firstName.substr(0, 1)}`.toUpperCase()}\n </Text>\n </View>\n {!isMobile && !compacted && <Info {...{ email, firstName, lastName }} />}\n </View>\n ) : null}\n </Pressable>\n </Menu>\n </View>\n );\n};\n\nAccount.displayName = 'Mirai:Core:Session:Account';\n\nAccount.propTypes = {\n compacted: PropTypes.bool,\n ghost: PropTypes.any,\n};\n\nexport { Account };\n"],"mappings":"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"}
|
|
@@ -207,7 +207,7 @@ exports[`component:<Session> Using ghost feature with an stored session 1`] = `
|
|
|
207
207
|
>
|
|
208
208
|
<ui-pressable
|
|
209
209
|
class="pressable"
|
|
210
|
-
data-testid="show-
|
|
210
|
+
data-testid="show-profile-menu"
|
|
211
211
|
tabindex="0"
|
|
212
212
|
>
|
|
213
213
|
<div>
|
|
@@ -921,7 +921,7 @@ exports[`component:<Session> with an stored session 1`] = `
|
|
|
921
921
|
>
|
|
922
922
|
<ui-pressable
|
|
923
923
|
class="pressable"
|
|
924
|
-
data-testid="show-
|
|
924
|
+
data-testid="show-profile-menu"
|
|
925
925
|
tabindex="0"
|
|
926
926
|
>
|
|
927
927
|
<ui-view
|
|
@@ -5,7 +5,7 @@ exports[`component:<FormSipay> inherit:className 1`] = `
|
|
|
5
5
|
<ui-view
|
|
6
6
|
class="view mirai"
|
|
7
7
|
>
|
|
8
|
-
<ui-notification
|
|
8
|
+
<ui-notification-warning
|
|
9
9
|
class="view row notification warning inline large wide"
|
|
10
10
|
>
|
|
11
11
|
<ui-icon
|
|
@@ -34,7 +34,7 @@ exports[`component:<FormSipay> inherit:className 1`] = `
|
|
|
34
34
|
payments.notification.loading
|
|
35
35
|
</ui-text>
|
|
36
36
|
</ui-view>
|
|
37
|
-
</ui-notification>
|
|
37
|
+
</ui-notification-warning>
|
|
38
38
|
<button
|
|
39
39
|
data-amount="0"
|
|
40
40
|
data-autosave="true"
|
|
@@ -58,7 +58,7 @@ exports[`component:<FormSipay> renders 1`] = `
|
|
|
58
58
|
<ui-view
|
|
59
59
|
class="view"
|
|
60
60
|
>
|
|
61
|
-
<ui-notification
|
|
61
|
+
<ui-notification-warning
|
|
62
62
|
class="view row notification warning inline large wide"
|
|
63
63
|
>
|
|
64
64
|
<ui-icon
|
|
@@ -87,7 +87,7 @@ exports[`component:<FormSipay> renders 1`] = `
|
|
|
87
87
|
payments.notification.loading
|
|
88
88
|
</ui-text>
|
|
89
89
|
</ui-view>
|
|
90
|
-
</ui-notification>
|
|
90
|
+
</ui-notification-warning>
|
|
91
91
|
<button
|
|
92
92
|
data-amount="0"
|
|
93
93
|
data-autosave="true"
|
|
@@ -112,7 +112,7 @@ exports[`component:<FormSipay> testID 1`] = `
|
|
|
112
112
|
class="view"
|
|
113
113
|
data-testid="mirai"
|
|
114
114
|
>
|
|
115
|
-
<ui-notification
|
|
115
|
+
<ui-notification-warning
|
|
116
116
|
class="view row notification warning inline large wide"
|
|
117
117
|
>
|
|
118
118
|
<ui-icon
|
|
@@ -141,7 +141,7 @@ exports[`component:<FormSipay> testID 1`] = `
|
|
|
141
141
|
payments.notification.loading
|
|
142
142
|
</ui-text>
|
|
143
143
|
</ui-view>
|
|
144
|
-
</ui-notification>
|
|
144
|
+
</ui-notification-warning>
|
|
145
145
|
<button
|
|
146
146
|
data-amount="0"
|
|
147
147
|
data-autosave="true"
|
package/build/components/__shared__/Occupation/__tests__/__snapshots__/Occupation.test.js.snap
CHANGED
|
@@ -6,7 +6,7 @@ exports[` 1`] = `
|
|
|
6
6
|
class="view"
|
|
7
7
|
l10n="[object Object]"
|
|
8
8
|
>
|
|
9
|
-
<ui-notification
|
|
9
|
+
<ui-notification-warning
|
|
10
10
|
class="view row notification warning outlined small"
|
|
11
11
|
>
|
|
12
12
|
<ui-icon
|
|
@@ -35,7 +35,7 @@ exports[` 1`] = `
|
|
|
35
35
|
finder.notification.warning_occupation
|
|
36
36
|
</ui-text>
|
|
37
37
|
</ui-view>
|
|
38
|
-
</ui-notification>
|
|
38
|
+
</ui-notification-warning>
|
|
39
39
|
<ui-scrollview
|
|
40
40
|
class="scrollview vertical"
|
|
41
41
|
>
|
|
@@ -2127,7 +2127,7 @@ exports[`component:<Occupation> prop:value prop:error 1`] = `
|
|
|
2127
2127
|
class="view"
|
|
2128
2128
|
l10n="[object Object]"
|
|
2129
2129
|
>
|
|
2130
|
-
<ui-notification
|
|
2130
|
+
<ui-notification-error
|
|
2131
2131
|
class="view row notification error outlined small"
|
|
2132
2132
|
>
|
|
2133
2133
|
<ui-icon
|
|
@@ -2166,7 +2166,7 @@ exports[`component:<Occupation> prop:value prop:error 1`] = `
|
|
|
2166
2166
|
fields
|
|
2167
2167
|
</ui-text>
|
|
2168
2168
|
</ui-view>
|
|
2169
|
-
</ui-notification>
|
|
2169
|
+
</ui-notification-error>
|
|
2170
2170
|
<ui-scrollview
|
|
2171
2171
|
class="scrollview vertical"
|
|
2172
2172
|
>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanitizeComponent.js","names":["sanitizeComponent","el","getAttribute","innerHTML","error","console","warn","setAttribute","exports"],"sources":["../../src/helpers/sanitizeComponent.js"],"sourcesContent":["export const sanitizeComponent = (el) => {\n if (!el.getAttribute('data-ready')) {\n try {\n el.innerHTML = '';\n } catch (error) {\n console.warn(`WARNING: element has an issue using innerHTML.`, { el });\n }\n el.setAttribute('data-ready', 'true');\n }\n};\n"],"mappings":";;;;;;AAAO,MAAMA,iBAAiB,GAAIC,EAAE,IAAK;EACvC,IAAI,CAACA,EAAE,CAACC,YAAY,CAAC,YAAY,CAAC,EAAE;IAClC,IAAI;MACFD,EAAE,CAACE,SAAS,GAAG,EAAE;IACnB,CAAC,CAAC,OAAOC,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"sanitizeComponent.js","names":["sanitizeComponent","el","getAttribute","innerHTML","error","console","warn","setAttribute","exports"],"sources":["../../src/helpers/sanitizeComponent.js"],"sourcesContent":["export const sanitizeComponent = (el) => {\n if (!el.getAttribute('data-ready')) {\n try {\n el.innerHTML = '';\n } catch (error) {\n // eslint-disable-next-line no-console\n console.warn(`WARNING: element has an issue using innerHTML.`, { el });\n }\n el.setAttribute('data-ready', 'true');\n }\n};\n"],"mappings":";;;;;;AAAO,MAAMA,iBAAiB,GAAIC,EAAE,IAAK;EACvC,IAAI,CAACA,EAAE,CAACC,YAAY,CAAC,YAAY,CAAC,EAAE;IAClC,IAAI;MACFD,EAAE,CAACE,SAAS,GAAG,EAAE;IACnB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACd;MACAC,OAAO,CAACC,IAAI,mDAAmD;QAAEL;MAAG,CAAC,CAAC;IACxE;IACAA,EAAE,CAACM,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC;EACvC;AACF,CAAC;AAACC,OAAA,CAAAR,iBAAA,GAAAA,iBAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mirai/core",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.382",
|
|
4
4
|
"source": "src/index.js",
|
|
5
5
|
"repository": "https://gitlab.com/miraicorp/dev/frontend/core",
|
|
6
6
|
"author": "JΛVI <hello@soyjavi.com>",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"test:coverage": "node scripts/test.js --coverage --coverageReporters=text --detectOpenHandles --forceExit --silent",
|
|
18
18
|
"test:watch": "node scripts/test.js",
|
|
19
19
|
"test:e2e": "yarn playwright test --ui",
|
|
20
|
-
"test:e2e:ci": "
|
|
20
|
+
"test:e2e:ci": " CI=true yarn playwright test",
|
|
21
21
|
"test:e2e:recorder": "yarn playwright codegen",
|
|
22
22
|
"test:e2e:report": "yarn playwright show-report",
|
|
23
23
|
"pipeline": "yarn lint && yarn test",
|
package/public/index.html
CHANGED
|
@@ -13,7 +13,12 @@
|
|
|
13
13
|
<script>
|
|
14
14
|
window.dataLayer = window.dataLayer || [];
|
|
15
15
|
function gtag() {
|
|
16
|
-
dataLayer.push(arguments);
|
|
16
|
+
window.dataLayer.push(arguments);
|
|
17
|
+
|
|
18
|
+
if (window.IS_PLAYWRIGHT) {
|
|
19
|
+
cookiesAccepted = localStorage.getItem('cookiesAccepted');
|
|
20
|
+
if (!cookiesAccepted) localStorage.setItem('cookiesAccepted', 'granted');
|
|
21
|
+
}
|
|
17
22
|
}
|
|
18
23
|
gtag('consent', 'update', {
|
|
19
24
|
ad_storage: 'granted',
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { bookings, forgotPassword, login, logout, profile } from './workflows';
|
|
4
|
-
|
|
5
|
-
test.beforeEach(async ({ context }) => {
|
|
6
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
7
|
-
});
|
|
8
|
-
|
|
9
|
-
test('Session workflows', async ({ page }) => {
|
|
10
|
-
await page.goto('http://local.mirai.com:8080', { waitUntil: 'networkidle', timeout: 10000 });
|
|
11
|
-
|
|
12
|
-
await login({ page });
|
|
13
|
-
await profile({ page });
|
|
14
|
-
await bookings({ page });
|
|
15
|
-
await logout({ page });
|
|
16
|
-
await forgotPassword({ page });
|
|
17
|
-
});
|