├── .eslintrc.json ├── .gitignore ├── README.md ├── TOKEN_REFRESH_GUIDE.md ├── __tests__ └── requestQueue.test.ts ├── config.ts ├── docs ├── context-to-zustand-migration.md ├── legacy-ai-integration.md ├── state-management.md └── vercel-ai-sdk-migration.md ├── next.config.js ├── package.json ├── postcss.config.js ├── public ├── next.svg └── vercel.svg ├── src ├── @types │ ├── IPost.d.ts │ ├── IRequest.ts │ ├── ISummary.d.ts │ ├── ITopic.d.ts │ └── IUser.d.ts ├── app │ ├── api-docs │ │ ├── migration-notice.md │ │ └── page.tsx │ ├── api │ │ ├── llm │ │ │ └── chat │ │ │ │ └── route.ts │ │ ├── mbti │ │ │ └── route.ts │ │ ├── proxy │ │ │ └── [...path] │ │ │ │ └── route.ts │ │ ├── route.ts │ │ ├── summary │ │ │ ├── chat │ │ │ │ └── route.ts │ │ │ └── route.ts │ │ ├── swagger │ │ │ └── route.ts │ │ └── test-webvpn │ │ │ └── route.ts │ ├── chat │ │ └── page.tsx │ ├── favicon.ico │ ├── globals.css │ ├── layout.tsx │ ├── mbti │ │ └── page.tsx │ ├── page.tsx │ └── summary │ │ ├── README.md │ │ ├── components │ │ ├── ChatBubble.tsx │ │ ├── ChatHeader.tsx │ │ ├── ChatInput.tsx │ │ ├── ChatMessages.tsx │ │ ├── KnowledgeBaseList.tsx │ │ ├── KnowledgeBaseSelector.tsx │ │ ├── LoadingIndicator.tsx │ │ ├── Navigation.tsx │ │ ├── SelectedTopics.tsx │ │ ├── StreamingChatMessages.tsx │ │ └── index.ts │ │ ├── page.tsx │ │ └── types.ts ├── components │ ├── AuthenticatedApp.tsx │ ├── UnauthenticatedApp.tsx │ ├── WebVPNStatus.tsx │ ├── mbti-result-card │ │ └── index.tsx │ ├── mbti │ │ └── index.tsx │ └── summary │ │ └── index.tsx ├── docs │ ├── proxy-api-usage.md │ └── v0.md ├── hooks │ ├── useApiCall.ts │ └── useSummaryChat.ts ├── lib │ ├── cors.ts │ ├── models.ts │ └── swagger.ts ├── request │ ├── GET.ts │ ├── POST.ts │ └── index.ts ├── store │ ├── globalStore.ts │ ├── mbtiStore.ts │ └── summaryStore.ts └── utils │ ├── apiProxy.ts │ ├── debounce.ts │ ├── getFavouriteTopic.ts │ ├── getMarkdonwContent.ts │ ├── getTopicContent.ts │ ├── knowledgeBaseManager.ts │ ├── limitation.ts │ ├── requestQueue.ts │ ├── securityFilter.ts │ └── tokenManager.ts ├── tailwind.config.js └── tsconfig.json /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/README.md -------------------------------------------------------------------------------- /TOKEN_REFRESH_GUIDE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/TOKEN_REFRESH_GUIDE.md -------------------------------------------------------------------------------- /__tests__/requestQueue.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/__tests__/requestQueue.test.ts -------------------------------------------------------------------------------- /config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/config.ts -------------------------------------------------------------------------------- /docs/context-to-zustand-migration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/docs/context-to-zustand-migration.md -------------------------------------------------------------------------------- /docs/legacy-ai-integration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/docs/legacy-ai-integration.md -------------------------------------------------------------------------------- /docs/state-management.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/docs/state-management.md -------------------------------------------------------------------------------- /docs/vercel-ai-sdk-migration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/docs/vercel-ai-sdk-migration.md -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/package.json -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/postcss.config.js -------------------------------------------------------------------------------- /public/next.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/public/next.svg -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/public/vercel.svg -------------------------------------------------------------------------------- /src/@types/IPost.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/@types/IPost.d.ts -------------------------------------------------------------------------------- /src/@types/IRequest.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/@types/IRequest.ts -------------------------------------------------------------------------------- /src/@types/ISummary.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/@types/ISummary.d.ts -------------------------------------------------------------------------------- /src/@types/ITopic.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/@types/ITopic.d.ts -------------------------------------------------------------------------------- /src/@types/IUser.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/@types/IUser.d.ts -------------------------------------------------------------------------------- /src/app/api-docs/migration-notice.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api-docs/migration-notice.md -------------------------------------------------------------------------------- /src/app/api-docs/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api-docs/page.tsx -------------------------------------------------------------------------------- /src/app/api/llm/chat/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api/llm/chat/route.ts -------------------------------------------------------------------------------- /src/app/api/mbti/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api/mbti/route.ts -------------------------------------------------------------------------------- /src/app/api/proxy/[...path]/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api/proxy/[...path]/route.ts -------------------------------------------------------------------------------- /src/app/api/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api/route.ts -------------------------------------------------------------------------------- /src/app/api/summary/chat/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api/summary/chat/route.ts -------------------------------------------------------------------------------- /src/app/api/summary/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api/summary/route.ts -------------------------------------------------------------------------------- /src/app/api/swagger/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api/swagger/route.ts -------------------------------------------------------------------------------- /src/app/api/test-webvpn/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/api/test-webvpn/route.ts -------------------------------------------------------------------------------- /src/app/chat/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/chat/page.tsx -------------------------------------------------------------------------------- /src/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/favicon.ico -------------------------------------------------------------------------------- /src/app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/globals.css -------------------------------------------------------------------------------- /src/app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/layout.tsx -------------------------------------------------------------------------------- /src/app/mbti/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/mbti/page.tsx -------------------------------------------------------------------------------- /src/app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/page.tsx -------------------------------------------------------------------------------- /src/app/summary/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/README.md -------------------------------------------------------------------------------- /src/app/summary/components/ChatBubble.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/ChatBubble.tsx -------------------------------------------------------------------------------- /src/app/summary/components/ChatHeader.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/ChatHeader.tsx -------------------------------------------------------------------------------- /src/app/summary/components/ChatInput.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/ChatInput.tsx -------------------------------------------------------------------------------- /src/app/summary/components/ChatMessages.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/ChatMessages.tsx -------------------------------------------------------------------------------- /src/app/summary/components/KnowledgeBaseList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/KnowledgeBaseList.tsx -------------------------------------------------------------------------------- /src/app/summary/components/KnowledgeBaseSelector.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/KnowledgeBaseSelector.tsx -------------------------------------------------------------------------------- /src/app/summary/components/LoadingIndicator.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/LoadingIndicator.tsx -------------------------------------------------------------------------------- /src/app/summary/components/Navigation.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/Navigation.tsx -------------------------------------------------------------------------------- /src/app/summary/components/SelectedTopics.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/SelectedTopics.tsx -------------------------------------------------------------------------------- /src/app/summary/components/StreamingChatMessages.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/StreamingChatMessages.tsx -------------------------------------------------------------------------------- /src/app/summary/components/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/components/index.ts -------------------------------------------------------------------------------- /src/app/summary/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/page.tsx -------------------------------------------------------------------------------- /src/app/summary/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/app/summary/types.ts -------------------------------------------------------------------------------- /src/components/AuthenticatedApp.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/components/AuthenticatedApp.tsx -------------------------------------------------------------------------------- /src/components/UnauthenticatedApp.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/components/UnauthenticatedApp.tsx -------------------------------------------------------------------------------- /src/components/WebVPNStatus.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/components/WebVPNStatus.tsx -------------------------------------------------------------------------------- /src/components/mbti-result-card/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/components/mbti-result-card/index.tsx -------------------------------------------------------------------------------- /src/components/mbti/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/components/mbti/index.tsx -------------------------------------------------------------------------------- /src/components/summary/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/components/summary/index.tsx -------------------------------------------------------------------------------- /src/docs/proxy-api-usage.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/docs/proxy-api-usage.md -------------------------------------------------------------------------------- /src/docs/v0.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/docs/v0.md -------------------------------------------------------------------------------- /src/hooks/useApiCall.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/hooks/useApiCall.ts -------------------------------------------------------------------------------- /src/hooks/useSummaryChat.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/hooks/useSummaryChat.ts -------------------------------------------------------------------------------- /src/lib/cors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/lib/cors.ts -------------------------------------------------------------------------------- /src/lib/models.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/lib/models.ts -------------------------------------------------------------------------------- /src/lib/swagger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/lib/swagger.ts -------------------------------------------------------------------------------- /src/request/GET.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/request/GET.ts -------------------------------------------------------------------------------- /src/request/POST.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/request/POST.ts -------------------------------------------------------------------------------- /src/request/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/request/index.ts -------------------------------------------------------------------------------- /src/store/globalStore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/store/globalStore.ts -------------------------------------------------------------------------------- /src/store/mbtiStore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/store/mbtiStore.ts -------------------------------------------------------------------------------- /src/store/summaryStore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/store/summaryStore.ts -------------------------------------------------------------------------------- /src/utils/apiProxy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/apiProxy.ts -------------------------------------------------------------------------------- /src/utils/debounce.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/debounce.ts -------------------------------------------------------------------------------- /src/utils/getFavouriteTopic.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/getFavouriteTopic.ts -------------------------------------------------------------------------------- /src/utils/getMarkdonwContent.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/getMarkdonwContent.ts -------------------------------------------------------------------------------- /src/utils/getTopicContent.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/getTopicContent.ts -------------------------------------------------------------------------------- /src/utils/knowledgeBaseManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/knowledgeBaseManager.ts -------------------------------------------------------------------------------- /src/utils/limitation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/limitation.ts -------------------------------------------------------------------------------- /src/utils/requestQueue.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/requestQueue.ts -------------------------------------------------------------------------------- /src/utils/securityFilter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/securityFilter.ts -------------------------------------------------------------------------------- /src/utils/tokenManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/src/utils/tokenManager.ts -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/tailwind.config.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/biu9/cc98-summary/HEAD/tsconfig.json --------------------------------------------------------------------------------