diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 00000000..a6a5322e --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,48 @@ +name: React build +on: + push: + branches: + - deploy + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout source code + uses: actions/checkout@v3 + + - name: Clean Yarn cache + run: yarn cache clean + + - name: Install Dependencies + run: yarn install --no-immutable + + - name: Build Common + run: yarn run build:common + + - name: Build Admin + run: yarn run build:admin + + - name: Build User + run: yarn run build:user + + - name: Deploy-Admin + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + run: | + aws s3 cp \ + --recursive \ + --region ap-northeast-2 \ + packages/admin/dist s3://yangbong-admin + + - name: Deploy-User + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + run: | + aws s3 cp \ + --recursive \ + --region ap-northeast-2 \ + packages/user/dist s3://yangbong-front diff --git a/package.json b/package.json index e2b708c1..1d30fb03 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,6 @@ "moment": "^2.30.1", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-helmet-async": "^2.0.5", "react-router-dom": "^6.25.1", "react-toastify": "^10.0.5", "tailwind-merge": "^2.4.0" diff --git a/packages/admin/src/pages/start/LoginPage.tsx b/packages/admin/src/pages/start/LoginPage.tsx index dec782ea..44583fa9 100644 --- a/packages/admin/src/pages/start/LoginPage.tsx +++ b/packages/admin/src/pages/start/LoginPage.tsx @@ -16,7 +16,7 @@ function LoginPage() { return (
-

Admin System

+

Admin System(하하 CI/CD 성공?)

