Skip to content

Commit 447e64b

Browse files
feat: initial commit
0 parents  commit 447e64b

16 files changed

+10770
-0
lines changed

.editorconfig

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# http://editorconfig.org
2+
3+
root = true
4+
5+
[*]
6+
charset = utf-8
7+
indent_style = space
8+
indent_size = 2
9+
end_of_line = lf
10+
insert_final_newline = true
11+
trim_trailing_whitespace = true
12+
13+
[*.md]
14+
insert_final_newline = false
15+
trim_trailing_whitespace = false

.gitignore

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
# Logs
2+
logs
3+
*.log
4+
npm-debug.log*
5+
yarn-debug.log*
6+
yarn-error.log*
7+
.DS_Store
8+
.dist
9+
.env
10+
.idea
11+
documentation
12+
junit.xml
13+
14+
# Runtime data
15+
pids
16+
*.pid
17+
*.seed
18+
*.pid.lock
19+
20+
# Directory for instrumented libs generated by jscoverage/JSCover
21+
lib-cov
22+
23+
# Coverage directory used by tools like istanbul
24+
coverage
25+
26+
# nyc test coverage
27+
.nyc_output
28+
29+
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
30+
.grunt
31+
32+
# Bower dependency directory (https://bower.io/)
33+
bower_components
34+
35+
# node-waf configuration
36+
.lock-wscript
37+
38+
# Compiled binary addons (http://nodejs.org/api/addons.html)
39+
build/Release
40+
41+
# Dependency directories
42+
node_modules/
43+
jspm_packages/
44+
45+
# Typescript v1 declaration files
46+
typings/
47+
48+
# Optional npm cache directory
49+
.npm
50+
51+
# Optional eslint cache
52+
.eslintcache
53+
54+
# Optional REPL history
55+
.node_repl_history
56+
57+
# Output of 'npm pack'
58+
*.tgz
59+
60+
# Yarn Integrity file
61+
.yarn-integrity
62+
63+
# dotenv environment variables file
64+
.env
65+
66+
dist/
67+
68+
.DS_Store
69+
70+
test-report.xml
71+
test-results.xml
72+
73+
ngc
74+
.ngc
75+
.aot
76+
aot
77+
.e2e
78+
79+
# Created by https://www.gitignore.io/api/webstorm
80+
81+
### WebStorm ###
82+
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
83+
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
84+
85+
# User-specific stuff:
86+
.idea/codeStyleSettings.xml
87+
.idea/**/workspace.xml
88+
.idea/**/tasks.xml
89+
.idea/dictionaries
90+
91+
# Sensitive or high-churn files:
92+
.idea/**/dataSources/
93+
.idea/**/dataSources.ids
94+
.idea/**/dataSources.xml
95+
.idea/**/dataSources.local.xml
96+
.idea/**/sqlDataSources.xml
97+
.idea/**/dynamic.xml
98+
.idea/**/uiDesigner.xml
99+
100+
# Gradle:
101+
.idea/**/gradle.xml
102+
.idea/**/libraries
103+
104+
# CMake
105+
cmake-build-debug/
106+
107+
# Mongo Explorer plugin:
108+
.idea/**/mongoSettings.xml
109+
110+
## File-based project format:
111+
*.iws
112+
113+
## Plugin-specific files:
114+
115+
# IntelliJ
116+
/out/
117+
118+
# mpeltonen/sbt-idea plugin
119+
.idea_modules/
120+
121+
# JIRA plugin
122+
atlassian-ide-plugin.xml
123+
124+
# Cursive Clojure plugin
125+
.idea/replstate.xml
126+
127+
# Crashlytics plugin (for Android Studio and IntelliJ)
128+
com_crashlytics_export_strings.xml
129+
crashlytics.properties
130+
crashlytics-build.properties
131+
fabric.properties
132+
133+
### WebStorm Patch ###
134+
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
135+
136+
# *.iml
137+
# modules.xml
138+
# .idea/misc.xml
139+
# *.ipr
140+
141+
# Sonarlint plugin
142+
.idea/sonarlint

.node-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
10.8.0

.nvmrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
10.8.0

.vscode/settings.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"editor.tabSize": 2,
3+
"tslint.autoFixOnSave": true,
4+
"jest.showCoverageOnLoad": true,
5+
"typescript.tsdk": "node_modules/typescript/lib"
6+
}

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
The MIT License
2+
3+
Copyright (c) Patrick Michalina
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in
13+
all copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21+
THE SOFTWARE.

README.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<h1 align="center" style="border-bottom: none;">📚 typescript-monads</h1>
2+
<h3 align="center">Better TypeScript Control Flow</h3>
3+
<p align="center">
4+
<a href="https://circleci.com/gh/patrickmichalina/typescript-monads">
5+
<img alt="codecov" src="https://circleci.com/gh/patrickmichalina/typescript-monads.svg?style=shield">
6+
</a>
7+
<a href="https://codecov.io/gh/patrickmichalina/typescript-monads">
8+
<img alt="codecov" src="https://codecov.io/gh/patrickmichalina/typescript-monads/branch/master/graph/badge.svg">
9+
</a>
10+
<a href="https://greenkeeper.io">
11+
<img alt="greenkeeper" src="https://badges.greenkeeper.io/semantic-release/semantic-release.svg">
12+
</a>
13+
<a href="https://github.com/semantic-release/semantic-release">
14+
<img alt="semantic-release" src="https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg">
15+
</a>
16+
</p>
17+
18+
**typescript-monads** helps you write safer code by using abstractions over dubious program state and control flow.

circle.yml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
defaults: &defaults
2+
docker:
3+
- image: circleci/node:10.8.0
4+
5+
version: 2
6+
jobs:
7+
build:
8+
<<: *defaults
9+
steps:
10+
- checkout
11+
- restore_cache:
12+
key: dependency-cache-{{ checksum "package.json" }}
13+
- run:
14+
name: Install npm
15+
command: npm install
16+
- run:
17+
name: Check code quality
18+
command: npm run lint
19+
- run:
20+
name: Run tests
21+
command: node_modules/.bin/jest --runInBand --ci --reporters=jest-junit
22+
environment:
23+
JEST_JUNIT_OUTPUT: "test-results/jest/results.xml"
24+
- store_artifacts:
25+
path: test-results
26+
- store_test_results:
27+
path: test-results
28+
- run:
29+
name: Post coverage results
30+
command: node_modules/.bin/codecov --token=21b041e2-a6d4-4eaa-ac72-d3264fe9adbf
31+
- save_cache:
32+
key: dependency-cache-{{ checksum "package.json" }}
33+
paths:
34+
- node_modules
35+
semver:
36+
<<: *defaults
37+
steps:
38+
- checkout
39+
- restore_cache:
40+
key: dependency-cache-{{ checksum "package.json" }}
41+
- run:
42+
name: Install npm
43+
command: npm install
44+
- run:
45+
name: Semantic Release
46+
command: node_modules/.bin/semantic-release
47+
48+
workflows:
49+
version: 2
50+
build_test_release:
51+
jobs:
52+
- build
53+
- semver:
54+
requires:
55+
- build
56+
filters:
57+
branches:
58+
only: master

codecov.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
codecov:
2+
allow_coverage_offsets: true
3+
notify:
4+
require_ci_to_pass: true
5+
6+
coverage:
7+
precision: 2
8+
round: down
9+
range: "100"
10+
11+
status:
12+
project:
13+
default:
14+
enabled: yes
15+
threshold: 0.25%
16+
patch:
17+
default:
18+
enabled: yes
19+
target: 0%
20+
changes: false

0 commit comments

Comments
 (0)