Compare commits

...

6 Commits

Author SHA1 Message Date
2cec65f8a0 4.0.27 2022-10-31 13:59:04 +01:00
d20073a2b0 fix(core): update 2022-10-31 13:59:03 +01:00
4563ba2404 4.0.26 2022-10-24 12:58:24 +02:00
62eeeecfef fix(core): update 2022-10-24 12:58:24 +02:00
c48c6a2d79 4.0.25 2022-10-24 10:10:53 +02:00
25d2bb077e fix(business.IContract): added contract logic 2022-10-24 10:10:52 +02:00
7 changed files with 75 additions and 41 deletions

View File

@ -1,6 +1,6 @@
{
"name": "@tsclass/tsclass",
"version": "4.0.24",
"version": "4.0.27",
"private": false,
"description": "common classes for TypeScript",
"main": "dist_ts/index.js",
@ -30,10 +30,10 @@
},
"devDependencies": {
"@gitzone/tsbuild": "^2.1.65",
"@gitzone/tsrun": "^1.2.37",
"@gitzone/tsrun": "^1.2.39",
"@gitzone/tstest": "^1.0.73",
"@pushrocks/tapbundle": "^5.0.4",
"@types/node": "^18.11.0"
"@types/node": "^18.11.8"
},
"files": [
"ts/**/*",

74
pnpm-lock.yaml generated
View File

@ -2,10 +2,10 @@ lockfileVersion: 5.4
specifiers:
'@gitzone/tsbuild': ^2.1.65
'@gitzone/tsrun': ^1.2.37
'@gitzone/tsrun': ^1.2.39
'@gitzone/tstest': ^1.0.73
'@pushrocks/tapbundle': ^5.0.4
'@types/node': ^18.11.0
'@types/node': ^18.11.8
type-fest: ^3.1.0
dependencies:
@ -13,10 +13,10 @@ dependencies:
devDependencies:
'@gitzone/tsbuild': 2.1.65
'@gitzone/tsrun': 1.2.38_@types+node@18.11.0
'@gitzone/tstest': 1.0.73_@types+node@18.11.0
'@gitzone/tsrun': 1.2.39_@types+node@18.11.8
'@gitzone/tstest': 1.0.73_@types+node@18.11.8
'@pushrocks/tapbundle': 5.0.4
'@types/node': 18.11.0
'@types/node': 18.11.8
packages:
@ -134,7 +134,7 @@ packages:
'@pushrocks/smartpromise': 3.1.7
'@pushrocks/smartspawn': 3.0.2
'@types/html-minifier': 4.0.2
'@types/node': 18.11.0
'@types/node': 18.11.8
esbuild: 0.14.54
html-minifier: 4.0.0
typescript: 4.8.4
@ -142,13 +142,13 @@ packages:
- supports-color
dev: true
/@gitzone/tsrun/1.2.38_@types+node@18.11.0:
resolution: {integrity: sha512-kgq7X+zvLvcoWdcO+bn2Pqa2V1JdaXh6fp/5YL15SSUg1jB2AZjZMVmhM+MpbgVKwhJVdAZbdhEqvyFusuMksA==}
/@gitzone/tsrun/1.2.39_@types+node@18.11.8:
resolution: {integrity: sha512-gLqKOic3T1GIdqsp+T5g1OewfboMJKKMr7/SJgBuMx4BUEBfW7TYhqk6psgfewhHs/zKII5rWbbPauykkKlYIg==}
hasBin: true
dependencies:
'@pushrocks/smartfile': 10.0.5
'@pushrocks/smartshell': 2.0.30
ts-node: 10.9.1_o6ib7qqltxpe7qrskddglns2ga
ts-node: 10.9.1_7jzoohtnaegavowzoeccrsbhty
typescript: 4.8.4
transitivePeerDependencies:
- '@swc/core'
@ -157,12 +157,12 @@ packages:
- supports-color
dev: true
/@gitzone/tstest/1.0.73_@types+node@18.11.0:
/@gitzone/tstest/1.0.73_@types+node@18.11.8:
resolution: {integrity: sha512-IaarQBH6vTivIvVpdvwfiABLHf6bkGQlYLcDHymTllMMYrPKRFnpkW+hHJ8KlV0Q8eX/Uyar1PtnSxKEtO3/Fw==}
hasBin: true
dependencies:
'@gitzone/tsbundle': 2.0.7
'@gitzone/tsrun': 1.2.38_@types+node@18.11.0
'@gitzone/tsrun': 1.2.39_@types+node@18.11.8
'@pushrocks/consolecolor': 2.0.1
'@pushrocks/smartbrowser': 2.0.2
'@pushrocks/smartdelay': 2.0.13
@ -873,7 +873,7 @@ packages:
/@types/accepts/1.3.5:
resolution: {integrity: sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/babel__code-frame/7.0.3:
@ -884,7 +884,7 @@ packages:
resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==}
dependencies:
'@types/connect': 3.4.35
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/buffer-json/2.0.1:
@ -904,14 +904,14 @@ packages:
/@types/clean-css/4.2.6:
resolution: {integrity: sha512-Ze1tf+LnGPmG6hBFMi0B4TEB0mhF7EiMM5oyjLDNPE9hxrPU0W+5+bHvO+eFPA+bt0iC1zkQMoU/iGdRVjcRbw==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
source-map: 0.6.1
dev: true
/@types/co-body/6.1.0:
resolution: {integrity: sha512-3e0q2jyDAnx/DSZi0z2H0yoZ2wt5yRDZ+P7ymcMObvq0ufWRT4tsajyO+Q1VwVWiv9PRR4W3YEjEzBjeZlhF+w==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
'@types/qs': 6.9.7
dev: true
@ -924,7 +924,7 @@ packages:
/@types/connect/3.4.35:
resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/content-disposition/0.5.5:
@ -945,7 +945,7 @@ packages:
'@types/connect': 3.4.35
'@types/express': 4.17.14
'@types/keygrip': 1.0.2
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/cors/2.8.12:
@ -963,7 +963,7 @@ packages:
/@types/express-serve-static-core/4.17.31:
resolution: {integrity: sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
'@types/qs': 6.9.7
'@types/range-parser': 1.2.4
dev: true
@ -994,26 +994,26 @@ packages:
/@types/finalhandler/1.2.0:
resolution: {integrity: sha512-NgEZKOhxUSXkwNnWNaMXZaopQ5aFGPAYiEpEWIkQ6Dzc4iS0M1oQsvWne2t+ex9QZUAdTz/ZT4tOXJhWtP6mCw==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/from2/2.3.1:
resolution: {integrity: sha512-l7kKtohAc5h0CKh6vFMv5WcWvQx40KE6dQneUg22i8c1mwxhVPbN781bYts/mYXxSBrQMhNxkhwg18QY0MfeOg==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/fs-extra/9.0.13:
resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/glob/8.0.0:
resolution: {integrity: sha512-l6NQsDDyQUVeoTynNpC9uRvCUint/gSUXQA2euwmTuWGvPY5LSDUu6tkCtJB2SvGQlJQzLaKqcGZP4//7EDveA==}
dependencies:
'@types/minimatch': 5.1.2
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/html-minifier/4.0.2:
@ -1063,7 +1063,7 @@ packages:
/@types/keyv/3.1.4:
resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/koa-compose/3.2.5:
@ -1082,7 +1082,7 @@ packages:
'@types/http-errors': 1.8.2
'@types/keygrip': 1.0.2
'@types/koa-compose': 3.2.5
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/lodash.clonedeep/4.5.7:
@ -1111,8 +1111,8 @@ packages:
resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==}
dev: true
/@types/node/18.11.0:
resolution: {integrity: sha512-IOXCvVRToe7e0ny7HpT/X9Rb2RYtElG1a+VshjwT00HxrM2dWBApHQoqsI6WiY7Q03vdf2bCrIGzVrkF/5t10w==}
/@types/node/18.11.8:
resolution: {integrity: sha512-uGwPWlE0Hj972KkHtCDVwZ8O39GmyjfMane1Z3GUBGGnkZ2USDq7SxLpVIiIHpweY9DS0QTDH0Nw7RNBsAAZ5A==}
dev: true
/@types/parse5/6.0.3:
@ -1138,14 +1138,14 @@ packages:
/@types/responselike/1.0.0:
resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/serve-static/1.15.0:
resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==}
dependencies:
'@types/mime': 3.0.1
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/shortid/0.0.29:
@ -1176,7 +1176,7 @@ packages:
/@types/through2/2.0.36:
resolution: {integrity: sha512-vuifQksQHJXhV9McpVsXKuhnf3lsoX70PnhcqIAbs9dqLH2NgrGz0DzZPDY3+Yh6eaRqcE1gnCQ6QhBn1/PT5A==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/trusted-types/2.0.2:
@ -1200,14 +1200,14 @@ packages:
/@types/ws/7.4.7:
resolution: {integrity: sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==}
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
/@types/yauzl/2.10.0:
resolution: {integrity: sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==}
requiresBuild: true
dependencies:
'@types/node': 18.11.0
'@types/node': 18.11.8
dev: true
optional: true
@ -1320,8 +1320,8 @@ packages:
engines: {node: '>=0.4.0'}
dev: true
/acorn/8.8.0:
resolution: {integrity: sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==}
/acorn/8.8.1:
resolution: {integrity: sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==}
engines: {node: '>=0.4.0'}
hasBin: true
dev: true
@ -1939,7 +1939,7 @@ packages:
dependencies:
'@types/cookie': 0.4.1
'@types/cors': 2.8.12
'@types/node': 18.11.0
'@types/node': 18.11.8
accepts: 1.3.8
base64id: 2.0.0
cookie: 0.4.2
@ -4011,7 +4011,7 @@ packages:
hasBin: true
dev: true
/ts-node/10.9.1_o6ib7qqltxpe7qrskddglns2ga:
/ts-node/10.9.1_7jzoohtnaegavowzoeccrsbhty:
resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==}
hasBin: true
peerDependencies:
@ -4030,8 +4030,8 @@ packages:
'@tsconfig/node12': 1.0.11
'@tsconfig/node14': 1.0.3
'@tsconfig/node16': 1.0.3
'@types/node': 18.11.0
acorn: 8.8.0
'@types/node': 18.11.8
acorn: 8.8.1
acorn-walk: 8.2.0
arg: 4.1.3
create-require: 1.1.1

View File

@ -3,6 +3,6 @@
*/
export const commitinfo = {
name: '@tsclass/tsclass',
version: '4.0.24',
version: '4.0.27',
description: 'common classes for TypeScript'
}

20
ts/business/contract.ts Normal file
View File

@ -0,0 +1,20 @@
import * as database from '../database/index.js';
import { IPerson } from './person.js';
export interface IContract {
parties: {
signingOrder: number;
referencedAs: string;
person: IPerson;
role: 'signer' | 'cc';
signature: {
given: boolean;
timestamp?: number;
location?: string;
ip?: string;
verifications?: [];
};
}[];
contractTextMarkdown: string;
actions: database.IObjectAction[];
}

View File

@ -1,6 +1,12 @@
import { IContact } from './contact.js';
export interface IPerson {
title: string;
name: string;
surname: string;
sex: 'male' | 'female' | 'queer';
legalProxyFor?: {
type: 'self' | 'other';
contact?: IContact;
};
}

View File

@ -1,3 +1,4 @@
export * from './mongodescriptor.js';
export * from './objectaction.js';
export * from './objectstatus.js';
export * from './wrappeddata.js';

View File

@ -0,0 +1,7 @@
export interface IObjectStatus {
current: 'active' | 'inactive' | 'hidden' | 'markedForDeletion';
scheduledDeletion: number;
justForLooks: {
scheduledDeletionIso: string;
};
}