@wishket/design-system 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.editorconfig ADDED
@@ -0,0 +1,12 @@
1
+ root = true
2
+ [*]
3
+ indent_style = space
4
+ end_of_line = lf
5
+ charset = utf-8
6
+ trim_trailing_whitespace = true
7
+ insert_final_newline = true
8
+ indent_size = 2
9
+ format_on_save = true
10
+
11
+ [*.md]
12
+ trim_trailing_whitespace = false
package/.eslintignore ADDED
@@ -0,0 +1,3 @@
1
+ /node_modules
2
+ __test__
3
+ *.js
package/.eslintrc.js ADDED
@@ -0,0 +1,33 @@
1
+ module.exports = {
2
+ parser: '@typescript-eslint/parser',
3
+ parserOptions: {
4
+ project: ['tsconfig.json'],
5
+ tsconfigRootDir: __dirname,
6
+ sourceType: 'module',
7
+ createDefaultProgram: true
8
+ },
9
+ ignorePatterns: ['*.d.ts'],
10
+ extends: ["@wishket/eslint-config-wishket"],
11
+ root: true,
12
+ env: {
13
+ node: true,
14
+ browser: true
15
+ },
16
+ globals: {
17
+ document: false,
18
+ Map: false,
19
+ Promise: false
20
+ },
21
+ settings: {
22
+ react: {
23
+ version: 'detect'
24
+ },
25
+ 'import/parsers': {
26
+ '@typescript-eslint/parser': ['.ts', '.tsx']
27
+ },
28
+ 'import/resolver': {
29
+ typescript: {}
30
+ },
31
+ 'import/ignore': ['testing-utils']
32
+ }
33
+ }
@@ -0,0 +1 @@
1
+ * @wishket/frontend
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: 버그 이슈
3
+ about: 버그에 대한 티켓을 생성합니다.
4
+ title: ''
5
+ labels: 'bug'
6
+ ---
7
+
8
+ ## 버그에 대한 내용
9
+
10
+ 어떤 버그인지 기대 동작과 현상에 대해 작성합니다.
11
+
12
+ - ex. 등록 버튼 클릭 시 서버 요청 에러가 발생하고 결과에 대한 팝업이 노출되지 않음
13
+
14
+ ## To reproduce
15
+
16
+ 버그 재현 방법에 대해 작성합니다.
17
+
18
+ - ex.
19
+ 1. <https://example.com> 접속
20
+ 2. 계정 로그인
21
+ 3. <https://example.com/form> 접속
22
+ 4. form 작성
23
+ 5. '등록' 버튼 클릭
24
+
25
+ ## 기대 현상
26
+
27
+ 예상한 상황에 대한 명확하고 간결한 설명입니다.
28
+
29
+ - ex. 등록 버튼 클릭 시 서버 요청 및 응답 받아 해당 결과에 대한 팝업 노출
30
+
31
+ ## Screenshots
32
+
33
+ 버그를 설명하는데 도움이 되는 스크린샷을 추가합니다.
34
+
35
+ ### 발생 환경
36
+
37
+ - Device: [e.g. iPhone6]
38
+ - OS: [e.g. iOS]
39
+ - Browser [e.g. chrome, safari]
40
+ - Version [e.g. 22]
41
+
42
+ ### Additional context
43
+
44
+ 추가적인 컨텍스트를 작성합니다.
@@ -0,0 +1,29 @@
1
+ ---
2
+ name: 기능 변경/추가
3
+ about: 제품에 추가할 기능의 변경 또는 추가에 대한 티켓을 생성합니다.
4
+ title: ''
5
+ labels: 'feat'
6
+ ---
7
+
8
+ ## 기능에 대한 내용
9
+
10
+ 어떤 기능을 추가/변경 하는지 기대 동작과 현상에 대해 작성합니다.
11
+
12
+ - ex. 사용자 프로필 이미지 변경 기능 추가
13
+
14
+ ## 계획 / 설계
15
+
16
+ 기능을 구현하기 위한 계획 또는 설계를 작성합니다.
17
+
18
+ - ex.
19
+ - 이미지 변경 버튼 UI 추가
20
+ - 이미지 변경 버튼 클릭 시 이미지 변경 모달 노출
21
+ - 이미지 변경 모달에서 이미지 변경 후 저장 버튼 클릭 시 서버 요청
22
+ - 서버 요청 성공 시 성공 모달 노출
23
+
24
+ ## 추가 컨텍스트
25
+
26
+ 추가적인 컨텍스트를 작성합니다.
27
+
28
+ - 관련된 slack, trello, confluence, github issue, github pr 등의 링크
29
+ - 구현에 참조할 만한 내용
@@ -0,0 +1,36 @@
1
+ ### Short description
2
+
3
+ *내용을 간단히 알 수 있도록 한줄로 요약하여 작성합니다.*
4
+
5
+ ### Proposed changes
6
+
7
+ *변경 사항에 대해 리뷰어가 이해할 수 있도록 상세히 작성합니다.*
8
+
9
+ - 변경 사항 1
10
+ - 변경 사항 2
11
+ - 변경 사항 3
12
+
13
+ ### How to test
14
+
15
+ *리뷰어가 재현을 할 수 있는 방법에 대해 작성합니다.*
16
+
17
+ ### Screenshots
18
+
19
+ *UI의 변경 사항이나 이미지/비디오를 통해 설명을 보완할 수 있는 내용에 대해 작성합니다.*
20
+
21
+ |AS-IS|TO-BE|
22
+ |--|--|
23
+ |변경 전|변경 후|
24
+
25
+ |구분|내용|
26
+ |--|--|
27
+ |타이틀|스크린샷|
28
+
29
+ ### Reference
30
+
31
+ *해당 작업을 하게 된 레퍼런스에 대해 작성합니다*
32
+ *라벨은 github 자동 이슈 링킹에 대한 예약어이므로 변경하지 않습니다.*
33
+
34
+ fix #issue-number_
35
+ resolve #issue-number_
36
+ close #issue-number_
@@ -0,0 +1,49 @@
1
+ name-template: 'v$NEXT_PATCH_VERSION 🌈'
2
+ tag-template: 'v$NEXT_PATCH_VERSION'
3
+ categories:
4
+ - title: '🎉 User stories'
5
+ labels:
6
+ - 'epic'
7
+ - 'Epic'
8
+ - 'user story'
9
+ - 'User story'
10
+ - 'user-story'
11
+ - title: '🚀 Features'
12
+ labels:
13
+ - 'feat'
14
+ - 'feature'
15
+ - 'Feature'
16
+ - 'enhancement'
17
+ - 'Enhancement'
18
+ - title: '🐛 Bug Fixes'
19
+ labels:
20
+ - 'fix'
21
+ - 'Fix'
22
+ - 'bugfix'
23
+ - 'bug'
24
+ - 'Bug'
25
+ - 'hotfix'
26
+ - title: '🦾 Refactoring'
27
+ labels:
28
+ - 'refactor'
29
+ - 'Refactor'
30
+ - title: '📚 Documentation'
31
+ labels:
32
+ - 'documentation'
33
+ - 'Documentation'
34
+ - title: '🧰 Maintenance'
35
+ label:
36
+ - 'chore'
37
+ - 'Chore'
38
+ - 'ci'
39
+ - 'CI'
40
+ - 'build'
41
+ - 'Build'
42
+ - title: '🛠 Dependencies'
43
+ label:
44
+ - 'dependencies'
45
+ - 'Dependencies'
46
+ change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
47
+ template: |
48
+ ## Changes
49
+ $CHANGES
@@ -0,0 +1,78 @@
1
+ name: design-system-canary
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+ paths:
8
+ - '**'
9
+ - '.github/workflows/design-system-canary.yml'
10
+
11
+ env:
12
+ NODE_OPTIONS: --max_old_space_size=4096
13
+
14
+ jobs:
15
+ install-dependencies:
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - name: Checkout code
19
+ uses: actions/checkout@v3
20
+
21
+ - name: Setup node.js
22
+ uses: actions/setup-node@v3
23
+ with:
24
+ node-version: '18'
25
+
26
+ - name: Install dependencies
27
+ if: steps.cache.outputs.cache-hit != 'true'
28
+ run: yarn install --frozen-lockfile
29
+
30
+
31
+ publish-canary:
32
+ runs-on: ubuntu-latest
33
+ needs: [install-dependencies]
34
+ steps:
35
+ - name: Checkout code
36
+ uses: actions/checkout@v3
37
+
38
+ - name: Setup node.js
39
+ uses: actions/setup-node@v3
40
+ with:
41
+ node-version: '18'
42
+
43
+ - name: Restore dependencies from cache
44
+ id: cache
45
+ uses: actions/cache@v3
46
+ with:
47
+ path: ./node_modules
48
+ key: ${{ runner.os }}-yarn-${{ hashFiles(format('{0}{1}', github.workspace, '/yarn.lock')) }}
49
+ restore-keys: |
50
+ ${{ runner.os }}-yarn-
51
+ - name: Install dependencies
52
+ if: steps.cache.outputs.cache-hit != 'true'
53
+ run: yarn install --frozen-lockfile
54
+
55
+ - name: Create .npmrc
56
+ run: |
57
+ cat << EOF > "$HOME/.npmrc"
58
+ //registry.npmjs.org/:_authToken=$NPM_TOKEN
59
+ EOF
60
+ env:
61
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
62
+
63
+ - name: Publish canary
64
+ run: |
65
+ cat <<< "$( jq '.version = "0.0.0"' package.json )" > package.json
66
+ echo -e "---\n'@wishket/design-system': patch\n---\n\nPublish canary" > .changeset/force-publish.md
67
+ yarn changeset version --snapshot
68
+ yarn changeset publish --tag canary
69
+ env:
70
+ GITHUB_TOKEN: ${{ secrets.PJW_GITHUB_TOKEN }}
71
+
72
+ - name: Output canary version number
73
+ run: |
74
+ name=$(jq -r .name package.json)
75
+ version=$(jq -r .version package.json)
76
+ yarn dlx action-status --context "Published $name" --state success --description $version --url "https://unpkg.com/$name@$version/"
77
+ env:
78
+ GITHUB_TOKEN: ${{ secrets.PJW_GITHUB_TOKEN }}
@@ -0,0 +1,77 @@
1
+ name: design-system-dev
2
+
3
+ on:
4
+ push:
5
+ branches-ignore:
6
+ - master
7
+ paths:
8
+ - '**'
9
+ - '.github/workflows/design-system-dev.yml'
10
+
11
+ env:
12
+ NODE_OPTIONS: --max_old_space_size=4096
13
+
14
+ jobs:
15
+ install-dependencies:
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - name: Checkout code
19
+ uses: actions/checkout@v3
20
+
21
+ - name: Setup node.js
22
+ uses: actions/setup-node@v3
23
+ with:
24
+ node-version: '18'
25
+
26
+ - name: Install dependencies
27
+ if: steps.cache.outputs.cache-hit != 'true'
28
+ run: yarn install --frozen-lockfile
29
+
30
+ publish-dev:
31
+ runs-on: ubuntu-latest
32
+ needs: [install-dependencies]
33
+ steps:
34
+ - name: Checkout code
35
+ uses: actions/checkout@v3
36
+
37
+ - name: Setup node.js
38
+ uses: actions/setup-node@v3
39
+ with:
40
+ node-version: '18'
41
+
42
+ - name: Restore dependencies from cache
43
+ id: cache
44
+ uses: actions/cache@v3
45
+ with:
46
+ path: ./node_modules
47
+ key: ${{ runner.os }}-yarn-${{ hashFiles(format('{0}{1}', github.workspace, '/yarn.lock')) }}
48
+ restore-keys: |
49
+ ${{ runner.os }}-yarn-
50
+ - name: Install dependencies
51
+ if: steps.cache.outputs.cache-hit != 'true'
52
+ run: yarn install --frozen-lockfile
53
+
54
+ - name: Create .npmrc
55
+ run: |
56
+ cat << EOF > "$HOME/.npmrc"
57
+ //registry.npmjs.org/:_authToken=$NPM_TOKEN
58
+ EOF
59
+ env:
60
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
61
+
62
+ - name: Publish dev
63
+ run: |
64
+ cat <<< "$( jq '.version = "0.0.0"' package.json )" > package.json
65
+ echo -e "---\n'@wishket/design-system': patch\n---\n\nPublish dev" > .changeset/force-publish.md
66
+ yarn changeset version --snapshot
67
+ yarn changeset publish --tag dev
68
+ env:
69
+ GITHUB_TOKEN: ${{ secrets.PJW_GITHUB_TOKEN }}
70
+
71
+ - name: Output dev version number
72
+ run: |
73
+ name=$(jq -r .name package.json)
74
+ version=$(jq -r .version package.json)
75
+ yarn dlx action-status --context "Published $name" --state success --description $version --url "https://unpkg.com/$name@$version/"
76
+ env:
77
+ GITHUB_TOKEN: ${{ secrets.PJW_GITHUB_TOKEN }}
@@ -0,0 +1,61 @@
1
+ name: design-system-release
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ env:
8
+ NODE_OPTIONS: --max_old_space_size=4096
9
+
10
+ jobs:
11
+ publish:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - name: Checkout code
15
+ uses: actions/checkout@v3
16
+
17
+ - name: Setup node.js
18
+ uses: actions/setup-node@v3
19
+ with:
20
+ node-version: '18'
21
+
22
+ - name: Restore dependencies from cache
23
+ id: cache
24
+ uses: actions/cache@v3
25
+ with:
26
+ path: ./node_modules
27
+ key: ${{ runner.os }}-yarn-${{ hashFiles(format('{0}{1}', github.workspace, '/yarn.lock')) }}
28
+ restore-keys: |
29
+ ${{ runner.os }}-yarn-
30
+ - name: Install dependencies
31
+ if: steps.cache.outputs.cache-hit != 'true'
32
+ run: yarn install --frozen-lockfile
33
+
34
+ - name: Create .npmrc
35
+ run: |
36
+ cat << EOF > "$HOME/.npmrc"
37
+ //registry.npmjs.org/:_authToken=$NPM_TOKEN
38
+ EOF
39
+ env:
40
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
41
+
42
+ - name: Publish
43
+ run: |
44
+ TAG_NAME=${GITHUB_REF#refs/tags/}
45
+ TAG_NAME=${TAG_NAME#v}
46
+ echo "TAG_NAME=$TAG_NAME"
47
+ cat <<< "$( jq ".version = \"$TAG_NAME\"" package.json )" > package.json
48
+ cat package.json
49
+ echo -e "---\n'@wishket/design-system': patch\n---\n\nPublish with tag $TAG_NAME" > .changeset/force-publish.md
50
+ yarn changeset publish
51
+ env:
52
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
53
+ GITHUB_TOKEN: ${{ secrets.PJW_GITHUB_TOKEN }}
54
+
55
+ - name: Output version number
56
+ run: |
57
+ name=$(jq -r .name package.json)
58
+ version=$(jq -r .version package.json)
59
+ yarn dlx action-status --context "Published $name" --state success --description $version --url "https://unpkg.com/$name@$version/"
60
+ env:
61
+ GITHUB_TOKEN: ${{ secrets.PJW_GITHUB_TOKEN }}
@@ -0,0 +1,23 @@
1
+ name: Pull Request Checklist
2
+ on: [pull_request]
3
+ jobs:
4
+ run:
5
+ runs-on: ubuntu-latest
6
+ steps:
7
+ - uses: wow-actions/auto-comment@v1
8
+ with:
9
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
10
+ pullRequestOpenedComment: |
11
+ 👋 @{{ author }}
12
+ 아래 체크리스트를 확인하시고 관련된 내용에 대한 리뷰 및 피드백을 부탁드립니다.
13
+
14
+ - [ ] Commit과 PR: Commit과 PR의 내용이 변경사항을 명확하게 잘 설명하고 있는가?
15
+ - [ ] 목적 일치성: PR의 목적에 부합하며, 불필요하거나 관련 없는 코드가 포함되어 있지 않은가?
16
+ - [ ] 기능 구현 적합성: 구현하고자 하는 기능이 목적에 맞게 적절하게 구현되어 있는가?
17
+ - [ ] 코드 가독성: 코드가 복잡하거나 읽기 어려운 부분 없이 명확하고 이해하기 쉬운가?
18
+ - [ ] 의존성 관리: 의존성이 적절하게 관리되고 있으며, 필요한 경우 적절히 독립되어 있는가?
19
+ - [ ] 코드 중복: 코드 중복이 최소화되었는가?
20
+ - [ ] 코드 퍼포먼스: 성능에 부정적인 영향을 미치는 부분이 없는가?
21
+ - [ ] 보안 취약점: 보안상 취약한 부분이 없는가?
22
+ - [ ] 컴포넌트 설계: 컴포넌트가 재사용 가능하고, 적절히 분리되어 있는가?
23
+ - [ ] 브라우저 호환성: 주요 브라우저와 버전에서 문제없이 작동하는가?
@@ -0,0 +1,16 @@
1
+ name: Release Drafter
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+
8
+ jobs:
9
+ update_release_draft:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: release-drafter/release-drafter@v5
13
+ env:
14
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
15
+ with:
16
+ config-name: release-drafter.yml
@@ -0,0 +1,19 @@
1
+ name: Convert TODOs to Issues
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+
8
+ jobs:
9
+ convert_todos:
10
+ runs-on: ubuntu-latest
11
+
12
+ steps:
13
+ - name: Checkout repository
14
+ uses: actions/checkout@v2
15
+
16
+ - name: Convert TODOs to Issues
17
+ uses: alstr/todo-to-issue-action@master
18
+ with:
19
+ github_token: ${{ secrets.GITHUB_TOKEN }}
package/.prettierrc ADDED
@@ -0,0 +1,7 @@
1
+ {
2
+ "trailingComma": "es5",
3
+ "semi": true,
4
+ "singleQuote": true,
5
+ "tabWidth": 2,
6
+ "plugins": ["prettier-plugin-tailwindcss"]
7
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "editor.tabSize": 2,
3
+ "editor.formatOnSave": true,
4
+ "editor.formatOnPaste": true,
5
+ "editor.formatOnType": true,
6
+ "files.autoSave": "onFocusChange",
7
+ "editor.renderWhitespace": "all",
8
+ "editor.codeActionsOnSave": {
9
+ "source.fixAll": "explicit"
10
+ },
11
+ "[typescriptreact]": {
12
+ "editor.defaultFormatter": "rvest.vs-code-prettier-eslint"
13
+ },
14
+ "eslint.lintTask.options": "--ignore-path .eslintignore",
15
+ "cSpell.words": [
16
+ "Menlo",
17
+ "rvest",
18
+ "tailwindcss",
19
+ "dotenv",
20
+ "VERCEL",
21
+ "wishdev",
22
+ "Wishket"
23
+ ]
24
+ }
@@ -0,0 +1,3 @@
1
+ declare module '@wishket/design-system' {
2
+ export const Typography: React.FC;
3
+ }
@@ -0,0 +1,9 @@
1
+ const Typography = () => {
2
+ return (
3
+ <div className="bg-green-300">
4
+ <h1 className="text-red-500">Typography</h1>
5
+ </div>
6
+ );
7
+ };
8
+
9
+ export default Typography;
@@ -0,0 +1,3 @@
1
+ import Typography from './Typography';
2
+
3
+ export default Typography;
@@ -0,0 +1 @@
1
+ export { default as Typography } from './Typography';
@@ -0,0 +1 @@
1
+ export * from './Atoms';
package/README.md CHANGED
@@ -1 +1,36 @@
1
- # design-system
1
+ This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
2
+
3
+ ## Getting Started
4
+
5
+ First, run the development server:
6
+
7
+ ```bash
8
+ npm run dev
9
+ # or
10
+ yarn dev
11
+ # or
12
+ pnpm dev
13
+ # or
14
+ bun dev
15
+ ```
16
+
17
+ Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
18
+
19
+ You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
20
+
21
+ This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
22
+
23
+ ## Learn More
24
+
25
+ To learn more about Next.js, take a look at the following resources:
26
+
27
+ - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
28
+ - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
29
+
30
+ You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
31
+
32
+ ## Deploy on Vercel
33
+
34
+ The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
35
+
36
+ Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
@@ -0,0 +1,3 @@
1
+ import '@testing-library/jest-dom';
2
+ import '@testing-library/jest-dom/jest-globals';
3
+ import '@testing-library/react';
package/jest.config.js ADDED
@@ -0,0 +1,26 @@
1
+ // jest.config.js
2
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
3
+ const nextJest = require('next/jest');
4
+
5
+ const createJestConfig = nextJest({
6
+ // Provide the path to your Next.js app to load next.config.js and .env files in your test environment
7
+ dir: './',
8
+ });
9
+
10
+ // Add any custom config to be passed to Jest
11
+ const customJestConfig = {
12
+ // Add more setup options before each test is run
13
+ setupFiles: ['dotenv/config'],
14
+ setupFilesAfterEnv: ['<rootDir>/__test__/setupTests.ts'],
15
+ testPathIgnorePatterns: ['<rootDir>/.next/', '<rootDir>/node_modules/'],
16
+ // if using TypeScript with a baseUrl set to the root directory then you need the below for alias' to work
17
+ moduleDirectories: ['node_modules', '<rootDir>/'],
18
+ testEnvironment: 'jest-environment-jsdom',
19
+ moduleNameMapper: {
20
+ '\\.(css|less|scss|sss|style)$': '<rootDir>/node_modules/jest-css-modules',
21
+ '^@/(.*)$': '<rootDir>/src/$1',
22
+ },
23
+ };
24
+
25
+ // createJestConfig is exported this way to ensure that next/jest can load the Next.js config which is async
26
+ module.exports = createJestConfig(customJestConfig);
package/next.config.js ADDED
@@ -0,0 +1,4 @@
1
+ /** @type {import('next').NextConfig} */
2
+ const nextConfig = {}
3
+
4
+ module.exports = nextConfig
package/package.json CHANGED
@@ -1,36 +1,46 @@
1
1
  {
2
2
  "name": "@wishket/design-system",
3
- "version": "0.0.1",
4
- "main": "dist/index.js",
5
- "type": "module",
6
- "module": "dist/index.es.js",
7
- "files": [
8
- "dist"
9
- ],
3
+ "version": "0.0.2",
4
+ "description": "Wishket Design System",
5
+ "main": "index.js",
6
+ "types": "index.d.ts",
7
+ "license": "MIT",
10
8
  "scripts": {
11
- "build": "rm -rf dist && rollup -c --bundleConfigAsCjs"
9
+ "dev": "next dev",
10
+ "build": "next build",
11
+ "start": "next start",
12
+ "lint": "eslint \"./**/*.{ts,tsx,js,jsx}\" --ignore-path .eslintignore || true",
13
+ "test:unit": "jest --ci --runInBand --coverage --watchAll=false --passWithNoTests --testMatch=\"**/*.unit.spec.@(ts|tsx)\"",
14
+ "test:e2e": "jest --ci --runInBand --coverage --watchAll=false --passWithNoTests --testMatch=\"**/*.e2e.spec.@(ts|tsx)\""
15
+ },
16
+ "dependencies": {
17
+ "next": "14.0.4",
18
+ "react": "^18",
19
+ "react-dom": "^18"
12
20
  },
13
21
  "devDependencies": {
14
- "@babel/core": "^7.23.7",
15
- "@changesets/changelog-github": "^0.5.0",
16
- "@changesets/cli": "^2.27.1",
17
- "@types/babel__core": "^7",
18
- "@types/node": "^20.10.6",
19
- "@types/react": "^18.2.46",
20
- "@types/react-dom": "^18.2.18",
21
- "autoprefixer": "^10.4.16",
22
+ "@testing-library/dom": "^9.3.3",
23
+ "@testing-library/jest-dom": "^6.2.0",
24
+ "@testing-library/react": "^14.1.2",
25
+ "@testing-library/user-event": "^14.5.2",
26
+ "@types/jest": "^29.5.11",
27
+ "@types/node": "^20.10.7",
28
+ "@types/react": "^18",
29
+ "@types/react-dom": "^18",
30
+ "@wishket/eslint-config-wishket": "^1.0.0",
31
+ "autoprefixer": "^10.0.1",
32
+ "babel-jest": "^29.7.0",
22
33
  "dotenv": "^16.3.1",
23
- "postcss": "^8.4.32",
24
- "react": "^18.2.0",
25
- "react-dom": "^18.2.0",
26
- "react-scripts": "^5.0.1",
27
- "tailwindcss": "^3.4.0",
28
- "tslib": "^2.6.2",
29
- "typescript": "^5.3.3"
30
- },
31
- "peerDependencies": {
32
- "react": "^18.2.0",
33
- "react-dom": "^18.2.0"
34
- },
35
- "packageManager": "yarn@4.0.2"
34
+ "eslint": "^8",
35
+ "eslint-config-next": "14.0.4",
36
+ "jest": "^29.7.0",
37
+ "jest-dom": "^4.0.0",
38
+ "jest-environment-jsdom": "^29.7.0",
39
+ "postcss": "^8",
40
+ "prettier-plugin-tailwindcss": "^0.5.11",
41
+ "tailwindcss": "^3.3.0",
42
+ "ts-jest": "^29.1.1",
43
+ "ts-node": "^10.9.2",
44
+ "typescript": "^5"
45
+ }
36
46
  }
