fix(core): Improve code style and update dependencies

This commit is contained in:
Philipp Kunz 2024-11-06 17:02:29 +01:00
parent f86145f68b
commit ae015e433d
8 changed files with 42 additions and 50 deletions

View File

@ -1,5 +1,12 @@
# Changelog # Changelog
## 2024-11-06 - 2.2.4 - fix(core)
Improve code style and update dependencies
- Updated @push.rocks/tapbundle to version ^5.4.3 in package.json.
- Fixed markdown formatting in readme.md.
- Improved code consistency in ts/00_commitinfo_data.ts, ts/plugins.ts, and test/test.ts.
## 2024-11-06 - 2.2.3 - fix(core) ## 2024-11-06 - 2.2.3 - fix(core)
Fix endpoint address from 'localhost' to '127.0.0.1' for better compatibility in Smarts3.getS3Descriptor Fix endpoint address from 'localhost' to '127.0.0.1' for better compatibility in Smarts3.getS3Descriptor

View File

@ -18,7 +18,7 @@
"@git.zone/tsbundle": "^2.1.0", "@git.zone/tsbundle": "^2.1.0",
"@git.zone/tsrun": "^1.3.3", "@git.zone/tsrun": "^1.3.3",
"@git.zone/tstest": "^1.0.72", "@git.zone/tstest": "^1.0.72",
"@push.rocks/tapbundle": "^5.4.1", "@push.rocks/tapbundle": "^5.4.3",
"@types/node": "^22.9.0" "@types/node": "^22.9.0"
}, },
"browserslist": [ "browserslist": [
@ -70,4 +70,4 @@
"bugs": { "bugs": {
"url": "https://code.foss.global/push.rocks/smarts3/issues" "url": "https://code.foss.global/push.rocks/smarts3/issues"
} }
} }

52
pnpm-lock.yaml generated
View File

