Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
5170aca
feat: Add PKS section
jinhodotchoi Sep 7, 2025
b5c51cd
fix: Remove warnings on dev
jinhodotchoi Sep 7, 2025
6524b10
feat: Change copy button style
jinhodotchoi Sep 7, 2025
cb381fc
Merge pull request #149 from PoolC/feat/pks
jinhodotchoi Sep 7, 2025
8328d69
Update web-client-deploy-development.yml
jimmy0006 Sep 8, 2025
279f945
Update web-client-deploy-development.yml
jimmy0006 Sep 8, 2025
5eceed0
Update web-client-deploy-development.yml
jimmy0006 Sep 8, 2025
02349c2
Update web-client-deploy-development.yml
jimmy0006 Sep 8, 2025
76d23fe
Update web-client-deploy-development.yml
jimmy0006 Sep 8, 2025
e0e7426
Update web-client-deploy-development.yml
jimmy0006 Sep 8, 2025
9b71d45
feat: Update deploy script on dev
jinhodotchoi Sep 8, 2025
4c9d612
fix: Add cache dependency
jinhodotchoi Sep 8, 2025
61b012b
fix: Delete immutable-cache option
jinhodotchoi Sep 8, 2025
4819f33
feat: Dynamic inject server url using dotenv-cli
jinhodotchoi Sep 8, 2025
9b68733
feat: Add k8s button to header
jinhodotchoi Sep 15, 2025
021e370
Merge pull request #150 from PoolC/feat/k8s-header
jinhodotchoi Sep 15, 2025
90f595b
fix: Replace old hook names with new one
jinhodotchoi Sep 15, 2025
1a4385f
Merge pull request #151 from PoolC/feat/k8s-header
jinhodotchoi Sep 15, 2025
5e3e813
chore: Fix PKS docs link
jinhodotchoi Sep 16, 2025
a12d152
feat: Update PKS link ui
jinhodotchoi Sep 16, 2025
d69f385
feat: Add menus in PKS site
jinhodotchoi Sep 25, 2025
a10562e
chore: Set https to http
jinhodotchoi Sep 25, 2025
3757aca
feat: Add ArgoCDForm
jinhodotchoi Sep 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 22 additions & 23 deletions .github/workflows/web-client-deploy-development.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,28 +11,27 @@ jobs:
steps:
- uses: actions/checkout@v4

# TODO: 패키지 구조 변경 및 s3 배포에 따라 변경해야함
# - uses: actions/setup-node@v4
# with:
# node-version: '20'
# cache: 'yarn'
- uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'yarn'
# @see https://github.com/cypress-io/github-action#yarn-modern
cache-dependency-path: ./yarn.lock

# - name: build
# run: |
# rm ./apps/web/.env && mv ./apps/web/.env.dev ./apps/web/.env
# yarn set version 3.8.1
# yarn install --immutable --immutable-cache
# yarn web codegen
# yarn web build
- name: build
run: |
rm ./websites/poolc.org/.env && mv ./websites/poolc.org/.env.dev ./websites/poolc.org/.env
yarn set version 4.9.2
yarn install --immutable
yarn workspace @dialga/poolc.org build

