Skip to content

Commit c2cadbb

Browse files
committed
Initial Commit
0 parents  commit c2cadbb

File tree

17 files changed

+4951
-0
lines changed

17 files changed

+4951
-0
lines changed

.eslintrc.json

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
{
2+
"env": {
3+
"es2021": true,
4+
"node": true,
5+
"jest": true
6+
},
7+
"extends": ["standard", "plugin:prettier/recommended"],
8+
"parser": "@typescript-eslint/parser",
9+
"parserOptions": {
10+
"ecmaVersion": 12,
11+
"sourceType": "module"
12+
},
13+
"plugins": ["@typescript-eslint", "prettier"],
14+
"rules": {
15+
"prettier/prettier": ["error"],
16+
"no-useless-constructor": "off",
17+
"no-redeclare": "off",
18+
"no-dupe-class-members": "off",
19+
"@typescript-eslint/no-useless-constructor": ["error"],
20+
"no-use-before-define": "off",
21+
"@typescript-eslint/no-use-before-define": [
22+
"error",
23+
{ "typedefs": false, "functions": false }
24+
]
25+
},
26+
"ignorePatterns": ["dist/**"]
27+
}

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
## Types of changes
2+
3+
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
4+
5+
- [ ] Bug fix (non-breaking change which fixes an issue)
6+
- [ ] New feature (non-breaking change which adds functionality)
7+
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
8+
- [ ] My change requires a change to the documentation.
9+
- [ ] I have updated the documentation accordingly.
10+
- [ ] I have added tests to cover my changes.
11+
- [ ] I need help writing tests.
12+
- [ ] All new and existing tests passed.

.github/workflows/ci.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
8+
jobs:
9+
build_test:
10+
runs-on: ${{ matrix.os }}
11+
strategy:
12+
matrix:
13+
os: [ubuntu-latest, windows-latest, macos-latest]
14+
node-version: [14, 12]
15+
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v2
19+
20+
- name: Use Node.js ${{ matrix.node-version }}
21+
uses: actions/setup-node@v2
22+
with:
23+
node-version: ${{ matrix.node-version }}
24+
25+
- name: Get yarn cache directory
26+
id: yarn-cache
27+
run: echo "::set-output name=dir::$(yarn cache dir)"
28+
29+
- name: Set dependencies cache
30+
uses: actions/cache@v2
31+
with:
32+
path: ${{ steps.yarn-cache.outputs.dir }}
33+
key: ${{ runner.os }}-${{ matrix.node_version }}-${{ hashFiles('yarn.lock') }}
34+
restore-keys: |
35+
${{ runner.os }}-${{ matrix.node_version }}-${{ hashFiles('yarn.lock') }}
36+
${{ runner.os }}-${{ matrix.node_version }}-
37+
- name: Versions
38+
run: yarn versions
39+
40+
- name: Install dependencies
41+
run: yarn install --frozen-lockfile
42+
43+
- name: Build
44+
run: yarn build
45+
46+
- name: Test
47+
run: yarn test
48+
49+
lint:
50+
runs-on: ubuntu-latest
51+
name: 'Lint: node@14, ubuntu-latest'
52+
steps:
53+
- uses: actions/checkout@v2
54+
with:
55+
fetch-depth: 0
56+
57+
- name: Set node version to 14
58+
uses: actions/setup-node@v2
59+
with:
60+
node-version: 14
61+
62+
- name: Set dependencies cache
63+
uses: actions/cache@v2
64+
with:
65+
path: ~/.cache/yarn
66+
key: lint-dependencies-${{ hashFiles('yarn.lock') }}
67+
restore-keys: |
68+
lint-dependencies-${{ hashFiles('yarn.lock') }}
69+
lint-dependencies-
70+
- name: Prepare
71+
run: |
72+
yarn install --frozen-lockfile
73+
yarn build
74+
- name: Lint
75+
run: yarn lint

.gitignore

Lines changed: 215 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,215 @@
1+
# File created using '.gitignore Generator' for Visual Studio Code: https://bit.ly/vscode-gig
2+
3+
# Created by https://www.toptal.com/developers/gitignore/api/visualstudiocode,linux,macos,node,windows
4+
# Edit at https://www.toptal.com/developers/gitignore?templates=visualstudiocode,linux,macos,node,windows
5+
6+
### Linux ###
7+
*~
8+
9+
# temporary files which can be created if a process still has a handle open of a deleted file
10+
.fuse_hidden*
11+
12+
# KDE directory preferences
13+
.directory
14+
15+
# Linux trash folder which might appear on any partition or disk
16+
.Trash-*
17+
18+
# .nfs files are created when an open file is removed but is still being accessed
19+
.nfs*
20+
21+
### macOS ###
22+
# General
23+
.DS_Store
24+
.AppleDouble
25+
.LSOverride
26+
27+
# Icon must end with two \r
28+
Icon
29+
30+
31+
# Thumbnails
32+
._*
33+
34+
# Files that might appear in the root of a volume
35+
.DocumentRevisions-V100
36+
.fseventsd
37+
.Spotlight-V100
38+
.TemporaryItems
39+
.Trashes
40+
.VolumeIcon.icns
41+
.com.apple.timemachine.donotpresent
42+
43+
# Directories potentially created on remote AFP share
44+
.AppleDB
45+
.AppleDesktop
46+
Network Trash Folder
47+
Temporary Items
48+
.apdisk
49+
50+
### Node ###
51+
# Logs
52+
logs
53+
*.log
54+
npm-debug.log*
55+
yarn-debug.log*
56+
yarn-error.log*
57+
lerna-debug.log*
58+
.pnpm-debug.log*
59+
60+
# Diagnostic reports (https://nodejs.org/api/report.html)
61+
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
62+
63+
# Runtime data
64+
pids
65+
*.pid
66+
*.seed
67+
*.pid.lock
68+
69+
# Directory for instrumented libs generated by jscoverage/JSCover
70+
lib-cov
71+
72+
# Coverage directory used by tools like istanbul
73+
coverage
74+
*.lcov
75+
76+
# nyc test coverage
77+
.nyc_output
78+
79+
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
80+
.grunt
81+
82+
# Bower dependency directory (https://bower.io/)
83+
bower_components
84+
85+
# node-waf configuration
86+
.lock-wscript
87+
88+
# Compiled binary addons (https://nodejs.org/api/addons.html)
89+
build/Release
90+
91+
# Dependency directories
92+
node_modules/
93+
jspm_packages/
94+
95+
# Snowpack dependency directory (https://snowpack.dev/)
96+
web_modules/
97+
98+
# TypeScript cache
99+
*.tsbuildinfo
100+
101+
# Optional npm cache directory
102+
.npm
103+
104+
# Optional eslint cache
105+
.eslintcache
106+
107+
# Microbundle cache
108+
.rpt2_cache/
109+
.rts2_cache_cjs/
110+
.rts2_cache_es/
111+
.rts2_cache_umd/
112+
113+
# Optional REPL history
114+
.node_repl_history
115+
116+
# Output of 'npm pack'
117+
*.tgz
118+
119+
# Yarn Integrity file
120+
.yarn-integrity
121+
122+
# dotenv environment variables file
123+
.env
124+
.env.test
125+
.env.production
126+
127+
# parcel-bundler cache (https://parceljs.org/)
128+
.cache
129+
.parcel-cache
130+
131+
# Next.js build output
132+
.next
133+
out
134+
135+
# Nuxt.js build / generate output
136+
.nuxt
137+
dist
138+
139+
# Gatsby files
140+
.cache/
141+
# Comment in the public line in if your project uses Gatsby and not Next.js
142+
# https://nextjs.org/blog/next-9-1#public-directory-support
143+
# public
144+
145+
# vuepress build output
146+
.vuepress/dist
147+
148+
# Serverless directories
149+
.serverless/
150+
151+
# FuseBox cache
152+
.fusebox/
153+
154+
# DynamoDB Local files
155+
.dynamodb/
156+
157+
# TernJS port file
158+
.tern-port
159+
160+
# Stores VSCode versions used for testing VSCode extensions
161+
.vscode-test
162+
163+
# yarn v2
164+
.yarn/cache
165+
.yarn/unplugged
166+
.yarn/build-state.yml
167+
.yarn/install-state.gz
168+
.pnp.*
169+
170+
### VisualStudioCode ###
171+
.vscode/*
172+
!.vscode/settings.json
173+
!.vscode/tasks.json
174+
!.vscode/launch.json
175+
!.vscode/extensions.json
176+
*.code-workspace
177+
178+
# Local History for Visual Studio Code
179+
.history/
180+
181+
### VisualStudioCode Patch ###
182+
# Ignore all local history of files
183+
.history
184+
.ionide
185+
186+
### Windows ###
187+
# Windows thumbnail cache files
188+
Thumbs.db
189+
Thumbs.db:encryptable
190+
ehthumbs.db
191+
ehthumbs_vista.db
192+
193+
# Dump file
194+
*.stackdump
195+
196+
# Folder config file
197+
[Dd]esktop.ini
198+
199+
# Recycle Bin used on file shares
200+
$RECYCLE.BIN/
201+
202+
# Windows Installer files
203+
*.cab
204+
*.msi
205+
*.msix
206+
*.msm
207+
*.msp
208+
209+
# Windows shortcuts
210+
*.lnk
211+
212+
# End of https://www.toptal.com/developers/gitignore/api/visualstudiocode,linux,macos,node,windows
213+
214+
# Custom rules (everything added below won't be overriden by 'Generate .gitignore File' if you use 'Update' option)
215+

.prettierrc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"tabWidth": 2,
3+
"semi": false,
4+
"singleQuote": true,
5+
"endOfLine": "auto"
6+
}

0 commit comments

Comments
 (0)