Merge pull request 'Alpha Release 0.3.2' (#31) from dev into main
Reviewed-on: #31 Reviewed-by: Philipp Dormann <philipp@philippdormann.de>
This commit was merged in pull request #31.
	This commit is contained in:
		
							
								
								
									
										17
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -2,14 +2,25 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
 | 
					All notable changes to this project will be documented in this file. Dates are displayed in UTC.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#### [v0.3.1](https://git.odit.services/lfk/document-server/compare/v0.3.0...v0.3.1)
 | 
					#### [v0.3.2](https://git.odit.services/lfk/document-server/compare/v0.3.0...v0.3.2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- 🧾New changelog file version [CI SKIP] [skip ci] [`cc6a53b`](https://git.odit.services/lfk/document-server/commit/cc6a53b25895594874acca370a1439d37bb280de)
 | 
				
			||||||
 | 
					- 🚀Bumped version to v0.3.2 [`a9019e4`](https://git.odit.services/lfk/document-server/commit/a9019e4c67e7620b65650d60b0ebd57bc11a854e)
 | 
				
			||||||
 | 
					- Merge pull request 'Now using full group names feature/18-group_names' (#30) from feature/18-group_names into dev [`e0db6f6`](https://git.odit.services/lfk/document-server/commit/e0db6f6a78d0026a8485a57c88af1e9407bd68a4)
 | 
				
			||||||
- 🚀Bumped version to v0.3.1 [`dcde424`](https://git.odit.services/lfk/document-server/commit/dcde424b77dcc9753859f94f7bcbe24fe3523c27)
 | 
					- 🚀Bumped version to v0.3.1 [`dcde424`](https://git.odit.services/lfk/document-server/commit/dcde424b77dcc9753859f94f7bcbe24fe3523c27)
 | 
				
			||||||
 | 
					- 📖New license file version [CI SKIP] [skip ci] [`92c5240`](https://git.odit.services/lfk/document-server/commit/92c52401b398f6a2f247c10879e17f6dc105aa8e)
 | 
				
			||||||
 | 
					- Now manually parsing runnergroup full names [`c290908`](https://git.odit.services/lfk/document-server/commit/c2909082a2dbb38041ae0fc695bd0fa1451b39ff)
 | 
				
			||||||
- Implemented basic auth [`bdeadd2`](https://git.odit.services/lfk/document-server/commit/bdeadd274bc0f9c8cbab35a8a5605bef4c22ba6c)
 | 
					- Implemented basic auth [`bdeadd2`](https://git.odit.services/lfk/document-server/commit/bdeadd274bc0f9c8cbab35a8a5605bef4c22ba6c)
 | 
				
			||||||
- 🧾New changelog file version [CI SKIP] [skip ci] [`b7c6c6e`](https://git.odit.services/lfk/document-server/commit/b7c6c6e15708e471f5c3d0ca4cf11b1c08c88c9c)
 | 
					- 📖New license file version [CI SKIP] [skip ci] [`9d7d044`](https://git.odit.services/lfk/document-server/commit/9d7d0443848522e5bdfdb6a80c836bea4bc200a1)
 | 
				
			||||||
- Merge pull request 'API Key based auth feature/26-api_auth' (#27) from feature/26-api_auth into dev [`2d031da`](https://git.odit.services/lfk/document-server/commit/2d031dae035866a4aa247398ea68ff338ab58cbd)
 | 
					 | 
				
			||||||
- 🧾New changelog file version [CI SKIP] [skip ci] [`e306cdb`](https://git.odit.services/lfk/document-server/commit/e306cdb2c8e58fc1aef79b95cba5d4cc96ac7658)
 | 
					- 🧾New changelog file version [CI SKIP] [skip ci] [`e306cdb`](https://git.odit.services/lfk/document-server/commit/e306cdb2c8e58fc1aef79b95cba5d4cc96ac7658)
 | 
				
			||||||
- Added auth to openapi spec [`729f2d7`](https://git.odit.services/lfk/document-server/commit/729f2d7240b54ffe2d4db36cce29de0afdfc9417)
 | 
					- Added auth to openapi spec [`729f2d7`](https://git.odit.services/lfk/document-server/commit/729f2d7240b54ffe2d4db36cce29de0afdfc9417)
 | 
				
			||||||
 | 
					- Pinned routing controllers version as temp workaround for routing controllers openapi being broken again [`7ca7266`](https://git.odit.services/lfk/document-server/commit/7ca7266ea46965251c9df637a2556f2a1706e7e6)
 | 
				
			||||||
 | 
					- 🧾New changelog file version [CI SKIP] [skip ci] [`adf11ab`](https://git.odit.services/lfk/document-server/commit/adf11ab1c356b6964230541331836abd363170b0)
 | 
				
			||||||
 | 
					- 🧾New changelog file version [CI SKIP] [skip ci] [`b7c6c6e`](https://git.odit.services/lfk/document-server/commit/b7c6c6e15708e471f5c3d0ca4cf11b1c08c88c9c)
 | 
				
			||||||
 | 
					- 🧾New changelog file version [CI SKIP] [skip ci] [`95099c5`](https://git.odit.services/lfk/document-server/commit/95099c5fbd7e6cb07c68151a998eebb0f00556f3)
 | 
				
			||||||
 | 
					- Updated templates with full group name [`0fcfb30`](https://git.odit.services/lfk/document-server/commit/0fcfb30d5c13266ca4faf7697308dfb7a0f91b4f)
 | 
				
			||||||
 | 
					- Merge pull request 'Alpha Release 0.3.1 - API Keys' (#29) from dev into main [`db91661`](https://git.odit.services/lfk/document-server/commit/db916615564813e8d21e3672581e4f3a4d748b89)
 | 
				
			||||||
 | 
					- Merge pull request 'API Key based auth feature/26-api_auth' (#27) from feature/26-api_auth into dev [`2d031da`](https://git.odit.services/lfk/document-server/commit/2d031dae035866a4aa247398ea68ff338ab58cbd)
 | 
				
			||||||
- Added api key to env doc [`4543092`](https://git.odit.services/lfk/document-server/commit/454309278ef20a2b97248277b07a7b58a063618d)
 | 
					- Added api key to env doc [`4543092`](https://git.odit.services/lfk/document-server/commit/454309278ef20a2b97248277b07a7b58a063618d)
 | 
				
			||||||
- Fixed bug [`7be211f`](https://git.odit.services/lfk/document-server/commit/7be211f8b7b26f7f620df81af4ebde5eec2feec2)
 | 
					- Fixed bug [`7be211f`](https://git.odit.services/lfk/document-server/commit/7be211f8b7b26f7f620df81af4ebde5eec2feec2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										66
									
								
								licenses.md
									
									
									
									
									
								
							
							
						
						
									
										66
									
								
								licenses.md
									
									
									
									
									
								
							@@ -58,7 +58,7 @@ THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# axios
 | 
					# axios
 | 
				
			||||||
**Author**: Matt Zabriskie
 | 
					**Author**: Matt Zabriskie
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/axios/axios.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Promise based HTTP client for the browser and node.js
 | 
					**Description**: Promise based HTTP client for the browser and node.js
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -85,7 +85,7 @@ THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# bwip-js
 | 
					# bwip-js
 | 
				
			||||||
**Author**: Mark Warren <mwarren@metafloor.com>
 | 
					**Author**: Mark Warren <mwarren@metafloor.com>
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/metafloor/bwip-js.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: JavaScript barcode generator supporting over 100 types and standards.
 | 
					**Description**: JavaScript barcode generator supporting over 100 types and standards.
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -117,7 +117,7 @@ THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# cheerio
 | 
					# cheerio
 | 
				
			||||||
**Author**: Matt Mueller <mattmuelle@gmail.com> (mat.io)
 | 
					**Author**: Matt Mueller <mattmuelle@gmail.com> (mat.io)
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: git://github.com/cheeriojs/cheerio.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Tiny, fast, and elegant implementation of core jQuery designed specifically for the server
 | 
					**Description**: Tiny, fast, and elegant implementation of core jQuery designed specifically for the server
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -145,7 +145,7 @@ SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# class-transformer
 | 
					# class-transformer
 | 
				
			||||||
**Author**: [object Object]
 | 
					**Author**: [object Object]
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/typestack/class-transformer.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Proper decorator-based transformation / serialization / deserialization of plain javascript objects to class constructors
 | 
					**Description**: Proper decorator-based transformation / serialization / deserialization of plain javascript objects to class constructors
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -173,7 +173,7 @@ THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# class-validator
 | 
					# class-validator
 | 
				
			||||||
**Author**: TypeStack contributors
 | 
					**Author**: TypeStack contributors
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/typestack/class-validator.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Decorator-based property validation for classes.
 | 
					**Description**: Decorator-based property validation for classes.
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -240,7 +240,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# dotenv
 | 
					# dotenv
 | 
				
			||||||
**Author**: undefined
 | 
					**Author**: undefined
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: git://github.com/motdotla/dotenv.git
 | 
				
			||||||
**License**: BSD-2-Clause
 | 
					**License**: BSD-2-Clause
 | 
				
			||||||
**Description**: Loads environment variables from .env file
 | 
					**Description**: Loads environment variables from .env file
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -303,7 +303,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# handlebars
 | 
					# handlebars
 | 
				
			||||||
**Author**: Yehuda Katz
 | 
					**Author**: Yehuda Katz
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/wycats/handlebars.js.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Handlebars provides the power necessary to let you build semantic templates effectively with no frustration
 | 
					**Description**: Handlebars provides the power necessary to let you build semantic templates effectively with no frustration
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -330,7 +330,7 @@ THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# i18next
 | 
					# i18next
 | 
				
			||||||
**Author**: Jan Mühlemann <jan.muehlemann@gmail.com> (https://github.com/jamuhl)
 | 
					**Author**: Jan Mühlemann <jan.muehlemann@gmail.com> (https://github.com/jamuhl)
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/i18next/i18next.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: i18next internationalization framework
 | 
					**Description**: i18next internationalization framework
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -359,7 +359,7 @@ SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# i18next-fs-backend
 | 
					# i18next-fs-backend
 | 
				
			||||||
**Author**: undefined
 | 
					**Author**: undefined
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: git@github.com:i18next/i18next-fs-backend.git
 | 
				
			||||||
**License**: undefined
 | 
					**License**: undefined
 | 
				
			||||||
**Description**: i18next-fs-backend is a backend layer for i18next using in Node.js and for Deno to load translations from the filesystem.
 | 
					**Description**: i18next-fs-backend is a backend layer for i18next using in Node.js and for Deno to load translations from the filesystem.
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -637,7 +637,7 @@ SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# reflect-metadata
 | 
					# reflect-metadata
 | 
				
			||||||
**Author**: [object Object]
 | 
					**Author**: [object Object]
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/rbuckton/reflect-metadata.git
 | 
				
			||||||
**License**: Apache-2.0
 | 
					**License**: Apache-2.0
 | 
				
			||||||
**Description**: Polyfill for Metadata Reflection API
 | 
					**Description**: Polyfill for Metadata Reflection API
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -698,32 +698,12 @@ If the Work includes a "NOTICE" text file as part of its distribution, then any
 | 
				
			|||||||
END OF TERMS AND CONDITIONS 
 | 
					END OF TERMS AND CONDITIONS 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# routing-controllers
 | 
					# routing-controllers
 | 
				
			||||||
**Author**: TypeStack contributors
 | 
					**Author**: [object Object]
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/typestack/routing-controllers.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Create structured, declarative and beautifully organized class-based controllers with heavy decorators usage for Express / Koa using TypeScript.
 | 
					**Description**: Create structured, declarative and beautifully organized class-based controllers with heavy decorators usage for Express / Koa using TypeScript.
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
The MIT License
 | 
					 | 
				
			||||||
 
 | 
					 
 | 
				
			||||||
Copyright (c) 2015-2020 TypeStack
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
					 | 
				
			||||||
of this software and associated documentation files (the "Software"), to deal
 | 
					 | 
				
			||||||
in the Software without restriction, including without limitation the rights
 | 
					 | 
				
			||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
					 | 
				
			||||||
copies of the Software, and to permit persons to whom the Software is
 | 
					 | 
				
			||||||
furnished to do so, subject to the following conditions:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
The above copyright notice and this permission notice shall be included in
 | 
					 | 
				
			||||||
all copies or substantial portions of the Software.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
					 | 
				
			||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
					 | 
				
			||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
					 | 
				
			||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
					 | 
				
			||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
					 | 
				
			||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 | 
					 | 
				
			||||||
THE SOFTWARE. 
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# routing-controllers-openapi
 | 
					# routing-controllers-openapi
 | 
				
			||||||
**Author**: Aleksi Pekkala <aleksipekkala@gmail.com>
 | 
					**Author**: Aleksi Pekkala <aleksipekkala@gmail.com>
 | 
				
			||||||
@@ -756,7 +736,7 @@ SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# @odit/license-exporter
 | 
					# @odit/license-exporter
 | 
				
			||||||
**Author**: ODIT.Services
 | 
					**Author**: ODIT.Services
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://git.odit.services/odit/license-exporter
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: A simple license crawler for crediting open source work
 | 
					**Description**: A simple license crawler for crediting open source work
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -783,7 +763,7 @@ OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# @types/express
 | 
					# @types/express
 | 
				
			||||||
**Author**: undefined
 | 
					**Author**: undefined
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/DefinitelyTyped/DefinitelyTyped.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: TypeScript definitions for Express
 | 
					**Description**: TypeScript definitions for Express
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -812,7 +792,7 @@ OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# @types/node
 | 
					# @types/node
 | 
				
			||||||
**Author**: undefined
 | 
					**Author**: undefined
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/DefinitelyTyped/DefinitelyTyped.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: TypeScript definitions for Node.js
 | 
					**Description**: TypeScript definitions for Node.js
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -841,7 +821,7 @@ OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# @types/puppeteer
 | 
					# @types/puppeteer
 | 
				
			||||||
**Author**: undefined
 | 
					**Author**: undefined
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/DefinitelyTyped/DefinitelyTyped.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: TypeScript definitions for puppeteer
 | 
					**Description**: TypeScript definitions for puppeteer
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -870,7 +850,7 @@ OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# cp-cli
 | 
					# cp-cli
 | 
				
			||||||
**Author**: undefined
 | 
					**Author**: undefined
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: git+https://github.com/screendriver/cp-cli.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: A 'cp' CLI util for Node.js
 | 
					**Description**: A 'cp' CLI util for Node.js
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -899,7 +879,7 @@ SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# faker
 | 
					# faker
 | 
				
			||||||
**Author**: undefined
 | 
					**Author**: undefined
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: http://github.com/Marak/Faker.js.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Generate massive amounts of fake contextual data
 | 
					**Description**: Generate massive amounts of fake contextual data
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -907,7 +887,7 @@ SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# nodemon
 | 
					# nodemon
 | 
				
			||||||
**Author**: [object Object]
 | 
					**Author**: [object Object]
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/remy/nodemon.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Simple monitor script for use during development of a node.js app.
 | 
					**Description**: Simple monitor script for use during development of a node.js app.
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -936,7 +916,7 @@ SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# release-it
 | 
					# release-it
 | 
				
			||||||
**Author**: [object Object]
 | 
					**Author**: [object Object]
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/release-it/release-it.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Generic CLI tool to automate versioning and package publishing related tasks.
 | 
					**Description**: Generic CLI tool to automate versioning and package publishing related tasks.
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -988,7 +968,7 @@ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# start-server-and-test
 | 
					# start-server-and-test
 | 
				
			||||||
**Author**: Gleb Bahmutov <gleb.bahmutov@gmail.com>
 | 
					**Author**: Gleb Bahmutov <gleb.bahmutov@gmail.com>
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/bahmutov/start-server-and-test.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: Starts server, waits for URL, then runs test command; when the tests end, shuts down server
 | 
					**Description**: Starts server, waits for URL, then runs test command; when the tests end, shuts down server
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -996,7 +976,7 @@ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# ts-node
 | 
					# ts-node
 | 
				
			||||||
**Author**: [object Object]
 | 
					**Author**: [object Object]
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: git://github.com/TypeStrong/ts-node.git
 | 
				
			||||||
**License**: MIT
 | 
					**License**: MIT
 | 
				
			||||||
**Description**: TypeScript execution environment and REPL for node.js, with source map support
 | 
					**Description**: TypeScript execution environment and REPL for node.js, with source map support
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
@@ -1025,7 +1005,7 @@ THE SOFTWARE.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# typescript
 | 
					# typescript
 | 
				
			||||||
**Author**: Microsoft Corp.
 | 
					**Author**: Microsoft Corp.
 | 
				
			||||||
**Repo**: [object Object]
 | 
					**Repo**: https://github.com/Microsoft/TypeScript.git
 | 
				
			||||||
**License**: Apache-2.0
 | 
					**License**: Apache-2.0
 | 
				
			||||||
**Description**: TypeScript is a language for application scale JavaScript development
 | 
					**Description**: TypeScript is a language for application scale JavaScript development
 | 
				
			||||||
## License Text
 | 
					## License Text
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  "name": "@odit/lfk-document-server",
 | 
					  "name": "@odit/lfk-document-server",
 | 
				
			||||||
  "version": "0.3.1",
 | 
					  "version": "0.3.2",
 | 
				
			||||||
  "description": "The document generation server for the LfK! runner system. This generates certificates, sponsoring aggreements and more",
 | 
					  "description": "The document generation server for the LfK! runner system. This generates certificates, sponsoring aggreements and more",
 | 
				
			||||||
  "main": "src/app.ts",
 | 
					  "main": "src/app.ts",
 | 
				
			||||||
  "scripts": {
 | 
					  "scripts": {
 | 
				
			||||||
@@ -59,11 +59,11 @@
 | 
				
			|||||||
    "pdf-lib": "^1.16.0",
 | 
					    "pdf-lib": "^1.16.0",
 | 
				
			||||||
    "puppeteer": "^7.0.1",
 | 
					    "puppeteer": "^7.0.1",
 | 
				
			||||||
    "reflect-metadata": "^0.1.13",
 | 
					    "reflect-metadata": "^0.1.13",
 | 
				
			||||||
    "routing-controllers": "^0.9.0-alpha.6",
 | 
					    "routing-controllers": "0.9.0-alpha.6",
 | 
				
			||||||
    "routing-controllers-openapi": "^2.2.0"
 | 
					    "routing-controllers-openapi": "2.2.0"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
    "@odit/license-exporter": "^0.0.9",
 | 
					    "@odit/license-exporter": "^0.0.10",
 | 
				
			||||||
    "@types/express": "^4.17.11",
 | 
					    "@types/express": "^4.17.11",
 | 
				
			||||||
    "@types/node": "^14.14.22",
 | 
					    "@types/node": "^14.14.22",
 | 
				
			||||||
    "@types/puppeteer": "^5.4.3",
 | 
					    "@types/puppeteer": "^5.4.3",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,7 +18,7 @@ export class PdfController {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    @Post('/contracts')
 | 
					    @Post('/contracts')
 | 
				
			||||||
    @OpenAPI({ description: "Generate Sponsoring contract pdfs from runner objects.<br>You can choose your prefered locale by passing the 'locale' query-param.<br> If you provide more than 100 runenrs this could take a moment or two (we tested up to 1000 runners in about 70sec so far)." })
 | 
					    @OpenAPI({ description: "Generate Sponsoring contract pdfs from runner objects.<br>You can choose your prefered locale by passing the 'locale' query-param.<br> If you provide more than 100 runenrs this could take a moment or two (we tested up to 1000 runners in about 70sec so far)." })
 | 
				
			||||||
    async generateContracts(@Body({ validate: true, options: { limit: "500mb" } }) runners: Runner | Runner[], @Res() res: any, @QueryParam("locale") locale: string, @QueryParam("codeformat") codeformat: string) {
 | 
					    async generateContracts(@Body({ validate: true, options: { limit: "500mb" } }) runners: Runner[], @Res() res: any, @QueryParam("locale") locale: string, @QueryParam("codeformat") codeformat: string) {
 | 
				
			||||||
        if (!this.initialized) {
 | 
					        if (!this.initialized) {
 | 
				
			||||||
            await this.pdf.init();
 | 
					            await this.pdf.init();
 | 
				
			||||||
            this.initialized = true;
 | 
					            this.initialized = true;
 | 
				
			||||||
@@ -26,6 +26,7 @@ export class PdfController {
 | 
				
			|||||||
        if (!Array.isArray(runners)) {
 | 
					        if (!Array.isArray(runners)) {
 | 
				
			||||||
            runners = [runners];
 | 
					            runners = [runners];
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					        runners = this.mapRunnerGroupNames(runners)
 | 
				
			||||||
        const contracts = await this.pdf.generateSponsoringContract(runners, locale, codeformat);
 | 
					        const contracts = await this.pdf.generateSponsoringContract(runners, locale, codeformat);
 | 
				
			||||||
        res.setHeader('content-type', 'application/pdf');
 | 
					        res.setHeader('content-type', 'application/pdf');
 | 
				
			||||||
        return contracts;
 | 
					        return contracts;
 | 
				
			||||||
@@ -41,8 +42,37 @@ export class PdfController {
 | 
				
			|||||||
        if (!Array.isArray(cards)) {
 | 
					        if (!Array.isArray(cards)) {
 | 
				
			||||||
            cards = [cards];
 | 
					            cards = [cards];
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					        cards = this.mapCardGroupNames(cards);
 | 
				
			||||||
        const contracts = await this.pdf.generateRunnerCards(cards, locale);
 | 
					        const contracts = await this.pdf.generateRunnerCards(cards, locale);
 | 
				
			||||||
        res.setHeader('content-type', 'application/pdf');
 | 
					        res.setHeader('content-type', 'application/pdf');
 | 
				
			||||||
        return contracts;
 | 
					        return contracts;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private mapRunnerGroupNames(runners: Runner[]): Runner[] {
 | 
				
			||||||
 | 
					        let response = new Array<Runner>();
 | 
				
			||||||
 | 
					        for (let runner of runners) {
 | 
				
			||||||
 | 
					            if (!runner.group.parentGroup) {
 | 
				
			||||||
 | 
					                runner.group.fullName = runner.group.name;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            else {
 | 
				
			||||||
 | 
					                runner.group.fullName = `${runner.group.parentGroup.name}/${runner.group.name}`;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            response.push(runner)
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        return response;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private mapCardGroupNames(cards: RunnerCard[]): RunnerCard[] {
 | 
				
			||||||
 | 
					        let response = new Array<RunnerCard>();
 | 
				
			||||||
 | 
					        for (let card of cards) {
 | 
				
			||||||
 | 
					            if (!card.runner.group.parentGroup) {
 | 
				
			||||||
 | 
					                card.runner.group.fullName = card.runner.group.name;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            else {
 | 
				
			||||||
 | 
					                card.runner.group.fullName = `${card.runner.group.parentGroup.name}/${card.runner.group.name}`;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            response.push(card)
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        return response;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -13,7 +13,8 @@ import {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    IsPositive,
 | 
					    IsPositive,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    IsString
 | 
					    IsString,
 | 
				
			||||||
 | 
					    ValidateNested
 | 
				
			||||||
} from "class-validator";
 | 
					} from "class-validator";
 | 
				
			||||||
import { RunnerGroup } from './RunnerGroup';
 | 
					import { RunnerGroup } from './RunnerGroup';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -53,6 +54,7 @@ export class Runner {
 | 
				
			|||||||
     * The runner's group.
 | 
					     * The runner's group.
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    @IsObject()
 | 
					    @IsObject()
 | 
				
			||||||
 | 
					    @ValidateNested()
 | 
				
			||||||
    group: RunnerGroup;
 | 
					    group: RunnerGroup;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
@@ -60,4 +62,8 @@ export class Runner {
 | 
				
			|||||||
     */
 | 
					     */
 | 
				
			||||||
    @IsInt()
 | 
					    @IsInt()
 | 
				
			||||||
    distance: number;
 | 
					    distance: number;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    constructor() {
 | 
				
			||||||
 | 
					        console.log("called")
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -25,4 +25,6 @@ export class RunnerGroup {
 | 
				
			|||||||
    @IsObject()
 | 
					    @IsObject()
 | 
				
			||||||
    @IsOptional()
 | 
					    @IsOptional()
 | 
				
			||||||
    parentGroup?: RunnerGroup;
 | 
					    parentGroup?: RunnerGroup;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    fullName: string;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -48,7 +48,7 @@
 | 
				
			|||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
        <p>{{this.runner.lastname}}, {{this.runner.firstname}} {{this.runner.middlename}}</p>
 | 
					        <p>{{this.runner.lastname}}, {{this.runner.firstname}} {{this.runner.middlename}}</p>
 | 
				
			||||||
        <p>{{this.runner.group.name}}</p>
 | 
					        <p>{{this.runner.group.fullName}}</p>
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
      {{/each}}
 | 
					      {{/each}}
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -64,7 +64,7 @@
 | 
				
			|||||||
          <p style="font-size: x-small; display: block;">{{__ "lastname"}}</p>
 | 
					          <p style="font-size: x-small; display: block;">{{__ "lastname"}}</p>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
        <div class="column is-6">
 | 
					        <div class="column is-6">
 | 
				
			||||||
          <span style="border-bottom: 1px solid; width: 100%; display: block;">{{this.group.name}}</span>
 | 
					          <span style="border-bottom: 1px solid; width: 100%; display: block;">{{this.group.fullName}}</span>
 | 
				
			||||||
          <p style="font-size: x-small; display: block;">{{__ "group"}}</p>
 | 
					          <p style="font-size: x-small; display: block;">{{__ "group"}}</p>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user