@@ -0,0 +1,6 @@
1
+ module.exports = {
2
+ plugins: {
3
+ tailwindcss: {},
4
+ autoprefixer: {},
5
+ },
6
+ }
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 394 80"><path fill="#000" d="M262 0h68.5v12.7h-27.2v66.6h-13.6V12.7H262V0ZM149 0v12.7H94v20.4h44.3v12.6H94v21h55v12.6H80.5V0h68.7zm34.3 0h-17.8l63.8 79.4h17.9l-32-39.7 32-39.6h-17.9l-23 28.6-23-28.6zm18.3 56.7-9-11-27.1 33.7h17.8l18.3-22.7z"/><path fill="#000" d="M81 79.3 17 0H0v79.3h13.6V17l50.2 62.3H81Zm252.6-.4c-1 0-1.8-.4-2.5-1s-1.1-1.6-1.1-2.6.3-1.8 1-2.5 1.6-1 2.6-1 1.8.3 2.5 1a3.4 3.4 0 0 1 .6 4.3 3.7 3.7 0 0 1-3 1.8zm23.2-33.5h6v23.3c0 2.1-.4 4-1.3 5.5a9.1 9.1 0 0 1-3.8 3.5c-1.6.8-3.5 1.3-5.7 1.3-2 0-3.7-.4-5.3-1s-2.8-1.8-3.7-3.2c-.9-1.3-1.4-3-1.4-5h6c.1.8.3 1.6.7 2.2s1 1.2 1.6 1.5c.7.4 1.5.5 2.4.5 1 0 1.8-.2 2.4-.6a4 4 0 0 0 1.6-1.8c.3-.8.5-1.8.5-3V45.5zm30.9 9.1a4.4 4.4 0 0 0-2-3.3 7.5 7.5 0 0 0-4.3-1.1c-1.3 0-2.4.2-3.3.5-.9.4-1.6 1-2 1.6a3.5 3.5 0 0 0-.3 4c.3.5.7.9 1.3 1.2l1.8 1 2 .5 3.2.8c1.3.3 2.5.7 3.7 1.2a13 13 0 0 1 3.2 1.8 8.1 8.1 0 0 1 3 6.5c0 2-.5 3.7-1.5 5.1a10 10 0 0 1-4.4 3.5c-1.8.8-4.1 1.2-6.8 1.2-2.6 0-4.9-.4-6.8-1.2-2-.8-3.4-2-4.5-3.5a10 10 0 0 1-1.7-5.6h6a5 5 0 0 0 3.5 4.6c1 .4 2.2.6 3.4.6 1.3 0 2.5-.2 3.5-.6 1-.4 1.8-1 2.4-1.7a4 4 0 0 0 .8-2.4c0-.9-.2-1.6-.7-2.2a11 11 0 0 0-2.1-1.4l-3.2-1-3.8-1c-2.8-.7-5-1.7-6.6-3.2a7.2 7.2 0 0 1-2.4-5.7 8 8 0 0 1 1.7-5 10 10 0 0 1 4.3-3.5c2-.8 4-1.2 6.4-1.2 2.3 0 4.4.4 6.2 1.2 1.8.8 3.2 2 4.3 3.4 1 1.4 1.5 3 1.5 5h-5.8z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 283 64"><path fill="black" d="M141 16c-11 0-19 7-19 18s9 18 20 18c7 0 13-3 16-7l-7-5c-2 3-6 4-9 4-5 0-9-3-10-7h28v-3c0-11-8-18-19-18zm-9 15c1-4 4-7 9-7s8 3 9 7h-18zm117-15c-11 0-19 7-19 18s9 18 20 18c6 0 12-3 16-7l-8-5c-2 3-5 4-8 4-5 0-9-3-11-7h28l1-3c0-11-8-18-19-18zm-10 15c2-4 5-7 10-7s8 3 9 7h-19zm-39 3c0 6 4 10 10 10 4 0 7-2 9-5l8 5c-3 5-9 8-17 8-11 0-19-7-19-18s8-18 19-18c8 0 14 3 17 8l-8 5c-2-3-5-5-9-5-6 0-10 4-10 10zm83-29v46h-9V5h9zM37 0l37 64H0L37 0zm92 5-27 48L74 5h10l18 30 17-30h10zm59 12v10l-3-1c-6 0-10 4-10 10v15h-9V17h9v9c0-5 6-9 13-9z"/></svg>
Binary file
@@ -0,0 +1,3 @@
1
+ @tailwind base;
2
+ @tailwind components;
3
+ @tailwind utilities;
@@ -0,0 +1,19 @@
1
+ import type { Metadata } from 'next';
2
+ import { Inter } from 'next/font/google';
3
+ import './globals.css';
4
+ import { PropsWithChildren } from 'react';
5
+
6
+ const inter = Inter({ subsets: ['latin'] });
7
+
8
+ export const metadata: Metadata = {
9
+ title: 'Create Next App',
10
+ description: 'Generated by create next app',
11
+ };
12
+
13
+ export default function RootLayout({ children }: PropsWithChildren) {
14
+ return (
15
+ <html lang="en">
16
+ <body className={inter.className}>{children}</body>
17
+ </html>
18
+ );
19
+ }
@@ -0,0 +1,9 @@
1
+ import { Typography } from '../../Components';
2
+
3
+ export default function Home() {
4
+ return (
5
+ <div>
6
+ <Typography />
7
+ </div>
8
+ );
9
+ }
@@ -0,0 +1,19 @@
1
+ import type { Config } from 'tailwindcss';
2
+
3
+ const config: Config = {
4
+ content: [
5
+ './Components/**/*.{js,ts,jsx,tsx,mdx}',
6
+ './src/app/**/*.{js,ts,jsx,tsx,mdx}',
7
+ ],
8
+ theme: {
9
+ extend: {
10
+ backgroundImage: {
11
+ 'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
12
+ 'gradient-conic':
13
+ 'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))',
14
+ },
15
+ },
16
+ },
17
+ plugins: [],
18
+ };
19
+ export default config;
package/tsconfig.json ADDED
@@ -0,0 +1,27 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es5",
4
+ "lib": ["dom", "dom.iterable", "esnext"],
5
+ "allowJs": true,
6
+ "skipLibCheck": true,
7
+ "strict": true,
8
+ "noEmit": true,
9
+ "esModuleInterop": true,
10
+ "module": "esnext",
11
+ "moduleResolution": "bundler",
12
+ "resolveJsonModule": true,
13
+ "isolatedModules": true,
14
+ "jsx": "preserve",
15
+ "incremental": true,
16
+ "plugins": [
17
+ {
18
+ "name": "next"
19
+ }
20
+ ],
21
+ "paths": {
22
+ "@/*": ["./src/*"]
23
+ }
24
+ },
25
+ "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
26
+ "exclude": ["node_modules"]
27
+ }