@ -38,8 +38,8 @@ devDependencies:
specifier: ^1.0.72 specifier: ^1.0.72
version: 1.0.90(@aws-sdk/client-sso-oidc@3.682.0) version: 1.0.90(@aws-sdk/client-sso-oidc@3.682.0)
'@push.rocks/tapbundle': '@push.rocks/tapbundle':
specifier: ^5.4.1 specifier: ^5.4.3
version: 5.4.1(@aws-sdk/client-sso-oidc@3.682.0) version: 5.4.3(@aws-sdk/client-sso-oidc@3.682.0)
'@types/node': '@types/node':
specifier: ^22.9.0 specifier: ^22.9.0
version: 22.9.0 version: 22.9.0
@ -138,7 +138,6 @@ packages:
'@aws-crypto/util': 5.2.0 '@aws-crypto/util': 5.2.0
'@aws-sdk/types': 3.679.0 '@aws-sdk/types': 3.679.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-crypto/crc32c@5.2.0: /@aws-crypto/crc32c@5.2.0:
resolution: {integrity: sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==} resolution: {integrity: sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==}
@ -146,7 +145,6 @@ packages:
'@aws-crypto/util': 5.2.0 '@aws-crypto/util': 5.2.0
'@aws-sdk/types': 3.679.0 '@aws-sdk/types': 3.679.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-crypto/sha1-browser@5.2.0: /@aws-crypto/sha1-browser@5.2.0:
resolution: {integrity: sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==} resolution: {integrity: sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==}
@ -157,7 +155,6 @@ packages:
'@aws-sdk/util-locate-window': 3.679.0 '@aws-sdk/util-locate-window': 3.679.0
'@smithy/util-utf8': 2.3.0 '@smithy/util-utf8': 2.3.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-crypto/sha256-browser@5.2.0: /@aws-crypto/sha256-browser@5.2.0:
resolution: {integrity: sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==} resolution: {integrity: sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==}
@ -305,7 +302,6 @@ packages:
tslib: 2.8.1 tslib: 2.8.1
transitivePeerDependencies: transitivePeerDependencies:
- aws-crt - aws-crt
dev: false
/@aws-sdk/client-sso-oidc@3.682.0(@aws-sdk/client-sts@3.682.0): /@aws-sdk/client-sso-oidc@3.682.0(@aws-sdk/client-sts@3.682.0):
resolution: {integrity: sha512-ZPZ7Y/r/w3nx/xpPzGSqSQsB090Xk5aZZOH+WBhTDn/pBEuim09BYXCLzvvxb7R7NnuoQdrTJiwimdJAhHl7ZQ==} resolution: {integrity: sha512-ZPZ7Y/r/w3nx/xpPzGSqSQsB090Xk5aZZOH+WBhTDn/pBEuim09BYXCLzvvxb7R7NnuoQdrTJiwimdJAhHl7ZQ==}
@ -627,7 +623,6 @@ packages:
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
'@smithy/util-config-provider': 3.0.0 '@smithy/util-config-provider': 3.0.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-sdk/middleware-expect-continue@3.679.0: /@aws-sdk/middleware-expect-continue@3.679.0:
resolution: {integrity: sha512-nYsh9PdWrF4EahTRdXHGlNud82RPc508CNGdh1lAGfPU3tNveGfMBX3PcGBtPOse3p9ebNKRWVmUc9eXSjGvHA==} resolution: {integrity: sha512-nYsh9PdWrF4EahTRdXHGlNud82RPc508CNGdh1lAGfPU3tNveGfMBX3PcGBtPOse3p9ebNKRWVmUc9eXSjGvHA==}
@ -637,7 +632,6 @@ packages:
'@smithy/protocol-http': 4.1.5 '@smithy/protocol-http': 4.1.5
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-sdk/middleware-flexible-checksums@3.682.0: /@aws-sdk/middleware-flexible-checksums@3.682.0:
resolution: {integrity: sha512-5u1STth6iZUtAvPDO0NJVYKUX2EYKU7v84MYYaZ3O27HphRjFqDos0keL2KTnHn/KmMD68rM3yiUareWR8hnAQ==} resolution: {integrity: sha512-5u1STth6iZUtAvPDO0NJVYKUX2EYKU7v84MYYaZ3O27HphRjFqDos0keL2KTnHn/KmMD68rM3yiUareWR8hnAQ==}
@ -654,7 +648,6 @@ packages:
'@smithy/util-middleware': 3.0.8 '@smithy/util-middleware': 3.0.8
'@smithy/util-utf8': 3.0.0 '@smithy/util-utf8': 3.0.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-sdk/middleware-host-header@3.679.0: /@aws-sdk/middleware-host-header@3.679.0:
resolution: {integrity: sha512-y176HuQ8JRY3hGX8rQzHDSbCl9P5Ny9l16z4xmaiLo+Qfte7ee4Yr3yaAKd7GFoJ3/Mhud2XZ37fR015MfYl2w==} resolution: {integrity: sha512-y176HuQ8JRY3hGX8rQzHDSbCl9P5Ny9l16z4xmaiLo+Qfte7ee4Yr3yaAKd7GFoJ3/Mhud2XZ37fR015MfYl2w==}
@ -672,7 +665,6 @@ packages:
'@aws-sdk/types': 3.679.0 '@aws-sdk/types': 3.679.0
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-sdk/middleware-logger@3.679.0: /@aws-sdk/middleware-logger@3.679.0:
resolution: {integrity: sha512-0vet8InEj7nvIvGKk+ch7bEF5SyZ7Us9U7YTEgXPrBNStKeRUsgwRm0ijPWWd0a3oz2okaEwXsFl7G/vI0XiEA==} resolution: {integrity: sha512-0vet8InEj7nvIvGKk+ch7bEF5SyZ7Us9U7YTEgXPrBNStKeRUsgwRm0ijPWWd0a3oz2okaEwXsFl7G/vI0XiEA==}
@ -709,7 +701,6 @@ packages:
'@smithy/util-stream': 3.2.1 '@smithy/util-stream': 3.2.1
'@smithy/util-utf8': 3.0.0 '@smithy/util-utf8': 3.0.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-sdk/middleware-ssec@3.679.0: /@aws-sdk/middleware-ssec@3.679.0:
resolution: {integrity: sha512-4GNUxXbs1M71uFHRiCAZtN0/g23ogI9YjMe5isAuYMHXwDB3MhqF7usKf954mBP6tplvN44vYlbJ84faaLrTtg==} resolution: {integrity: sha512-4GNUxXbs1M71uFHRiCAZtN0/g23ogI9YjMe5isAuYMHXwDB3MhqF7usKf954mBP6tplvN44vYlbJ84faaLrTtg==}
@ -718,7 +709,6 @@ packages:
'@aws-sdk/types': 3.679.0 '@aws-sdk/types': 3.679.0
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-sdk/middleware-user-agent@3.682.0: /@aws-sdk/middleware-user-agent@3.682.0:
resolution: {integrity: sha512-7TyvYR9HdGH1/Nq0eeApUTM4izB6rExiw87khVYuJwZHr6FmvIL1FsOVFro/4WlXa0lg4LiYOm/8H8dHv+fXTg==} resolution: {integrity: sha512-7TyvYR9HdGH1/Nq0eeApUTM4izB6rExiw87khVYuJwZHr6FmvIL1FsOVFro/4WlXa0lg4LiYOm/8H8dHv+fXTg==}
@ -753,7 +743,6 @@ packages:
'@smithy/signature-v4': 4.2.1 '@smithy/signature-v4': 4.2.1
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-sdk/token-providers@3.679.0(@aws-sdk/client-sso-oidc@3.682.0): /@aws-sdk/token-providers@3.679.0(@aws-sdk/client-sso-oidc@3.682.0):
resolution: {integrity: sha512-1/+Zso/x2jqgutKixYFQEGli0FELTgah6bm7aB+m2FAWH4Hz7+iMUsazg6nSWm714sG9G3h5u42Dmpvi9X6/hA==} resolution: {integrity: sha512-1/+Zso/x2jqgutKixYFQEGli0FELTgah6bm7aB+m2FAWH4Hz7+iMUsazg6nSWm714sG9G3h5u42Dmpvi9X6/hA==}
@ -780,7 +769,6 @@ packages:
engines: {node: '>=16.0.0'} engines: {node: '>=16.0.0'}
dependencies: dependencies:
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@aws-sdk/util-endpoints@3.679.0: /@aws-sdk/util-endpoints@3.679.0:
resolution: {integrity: sha512-YL6s4Y/1zC45OvddvgE139fjeWSKKPgLlnfrvhVL7alNyY9n7beR4uhoDpNrt5mI6sn9qiBF17790o+xLAXjjg==} resolution: {integrity: sha512-YL6s4Y/1zC45OvddvgE139fjeWSKKPgLlnfrvhVL7alNyY9n7beR4uhoDpNrt5mI6sn9qiBF17790o+xLAXjjg==}
@ -826,7 +814,6 @@ packages:
dependencies: dependencies:
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@babel/code-frame@7.26.2: /@babel/code-frame@7.26.2:
resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
@ -1424,7 +1411,7 @@ packages:
'@push.rocks/smartlog': 3.0.7 '@push.rocks/smartlog': 3.0.7
'@push.rocks/smartpromise': 4.0.4 '@push.rocks/smartpromise': 4.0.4
'@push.rocks/smartshell': 3.0.6 '@push.rocks/smartshell': 3.0.6
'@push.rocks/tapbundle': 5.4.1(@aws-sdk/client-sso-oidc@3.682.0) '@push.rocks/tapbundle': 5.4.3(@aws-sdk/client-sso-oidc@3.682.0)
'@types/ws': 8.5.13 '@types/ws': 8.5.13
figures: 6.1.0 figures: 6.1.0
ws: 8.18.0 ws: 8.18.0
@ -1742,7 +1729,6 @@ packages:
'@tsclass/tsclass': 4.1.2 '@tsclass/tsclass': 4.1.2
transitivePeerDependencies: transitivePeerDependencies:
- aws-crt - aws-crt
dev: false
/@push.rocks/smartbuffer@3.0.4: /@push.rocks/smartbuffer@3.0.4:
resolution: {integrity: sha512-TLfhx/JD61YC8XGO9TI6Ux6US38R14HaIM84QT8hZZod8axfXrg+h8xA8tMUBpSV8PXsQy9LzxmOq0Il1fmDXw==} resolution: {integrity: sha512-TLfhx/JD61YC8XGO9TI6Ux6US38R14HaIM84QT8hZZod8axfXrg+h8xA8tMUBpSV8PXsQy9LzxmOq0Il1fmDXw==}
@ -2124,16 +2110,17 @@ packages:
'@push.rocks/smartpromise': 4.0.4 '@push.rocks/smartpromise': 4.0.4
rxjs: 7.8.1 rxjs: 7.8.1
/@push.rocks/smarts3@2.2.1: /@push.rocks/smarts3@2.2.3:
resolution: {integrity: sha512-4VkGXyFmX7tZzDt67ejyxX4GUEoq/eDNKby5ReK5yvRmeI2WW29Y/TmovBAuNnirrRM4fw437g76lMVrEqZf1g==} resolution: {integrity: sha512-8OxbL6Fzcv+TTU9bcdU+s4rWdJtiXSzFXFI8ANptUYx2LbkA6AebmiLRDlGDnxBkeDp3TL113Ou+PJoTy5D7Hg==}
dependencies: dependencies:
'@push.rocks/smartbucket': 2.0.4 '@push.rocks/smartbucket': 3.0.23
'@push.rocks/smartfile': 10.0.41 '@push.rocks/smartfile': 11.0.21
'@push.rocks/smartpath': 5.0.18 '@push.rocks/smartpath': 5.0.18
'@tsclass/tsclass': 4.1.2 '@tsclass/tsclass': 4.1.2
'@types/s3rver': 3.7.4 '@types/s3rver': 3.7.4
s3rver: 3.7.1 s3rver: 3.7.1
transitivePeerDependencies: transitivePeerDependencies:
- aws-crt
- supports-color - supports-color
dev: true dev: true
@ -2277,8 +2264,8 @@ packages:
js-yaml: 3.14.1 js-yaml: 3.14.1
dev: true dev: true
/@push.rocks/tapbundle@5.4.1(@aws-sdk/client-sso-oidc@3.682.0): /@push.rocks/tapbundle@5.4.3(@aws-sdk/client-sso-oidc@3.682.0):
resolution: {integrity: sha512-1Jw5cGUqaIG5jAZuq4OxOJ64WrUlA882NwfoXwI0YNMXVvIHTWgGsjUJw7I0YN4Qvh5shnFlDEPKhU2zV020Ww==} resolution: {integrity: sha512-8s8UMHW6gmhVGp4wucnPOiPEegaVZBcKQb+dQ8rclRm2qxipsshfKvsYw48R6ZxAFllwSicMm+xaPlpP31/mJg==}
dependencies: dependencies:
'@open-wc/testing': 4.0.0 '@open-wc/testing': 4.0.0
'@push.rocks/consolecolor': 2.0.2 '@push.rocks/consolecolor': 2.0.2
@ -2290,7 +2277,7 @@ packages:
'@push.rocks/smartjson': 5.0.20 '@push.rocks/smartjson': 5.0.20
'@push.rocks/smartmongo': 2.0.10(@aws-sdk/client-sso-oidc@3.682.0) '@push.rocks/smartmongo': 2.0.10(@aws-sdk/client-sso-oidc@3.682.0)
'@push.rocks/smartpromise': 4.0.4 '@push.rocks/smartpromise': 4.0.4
'@push.rocks/smarts3': 2.2.1 '@push.rocks/smarts3': 2.2.3
'@push.rocks/smartshell': 3.0.6 '@push.rocks/smartshell': 3.0.6
'@push.rocks/smarttime': 4.0.8 '@push.rocks/smarttime': 4.0.8
transitivePeerDependencies: transitivePeerDependencies:
@ -2662,13 +2649,11 @@ packages:
dependencies: dependencies:
'@smithy/util-base64': 3.0.0 '@smithy/util-base64': 3.0.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/chunked-blob-reader@4.0.0: /@smithy/chunked-blob-reader@4.0.0:
resolution: {integrity: sha512-jSqRnZvkT4egkq/7b6/QRCNXmmYVcHwnJldqJ3IhVpQE2atObVJ137xmGeuGFhjFUr8gCEVAOKwSY79OvpbDaQ==} resolution: {integrity: sha512-jSqRnZvkT4egkq/7b6/QRCNXmmYVcHwnJldqJ3IhVpQE2atObVJ137xmGeuGFhjFUr8gCEVAOKwSY79OvpbDaQ==}
dependencies: dependencies:
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/config-resolver@3.0.10: /@smithy/config-resolver@3.0.10:
resolution: {integrity: sha512-Uh0Sz9gdUuz538nvkPiyv1DZRX9+D15EKDtnQP5rYVAzM/dnYk3P8cg73jcxyOitPgT3mE3OVj7ky7sibzHWkw==} resolution: {integrity: sha512-Uh0Sz9gdUuz538nvkPiyv1DZRX9+D15EKDtnQP5rYVAzM/dnYk3P8cg73jcxyOitPgT3mE3OVj7ky7sibzHWkw==}
@ -2710,7 +2695,6 @@ packages:
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
'@smithy/util-hex-encoding': 3.0.0 '@smithy/util-hex-encoding': 3.0.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/eventstream-serde-browser@3.0.11: /@smithy/eventstream-serde-browser@3.0.11:
resolution: {integrity: sha512-Pd1Wnq3CQ/v2SxRifDUihvpXzirJYbbtXfEnnLV/z0OGCTx/btVX74P86IgrZkjOydOASBGXdPpupYQI+iO/6A==} resolution: {integrity: sha512-Pd1Wnq3CQ/v2SxRifDUihvpXzirJYbbtXfEnnLV/z0OGCTx/btVX74P86IgrZkjOydOASBGXdPpupYQI+iO/6A==}
@ -2719,7 +2703,6 @@ packages:
'@smithy/eventstream-serde-universal': 3.0.10 '@smithy/eventstream-serde-universal': 3.0.10
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/eventstream-serde-config-resolver@3.0.8: /@smithy/eventstream-serde-config-resolver@3.0.8:
resolution: {integrity: sha512-zkFIG2i1BLbfoGQnf1qEeMqX0h5qAznzaZmMVNnvPZz9J5AWBPkOMckZWPedGUPcVITacwIdQXoPcdIQq5FRcg==} resolution: {integrity: sha512-zkFIG2i1BLbfoGQnf1qEeMqX0h5qAznzaZmMVNnvPZz9J5AWBPkOMckZWPedGUPcVITacwIdQXoPcdIQq5FRcg==}
@ -2727,7 +2710,6 @@ packages:
dependencies: dependencies:
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/eventstream-serde-node@3.0.10: /@smithy/eventstream-serde-node@3.0.10:
resolution: {integrity: sha512-hjpU1tIsJ9qpcoZq9zGHBJPBOeBGYt+n8vfhDwnITPhEre6APrvqq/y3XMDEGUT2cWQ4ramNqBPRbx3qn55rhw==} resolution: {integrity: sha512-hjpU1tIsJ9qpcoZq9zGHBJPBOeBGYt+n8vfhDwnITPhEre6APrvqq/y3XMDEGUT2cWQ4ramNqBPRbx3qn55rhw==}
@ -2736,7 +2718,6 @@ packages:
'@smithy/eventstream-serde-universal': 3.0.10 '@smithy/eventstream-serde-universal': 3.0.10
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/eventstream-serde-universal@3.0.10: /@smithy/eventstream-serde-universal@3.0.10:
resolution: {integrity: sha512-ewG1GHbbqsFZ4asaq40KmxCmXO+AFSM1b+DcO2C03dyJj/ZH71CiTg853FSE/3SHK9q3jiYQIFjlGSwfxQ9kww==} resolution: {integrity: sha512-ewG1GHbbqsFZ4asaq40KmxCmXO+AFSM1b+DcO2C03dyJj/ZH71CiTg853FSE/3SHK9q3jiYQIFjlGSwfxQ9kww==}
@ -2745,7 +2726,6 @@ packages:
'@smithy/eventstream-codec': 3.1.7 '@smithy/eventstream-codec': 3.1.7
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/fetch-http-handler@3.2.9: /@smithy/fetch-http-handler@3.2.9:
resolution: {integrity: sha512-hYNVQOqhFQ6vOpenifFME546f0GfJn2OiQ3M0FDmuUu8V/Uiwy2wej7ZXxFBNqdx0R5DZAqWM1l6VRhGz8oE6A==} resolution: {integrity: sha512-hYNVQOqhFQ6vOpenifFME546f0GfJn2OiQ3M0FDmuUu8V/Uiwy2wej7ZXxFBNqdx0R5DZAqWM1l6VRhGz8oE6A==}
@ -2772,7 +2752,6 @@ packages:
'@smithy/chunked-blob-reader-native': 3.0.1 '@smithy/chunked-blob-reader-native': 3.0.1
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/hash-node@3.0.8: /@smithy/hash-node@3.0.8:
resolution: {integrity: sha512-tlNQYbfpWXHimHqrvgo14DrMAgUBua/cNoz9fMYcDmYej7MAmUcjav/QKQbFc3NrcPxeJ7QClER4tWZmfwoPng==} resolution: {integrity: sha512-tlNQYbfpWXHimHqrvgo14DrMAgUBua/cNoz9fMYcDmYej7MAmUcjav/QKQbFc3NrcPxeJ7QClER4tWZmfwoPng==}
@ -2790,7 +2769,6 @@ packages:
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
'@smithy/util-utf8': 3.0.0 '@smithy/util-utf8': 3.0.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/invalid-dependency@3.0.8: /@smithy/invalid-dependency@3.0.8:
resolution: {integrity: sha512-7Qynk6NWtTQhnGTTZwks++nJhQ1O54Mzi7fz4PqZOiYXb4Z1Flpb2yRvdALoggTS8xjtohWUM+RygOtB30YL3Q==} resolution: {integrity: sha512-7Qynk6NWtTQhnGTTZwks++nJhQ1O54Mzi7fz4PqZOiYXb4Z1Flpb2yRvdALoggTS8xjtohWUM+RygOtB30YL3Q==}
@ -2816,7 +2794,6 @@ packages:
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
'@smithy/util-utf8': 3.0.0 '@smithy/util-utf8': 3.0.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@smithy/middleware-content-length@3.0.10: /@smithy/middleware-content-length@3.0.10:
resolution: {integrity: sha512-T4dIdCs1d/+/qMpwhJ1DzOhxCZjZHbHazEPJWdB4GDi2HjIZllVzeBEcdJUN0fomV8DURsgOyrbEUzg3vzTaOg==} resolution: {integrity: sha512-T4dIdCs1d/+/qMpwhJ1DzOhxCZjZHbHazEPJWdB4GDi2HjIZllVzeBEcdJUN0fomV8DURsgOyrbEUzg3vzTaOg==}
@ -3096,7 +3073,6 @@ packages:
'@smithy/abort-controller': 3.1.6 '@smithy/abort-controller': 3.1.6
'@smithy/types': 3.6.0 '@smithy/types': 3.6.0
tslib: 2.8.1 tslib: 2.8.1
dev: false
/@socket.io/component-emitter@3.1.2: /@socket.io/component-emitter@3.1.2:
resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==}
@ -3592,8 +3568,8 @@ packages:
errorstacks: 2.4.1 errorstacks: 2.4.1
dev: true dev: true
/@web/dev-server-core@0.7.3: /@web/dev-server-core@0.7.4:
resolution: {integrity: sha512-GS+Ok6HiqNZOsw2oEv5V2OISZ2s/6icJodyGjUuD3RChr0G5HiESbKf2K8mZV4shTz9sRC9KSQf8qvno2gPKrQ==} resolution: {integrity: sha512-nHSNrJ1J9GjmSceKNHpWRMjvpfE2NTV9EYUffPIr7j0sIV59gK7NI/4+9slotJ/ODXw0+e1gSeJshTOhjjVNxQ==}
engines: {node: '>=18.0.0'} engines: {node: '>=18.0.0'}
dependencies: dependencies:
'@types/koa': 2.15.0 '@types/koa': 2.15.0
@ -3652,7 +3628,7 @@ packages:
'@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-lib-coverage': 2.0.6
'@types/istanbul-reports': 3.0.4 '@types/istanbul-reports': 3.0.4
'@web/browser-logs': 0.4.0 '@web/browser-logs': 0.4.0
'@web/dev-server-core': 0.7.3 '@web/dev-server-core': 0.7.4
chokidar: 4.0.1 chokidar: 4.0.1
cli-cursor: 3.1.0 cli-cursor: 3.1.0
co-body: 6.2.0 co-body: 6.2.0