- + diff --git a/packages/user/public/link/leisure.html b/packages/user/public/link/leisure.html new file mode 100644 index 00000000..03b118be --- /dev/null +++ b/packages/user/public/link/leisure.html @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/user/public/link/og-leisure.png b/packages/user/public/link/og-leisure.png new file mode 100644 index 00000000..46797820 Binary files /dev/null and b/packages/user/public/link/og-leisure.png differ diff --git a/packages/user/public/link/og-pet.png b/packages/user/public/link/og-pet.png new file mode 100644 index 00000000..16f2fcec Binary files /dev/null and b/packages/user/public/link/og-pet.png differ diff --git a/packages/user/public/link/og-space.png b/packages/user/public/link/og-space.png new file mode 100644 index 00000000..f0f6331c Binary files /dev/null and b/packages/user/public/link/og-space.png differ diff --git a/packages/user/public/link/og-travel.png b/packages/user/public/link/og-travel.png new file mode 100644 index 00000000..1c877b20 Binary files /dev/null and b/packages/user/public/link/og-travel.png differ diff --git a/packages/user/public/link/pet.html b/packages/user/public/link/pet.html new file mode 100644 index 00000000..0f41b592 --- /dev/null +++ b/packages/user/public/link/pet.html @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/user/public/link/space.html b/packages/user/public/link/space.html new file mode 100644 index 00000000..61d8f5fc --- /dev/null +++ b/packages/user/public/link/space.html @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/user/public/link/travel.html b/packages/user/public/link/travel.html new file mode 100644 index 00000000..3b31a2bd --- /dev/null +++ b/packages/user/public/link/travel.html @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + diff --git a/packages/user/src/components/shared/linkShare/LinkShareMetaTag.tsx b/packages/user/src/components/shared/linkShare/LinkShareMetaTag.tsx deleted file mode 100644 index c03e1d12..00000000 --- a/packages/user/src/components/shared/linkShare/LinkShareMetaTag.tsx +++ /dev/null @@ -1,35 +0,0 @@ -import { CATEGORIES } from '@softeer/common/constants'; -import { Category } from '@softeer/common/types'; -import { Helmet } from 'react-helmet-async'; -import { useLocation } from 'react-router-dom'; -import { TEAM_HELMET_OPTIONS } from 'src/constants/teamDescriptions.ts'; - -function isValidTeamType(value: string | null): boolean { - return value !== null && (CATEGORIES as readonly string[]).includes(value); -} - -function LinkShareMetaTag() { - const location = useLocation(); - const queryParams = new URLSearchParams(location.search); - const teamType = queryParams.get('teamType'); - - // ?teamType=pet | teamType=place | ... 이런식으로 쿼리스트링 파싱해서 og, description 변경 - let helmetOption = TEAM_HELMET_OPTIONS.pet; - if (isValidTeamType(teamType)) { - const result = TEAM_HELMET_OPTIONS[teamType as Category]; - if (result) { - helmetOption = result; - } - } - - return ( - - {/* 일반적인 메타 태그 설정 */} - - - - - ); -} - -export default LinkShareMetaTag; diff --git a/packages/user/src/constants/teamDescriptions.ts b/packages/user/src/constants/teamDescriptions.ts index 9027655c..590ab74b 100644 --- a/packages/user/src/constants/teamDescriptions.ts +++ b/packages/user/src/constants/teamDescriptions.ts @@ -20,24 +20,3 @@ export const TEAM_DESCRIPTIONS: Record = { summary: '오프로드도 캐스퍼와 함께', }, } as const; - -export type HelmetOption = { image: string; description: string }; - -export const TEAM_HELMET_OPTIONS: Record = { - pet: { - description: '펫 프렌들리\n반려동물의 편안하고\n안전한 여행을 위한', - image: '/image/leisure.png', - }, - travel: { - description: '여행의 정석\n아웃도어 활동을 쉽고 편하게', - image: '/image/pet.png', - }, - place: { - description: '공간활용의 기술\n많은 물건도 구석구석 알차게', - image: '/image/place.png', - }, - leisure: { - description: '펫 프렌들리\n레저의 정석', - image: '/image/travel.png', - }, -} as const; diff --git a/packages/user/src/libs/index.tsx b/packages/user/src/libs/index.tsx index 03edb895..153c6f9f 100644 --- a/packages/user/src/libs/index.tsx +++ b/packages/user/src/libs/index.tsx @@ -1,11 +1,9 @@ import { PropsWithChildren } from 'react'; -import { HelmetProvider } from 'react-helmet-async'; + import QueryProvider from 'src/libs/query/index.tsx'; export default function AppProviders({ children }: PropsWithChildren) { return ( - {children} - ); } diff --git a/packages/user/src/routes/router.tsx b/packages/user/src/routes/router.tsx index 9c9f4cbb..41987563 100644 --- a/packages/user/src/routes/router.tsx +++ b/packages/user/src/routes/router.tsx @@ -1,7 +1,6 @@ import { lazy, Suspense } from 'react'; import { createBrowserRouter, RouteObject } from 'react-router-dom'; import Layout from 'src/components/layout/index.tsx'; -import LinkShareMetaTag from 'src/components/shared/linkShare/LinkShareMetaTag.tsx'; import RoutePaths from 'src/constants/routePath.ts'; import AuthProvider from 'src/context/auth/index.tsx'; @@ -13,7 +12,7 @@ const routes: RouteObject[] = [ path: RoutePaths.Index, element: ( - + {/* */} ), diff --git a/yarn.lock b/yarn.lock index 4c140026..1fe174d3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5875,26 +5875,6 @@ __metadata: languageName: node linkType: hard -"react-fast-compare@npm:^3.2.2": - version: 3.2.2 - resolution: "react-fast-compare@npm:3.2.2" - checksum: 10c0/0bbd2f3eb41ab2ff7380daaa55105db698d965c396df73e6874831dbafec8c4b5b08ba36ff09df01526caa3c61595247e3269558c284e37646241cba2b90a367 - languageName: node - linkType: hard - -"react-helmet-async@npm:^2.0.5": - version: 2.0.5 - resolution: "react-helmet-async@npm:2.0.5" - dependencies: - invariant: "npm:^2.2.4" - react-fast-compare: "npm:^3.2.2" - shallowequal: "npm:^1.1.0" - peerDependencies: - react: ^16.6.0 || ^17.0.0 || ^18.0.0 - checksum: 10c0/f390ea8bf13c2681850e5f8eb5b73d8613f407c245a5fd23e9db9b2cc14a3700dd1ce992d3966632886d1d613083294c2aeee009193f49dfa7d145d9f13ea2b0 - languageName: node - linkType: hard - "react-is@npm:^16.13.1": version: 16.13.1 resolution: "react-is@npm:16.13.1" @@ -6423,13 +6403,6 @@ __metadata: languageName: node linkType: hard -"shallowequal@npm:^1.1.0": - version: 1.1.0 - resolution: "shallowequal@npm:1.1.0" - checksum: 10c0/b926efb51cd0f47aa9bc061add788a4a650550bbe50647962113a4579b60af2abe7b62f9b02314acc6f97151d4cf87033a2b15fc20852fae306d1a095215396c - languageName: node - linkType: hard - "shebang-command@npm:^2.0.0": version: 2.0.0 resolution: "shebang-command@npm:2.0.0" @@ -6554,7 +6527,6 @@ __metadata: prettier-plugin-tailwindcss: "npm:^0.6.5" react: "npm:^18.3.1" react-dom: "npm:^18.3.1" - react-helmet-async: "npm:^2.0.5" react-router-dom: "npm:^6.25.1" react-toastify: "npm:^10.0.5" tailwind-merge: "npm:^2.4.0"