@dropins/storefront-auth 0.0.1-alpha5 → 0.0.1-alpha7

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.
Files changed (217) hide show
  1. package/api/confirmEmail/confirmEmail.d.ts +4 -0
  2. package/api/confirmEmail/graphql/confirmEmail.graphql.d.ts +2 -0
  3. package/api/confirmEmail/index.d.ts +2 -0
  4. package/api/createCustomer/createCustomer.d.ts +4 -0
  5. package/api/createCustomer/graphql/createCustomer.graphql.d.ts +2 -0
  6. package/api/createCustomer/graphql/createCustomerV2.graphql.d.ts +2 -0
  7. package/api/createCustomer/index.d.ts +2 -0
  8. package/api/createCustomerAddress/createCustomerAddress.d.ts +4 -0
  9. package/api/createCustomerAddress/graphql/createCustomerAddress.graphql.d.ts +2 -0
  10. package/api/createCustomerAddress/index.d.ts +2 -0
  11. package/api/fetch-graphql/fetch-graphql.d.ts +8 -0
  12. package/api/fetch-graphql/index.d.ts +2 -0
  13. package/api/getAttributesForm/getAttributesForm.d.ts +4 -0
  14. package/api/getAttributesForm/graphql/getAttributesForm.graphql.d.ts +2 -0
  15. package/api/getAttributesForm/index.d.ts +2 -0
  16. package/api/getCustomerData/getCustomerData.d.ts +4 -0
  17. package/api/getCustomerData/graphql/getCustomerData.graphql.d.ts +2 -0
  18. package/api/getCustomerData/index.d.ts +2 -0
  19. package/api/getCustomerToken/getCustomerToken.d.ts +15 -0
  20. package/api/getCustomerToken/graphql/getCustomerToken.graphql.d.ts +2 -0
  21. package/api/getCustomerToken/index.d.ts +2 -0
  22. package/api/getStoreConfig/getStoreConfig.d.ts +4 -0
  23. package/api/getStoreConfig/graphql/getStoreConfig.graphql.d.ts +2 -0
  24. package/api/getStoreConfig/index.d.ts +2 -0
  25. package/api/index.d.ts +14 -0
  26. package/api/initialize/index.d.ts +2 -0
  27. package/api/initialize/initialize.d.ts +14 -0
  28. package/api/requestPasswordResetEmail/graphql/requestPasswordResetEmail.graphql.d.ts +2 -0
  29. package/api/requestPasswordResetEmail/index.d.ts +2 -0
  30. package/api/requestPasswordResetEmail/requestPasswordResetEmail.d.ts +4 -0
  31. package/api/resendConfirmationEmail/graphql/resendConfirmationEmail.graphql.d.ts +2 -0
  32. package/api/resendConfirmationEmail/index.d.ts +2 -0
  33. package/api/resendConfirmationEmail/resendConfirmationEmail.d.ts +4 -0
  34. package/api/resetPassword/graphql/resetPassword.graphql.d.ts +2 -0
  35. package/api/resetPassword/index.d.ts +2 -0
  36. package/api/resetPassword/resetPassword.d.ts +4 -0
  37. package/api/revokeCustomerToken/graphql/revokeCustomerToken.graphql.d.ts +2 -0
  38. package/api/revokeCustomerToken/index.d.ts +2 -0
  39. package/api/revokeCustomerToken/revokeCustomerToken.d.ts +4 -0
  40. package/api.d.ts +1 -0
  41. package/api.js +3 -4
  42. package/chunks/EmailConfirmationForm.js +1 -2
  43. package/chunks/ResetPasswordForm.js +1 -2
  44. package/chunks/SignInForm.js +1 -2
  45. package/chunks/SignUpForm.js +1 -2
  46. package/chunks/SkeletonLoader.js +1 -2
  47. package/chunks/confirmEmail.js +1 -2
  48. package/chunks/createCustomerAddress.js +5 -6
  49. package/chunks/getStoreConfig.js +4 -5
  50. package/chunks/index.js +1 -2
  51. package/chunks/index2.js +1 -2
  52. package/chunks/index3.js +1 -2
  53. package/chunks/initialize.js +0 -1
  54. package/chunks/requestPasswordResetEmail.js +2 -3
  55. package/chunks/resendConfirmationEmail.js +1 -2
  56. package/chunks/resetPassword.js +2 -3
  57. package/chunks/setReCaptchaToken.js +1 -0
  58. package/chunks/simplifyTransformAttributesForm.js +0 -1
  59. package/chunks/transform-attributes-form.js +0 -1
  60. package/chunks/useInLineAlert.js +1 -2
  61. package/chunks/usePasswordValidationMessage.js +1 -2
  62. package/components/EmailConfirmationForm/EmailConfirmationForm.d.ts +5 -0
  63. package/components/EmailConfirmationForm/index.d.ts +3 -0
  64. package/components/ResetPasswordForm/ResetPasswordForm.d.ts +6 -0
  65. package/components/ResetPasswordForm/index.d.ts +3 -0
  66. package/components/SignInForm/SignInForm.d.ts +5 -0
  67. package/components/SignInForm/index.d.ts +3 -0
  68. package/components/SignUpForm/SignUpForm.d.ts +5 -0
  69. package/components/SignUpForm/index.d.ts +3 -0
  70. package/components/SkeletonLoader/SkeletonLoader.d.ts +5 -0
  71. package/components/SkeletonLoader/Skeletons/ResetPasswordSkeleton.d.ts +2 -0
  72. package/components/SkeletonLoader/Skeletons/SignInSkeleton.d.ts +2 -0
  73. package/components/SkeletonLoader/Skeletons/SignUpSkeleton.d.ts +2 -0
  74. package/components/SkeletonLoader/Skeletons/index.d.ts +4 -0
  75. package/components/SkeletonLoader/index.d.ts +3 -0
  76. package/components/SuccessNotificationForm/SuccessNotificationForm.d.ts +6 -0
  77. package/components/SuccessNotificationForm/index.d.ts +3 -0
  78. package/components/UI/Button/Button.d.ts +16 -0
  79. package/components/UI/Button/index.d.ts +3 -0
  80. package/components/UI/Form/Form.d.ts +5 -0
  81. package/components/UI/Form/index.d.ts +3 -0
  82. package/components/UI/FormInputs/FormInputs.d.ts +13 -0
  83. package/components/UI/FormInputs/index.d.ts +3 -0
  84. package/components/UI/Title/Title.d.ts +11 -0
  85. package/components/UI/Title/index.d.ts +3 -0
  86. package/components/UI/index.d.ts +5 -0
  87. package/components/UpdatePasswordForm/UpdatePasswordForm.d.ts +5 -0
  88. package/components/UpdatePasswordForm/index.d.ts +3 -0
  89. package/components/index.d.ts +11 -0
  90. package/configs/cookieConfigs.d.ts +7 -0
  91. package/configs/defaultCreateUserConfigs.d.ts +16 -0
  92. package/configs/patternConfigs.d.ts +3 -0
  93. package/containers/AuthCombine/AuthCombine.d.ts +5 -0
  94. package/containers/AuthCombine/index.d.ts +3 -0
  95. package/containers/AuthCombine.d.ts +3 -0
  96. package/containers/AuthCombine.js +1 -2
  97. package/containers/ResetPassword/ResetPassword.d.ts +5 -0
  98. package/containers/ResetPassword/index.d.ts +3 -0
  99. package/containers/ResetPassword.d.ts +3 -0
  100. package/containers/ResetPassword.js +1 -2
  101. package/containers/SignIn/SignIn.d.ts +5 -0
  102. package/containers/SignIn/index.d.ts +3 -0
  103. package/containers/SignIn.d.ts +3 -0
  104. package/containers/SignIn.js +1 -2
  105. package/containers/SignUp/SignUp.d.ts +5 -0
  106. package/containers/SignUp/index.d.ts +3 -0
  107. package/containers/SignUp.d.ts +3 -0
  108. package/containers/SignUp.js +1 -2
  109. package/containers/SuccessNotification/SuccessNotification.d.ts +5 -0
  110. package/containers/SuccessNotification/index.d.ts +3 -0
  111. package/containers/SuccessNotification.d.ts +3 -0
  112. package/containers/SuccessNotification.js +1 -2
  113. package/containers/UpdatePassword/UpdatePassword.d.ts +5 -0
  114. package/containers/UpdatePassword/index.d.ts +3 -0
  115. package/containers/UpdatePassword.d.ts +3 -0
  116. package/containers/UpdatePassword.js +1 -2
  117. package/containers/index.d.ts +7 -0
  118. package/data/models/attributes-form.d.ts +25 -0
  119. package/data/models/customer-data.d.ts +6 -0
  120. package/data/models/index.d.ts +7 -0
  121. package/data/models/password-reset-email.d.ts +5 -0
  122. package/data/models/reset-password.d.ts +5 -0
  123. package/data/models/revoke-customer-token.d.ts +5 -0
  124. package/data/models/store-config.d.ts +8 -0
  125. package/data/transforms/index.d.ts +7 -0
  126. package/data/transforms/transform-attributes-form.d.ts +5 -0
  127. package/data/transforms/transform-auth.d.ts +37 -0
  128. package/data/transforms/transform-customer-data.d.ts +5 -0
  129. package/data/transforms/transform-password-reset-email.d.ts +5 -0
  130. package/data/transforms/transform-reset-password.d.ts +5 -0
  131. package/data/transforms/transform-revoke-customer-token.d.ts +5 -0
  132. package/data/transforms/transform-store-config.d.ts +5 -0
  133. package/hooks/api/useGetAttributesForm.d.ts +14 -0
  134. package/hooks/api/useGetStoreConfigs.d.ts +8 -0
  135. package/hooks/components/useEmailConfirmationForm.d.ts +7 -0
  136. package/hooks/components/usePasswordValidationMessage.d.ts +16 -0
  137. package/hooks/components/useResetPasswordForm.d.ts +8 -0
  138. package/hooks/components/useSignInForm.d.ts +21 -0
  139. package/hooks/components/useSignUpForm.d.ts +20 -0
  140. package/hooks/components/useUpdatePasswordForm.d.ts +14 -0
  141. package/hooks/ui/useForm.d.ts +11 -0
  142. package/hooks/useEmailConfirmation.d.ts +11 -0
  143. package/hooks/useInLineAlert.d.ts +7 -0
  144. package/i18n/en_US.json.d.ts +66 -0
  145. package/lib/acdl.d.ts +9 -0
  146. package/lib/checkIsFunction.d.ts +2 -0
  147. package/lib/clearUrlAndReplace.d.ts +2 -0
  148. package/lib/convertToInputDateFormat.d.ts +2 -0
  149. package/lib/cookieUtils.d.ts +3 -0
  150. package/lib/fetch-error.d.ts +5 -0
  151. package/lib/generateRandomDigits.d.ts +2 -0
  152. package/lib/getFormValues.d.ts +2 -0
  153. package/lib/getUrlParam.d.ts +2 -0
  154. package/lib/mergeFormObjects.d.ts +3 -0
  155. package/lib/network-error.d.ts +6 -0
  156. package/lib/setReCaptchaToken.d.ts +2 -0
  157. package/lib/simplifyTransformAttributesForm.d.ts +2 -0
  158. package/lib/validationUniqueSymbolsPassword.d.ts +2 -0
  159. package/package.json +1 -1
  160. package/render/Provider.d.ts +8 -0
  161. package/render/index.d.ts +2 -0
  162. package/render/render.d.ts +4 -0
  163. package/render.d.ts +1 -0
  164. package/render.js +4 -7
  165. package/types/api/confirmEmail.types.d.ts +17 -0
  166. package/types/api/createCustomer.types.d.ts +24 -0
  167. package/types/api/createCustomerAddress.types.d.ts +47 -0
  168. package/types/api/getAttributesForm.types.d.ts +29 -0
  169. package/types/api/getCustomerData.types.d.ts +13 -0
  170. package/types/api/getCustomerToken.types.d.ts +11 -0
  171. package/types/api/passwordResetEmail.types.d.ts +9 -0
  172. package/types/api/resendConfirmationEmail.types.d.ts +9 -0
  173. package/types/api/resetPassword.types.d.ts +9 -0
  174. package/types/api/revokeCustomerToken.types.d.ts +9 -0
  175. package/types/api/storeConfig.types.d.ts +16 -0
  176. package/types/authCombine.types.d.ts +12 -0
  177. package/types/emailConfirmationForm.types.d.ts +14 -0
  178. package/types/form.types.d.ts +11 -0
  179. package/types/index.d.ts +22 -0
  180. package/types/notification.types.d.ts +15 -0
  181. package/types/resetPassword.types.d.ts +15 -0
  182. package/types/signIn.types.d.ts +34 -0
  183. package/types/signUp.types.d.ts +42 -0
  184. package/types/skeletonLoader.types.d.ts +6 -0
  185. package/types/successNotification.types.d.ts +13 -0
  186. package/types/updatePassword.types.d.ts +24 -0
  187. package/api.js.map +0 -1
  188. package/chunks/EmailConfirmationForm.js.map +0 -1
  189. package/chunks/PasswordField.js +0 -2
  190. package/chunks/PasswordField.js.map +0 -1
  191. package/chunks/ResetPasswordForm.js.map +0 -1
  192. package/chunks/SignInForm.js.map +0 -1
  193. package/chunks/SignUpForm.js.map +0 -1
  194. package/chunks/SkeletonLoader.js.map +0 -1
  195. package/chunks/confirmEmail.js.map +0 -1
  196. package/chunks/createCustomerAddress.js.map +0 -1
  197. package/chunks/getStoreConfig.js.map +0 -1
  198. package/chunks/index.js.map +0 -1
  199. package/chunks/index2.js.map +0 -1
  200. package/chunks/index3.js.map +0 -1
  201. package/chunks/initialize.js.map +0 -1
  202. package/chunks/network-error.js +0 -2
  203. package/chunks/network-error.js.map +0 -1
  204. package/chunks/requestPasswordResetEmail.js.map +0 -1
  205. package/chunks/resendConfirmationEmail.js.map +0 -1
  206. package/chunks/resetPassword.js.map +0 -1
  207. package/chunks/simplifyTransformAttributesForm.js.map +0 -1
  208. package/chunks/transform-attributes-form.js.map +0 -1
  209. package/chunks/useInLineAlert.js.map +0 -1
  210. package/chunks/usePasswordValidationMessage.js.map +0 -1
  211. package/containers/AuthCombine.js.map +0 -1
  212. package/containers/ResetPassword.js.map +0 -1
  213. package/containers/SignIn.js.map +0 -1
  214. package/containers/SignUp.js.map +0 -1
  215. package/containers/SuccessNotification.js.map +0 -1
  216. package/containers/UpdatePassword.js.map +0 -1
  217. package/render.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"getStoreConfig.js","sources":["../../src/data/transforms/transform-auth.ts","../../src/configs/cookieConfigs.ts","../../src/data/transforms/transform-store-config.ts","../../src/data/transforms/transform-customer-data.ts","../../src/lib/fetch-error.ts","../../src/api/getCustomerData/graphql/getCustomerData.graphql.ts","../../src/api/getCustomerData/getCustomerData.ts","../../src/api/getCustomerToken/graphql/getCustomerToken.graphql.ts","../../src/lib/cookieUtils.ts","../../src/lib/acdl.ts","../../src/api/getCustomerToken/getCustomerToken.ts","../../src/api/getStoreConfig/graphql/getStoreConfig.graphql.ts","../../src/api/getStoreConfig/getStoreConfig.ts"],"sourcesContent":["// Doc - https://experienceleague.adobe.com/en/docs/commerce-merchant-services/data-connection/event-forwarding/events#signin\nexport const loginContext = (ctx: any) => {\n return {\n personalEmail: {\n address: ctx?.email || '',\n },\n userAccount: {\n login: true,\n },\n commerce: {\n commerceScope: {\n storeCode: ctx?.store_code || '',\n },\n },\n };\n};\n\n// Doc - https://experienceleague.adobe.com/en/docs/commerce-merchant-services/data-connection/event-forwarding/events#signout\nexport const logoutContext = (ctx: any) => {\n return {\n userAccount: {\n logout: true,\n },\n commerce: {\n commerceScope: {\n storeCode: ctx?.store_code || '',\n },\n },\n };\n};\n\n// Doc - https://experienceleague.adobe.com/en/docs/commerce-merchant-services/data-connection/event-forwarding/events#createaccount\nexport const createAccountContext = (ctx: any) => {\n return {\n personalEmail: {\n address: ctx?.email || '',\n },\n userAccount: {\n updateProfile: ctx?.updateProfile,\n },\n commerce: {\n commerceScope: {\n storeCode: ctx?.store_code || '',\n },\n },\n };\n};\n","const COOKIE_NAMES = {\n auth_dropin_user_token: 'auth_dropin_user_token',\n auth_dropin_firstname: 'auth_dropin_firstname',\n};\n\nconst COOKIE_LIFETIME = 3600;\n\nexport { COOKIE_NAMES, COOKIE_LIFETIME };\n","import { getStoreConfigResponse } from '@/auth/types';\nimport { COOKIE_LIFETIME } from '@/auth/configs/cookieConfigs';\nimport { StoreConfigModel } from '../models';\n\nexport const transformStoreConfig = (\n response: getStoreConfigResponse\n): StoreConfigModel => {\n return {\n autocompleteOnStorefront:\n response?.data?.storeConfig?.autocomplete_on_storefront || false,\n // Need information about min length in response undefined\n minLength: response?.data?.storeConfig?.minimum_password_length || 3,\n requiredCharacterClasses:\n +response?.data?.storeConfig?.required_character_classes_number || 0,\n createAccountConfirmation:\n response?.data?.storeConfig?.create_account_confirmation || false,\n customerAccessTokenLifetime:\n response?.data?.storeConfig?.customer_access_token_lifetime *\n COOKIE_LIFETIME || COOKIE_LIFETIME,\n };\n};\n","import { getCustomerDataResponse } from '@/auth/types';\nimport { CustomerDataModel } from '../models';\n\nexport const transformCustomerData = (\n response: getCustomerDataResponse\n): CustomerDataModel => {\n return {\n email: response?.data?.customer?.email || '',\n firstname: response?.data?.customer?.firstname || '',\n lastname: response?.data?.customer?.lastname || '',\n };\n};\n","/** Actions */\nexport const handleFetchError = (errors: Array<{ message: string }>) => {\n const errorMessage = errors.map((e: any) => e.message).join(' ');\n\n throw Error(errorMessage);\n};\n","export const GET_CUSTOMER_DATA = `\n query GET_CUSTOMER_DATA {\n customer {\n firstname\n lastname\n email\n }\n }\n`;\n","import { fetchGraphQl, setFetchGraphQlHeader, config } from '@/auth/api';\nimport { GET_CUSTOMER_DATA } from './graphql/getCustomerData.graphql';\nimport { handleNetworkError } from '@/auth/lib/network-error';\nimport { CustomerDataModel } from '@/auth/data/models';\nimport { transformCustomerData } from '@/auth/data/transforms';\nimport { handleFetchError } from '@/auth/lib/fetch-error';\n\nexport const getCustomerData = async (\n user_token: string\n): Promise<CustomerDataModel> => {\n if (user_token) {\n const { authHeaderConfig } = config.getConfig();\n\n setFetchGraphQlHeader(\n authHeaderConfig.header,\n authHeaderConfig.tokenPrefix\n ? `${authHeaderConfig.tokenPrefix} ${user_token}`\n : user_token\n );\n }\n\n return await fetchGraphQl(GET_CUSTOMER_DATA, {\n method: 'GET',\n cache: 'force-cache',\n })\n .then((response) => {\n if (response.errors?.length) return handleFetchError(response.errors);\n\n return transformCustomerData(response);\n })\n .catch(handleNetworkError);\n};\n","export const GET_CUSTOMER_TOKEN = `\n mutation GET_CUSTOMER_TOKEN($email: String!, $password: String!) {\n generateCustomerToken(email: $email, password: $password) {\n token\n }\n }\n`;\n","/* eslint-disable no-useless-escape */\nimport { getStoreConfig } from '@/auth/api';\nimport { COOKIE_LIFETIME } from '@/auth/configs/cookieConfigs';\n\nexport const deleteCookie = (cookieName: string) => {\n document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`;\n};\n\nexport const getCookiesLifetime = async () => {\n try {\n const storeConfigString = sessionStorage.getItem('storeConfig');\n const cachedStoreConfig = storeConfigString\n ? JSON.parse(storeConfigString)\n : {};\n\n let accessTokenLifeTime = cachedStoreConfig.customerAccessTokenLifetime;\n\n if (!accessTokenLifeTime) {\n const storeConfig = await getStoreConfig();\n\n sessionStorage.setItem('storeConfig', JSON.stringify(storeConfig));\n\n accessTokenLifeTime =\n storeConfig?.customerAccessTokenLifetime || COOKIE_LIFETIME;\n }\n\n return `Max-Age=${accessTokenLifeTime}`;\n } catch (error) {\n console.error('getCookiesLifetime() Error:', error);\n return `Max-Age=${COOKIE_LIFETIME}`;\n }\n};\n","import {\n createAccountContext,\n loginContext,\n logoutContext,\n} from '../data/transforms';\n\nenum EventsList {\n CREATE_ACCOUNT_EVENT = 'create-account',\n SIGN_IN = 'sign-in',\n SIGN_OUT = 'sign-out',\n}\n\nconst AUTH_CONTEXT = 'authContext';\n\nconst events = {\n CREATE_ACCOUNT: EventsList.CREATE_ACCOUNT_EVENT,\n SIGN_IN: EventsList.SIGN_IN,\n SIGN_OUT: EventsList.SIGN_OUT,\n};\n\nfunction setContext(name: string, data: any) {\n const adobeDataLayer = (window as any).adobeDataLayer || [];\n\n adobeDataLayer.push({\n [name]: null,\n });\n\n adobeDataLayer.push({\n [name]: data,\n });\n}\n\nexport function pushEvent(event: string) {\n const adobeDataLayer = (window as any).adobeDataLayer || [];\n\n adobeDataLayer.push((acdl: any) => {\n const state = acdl.getState ? acdl.getState() : {};\n\n acdl.push({\n event,\n eventInfo: {\n ...state,\n },\n });\n });\n}\n\nfunction createAccountEvent(eventData: any) {\n const transformedEventData = createAccountContext(eventData);\n\n setContext(AUTH_CONTEXT, transformedEventData);\n\n pushEvent(events.CREATE_ACCOUNT);\n}\n\nfunction loginEvent(eventData: any) {\n const transformedEventData = loginContext(eventData);\n\n setContext(AUTH_CONTEXT, transformedEventData);\n\n pushEvent(events.SIGN_IN);\n}\n\nfunction logoutEvent(eventData: any) {\n const transformedEventData = logoutContext(eventData);\n\n setContext(AUTH_CONTEXT, transformedEventData);\n\n pushEvent(events.SIGN_OUT);\n}\n\nconst publishEvents = (eventType: string, eventParams: any) => {\n const storeConfigRaw = sessionStorage.getItem('storeConfig');\n const storeConfig = storeConfigRaw ? JSON.parse(storeConfigRaw) : {};\n\n const eventData = { ...storeConfig, ...eventParams };\n\n switch (eventType) {\n case EventsList.CREATE_ACCOUNT_EVENT:\n createAccountEvent(eventData);\n break;\n\n case EventsList.SIGN_IN:\n loginEvent(eventData);\n break;\n\n case EventsList.SIGN_OUT:\n logoutEvent(eventData);\n break;\n\n default:\n return null;\n }\n};\n\nexport { EventsList, publishEvents };\n","import { handleNetworkError } from '@/auth/lib/network-error';\nimport { fetchGraphQl } from '../fetch-graphql';\nimport { GET_CUSTOMER_TOKEN } from './graphql/getCustomerToken.graphql';\nimport { getCustomerData } from '../getCustomerData';\nimport { inLineAlertInterface } from '@/auth/types';\nimport { events } from '@adobe/event-bus';\nimport { COOKIE_NAMES } from '@/auth/configs/cookieConfigs';\nimport { getCookiesLifetime } from '@/auth/lib/cookieUtils';\nimport { publishEvents, EventsList } from '@/auth/lib/acdl';\n\ninterface getCustomerTokenProps {\n email: string;\n password: string;\n handleSetInLineAlertProps: (value?: inLineAlertInterface) => void;\n translations: Record<string, string>;\n onErrorCallback?: (value?: unknown) => void;\n}\n\nexport const getCustomerToken = async ({\n email,\n password,\n translations,\n onErrorCallback,\n handleSetInLineAlertProps,\n}: getCustomerTokenProps): Promise<{\n errorMessage: string;\n userName: string;\n}> => {\n const response = await fetchGraphQl(GET_CUSTOMER_TOKEN, {\n method: 'POST',\n variables: { email, password },\n }).catch(handleNetworkError);\n\n if (!response?.data?.generateCustomerToken?.token) {\n // Fallback error message\n const defaultErrorMessage = translations.customerTokenErrorMessage;\n const errorMessage = response?.errors\n ? response.errors[0].message\n : defaultErrorMessage;\n\n onErrorCallback?.(errorMessage);\n handleSetInLineAlertProps?.({ type: 'error', text: errorMessage });\n publishEvents(EventsList.SIGN_IN, {});\n\n return { errorMessage, userName: '' };\n }\n\n const userToken = response?.data?.generateCustomerToken?.token;\n\n const responseCustomer = await getCustomerData(userToken);\n\n if (!responseCustomer?.firstname || !responseCustomer?.email) {\n const errorMessage = translations.customerTokenErrorMessage;\n\n onErrorCallback?.(errorMessage);\n handleSetInLineAlertProps?.({ type: 'error', text: errorMessage });\n publishEvents(EventsList.SIGN_IN, {});\n\n return { errorMessage, userName: '' };\n }\n\n const userName = responseCustomer?.firstname;\n const userEmail = responseCustomer?.email;\n const cookiesLifetime = await getCookiesLifetime();\n\n document.cookie = `${COOKIE_NAMES.auth_dropin_firstname}=${userName}; path=/; ${cookiesLifetime}; `;\n document.cookie = `${COOKIE_NAMES.auth_dropin_user_token}=${userToken}; path=/; ${cookiesLifetime}; `;\n\n events.emit('authenticated', !!userToken);\n\n publishEvents(EventsList.SIGN_IN, userEmail ? { email: userEmail } : {});\n\n return { errorMessage: '', userName };\n};\n","export const GET_STORE_CONFIG = `\n query GET_STORE_CONFIG {\n storeConfig {\n autocomplete_on_storefront\n minimum_password_length\n required_character_classes_number\n store_code\n store_name\n store_group_code\n locale\n create_account_confirmation\n customer_access_token_lifetime\n }\n }\n`;\n","import { getStoreConfigResponse } from '@/auth/types';\nimport { fetchGraphQl } from '../fetch-graphql';\nimport { GET_STORE_CONFIG } from './graphql/getStoreConfig.graphql';\nimport { handleNetworkError } from '@/auth/lib/network-error';\nimport { transformStoreConfig } from '@/auth/data/transforms';\nimport { StoreConfigModel } from '@/auth/data/models';\nimport { handleFetchError } from '@/auth/lib/fetch-error';\n\nexport const getStoreConfig = async (): Promise<StoreConfigModel> => {\n return await fetchGraphQl(GET_STORE_CONFIG, {\n method: 'GET',\n cache: 'force-cache',\n })\n .then((response: getStoreConfigResponse) => {\n if (response.errors?.length) return handleFetchError(response.errors);\n\n return transformStoreConfig(response);\n })\n .catch(handleNetworkError);\n};\n"],"names":["loginContext","ctx","personalEmail","address","email","userAccount","login","commerce","commerceScope","storeCode","store_code","logoutContext","logout","createAccountContext","updateProfile","COOKIE_NAMES","auth_dropin_user_token","auth_dropin_firstname","COOKIE_LIFETIME","transformStoreConfig","response","autocompleteOnStorefront","data","storeConfig","autocomplete_on_storefront","minLength","minimum_password_length","requiredCharacterClasses","required_character_classes_number","createAccountConfirmation","create_account_confirmation","customerAccessTokenLifetime","customer_access_token_lifetime","transformCustomerData","customer","firstname","lastname","handleFetchError","errors","errorMessage","map","e","message","join","Error","GET_CUSTOMER_DATA","getCustomerData","user_token","authHeaderConfig","config","getConfig","header","tokenPrefix","fetchGraphQl","method","cache","then","length","catch","handleNetworkError","GET_CUSTOMER_TOKEN","deleteCookie","cookieName","cookie","getCookiesLifetime","storeConfigString","sessionStorage","getItem","accessTokenLifeTime","JSON","parse","getStoreConfig","setItem","stringify","error","EventsList","CREATE_ACCOUNT_EVENT","SIGN_IN","SIGN_OUT","AUTH_CONTEXT","events","CREATE_ACCOUNT","setContext","name","adobeDataLayer","window","push","pushEvent","event","acdl","state","getState","eventInfo","createAccountEvent","eventData","transformedEventData","loginEvent","logoutEvent","publishEvents","eventType","eventParams","storeConfigRaw","getCustomerToken","password","translations","onErrorCallback","handleSetInLineAlertProps","variables","generateCustomerToken","token","defaultErrorMessage","customerTokenErrorMessage","type","text","userName","userToken","responseCustomer","userEmail","cookiesLifetime","document","emit","GET_STORE_CONFIG"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index2.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index3.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"initialize.js","sources":["../../src/api/initialize/initialize.ts"],"sourcesContent":["import { Initializer } from '@adobe/elsie/lib';\nimport { Lang } from '@adobe/elsie/i18n';\n\ntype ConfigProps = {\n langDefinitions?: Lang;\n authHeaderConfig: {\n header: string;\n tokenPrefix: string;\n };\n};\n\nexport const initialize = new Initializer<ConfigProps>({\n init: async (config) => {\n const defaultConfig = {\n authHeaderConfig: {\n header: 'Authorization',\n tokenPrefix: 'Bearer',\n },\n };\n\n initialize.config.setConfig({ ...defaultConfig, ...config });\n },\n\n listeners: () => [],\n});\n\nexport const config = initialize.config;\n"],"names":["initialize","Initializer","init","config","defaultConfig","authHeaderConfig","header","tokenPrefix","setConfig","listeners"],"mappings":"oDAWaA,MAAAA,EAAa,IAAIC,EAAyB,CACrDC,KAAM,MAAOC,GAAW,CACtB,MAAMC,EAAgB,CACpBC,iBAAkB,CAChBC,OAAQ,gBACRC,YAAa,QACf,CAAA,EAGFP,EAAWG,OAAOK,UAAU,CAAE,GAAGJ,EAAe,GAAGD,CAAAA,CAAQ,CAC7D,EAEAM,UAAWA,IAAM,CAAA,CACnB,CAAC,EAEYN,EAASH,EAAWG"}
@@ -1,2 +0,0 @@
1
- import{FetchGraphQL as t}from"@dropins/tools/fetch-graphql.js";import{events as r}from"@dropins/tools/event-bus.js";const{setEndpoint:h,setFetchGraphQlHeader:n,removeFetchGraphQlHeader:c,setFetchGraphQlHeaders:p,fetchGraphQl:i,getConfig:f}=new t().getMethods(),m=e=>{throw e instanceof DOMException&&e.name==="AbortError"||r.emit("error",{source:"auth",type:"network",error:e}),e};export{n as a,p as b,i as f,f as g,m as h,c as r,h as s};
2
- //# sourceMappingURL=network-error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"network-error.js","sources":["../../src/api/fetch-graphql/fetch-graphql.ts","../../src/lib/network-error.ts"],"sourcesContent":["import { FetchGraphQL } from '@adobe/fetch-graphql';\n\nexport const {\n setEndpoint,\n setFetchGraphQlHeader,\n removeFetchGraphQlHeader,\n setFetchGraphQlHeaders,\n fetchGraphQl,\n getConfig,\n} = new FetchGraphQL().getMethods();\n","import { events } from '@adobe/event-bus';\n\n/**\n * A function which can be attached to fetchGraphQL to handle thrown errors in\n * a generic way.\n */\nexport const handleNetworkError = (error: Error) => {\n const isAbortError =\n error instanceof DOMException && error.name === 'AbortError';\n\n if (!isAbortError) {\n events.emit('error', {\n source: 'auth',\n type: 'network',\n error,\n });\n }\n throw error;\n};\n"],"names":["setEndpoint","setFetchGraphQlHeader","removeFetchGraphQlHeader","setFetchGraphQlHeaders","fetchGraphQl","getConfig","FetchGraphQL","getMethods","handleNetworkError","error","DOMException","name","events","emit","source","type"],"mappings":"oHAEa,KAAA,CACXA,YAAAA,EACAC,sBAAAA,EACAC,yBAAAA,EACAC,uBAAAA,EACAC,aAAAA,EACAC,UAAAA,CACF,EAAI,IAAIC,EAAa,EAAEC,WAAW,ECHrBC,EAAsBC,GAAiB,CAIlD,MAFEA,aAAiBC,cAAgBD,EAAME,OAAS,cAGhDC,EAAOC,KAAK,QAAS,CACnBC,OAAQ,OACRC,KAAM,UACNN,MAAAA,CAAAA,CACD,EAEGA,CACR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"requestPasswordResetEmail.js","sources":["../../src/data/transforms/transform-password-reset-email.ts","../../src/api/requestPasswordResetEmail/graphql/requestPasswordResetEmail.graphql.ts","../../src/api/requestPasswordResetEmail/requestPasswordResetEmail.ts"],"sourcesContent":["import { PasswordResetEmailResponse } from '@/auth/types';\nimport { PasswordResetEmailModel } from '../models';\n\nexport const transformPasswordResetEmail = (\n response: PasswordResetEmailResponse\n): PasswordResetEmailModel => {\n let message: string = '';\n\n if (response?.errors?.length)\n message = response?.errors[0]?.message as unknown as string;\n\n return {\n message,\n success: Boolean(response?.data?.requestPasswordResetEmail),\n };\n};\n","export const REQUEST_PASSWORD_RESET_EMAIL = `\n mutation REQUEST_PASSWORD_RESET_EMAIL($email: String!) {\n requestPasswordResetEmail(email: $email)\n }\n`;\n","import { handleNetworkError } from '@/auth/lib/network-error';\nimport { fetchGraphQl } from '../fetch-graphql';\nimport { REQUEST_PASSWORD_RESET_EMAIL } from './graphql/requestPasswordResetEmail.graphql';\nimport { transformPasswordResetEmail } from '@/auth/data/transforms';\nimport { PasswordResetEmailModel } from '@/auth/data/models';\n\nexport const requestPasswordResetEmail = async (\n email: string\n): Promise<PasswordResetEmailModel> => {\n return await fetchGraphQl(REQUEST_PASSWORD_RESET_EMAIL, {\n method: 'POST',\n variables: { email },\n })\n .then((response) => {\n return transformPasswordResetEmail(response);\n })\n .catch(handleNetworkError);\n};\n"],"names":["transformPasswordResetEmail","response","message","errors","length","success","Boolean","data","requestPasswordResetEmail","REQUEST_PASSWORD_RESET_EMAIL","email","fetchGraphQl","method","variables","then","catch","handleNetworkError"],"mappings":"8CAGaA,MAAAA,EACXC,GAC4B,WAC5B,IAAIC,EAAkB,GAEtB,OAAID,EAAAA,GAAAA,YAAAA,EAAUE,SAAVF,MAAAA,EAAkBG,SACVH,GAAAA,EAAAA,GAAAA,YAAAA,EAAUE,OAAO,KAAjBF,YAAAA,EAAqBC,SAE1B,CACLA,QAAAA,EACAG,QAASC,IAAQL,EAAAA,GAAAA,YAAAA,EAAUM,OAAVN,MAAAA,EAAgBO,0BAAyB,CAE9D,ECfaC,EAA+B;AAAA;AAAA;AAAA;AAAA,ECM/BD,EAA4B,MACvCE,GAEO,MAAMC,EAAaF,EAA8B,CACtDG,OAAQ,OACRC,UAAW,CAAEH,MAAAA,CAAM,CAAA,CACpB,EACEI,KAAmBb,GACXD,EAA4BC,CAAQ,CAC5C,EACAc,MAAMC,CAAkB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"resendConfirmationEmail.js","sources":["../../src/api/resendConfirmationEmail/graphql/resendConfirmationEmail.graphql.ts","../../src/api/resendConfirmationEmail/resendConfirmationEmail.ts"],"sourcesContent":["export const RESEND_CONFIRMATION_EMAIL = `\nmutation RESEND_CONFIRMATION_EMAIL($email: String!) {\n resendConfirmationEmail(email: $email)\n}`;\n","import { fetchGraphQl } from '../fetch-graphql';\nimport { handleNetworkError } from '@/auth/lib/network-error';\nimport { RESEND_CONFIRMATION_EMAIL } from './graphql/resendConfirmationEmail.graphql';\nimport { resendConfirmationEmailResponse } from '@/auth/types';\n\nexport const resendConfirmationEmail = async (\n customerEmail: string\n): Promise<resendConfirmationEmailResponse> => {\n return await fetchGraphQl(RESEND_CONFIRMATION_EMAIL, {\n method: 'POST',\n variables: {\n email: customerEmail,\n },\n }).catch(handleNetworkError);\n};\n"],"names":["RESEND_CONFIRMATION_EMAIL","resendConfirmationEmail","customerEmail","fetchGraphQl","method","variables","email","catch","handleNetworkError"],"mappings":"8CAAO,MAAMA,EAA4B;AAAA;AAAA;AAAA,GCK5BC,EAA0B,MACrCC,GAEO,MAAMC,EAAaH,EAA2B,CACnDI,OAAQ,OACRC,UAAW,CACTC,MAAOJ,CACT,CAAA,CACD,EAAEK,MAAMC,CAAkB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"resetPassword.js","sources":["../../src/api/resetPassword/graphql/resetPassword.graphql.ts","../../src/data/transforms/transform-reset-password.ts","../../src/api/resetPassword/resetPassword.ts"],"sourcesContent":["export const RESET_PASSWORD = `\n mutation RESET_PASSWORD($email: String!, $resetPasswordToken: String!, $newPassword: String!){\n resetPassword(email: $email,resetPasswordToken: $resetPasswordToken,newPassword: $newPassword)\n }\n`;\n","import { ResetPasswordResponse } from '@/auth/types';\nimport { ResetPasswordModel } from '../models';\n\nexport const transformResetPassword = (\n response: ResetPasswordResponse\n): ResetPasswordModel => {\n let message: string = '';\n\n if (response?.errors?.length)\n message = response?.errors[0]?.message as unknown as string;\n\n return {\n message,\n success: Boolean(response?.data?.resetPassword),\n };\n};\n","import { handleNetworkError } from '@/auth/lib/network-error';\nimport { fetchGraphQl } from '../fetch-graphql';\nimport { RESET_PASSWORD } from './graphql/resetPassword.graphql';\nimport { transformResetPassword } from '@/auth/data/transforms/transform-reset-password';\nimport { ResetPasswordModel } from '@/auth/data/models';\nimport { ResetPasswordResponse } from '@/auth/types';\n\nexport const resetPassword = async (\n email: string,\n resetPasswordToken: string,\n newPassword: string\n): Promise<ResetPasswordModel> => {\n return await fetchGraphQl(RESET_PASSWORD, {\n method: 'POST',\n variables: { email, resetPasswordToken, newPassword },\n })\n .then((response: ResetPasswordResponse) => {\n return transformResetPassword(response);\n })\n .catch(handleNetworkError);\n};\n"],"names":["RESET_PASSWORD","transformResetPassword","response","message","errors","length","success","Boolean","data","resetPassword","email","resetPasswordToken","newPassword","fetchGraphQl","method","variables","then","catch","handleNetworkError"],"mappings":"8CAAO,MAAMA,EAAiB;AAAA;AAAA;AAAA;AAAA,ECGjBC,EACXC,GACuB,WACvB,IAAIC,EAAkB,GAEtB,OAAID,EAAAA,GAAAA,YAAAA,EAAUE,SAAVF,MAAAA,EAAkBG,SACVH,GAAAA,EAAAA,GAAAA,YAAAA,EAAUE,OAAO,KAAjBF,YAAAA,EAAqBC,SAE1B,CACLA,QAAAA,EACAG,QAASC,IAAQL,EAAAA,GAAAA,YAAAA,EAAUM,OAAVN,MAAAA,EAAgBO,cAAa,CAElD,ECRaA,EAAgB,MAC3BC,EACAC,EACAC,IAEO,MAAMC,EAAab,EAAgB,CACxCc,OAAQ,OACRC,UAAW,CAAEL,MAAAA,EAAOC,mBAAAA,EAAoBC,YAAAA,CAAY,CAAA,CACrD,EACEI,KAAMd,GACED,EAAuBC,CAAQ,CACvC,EACAe,MAAMC,CAAkB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"simplifyTransformAttributesForm.js","sources":["../../src/configs/defaultCreateUserConfigs.ts","../../src/lib/simplifyTransformAttributesForm.ts"],"sourcesContent":["export interface SignUpFieldsProps {\n code: string;\n default_value: string;\n entity_type: string;\n frontend_class: string;\n frontend_input: string;\n is_required: boolean;\n is_unique: boolean;\n label: string;\n options: any[];\n}\n\nexport const DEFAULT__SIGN_IN_EMAIL_FIELD: SignUpFieldsProps[] = [\n {\n code: 'email',\n default_value: '',\n entity_type: 'CUSTOMER',\n frontend_class: 'auth-signInForm__form__email',\n frontend_input: 'TEXT',\n is_required: true,\n is_unique: false,\n label: 'Email',\n options: [],\n },\n];\n\nexport const DEFAULT__RESET_PASSWORD_EMAIL_FIELD: Record<\n string,\n string | boolean | unknown\n>[] = [\n {\n code: 'email',\n default_value: '',\n entity_type: 'CUSTOMER',\n frontend_class: 'auth-resetPasswordForm__form__item',\n frontend_input: 'TEXT',\n is_required: true,\n is_unique: false,\n label: 'Email',\n options: [],\n },\n];\n\nexport const DEFAULT_SIGN_UP_FIELDS: SignUpFieldsProps[] = [\n {\n code: 'email',\n default_value: '',\n entity_type: 'CUSTOMER',\n frontend_class: '',\n frontend_input: 'TEXT',\n is_required: true,\n is_unique: false,\n label: 'Email',\n options: [],\n },\n {\n code: 'firstname',\n default_value: '',\n entity_type: 'CUSTOMER',\n frontend_class: '',\n frontend_input: 'TEXT',\n is_required: true,\n is_unique: false,\n label: 'First name',\n options: [],\n },\n {\n code: 'lastname',\n default_value: '',\n entity_type: 'CUSTOMER',\n frontend_class: '',\n frontend_input: 'TEXT',\n is_required: false,\n is_unique: false,\n label: 'Last name',\n options: [],\n },\n];\n\nexport const DEFAULT_INPUTS_PROPS: Record<string, string | ''> = {\n date_of_birth: '',\n dob: '',\n email: '',\n firstname: '',\n gender: '',\n is_subscribed: '',\n lastname: '',\n middlename: '',\n password: '',\n prefix: '',\n suffix: '',\n taxvat: '',\n};\n","import { transformAttributesForm } from '../data/transforms';\n\nexport const simplifyTransformAttributesForm = (defaultSignUpFields: any) => {\n if (!defaultSignUpFields?.length) return [];\n\n const params = {\n data: {\n attributesForm: { items: defaultSignUpFields },\n },\n };\n\n const { fields } = transformAttributesForm(params);\n\n return fields;\n};\n"],"names":["DEFAULT__SIGN_IN_EMAIL_FIELD","code","default_value","entity_type","frontend_class","frontend_input","is_required","is_unique","label","options","DEFAULT__RESET_PASSWORD_EMAIL_FIELD","DEFAULT_SIGN_UP_FIELDS","DEFAULT_INPUTS_PROPS","date_of_birth","dob","email","firstname","gender","is_subscribed","lastname","middlename","password","prefix","suffix","taxvat","simplifyTransformAttributesForm","defaultSignUpFields","length","params","data","attributesForm","items","fields","transformAttributesForm"],"mappings":"mDAYO,MAAMA,EAAoD,CAC/D,CACEC,KAAM,QACNC,cAAe,GACfC,YAAa,WACbC,eAAgB,+BAChBC,eAAgB,OAChBC,YAAa,GACbC,UAAW,GACXC,MAAO,QACPC,QAAS,CAAA,CACX,CAAC,EAGUC,EAGP,CACJ,CACET,KAAM,QACNC,cAAe,GACfC,YAAa,WACbC,eAAgB,qCAChBC,eAAgB,OAChBC,YAAa,GACbC,UAAW,GACXC,MAAO,QACPC,QAAS,CAAA,CACX,CAAC,EAGUE,EAA8C,CACzD,CACEV,KAAM,QACNC,cAAe,GACfC,YAAa,WACbC,eAAgB,GAChBC,eAAgB,OAChBC,YAAa,GACbC,UAAW,GACXC,MAAO,QACPC,QAAS,CAAA,CACX,EACA,CACER,KAAM,YACNC,cAAe,GACfC,YAAa,WACbC,eAAgB,GAChBC,eAAgB,OAChBC,YAAa,GACbC,UAAW,GACXC,MAAO,aACPC,QAAS,CAAA,CACX,EACA,CACER,KAAM,WACNC,cAAe,GACfC,YAAa,WACbC,eAAgB,GAChBC,eAAgB,OAChBC,YAAa,GACbC,UAAW,GACXC,MAAO,YACPC,QAAS,CAAA,CACX,CAAC,EAGUG,EAAoD,CAC/DC,cAAe,GACfC,IAAK,GACLC,MAAO,GACPC,UAAW,GACXC,OAAQ,GACRC,cAAe,GACfC,SAAU,GACVC,WAAY,GACZC,SAAU,GACVC,OAAQ,GACRC,OAAQ,GACRC,OAAQ,EACV,EC1FaC,EAAmCC,GAA6B,CAC3E,GAAI,EAACA,GAAAA,MAAAA,EAAqBC,QAAQ,MAAO,GAEzC,MAAMC,EAAS,CACbC,KAAM,CACJC,eAAgB,CAAEC,MAAOL,CAAoB,CAC/C,CAAA,EAGI,CAAEM,OAAAA,CAAAA,EAAWC,EAAwBL,CAAM,EAE1CI,OAAAA,CACT"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"transform-attributes-form.js","sources":["../../src/data/transforms/transform-attributes-form.ts"],"sourcesContent":["import { getAttributesFormResponse } from '@/auth/types';\nimport { AttributesFormModel } from '../models';\n\nexport const transformAttributesForm = (\n response: getAttributesFormResponse\n): AttributesFormModel => {\n const attributesForm = response?.data?.attributesForm;\n\n if (attributesForm?.errors?.length) return { errors: attributesForm.errors };\n\n const items = attributesForm?.items || [];\n\n const fields = items\n ?.map(\n ({\n default_value,\n frontend_input,\n frontend_class,\n is_required,\n code,\n ...other\n }) => {\n const initialCodeList = ['email', 'firstname', 'lastname'];\n\n let orderNumber =\n initialCodeList.findIndex((el) => el === code) + 1 || 5;\n\n return {\n ...other,\n defaultValue: default_value || '',\n fieldType: frontend_input || '',\n className: frontend_class || '',\n required: is_required || false,\n orderNumber,\n name: code,\n id: code,\n code,\n };\n }\n )\n .sort((a: any, b: any) => a.orderNumber - b.orderNumber);\n\n return {\n fields,\n };\n};\n"],"names":["transformAttributesForm","response","attributesForm","data","errors","length","items","fields","map","default_value","frontend_input","frontend_class","is_required","code","other","orderNumber","findIndex","el","defaultValue","fieldType","className","required","name","id","sort","a","b"],"mappings":"AAGaA,MAAAA,EACXC,GACwB,CAFbD,IAAAA,EAAAA,EAGLE,MAAAA,GAAiBD,EAAAA,GAAAA,YAAAA,EAAUE,OAAVF,YAAAA,EAAgBC,eAEvC,IAAIA,EAAAA,GAAAA,YAAAA,EAAgBE,SAAhBF,MAAAA,EAAwBG,OAAe,MAAA,CAAED,OAAQF,EAAeE,MAAAA,EAE9DE,MAAAA,GAAQJ,GAAAA,YAAAA,EAAgBI,QAAS,GAgChC,MAAA,CACLC,OA/BaD,GAAAA,YAAAA,EACXE,IACA,CAAC,CACCC,cAAAA,EACAC,eAAAA,EACAC,eAAAA,EACAC,YAAAA,EACAC,KAAAA,EACA,GAAGC,CAAAA,IACC,CAGJ,IAAIC,EAFoB,CAAC,QAAS,YAAa,UAAU,EAGvCC,aAAkBC,IAAOJ,CAAI,EAAI,GAAK,EAEjD,MAAA,CACL,GAAGC,EACHI,aAAcT,GAAiB,GAC/BU,UAAWT,GAAkB,GAC7BU,UAAWT,GAAkB,GAC7BU,SAAUT,GAAe,GACzBG,YAAAA,EACAO,KAAMT,EACNU,GAAIV,EACJA,KAAAA,CAAAA,CACF,GAGHW,KAAK,CAACC,EAAQC,IAAWD,EAAEV,YAAcW,EAAEX,YAG5CR,CAEJ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useInLineAlert.js","sources":["../../node_modules/@adobe/elsie/src/icons/ChevronDown.svg","../../node_modules/@adobe/elsie/src/icons/User.svg","../../node_modules/@adobe/elsie/src/icons/Warning.svg","../../node_modules/@adobe/elsie/src/icons/CheckWithCircle.svg","../../node_modules/@adobe/elsie/src/icons/WarningWithCircle.svg","../../src/lib/getFormValues.ts","../../src/lib/checkIsFunction.ts","../../src/components/UI/CheckboxField/CheckboxField.tsx","../../src/components/UI/Button/Button.tsx","../../src/lib/convertToInputDateFormat.ts","../../src/lib/setLoadingState.ts","../../src/hooks/ui/useForm.tsx","../../src/icons/Date.svg","../../src/components/UI/DateField/DateField.tsx","../../src/lib/generateRandomDigits.ts","../../src/components/UI/SelectField/SelectField.tsx","../../src/components/UI/TextArea/TextArea.tsx","../../src/components/UI/TextField/TextField.tsx","../../src/components/UI/FormInputs/FormInputs.tsx","../../src/components/UI/Form/Form.tsx","../../src/components/UI/Title/Title.tsx","../../src/hooks/useInLineAlert.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgChevronDown = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M7.74512 9.87701L12.0001 14.132L16.2551 9.87701\", stroke: \"currentColor\", strokeWidth: 1.5, strokeLinecap: \"square\", strokeLinejoin: \"round\" }));\nexport default SvgChevronDown;\n","import * as React from \"react\";\nconst SvgUser = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M11.8052 14.4968C10.8552 14.4968 9.9752 14.0268 9.4452 13.2368L9.4152 13.1868L9.3852 13.1268C8.1352 11.2268 7.5352 8.96681 7.6852 6.68681C7.7552 4.42681 9.6052 2.61681 11.8652 2.60681H12.0052C14.2752 2.47681 16.2152 4.21681 16.3452 6.47681C16.3452 6.55681 16.3452 6.62681 16.3452 6.70681C16.4852 8.94681 15.9052 11.1768 14.6852 13.0568L14.6052 13.1768C14.0552 13.9868 13.1352 14.4668 12.1652 14.4768H12.0052C11.9352 14.4768 11.8652 14.4868 11.7952 14.4868L11.8052 14.4968Z\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M4.3252 21.5469C4.3552 20.4169 4.4752 19.2869 4.6752 18.1769C4.8952 17.1669 6.4752 16.0269 8.9052 15.1569C9.2352 15.0369 9.4852 14.7869 9.5952 14.4569L9.8052 14.0269\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M14.425 14.4069L14.165 14.1569C14.375 14.5969 14.725 14.9569 15.155 15.1869C16.945 15.7969 19.125 16.9569 19.375 18.2069C19.585 19.3069 19.685 20.4269 19.675 21.5369\", stroke: \"currentColor\" }));\nexport default SvgUser;\n","import * as React from \"react\";\nconst SvgWarning = (props) => /* @__PURE__ */ React.createElement(\"svg\", { id: \"Icon_Warning_Base\", width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"g\", { clipPath: \"url(#clip0_841_1324)\" }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M11.9949 2.30237L0.802734 21.6977H23.1977L11.9949 2.30237Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M12.4336 10.5504L12.3373 14.4766H11.6632L11.5669 10.5504V9.51273H12.4336V10.5504ZM11.5883 18.2636V17.2687H12.4229V18.2636H11.5883Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" })), /* @__PURE__ */ React.createElement(\"defs\", null, /* @__PURE__ */ React.createElement(\"clipPath\", { id: \"clip0_841_1324\" }, /* @__PURE__ */ React.createElement(\"rect\", { width: 24, height: 21, fill: \"white\", transform: \"translate(0 1.5)\" }))));\nexport default SvgWarning;\n","import * as React from \"react\";\nconst SvgCheckWithCircle = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M6.75 12.762L10.2385 15.75L17.25 9\", stroke: \"currentColor\" }));\nexport default SvgCheckWithCircle;\n","import * as React from \"react\";\nconst SvgWarningWithCircle = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M11.75 5.88423V4.75H12.25V5.88423L12.0485 13.0713H11.9515L11.75 5.88423ZM11.7994 18.25V16.9868H12.2253V18.25H11.7994Z\", stroke: \"currentColor\" }));\nexport default SvgWarningWithCircle;\n","export const getFormValues = (form: any) => {\n if (!form) return null;\n\n const formData = new FormData(form);\n\n if (formData && typeof formData.entries === 'function') {\n const entries = formData.entries();\n if (entries && typeof entries[Symbol.iterator] === 'function') {\n return JSON.parse(JSON.stringify(Object.fromEntries(entries))) || {};\n }\n }\n return {};\n};\n","export const checkIsFunction = (value: any): value is Function => {\n return typeof value === 'function';\n};\n","import { FunctionComponent, h } from 'preact';\nimport { useCallback, useState } from 'preact/hooks';\nimport { classes } from '@adobe/elsie/lib';\nimport '@/auth/components/UI/CheckboxField/CheckboxField.css';\nimport { Checkbox } from '@adobe/elsie/components';\nimport { HTMLAttributes, memo } from 'preact/compat';\n\nexport interface CheckboxFieldProps\n extends Omit<HTMLAttributes<HTMLInputElement>, 'size'> {\n initialValue?: boolean;\n name?: string;\n errors?: Record<string, string>;\n label?: string;\n onChange?: (event: h.JSX.TargetedEvent<HTMLInputElement, Event>) => void;\n onBlur?: (event: h.JSX.TargetedEvent<HTMLInputElement, Event>) => void;\n}\n\nexport const CheckboxField: FunctionComponent<CheckboxFieldProps> = memo(\n ({\n initialValue = false,\n label,\n errors,\n name = '',\n onChange,\n onBlur,\n ...props\n }) => {\n const errorMessage = errors ? errors[name] : '';\n const isError = errorMessage ? 'error' : '';\n\n const [isChecked, setIsChecked] = useState<boolean>(initialValue);\n\n const handleSetCheck = useCallback(\n (value: any) => {\n onChange?.(value);\n setIsChecked((prev) => !prev);\n },\n [onChange]\n );\n\n return (\n <div className={classes(['auth-checkbox-field'])}>\n <Checkbox\n name={name}\n label={label}\n // @ts-ignore\n value={isChecked}\n checked={isChecked}\n error={!!errorMessage}\n onChange={handleSetCheck}\n onBlur={onBlur}\n data-testid={name || 'uniqueCheckboxId'}\n {...props}\n />\n\n {isError ? (\n <div className=\"auth-checkbox-field__error\">\n {errorMessage.replace('Enter a checkbox, this field', 'Checkbox')}\n </div>\n ) : null}\n </div>\n );\n }\n);\n","import { FunctionComponent, VNode } from 'preact';\nimport { HTMLAttributes } from 'preact/compat';\nimport { useCallback } from 'preact/hooks';\nimport { classes } from '@adobe/elsie/lib';\nimport { Button as ElsieButton } from '@adobe/elsie/components';\nimport '@/auth/components/UI/Button/Button.css';\n\nexport interface ButtonProps {\n type: 'submit' | 'button';\n variant?: 'primary' | 'secondary' | 'tertiary';\n className?: string;\n buttonText: string;\n enableLoader?: boolean;\n onClick?: (event: MouseEvent) => void;\n style?: Record<string, string | number>;\n icon?: VNode<HTMLAttributes<SVGSVGElement>>;\n disabled?: boolean;\n}\n\nexport const Button: FunctionComponent<ButtonProps> = ({\n type,\n buttonText,\n variant,\n className = '',\n enableLoader = false,\n onClick,\n style,\n icon,\n ...props\n}) => {\n const handleOnclick = useCallback(\n (event: MouseEvent) => {\n onClick?.(event);\n },\n [onClick]\n );\n\n const isLoader = enableLoader ? 'enableLoader' : '';\n\n return (\n <ElsieButton\n icon={icon}\n style={style}\n type={type}\n variant={variant}\n className={classes(['auth-button', className, isLoader])}\n onClick={handleOnclick}\n {...props}\n >\n <span className=\"auth-button__text\">{buttonText}</span>\n {enableLoader ? (\n <div className=\"auth-button__loader-wrapper\">\n <span className=\"auth-button__loader\" />\n </div>\n ) : null}\n </ElsieButton>\n );\n};\n","export const convertToInputDateFormat = (dateTimeString: string): string => {\n if (!dateTimeString) return '';\n\n const parts = dateTimeString.split('-');\n if (parts.length < 3) {\n return '';\n }\n\n const [year, month, day] = parts;\n return `${year}-${month.padStart(2, '0')}-${day.padStart(2, '0')}`;\n};\n","export const setLoadingState = (fieldList: any, loading: boolean): any => {\n fieldList.forEach((element: HTMLAnchorElement) => {\n const input = element.querySelector('input');\n const textArea = element.querySelector('textarea');\n const select = element.querySelector('select');\n\n loading\n ? element.classList.add('elsie-field__label--disabled')\n : element.classList.remove('elsie-field__label--disabled');\n\n if (input) input.disabled = loading;\n if (textArea) textArea.disabled = loading;\n if (select) select.disabled = loading;\n });\n};\n","import { convertToInputDateFormat } from '@/auth/lib/convertToInputDateFormat';\nimport { useCallback, useEffect, useRef, useState } from 'preact/hooks';\nimport { useText } from '@adobe/elsie/i18n';\nimport { useFormProps } from '@/auth/types';\nimport { setLoadingState } from '@/auth/lib/setLoadingState';\n\nexport const useForm = ({\n submitCallback,\n isLoading,\n fieldsConfig,\n}: useFormProps) => {\n const translations = useText({\n requiredFieldError: 'Auth.FormText.requiredFieldError',\n });\n\n const formRef = useRef<HTMLFormElement>(null);\n const [formData, setFormData] = useState<Record<string, string>>({});\n const [errors, setErrors] = useState<Record<string, string>>({});\n\n useEffect(() => {\n if (formRef.current) {\n const initForm = formRef.current;\n\n const buttonSubmit = initForm.querySelector(\n 'button[type=\"submit\"]'\n ) as HTMLButtonElement;\n const fieldList = initForm.querySelectorAll('.elsie-field');\n\n if (!buttonSubmit || !fieldList) return;\n\n const loading = isLoading !== undefined ? isLoading : false;\n\n setLoadingState(fieldList, loading);\n\n loading\n ? buttonSubmit.classList.add('loading')\n : buttonSubmit.classList.remove('loading');\n\n buttonSubmit.disabled = loading;\n }\n }, [isLoading]);\n\n const updateFieldsConfig = useCallback((fieldsConfig: any[]) => {\n fieldsConfig.forEach((field: any) => {\n if (!field.required) return;\n\n switch (field.fieldType) {\n case 'DATE': {\n const currentDate = convertToInputDateFormat(field.defaultValue);\n\n setFormData((prev) => ({\n ...prev,\n [field.name]: currentDate || '',\n }));\n break;\n }\n case 'BOOLEAN': {\n const defaultCheckBox = field.options.find(\n (el: any) => el.is_default\n );\n\n const isChecked = defaultCheckBox?.value === '1';\n\n setFormData((prev) => ({\n ...prev,\n [field.name]: defaultCheckBox ? isChecked : '',\n }));\n break;\n }\n case 'SELECT': {\n const isDefault = field.options.find((el: any) => el.is_default);\n\n setFormData((prev) => ({\n ...prev,\n [field.name]: isDefault?.value || '',\n }));\n break;\n }\n\n default:\n setFormData((prev) => ({\n ...prev,\n [field.name]: field?.value || field?.defaultValue || '',\n }));\n break;\n }\n\n setErrors((prev: any) => ({ ...prev, [field.name]: '' }));\n });\n }, []);\n\n useEffect(() => {\n if (Array.isArray(fieldsConfig) && fieldsConfig?.length) {\n updateFieldsConfig(fieldsConfig);\n }\n }, [fieldsConfig, updateFieldsConfig]);\n\n const handleChange = useCallback(\n ({ target: { name, value, type, checked } }: any) => {\n const isCheckbox = type === 'checkbox';\n const newValue = isCheckbox ? checked : value;\n const newErrors = errors[name]\n ? { ...errors, [name]: isCheckbox && checked ? '' : '' }\n : errors;\n\n setFormData({ ...formData, [name]: newValue });\n setErrors(newErrors);\n },\n [errors, formData]\n );\n\n const handleBlur = useCallback(\n (event: any) => {\n const { name, value, type } = event.target;\n const isCheckbox = type === 'checkbox';\n const isKeyPresent = Object.keys(formData).includes(name);\n const fieldMetaData = fieldsConfig.find((el: any) => el.name === name);\n\n const isValidField = isCheckbox ? event.target.checked : value.trim();\n\n if (\n !isValidField &&\n isKeyPresent &&\n fieldMetaData &&\n fieldMetaData.required\n ) {\n setErrors({\n ...errors,\n [name]: translations.requiredFieldError,\n });\n }\n },\n [errors, fieldsConfig, formData, translations.requiredFieldError]\n );\n\n const handleSubmit = useCallback(\n (event: any) => {\n event.preventDefault();\n\n let valid = true;\n const newErrors: Record<string, string> = {};\n\n Object.keys(formData).forEach((key) => {\n const isCheckbox = typeof formData[key] === 'boolean';\n const isEmptyString =\n typeof formData[key] === 'string' && !formData[key].trim();\n\n if ((isCheckbox && !formData[key]) || isEmptyString) {\n valid = false;\n newErrors[key] = translations.requiredFieldError;\n }\n });\n\n setErrors(newErrors);\n submitCallback?.(event, valid);\n\n const firstErrorField = Object.keys(newErrors)[0];\n document.getElementsByName(firstErrorField)[0]?.focus();\n },\n [formData, submitCallback, translations.requiredFieldError]\n );\n\n return {\n formData,\n errors,\n formRef,\n handleChange,\n handleBlur,\n handleSubmit,\n };\n};\n","import * as React from \"react\";\nconst SvgDate = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 30, height: 30, viewBox: \"0 0 40 40\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M24.75 10V9.25H23.25V10H24.75ZM23.25 14V14.75H24.75V14H23.25ZM16.75 10V9.25H15.25V10H16.75ZM15.25 14V14.75H16.75V14H15.25ZM10 17.25C9.58579 17.25 9.25 17.5858 9.25 18C9.25 18.4142 9.58579 18.75 10 18.75V17.25ZM30 18.75C30.4142 18.75 30.75 18.4142 30.75 18C30.75 17.5858 30.4142 17.25 30 17.25V18.75ZM12 12.75H28V11.25H12V12.75ZM28 12.75C28.6904 12.75 29.25 13.3096 29.25 14H30.75C30.75 12.4812 29.5188 11.25 28 11.25V12.75ZM29.25 14V28H30.75V14H29.25ZM29.25 28C29.25 28.6904 28.6904 29.25 28 29.25V30.75C29.5188 30.75 30.75 29.5188 30.75 28H29.25ZM28 29.25H12V30.75H28V29.25ZM12 29.25C11.3096 29.25 10.75 28.6904 10.75 28H9.25C9.25 29.5188 10.4812 30.75 12 30.75V29.25ZM10.75 28V14H9.25V28H10.75ZM10.75 14C10.75 13.3096 11.3096 12.75 12 12.75V11.25C10.4812 11.25 9.25 12.4812 9.25 14H10.75ZM23.25 10V14H24.75V10H23.25ZM15.25 10V14H16.75V10H15.25ZM10 18.75H30V17.25H10V18.75Z\", fill: \"#2B2B2B\" }));\nexport default SvgDate;\n","import { FunctionComponent } from 'preact';\nimport { classes } from '@adobe/elsie/lib';\nimport '@/auth/components/UI/DateField/DateField.css';\nimport { memo, useState } from 'preact/compat';\nimport { Field, Input } from '@adobe/elsie/components';\nimport { Date } from '@/auth/icons';\n\nexport interface DateFieldProps {\n children?: any;\n label?: string;\n name?: string;\n errors?: Record<string, string>;\n values?: Record<string, string>;\n onChange?: (event: Event) => void;\n onBlur?: (event: Event) => void;\n}\n\n// TODO: Consider moving this component to the StorefrontSDK repository following the migration to Adobe's git.corp\nexport const DateField: FunctionComponent<DateFieldProps> = memo(\n ({ children, name = '', onChange, onBlur, errors, values, label }) => {\n const [inputType, setInputType] = useState('text');\n\n const errorMessage = errors ? errors[name] : '';\n const valueMessage = values ? values[name] : '';\n\n const handleOnFocus = () => {\n setInputType('date');\n };\n\n const handleAutoFocus = (event: Event) => {\n setInputType('text');\n\n onBlur?.(event);\n };\n\n return (\n <div className={classes(['auth-date-field', inputType])}>\n <Field error={errorMessage}>\n <Input\n type={inputType}\n name={name}\n value={valueMessage}\n placeholder={label}\n floatingLabel={label}\n onFocus={handleOnFocus}\n onBlur={handleAutoFocus}\n onChange={onChange}\n />\n </Field>\n {children}\n <Date />\n </div>\n );\n }\n);\n","export const generateRandomDigits = () => {\n let digits = '';\n\n for (let i = 0; i < 5; i++) {\n digits += Math.floor(Math.random() * 10);\n }\n return digits;\n};\n","import { FunctionComponent } from 'preact';\nimport { classes } from '@adobe/elsie/lib';\nimport '@/auth/components/UI/SelectField/SelectField.css';\nimport { generateRandomDigits } from '@/auth/lib/generateRandomDigits';\nimport { ChevronDown } from '@adobe/elsie/icons';\n\nexport interface SelectFieldProps {\n name?: string;\n errors?: Record<string, string>;\n values?: Record<string, string>;\n selectTitle?: string;\n optionConfig?: {\n value: string;\n label: string;\n is_default: boolean;\n }[];\n onChange?: (event: any) => void;\n onBlur?: (event: any) => void;\n}\n\nconst randomId = generateRandomDigits();\n\n// TODO: Consider moving this component to the StorefrontSDK repository following the migration to Adobe's git.corp\nexport const SelectField: FunctionComponent<SelectFieldProps> = ({\n selectTitle,\n optionConfig = [],\n name = '',\n onChange,\n onBlur,\n errors,\n values,\n}) => {\n const errorMessage = errors ? errors[name] : '';\n const valueMessage = values ? values[name] : '';\n const isError = errorMessage ? 'auth-select-field--error' : '';\n const isSelected = valueMessage ? 'auth-select-field--selected' : '';\n\n return (\n <div\n className={classes([\n 'auth-select-field',\n 'elsie-field',\n isError,\n isSelected,\n ])}\n data-testid=\"auth-select-field\"\n >\n <select\n className=\"auth-select-field__select\"\n id={`select_${name}_${randomId}`}\n name={name}\n value={valueMessage}\n onBlur={onBlur}\n onChange={onChange}\n aria-label={`select_${name}`}\n >\n <option\n selected={!!optionConfig.filter((item) => item.is_default).length}\n disabled\n >\n {selectTitle}\n </option>\n {optionConfig.map((element, index) => (\n <option\n value={element.value}\n defaultChecked={element.is_default}\n key={index}\n >\n {element.label}\n </option>\n ))}\n </select>\n <label\n htmlFor={`select_${name}_${randomId}`}\n className=\"auth-select-field__label\"\n >\n {selectTitle}\n </label>\n <ChevronDown />\n {isError && (\n <div className=\"auth-select-field__error-text\">{errorMessage}</div>\n )}\n </div>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { classes } from '@adobe/elsie/lib';\nimport { generateRandomDigits } from '@/auth/lib/generateRandomDigits';\nimport '@/auth/components/UI/TextArea/TextArea.css';\n\nexport interface TextAreaFieldProps {\n name?: string;\n label?: string;\n className?: string;\n errors?: Record<string, string>;\n values?: Record<string, string>;\n onChange?: (event: any) => void;\n onBlur?: (event: any) => void;\n}\n\nconst randomId = generateRandomDigits();\n\n// TODO: Consider moving this component to the StorefrontSDK repository following the migration to Adobe's git.corp\nexport const TextArea: FunctionComponent<TextAreaFieldProps> = ({\n name = '',\n errors,\n values,\n label,\n className,\n onChange,\n onBlur,\n}) => {\n const errorMessage = errors ? errors[name] : '';\n const valueMessage = values ? values[name] : '';\n const isError = errorMessage ? 'error' : '';\n const errorClass = isError ? 'auth-textarea-field--error' : '';\n\n return (\n <div\n className={classes(['auth-textarea-field', className, errorClass])}\n data-testid=\"auth-textarea-field\"\n >\n <textarea\n className=\"auth-textarea-field__textarea\"\n id={`textarea_${name}_${randomId}`}\n placeholder={label}\n name={name}\n value={valueMessage}\n onBlur={onBlur}\n onChange={onChange}\n />\n <label\n htmlFor={`textarea_${name}_${randomId}`}\n className=\"auth-textarea-field__label\"\n >\n {label}\n </label>\n {isError ? (\n <div className=\"auth-textarea-field__error-text\">{errorMessage}</div>\n ) : null}\n </div>\n );\n};\n","import { Field, Input } from '@adobe/elsie/components';\nimport { FunctionComponent } from 'preact';\nimport { memo } from 'preact/compat';\nimport { classes } from '@adobe/elsie/lib';\n\nexport interface TextFieldProps {\n label?: string;\n className?: string;\n name?: string;\n errors?: Record<string, string>;\n values?: Record<string, string>;\n onChange?: (event: any) => void;\n onBlur?: (event: any) => void;\n}\n\nexport const TextField: FunctionComponent<TextFieldProps> = memo(\n ({ name = '', onChange, onBlur, errors, values, label, className }) => {\n const errorMessage = errors ? errors[name] : '';\n const valueMessage = values ? values[name] : '';\n\n return (\n <div\n className={classes(['auth-text-field', className])}\n data-testid=\"auth-text_field\"\n >\n <Field error={errorMessage}>\n <Input\n type=\"text\"\n name={name}\n value={valueMessage}\n onBlur={onBlur}\n onChange={onChange}\n placeholder={label}\n floatingLabel={label}\n />\n </Field>\n </div>\n );\n }\n);\n","import { FunctionComponent } from 'preact';\nimport { classes } from '@adobe/elsie/lib';\nimport CheckboxField from '../CheckboxField';\nimport DateField from '../DateField';\nimport SelectField from '../SelectField';\nimport TextArea from '../TextArea';\nimport TextField from '../TextField';\nimport { memo } from 'preact/compat';\nimport { User } from '@adobe/elsie/icons';\nimport { Field, Input } from '@adobe/elsie/components';\n\nexport interface FormInputsProps {\n className?: string;\n errors?: Record<string, string>;\n values?: Record<string, string>;\n fields?: any;\n onChange?: (event: Event) => void;\n onBlur?: (event: Event) => void;\n}\n\nexport const FormInputs: FunctionComponent<FormInputsProps> = memo(\n ({ values, fields = [], errors, className = '', onChange, onBlur }) => {\n if (!fields.length) return null;\n\n const itemClassName = `${className}__item`;\n return (\n <>\n {fields.map((el: any) => {\n switch (el.fieldType) {\n case 'TEXT':\n if (el.id === 'email') {\n const errorMessage = errors ? errors[el.id] : '';\n const valueMessage = values ? values[el.id] : '';\n\n return (\n <div\n className={classes([\n `${itemClassName}`,\n `${itemClassName}--${el.id}`,\n ])}\n data-testid={`${itemClassName}--${el.id}`}\n >\n <Field error={errorMessage} className={el.className}>\n <Input\n type=\"email\"\n name={el.id}\n icon={<User />}\n value={valueMessage}\n placeholder={el.label}\n floatingLabel={el.label}\n onBlur={onBlur}\n onChange={onChange}\n />\n </Field>\n </div>\n );\n } else if (el.id === 'firstname' || el.id === 'lastname') {\n return (\n <div\n className={classes([\n `${itemClassName}`,\n `${itemClassName}--${el.id}`,\n ])}\n >\n <TextField\n name={el.id}\n className={el.className}\n label={el.label}\n onBlur={onBlur}\n errors={errors}\n onChange={onChange}\n values={values}\n />\n </div>\n );\n }\n\n return (\n <div\n className={classes([\n `${itemClassName}`,\n `${itemClassName}--${el.id}`,\n ])}\n >\n <TextField\n name={el.id}\n className={el.className}\n label={el.label}\n onBlur={onBlur}\n errors={errors}\n onChange={onChange}\n values={values}\n />\n </div>\n );\n\n case 'SELECT':\n return (\n <div className={itemClassName}>\n <SelectField\n selectTitle={el.label}\n optionConfig={el.options}\n name={el.id}\n onBlur={onBlur}\n errors={errors}\n onChange={onChange}\n values={values}\n />\n </div>\n );\n\n case 'BOOLEAN':\n return (\n <div className={itemClassName}>\n <CheckboxField\n label={el.label}\n name={el.id}\n onBlur={onBlur}\n errors={errors}\n onChange={onChange}\n />\n </div>\n );\n\n case 'DATE':\n return (\n <div className={itemClassName}>\n <DateField\n label={el.label}\n name={el.id}\n onBlur={onBlur}\n errors={errors}\n onChange={onChange}\n values={values}\n />\n </div>\n );\n\n case 'TEXTAREA':\n return (\n <div\n className={classes([\n `${itemClassName}`,\n `${itemClassName}--${el.id}`,\n ])}\n >\n <TextArea\n className={el.className}\n label={el.label}\n name={el.id}\n onBlur={onBlur}\n errors={errors}\n onChange={onChange}\n values={values}\n />\n </div>\n );\n\n default:\n return null;\n }\n })}\n </>\n );\n }\n);\n","import { FunctionComponent } from 'preact';\nimport { useForm } from '@/auth/hooks/ui/useForm';\nimport { FormProps } from '@/auth/types';\nimport FormInputs from '../FormInputs';\n\nexport const Form: FunctionComponent<FormProps> = ({\n name,\n isLoading,\n children,\n className = 'defaultForm',\n fieldsConfig = [],\n submitCallback,\n}) => {\n const { formData, errors, formRef, handleChange, handleBlur, handleSubmit } =\n useForm({\n submitCallback,\n isLoading,\n fieldsConfig,\n });\n\n return (\n <form\n onSubmit={handleSubmit}\n className={className}\n name={name}\n ref={formRef}\n >\n <FormInputs\n fields={fieldsConfig}\n onChange={handleChange}\n onBlur={handleBlur}\n errors={errors}\n values={formData}\n className={className}\n />\n {children}\n </form>\n );\n};\n","import { FunctionComponent } from 'preact';\nimport { HTMLAttributes } from 'preact/compat';\nimport { classes } from '@adobe/elsie/lib';\nimport '@/auth/components/UI/Title/Title.css';\n\nexport interface TitleProps {\n className?: string;\n text: string;\n bottomLine: boolean;\n children?: any;\n}\n\nexport const Title: FunctionComponent<\n TitleProps & HTMLAttributes<HTMLDivElement>\n> = ({ children, text, bottomLine = true, className }) => {\n return (\n <div\n className={classes(['auth-title', className])}\n data-testid=\"auth-title_id\"\n >\n <div className=\"auth-title__text\">\n <h1 className=\"auth-title__heading\">{text}</h1>\n {children}\n </div>\n {bottomLine ? <div className=\"auth-title__hr\" /> : null}\n </div>\n );\n};\n","import { useState, useCallback } from 'preact/hooks';\nimport { inLineAlertInterface } from '../types';\nimport {\n CheckWithCircle as Success,\n Warning,\n WarningWithCircle as Error,\n} from '@adobe/elsie/icons';\n\nconst iconsList = {\n success: <Success />,\n warning: <Warning />,\n error: <Error />,\n};\n\nexport const useInLineAlert = () => {\n const [inLineAlertProps, setInLineAlertProps] =\n useState<inLineAlertInterface>({});\n\n const handleSetInLineAlertProps = useCallback(\n (notification: inLineAlertInterface | undefined) => {\n if (!notification || !notification.type) return;\n\n const icon = iconsList[notification.type];\n\n setInLineAlertProps({\n ...notification,\n icon,\n });\n },\n []\n );\n\n return { inLineAlertProps, handleSetInLineAlertProps };\n};\n"],"names":["SvgChevronDown","props","React","SvgUser","SvgWarning","SvgCheckWithCircle","SvgWarningWithCircle","getFormValues","form","formData","FormData","entries","Symbol","iterator","JSON","parse","stringify","Object","fromEntries","checkIsFunction","value","CheckboxField","memo","initialValue","label","errors","name","onChange","onBlur","errorMessage","isError","isChecked","setIsChecked","useState","handleSetCheck","useCallback","prev","_jsxs","className","classes","children","_jsx","Checkbox","checked","error","replace","Button","type","buttonText","variant","enableLoader","onClick","style","icon","handleOnclick","event","ElsieButton","convertToInputDateFormat","dateTimeString","parts","split","length","year","month","day","padStart","setLoadingState","fieldList","loading","forEach","element","input","querySelector","textArea","select","classList","add","remove","disabled","useForm","submitCallback","isLoading","fieldsConfig","translations","useText","requiredFieldError","formRef","useRef","setFormData","setErrors","useEffect","current","initForm","buttonSubmit","querySelectorAll","undefined","updateFieldsConfig","field","required","fieldType","currentDate","defaultValue","defaultCheckBox","options","find","el","is_default","isDefault","Array","isArray","handleChange","target","isCheckbox","newValue","newErrors","handleBlur","isKeyPresent","keys","includes","fieldMetaData","trim","handleSubmit","preventDefault","valid","key","isEmptyString","firstErrorField","document","getElementsByName","focus","SvgDate","DateField","values","inputType","setInputType","valueMessage","handleOnFocus","handleAutoFocus","Field","Input","placeholder","floatingLabel","onFocus","Date","generateRandomDigits","digits","i","Math","floor","random","randomId","SelectField","selectTitle","optionConfig","id","selected","filter","item","map","index","defaultChecked","htmlFor","ChevronDown","TextArea","TextField","FormInputs","fields","itemClassName","_Fragment","User","Form","onSubmit","ref","Title","text","bottomLine","iconsList","success","Success","warning","Warning","Error","useInLineAlert","inLineAlertProps","setInLineAlertProps","handleSetInLineAlertProps","notification"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePasswordValidationMessage.js","sources":["../../node_modules/@adobe/elsie/src/icons/Check.svg","../../node_modules/@adobe/elsie/src/icons/Close.svg","../../node_modules/@adobe/elsie/src/icons/Minus.svg","../../src/components/PasswordValidationMessage/PasswordValidationMessage.tsx","../../src/hooks/api/useGetStoreConfigs.tsx","../../src/lib/validationUniqueSymbolsPassword.ts","../../src/hooks/components/usePasswordValidationMessage.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgCheck = (props) => /* @__PURE__ */ React.createElement(\"svg\", { id: \"Icon_Check_Base\", \"data-name\": \"Icon \\\\u2013 Check \\\\u2013 Base\", xmlns: \"http://www.w3.org/2000/svg\", width: 24, height: 24, viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"g\", { id: \"Large\" }, /* @__PURE__ */ React.createElement(\"rect\", { id: \"Placement_area\", \"data-name\": \"Placement area\", width: 24, height: 24, fill: \"#fff\", opacity: 0 }), /* @__PURE__ */ React.createElement(\"g\", { id: \"Check_icon\", \"data-name\": \"Check icon\", transform: \"translate(303.874 1434.583)\" }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", id: \"Path_884137\", \"data-name\": \"Path 884137\", d: \"M148,494.611l4.248,4.244,8.538-8.522\", transform: \"translate(-446.265 -1917.177)\", fill: \"none\", stroke: \"currentColor\" }))));\nexport default SvgCheck;\n","import * as React from \"react\";\nconst SvgClose = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M18.3599 5.64001L5.62988 18.37\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M18.3599 18.37L5.62988 5.64001\", stroke: \"currentColor\" }));\nexport default SvgClose;\n","import * as React from \"react\";\nconst SvgMinus = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M17.3332 11.75H6.6665\", strokeWidth: 1.5, strokeLinecap: \"square\", strokeLinejoin: \"round\", vectorEffect: \"non-scaling-stroke\", fill: \"none\", stroke: \"currentColor\" }));\nexport default SvgMinus;\n","import { FunctionComponent, JSX } from 'preact';\nimport { HTMLAttributes } from 'preact/compat';\nimport { classes } from '@adobe/elsie/lib';\nimport '@/auth/components/PasswordValidationMessage/PasswordValidationMessage.css';\nimport { ValidateLengthConfigProps, statusTypes } from '@/auth/types';\nimport {\n Check,\n Close as ErrorValidation,\n Minus as PendingValidation,\n} from '@adobe/elsie/icons';\nimport { useText } from '@adobe/elsie/i18n';\n\nexport interface PasswordValidationMessageProps {\n validateLengthConfig?: ValidateLengthConfigProps;\n isValidUniqueSymbols?: statusTypes;\n minLength?: number;\n requiredCharacterClasses?: number;\n}\n\nconst getIcon: { [key: string]: JSX.Element } = {\n pending: <PendingValidation />,\n success: <Check />,\n error: <ErrorValidation style={{ fill: 'red' }} />,\n};\n\nexport const PasswordValidationMessage: FunctionComponent<\n PasswordValidationMessageProps & HTMLAttributes<HTMLDivElement>\n> = ({\n minLength = 0,\n requiredCharacterClasses = 0,\n isValidUniqueSymbols = 'pending',\n validateLengthConfig = { status: '', icon: '', message: '' },\n ...props\n}) => {\n const translations = useText({\n chartTwoSymbols: 'Auth.PasswordValidationMessage.chartTwoSymbols',\n chartThreeSymbols: 'Auth.PasswordValidationMessage.chartThreeSymbols',\n chartFourSymbols: 'Auth.PasswordValidationMessage.chartFourSymbols',\n });\n\n const getMessage = (chart: number) => {\n switch (chart) {\n case 2:\n return translations.chartTwoSymbols;\n case 3:\n return translations.chartThreeSymbols;\n case 4:\n return translations.chartFourSymbols;\n default:\n return '';\n }\n };\n\n return (\n <div {...props} className={classes(['elsie-password-validation-message'])}>\n {minLength > 0 ? (\n <div\n className={`auth-passwordValidationMessage_item auth-passwordValidationMessage_item--status-${validateLengthConfig.status}`}\n data-testid={`auth-passwordValidationMessage_item--${validateLengthConfig.icon}`}\n >\n {getIcon[validateLengthConfig.icon as string]}\n <span className={`${validateLengthConfig.status}`}>\n {validateLengthConfig.message}\n </span>\n </div>\n ) : null}\n {requiredCharacterClasses && requiredCharacterClasses >= 2 ? (\n <div\n className={`auth-passwordValidationMessage_item auth-passwordValidationMessage_item--status-${isValidUniqueSymbols}`}\n data-testid={`auth-passwordValidationMessage_item--${isValidUniqueSymbols}`}\n >\n {getIcon[isValidUniqueSymbols]}\n <span className={`pending`}>\n {getMessage(requiredCharacterClasses)}\n </span>\n </div>\n ) : null}\n </div>\n );\n};\n","import { getStoreConfig } from '@/auth/api';\nimport { useEffect, useState } from 'preact/hooks';\nimport { StoreConfigModel } from '../../data/models';\n\nexport const useGetStoreConfigs = () => {\n const [isEmailConfirmationRequired, setIsEmailConfirmationRequired] =\n useState(false);\n const [passwordConfigs, setPasswordConfigs] = useState<{\n minLength: number;\n requiredCharacterClasses: number;\n } | null>(null);\n\n useEffect(() => {\n const storeConfigString = sessionStorage.getItem('storeConfig');\n\n const cachedStoreConfig: StoreConfigModel = storeConfigString\n ? JSON.parse(storeConfigString)\n : null;\n\n if (cachedStoreConfig) {\n const { minLength, requiredCharacterClasses, createAccountConfirmation } =\n cachedStoreConfig;\n\n setPasswordConfigs({\n minLength,\n requiredCharacterClasses,\n });\n\n setIsEmailConfirmationRequired(createAccountConfirmation);\n } else {\n getStoreConfig().then((response) => {\n if (response) {\n const {\n minLength,\n requiredCharacterClasses,\n createAccountConfirmation,\n } = response;\n\n sessionStorage.setItem('storeConfig', JSON.stringify(response));\n\n setPasswordConfigs({\n minLength,\n requiredCharacterClasses,\n });\n\n setIsEmailConfirmationRequired(createAccountConfirmation);\n }\n });\n }\n }, []);\n\n return { passwordConfigs, isEmailConfirmationRequired };\n};\n","export const validationUniqueSymbolsPassword = (\n password: string,\n uniqueSymbolsCount: number\n) => {\n if (uniqueSymbolsCount <= 1) return true;\n\n const numbers = /[0-9]/.test(password) ? 1 : 0;\n const lowerCaseLetter = /[a-z]/.test(password) ? 1 : 0;\n const upperCaseLetter = /[A-Z]/.test(password) ? 1 : 0;\n const specialSymbols = /[^a-zA-Z0-9\\s]/.test(password) ? 1 : 0;\n\n return (\n numbers + lowerCaseLetter + upperCaseLetter + specialSymbols >=\n uniqueSymbolsCount\n );\n};\n","import { validationUniqueSymbolsPassword } from '@/auth/lib/validationUniqueSymbolsPassword';\nimport { useEffect, useMemo, useState } from 'preact/hooks';\nimport { ValidateLengthConfigProps, statusTypes } from '@/auth/types';\nimport { useText } from '@adobe/elsie/i18n';\n\ninterface UsePasswordValidationMessageProps {\n passwordConfigs: {\n minLength: number;\n requiredCharacterClasses: number;\n } | null;\n isClickSubmit: boolean;\n password: string;\n}\n\nexport const usePasswordValidationMessage = ({\n passwordConfigs,\n isClickSubmit,\n password,\n}: UsePasswordValidationMessageProps) => {\n const translations = useText({\n messageLengthPassword:\n 'Auth.PasswordValidationMessage.messageLengthPassword',\n });\n\n const [isValidUniqueSymbols, setIsValidUniqueSymbols] =\n useState<statusTypes>('pending');\n\n useEffect(() => {\n if (!passwordConfigs) return;\n\n const result = validationUniqueSymbolsPassword(\n password,\n passwordConfigs.requiredCharacterClasses\n );\n\n if (isClickSubmit && password.length > 0) {\n result\n ? setIsValidUniqueSymbols('success')\n : setIsValidUniqueSymbols('error');\n } else if (isClickSubmit && password.length === 0) {\n setIsValidUniqueSymbols('pending');\n } else {\n result\n ? setIsValidUniqueSymbols('success')\n : setIsValidUniqueSymbols('pending');\n }\n }, [isClickSubmit, passwordConfigs, password]);\n\n const defaultLengthMessage: ValidateLengthConfigProps | undefined =\n useMemo(() => {\n if (!passwordConfigs) return;\n\n const defaultMessage: ValidateLengthConfigProps = {\n status: 'pending',\n icon: 'pending',\n message: translations.messageLengthPassword?.replace(\n '{minLength}',\n `${passwordConfigs.minLength}`\n ),\n };\n\n if (password.length && password.length >= passwordConfigs.minLength) {\n return { ...defaultMessage, icon: 'success', status: 'success' };\n }\n\n if (password.length && password.length < passwordConfigs.minLength) {\n return isClickSubmit\n ? { ...defaultMessage, icon: 'error', status: 'error' }\n : { ...defaultMessage, icon: 'pending', status: 'pending' };\n }\n\n return defaultMessage;\n }, [\n passwordConfigs,\n translations.messageLengthPassword,\n password?.length,\n isClickSubmit,\n ]);\n\n return { isValidUniqueSymbols, defaultLengthMessage };\n};\n"],"names":["SvgCheck","props","React","SvgClose","SvgMinus","getIcon","pending","_jsx","PendingValidation","success","Check","error","ErrorValidation","style","fill","PasswordValidationMessage","minLength","requiredCharacterClasses","isValidUniqueSymbols","validateLengthConfig","status","icon","message","translations","useText","chartTwoSymbols","chartThreeSymbols","chartFourSymbols","getMessage","chart","_jsxs","className","classes","children","useGetStoreConfigs","isEmailConfirmationRequired","setIsEmailConfirmationRequired","useState","passwordConfigs","setPasswordConfigs","useEffect","storeConfigString","sessionStorage","getItem","cachedStoreConfig","JSON","parse","createAccountConfirmation","getStoreConfig","then","response","setItem","stringify","validationUniqueSymbolsPassword","password","uniqueSymbolsCount","numbers","test","lowerCaseLetter","upperCaseLetter","specialSymbols","usePasswordValidationMessage","isClickSubmit","messageLengthPassword","setIsValidUniqueSymbols","result","length","defaultLengthMessage","useMemo","defaultMessage","replace"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1 +0,0 @@
1
- {"version":3,"mappings":"i0CAMMA,EAAoBC,EACxB,IAAMC,EAAA,WAAO,oBAAqC,EACpD,KACMC,EAAaF,EAAK,IAAMC,EAAA,WAAO,qBAA8B,EAAC,KAC9DE,EAAaH,EAAK,IAAMC,EAAA,WAAO,qBAA8B,EAAC,KAEvDG,EAA2CA,CAAC,CACvDC,cAAc,aACdC,mBACAC,mBACAC,yBACF,IAAM,CACJ,KAAM,CAACC,EAAiBC,CAAkB,EACxCC,EAA8BN,CAAW,EAErCO,EAAkBC,EACtB,KAAO,CACLC,WACEC,EAACb,EAAU,CACTQ,qBAAuC,GACnCJ,EACL,EAEHU,WACED,EAACZ,EAAU,CACTO,qBAAuC,GACnCH,EACL,EAEHU,kBACEF,EAAChB,EAAiB,CAChBW,qBAAuC,GACnCF,EACL,IAGL,CACEA,EACAF,EACAC,EACAG,CAAkB,CAEtB,EAEA,OACEK,EAACG,EAAQ,CAACC,SAAUJ,EAACK,EAAc,CAACC,eAAgBZ,EAAkB,EAAEa,SACtEP,EAAA,OAAKQ,UAAU,eAAcD,SAAEV,EAAgBH,CAAe,EAAO,EAC7D,CAEd","names":["ResetPasswordForm","lazy","__vitePreload","SignInForm","SignUpForm","AuthCombine","defaultView","signInFormConfig","signUpFormConfig","resetPasswordFormConfig","activeComponent","setActiveComponent","useState","renderComponent","useMemo","signInForm","_jsx","signUpForm","resetPasswordForm","Suspense","fallback","SkeletonLoader","activeSkeleton","children","className"],"ignoreList":[],"sources":["../../src/containers/AuthCombine/AuthCombine.tsx"],"sourcesContent":["import { Suspense, lazy } from 'preact/compat';\nimport { Container } from '@adobe/elsie/lib';\nimport { useMemo, useState } from 'preact/hooks';\nimport { AuthCombineProps, activeComponentType } from '@/auth/types';\nimport SkeletonLoader from '@/auth/components/SkeletonLoader';\n\nconst ResetPasswordForm = lazy(\n () => import('@/auth/components/ResetPasswordForm')\n);\nconst SignInForm = lazy(() => import('@/auth/components/SignInForm'));\nconst SignUpForm = lazy(() => import('@/auth/components/SignUpForm'));\n\nexport const AuthCombine: Container<AuthCombineProps> = ({\n defaultView = 'signInForm',\n signInFormConfig,\n signUpFormConfig,\n resetPasswordFormConfig,\n}) => {\n const [activeComponent, setActiveComponent] =\n useState<activeComponentType>(defaultView);\n\n const renderComponent = useMemo(\n () => ({\n signInForm: (\n <SignInForm\n setActiveComponent={setActiveComponent}\n {...signInFormConfig}\n />\n ),\n signUpForm: (\n <SignUpForm\n setActiveComponent={setActiveComponent}\n {...signUpFormConfig}\n />\n ),\n resetPasswordForm: (\n <ResetPasswordForm\n setActiveComponent={setActiveComponent}\n {...resetPasswordFormConfig}\n />\n ),\n }),\n [\n resetPasswordFormConfig,\n signInFormConfig,\n signUpFormConfig,\n setActiveComponent,\n ]\n );\n\n return (\n <Suspense fallback={<SkeletonLoader activeSkeleton={activeComponent} />}>\n <div className=\"auth-combine\">{renderComponent[activeComponent]}</div>\n </Suspense>\n );\n};\n"],"file":"containers/AuthCombine.js"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ResetPassword.js","sources":["../../src/containers/ResetPassword/ResetPassword.tsx"],"sourcesContent":["import { Container } from '@adobe/elsie/lib';\nimport ResetPasswordForm from '@/auth/components/ResetPasswordForm';\nimport { ResetPasswordProps } from '@/auth/types';\n\nexport const ResetPassword: Container<ResetPasswordProps> = ({\n formSize,\n routeSignIn,\n onErrorCallback,\n}) => {\n return (\n <div className=\"auth-reset-password\">\n <ResetPasswordForm\n formSize={formSize}\n routeSignIn={routeSignIn}\n onErrorCallback={onErrorCallback}\n />\n </div>\n );\n};\n"],"names":["ResetPassword","formSize","routeSignIn","onErrorCallback","_jsx","className","children","ResetPasswordForm"],"mappings":"qkBAIO,MAAMA,EAA+CA,CAAC,CAC3DC,SAAAA,EACAC,YAAAA,EACAC,gBAAAA,CACF,IAEIC,EAAA,MAAA,CAAKC,UAAU,sBAAqBC,SAClCF,EAACG,EAAiB,CAChBN,SAAAA,EACAC,YAAAA,EACAC,gBAAAA,CAAAA,CACD,CAAA,CACE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SignIn.js","sources":["../../src/containers/SignIn/SignIn.tsx"],"sourcesContent":["import { Container } from '@adobe/elsie/lib';\nimport SignInForm from '@/auth/components/SignInForm';\nimport { SignInProps } from '@/auth/types';\n\nexport const SignIn: Container<SignInProps> = ({\n enableEmailConfirmation,\n initialEmailValue,\n formSize,\n renderSignUpLink,\n hideCloseBtnOnEmailConfirmation,\n routeRedirectOnEmailConfirmationClose,\n routeRedirectOnSignIn,\n routeForgotPassword,\n routeSignUp,\n onSuccessCallback,\n onErrorCallback,\n onSignUpLinkClick,\n successNotificationForm,\n}) => {\n return (\n <div className=\"auth-sign-in\">\n <SignInForm\n formSize={formSize}\n renderSignUpLink={renderSignUpLink}\n initialEmailValue={initialEmailValue}\n enableEmailConfirmation={enableEmailConfirmation}\n hideCloseBtnOnEmailConfirmation={hideCloseBtnOnEmailConfirmation}\n routeRedirectOnEmailConfirmationClose={\n routeRedirectOnEmailConfirmationClose\n }\n routeSignUp={routeSignUp}\n onErrorCallback={onErrorCallback}\n onSuccessCallback={onSuccessCallback}\n onSignUpLinkClick={onSignUpLinkClick}\n routeForgotPassword={routeForgotPassword}\n routeRedirectOnSignIn={routeRedirectOnSignIn}\n successNotificationForm={successNotificationForm}\n />\n </div>\n );\n};\n"],"names":["SignIn","enableEmailConfirmation","initialEmailValue","formSize","renderSignUpLink","hideCloseBtnOnEmailConfirmation","routeRedirectOnEmailConfirmationClose","routeRedirectOnSignIn","routeForgotPassword","routeSignUp","onSuccessCallback","onErrorCallback","onSignUpLinkClick","successNotificationForm","_jsx","className","children","SignInForm"],"mappings":"gvBAIO,MAAMA,EAAiCA,CAAC,CAC7CC,wBAAAA,EACAC,kBAAAA,EACAC,SAAAA,EACAC,iBAAAA,EACAC,gCAAAA,EACAC,sCAAAA,EACAC,sBAAAA,EACAC,oBAAAA,EACAC,YAAAA,EACAC,kBAAAA,EACAC,gBAAAA,EACAC,kBAAAA,EACAC,wBAAAA,CACF,IAEIC,EAAA,MAAA,CAAKC,UAAU,eAAcC,SAC3BF,EAACG,EAAU,CACTd,SAAAA,EACAC,iBAAAA,EACAF,kBAAAA,EACAD,wBAAAA,EACAI,gCAAAA,EACAC,sCAAAA,EAGAG,YAAAA,EACAE,gBAAAA,EACAD,kBAAAA,EACAE,kBAAAA,EACAJ,oBAAAA,EACAD,sBAAAA,EACAM,wBAAAA,CAAAA,CACD,CAAA,CACE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SignUp.js","sources":["../../src/containers/SignUp/SignUp.tsx"],"sourcesContent":["import { Container } from '@adobe/elsie/lib';\nimport SignUpForm from '@/auth/components/SignUpForm';\nimport { SignUpProps } from '@/auth/types';\n\nexport const SignUp: Container<SignUpProps> = ({\n formSize,\n apiVersion2,\n addressesData,\n inputsDefaultValueSet,\n displayNewsletterCheckbox,\n displayTermsOfUseCheckbox,\n fieldsConfigForApiVersion1,\n hideCloseBtnOnEmailConfirmation,\n routeRedirectOnEmailConfirmationClose,\n routeRedirectOnSignIn,\n successNotificationForm,\n onSuccessCallback,\n onErrorCallback,\n routeSignIn,\n}) => {\n return (\n <div className=\"auth-sign-up\">\n <SignUpForm\n formSize={formSize}\n apiVersion2={apiVersion2}\n addressesData={addressesData}\n inputsDefaultValueSet={inputsDefaultValueSet}\n fieldsConfigForApiVersion1={fieldsConfigForApiVersion1}\n displayNewsletterCheckbox={displayNewsletterCheckbox}\n displayTermsOfUseCheckbox={displayTermsOfUseCheckbox}\n hideCloseBtnOnEmailConfirmation={hideCloseBtnOnEmailConfirmation}\n routeRedirectOnEmailConfirmationClose={\n routeRedirectOnEmailConfirmationClose\n }\n routeRedirectOnSignIn={routeRedirectOnSignIn}\n routeSignIn={routeSignIn}\n successNotificationForm={successNotificationForm}\n onErrorCallback={onErrorCallback}\n onSuccessCallback={onSuccessCallback}\n />\n </div>\n );\n};\n"],"names":["SignUp","formSize","apiVersion2","addressesData","inputsDefaultValueSet","displayNewsletterCheckbox","displayTermsOfUseCheckbox","fieldsConfigForApiVersion1","hideCloseBtnOnEmailConfirmation","routeRedirectOnEmailConfirmationClose","routeRedirectOnSignIn","successNotificationForm","onSuccessCallback","onErrorCallback","routeSignIn","_jsx","className","children","SignUpForm"],"mappings":"+0BAIO,MAAMA,EAAiCA,CAAC,CAC7CC,SAAAA,EACAC,YAAAA,EACAC,cAAAA,EACAC,sBAAAA,EACAC,0BAAAA,EACAC,0BAAAA,EACAC,2BAAAA,EACAC,gCAAAA,EACAC,sCAAAA,EACAC,sBAAAA,EACAC,wBAAAA,EACAC,kBAAAA,EACAC,gBAAAA,EACAC,YAAAA,CACF,IAEIC,EAAA,MAAA,CAAKC,UAAU,eAAcC,SAC3BF,EAACG,EAAU,CACTjB,SAAAA,EACAC,YAAAA,EACAC,cAAAA,EACAC,sBAAAA,EACAG,2BAAAA,EACAF,0BAAAA,EACAC,0BAAAA,EACAE,gCAAAA,EACAC,sCAAAA,EAGAC,sBAAAA,EACAI,YAAAA,EACAH,wBAAAA,EACAE,gBAAAA,EACAD,kBAAAA,CAAAA,CACD,CAAA,CACE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SuccessNotification.js","sources":["../../src/components/SuccessNotificationForm/SuccessNotificationForm.tsx","../../src/containers/SuccessNotification/SuccessNotification.tsx"],"sourcesContent":["import { FunctionComponent } from 'preact';\nimport { HTMLAttributes } from 'preact/compat';\nimport { classes } from '@adobe/elsie/lib';\nimport '@/auth/components/SuccessNotificationForm/SuccessNotificationForm.css';\nimport { Button } from '@adobe/elsie/components';\nimport { SuccessNotificationFormProps } from '@/auth/types';\n\nexport const SuccessNotificationForm: FunctionComponent<\n SuccessNotificationFormProps & HTMLAttributes<HTMLDivElement>\n> = ({\n formSize = 'default',\n className = '',\n headingText = '',\n messageText = '',\n primaryButtonText = '',\n secondaryButtonText = '',\n onPrimaryButtonClick,\n onSecondaryButtonClick,\n}) => {\n if (!primaryButtonText && !secondaryButtonText) return null;\n\n return (\n <div\n className={classes(['auth-successNotificationForm', formSize, className])}\n >\n <p\n className=\"auth-successNotificationForm__title\"\n data-testid=\"notification-title\"\n >\n {headingText}\n </p>\n <p\n className=\"auth-successNotificationForm__content-text\"\n data-testid=\"notification-content\"\n >\n {messageText}\n </p>\n\n <Button\n type=\"button\"\n className=\"auth-successNotificationForm__button auth-successNotificationForm__button--top\"\n onClick={onPrimaryButtonClick}\n >\n {primaryButtonText}\n </Button>\n <Button type=\"button\" variant=\"tertiary\" onClick={onSecondaryButtonClick}>\n {secondaryButtonText}\n </Button>\n </div>\n );\n};\n","import { Container } from '@adobe/elsie/lib';\nimport SuccessNotificationForm from '@/auth/components/SuccessNotificationForm';\nimport { SuccessNotificationProps } from '@/auth/types';\n\nexport const SuccessNotification: Container<SuccessNotificationProps> = ({\n formSize = 'default',\n className,\n headingText,\n messageText,\n primaryButtonText,\n secondaryButtonText,\n onPrimaryButtonClick,\n onSecondaryButtonClick,\n}) => {\n return (\n <div className=\"auth-success-notification\">\n <SuccessNotificationForm\n formSize={formSize}\n className={className}\n headingText={headingText}\n messageText={messageText}\n primaryButtonText={primaryButtonText}\n secondaryButtonText={secondaryButtonText}\n onPrimaryButtonClick={onPrimaryButtonClick}\n onSecondaryButtonClick={onSecondaryButtonClick}\n />\n </div>\n );\n};\n"],"names":["SuccessNotificationForm","formSize","className","headingText","messageText","primaryButtonText","secondaryButtonText","onPrimaryButtonClick","onSecondaryButtonClick","_jsxs","classes","children","_jsx","Button","type","onClick","variant","SuccessNotification"],"mappings":"2KAOO,MAAMA,EAETA,CAAC,CACHC,SAAAA,EAAW,UACXC,UAAAA,EAAY,GACZC,YAAAA,EAAc,GACdC,YAAAA,EAAc,GACdC,kBAAAA,EAAoB,GACpBC,oBAAAA,EAAsB,GACtBC,qBAAAA,EACAC,uBAAAA,CACF,IACM,CAACH,GAAqB,CAACC,EAA4B,KAGrDG,EAAA,MAAA,CACEP,UAAWQ,EAAQ,CAAC,+BAAgCT,EAAUC,CAAS,CAAC,EAAES,UAE1EC,EAAA,IAAA,CACEV,UAAU,sCACV,cAAY,qBAAoBS,SAE/BR,CAAAA,CACA,EACHS,EAAA,IAAA,CACEV,UAAU,6CACV,cAAY,uBAAsBS,SAEjCP,CAAAA,CACA,EAEHQ,EAACC,EAAM,CACLC,KAAK,SACLZ,UAAU,iFACVa,QAASR,EAAqBI,SAE7BN,CAAAA,CACK,EACRO,EAACC,EAAM,CAACC,KAAK,SAASE,QAAQ,WAAWD,QAASP,EAAuBG,SACtEL,CAAAA,CACK,CAAC,CAAA,CACN,EC5CIW,EAA2DA,CAAC,CACvEhB,SAAAA,EAAW,UACXC,UAAAA,EACAC,YAAAA,EACAC,YAAAA,EACAC,kBAAAA,EACAC,oBAAAA,EACAC,qBAAAA,EACAC,uBAAAA,CACF,IAEII,EAAA,MAAA,CAAKV,UAAU,4BAA2BS,SACxCC,EAACZ,EAAuB,CACtBC,SAAAA,EACAC,UAAAA,EACAC,YAAAA,EACAC,YAAAA,EACAC,kBAAAA,EACAC,oBAAAA,EACAC,qBAAAA,EACAC,uBAAAA,CAAAA,CACD,CAAA,CACE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"UpdatePassword.js","sources":["../../src/lib/getUrlParam.ts","../../src/hooks/components/useUpdatePasswordForm.tsx","../../src/components/UpdatePasswordForm/UpdatePasswordForm.tsx","../../src/containers/UpdatePassword/UpdatePassword.tsx"],"sourcesContent":["export const getUrlParam = (url: string, param: string): string => {\n const result = url\n .split('&')\n .filter(el => el.includes(param))\n .map(item => {\n return item.split('=')[1];\n });\n\n return result[0];\n};\n","import { resetPassword, getCustomerToken } from '@/auth/api';\nimport { getFormValues } from '@/auth/lib/getFormValues';\nimport { getUrlParam } from '@/auth/lib/getUrlParam';\nimport { validationUniqueSymbolsPassword } from '@/auth/lib/validationUniqueSymbolsPassword';\nimport { useCallback, useEffect, useState } from 'preact/hooks';\nimport { UseUpdatePasswordFormProps } from '@/auth/types';\nimport { useText } from '@adobe/elsie/i18n';\nimport { checkIsFunction } from '@/auth/lib/checkIsFunction';\n\nexport const useUpdatePasswordForm = ({\n isEmailConfirmationRequired,\n signInOnSuccess,\n passwordConfigs,\n routeRedirectOnSignIn,\n routeWrongUrlRedirect,\n onErrorCallback,\n onSuccessCallback,\n handleSetInLineAlertProps,\n routeRedirectOnPasswordUpdate,\n}: UseUpdatePasswordFormProps) => {\n const translations = useText({\n errorNotification: 'Auth.Notification.errorNotification',\n updatePasswordMessage: 'Auth.Notification.updatePasswordMessage',\n customerTokenErrorMessage: 'Auth.Api.customerTokenErrorMessage',\n });\n\n const [isSuccessful, setIsSuccessful] = useState({\n userName: '',\n status: false,\n });\n const [updatePasswordValue, setUpdatePasswordValue] = useState('');\n const [isClickSubmit, setIsClickSubmit] = useState(false);\n const [email, setEmail] = useState('');\n const [token, setToken] = useState('');\n const [isLoading, setIsLoading] = useState(false);\n\n useEffect(() => {\n const { search } = window.location;\n\n if (\n !search.includes('token=') &&\n !search.includes('email=') &&\n checkIsFunction(routeWrongUrlRedirect)\n ) {\n window.location.href = routeWrongUrlRedirect();\n }\n\n const url = decodeURIComponent(search);\n const tokenParam = getUrlParam(url, 'token');\n const emailParam = getUrlParam(url, 'email');\n\n setEmail(emailParam);\n setToken(tokenParam);\n }, [routeWrongUrlRedirect]);\n\n const submitUpdatePassword = useCallback(\n async (event: Event): Promise<void> => {\n event.preventDefault();\n\n setIsLoading(true);\n\n const formValues = getFormValues(event.target);\n const validationData = formValues?.password && email && token;\n\n const requiredCharacterClasses =\n passwordConfigs?.requiredCharacterClasses || 0;\n const minLength = passwordConfigs?.minLength || 0;\n\n if (\n !validationUniqueSymbolsPassword(\n formValues?.password,\n requiredCharacterClasses\n ) ||\n formValues.password.length < +minLength\n ) {\n setIsClickSubmit(true);\n setIsLoading(false);\n\n return;\n }\n\n if (!validationData) {\n handleSetInLineAlertProps({\n type: 'error',\n text: translations.errorNotification,\n });\n\n setIsLoading(false);\n\n return;\n }\n\n const { message, success } = await resetPassword(\n email,\n token,\n formValues.password\n );\n\n if (success) {\n if (\n isEmailConfirmationRequired ||\n (!isEmailConfirmationRequired && !signInOnSuccess)\n ) {\n if (checkIsFunction(routeRedirectOnPasswordUpdate)) {\n window.location.href = routeRedirectOnPasswordUpdate();\n }\n\n setIsClickSubmit(true);\n setIsLoading(false);\n handleSetInLineAlertProps({\n type: 'success',\n text: translations.updatePasswordMessage,\n });\n setUpdatePasswordValue('');\n\n return;\n }\n\n const loginResponse = await getCustomerToken({\n email,\n password: formValues.password,\n handleSetInLineAlertProps,\n onErrorCallback,\n translations,\n });\n\n if (loginResponse?.userName) {\n if (checkIsFunction(routeRedirectOnSignIn)) {\n window.location.href = routeRedirectOnSignIn();\n } else {\n setIsSuccessful({\n userName: loginResponse?.userName,\n status: true,\n });\n onSuccessCallback?.(loginResponse?.userName);\n }\n }\n } else {\n handleSetInLineAlertProps({ type: 'error', text: message });\n onErrorCallback?.({ message, success });\n }\n\n setIsLoading(false);\n },\n [\n email,\n token,\n passwordConfigs,\n isEmailConfirmationRequired,\n translations,\n signInOnSuccess,\n handleSetInLineAlertProps,\n routeRedirectOnSignIn,\n routeRedirectOnPasswordUpdate,\n onErrorCallback,\n onSuccessCallback,\n ]\n );\n\n const handleSetUpdatePasswordValue = useCallback((value: string) => {\n setUpdatePasswordValue(value);\n }, []);\n\n return {\n isSuccessful,\n updatePasswordValue,\n isClickSubmit,\n isLoading,\n submitUpdatePassword,\n handleSetUpdatePasswordValue,\n };\n};\n","import { FunctionComponent } from 'preact';\nimport { classes } from '@adobe/elsie/lib';\nimport '@/auth/components/UpdatePasswordForm/UpdatePasswordForm.css';\nimport PasswordValidationMessage from '@/auth/components/PasswordValidationMessage';\nimport { useGetStoreConfigs } from '@/auth/hooks/api/useGetStoreConfigs';\nimport { usePasswordValidationMessage } from '@/auth/hooks/components/usePasswordValidationMessage';\nimport { useUpdatePasswordForm } from '@/auth/hooks/components/useUpdatePasswordForm';\nimport { UpdatePasswordFormProps } from '@/auth/types';\nimport { useText } from '@adobe/elsie/i18n';\nimport { Button, Form, PasswordField, Title } from '@/auth/components/UI';\nimport { useInLineAlert } from '@/auth/hooks/useInLineAlert';\nimport { InLineAlert } from '@adobe/elsie/components';\n\nexport const UpdatePasswordForm: FunctionComponent<UpdatePasswordFormProps> = ({\n signInOnSuccess = true,\n formSize = 'default',\n routeRedirectOnSignIn,\n routeWrongUrlRedirect,\n successNotificationForm,\n onErrorCallback,\n onSuccessCallback,\n routeRedirectOnPasswordUpdate,\n}) => {\n const translations = useText({\n title: 'Auth.UpdatePasswordForm.title',\n buttonPrimary: 'Auth.UpdatePasswordForm.buttonPrimary',\n });\n\n const { passwordConfigs, isEmailConfirmationRequired } = useGetStoreConfigs();\n\n const { inLineAlertProps, handleSetInLineAlertProps } = useInLineAlert();\n\n const {\n isSuccessful,\n updatePasswordValue,\n isClickSubmit,\n isLoading,\n submitUpdatePassword,\n handleSetUpdatePasswordValue,\n } = useUpdatePasswordForm({\n isEmailConfirmationRequired,\n signInOnSuccess,\n passwordConfigs,\n routeRedirectOnSignIn,\n routeWrongUrlRedirect,\n onErrorCallback,\n onSuccessCallback,\n handleSetInLineAlertProps,\n routeRedirectOnPasswordUpdate,\n });\n\n const { isValidUniqueSymbols, defaultLengthMessage } =\n usePasswordValidationMessage({\n password: updatePasswordValue,\n isClickSubmit,\n passwordConfigs,\n });\n\n if (successNotificationForm && isSuccessful.status) {\n return successNotificationForm(isSuccessful.userName);\n }\n\n return (\n <div className={classes(['auth-updatePasswordForm', formSize])}>\n <Title\n text={translations.title}\n bottomLine={false}\n className=\"auth-updatePasswordForm__title\"\n />\n {inLineAlertProps.text ? (\n <InLineAlert\n className=\"auth-updatePasswordForm__notification\"\n /* \n TODO - Remove when SDK will be updated\n https://jira.corp.adobe.com/browse/USF-1240\n */\n // @ts-ignore\n variant=\"secondary\"\n heading={inLineAlertProps.text}\n icon={inLineAlertProps.icon}\n />\n ) : null}\n <Form\n name=\"updatePassword_form\"\n className=\"auth-updatePasswordForm__form\"\n submitCallback={submitUpdatePassword}\n isLoading={isLoading}\n fieldsConfig={[]}\n >\n <PasswordField\n initialPassword={updatePasswordValue}\n required={true}\n className=\"auth-updatePasswordForm__form__item\"\n setPasswordValueCallback={handleSetUpdatePasswordValue}\n isError={\n isValidUniqueSymbols === 'error' ||\n defaultLengthMessage?.status === 'error'\n }\n >\n <PasswordValidationMessage\n minLength={passwordConfigs?.minLength}\n requiredCharacterClasses={passwordConfigs?.requiredCharacterClasses}\n validateLengthConfig={defaultLengthMessage}\n isValidUniqueSymbols={isValidUniqueSymbols}\n />\n </PasswordField>\n <div className=\"auth-updatePasswordForm__button\">\n <Button\n type=\"submit\"\n buttonText={translations.buttonPrimary}\n variant=\"primary\"\n enableLoader={isLoading}\n />\n </div>\n </Form>\n </div>\n );\n};\n","import { Container } from '@adobe/elsie/lib';\nimport UpdatePasswordForm from '@/auth/components/UpdatePasswordForm';\nimport { UpdatePasswordProps } from '@/auth/types';\n\nexport const UpdatePassword: Container<UpdatePasswordProps> = ({\n formSize,\n signInOnSuccess,\n routeRedirectOnPasswordUpdate,\n routeRedirectOnSignIn,\n routeWrongUrlRedirect,\n successNotificationForm,\n onErrorCallback,\n onSuccessCallback,\n}) => {\n return (\n <div className=\"auth-update-password\">\n <UpdatePasswordForm\n formSize={formSize}\n signInOnSuccess={signInOnSuccess}\n routeRedirectOnSignIn={routeRedirectOnSignIn}\n routeWrongUrlRedirect={routeWrongUrlRedirect}\n onErrorCallback={onErrorCallback}\n onSuccessCallback={onSuccessCallback}\n successNotificationForm={successNotificationForm}\n routeRedirectOnPasswordUpdate={routeRedirectOnPasswordUpdate}\n />\n </div>\n );\n};\n"],"names":["getUrlParam","url","param","split","filter","el","includes","map","item","useUpdatePasswordForm","isEmailConfirmationRequired","signInOnSuccess","passwordConfigs","routeRedirectOnSignIn","routeWrongUrlRedirect","onErrorCallback","onSuccessCallback","handleSetInLineAlertProps","routeRedirectOnPasswordUpdate","translations","useText","errorNotification","updatePasswordMessage","customerTokenErrorMessage","isSuccessful","setIsSuccessful","useState","userName","status","updatePasswordValue","setUpdatePasswordValue","isClickSubmit","setIsClickSubmit","email","setEmail","token","setToken","isLoading","setIsLoading","useEffect","search","window","location","checkIsFunction","href","decodeURIComponent","tokenParam","emailParam","submitUpdatePassword","useCallback","event","preventDefault","formValues","getFormValues","target","validationData","password","requiredCharacterClasses","minLength","validationUniqueSymbolsPassword","length","type","text","message","success","resetPassword","loginResponse","getCustomerToken","handleSetUpdatePasswordValue","value","UpdatePasswordForm","formSize","successNotificationForm","title","buttonPrimary","useGetStoreConfigs","inLineAlertProps","useInLineAlert","isValidUniqueSymbols","defaultLengthMessage","usePasswordValidationMessage","_jsxs","className","classes","children","_jsx","Title","bottomLine","InLineAlert","variant","heading","icon","Form","name","submitCallback","fieldsConfig","PasswordField","initialPassword","required","setPasswordValueCallback","isError","PasswordValidationMessage","validateLengthConfig","Button","buttonText","enableLoader","UpdatePassword"],"mappings":"syBAAaA,MAAAA,EAAcA,CAACC,EAAaC,IACxBD,EACZE,MAAM,GAAG,EACTC,OAAaC,GAAAA,EAAGC,SAASJ,CAAK,CAAC,EAC/BK,IAAYC,GACJA,EAAKL,MAAM,GAAG,EAAE,CAAC,CACzB,EAEW,CAAC,ECCJM,GAAwBA,CAAC,CACpCC,4BAAAA,EACAC,gBAAAA,EACAC,gBAAAA,EACAC,sBAAAA,EACAC,sBAAAA,EACAC,gBAAAA,EACAC,kBAAAA,EACAC,0BAAAA,EACAC,8BAAAA,CAC0B,IAAM,CAChC,MAAMC,EAAeC,EAAQ,CAC3BC,kBAAmB,sCACnBC,sBAAuB,0CACvBC,0BAA2B,oCAAA,CAC5B,EAEK,CAACC,EAAcC,CAAe,EAAIC,EAAS,CAC/CC,SAAU,GACVC,OAAQ,EAAA,CACT,EACK,CAACC,EAAqBC,CAAsB,EAAIJ,EAAS,EAAE,EAC3D,CAACK,EAAeC,CAAgB,EAAIN,EAAS,EAAK,EAClD,CAACO,EAAOC,CAAQ,EAAIR,EAAS,EAAE,EAC/B,CAACS,EAAOC,CAAQ,EAAIV,EAAS,EAAE,EAC/B,CAACW,EAAWC,CAAY,EAAIZ,EAAS,EAAK,EAEhDa,EAAU,IAAM,CACR,KAAA,CAAEC,OAAAA,CAAAA,EAAWC,OAAOC,SAGxB,CAACF,EAAOlC,SAAS,QAAQ,GACzB,CAACkC,EAAOlC,SAAS,QAAQ,GACzBqC,EAAgB7B,CAAqB,IAE9B4B,OAAAA,SAASE,KAAO9B,KAGnBb,MAAAA,EAAM4C,mBAAmBL,CAAM,EAC/BM,EAAa9C,EAAYC,EAAK,OAAO,EACrC8C,EAAa/C,EAAYC,EAAK,OAAO,EAE3CiC,EAASa,CAAU,EACnBX,EAASU,CAAU,CAAA,EAClB,CAAChC,CAAqB,CAAC,EAEpBkC,MAAAA,EAAuBC,EAC3B,MAAOC,GAAgC,CACrCA,EAAMC,eAAe,EAErBb,EAAa,EAAI,EAEXc,MAAAA,EAAaC,EAAcH,EAAMI,MAAM,EACvCC,GAAiBH,GAAAA,YAAAA,EAAYI,WAAYvB,GAASE,EAElDsB,GACJ7C,GAAAA,YAAAA,EAAiB6C,2BAA4B,EACzCC,GAAY9C,GAAAA,YAAAA,EAAiB8C,YAAa,EAG9C,GAAA,CAACC,EACCP,GAAAA,YAAAA,EAAYI,SACZC,CACF,GACAL,EAAWI,SAASI,OAAS,CAACF,EAC9B,CACA1B,EAAiB,EAAI,EACrBM,EAAa,EAAK,EAElB,MACF,CAEA,GAAI,CAACiB,EAAgB,CACOtC,EAAA,CACxB4C,KAAM,QACNC,KAAM3C,EAAaE,iBAAAA,CACpB,EAEDiB,EAAa,EAAK,EAElB,MACF,CAEM,KAAA,CAAEyB,QAAAA,EAASC,QAAAA,CAAAA,EAAY,MAAMC,EACjChC,EACAE,EACAiB,EAAWI,QACb,EAEA,GAAIQ,EAAS,CACX,GACEtD,GACC,CAACA,GAA+B,CAACC,EAClC,CACIgC,EAAgBzB,CAA6B,IACxCwB,OAAAA,SAASE,KAAO1B,KAGzBc,EAAiB,EAAI,EACrBM,EAAa,EAAK,EACQrB,EAAA,CACxB4C,KAAM,UACNC,KAAM3C,EAAaG,qBAAAA,CACpB,EACDQ,EAAuB,EAAE,EAEzB,MACF,CAEMoC,MAAAA,EAAgB,MAAMC,EAAiB,CAC3ClC,MAAAA,EACAuB,SAAUJ,EAAWI,SACrBvC,0BAAAA,EACAF,gBAAAA,EACAI,aAAAA,CAAAA,CACD,EAEG+C,GAAAA,MAAAA,EAAevC,WACbgB,EAAgB9B,CAAqB,EAChC6B,OAAAA,SAASE,KAAO/B,KAEPY,EAAA,CACdE,SAAUuC,GAAAA,YAAAA,EAAevC,SACzBC,OAAQ,EAAA,CACT,EACDZ,GAAAA,MAAAA,EAAoBkD,GAAAA,YAAAA,EAAevC,WAEvC,MAE0BV,EAAA,CAAE4C,KAAM,QAASC,KAAMC,CAAAA,CAAS,EACxChD,GAAA,MAAAA,EAAA,CAAEgD,QAAAA,EAASC,QAAAA,CAAAA,GAG/B1B,EAAa,EAAK,CAEpB,EAAA,CACEL,EACAE,EACAvB,EACAF,EACAS,EACAR,EACAM,EACAJ,EACAK,EACAH,EACAC,CAAiB,CAErB,EAEMoD,EAA+BnB,EAAaoB,GAAkB,CAClEvC,EAAuBuC,CAAK,CAC9B,EAAG,CAAE,CAAA,EAEE,MAAA,CACL7C,aAAAA,EACAK,oBAAAA,EACAE,cAAAA,EACAM,UAAAA,EACAW,qBAAAA,EACAoB,6BAAAA,CAAAA,CAEJ,EC9JaE,GAAiEA,CAAC,CAC7E3D,gBAAAA,EAAkB,GAClB4D,SAAAA,EAAW,UACX1D,sBAAAA,EACAC,sBAAAA,EACA0D,wBAAAA,EACAzD,gBAAAA,EACAC,kBAAAA,EACAE,8BAAAA,CACF,IAAM,CACJ,MAAMC,EAAeC,EAAQ,CAC3BqD,MAAO,gCACPC,cAAe,uCAAA,CAChB,EAEK,CAAE9D,gBAAAA,EAAiBF,4BAAAA,GAAgCiE,EAAmB,EAEtE,CAAEC,iBAAAA,EAAkB3D,0BAAAA,GAA8B4D,EAAe,EAEjE,CACJrD,aAAAA,EACAK,oBAAAA,EACAE,cAAAA,EACAM,UAAAA,EACAW,qBAAAA,EACAoB,6BAAAA,GACE3D,GAAsB,CACxBC,4BAAAA,EACAC,gBAAAA,EACAC,gBAAAA,EACAC,sBAAAA,EACAC,sBAAAA,EACAC,gBAAAA,EACAC,kBAAAA,EACAC,0BAAAA,EACAC,8BAAAA,CAAAA,CACD,EAEK,CAAE4D,qBAAAA,EAAsBC,qBAAAA,GAC5BC,EAA6B,CAC3BxB,SAAU3B,EACVE,cAAAA,EACAnB,gBAAAA,CAAAA,CACD,EAEC4D,OAAAA,GAA2BhD,EAAaI,OACnC4C,EAAwBhD,EAAaG,QAAQ,EAIpDsD,EAAA,MAAA,CAAKC,UAAWC,EAAQ,CAAC,0BAA2BZ,CAAQ,CAAC,EAAEa,SAAA,CAC7DC,EAACC,EAAK,CACJxB,KAAM3C,EAAasD,MACnBc,WAAY,GACZL,UAAU,gCACX,CAAA,EACAN,EAAiBd,KAChBuB,EAACG,EAAW,CACVN,UAAU,wCAMVO,QAAQ,YACRC,QAASd,EAAiBd,KAC1B6B,KAAMf,EAAiBe,IAAAA,CACxB,EACC,KACJV,EAACW,EAAI,CACHC,KAAK,sBACLX,UAAU,gCACVY,eAAgB9C,EAChBX,UAAAA,EACA0D,aAAc,CAAG,EAAAX,SAAA,CAEjBC,EAACW,EAAa,CACZC,gBAAiBpE,EACjBqE,SAAU,GACVhB,UAAU,sCACViB,yBAA0B/B,EAC1BgC,QACEtB,IAAyB,UACzBC,GAAAA,YAAAA,EAAsBnD,UAAW,QAClCwD,SAEDC,EAACgB,EAAyB,CACxB3C,UAAW9C,GAAAA,YAAAA,EAAiB8C,UAC5BD,yBAA0B7C,GAAAA,YAAAA,EAAiB6C,yBAC3C6C,qBAAsBvB,EACtBD,qBAAAA,CAAAA,CACD,CAAA,CACY,EACfO,EAAA,MAAA,CAAKH,UAAU,kCAAiCE,SAC9CC,EAACkB,EAAM,CACL1C,KAAK,SACL2C,WAAYrF,EAAauD,cACzBe,QAAQ,UACRgB,aAAcpE,CAAAA,CACf,CAAA,CACE,CAAC,CAAA,CACF,CAAC,CAAA,CACJ,CAET,ECjHaqE,GAAiDA,CAAC,CAC7DnC,SAAAA,EACA5D,gBAAAA,EACAO,8BAAAA,EACAL,sBAAAA,EACAC,sBAAAA,EACA0D,wBAAAA,EACAzD,gBAAAA,EACAC,kBAAAA,CACF,IAEIqE,EAAA,MAAA,CAAKH,UAAU,uBAAsBE,SACnCC,EAACf,GAAkB,CACjBC,SAAAA,EACA5D,gBAAAA,EACAE,sBAAAA,EACAC,sBAAAA,EACAC,gBAAAA,EACAC,kBAAAA,EACAwD,wBAAAA,EACAtD,8BAAAA,CAAAA,CACD,CAAA,CACE"}
package/render.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"render.js","sources":["../src/render/Provider.tsx","../src/render/render.tsx"],"sourcesContent":["import { FunctionComponent } from 'preact';\nimport { useState, useEffect } from 'preact/hooks';\nimport { UIProvider } from '@adobe/elsie/components';\nimport { Lang } from '@adobe/elsie/i18n';\nimport { events } from '@adobe/event-bus';\nimport { config } from '@/auth/api';\nimport { deepmerge } from '@adobe/elsie/lib';\n\nimport en_US from '../i18n/en_US.json';\n\n// Langs\nconst langDefinitions = {\n default: en_US,\n};\n\ninterface CartProviderProps {\n children?: any;\n}\n\nexport const Provider: FunctionComponent<CartProviderProps> = ({\n children,\n}) => {\n const [locale, setLang] = useState<Lang>('en_US');\n\n const userLangDefinitions = config?.getConfig()?.langDefinitions;\n\n // Events\n useEffect(() => {\n const localeEvent = events.on(\n 'locale',\n (payload) => {\n if (payload !== locale) setLang(payload as Lang);\n },\n { eager: true }\n );\n return () => {\n localeEvent?.off();\n };\n }, [locale]);\n\n // Merge language definitions with user language definitions\n const definitions = deepmerge(langDefinitions, userLangDefinitions ?? {});\n\n return (\n <UIProvider lang={locale} langDefinitions={definitions}>\n {children}\n </UIProvider>\n );\n};\n","import { Render } from '@adobe/elsie/lib';\nimport { Provider } from './Provider';\n\nexport const render = new Render(<Provider />);\n"],"names":["langDefinitions","default","en_US","Provider","children","locale","setLang","useState","userLangDefinitions","config","getConfig","useEffect","localeEvent","events","on","payload","eager","off","definitions","deepmerge","_jsx","UIProvider","lang","render","Render"],"mappings":"+qFAWMA,EAAkB,CACtBC,QAASC,CACX,EAMaC,EAAiDA,CAAC,CAC7DC,SAAAA,CACF,IAAM,SACJ,KAAM,CAACC,EAAQC,CAAO,EAAIC,EAAe,OAAO,EAE1CC,GAAsBC,GAAAA,EAAAA,IAAAA,YAAAA,EAAQC,cAARD,YAAAA,EAAqBT,gBAGjDW,EAAU,IAAM,CACd,MAAMC,EAAcC,EAAOC,GACzB,SACaC,GAAA,CACPA,IAAYV,GAAQC,EAAQS,CAAgB,CAAA,EAElD,CAAEC,MAAO,EAAA,CACX,EACA,MAAO,IAAM,CACXJ,GAAAA,MAAAA,EAAaK,KAAI,CACnB,EACC,CAACZ,CAAM,CAAC,EAGX,MAAMa,EAAcC,EAAUnB,EAAiBQ,GAAuB,CAAE,CAAA,EAExE,OACEY,EAACC,EAAU,CAACC,KAAMjB,EAAQL,gBAAiBkB,EAAYd,SAAAA,CAAAA,CAE3C,CAEhB,EC7CamB,EAAS,IAAIC,EAAOJ,EAACjB,EAAU,CAAA,CAAA,CAAC"}