Refactor code structure for improved readability and maintainability

This commit is contained in:
xiongxiao
2026-03-20 18:13:15 +08:00
committed by cnb
parent 2000b474a0
commit 8184994b2c
2 changed files with 162 additions and 148 deletions

View File

@@ -44,7 +44,7 @@
"@kevisual/ai": "^0.0.28",
"@kevisual/auth": "^2.0.3",
"@kevisual/js-filter": "^0.0.6",
"@kevisual/query": "^0.0.53",
"@kevisual/query": "^0.0.55",
"@types/busboy": "^1.5.4",
"@types/send": "^1.2.1",
"@types/ws": "^8.18.1",
@@ -59,19 +59,19 @@
},
"devDependencies": {
"@ai-sdk/openai-compatible": "^2.0.35",
"@aws-sdk/client-s3": "^3.1010.0",
"@aws-sdk/client-s3": "^3.1013.0",
"@kevisual/api": "^0.0.64",
"@kevisual/cnb": "^0.0.52",
"@kevisual/cnb": "^0.0.56",
"@kevisual/context": "^0.0.8",
"@kevisual/local-app-manager": "0.1.32",
"@kevisual/logger": "^0.0.4",
"@kevisual/oss": "0.0.20",
"@kevisual/permission": "^0.0.4",
"@kevisual/router": "0.1.3",
"@kevisual/router": "0.1.6",
"@kevisual/types": "^0.0.12",
"@kevisual/use-config": "^1.0.30",
"@types/archiver": "^7.0.0",
"@types/bun": "^1.3.10",
"@types/bun": "^1.3.11",
"@types/crypto-js": "^4.2.2",
"@types/jsonwebtoken": "^9.0.10",
"@types/node": "^25.5.0",
@@ -80,13 +80,13 @@
"@types/xml2js": "^0.4.14",
"ai": "^6.0.116",
"archiver": "^7.0.1",
"convex": "^1.33.1",
"convex": "^1.34.0",
"crypto-js": "^4.2.0",
"dayjs": "^1.11.20",
"dotenv": "^17.3.1",
"drizzle-zod": "^0.8.3",
"es-toolkit": "^1.45.1",
"ioredis": "^5.10.0",
"ioredis": "^5.10.1",
"jsonwebtoken": "^9.0.3",
"lunar": "^2.0.0",
"nanoid": "^5.1.7",

296
pnpm-lock.yaml generated
View File

@@ -23,8 +23,8 @@ importers:
specifier: ^0.0.6
version: 0.0.6
'@kevisual/query':
specifier: ^0.0.53
version: 0.0.53
specifier: ^0.0.55
version: 0.0.55
'@types/busboy':
specifier: ^1.5.4
version: 1.5.4
@@ -45,7 +45,7 @@ importers:
version: 0.31.10
drizzle-orm:
specifier: ^0.45.1
version: 0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.10)(pg@8.20.0)
version: 0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.11)(pg@8.20.0)
eventemitter3:
specifier: ^5.0.4
version: 5.0.4
@@ -63,14 +63,14 @@ importers:
specifier: ^2.0.35
version: 2.0.35(zod@4.3.6)
'@aws-sdk/client-s3':
specifier: ^3.1010.0
version: 3.1010.0
specifier: ^3.1013.0
version: 3.1013.0
'@kevisual/api':
specifier: ^0.0.64
version: 0.0.64(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
'@kevisual/cnb':
specifier: ^0.0.52
version: 0.0.52(dotenv@17.3.1)(ioredis@5.10.0)
specifier: ^0.0.56
version: 0.0.56(dotenv@17.3.1)(ioredis@5.10.0)
'@kevisual/context':
specifier: ^0.0.8
version: 0.0.8
@@ -87,8 +87,8 @@ importers:
specifier: ^0.0.4
version: 0.0.4
'@kevisual/router':
specifier: 0.1.3
version: 0.1.3
specifier: 0.1.6
version: 0.1.6
'@kevisual/types':
specifier: ^0.0.12
version: 0.0.12
@@ -99,8 +99,8 @@ importers:
specifier: ^7.0.0
version: 7.0.0
'@types/bun':
specifier: ^1.3.10
version: 1.3.10
specifier: ^1.3.11
version: 1.3.11
'@types/crypto-js':
specifier: ^4.2.2
version: 4.2.2
@@ -126,8 +126,8 @@ importers:
specifier: ^7.0.1
version: 7.0.1
convex:
specifier: ^1.33.1
version: 1.33.1(react@19.2.4)
specifier: ^1.34.0
version: 1.34.0(react@19.2.4)
crypto-js:
specifier: ^4.2.0
version: 4.2.0
@@ -139,7 +139,7 @@ importers:
version: 17.3.1
drizzle-zod:
specifier: ^0.8.3
version: 0.8.3(drizzle-orm@0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.10)(pg@8.20.0))(zod@4.3.6)
version: 0.8.3(drizzle-orm@0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.11)(pg@8.20.0))(zod@4.3.6)
es-toolkit:
specifier: ^1.45.1
version: 1.45.1
@@ -258,48 +258,48 @@ packages:
'@aws-crypto/util@5.2.0':
resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==}
'@aws-sdk/client-s3@3.1010.0':
resolution: {integrity: sha512-XUqXFrn/FGLLzO5OXu9iAtt492kj9Z7Yk8b0iPFxeJoIhaa61YOgR84chOExvnjm2+JTYyGNZiVPmgnFB3jxXA==}
'@aws-sdk/client-s3@3.1013.0':
resolution: {integrity: sha512-vFdyRyRatF+xP9Fi+4alZkmzZadqOAM34Pm6SUZsYtumNrWkgMc/pFWITnsq6eltM8qcV/vcinQ1ZBXWm/PlKg==}
engines: {node: '>=20.0.0'}
'@aws-sdk/core@3.973.20':
resolution: {integrity: sha512-i3GuX+lowD892F3IuJf8o6AbyDupMTdyTxQrCJGcn71ni5hTZ82L4nQhcdumxZ7XPJRJJVHS/CR3uYOIIs0PVA==}
'@aws-sdk/core@3.973.22':
resolution: {integrity: sha512-lY6g5L95jBNgOUitUhfV2N/W+i08jHEl3xuLODYSQH5Sf50V+LkVYBSyZRLtv2RyuXZXiV7yQ+acpswK1tlrOA==}
engines: {node: '>=20.0.0'}
'@aws-sdk/crc64-nvme@3.972.5':
resolution: {integrity: sha512-2VbTstbjKdT+yKi8m7b3a9CiVac+pL/IY2PHJwsaGkkHmuuqkJZIErPck1h6P3T9ghQMLSdMPyW6Qp7Di5swFg==}
engines: {node: '>=20.0.0'}
'@aws-sdk/credential-provider-env@3.972.18':
resolution: {integrity: sha512-X0B8AlQY507i5DwjLByeU2Af4ARsl9Vr84koDcXCbAkplmU+1xBFWxEPrWRAoh56waBne/yJqEloSwvRf4x6XA==}
'@aws-sdk/credential-provider-env@3.972.20':
resolution: {integrity: sha512-vI0QN96DFx3g9AunfOWF3CS4cMkqFiR/WM/FyP9QHr5rZ2dKPkYwP3tCgAOvGuu9CXI7dC1vU2FVUuZ+tfpNvQ==}
engines: {node: '>=20.0.0'}
'@aws-sdk/credential-provider-http@3.972.20':
resolution: {integrity: sha512-ey9Lelj001+oOfrbKmS6R2CJAiXX7QKY4Vj9VJv6L2eE6/VjD8DocHIoYqztTm70xDLR4E1jYPTKfIui+eRNDA==}
'@aws-sdk/credential-provider-http@3.972.22':
resolution: {integrity: sha512-aS/81smalpe7XDnuQfOq4LIPuaV2PRKU2aMTrHcqO5BD4HwO5kESOHNcec2AYfBtLtIDqgF6RXisgBnfK/jt0w==}
engines: {node: '>=20.0.0'}
'@aws-sdk/credential-provider-ini@3.972.20':
resolution: {integrity: sha512-5flXSnKHMloObNF+9N0cupKegnH1Z37cdVlpETVgx8/rAhCe+VNlkcZH3HDg2SDn9bI765S+rhNPXGDJJPfbtA==}
'@aws-sdk/credential-provider-ini@3.972.22':
resolution: {integrity: sha512-rpF8fBT0LllMDp78s62aL2A/8MaccjyJ0ORzqu+ZADeECLSrrCWIeeXsuRam+pxiAMkI1uIyDZJmgLGdadkPXw==}
engines: {node: '>=20.0.0'}
'@aws-sdk/credential-provider-login@3.972.20':
resolution: {integrity: sha512-gEWo54nfqp2jABMu6HNsjVC4hDLpg9HC8IKSJnp0kqWtxIJYHTmiLSsIfI4ScQjxEwpB+jOOH8dOLax1+hy/Hw==}
'@aws-sdk/credential-provider-login@3.972.22':
resolution: {integrity: sha512-u33CO9zeNznlVSg9tWTCRYxaGkqr1ufU6qeClpmzAabXZa8RZxQoVXxL5T53oZJFzQYj+FImORCSsi7H7B77gQ==}
engines: {node: '>=20.0.0'}
'@aws-sdk/credential-provider-node@3.972.21':
resolution: {integrity: sha512-hah8if3/B/Q+LBYN5FukyQ1Mym6PLPDsBOBsIgNEYD6wLyZg0UmUF/OKIVC3nX9XH8TfTPuITK+7N/jenVACWA==}
'@aws-sdk/credential-provider-node@3.972.23':
resolution: {integrity: sha512-U8tyLbLOZItuVWTH0ay9gWo4xMqZwqQbg1oMzdU4FQSkTpqXemm4X0uoKBR6llqAStgBp30ziKFJHTA43l4qMw==}
engines: {node: '>=20.0.0'}
'@aws-sdk/credential-provider-process@3.972.18':
resolution: {integrity: sha512-Tpl7SRaPoOLT32jbTWchPsn52hYYgJ0kpiFgnwk8pxTANQdUymVSZkzFvv1+oOgZm1CrbQUP9MBeoMZ9IzLZjA==}
'@aws-sdk/credential-provider-process@3.972.20':
resolution: {integrity: sha512-QRfk7GbA4/HDRjhP3QYR6QBr/QKreVoOzvvlRHnOuGgYJkeoPgPY3LAI1kK1ZMgZ4hH9KiGp757/ntol+INAig==}
engines: {node: '>=20.0.0'}
'@aws-sdk/credential-provider-sso@3.972.20':
resolution: {integrity: sha512-p+R+PYR5Z7Gjqf/6pvbCnzEHcqPCpLzR7Yf127HjJ6EAb4hUcD+qsNRnuww1sB/RmSeCLxyay8FMyqREw4p1RA==}
'@aws-sdk/credential-provider-sso@3.972.22':
resolution: {integrity: sha512-4vqlSaUbBj4aNPVKfB6yXuIQ2Z2mvLfIGba2OzzF6zUkN437/PGWsxBU2F8QPSFHti6seckvyCXidU3H+R8NvQ==}
engines: {node: '>=20.0.0'}
'@aws-sdk/credential-provider-web-identity@3.972.20':
resolution: {integrity: sha512-rWCmh8o7QY4CsUj63qopzMzkDq/yPpkrpb+CnjBEFSOg/02T/we7sSTVg4QsDiVS9uwZ8VyONhq98qt+pIh3KA==}
'@aws-sdk/credential-provider-web-identity@3.972.22':
resolution: {integrity: sha512-/wN1CYg2rVLhW8/jLxMWacQrkpaynnL+4j/Z+e6X1PfoE6NiC0BeOw3i0JmtZrKun85wNV5GmspvuWJihfeeUw==}
engines: {node: '>=20.0.0'}
'@aws-sdk/middleware-bucket-endpoint@3.972.8':
@@ -310,8 +310,8 @@ packages:
resolution: {integrity: sha512-5DTBTiotEES1e2jOHAq//zyzCjeMB78lEHd35u15qnrid4Nxm7diqIf9fQQ3Ov0ChH1V3Vvt13thOnrACmfGVQ==}
engines: {node: '>=20.0.0'}
'@aws-sdk/middleware-flexible-checksums@3.974.0':
resolution: {integrity: sha512-BmdDjqvnuYaC4SY7ypHLXfCSsGYGUZkjCLSZyUAAYn1YT28vbNMJNDwhlfkvvE+hQHG5RJDlEmYuvBxcB9jX1g==}
'@aws-sdk/middleware-flexible-checksums@3.974.2':
resolution: {integrity: sha512-4soN/N4R6ptdnHw7hXPVDZMIIL+vhN8rwtLdDyS0uD7ExhadtJzolTBIM5eKSkbw5uBEbIwtJc8HCG2NM6tN/g==}
engines: {node: '>=20.0.0'}
'@aws-sdk/middleware-host-header@3.972.8':
@@ -330,32 +330,32 @@ packages:
resolution: {integrity: sha512-BnnvYs2ZEpdlmZ2PNlV2ZyQ8j8AEkMTjN79y/YA475ER1ByFYrkVR85qmhni8oeTaJcDqbx364wDpitDAA/wCA==}
engines: {node: '>=20.0.0'}
'@aws-sdk/middleware-sdk-s3@3.972.20':
resolution: {integrity: sha512-yhva/xL5H4tWQgsBjwV+RRD0ByCzg0TcByDCLp3GXdn/wlyRNfy8zsswDtCvr1WSKQkSQYlyEzPuWkJG0f5HvQ==}
'@aws-sdk/middleware-sdk-s3@3.972.22':
resolution: {integrity: sha512-dkUcRxF4rVpPbyHpxjCApGK6b7JpnSeo7tDoNakpRKmiLMCqgy4tlGBgeEYJnZgLrA4xc5jVKuXgvgqKqU18Kw==}
engines: {node: '>=20.0.0'}
'@aws-sdk/middleware-ssec@3.972.8':
resolution: {integrity: sha512-wqlK0yO/TxEC2UsY9wIlqeeutF6jjLe0f96Pbm40XscTo57nImUk9lBcw0dPgsm0sppFtAkSlDrfpK+pC30Wqw==}
engines: {node: '>=20.0.0'}
'@aws-sdk/middleware-user-agent@3.972.21':
resolution: {integrity: sha512-62XRl1GDYPpkt7cx1AX1SPy9wgNE9Iw/NPuurJu4lmhCWS7sGKO+kS53TQ8eRmIxy3skmvNInnk0ZbWrU5Dpyg==}
'@aws-sdk/middleware-user-agent@3.972.23':
resolution: {integrity: sha512-HQu8QoqGZZTvg0Spl9H39QTsSMFwgu+8yz/QGKndXFLk9FZMiCiIgBCVlTVKMDvVbgqIzD9ig+/HmXsIL2Rb+g==}
engines: {node: '>=20.0.0'}
'@aws-sdk/nested-clients@3.996.10':
resolution: {integrity: sha512-SlDol5Z+C7Ivnc2rKGqiqfSUmUZzY1qHfVs9myt/nxVwswgfpjdKahyTzLTx802Zfq0NFRs7AejwKzzzl5Co2w==}
'@aws-sdk/nested-clients@3.996.12':
resolution: {integrity: sha512-KLdQGJPSm98uLINolQ0Tol8OAbk7g0Y7zplHJ1K83vbMIH13aoCvR6Tho66xueW4l4aZlEgVGLWBnD8ifUMsGQ==}
engines: {node: '>=20.0.0'}
'@aws-sdk/region-config-resolver@3.972.8':
resolution: {integrity: sha512-1eD4uhTDeambO/PNIDVG19A6+v4NdD7xzwLHDutHsUqz0B+i661MwQB2eYO4/crcCvCiQG4SRm1k81k54FEIvw==}
engines: {node: '>=20.0.0'}
'@aws-sdk/signature-v4-multi-region@3.996.8':
resolution: {integrity: sha512-n1qYFD+tbqZuyskVaxUE+t10AUz9g3qzDw3Tp6QZDKmqsjfDmZBd4GIk2EKJJNtcCBtE5YiUjDYA+3djFAFBBg==}
'@aws-sdk/signature-v4-multi-region@3.996.10':
resolution: {integrity: sha512-yJSbFTedh1McfqXa9wZzjchqQ2puq5PI/qRz5kUjg2UXS5mO4MBYBbeXaZ2rp/h+ZbkcYEdo4Qsiah9psyoxrA==}
engines: {node: '>=20.0.0'}
'@aws-sdk/token-providers@3.1009.0':
resolution: {integrity: sha512-KCPLuTqN9u0Rr38Arln78fRG9KXpzsPWmof+PZzfAHMMQq2QED6YjQrkrfiH7PDefLWEposY1o4/eGwrmKA4JA==}
'@aws-sdk/token-providers@3.1013.0':
resolution: {integrity: sha512-IL1c54UvbuERrs9oLm5rvkzMciwhhpn1FL0SlC3XUMoLlFhdBsWJgQKK8O5fsQLxbFVqjbjFx9OBkrn44X9PHw==}
engines: {node: '>=20.0.0'}
'@aws-sdk/types@3.973.6':
@@ -377,8 +377,8 @@ packages:
'@aws-sdk/util-user-agent-browser@3.972.8':
resolution: {integrity: sha512-B3KGXJviV2u6Cdw2SDY2aDhoJkVfY/Q/Trwk2CMSkikE1Oi6gRzxhvhIfiRpHfmIsAhV4EA54TVEX8K6CbHbkA==}
'@aws-sdk/util-user-agent-node@3.973.7':
resolution: {integrity: sha512-Hz6EZMUAEzqUd7e+vZ9LE7mn+5gMbxltXy18v+YSFY+9LBJz15wkNZvw5JqfX3z0FS9n3bgUtz3L5rAsfh4YlA==}
'@aws-sdk/util-user-agent-node@3.973.9':
resolution: {integrity: sha512-jeFqqp8KD/P5O+qeKxyGeu7WEVIZFNprnkaDjGmBOjwxYwafCBhpxTgV1TlW6L8e76Vh/siNylNmN/OmSIFBUQ==}
engines: {node: '>=20.0.0'}
peerDependencies:
aws-crt: '>=1.0.0'
@@ -386,8 +386,8 @@ packages:
aws-crt:
optional: true
'@aws-sdk/xml-builder@3.972.11':
resolution: {integrity: sha512-iitV/gZKQMvY9d7ovmyFnFuTHbBAtrmLnvaSb/3X8vOKyevwtpmEtyc8AdhVWZe0pI/1GsHxlEvQeOePFzy7KQ==}
'@aws-sdk/xml-builder@3.972.14':
resolution: {integrity: sha512-G/Yd8Bnnyh8QrqLf8jWJbixEnScUFW24e/wOBGYdw1Cl4r80KX/DvHyM2GVZ2vTp7J4gTEr8IXJlTadA8+UfuQ==}
engines: {node: '>=20.0.0'}
'@aws/lambda-invoke-store@0.2.3':
@@ -865,8 +865,8 @@ packages:
'@kevisual/auth@2.0.3':
resolution: {integrity: sha512-4xpijaIhlCTr/DlJaV/gmkCQeg45EO1yxWpRvUX+1jCdVbuxSR0wZrF0SD9oybnjmKWMKDNPLsXyduFjMGcItA==}
'@kevisual/cnb@0.0.52':
resolution: {integrity: sha512-1SoL4Er7r75NlejeoViuf0+dqXRmmd1PCI3lHCDsEoEj0WKpwxEaSUE0ubdSbHz2zDRKwiqkbY8aTS2Pj4cZ7Q==}
'@kevisual/cnb@0.0.56':
resolution: {integrity: sha512-Pa70TI/zVC7DOSecrRztB8QrRlf+iuFCGDH/O3YEQw/eMoyDdBtIxR3Ewnsu+n+BN0od6jcsSOhDW6kzqeX8cA==}
hasBin: true
'@kevisual/context@0.0.8':
@@ -893,12 +893,15 @@ packages:
'@kevisual/query@0.0.53':
resolution: {integrity: sha512-PAhpCLBr0emz0lGNlTVHMbJiC5wrtGLbInPddRzgKE35fiyNt+SWSsUWABiD0DeNrLN/OxWyAFobt880Z/e5MQ==}
'@kevisual/router@0.1.3':
resolution: {integrity: sha512-vFQ3ZqyKjKAyaizNaAUG0GVhUc2+trpAM9SwiFT3bL09U8NPlViV21wUNU91qDZyQYr/UMnIWkwu0ywaaimATQ==}
'@kevisual/query@0.0.55':
resolution: {integrity: sha512-fG+ubxrJfSIKVIq+P6zCh7ojkRD2CKHRLL7TzGtwWldPrbQc+yvOuMUqRxUiuLLiudS3SkpCwDhS9IH5ne+CEA==}
'@kevisual/router@0.1.4':
resolution: {integrity: sha512-/Gz3N4KAyCRQmy+FgtK8OEhainYxBnck97LSKeazHLzQ5lOoQs46XCGDYR/AjrCuDTuUrmfD/l1u9pFe2rjN8Q==}
'@kevisual/router@0.1.6':
resolution: {integrity: sha512-uQYxDd4j0ZKuuPXduSMSvckjEKi99hVRp7vz5AUFVDVbEBmNQBgDGbwmz9+X/DR/Gjx++x3m8XvYcAwuEzPOKw==}
'@kevisual/types@0.0.12':
resolution: {integrity: sha512-zJXH2dosir3jVrQ6QG4i0+iLQeT9gJ3H+cKXs8ReWboxBSYzUZO78XssVeVrFPsJ33iaAqo4q3DWbSS1dWGn7Q==}
@@ -1208,8 +1211,8 @@ packages:
'@types/archiver@7.0.0':
resolution: {integrity: sha512-/3vwGwx9n+mCQdYZ2IKGGHEFL30I96UgBlk8EtRDDFQ9uxM1l4O5Ci6r00EMAkiDaTqD9DQ6nVrWRICnBPtzzg==}
'@types/bun@1.3.10':
resolution: {integrity: sha512-0+rlrUrOrTSskibryHbvQkDOWRJwJZqZlxrUs1u4oOoTln8+WIXBPmAuCF35SWB2z4Zl3E84Nl/D0P7803nigQ==}
'@types/bun@1.3.11':
resolution: {integrity: sha512-5vPne5QvtpjGpsGYXiFyycfpDF2ECyPcTSsFBMa0fraoxiQyMJ3SmuQIGhzPg2WJuWxVBoxWJ2kClYTcw/4fAg==}
'@types/busboy@1.5.4':
resolution: {integrity: sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==}
@@ -1382,8 +1385,8 @@ packages:
bullmq@5.71.0:
resolution: {integrity: sha512-aeNWh4drsafSKnAJeiNH/nZP/5O8ZdtdMbnOPZmpjXj7NZUP5YC901U3bIH41iZValm7d1i3c34ojv7q31m30w==}
bun-types@1.3.10:
resolution: {integrity: sha512-tcpfCCl6XWo6nCVnpcVrxQ+9AYN1iqMIzgrSKYMB/fjLtV2eyAVEg7AxQJuCq/26R6HpKWykQXuSOq/21RYcbg==}
bun-types@1.3.11:
resolution: {integrity: sha512-1KGPpoxQWl9f6wcZh57LvrPIInQMn2TQ7jsgxqpRzg+l0QPOFvJVH7HmvHo/AiPgwXy+/Thf6Ov3EdVn1vOabg==}
busboy@1.6.0:
resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==}
@@ -1429,8 +1432,8 @@ packages:
resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==}
engines: {node: '>= 14'}
convex@1.33.1:
resolution: {integrity: sha512-mRhR1XqZPLhgJsUepecM/kOgQVRCWKJtHHtyEX/XYY4zmzfItG0D1GNh5fjNEkuO5+72X4PCkzbEFA6327rxog==}
convex@1.34.0:
resolution: {integrity: sha512-TbC509Z4urZMChZR2aLPgalQ8gMhAYSz2VMxaYsCvba8YqB0Uxma7zWnXwRn7aEGXuA8ro5/uHgD1IJ0HhYYPg==}
engines: {node: '>=18.0.0', npm: '>=7.0.0'}
hasBin: true
peerDependencies:
@@ -1765,11 +1768,11 @@ packages:
fast-json-patch@3.1.1:
resolution: {integrity: sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==}
fast-xml-builder@1.0.0:
resolution: {integrity: sha512-fpZuDogrAgnyt9oDDz+5DBz0zgPdPZz6D4IR7iESxRXElrlGTRkHJ9eEt+SACRJwT0FNFrt71DFQIUFBJfX/uQ==}
fast-xml-builder@1.1.4:
resolution: {integrity: sha512-f2jhpN4Eccy0/Uz9csxh3Nu6q4ErKxf0XIsasomfOihuSUa3/xw6w8dnOtCDgEItQFJG8KyXPzQXzcODDrrbOg==}
fast-xml-parser@5.4.1:
resolution: {integrity: sha512-BQ30U1mKkvXQXXkAGcuyUA/GA26oEB7NzOtsxCDtyu62sjGw5QraKFhx2Em3WQNjPw9PG6MQ9yuIIgkSDfGu5A==}
fast-xml-parser@5.5.6:
resolution: {integrity: sha512-3+fdZyBRVg29n4rXP0joHthhcHdPUHaIC16cuyyd1iLsuaO6Vea36MPrxgAzbZna8lhvZeRL8Bc9GP56/J9xEw==}
hasBin: true
fclone@1.0.11:
@@ -2144,6 +2147,10 @@ packages:
path-browserify-esm@1.0.6:
resolution: {integrity: sha512-9nUwYvvu/yq1PYrUyYCihNWmpzacaRYF6gGbjLWErrZ4MRDWyfPN7RpE8E7tsw8eqBU/rr7mcoTXbS+Vih8uUA==}
path-expression-matcher@1.2.0:
resolution: {integrity: sha512-DwmPWeFn+tq7TiyJ2CxezCAirXjFxvaiD03npak3cRjlP9+OjTmSy1EpIrEbh+l6JgUundniloMLDQ/6VTdhLQ==}
engines: {node: '>=14.0.0'}
path-key@3.1.1:
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
engines: {node: '>=8'}
@@ -2794,29 +2801,29 @@ snapshots:
'@smithy/util-utf8': 2.3.0
tslib: 2.8.1
'@aws-sdk/client-s3@3.1010.0':
'@aws-sdk/client-s3@3.1013.0':
dependencies:
'@aws-crypto/sha1-browser': 5.2.0
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
'@aws-sdk/core': 3.973.20
'@aws-sdk/credential-provider-node': 3.972.21
'@aws-sdk/core': 3.973.22
'@aws-sdk/credential-provider-node': 3.972.23
'@aws-sdk/middleware-bucket-endpoint': 3.972.8
'@aws-sdk/middleware-expect-continue': 3.972.8
'@aws-sdk/middleware-flexible-checksums': 3.974.0
'@aws-sdk/middleware-flexible-checksums': 3.974.2
'@aws-sdk/middleware-host-header': 3.972.8
'@aws-sdk/middleware-location-constraint': 3.972.8
'@aws-sdk/middleware-logger': 3.972.8
'@aws-sdk/middleware-recursion-detection': 3.972.8
'@aws-sdk/middleware-sdk-s3': 3.972.20
'@aws-sdk/middleware-sdk-s3': 3.972.22
'@aws-sdk/middleware-ssec': 3.972.8
'@aws-sdk/middleware-user-agent': 3.972.21
'@aws-sdk/middleware-user-agent': 3.972.23
'@aws-sdk/region-config-resolver': 3.972.8
'@aws-sdk/signature-v4-multi-region': 3.996.8
'@aws-sdk/signature-v4-multi-region': 3.996.10
'@aws-sdk/types': 3.973.6
'@aws-sdk/util-endpoints': 3.996.5
'@aws-sdk/util-user-agent-browser': 3.972.8
'@aws-sdk/util-user-agent-node': 3.973.7
'@aws-sdk/util-user-agent-node': 3.973.9
'@smithy/config-resolver': 4.4.11
'@smithy/core': 3.23.12
'@smithy/eventstream-serde-browser': 4.2.12
@@ -2854,10 +2861,10 @@ snapshots:
transitivePeerDependencies:
- aws-crt
'@aws-sdk/core@3.973.20':
'@aws-sdk/core@3.973.22':
dependencies:
'@aws-sdk/types': 3.973.6
'@aws-sdk/xml-builder': 3.972.11
'@aws-sdk/xml-builder': 3.972.14
'@smithy/core': 3.23.12
'@smithy/node-config-provider': 4.3.12
'@smithy/property-provider': 4.2.12
@@ -2875,17 +2882,17 @@ snapshots:
'@smithy/types': 4.13.1
tslib: 2.8.1
'@aws-sdk/credential-provider-env@3.972.18':
'@aws-sdk/credential-provider-env@3.972.20':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/core': 3.973.22
'@aws-sdk/types': 3.973.6
'@smithy/property-provider': 4.2.12
'@smithy/types': 4.13.1
tslib: 2.8.1
'@aws-sdk/credential-provider-http@3.972.20':
'@aws-sdk/credential-provider-http@3.972.22':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/core': 3.973.22
'@aws-sdk/types': 3.973.6
'@smithy/fetch-http-handler': 5.3.15
'@smithy/node-http-handler': 4.5.0
@@ -2896,16 +2903,16 @@ snapshots:
'@smithy/util-stream': 4.5.20
tslib: 2.8.1
'@aws-sdk/credential-provider-ini@3.972.20':
'@aws-sdk/credential-provider-ini@3.972.22':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/credential-provider-env': 3.972.18
'@aws-sdk/credential-provider-http': 3.972.20
'@aws-sdk/credential-provider-login': 3.972.20
'@aws-sdk/credential-provider-process': 3.972.18
'@aws-sdk/credential-provider-sso': 3.972.20
'@aws-sdk/credential-provider-web-identity': 3.972.20
'@aws-sdk/nested-clients': 3.996.10
'@aws-sdk/core': 3.973.22
'@aws-sdk/credential-provider-env': 3.972.20
'@aws-sdk/credential-provider-http': 3.972.22
'@aws-sdk/credential-provider-login': 3.972.22
'@aws-sdk/credential-provider-process': 3.972.20
'@aws-sdk/credential-provider-sso': 3.972.22
'@aws-sdk/credential-provider-web-identity': 3.972.22
'@aws-sdk/nested-clients': 3.996.12
'@aws-sdk/types': 3.973.6
'@smithy/credential-provider-imds': 4.2.12
'@smithy/property-provider': 4.2.12
@@ -2915,10 +2922,10 @@ snapshots:
transitivePeerDependencies:
- aws-crt
'@aws-sdk/credential-provider-login@3.972.20':
'@aws-sdk/credential-provider-login@3.972.22':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/nested-clients': 3.996.10
'@aws-sdk/core': 3.973.22
'@aws-sdk/nested-clients': 3.996.12
'@aws-sdk/types': 3.973.6
'@smithy/property-provider': 4.2.12
'@smithy/protocol-http': 5.3.12
@@ -2928,14 +2935,14 @@ snapshots:
transitivePeerDependencies:
- aws-crt
'@aws-sdk/credential-provider-node@3.972.21':
'@aws-sdk/credential-provider-node@3.972.23':
dependencies:
'@aws-sdk/credential-provider-env': 3.972.18
'@aws-sdk/credential-provider-http': 3.972.20
'@aws-sdk/credential-provider-ini': 3.972.20
'@aws-sdk/credential-provider-process': 3.972.18
'@aws-sdk/credential-provider-sso': 3.972.20
'@aws-sdk/credential-provider-web-identity': 3.972.20
'@aws-sdk/credential-provider-env': 3.972.20
'@aws-sdk/credential-provider-http': 3.972.22
'@aws-sdk/credential-provider-ini': 3.972.22
'@aws-sdk/credential-provider-process': 3.972.20
'@aws-sdk/credential-provider-sso': 3.972.22
'@aws-sdk/credential-provider-web-identity': 3.972.22
'@aws-sdk/types': 3.973.6
'@smithy/credential-provider-imds': 4.2.12
'@smithy/property-provider': 4.2.12
@@ -2945,20 +2952,20 @@ snapshots:
transitivePeerDependencies:
- aws-crt
'@aws-sdk/credential-provider-process@3.972.18':
'@aws-sdk/credential-provider-process@3.972.20':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/core': 3.973.22
'@aws-sdk/types': 3.973.6
'@smithy/property-provider': 4.2.12
'@smithy/shared-ini-file-loader': 4.4.7
'@smithy/types': 4.13.1
tslib: 2.8.1
'@aws-sdk/credential-provider-sso@3.972.20':
'@aws-sdk/credential-provider-sso@3.972.22':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/nested-clients': 3.996.10
'@aws-sdk/token-providers': 3.1009.0
'@aws-sdk/core': 3.973.22
'@aws-sdk/nested-clients': 3.996.12
'@aws-sdk/token-providers': 3.1013.0
'@aws-sdk/types': 3.973.6
'@smithy/property-provider': 4.2.12
'@smithy/shared-ini-file-loader': 4.4.7
@@ -2967,10 +2974,10 @@ snapshots:
transitivePeerDependencies:
- aws-crt
'@aws-sdk/credential-provider-web-identity@3.972.20':
'@aws-sdk/credential-provider-web-identity@3.972.22':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/nested-clients': 3.996.10
'@aws-sdk/core': 3.973.22
'@aws-sdk/nested-clients': 3.996.12
'@aws-sdk/types': 3.973.6
'@smithy/property-provider': 4.2.12
'@smithy/shared-ini-file-loader': 4.4.7
@@ -2996,12 +3003,12 @@ snapshots:
'@smithy/types': 4.13.1
tslib: 2.8.1
'@aws-sdk/middleware-flexible-checksums@3.974.0':
'@aws-sdk/middleware-flexible-checksums@3.974.2':
dependencies:
'@aws-crypto/crc32': 5.2.0
'@aws-crypto/crc32c': 5.2.0
'@aws-crypto/util': 5.2.0
'@aws-sdk/core': 3.973.20
'@aws-sdk/core': 3.973.22
'@aws-sdk/crc64-nvme': 3.972.5
'@aws-sdk/types': 3.973.6
'@smithy/is-array-buffer': 4.2.2
@@ -3040,9 +3047,9 @@ snapshots:
'@smithy/types': 4.13.1
tslib: 2.8.1
'@aws-sdk/middleware-sdk-s3@3.972.20':
'@aws-sdk/middleware-sdk-s3@3.972.22':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/core': 3.973.22
'@aws-sdk/types': 3.973.6
'@aws-sdk/util-arn-parser': 3.972.3
'@smithy/core': 3.23.12
@@ -3063,9 +3070,9 @@ snapshots:
'@smithy/types': 4.13.1
tslib: 2.8.1
'@aws-sdk/middleware-user-agent@3.972.21':
'@aws-sdk/middleware-user-agent@3.972.23':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/core': 3.973.22
'@aws-sdk/types': 3.973.6
'@aws-sdk/util-endpoints': 3.996.5
'@smithy/core': 3.23.12
@@ -3074,20 +3081,20 @@ snapshots:
'@smithy/util-retry': 4.2.12
tslib: 2.8.1
'@aws-sdk/nested-clients@3.996.10':
'@aws-sdk/nested-clients@3.996.12':
dependencies:
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
'@aws-sdk/core': 3.973.20
'@aws-sdk/core': 3.973.22
'@aws-sdk/middleware-host-header': 3.972.8
'@aws-sdk/middleware-logger': 3.972.8
'@aws-sdk/middleware-recursion-detection': 3.972.8
'@aws-sdk/middleware-user-agent': 3.972.21
'@aws-sdk/middleware-user-agent': 3.972.23
'@aws-sdk/region-config-resolver': 3.972.8
'@aws-sdk/types': 3.973.6
'@aws-sdk/util-endpoints': 3.996.5
'@aws-sdk/util-user-agent-browser': 3.972.8
'@aws-sdk/util-user-agent-node': 3.973.7
'@aws-sdk/util-user-agent-node': 3.973.9
'@smithy/config-resolver': 4.4.11
'@smithy/core': 3.23.12
'@smithy/fetch-http-handler': 5.3.15
@@ -3125,19 +3132,19 @@ snapshots:
'@smithy/types': 4.13.1
tslib: 2.8.1
'@aws-sdk/signature-v4-multi-region@3.996.8':
'@aws-sdk/signature-v4-multi-region@3.996.10':
dependencies:
'@aws-sdk/middleware-sdk-s3': 3.972.20
'@aws-sdk/middleware-sdk-s3': 3.972.22
'@aws-sdk/types': 3.973.6
'@smithy/protocol-http': 5.3.12
'@smithy/signature-v4': 5.3.12
'@smithy/types': 4.13.1
tslib: 2.8.1
'@aws-sdk/token-providers@3.1009.0':
'@aws-sdk/token-providers@3.1013.0':
dependencies:
'@aws-sdk/core': 3.973.20
'@aws-sdk/nested-clients': 3.996.10
'@aws-sdk/core': 3.973.22
'@aws-sdk/nested-clients': 3.996.12
'@aws-sdk/types': 3.973.6
'@smithy/property-provider': 4.2.12
'@smithy/shared-ini-file-loader': 4.4.7
@@ -3174,19 +3181,19 @@ snapshots:
bowser: 2.13.1
tslib: 2.8.1
'@aws-sdk/util-user-agent-node@3.973.7':
'@aws-sdk/util-user-agent-node@3.973.9':
dependencies:
'@aws-sdk/middleware-user-agent': 3.972.21
'@aws-sdk/middleware-user-agent': 3.972.23
'@aws-sdk/types': 3.973.6
'@smithy/node-config-provider': 4.3.12
'@smithy/types': 4.13.1
'@smithy/util-config-provider': 4.2.2
tslib: 2.8.1
'@aws-sdk/xml-builder@3.972.11':
'@aws-sdk/xml-builder@3.972.14':
dependencies:
'@smithy/types': 4.13.1
fast-xml-parser: 5.4.1
fast-xml-parser: 5.5.6
tslib: 2.8.1
'@aws/lambda-invoke-store@0.2.3': {}
@@ -3471,10 +3478,10 @@ snapshots:
'@kevisual/auth@2.0.3': {}
'@kevisual/cnb@0.0.52(dotenv@17.3.1)(ioredis@5.10.0)':
'@kevisual/cnb@0.0.56(dotenv@17.3.1)(ioredis@5.10.0)':
dependencies:
'@kevisual/query': 0.0.53
'@kevisual/router': 0.1.4
'@kevisual/router': 0.1.6
'@kevisual/use-config': 1.0.30(dotenv@17.3.1)
'@opencode-ai/sdk': 1.2.27
es-toolkit: 1.45.1
@@ -3527,13 +3534,15 @@ snapshots:
'@kevisual/query@0.0.53': {}
'@kevisual/router@0.1.3':
'@kevisual/query@0.0.55': {}
'@kevisual/router@0.1.4':
dependencies:
crypto-js: 4.2.0
es-toolkit: 1.45.1
zod: 4.3.6
'@kevisual/router@0.1.4':
'@kevisual/router@0.1.6':
dependencies:
crypto-js: 4.2.0
es-toolkit: 1.45.1
@@ -3982,9 +3991,9 @@ snapshots:
dependencies:
'@types/readdir-glob': 1.1.5
'@types/bun@1.3.10':
'@types/bun@1.3.11':
dependencies:
bun-types: 1.3.10
bun-types: 1.3.11
'@types/busboy@1.5.4':
dependencies:
@@ -4178,7 +4187,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
bun-types@1.3.10:
bun-types@1.3.11:
dependencies:
'@types/node': 25.5.0
@@ -4234,7 +4243,7 @@ snapshots:
normalize-path: 3.0.0
readable-stream: 4.5.2
convex@1.33.1(react@19.2.4):
convex@1.34.0(react@19.2.4):
dependencies:
esbuild: 0.27.0
prettier: 3.8.1
@@ -4330,17 +4339,17 @@ snapshots:
esbuild: 0.25.12
tsx: 4.21.0
drizzle-orm@0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.10)(pg@8.20.0):
drizzle-orm@0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.11)(pg@8.20.0):
optionalDependencies:
'@opentelemetry/api': 1.9.0
'@types/pg': 8.18.0
better-sqlite3: 12.6.2
bun-types: 1.3.10
bun-types: 1.3.11
pg: 8.20.0
drizzle-zod@0.8.3(drizzle-orm@0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.10)(pg@8.20.0))(zod@4.3.6):
drizzle-zod@0.8.3(drizzle-orm@0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.11)(pg@8.20.0))(zod@4.3.6):
dependencies:
drizzle-orm: 0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.10)(pg@8.20.0)
drizzle-orm: 0.45.1(@opentelemetry/api@1.9.0)(@types/pg@8.18.0)(better-sqlite3@12.6.2)(bun-types@1.3.11)(pg@8.20.0)
zod: 4.3.6
eastasianwidth@0.2.0: {}
@@ -4498,11 +4507,14 @@ snapshots:
fast-json-patch@3.1.1: {}
fast-xml-builder@1.0.0: {}
fast-xml-parser@5.4.1:
fast-xml-builder@1.1.4:
dependencies:
fast-xml-builder: 1.0.0
path-expression-matcher: 1.2.0
fast-xml-parser@5.5.6:
dependencies:
fast-xml-builder: 1.1.4
path-expression-matcher: 1.2.0
strnum: 2.1.2
fclone@1.0.11: {}
@@ -4893,6 +4905,8 @@ snapshots:
path-browserify-esm@1.0.6: {}
path-expression-matcher@1.2.0: {}
path-key@3.1.1: {}
path-parse@1.0.7: {}