{"version":3,"file":"index-BlNTTpnd.js","sources":["../../../app/assets/javascripts/app/local_storages/contact_info_storage/index.ts"],"sourcesContent":["\nimport {\n  getDataFromLocalStorage,\n\n  setDataToLocalStorage,\n  SetDataOpResultTypes,\n\n  removeDataFromLocalStorage,\n  RemoveDataOpResultTypes,\n\n  /* eslint-disable no-unused-vars */\n  SetDataResult,\n  /* eslint-enable no-unused-vars */\n} from \"app/local_storages/native_api_adapter\"\n\n\nconst STORAGE_KEY_PREFIX = \"contact_info_storage\"\n\nconst STORAGE_KEYS = {\n  user_authentication_handle: `${STORAGE_KEY_PREFIX}/user_authentication_handle`,\n\n  contact_name: `${STORAGE_KEY_PREFIX}/contact_name`,\n\n  contact_email_address: `${STORAGE_KEY_PREFIX}/contact_email_address`,\n\n  contact_phone_number:               `${STORAGE_KEY_PREFIX}/contact_phone_number`,\n  contact_phone_number_country_code:  `${STORAGE_KEY_PREFIX}/contact_phone_number_country_code`,\n}\n\ninterface ContactInfoData {\n  user_authentication_handle: string | null,\n\n  contact_name: string | null,\n\n  contact_email_address: string | null,\n\n  contact_phone_number: string | null,\n  contact_phone_number_country_code: string | null,\n}\n\n\nconst getContactInfoData = (): ContactInfoData => {\n  return {\n    user_authentication_handle:\n      getDataFromLocalStorage(STORAGE_KEYS.user_authentication_handle).data,\n\n    contact_name:\n      getDataFromLocalStorage(STORAGE_KEYS.contact_name).data,\n\n    contact_email_address:\n      getDataFromLocalStorage(STORAGE_KEYS.contact_email_address).data,\n\n    contact_phone_number:\n      getDataFromLocalStorage(STORAGE_KEYS.contact_phone_number).data,\n    contact_phone_number_country_code:\n      getDataFromLocalStorage(STORAGE_KEYS.contact_phone_number_country_code).data,\n  }\n}\n\n\ninterface SetContactInfoDataInput {\n  user_authentication_handle?: string | null,\n\n  contact_name?: string | null,\n\n  contact_email_address?: string | null,\n\n  contact_phone_number?:  string | null,\n  contact_phone_number_country_code?: string | null,\n}\n\nconst setContactInfoData = ({\n  contact_name,\n  contact_email_address,\n  contact_phone_number,\n  contact_phone_number_country_code,\n  user_authentication_handle,\n}: SetContactInfoDataInput): SetDataResult => {\n  if (contact_name != null) {\n    const op_result = setDataToLocalStorage(\n      STORAGE_KEYS.contact_name,\n      contact_name,\n    )\n    if (op_result.result_type !== SetDataOpResultTypes.DATA_IS_SET) {\n      return op_result\n    }\n  }\n\n  if (contact_email_address != null) {\n    const op_result = setDataToLocalStorage(\n      STORAGE_KEYS.contact_email_address,\n      contact_email_address,\n    )\n    if (op_result.result_type !== SetDataOpResultTypes.DATA_IS_SET) {\n      return op_result\n    }\n  }\n\n  if (contact_phone_number != null) {\n    const op_result = setDataToLocalStorage(\n      STORAGE_KEYS.contact_phone_number,\n      contact_phone_number,\n    )\n    if (op_result.result_type !== SetDataOpResultTypes.DATA_IS_SET) {\n      return op_result\n    }\n  }\n\n  if (contact_phone_number_country_code != null) {\n    const op_result = setDataToLocalStorage(\n      STORAGE_KEYS.contact_phone_number_country_code,\n      contact_phone_number_country_code,\n    )\n    if (op_result.result_type !== SetDataOpResultTypes.DATA_IS_SET) {\n      return op_result\n    }\n  }\n\n  if (user_authentication_handle != null) {\n    const op_result = setDataToLocalStorage(\n      STORAGE_KEYS.user_authentication_handle,\n      user_authentication_handle,\n    )\n    if (op_result.result_type !== SetDataOpResultTypes.DATA_IS_SET) {\n      return op_result\n    }\n  }\n  // Allow clearing data with `null` value\n  // `null` only, not `undefined`\n  // This is required since we need to clear the data on sign-out\n  else if (user_authentication_handle === null) {\n    const op_result = removeDataFromLocalStorage(\n      STORAGE_KEYS.user_authentication_handle,\n    )\n    if (op_result.result_type !== RemoveDataOpResultTypes.DATA_REMOVED) {\n      return op_result\n    }\n  }\n\n  return {\n    result_type: SetDataOpResultTypes.DATA_IS_SET,\n  }\n}\n\n\n\nexport {\n  getContactInfoData,\n  setContactInfoData,\n}\n"],"names":["STORAGE_KEY_PREFIX","STORAGE_KEYS","getContactInfoData","getDataFromLocalStorage","setContactInfoData","contact_name","contact_email_address","contact_phone_number","contact_phone_number_country_code","user_authentication_handle","op_result","setDataToLocalStorage","SetDataOpResultTypes","removeDataFromLocalStorage","RemoveDataOpResultTypes"],"mappings":"oEAgBA,MAAMA,EAAqB,uBAErBC,EAAe,CACnB,2BAA4B,GAAG,OAAAD,EAAkB,+BAEjD,aAAc,GAAG,OAAAA,EAAkB,iBAEnC,sBAAuB,GAAG,OAAAA,EAAkB,0BAE5C,qBAAoC,GAAG,OAAAA,EAAkB,yBACzD,kCAAoC,GAAG,OAAAA,EAAkB,qCAC3D,EAcME,EAAqB,KAClB,CACL,2BACEC,EAAwBF,EAAa,0BAA0B,EAAE,KAEnE,aACEE,EAAwBF,EAAa,YAAY,EAAE,KAErD,sBACEE,EAAwBF,EAAa,qBAAqB,EAAE,KAE9D,qBACEE,EAAwBF,EAAa,oBAAoB,EAAE,KAC7D,kCACEE,EAAwBF,EAAa,iCAAiC,EAAE,IAC5E,GAeIG,EAAqB,CAAC,CAC1B,aAAAC,EACA,sBAAAC,EACA,qBAAAC,EACA,kCAAAC,EACA,2BAAAC,CACF,IAA8C,CAC5C,GAAIJ,GAAgB,KAAM,CACxB,MAAMK,EAAYC,EAChBV,EAAa,aACbI,CACF,EACI,GAAAK,EAAU,cAAgBE,EAAqB,YAC1C,OAAAF,CACT,CAGF,GAAIJ,GAAyB,KAAM,CACjC,MAAMI,EAAYC,EAChBV,EAAa,sBACbK,CACF,EACI,GAAAI,EAAU,cAAgBE,EAAqB,YAC1C,OAAAF,CACT,CAGF,GAAIH,GAAwB,KAAM,CAChC,MAAMG,EAAYC,EAChBV,EAAa,qBACbM,CACF,EACI,GAAAG,EAAU,cAAgBE,EAAqB,YAC1C,OAAAF,CACT,CAGF,GAAIF,GAAqC,KAAM,CAC7C,MAAME,EAAYC,EAChBV,EAAa,kCACbO,CACF,EACI,GAAAE,EAAU,cAAgBE,EAAqB,YAC1C,OAAAF,CACT,CAGF,GAAID,GAA8B,KAAM,CACtC,MAAMC,EAAYC,EAChBV,EAAa,2BACbQ,CACF,EACI,GAAAC,EAAU,cAAgBE,EAAqB,YAC1C,OAAAF,CACT,SAKOD,IAA+B,KAAM,CAC5C,MAAMC,EAAYG,EAChBZ,EAAa,0BACf,EACI,GAAAS,EAAU,cAAgBI,EAAwB,aAC7C,OAAAJ,CACT,CAGK,MAAA,CACL,YAAaE,EAAqB,WACpC,CACF"}