{"version":3,"file":"static/chunks/app/(withLayout)/layout-5d6cdbb22b29c7ce.js","mappings":"yGEAA,4CAAsI,CAEtI,2CAA2H,CAE3H,uCAA0L,iFCDnL,IAAMA,EAAqB,KAChC,GAAM,kBAAEC,CAAgB,UAAEC,CAAQ,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,CAAAA,CAAWA,GAElD,MACE,UAACC,MAAAA,CAAIC,UAAU,wFACZJ,GAAoBC,EAASI,UAAU,CAAGJ,EAASK,QAAQ,CAAG,IAGrE,EAAE,qHCEF,IAAMC,EAAyB,CAC7BF,YAAY,EACZC,SAAU,GACVE,aAAc,GACdC,MAAO,EACT,EAEMC,EAAoBC,EAAAA,aAAmB,CAAC,CAC5CX,kBAAkB,EAClBC,SAAUM,CACZ,GAEaK,EAAsD,OAAC,CAClEC,UAAQ,CACT,GACO,CAACb,EAAkBc,EAAoB,CAC3CH,EAAAA,QAAc,EAAU,GACpB,CAACI,EAAWC,EAAa,CAAGL,EAAAA,QAAc,GAC1C,CAACV,EAAUgB,EAAY,CAAGN,EAAAA,QAAc,CAAWJ,GA2BzD,OAzBAI,EAAAA,SAAe,CAAC,KACdO,EAAAA,CAAIA,CAACC,wBAAwB,CAAC,CAC5BC,aAAa,CACf,GACGC,IAAI,CAAC,IACJJ,EAAY,CACVZ,YAAY,EACZC,SAAUgB,EAAKC,QAAQ,CACvBf,aAAcc,EAAKE,UAAU,CAAC,gBAAgB,CAC9Cf,MAAOa,EAAKE,UAAU,CAAC,KAAQ,GAEjCV,GAAoB,EACtB,GACCW,KAAK,CAAC,KACLR,EAAYV,GACZO,GAAoB,EACtB,EACJ,EAAG,CAACC,EAAU,EAEdJ,EAAAA,SAAe,CAAC,KACde,CAAAA,EAAAA,EAAAA,EAAAA,CAAmBA,CAAEC,IACnBX,EAAaW,EACf,EACF,EAAG,EAAE,EAGH,UAACjB,EAAkBkB,QAAQ,EACzBC,MAAO,kBACL7B,WACAC,CACF,WAECY,GAGP,EAAE,SAEcX,IAId,GAAM,kBAAEF,CAAgB,CAAEC,UAAQ,CAAE,CAAGU,EAAAA,UAAgB,CAACD,GAExD,GAAiB,MAAM,CAAnBT,EACF,MAAM,MAAU,iCAGlB,MAAO,kBACLD,WACAC,CACF,CACF","sources":["webpack://_N_E/ignored|/codebuild/output/src2963541696/src/helloero-new/node_modules/amazon-cognito-identity-js/es/utils|crypto","webpack://_N_E/ignored|/codebuild/output/src2963541696/src/helloero-new/node_modules/crypto-js|crypto","webpack://_N_E/?7d6b","webpack://_N_E/../shared/components/layouts/H2uLayout/Header/UserName/index.tsx","webpack://_N_E/../shared/hooks/useUserInfo.tsx"],"sourcesContent":["/* (ignored) */","/* (ignored) */","import(/* webpackMode: \"eager\" */ \"/codebuild/output/src2963541696/src/helloero-new/node_modules/next/dist/client/image-component.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/codebuild/output/src2963541696/src/helloero-new/node_modules/next/dist/client/link.js\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"UserName\"] */ \"/codebuild/output/src2963541696/src/helloero-new/packages/shared/components/layouts/H2uLayout/Header/UserName/index.tsx\");\n","'use client';\nimport { useUserInfo } from '../../../../../hooks/useUserInfo';\n\nexport const UserName: React.FC = () => {\n const { isLoadedUserInfo, userInfo } = useUserInfo();\n\n return (\n
\n {isLoadedUserInfo && userInfo.isLoggedIn ? userInfo.userName : ''}\n
\n );\n};\n","'use client';\nimport { onAuthUIStateChange } from '@aws-amplify/ui-components';\nimport { Auth } from 'aws-amplify';\nimport React from 'react';\nimport type { AuthState } from '@aws-amplify/ui-components';\n\ntype UserInfo = {\n isLoggedIn: boolean;\n userName: string | null;\n customUserId: string | null;\n email: string | null;\n};\n\nconst initialState: UserInfo = {\n isLoggedIn: false,\n userName: '',\n customUserId: '',\n email: '',\n};\n\nconst LoginStateContext = React.createContext({\n isLoadedUserInfo: false,\n userInfo: initialState,\n});\n\nexport const UserInfoProvider: React.FC = ({\n children,\n}) => {\n const [isLoadedUserInfo, setIsLoadedUserInfo] =\n React.useState(false);\n const [authState, setAuthState] = React.useState();\n const [userInfo, setUserInfo] = React.useState(initialState);\n\n React.useEffect(() => {\n Auth.currentAuthenticatedUser({\n bypassCache: true,\n })\n .then((user) => {\n setUserInfo({\n isLoggedIn: true,\n userName: user.username,\n customUserId: user.attributes['custom:userid'], // 少々強引な取り方\n email: user.attributes['email'], // 少々強引な取り方\n });\n setIsLoadedUserInfo(true);\n })\n .catch(() => {\n setUserInfo(initialState);\n setIsLoadedUserInfo(true);\n });\n }, [authState]);\n\n React.useEffect(() => {\n onAuthUIStateChange((nextAuthState) => {\n setAuthState(nextAuthState);\n });\n }, []);\n\n return (\n \n {children}\n \n );\n};\n\nexport function useUserInfo(): {\n isLoadedUserInfo: boolean;\n userInfo: UserInfo;\n} {\n const { isLoadedUserInfo, userInfo } = React.useContext(LoginStateContext);\n\n if (userInfo === null) {\n throw new Error('can not find UserInfoProvider');\n }\n\n return {\n isLoadedUserInfo,\n userInfo,\n };\n}\n"],"names":["UserName","isLoadedUserInfo","userInfo","useUserInfo","div","className","isLoggedIn","userName","initialState","customUserId","email","LoginStateContext","React","UserInfoProvider","children","setIsLoadedUserInfo","authState","setAuthState","setUserInfo","Auth","currentAuthenticatedUser","bypassCache","then","user","username","attributes","catch","onAuthUIStateChange","nextAuthState","Provider","value"],"sourceRoot":"","ignoreList":[0,1]}