{"version":3,"file":"static/chunks/pages/intents-gpt-7194dfd26dc3c6f5.js","mappings":"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","sources":["webpack://_N_E/?9cfc","webpack://_N_E/./views/IntentGPT/Home/History.tsx","webpack://_N_E/./views/IntentGPT/Home/LayerBackground.tsx","webpack://_N_E/./views/IntentGPT/Home/index.tsx","webpack://_N_E/./pages/intents-gpt.tsx","webpack://_N_E/<anon>"],"sourcesContent":["\n    (window.__NEXT_P = window.__NEXT_P || []).push([\n      \"/intents-gpt\",\n      function () {\n        return require(\"private-next-pages/intents-gpt.tsx\");\n      }\n    ]);\n    if(module.hot) {\n      module.hot.dispose(function () {\n        window.__NEXT_P.push([\"/intents-gpt\"])\n      });\n    }\n  ","import { AccessoryIcons, ApertureLogos } from \"@aperture/assetkit\";\nimport {\n  Flex,\n  FlexColumn,\n  Headline5,\n  HistoryList,\n  IntentsGptHistory,\n} from \"@aperture/uikit\";\nimport styled, { keyframes, useTheme } from \"styled-components\";\n\ntype HistoryProps = {\n  items: IntentsGptHistory[];\n  onNewChatClick: () => void;\n  onChatClick: (threadId: string) => void;\n  onChatDelete: (threadId: string) => void;\n};\n\nexport const History: React.FC<HistoryProps> = ({\n  onNewChatClick,\n  onChatClick,\n  onChatDelete,\n  items,\n}) => {\n  const theme = useTheme();\n  return (\n    <Sidebar gap={10}>\n      <NewChat\n        alignItems=\"center\"\n        justifyContent=\"space-between\"\n        onClick={onNewChatClick}\n      >\n        <Flex alignItems=\"center\" gap=\"md\">\n          <LogoWrapper>\n            <ApertureLogos.ApertureLogo2 width={32} height={32} />\n          </LogoWrapper>\n          <BtnText>New Chat</BtnText>\n        </Flex>\n        <AccessoryIcons.PlusIcon\n          fill={theme.colors.global.text.T1}\n          height={14}\n          width={14}\n        />\n      </NewChat>\n      <HistoryList\n        histories={items}\n        onClick={onChatClick}\n        onDelete={onChatDelete}\n      />\n    </Sidebar>\n  );\n};\n\nconst slideFadeIn = keyframes`\n  0% {\n    transform: translateX(-15%);\n\n    opacity: 0;\n  }\n  100% {\n    transform: translateX(0);\n\n    opacity: 1;\n  }\n`;\n\nconst Sidebar = styled(FlexColumn)`\n  position: absolute;\n  width: 240px;\n  animation: ${slideFadeIn} 0.3s ease-out forwards;\n  max-height: 70vh;\n  overflow: hidden;\n`;\nconst NewChat = styled(Flex)`\n  cursor: pointer;\n`;\nconst BtnText = styled(Headline5)`\n  line-height: 20px;\n  color: ${({ theme }) => theme.colors.global.text.T1};\n`;\nconst LogoWrapper = styled(Flex)`\n  width: 32px;\n  height: 32px;\n  align-items: center;\n  justify-content: center;\n  border-radius: 50%;\n\n  > svg,\n  path {\n    fill: ${({ theme }) => theme.colors.global.text.T1};\n  }\n`;\n","import { useTheme } from \"@/Providers\";\nimport { CSSProperties } from \"react\";\nimport styled from \"styled-components\";\n\nconst Layer = styled.div`\n  width: 100%;\n  height: 100%;\n  top: 0;\n  position: fixed;\n  overflow: hidden;\n  z-index: 0;\n`;\n\nconst Box = styled.div<{\n  w: number;\n  h: number;\n  top: number;\n  left: number;\n  bg: CSSProperties[\"backgroundColor\"];\n  moveAnimation: string;\n  moving: boolean;\n  isLightTheme: boolean;\n}>`\n  position: absolute;\n  background-color: ${({ bg }) => bg};\n  width: ${({ w }) => `${w}px`};\n  height: ${({ h }) => `${h}px`};\n  top: ${({ top }) => `${top}%`};\n  left: ${({ left }) => `${left}%`};\n  border-radius: 50%;\n  filter: blur(130px);\n\n  ${({ moving, moveAnimation }) =>\n    moving && `animation: ${moveAnimation} 20s infinite};`}\n\n  ${({ isLightTheme }) => isLightTheme && `opacity: 0.15;`}\n  @keyframes move0 {\n    0% {\n      transform: translate(0, 0);\n    }\n    25% {\n      transform: translate(0, 100%);\n    }\n    50% {\n      transform: translate(0, 0);\n    }\n    75% {\n      transform: translate(0, 100%);\n    }\n    100% {\n      transform: translate(0, 0);\n    }\n  }\n\n  @keyframes move1 {\n    0% {\n      transform: translate(0, 0);\n    }\n    33% {\n      transform: translate(-150%, 60%);\n    }\n    66% {\n      transform: translate(-120%, -40%);\n    }\n    100% {\n      transform: translate(0, 0);\n    }\n  }\n\n  @keyframes move2 {\n    0% {\n      transform: translate(0, 0);\n    }\n    25% {\n      transform: translate(120%, 50%);\n    }\n    50% {\n      transform: translate(260%, -10%);\n    }\n    75% {\n      transform: translate(120%, -40%);\n    }\n    100% {\n      transform: translate(0, 0);\n    }\n  }\n`;\n\nconst boxes = [\n  {\n    bg: \"#7000FF\",\n    w: 852,\n    h: 852,\n    top: -70,\n    left: 25.6,\n  },\n  {\n    bg: \"#4200FF\",\n    w: 858,\n    h: 858,\n    top: 15,\n    left: 102,\n  },\n  {\n    bg: \"#AC6AFF\",\n    w: 647,\n    h: 823,\n    top: 10,\n    left: -60,\n  },\n];\n\nexport const LayerBackground: React.FC<{ moving: boolean }> = ({ moving }) => {\n  const { theme } = useTheme();\n\n  return (\n    <Layer>\n      {boxes.map((box, idx) => {\n        return (\n          <Box\n            moving={moving}\n            moveAnimation={`move${idx}`}\n            key={`${idx}-${box.bg}`}\n            isLightTheme={theme === \"light\"}\n            {...box}\n          />\n        );\n      })}\n    </Layer>\n  );\n};\n","import { Flex } from \"@aperture/uikit\";\nimport styled from \"styled-components\";\nimport { ChatViewWrapper } from \"../ChatViewWrapper\";\nimport { useChatStore } from \"../hooks\";\nimport { History } from \"./History\";\nimport { LayerBackground } from \"./LayerBackground\";\n\nconst Wrapper = styled(Flex)`\n  overflow: hidden;\n  max-width: 880px;\n  max-height: 100%;\n  width: 100%;\n  z-index: 1;\n  padding: 40px 0;\n`;\n\nexport const IntentGPTHome: React.FC = () => {\n  const {\n    showIntro,\n    chatList,\n    updateChat,\n    deleteChat,\n    newChat,\n    currentChatId,\n    currentThreadId,\n    setCurrentChatId,\n    currentMessages,\n  } = useChatStore();\n\n  return (\n    <>\n      <LayerBackground moving={showIntro} />\n      <Wrapper height=\"100%\" gap={40}>\n        {!showIntro && (\n          <History\n            items={chatList}\n            onChatClick={setCurrentChatId}\n            onChatDelete={deleteChat}\n            onNewChatClick={newChat}\n          />\n        )}\n        <ChatViewWrapper\n          showIntro={showIntro}\n          isDrawer={false}\n          key={currentChatId}\n          chatId={currentChatId}\n          initMessages={currentMessages}\n          threadId={currentThreadId}\n          onMessagesUpdate={updateChat}\n        />\n      </Wrapper>\n    </>\n  );\n};\n","import { IntentGPTHome } from \"@/views/IntentGPT/Home\";\nimport { FlexColumn } from \"@ui/common\";\nimport styled from \"styled-components\";\n\nconst Container = styled(FlexColumn)`\n  box-sizing: border-box;\n  width: 100%;\n  padding-top: 30px;\n  height: calc(\n    100vh - 64px - 37px\n  ); // 64px is the height of the header, 37px is the height of the footer\n  background: ${({ theme }) => theme.colors.global.background.BG1};\n  position: relative;\n`;\n\nexport default function IntentsGptPage() {\n  return (\n    <Container alignItems=\"center\" justifyContent=\"space-between\">\n      <IntentGPTHome />\n    </Container>\n  );\n}\n"],"names":["window","__NEXT_P","push","__webpack_require__","History","onNewChatClick","onChatClick","onChatDelete","items","param","theme","useTheme","jsx_runtime","jsxs","Sidebar","gap","NewChat","alignItems","justifyContent","onClick","Flex","jsx","LogoWrapper","ApertureLogos","width","height","BtnText","AccessoryIcons","fill","colors","global","text","T1","HistoryList","histories","onDelete","slideFadeIn","keyframes","styled","FlexColumn","Headline5","Layer","Box","bg","w","concat","h","top","left","moving","moveAnimation","isLightTheme","boxes","LayerBackground","map","box","idx","Wrapper","IntentGPTHome","showIntro","chatList","updateChat","deleteChat","newChat","currentChatId","currentThreadId","setCurrentChatId","currentMessages","useChatStore","Fragment","ChatViewWrapper","isDrawer","chatId","initMessages","threadId","onMessagesUpdate","Container","background","BG1","IntentsGptPage"],"sourceRoot":""}