Merge pull request #1 from tycrek/x-dev-15

resolves package.json conflicts
pull/245/head
X 7 months ago committed by GitHub
commit 387fd5ebfa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,5 @@
# production
.ass-data/
# development
node_modules/

@ -26,11 +26,11 @@ jobs:
# Install npm 10 & TypeScript
- name: Install global packages
run: npm i -g npm@10 typescript
run: npm i -g npm@10 typescript pnpm
# Install ass dependencies (including types)
- name: Install dependencies
run: npm i --save-dev
run: pnpm i
# Compile the TypeScript files
- name: Run build script

@ -1,10 +1,12 @@
# ass Dockerfile v0.3.2
# ass Dockerfile v0.3.3
# authors:
# - tycrek <t@tycrek.com> (https://tycrek.com/)
# - Zusier <zusier@pm.me> (https://github.com/Zusier)
FROM node:20.8.0
FROM node:20.9.0-alpine
WORKDIR /opt/ass-src/
COPY . ./
RUN npm i --save-dev && npm run build
CMD npm start
RUN npm i -g pnpm
RUN pnpm i
RUN npm run build
CMD npm start

322
package-lock.json generated

@ -9,60 +9,50 @@
"version": "0.15.0-indev",
"license": "ISC",
"dependencies": {
"@aws-sdk/client-s3": "^3.421.0",
"@shoelace-style/shoelace": "^2.9.0",
"@aws-sdk/client-s3": "^3.437.0",
"@shoelace-style/shoelace": "^2.11.2",
"@tinycreek/postcss-font-magician": "^4.2.0",
"@tsconfig/node20": "^20.1.2",
"@tycrek/discord-hookr": "^0.1.0",
"@tycrek/express-postcss": "^0.4.1",
"@tycrek/joint": "^1.0.0-1",
"@tycrek/log": "^0.7.5",
"@tycrek/papito": "^0.3.4",
"@xoi/gps-metadata-remover": "^1.1.2",
"any-shell-escape": "^0.1.1",
"autoprefixer": "^10.4.16",
"axios": "^1.5.1",
"bcrypt": "^5.1.1",
"chalk": "^4.1.2",
"crypto-random-string": "3.3.1",
"cssnano": "^6.0.1",
"express": "^4.18.2",
"express-busboy": "^10.1.0",
"express-rate-limit": "^7.1.2",
"express-rate-limit": "^7.1.3",
"express-session": "^1.17.3",
"ffmpeg-static": "^5.2.0",
"fs-extra": "^11.1.1",
"luxon": "^3.4.3",
"memorystore": "^1.6.7",
"mysql2": "^3.6.1",
"node-fetch": "^2.6.7",
"mysql2": "^3.6.2",
"node-vibrant": "^3.1.6",
"pug": "^3.0.2",
"sanitize-filename": "^1.6.3",
"sharp": "^0.32.6",
"shoelace-fontawesome-pug": "^6.4.2",
"shoelace-pug-loader": "^2.9.2",
"tailwindcss": "^3.3.3",
"typescript": "^5.2.2",
"uuid": "^8.3.2"
"shoelace-fontawesome-pug": "^6.4.3",
"shoelace-pug-loader": "^2.11.0",
"tailwindcss": "^3.3.5",
"typescript": "^5.2.2"
},
"devDependencies": {
"@types/bcrypt": "^5.0.0",
"@types/express": "^4.17.18",
"@types/express-busboy": "^8.0.1",
"@types/express-session": "^1.17.8",
"@types/ffmpeg-static": "^3.0.1",
"@types/fs-extra": "^9.0.13",
"@types/luxon": "^3.3.2",
"@types/node": "^18.16.19",
"@types/node-fetch": "^2.6.6",
"@types/sharp": "^0.32.0",
"@types/tailwindcss": "^3.1.0",
"@types/uuid": "^8.3.1"
"@types/bcrypt": "^5.0.1",
"@types/express": "^4.17.20",
"@types/express-busboy": "^8.0.2",
"@types/express-session": "^1.17.9",
"@types/ffmpeg-static": "^3.0.2",
"@types/fs-extra": "^11.0.3",
"@types/luxon": "^3.3.3",
"@types/node": "^20.8.9"
},
"engines": {
"node": ">=20.8.0",
"npm": ">=10.1.0"
"node": "^20",
"npm": "^10"
}
},
"node_modules/@alloc/quick-lru": {
@ -215,15 +205,16 @@
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
},
"node_modules/@aws-sdk/client-s3": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.433.0.tgz",
"integrity": "sha512-gCuV4kmmHPFrQIl53VxddIylqItarwyX9+ykNIxMoMcEcBVmJhmshV6M9Re+wzS8eUPB6maqurOKGu83YUMpIA==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.437.0.tgz",
"integrity": "sha512-KCocXvRH3pCTJNeNivDJN9mygK0B4Uvp5POWlCXgOj5iQU2U/sEpr+LqAwQZiZZjE7crcsAf0FPKMyk6/oMXHQ==",
"dependencies": {
"@aws-crypto/sha1-browser": "3.0.0",
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/client-sts": "3.433.0",
"@aws-sdk/credential-provider-node": "3.433.0",
"@aws-sdk/client-sts": "3.437.0",
"@aws-sdk/core": "3.436.0",
"@aws-sdk/credential-provider-node": "3.437.0",
"@aws-sdk/middleware-bucket-endpoint": "3.433.0",
"@aws-sdk/middleware-expect-continue": "3.433.0",
"@aws-sdk/middleware-flexible-checksums": "3.433.0",
@ -236,11 +227,11 @@
"@aws-sdk/middleware-ssec": "3.433.0",
"@aws-sdk/middleware-user-agent": "3.433.0",
"@aws-sdk/region-config-resolver": "3.433.0",
"@aws-sdk/signature-v4-multi-region": "3.433.0",
"@aws-sdk/signature-v4-multi-region": "3.437.0",
"@aws-sdk/types": "3.433.0",
"@aws-sdk/util-endpoints": "3.433.0",
"@aws-sdk/util-user-agent-browser": "3.433.0",
"@aws-sdk/util-user-agent-node": "3.433.0",
"@aws-sdk/util-user-agent-node": "3.437.0",
"@aws-sdk/xml-builder": "3.310.0",
"@smithy/config-resolver": "^2.0.16",
"@smithy/eventstream-serde-browser": "^2.0.12",
@ -280,12 +271,13 @@
}
},
"node_modules/@aws-sdk/client-sso": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.433.0.tgz",
"integrity": "sha512-L7ksMP7UnYH+w52ly+m+s5vk8662VtyqJ+UduFEMPqKUHTFEm7w+CCw4Xfk3hl5GlVvqPvYWqBqv8eLKSHpCEQ==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.437.0.tgz",
"integrity": "sha512-AxlLWz9ec3b8Bt+RqRb2Q1ucGQtKrLdKDna+UTjz7AouB/jpoMiegV9NHXVX64N6YFnQnvB0UEGigXiOQE+y/g==",
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/core": "3.436.0",
"@aws-sdk/middleware-host-header": "3.433.0",
"@aws-sdk/middleware-logger": "3.433.0",
"@aws-sdk/middleware-recursion-detection": "3.433.0",
@ -294,7 +286,7 @@
"@aws-sdk/types": "3.433.0",
"@aws-sdk/util-endpoints": "3.433.0",
"@aws-sdk/util-user-agent-browser": "3.433.0",
"@aws-sdk/util-user-agent-node": "3.433.0",
"@aws-sdk/util-user-agent-node": "3.437.0",
"@smithy/config-resolver": "^2.0.16",
"@smithy/fetch-http-handler": "^2.2.4",
"@smithy/hash-node": "^2.0.12",
@ -324,13 +316,14 @@
}
},
"node_modules/@aws-sdk/client-sts": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.433.0.tgz",
"integrity": "sha512-hQ+NLIcA1KRJ2qPdrtkJ3fOEVnehLLMlnB/I5mjg9K2UKjuiOufLao6tc5SyW9fseIL9AdX3fjJ8Unhg+y1RWg==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.437.0.tgz",
"integrity": "sha512-ilLcrCVwH81UbKNpB9Vax1Fw/mNx2d/bWXkCNXPvrExO+K39VFGS/VijOuSrru2iBq844NlG3uQV8DL/nbiKdA==",
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
"@aws-sdk/credential-provider-node": "3.433.0",
"@aws-sdk/core": "3.436.0",
"@aws-sdk/credential-provider-node": "3.437.0",
"@aws-sdk/middleware-host-header": "3.433.0",
"@aws-sdk/middleware-logger": "3.433.0",
"@aws-sdk/middleware-recursion-detection": "3.433.0",
@ -341,7 +334,7 @@
"@aws-sdk/types": "3.433.0",
"@aws-sdk/util-endpoints": "3.433.0",
"@aws-sdk/util-user-agent-browser": "3.433.0",
"@aws-sdk/util-user-agent-node": "3.433.0",
"@aws-sdk/util-user-agent-node": "3.437.0",
"@smithy/config-resolver": "^2.0.16",
"@smithy/fetch-http-handler": "^2.2.4",
"@smithy/hash-node": "^2.0.12",
@ -371,6 +364,17 @@
"node": ">=14.0.0"
}
},
"node_modules/@aws-sdk/core": {
"version": "3.436.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.436.0.tgz",
"integrity": "sha512-vX5/LjXvCejC2XUY6TSg1oozjqK6BvkE75t0ys9dgqyr5PlZyZksMoeAFHUlj0sCjhT3ziWCujP1oiSpPWY9hg==",
"dependencies": {
"@smithy/smithy-client": "^2.1.12"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/@aws-sdk/credential-provider-env": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.433.0.tgz",
@ -386,13 +390,13 @@
}
},
"node_modules/@aws-sdk/credential-provider-ini": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.433.0.tgz",
"integrity": "sha512-T+YhCOORyA4+i4T86FfFCmi/jPsmLOP6GAtScHp/K8XzB9XuVvJSZ+T8SUKeW6/9G9z3Az7dqeBVLcMdC6fFDA==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.437.0.tgz",
"integrity": "sha512-UybiJxYPvdwok5OcI9LakaHmaWZBdkX0gY8yU2n7TomYgWOwDJ88MpQgjXUJJ249PH+9/+How5H3vnFp0xJ0uQ==",
"dependencies": {
"@aws-sdk/credential-provider-env": "3.433.0",
"@aws-sdk/credential-provider-process": "3.433.0",
"@aws-sdk/credential-provider-sso": "3.433.0",
"@aws-sdk/credential-provider-sso": "3.437.0",
"@aws-sdk/credential-provider-web-identity": "3.433.0",
"@aws-sdk/types": "3.433.0",
"@smithy/credential-provider-imds": "^2.0.0",
@ -406,14 +410,14 @@
}
},
"node_modules/@aws-sdk/credential-provider-node": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.433.0.tgz",
"integrity": "sha512-uOTBJszqGJIX5SrH2YdN501cv9rW4ghuSkasxI9DL+sVV5YRMd/bwu6I3PphRyK7z4dosDEbJ1xoIuVR/W04HQ==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.437.0.tgz",
"integrity": "sha512-FMtgEe/me68xZQsymEpMcw7OuuiHaHx/Tp5EqZP5FC0Yv1yX3qr/ncIWU2zY3a9K0iLERmzQI1g3CMd8r4sy8A==",
"dependencies": {
"@aws-sdk/credential-provider-env": "3.433.0",
"@aws-sdk/credential-provider-ini": "3.433.0",
"@aws-sdk/credential-provider-ini": "3.437.0",
"@aws-sdk/credential-provider-process": "3.433.0",
"@aws-sdk/credential-provider-sso": "3.433.0",
"@aws-sdk/credential-provider-sso": "3.437.0",
"@aws-sdk/credential-provider-web-identity": "3.433.0",
"@aws-sdk/types": "3.433.0",
"@smithy/credential-provider-imds": "^2.0.0",
@ -442,12 +446,12 @@
}
},
"node_modules/@aws-sdk/credential-provider-sso": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.433.0.tgz",
"integrity": "sha512-vuc2X7q/1HUAO/NowfnNMpRDoHw8H2lyZZzUc0lmamy6PDrEFBi/VTm1nStGPuS9egCFrYlkRHsfp50ukYGa5w==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.437.0.tgz",
"integrity": "sha512-kijtnyyA6/+ipOef4KACsLDUTFWDZ97DSWKU0hJFyGEfelaon6o7NNVufuVOWrBNyklNWZqvPLuwWWQCxb6fuQ==",
"dependencies": {
"@aws-sdk/client-sso": "3.433.0",
"@aws-sdk/token-providers": "3.433.0",
"@aws-sdk/client-sso": "3.437.0",
"@aws-sdk/token-providers": "3.437.0",
"@aws-sdk/types": "3.433.0",
"@smithy/property-provider": "^2.0.0",
"@smithy/shared-ini-file-loader": "^2.0.6",
@ -666,9 +670,9 @@
}
},
"node_modules/@aws-sdk/signature-v4-multi-region": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.433.0.tgz",
"integrity": "sha512-wl2j1dos4VOKFawbapPm/0CNa3cIgpJXbEx+sp+DI3G8tSuP3c5UGtm0pXjM85egxZulhHVK1RVde0iD8j63pQ==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.437.0.tgz",
"integrity": "sha512-MmrqudssOs87JgVg7HGVdvJws/t4kcOrJJd+975ki+DPeSoyK2U4zBDfDkJ+n0tFuZBs3sLwLh0QXE7BV28rRA==",
"dependencies": {
"@aws-sdk/types": "3.433.0",
"@smithy/protocol-http": "^3.0.8",
@ -681,9 +685,9 @@
}
},
"node_modules/@aws-sdk/token-providers": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.433.0.tgz",
"integrity": "sha512-Q6aYVaQKB+CkBLHQQlN8MHVpOzZv9snRfVz7SxIpdbHkRuGEHiLliCY3fg6Sonvu3AKEPERPuHcaC75tnNpOBw==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.437.0.tgz",
"integrity": "sha512-nV9qIuG0+6XJb7hWpCC+/K7RoY3PZUWndP8BRQv7PQhhpd8tG/I5Kxb0V83h2XFBXyyjnv0aOHO8ehz3Kfcv2Q==",
"dependencies": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
@ -691,10 +695,11 @@
"@aws-sdk/middleware-logger": "3.433.0",
"@aws-sdk/middleware-recursion-detection": "3.433.0",
"@aws-sdk/middleware-user-agent": "3.433.0",
"@aws-sdk/region-config-resolver": "3.433.0",
"@aws-sdk/types": "3.433.0",
"@aws-sdk/util-endpoints": "3.433.0",
"@aws-sdk/util-user-agent-browser": "3.433.0",
"@aws-sdk/util-user-agent-node": "3.433.0",
"@aws-sdk/util-user-agent-node": "3.437.0",
"@smithy/config-resolver": "^2.0.16",
"@smithy/fetch-http-handler": "^2.2.4",
"@smithy/hash-node": "^2.0.12",
@ -783,9 +788,9 @@
}
},
"node_modules/@aws-sdk/util-user-agent-node": {
"version": "3.433.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.433.0.tgz",
"integrity": "sha512-yT1tO4MbbsUBLl5+S+jVv8wxiAtP5TKjKib9B2KQ2x0OtWWTrIf2o+IZK8va+zQqdV4MVMjezdxdE20hOdB4yQ==",
"version": "3.437.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.437.0.tgz",
"integrity": "sha512-JVEcvWaniamtYVPem4UthtCNoTBCfFTwYj7Y3CrWZ2Qic4TqrwLkAfaBGtI2TGrhIClVr77uzLI6exqMTN7orA==",
"dependencies": {
"@aws-sdk/types": "3.433.0",
"@smithy/node-config-provider": "^2.1.3",
@ -1680,9 +1685,9 @@
"integrity": "sha512-Hf45HeO+vdQblabpyZOTxJ4ZeZsmIUYXXPmoYrrR4OJ5OKxL+bhMz5mK8JXgl7HsoEowfz7+e248UGi861de9Q=="
},
"node_modules/@shoelace-style/shoelace": {
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/@shoelace-style/shoelace/-/shoelace-2.11.0.tgz",
"integrity": "sha512-qSwiQTF8TRahlWBWYMOiZJAqYkG3g5Hil1COfqwQKfvGXEUmflPbRiXRDBG0F6clLYN6yYn7sqZ7kv11kw2Y/Q==",
"version": "2.11.2",
"resolved": "https://registry.npmjs.org/@shoelace-style/shoelace/-/shoelace-2.11.2.tgz",
"integrity": "sha512-V94PTZ3CKcRH7NozDIEK5gMG3yeCZhF/3jCpKZ7Wexpf9kOqIRaMGoW3omq21I8NRefNLEknkV9Q392JIZLjBA==",
"dependencies": {
"@ctrl/tinycolor": "^4.0.2",
"@floating-ui/dom": "^1.5.3",
@ -2371,6 +2376,14 @@
"typescript": "^4.9.4"
}
},
"node_modules/@tycrek/discord-hookr/node_modules/@types/node": {
"version": "18.18.7",
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.7.tgz",
"integrity": "sha512-bw+lEsxis6eqJYW8Ql6+yTqkE6RuFtsQPSe5JxXbqYRFQEER5aJA9a5UH9igqDWm3X4iLHIKOHlnAXLM4mi7uQ==",
"dependencies": {
"undici-types": "~5.26.4"
}
},
"node_modules/@tycrek/discord-hookr/node_modules/typescript": {
"version": "4.9.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
@ -2409,15 +2422,6 @@
"resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-16.1.1.tgz",
"integrity": "sha512-+pio93ejHN4nINX4pXqfnR/fPLRtJBaT4ORaa5RH0Oc1zoYmo2B2koG+M328CQhHKn1Wj6FcOxCDFXAot9NhvA=="
},
"node_modules/@tycrek/express-postcss/node_modules/@types/fs-extra": {
"version": "11.0.3",
"resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.3.tgz",
"integrity": "sha512-sF59BlXtUdzEAL1u0MSvuzWd7PdZvZEtnaVkzX5mjpdWTJ8brG0jUqve3jPCzSzvAKKMHTG8F8o/WMQLtleZdQ==",
"dependencies": {
"@types/jsonfile": "*",
"@types/node": "*"
}
},
"node_modules/@tycrek/joint": {
"version": "1.0.0-1",
"resolved": "https://registry.npmjs.org/@tycrek/joint/-/joint-1.0.0-1.tgz",
@ -2439,35 +2443,6 @@
"node": ">=18.0.0"
}
},
"node_modules/@tycrek/papito": {
"version": "0.3.4",
"resolved": "https://registry.npmjs.org/@tycrek/papito/-/papito-0.3.4.tgz",
"integrity": "sha512-P5sQAJQOeirCzpphU6tXqjiCUmJf+A8T/1iJkpWu/uLq30lHyKjIoOeCXnW92b3hdDDxO1ruanxX2muJZTPQdA==",
"dependencies": {
"fs-extra": "^10.0.0"
},
"engines": {
"node": ">=14.x.x",
"npm": ">=7.x.x"
},
"funding": {
"type": "patreon",
"url": "https://patreon.com/tycrek"
}
},
"node_modules/@tycrek/papito/node_modules/fs-extra": {
"version": "10.1.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
"integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
"dependencies": {
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^2.0.0"
},
"engines": {
"node": ">=12"
}
},
"node_modules/@types/bcrypt": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/@types/bcrypt/-/bcrypt-5.0.1.tgz",
@ -2562,11 +2537,11 @@
"dev": true
},
"node_modules/@types/fs-extra": {
"version": "9.0.13",
"resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz",
"integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==",
"dev": true,
"version": "11.0.3",
"resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.3.tgz",
"integrity": "sha512-sF59BlXtUdzEAL1u0MSvuzWd7PdZvZEtnaVkzX5mjpdWTJ8brG0jUqve3jPCzSzvAKKMHTG8F8o/WMQLtleZdQ==",
"dependencies": {
"@types/jsonfile": "*",
"@types/node": "*"
}
},
@ -2600,18 +2575,11 @@
"integrity": "sha512-1Gjee59G25MrQGk8bsNvC6fxNiRgUlGn2wlhGf95a59DrprnnHk80FIMMFG9XHMdrfsuA119ht06QPDXA1Z7tw=="
},
"node_modules/@types/node": {
"version": "18.18.6",
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.6.tgz",
"integrity": "sha512-wf3Vz+jCmOQ2HV1YUJuCWdL64adYxumkrxtc+H1VUQlnQI04+5HtH+qZCOE21lBE7gIrt+CwX2Wv8Acrw5Ak6w=="
},
"node_modules/@types/node-fetch": {
"version": "2.6.7",
"resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.7.tgz",
"integrity": "sha512-lX17GZVpJ/fuCjguZ5b3TjEbSENxmEk1B2z02yoXSK9WMEWRivhdSY73wWMn6bpcCDAOh6qAdktpKHIlkDk2lg==",
"dev": true,
"version": "20.8.9",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.9.tgz",
"integrity": "sha512-UzykFsT3FhHb1h7yD4CA4YhBHq545JC0YnEz41xkipN88eKQtL6rSgocL5tbAP6Ola9Izm/Aw4Ora8He4x0BHg==",
"dependencies": {
"@types/node": "*",
"form-data": "^4.0.0"
"undici-types": "~5.26.4"
}
},
"node_modules/@types/prop-types": {
@ -2631,9 +2599,9 @@
"integrity": "sha512-+0autS93xyXizIYiyL02FCY8N+KkKPhILhcUSA276HxzreZ16kl+cmwvV2qAM/PuCCwPXzOXOWhiPcw20uSFcA=="
},
"node_modules/@types/react": {
"version": "18.2.31",
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz",
"integrity": "sha512-c2UnPv548q+5DFh03y8lEDeMfDwBn9G3dRwfkrxQMo/dOtRHUUO57k6pHvBIfH/VF4Nh+98mZ5aaSe+2echD5g==",
"version": "18.2.33",
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.33.tgz",
"integrity": "sha512-v+I7S+hu3PIBoVkKGpSYYpiBT1ijqEzWpzQD62/jm4K74hPpSP7FF9BnKG6+fg2+62weJYkkBWDJlZt5JO/9hg==",
"peer": true,
"dependencies": {
"@types/prop-types": "*",
@ -2666,37 +2634,11 @@
"@types/node": "*"
}
},
"node_modules/@types/sharp": {
"version": "0.32.0",
"resolved": "https://registry.npmjs.org/@types/sharp/-/sharp-0.32.0.tgz",
"integrity": "sha512-OOi3kL+FZDnPhVzsfD37J88FNeZh6gQsGcLc95NbeURRGvmSjeXiDcyWzF2o3yh/gQAUn2uhh/e+CPCa5nwAxw==",
"deprecated": "This is a stub types definition. sharp provides its own type definitions, so you do not need this installed.",
"dev": true,
"dependencies": {
"sharp": "*"
}
},
"node_modules/@types/tailwindcss": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/@types/tailwindcss/-/tailwindcss-3.1.0.tgz",
"integrity": "sha512-JxPzrm609hzvF4nmOI3StLjbBEP3WWQxDDJESqR1nh94h7gyyy3XSl0hn5RBMJ9mPudlLjtaXs5YEBtLw7CnPA==",
"deprecated": "This is a stub types definition. tailwindcss provides its own type definitions, so you do not need this installed.",
"dev": true,
"dependencies": {
"tailwindcss": "*"
}
},
"node_modules/@types/trusted-types": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.5.tgz",
"integrity": "sha512-I3pkr8j/6tmQtKV/ZzHtuaqYSQvyjGRKH4go60Rr0IDLlFxuRT5V32uvB1mecM5G1EVAUyF/4r4QZ1GHgz+mxA=="
},
"node_modules/@types/uuid": {
"version": "8.3.4",
"resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz",
"integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==",
"dev": true
},
"node_modules/@xoi/gps-metadata-remover": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/@xoi/gps-metadata-remover/-/gps-metadata-remover-1.1.2.tgz",
@ -2875,9 +2817,9 @@
}
},
"node_modules/axios": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/axios/-/axios-1.5.1.tgz",
"integrity": "sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A==",
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/axios/-/axios-1.6.0.tgz",
"integrity": "sha512-EZ1DYihju9pwVB+jg67ogm+Tmqc6JmhamRN6I4Zt8DfZu5lbcQGw3ozH9lFejSJgs/ibaef3A9PMXPLeefFGJg==",
"dependencies": {
"follow-redirects": "^1.15.0",
"form-data": "^4.0.0",
@ -3196,9 +3138,9 @@
}
},
"node_modules/caniuse-lite": {
"version": "1.0.30001551",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001551.tgz",
"integrity": "sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==",
"version": "1.0.30001555",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001555.tgz",
"integrity": "sha512-NzbUFKUnJ3DTcq6YyZB6+qqhfD112uR3uoEnkmfzm2wVzUNsFkU7AwBjKQ654Sp5cau0JxhFyRSn/tQZ+XfygA==",
"funding": [
{
"type": "opencollective",
@ -3814,9 +3756,9 @@
"integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="
},
"node_modules/electron-to-chromium": {
"version": "1.4.563",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.563.tgz",
"integrity": "sha512-dg5gj5qOgfZNkPNeyKBZQAQitIQ/xwfIDmEQJHCbXaD9ebTZxwJXUsDYcBlAvZGZLi+/354l35J1wkmP6CqYaw=="
"version": "1.4.569",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.569.tgz",
"integrity": "sha512-LsrJjZ0IbVy12ApW3gpYpcmHS3iRxH4bkKOW98y1/D+3cvDUWGcbzbsFinfUS8knpcZk/PG/2p/RnkMCYN7PVg=="
},
"node_modules/emoji-regex": {
"version": "8.0.0",
@ -3962,14 +3904,14 @@
}
},
"node_modules/express-rate-limit": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.1.2.tgz",
"integrity": "sha512-uvkFt5JooXDhUhrfgqXLyIsAMRCtU1o8W/p0Q2p5U2ude7fEOfFaP0kSYbHOHmPbA9ZEm1JqrRne3vL9pVCBXA==",
"version": "7.1.3",
"resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.1.3.tgz",
"integrity": "sha512-BDes6WeNYSGRRGQU8QDNwUnwqaBro28HN/TTweM3RlxXRHDld8RLoH7tbfCxAc0hamQyn6aL0KrfR45+ZxknYg==",
"engines": {
"node": ">= 16"
},
"peerDependencies": {
"express": "^4 || ^5"
"express": "4 || 5 || ^5.0.0-beta.1"
}
},
"node_modules/express-session": {
@ -6552,14 +6494,6 @@
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"node_modules/sanitize-filename": {
"version": "1.6.3",
"resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz",
"integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==",
"dependencies": {
"truncate-utf8-bytes": "^1.0.0"
}
},
"node_modules/sax": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz",
@ -6715,9 +6649,9 @@
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
},
"node_modules/shoelace-fontawesome-pug": {
"version": "6.4.2",
"resolved": "https://registry.npmjs.org/shoelace-fontawesome-pug/-/shoelace-fontawesome-pug-6.4.2.tgz",
"integrity": "sha512-aV5oEqzJ/nXjMplRAGuWJ+v/a805M2oXq35cFLShB4ziU+6HgP3omhhuL5VVhZ7da10HzAXtEGqqXAEqrwRjVA==",
"version": "6.4.3",
"resolved": "https://registry.npmjs.org/shoelace-fontawesome-pug/-/shoelace-fontawesome-pug-6.4.3.tgz",
"integrity": "sha512-bV2wrTno8eSq9j0UcB+4kk6bgMpNJiyzmA6FLj3UIyvKRJkv0OpEROskdBsS1PbDCU95AoQztfoAP+1QHXsrFA==",
"dependencies": {
"pug": "^3.0.2"
},
@ -6729,9 +6663,9 @@
}
},
"node_modules/shoelace-pug-loader": {
"version": "2.9.2",
"resolved": "https://registry.npmjs.org/shoelace-pug-loader/-/shoelace-pug-loader-2.9.2.tgz",
"integrity": "sha512-WZrZFViykg/gI8eQpwefhZnKXLyGlhNjZpTpw9YdaBv5XG7oe+LKKHfvLEmeVet35LGSg9TfmKltePLnYtn+lw==",
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/shoelace-pug-loader/-/shoelace-pug-loader-2.11.0.tgz",
"integrity": "sha512-mTFJjDSshkN5K82ZA3R8CVN0U83xjjNlS/kZSHOMRqUgVNWT9RryrbB0pIaZK/0P9+u023k4rn9T6TDfTrkExw==",
"dependencies": {
"pug": "^3.0.2"
},
@ -7024,19 +6958,19 @@
}
},
"node_modules/tailwindcss": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz",
"integrity": "sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==",
"version": "3.3.5",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.5.tgz",
"integrity": "sha512-5SEZU4J7pxZgSkv7FP1zY8i2TIAOooNZ1e/OGtxIEv6GltpoiXUqWvLy89+a10qYTB1N5Ifkuw9lqQkN9sscvA==",
"dependencies": {
"@alloc/quick-lru": "^5.2.0",
"arg": "^5.0.2",
"chokidar": "^3.5.3",
"didyoumean": "^1.2.2",
"dlv": "^1.1.3",
"fast-glob": "^3.2.12",
"fast-glob": "^3.3.0",
"glob-parent": "^6.0.2",
"is-glob": "^4.0.3",
"jiti": "^1.18.2",
"jiti": "^1.19.1",
"lilconfig": "^2.1.0",
"micromatch": "^4.0.5",
"normalize-path": "^3.0.0",
@ -7182,14 +7116,6 @@
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
},
"node_modules/truncate-utf8-bytes": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz",
"integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==",
"dependencies": {
"utf8-byte-length": "^1.0.1"
}
},
"node_modules/ts-interface-checker": {
"version": "0.1.13",
"resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz",
@ -7259,6 +7185,11 @@
"node": ">= 0.8"
}
},
"node_modules/undici-types": {
"version": "5.26.5",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
"integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA=="
},
"node_modules/universalify": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
@ -7327,11 +7258,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/utf8-byte-length": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz",
"integrity": "sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA=="
},
"node_modules/utif": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/utif/-/utif-2.0.1.tgz",

