Skip to content

Commit

Permalink
release: web/dev into main (v1) (#88)
Browse files Browse the repository at this point in the history
* feat: add `Typography`, `Button` components (#17)

* feat: use absolute path

* feat: add tailwind-merge, clsx lib

* feat: font, color style type

* fix: vite absolute path setting with using path lib

* feat: add class-variance-authorithy lib

* feat: Typography with size, color props

* feat: VisuallyHidden Component for OnlyScreenReader

* fix: fix typo in text-grey-number

* feat: update color scale(grey, blueGrey scale)

* feat: add cn util with extendsTailwindMerge

* fix: use cn util at typography className

* feat: update font scale(headline-1, body-4)

* feat: Button Component with variant, color, padding

* feat: add ci workflow for web (#19)

* chore: add type check script

* feat: add testing libs to web packages

* chore: set jest config

* chore: add coverage to gitignore

* chore: add sample test code

* feat: add web ci worfklow(lint, type check, test, build)

* feat: add coverage to lint ignorePatterns

* chore: coverage to web gitignore

* feat: add icon assets and `Icon`, `AccessibleIconButton` components (#21)

* feat: add icon svg assets

* feat: add vite-svgr-plugin lib

* feat: set svgr option with typescript

* feat: Icon with type, stroke, fill

* fix: add white, black color to ColorType

* feat: AccessibleIconButton for ScreenReader

* chore: add eol to vite-env.dts

* feat: create Docker Hub push flow (#22)

* feat: create Docker Hub push flow

* feat: add Icon, Header, BottomNavigation (with @tanstack/router) (#28)

* feat: create Docker Hub push flow (#22)

* feat: create Docker Hub push flow

* feat: add `Typography`, `Button` components (#17)

* feat: use absolute path

* feat: add tailwind-merge, clsx lib

* feat: font, color style type

* fix: vite absolute path setting with using path lib

* feat: add class-variance-authorithy lib

* feat: Typography with size, color props

* feat: VisuallyHidden Component for OnlyScreenReader

* fix: fix typo in text-grey-number

* feat: update color scale(grey, blueGrey scale)

* feat: add cn util with extendsTailwindMerge

* fix: use cn util at typography className

* feat: update font scale(headline-1, body-4)

* feat: Button Component with variant, color, padding

* feat: add ci workflow for web (#19)

* chore: add type check script

* feat: add testing libs to web packages

* chore: set jest config

* chore: add coverage to gitignore

* chore: add sample test code

* feat: add web ci worfklow(lint, type check, test, build)

* feat: add coverage to lint ignorePatterns

* chore: coverage to web gitignore

* feat: add icon assets and `Icon`, `AccessibleIconButton` components (#21)

* feat: add icon svg assets

* feat: add vite-svgr-plugin lib

* feat: set svgr option with typescript

* feat: Icon with type, stroke, fill

* fix: add white, black color to ColorType

* feat: AccessibleIconButton for ScreenReader

* chore: add eol to vite-env.dts

* feat: change headline-2 with 24px font

* feat: add width, height props to icon

* fix: change design system(font, icon, svg)

* feat: Header component

* chore: change svg fill color

* feat: content layout

* feat: add @tanstack/react-router lib

* feat: set routing with tasntack router

* feat: add solid icons

* feat: add lodash.throttle lib

* feat: add usePreservedCallback

* feat: add usePreservedReference

* feat: add useThrottle

* feat: BottomNavigation

* chore: delete console log

* chore: delete un-used ignore lint

* refactor: fix bg-white to bottom navigation(using opacity when scroll up)

* feat: add transition opacity to bottom navigation

* fix: add blueGrey800 color

---------

Co-authored-by: Wonyoung Lee <74983448+210-reverof@users.noreply.github.com>

* feat: add `SignUpPage`  (#36)

* feat: create Docker Hub push flow (#22)

* feat: create Docker Hub push flow

* feat: add check svg

* feat: add StepTitle component for sign-up

* fix: variant to optional

* fix: content layout with className, isShowBottomNavigation

* -feat: add react-toastify lib

* feat: world static asset

* refactor: adjust sub-headline

* chore: add transition to color

* feat: Input component

* refactor: change line-height

* feat: customize toastify style, action

* feat: alert not support at click NotSupportText

* feat: solidCamera icon

* chore: delete border bottom on Header

* chore: add iconColor props to Input

* feat: add eye icons

* refactor: change icon props on Input

* feat: user input email, nickname on SignUpEmailBox

* feat: user input verifyCode on SignUpEmailVerifyBox

* feat: user input password on SignUpPasswordBox

* feat: user input profileImage on SignUpProfileImageBox

* feat: user input name on SignUpNameBox

* feat: make entry page

* feat: sign-up page

* refactor: align start, mid, end on Header

* feat: add resend email verify text

---------

Co-authored-by: Wonyoung Lee <74983448+210-reverof@users.noreply.github.com>

* feat: verify email format logic (#40)

* feat: isValidEmail utility function

* test: testcode for isValidEmail

* feat: verify email format when signup

* refactor: combine the two state into one(dirty, isFirstDirty)

* feat: add login user page (#42)

* chore: change route home, entry

* chore: change component hierarchy

* chore: delete skip button on SignUpNameBox

* feat: interaction hover to Button

* feat: interaction hover to Input

* feat: user email on LoginEmailBox

* feat: user password on LoginPasswordBox

* feat: user login-page

* fix: set grey-600 to title(StepTitle)

* feat: change password page

* feat: tabs component with underline animation (#50)

* refactor: parallel to ci action with cache node_modules (#44)

* refactor: parallel to ci action with cache node_modules

* chore: add eol to workflow

* chore: change import order

* chore: rename job for unity

* feat: apply lottie to MembershipEntryPage  (#52)

* feat: react-lottie lib

* feat: earth lottie json file

* chore: delete un-used image file

* feat: @types/lottie lib

* feat: apply lottie to MembershipEntryPage

* feat: tab animation to bottom navigation (#55)

* refactor: withRef to AccessibleIconButton

* feat: tab animation to icon

* chore: change default color to grey-600

* chore: change deafult color to blueGrey800

* feat: edit common component(modal, bottomsheet) (#68)

* chore: remove content layout in tab for deleting depdency

* chore: red heart icon svg

* fix: scroll issue

* feat: basic models interface(User, TimelineItem)

* chore: dummy Factory for timeline

* feat: TimelineItem ui component

* fix: change button css when outlined

* feat: modal component with react portal

* feat: animation slide up

* chore: change svg icon

* feat: BottomSheetModal when click paint emoji

* feat: separate bottom sheet (#70)

* chore: rename signup to join

* chore: temporary post edit page for testing postId

* feat: ReplyBottomSheet for handling when click reply icon

* chore: fix line-height

* feat: ViewsBottomSheet for handling when click reply views

* chore: add clip icon

* feat: ShareBottomSheet for handling when click share

* fix: toast show when click heart

* feat: AsyncBoundray, ErrorPage (#69)

* feat: add react-error-boundary lib

* feat: Asyncboundary to handle error, loading

* feat: add error page (404page)

* chore: change emoji, button color

* chore: add space between message

* chore: change version setup-node

* chore: not use cache in workflow

* chore: not use cache in workflow all

* fix: change bottom navigation icon opacity when scroll (#75)

* fix: bottom navigation icon opacity change when scroll

* fix: 500 => 200 thorttle delay

* feat: format time in timeline item box (#77)

* feat: getDiffDate utility function

* chore: set esModuleInterop

* test: testcode for getDiffDate

* feat: getDiffDateText utility function

* test: testcode for getDiffDateText

* feat: apply getDiffDateText with randomAdjustTime

* feat: open menu when click profile icon (#81)

* chore: change icon default color

* feat: extend user model

* chore: create dummy user

* feat: profile page scaffold

* chore: change icon default color

* feat: add menu modal

* feat: add dark-light mode change icon in menu

* chore: add eol in user

* feat: timeline-item-menu component (#79)

* feat: menu icons

* feat: timline-item-menu

* fix: change bottom navigation icon opacity when scroll (#75)

* fix: bottom navigation icon opacity change when scroll

* fix: 500 => 200 thorttle delay

* feat: format time in timeline item box (#77)

* feat: getDiffDate utility function

* chore: set esModuleInterop

* test: testcode for getDiffDate

* feat: getDiffDateText utility function

* test: testcode for getDiffDateText

* feat: apply getDiffDateText with randomAdjustTime

* feat: open menu when click profile icon (#81)

* chore: change icon default color

* feat: extend user model

* chore: create dummy user

* feat: profile page scaffold

* chore: change icon default color

* feat: add menu modal

* feat: add dark-light mode change icon in menu

* chore: add eol in user

* feat: menu icons

* feat: timline-item-menu

* feat: add floating button to home (#83)

* feat: useLongPress hook

* feat: FloatingButton with useLongPress, animation

* feat: scale down when tab floating button

---------

Co-authored-by: Wonyoung Lee <74983448+210-reverof@users.noreply.github.com>
  • Loading branch information
poiu694 and 210-reverof authored Jan 22, 2024
1 parent d315fce commit dde4272
Show file tree
Hide file tree
Showing 145 changed files with 10,445 additions and 140 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/dockerhub-push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,4 @@ jobs:
cd $DOCKERFILE_DIR
docker build -t $DOCKER_USERNAME/$BRANCH_NAME-service:latest .
docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
docker push $DOCKER_USERNAME/$BRANCH_NAME-service:latest
docker push $DOCKER_USERNAME/$BRANCH_NAME-service:latest
180 changes: 180 additions & 0 deletions .github/workflows/web-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
name: web-CI

on:
pull_request:
types: [opened, synchronize, reopened]
paths:
- 'src/web/**'

jobs:
web-check-lint:
name: check lint
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./src/web

strategy:
matrix:
node-version: [18]

steps:
- uses: actions/checkout@v3

- uses: pnpm/action-setup@v2
with:
version: 8.6.1

- name: setup node
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
# cache pnpm에 대한 이슈로 인해 제거
# https://github.com/actions/setup-node/issues/801
# cache: 'pnpm'
# cache-dependency-path: './src/web'

- name: Cache dependencies
id: cache
uses: actions/cache@v3
with:
# cache의 대상을 정합니다.
path: '**/node_modules'
# cache를 무효화하를 결정하는 기준은 의존성이 변경되면 함께 변경되는 파일인 pnpm-lock.yaml을 기준으로 합니다.
key: ${{ runner.os }}-node-${{ hashFiles('**/pnpm-lock.yaml') }}
# key가 유효하지 않은 경우 runner의 운영체제 값과 node라는 suffix를 key로 복구합니다.
# 결과적으로 pnpm-lock.yaml 파일이 변경되지 않았다면 캐싱된 node_modules를 사용합니다.
# 만약 복구될 캐시가 없다면 아래에서 사용할 cache-hit는 false가 됩니다.
restore-keys: |
${{ runner.os }}-node-
- name: pnpm install
# 캐시가 없다면 의존성을 설치합니다.
if: steps.cache.outputs.cache-hit != 'true'
run: pnpm install --frozen-lockfile

- name: check lint
run: pnpm lint

web-check-type:
name: check type
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./src/web

strategy:
matrix:
node-version: [18]

steps:
- uses: actions/checkout@v3

- uses: pnpm/action-setup@v2
with:
version: 8.6.1

- name: setup node
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
# cache: 'pnpm'
# cache-dependency-path: './src/web'

- name: Cache dependencies
id: cache
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-node-
- name: pnpm install
if: steps.cache.outputs.cache-hit != 'true'
run: pnpm install --frozen-lockfile

- name: check type
run: pnpm type:check

web-check-test:
name: check test
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./src/web

strategy:
matrix:
node-version: [18]

steps:
- uses: actions/checkout@v3

- uses: pnpm/action-setup@v2
with:
version: 8.6.1

- name: setup node
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
# cache: 'pnpm'
# cache-dependency-path: './src/web'

- name: Cache dependencies
id: cache
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-node-
- name: pnpm install
if: steps.cache.outputs.cache-hit != 'true'
run: pnpm install --frozen-lockfile

- name: check testing
run: pnpm test

web-check-build:
name: check build
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./src/web

strategy:
matrix:
node-version: [18]

steps:
- uses: actions/checkout@v3

- uses: pnpm/action-setup@v2
with:
version: 8.6.1

- name: setup node
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
# cache: 'pnpm'
# cache-dependency-path: './src/web'

- name: Cache dependencies
id: cache
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-node-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-node-
- name: pnpm install
if: steps.cache.outputs.cache-hit != 'true'
run: pnpm install --frozen-lockfile

- name: check build
run: pnpm build
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -305,4 +305,3 @@ obj/
!/gradle/wrapper/gradle-wrapper.jar

# End of https://www.toptal.com/developers/gitignore/api/intellij,android,androidstudio,react,java

8 changes: 6 additions & 2 deletions src/web/.eslintrc.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ module.exports = {
root: true,
env: { browser: true, es2020: true },
extends: ['airbnb', 'airbnb-typescript', 'plugin:@tanstack/eslint-plugin-query/recommended', 'prettier'],
ignorePatterns: ['dist', '.eslintrc.cjs'],
ignorePatterns: ['dist', '.eslintrc.cjs', 'coverage'],
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaVersion: 'latest',
Expand Down Expand Up @@ -30,6 +30,10 @@ module.exports = {
'react-refresh/only-export-components': [
'warn',
{ allowConstantExport: true },
]
],
"jsx-a11y/aria-role": [2, {
"allowedInvalidRoles": ["text"],
"ignoreNonDOM": true
}], // role="text"만 예외로 허용하여 ARIA spec을 확장해서 사용합니다.
},
};
2 changes: 2 additions & 0 deletions src/web/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,5 @@ dist-ssr
*.njsproj
*.sln
*.sw?

coverage
Loading

0 comments on commit dde4272

Please sign in to comment.