# - name: scp
# uses: appleboy/scp-action@v0.1.7
# with:
# host: ${{ secrets.SSH_HOST }}
# username: ${{ secrets.SSH_USERNAME }}
# key: ${{ secrets.SSH_PEM_KEY }}
# port: ${{ secrets.SSH_PORT }}
# source: ./apps/web/build/*
# # TODO: 패키지 구조 변경에 따라 target 디렉토리도 변경해야함
# target: ~/dialga/apps/web-client/build
# strip_components: 3
- name: scp
uses: appleboy/scp-action@v0.1.7
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_PEM_KEY }}
port: ${{ secrets.SSH_PORT }}
source: ./websites/poolc.org/build/*
target: ~/k8s/dialga/build
strip_components: 3
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
v20.19.3
4 changes: 2 additions & 2 deletions websites/poolc.org/.env
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
VITE_API_BASE_URL=https://api.poolc.org
VITE_FILE_URL=https://api.poolc.org
VITE_API_BASE_URL=https://dev.poolc.org/api
VITE_FILE_URL=https://dev.poolc.org/api
VITE_MAX_FILE_SIZE=50000000 # 50mb
3 changes: 2 additions & 1 deletion websites/poolc.org/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"sync:type": "yarn dlx typesync",
"check:type": "tsc",
"check:type:watch": "yarn check:type --watch",
"codegen": "openapi -i https://api.poolc.org/v2/api-docs -o src/lib/api-v2/__generated__ --useUnionTypes --useOptions -c axios",
"codegen": "dotenv -e ./.env -- bash -c 'openapi -i $VITE_API_BASE_URL/v2/api-docs -o src/lib/api-v2/__generated__ --useUnionTypes --useOptions -c axios'",
"postinstall": "yarn codegen",
"lint": "eslint . && prettier . --check --ignore-path .gitignore",
"format": "eslint . --fix && prettier . --write --ignore-path .gitignore"
Expand All @@ -20,6 +20,7 @@
},
"devDependencies": {
"@types/node": "^18.15.3",
"dotenv-cli": "^10.0.0",
"eslint": "^8.57.0",
"openapi-typescript-codegen": "^0.28.0",
"prettier": "^3.1.1",
Expand Down
5 changes: 5 additions & 0 deletions websites/poolc.org/src/components/header/Menus/Menus.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,11 @@ const Menus = ({
visible: isLogin,
content: 'Room',
},
{
to: `/${MENU.MY_PAGE}#pks`,
visible: isLogin,
content: 'K8s',
},
{
to: `/${MENU.APPLY}`,
visible: !isLogin || (isLogin && !isAuthorizedRole(role)),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,7 @@ export default function Notification() {

return (
<div>
<Dropdown menu={{ items: dropDownItems }} dropdownRender={Menu}>
<Dropdown menu={{ items: dropDownItems }} popupRender={Menu}>
<Button shape="circle" className={styles.dropdownButton}>
<Space size="large" className={styles.dropdownShape}>
<Badge count={data.unreadCount ?? 0}>
Expand Down
4 changes: 2 additions & 2 deletions websites/poolc.org/src/components/home/HomeEntry.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import Carousel from '~/components/home/Carousel';
import RecentNotice from '~/components/home/RecentNotice';
import RecentProject from '~/components/home/RecentProject';
import { useAppSelector } from '~/hooks/useAppSelector';
import { PoolcControllerService, PostControllerService, ProjectControllerService, queryKey, useAppSuspeneseQueries } from '~/lib/api-v2';
import { PoolcControllerService, PostControllerService, ProjectControllerService, queryKey, useAppSuspenseQueries } from '~/lib/api-v2';
import { getBoardTitleForRequest } from '~/lib/utils/boardUtil';
import ApplyBanner from '~/components/home/ApplyBanner';

Expand All @@ -20,7 +20,7 @@ const useStyles = createStyles(({ css }) => ({
export default function HomeEntry() {
const { styles } = useStyles();

const [{ data: poolcInfo }, { data: projectInfo }, { data: noticeInfo }] = useAppSuspeneseQueries({
const [{ data: poolcInfo }, { data: projectInfo }, { data: noticeInfo }] = useAppSuspenseQueries({
queries: [
{
queryKey: queryKey.poolc.poolc,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ import {
ActivityContainer,
Activities,
} from './MemberDetailContent.styles';
import { ConversationControllerService, MemberControllerService, MemberResponse, queryKey, useAppMutation, useAppSuspeneseQueries } from '~/lib/api-v2';
import { ConversationControllerService, MemberControllerService, MemberResponse, queryKey, useAppMutation, useAppSuspenseQueries } from '~/lib/api-v2';
import { MENU } from '~/constants/menus';

export default function MemberDetailContent({ loginId }: { loginId: string }) {
const history = useHistory();
const [{ data: _member }, { data: me }] = useAppSuspeneseQueries({
const [{ data: _member }, { data: me }] = useAppSuspenseQueries({
queries: [
{
queryKey: queryKey.member.id(loginId),
Expand Down Expand Up @@ -96,7 +96,9 @@ export default function MemberDetailContent({ loginId }: { loginId: string }) {
<ActivityContainer>
<h2>참여 활동</h2>
<Activities>
{member.projects?.map((project) => <ProjectCard key={project.id} project={project} />)}
{member.projects?.map((project) => (
<ProjectCard key={project.id} project={project} />
))}
{/* TODO: fill undefined props */}
{member.hostActivities?.map((activity) => (
<ActivityCard key={activity.id} activity={activity} onToggleRegisterActivity={undefined} onDeleteActivity={undefined} isLogin={undefined} memberId={undefined} role={undefined} />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { Button, List, Space, Typography } from 'antd';
import { ArrowLeftOutlined } from '@ant-design/icons';
import { Link, useHistory } from 'react-router-dom';
import { createStyles } from 'antd-style';
import { ConversationControllerService, MemberControllerService, queryKey, useAppSuspeneseQueries } from '~/lib/api-v2';
import { ConversationControllerService, MemberControllerService, queryKey, useAppSuspenseQueries } from '~/lib/api-v2';
import { dayjs } from '~/lib/utils/dayjs';
import { MENU } from '~/constants/menus';

Expand Down Expand Up @@ -41,7 +41,7 @@ export default function MessageAllListContent() {
const { styles } = useStyles();
const history = useHistory();

const [{ data: conversations }, { data: me }] = useAppSuspeneseQueries({
const [{ data: conversations }, { data: me }] = useAppSuspenseQueries({
queries: [
{
queryKey: queryKey.conversation.all,
Expand Down
32 changes: 32 additions & 0 deletions websites/poolc.org/src/components/my-page/MyPageArgoCDForm.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import { Form, Input } from 'antd';
import { CopyOutlined, CheckOutlined } from '@ant-design/icons';
import { createStyles } from 'antd-style';
import useCopy from '../../hooks/useCopy';

const USER_NAME = 'poolini';

const PASSWORD = 'rgbc0ffee';

export default function MyPageArgoCDForm() {
const { styles } = useStyles();

const { isCopied: isUserNameCopied, copy: copyUserName } = useCopy();
const { isCopied: isPasswordCopied, copy: copyPassword } = useCopy();

return (
<Form layout="vertical">
<Form.Item label="username" className={styles.inputWrap}>
<Input value={USER_NAME} readOnly addonAfter={isUserNameCopied ? <CheckOutlined /> : <CopyOutlined onClick={() => copyUserName(USER_NAME)} />} />
</Form.Item>
<Form.Item label="password" className={styles.inputWrap}>
<Input value={PASSWORD} readOnly addonAfter={isPasswordCopied ? <CheckOutlined /> : <CopyOutlined onClick={() => copyPassword(PASSWORD)} />} />
</Form.Item>
</Form>
);
}

const useStyles = createStyles(({ css }) => ({
inputWrap: css({
marginBottom: '8px',
}),
}));
Loading