@ -4,8 +4,8 @@
"description": "The simple self-hosted ShareX server",
"main": "dist-backend/app.js",
"engines": {
"node": ">=20.8.0",
"npm": ">=10.1.0"
"node": "^20",
"npm": "^10"
},
"scripts": {
"dev": "npm run build && npm start",
@ -29,57 +29,47 @@
"bugs": "https://github.com/tycrek/ass/issues",
"homepage": "https://github.com/tycrek/ass#readme",
"dependencies": {
"@aws-sdk/client-s3": "^3.421.0",
"@shoelace-style/shoelace": "^2.9.0",
"@aws-sdk/client-s3": "^3.437.0",
"@shoelace-style/shoelace": "^2.11.2",
"@tinycreek/postcss-font-magician": "^4.2.0",
"@tsconfig/node20": "^20.1.2",
"@tycrek/discord-hookr": "^0.1.0",
"@tycrek/express-postcss": "^0.4.1",
"@tycrek/joint": "^1.0.0-1",
"@tycrek/log": "^0.7.5",
"@tycrek/papito": "^0.3.4",
"@xoi/gps-metadata-remover": "^1.1.2",
"any-shell-escape": "^0.1.1",
"autoprefixer": "^10.4.16",
"axios": "^1.5.1",
"bcrypt": "^5.1.1",
"chalk": "^4.1.2",
"crypto-random-string": "3.3.1",
"cssnano": "^6.0.1",
"express": "^4.18.2",
"express-busboy": "^10.1.0",
"express-rate-limit": "^7.1.2",
"express-rate-limit": "^7.1.3",
"express-session": "^1.17.3",
"ffmpeg-static": "^5.2.0",
"fs-extra": "^11.1.1",
"luxon": "^3.4.3",
"memorystore": "^1.6.7",
"mysql2": "^3.6.1",
"node-fetch": "^2.6.7",
"mysql2": "^3.6.2",
"node-vibrant": "^3.1.6",
"pg": "^8.11.3",
"pug": "^3.0.2",
"sanitize-filename": "^1.6.3",
"sharp": "^0.32.6",
"shoelace-fontawesome-pug": "^6.4.2",
"shoelace-pug-loader": "^2.9.2",
"tailwindcss": "^3.3.3",
"typescript": "^5.2.2",
"uuid": "^8.3.2"
"shoelace-fontawesome-pug": "^6.4.3",
"shoelace-pug-loader": "^2.11.0",
"tailwindcss": "^3.3.5",
"typescript": "^5.2.2"
},
"devDependencies": {
"@types/bcrypt": "^5.0.0",
"@types/express": "^4.17.18",
"@types/express-busboy": "^8.0.1",
"@types/express-session": "^1.17.8",
"@types/ffmpeg-static": "^3.0.1",
"@types/fs-extra": "^9.0.13",
"@types/luxon": "^3.3.2",
"@types/node": "^18.16.19",
"@types/node-fetch": "^2.6.6",
"@types/pg": "^8.10.7",
"@types/sharp": "^0.32.0",
"@types/tailwindcss": "^3.1.0",
"@types/uuid": "^8.3.1"
"@types/bcrypt": "^5.0.1",
"@types/express": "^4.17.20",
"@types/express-busboy": "^8.0.2",
"@types/express-session": "^1.17.9",
"@types/ffmpeg-static": "^3.0.2",
"@types/fs-extra": "^11.0.3",
"@types/luxon": "^3.3.3",
"@types/node": "^20.8.9",
"@types/pg": "^8.10.7"
}
}

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save