Auto-commit 2026-05-02 09:37
This commit is contained in:
597
node_modules/.package-lock.json
generated
vendored
597
node_modules/.package-lock.json
generated
vendored
@@ -14,7 +14,8 @@
|
||||
"@shieldsai/shared-notifications": "*",
|
||||
"@shieldsai/shared-utils": "*",
|
||||
"fastify": "^4.25.0",
|
||||
"fastify-plugin": "^4.5.0"
|
||||
"fastify-plugin": "^4.5.0",
|
||||
"ioredis": "^5.3.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^25.6.0",
|
||||
@@ -476,7 +477,6 @@
|
||||
"version": "3.3.2",
|
||||
"resolved": "https://registry.npmjs.org/@esbuild-kit/core-utils/-/core-utils-3.3.2.tgz",
|
||||
"integrity": "sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==",
|
||||
"deprecated": "Merged into tsx: https://tsx.is",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"esbuild": "~0.18.20",
|
||||
@@ -540,7 +540,6 @@
|
||||
"version": "2.6.5",
|
||||
"resolved": "https://registry.npmjs.org/@esbuild-kit/esm-loader/-/esm-loader-2.6.5.tgz",
|
||||
"integrity": "sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==",
|
||||
"deprecated": "Merged into tsx: https://tsx.is",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@esbuild-kit/core-utils": "^3.3.2",
|
||||
@@ -1256,7 +1255,6 @@
|
||||
"version": "0.13.0",
|
||||
"resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz",
|
||||
"integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==",
|
||||
"deprecated": "Use @eslint/config-array instead",
|
||||
"dev": true,
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
@@ -1310,7 +1308,6 @@
|
||||
"version": "2.0.3",
|
||||
"resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
|
||||
"integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
|
||||
"deprecated": "Use @eslint/object-schema instead",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
@@ -1405,6 +1402,12 @@
|
||||
"@img/sharp-libvips-linuxmusl-x64": "1.2.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@ioredis/commands": {
|
||||
"version": "1.5.1",
|
||||
"resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.5.1.tgz",
|
||||
"integrity": "sha512-JH8ZL/ywcJyR9MmJ5BNqZllXNZQqQbnVZOqpPQqE1vHiFgAw4NHbvE0FOduNU8IX9babitBT46571OnPTT0Zcw==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@isaacs/ttlcache": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "https://registry.npmjs.org/@isaacs/ttlcache/-/ttlcache-1.4.1.tgz",
|
||||
@@ -1580,6 +1583,27 @@
|
||||
"linux"
|
||||
]
|
||||
},
|
||||
"node_modules/@lukeed/csprng": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@lukeed/csprng/-/csprng-1.1.0.tgz",
|
||||
"integrity": "sha512-Z7C/xXCiGWsg0KuKsHTKJxbWhpI3Vs5GwLfOean7MGyVFGqdRgBbAjOCh6u4bbjPc/8MJ2pZmK/0DLdCbivLDA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/@lukeed/uuid": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@lukeed/uuid/-/uuid-2.0.1.tgz",
|
||||
"integrity": "sha512-qC72D4+CDdjGqJvkFMMEAtancHUQ7/d/tAiHf64z8MopFDmcrtbcJuerDtFceuAfQJ2pDSfCKCtbqoGBNnwg0w==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@lukeed/csprng": "^1.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/@msgpack/msgpack": {
|
||||
"version": "2.8.0",
|
||||
"resolved": "https://registry.npmjs.org/@msgpack/msgpack/-/msgpack-2.8.0.tgz",
|
||||
@@ -1589,6 +1613,19 @@
|
||||
"node": ">= 10"
|
||||
}
|
||||
},
|
||||
"node_modules/@msgpackr-extract/msgpackr-extract-linux-x64": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.3.tgz",
|
||||
"integrity": "sha512-cvwNfbP07pKUfq1uH+S6KJ7dT9K8WOE4ZiAcsrSes+UY55E/0jLYc+vq+DO7jlmqRb5zAggExKm0H7O/CBaesg==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
]
|
||||
},
|
||||
"node_modules/@neon-rs/load": {
|
||||
"version": "0.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@neon-rs/load/-/load-0.0.4.tgz",
|
||||
@@ -1763,6 +1800,74 @@
|
||||
"integrity": "sha512-k2ENnmBugE/rzQfEcdWHcCY+/FM3VLzH9cYEsbdsoqrvzAKRhUZeRNhAZvB8OitQJ1TBed3yqWtdjzS6wJKBwg==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@prisma/client": {
|
||||
"version": "5.22.0",
|
||||
"resolved": "https://registry.npmjs.org/@prisma/client/-/client-5.22.0.tgz",
|
||||
"integrity": "sha512-M0SVXfyHnQREBKxCgyo7sffrKttwE6R8PMq330MIUF0pTwjUhLbW84pFDlf06B27XyCR++VtjugEnIHdr07SVA==",
|
||||
"hasInstallScript": true,
|
||||
"license": "Apache-2.0",
|
||||
"engines": {
|
||||
"node": ">=16.13"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"prisma": "*"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"prisma": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/@prisma/debug": {
|
||||
"version": "5.22.0",
|
||||
"resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-5.22.0.tgz",
|
||||
"integrity": "sha512-AUt44v3YJeggO2ZU5BkXI7M4hu9BF2zzH2iF2V5pyXT/lRTyWiElZ7It+bRH1EshoMRxHgpYg4VB6rCM+mG5jQ==",
|
||||
"devOptional": true,
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/@prisma/engines": {
|
||||
"version": "5.22.0",
|
||||
"resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-5.22.0.tgz",
|
||||
"integrity": "sha512-UNjfslWhAt06kVL3CjkuYpHAWSO6L4kDCVPegV6itt7nD1kSJavd3vhgAEhjglLJJKEdJ7oIqDJ+yHk6qO8gPA==",
|
||||
"devOptional": true,
|
||||
"hasInstallScript": true,
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@prisma/debug": "5.22.0",
|
||||
"@prisma/engines-version": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
|
||||
"@prisma/fetch-engine": "5.22.0",
|
||||
"@prisma/get-platform": "5.22.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@prisma/engines-version": {
|
||||
"version": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
|
||||
"resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2.tgz",
|
||||
"integrity": "sha512-2PTmxFR2yHW/eB3uqWtcgRcgAbG1rwG9ZriSvQw+nnb7c4uCr3RAcGMb6/zfE88SKlC1Nj2ziUvc96Z379mHgQ==",
|
||||
"devOptional": true,
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/@prisma/fetch-engine": {
|
||||
"version": "5.22.0",
|
||||
"resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-5.22.0.tgz",
|
||||
"integrity": "sha512-bkrD/Mc2fSvkQBV5EpoFcZ87AvOgDxbG99488a5cexp5Ccny+UM6MAe/UFkUC0wLYD9+9befNOqGiIJhhq+HbA==",
|
||||
"devOptional": true,
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@prisma/debug": "5.22.0",
|
||||
"@prisma/engines-version": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
|
||||
"@prisma/get-platform": "5.22.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@prisma/get-platform": {
|
||||
"version": "5.22.0",
|
||||
"resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-5.22.0.tgz",
|
||||
"integrity": "sha512-pHhpQdr1UPFpt+zFfnPazhulaZYCUqeIcPpJViYoq9R+D/yw4fjE+CtnsnKzPYm0ddUbeXUzjGVGIRVgPDCk4Q==",
|
||||
"devOptional": true,
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@prisma/debug": "5.22.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@protobufjs/aspromise": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
|
||||
@@ -2382,6 +2487,76 @@
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/@segment/analytics-core": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "https://registry.npmjs.org/@segment/analytics-core/-/analytics-core-1.4.1.tgz",
|
||||
"integrity": "sha512-kV0Pf33HnthuBOVdYNani21kYyj118Fn+9757bxqoksiXoZlYvBsFq6giNdCsKcTIE1eAMqNDq3xE1VQ0cfsHA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@lukeed/uuid": "^2.0.0",
|
||||
"@segment/analytics-generic-utils": "1.1.1",
|
||||
"dset": "^3.1.2",
|
||||
"tslib": "^2.4.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@segment/analytics-generic-utils": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@segment/analytics-generic-utils/-/analytics-generic-utils-1.1.1.tgz",
|
||||
"integrity": "sha512-THTIzBPHnvu1HYJU3fARdJ3qIkukO3zDXsmDm+kAeUks5R9CBXOQ6rPChiASVzSmwAIIo5uFIXXnCraojlq/Gw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"tslib": "^2.4.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@segment/analytics-node": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@segment/analytics-node/-/analytics-node-1.3.0.tgz",
|
||||
"integrity": "sha512-lRLz1WZaDokMoUe299yP5JkInc3OgJuqNNlxb6j0q22umCiq6b5iDo2gRmFn93reirIvJxWIicQsGrHd93q8GQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@lukeed/uuid": "^2.0.0",
|
||||
"@segment/analytics-core": "1.4.1",
|
||||
"@segment/analytics-generic-utils": "1.1.1",
|
||||
"buffer": "^6.0.3",
|
||||
"node-fetch": "^2.6.7",
|
||||
"tslib": "^2.4.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/@segment/analytics-node/node_modules/buffer": {
|
||||
"version": "6.0.3",
|
||||
"resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
|
||||
"integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/feross"
|
||||
},
|
||||
{
|
||||
"type": "patreon",
|
||||
"url": "https://www.patreon.com/feross"
|
||||
},
|
||||
{
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"base64-js": "^1.3.1",
|
||||
"ieee754": "^1.2.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@shieldsai/jobs": {
|
||||
"resolved": "packages/jobs",
|
||||
"link": true
|
||||
},
|
||||
"node_modules/@shieldsai/shared-analytics": {
|
||||
"resolved": "packages/shared-analytics",
|
||||
"link": true
|
||||
},
|
||||
"node_modules/@shieldsai/shared-auth": {
|
||||
"resolved": "packages/shared-auth",
|
||||
"link": true
|
||||
@@ -3150,6 +3325,20 @@
|
||||
"typescript": ">=5.7.2"
|
||||
}
|
||||
},
|
||||
"node_modules/@turbo/linux-64": {
|
||||
"version": "2.9.6",
|
||||
"resolved": "https://registry.npmjs.org/@turbo/linux-64/-/linux-64-2.9.6.tgz",
|
||||
"integrity": "sha512-YKi05jnNHaD7vevgYwahpzGwbsNNTwzU2c7VZdmdFm7+cGDP4oREUWSsainiMfRqjRuolQxBwRn8wf1jmu+YZA==",
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"linux"
|
||||
]
|
||||
},
|
||||
"node_modules/@types/babel__core": {
|
||||
"version": "7.20.5",
|
||||
"resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz",
|
||||
@@ -3874,7 +4063,6 @@
|
||||
"version": "6.2.3",
|
||||
"resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz",
|
||||
"integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==",
|
||||
"deprecated": "Superseded by abstract-level (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
@@ -4704,6 +4892,23 @@
|
||||
"node-gyp-build-test": "build-test.js"
|
||||
}
|
||||
},
|
||||
"node_modules/bullmq": {
|
||||
"version": "5.76.4",
|
||||
"resolved": "https://registry.npmjs.org/bullmq/-/bullmq-5.76.4.tgz",
|
||||
"integrity": "sha512-hVAplia7zfN3BxSCgAoRInJnbemfLwJdQLqJy/txEX8UMSTAeg0saPFNGWIlzES/Ct5xQ20TUaik/XwS99DOMA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"cron-parser": "4.9.0",
|
||||
"ioredis": "5.10.1",
|
||||
"msgpackr": "1.11.5",
|
||||
"node-abort-controller": "3.1.1",
|
||||
"semver": "7.7.4",
|
||||
"tslib": "2.8.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.22.0"
|
||||
}
|
||||
},
|
||||
"node_modules/cac": {
|
||||
"version": "6.7.14",
|
||||
"resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz",
|
||||
@@ -4980,7 +5185,6 @@
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
|
||||
"integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
|
||||
"deprecated": "Rimraf versions prior to v4 are no longer supported",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
@@ -5047,6 +5251,15 @@
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/cluster-key-slot": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz",
|
||||
"integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==",
|
||||
"license": "Apache-2.0",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/color-convert": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||
@@ -5215,6 +5428,18 @@
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/cron-parser": {
|
||||
"version": "4.9.0",
|
||||
"resolved": "https://registry.npmjs.org/cron-parser/-/cron-parser-4.9.0.tgz",
|
||||
"integrity": "sha512-p0SaNjrHOnQeR8/VnfGbmg9te2kfyYSQ7Sc/j/6DtPL3JQvKxmjO9TSjNFpujqV3vEYYBvNNvXSxzyksBWAx1Q==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"luxon": "^3.2.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/cross-spawn": {
|
||||
"version": "7.0.6",
|
||||
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
|
||||
@@ -5343,7 +5568,6 @@
|
||||
"version": "5.3.0",
|
||||
"resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz",
|
||||
"integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==",
|
||||
"deprecated": "Superseded by abstract-level (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
@@ -5391,6 +5615,15 @@
|
||||
"node": ">=0.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/denque": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz",
|
||||
"integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==",
|
||||
"license": "Apache-2.0",
|
||||
"engines": {
|
||||
"node": ">=0.10"
|
||||
}
|
||||
},
|
||||
"node_modules/depd": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
|
||||
@@ -5676,6 +5909,15 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/dset": {
|
||||
"version": "3.1.4",
|
||||
"resolved": "https://registry.npmjs.org/dset/-/dset-3.1.4.tgz",
|
||||
"integrity": "sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/dunder-proto": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
|
||||
@@ -5745,7 +5987,6 @@
|
||||
"version": "6.3.0",
|
||||
"resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-6.3.0.tgz",
|
||||
"integrity": "sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==",
|
||||
"deprecated": "Superseded by abstract-level (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
@@ -5961,7 +6202,6 @@
|
||||
"version": "8.57.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz",
|
||||
"integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==",
|
||||
"deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -7068,7 +7308,6 @@
|
||||
"resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz",
|
||||
"integrity": "sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==",
|
||||
"license": "Apache-2.0",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"extend": "^3.0.2",
|
||||
"https-proxy-agent": "^7.0.1",
|
||||
@@ -7085,7 +7324,6 @@
|
||||
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
|
||||
"integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
@@ -7102,7 +7340,6 @@
|
||||
"https://github.com/sponsors/ctavan"
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"bin": {
|
||||
"uuid": "dist/bin/uuid"
|
||||
}
|
||||
@@ -7278,7 +7515,6 @@
|
||||
"version": "7.2.3",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
|
||||
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
|
||||
"deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
@@ -7534,6 +7770,129 @@
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis": {
|
||||
"version": "128.0.0",
|
||||
"resolved": "https://registry.npmjs.org/googleapis/-/googleapis-128.0.0.tgz",
|
||||
"integrity": "sha512-+sLtVYNazcxaSD84N6rihVX4QiGoqRdnlz2SwmQQkadF31XonDfy4ufk3maMg27+FiySrH0rd7V8p+YJG6cknA==",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"google-auth-library": "^9.0.0",
|
||||
"googleapis-common": "^7.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis-common": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-7.2.0.tgz",
|
||||
"integrity": "sha512-/fhDZEJZvOV3X5jmD+fKxMqma5q2Q9nZNSF3kn1F18tpxmA86BcTxAGBQdM0N89Z3bEaIs+HVznSmFJEAmMTjA==",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"extend": "^3.0.2",
|
||||
"gaxios": "^6.0.3",
|
||||
"google-auth-library": "^9.7.0",
|
||||
"qs": "^6.7.0",
|
||||
"url-template": "^2.0.8",
|
||||
"uuid": "^9.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis-common/node_modules/gcp-metadata": {
|
||||
"version": "6.1.1",
|
||||
"resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.1.tgz",
|
||||
"integrity": "sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A==",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"gaxios": "^6.1.1",
|
||||
"google-logging-utils": "^0.0.2",
|
||||
"json-bigint": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis-common/node_modules/google-auth-library": {
|
||||
"version": "9.15.1",
|
||||
"resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.15.1.tgz",
|
||||
"integrity": "sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng==",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"base64-js": "^1.3.0",
|
||||
"ecdsa-sig-formatter": "^1.0.11",
|
||||
"gaxios": "^6.1.1",
|
||||
"gcp-metadata": "^6.1.0",
|
||||
"gtoken": "^7.0.0",
|
||||
"jws": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis-common/node_modules/google-logging-utils": {
|
||||
"version": "0.0.2",
|
||||
"resolved": "https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-0.0.2.tgz",
|
||||
"integrity": "sha512-NEgUnEcBiP5HrPzufUkBzJOD/Sxsco3rLNo1F1TNf7ieU8ryUzBhqba8r756CjLX7rn3fHl6iLEwPYuqpoKgQQ==",
|
||||
"license": "Apache-2.0",
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis-common/node_modules/uuid": {
|
||||
"version": "9.0.1",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
|
||||
"integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
|
||||
"funding": [
|
||||
"https://github.com/sponsors/broofa",
|
||||
"https://github.com/sponsors/ctavan"
|
||||
],
|
||||
"license": "MIT",
|
||||
"bin": {
|
||||
"uuid": "dist/bin/uuid"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis/node_modules/gcp-metadata": {
|
||||
"version": "6.1.1",
|
||||
"resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.1.tgz",
|
||||
"integrity": "sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A==",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"gaxios": "^6.1.1",
|
||||
"google-logging-utils": "^0.0.2",
|
||||
"json-bigint": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis/node_modules/google-auth-library": {
|
||||
"version": "9.15.1",
|
||||
"resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.15.1.tgz",
|
||||
"integrity": "sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng==",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"base64-js": "^1.3.0",
|
||||
"ecdsa-sig-formatter": "^1.0.11",
|
||||
"gaxios": "^6.1.1",
|
||||
"gcp-metadata": "^6.1.0",
|
||||
"gtoken": "^7.0.0",
|
||||
"jws": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/googleapis/node_modules/google-logging-utils": {
|
||||
"version": "0.0.2",
|
||||
"resolved": "https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-0.0.2.tgz",
|
||||
"integrity": "sha512-NEgUnEcBiP5HrPzufUkBzJOD/Sxsco3rLNo1F1TNf7ieU8ryUzBhqba8r756CjLX7rn3fHl6iLEwPYuqpoKgQQ==",
|
||||
"license": "Apache-2.0",
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/gopd": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
|
||||
@@ -7591,7 +7950,6 @@
|
||||
"resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz",
|
||||
"integrity": "sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"gaxios": "^6.0.0",
|
||||
"jws": "^4.0.0"
|
||||
@@ -7896,7 +8254,6 @@
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
|
||||
"deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
@@ -7934,6 +8291,30 @@
|
||||
"loose-envify": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/ioredis": {
|
||||
"version": "5.10.1",
|
||||
"resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.10.1.tgz",
|
||||
"integrity": "sha512-HuEDBTI70aYdx1v6U97SbNx9F1+svQKBDo30o0b9fw055LMepzpOOd0Ccg9Q6tbqmBSJaMuY0fB7yw9/vjBYCA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@ioredis/commands": "1.5.1",
|
||||
"cluster-key-slot": "^1.1.0",
|
||||
"debug": "^4.3.4",
|
||||
"denque": "^2.1.0",
|
||||
"lodash.defaults": "^4.2.0",
|
||||
"lodash.isarguments": "^3.1.0",
|
||||
"redis-errors": "^1.2.0",
|
||||
"redis-parser": "^3.0.0",
|
||||
"standard-as-callback": "^2.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.22.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/ioredis"
|
||||
}
|
||||
},
|
||||
"node_modules/ip-address": {
|
||||
"version": "10.1.0",
|
||||
"resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz",
|
||||
@@ -8551,7 +8932,6 @@
|
||||
"version": "9.0.2",
|
||||
"resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz",
|
||||
"integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==",
|
||||
"deprecated": "Superseded by level-transcoder (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
@@ -8565,7 +8945,6 @@
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz",
|
||||
"integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==",
|
||||
"deprecated": "Superseded by abstract-level (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"engines": {
|
||||
@@ -8576,7 +8955,6 @@
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz",
|
||||
"integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==",
|
||||
"deprecated": "Superseded by abstract-level (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
@@ -8605,7 +8983,6 @@
|
||||
"version": "5.0.2",
|
||||
"resolved": "https://registry.npmjs.org/level-js/-/level-js-5.0.2.tgz",
|
||||
"integrity": "sha512-SnBIDo2pdO5VXh02ZmtAyPP6/+6YTJg2ibLtl9C34pWvmtMEmRTWpra+qO/hifkUtBTOtfx6S9vLDjBsBK4gRg==",
|
||||
"deprecated": "Superseded by browser-level (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
@@ -8619,7 +8996,6 @@
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/level-packager/-/level-packager-5.1.1.tgz",
|
||||
"integrity": "sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==",
|
||||
"deprecated": "Superseded by abstract-level (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
@@ -8647,7 +9023,6 @@
|
||||
"version": "5.6.0",
|
||||
"resolved": "https://registry.npmjs.org/leveldown/-/leveldown-5.6.0.tgz",
|
||||
"integrity": "sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==",
|
||||
"deprecated": "Superseded by classic-level (https://github.com/Level/community#faq)",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
@@ -8664,7 +9039,6 @@
|
||||
"version": "4.4.0",
|
||||
"resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz",
|
||||
"integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==",
|
||||
"deprecated": "Superseded by abstract-level (https://github.com/Level/community#faq)",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
@@ -8857,12 +9231,24 @@
|
||||
"integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/lodash.defaults": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
|
||||
"integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/lodash.includes": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz",
|
||||
"integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/lodash.isarguments": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz",
|
||||
"integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/lodash.isboolean": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz",
|
||||
@@ -8997,6 +9383,15 @@
|
||||
"license": "MIT",
|
||||
"optional": true
|
||||
},
|
||||
"node_modules/luxon": {
|
||||
"version": "3.7.2",
|
||||
"resolved": "https://registry.npmjs.org/luxon/-/luxon-3.7.2.tgz",
|
||||
"integrity": "sha512-vtEhXh/gNjI9Yg1u4jX/0YVPMvxzHuGgCm6tC5kZyb08yjGWGnqAjGJvcXbqQR2P3MyMEFnRbpcdFS6PBcLqew==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/magic-string": {
|
||||
"version": "0.30.21",
|
||||
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz",
|
||||
@@ -9716,6 +10111,37 @@
|
||||
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/msgpackr": {
|
||||
"version": "1.11.5",
|
||||
"resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.11.5.tgz",
|
||||
"integrity": "sha512-UjkUHN0yqp9RWKy0Lplhh+wlpdt9oQBYgULZOiFhV3VclSF1JnSQWZ5r9gORQlNYaUKQoR8itv7g7z1xDDuACA==",
|
||||
"license": "MIT",
|
||||
"optionalDependencies": {
|
||||
"msgpackr-extract": "^3.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/msgpackr-extract": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.3.tgz",
|
||||
"integrity": "sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"node-gyp-build-optional-packages": "5.2.2"
|
||||
},
|
||||
"bin": {
|
||||
"download-msgpackr-prebuilds": "bin/download-prebuilds.js"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.3",
|
||||
"@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.3",
|
||||
"@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.3",
|
||||
"@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.3",
|
||||
"@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.3",
|
||||
"@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.3"
|
||||
}
|
||||
},
|
||||
"node_modules/nanoid": {
|
||||
"version": "3.3.11",
|
||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
|
||||
@@ -9913,6 +10339,12 @@
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/node-abort-controller": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz",
|
||||
"integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/node-domexception": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
|
||||
@@ -9974,6 +10406,21 @@
|
||||
"node-gyp-build-test": "build-test.js"
|
||||
}
|
||||
},
|
||||
"node_modules/node-gyp-build-optional-packages": {
|
||||
"version": "5.2.2",
|
||||
"resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.2.2.tgz",
|
||||
"integrity": "sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw==",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"detect-libc": "^2.0.1"
|
||||
},
|
||||
"bin": {
|
||||
"node-gyp-build-optional-packages": "bin.js",
|
||||
"node-gyp-build-optional-packages-optional": "optional.js",
|
||||
"node-gyp-build-optional-packages-test": "build-test.js"
|
||||
}
|
||||
},
|
||||
"node_modules/node-int64": {
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
|
||||
@@ -10655,7 +11102,6 @@
|
||||
"version": "7.1.3",
|
||||
"resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz",
|
||||
"integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==",
|
||||
"deprecated": "No longer maintained. Please contact the author of the relevant native addon; alternatives are available.",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -10715,6 +11161,26 @@
|
||||
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/prisma": {
|
||||
"version": "5.22.0",
|
||||
"resolved": "https://registry.npmjs.org/prisma/-/prisma-5.22.0.tgz",
|
||||
"integrity": "sha512-vtpjW3XuYCSnMsNVBjLMNkTj6OZbudcPPTPYHqX0CJfpcdWciI1dM8uHETwmDxxiqEwCIE6WvXucWUetJgfu/A==",
|
||||
"devOptional": true,
|
||||
"hasInstallScript": true,
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@prisma/engines": "5.22.0"
|
||||
},
|
||||
"bin": {
|
||||
"prisma": "build/index.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16.13"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"fsevents": "2.3.3"
|
||||
}
|
||||
},
|
||||
"node_modules/process-nextick-args": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
|
||||
@@ -11323,6 +11789,27 @@
|
||||
"node": ">= 12.13.0"
|
||||
}
|
||||
},
|
||||
"node_modules/redis-errors": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/redis-errors/-/redis-errors-1.2.0.tgz",
|
||||
"integrity": "sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/redis-parser": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-3.0.0.tgz",
|
||||
"integrity": "sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"redis-errors": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/regenerator-runtime": {
|
||||
"version": "0.13.11",
|
||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
|
||||
@@ -11468,7 +11955,6 @@
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
|
||||
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
|
||||
"deprecated": "Rimraf versions prior to v4 are no longer supported",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
@@ -12237,6 +12723,12 @@
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/standard-as-callback": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz",
|
||||
"integrity": "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/standardwebhooks": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/standardwebhooks/-/standardwebhooks-1.0.0.tgz",
|
||||
@@ -12861,6 +13353,24 @@
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/turbo": {
|
||||
"version": "2.9.6",
|
||||
"resolved": "https://registry.npmjs.org/turbo/-/turbo-2.9.6.tgz",
|
||||
"integrity": "sha512-+v2QJey7ZUeUiuigkU+uFfklvNUyPI2VO2vBpMYJA+a1hKFLFiKtUYlRHdb3P9CrAvMzi0upbjI4WT+zKtqkBg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"bin": {
|
||||
"turbo": "bin/turbo"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"@turbo/darwin-64": "2.9.6",
|
||||
"@turbo/darwin-arm64": "2.9.6",
|
||||
"@turbo/linux-64": "2.9.6",
|
||||
"@turbo/linux-arm64": "2.9.6",
|
||||
"@turbo/windows-64": "2.9.6",
|
||||
"@turbo/windows-arm64": "2.9.6"
|
||||
}
|
||||
},
|
||||
"node_modules/twilio": {
|
||||
"version": "5.13.1",
|
||||
"resolved": "https://registry.npmjs.org/twilio/-/twilio-5.13.1.tgz",
|
||||
@@ -13030,6 +13540,12 @@
|
||||
"punycode": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/url-template": {
|
||||
"version": "2.0.8",
|
||||
"resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz",
|
||||
"integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==",
|
||||
"license": "BSD"
|
||||
},
|
||||
"node_modules/utf-8-validate": {
|
||||
"version": "6.0.6",
|
||||
"resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-6.0.6.tgz",
|
||||
@@ -13955,6 +14471,33 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"packages/jobs": {
|
||||
"name": "@shieldsai/jobs",
|
||||
"version": "0.1.0",
|
||||
"dependencies": {
|
||||
"@shieldsai/shared-db": "*",
|
||||
"@shieldsai/shared-utils": "*",
|
||||
"bullmq": "^5.1.0",
|
||||
"ioredis": "^5.3.0",
|
||||
"zod": "^4.3.6"
|
||||
},
|
||||
"devDependencies": {
|
||||
"tsx": "^4.7.1",
|
||||
"typescript": "^5.3.3"
|
||||
}
|
||||
},
|
||||
"packages/shared-analytics": {
|
||||
"name": "@shieldsai/shared-analytics",
|
||||
"version": "0.1.0",
|
||||
"dependencies": {
|
||||
"@segment/analytics-node": "^1.0.0",
|
||||
"googleapis": "^128.0.0",
|
||||
"zod": "^4.3.6"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "^5.3.3"
|
||||
}
|
||||
},
|
||||
"packages/shared-auth": {
|
||||
"name": "@shieldsai/shared-auth",
|
||||
"version": "0.1.0",
|
||||
@@ -13970,11 +14513,11 @@
|
||||
"name": "@shieldsai/shared-db",
|
||||
"version": "0.1.0",
|
||||
"dependencies": {
|
||||
"drizzle-orm": "^0.45.2",
|
||||
"@prisma/client": "^5.14.0",
|
||||
"zod": "^4.3.6"
|
||||
},
|
||||
"devDependencies": {
|
||||
"drizzle-kit": "^0.31.10",
|
||||
"prisma": "^5.14.0",
|
||||
"typescript": "^5.3.3"
|
||||
}
|
||||
},
|
||||
|
||||
1
node_modules/.prisma/client/default.d.ts
generated
vendored
Normal file
1
node_modules/.prisma/client/default.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from "./index"
|
||||
1
node_modules/.prisma/client/default.js
generated
vendored
Normal file
1
node_modules/.prisma/client/default.js
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
module.exports = { ...require('.') }
|
||||
9
node_modules/.prisma/client/deno/edge.d.ts
generated
vendored
Normal file
9
node_modules/.prisma/client/deno/edge.d.ts
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
class PrismaClient {
|
||||
constructor() {
|
||||
throw new Error(
|
||||
'@prisma/client/deno/edge did not initialize yet. Please run "prisma generate" and try to import it again.',
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
export { PrismaClient }
|
||||
1
node_modules/.prisma/client/edge.d.ts
generated
vendored
Normal file
1
node_modules/.prisma/client/edge.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from "./default"
|
||||
480
node_modules/.prisma/client/edge.js
generated
vendored
Normal file
480
node_modules/.prisma/client/edge.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
473
node_modules/.prisma/client/index-browser.js
generated
vendored
Normal file
473
node_modules/.prisma/client/index-browser.js
generated
vendored
Normal file
@@ -0,0 +1,473 @@
|
||||
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
|
||||
const {
|
||||
Decimal,
|
||||
objectEnumValues,
|
||||
makeStrictEnum,
|
||||
Public,
|
||||
getRuntime,
|
||||
skip
|
||||
} = require('@prisma/client/runtime/index-browser.js')
|
||||
|
||||
|
||||
const Prisma = {}
|
||||
|
||||
exports.Prisma = Prisma
|
||||
exports.$Enums = {}
|
||||
|
||||
/**
|
||||
* Prisma Client JS version: 5.22.0
|
||||
* Query Engine version: 605197351a3c8bdd595af2d2a9bc3025bca48ea2
|
||||
*/
|
||||
Prisma.prismaVersion = {
|
||||
client: "5.22.0",
|
||||
engine: "605197351a3c8bdd595af2d2a9bc3025bca48ea2"
|
||||
}
|
||||
|
||||
Prisma.PrismaClientKnownRequestError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientKnownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)};
|
||||
Prisma.PrismaClientUnknownRequestError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientUnknownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.PrismaClientRustPanicError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientRustPanicError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.PrismaClientInitializationError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientInitializationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.PrismaClientValidationError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientValidationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.NotFoundError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`NotFoundError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.Decimal = Decimal
|
||||
|
||||
/**
|
||||
* Re-export of sql-template-tag
|
||||
*/
|
||||
Prisma.sql = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`sqltag is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.empty = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`empty is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.join = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`join is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.raw = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`raw is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.validator = Public.validator
|
||||
|
||||
/**
|
||||
* Extensions
|
||||
*/
|
||||
Prisma.getExtensionContext = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`Extensions.getExtensionContext is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.defineExtension = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`Extensions.defineExtension is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
|
||||
/**
|
||||
* Shorthand utilities for JSON filtering
|
||||
*/
|
||||
Prisma.DbNull = objectEnumValues.instances.DbNull
|
||||
Prisma.JsonNull = objectEnumValues.instances.JsonNull
|
||||
Prisma.AnyNull = objectEnumValues.instances.AnyNull
|
||||
|
||||
Prisma.NullTypes = {
|
||||
DbNull: objectEnumValues.classes.DbNull,
|
||||
JsonNull: objectEnumValues.classes.JsonNull,
|
||||
AnyNull: objectEnumValues.classes.AnyNull
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Enums
|
||||
*/
|
||||
|
||||
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
||||
ReadUncommitted: 'ReadUncommitted',
|
||||
ReadCommitted: 'ReadCommitted',
|
||||
RepeatableRead: 'RepeatableRead',
|
||||
Serializable: 'Serializable'
|
||||
});
|
||||
|
||||
exports.Prisma.UserScalarFieldEnum = {
|
||||
id: 'id',
|
||||
email: 'email',
|
||||
emailVerified: 'emailVerified',
|
||||
name: 'name',
|
||||
image: 'image',
|
||||
role: 'role',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.AccountScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
provider: 'provider',
|
||||
providerAccountId: 'providerAccountId',
|
||||
access_token: 'access_token',
|
||||
refresh_token: 'refresh_token',
|
||||
expires_at: 'expires_at',
|
||||
token_type: 'token_type',
|
||||
scope: 'scope',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SessionScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
sessionToken: 'sessionToken',
|
||||
expires: 'expires',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.FamilyGroupScalarFieldEnum = {
|
||||
id: 'id',
|
||||
name: 'name',
|
||||
ownerId: 'ownerId',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.FamilyGroupMemberScalarFieldEnum = {
|
||||
id: 'id',
|
||||
groupId: 'groupId',
|
||||
userId: 'userId',
|
||||
role: 'role',
|
||||
joinedAt: 'joinedAt',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SubscriptionScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
familyGroupId: 'familyGroupId',
|
||||
stripeId: 'stripeId',
|
||||
tier: 'tier',
|
||||
status: 'status',
|
||||
currentPeriodStart: 'currentPeriodStart',
|
||||
currentPeriodEnd: 'currentPeriodEnd',
|
||||
cancelAtPeriodEnd: 'cancelAtPeriodEnd',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.WatchlistItemScalarFieldEnum = {
|
||||
id: 'id',
|
||||
subscriptionId: 'subscriptionId',
|
||||
type: 'type',
|
||||
value: 'value',
|
||||
hash: 'hash',
|
||||
isActive: 'isActive',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.ExposureScalarFieldEnum = {
|
||||
id: 'id',
|
||||
subscriptionId: 'subscriptionId',
|
||||
watchlistItemId: 'watchlistItemId',
|
||||
source: 'source',
|
||||
dataType: 'dataType',
|
||||
identifier: 'identifier',
|
||||
identifierHash: 'identifierHash',
|
||||
severity: 'severity',
|
||||
metadata: 'metadata',
|
||||
isFirstTime: 'isFirstTime',
|
||||
detectedAt: 'detectedAt',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.AlertScalarFieldEnum = {
|
||||
id: 'id',
|
||||
subscriptionId: 'subscriptionId',
|
||||
userId: 'userId',
|
||||
exposureId: 'exposureId',
|
||||
type: 'type',
|
||||
title: 'title',
|
||||
message: 'message',
|
||||
severity: 'severity',
|
||||
isRead: 'isRead',
|
||||
readAt: 'readAt',
|
||||
channel: 'channel',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.VoiceEnrollmentScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
name: 'name',
|
||||
voiceHash: 'voiceHash',
|
||||
audioMetadata: 'audioMetadata',
|
||||
isActive: 'isActive',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.VoiceAnalysisScalarFieldEnum = {
|
||||
id: 'id',
|
||||
enrollmentId: 'enrollmentId',
|
||||
userId: 'userId',
|
||||
audioHash: 'audioHash',
|
||||
isSynthetic: 'isSynthetic',
|
||||
confidence: 'confidence',
|
||||
analysisResult: 'analysisResult',
|
||||
audioUrl: 'audioUrl',
|
||||
createdAt: 'createdAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SpamFeedbackScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
phoneNumber: 'phoneNumber',
|
||||
phoneNumberHash: 'phoneNumberHash',
|
||||
isSpam: 'isSpam',
|
||||
confidence: 'confidence',
|
||||
feedbackType: 'feedbackType',
|
||||
metadata: 'metadata',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SpamRuleScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
isGlobal: 'isGlobal',
|
||||
ruleType: 'ruleType',
|
||||
pattern: 'pattern',
|
||||
action: 'action',
|
||||
priority: 'priority',
|
||||
isActive: 'isActive',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.AuditLogScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
action: 'action',
|
||||
resource: 'resource',
|
||||
resourceId: 'resourceId',
|
||||
changes: 'changes',
|
||||
metadata: 'metadata',
|
||||
ipAddress: 'ipAddress',
|
||||
userAgent: 'userAgent',
|
||||
createdAt: 'createdAt'
|
||||
};
|
||||
|
||||
exports.Prisma.KPISnapshotScalarFieldEnum = {
|
||||
id: 'id',
|
||||
date: 'date',
|
||||
metricName: 'metricName',
|
||||
metricValue: 'metricValue',
|
||||
metadata: 'metadata',
|
||||
createdAt: 'createdAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SortOrder = {
|
||||
asc: 'asc',
|
||||
desc: 'desc'
|
||||
};
|
||||
|
||||
exports.Prisma.NullableJsonNullValueInput = {
|
||||
DbNull: Prisma.DbNull,
|
||||
JsonNull: Prisma.JsonNull
|
||||
};
|
||||
|
||||
exports.Prisma.JsonNullValueInput = {
|
||||
JsonNull: Prisma.JsonNull
|
||||
};
|
||||
|
||||
exports.Prisma.QueryMode = {
|
||||
default: 'default',
|
||||
insensitive: 'insensitive'
|
||||
};
|
||||
|
||||
exports.Prisma.NullsOrder = {
|
||||
first: 'first',
|
||||
last: 'last'
|
||||
};
|
||||
|
||||
exports.Prisma.JsonNullValueFilter = {
|
||||
DbNull: Prisma.DbNull,
|
||||
JsonNull: Prisma.JsonNull,
|
||||
AnyNull: Prisma.AnyNull
|
||||
};
|
||||
exports.UserRole = exports.$Enums.UserRole = {
|
||||
user: 'user',
|
||||
family_admin: 'family_admin',
|
||||
family_member: 'family_member',
|
||||
support: 'support'
|
||||
};
|
||||
|
||||
exports.FamilyMemberRole = exports.$Enums.FamilyMemberRole = {
|
||||
owner: 'owner',
|
||||
admin: 'admin',
|
||||
member: 'member'
|
||||
};
|
||||
|
||||
exports.SubscriptionTier = exports.$Enums.SubscriptionTier = {
|
||||
basic: 'basic',
|
||||
plus: 'plus',
|
||||
premium: 'premium'
|
||||
};
|
||||
|
||||
exports.SubscriptionStatus = exports.$Enums.SubscriptionStatus = {
|
||||
active: 'active',
|
||||
past_due: 'past_due',
|
||||
canceled: 'canceled',
|
||||
unpaid: 'unpaid',
|
||||
trialing: 'trialing'
|
||||
};
|
||||
|
||||
exports.WatchlistType = exports.$Enums.WatchlistType = {
|
||||
email: 'email',
|
||||
phoneNumber: 'phoneNumber',
|
||||
ssn: 'ssn',
|
||||
address: 'address',
|
||||
domain: 'domain'
|
||||
};
|
||||
|
||||
exports.ExposureSource = exports.$Enums.ExposureSource = {
|
||||
hibp: 'hibp',
|
||||
securityTrails: 'securityTrails',
|
||||
censys: 'censys',
|
||||
darkWebForum: 'darkWebForum',
|
||||
shodan: 'shodan',
|
||||
honeypot: 'honeypot'
|
||||
};
|
||||
|
||||
exports.ExposureSeverity = exports.$Enums.ExposureSeverity = {
|
||||
info: 'info',
|
||||
warning: 'warning',
|
||||
critical: 'critical'
|
||||
};
|
||||
|
||||
exports.AlertType = exports.$Enums.AlertType = {
|
||||
exposure_detected: 'exposure_detected',
|
||||
exposure_resolved: 'exposure_resolved',
|
||||
scan_complete: 'scan_complete',
|
||||
subscription_changed: 'subscription_changed',
|
||||
system_warning: 'system_warning'
|
||||
};
|
||||
|
||||
exports.AlertSeverity = exports.$Enums.AlertSeverity = {
|
||||
info: 'info',
|
||||
warning: 'warning',
|
||||
critical: 'critical'
|
||||
};
|
||||
|
||||
exports.AlertChannel = exports.$Enums.AlertChannel = {
|
||||
email: 'email',
|
||||
push: 'push',
|
||||
sms: 'sms'
|
||||
};
|
||||
|
||||
exports.FeedbackType = exports.$Enums.FeedbackType = {
|
||||
initial_detection: 'initial_detection',
|
||||
user_confirmation: 'user_confirmation',
|
||||
user_rejection: 'user_rejection',
|
||||
auto_learned: 'auto_learned'
|
||||
};
|
||||
|
||||
exports.RuleType = exports.$Enums.RuleType = {
|
||||
phoneNumber: 'phoneNumber',
|
||||
areaCode: 'areaCode',
|
||||
prefix: 'prefix',
|
||||
pattern: 'pattern',
|
||||
reputation: 'reputation'
|
||||
};
|
||||
|
||||
exports.RuleAction = exports.$Enums.RuleAction = {
|
||||
block: 'block',
|
||||
flag: 'flag',
|
||||
allow: 'allow',
|
||||
challenge: 'challenge'
|
||||
};
|
||||
|
||||
exports.Prisma.ModelName = {
|
||||
User: 'User',
|
||||
Account: 'Account',
|
||||
Session: 'Session',
|
||||
FamilyGroup: 'FamilyGroup',
|
||||
FamilyGroupMember: 'FamilyGroupMember',
|
||||
Subscription: 'Subscription',
|
||||
WatchlistItem: 'WatchlistItem',
|
||||
Exposure: 'Exposure',
|
||||
Alert: 'Alert',
|
||||
VoiceEnrollment: 'VoiceEnrollment',
|
||||
VoiceAnalysis: 'VoiceAnalysis',
|
||||
SpamFeedback: 'SpamFeedback',
|
||||
SpamRule: 'SpamRule',
|
||||
AuditLog: 'AuditLog',
|
||||
KPISnapshot: 'KPISnapshot'
|
||||
};
|
||||
|
||||
/**
|
||||
* This is a stub Prisma Client that will error at runtime if called.
|
||||
*/
|
||||
class PrismaClient {
|
||||
constructor() {
|
||||
return new Proxy(this, {
|
||||
get(target, prop) {
|
||||
let message
|
||||
const runtime = getRuntime()
|
||||
if (runtime.isEdge) {
|
||||
message = `PrismaClient is not configured to run in ${runtime.prettyName}. In order to run Prisma Client on edge runtime, either:
|
||||
- Use Prisma Accelerate: https://pris.ly/d/accelerate
|
||||
- Use Driver Adapters: https://pris.ly/d/driver-adapters
|
||||
`;
|
||||
} else {
|
||||
message = 'PrismaClient is unable to run in this browser environment, or has been bundled for the browser (running in `' + runtime.prettyName + '`).'
|
||||
}
|
||||
|
||||
message += `
|
||||
If this is unexpected, please open an issue: https://pris.ly/prisma-prisma-bug-report`
|
||||
|
||||
throw new Error(message)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
exports.PrismaClient = PrismaClient
|
||||
|
||||
Object.assign(exports, Prisma)
|
||||
27360
node_modules/.prisma/client/index.d.ts
generated
vendored
Normal file
27360
node_modules/.prisma/client/index.d.ts
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
501
node_modules/.prisma/client/index.js
generated
vendored
Normal file
501
node_modules/.prisma/client/index.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
node_modules/.prisma/client/libquery_engine-debian-openssl-3.0.x.so.node
generated
vendored
Executable file
BIN
node_modules/.prisma/client/libquery_engine-debian-openssl-3.0.x.so.node
generated
vendored
Executable file
Binary file not shown.
97
node_modules/.prisma/client/package.json
generated
vendored
Normal file
97
node_modules/.prisma/client/package.json
generated
vendored
Normal file
@@ -0,0 +1,97 @@
|
||||
{
|
||||
"name": "prisma-client-b29a2b3f0e1bc12b2fa9d0bdeb99b39a26c72b924071cafc26aa54f77bbfbddd",
|
||||
"main": "index.js",
|
||||
"types": "index.d.ts",
|
||||
"browser": "index-browser.js",
|
||||
"exports": {
|
||||
"./package.json": "./package.json",
|
||||
".": {
|
||||
"require": {
|
||||
"node": "./index.js",
|
||||
"edge-light": "./wasm.js",
|
||||
"workerd": "./wasm.js",
|
||||
"worker": "./wasm.js",
|
||||
"browser": "./index-browser.js",
|
||||
"default": "./index.js"
|
||||
},
|
||||
"import": {
|
||||
"node": "./index.js",
|
||||
"edge-light": "./wasm.js",
|
||||
"workerd": "./wasm.js",
|
||||
"worker": "./wasm.js",
|
||||
"browser": "./index-browser.js",
|
||||
"default": "./index.js"
|
||||
},
|
||||
"default": "./index.js"
|
||||
},
|
||||
"./edge": {
|
||||
"types": "./edge.d.ts",
|
||||
"require": "./edge.js",
|
||||
"import": "./edge.js",
|
||||
"default": "./edge.js"
|
||||
},
|
||||
"./react-native": {
|
||||
"types": "./react-native.d.ts",
|
||||
"require": "./react-native.js",
|
||||
"import": "./react-native.js",
|
||||
"default": "./react-native.js"
|
||||
},
|
||||
"./extension": {
|
||||
"types": "./extension.d.ts",
|
||||
"require": "./extension.js",
|
||||
"import": "./extension.js",
|
||||
"default": "./extension.js"
|
||||
},
|
||||
"./index-browser": {
|
||||
"types": "./index.d.ts",
|
||||
"require": "./index-browser.js",
|
||||
"import": "./index-browser.js",
|
||||
"default": "./index-browser.js"
|
||||
},
|
||||
"./index": {
|
||||
"types": "./index.d.ts",
|
||||
"require": "./index.js",
|
||||
"import": "./index.js",
|
||||
"default": "./index.js"
|
||||
},
|
||||
"./wasm": {
|
||||
"types": "./wasm.d.ts",
|
||||
"require": "./wasm.js",
|
||||
"import": "./wasm.js",
|
||||
"default": "./wasm.js"
|
||||
},
|
||||
"./runtime/library": {
|
||||
"types": "./runtime/library.d.ts",
|
||||
"require": "./runtime/library.js",
|
||||
"import": "./runtime/library.js",
|
||||
"default": "./runtime/library.js"
|
||||
},
|
||||
"./runtime/binary": {
|
||||
"types": "./runtime/binary.d.ts",
|
||||
"require": "./runtime/binary.js",
|
||||
"import": "./runtime/binary.js",
|
||||
"default": "./runtime/binary.js"
|
||||
},
|
||||
"./generator-build": {
|
||||
"require": "./generator-build/index.js",
|
||||
"import": "./generator-build/index.js",
|
||||
"default": "./generator-build/index.js"
|
||||
},
|
||||
"./sql": {
|
||||
"require": {
|
||||
"types": "./sql.d.ts",
|
||||
"node": "./sql.js",
|
||||
"default": "./sql.js"
|
||||
},
|
||||
"import": {
|
||||
"types": "./sql.d.ts",
|
||||
"node": "./sql.mjs",
|
||||
"default": "./sql.mjs"
|
||||
},
|
||||
"default": "./sql.js"
|
||||
},
|
||||
"./*": "./*"
|
||||
},
|
||||
"version": "5.22.0",
|
||||
"sideEffects": false
|
||||
}
|
||||
437
node_modules/.prisma/client/schema.prisma
generated
vendored
Normal file
437
node_modules/.prisma/client/schema.prisma
generated
vendored
Normal file
@@ -0,0 +1,437 @@
|
||||
// Prisma schema for ShieldAI
|
||||
// All models for the multi-service SaaS platform
|
||||
|
||||
generator client {
|
||||
provider = "prisma-client-js"
|
||||
}
|
||||
|
||||
datasource db {
|
||||
provider = "postgresql"
|
||||
url = env("DATABASE_URL")
|
||||
}
|
||||
|
||||
// ============================================
|
||||
// User & Authentication Models
|
||||
// ============================================
|
||||
|
||||
model User {
|
||||
id String @id @default(uuid())
|
||||
email String @unique
|
||||
emailVerified DateTime?
|
||||
name String?
|
||||
image String?
|
||||
role UserRole @default(user)
|
||||
|
||||
// Relationships
|
||||
accounts Account[]
|
||||
sessions Session[]
|
||||
familyGroups FamilyGroupMember[]
|
||||
familyGroupOwned FamilyGroup[] @relation("FamilyGroupOwner")
|
||||
subscriptions Subscription[]
|
||||
alerts Alert[]
|
||||
voiceEnrollments VoiceEnrollment[]
|
||||
voiceAnalyses VoiceAnalysis[]
|
||||
spamFeedback SpamFeedback[]
|
||||
spamRules SpamRule[]
|
||||
|
||||
// Audit
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@index([email])
|
||||
@@index([role])
|
||||
}
|
||||
|
||||
enum UserRole {
|
||||
user
|
||||
family_admin
|
||||
family_member
|
||||
support
|
||||
}
|
||||
|
||||
model Account {
|
||||
id String @id @default(uuid())
|
||||
userId String
|
||||
provider String
|
||||
providerAccountId String
|
||||
access_token String?
|
||||
refresh_token String?
|
||||
expires_at Int?
|
||||
token_type String?
|
||||
scope String?
|
||||
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@unique([userId, provider, providerAccountId])
|
||||
@@index([userId])
|
||||
}
|
||||
|
||||
model Session {
|
||||
id String @id @default(uuid())
|
||||
userId String
|
||||
sessionToken String @unique
|
||||
expires DateTime
|
||||
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@index([sessionToken])
|
||||
@@index([userId])
|
||||
}
|
||||
|
||||
// ============================================
|
||||
// Family & Subscription Models
|
||||
// ============================================
|
||||
|
||||
model FamilyGroup {
|
||||
id String @id @default(uuid())
|
||||
name String
|
||||
ownerId String
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
owner User @relation("FamilyGroupOwner", fields: [ownerId], references: [id])
|
||||
members FamilyGroupMember[]
|
||||
subscriptions Subscription[]
|
||||
|
||||
@@index([ownerId])
|
||||
@@index([name])
|
||||
}
|
||||
|
||||
model FamilyGroupMember {
|
||||
id String @id @default(uuid())
|
||||
groupId String
|
||||
userId String
|
||||
role FamilyMemberRole @default(member)
|
||||
joinedAt DateTime @default(now())
|
||||
|
||||
group FamilyGroup @relation(fields: [groupId], references: [id], onDelete: Cascade)
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@unique([groupId, userId])
|
||||
@@index([groupId])
|
||||
@@index([userId])
|
||||
}
|
||||
|
||||
enum FamilyMemberRole {
|
||||
owner
|
||||
admin
|
||||
member
|
||||
}
|
||||
|
||||
model Subscription {
|
||||
id String @id @default(uuid())
|
||||
userId String
|
||||
familyGroupId String?
|
||||
stripeId String? @unique
|
||||
tier SubscriptionTier @default(basic)
|
||||
status SubscriptionStatus @default(active)
|
||||
currentPeriodStart DateTime
|
||||
currentPeriodEnd DateTime
|
||||
cancelAtPeriodEnd Boolean @default(false)
|
||||
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
familyGroup FamilyGroup? @relation(fields: [familyGroupId], references: [id])
|
||||
|
||||
watchlistItems WatchlistItem[]
|
||||
exposures Exposure[]
|
||||
alerts Alert[]
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@index([userId])
|
||||
@@index([familyGroupId])
|
||||
@@index([stripeId])
|
||||
@@index([tier])
|
||||
}
|
||||
|
||||
enum SubscriptionTier {
|
||||
basic
|
||||
plus
|
||||
premium
|
||||
}
|
||||
|
||||
enum SubscriptionStatus {
|
||||
active
|
||||
past_due
|
||||
canceled
|
||||
unpaid
|
||||
trialing
|
||||
}
|
||||
|
||||
// ============================================
|
||||
// DarkWatch Models (Dark Web Monitoring)
|
||||
// ============================================
|
||||
|
||||
model WatchlistItem {
|
||||
id String @id @default(uuid())
|
||||
subscriptionId String
|
||||
type WatchlistType
|
||||
value String
|
||||
hash String // SHA-256 hash for deduplication
|
||||
isActive Boolean @default(true)
|
||||
|
||||
subscription Subscription @relation(fields: [subscriptionId], references: [id], onDelete: Cascade)
|
||||
exposures Exposure[]
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@unique([subscriptionId, type, hash])
|
||||
@@index([subscriptionId])
|
||||
@@index([type])
|
||||
@@index([hash])
|
||||
}
|
||||
|
||||
enum WatchlistType {
|
||||
email
|
||||
phoneNumber
|
||||
ssn
|
||||
address
|
||||
domain
|
||||
}
|
||||
|
||||
model Exposure {
|
||||
id String @id @default(uuid())
|
||||
subscriptionId String
|
||||
watchlistItemId String?
|
||||
source ExposureSource
|
||||
dataType WatchlistType
|
||||
identifier String
|
||||
identifierHash String
|
||||
severity ExposureSeverity @default(info)
|
||||
metadata Json? // Additional source-specific data
|
||||
isFirstTime Boolean @default(false)
|
||||
|
||||
subscription Subscription @relation(fields: [subscriptionId], references: [id], onDelete: Cascade)
|
||||
watchlistItem WatchlistItem? @relation(fields: [watchlistItemId], references: [id])
|
||||
alerts Alert[]
|
||||
|
||||
detectedAt DateTime
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@index([subscriptionId])
|
||||
@@index([watchlistItemId])
|
||||
@@index([source])
|
||||
@@index([severity])
|
||||
@@index([detectedAt])
|
||||
}
|
||||
|
||||
enum ExposureSource {
|
||||
hibp // Have I Been Pwned
|
||||
securityTrails
|
||||
censys
|
||||
darkWebForum
|
||||
shodan
|
||||
honeypot
|
||||
}
|
||||
|
||||
enum ExposureSeverity {
|
||||
info
|
||||
warning
|
||||
critical
|
||||
}
|
||||
|
||||
// ============================================
|
||||
// Notification & Alert Models
|
||||
// ============================================
|
||||
|
||||
model Alert {
|
||||
id String @id @default(uuid())
|
||||
subscriptionId String
|
||||
userId String
|
||||
exposureId String?
|
||||
type AlertType
|
||||
title String
|
||||
message String
|
||||
severity AlertSeverity @default(info)
|
||||
isRead Boolean @default(false)
|
||||
readAt DateTime?
|
||||
channel AlertChannel[] // Array of notification channels
|
||||
|
||||
subscription Subscription @relation(fields: [subscriptionId], references: [id], onDelete: Cascade)
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
exposure Exposure? @relation(fields: [exposureId], references: [id])
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@index([subscriptionId])
|
||||
@@index([userId])
|
||||
@@index([isRead])
|
||||
@@index([createdAt])
|
||||
}
|
||||
|
||||
enum AlertType {
|
||||
exposure_detected
|
||||
exposure_resolved
|
||||
scan_complete
|
||||
subscription_changed
|
||||
system_warning
|
||||
}
|
||||
|
||||
enum AlertSeverity {
|
||||
info
|
||||
warning
|
||||
critical
|
||||
}
|
||||
|
||||
enum AlertChannel {
|
||||
email
|
||||
push
|
||||
sms
|
||||
}
|
||||
|
||||
// ============================================
|
||||
// VoicePrint Models (Voice Cloning Detection)
|
||||
// ============================================
|
||||
|
||||
model VoiceEnrollment {
|
||||
id String @id @default(uuid())
|
||||
userId String
|
||||
name String
|
||||
voiceHash String // FAISS embedding hash
|
||||
audioMetadata Json? // Sample rate, duration, etc.
|
||||
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
analyses VoiceAnalysis[]
|
||||
|
||||
isActive Boolean @default(true)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@index([userId])
|
||||
@@index([voiceHash])
|
||||
}
|
||||
|
||||
model VoiceAnalysis {
|
||||
id String @id @default(uuid())
|
||||
enrollmentId String?
|
||||
userId String
|
||||
audioHash String // Content hash of audio file
|
||||
isSynthetic Boolean
|
||||
confidence Float // 0.0 to 1.0
|
||||
analysisResult Json // Full ML analysis results
|
||||
audioUrl String // S3 storage URL
|
||||
|
||||
enrollment VoiceEnrollment? @relation(fields: [enrollmentId], references: [id])
|
||||
user User @relation(fields: [userId], references: [id])
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
|
||||
@@index([userId])
|
||||
@@index([enrollmentId])
|
||||
@@index([audioHash])
|
||||
}
|
||||
|
||||
// ============================================
|
||||
// SpamShield Models (Spam Detection)
|
||||
// ============================================
|
||||
|
||||
model SpamFeedback {
|
||||
id String @id @default(uuid())
|
||||
userId String
|
||||
phoneNumber String
|
||||
phoneNumberHash String // SHA-256 hash
|
||||
isSpam Boolean
|
||||
confidence Float? // ML model confidence
|
||||
feedbackType FeedbackType
|
||||
metadata Json? // Call duration, time, etc.
|
||||
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@index([userId])
|
||||
@@index([phoneNumberHash])
|
||||
@@index([isSpam])
|
||||
}
|
||||
|
||||
enum FeedbackType {
|
||||
initial_detection
|
||||
user_confirmation
|
||||
user_rejection
|
||||
auto_learned
|
||||
}
|
||||
|
||||
model SpamRule {
|
||||
id String @id @default(uuid())
|
||||
userId String?
|
||||
isGlobal Boolean @default(false)
|
||||
ruleType RuleType
|
||||
pattern String
|
||||
action RuleAction
|
||||
priority Int @default(0)
|
||||
isActive Boolean @default(true)
|
||||
|
||||
user User? @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
@@index([userId])
|
||||
@@index([isGlobal])
|
||||
@@index([ruleType])
|
||||
}
|
||||
|
||||
enum RuleType {
|
||||
phoneNumber
|
||||
areaCode
|
||||
prefix
|
||||
pattern
|
||||
reputation
|
||||
}
|
||||
|
||||
enum RuleAction {
|
||||
block
|
||||
flag
|
||||
allow
|
||||
challenge
|
||||
}
|
||||
|
||||
// ============================================
|
||||
// Audit & Analytics Models
|
||||
// ============================================
|
||||
|
||||
model AuditLog {
|
||||
id String @id @default(uuid())
|
||||
userId String?
|
||||
action String
|
||||
resource String
|
||||
resourceId String?
|
||||
changes Json? // Before/after values
|
||||
metadata Json?
|
||||
ipAddress String?
|
||||
userAgent String?
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
|
||||
@@index([userId])
|
||||
@@index([action])
|
||||
@@index([resource])
|
||||
@@index([createdAt])
|
||||
}
|
||||
|
||||
model KPISnapshot {
|
||||
id String @id @default(uuid())
|
||||
date DateTime @unique
|
||||
metricName String
|
||||
metricValue Float
|
||||
metadata Json?
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
|
||||
@@index([metricName])
|
||||
@@index([date])
|
||||
}
|
||||
1
node_modules/.prisma/client/wasm.d.ts
generated
vendored
Normal file
1
node_modules/.prisma/client/wasm.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from "./index"
|
||||
473
node_modules/.prisma/client/wasm.js
generated
vendored
Normal file
473
node_modules/.prisma/client/wasm.js
generated
vendored
Normal file
@@ -0,0 +1,473 @@
|
||||
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
|
||||
const {
|
||||
Decimal,
|
||||
objectEnumValues,
|
||||
makeStrictEnum,
|
||||
Public,
|
||||
getRuntime,
|
||||
skip
|
||||
} = require('@prisma/client/runtime/index-browser.js')
|
||||
|
||||
|
||||
const Prisma = {}
|
||||
|
||||
exports.Prisma = Prisma
|
||||
exports.$Enums = {}
|
||||
|
||||
/**
|
||||
* Prisma Client JS version: 5.22.0
|
||||
* Query Engine version: 605197351a3c8bdd595af2d2a9bc3025bca48ea2
|
||||
*/
|
||||
Prisma.prismaVersion = {
|
||||
client: "5.22.0",
|
||||
engine: "605197351a3c8bdd595af2d2a9bc3025bca48ea2"
|
||||
}
|
||||
|
||||
Prisma.PrismaClientKnownRequestError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientKnownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)};
|
||||
Prisma.PrismaClientUnknownRequestError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientUnknownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.PrismaClientRustPanicError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientRustPanicError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.PrismaClientInitializationError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientInitializationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.PrismaClientValidationError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`PrismaClientValidationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.NotFoundError = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`NotFoundError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.Decimal = Decimal
|
||||
|
||||
/**
|
||||
* Re-export of sql-template-tag
|
||||
*/
|
||||
Prisma.sql = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`sqltag is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.empty = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`empty is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.join = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`join is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.raw = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`raw is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.validator = Public.validator
|
||||
|
||||
/**
|
||||
* Extensions
|
||||
*/
|
||||
Prisma.getExtensionContext = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`Extensions.getExtensionContext is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
Prisma.defineExtension = () => {
|
||||
const runtimeName = getRuntime().prettyName;
|
||||
throw new Error(`Extensions.defineExtension is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
||||
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
||||
)}
|
||||
|
||||
/**
|
||||
* Shorthand utilities for JSON filtering
|
||||
*/
|
||||
Prisma.DbNull = objectEnumValues.instances.DbNull
|
||||
Prisma.JsonNull = objectEnumValues.instances.JsonNull
|
||||
Prisma.AnyNull = objectEnumValues.instances.AnyNull
|
||||
|
||||
Prisma.NullTypes = {
|
||||
DbNull: objectEnumValues.classes.DbNull,
|
||||
JsonNull: objectEnumValues.classes.JsonNull,
|
||||
AnyNull: objectEnumValues.classes.AnyNull
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Enums
|
||||
*/
|
||||
|
||||
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
||||
ReadUncommitted: 'ReadUncommitted',
|
||||
ReadCommitted: 'ReadCommitted',
|
||||
RepeatableRead: 'RepeatableRead',
|
||||
Serializable: 'Serializable'
|
||||
});
|
||||
|
||||
exports.Prisma.UserScalarFieldEnum = {
|
||||
id: 'id',
|
||||
email: 'email',
|
||||
emailVerified: 'emailVerified',
|
||||
name: 'name',
|
||||
image: 'image',
|
||||
role: 'role',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.AccountScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
provider: 'provider',
|
||||
providerAccountId: 'providerAccountId',
|
||||
access_token: 'access_token',
|
||||
refresh_token: 'refresh_token',
|
||||
expires_at: 'expires_at',
|
||||
token_type: 'token_type',
|
||||
scope: 'scope',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SessionScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
sessionToken: 'sessionToken',
|
||||
expires: 'expires',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.FamilyGroupScalarFieldEnum = {
|
||||
id: 'id',
|
||||
name: 'name',
|
||||
ownerId: 'ownerId',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.FamilyGroupMemberScalarFieldEnum = {
|
||||
id: 'id',
|
||||
groupId: 'groupId',
|
||||
userId: 'userId',
|
||||
role: 'role',
|
||||
joinedAt: 'joinedAt',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SubscriptionScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
familyGroupId: 'familyGroupId',
|
||||
stripeId: 'stripeId',
|
||||
tier: 'tier',
|
||||
status: 'status',
|
||||
currentPeriodStart: 'currentPeriodStart',
|
||||
currentPeriodEnd: 'currentPeriodEnd',
|
||||
cancelAtPeriodEnd: 'cancelAtPeriodEnd',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.WatchlistItemScalarFieldEnum = {
|
||||
id: 'id',
|
||||
subscriptionId: 'subscriptionId',
|
||||
type: 'type',
|
||||
value: 'value',
|
||||
hash: 'hash',
|
||||
isActive: 'isActive',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.ExposureScalarFieldEnum = {
|
||||
id: 'id',
|
||||
subscriptionId: 'subscriptionId',
|
||||
watchlistItemId: 'watchlistItemId',
|
||||
source: 'source',
|
||||
dataType: 'dataType',
|
||||
identifier: 'identifier',
|
||||
identifierHash: 'identifierHash',
|
||||
severity: 'severity',
|
||||
metadata: 'metadata',
|
||||
isFirstTime: 'isFirstTime',
|
||||
detectedAt: 'detectedAt',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.AlertScalarFieldEnum = {
|
||||
id: 'id',
|
||||
subscriptionId: 'subscriptionId',
|
||||
userId: 'userId',
|
||||
exposureId: 'exposureId',
|
||||
type: 'type',
|
||||
title: 'title',
|
||||
message: 'message',
|
||||
severity: 'severity',
|
||||
isRead: 'isRead',
|
||||
readAt: 'readAt',
|
||||
channel: 'channel',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.VoiceEnrollmentScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
name: 'name',
|
||||
voiceHash: 'voiceHash',
|
||||
audioMetadata: 'audioMetadata',
|
||||
isActive: 'isActive',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.VoiceAnalysisScalarFieldEnum = {
|
||||
id: 'id',
|
||||
enrollmentId: 'enrollmentId',
|
||||
userId: 'userId',
|
||||
audioHash: 'audioHash',
|
||||
isSynthetic: 'isSynthetic',
|
||||
confidence: 'confidence',
|
||||
analysisResult: 'analysisResult',
|
||||
audioUrl: 'audioUrl',
|
||||
createdAt: 'createdAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SpamFeedbackScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
phoneNumber: 'phoneNumber',
|
||||
phoneNumberHash: 'phoneNumberHash',
|
||||
isSpam: 'isSpam',
|
||||
confidence: 'confidence',
|
||||
feedbackType: 'feedbackType',
|
||||
metadata: 'metadata',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SpamRuleScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
isGlobal: 'isGlobal',
|
||||
ruleType: 'ruleType',
|
||||
pattern: 'pattern',
|
||||
action: 'action',
|
||||
priority: 'priority',
|
||||
isActive: 'isActive',
|
||||
createdAt: 'createdAt',
|
||||
updatedAt: 'updatedAt'
|
||||
};
|
||||
|
||||
exports.Prisma.AuditLogScalarFieldEnum = {
|
||||
id: 'id',
|
||||
userId: 'userId',
|
||||
action: 'action',
|
||||
resource: 'resource',
|
||||
resourceId: 'resourceId',
|
||||
changes: 'changes',
|
||||
metadata: 'metadata',
|
||||
ipAddress: 'ipAddress',
|
||||
userAgent: 'userAgent',
|
||||
createdAt: 'createdAt'
|
||||
};
|
||||
|
||||
exports.Prisma.KPISnapshotScalarFieldEnum = {
|
||||
id: 'id',
|
||||
date: 'date',
|
||||
metricName: 'metricName',
|
||||
metricValue: 'metricValue',
|
||||
metadata: 'metadata',
|
||||
createdAt: 'createdAt'
|
||||
};
|
||||
|
||||
exports.Prisma.SortOrder = {
|
||||
asc: 'asc',
|
||||
desc: 'desc'
|
||||
};
|
||||
|
||||
exports.Prisma.NullableJsonNullValueInput = {
|
||||
DbNull: Prisma.DbNull,
|
||||
JsonNull: Prisma.JsonNull
|
||||
};
|
||||
|
||||
exports.Prisma.JsonNullValueInput = {
|
||||
JsonNull: Prisma.JsonNull
|
||||
};
|
||||
|
||||
exports.Prisma.QueryMode = {
|
||||
default: 'default',
|
||||
insensitive: 'insensitive'
|
||||
};
|
||||
|
||||
exports.Prisma.NullsOrder = {
|
||||
first: 'first',
|
||||
last: 'last'
|
||||
};
|
||||
|
||||
exports.Prisma.JsonNullValueFilter = {
|
||||
DbNull: Prisma.DbNull,
|
||||
JsonNull: Prisma.JsonNull,
|
||||
AnyNull: Prisma.AnyNull
|
||||
};
|
||||
exports.UserRole = exports.$Enums.UserRole = {
|
||||
user: 'user',
|
||||
family_admin: 'family_admin',
|
||||
family_member: 'family_member',
|
||||
support: 'support'
|
||||
};
|
||||
|
||||
exports.FamilyMemberRole = exports.$Enums.FamilyMemberRole = {
|
||||
owner: 'owner',
|
||||
admin: 'admin',
|
||||
member: 'member'
|
||||
};
|
||||
|
||||
exports.SubscriptionTier = exports.$Enums.SubscriptionTier = {
|
||||
basic: 'basic',
|
||||
plus: 'plus',
|
||||
premium: 'premium'
|
||||
};
|
||||
|
||||
exports.SubscriptionStatus = exports.$Enums.SubscriptionStatus = {
|
||||
active: 'active',
|
||||
past_due: 'past_due',
|
||||
canceled: 'canceled',
|
||||
unpaid: 'unpaid',
|
||||
trialing: 'trialing'
|
||||
};
|
||||
|
||||
exports.WatchlistType = exports.$Enums.WatchlistType = {
|
||||
email: 'email',
|
||||
phoneNumber: 'phoneNumber',
|
||||
ssn: 'ssn',
|
||||
address: 'address',
|
||||
domain: 'domain'
|
||||
};
|
||||
|
||||
exports.ExposureSource = exports.$Enums.ExposureSource = {
|
||||
hibp: 'hibp',
|
||||
securityTrails: 'securityTrails',
|
||||
censys: 'censys',
|
||||
darkWebForum: 'darkWebForum',
|
||||
shodan: 'shodan',
|
||||
honeypot: 'honeypot'
|
||||
};
|
||||
|
||||
exports.ExposureSeverity = exports.$Enums.ExposureSeverity = {
|
||||
info: 'info',
|
||||
warning: 'warning',
|
||||
critical: 'critical'
|
||||
};
|
||||
|
||||
exports.AlertType = exports.$Enums.AlertType = {
|
||||
exposure_detected: 'exposure_detected',
|
||||
exposure_resolved: 'exposure_resolved',
|
||||
scan_complete: 'scan_complete',
|
||||
subscription_changed: 'subscription_changed',
|
||||
system_warning: 'system_warning'
|
||||
};
|
||||
|
||||
exports.AlertSeverity = exports.$Enums.AlertSeverity = {
|
||||
info: 'info',
|
||||
warning: 'warning',
|
||||
critical: 'critical'
|
||||
};
|
||||
|
||||
exports.AlertChannel = exports.$Enums.AlertChannel = {
|
||||
email: 'email',
|
||||
push: 'push',
|
||||
sms: 'sms'
|
||||
};
|
||||
|
||||
exports.FeedbackType = exports.$Enums.FeedbackType = {
|
||||
initial_detection: 'initial_detection',
|
||||
user_confirmation: 'user_confirmation',
|
||||
user_rejection: 'user_rejection',
|
||||
auto_learned: 'auto_learned'
|
||||
};
|
||||
|
||||
exports.RuleType = exports.$Enums.RuleType = {
|
||||
phoneNumber: 'phoneNumber',
|
||||
areaCode: 'areaCode',
|
||||
prefix: 'prefix',
|
||||
pattern: 'pattern',
|
||||
reputation: 'reputation'
|
||||
};
|
||||
|
||||
exports.RuleAction = exports.$Enums.RuleAction = {
|
||||
block: 'block',
|
||||
flag: 'flag',
|
||||
allow: 'allow',
|
||||
challenge: 'challenge'
|
||||
};
|
||||
|
||||
exports.Prisma.ModelName = {
|
||||
User: 'User',
|
||||
Account: 'Account',
|
||||
Session: 'Session',
|
||||
FamilyGroup: 'FamilyGroup',
|
||||
FamilyGroupMember: 'FamilyGroupMember',
|
||||
Subscription: 'Subscription',
|
||||
WatchlistItem: 'WatchlistItem',
|
||||
Exposure: 'Exposure',
|
||||
Alert: 'Alert',
|
||||
VoiceEnrollment: 'VoiceEnrollment',
|
||||
VoiceAnalysis: 'VoiceAnalysis',
|
||||
SpamFeedback: 'SpamFeedback',
|
||||
SpamRule: 'SpamRule',
|
||||
AuditLog: 'AuditLog',
|
||||
KPISnapshot: 'KPISnapshot'
|
||||
};
|
||||
|
||||
/**
|
||||
* This is a stub Prisma Client that will error at runtime if called.
|
||||
*/
|
||||
class PrismaClient {
|
||||
constructor() {
|
||||
return new Proxy(this, {
|
||||
get(target, prop) {
|
||||
let message
|
||||
const runtime = getRuntime()
|
||||
if (runtime.isEdge) {
|
||||
message = `PrismaClient is not configured to run in ${runtime.prettyName}. In order to run Prisma Client on edge runtime, either:
|
||||
- Use Prisma Accelerate: https://pris.ly/d/accelerate
|
||||
- Use Driver Adapters: https://pris.ly/d/driver-adapters
|
||||
`;
|
||||
} else {
|
||||
message = 'PrismaClient is unable to run in this browser environment, or has been bundled for the browser (running in `' + runtime.prettyName + '`).'
|
||||
}
|
||||
|
||||
message += `
|
||||
If this is unexpected, please open an issue: https://pris.ly/prisma-prisma-bug-report`
|
||||
|
||||
throw new Error(message)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
exports.PrismaClient = PrismaClient
|
||||
|
||||
Object.assign(exports, Prisma)
|
||||
2
node_modules/.vite/vitest/results.json
generated
vendored
2
node_modules/.vite/vitest/results.json
generated
vendored
@@ -1 +1 @@
|
||||
{"version":"1.6.1","results":[[":server/trpc/character-router.test.ts",{"duration":46,"failed":false}],[":server/trpc/project-router.test.ts",{"duration":52,"failed":false}],[":server/trpc/revisions-router.test.ts",{"duration":47,"failed":false}]]}
|
||||
{"version":"1.6.1","results":[[":apps/api/src/__tests__/sms-classifier-race-condition.test.ts",{"duration":413,"failed":false}]]}
|
||||
23
node_modules/@ioredis/commands/LICENSE
generated
vendored
Normal file
23
node_modules/@ioredis/commands/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2022 Zihua Li
|
||||
Copyright (c) 2015 NodeRedis
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
43
node_modules/@ioredis/commands/README.md
generated
vendored
Normal file
43
node_modules/@ioredis/commands/README.md
generated
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
# Redis Commands
|
||||
|
||||
This module exports all the commands that Redis supports.
|
||||
|
||||
## Install
|
||||
|
||||
```shell
|
||||
$ npm install @ioredis/commands
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
const commands = require('@ioredis/commands');
|
||||
```
|
||||
|
||||
`.list` is an array contains all the lowercased commands:
|
||||
|
||||
```js
|
||||
commands.list.forEach((command) => {
|
||||
console.log(command);
|
||||
});
|
||||
```
|
||||
|
||||
`.exists()` is used to check if the command exists:
|
||||
|
||||
```js
|
||||
commands.exists('set') // true
|
||||
commands.exists('other-command') // false
|
||||
```
|
||||
|
||||
`.hasFlag()` is used to check if the command has the flag:
|
||||
|
||||
```js
|
||||
commands.hasFlag('set', 'readonly') // false
|
||||
```
|
||||
|
||||
`.getKeyIndexes()` is used to get the indexes of keys in the command arguments:
|
||||
|
||||
```js
|
||||
commands.getKeyIndexes('set', ['key', 'value']) // [0]
|
||||
commands.getKeyIndexes('mget', ['key1', 'key2']) // [0, 1]
|
||||
```
|
||||
2578
node_modules/@ioredis/commands/built/commands.json
generated
vendored
Normal file
2578
node_modules/@ioredis/commands/built/commands.json
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
34
node_modules/@ioredis/commands/built/index.d.ts
generated
vendored
Normal file
34
node_modules/@ioredis/commands/built/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
/// <reference types="node" />
|
||||
/**
|
||||
* Redis command list
|
||||
*
|
||||
* All commands are lowercased.
|
||||
*/
|
||||
export declare const list: string[];
|
||||
/**
|
||||
* Check if the command exists
|
||||
*/
|
||||
export declare function exists(commandName: string, options?: {
|
||||
caseInsensitive?: boolean;
|
||||
}): boolean;
|
||||
/**
|
||||
* Check if the command has the flag
|
||||
*
|
||||
* Some of possible flags: readonly, noscript, loading
|
||||
*/
|
||||
export declare function hasFlag(commandName: string, flag: string, options?: {
|
||||
nameCaseInsensitive?: boolean;
|
||||
}): boolean;
|
||||
/**
|
||||
* Get indexes of keys in the command arguments
|
||||
*
|
||||
* @example
|
||||
* ```javascript
|
||||
* getKeyIndexes('set', ['key', 'value']) // [0]
|
||||
* getKeyIndexes('mget', ['key1', 'key2']) // [0, 1]
|
||||
* ```
|
||||
*/
|
||||
export declare function getKeyIndexes(commandName: string, args: (string | Buffer | number)[], options?: {
|
||||
parseExternalKey?: boolean;
|
||||
nameCaseInsensitive?: boolean;
|
||||
}): number[];
|
||||
217
node_modules/@ioredis/commands/built/index.js
generated
vendored
Normal file
217
node_modules/@ioredis/commands/built/index.js
generated
vendored
Normal file
@@ -0,0 +1,217 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.getKeyIndexes = exports.hasFlag = exports.exists = exports.list = void 0;
|
||||
const commands_json_1 = __importDefault(require("./commands.json"));
|
||||
/**
|
||||
* Redis command list
|
||||
*
|
||||
* All commands are lowercased.
|
||||
*/
|
||||
exports.list = Object.keys(commands_json_1.default);
|
||||
const flags = {};
|
||||
exports.list.forEach((commandName) => {
|
||||
flags[commandName] = commands_json_1.default[commandName].flags.reduce(function (flags, flag) {
|
||||
flags[flag] = true;
|
||||
return flags;
|
||||
}, {});
|
||||
});
|
||||
/**
|
||||
* Check if the command exists
|
||||
*/
|
||||
function exists(commandName, options) {
|
||||
commandName = (options === null || options === void 0 ? void 0 : options.caseInsensitive)
|
||||
? String(commandName).toLowerCase()
|
||||
: commandName;
|
||||
return Boolean(commands_json_1.default[commandName]);
|
||||
}
|
||||
exports.exists = exists;
|
||||
/**
|
||||
* Check if the command has the flag
|
||||
*
|
||||
* Some of possible flags: readonly, noscript, loading
|
||||
*/
|
||||
function hasFlag(commandName, flag, options) {
|
||||
commandName = (options === null || options === void 0 ? void 0 : options.nameCaseInsensitive)
|
||||
? String(commandName).toLowerCase()
|
||||
: commandName;
|
||||
if (!flags[commandName]) {
|
||||
throw new Error("Unknown command " + commandName);
|
||||
}
|
||||
return Boolean(flags[commandName][flag]);
|
||||
}
|
||||
exports.hasFlag = hasFlag;
|
||||
/**
|
||||
* Get indexes of keys in the command arguments
|
||||
*
|
||||
* @example
|
||||
* ```javascript
|
||||
* getKeyIndexes('set', ['key', 'value']) // [0]
|
||||
* getKeyIndexes('mget', ['key1', 'key2']) // [0, 1]
|
||||
* ```
|
||||
*/
|
||||
function getKeyIndexes(commandName, args, options) {
|
||||
commandName = (options === null || options === void 0 ? void 0 : options.nameCaseInsensitive)
|
||||
? String(commandName).toLowerCase()
|
||||
: commandName;
|
||||
const command = commands_json_1.default[commandName];
|
||||
if (!command) {
|
||||
throw new Error("Unknown command " + commandName);
|
||||
}
|
||||
if (!Array.isArray(args)) {
|
||||
throw new Error("Expect args to be an array");
|
||||
}
|
||||
const keys = [];
|
||||
const parseExternalKey = Boolean(options && options.parseExternalKey);
|
||||
const takeDynamicKeys = (args, startIndex) => {
|
||||
const keys = [];
|
||||
const keyStop = Number(args[startIndex]);
|
||||
for (let i = 0; i < keyStop; i++) {
|
||||
keys.push(i + startIndex + 1);
|
||||
}
|
||||
return keys;
|
||||
};
|
||||
const takeKeyAfterToken = (args, startIndex, token) => {
|
||||
for (let i = startIndex; i < args.length - 1; i += 1) {
|
||||
if (String(args[i]).toLowerCase() === token.toLowerCase()) {
|
||||
return i + 1;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
};
|
||||
switch (commandName) {
|
||||
case "zunionstore":
|
||||
case "zinterstore":
|
||||
case "zdiffstore":
|
||||
keys.push(0, ...takeDynamicKeys(args, 1));
|
||||
break;
|
||||
case "eval":
|
||||
case "evalsha":
|
||||
case "eval_ro":
|
||||
case "evalsha_ro":
|
||||
case "fcall":
|
||||
case "fcall_ro":
|
||||
case "blmpop":
|
||||
case "bzmpop":
|
||||
keys.push(...takeDynamicKeys(args, 1));
|
||||
break;
|
||||
case "sintercard":
|
||||
case "lmpop":
|
||||
case "zunion":
|
||||
case "zinter":
|
||||
case "zmpop":
|
||||
case "zintercard":
|
||||
case "zdiff": {
|
||||
keys.push(...takeDynamicKeys(args, 0));
|
||||
break;
|
||||
}
|
||||
case "georadius": {
|
||||
keys.push(0);
|
||||
const storeKey = takeKeyAfterToken(args, 5, "STORE");
|
||||
if (storeKey)
|
||||
keys.push(storeKey);
|
||||
const distKey = takeKeyAfterToken(args, 5, "STOREDIST");
|
||||
if (distKey)
|
||||
keys.push(distKey);
|
||||
break;
|
||||
}
|
||||
case "georadiusbymember": {
|
||||
keys.push(0);
|
||||
const storeKey = takeKeyAfterToken(args, 4, "STORE");
|
||||
if (storeKey)
|
||||
keys.push(storeKey);
|
||||
const distKey = takeKeyAfterToken(args, 4, "STOREDIST");
|
||||
if (distKey)
|
||||
keys.push(distKey);
|
||||
break;
|
||||
}
|
||||
case "sort":
|
||||
case "sort_ro":
|
||||
keys.push(0);
|
||||
for (let i = 1; i < args.length - 1; i++) {
|
||||
let arg = args[i];
|
||||
if (typeof arg !== "string") {
|
||||
continue;
|
||||
}
|
||||
const directive = arg.toUpperCase();
|
||||
if (directive === "GET") {
|
||||
i += 1;
|
||||
arg = args[i];
|
||||
if (arg !== "#") {
|
||||
if (parseExternalKey) {
|
||||
keys.push([i, getExternalKeyNameLength(arg)]);
|
||||
}
|
||||
else {
|
||||
keys.push(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (directive === "BY") {
|
||||
i += 1;
|
||||
if (parseExternalKey) {
|
||||
keys.push([i, getExternalKeyNameLength(args[i])]);
|
||||
}
|
||||
else {
|
||||
keys.push(i);
|
||||
}
|
||||
}
|
||||
else if (directive === "STORE") {
|
||||
i += 1;
|
||||
keys.push(i);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "migrate":
|
||||
if (args[2] === "") {
|
||||
for (let i = 5; i < args.length - 1; i++) {
|
||||
const arg = args[i];
|
||||
if (typeof arg === "string" && arg.toUpperCase() === "KEYS") {
|
||||
for (let j = i + 1; j < args.length; j++) {
|
||||
keys.push(j);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
keys.push(2);
|
||||
}
|
||||
break;
|
||||
case "xreadgroup":
|
||||
case "xread":
|
||||
// Keys are 1st half of the args after STREAMS argument.
|
||||
for (let i = commandName === "xread" ? 0 : 3; i < args.length - 1; i++) {
|
||||
if (String(args[i]).toUpperCase() === "STREAMS") {
|
||||
for (let j = i + 1; j <= i + (args.length - 1 - i) / 2; j++) {
|
||||
keys.push(j);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
// Step has to be at least one in this case, otherwise the command does
|
||||
// not contain a key.
|
||||
if (command.step > 0) {
|
||||
const keyStart = command.keyStart - 1;
|
||||
const keyStop = command.keyStop > 0
|
||||
? command.keyStop
|
||||
: args.length + command.keyStop + 1;
|
||||
for (let i = keyStart; i < keyStop; i += command.step) {
|
||||
keys.push(i);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
return keys;
|
||||
}
|
||||
exports.getKeyIndexes = getKeyIndexes;
|
||||
function getExternalKeyNameLength(key) {
|
||||
if (typeof key !== "string") {
|
||||
key = String(key);
|
||||
}
|
||||
const hashPos = key.indexOf("->");
|
||||
return hashPos === -1 ? key.length : hashPos;
|
||||
}
|
||||
52
node_modules/@ioredis/commands/package.json
generated
vendored
Normal file
52
node_modules/@ioredis/commands/package.json
generated
vendored
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"name": "@ioredis/commands",
|
||||
"version": "1.5.1",
|
||||
"description": "Redis commands",
|
||||
"main": "built/index.js",
|
||||
"files": [
|
||||
"built/",
|
||||
"commands.json"
|
||||
],
|
||||
"scripts": {
|
||||
"pretest": "npm run lint",
|
||||
"test": "mocha",
|
||||
"build": "rm -rf built && tsc",
|
||||
"gen": "node tools/build",
|
||||
"lint": "standard --fix --verbose | snazzy",
|
||||
"release": "release-it"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"registry": "https://registry.npmjs.org/"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/ioredis/commands.git"
|
||||
},
|
||||
"keywords": [
|
||||
"redis",
|
||||
"commands",
|
||||
"prefix"
|
||||
],
|
||||
"author": "Zihua Li <i@zihua.li> (http://zihua.li)",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/ioredis/commands/issues"
|
||||
},
|
||||
"homepage": "https://github.com/ioredis/commands",
|
||||
"devDependencies": {
|
||||
"@release-it/conventional-changelog": "^4.2.0",
|
||||
"@semantic-release/changelog": "^6.0.1",
|
||||
"@semantic-release/commit-analyzer": "^9.0.2",
|
||||
"@semantic-release/git": "^10.0.1",
|
||||
"chai": "^4.3.6",
|
||||
"ioredis": "^5.0.6",
|
||||
"mocha": "^9.2.1",
|
||||
"release-it": "^14.12.5",
|
||||
"safe-stable-stringify": "^2.3.1",
|
||||
"semantic-release": "^19.0.2",
|
||||
"snazzy": "^9.0.0",
|
||||
"standard": "^16.0.4",
|
||||
"typescript": "^4.6.2"
|
||||
}
|
||||
}
|
||||
1
node_modules/@lukeed/csprng/browser/index.d.ts
generated
vendored
Normal file
1
node_modules/@lukeed/csprng/browser/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export function random<T=Uint8Array>(len: number): T;
|
||||
5
node_modules/@lukeed/csprng/browser/index.js
generated
vendored
Normal file
5
node_modules/@lukeed/csprng/browser/index.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
function random(len) {
|
||||
return crypto.getRandomValues(new Uint8Array(len));
|
||||
}
|
||||
|
||||
exports.random = random;
|
||||
1
node_modules/@lukeed/csprng/browser/index.min.js
generated
vendored
Normal file
1
node_modules/@lukeed/csprng/browser/index.min.js
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(e["@lukeed/csprng"]={})}(this,(function(e){e.random=function(e){return crypto.getRandomValues(new Uint8Array(e))}}));
|
||||
3
node_modules/@lukeed/csprng/browser/index.mjs
generated
vendored
Normal file
3
node_modules/@lukeed/csprng/browser/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export function random(len) {
|
||||
return crypto.getRandomValues(new Uint8Array(len));
|
||||
}
|
||||
1
node_modules/@lukeed/csprng/index.d.ts
generated
vendored
Normal file
1
node_modules/@lukeed/csprng/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export function random<T = Buffer | Uint8Array>(len: number): T;
|
||||
9
node_modules/@lukeed/csprng/license
generated
vendored
Normal file
9
node_modules/@lukeed/csprng/license
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) Luke Edwards <luke.edwards05@gmail.com> (lukeed.com)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
1
node_modules/@lukeed/csprng/node/index.d.ts
generated
vendored
Normal file
1
node_modules/@lukeed/csprng/node/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export function random<T=Buffer>(len: number): T;
|
||||
7
node_modules/@lukeed/csprng/node/index.js
generated
vendored
Normal file
7
node_modules/@lukeed/csprng/node/index.js
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
const { randomBytes } = require('crypto');
|
||||
|
||||
function random(len) {
|
||||
return randomBytes(len);
|
||||
}
|
||||
|
||||
exports.random = random;
|
||||
1
node_modules/@lukeed/csprng/node/index.min.js
generated
vendored
Normal file
1
node_modules/@lukeed/csprng/node/index.min.js
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(e["@lukeed/csprng"]={})}(this,(function(e){const{randomBytes:n}=require("crypto");e.random=function(e){return n(e)}}));
|
||||
5
node_modules/@lukeed/csprng/node/index.mjs
generated
vendored
Normal file
5
node_modules/@lukeed/csprng/node/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
import { randomBytes } from 'crypto';
|
||||
|
||||
export function random(len) {
|
||||
return randomBytes(len);
|
||||
}
|
||||
73
node_modules/@lukeed/csprng/package.json
generated
vendored
Normal file
73
node_modules/@lukeed/csprng/package.json
generated
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"version": "1.1.0",
|
||||
"name": "@lukeed/csprng",
|
||||
"repository": "lukeed/csprng",
|
||||
"description": "An alias package for `crypto.randomBytes` in Node.js and/or browsers",
|
||||
"unpkg": "browser/index.min.js",
|
||||
"browser": "browser/index.mjs",
|
||||
"module": "node/index.mjs",
|
||||
"main": "node/index.js",
|
||||
"types": "index.d.ts",
|
||||
"license": "MIT",
|
||||
"author": {
|
||||
"name": "Luke Edwards",
|
||||
"email": "luke.edwards05@gmail.com",
|
||||
"url": "https://lukeed.com"
|
||||
},
|
||||
"exports": {
|
||||
".": {
|
||||
"browser": {
|
||||
"types": "./browser/index.d.ts",
|
||||
"import": "./browser/index.mjs",
|
||||
"require": "./browser/index.js"
|
||||
},
|
||||
"types": "./node/index.d.ts",
|
||||
"import": "./node/index.mjs",
|
||||
"require": "./node/index.js"
|
||||
},
|
||||
"./node": {
|
||||
"types": "./node/index.d.ts",
|
||||
"import": "./node/index.mjs",
|
||||
"require": "./node/index.js"
|
||||
},
|
||||
"./browser": {
|
||||
"types": "./browser/index.d.ts",
|
||||
"import": "./browser/index.mjs",
|
||||
"require": "./browser/index.js"
|
||||
},
|
||||
"./package.json": "./package.json"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"scripts": {
|
||||
"build": "bundt",
|
||||
"test": "uvu -r esm test"
|
||||
},
|
||||
"files": [
|
||||
"*.d.ts",
|
||||
"browser",
|
||||
"node"
|
||||
],
|
||||
"modes": {
|
||||
"browser": "src/browser.js",
|
||||
"node": "src/node.js"
|
||||
},
|
||||
"keywords": [
|
||||
"crypto",
|
||||
"browser",
|
||||
"isomorphic",
|
||||
"getRandomValues",
|
||||
"randomFill",
|
||||
"random",
|
||||
"csprng"
|
||||
],
|
||||
"devDependencies": {
|
||||
"bundt": "1.1.1",
|
||||
"esm": "3.2.25",
|
||||
"uvu": "0.5.2"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
}
|
||||
}
|
||||
76
node_modules/@lukeed/csprng/readme.md
generated
vendored
Normal file
76
node_modules/@lukeed/csprng/readme.md
generated
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
# @lukeed/csprng  [](https://codecov.io/gh/lukeed/csprng)
|
||||
|
||||
> A tiny (~90B) isomorphic wrapper for `crypto.randomBytes` in Node.js and browsers.
|
||||
|
||||
***Why?***
|
||||
|
||||
This package allows you/dependents to import a cryptographically secure generator (CSPRNG) _without_ worrying about (aka, checking the runtime environment for) the different `crypto` implementations. Instead, by extracting a `random` function into a third-party/external package, one can rely on bundlers and/or module resolution to load the correct implementation for the desired environment.
|
||||
|
||||
In other words, one can include the browser-specific implementation when bundling for the browser, completely ignoring the Node.js code – or vice versa.
|
||||
|
||||
By default, this module is set up to work with Rollup, webpack, and Node's native ESM _and_ CommonJS path resolutions.
|
||||
|
||||
## Install
|
||||
|
||||
```
|
||||
$ npm install --save @lukeed/csprng
|
||||
```
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
***General Usage***
|
||||
|
||||
```js
|
||||
// Rely on bundlers/environment detection
|
||||
import { random } from '@lukeed/csprng';
|
||||
|
||||
const array = random(12);
|
||||
// browser => Uint8Array(12) [...]
|
||||
// Node.js => <Buffer ...>
|
||||
```
|
||||
|
||||
***Specific Environment***
|
||||
|
||||
```js
|
||||
// Choose the "browser" implementation explicitly.
|
||||
//=> ! NOTE ! Will break in Node.js environments!
|
||||
import { random } from '@lukeed/csprng/browser';
|
||||
|
||||
const array = random(1024);
|
||||
//=> Uint8Array(1024) [...]
|
||||
|
||||
// ---
|
||||
|
||||
// Choose the "node" implementation explicitly.
|
||||
//=> ! NOTE ! Will break in browser environments!
|
||||
import { random } from '@lukeed/csprng/node';
|
||||
|
||||
const array = random(1024);
|
||||
//=> <Buffer ...>
|
||||
```
|
||||
|
||||
|
||||
## API
|
||||
|
||||
### random(length)
|
||||
Returns: `Buffer` or `Uint8Array`
|
||||
|
||||
Returns a typed array of given `length`.
|
||||
|
||||
|
||||
#### length
|
||||
Type: `Number`
|
||||
|
||||
The desired length of your output TypedArray.
|
||||
|
||||
|
||||
## Related
|
||||
|
||||
- [uid](https://github.com/lukeed/uid) - A tiny (134B) and fast utility to randomize unique IDs of fixed length
|
||||
- [@lukeed/uuid](https://github.com/lukeed/uuid) - A tiny (230B), fast, and cryptographically secure UUID (V4) generator for Node and the browser
|
||||
|
||||
|
||||
## License
|
||||
|
||||
MIT © [Luke Edwards](https://lukeed.com)
|
||||
26
node_modules/@lukeed/uuid/dist/index.js
generated
vendored
Normal file
26
node_modules/@lukeed/uuid/dist/index.js
generated
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
var IDX=256, HEX=[], BUFFER;
|
||||
while (IDX--) HEX[IDX] = (IDX + 256).toString(16).substring(1);
|
||||
|
||||
function v4() {
|
||||
var i=0, num, out='';
|
||||
|
||||
if (!BUFFER || ((IDX + 16) > 256)) {
|
||||
BUFFER = Array(i=256);
|
||||
while (i--) BUFFER[i] = 256 * Math.random() | 0;
|
||||
i = IDX = 0;
|
||||
}
|
||||
|
||||
for (; i < 16; i++) {
|
||||
num = BUFFER[IDX + i];
|
||||
if (i==6) out += HEX[num & 15 | 64];
|
||||
else if (i==8) out += HEX[num & 63 | 128];
|
||||
else out += HEX[num];
|
||||
|
||||
if (i & 1 && i > 1 && i < 11) out += '-';
|
||||
}
|
||||
|
||||
IDX++;
|
||||
return out;
|
||||
}
|
||||
|
||||
exports.v4 = v4;
|
||||
1
node_modules/@lukeed/uuid/dist/index.min.js
generated
vendored
Normal file
1
node_modules/@lukeed/uuid/dist/index.min.js
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(e.uuid={})}(this,(function(e){for(var n,o=256,t=[];o--;)t[o]=(o+256).toString(16).substring(1);e.v4=function(){var e,f=0,r="";if(!n||o+16>256){for(n=Array(f=256);f--;)n[f]=256*Math.random()|0;f=o=0}for(;f<16;f++)e=n[o+f],r+=6==f?t[15&e|64]:8==f?t[63&e|128]:t[e],1&f&&f>1&&f<11&&(r+="-");return o++,r}}));
|
||||
24
node_modules/@lukeed/uuid/dist/index.mjs
generated
vendored
Normal file
24
node_modules/@lukeed/uuid/dist/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
var IDX=256, HEX=[], BUFFER;
|
||||
while (IDX--) HEX[IDX] = (IDX + 256).toString(16).substring(1);
|
||||
|
||||
export function v4() {
|
||||
var i=0, num, out='';
|
||||
|
||||
if (!BUFFER || ((IDX + 16) > 256)) {
|
||||
BUFFER = Array(i=256);
|
||||
while (i--) BUFFER[i] = 256 * Math.random() | 0;
|
||||
i = IDX = 0;
|
||||
}
|
||||
|
||||
for (; i < 16; i++) {
|
||||
num = BUFFER[IDX + i];
|
||||
if (i==6) out += HEX[num & 15 | 64];
|
||||
else if (i==8) out += HEX[num & 63 | 128];
|
||||
else out += HEX[num];
|
||||
|
||||
if (i & 1 && i > 1 && i < 11) out += '-';
|
||||
}
|
||||
|
||||
IDX++;
|
||||
return out;
|
||||
}
|
||||
1
node_modules/@lukeed/uuid/index.d.ts
generated
vendored
Normal file
1
node_modules/@lukeed/uuid/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export function v4(): string;
|
||||
9
node_modules/@lukeed/uuid/license
generated
vendored
Normal file
9
node_modules/@lukeed/uuid/license
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) Luke Edwards <luke.edwards05@gmail.com> (lukeed.com)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
69
node_modules/@lukeed/uuid/package.json
generated
vendored
Normal file
69
node_modules/@lukeed/uuid/package.json
generated
vendored
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"version": "2.0.1",
|
||||
"name": "@lukeed/uuid",
|
||||
"repository": "lukeed/uuid",
|
||||
"description": "A tiny (230B) and fast UUID (v4) generator for Node and the browser",
|
||||
"unpkg": "dist/index.min.js",
|
||||
"module": "dist/index.mjs",
|
||||
"main": "dist/index.js",
|
||||
"types": "index.d.ts",
|
||||
"umd:name": "uuid",
|
||||
"license": "MIT",
|
||||
"author": {
|
||||
"name": "Luke Edwards",
|
||||
"email": "luke.edwards05@gmail.com",
|
||||
"url": "https://lukeed.com"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"scripts": {
|
||||
"build": "bundt",
|
||||
"pretest": "npm run build",
|
||||
"test": "uvu -r esm test"
|
||||
},
|
||||
"exports": {
|
||||
".": {
|
||||
"types": "./index.d.ts",
|
||||
"import": "./dist/index.mjs",
|
||||
"require": "./dist/index.js"
|
||||
},
|
||||
"./secure": {
|
||||
"types": "./secure/index.d.ts",
|
||||
"import": "./secure/index.mjs",
|
||||
"require": "./secure/index.js"
|
||||
},
|
||||
"./package.json": "./package.json"
|
||||
},
|
||||
"files": [
|
||||
"*.d.ts",
|
||||
"secure",
|
||||
"dist"
|
||||
],
|
||||
"modes": {
|
||||
"secure": "src/secure.js",
|
||||
"default": "src/index.js"
|
||||
},
|
||||
"keywords": [
|
||||
"guid",
|
||||
"secure",
|
||||
"browser",
|
||||
"cryptographic",
|
||||
"isomorphic",
|
||||
"rfc4122",
|
||||
"random",
|
||||
"crypto",
|
||||
"csprng",
|
||||
"uuid",
|
||||
"uid"
|
||||
],
|
||||
"dependencies": {
|
||||
"@lukeed/csprng": "^1.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"bundt": "1.1.1",
|
||||
"esm": "3.2.25",
|
||||
"is-uuid": "1.0.2",
|
||||
"uvu": "0.3.4"
|
||||
}
|
||||
}
|
||||
109
node_modules/@lukeed/uuid/readme.md
generated
vendored
Normal file
109
node_modules/@lukeed/uuid/readme.md
generated
vendored
Normal file
@@ -0,0 +1,109 @@
|
||||
# @lukeed/uuid  [](https://codecov.io/gh/lukeed/uuid)
|
||||
|
||||
> A tiny (~230B) and [fast](#benchmarks) UUID (v4) generator for Node and the browser.
|
||||
|
||||
This module offers two [modes](#modes) for your needs:
|
||||
|
||||
* [`@lukeed/uuid`](#lukeeduuid)<br>_The default is "non-secure", which uses `Math.random` to produce UUIDs._
|
||||
* [`@lukeed/uuid/secure`](#lukeeduuidsecure)<br>_The "secure" mode produces cryptographically secure (CSPRNG) UUIDs using the current environment's `crypto` module._
|
||||
|
||||
> **Important:** <br>Version `1.0.0` only offered a "secure" implementation.<br>In `v2.0.0`, this is now exported as the `"@lukeed/uuid/secure"` entry.
|
||||
|
||||
Additionally, this module is preconfigured for native ESM support in Node.js with fallback to CommonJS. It will also work with any Rollup and webpack configuration.
|
||||
|
||||
|
||||
## Install
|
||||
|
||||
```
|
||||
$ npm install --save @lukeed/uuid
|
||||
```
|
||||
|
||||
## Modes
|
||||
|
||||
There are two "versions" of `@lukeed/uuid` available:
|
||||
|
||||
#### `@lukeed/uuid`
|
||||
> **Size (gzip):** 231 bytes<br>
|
||||
> **Availability:** [CommonJS](https://unpkg.com/@lukeed/uuid/dist/index.js), [ES Module](https://unpkg.com/@lukeed/uuid/dist/index.mjs), [UMD](https://unpkg.com/@lukeed/uuid/dist/index.min.js)
|
||||
|
||||
Relies on `Math.random`, which means that, while faster, this mode **is not** cryptographically secure. <br>Works in Node.js and all browsers.
|
||||
|
||||
#### `@lukeed/uuid/secure`
|
||||
> **Size (gzip):** 235 bytes<br>
|
||||
> **Availability:** [CommonJS](https://unpkg.com/@lukeed/uuid/secure/index.js), [ES Module](https://unpkg.com/@lukeed/uuid/secure/index.mjs), [UMD](https://unpkg.com/@lukeed/uuid/secure/index.min.js)
|
||||
|
||||
Relies on the environment's `crypto` module in order to produce cryptographically secure (CSPRNG) values. <br>Works in all versions of Node.js. Works in all browsers with [`crypto.getRandomValues()` support](https://caniuse.com/#feat=getrandomvalues).
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
import { v4 as uuid } from '@lukeed/uuid';
|
||||
import { v4 as secure } from '@lukeed/uuid/secure';
|
||||
|
||||
uuid(); //=> '400fa120-5e9f-411e-94bd-2a23f6695704'
|
||||
uuid(); //=> 'cd6ffb4d-2eda-4c84-aef5-71eb360ac8c5'
|
||||
|
||||
secure(); //=> '8641f70e-8112-4168-9d81-d38170bfa612'
|
||||
secure(); //=> 'd175fabc-2a4d-475f-be56-29ba8104c2f2'
|
||||
```
|
||||
|
||||
|
||||
## API
|
||||
|
||||
### uuid.v4()
|
||||
Returns: `string`
|
||||
|
||||
Creates a new Version 4 (random) [RFC4122](http://www.ietf.org/rfc/rfc4122.txt) UUID.
|
||||
|
||||
|
||||
## Benchmarks
|
||||
|
||||
> Running on Node.js v12.18.4
|
||||
|
||||
```
|
||||
Validation:
|
||||
✔ String.replace(Math.random)
|
||||
✔ String.replace(crypto)
|
||||
✔ uuid/v4
|
||||
✔ @lukeed/uuid
|
||||
✔ @lukeed/uuid/secure
|
||||
|
||||
Benchmark:
|
||||
String.replace(Math.random) x 381,358 ops/sec ±0.31% (93 runs sampled)
|
||||
String.replace(crypto) x 15,842 ops/sec ±1.16% (86 runs sampled)
|
||||
uuid/v4 x 1,259,600 ops/sec ±0.45% (91 runs sampled)
|
||||
@lukeed/uuid x 6,384,840 ops/sec ±0.22% (95 runs sampled)
|
||||
@lukeed/uuid/secure x 5,439,096 ops/sec ±0.23% (98 runs sampled)
|
||||
```
|
||||
|
||||
> Running on Chrome v85.0.4183.121
|
||||
|
||||
```
|
||||
Validation:
|
||||
✔ String.replace(Math.random)
|
||||
✔ uuid/v4
|
||||
✔ @lukeed/uuid
|
||||
✔ @lukeed/uuid/secure
|
||||
|
||||
Benchmark:
|
||||
String.replace(Math.random) x 313,213 ops/sec ±0.58% (65 runs sampled)
|
||||
uuid/v4 x 302,914 ops/sec ±0.94% (64 runs sampled)
|
||||
@lukeed/uuid x 5,881,761 ops/sec ±1.29% (62 runs sampled)
|
||||
@lukeed/uuid/secure x 852,939 ops/sec ±0.88% (65 runs sampled)
|
||||
```
|
||||
|
||||
## Performance
|
||||
|
||||
The reason why this UUID.V4 implementation is so much faster is two-fold:
|
||||
|
||||
1) It composes an output with hexadecimal pairs (from a cached dictionary) instead of single characters.
|
||||
2) It allocates a larger Buffer/ArrayBuffer up front (expensive) and slices off chunks as needed (cheap).
|
||||
|
||||
The `@lukeed/uuid/secure` module maintains an internal ArrayBuffer of 4096 bytes, which supplies **256** `uuid.v4()` invocations. However, the default module preallocates **256** invocations using less memory upfront. Both implementations will regenerate its internal allocation as needed.
|
||||
|
||||
A larger buffer would result in higher performance over time, but I found this to be a good balance of performance and memory space.
|
||||
|
||||
## License
|
||||
|
||||
MIT © [Luke Edwards](https://lukeed.com)
|
||||
1
node_modules/@lukeed/uuid/secure/index.d.ts
generated
vendored
Normal file
1
node_modules/@lukeed/uuid/secure/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export function v4(): string;
|
||||
29
node_modules/@lukeed/uuid/secure/index.js
generated
vendored
Normal file
29
node_modules/@lukeed/uuid/secure/index.js
generated
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
const { random } = require('@lukeed/csprng');
|
||||
|
||||
var SIZE=4096, HEX=[], IDX=0, BUFFER;
|
||||
|
||||
for (; IDX < 256; IDX++) {
|
||||
HEX[IDX] = (IDX + 256).toString(16).substring(1);
|
||||
}
|
||||
|
||||
function v4() {
|
||||
if (!BUFFER || ((IDX + 16) > SIZE)) {
|
||||
BUFFER = random(SIZE);
|
||||
IDX = 0;
|
||||
}
|
||||
|
||||
var i=0, tmp, out='';
|
||||
for (; i < 16; i++) {
|
||||
tmp = BUFFER[IDX + i];
|
||||
if (i==6) out += HEX[tmp & 15 | 64];
|
||||
else if (i==8) out += HEX[tmp & 63 | 128];
|
||||
else out += HEX[tmp];
|
||||
|
||||
if (i & 1 && i > 1 && i < 11) out += '-';
|
||||
}
|
||||
|
||||
IDX += 16;
|
||||
return out;
|
||||
}
|
||||
|
||||
exports.v4 = v4;
|
||||
1
node_modules/@lukeed/uuid/secure/index.min.js
generated
vendored
Normal file
1
node_modules/@lukeed/uuid/secure/index.min.js
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n(e.uuid={})}(this,(function(e){const{random:n}=require("@lukeed/csprng");for(var o,t=[],r=0;r<256;r++)t[r]=(r+256).toString(16).substring(1);e.v4=function(){(!o||r+16>4096)&&(o=n(4096),r=0);for(var e,f=0,i="";f<16;f++)e=o[r+f],i+=6==f?t[15&e|64]:8==f?t[63&e|128]:t[e],1&f&&f>1&&f<11&&(i+="-");return r+=16,i}}));
|
||||
27
node_modules/@lukeed/uuid/secure/index.mjs
generated
vendored
Normal file
27
node_modules/@lukeed/uuid/secure/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
import { random } from '@lukeed/csprng';
|
||||
|
||||
var SIZE=4096, HEX=[], IDX=0, BUFFER;
|
||||
|
||||
for (; IDX < 256; IDX++) {
|
||||
HEX[IDX] = (IDX + 256).toString(16).substring(1);
|
||||
}
|
||||
|
||||
export function v4() {
|
||||
if (!BUFFER || ((IDX + 16) > SIZE)) {
|
||||
BUFFER = random(SIZE);
|
||||
IDX = 0;
|
||||
}
|
||||
|
||||
var i=0, tmp, out='';
|
||||
for (; i < 16; i++) {
|
||||
tmp = BUFFER[IDX + i];
|
||||
if (i==6) out += HEX[tmp & 15 | 64];
|
||||
else if (i==8) out += HEX[tmp & 63 | 128];
|
||||
else out += HEX[tmp];
|
||||
|
||||
if (i & 1 && i > 1 && i < 11) out += '-';
|
||||
}
|
||||
|
||||
IDX += 16;
|
||||
return out;
|
||||
}
|
||||
1
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/README.md
generated
vendored
Normal file
1
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/README.md
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
Platform specific binary for msgpackr-extract on linux OS with x64 architecture
|
||||
0
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/index.js
generated
vendored
Normal file
0
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/index.js
generated
vendored
Normal file
BIN
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/node.abi115.glibc.node
generated
vendored
Executable file
BIN
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/node.abi115.glibc.node
generated
vendored
Executable file
Binary file not shown.
BIN
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/node.abi115.musl.node
generated
vendored
Executable file
BIN
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/node.abi115.musl.node
generated
vendored
Executable file
Binary file not shown.
BIN
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/node.napi.glibc.node
generated
vendored
Executable file
BIN
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/node.napi.glibc.node
generated
vendored
Executable file
Binary file not shown.
BIN
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/node.napi.musl.node
generated
vendored
Executable file
BIN
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/node.napi.musl.node
generated
vendored
Executable file
Binary file not shown.
17
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/package.json
generated
vendored
Normal file
17
node_modules/@msgpackr-extract/msgpackr-extract-linux-x64/package.json
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "@msgpackr-extract/msgpackr-extract-linux-x64",
|
||||
"version": "3.0.3",
|
||||
"os": [
|
||||
"linux"
|
||||
],
|
||||
"cpu": [
|
||||
"x64"
|
||||
],
|
||||
"license": "MIT",
|
||||
"author": "Kris Zyp",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "http://github.com/kriszyp/msgpackr-extract"
|
||||
},
|
||||
"description": "Platform specific binary for msgpackr-extract on linux OS with x64 architecture"
|
||||
}
|
||||
201
node_modules/@prisma/client/LICENSE
generated
vendored
Normal file
201
node_modules/@prisma/client/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,201 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
27
node_modules/@prisma/client/README.md
generated
vendored
Normal file
27
node_modules/@prisma/client/README.md
generated
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
# Prisma Client · [](https://www.npmjs.com/package/@prisma/client) [](https://github.com/prisma/prisma/blob/main/CONTRIBUTING.md) [](https://github.com/prisma/prisma/blob/main/LICENSE) [](https://pris.ly/discord)
|
||||
|
||||
Prisma Client JS is an **auto-generated query builder** that enables **type-safe** database access and **reduces boilerplate**. You can use it as an alternative to traditional ORMs such as Sequelize, TypeORM or SQL query builders like knex.js.
|
||||
|
||||
It is part of the [Prisma](https://www.prisma.io/) ecosystem. Prisma provides database tools for data access, declarative data modeling, schema migrations and visual data management. Learn more in the main [`prisma`](https://github.com/prisma/prisma/) repository or read the [documentation](https://www.prisma.io/docs/).
|
||||
|
||||
## Getting started
|
||||
|
||||
Follow one of these guides to get started with Prisma Client JS:
|
||||
|
||||
- [Quickstart](https://www.prisma.io/docs/getting-started/quickstart) (5 min)
|
||||
- [Set up a new project with Prisma (SQL migrations)](https://www.prisma.io/docs/getting-started/setup-prisma/start-from-scratch-sql) (15 min)
|
||||
- [Set up a new project with Prisma (Prisma Migrate)](https://www.prisma.io/docs/getting-started/setup-prisma/start-from-scratch-prisma-migrate) (15 min)
|
||||
- [Add Prisma to an existing project](https://www.prisma.io/docs/getting-started/setup-prisma/add-to-existing-project) (15 min)
|
||||
|
||||
Alternatively you can explore the ready-to-run [examples](https://github.com/prisma/prisma-examples/) (REST, GraphQL, gRPC, plain JavaScript and TypeScript demos, ...) or watch the [demo videos](https://www.youtube.com/watch?v=0RhtQgIs-TE&list=PLn2e1F9Rfr6k9PnR_figWOcSHgc_erDr5&index=1) (1-2 min per video).
|
||||
|
||||
## Contributing
|
||||
|
||||
Refer to our [contribution guidelines](https://github.com/prisma/prisma/blob/main/CONTRIBUTING.md) and [Code of Conduct for contributors](https://github.com/prisma/prisma/blob/main/CODE_OF_CONDUCT.md).
|
||||
|
||||
## Tests Status
|
||||
|
||||
- Prisma Tests Status:
|
||||
[](https://github.com/prisma/prisma/actions/workflows/test.yml)
|
||||
- Ecosystem Tests Status:
|
||||
[](https://github.com/prisma/ecosystem-tests/actions)
|
||||
1
node_modules/@prisma/client/default.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/client/default.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from '.prisma/client/default'
|
||||
3
node_modules/@prisma/client/default.js
generated
vendored
Normal file
3
node_modules/@prisma/client/default.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
module.exports = {
|
||||
...require('.prisma/client/default'),
|
||||
}
|
||||
1
node_modules/@prisma/client/edge.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/client/edge.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from '.prisma/client/edge'
|
||||
4
node_modules/@prisma/client/edge.js
generated
vendored
Normal file
4
node_modules/@prisma/client/edge.js
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
module.exports = {
|
||||
// https://github.com/prisma/prisma/pull/12907
|
||||
...require('.prisma/client/edge'),
|
||||
}
|
||||
1
node_modules/@prisma/client/extension.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/client/extension.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from './scripts/default-index'
|
||||
4
node_modules/@prisma/client/extension.js
generated
vendored
Normal file
4
node_modules/@prisma/client/extension.js
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
module.exports = {
|
||||
// https://github.com/prisma/prisma/pull/12907
|
||||
...require('./scripts/default-index'),
|
||||
}
|
||||
10351
node_modules/@prisma/client/generator-build/index.js
generated
vendored
Normal file
10351
node_modules/@prisma/client/generator-build/index.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
3
node_modules/@prisma/client/index-browser.js
generated
vendored
Normal file
3
node_modules/@prisma/client/index-browser.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
const prisma = require('.prisma/client/index-browser')
|
||||
|
||||
module.exports = prisma
|
||||
1
node_modules/@prisma/client/index.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/client/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from '.prisma/client/default'
|
||||
4
node_modules/@prisma/client/index.js
generated
vendored
Normal file
4
node_modules/@prisma/client/index.js
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
module.exports = {
|
||||
// https://github.com/prisma/prisma/pull/12907
|
||||
...require('.prisma/client/default'),
|
||||
}
|
||||
280
node_modules/@prisma/client/package.json
generated
vendored
Normal file
280
node_modules/@prisma/client/package.json
generated
vendored
Normal file
@@ -0,0 +1,280 @@
|
||||
{
|
||||
"name": "@prisma/client",
|
||||
"version": "5.22.0",
|
||||
"description": "Prisma Client is an auto-generated, type-safe and modern JavaScript/TypeScript ORM for Node.js that's tailored to your data. Supports PostgreSQL, CockroachDB, MySQL, MariaDB, SQL Server, SQLite & MongoDB databases.",
|
||||
"keywords": [
|
||||
"ORM",
|
||||
"Prisma",
|
||||
"prisma2",
|
||||
"Prisma Client",
|
||||
"client",
|
||||
"query",
|
||||
"query-builder",
|
||||
"database",
|
||||
"db",
|
||||
"JavaScript",
|
||||
"JS",
|
||||
"TypeScript",
|
||||
"TS",
|
||||
"SQL",
|
||||
"SQLite",
|
||||
"pg",
|
||||
"Postgres",
|
||||
"PostgreSQL",
|
||||
"CockroachDB",
|
||||
"MySQL",
|
||||
"MariaDB",
|
||||
"MSSQL",
|
||||
"SQL Server",
|
||||
"SQLServer",
|
||||
"MongoDB",
|
||||
"react-native"
|
||||
],
|
||||
"main": "default.js",
|
||||
"types": "default.d.ts",
|
||||
"browser": "index-browser.js",
|
||||
"exports": {
|
||||
"./package.json": "./package.json",
|
||||
".": {
|
||||
"require": {
|
||||
"types": "./default.d.ts",
|
||||
"node": "./default.js",
|
||||
"edge-light": "./default.js",
|
||||
"workerd": "./default.js",
|
||||
"worker": "./default.js",
|
||||
"browser": "./index-browser.js"
|
||||
},
|
||||
"import": {
|
||||
"types": "./default.d.ts",
|
||||
"node": "./default.js",
|
||||
"edge-light": "./default.js",
|
||||
"workerd": "./default.js",
|
||||
"worker": "./default.js",
|
||||
"browser": "./index-browser.js"
|
||||
},
|
||||
"default": "./default.js"
|
||||
},
|
||||
"./edge": {
|
||||
"types": "./edge.d.ts",
|
||||
"require": "./edge.js",
|
||||
"import": "./edge.js",
|
||||
"default": "./edge.js"
|
||||
},
|
||||
"./react-native": {
|
||||
"types": "./react-native.d.ts",
|
||||
"require": "./react-native.js",
|
||||
"import": "./react-native.js",
|
||||
"default": "./react-native.js"
|
||||
},
|
||||
"./extension": {
|
||||
"types": "./extension.d.ts",
|
||||
"require": "./extension.js",
|
||||
"import": "./extension.js",
|
||||
"default": "./extension.js"
|
||||
},
|
||||
"./index-browser": {
|
||||
"types": "./index.d.ts",
|
||||
"require": "./index-browser.js",
|
||||
"import": "./index-browser.js",
|
||||
"default": "./index-browser.js"
|
||||
},
|
||||
"./index": {
|
||||
"types": "./index.d.ts",
|
||||
"require": "./index.js",
|
||||
"import": "./index.js",
|
||||
"default": "./index.js"
|
||||
},
|
||||
"./wasm": {
|
||||
"types": "./wasm.d.ts",
|
||||
"require": "./wasm.js",
|
||||
"import": "./wasm.js",
|
||||
"default": "./wasm.js"
|
||||
},
|
||||
"./runtime/library": {
|
||||
"types": "./runtime/library.d.ts",
|
||||
"require": "./runtime/library.js",
|
||||
"import": "./runtime/library.js",
|
||||
"default": "./runtime/library.js"
|
||||
},
|
||||
"./runtime/binary": {
|
||||
"types": "./runtime/binary.d.ts",
|
||||
"require": "./runtime/binary.js",
|
||||
"import": "./runtime/binary.js",
|
||||
"default": "./runtime/binary.js"
|
||||
},
|
||||
"./generator-build": {
|
||||
"require": "./generator-build/index.js",
|
||||
"import": "./generator-build/index.js",
|
||||
"default": "./generator-build/index.js"
|
||||
},
|
||||
"./sql": {
|
||||
"require": {
|
||||
"types": "./sql.d.ts",
|
||||
"node": "./sql.js",
|
||||
"default": "./sql.js"
|
||||
},
|
||||
"import": {
|
||||
"types": "./sql.d.ts",
|
||||
"node": "./sql.mjs",
|
||||
"default": "./sql.mjs"
|
||||
},
|
||||
"default": "./sql.js"
|
||||
},
|
||||
"./*": "./*"
|
||||
},
|
||||
"license": "Apache-2.0",
|
||||
"engines": {
|
||||
"node": ">=16.13"
|
||||
},
|
||||
"homepage": "https://www.prisma.io",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/prisma/prisma.git",
|
||||
"directory": "packages/client"
|
||||
},
|
||||
"author": "Tim Suchanek <suchanek@prisma.io>",
|
||||
"bugs": "https://github.com/prisma/prisma/issues",
|
||||
"files": [
|
||||
"README.md",
|
||||
"runtime",
|
||||
"!runtime/*.map",
|
||||
"scripts",
|
||||
"generator-build",
|
||||
"edge.js",
|
||||
"edge.d.ts",
|
||||
"wasm.js",
|
||||
"wasm.d.ts",
|
||||
"index.js",
|
||||
"index.d.ts",
|
||||
"react-native.js",
|
||||
"react-native.d.ts",
|
||||
"default.js",
|
||||
"default.d.ts",
|
||||
"index-browser.js",
|
||||
"extension.js",
|
||||
"extension.d.ts",
|
||||
"sql.d.ts",
|
||||
"sql.js",
|
||||
"sql.mjs"
|
||||
],
|
||||
"devDependencies": {
|
||||
"@cloudflare/workers-types": "4.20240614.0",
|
||||
"@codspeed/benchmark.js-plugin": "3.1.1",
|
||||
"@faker-js/faker": "8.4.1",
|
||||
"@fast-check/jest": "1.8.2",
|
||||
"@inquirer/prompts": "5.0.5",
|
||||
"@jest/create-cache-key-function": "29.7.0",
|
||||
"@jest/globals": "29.7.0",
|
||||
"@jest/test-sequencer": "29.7.0",
|
||||
"@libsql/client": "0.8.0",
|
||||
"@neondatabase/serverless": "0.9.3",
|
||||
"@opentelemetry/api": "1.9.0",
|
||||
"@opentelemetry/context-async-hooks": "1.25.1",
|
||||
"@opentelemetry/instrumentation": "0.52.1",
|
||||
"@opentelemetry/resources": "1.25.1",
|
||||
"@opentelemetry/sdk-trace-base": "1.25.1",
|
||||
"@opentelemetry/semantic-conventions": "1.25.1",
|
||||
"@planetscale/database": "1.18.0",
|
||||
"@prisma/engines-version": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
|
||||
"@prisma/mini-proxy": "0.9.5",
|
||||
"@prisma/query-engine-wasm": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
|
||||
"@snaplet/copycat": "0.17.3",
|
||||
"@swc-node/register": "1.10.9",
|
||||
"@swc/core": "1.6.13",
|
||||
"@swc/jest": "0.2.36",
|
||||
"@timsuchanek/copy": "1.4.5",
|
||||
"@types/debug": "4.1.12",
|
||||
"@types/fs-extra": "9.0.13",
|
||||
"@types/jest": "29.5.12",
|
||||
"@types/js-levenshtein": "1.1.3",
|
||||
"@types/mssql": "9.1.5",
|
||||
"@types/node": "18.19.31",
|
||||
"@types/pg": "8.11.6",
|
||||
"arg": "5.0.2",
|
||||
"benchmark": "2.1.4",
|
||||
"ci-info": "4.0.0",
|
||||
"decimal.js": "10.4.3",
|
||||
"detect-runtime": "1.0.4",
|
||||
"env-paths": "2.2.1",
|
||||
"esbuild": "0.23.0",
|
||||
"execa": "5.1.1",
|
||||
"expect-type": "0.19.0",
|
||||
"flat-map-polyfill": "0.3.8",
|
||||
"fs-extra": "11.1.1",
|
||||
"get-stream": "6.0.1",
|
||||
"globby": "11.1.0",
|
||||
"indent-string": "4.0.0",
|
||||
"jest": "29.7.0",
|
||||
"jest-extended": "4.0.2",
|
||||
"jest-junit": "16.0.0",
|
||||
"jest-serializer-ansi-escapes": "3.0.0",
|
||||
"jest-snapshot": "29.7.0",
|
||||
"js-levenshtein": "1.1.6",
|
||||
"kleur": "4.1.5",
|
||||
"klona": "2.0.6",
|
||||
"mariadb": "3.3.1",
|
||||
"memfs": "4.9.3",
|
||||
"mssql": "11.0.1",
|
||||
"new-github-issue-url": "0.2.1",
|
||||
"node-fetch": "3.3.2",
|
||||
"p-retry": "4.6.2",
|
||||
"pg": "8.11.5",
|
||||
"pkg-up": "3.1.0",
|
||||
"pluralize": "8.0.0",
|
||||
"resolve": "1.22.8",
|
||||
"rimraf": "3.0.2",
|
||||
"simple-statistics": "7.8.5",
|
||||
"sort-keys": "4.2.0",
|
||||
"source-map-support": "0.5.21",
|
||||
"sql-template-tag": "5.2.1",
|
||||
"stacktrace-parser": "0.1.10",
|
||||
"strip-ansi": "6.0.1",
|
||||
"strip-indent": "3.0.0",
|
||||
"ts-node": "10.9.2",
|
||||
"ts-pattern": "5.2.0",
|
||||
"tsd": "0.31.1",
|
||||
"typescript": "5.4.5",
|
||||
"undici": "5.28.4",
|
||||
"wrangler": "3.62.0",
|
||||
"zx": "7.2.3",
|
||||
"@prisma/adapter-d1": "5.22.0",
|
||||
"@prisma/adapter-libsql": "5.22.0",
|
||||
"@prisma/adapter-neon": "5.22.0",
|
||||
"@prisma/adapter-pg": "5.22.0",
|
||||
"@prisma/adapter-planetscale": "5.22.0",
|
||||
"@prisma/driver-adapter-utils": "5.22.0",
|
||||
"@prisma/adapter-pg-worker": "5.22.0",
|
||||
"@prisma/debug": "5.22.0",
|
||||
"@prisma/engines": "5.22.0",
|
||||
"@prisma/fetch-engine": "5.22.0",
|
||||
"@prisma/generator-helper": "5.22.0",
|
||||
"@prisma/get-platform": "5.22.0",
|
||||
"@prisma/instrumentation": "5.22.0",
|
||||
"@prisma/internals": "5.22.0",
|
||||
"@prisma/migrate": "5.22.0",
|
||||
"@prisma/pg-worker": "5.22.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"prisma": "*"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"prisma": {
|
||||
"optional": true
|
||||
}
|
||||
},
|
||||
"sideEffects": false,
|
||||
"scripts": {
|
||||
"dev": "DEV=true tsx helpers/build.ts",
|
||||
"build": "tsx helpers/build.ts",
|
||||
"test": "dotenv -e ../../.db.env -- jest --silent",
|
||||
"test:e2e": "dotenv -e ../../.db.env -- tsx tests/e2e/_utils/run.ts",
|
||||
"test:functional": "dotenv -e ../../.db.env -- tsx helpers/functional-test/run-tests.ts",
|
||||
"test:memory": "dotenv -e ../../.db.env -- tsx helpers/memory-tests.ts",
|
||||
"test:functional:code": "dotenv -e ../../.db.env -- tsx helpers/functional-test/run-tests.ts --no-types",
|
||||
"test:functional:types": "dotenv -e ../../.db.env -- tsx helpers/functional-test/run-tests.ts --types-only",
|
||||
"test-notypes": "dotenv -e ../../.db.env -- jest --testPathIgnorePatterns src/__tests__/types/types.test.ts",
|
||||
"generate": "node scripts/postinstall.js",
|
||||
"postinstall": "node scripts/postinstall.js",
|
||||
"new-test": "tsx ./helpers/new-test/new-test.ts"
|
||||
}
|
||||
}
|
||||
1
node_modules/@prisma/client/react-native.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/client/react-native.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from '.prisma/client/react-native'
|
||||
3
node_modules/@prisma/client/react-native.js
generated
vendored
Normal file
3
node_modules/@prisma/client/react-native.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
module.exports = {
|
||||
...require('.prisma/client/react-native'),
|
||||
}
|
||||
1
node_modules/@prisma/client/runtime/binary.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/client/runtime/binary.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from "./library"
|
||||
210
node_modules/@prisma/client/runtime/binary.js
generated
vendored
Normal file
210
node_modules/@prisma/client/runtime/binary.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
31
node_modules/@prisma/client/runtime/edge-esm.js
generated
vendored
Normal file
31
node_modules/@prisma/client/runtime/edge-esm.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
31
node_modules/@prisma/client/runtime/edge.js
generated
vendored
Normal file
31
node_modules/@prisma/client/runtime/edge.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
365
node_modules/@prisma/client/runtime/index-browser.d.ts
generated
vendored
Normal file
365
node_modules/@prisma/client/runtime/index-browser.d.ts
generated
vendored
Normal file
@@ -0,0 +1,365 @@
|
||||
declare class AnyNull extends NullTypesEnumValue {
|
||||
}
|
||||
|
||||
declare type Args<T, F extends Operation> = T extends {
|
||||
[K: symbol]: {
|
||||
types: {
|
||||
operations: {
|
||||
[K in F]: {
|
||||
args: any;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
} ? T[symbol]['types']['operations'][F]['args'] : any;
|
||||
|
||||
declare class DbNull extends NullTypesEnumValue {
|
||||
}
|
||||
|
||||
export declare namespace Decimal {
|
||||
export type Constructor = typeof Decimal;
|
||||
export type Instance = Decimal;
|
||||
export type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8;
|
||||
export type Modulo = Rounding | 9;
|
||||
export type Value = string | number | Decimal;
|
||||
|
||||
// http://mikemcl.github.io/decimal.js/#constructor-properties
|
||||
export interface Config {
|
||||
precision?: number;
|
||||
rounding?: Rounding;
|
||||
toExpNeg?: number;
|
||||
toExpPos?: number;
|
||||
minE?: number;
|
||||
maxE?: number;
|
||||
crypto?: boolean;
|
||||
modulo?: Modulo;
|
||||
defaults?: boolean;
|
||||
}
|
||||
}
|
||||
|
||||
export declare class Decimal {
|
||||
readonly d: number[];
|
||||
readonly e: number;
|
||||
readonly s: number;
|
||||
|
||||
constructor(n: Decimal.Value);
|
||||
|
||||
absoluteValue(): Decimal;
|
||||
abs(): Decimal;
|
||||
|
||||
ceil(): Decimal;
|
||||
|
||||
clampedTo(min: Decimal.Value, max: Decimal.Value): Decimal;
|
||||
clamp(min: Decimal.Value, max: Decimal.Value): Decimal;
|
||||
|
||||
comparedTo(n: Decimal.Value): number;
|
||||
cmp(n: Decimal.Value): number;
|
||||
|
||||
cosine(): Decimal;
|
||||
cos(): Decimal;
|
||||
|
||||
cubeRoot(): Decimal;
|
||||
cbrt(): Decimal;
|
||||
|
||||
decimalPlaces(): number;
|
||||
dp(): number;
|
||||
|
||||
dividedBy(n: Decimal.Value): Decimal;
|
||||
div(n: Decimal.Value): Decimal;
|
||||
|
||||
dividedToIntegerBy(n: Decimal.Value): Decimal;
|
||||
divToInt(n: Decimal.Value): Decimal;
|
||||
|
||||
equals(n: Decimal.Value): boolean;
|
||||
eq(n: Decimal.Value): boolean;
|
||||
|
||||
floor(): Decimal;
|
||||
|
||||
greaterThan(n: Decimal.Value): boolean;
|
||||
gt(n: Decimal.Value): boolean;
|
||||
|
||||
greaterThanOrEqualTo(n: Decimal.Value): boolean;
|
||||
gte(n: Decimal.Value): boolean;
|
||||
|
||||
hyperbolicCosine(): Decimal;
|
||||
cosh(): Decimal;
|
||||
|
||||
hyperbolicSine(): Decimal;
|
||||
sinh(): Decimal;
|
||||
|
||||
hyperbolicTangent(): Decimal;
|
||||
tanh(): Decimal;
|
||||
|
||||
inverseCosine(): Decimal;
|
||||
acos(): Decimal;
|
||||
|
||||
inverseHyperbolicCosine(): Decimal;
|
||||
acosh(): Decimal;
|
||||
|
||||
inverseHyperbolicSine(): Decimal;
|
||||
asinh(): Decimal;
|
||||
|
||||
inverseHyperbolicTangent(): Decimal;
|
||||
atanh(): Decimal;
|
||||
|
||||
inverseSine(): Decimal;
|
||||
asin(): Decimal;
|
||||
|
||||
inverseTangent(): Decimal;
|
||||
atan(): Decimal;
|
||||
|
||||
isFinite(): boolean;
|
||||
|
||||
isInteger(): boolean;
|
||||
isInt(): boolean;
|
||||
|
||||
isNaN(): boolean;
|
||||
|
||||
isNegative(): boolean;
|
||||
isNeg(): boolean;
|
||||
|
||||
isPositive(): boolean;
|
||||
isPos(): boolean;
|
||||
|
||||
isZero(): boolean;
|
||||
|
||||
lessThan(n: Decimal.Value): boolean;
|
||||
lt(n: Decimal.Value): boolean;
|
||||
|
||||
lessThanOrEqualTo(n: Decimal.Value): boolean;
|
||||
lte(n: Decimal.Value): boolean;
|
||||
|
||||
logarithm(n?: Decimal.Value): Decimal;
|
||||
log(n?: Decimal.Value): Decimal;
|
||||
|
||||
minus(n: Decimal.Value): Decimal;
|
||||
sub(n: Decimal.Value): Decimal;
|
||||
|
||||
modulo(n: Decimal.Value): Decimal;
|
||||
mod(n: Decimal.Value): Decimal;
|
||||
|
||||
naturalExponential(): Decimal;
|
||||
exp(): Decimal;
|
||||
|
||||
naturalLogarithm(): Decimal;
|
||||
ln(): Decimal;
|
||||
|
||||
negated(): Decimal;
|
||||
neg(): Decimal;
|
||||
|
||||
plus(n: Decimal.Value): Decimal;
|
||||
add(n: Decimal.Value): Decimal;
|
||||
|
||||
precision(includeZeros?: boolean): number;
|
||||
sd(includeZeros?: boolean): number;
|
||||
|
||||
round(): Decimal;
|
||||
|
||||
sine() : Decimal;
|
||||
sin() : Decimal;
|
||||
|
||||
squareRoot(): Decimal;
|
||||
sqrt(): Decimal;
|
||||
|
||||
tangent() : Decimal;
|
||||
tan() : Decimal;
|
||||
|
||||
times(n: Decimal.Value): Decimal;
|
||||
mul(n: Decimal.Value) : Decimal;
|
||||
|
||||
toBinary(significantDigits?: number): string;
|
||||
toBinary(significantDigits: number, rounding: Decimal.Rounding): string;
|
||||
|
||||
toDecimalPlaces(decimalPlaces?: number): Decimal;
|
||||
toDecimalPlaces(decimalPlaces: number, rounding: Decimal.Rounding): Decimal;
|
||||
toDP(decimalPlaces?: number): Decimal;
|
||||
toDP(decimalPlaces: number, rounding: Decimal.Rounding): Decimal;
|
||||
|
||||
toExponential(decimalPlaces?: number): string;
|
||||
toExponential(decimalPlaces: number, rounding: Decimal.Rounding): string;
|
||||
|
||||
toFixed(decimalPlaces?: number): string;
|
||||
toFixed(decimalPlaces: number, rounding: Decimal.Rounding): string;
|
||||
|
||||
toFraction(max_denominator?: Decimal.Value): Decimal[];
|
||||
|
||||
toHexadecimal(significantDigits?: number): string;
|
||||
toHexadecimal(significantDigits: number, rounding: Decimal.Rounding): string;
|
||||
toHex(significantDigits?: number): string;
|
||||
toHex(significantDigits: number, rounding?: Decimal.Rounding): string;
|
||||
|
||||
toJSON(): string;
|
||||
|
||||
toNearest(n: Decimal.Value, rounding?: Decimal.Rounding): Decimal;
|
||||
|
||||
toNumber(): number;
|
||||
|
||||
toOctal(significantDigits?: number): string;
|
||||
toOctal(significantDigits: number, rounding: Decimal.Rounding): string;
|
||||
|
||||
toPower(n: Decimal.Value): Decimal;
|
||||
pow(n: Decimal.Value): Decimal;
|
||||
|
||||
toPrecision(significantDigits?: number): string;
|
||||
toPrecision(significantDigits: number, rounding: Decimal.Rounding): string;
|
||||
|
||||
toSignificantDigits(significantDigits?: number): Decimal;
|
||||
toSignificantDigits(significantDigits: number, rounding: Decimal.Rounding): Decimal;
|
||||
toSD(significantDigits?: number): Decimal;
|
||||
toSD(significantDigits: number, rounding: Decimal.Rounding): Decimal;
|
||||
|
||||
toString(): string;
|
||||
|
||||
truncated(): Decimal;
|
||||
trunc(): Decimal;
|
||||
|
||||
valueOf(): string;
|
||||
|
||||
static abs(n: Decimal.Value): Decimal;
|
||||
static acos(n: Decimal.Value): Decimal;
|
||||
static acosh(n: Decimal.Value): Decimal;
|
||||
static add(x: Decimal.Value, y: Decimal.Value): Decimal;
|
||||
static asin(n: Decimal.Value): Decimal;
|
||||
static asinh(n: Decimal.Value): Decimal;
|
||||
static atan(n: Decimal.Value): Decimal;
|
||||
static atanh(n: Decimal.Value): Decimal;
|
||||
static atan2(y: Decimal.Value, x: Decimal.Value): Decimal;
|
||||
static cbrt(n: Decimal.Value): Decimal;
|
||||
static ceil(n: Decimal.Value): Decimal;
|
||||
static clamp(n: Decimal.Value, min: Decimal.Value, max: Decimal.Value): Decimal;
|
||||
static clone(object?: Decimal.Config): Decimal.Constructor;
|
||||
static config(object: Decimal.Config): Decimal.Constructor;
|
||||
static cos(n: Decimal.Value): Decimal;
|
||||
static cosh(n: Decimal.Value): Decimal;
|
||||
static div(x: Decimal.Value, y: Decimal.Value): Decimal;
|
||||
static exp(n: Decimal.Value): Decimal;
|
||||
static floor(n: Decimal.Value): Decimal;
|
||||
static hypot(...n: Decimal.Value[]): Decimal;
|
||||
static isDecimal(object: any): object is Decimal;
|
||||
static ln(n: Decimal.Value): Decimal;
|
||||
static log(n: Decimal.Value, base?: Decimal.Value): Decimal;
|
||||
static log2(n: Decimal.Value): Decimal;
|
||||
static log10(n: Decimal.Value): Decimal;
|
||||
static max(...n: Decimal.Value[]): Decimal;
|
||||
static min(...n: Decimal.Value[]): Decimal;
|
||||
static mod(x: Decimal.Value, y: Decimal.Value): Decimal;
|
||||
static mul(x: Decimal.Value, y: Decimal.Value): Decimal;
|
||||
static noConflict(): Decimal.Constructor; // Browser only
|
||||
static pow(base: Decimal.Value, exponent: Decimal.Value): Decimal;
|
||||
static random(significantDigits?: number): Decimal;
|
||||
static round(n: Decimal.Value): Decimal;
|
||||
static set(object: Decimal.Config): Decimal.Constructor;
|
||||
static sign(n: Decimal.Value): number;
|
||||
static sin(n: Decimal.Value): Decimal;
|
||||
static sinh(n: Decimal.Value): Decimal;
|
||||
static sqrt(n: Decimal.Value): Decimal;
|
||||
static sub(x: Decimal.Value, y: Decimal.Value): Decimal;
|
||||
static sum(...n: Decimal.Value[]): Decimal;
|
||||
static tan(n: Decimal.Value): Decimal;
|
||||
static tanh(n: Decimal.Value): Decimal;
|
||||
static trunc(n: Decimal.Value): Decimal;
|
||||
|
||||
static readonly default?: Decimal.Constructor;
|
||||
static readonly Decimal?: Decimal.Constructor;
|
||||
|
||||
static readonly precision: number;
|
||||
static readonly rounding: Decimal.Rounding;
|
||||
static readonly toExpNeg: number;
|
||||
static readonly toExpPos: number;
|
||||
static readonly minE: number;
|
||||
static readonly maxE: number;
|
||||
static readonly crypto: boolean;
|
||||
static readonly modulo: Decimal.Modulo;
|
||||
|
||||
static readonly ROUND_UP: 0;
|
||||
static readonly ROUND_DOWN: 1;
|
||||
static readonly ROUND_CEIL: 2;
|
||||
static readonly ROUND_FLOOR: 3;
|
||||
static readonly ROUND_HALF_UP: 4;
|
||||
static readonly ROUND_HALF_DOWN: 5;
|
||||
static readonly ROUND_HALF_EVEN: 6;
|
||||
static readonly ROUND_HALF_CEIL: 7;
|
||||
static readonly ROUND_HALF_FLOOR: 8;
|
||||
static readonly EUCLID: 9;
|
||||
}
|
||||
|
||||
declare type Exact<A, W> = (A extends unknown ? (W extends A ? {
|
||||
[K in keyof A]: Exact<A[K], W[K]>;
|
||||
} : W) : never) | (A extends Narrowable ? A : never);
|
||||
|
||||
export declare function getRuntime(): GetRuntimeOutput;
|
||||
|
||||
declare type GetRuntimeOutput = {
|
||||
id: Runtime;
|
||||
prettyName: string;
|
||||
isEdge: boolean;
|
||||
};
|
||||
|
||||
declare class JsonNull extends NullTypesEnumValue {
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates more strict variant of an enum which, unlike regular enum,
|
||||
* throws on non-existing property access. This can be useful in following situations:
|
||||
* - we have an API, that accepts both `undefined` and `SomeEnumType` as an input
|
||||
* - enum values are generated dynamically from DMMF.
|
||||
*
|
||||
* In that case, if using normal enums and no compile-time typechecking, using non-existing property
|
||||
* will result in `undefined` value being used, which will be accepted. Using strict enum
|
||||
* in this case will help to have a runtime exception, telling you that you are probably doing something wrong.
|
||||
*
|
||||
* Note: if you need to check for existence of a value in the enum you can still use either
|
||||
* `in` operator or `hasOwnProperty` function.
|
||||
*
|
||||
* @param definition
|
||||
* @returns
|
||||
*/
|
||||
export declare function makeStrictEnum<T extends Record<PropertyKey, string | number>>(definition: T): T;
|
||||
|
||||
declare type Narrowable = string | number | bigint | boolean | [];
|
||||
|
||||
declare class NullTypesEnumValue extends ObjectEnumValue {
|
||||
_getNamespace(): string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Base class for unique values of object-valued enums.
|
||||
*/
|
||||
declare abstract class ObjectEnumValue {
|
||||
constructor(arg?: symbol);
|
||||
abstract _getNamespace(): string;
|
||||
_getName(): string;
|
||||
toString(): string;
|
||||
}
|
||||
|
||||
export declare const objectEnumValues: {
|
||||
classes: {
|
||||
DbNull: typeof DbNull;
|
||||
JsonNull: typeof JsonNull;
|
||||
AnyNull: typeof AnyNull;
|
||||
};
|
||||
instances: {
|
||||
DbNull: DbNull;
|
||||
JsonNull: JsonNull;
|
||||
AnyNull: AnyNull;
|
||||
};
|
||||
};
|
||||
|
||||
declare type Operation = 'findFirst' | 'findFirstOrThrow' | 'findUnique' | 'findUniqueOrThrow' | 'findMany' | 'create' | 'createMany' | 'createManyAndReturn' | 'update' | 'updateMany' | 'upsert' | 'delete' | 'deleteMany' | 'aggregate' | 'count' | 'groupBy' | '$queryRaw' | '$executeRaw' | '$queryRawUnsafe' | '$executeRawUnsafe' | 'findRaw' | 'aggregateRaw' | '$runCommandRaw';
|
||||
|
||||
declare namespace Public {
|
||||
export {
|
||||
validator
|
||||
}
|
||||
}
|
||||
export { Public }
|
||||
|
||||
declare type Runtime = "edge-routine" | "workerd" | "deno" | "lagon" | "react-native" | "netlify" | "electron" | "node" | "bun" | "edge-light" | "fastly" | "unknown";
|
||||
|
||||
declare function validator<V>(): <S>(select: Exact<S, V>) => S;
|
||||
|
||||
declare function validator<C, M extends Exclude<keyof C, `$${string}`>, O extends keyof C[M] & Operation>(client: C, model: M, operation: O): <S>(select: Exact<S, Args<C[M], O>>) => S;
|
||||
|
||||
declare function validator<C, M extends Exclude<keyof C, `$${string}`>, O extends keyof C[M] & Operation, P extends keyof Args<C[M], O>>(client: C, model: M, operation: O, prop: P): <S>(select: Exact<S, Args<C[M], O>[P]>) => S;
|
||||
|
||||
export { }
|
||||
13
node_modules/@prisma/client/runtime/index-browser.js
generated
vendored
Normal file
13
node_modules/@prisma/client/runtime/index-browser.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
3403
node_modules/@prisma/client/runtime/library.d.ts
generated
vendored
Normal file
3403
node_modules/@prisma/client/runtime/library.d.ts
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
143
node_modules/@prisma/client/runtime/library.js
generated
vendored
Normal file
143
node_modules/@prisma/client/runtime/library.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
2
node_modules/@prisma/client/runtime/query_engine_bg.mysql.js
generated
vendored
Normal file
2
node_modules/@prisma/client/runtime/query_engine_bg.mysql.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
node_modules/@prisma/client/runtime/query_engine_bg.mysql.wasm
generated
vendored
Normal file
BIN
node_modules/@prisma/client/runtime/query_engine_bg.mysql.wasm
generated
vendored
Normal file
Binary file not shown.
2
node_modules/@prisma/client/runtime/query_engine_bg.postgresql.js
generated
vendored
Normal file
2
node_modules/@prisma/client/runtime/query_engine_bg.postgresql.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
node_modules/@prisma/client/runtime/query_engine_bg.postgresql.wasm
generated
vendored
Normal file
BIN
node_modules/@prisma/client/runtime/query_engine_bg.postgresql.wasm
generated
vendored
Normal file
Binary file not shown.
2
node_modules/@prisma/client/runtime/query_engine_bg.sqlite.js
generated
vendored
Normal file
2
node_modules/@prisma/client/runtime/query_engine_bg.sqlite.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
node_modules/@prisma/client/runtime/query_engine_bg.sqlite.wasm
generated
vendored
Normal file
BIN
node_modules/@prisma/client/runtime/query_engine_bg.sqlite.wasm
generated
vendored
Normal file
Binary file not shown.
3403
node_modules/@prisma/client/runtime/react-native.d.ts
generated
vendored
Normal file
3403
node_modules/@prisma/client/runtime/react-native.d.ts
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
80
node_modules/@prisma/client/runtime/react-native.js
generated
vendored
Normal file
80
node_modules/@prisma/client/runtime/react-native.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
32
node_modules/@prisma/client/runtime/wasm.js
generated
vendored
Normal file
32
node_modules/@prisma/client/runtime/wasm.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
176
node_modules/@prisma/client/scripts/colors.js
generated
vendored
Normal file
176
node_modules/@prisma/client/scripts/colors.js
generated
vendored
Normal file
@@ -0,0 +1,176 @@
|
||||
'use strict'
|
||||
|
||||
const isObject = (val) => val !== null && typeof val === 'object' && !Array.isArray(val)
|
||||
|
||||
// this is a modified version of https://github.com/chalk/ansi-regex (MIT License)
|
||||
const ANSI_REGEX =
|
||||
/* eslint-disable-next-line no-control-regex */
|
||||
/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g
|
||||
|
||||
const create = () => {
|
||||
const colors = { enabled: true, visible: true, styles: {}, keys: {} }
|
||||
|
||||
if ('FORCE_COLOR' in process.env) {
|
||||
colors.enabled = process.env.FORCE_COLOR !== '0'
|
||||
}
|
||||
|
||||
const ansi = (style) => {
|
||||
let open = (style.open = `\u001b[${style.codes[0]}m`)
|
||||
let close = (style.close = `\u001b[${style.codes[1]}m`)
|
||||
let regex = (style.regex = new RegExp(`\\u001b\\[${style.codes[1]}m`, 'g'))
|
||||
style.wrap = (input, newline) => {
|
||||
if (input.includes(close)) input = input.replace(regex, close + open)
|
||||
let output = open + input + close
|
||||
// see https://github.com/chalk/chalk/pull/92, thanks to the
|
||||
// chalk contributors for this fix. However, we've confirmed that
|
||||
// this issue is also present in Windows terminals
|
||||
return newline ? output.replace(/\r*\n/g, `${close}$&${open}`) : output
|
||||
}
|
||||
return style
|
||||
}
|
||||
|
||||
const wrap = (style, input, newline) => {
|
||||
return typeof style === 'function' ? style(input) : style.wrap(input, newline)
|
||||
}
|
||||
|
||||
const style = (input, stack) => {
|
||||
if (input === '' || input == null) return ''
|
||||
if (colors.enabled === false) return input
|
||||
if (colors.visible === false) return ''
|
||||
let str = '' + input
|
||||
let nl = str.includes('\n')
|
||||
let n = stack.length
|
||||
if (n > 0 && stack.includes('unstyle')) {
|
||||
stack = [...new Set(['unstyle', ...stack])].reverse()
|
||||
}
|
||||
while (n-- > 0) str = wrap(colors.styles[stack[n]], str, nl)
|
||||
return str
|
||||
}
|
||||
|
||||
const define = (name, codes, type) => {
|
||||
colors.styles[name] = ansi({ name, codes })
|
||||
let keys = colors.keys[type] || (colors.keys[type] = [])
|
||||
keys.push(name)
|
||||
|
||||
Reflect.defineProperty(colors, name, {
|
||||
configurable: true,
|
||||
enumerable: true,
|
||||
set(value) {
|
||||
colors.alias(name, value)
|
||||
},
|
||||
get() {
|
||||
let color = (input) => style(input, color.stack)
|
||||
Reflect.setPrototypeOf(color, colors)
|
||||
color.stack = this.stack ? this.stack.concat(name) : [name]
|
||||
return color
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
define('reset', [0, 0], 'modifier')
|
||||
define('bold', [1, 22], 'modifier')
|
||||
define('dim', [2, 22], 'modifier')
|
||||
define('italic', [3, 23], 'modifier')
|
||||
define('underline', [4, 24], 'modifier')
|
||||
define('inverse', [7, 27], 'modifier')
|
||||
define('hidden', [8, 28], 'modifier')
|
||||
define('strikethrough', [9, 29], 'modifier')
|
||||
|
||||
define('black', [30, 39], 'color')
|
||||
define('red', [31, 39], 'color')
|
||||
define('green', [32, 39], 'color')
|
||||
define('yellow', [33, 39], 'color')
|
||||
define('blue', [34, 39], 'color')
|
||||
define('magenta', [35, 39], 'color')
|
||||
define('cyan', [36, 39], 'color')
|
||||
define('white', [37, 39], 'color')
|
||||
define('gray', [90, 39], 'color')
|
||||
define('grey', [90, 39], 'color')
|
||||
|
||||
define('bgBlack', [40, 49], 'bg')
|
||||
define('bgRed', [41, 49], 'bg')
|
||||
define('bgGreen', [42, 49], 'bg')
|
||||
define('bgYellow', [43, 49], 'bg')
|
||||
define('bgBlue', [44, 49], 'bg')
|
||||
define('bgMagenta', [45, 49], 'bg')
|
||||
define('bgCyan', [46, 49], 'bg')
|
||||
define('bgWhite', [47, 49], 'bg')
|
||||
|
||||
define('blackBright', [90, 39], 'bright')
|
||||
define('redBright', [91, 39], 'bright')
|
||||
define('greenBright', [92, 39], 'bright')
|
||||
define('yellowBright', [93, 39], 'bright')
|
||||
define('blueBright', [94, 39], 'bright')
|
||||
define('magentaBright', [95, 39], 'bright')
|
||||
define('cyanBright', [96, 39], 'bright')
|
||||
define('whiteBright', [97, 39], 'bright')
|
||||
|
||||
define('bgBlackBright', [100, 49], 'bgBright')
|
||||
define('bgRedBright', [101, 49], 'bgBright')
|
||||
define('bgGreenBright', [102, 49], 'bgBright')
|
||||
define('bgYellowBright', [103, 49], 'bgBright')
|
||||
define('bgBlueBright', [104, 49], 'bgBright')
|
||||
define('bgMagentaBright', [105, 49], 'bgBright')
|
||||
define('bgCyanBright', [106, 49], 'bgBright')
|
||||
define('bgWhiteBright', [107, 49], 'bgBright')
|
||||
|
||||
colors.ansiRegex = ANSI_REGEX
|
||||
colors.hasColor = colors.hasAnsi = (str) => {
|
||||
colors.ansiRegex.lastIndex = 0
|
||||
return typeof str === 'string' && str !== '' && colors.ansiRegex.test(str)
|
||||
}
|
||||
|
||||
colors.alias = (name, color) => {
|
||||
let fn = typeof color === 'string' ? colors[color] : color
|
||||
|
||||
if (typeof fn !== 'function') {
|
||||
throw new TypeError('Expected alias to be the name of an existing color (string) or a function')
|
||||
}
|
||||
|
||||
if (!fn.stack) {
|
||||
Reflect.defineProperty(fn, 'name', { value: name })
|
||||
colors.styles[name] = fn
|
||||
fn.stack = [name]
|
||||
}
|
||||
|
||||
Reflect.defineProperty(colors, name, {
|
||||
configurable: true,
|
||||
enumerable: true,
|
||||
set(value) {
|
||||
colors.alias(name, value)
|
||||
},
|
||||
get() {
|
||||
let color = (input) => style(input, color.stack)
|
||||
Reflect.setPrototypeOf(color, colors)
|
||||
color.stack = this.stack ? this.stack.concat(fn.stack) : fn.stack
|
||||
return color
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
colors.theme = (custom) => {
|
||||
if (!isObject(custom)) throw new TypeError('Expected theme to be an object')
|
||||
for (let name of Object.keys(custom)) {
|
||||
colors.alias(name, custom[name])
|
||||
}
|
||||
return colors
|
||||
}
|
||||
|
||||
colors.alias('unstyle', (str) => {
|
||||
if (typeof str === 'string' && str !== '') {
|
||||
colors.ansiRegex.lastIndex = 0
|
||||
return str.replace(colors.ansiRegex, '')
|
||||
}
|
||||
return ''
|
||||
})
|
||||
|
||||
colors.alias('noop', (str) => str)
|
||||
colors.none = colors.clear = colors.noop
|
||||
|
||||
colors.stripColor = colors.unstyle
|
||||
colors.define = define
|
||||
return colors
|
||||
}
|
||||
|
||||
module.exports = create()
|
||||
module.exports.create = create
|
||||
9
node_modules/@prisma/client/scripts/default-deno-edge.ts
generated
vendored
Normal file
9
node_modules/@prisma/client/scripts/default-deno-edge.ts
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
class PrismaClient {
|
||||
constructor() {
|
||||
throw new Error(
|
||||
'@prisma/client/deno/edge did not initialize yet. Please run "prisma generate" and try to import it again.',
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
export { PrismaClient }
|
||||
110
node_modules/@prisma/client/scripts/default-index.d.ts
generated
vendored
Normal file
110
node_modules/@prisma/client/scripts/default-index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,110 @@
|
||||
/* eslint-disable @typescript-eslint/no-unused-vars */
|
||||
|
||||
import * as runtime from '@prisma/client/runtime/library'
|
||||
|
||||
/**
|
||||
* ## Prisma Client ʲˢ
|
||||
*
|
||||
* Type-safe database client for TypeScript & Node.js
|
||||
* @example
|
||||
* ```
|
||||
* const prisma = new Prisma()
|
||||
* // Fetch zero or more Users
|
||||
* const users = await prisma.user.findMany()
|
||||
* ```
|
||||
*
|
||||
*
|
||||
* Read more in our [docs](https://www.prisma.io/docs/concepts/components/prisma-client).
|
||||
*/
|
||||
export declare const PrismaClient: any
|
||||
|
||||
/**
|
||||
* ## Prisma Client ʲˢ
|
||||
*
|
||||
* Type-safe database client for TypeScript & Node.js
|
||||
* @example
|
||||
* ```
|
||||
* const prisma = new Prisma()
|
||||
* // Fetch zero or more Users
|
||||
* const users = await prisma.user.findMany()
|
||||
* ```
|
||||
*
|
||||
*
|
||||
* Read more in our [docs](https://www.prisma.io/docs/concepts/components/prisma-client).
|
||||
*/
|
||||
export declare type PrismaClient = any
|
||||
|
||||
export declare class PrismaClientExtends<
|
||||
ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs,
|
||||
> {
|
||||
$extends: { extArgs: ExtArgs } & (<
|
||||
R extends runtime.Types.Extensions.UserArgs['result'] = {},
|
||||
M extends runtime.Types.Extensions.UserArgs['model'] = {},
|
||||
Q extends runtime.Types.Extensions.UserArgs['query'] = {},
|
||||
C extends runtime.Types.Extensions.UserArgs['client'] = {},
|
||||
Args extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.InternalArgs<R, M, {}, C>,
|
||||
>(
|
||||
args:
|
||||
| ((client: PrismaClientExtends<ExtArgs>) => { $extends: { extArgs: Args } })
|
||||
| { name?: string }
|
||||
| { result?: R & runtime.Types.Extensions.UserArgs['result'] }
|
||||
| { model?: M & runtime.Types.Extensions.UserArgs['model'] }
|
||||
| { query?: Q & runtime.Types.Extensions.UserArgs['query'] }
|
||||
| { client?: C & runtime.Types.Extensions.UserArgs['client'] },
|
||||
) => PrismaClientExtends<Args & ExtArgs> & Args['client'])
|
||||
|
||||
$transaction<R>(
|
||||
fn: (prisma: Omit<this, runtime.ITXClientDenyList>) => Promise<R>,
|
||||
options?: { maxWait?: number; timeout?: number; isolationLevel?: string },
|
||||
): Promise<R>
|
||||
$transaction<P extends Prisma.PrismaPromise<any>[]>(
|
||||
arg: [...P],
|
||||
options?: { isolationLevel?: string },
|
||||
): Promise<runtime.Types.Utils.UnwrapTuple<P>>
|
||||
}
|
||||
|
||||
export declare const dmmf: any
|
||||
export declare type dmmf = any
|
||||
|
||||
/**
|
||||
* Get the type of the value, that the Promise holds.
|
||||
*/
|
||||
export declare type PromiseType<T extends PromiseLike<any>> = T extends PromiseLike<infer U> ? U : T
|
||||
|
||||
/**
|
||||
* Get the return type of a function which returns a Promise.
|
||||
*/
|
||||
export declare type PromiseReturnType<T extends (...args: any) => Promise<any>> = PromiseType<ReturnType<T>>
|
||||
|
||||
export namespace Prisma {
|
||||
export type TransactionClient = any
|
||||
|
||||
export function defineExtension<
|
||||
R extends runtime.Types.Extensions.UserArgs['result'] = {},
|
||||
M extends runtime.Types.Extensions.UserArgs['model'] = {},
|
||||
Q extends runtime.Types.Extensions.UserArgs['query'] = {},
|
||||
C extends runtime.Types.Extensions.UserArgs['client'] = {},
|
||||
Args extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.InternalArgs<R, M, {}, C>,
|
||||
>(
|
||||
args:
|
||||
| ((client: PrismaClientExtends) => { $extends: { extArgs: Args } })
|
||||
| { name?: string }
|
||||
| { result?: R & runtime.Types.Extensions.UserArgs['result'] }
|
||||
| { model?: M & runtime.Types.Extensions.UserArgs['model'] }
|
||||
| { query?: Q & runtime.Types.Extensions.UserArgs['query'] }
|
||||
| { client?: C & runtime.Types.Extensions.UserArgs['client'] },
|
||||
): (client: any) => PrismaClientExtends<Args>
|
||||
|
||||
export type Extension = runtime.Types.Extensions.UserArgs
|
||||
export import getExtensionContext = runtime.Extensions.getExtensionContext
|
||||
export import Args = runtime.Types.Public.Args
|
||||
export import Payload = runtime.Types.Public.Payload
|
||||
export import Result = runtime.Types.Public.Result
|
||||
export import Exact = runtime.Types.Public.Exact
|
||||
export import PrismaPromise = runtime.Types.Public.PrismaPromise
|
||||
|
||||
export const prismaVersion: {
|
||||
client: string
|
||||
engine: string
|
||||
}
|
||||
}
|
||||
65
node_modules/@prisma/client/scripts/default-index.js
generated
vendored
Normal file
65
node_modules/@prisma/client/scripts/default-index.js
generated
vendored
Normal file
@@ -0,0 +1,65 @@
|
||||
"use strict";
|
||||
var __defProp = Object.defineProperty;
|
||||
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
||||
var __getOwnPropNames = Object.getOwnPropertyNames;
|
||||
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
||||
var __export = (target, all) => {
|
||||
for (var name in all)
|
||||
__defProp(target, name, { get: all[name], enumerable: true });
|
||||
};
|
||||
var __copyProps = (to, from, except, desc) => {
|
||||
if (from && typeof from === "object" || typeof from === "function") {
|
||||
for (let key of __getOwnPropNames(from))
|
||||
if (!__hasOwnProp.call(to, key) && key !== except)
|
||||
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
||||
}
|
||||
return to;
|
||||
};
|
||||
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
||||
|
||||
// src/scripts/default-index.ts
|
||||
var default_index_exports = {};
|
||||
__export(default_index_exports, {
|
||||
Prisma: () => Prisma,
|
||||
PrismaClient: () => PrismaClient,
|
||||
default: () => default_index_default
|
||||
});
|
||||
module.exports = __toCommonJS(default_index_exports);
|
||||
|
||||
// ../../node_modules/.pnpm/@prisma+engines-version@5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2/node_modules/@prisma/engines-version/package.json
|
||||
var prisma = {
|
||||
enginesVersion: "605197351a3c8bdd595af2d2a9bc3025bca48ea2"
|
||||
};
|
||||
|
||||
// package.json
|
||||
var version = "5.22.0";
|
||||
|
||||
// src/runtime/utils/clientVersion.ts
|
||||
var clientVersion = version;
|
||||
|
||||
// src/scripts/default-index.ts
|
||||
var PrismaClient = class {
|
||||
constructor() {
|
||||
throw new Error('@prisma/client did not initialize yet. Please run "prisma generate" and try to import it again.');
|
||||
}
|
||||
};
|
||||
function defineExtension(ext) {
|
||||
if (typeof ext === "function") {
|
||||
return ext;
|
||||
}
|
||||
return (client) => client.$extends(ext);
|
||||
}
|
||||
function getExtensionContext(that) {
|
||||
return that;
|
||||
}
|
||||
var Prisma = {
|
||||
defineExtension,
|
||||
getExtensionContext,
|
||||
prismaVersion: { client: clientVersion, engine: prisma.enginesVersion }
|
||||
};
|
||||
var default_index_default = { Prisma };
|
||||
// Annotate the CommonJS export names for ESM import in node:
|
||||
0 && (module.exports = {
|
||||
Prisma,
|
||||
PrismaClient
|
||||
});
|
||||
5
node_modules/@prisma/client/scripts/postinstall.d.ts
generated
vendored
Normal file
5
node_modules/@prisma/client/scripts/postinstall.d.ts
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
export function getPostInstallTrigger(): string
|
||||
export const UNABLE_TO_FIND_POSTINSTALL_TRIGGER__EMPTY_STRING
|
||||
export const UNABLE_TO_FIND_POSTINSTALL_TRIGGER__ENVAR_MISSING
|
||||
export const UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_PARSE_ERROR
|
||||
export const UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_SCHEMA_ERROR
|
||||
410
node_modules/@prisma/client/scripts/postinstall.js
generated
vendored
Normal file
410
node_modules/@prisma/client/scripts/postinstall.js
generated
vendored
Normal file
@@ -0,0 +1,410 @@
|
||||
// @ts-check
|
||||
const childProcess = require('child_process')
|
||||
const { promisify } = require('util')
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const c = require('./colors')
|
||||
|
||||
const exec = promisify(childProcess.exec)
|
||||
|
||||
function debug(message, ...optionalParams) {
|
||||
if (process.env.DEBUG && process.env.DEBUG === 'prisma:postinstall') {
|
||||
console.log(message, ...optionalParams)
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Adds `package.json` to the end of a path if it doesn't already exist'
|
||||
* @param {string} pth
|
||||
*/
|
||||
function addPackageJSON(pth) {
|
||||
if (pth.endsWith('package.json')) return pth
|
||||
return path.join(pth, 'package.json')
|
||||
}
|
||||
|
||||
/**
|
||||
* Looks up for a `package.json` which is not `@prisma/cli` or `prisma` and returns the directory of the package
|
||||
* @param {string | null} startPath - Path to Start At
|
||||
* @param {number} limit - Find Up limit
|
||||
* @returns {string | null}
|
||||
*/
|
||||
function findPackageRoot(startPath, limit = 10) {
|
||||
if (!startPath || !fs.existsSync(startPath)) return null
|
||||
let currentPath = startPath
|
||||
// Limit traversal
|
||||
for (let i = 0; i < limit; i++) {
|
||||
const pkgPath = addPackageJSON(currentPath)
|
||||
if (fs.existsSync(pkgPath)) {
|
||||
try {
|
||||
const pkg = require(pkgPath)
|
||||
if (pkg.name && !['@prisma/cli', 'prisma'].includes(pkg.name)) {
|
||||
return pkgPath.replace('package.json', '')
|
||||
}
|
||||
} catch {} // eslint-disable-line no-empty
|
||||
}
|
||||
currentPath = path.join(currentPath, '../')
|
||||
}
|
||||
return null
|
||||
}
|
||||
|
||||
/**
|
||||
* The `postinstall` hook of client sets up the ground and env vars for the `prisma generate` command,
|
||||
* and runs it, showing a warning if the schema is not found.
|
||||
* - initializes the ./node_modules/.prisma/client folder with the default index(-browser).js/index.d.ts,
|
||||
* which define a `PrismaClient` class stub that throws an error if instantiated before the `prisma generate`
|
||||
* command is successfully executed.
|
||||
* - sets the path of the root of the project (TODO: to verify) to the `process.env.PRISMA_GENERATE_IN_POSTINSTALL`
|
||||
* variable, or `'true'` if the project root cannot be found.
|
||||
* - runs `prisma generate`, passing through additional information about the command that triggered the generation,
|
||||
* which is useful for debugging/telemetry. It tries to use the local `prisma` package if it is installed, otherwise it
|
||||
* falls back to the global `prisma` package. If neither options are available, it warns the user to install `prisma` first.
|
||||
*/
|
||||
async function main() {
|
||||
if (process.env.INIT_CWD) {
|
||||
process.chdir(process.env.INIT_CWD) // necessary, because npm chooses __dirname as process.cwd()
|
||||
// in the postinstall hook
|
||||
}
|
||||
|
||||
await createDefaultGeneratedThrowFiles()
|
||||
|
||||
// TODO: consider using the `which` package
|
||||
const localPath = getLocalPackagePath()
|
||||
|
||||
// Only execute if !localpath
|
||||
const installedGlobally = localPath ? undefined : await isInstalledGlobally()
|
||||
|
||||
// this is needed, so we can find the correct schemas in yarn workspace projects
|
||||
const root = findPackageRoot(localPath)
|
||||
|
||||
process.env.PRISMA_GENERATE_IN_POSTINSTALL = root ? root : 'true'
|
||||
|
||||
debug({
|
||||
localPath,
|
||||
installedGlobally,
|
||||
init_cwd: process.env.INIT_CWD,
|
||||
PRISMA_GENERATE_IN_POSTINSTALL: process.env.PRISMA_GENERATE_IN_POSTINSTALL,
|
||||
})
|
||||
try {
|
||||
if (localPath) {
|
||||
await run('node', [localPath, 'generate', '--postinstall', doubleQuote(getPostInstallTrigger())])
|
||||
return
|
||||
}
|
||||
if (installedGlobally) {
|
||||
await run('prisma', ['generate', '--postinstall', doubleQuote(getPostInstallTrigger())])
|
||||
return
|
||||
}
|
||||
} catch (e) {
|
||||
// if exit code = 1 do not print
|
||||
if (e && e !== 1) {
|
||||
console.error(e)
|
||||
}
|
||||
debug(e)
|
||||
}
|
||||
|
||||
if (!localPath && !installedGlobally) {
|
||||
console.error(
|
||||
`${c.yellow(
|
||||
'warning',
|
||||
)} In order to use "@prisma/client", please install Prisma CLI. You can install it with "npm add -D prisma".`,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
function getLocalPackagePath() {
|
||||
try {
|
||||
const packagePath = require.resolve('prisma/package.json')
|
||||
if (packagePath) {
|
||||
return require.resolve('prisma')
|
||||
}
|
||||
} catch (e) {} // eslint-disable-line no-empty
|
||||
|
||||
// TODO: consider removing this
|
||||
try {
|
||||
const packagePath = require.resolve('@prisma/cli/package.json')
|
||||
if (packagePath) {
|
||||
return require.resolve('@prisma/cli')
|
||||
}
|
||||
} catch (e) {} // eslint-disable-line no-empty
|
||||
|
||||
return null
|
||||
}
|
||||
|
||||
async function isInstalledGlobally() {
|
||||
try {
|
||||
const result = await exec('prisma -v')
|
||||
if (result.stdout.includes('@prisma/client')) {
|
||||
return true
|
||||
} else {
|
||||
console.error(`${c.yellow('warning')} You still have the ${c.bold('prisma')} cli (Prisma 1) installed globally.
|
||||
Please uninstall it with either ${c.green('npm remove -g prisma')} or ${c.green('yarn global remove prisma')}.`)
|
||||
}
|
||||
} catch (e) {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
if (!process.env.PRISMA_SKIP_POSTINSTALL_GENERATE) {
|
||||
main()
|
||||
.catch((e) => {
|
||||
if (e.stderr) {
|
||||
if (e.stderr.includes(`Can't find schema.prisma`)) {
|
||||
console.error(
|
||||
`${c.yellow('warning')} @prisma/client needs a ${c.bold('schema.prisma')} to function, but couldn't find it.
|
||||
Please either create one manually or use ${c.bold('prisma init')}.
|
||||
Once you created it, run ${c.bold('prisma generate')}.
|
||||
To keep Prisma related things separate, we recommend creating it in a subfolder called ${c.underline(
|
||||
'./prisma',
|
||||
)} like so: ${c.underline('./prisma/schema.prisma')}\n`,
|
||||
)
|
||||
} else {
|
||||
console.error(e.stderr)
|
||||
}
|
||||
} else {
|
||||
console.error(e)
|
||||
}
|
||||
process.exit(0)
|
||||
})
|
||||
.finally(() => {
|
||||
debug(`postinstall trigger: ${getPostInstallTrigger()}`)
|
||||
})
|
||||
}
|
||||
|
||||
function run(cmd, params, cwd = process.cwd()) {
|
||||
const child = childProcess.spawn(cmd, params, {
|
||||
stdio: ['pipe', 'inherit', 'inherit'],
|
||||
cwd,
|
||||
})
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
child.on('close', () => {
|
||||
resolve(undefined)
|
||||
})
|
||||
child.on('exit', (code) => {
|
||||
if (code === 0) {
|
||||
resolve(undefined)
|
||||
} else {
|
||||
reject(code)
|
||||
}
|
||||
})
|
||||
child.on('error', () => {
|
||||
reject()
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* Copies our default "throw" files into the default generation folder. These
|
||||
* files are dummy and informative because they just throw an error to let the
|
||||
* user know that they have forgotten to run `prisma generate` or that they
|
||||
* don't have a a schema file yet. We only add these files at the default
|
||||
* location `node_modules/.prisma/client`.
|
||||
*/
|
||||
async function createDefaultGeneratedThrowFiles() {
|
||||
try {
|
||||
const dotPrismaClientDir = path.join(__dirname, '../../../.prisma/client')
|
||||
const denoPrismaClientDir = path.join(__dirname, '../../../.prisma/client/deno')
|
||||
|
||||
await makeDir(dotPrismaClientDir)
|
||||
await makeDir(denoPrismaClientDir)
|
||||
|
||||
const defaultFileConfig = {
|
||||
js: path.join(__dirname, 'default-index.js'),
|
||||
ts: path.join(__dirname, 'default-index.d.ts'),
|
||||
}
|
||||
|
||||
/**
|
||||
* @type {Record<string, { js?: string; ts?: string } | undefined>}
|
||||
*/
|
||||
const defaultFiles = {
|
||||
index: defaultFileConfig,
|
||||
edge: defaultFileConfig,
|
||||
default: defaultFileConfig,
|
||||
wasm: defaultFileConfig,
|
||||
'index-browser': {
|
||||
js: path.join(__dirname, 'default-index.js'),
|
||||
ts: undefined,
|
||||
},
|
||||
'deno/edge': {
|
||||
js: undefined,
|
||||
ts: path.join(__dirname, 'default-deno-edge.ts'),
|
||||
},
|
||||
}
|
||||
|
||||
for (const file of Object.keys(defaultFiles)) {
|
||||
const { js, ts } = defaultFiles[file] ?? {}
|
||||
const dotPrismaJsFilePath = path.join(dotPrismaClientDir, `${file}.js`)
|
||||
const dotPrismaTsFilePath = path.join(dotPrismaClientDir, `${file}.d.ts`)
|
||||
|
||||
if (js && !fs.existsSync(dotPrismaJsFilePath) && fs.existsSync(js)) {
|
||||
await fs.promises.copyFile(js, dotPrismaJsFilePath)
|
||||
}
|
||||
|
||||
if (ts && !fs.existsSync(dotPrismaTsFilePath) && fs.existsSync(ts)) {
|
||||
await fs.promises.copyFile(ts, dotPrismaTsFilePath)
|
||||
}
|
||||
}
|
||||
} catch (e) {
|
||||
console.error(e)
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: can this be replaced some utility eg. mkdir
|
||||
function makeDir(input) {
|
||||
const make = async (pth) => {
|
||||
try {
|
||||
await fs.promises.mkdir(pth)
|
||||
|
||||
return pth
|
||||
} catch (error) {
|
||||
if (error.code === 'EPERM') {
|
||||
throw error
|
||||
}
|
||||
|
||||
if (error.code === 'ENOENT') {
|
||||
if (path.dirname(pth) === pth) {
|
||||
throw new Error(`operation not permitted, mkdir '${pth}'`)
|
||||
}
|
||||
|
||||
if (error.message.includes('null bytes')) {
|
||||
throw error
|
||||
}
|
||||
|
||||
await make(path.dirname(pth))
|
||||
|
||||
return make(pth)
|
||||
}
|
||||
|
||||
try {
|
||||
const stats = await fs.promises.stat(pth)
|
||||
if (!stats.isDirectory()) {
|
||||
throw new Error('The path is not a directory')
|
||||
}
|
||||
} catch (_) {
|
||||
throw error
|
||||
}
|
||||
|
||||
return pth
|
||||
}
|
||||
}
|
||||
|
||||
return make(path.resolve(input))
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the command that triggered this postinstall script being run. If there is
|
||||
* an error while attempting to get this value then the string constant
|
||||
* 'ERROR_WHILE_FINDING_POSTINSTALL_TRIGGER' is returned.
|
||||
* This information is just necessary for telemetry.
|
||||
* This is passed to `prisma generate` as a string like `--postinstall value`.
|
||||
*/
|
||||
function getPostInstallTrigger() {
|
||||
/*
|
||||
npm_config_argv` is not officially documented so here are our research notes
|
||||
|
||||
`npm_config_argv` is available to the postinstall script when the containing package has been installed by npm into some project.
|
||||
|
||||
An example of its value:
|
||||
|
||||
```
|
||||
npm_config_argv: '{"remain":["../test"],"cooked":["add","../test"],"original":["add","../test"]}',
|
||||
```
|
||||
|
||||
We are interesting in the data contained in the "original" field.
|
||||
|
||||
Trivia/Note: `npm_config_argv` is not available when running e.g. `npm install` on the containing package itself (e.g. when working on it)
|
||||
|
||||
Yarn mimics this data and environment variable. Here is an example following `yarn add` for the same package:
|
||||
|
||||
```
|
||||
npm_config_argv: '{"remain":[],"cooked":["add"],"original":["add","../test"]}'
|
||||
```
|
||||
|
||||
Other package managers like `pnpm` have not been tested.
|
||||
*/
|
||||
|
||||
const maybe_npm_config_argv_string = process.env.npm_config_argv
|
||||
|
||||
if (maybe_npm_config_argv_string === undefined) {
|
||||
return UNABLE_TO_FIND_POSTINSTALL_TRIGGER__ENVAR_MISSING
|
||||
}
|
||||
|
||||
let npm_config_argv
|
||||
try {
|
||||
npm_config_argv = JSON.parse(maybe_npm_config_argv_string)
|
||||
} catch (e) {
|
||||
return `${UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_PARSE_ERROR}: ${maybe_npm_config_argv_string}`
|
||||
}
|
||||
|
||||
if (typeof npm_config_argv !== 'object' || npm_config_argv === null) {
|
||||
return `${UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_SCHEMA_ERROR}: ${maybe_npm_config_argv_string}`
|
||||
}
|
||||
|
||||
const npm_config_argv_original_arr = npm_config_argv.original
|
||||
|
||||
if (!Array.isArray(npm_config_argv_original_arr)) {
|
||||
return `${UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_SCHEMA_ERROR}: ${maybe_npm_config_argv_string}`
|
||||
}
|
||||
|
||||
const npm_config_argv_original = npm_config_argv_original_arr.filter((arg) => arg !== '').join(' ')
|
||||
|
||||
const command =
|
||||
npm_config_argv_original === ''
|
||||
? getPackageManagerName()
|
||||
: [getPackageManagerName(), npm_config_argv_original].join(' ')
|
||||
|
||||
return command
|
||||
}
|
||||
|
||||
/**
|
||||
* Wrap double quotes around the given string.
|
||||
*/
|
||||
function doubleQuote(x) {
|
||||
return `"${x}"`
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the package manager name currently being used. If parsing fails, then the following pattern is returned:
|
||||
* UNKNOWN_NPM_CONFIG_USER_AGENT(<string received>).
|
||||
*/
|
||||
function getPackageManagerName() {
|
||||
const userAgent = process.env.npm_config_user_agent
|
||||
if (!userAgent) return 'MISSING_NPM_CONFIG_USER_AGENT'
|
||||
|
||||
const name = parsePackageManagerName(userAgent)
|
||||
if (!name) return `UNKNOWN_NPM_CONFIG_USER_AGENT(${userAgent})`
|
||||
|
||||
return name
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse package manager name from useragent. If parsing fails, `null` is returned.
|
||||
*/
|
||||
function parsePackageManagerName(userAgent) {
|
||||
let packageManager = null
|
||||
|
||||
// example: 'yarn/1.22.4 npm/? node/v13.11.0 darwin x64'
|
||||
// References:
|
||||
// - https://pnpm.io/only-allow-pnpm
|
||||
// - https://github.com/cameronhunter/npm-config-user-agent-parser
|
||||
if (userAgent) {
|
||||
const matchResult = userAgent.match(/^([^/]+)\/.+/)
|
||||
if (matchResult) {
|
||||
packageManager = matchResult[1].trim()
|
||||
}
|
||||
}
|
||||
|
||||
return packageManager
|
||||
}
|
||||
|
||||
// prettier-ignore
|
||||
const UNABLE_TO_FIND_POSTINSTALL_TRIGGER__ENVAR_MISSING = 'UNABLE_TO_FIND_POSTINSTALL_TRIGGER__ENVAR_MISSING'
|
||||
// prettier-ignore
|
||||
const UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_PARSE_ERROR = 'UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_PARSE_ERROR'
|
||||
// prettier-ignore
|
||||
const UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_SCHEMA_ERROR = 'UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_SCHEMA_ERROR'
|
||||
|
||||
// expose for testing
|
||||
|
||||
exports.UNABLE_TO_FIND_POSTINSTALL_TRIGGER__ENVAR_MISSING = UNABLE_TO_FIND_POSTINSTALL_TRIGGER__ENVAR_MISSING
|
||||
exports.UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_PARSE_ERROR = UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_PARSE_ERROR
|
||||
exports.UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_SCHEMA_ERROR = UNABLE_TO_FIND_POSTINSTALL_TRIGGER_JSON_SCHEMA_ERROR
|
||||
exports.getPostInstallTrigger = getPostInstallTrigger
|
||||
1
node_modules/@prisma/client/sql.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/client/sql.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from '.prisma/client/sql'
|
||||
4
node_modules/@prisma/client/sql.js
generated
vendored
Normal file
4
node_modules/@prisma/client/sql.js
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
'use strict'
|
||||
module.exports = {
|
||||
...require('.prisma/client/sql'),
|
||||
}
|
||||
1
node_modules/@prisma/client/sql.mjs
generated
vendored
Normal file
1
node_modules/@prisma/client/sql.mjs
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from '../../.prisma/client/sql/index.mjs'
|
||||
1
node_modules/@prisma/client/wasm.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/client/wasm.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from '.prisma/client/wasm'
|
||||
4
node_modules/@prisma/client/wasm.js
generated
vendored
Normal file
4
node_modules/@prisma/client/wasm.js
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
module.exports = {
|
||||
// https://github.com/prisma/prisma/pull/12907
|
||||
...require('.prisma/client/wasm'),
|
||||
}
|
||||
201
node_modules/@prisma/engines-version/LICENSE
generated
vendored
Normal file
201
node_modules/@prisma/engines-version/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,201 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
8
node_modules/@prisma/engines-version/README.md
generated
vendored
Normal file
8
node_modules/@prisma/engines-version/README.md
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
# `@prisma/engines-version`
|
||||
|
||||
This package exports the Prisma Engines version to be downloaded from Prisma CDN.
|
||||
|
||||
⚠️ **Warning**: This package is intended for Prisma's internal use.
|
||||
Its release cycle does not follow SemVer, which means we might release breaking changes (change APIs, remove functionality) without any prior warning.
|
||||
|
||||
See its companion, [`@prisma/engines` npm package](https://www.npmjs.com/package/@prisma/engines).
|
||||
1
node_modules/@prisma/engines-version/index.d.ts
generated
vendored
Normal file
1
node_modules/@prisma/engines-version/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export declare const enginesVersion: string;
|
||||
5
node_modules/@prisma/engines-version/index.js
generated
vendored
Normal file
5
node_modules/@prisma/engines-version/index.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.enginesVersion = void 0;
|
||||
exports.enginesVersion = require('./package.json').prisma.enginesVersion;
|
||||
//# sourceMappingURL=index.js.map
|
||||
27
node_modules/@prisma/engines-version/package.json
generated
vendored
Normal file
27
node_modules/@prisma/engines-version/package.json
generated
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"name": "@prisma/engines-version",
|
||||
"version": "5.22.0-44.605197351a3c8bdd595af2d2a9bc3025bca48ea2",
|
||||
"main": "index.js",
|
||||
"types": "index.d.ts",
|
||||
"license": "Apache-2.0",
|
||||
"author": "Tim Suchanek <suchanek@prisma.io>",
|
||||
"prisma": {
|
||||
"enginesVersion": "605197351a3c8bdd595af2d2a9bc3025bca48ea2"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/prisma/engines-wrapper.git",
|
||||
"directory": "packages/engines-version"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "18.19.34",
|
||||
"typescript": "4.9.5"
|
||||
},
|
||||
"files": [
|
||||
"index.js",
|
||||
"index.d.ts"
|
||||
],
|
||||
"scripts": {
|
||||
"build": "tsc -d"
|
||||
}
|
||||
}
|
||||
201
node_modules/@prisma/engines/LICENSE
generated
vendored
Normal file
201
node_modules/@prisma/engines/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,201 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user