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

74
pnpm-lock.yaml generated
View File

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

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@tsclass/tsclass', name: '@tsclass/tsclass',
version: '4.0.24', version: '4.0.27',
description: 'common classes for TypeScript' 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 { export interface IPerson {
title: string; title: string;
name: string; name: string;
surname: string; surname: string;
sex: 'male' | 'female' | 'queer'; sex: 'male' | 'female' | 'queer';
legalProxyFor?: {
type: 'self' | 'other';
contact?: IContact;
};
} }

View File

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

View File

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