{"version":3,"file":"useFinancials-NXcbqt28.js","sources":["../../../app/javascript/entrypoints/pages/StockPage/hooks/useFinancials.ts"],"sourcesContent":["import { useState, useEffect } from 'react';\n\nimport type { GetStockData200ResponseData as Data } from '../../../output/models';\n\nimport { useDataCurrent } from './useDataCurrent';\nimport { useDataFull } from './useDataFull';\n\nexport const useFinancials = (code: string, term: string | null): Data | undefined => {\n const [loadCurrent, setLoadCurrent] = useState(false);\n const [loadFull, setLoadFull] = useState(false);\n\n const dataCurrent = useDataCurrent(code, loadCurrent);\n const dataFull = useDataFull(code, loadFull);\n const data = term ? dataFull : dataCurrent;\n\n useEffect(() => {\n if (loadCurrent && loadFull) {\n return;\n }\n\n // 初期表示\n if (!loadCurrent && !loadFull) {\n if (term) {\n setLoadFull(true);\n } else {\n setLoadCurrent(true);\n }\n }\n\n // どちらか読み込み完了\n if (dataCurrent ?? dataFull) {\n if (loadCurrent) {\n setLoadFull(true);\n }\n if (loadFull) {\n setLoadCurrent(true);\n }\n }\n }, [term, loadCurrent, loadFull, dataCurrent, dataFull]);\n\n useEffect(() => {\n if (loadCurrent || loadFull) {\n setLoadFull(false);\n setLoadCurrent(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [code]);\n\n return data;\n};\n"],"names":["useFinancials","code","term","loadCurrent","setLoadCurrent","useState","loadFull","setLoadFull","dataCurrent","useDataCurrent","dataFull","useDataFull","data","useEffect"],"mappings":"u7BAOa,MAAAA,EAAgB,CAACC,EAAcC,IAA0C,CACpF,KAAM,CAACC,EAAaC,CAAc,EAAIC,WAAkB,EAAK,EACvD,CAACC,EAAUC,CAAW,EAAIF,WAAkB,EAAK,EAEjDG,EAAcC,EAAeR,EAAME,CAAW,EAC9CO,EAAWC,EAAYV,EAAMK,CAAQ,EACrCM,EAAOV,EAAOQ,EAAWF,EAE/BK,OAAAA,EAAAA,UAAU,IAAM,CACVV,GAAeG,IAKf,CAACH,GAAe,CAACG,IACfJ,EACFK,EAAY,EAAI,EAEhBH,EAAe,EAAI,IAKnBI,GAAeE,KACbP,GACFI,EAAY,EAAI,EAEdD,GACFF,EAAe,EAAI,GAEvB,EACC,CAACF,EAAMC,EAAaG,EAAUE,EAAaE,CAAQ,CAAC,EAEvDG,EAAAA,UAAU,IAAM,EACVV,GAAeG,KACjBC,EAAY,EAAK,EACjBH,EAAe,EAAK,EACtB,EAEC,CAACH,CAAI,CAAC,EAEFW,CACT"}