Advertisement
Guest User

Untitled

a guest
Jun 15th, 2019
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.76 KB | None | 0 0
  1. // App.js
  2. import Analytics from '@aws-amplify/analytics';
  3. import Auth from '@aws-amplify/auth';
  4. // ...
  5. const mapObj = f => obj =>
  6. Object.keys(obj).reduce((acc, key) => ({ ...acc, [key]: f(obj[key]) }), {});
  7. const toArrayOfStrings = value => [`${value}`];
  8. const mapToArrayOfStrings = mapObj(toArrayOfStrings);
  9.  
  10. async function trackUserId() {
  11. try {
  12. const { attributes } = await Auth.currentAuthenticatedUser();
  13. const userAttributes = mapToArrayOfStrings(attributes);
  14. Analytics.updateEndpoint({
  15. address: attributes.email,
  16. channelType: 'EMAIL',
  17. optOut: 'NONE',
  18. userId: attributes.sub,
  19. userAttributes,
  20. });
  21. } catch (error) {
  22. console.log(error);
  23. }
  24. }
  25.  
  26. function App() {
  27. useEffect(() => {
  28. trackUserId();
  29. }, []);
  30. return // ...
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement