Skip to content

Commit 2673fbf

Browse files
committed
implement ExpressMappingStrategy and middleware
1 parent 2018b5b commit 2673fbf

15 files changed

+2610
-1
lines changed

.circleci/config.yml

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Javascript Node CircleCI 2.0 configuration file
2+
#
3+
# Check https://circleci.com/docs/2.0/language-javascript/ for more details
4+
#
5+
version: 2
6+
jobs:
7+
build:
8+
docker:
9+
# specify the version you desire here
10+
- image: circleci/node:8
11+
12+
# Specify service dependencies here if necessary
13+
# CircleCI maintains a library of pre-built images
14+
# documented at https://circleci.com/docs/2.0/circleci-images/
15+
# - image: circleci/mongo:3.4.4
16+
17+
working_directory: ~/repo
18+
19+
steps:
20+
- setup_remote_docker
21+
- checkout
22+
23+
# Download and cache dependencies
24+
- restore_cache:
25+
keys:
26+
- v1-dependencies-{{ checksum "yarn.lock" }}
27+
# fallback to using the latest cache if no exact match is found
28+
- v1-dependencies-
29+
30+
- run: yarn
31+
32+
- save_cache:
33+
paths:
34+
- node_modules
35+
key: v1-dependencies-{{ checksum "yarn.lock" }}
36+
37+
# run tests!
38+
- run: yarn test
39+

.editorconfig

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
root = true
2+
3+
[**/**.yml]
4+
indent_style = space
5+
indent_size = 2
6+
7+
[**/**.js]
8+
indent_style = space
9+
indent_size = 2
10+
11+
[**/**.ts]
12+
indent_style = space
13+
indent_size = 2
14+
15+
[**/**.html]
16+
indent_style = space
17+
indent_size = 2
18+
19+
[**/**.json]
20+
indent_style = space
21+
indent_size = 2

.eslintignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
dist

.eslintrc

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"extends": "standard-with-typescript",
3+
"parser": "@typescript-eslint/parser",
4+
"parserOptions": {
5+
"project": "./tsconfig.json"
6+
},
7+
"env": {
8+
"es6": true,
9+
"commonjs": true,
10+
"node": true,
11+
"mocha": true
12+
},
13+
"rules": {
14+
"max-len": ["error", 120]
15+
}
16+
}

.gitignore

+218
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,218 @@
1+
2+
# Created by https://www.gitignore.io/api/node,jetbrains+all,visualstudiocode,macos,typescript
3+
# Edit at https://www.gitignore.io/?templates=node,jetbrains+all,visualstudiocode,macos,typescript
4+
5+
### JetBrains+all ###
6+
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
7+
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
8+
9+
# User-specific stuff
10+
.idea/**/workspace.xml
11+
.idea/**/tasks.xml
12+
.idea/**/usage.statistics.xml
13+
.idea/**/dictionaries
14+
.idea/**/shelf
15+
16+
# Generated files
17+
.idea/**/contentModel.xml
18+
19+
# Sensitive or high-churn files
20+
.idea/**/dataSources/
21+
.idea/**/dataSources.ids
22+
.idea/**/dataSources.local.xml
23+
.idea/**/sqlDataSources.xml
24+
.idea/**/dynamic.xml
25+
.idea/**/uiDesigner.xml
26+
.idea/**/dbnavigator.xml
27+
28+
# Gradle
29+
.idea/**/gradle.xml
30+
.idea/**/libraries
31+
32+
# Gradle and Maven with auto-import
33+
# When using Gradle or Maven with auto-import, you should exclude module files,
34+
# since they will be recreated, and may cause churn. Uncomment if using
35+
# auto-import.
36+
# .idea/modules.xml
37+
# .idea/*.iml
38+
# .idea/modules
39+
40+
# CMake
41+
cmake-build-*/
42+
43+
# Mongo Explorer plugin
44+
.idea/**/mongoSettings.xml
45+
46+
# File-based project format
47+
*.iws
48+
49+
# IntelliJ
50+
out/
51+
52+
# mpeltonen/sbt-idea plugin
53+
.idea_modules/
54+
55+
# JIRA plugin
56+
atlassian-ide-plugin.xml
57+
58+
# Cursive Clojure plugin
59+
.idea/replstate.xml
60+
61+
# Crashlytics plugin (for Android Studio and IntelliJ)
62+
com_crashlytics_export_strings.xml
63+
crashlytics.properties
64+
crashlytics-build.properties
65+
fabric.properties
66+
67+
# Editor-based Rest Client
68+
.idea/httpRequests
69+
70+
# Android studio 3.1+ serialized cache file
71+
.idea/caches/build_file_checksums.ser
72+
73+
### JetBrains+all Patch ###
74+
# Ignores the whole .idea folder and all .iml files
75+
# See https://github.com/joeblau/gitignore.io/issues/186 and https://github.com/joeblau/gitignore.io/issues/360
76+
77+
.idea/
78+
79+
# Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-249601023
80+
81+
*.iml
82+
modules.xml
83+
.idea/misc.xml
84+
*.ipr
85+
86+
# Sonarlint plugin
87+
.idea/sonarlint
88+
89+
### macOS ###
90+
# General
91+
.DS_Store
92+
.AppleDouble
93+
.LSOverride
94+
95+
# Icon must end with two \r
96+
Icon
97+
98+
# Thumbnails
99+
._*
100+
101+
# Files that might appear in the root of a volume
102+
.DocumentRevisions-V100
103+
.fseventsd
104+
.Spotlight-V100
105+
.TemporaryItems
106+
.Trashes
107+
.VolumeIcon.icns
108+
.com.apple.timemachine.donotpresent
109+
110+
# Directories potentially created on remote AFP share
111+
.AppleDB
112+
.AppleDesktop
113+
Network Trash Folder
114+
Temporary Items
115+
.apdisk
116+
117+
### Node ###
118+
# Logs
119+
logs
120+
*.log
121+
npm-debug.log*
122+
yarn-debug.log*
123+
yarn-error.log*
124+
125+
# Runtime data
126+
pids
127+
*.pid
128+
*.seed
129+
*.pid.lock
130+
131+
# Directory for instrumented libs generated by jscoverage/JSCover
132+
lib-cov
133+
134+
# Coverage directory used by tools like istanbul
135+
coverage
136+
137+
# nyc test coverage
138+
.nyc_output
139+
140+
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
141+
.grunt
142+
143+
# Bower dependency directory (https://bower.io/)
144+
bower_components
145+
146+
# node-waf configuration
147+
.lock-wscript
148+
149+
# Compiled binary addons (https://nodejs.org/api/addons.html)
150+
build/Release
151+
152+
# Dependency directories
153+
node_modules/
154+
jspm_packages/
155+
156+
# TypeScript v1 declaration files
157+
typings/
158+
159+
# Optional npm cache directory
160+
.npm
161+
162+
# Optional eslint cache
163+
.eslintcache
164+
165+
# Optional REPL history
166+
.node_repl_history
167+
168+
# Output of 'npm pack'
169+
*.tgz
170+
171+
# Yarn Integrity file
172+
.yarn-integrity
173+
174+
# dotenv environment variables file
175+
.env
176+
.env.test
177+
178+
# parcel-bundler cache (https://parceljs.org/)
179+
.cache
180+
181+
# next.js build output
182+
.next
183+
184+
# nuxt.js build output
185+
.nuxt
186+
187+
# vuepress build output
188+
.vuepress/dist
189+
190+
# Serverless directories
191+
.serverless/
192+
193+
# FuseBox cache
194+
.fusebox/
195+
196+
# DynamoDB Local files
197+
.dynamodb/
198+
199+
#!! ERROR: typescript is undefined. Use list command to see defined gitignore types !!#
200+
201+
### VisualStudioCode ###
202+
.vscode/*
203+
!.vscode/settings.json
204+
!.vscode/tasks.json
205+
!.vscode/launch.json
206+
!.vscode/extensions.json
207+
208+
### VisualStudioCode Patch ###
209+
# Ignore all local history of files
210+
.history
211+
212+
# End of https://www.gitignore.io/api/node,jetbrains+all,visualstudiocode,macos,typescript
213+
214+
### Tests
215+
test-results*.xml
216+
217+
### Application
218+
dist

.npmignore

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
.editorconfig
2+
.eslintignore
3+
.eslintrc
4+
test

0 commit comments

Comments
 (0)