@mirai/core 0.3.168 → 0.3.170

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.
@@ -131,6 +131,7 @@ const Checkout = _ref => {
131
131
  type
132
132
  } = {}
133
133
  } = club;
134
+ const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;
134
135
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
135
136
  role: "checkout",
136
137
  testId: others.testId,
@@ -147,7 +148,8 @@ const Checkout = _ref => {
147
148
  className: style.content
148
149
  }, /*#__PURE__*/_react.default.createElement(_ui.View, {
149
150
  className: style.main
150
- }, requiredFields && /*#__PURE__*/_react.default.createElement(_shared__.NotificationRequiredFields, {
151
+ }, hasRequiredFields && /*#__PURE__*/_react.default.createElement(_shared__.NotificationRequiredFields, {
152
+ form: "checkout",
151
153
  values: requiredFields
152
154
  }), variant === 'B' && /*#__PURE__*/_react.default.createElement(_partials.Summary, {
153
155
  dataSource: dataSource,
@@ -172,7 +174,7 @@ const Checkout = _ref => {
172
174
  }, translate(_Checkout2.L10N.ACTION_MORE_INFO)))
173
175
  })), /*#__PURE__*/_react.default.createElement(_partials.Form, {
174
176
  dataSource: dataSource,
175
- showErrors: !!requiredFields,
177
+ showErrors: hasRequiredFields,
176
178
  onError: setError
177
179
  }), isDesktop && /*#__PURE__*/_react.default.createElement(_partials.Details, {
178
180
  dataSource: dataSource,
@@ -183,7 +185,7 @@ const Checkout = _ref => {
183
185
  tracking: _Checkout.TRACKING
184
186
  })), /*#__PURE__*/_react.default.createElement(_partials.Confirmation, {
185
187
  dataSource: dataSource,
186
- error: error,
188
+ error: Object.keys(error || {}).length > 0,
187
189
  variant: variant,
188
190
  onError: handleErrorConfirmation,
189
191
  onValid: () => setRequiredFields()
@@ -1 +1 @@
1
- {"version":3,"file":"Checkout.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","_Checkout2","style","_Checkout3","_helpers","_partials","_Core","_shared__","_partials2","_Booking","_helpers2","_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","hasTracking","Checkout","_ref","session","showSession","skeleton","others","isDesktop","useDevice","translate","useLocale","track","trackRender","useMetrics","value","club","currency","hotel","id","language","locale","urlParams","useStore","dataSource","setDataSource","useState","error","setError","requiredFields","setRequiredFields","modalAgency","setModalAgency","responseError","setResponseError","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","concat","TRACKING","response","ServiceBooking","checkout","applyClubDiscount","undefined","catch","service","method","trace","tracking","chainId","idchain","window","addEventListener","innerHeight","scrollY","documentElement","scrollHeight","document","handleModalAgency","handleErrorConfirmation","scrollTo","top","behavior","agency","image","payment","variant","getVariant","active","authentication","type","createElement","Fragment","View","role","testId","className","styles","container","Progress","indeterminate","visible","progress","src","logo","row","content","main","NotificationRequiredFields","values","Summary","box","Details","AUTH_TYPE","MIRAI","Session","name","Notification","small","info","wide","L10N","NOTIFICATION_NO_CARD","NOTIFICATION_AGENCY","link","Action","inline","underline","onPress","action","ACTION_MORE_INFO","Form","showErrors","onError","Others","Confirmation","onValid","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","ModalAgency","onClose","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Checkout/Checkout.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking, ServiceFeatures } from '@mirai/services';\nimport { Action, Notification, Progress, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { FEATURE_CHECKOUT_TRACKING, TRACKING } from './Checkout.constants';\nimport { L10N } from './Checkout.l10n';\nimport * as style from './Checkout.module.css';\nimport Skeleton from './Checkout.skeleton';\nimport { getVariant } from './helpers';\nimport { Confirmation, Details, Form, Session, Summary } from './partials';\nimport { ERROR } from '../../Core.constants';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { NotificationRequiredFields } from '../__shared__';\nimport { Others } from '../Booking/partials';\nimport { ModalAgency } from '../Booking/partials/Booking.ModalAgency';\nimport { trace } from '../helpers';\n\nlet hasTracking = false;\n\nconst Checkout = ({ session: showSession = false, skeleton, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const { track, trackRender } = useMetrics();\n const {\n value: { club = {}, currency, hotel, id, language, locale, session, urlParams = {} },\n } = useStore();\n\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState();\n const [requiredFields, setRequiredFields] = useState();\n const [modalAgency, setModalAgency] = useState(false);\n const [responseError, setResponseError] = useState();\n\n useEffect(() => {\n if (skeleton) return;\n\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n hasTracking && trackRender(`${TRACKING}:RENDER`, { locale });\n\n (async () => {\n const response = await ServiceBooking.checkout({\n currency,\n hotel,\n language,\n locale,\n session: urlParams.applyClubDiscount === 'true' ? session : undefined,\n ...urlParams,\n }).catch((error) => {\n setResponseError(error);\n hasTracking && track(`${TRACKING}:ERROR:SERVICE`, { service: 'Booking', method: 'checkout', error });\n });\n setDataSource(response);\n response && trace({ ...response.tracking, chainId: urlParams.idchain });\n })();\n\n window.addEventListener('scroll', () => {\n if (!hasTracking) return;\n const { innerHeight = 0, scrollY } = window;\n const { documentElement: { scrollHeight = 0 } = {} } = document;\n\n if (scrollY >= scrollHeight - innerHeight) track(`${TRACKING}:SCROLL:BOTTOM`);\n else if (scrollY === 0) track(`${TRACKING}:SCROLL:TOP`);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\n\n const handleModalAgency = () => {\n setModalAgency(true);\n };\n\n const handleErrorConfirmation = () => {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n setRequiredFields(error);\n };\n\n const { agency = {}, hotel: { image } = {}, payment } = dataSource || {};\n const response = dataSource !== undefined;\n const variant = getVariant({ id, isDesktop, urlParams });\n const { active, authentication: { type } = {} } = club;\n\n return (\n <>\n <View role=\"checkout\" testId={others.testId} className={styles(style.container, others.className)}>\n <Progress indeterminate visible={!response && !responseError} className={style.progress} />\n {response ? (\n <>\n <img src={image} className={style.logo} />\n\n <View row={isDesktop} className={style.content}>\n <View className={style.main}>\n {requiredFields && <NotificationRequiredFields values={requiredFields} />}\n\n {variant === 'B' && <Summary dataSource={dataSource} variant={variant} className={style.box} />}\n\n {!isDesktop && <Details dataSource={dataSource} variant={variant} />}\n {active && !session && showSession && type === AUTH_TYPE.MIRAI && <Session />}\n {(agency.name || !payment) && (\n <Notification small info wide className={styles(style.agency, others.className)}>\n {!payment && `${translate(L10N.NOTIFICATION_NO_CARD)} `}\n {agency.name &&\n translate(L10N.NOTIFICATION_AGENCY, {\n agency: agency.name,\n link: (\n <>\n <Action inline underline small onPress={handleModalAgency} className={styles(style.action)}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n ),\n })}\n </Notification>\n )}\n\n <Form dataSource={dataSource} showErrors={!!requiredFields} onError={setError} />\n\n {isDesktop && <Details dataSource={dataSource} variant={variant} />}\n <Others dataSource={dataSource} small tracking={TRACKING} />\n </View>\n\n <Confirmation\n dataSource={dataSource}\n error={error}\n variant={variant}\n onError={handleErrorConfirmation}\n onValid={() => setRequiredFields()}\n />\n </View>\n </>\n ) : responseError ? (\n <Notification error large>\n {translate(L10N.NOTIFICATION_ERROR[responseError?.code || ERROR.UNKNOWN])}\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n {agency.name && <ModalAgency {...agency} visible={modalAgency} onClose={() => setModalAgency(false)} />}\n </>\n );\n};\n\nCheckout.displayName = 'Mirai:Core:Checkout';\n\nCheckout.propTypes = {\n session: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Checkout };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Checkout.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Checkout","_Checkout2","style","_Checkout3","_helpers","_partials","_Core","_shared__","_partials2","_Booking","_helpers2","_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","hasTracking","Checkout","_ref","session","showSession","skeleton","others","isDesktop","useDevice","translate","useLocale","track","trackRender","useMetrics","value","club","currency","hotel","id","language","locale","urlParams","useStore","dataSource","setDataSource","useState","error","setError","requiredFields","setRequiredFields","modalAgency","setModalAgency","responseError","setResponseError","useEffect","ServiceFeatures","FEATURE_CHECKOUT_TRACKING","concat","TRACKING","response","ServiceBooking","checkout","applyClubDiscount","undefined","catch","service","method","trace","tracking","chainId","idchain","window","addEventListener","innerHeight","scrollY","documentElement","scrollHeight","document","handleModalAgency","handleErrorConfirmation","scrollTo","top","behavior","agency","image","payment","variant","getVariant","active","authentication","type","hasRequiredFields","keys","createElement","Fragment","View","role","testId","className","styles","container","Progress","indeterminate","visible","progress","src","logo","row","content","main","NotificationRequiredFields","form","values","Summary","box","Details","AUTH_TYPE","MIRAI","Session","name","Notification","small","info","wide","L10N","NOTIFICATION_NO_CARD","NOTIFICATION_AGENCY","link","Action","inline","underline","onPress","action","ACTION_MORE_INFO","Form","showErrors","onError","Others","Confirmation","onValid","large","NOTIFICATION_ERROR","code","ERROR","UNKNOWN","ModalAgency","onClose","exports","displayName","propTypes","PropTypes","bool"],"sources":["../../../src/components/Checkout/Checkout.jsx"],"sourcesContent":["import { useMetrics, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceBooking, ServiceFeatures } from '@mirai/services';\nimport { Action, Notification, Progress, styles, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { FEATURE_CHECKOUT_TRACKING, TRACKING } from './Checkout.constants';\nimport { L10N } from './Checkout.l10n';\nimport * as style from './Checkout.module.css';\nimport Skeleton from './Checkout.skeleton';\nimport { getVariant } from './helpers';\nimport { Confirmation, Details, Form, Session, Summary } from './partials';\nimport { ERROR } from '../../Core.constants';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { NotificationRequiredFields } from '../__shared__';\nimport { Others } from '../Booking/partials';\nimport { ModalAgency } from '../Booking/partials/Booking.ModalAgency';\nimport { trace } from '../helpers';\n\nlet hasTracking = false;\n\nconst Checkout = ({ session: showSession = false, skeleton, ...others }) => {\n const { isDesktop } = useDevice();\n const { translate } = useLocale();\n const { track, trackRender } = useMetrics();\n const {\n value: { club = {}, currency, hotel, id, language, locale, session, urlParams = {} },\n } = useStore();\n\n const [dataSource, setDataSource] = useState();\n const [error, setError] = useState();\n const [requiredFields, setRequiredFields] = useState();\n const [modalAgency, setModalAgency] = useState(false);\n const [responseError, setResponseError] = useState();\n\n useEffect(() => {\n if (skeleton) return;\n\n hasTracking = ServiceFeatures.get(FEATURE_CHECKOUT_TRACKING, id);\n hasTracking && trackRender(`${TRACKING}:RENDER`, { locale });\n\n (async () => {\n const response = await ServiceBooking.checkout({\n currency,\n hotel,\n language,\n locale,\n session: urlParams.applyClubDiscount === 'true' ? session : undefined,\n ...urlParams,\n }).catch((error) => {\n setResponseError(error);\n hasTracking && track(`${TRACKING}:ERROR:SERVICE`, { service: 'Booking', method: 'checkout', error });\n });\n setDataSource(response);\n response && trace({ ...response.tracking, chainId: urlParams.idchain });\n })();\n\n window.addEventListener('scroll', () => {\n if (!hasTracking) return;\n const { innerHeight = 0, scrollY } = window;\n const { documentElement: { scrollHeight = 0 } = {} } = document;\n\n if (scrollY >= scrollHeight - innerHeight) track(`${TRACKING}:SCROLL:BOTTOM`);\n else if (scrollY === 0) track(`${TRACKING}:SCROLL:TOP`);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [session]);\n\n const handleModalAgency = () => {\n setModalAgency(true);\n };\n\n const handleErrorConfirmation = () => {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n setRequiredFields(error);\n };\n\n const { agency = {}, hotel: { image } = {}, payment } = dataSource || {};\n const response = dataSource !== undefined;\n const variant = getVariant({ id, isDesktop, urlParams });\n const { active, authentication: { type } = {} } = club;\n const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;\n\n return (\n <>\n <View role=\"checkout\" testId={others.testId} className={styles(style.container, others.className)}>\n <Progress indeterminate visible={!response && !responseError} className={style.progress} />\n {response ? (\n <>\n <img src={image} className={style.logo} />\n\n <View row={isDesktop} className={style.content}>\n <View className={style.main}>\n {hasRequiredFields && <NotificationRequiredFields form=\"checkout\" values={requiredFields} />}\n\n {variant === 'B' && <Summary dataSource={dataSource} variant={variant} className={style.box} />}\n\n {!isDesktop && <Details dataSource={dataSource} variant={variant} />}\n {active && !session && showSession && type === AUTH_TYPE.MIRAI && <Session />}\n {(agency.name || !payment) && (\n <Notification small info wide className={styles(style.agency, others.className)}>\n {!payment && `${translate(L10N.NOTIFICATION_NO_CARD)} `}\n {agency.name &&\n translate(L10N.NOTIFICATION_AGENCY, {\n agency: agency.name,\n link: (\n <>\n <Action inline underline small onPress={handleModalAgency} className={styles(style.action)}>\n {translate(L10N.ACTION_MORE_INFO)}\n </Action>\n </>\n ),\n })}\n </Notification>\n )}\n\n <Form dataSource={dataSource} showErrors={hasRequiredFields} onError={setError} />\n\n {isDesktop && <Details dataSource={dataSource} variant={variant} />}\n <Others dataSource={dataSource} small tracking={TRACKING} />\n </View>\n\n <Confirmation\n dataSource={dataSource}\n error={Object.keys(error || {}).length > 0}\n variant={variant}\n onError={handleErrorConfirmation}\n onValid={() => setRequiredFields()}\n />\n </View>\n </>\n ) : responseError ? (\n <Notification error large>\n {translate(L10N.NOTIFICATION_ERROR[responseError?.code || ERROR.UNKNOWN])}\n </Notification>\n ) : (\n <Skeleton />\n )}\n </View>\n {agency.name && <ModalAgency {...agency} visible={modalAgency} onClose={() => setModalAgency(false)} />}\n </>\n );\n};\n\nCheckout.displayName = 'Mirai:Core:Checkout';\n\nCheckout.propTypes = {\n session: PropTypes.bool,\n skeleton: PropTypes.bool,\n};\n\nexport { Checkout };\n"],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  html {
2
- overflow-y: auto;
3
2
  scroll-behavior: smooth;
4
3
  }
5
4
 
@@ -32,6 +32,7 @@ const Account = () => {
32
32
  const [countries, setCountries] = (0, _react.useState)({});
33
33
  const [form, setForm] = (0, _react.useState)(session);
34
34
  const [formError, setFormError] = (0, _react.useState)({});
35
+ const [requiredFields, setRequiredFields] = (0, _react.useState)();
35
36
  const [responseError, setResponseError] = (0, _react.useState)();
36
37
  const formatDate = (0, _locale.getDateFormat)(locale);
37
38
  (0, _react.useEffect)(() => {
@@ -54,7 +55,16 @@ const Account = () => {
54
55
  // eslint-disable-next-line react-hooks/exhaustive-deps
55
56
  }, [locale]);
56
57
  const handleSubmit = async form => {
58
+ const hasErrors = Object.keys(formError).length !== 0;
59
+ if (hasErrors) {
60
+ window.scrollTo({
61
+ top: 0,
62
+ behavior: 'smooth'
63
+ });
64
+ return setRequiredFields(formError);
65
+ }
57
66
  setBusy(true);
67
+ setRequiredFields();
58
68
  setResponseError(undefined);
59
69
  const parameters = {
60
70
  ...form,
@@ -83,17 +93,21 @@ const Account = () => {
83
93
  const countryCode = (0, _helpers.getCountryCode)(form.country, countries);
84
94
  const has = {
85
95
  changes: _Settings.ACCOUNT_FIELDS.some(key => form[key] !== session[key]) || countryCode !== session.country,
86
- dateOfBirth: (_form$dateOfBirth = form.dateOfBirth) === null || _form$dateOfBirth === void 0 ? void 0 : _form$dateOfBirth.length,
87
- errors: Object.keys(formError).length !== 0
96
+ dateOfBirth: (_form$dateOfBirth = form.dateOfBirth) === null || _form$dateOfBirth === void 0 ? void 0 : _form$dateOfBirth.length
88
97
  };
98
+ const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;
89
99
  return /*#__PURE__*/_react.default.createElement(_ui.Form, {
90
100
  validateOnMount: true,
91
101
  onChange: setForm,
92
102
  onError: setFormError,
93
103
  onSubmit: handleSubmit
94
- }, /*#__PURE__*/_react.default.createElement(_ui.Text, {
104
+ }, hasRequiredFields && /*#__PURE__*/_react.default.createElement(_shared__.NotificationRequiredFields, {
105
+ form: "account",
106
+ values: requiredFields
107
+ }), /*#__PURE__*/_react.default.createElement(_ui.Text, {
95
108
  wide: true
96
109
  }, translate(_Settings2.L10N.DESCRIPTION_ACCOUNT)), /*#__PURE__*/_react.default.createElement(_shared__.TextRequiredFields, null), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
110
+ id: "account-firstName",
97
111
  name: "firstName",
98
112
  error: formError.firstName,
99
113
  label: translate(_Settings2.L10N.FIRSTNAME_LABEL),
@@ -102,6 +116,7 @@ const Account = () => {
102
116
  success: form.firstName !== session.firstName,
103
117
  value: form.firstName
104
118
  }), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
119
+ id: "account-lastName",
105
120
  name: "lastName",
106
121
  error: formError.lastName,
107
122
  label: translate(_Settings2.L10N.LASTNAME_LABEL),
@@ -110,6 +125,7 @@ const Account = () => {
110
125
  success: form.lastName !== session.lastName,
111
126
  value: form.lastName
112
127
  }), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
128
+ id: "account-email",
113
129
  name: "email",
114
130
  disabled: true,
115
131
  label: translate(_Settings2.L10N.EMAIL_LABEL),
@@ -118,6 +134,7 @@ const Account = () => {
118
134
  type: "email",
119
135
  value: form.email
120
136
  }), /*#__PURE__*/_react.default.createElement(_ui.InputDate, {
137
+ id: "account-dateOfBirth",
121
138
  name: "dateOfBirth",
122
139
  error: has.dateOfBirth && !!formError.dateOfBirth,
123
140
  hint: has.dateOfBirth && (_formError$dateOfBirt = formError.dateOfBirth) !== null && _formError$dateOfBirt !== void 0 && _formError$dateOfBirt.max ? translate(_Settings2.L10N.DATEOFBIRTH_ERROR) : undefined,
@@ -132,12 +149,14 @@ const Account = () => {
132
149
  type: "inputDate",
133
150
  value: form.dateOfBirth
134
151
  }), /*#__PURE__*/_react.default.createElement(_ui.InputSelect, {
152
+ id: "account-country",
135
153
  name: "country",
136
154
  label: translate(_Settings2.L10N.COUNTRY_LABEL),
137
155
  placeholder: translate(_Settings2.L10N.COUNTRY_PLACEHOLDER),
138
- options: Object.values(countries),
139
- required: true,
140
- showRequired: true,
156
+ options: Object.values(countries)
157
+ // required
158
+ // showRequired
159
+ ,
141
160
  success: countryCode !== session.country,
142
161
  value: form.country
143
162
  }), /*#__PURE__*/_react.default.createElement(_ui.InputOption, {
@@ -152,10 +171,9 @@ const Account = () => {
152
171
  className: style.notification
153
172
  }, translate(_Settings2.L10N.ERROR)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
154
173
  busy: busy,
155
- disabled: busy || has.errors || !has.changes,
156
174
  large: true,
157
175
  wide: true,
158
- type: "submit"
176
+ onPress: handleSubmit
159
177
  }, translate(_Settings2.L10N.CTA_ACCOUNT)));
160
178
  };
161
179
  exports.Account = Account;
@@ -1 +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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"}
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","requiredFields","setRequiredFields","responseError","setResponseError","formatDate","getDateFormat","useEffect","profile","next","ServiceCountry","list","country","handleSubmit","hasErrors","keys","length","window","scrollTo","top","behavior","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","hasRequiredFields","createElement","Form","validateOnMount","onChange","onError","onSubmit","NotificationRequiredFields","values","Text","wide","DESCRIPTION_ACCOUNT","TextRequiredFields","InputText","id","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","InputOption","checked","subscribed","SUBSCRIBED_LABEL","small","Notification","className","notification","ERROR","Button","large","onPress","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 { NotificationRequiredFields, 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 [requiredFields, setRequiredFields] = 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 const hasErrors = Object.keys(formError).length !== 0;\n if (hasErrors) {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n return setRequiredFields(formError);\n }\n\n setBusy(true);\n setRequiredFields();\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 };\n const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;\n\n return (\n <Form validateOnMount onChange={setForm} onError={setFormError} onSubmit={handleSubmit}>\n {hasRequiredFields && <NotificationRequiredFields form=\"account\" values={requiredFields} />}\n\n <Text wide>{translate(L10N.DESCRIPTION_ACCOUNT)}</Text>\n <TextRequiredFields />\n <InputText\n id=\"account-firstName\"\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 id=\"account-lastName\"\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 id=\"account-email\"\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 id=\"account-dateOfBirth\"\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 id=\"account-country\"\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} large wide onPress={handleSubmit}>\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":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAC,uBAAA,CAAAL,OAAA;AAEA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAH,uBAAA,CAAAL,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAAyD,SAAAW,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEzD,MAAMY,OAAO,GAAGA,CAAA,KAAM;EAAA,IAAAC,iBAAA,EAAAC,qBAAA;EACpB,MAAM;IACJH,GAAG;IACHI,KAAK,EAAE;MAAEC,MAAM;MAAEC,OAAO,GAAG,CAAC;IAAE;EAChC,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EACd,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EAEjC,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACvC,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAF,eAAQ,EAAC,CAAC,CAAC,CAAC;EAC9C,MAAM,CAACG,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAJ,eAAQ,EAACN,OAAO,CAAC;EACzC,MAAM,CAACW,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAN,eAAQ,EAAC,CAAC,CAAC,CAAC;EAC9C,MAAM,CAACO,cAAc,EAAEC,iBAAiB,CAAC,GAAG,IAAAR,eAAQ,EAAC,CAAC;EACtD,MAAM,CAACS,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAV,eAAQ,EAAC,CAAC;EAEpD,MAAMW,UAAU,GAAG,IAAAC,qBAAa,EAACnB,MAAM,CAAC;EAExC,IAAAoB,gBAAS,EAAC,MAAM;IACdH,gBAAgB,CAAC,CAAC;IAClBtB,GAAG,CAAC;MAAE0B,OAAO,EAAEX;IAAK,CAAC,CAAC;IACtB;EACF,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IAAAU,gBAAS,EAAC,MAAM;IACd,CAAC,YAAY;MACX,MAAME,IAAI,GAAG,CAAC,MAAMC,wBAAc,CAACC,IAAI,CAACxB,MAAM,CAAC,KAAK,CAAC,CAAC;MAEtDS,YAAY,CAACa,IAAI,CAAC;MAClBX,OAAO,CAAC;QAAE,GAAGD,IAAI;QAAEe,OAAO,EAAEH,IAAI,CAACrB,OAAO,CAACwB,OAAO;MAAE,CAAC,CAAC;IACtD,CAAC,EAAE,CAAC;;IAEJ;EACF,CAAC,EAAE,CAACzB,MAAM,CAAC,CAAC;EAEZ,MAAM0B,YAAY,GAAG,MAAOhB,IAAI,IAAK;IACnC,MAAMiB,SAAS,GAAGxC,MAAM,CAACyC,IAAI,CAAChB,SAAS,CAAC,CAACiB,MAAM,KAAK,CAAC;IACrD,IAAIF,SAAS,EAAE;MACbG,MAAM,CAACC,QAAQ,CAAC;QAAEC,GAAG,EAAE,CAAC;QAAEC,QAAQ,EAAE;MAAS,CAAC,CAAC;MAC/C,OAAOlB,iBAAiB,CAACH,SAAS,CAAC;IACrC;IAEAN,OAAO,CAAC,IAAI,CAAC;IACbS,iBAAiB,CAAC,CAAC;IACnBE,gBAAgB,CAACiB,SAAS,CAAC;IAE3B,MAAMC,UAAU,GAAG;MACjB,GAAGzB,IAAI;MACPe,OAAO,EAAE,IAAAW,uBAAc,EAAC1B,IAAI,CAACe,OAAO,EAAEjB,SAAS,CAAC;MAChD6B,WAAW,EAAE,IAAAC,kBAAU,EAAC,IAAAC,iBAAS,EAAC7B,IAAI,CAAC2B,WAAW,EAAEnB,UAAU,CAAC,EAAE;QAAEsB,MAAM,EAAE;MAAa,CAAC;IAC3F,CAAC;IAED,MAAMC,QAAQ,GAAG,MAAMC,qBAAW,CAACC,MAAM,CAACR,UAAU,CAAC,CAACS,KAAK,CAAEC,KAAK,IAAK;MACrE5B,gBAAgB,CAAC4B,KAAK,CAAC;IACzB,CAAC,CAAC;IAEF,IAAIJ,QAAQ,EAAE;MACZK,kBAAK,CAACC,OAAO,CAACC,cAAK,CAACC,YAAY,EAAE;QAAEC,OAAO,EAAE,IAAI;QAAE,GAAGC,eAAI,CAACC;MAAgB,CAAC,CAAC;MAC7EzD,GAAG,CAAC;QAAEM,OAAO,EAAE;UAAE,GAAGA,OAAO;UAAE,GAAGkC;QAAW;MAAE,CAAC,CAAC;IACjD;IACA7B,OAAO,CAAC,KAAK,CAAC;EAChB,CAAC;EAED,MAAM+C,WAAW,GAAG,IAAAjB,uBAAc,EAAC1B,IAAI,CAACe,OAAO,EAAEjB,SAAS,CAAC;EAC3D,MAAM1B,GAAG,GAAG;IACVwE,OAAO,EAAEC,wBAAc,CAACC,IAAI,CAAEC,GAAG,IAAK/C,IAAI,CAAC+C,GAAG,CAAC,KAAKxD,OAAO,CAACwD,GAAG,CAAC,CAAC,IAAIJ,WAAW,KAAKpD,OAAO,CAACwB,OAAO;IACpGY,WAAW,GAAAxC,iBAAA,GAAEa,IAAI,CAAC2B,WAAW,cAAAxC,iBAAA,uBAAhBA,iBAAA,CAAkBgC;EACjC,CAAC;EACD,MAAM6B,iBAAiB,GAAGvE,MAAM,CAACyC,IAAI,CAACd,cAAc,IAAI,CAAC,CAAC,CAAC,CAACe,MAAM,GAAG,CAAC;EAEtE,oBACE7D,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAA6F,IAAI;IAACC,eAAe;IAACC,QAAQ,EAAEnD,OAAQ;IAACoD,OAAO,EAAElD,YAAa;IAACmD,QAAQ,EAAEtC;EAAa,GACpFgC,iBAAiB,iBAAI1F,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAACtF,SAAA,CAAA4F,0BAA0B;IAACvD,IAAI,EAAC,SAAS;IAACwD,MAAM,EAAEpD;EAAe,CAAE,CAAC,eAE3F9C,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAAoG,IAAI;IAACC,IAAI;EAAA,GAAEjE,SAAS,CAACgD,eAAI,CAACkB,mBAAmB,CAAQ,CAAC,eACvDrG,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAACtF,SAAA,CAAAiG,kBAAkB,MAAE,CAAC,eACtBtG,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAAwG,SAAS;IACRC,EAAE,EAAC,mBAAmB;IACtBC,IAAI,EAAC,WAAW;IAChB5B,KAAK,EAAEjC,SAAS,CAAC8D,SAAU;IAC3BC,KAAK,EAAExE,SAAS,CAACgD,eAAI,CAACyB,eAAe,CAAE;IACvCC,QAAQ;IACRC,YAAY;IACZ5B,OAAO,EAAExC,IAAI,CAACgE,SAAS,KAAKzE,OAAO,CAACyE,SAAU;IAC9C3E,KAAK,EAAEW,IAAI,CAACgE;EAAU,CACvB,CAAC,eACF1G,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAAwG,SAAS;IACRC,EAAE,EAAC,kBAAkB;IACrBC,IAAI,EAAC,UAAU;IACf5B,KAAK,EAAEjC,SAAS,CAACmE,QAAS;IAC1BJ,KAAK,EAAExE,SAAS,CAACgD,eAAI,CAAC6B,cAAc,CAAE;IACtCH,QAAQ;IACRC,YAAY;IACZ5B,OAAO,EAAExC,IAAI,CAACqE,QAAQ,KAAK9E,OAAO,CAAC8E,QAAS;IAC5ChF,KAAK,EAAEW,IAAI,CAACqE;EAAS,CACtB,CAAC,eACF/G,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAAwG,SAAS;IACRC,EAAE,EAAC,eAAe;IAClBC,IAAI,EAAC,OAAO;IACZQ,QAAQ;IACRN,KAAK,EAAExE,SAAS,CAACgD,eAAI,CAAC+B,WAAW,CAAE;IACnCL,QAAQ;IACRC,YAAY;IACZK,IAAI,EAAC,OAAO;IACZpF,KAAK,EAAEW,IAAI,CAAC0E;EAAM,CACnB,CAAC,eACFpH,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAAsH,SAAS;IACRb,EAAE,EAAC,qBAAqB;IACxBC,IAAI,EAAC,aAAa;IAClB5B,KAAK,EAAE/D,GAAG,CAACuD,WAAW,IAAI,CAAC,CAACzB,SAAS,CAACyB,WAAY;IAClDiD,IAAI,EAAExG,GAAG,CAACuD,WAAW,KAAAvC,qBAAA,GAAIc,SAAS,CAACyB,WAAW,cAAAvC,qBAAA,eAArBA,qBAAA,CAAuByF,GAAG,GAAGpF,SAAS,CAACgD,eAAI,CAACqC,iBAAiB,CAAC,GAAGtD,SAAU;IACpGM,MAAM,EAAEtB,UAAW;IACnByD,KAAK,EAAExE,SAAS,CAACgD,eAAI,CAACsC,iBAAiB,CAAE;IACzCF,GAAG,EAAE,IAAAjD,kBAAU,EAAC,IAAAoD,gBAAQ,EAAC,IAAIC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE;MAAEnD,MAAM,EAAEtB;IAAW,CAAC,CAAE;IAC5E2D,QAAQ;IACRC,YAAY;IACZ5B,OAAO,EAAExC,IAAI,CAAC2B,WAAW,KAAKpC,OAAO,CAACoC,WAAY;IAClD8C,IAAI,EAAC,WAAW;IAChBpF,KAAK,EAAEW,IAAI,CAAC2B;EAAY,CACzB,CAAC,eACFrE,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAA6H,WAAW;IACVpB,EAAE,EAAC,iBAAiB;IACpBC,IAAI,EAAC,SAAS;IACdE,KAAK,EAAExE,SAAS,CAACgD,eAAI,CAAC0C,aAAa,CAAE;IACrCC,WAAW,EAAE3F,SAAS,CAACgD,eAAI,CAAC4C,mBAAmB,CAAE;IACjDC,OAAO,EAAE7G,MAAM,CAAC+E,MAAM,CAAC1D,SAAS;IAChC;IACA;IAAA;IACA0C,OAAO,EAAEG,WAAW,KAAKpD,OAAO,CAACwB,OAAQ;IACzC1B,KAAK,EAAEW,IAAI,CAACe;EAAQ,CACrB,CAAC,eACFzD,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAAkI,WAAW;IACVxB,IAAI,EAAC,YAAY;IACjByB,OAAO,EAAExF,IAAI,CAACyF,UAAW;IACzBhB,IAAI,EAAC,UAAU;IACfR,KAAK,EAAExE,SAAS,CAACgD,eAAI,CAACiD,gBAAgB,CAAE;IACxCC,KAAK;IACLtG,KAAK,EAAEW,IAAI,CAACyF;EAAW,CACxB,CAAC,EAEDnF,aAAa,iBACZhD,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAAuI,YAAY;IAACzD,KAAK;IAAC0D,SAAS,EAAEnI,KAAK,CAACoI;EAAa,GAC/CrG,SAAS,CAACgD,eAAI,CAACsD,KAAK,CACT,CACf,eAEDzI,MAAA,CAAAa,OAAA,CAAA8E,aAAA,CAAC5F,GAAA,CAAA2I,MAAM;IAACrG,IAAI,EAAEA,IAAK;IAACsG,KAAK;IAACvC,IAAI;IAACwC,OAAO,EAAElF;EAAa,GAClDvB,SAAS,CAACgD,eAAI,CAAC0D,WAAW,CACrB,CACJ,CAAC;AAEX,CAAC;AAACC,OAAA,CAAAlH,OAAA,GAAAA,OAAA;AAEFA,OAAO,CAACmH,WAAW,GAAG,4BAA4B;AAElDnH,OAAO,CAACoH,SAAS,GAAG,CAAC,CAAC"}
@@ -1,3 +1,7 @@
1
+ html {
2
+ scroll-behavior: smooth;
3
+ }
4
+
1
5
  .settings {
2
6
  align-items: flex-start;
3
7
  gap: var(--mirai-ui-space-L);
@@ -34,6 +34,7 @@ const Signup = others => {
34
34
  subscribed: true
35
35
  });
36
36
  const [formError, setFormError] = (0, _react.useState)({});
37
+ const [requiredFields, setRequiredFields] = (0, _react.useState)();
37
38
  const [response, setResponse] = (0, _react.useState)();
38
39
  const [responseError, setResponseError] = (0, _react.useState)();
39
40
  const [language, country] = locale.split('-');
@@ -56,8 +57,17 @@ const Signup = others => {
56
57
 
57
58
  // eslint-disable-next-line react-hooks/exhaustive-deps
58
59
  }, [locale]);
59
- const handleSubmit = async form => {
60
+ const handleSubmit = async () => {
61
+ const hasErrors = Object.keys(formError).length !== 0;
62
+ if (hasErrors) {
63
+ window.scrollTo({
64
+ top: 0,
65
+ behavior: 'smooth'
66
+ });
67
+ return setRequiredFields(formError);
68
+ }
60
69
  setBusy(true);
70
+ setRequiredFields();
61
71
  setResponseError(undefined);
62
72
  const response = await _services.ServiceUser.signup({
63
73
  ...form,
@@ -74,7 +84,7 @@ const Signup = others => {
74
84
  setResponse(response);
75
85
  setBusy(false);
76
86
  };
77
- const hasErrors = Object.keys(formError).length !== 0;
87
+ const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;
78
88
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
79
89
  role: "signup",
80
90
  className: style.container
@@ -91,14 +101,17 @@ const Signup = others => {
91
101
  className: style.description
92
102
  }, translate(_Signup.L10N.DESCRIPTION, {
93
103
  clubName: club.name
94
- }))), !response && /*#__PURE__*/_react.default.createElement(_ui.Form, {
104
+ }))), hasRequiredFields && /*#__PURE__*/_react.default.createElement(_shared__.NotificationRequiredFields, {
105
+ form: "signup",
106
+ values: requiredFields
107
+ }), !response && /*#__PURE__*/_react.default.createElement(_ui.Form, {
95
108
  validateOnMount: true,
96
109
  onChange: setForm,
97
110
  onError: setFormError,
98
- onSubmit: handleSubmit,
99
111
  testId: others.testId,
100
112
  className: (0, _ui.styles)(style.form, others.className)
101
113
  }, /*#__PURE__*/_react.default.createElement(_shared__.TextRequiredFields, null), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
114
+ id: "signup-firstName",
102
115
  name: "firstName",
103
116
  label: translate(_Signup.L10N.FIRSTNAME_LABEL),
104
117
  required: true,
@@ -106,6 +119,7 @@ const Signup = others => {
106
119
  success: ((_form$firstName = form.firstName) === null || _form$firstName === void 0 ? void 0 : _form$firstName.length) && !formError.firstName,
107
120
  value: form.firstName
108
121
  }), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
122
+ id: "signup-lastName",
109
123
  name: "lastName",
110
124
  label: translate(_Signup.L10N.LASTNAME_LABEL),
111
125
  required: true,
@@ -113,6 +127,7 @@ const Signup = others => {
113
127
  success: ((_form$lastName = form.lastName) === null || _form$lastName === void 0 ? void 0 : _form$lastName.length) && !formError.lastName,
114
128
  value: form.lastName
115
129
  }), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
130
+ id: "signup-email",
116
131
  name: "email",
117
132
  error: ((_form$email = form.email) === null || _form$email === void 0 ? void 0 : _form$email.length) && !!formError.email,
118
133
  label: translate(_Signup.L10N.EMAIL_LABEL),
@@ -122,6 +137,7 @@ const Signup = others => {
122
137
  type: "email",
123
138
  value: form.email
124
139
  }), /*#__PURE__*/_react.default.createElement(_ui.InputDate, {
140
+ id: "signup-dateOfBirth",
125
141
  name: "dateOfBirth",
126
142
  error: ((_form$dateOfBirth = form.dateOfBirth) === null || _form$dateOfBirth === void 0 ? void 0 : _form$dateOfBirth.length) && !!formError.dateOfBirth,
127
143
  hint: (_form$dateOfBirth2 = form.dateOfBirth) !== null && _form$dateOfBirth2 !== void 0 && _form$dateOfBirth2.length && (_formError$dateOfBirt = formError.dateOfBirth) !== null && _formError$dateOfBirt !== void 0 && _formError$dateOfBirt.max ? translate(_Signup.L10N.DATEOFBIRTH_ERROR) : undefined,
@@ -136,6 +152,7 @@ const Signup = others => {
136
152
  type: "inputDate",
137
153
  value: form.dateOfBirth
138
154
  }), /*#__PURE__*/_react.default.createElement(_ui.InputSelect, {
155
+ id: "signup-country",
139
156
  name: "country",
140
157
  label: translate(_Signup.L10N.COUNTRY_LABEL),
141
158
  placeholder: translate(_Signup.L10N.COUNTRY_PLACEHOLDER),
@@ -145,6 +162,7 @@ const Signup = others => {
145
162
  success: ((_form$country = form.country) === null || _form$country === void 0 ? void 0 : _form$country.length) && !formError.country,
146
163
  value: form.country
147
164
  }), /*#__PURE__*/_react.default.createElement(_ui.InputText, {
165
+ id: "signup-password",
148
166
  name: "password",
149
167
  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),
150
168
  hint: translate(_Signup.L10N.PASSWORD_HINT),
@@ -162,6 +180,7 @@ const Signup = others => {
162
180
  small: true,
163
181
  value: form.subscribed
164
182
  }), /*#__PURE__*/_react.default.createElement(_ui.InputOption, {
183
+ id: "signup-privacy",
165
184
  name: "privacy",
166
185
  checked: form.privacy,
167
186
  label: translate(_Signup.L10N.PRIVACY_LABEL, {
@@ -191,10 +210,9 @@ const Signup = others => {
191
210
  className: style.notification
192
211
  }, translate(_Signup.L10N.NOTIFICATION_ERROR)), /*#__PURE__*/_react.default.createElement(_ui.Button, {
193
212
  busy: busy,
194
- disabled: busy || hasErrors || !form.privacy,
195
213
  large: true,
196
214
  wide: true,
197
- type: "submit",
215
+ onPress: handleSubmit,
198
216
  className: style.button
199
217
  }, translate(_Signup.L10N.CTA))), !busy && response && /*#__PURE__*/_react.default.createElement(_ui.Notification, {
200
218
  large: true,
@@ -1 +1 @@
1
- {"version":3,"file":"Signup.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Signup","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Signup","others","_form$firstName","_form$lastName","_form$email","_form$email2","_form$dateOfBirth","_form$dateOfBirth2","_formError$dateOfBirt","_form$dateOfBirth3","_form$country","_form$password","_formError$password","_form$password2","_club$url","_club$url2","value","club","hotel","useStore","locale","translate","useLocale","busy","setBusy","useState","countries","setCountries","form","setForm","subscribed","formError","setFormError","response","setResponse","responseError","setResponseError","language","country","split","formatDate","getDateFormat","useEffect","signup","next","ServiceCountry","list","handleSubmit","undefined","ServiceUser","getCountryCode","dateOfBirth","dateFormat","parseDate","format","idClub","id","idHotel","catch","error","hasErrors","keys","length","createElement","View","role","className","container","wide","header","Text","bold","headline","level","L10N","TITLE","clubName","name","description","DESCRIPTION","Form","validateOnMount","onChange","onError","onSubmit","testId","styles","TextRequiredFields","InputText","label","FIRSTNAME_LABEL","required","showRequired","success","firstName","LASTNAME_LABEL","lastName","email","EMAIL_LABEL","type","InputDate","hint","max","DATEOFBIRTH_ERROR","DATEOFBIRTH_LABEL","dateCalc","Date","InputSelect","COUNTRY_LABEL","placeholder","COUNTRY_PLACEHOLDER","options","values","password","test","PASSWORD_HINT","PASSWORD_LABEL","testPassword","InputOption","checked","SUBSCRIBED_LABEL","small","privacy","PRIVACY_LABEL","conditionsLink","Action","inline","href","url","conditions","target","rel","PRIVACY_CONDITIONS_LINK","privacyPolicyLink","PRIVACY_POLICY_LINK","Notification","notification","NOTIFICATION_ERROR","Button","disabled","large","button","CTA","SUCCESS_TITLE","SUCCESS_MESSAGE","exports","displayName","propTypes"],"sources":["../../../src/components/Signup/Signup.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { dateCalc, dateFormat, getDateFormat, parseDate, useLocale } from '@mirai/locale';\nimport { ServiceCountry, ServiceUser } from '@mirai/services';\nimport {\n Action,\n Button,\n Form,\n InputDate,\n InputOption,\n InputSelect,\n InputText,\n Notification,\n styles,\n Text,\n View,\n} from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Signup.l10n';\nimport * as style from './Signup.module.css';\nimport { TextRequiredFields } from '../__shared__';\nimport { getCountryCode, testPassword } from '../helpers';\n\nconst Signup = (others) => {\n const {\n set,\n value: { club = {}, hotel = {} },\n } = useStore();\n const { locale, translate } = useLocale();\n\n const [busy, setBusy] = useState(false);\n const [countries, setCountries] = useState({});\n const [form, setForm] = useState({ subscribed: true });\n const [formError, setFormError] = useState({});\n const [response, setResponse] = useState();\n const [responseError, setResponseError] = useState();\n\n const [language, country] = locale.split('-');\n const formatDate = getDateFormat(locale);\n\n useEffect(() => {\n set({ signup: 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[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 response = await ServiceUser.signup({\n ...form,\n country: getCountryCode(form.country, countries),\n dateOfBirth: dateFormat(parseDate(form.dateOfBirth, formatDate), { format: 'DD/MM/YYYY' }),\n idClub: club.id,\n idHotel: hotel.id,\n language,\n }).catch((error) => {\n setResponseError(error);\n });\n\n setResponse(response);\n setBusy(false);\n };\n\n const hasErrors = Object.keys(formError).length !== 0;\n\n return (\n <View role=\"signup\" className={style.container}>\n <View wide className={style.header}>\n <Text bold headline level={2}>\n {translate(L10N.TITLE, { clubName: club.name })}\n </Text>\n <Text className={style.description}>{translate(L10N.DESCRIPTION, { clubName: club.name })}</Text>\n </View>\n\n {!response && (\n <Form\n validateOnMount\n onChange={setForm}\n onError={setFormError}\n onSubmit={handleSubmit}\n testId={others.testId}\n className={styles(style.form, others.className)}\n >\n <TextRequiredFields />\n <InputText\n name=\"firstName\"\n label={translate(L10N.FIRSTNAME_LABEL)}\n required\n showRequired\n success={form.firstName?.length && !formError.firstName}\n value={form.firstName}\n />\n <InputText\n name=\"lastName\"\n label={translate(L10N.LASTNAME_LABEL)}\n required\n showRequired\n success={form.lastName?.length && !formError.lastName}\n value={form.lastName}\n />\n <InputText\n name=\"email\"\n error={form.email?.length && !!formError.email}\n label={translate(L10N.EMAIL_LABEL)}\n required\n showRequired\n success={form.email?.length && !formError.email}\n type=\"email\"\n value={form.email}\n />\n <InputDate\n name=\"dateOfBirth\"\n error={form.dateOfBirth?.length && !!formError.dateOfBirth}\n hint={\n form.dateOfBirth?.length && formError.dateOfBirth?.max ? translate(L10N.DATEOFBIRTH_ERROR) : undefined\n }\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?.length && !formError.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={form.country?.length && !formError.country}\n value={form.country}\n />\n <InputText\n name=\"password\"\n error={form.password?.length && formError.password?.test}\n hint={translate(L10N.PASSWORD_HINT)}\n label={translate(L10N.PASSWORD_LABEL)}\n required\n showRequired\n success={form.password?.length && !formError.password}\n test={testPassword}\n type=\"password\"\n value={form.password}\n />\n\n <InputOption\n name=\"subscribed\"\n checked={form.subscribed}\n label={translate(L10N.SUBSCRIBED_LABEL)}\n small\n value={form.subscribed}\n />\n <InputOption\n name=\"privacy\"\n checked={form.privacy}\n label={translate(L10N.PRIVACY_LABEL, {\n clubName: club.name || '$club',\n conditionsLink: (\n <Action inline href={club.url?.conditions} target=\"_blank\" rel=\"noreferrer\" small>\n {translate(L10N.PRIVACY_CONDITIONS_LINK)}\n </Action>\n ),\n privacyPolicyLink: (\n <Action inline href={club.url?.privacy} target=\"_blank\" rel=\"noreferrer\" small>\n {translate(L10N.PRIVACY_POLICY_LINK)}\n </Action>\n ),\n })}\n required\n showRequired\n small\n value={form.privacy}\n className={style.privacy}\n />\n\n {!busy && responseError && (\n <Notification error className={style.notification}>\n {translate(L10N.NOTIFICATION_ERROR)}\n </Notification>\n )}\n\n <Button\n busy={busy}\n disabled={busy || hasErrors || !form.privacy}\n large\n wide\n type=\"submit\"\n className={style.button}\n >\n {translate(L10N.CTA)}\n </Button>\n </Form>\n )}\n\n {!busy && response && (\n <Notification large success className={style.notification}>\n <Text bold>{translate(L10N.SUCCESS_TITLE)}</Text>\n <Text>{translate(L10N.SUCCESS_MESSAGE)}</Text>\n </Notification>\n )}\n </View>\n );\n};\n\nSignup.displayName = 'Mirai:Core:Signup';\n\nSignup.propTypes = {};\n\nexport { Signup };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Signup.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Signup","style","_shared__","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Signup","others","_form$firstName","_form$lastName","_form$email","_form$email2","_form$dateOfBirth","_form$dateOfBirth2","_formError$dateOfBirt","_form$dateOfBirth3","_form$country","_form$password","_formError$password","_form$password2","_club$url","_club$url2","value","club","hotel","useStore","locale","translate","useLocale","busy","setBusy","useState","countries","setCountries","form","setForm","subscribed","formError","setFormError","requiredFields","setRequiredFields","response","setResponse","responseError","setResponseError","language","country","split","formatDate","getDateFormat","useEffect","signup","next","ServiceCountry","list","handleSubmit","hasErrors","keys","length","window","scrollTo","top","behavior","undefined","ServiceUser","getCountryCode","dateOfBirth","dateFormat","parseDate","format","idClub","id","idHotel","catch","error","hasRequiredFields","createElement","View","role","className","container","wide","header","Text","bold","headline","level","L10N","TITLE","clubName","name","description","DESCRIPTION","NotificationRequiredFields","values","Form","validateOnMount","onChange","onError","testId","styles","TextRequiredFields","InputText","label","FIRSTNAME_LABEL","required","showRequired","success","firstName","LASTNAME_LABEL","lastName","email","EMAIL_LABEL","type","InputDate","hint","max","DATEOFBIRTH_ERROR","DATEOFBIRTH_LABEL","dateCalc","Date","InputSelect","COUNTRY_LABEL","placeholder","COUNTRY_PLACEHOLDER","options","password","test","PASSWORD_HINT","PASSWORD_LABEL","testPassword","InputOption","checked","SUBSCRIBED_LABEL","small","privacy","PRIVACY_LABEL","conditionsLink","Action","inline","href","url","conditions","target","rel","PRIVACY_CONDITIONS_LINK","privacyPolicyLink","PRIVACY_POLICY_LINK","Notification","notification","NOTIFICATION_ERROR","Button","large","onPress","button","CTA","SUCCESS_TITLE","SUCCESS_MESSAGE","exports","displayName","propTypes"],"sources":["../../../src/components/Signup/Signup.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { dateCalc, dateFormat, getDateFormat, parseDate, useLocale } from '@mirai/locale';\nimport { ServiceCountry, ServiceUser } from '@mirai/services';\nimport {\n Action,\n Button,\n Form,\n InputDate,\n InputOption,\n InputSelect,\n InputText,\n Notification,\n styles,\n Text,\n View,\n} from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './Signup.l10n';\nimport * as style from './Signup.module.css';\nimport { NotificationRequiredFields, TextRequiredFields } from '../__shared__';\nimport { getCountryCode, testPassword } from '../helpers';\n\nconst Signup = (others) => {\n const {\n set,\n value: { club = {}, hotel = {} },\n } = useStore();\n const { locale, translate } = useLocale();\n\n const [busy, setBusy] = useState(false);\n const [countries, setCountries] = useState({});\n const [form, setForm] = useState({ subscribed: true });\n const [formError, setFormError] = useState({});\n const [requiredFields, setRequiredFields] = useState();\n const [response, setResponse] = useState();\n const [responseError, setResponseError] = useState();\n\n const [language, country] = locale.split('-');\n const formatDate = getDateFormat(locale);\n\n useEffect(() => {\n set({ signup: 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[country] });\n })();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [locale]);\n\n const handleSubmit = async () => {\n const hasErrors = Object.keys(formError).length !== 0;\n if (hasErrors) {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n return setRequiredFields(formError);\n }\n\n setBusy(true);\n setRequiredFields();\n setResponseError(undefined);\n\n const response = await ServiceUser.signup({\n ...form,\n country: getCountryCode(form.country, countries),\n dateOfBirth: dateFormat(parseDate(form.dateOfBirth, formatDate), { format: 'DD/MM/YYYY' }),\n idClub: club.id,\n idHotel: hotel.id,\n language,\n }).catch((error) => {\n setResponseError(error);\n });\n\n setResponse(response);\n setBusy(false);\n };\n\n const hasRequiredFields = Object.keys(requiredFields || {}).length > 0;\n\n return (\n <View role=\"signup\" className={style.container}>\n <View wide className={style.header}>\n <Text bold headline level={2}>\n {translate(L10N.TITLE, { clubName: club.name })}\n </Text>\n <Text className={style.description}>{translate(L10N.DESCRIPTION, { clubName: club.name })}</Text>\n </View>\n\n {hasRequiredFields && <NotificationRequiredFields form=\"signup\" values={requiredFields} />}\n\n {!response && (\n <Form\n validateOnMount\n onChange={setForm}\n onError={setFormError}\n testId={others.testId}\n className={styles(style.form, others.className)}\n >\n <TextRequiredFields />\n <InputText\n id=\"signup-firstName\"\n name=\"firstName\"\n label={translate(L10N.FIRSTNAME_LABEL)}\n required\n showRequired\n success={form.firstName?.length && !formError.firstName}\n value={form.firstName}\n />\n <InputText\n id=\"signup-lastName\"\n name=\"lastName\"\n label={translate(L10N.LASTNAME_LABEL)}\n required\n showRequired\n success={form.lastName?.length && !formError.lastName}\n value={form.lastName}\n />\n <InputText\n id=\"signup-email\"\n name=\"email\"\n error={form.email?.length && !!formError.email}\n label={translate(L10N.EMAIL_LABEL)}\n required\n showRequired\n success={form.email?.length && !formError.email}\n type=\"email\"\n value={form.email}\n />\n <InputDate\n id=\"signup-dateOfBirth\"\n name=\"dateOfBirth\"\n error={form.dateOfBirth?.length && !!formError.dateOfBirth}\n hint={\n form.dateOfBirth?.length && formError.dateOfBirth?.max ? translate(L10N.DATEOFBIRTH_ERROR) : undefined\n }\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?.length && !formError.dateOfBirth}\n type=\"inputDate\"\n value={form.dateOfBirth}\n />\n <InputSelect\n id=\"signup-country\"\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={form.country?.length && !formError.country}\n value={form.country}\n />\n <InputText\n id=\"signup-password\"\n name=\"password\"\n error={form.password?.length && formError.password?.test}\n hint={translate(L10N.PASSWORD_HINT)}\n label={translate(L10N.PASSWORD_LABEL)}\n required\n showRequired\n success={form.password?.length && !formError.password}\n test={testPassword}\n type=\"password\"\n value={form.password}\n />\n\n <InputOption\n name=\"subscribed\"\n checked={form.subscribed}\n label={translate(L10N.SUBSCRIBED_LABEL)}\n small\n value={form.subscribed}\n />\n <InputOption\n id=\"signup-privacy\"\n name=\"privacy\"\n checked={form.privacy}\n label={translate(L10N.PRIVACY_LABEL, {\n clubName: club.name || '$club',\n conditionsLink: (\n <Action inline href={club.url?.conditions} target=\"_blank\" rel=\"noreferrer\" small>\n {translate(L10N.PRIVACY_CONDITIONS_LINK)}\n </Action>\n ),\n privacyPolicyLink: (\n <Action inline href={club.url?.privacy} target=\"_blank\" rel=\"noreferrer\" small>\n {translate(L10N.PRIVACY_POLICY_LINK)}\n </Action>\n ),\n })}\n required\n showRequired\n small\n value={form.privacy}\n className={style.privacy}\n />\n\n {!busy && responseError && (\n <Notification error className={style.notification}>\n {translate(L10N.NOTIFICATION_ERROR)}\n </Notification>\n )}\n\n <Button busy={busy} large wide onPress={handleSubmit} className={style.button}>\n {translate(L10N.CTA)}\n </Button>\n </Form>\n )}\n\n {!busy && response && (\n <Notification large success className={style.notification}>\n <Text bold>{translate(L10N.SUCCESS_TITLE)}</Text>\n <Text>{translate(L10N.SUCCESS_MESSAGE)}</Text>\n </Notification>\n )}\n </View>\n );\n};\n\nSignup.displayName = 'Mirai:Core:Signup';\n\nSignup.propTypes = {};\n\nexport { Signup };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AAaA,IAAAI,MAAA,GAAAC,uBAAA,CAAAL,OAAA;AAEA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAF,uBAAA,CAAAL,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAA0D,SAAAU,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAE1D,MAAMY,MAAM,GAAIC,MAAM,IAAK;EAAA,IAAAC,eAAA,EAAAC,cAAA,EAAAC,WAAA,EAAAC,YAAA,EAAAC,iBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,aAAA,EAAAC,cAAA,EAAAC,mBAAA,EAAAC,eAAA,EAAAC,SAAA,EAAAC,UAAA;EACzB,MAAM;IACJhB,GAAG;IACHiB,KAAK,EAAE;MAAEC,IAAI,GAAG,CAAC,CAAC;MAAEC,KAAK,GAAG,CAAC;IAAE;EACjC,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EACd,MAAM;IAAEC,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EAEzC,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACvC,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAF,eAAQ,EAAC,CAAC,CAAC,CAAC;EAC9C,MAAM,CAACG,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAJ,eAAQ,EAAC;IAAEK,UAAU,EAAE;EAAK,CAAC,CAAC;EACtD,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAP,eAAQ,EAAC,CAAC,CAAC,CAAC;EAC9C,MAAM,CAACQ,cAAc,EAAEC,iBAAiB,CAAC,GAAG,IAAAT,eAAQ,EAAC,CAAC;EACtD,MAAM,CAACU,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAX,eAAQ,EAAC,CAAC;EAC1C,MAAM,CAACY,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAb,eAAQ,EAAC,CAAC;EAEpD,MAAM,CAACc,QAAQ,EAAEC,OAAO,CAAC,GAAGpB,MAAM,CAACqB,KAAK,CAAC,GAAG,CAAC;EAC7C,MAAMC,UAAU,GAAG,IAAAC,qBAAa,EAACvB,MAAM,CAAC;EAExC,IAAAwB,gBAAS,EAAC,MAAM;IACd7C,GAAG,CAAC;MAAE8C,MAAM,EAAEjB;IAAK,CAAC,CAAC;IACrB;EACF,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IAAAgB,gBAAS,EAAC,MAAM;IACd,CAAC,YAAY;MACX,MAAME,IAAI,GAAG,CAAC,MAAMC,wBAAc,CAACC,IAAI,CAAC5B,MAAM,CAAC,KAAK,CAAC,CAAC;MAEtDO,YAAY,CAACmB,IAAI,CAAC;MAClBjB,OAAO,CAAC;QAAE,GAAGD,IAAI;QAAEY,OAAO,EAAEM,IAAI,CAACN,OAAO;MAAE,CAAC,CAAC;IAC9C,CAAC,EAAE,CAAC;;IAEJ;EACF,CAAC,EAAE,CAACpB,MAAM,CAAC,CAAC;EAEZ,MAAM6B,YAAY,GAAG,MAAAA,CAAA,KAAY;IAC/B,MAAMC,SAAS,GAAG3D,MAAM,CAAC4D,IAAI,CAACpB,SAAS,CAAC,CAACqB,MAAM,KAAK,CAAC;IACrD,IAAIF,SAAS,EAAE;MACbG,MAAM,CAACC,QAAQ,CAAC;QAAEC,GAAG,EAAE,CAAC;QAAEC,QAAQ,EAAE;MAAS,CAAC,CAAC;MAC/C,OAAOtB,iBAAiB,CAACH,SAAS,CAAC;IACrC;IAEAP,OAAO,CAAC,IAAI,CAAC;IACbU,iBAAiB,CAAC,CAAC;IACnBI,gBAAgB,CAACmB,SAAS,CAAC;IAE3B,MAAMtB,QAAQ,GAAG,MAAMuB,qBAAW,CAACb,MAAM,CAAC;MACxC,GAAGjB,IAAI;MACPY,OAAO,EAAE,IAAAmB,uBAAc,EAAC/B,IAAI,CAACY,OAAO,EAAEd,SAAS,CAAC;MAChDkC,WAAW,EAAE,IAAAC,kBAAU,EAAC,IAAAC,iBAAS,EAAClC,IAAI,CAACgC,WAAW,EAAElB,UAAU,CAAC,EAAE;QAAEqB,MAAM,EAAE;MAAa,CAAC,CAAC;MAC1FC,MAAM,EAAE/C,IAAI,CAACgD,EAAE;MACfC,OAAO,EAAEhD,KAAK,CAAC+C,EAAE;MACjB1B;IACF,CAAC,CAAC,CAAC4B,KAAK,CAAEC,KAAK,IAAK;MAClB9B,gBAAgB,CAAC8B,KAAK,CAAC;IACzB,CAAC,CAAC;IAEFhC,WAAW,CAACD,QAAQ,CAAC;IACrBX,OAAO,CAAC,KAAK,CAAC;EAChB,CAAC;EAED,MAAM6C,iBAAiB,GAAG9E,MAAM,CAAC4D,IAAI,CAAClB,cAAc,IAAI,CAAC,CAAC,CAAC,CAACmB,MAAM,GAAG,CAAC;EAEtE,oBACE/E,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAmG,IAAI;IAACC,IAAI,EAAC,QAAQ;IAACC,SAAS,EAAEjG,KAAK,CAACkG;EAAU,gBAC7CrG,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAmG,IAAI;IAACI,IAAI;IAACF,SAAS,EAAEjG,KAAK,CAACoG;EAAO,gBACjCvG,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAyG,IAAI;IAACC,IAAI;IAACC,QAAQ;IAACC,KAAK,EAAE;EAAE,GAC1B3D,SAAS,CAAC4D,YAAI,CAACC,KAAK,EAAE;IAAEC,QAAQ,EAAElE,IAAI,CAACmE;EAAK,CAAC,CAC1C,CAAC,eACP/G,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAyG,IAAI;IAACJ,SAAS,EAAEjG,KAAK,CAAC6G;EAAY,GAAEhE,SAAS,CAAC4D,YAAI,CAACK,WAAW,EAAE;IAAEH,QAAQ,EAAElE,IAAI,CAACmE;EAAK,CAAC,CAAQ,CAC5F,CAAC,EAENf,iBAAiB,iBAAIhG,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAC7F,SAAA,CAAA8G,0BAA0B;IAAC3D,IAAI,EAAC,QAAQ;IAAC4D,MAAM,EAAEvD;EAAe,CAAE,CAAC,EAEzF,CAACE,QAAQ,iBACR9D,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAqH,IAAI;IACHC,eAAe;IACfC,QAAQ,EAAE9D,OAAQ;IAClB+D,OAAO,EAAE5D,YAAa;IACtB6D,MAAM,EAAE5F,MAAM,CAAC4F,MAAO;IACtBpB,SAAS,EAAE,IAAAqB,UAAM,EAACtH,KAAK,CAACoD,IAAI,EAAE3B,MAAM,CAACwE,SAAS;EAAE,gBAEhDpG,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAC7F,SAAA,CAAAsH,kBAAkB,MAAE,CAAC,eACtB1H,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAA4H,SAAS;IACR/B,EAAE,EAAC,kBAAkB;IACrBmB,IAAI,EAAC,WAAW;IAChBa,KAAK,EAAE5E,SAAS,CAAC4D,YAAI,CAACiB,eAAe,CAAE;IACvCC,QAAQ;IACRC,YAAY;IACZC,OAAO,EAAE,EAAAnG,eAAA,GAAA0B,IAAI,CAAC0E,SAAS,cAAApG,eAAA,uBAAdA,eAAA,CAAgBkD,MAAM,KAAI,CAACrB,SAAS,CAACuE,SAAU;IACxDtF,KAAK,EAAEY,IAAI,CAAC0E;EAAU,CACvB,CAAC,eACFjI,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAA4H,SAAS;IACR/B,EAAE,EAAC,iBAAiB;IACpBmB,IAAI,EAAC,UAAU;IACfa,KAAK,EAAE5E,SAAS,CAAC4D,YAAI,CAACsB,cAAc,CAAE;IACtCJ,QAAQ;IACRC,YAAY;IACZC,OAAO,EAAE,EAAAlG,cAAA,GAAAyB,IAAI,CAAC4E,QAAQ,cAAArG,cAAA,uBAAbA,cAAA,CAAeiD,MAAM,KAAI,CAACrB,SAAS,CAACyE,QAAS;IACtDxF,KAAK,EAAEY,IAAI,CAAC4E;EAAS,CACtB,CAAC,eACFnI,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAA4H,SAAS;IACR/B,EAAE,EAAC,cAAc;IACjBmB,IAAI,EAAC,OAAO;IACZhB,KAAK,EAAE,EAAAhE,WAAA,GAAAwB,IAAI,CAAC6E,KAAK,cAAArG,WAAA,uBAAVA,WAAA,CAAYgD,MAAM,KAAI,CAAC,CAACrB,SAAS,CAAC0E,KAAM;IAC/CR,KAAK,EAAE5E,SAAS,CAAC4D,YAAI,CAACyB,WAAW,CAAE;IACnCP,QAAQ;IACRC,YAAY;IACZC,OAAO,EAAE,EAAAhG,YAAA,GAAAuB,IAAI,CAAC6E,KAAK,cAAApG,YAAA,uBAAVA,YAAA,CAAY+C,MAAM,KAAI,CAACrB,SAAS,CAAC0E,KAAM;IAChDE,IAAI,EAAC,OAAO;IACZ3F,KAAK,EAAEY,IAAI,CAAC6E;EAAM,CACnB,CAAC,eACFpI,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAwI,SAAS;IACR3C,EAAE,EAAC,oBAAoB;IACvBmB,IAAI,EAAC,aAAa;IAClBhB,KAAK,EAAE,EAAA9D,iBAAA,GAAAsB,IAAI,CAACgC,WAAW,cAAAtD,iBAAA,uBAAhBA,iBAAA,CAAkB8C,MAAM,KAAI,CAAC,CAACrB,SAAS,CAAC6B,WAAY;IAC3DiD,IAAI,EACF,CAAAtG,kBAAA,GAAAqB,IAAI,CAACgC,WAAW,cAAArD,kBAAA,eAAhBA,kBAAA,CAAkB6C,MAAM,KAAA5C,qBAAA,GAAIuB,SAAS,CAAC6B,WAAW,cAAApD,qBAAA,eAArBA,qBAAA,CAAuBsG,GAAG,GAAGzF,SAAS,CAAC4D,YAAI,CAAC8B,iBAAiB,CAAC,GAAGtD,SAC9F;IACDM,MAAM,EAAErB,UAAW;IACnBuD,KAAK,EAAE5E,SAAS,CAAC4D,YAAI,CAAC+B,iBAAiB,CAAE;IACzCF,GAAG,EAAE,IAAAjD,kBAAU,EAAC,IAAAoD,gBAAQ,EAAC,IAAIC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE;MAAEnD,MAAM,EAAErB;IAAW,CAAC,CAAE;IAC5EyD,QAAQ;IACRC,YAAY;IACZC,OAAO,EAAE,EAAA5F,kBAAA,GAAAmB,IAAI,CAACgC,WAAW,cAAAnD,kBAAA,uBAAhBA,kBAAA,CAAkB2C,MAAM,KAAI,CAACrB,SAAS,CAAC6B,WAAY;IAC5D+C,IAAI,EAAC,WAAW;IAChB3F,KAAK,EAAEY,IAAI,CAACgC;EAAY,CACzB,CAAC,eACFvF,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAA+I,WAAW;IACVlD,EAAE,EAAC,gBAAgB;IACnBmB,IAAI,EAAC,SAAS;IACda,KAAK,EAAE5E,SAAS,CAAC4D,YAAI,CAACmC,aAAa,CAAE;IACrCC,WAAW,EAAEhG,SAAS,CAAC4D,YAAI,CAACqC,mBAAmB,CAAE;IACjDC,OAAO,EAAEhI,MAAM,CAACiG,MAAM,CAAC9D,SAAS,CAAE;IAClCyE,QAAQ;IACRC,YAAY;IACZC,OAAO,EAAE,EAAA3F,aAAA,GAAAkB,IAAI,CAACY,OAAO,cAAA9B,aAAA,uBAAZA,aAAA,CAAc0C,MAAM,KAAI,CAACrB,SAAS,CAACS,OAAQ;IACpDxB,KAAK,EAAEY,IAAI,CAACY;EAAQ,CACrB,CAAC,eACFnE,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAA4H,SAAS;IACR/B,EAAE,EAAC,iBAAiB;IACpBmB,IAAI,EAAC,UAAU;IACfhB,KAAK,EAAE,EAAAzD,cAAA,GAAAiB,IAAI,CAAC4F,QAAQ,cAAA7G,cAAA,uBAAbA,cAAA,CAAeyC,MAAM,OAAAxC,mBAAA,GAAImB,SAAS,CAACyF,QAAQ,cAAA5G,mBAAA,uBAAlBA,mBAAA,CAAoB6G,IAAI,CAAC;IACzDZ,IAAI,EAAExF,SAAS,CAAC4D,YAAI,CAACyC,aAAa,CAAE;IACpCzB,KAAK,EAAE5E,SAAS,CAAC4D,YAAI,CAAC0C,cAAc,CAAE;IACtCxB,QAAQ;IACRC,YAAY;IACZC,OAAO,EAAE,EAAAxF,eAAA,GAAAe,IAAI,CAAC4F,QAAQ,cAAA3G,eAAA,uBAAbA,eAAA,CAAeuC,MAAM,KAAI,CAACrB,SAAS,CAACyF,QAAS;IACtDC,IAAI,EAAEG,qBAAa;IACnBjB,IAAI,EAAC,UAAU;IACf3F,KAAK,EAAEY,IAAI,CAAC4F;EAAS,CACtB,CAAC,eAEFnJ,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAyJ,WAAW;IACVzC,IAAI,EAAC,YAAY;IACjB0C,OAAO,EAAElG,IAAI,CAACE,UAAW;IACzBmE,KAAK,EAAE5E,SAAS,CAAC4D,YAAI,CAAC8C,gBAAgB,CAAE;IACxCC,KAAK;IACLhH,KAAK,EAAEY,IAAI,CAACE;EAAW,CACxB,CAAC,eACFzD,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAyJ,WAAW;IACV5D,EAAE,EAAC,gBAAgB;IACnBmB,IAAI,EAAC,SAAS;IACd0C,OAAO,EAAElG,IAAI,CAACqG,OAAQ;IACtBhC,KAAK,EAAE5E,SAAS,CAAC4D,YAAI,CAACiD,aAAa,EAAE;MACnC/C,QAAQ,EAAElE,IAAI,CAACmE,IAAI,IAAI,OAAO;MAC9B+C,cAAc,eACZ9J,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAgK,MAAM;QAACC,MAAM;QAACC,IAAI,GAAAxH,SAAA,GAAEG,IAAI,CAACsH,GAAG,cAAAzH,SAAA,uBAARA,SAAA,CAAU0H,UAAW;QAACC,MAAM,EAAC,QAAQ;QAACC,GAAG,EAAC,YAAY;QAACV,KAAK;MAAA,GAC9E3G,SAAS,CAAC4D,YAAI,CAAC0D,uBAAuB,CACjC,CACT;MACDC,iBAAiB,eACfvK,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAgK,MAAM;QAACC,MAAM;QAACC,IAAI,GAAAvH,UAAA,GAAEE,IAAI,CAACsH,GAAG,cAAAxH,UAAA,uBAARA,UAAA,CAAUkH,OAAQ;QAACQ,MAAM,EAAC,QAAQ;QAACC,GAAG,EAAC,YAAY;QAACV,KAAK;MAAA,GAC3E3G,SAAS,CAAC4D,YAAI,CAAC4D,mBAAmB,CAC7B;IAEZ,CAAC,CAAE;IACH1C,QAAQ;IACRC,YAAY;IACZ4B,KAAK;IACLhH,KAAK,EAAEY,IAAI,CAACqG,OAAQ;IACpBxD,SAAS,EAAEjG,KAAK,CAACyJ;EAAQ,CAC1B,CAAC,EAED,CAAC1G,IAAI,IAAIc,aAAa,iBACrBhE,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAA0K,YAAY;IAAC1E,KAAK;IAACK,SAAS,EAAEjG,KAAK,CAACuK;EAAa,GAC/C1H,SAAS,CAAC4D,YAAI,CAAC+D,kBAAkB,CACtB,CACf,eAED3K,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAA6K,MAAM;IAAC1H,IAAI,EAAEA,IAAK;IAAC2H,KAAK;IAACvE,IAAI;IAACwE,OAAO,EAAElG,YAAa;IAACwB,SAAS,EAAEjG,KAAK,CAAC4K;EAAO,GAC3E/H,SAAS,CAAC4D,YAAI,CAACoE,GAAG,CACb,CACJ,CACP,EAEA,CAAC9H,IAAI,IAAIY,QAAQ,iBAChB9D,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAA0K,YAAY;IAACI,KAAK;IAAC7C,OAAO;IAAC5B,SAAS,EAAEjG,KAAK,CAACuK;EAAa,gBACxD1K,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAyG,IAAI;IAACC,IAAI;EAAA,GAAEzD,SAAS,CAAC4D,YAAI,CAACqE,aAAa,CAAQ,CAAC,eACjDjL,MAAA,CAAAY,OAAA,CAAAqF,aAAA,CAAClG,GAAA,CAAAyG,IAAI,QAAExD,SAAS,CAAC4D,YAAI,CAACsE,eAAe,CAAQ,CACjC,CAEZ,CAAC;AAEX,CAAC;AAACC,OAAA,CAAAxJ,MAAA,GAAAA,MAAA;AAEFA,MAAM,CAACyJ,WAAW,GAAG,mBAAmB;AAExCzJ,MAAM,CAAC0J,SAAS,GAAG,CAAC,CAAC"}
@@ -1,3 +1,7 @@
1
+ html {
2
+ scroll-behavior: smooth;
3
+ }
4
+
1
5
  .button {
2
6
  margin-top: var(--mirai-ui-space-L);
3
7
  }
@@ -51,6 +51,7 @@ exports[`component:<Signup> inherit:className 1`] = `
51
51
  </span>
52
52
  <input
53
53
  class="input input withLabel"
54
+ id="signup-firstName"
54
55
  name="firstName"
55
56
  required=""
56
57
  type="text"
@@ -80,6 +81,7 @@ exports[`component:<Signup> inherit:className 1`] = `
80
81
  </span>
81
82
  <input
82
83
  class="input input withLabel"
84
+ id="signup-lastName"
83
85
  name="lastName"
84
86
  required=""
85
87
  type="text"
@@ -109,6 +111,7 @@ exports[`component:<Signup> inherit:className 1`] = `
109
111
  </span>
110
112
  <input
111
113
  class="input input withLabel"
114
+ id="signup-email"
112
115
  name="email"
113
116
  required=""
114
117
  type="email"
@@ -138,6 +141,7 @@ exports[`component:<Signup> inherit:className 1`] = `
138
141
  </span>
139
142
  <input
140
143
  class="input input withLabel"
144
+ id="signup-dateOfBirth"
141
145
  maxlength="10"
142
146
  name="dateOfBirth"
143
147
  placeholder="DD/MM/YYYY"
@@ -169,6 +173,7 @@ exports[`component:<Signup> inherit:className 1`] = `
169
173
  </span>
170
174
  <select
171
175
  class="select empty input withLabel empty"
176
+ id="signup-country"
172
177
  name="country"
173
178
  placeholder="common.label.select"
174
179
  required=""
@@ -219,6 +224,7 @@ exports[`component:<Signup> inherit:className 1`] = `
219
224
  </span>
220
225
  <input
221
226
  class="input input withLabel"
227
+ id="signup-password"
222
228
  name="password"
223
229
  required=""
224
230
  type="password"
@@ -301,6 +307,7 @@ exports[`component:<Signup> inherit:className 1`] = `
301
307
  </div>
302
308
  <div
303
309
  class="pressable inputOption"
310
+ id="signup-privacy"
304
311
  >
305
312
  <div
306
313
  class="checkbox"
@@ -324,9 +331,7 @@ exports[`component:<Signup> inherit:className 1`] = `
324
331
  </span>
325
332
  </div>
326
333
  <button
327
- class="pressable disabled button large disabled wide"
328
- disabled=""
329
- type="submit"
334
+ class="pressable button large wide"
330
335
  >
331
336
  <div
332
337
  class="view busyContainer"
@@ -395,6 +400,7 @@ exports[`component:<Signup> renders 1`] = `
395
400
  </span>
396
401
  <input
397
402
  class="input input withLabel"
403
+ id="signup-firstName"
398
404
  name="firstName"
399
405
  required=""
400
406
  type="text"
@@ -424,6 +430,7 @@ exports[`component:<Signup> renders 1`] = `
424
430
  </span>
425
431
  <input
426
432
  class="input input withLabel"
433
+ id="signup-lastName"
427
434
  name="lastName"
428
435
  required=""
429
436
  type="text"
@@ -453,6 +460,7 @@ exports[`component:<Signup> renders 1`] = `
453
460
  </span>
454
461
  <input
455
462
  class="input input withLabel"
463
+ id="signup-email"
456
464
  name="email"
457
465
  required=""
458
466
  type="email"
@@ -482,6 +490,7 @@ exports[`component:<Signup> renders 1`] = `
482
490
  </span>
483
491
  <input
484
492
  class="input input withLabel"
493
+ id="signup-dateOfBirth"
485
494
  maxlength="10"
486
495
  name="dateOfBirth"
487
496
  placeholder="DD/MM/YYYY"
@@ -513,6 +522,7 @@ exports[`component:<Signup> renders 1`] = `
513
522
  </span>
514
523
  <select
515
524
  class="select empty input withLabel empty"
525
+ id="signup-country"
516
526
  name="country"
517
527
  placeholder="common.label.select"
518
528
  required=""
@@ -563,6 +573,7 @@ exports[`component:<Signup> renders 1`] = `
563
573
  </span>
564
574
  <input
565
575
  class="input input withLabel"
576
+ id="signup-password"
566
577
  name="password"
567
578
  required=""
568
579
  type="password"
@@ -645,6 +656,7 @@ exports[`component:<Signup> renders 1`] = `
645
656
  </div>
646
657
  <div
647
658
  class="pressable inputOption"
659
+ id="signup-privacy"
648
660
  >
649
661
  <div
650
662
  class="checkbox"
@@ -668,9 +680,7 @@ exports[`component:<Signup> renders 1`] = `
668
680
  </span>
669
681
  </div>
670
682
  <button
671
- class="pressable disabled button large disabled wide"
672
- disabled=""
673
- type="submit"
683
+ class="pressable button large wide"
674
684
  >
675
685
  <div
676
686
  class="view busyContainer"
@@ -741,6 +751,7 @@ exports[`component:<Signup> testID 1`] = `
741
751
  </span>
742
752
  <input
743
753
  class="input input withLabel"
754
+ id="signup-firstName"
744
755
  name="firstName"
745
756
  required=""
746
757
  type="text"
@@ -770,6 +781,7 @@ exports[`component:<Signup> testID 1`] = `
770
781
  </span>
771
782
  <input
772
783
  class="input input withLabel"
784
+ id="signup-lastName"
773
785
  name="lastName"
774
786
  required=""
775
787
  type="text"
@@ -799,6 +811,7 @@ exports[`component:<Signup> testID 1`] = `
799
811
  </span>
800
812
  <input
801
813
  class="input input withLabel"
814
+ id="signup-email"
802
815
  name="email"
803
816
  required=""
804
817
  type="email"
@@ -828,6 +841,7 @@ exports[`component:<Signup> testID 1`] = `
828
841
  </span>
829
842
  <input
830
843
  class="input input withLabel"
844
+ id="signup-dateOfBirth"
831
845
  maxlength="10"
832
846
  name="dateOfBirth"
833
847
  placeholder="DD/MM/YYYY"
@@ -859,6 +873,7 @@ exports[`component:<Signup> testID 1`] = `
859
873
  </span>
860
874
  <select
861
875
  class="select empty input withLabel empty"
876
+ id="signup-country"
862
877
  name="country"
863
878
  placeholder="common.label.select"
864
879
  required=""
@@ -909,6 +924,7 @@ exports[`component:<Signup> testID 1`] = `
909
924
  </span>
910
925
  <input
911
926
  class="input input withLabel"
927
+ id="signup-password"
912
928
  name="password"
913
929
  required=""
914
930
  type="password"
@@ -991,6 +1007,7 @@ exports[`component:<Signup> testID 1`] = `
991
1007
  </div>
992
1008
  <div
993
1009
  class="pressable inputOption"
1010
+ id="signup-privacy"
994
1011
  >
995
1012
  <div
996
1013
  class="checkbox"
@@ -1014,9 +1031,7 @@ exports[`component:<Signup> testID 1`] = `
1014
1031
  </span>
1015
1032
  </div>
1016
1033
  <button
1017
- class="pressable disabled button large disabled wide"
1018
- disabled=""
1019
- type="submit"
1034
+ class="pressable button large wide"
1020
1035
  >
1021
1036
  <div
1022
1037
  class="view busyContainer"
@@ -16,6 +16,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
16
16
  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); }
17
17
  const NotificationRequiredFields = _ref => {
18
18
  let {
19
+ form = 'form',
19
20
  values = {},
20
21
  ...others
21
22
  } = _ref;
@@ -25,7 +26,7 @@ const NotificationRequiredFields = _ref => {
25
26
  const {
26
27
  translate
27
28
  } = (0, _locale.useLocale)();
28
- return /*#__PURE__*/_react.default.createElement(_ui.Notification, _extends({}, others, {
29
+ return Object.keys(values).length ? /*#__PURE__*/_react.default.createElement(_ui.Notification, _extends({}, others, {
29
30
  error: true,
30
31
  small: isMobile,
31
32
  wide: true
@@ -34,17 +35,18 @@ const NotificationRequiredFields = _ref => {
34
35
  wide: true,
35
36
  className: style.fields
36
37
  }, Object.keys(values).map(field => /*#__PURE__*/_react.default.createElement(_ui.Action, {
37
- href: "#checkout-".concat(field),
38
+ href: "#".concat(form, "-").concat(field),
38
39
  inline: true,
39
40
  key: field,
40
41
  markdown: false,
41
42
  underlined: true,
42
43
  small: true
43
- }, _NotificationRequiredFields.L10N["LABEL_".concat(field.toUpperCase())] ? translate(_NotificationRequiredFields.L10N["LABEL_".concat(field.toUpperCase())]) : field))));
44
+ }, _NotificationRequiredFields.L10N["LABEL_".concat(field.toUpperCase())] ? translate(_NotificationRequiredFields.L10N["LABEL_".concat(field.toUpperCase())]) : field)))) : null;
44
45
  };
45
46
  exports.NotificationRequiredFields = NotificationRequiredFields;
46
47
  NotificationRequiredFields.displayName = 'Mirai:Core:NotificationRequiredFields';
47
48
  NotificationRequiredFields.propTypes = {
49
+ form: _propTypes.default.string,
48
50
  values: _propTypes.default.shape({})
49
51
  };
50
52
  //# sourceMappingURL=NotificationRequiredFields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationRequiredFields.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_NotificationRequiredFields","style","_interopRequireWildcard","_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","NotificationRequiredFields","_ref","values","others","isMobile","useDevice","translate","useLocale","createElement","Notification","error","small","wide","L10N","NOTIFICATION_REQUIRED_FIELDS","View","row","className","fields","keys","map","field","Action","href","concat","inline","markdown","underlined","toUpperCase","exports","displayName","propTypes","PropTypes","shape"],"sources":["../../../../src/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Action, Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './NotificationRequiredFields.l10n';\nimport * as style from './NotificationRequiredFields.module.css';\n\nconst NotificationRequiredFields = ({ values = {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n return (\n <Notification {...others} error small={isMobile} wide>\n {translate(L10N.NOTIFICATION_REQUIRED_FIELDS)}\n <View row wide className={style.fields}>\n {Object.keys(values).map((field) => (\n <Action href={`#checkout-${field}`} inline key={field} markdown={false} underlined small>\n {L10N[`LABEL_${field.toUpperCase()}`] ? translate(L10N[`LABEL_${field.toUpperCase()}`]) : field}\n </Action>\n ))}\n </View>\n </Notification>\n );\n};\n\nNotificationRequiredFields.displayName = 'Mirai:Core:NotificationRequiredFields';\n\nNotificationRequiredFields.propTypes = {\n values: PropTypes.shape({}),\n};\n\nexport { NotificationRequiredFields };\n"],"mappings":"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"}
1
+ {"version":3,"file":"NotificationRequiredFields.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_NotificationRequiredFields","style","_interopRequireWildcard","_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","NotificationRequiredFields","_ref","form","values","others","isMobile","useDevice","translate","useLocale","keys","createElement","Notification","error","small","wide","L10N","NOTIFICATION_REQUIRED_FIELDS","View","row","className","fields","map","field","Action","href","concat","inline","markdown","underlined","toUpperCase","exports","displayName","propTypes","PropTypes","string","shape"],"sources":["../../../../src/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Action, Notification, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './NotificationRequiredFields.l10n';\nimport * as style from './NotificationRequiredFields.module.css';\n\nconst NotificationRequiredFields = ({ form = 'form', values = {}, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n\n return Object.keys(values).length ? (\n <Notification {...others} error small={isMobile} wide>\n {translate(L10N.NOTIFICATION_REQUIRED_FIELDS)}\n <View row wide className={style.fields}>\n {Object.keys(values).map((field) => (\n <Action href={`#${form}-${field}`} inline key={field} markdown={false} underlined small>\n {L10N[`LABEL_${field.toUpperCase()}`] ? translate(L10N[`LABEL_${field.toUpperCase()}`]) : field}\n </Action>\n ))}\n </View>\n </Notification>\n ) : null;\n};\n\nNotificationRequiredFields.displayName = 'Mirai:Core:NotificationRequiredFields';\n\nNotificationRequiredFields.propTypes = {\n form: PropTypes.string,\n values: PropTypes.shape({}),\n};\n\nexport { NotificationRequiredFields };\n"],"mappings":"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"}
@@ -14,6 +14,10 @@ const L10N = exports.L10N = {
14
14
  LABEL_CVV: {
15
15
  id: 'payments.label.cvv'
16
16
  },
17
+ LABEL_DATEOFBIRTH: {
18
+ id: 'user.label.date_of_birth',
19
+ defaultMessage: ' '
20
+ },
17
21
  LABEL_DNI: {
18
22
  id: 'common.label.id_card'
19
23
  },
@@ -35,9 +39,16 @@ const L10N = exports.L10N = {
35
39
  LABEL_NAME: {
36
40
  id: 'payments.label.card_name'
37
41
  },
42
+ LABEL_PASSWORD: {
43
+ id: 'common.label.password',
44
+ defaultMessage: ' '
45
+ },
38
46
  LABEL_PHONE: {
39
47
  id: 'common.label.phone'
40
48
  },
49
+ LABEL_PRIVACY: {
50
+ id: 'common.label.privacy_policy'
51
+ },
41
52
  LABEL_PRIVACYPOLICY: {
42
53
  id: 'common.label.privacy_policy'
43
54
  },
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationRequiredFields.l10n.js","names":["L10N","exports","LABEL_CARD","id","LABEL_COUNTRY","LABEL_CVV","LABEL_DNI","LABEL_EMAIL","LABEL_EXPIRE","LABEL_FIRSTNAME","LABEL_JOINCLUB","LABEL_LASTNAME","LABEL_NAME","LABEL_PHONE","LABEL_PRIVACYPOLICY","LABEL_SECONDLASTNAME","NOTIFICATION_REQUIRED_FIELDS"],"sources":["../../../../src/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.l10n.js"],"sourcesContent":["export const L10N = {\n LABEL_CARD: { id: 'payments.label.card_number' },\n LABEL_COUNTRY: { id: 'common.label.country' },\n LABEL_CVV: { id: 'payments.label.cvv' },\n LABEL_DNI: { id: 'common.label.id_card' },\n LABEL_EMAIL: { id: 'common.label.email' },\n LABEL_EXPIRE: { id: 'payments.label.expiration' },\n LABEL_FIRSTNAME: { id: 'common.label.firstname' },\n LABEL_JOINCLUB: { id: 'common.label.member_conditions' },\n LABEL_LASTNAME: { id: 'common.label.lastname' },\n LABEL_NAME: { id: 'payments.label.card_name' },\n LABEL_PHONE: { id: 'common.label.phone' },\n LABEL_PRIVACYPOLICY: { id: 'common.label.privacy_policy' },\n LABEL_SECONDLASTNAME: { id: 'common.label.second_lastname' },\n\n NOTIFICATION_REQUIRED_FIELDS: { id: 'user.notification.required_fields' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,UAAU,EAAE;IAAEC,EAAE,EAAE;EAA6B,CAAC;EAChDC,aAAa,EAAE;IAAED,EAAE,EAAE;EAAuB,CAAC;EAC7CE,SAAS,EAAE;IAAEF,EAAE,EAAE;EAAqB,CAAC;EACvCG,SAAS,EAAE;IAAEH,EAAE,EAAE;EAAuB,CAAC;EACzCI,WAAW,EAAE;IAAEJ,EAAE,EAAE;EAAqB,CAAC;EACzCK,YAAY,EAAE;IAAEL,EAAE,EAAE;EAA4B,CAAC;EACjDM,eAAe,EAAE;IAAEN,EAAE,EAAE;EAAyB,CAAC;EACjDO,cAAc,EAAE;IAAEP,EAAE,EAAE;EAAiC,CAAC;EACxDQ,cAAc,EAAE;IAAER,EAAE,EAAE;EAAwB,CAAC;EAC/CS,UAAU,EAAE;IAAET,EAAE,EAAE;EAA2B,CAAC;EAC9CU,WAAW,EAAE;IAAEV,EAAE,EAAE;EAAqB,CAAC;EACzCW,mBAAmB,EAAE;IAAEX,EAAE,EAAE;EAA8B,CAAC;EAC1DY,oBAAoB,EAAE;IAAEZ,EAAE,EAAE;EAA+B,CAAC;EAE5Da,4BAA4B,EAAE;IAAEb,EAAE,EAAE;EAAoC;AAC1E,CAAC"}
1
+ {"version":3,"file":"NotificationRequiredFields.l10n.js","names":["L10N","exports","LABEL_CARD","id","LABEL_COUNTRY","LABEL_CVV","LABEL_DATEOFBIRTH","defaultMessage","LABEL_DNI","LABEL_EMAIL","LABEL_EXPIRE","LABEL_FIRSTNAME","LABEL_JOINCLUB","LABEL_LASTNAME","LABEL_NAME","LABEL_PASSWORD","LABEL_PHONE","LABEL_PRIVACY","LABEL_PRIVACYPOLICY","LABEL_SECONDLASTNAME","NOTIFICATION_REQUIRED_FIELDS"],"sources":["../../../../src/components/__shared__/NotificationRequiredFields/NotificationRequiredFields.l10n.js"],"sourcesContent":["export const L10N = {\n LABEL_CARD: { id: 'payments.label.card_number' },\n LABEL_COUNTRY: { id: 'common.label.country' },\n LABEL_CVV: { id: 'payments.label.cvv' },\n LABEL_DATEOFBIRTH: { id: 'user.label.date_of_birth', defaultMessage: ' ' },\n LABEL_DNI: { id: 'common.label.id_card' },\n LABEL_EMAIL: { id: 'common.label.email' },\n LABEL_EXPIRE: { id: 'payments.label.expiration' },\n LABEL_FIRSTNAME: { id: 'common.label.firstname' },\n LABEL_JOINCLUB: { id: 'common.label.member_conditions' },\n LABEL_LASTNAME: { id: 'common.label.lastname' },\n LABEL_NAME: { id: 'payments.label.card_name' },\n LABEL_PASSWORD: { id: 'common.label.password', defaultMessage: ' ' },\n LABEL_PHONE: { id: 'common.label.phone' },\n LABEL_PRIVACY: { id: 'common.label.privacy_policy' },\n LABEL_PRIVACYPOLICY: { id: 'common.label.privacy_policy' },\n LABEL_SECONDLASTNAME: { id: 'common.label.second_lastname' },\n\n NOTIFICATION_REQUIRED_FIELDS: { id: 'user.notification.required_fields' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,UAAU,EAAE;IAAEC,EAAE,EAAE;EAA6B,CAAC;EAChDC,aAAa,EAAE;IAAED,EAAE,EAAE;EAAuB,CAAC;EAC7CE,SAAS,EAAE;IAAEF,EAAE,EAAE;EAAqB,CAAC;EACvCG,iBAAiB,EAAE;IAAEH,EAAE,EAAE,0BAA0B;IAAEI,cAAc,EAAE;EAAI,CAAC;EAC1EC,SAAS,EAAE;IAAEL,EAAE,EAAE;EAAuB,CAAC;EACzCM,WAAW,EAAE;IAAEN,EAAE,EAAE;EAAqB,CAAC;EACzCO,YAAY,EAAE;IAAEP,EAAE,EAAE;EAA4B,CAAC;EACjDQ,eAAe,EAAE;IAAER,EAAE,EAAE;EAAyB,CAAC;EACjDS,cAAc,EAAE;IAAET,EAAE,EAAE;EAAiC,CAAC;EACxDU,cAAc,EAAE;IAAEV,EAAE,EAAE;EAAwB,CAAC;EAC/CW,UAAU,EAAE;IAAEX,EAAE,EAAE;EAA2B,CAAC;EAC9CY,cAAc,EAAE;IAAEZ,EAAE,EAAE,uBAAuB;IAAEI,cAAc,EAAE;EAAI,CAAC;EACpES,WAAW,EAAE;IAAEb,EAAE,EAAE;EAAqB,CAAC;EACzCc,aAAa,EAAE;IAAEd,EAAE,EAAE;EAA8B,CAAC;EACpDe,mBAAmB,EAAE;IAAEf,EAAE,EAAE;EAA8B,CAAC;EAC1DgB,oBAAoB,EAAE;IAAEhB,EAAE,EAAE;EAA+B,CAAC;EAE5DiB,4BAA4B,EAAE;IAAEjB,EAAE,EAAE;EAAoC;AAC1E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.3.168",
3
+ "version": "0.3.170",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",