View File

@ -1,4 +1,4 @@
```markdown ````markdown
# @push.rocks/smarts3 # @push.rocks/smarts3
A Node.js TypeScript package to create a local S3 endpoint for development and testing using mapped local directories, simulating AWS S3. A Node.js TypeScript package to create a local S3 endpoint for development and testing using mapped local directories, simulating AWS S3.
@ -10,6 +10,7 @@ To integrate `@push.rocks/smarts3` with your project, you need to install it via
```sh ```sh
npm install @push.rocks/smarts3 --save npm install @push.rocks/smarts3 --save
``` ```
````
This command will add `@push.rocks/smarts3` as a dependency in your project's `package.json` file and download the package into the `node_modules` directory. This command will add `@push.rocks/smarts3` as a dependency in your project's `package.json` file and download the package into the `node_modules` directory.
@ -70,6 +71,7 @@ startServer().catch(console.error);
``` ```
**Parameters:** **Parameters:**
- **Port**: Specify the port for the local S3 server. Defaults to `3000`. - **Port**: Specify the port for the local S3 server. Defaults to `3000`.
- **CleanSlate**: If `true`, clears the storage directory each time the server starts, providing a fresh test state. - **CleanSlate**: If `true`, clears the storage directory each time the server starts, providing a fresh test state.
@ -95,7 +97,12 @@ Uploading files to a bucket uses the `SmartBucket` module, part of the `@push.ro
```typescript ```typescript
import { SmartBucket } from '@push.rocks/smartbucket'; import { SmartBucket } from '@push.rocks/smartbucket';
async function uploadFile(smarts3Instance: Smarts3, bucketName: string, filePath: string, fileContent: string) { async function uploadFile(
smarts3Instance: Smarts3,
bucketName: string,
filePath: string,
fileContent: string,
) {
const s3Descriptor = await smarts3Instance.getS3Descriptor(); const s3Descriptor = await smarts3Instance.getS3Descriptor();
const smartbucketInstance = new SmartBucket(s3Descriptor); const smartbucketInstance = new SmartBucket(s3Descriptor);
const bucket = await smartbucketInstance.getBucket(bucketName); const bucket = await smartbucketInstance.getBucket(bucketName);
@ -163,7 +170,6 @@ startServer()
#### Development and Testing #### Development and Testing
1. **Feature Development:** Use `@push.rocks/smarts3` to simulate file upload endpoints, ensuring your application handles file operations correctly before going live. 1. **Feature Development:** Use `@push.rocks/smarts3` to simulate file upload endpoints, ensuring your application handles file operations correctly before going live.
2. **Continuous Integration/Continuous Deployment (CI/CD):** Integrate with CI/CD pipelines to automatically test file interactions. 2. **Continuous Integration/Continuous Deployment (CI/CD):** Integrate with CI/CD pipelines to automatically test file interactions.
3. **Data Migration Testing:** Simulate data migrations between buckets to perfect processes before implementation on actual S3. 3. **Data Migration Testing:** Simulate data migrations between buckets to perfect processes before implementation on actual S3.
@ -189,11 +195,12 @@ startServer()
``` ```
In this guide, we walked through setting up and fully utilizing the `@push.rocks/smarts3` package for local development and testing. The package simulates AWS S3 operations, reducing dependency on remote services and allowing efficient development iteration cycles. By implementing the practices and scripts shared here, you can ensure a seamless and productive development experience using the local S3 simulation capabilities of `@push.rocks/smarts3`. In this guide, we walked through setting up and fully utilizing the `@push.rocks/smarts3` package for local development and testing. The package simulates AWS S3 operations, reducing dependency on remote services and allowing efficient development iteration cycles. By implementing the practices and scripts shared here, you can ensure a seamless and productive development experience using the local S3 simulation capabilities of `@push.rocks/smarts3`.
``` ```
## License and Legal Information ## License and Legal Information
This repository contains open-source code that is licensed under the MIT License. A copy of the MIT License can be found in the [license](license) file within this repository. This repository contains open-source code that is licensed under the MIT License. A copy of the MIT License can be found in the [license](license) file within this repository.
**Please note:** The MIT License does not grant permission to use the trade names, trademarks, service marks, or product names of the project, except as required for reasonable and customary use in describing the origin of the work and reproducing the content of the NOTICE file. **Please note:** The MIT License does not grant permission to use the trade names, trademarks, service marks, or product names of the project, except as required for reasonable and customary use in describing the origin of the work and reproducing the content of the NOTICE file.
@ -203,9 +210,10 @@ This project is owned and maintained by Task Venture Capital GmbH. The names and
### Company Information ### Company Information
Task Venture Capital GmbH Task Venture Capital GmbH
Registered at District court Bremen HRB 35230 HB, Germany Registered at District court Bremen HRB 35230 HB, Germany
For any legal inquiries or if you require further information, please contact us via email at hello@task.vc. For any legal inquiries or if you require further information, please contact us via email at hello@task.vc.
By using this repository, you acknowledge that you have read this section, agree to comply with its terms, and understand that the licensing of the code does not imply endorsement by Task Venture Capital GmbH of any derivative works. By using this repository, you acknowledge that you have read this section, agree to comply with its terms, and understand that the licensing of the code does not imply endorsement by Task Venture Capital GmbH of any derivative works.
```

View File

@ -22,7 +22,7 @@ tap.test('should be able to access buckets', async () => {
const baseDirectory = await bucket.getBaseDirectory(); const baseDirectory = await bucket.getBaseDirectory();
await baseDirectory.fastPut({ await baseDirectory.fastPut({
path: 'subdir/hello.txt', path: 'subdir/hello.txt',
contents: 'hi there!' contents: 'hi there!',
}); });
}); });

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@push.rocks/smarts3', name: '@push.rocks/smarts3',
version: '2.2.3', version: '2.2.4',
description: 'A Node.js TypeScript package to create a local S3 endpoint for simulating AWS S3 operations using mapped local directories for development and testing purposes.' description: 'A Node.js TypeScript package to create a local S3 endpoint for simulating AWS S3 operations using mapped local directories for development and testing purposes.'
} }

View File

@ -15,7 +15,6 @@ import * as tsclass from '@tsclass/tsclass';
export { tsclass }; export { tsclass };
// thirdparty scope // thirdparty scope
import s3rver from 's3rver'; import s3rver from 's3rver';

View File

@ -6,9 +6,11 @@
"module": "NodeNext", "module": "NodeNext",
"moduleResolution": "NodeNext", "moduleResolution": "NodeNext",
"esModuleInterop": true, "esModuleInterop": true,
"verbatimModuleSyntax": true "verbatimModuleSyntax": true,
"baseUrl": ".",
"paths": {}
}, },
"exclude": [ "exclude": [
"dist_*/**/*.d.ts" "dist_*/**/*.d.ts"
] ]
} }