Compare commits
22 Commits
Author | SHA1 | Date | |
---|---|---|---|
0f26791ee2 | |||
34e65462e2 | |||
f55ac65e20 | |||
474ce92b88 | |||
de95e03699 | |||
1e4adeede6 | |||
ca67505870 | |||
18eabb11af | |||
3572dc6574 | |||
0d815f0414 | |||
d6c361750d | |||
d877aed78b | |||
ac7848a462 | |||
76037fba47 | |||
36a7347a3d | |||
d748505b8a | |||
def1a8add3 | |||
1f75449985 | |||
d2380c2192 | |||
1e3fd5830d | |||
3d9c7bbec7 | |||
884186e429 |
@ -1,4 +1,10 @@
|
||||
image: hosttoday/ht-docker-node:npmts
|
||||
# gitzone standard
|
||||
image: hosttoday/ht-docker-node:npmci
|
||||
|
||||
cache:
|
||||
paths:
|
||||
- .yarn/
|
||||
key: "$CI_BUILD_STAGE"
|
||||
|
||||
stages:
|
||||
- test
|
||||
@ -10,6 +16,7 @@ testLEGACY:
|
||||
stage: test
|
||||
script:
|
||||
- npmci test legacy
|
||||
coverage: /\d+.?\d+?\%\s*coverage/
|
||||
tags:
|
||||
- docker
|
||||
allow_failure: true
|
||||
@ -18,6 +25,7 @@ testLTS:
|
||||
stage: test
|
||||
script:
|
||||
- npmci test lts
|
||||
coverage: /\d+.?\d+?\%\s*coverage/
|
||||
tags:
|
||||
- docker
|
||||
|
||||
@ -25,6 +33,7 @@ testSTABLE:
|
||||
stage: test
|
||||
script:
|
||||
- npmci test stable
|
||||
coverage: /\d+.?\d+?\%\s*coverage/
|
||||
tags:
|
||||
- docker
|
||||
|
||||
@ -47,10 +56,13 @@ trigger:
|
||||
- docker
|
||||
|
||||
pages:
|
||||
image: hosttoday/ht-docker-node:npmpage
|
||||
image: hosttoday/ht-docker-node:npmci
|
||||
stage: pages
|
||||
script:
|
||||
- npmci command npmpage --host gitlab
|
||||
- npmci command yarn global add npmpage
|
||||
- npmci command npmpage
|
||||
tags:
|
||||
- docker
|
||||
only:
|
||||
- tags
|
||||
artifacts:
|
||||
|
24
README.md
24
README.md
@ -1,15 +1,16 @@
|
||||
# tsclass
|
||||
common classes for TypeScript.
|
||||
common classes for TypeScript
|
||||
|
||||
## Availabililty
|
||||
[](https://www.npmjs.com/package/tsclass)
|
||||
[](https://gitlab.com/tsclass/tsclass)
|
||||
[](https://github.com/tsclass/tsclass)
|
||||
[](https://tsclass.gitlab.io/tsclass/)
|
||||
[](https://www.npmjs.com/package/tsclass)
|
||||
[](https://GitLab.com/tsclass/tsclass)
|
||||
[](https://github.com/tsclass/tsclass)
|
||||
[](https://tsclass.gitlab.io/tsclass/)
|
||||
|
||||
## Status for master
|
||||
[](https://gitlab.com/tsclass/tsclass/commits/master)
|
||||
[](https://gitlab.com/tsclass/tsclass/commits/master)
|
||||
[](https://GitLab.com/tsclass/tsclass/commits/master)
|
||||
[](https://GitLab.com/tsclass/tsclass/commits/master)
|
||||
[](https://www.npmjs.com/package/tsclass)
|
||||
[](https://david-dm.org/tsclass/tsclass)
|
||||
[](https://www.bithound.io/github/tsclass/tsclass/master/dependencies/npm)
|
||||
[](https://www.bithound.io/github/tsclass/tsclass)
|
||||
@ -18,6 +19,8 @@ common classes for TypeScript.
|
||||
[](http://standardjs.com/)
|
||||
|
||||
## Usage
|
||||
Use TypeScript for best in class instellisense.
|
||||
|
||||
tsclass exposes many commonly used objects as interface to implement (-> extends keyword) by individual implementations.
|
||||
They come complete with best in class intellisense and are easy to require.
|
||||
|
||||
@ -45,3 +48,10 @@ class myOwnInvoice implements IInvoice {
|
||||
|
||||
|
||||
> The modules in bold letters exist as own modules and can be used seperately
|
||||
|
||||
For further information read the linked docs at the top of this README.
|
||||
|
||||
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
|
||||
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
|
||||
|
||||
[](https://push.rocks)
|
||||
|
14
dist/business/company.d.ts
vendored
Normal file
14
dist/business/company.d.ts
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
import { IDate } from '../index';
|
||||
/**
|
||||
* describes a company's lifecycle state
|
||||
*/
|
||||
export declare type TCompanyStatus = 'planed' | 'founding' | 'active' | 'liquidation' | 'closed';
|
||||
/**
|
||||
* describes a company
|
||||
*/
|
||||
export interface ICompany {
|
||||
name: string;
|
||||
foundedDate: IDate;
|
||||
closedDate: IDate;
|
||||
status: TCompanyStatus;
|
||||
}
|
3
dist/business/company.js
vendored
Normal file
3
dist/business/company.js
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFueS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL2J1c2luZXNzL2NvbXBhbnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
3
dist/business/contact.d.ts
vendored
Normal file
3
dist/business/contact.d.ts
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
export interface IContact {
|
||||
name: string;
|
||||
}
|
3
dist/business/contact.js
vendored
Normal file
3
dist/business/contact.js
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL2J1c2luZXNzL2NvbnRhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
10
dist/business/invoice.d.ts
vendored
Normal file
10
dist/business/invoice.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
export declare type TInvoiceStatus = 'draft' | 'invoice' | 'paid' | 'refunded';
|
||||
export interface IInvoiceItem {
|
||||
name: string;
|
||||
unitType: string;
|
||||
quantity: number;
|
||||
vatPercentage: number;
|
||||
}
|
||||
export interface IInvoice {
|
||||
status: TInvoiceStatus;
|
||||
}
|
6
dist/invoice.js → dist/business/invoice.js
vendored
6
dist/invoice.js → dist/business/invoice.js
vendored
@ -1,5 +1,3 @@
|
||||
"use strict";
|
||||
class IInvoice {
|
||||
}
|
||||
exports.IInvoice = IInvoice;
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2ljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL2ludm9pY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBO0NBRUM7QUFGRCw0QkFFQyJ9
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2ljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL2J1c2luZXNzL2ludm9pY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
1
dist/cloud/dns.d.ts
vendored
Normal file
1
dist/cloud/dns.d.ts
vendored
Normal file
@ -0,0 +1 @@
|
||||
export declare type TDnsRecord = 'A' | 'AAAA' | 'CNAME' | 'TXT' | 'SRV' | 'LOC' | 'MX' | 'NS' | 'SPF';
|
3
dist/cloud/dns.js
vendored
Normal file
3
dist/cloud/dns.js
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvY2xvdWQvZG5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
@ -1,4 +1,4 @@
|
||||
import { IAuthor } from './author';
|
||||
import { IAuthor } from '../index';
|
||||
export interface IArticle {
|
||||
/**
|
||||
* the title of an article
|
3
dist/article.js → dist/content/article.js
vendored
3
dist/article.js → dist/content/article.js
vendored
@ -1,2 +1,3 @@
|
||||
"use strict";
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWNsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL2FydGljbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWNsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL2NvbnRlbnQvYXJ0aWNsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
6
dist/author.d.ts → dist/content/author.d.ts
vendored
6
dist/author.d.ts → dist/content/author.d.ts
vendored
@ -1,5 +1,5 @@
|
||||
import { IDate } from './date';
|
||||
import { IArticle } from './article';
|
||||
import { IDate } from '../index';
|
||||
import { IArticle } from '../index';
|
||||
export interface IAuthor {
|
||||
/**
|
||||
* the first name of an author
|
||||
@ -16,5 +16,5 @@ export interface IAuthor {
|
||||
/**
|
||||
* articles of an author
|
||||
*/
|
||||
articles: IArticle;
|
||||
articles: IArticle[];
|
||||
}
|
3
dist/author.js → dist/content/author.js
vendored
3
dist/author.js → dist/content/author.js
vendored
@ -1,2 +1,3 @@
|
||||
"use strict";
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvYXV0aG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvY29udGVudC9hdXRob3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
0
dist/date.d.ts → dist/general/date.d.ts
vendored
0
dist/date.d.ts → dist/general/date.d.ts
vendored
3
dist/date.js → dist/general/date.js
vendored
3
dist/date.js → dist/general/date.js
vendored
@ -1,2 +1,3 @@
|
||||
"use strict";
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL2RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL2dlbmVyYWwvZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
0
dist/time.d.ts → dist/general/time.d.ts
vendored
0
dist/time.d.ts → dist/general/time.d.ts
vendored
3
dist/time.js → dist/general/time.js
vendored
3
dist/time.js → dist/general/time.js
vendored
@ -1,2 +1,3 @@
|
||||
"use strict";
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3RpbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL2dlbmVyYWwvdGltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
13
dist/index.d.ts
vendored
13
dist/index.d.ts
vendored
@ -1,5 +1,8 @@
|
||||
export * from './article';
|
||||
export * from './author';
|
||||
export * from './date';
|
||||
export * from './invoice';
|
||||
export * from './time';
|
||||
export * from './business/company';
|
||||
export * from './business/contact';
|
||||
export * from './business/invoice';
|
||||
export * from './cloud/dns';
|
||||
export * from './content/article';
|
||||
export * from './content/author';
|
||||
export * from './general/date';
|
||||
export * from './general/time';
|
||||
|
7
dist/index.js
vendored
7
dist/index.js
vendored
@ -1,6 +1,3 @@
|
||||
"use strict";
|
||||
function __export(m) {
|
||||
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
|
||||
}
|
||||
__export(require("./invoice"));
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBR0EsK0JBQXlCIn0=
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
2
dist/invoice.d.ts
vendored
2
dist/invoice.d.ts
vendored
@ -1,2 +0,0 @@
|
||||
export declare class IInvoice {
|
||||
}
|
0
docs/index.md
Normal file
0
docs/index.md
Normal file
7
npmextra.json
Normal file
7
npmextra.json
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"npmci": {
|
||||
"globalNpmTools": [
|
||||
"npmts"
|
||||
]
|
||||
}
|
||||
}
|
@ -1,11 +1,11 @@
|
||||
{
|
||||
"name": "tsclass",
|
||||
"version": "1.0.3",
|
||||
"version": "1.0.13",
|
||||
"description": "common classes for TypeScript",
|
||||
"main": "dist/index.js",
|
||||
"typings": "dist/index.d.ts",
|
||||
"scripts": {
|
||||
"test": "(npmts)"
|
||||
"test": "(npmts --notest)"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -20,8 +20,5 @@
|
||||
"bugs": {
|
||||
"url": "https://github.com/tsclass/tsclass/issues"
|
||||
},
|
||||
"homepage": "https://github.com/tsclass/tsclass#readme",
|
||||
"devDependencies": {
|
||||
"npmts": "^5.1.5"
|
||||
}
|
||||
"homepage": "https://github.com/tsclass/tsclass#readme"
|
||||
}
|
||||
|
@ -1,23 +0,0 @@
|
||||
import { IAuthor } from './author'
|
||||
|
||||
export interface IArticle {
|
||||
/**
|
||||
* the title of an article
|
||||
*/
|
||||
title: string
|
||||
|
||||
/**
|
||||
* the Author of an article
|
||||
*/
|
||||
author: IAuthor
|
||||
|
||||
/**
|
||||
* the content of an article
|
||||
*/
|
||||
content: string
|
||||
|
||||
/**
|
||||
* the tags of an article
|
||||
*/
|
||||
tags: string[]
|
||||
}
|
25
ts/author.ts
25
ts/author.ts
@ -1,25 +0,0 @@
|
||||
import { IDate } from './date'
|
||||
import { IArticle } from './article'
|
||||
|
||||
export interface IAuthor {
|
||||
|
||||
/**
|
||||
* the first name of an author
|
||||
*/
|
||||
firstName: string
|
||||
|
||||
/**
|
||||
* the surname of an author
|
||||
*/
|
||||
surName: string
|
||||
|
||||
/**
|
||||
* the birthday of an author
|
||||
*/
|
||||
birthday: IDate
|
||||
|
||||
/**
|
||||
* articles of an author
|
||||
*/
|
||||
articles: IArticle
|
||||
}
|
17
ts/business/company.ts
Normal file
17
ts/business/company.ts
Normal file
@ -0,0 +1,17 @@
|
||||
import { IContact } from '../index'
|
||||
import { IDate } from '../index'
|
||||
|
||||
/**
|
||||
* describes a company's lifecycle state
|
||||
*/
|
||||
export type TCompanyStatus = 'planed' | 'founding' | 'active' | 'liquidation' | 'closed'
|
||||
|
||||
/**
|
||||
* describes a company
|
||||
*/
|
||||
export interface ICompany {
|
||||
name: string
|
||||
foundedDate: IDate
|
||||
closedDate: IDate
|
||||
status: TCompanyStatus
|
||||
}
|
4
ts/business/contact.ts
Normal file
4
ts/business/contact.ts
Normal file
@ -0,0 +1,4 @@
|
||||
export interface IContact {
|
||||
name: string
|
||||
|
||||
}
|
14
ts/business/invoice.ts
Normal file
14
ts/business/invoice.ts
Normal file
@ -0,0 +1,14 @@
|
||||
import { IContact } from '../index'
|
||||
|
||||
export type TInvoiceStatus = 'draft' | 'invoice' | 'paid' | 'refunded'
|
||||
|
||||
export interface IInvoiceItem {
|
||||
name: string
|
||||
unitType: string
|
||||
quantity: number
|
||||
vatPercentage: number
|
||||
}
|
||||
|
||||
export interface IInvoice {
|
||||
status: TInvoiceStatus
|
||||
}
|
1
ts/cloud/dns.ts
Normal file
1
ts/cloud/dns.ts
Normal file
@ -0,0 +1 @@
|
||||
export type TDnsRecord = 'A' | 'AAAA' | 'CNAME' | 'TXT' | 'SRV' | 'LOC' | 'MX' | 'NS' | 'SPF'
|
23
ts/content/article.ts
Normal file
23
ts/content/article.ts
Normal file
@ -0,0 +1,23 @@
|
||||
import { IAuthor } from '../index'
|
||||
|
||||
export interface IArticle {
|
||||
/**
|
||||
* the title of an article
|
||||
*/
|
||||
title: string
|
||||
|
||||
/**
|
||||
* the Author of an article
|
||||
*/
|
||||
author: IAuthor
|
||||
|
||||
/**
|
||||
* the content of an article
|
||||
*/
|
||||
content: string
|
||||
|
||||
/**
|
||||
* the tags of an article
|
||||
*/
|
||||
tags: string[]
|
||||
}
|
25
ts/content/author.ts
Normal file
25
ts/content/author.ts
Normal file
@ -0,0 +1,25 @@
|
||||
import { IDate } from '../index'
|
||||
import { IArticle } from '../index'
|
||||
|
||||
export interface IAuthor {
|
||||
|
||||
/**
|
||||
* the first name of an author
|
||||
*/
|
||||
firstName: string
|
||||
|
||||
/**
|
||||
* the surname of an author
|
||||
*/
|
||||
surName: string
|
||||
|
||||
/**
|
||||
* the birthday of an author
|
||||
*/
|
||||
birthday: IDate
|
||||
|
||||
/**
|
||||
* articles of an author
|
||||
*/
|
||||
articles: IArticle[]
|
||||
}
|
@ -1,5 +0,0 @@
|
||||
export interface IDate {
|
||||
day: number
|
||||
month: number
|
||||
year: number
|
||||
}
|
5
ts/general/date.ts
Normal file
5
ts/general/date.ts
Normal file
@ -0,0 +1,5 @@
|
||||
export interface IDate {
|
||||
day: number
|
||||
month: number
|
||||
year: number
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
export interface ITime {
|
||||
|
||||
}
|
||||
}
|
20
ts/index.ts
20
ts/index.ts
@ -1,5 +1,15 @@
|
||||
export * from './article'
|
||||
export * from './author'
|
||||
export * from './date'
|
||||
export * from './invoice'
|
||||
export * from './time'
|
||||
// Business
|
||||
export * from './business/company'
|
||||
export * from './business/contact'
|
||||
export * from './business/invoice'
|
||||
|
||||
// Cloud
|
||||
export * from './cloud/dns'
|
||||
|
||||
// Content
|
||||
export * from './content/article'
|
||||
export * from './content/author'
|
||||
|
||||
// General
|
||||
export * from './general/date'
|
||||
export * from './general/time'
|
||||
|
@ -1,3 +0,0 @@
|
||||
export class IInvoice {
|
||||
|
||||
}
|
Reference in New Issue
Block a user