diff --git a/package.json b/package.json index cced03c4..eb7323ea 100644 --- a/package.json +++ b/package.json @@ -53,8 +53,6 @@ "@graphql-codegen/cli": "^5.0.2", "@graphql-codegen/client-preset": "^4.2.4", "@graphql-codegen/schema-ast": "^4.0.2", - "@graphql-codegen/typescript": "^4.0.6", - "@graphql-codegen/typescript-resolvers": "^4.0.6", "@graphql-typed-document-node/core": "^3.2.0", "@jest/globals": "^29.7.0", "@parcel/watcher": "^2.4.1", @@ -73,10 +71,8 @@ "jest": "^29.7.0", "jest-junit": "^16.0.0", "jest-mock-extended": "^3.0.5", - "nodemon": "^3.1.0", "npm-run-all": "^4.1.5", "pino-pretty": "^11.0.0", - "tsconfig-paths": "^4.2.0", "typescript": "^5.4.3", "wait-on": "^7.2.0" }, @@ -94,17 +90,14 @@ "@fastify/redis": "^6.1.1", "@fastify/session": "^10.7.0", "@fastify/under-pressure": "^8.3.0", - "@graphql-tools/merge": "^9.0.3", "@immobiliarelabs/fastify-sentry": "^8.0.1", "@prisma/client": "^5.11.0", "@sentry/node": "^7.107.0", "@sentry/tracing": "7.107.0", "@vippsmobilepay/sdk": "^1.3.1", "avvio": "^8.3.0", - "body-parser": "^1.20.2", "bullmq": "^5.4.4", "connect-redis": "^7.1.1", - "dayjs": "^1.11.10", "dotenv": "^16.4.5", "fastify": "^4.26.2", "fastify-plugin": "^4.5.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b93968ac..1220f2cb 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -44,9 +44,6 @@ dependencies: '@fastify/under-pressure': specifier: ^8.3.0 version: 8.3.0 - '@graphql-tools/merge': - specifier: ^9.0.3 - version: 9.0.3(graphql@16.8.1) '@immobiliarelabs/fastify-sentry': specifier: ^8.0.1 version: 8.0.1 @@ -65,18 +62,12 @@ dependencies: avvio: specifier: ^8.3.0 version: 8.3.0 - body-parser: - specifier: ^1.20.2 - version: 1.20.2 bullmq: specifier: ^5.4.4 version: 5.4.4 connect-redis: specifier: ^7.1.1 version: 7.1.1(express-session@1.18.0) - dayjs: - specifier: ^1.11.10 - version: 1.11.10 dotenv: specifier: ^16.4.5 version: 16.4.5 @@ -145,12 +136,6 @@ devDependencies: '@graphql-codegen/schema-ast': specifier: ^4.0.2 version: 4.0.2(graphql@16.8.1) - '@graphql-codegen/typescript': - specifier: ^4.0.6 - version: 4.0.6(graphql@16.8.1) - '@graphql-codegen/typescript-resolvers': - specifier: ^4.0.6 - version: 4.0.6(graphql@16.8.1) '@graphql-typed-document-node/core': specifier: ^3.2.0 version: 3.2.0(graphql@16.8.1) @@ -205,18 +190,12 @@ devDependencies: jest-mock-extended: specifier: ^3.0.5 version: 3.0.5(jest@29.7.0)(typescript@5.4.3) - nodemon: - specifier: ^3.1.0 - version: 3.1.0 npm-run-all: specifier: ^4.1.5 version: 4.1.5 pino-pretty: specifier: ^11.0.0 version: 11.0.0 - tsconfig-paths: - specifier: ^4.2.0 - version: 4.2.0 typescript: specifier: ^5.4.3 version: 5.4.3 @@ -673,7 +652,7 @@ packages: '@babel/traverse': 7.23.2 '@babel/types': 7.23.0 convert-source-map: 2.0.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -1287,7 +1266,7 @@ packages: '@babel/helper-split-export-declaration': 7.22.6 '@babel/parser': 7.23.0 '@babel/types': 7.23.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -2054,6 +2033,7 @@ packages: '@graphql-tools/utils': 10.1.0(graphql@16.8.1) graphql: 16.8.1 tslib: 2.6.2 + dev: true /@graphql-tools/optimize@2.0.0(graphql@16.8.1): resolution: {integrity: sha512-nhdT+CRGDZ+bk68ic+Jw1OZ99YCDIKYA5AlVAnBHJvMawSx9YQqQAIj4refNc1/LRieGiuWvhbG3jvPVYho0Dg==} @@ -2077,7 +2057,7 @@ packages: '@types/json-stable-stringify': 1.0.36 '@whatwg-node/fetch': 0.9.14 chalk: 4.1.2 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 dotenv: 16.4.5 graphql: 16.8.1 graphql-request: 6.1.0(graphql@16.8.1) @@ -2189,6 +2169,7 @@ packages: dset: 3.1.3 graphql: 16.8.1 tslib: 2.6.2 + dev: true /@graphql-tools/utils@9.2.1(graphql@16.8.1): resolution: {integrity: sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A==} @@ -2972,7 +2953,7 @@ packages: '@swc-node/sourcemap-support': 0.5.0 '@swc/core': 1.4.8(@swc/helpers@0.5.7) colorette: 2.0.20 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 pirates: 4.0.6 tslib: 2.6.2 typescript: 5.4.3 @@ -3456,10 +3437,6 @@ packages: tslib: 2.6.2 dev: true - /abbrev@1.1.1: - resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} - dev: true - /abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} engines: {node: '>=6.5'} @@ -3482,7 +3459,7 @@ packages: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 transitivePeerDependencies: - supports-color dev: false @@ -3491,7 +3468,7 @@ packages: resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} engines: {node: '>= 14'} dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 transitivePeerDependencies: - supports-color dev: true @@ -3658,7 +3635,7 @@ packages: dependencies: '@fastify/error': 3.4.1 archy: 1.0.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 fastq: 1.17.1 transitivePeerDependencies: - supports-color @@ -3815,11 +3792,6 @@ packages: find-versions: 5.1.0 dev: true - /binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} - dev: true - /bl@4.1.0: resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} dependencies: @@ -3848,26 +3820,6 @@ packages: - supports-color dev: false - /body-parser@1.20.2: - resolution: {integrity: sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - dependencies: - bytes: 3.1.2 - content-type: 1.0.5 - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - on-finished: 2.4.1 - qs: 6.11.0 - raw-body: 2.5.2 - type-is: 1.6.18 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - dev: false - /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -4066,21 +4018,6 @@ packages: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true - /chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} - dependencies: - anymatch: 3.1.3 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - dev: true - /ci-info@3.9.0: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} @@ -4340,6 +4277,7 @@ packages: engines: {node: '>=16.0.0'} dependencies: tslib: 2.6.2 + dev: true /cross-spawn@5.1.0: resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} @@ -4384,10 +4322,6 @@ packages: resolution: {integrity: sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==} dev: true - /dayjs@1.11.10: - resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} - dev: false - /debounce@1.2.1: resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==} dev: true @@ -4403,7 +4337,7 @@ packages: ms: 2.0.0 dev: false - /debug@4.3.4(supports-color@5.5.0): + /debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} peerDependencies: @@ -4413,7 +4347,6 @@ packages: optional: true dependencies: ms: 2.1.2 - supports-color: 5.5.0 /decamelize@1.2.0: resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} @@ -4554,6 +4487,7 @@ packages: /dset@3.1.3: resolution: {integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==} engines: {node: '>=4'} + dev: true /ecdsa-sig-formatter@1.0.11: resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} @@ -5314,6 +5248,7 @@ packages: /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} + dev: true /has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} @@ -5394,7 +5329,7 @@ packages: dependencies: '@tootallnate/once': 2.0.0 agent-base: 6.0.2 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 transitivePeerDependencies: - supports-color dev: false @@ -5404,7 +5339,7 @@ packages: engines: {node: '>= 14'} dependencies: agent-base: 7.1.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 transitivePeerDependencies: - supports-color dev: true @@ -5422,7 +5357,7 @@ packages: engines: {node: '>= 6'} dependencies: agent-base: 6.0.2 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 transitivePeerDependencies: - supports-color dev: false @@ -5432,7 +5367,7 @@ packages: engines: {node: '>= 14'} dependencies: agent-base: 7.1.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 transitivePeerDependencies: - supports-color dev: true @@ -5451,10 +5386,6 @@ packages: /ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - /ignore-by-default@1.0.1: - resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==} - dev: true - /ignore@5.2.4: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} @@ -5548,7 +5479,7 @@ packages: dependencies: '@ioredis/commands': 1.2.0 cluster-key-slot: 1.1.2 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 denque: 2.1.0 lodash.defaults: 4.2.0 lodash.isarguments: 3.1.0 @@ -5589,13 +5520,6 @@ packages: has-bigints: 1.0.2 dev: true - /is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - dependencies: - binary-extensions: 2.2.0 - dev: true - /is-boolean-object@1.1.2: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} @@ -5830,7 +5754,7 @@ packages: resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} engines: {node: '>=10'} dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 istanbul-lib-coverage: 3.2.1 source-map: 0.6.1 transitivePeerDependencies: @@ -6896,30 +6820,6 @@ packages: resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} dev: true - /nodemon@3.1.0: - resolution: {integrity: sha512-xqlktYlDMCepBJd43ZQhjWwMw2obW/JRvkrLxq5RCNcuDDX1DbcPT+qT1IlIIdf+DhnWs90JpTMe+Y5KxOchvA==} - engines: {node: '>=10'} - hasBin: true - dependencies: - chokidar: 3.5.3 - debug: 4.3.4(supports-color@5.5.0) - ignore-by-default: 1.0.1 - minimatch: 3.1.2 - pstree.remy: 1.1.8 - semver: 7.5.4 - simple-update-notifier: 2.0.0 - supports-color: 5.5.0 - touch: 3.1.0 - undefsafe: 2.0.5 - dev: true - - /nopt@1.0.10: - resolution: {integrity: sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==} - hasBin: true - dependencies: - abbrev: 1.1.1 - dev: true - /normalize-package-data@2.5.0: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} dependencies: @@ -7409,10 +7309,6 @@ packages: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} dev: true - /pstree.remy@1.1.8: - resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} - dev: true - /pump@3.0.0: resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} dependencies: @@ -7484,16 +7380,6 @@ packages: unpipe: 1.0.0 dev: false - /raw-body@2.5.2: - resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} - engines: {node: '>= 0.8'} - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - dev: false - /react-is@18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} dev: true @@ -7533,13 +7419,6 @@ packages: readable-stream: 3.6.2 dev: true - /readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - dependencies: - picomatch: 2.3.1 - dev: true - /real-require@0.2.0: resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==} engines: {node: '>= 12.13.0'} @@ -7893,13 +7772,6 @@ packages: resolution: {integrity: sha512-6+eerH9fEnNmi/hyM1DXcRK3pWdoMQtlkQ+ns0ntzunjKqp5i3sKCc80ym8Fib3iaYhdJUOPdhlJWj1tvge2Ww==} dev: true - /simple-update-notifier@2.0.0: - resolution: {integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==} - engines: {node: '>=10'} - dependencies: - semver: 7.5.4 - dev: true - /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} dev: true @@ -8150,6 +8022,7 @@ packages: engines: {node: '>=4'} dependencies: has-flag: 3.0.0 + dev: true /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} @@ -8241,13 +8114,6 @@ packages: ieee754: 1.2.1 dev: true - /touch@3.1.0: - resolution: {integrity: sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==} - hasBin: true - dependencies: - nopt: 1.0.10 - dev: true - /tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} @@ -8282,15 +8148,6 @@ packages: code-block-writer: 12.0.0 dev: true - /tsconfig-paths@4.2.0: - resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} - engines: {node: '>=6'} - dependencies: - json5: 2.2.3 - minimist: 1.2.8 - strip-bom: 3.0.0 - dev: true - /tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} @@ -8386,10 +8243,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /undefsafe@2.0.5: - resolution: {integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==} - dev: true - /undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} diff --git a/src/repositories/users/seed.ts b/src/repositories/users/seed.ts index 5c6915f3..894f5706 100644 --- a/src/repositories/users/seed.ts +++ b/src/repositories/users/seed.ts @@ -4,7 +4,6 @@ import { type Prisma, type PrismaClient, } from "@prisma/client"; -import dayjs from "dayjs"; import { DateTime } from "luxon"; import type { OrganizationRoleType } from "~/domain/organizations.js"; @@ -18,7 +17,7 @@ const userData: Prisma.UserCreateInput[] = [ email: "example@example.org", firstName: "Indok", lastName: "Student", - graduationYear: dayjs().add(5, "year").year(), + graduationYear: DateTime.now().plus({ years: 5 }).year, }, { username: "rubberdok", @@ -26,7 +25,7 @@ const userData: Prisma.UserCreateInput[] = [ email: "rubberdok@example.org", firstName: "Rubb", lastName: "Er Dok", - graduationYear: dayjs().add(5, "year").year(), + graduationYear: DateTime.now().plus({ years: 5 }).year, }, makeUserWithMemberships( { diff --git a/src/services/events/__tests__/integration/read.test.ts b/src/services/events/__tests__/integration/read.test.ts index 6f6042c9..4392c52c 100644 --- a/src/services/events/__tests__/integration/read.test.ts +++ b/src/services/events/__tests__/integration/read.test.ts @@ -1,6 +1,5 @@ import assert from "node:assert"; import { faker } from "@faker-js/faker"; -import dayjs from "dayjs"; import { range } from "lodash-es"; import { DateTime, Settings } from "luxon"; import { makeTestServices } from "~/__tests__/dependencies-factory.js"; @@ -151,8 +150,8 @@ describe("EventService", () => { event: { organizationId: organization.id, name: faker.person.firstName(), - startAt: dayjs().add(10, "day").toDate(), - endAt: dayjs().add(11, "day").toDate(), + startAt: DateTime.now().plus({ days: 10 }).toJSDate(), + endAt: DateTime.now().plus({ days: 11 }).toJSDate(), }, }); const eventInThePast = await events.create(ctx, { @@ -160,8 +159,8 @@ describe("EventService", () => { event: { organizationId: organization.id, name: faker.person.firstName(), - startAt: dayjs().add(1, "day").toDate(), - endAt: dayjs().add(2, "day").toDate(), + startAt: DateTime.now().plus({ days: 1 }).toJSDate(), + endAt: DateTime.now().plus({ days: 2 }).toJSDate(), }, }); diff --git a/src/services/users/__tests__/unit/user.test.ts b/src/services/users/__tests__/unit/user.test.ts index d56fe1ac..3141743a 100644 --- a/src/services/users/__tests__/unit/user.test.ts +++ b/src/services/users/__tests__/unit/user.test.ts @@ -1,7 +1,7 @@ import { faker } from "@faker-js/faker"; import { jest } from "@jest/globals"; -import dayjs from "dayjs"; import { type DeepMockProxy, mock, mockDeep } from "jest-mock-extended"; +import { DateTime } from "luxon"; import type { User } from "~/domain/users.js"; import { type MailService, @@ -9,7 +9,11 @@ import { UserService, } from "../../service.js"; -const time = new Date(`${dayjs().year() + 1}-01-01`); +const time = DateTime.fromObject({ + year: DateTime.now().year + 1, + month: 1, + day: 1, +}).toJSDate(); let service: UserService; let repo: DeepMockProxy; @@ -51,11 +55,11 @@ describe("UserService", () => { { name: "not set `graduationYearUpdatedAt` on first login", input: { - graduationYear: dayjs().year() + 1, + graduationYear: DateTime.now().year + 1, }, expected: { firstLogin: false, - graduationYear: dayjs().year() + 1, + graduationYear: DateTime.now().year + 1, }, existing: mock({ firstLogin: true, @@ -66,10 +70,10 @@ describe("UserService", () => { { name: "set `graduationYearUpdatedAt` on on graduation year update", input: { - graduationYear: dayjs().year() + 1, + graduationYear: DateTime.now().year + 1, }, expected: { - graduationYear: dayjs().year() + 1, + graduationYear: DateTime.now().year + 1, graduationYearUpdatedAt: time, }, existing: mock({ @@ -81,27 +85,27 @@ describe("UserService", () => { { name: "disallow updating graduation year if canUpdateYear is false", input: { - graduationYear: dayjs().year() + 1, + graduationYear: DateTime.now().year + 1, }, expected: {}, existing: mock({ firstLogin: false, - graduationYear: dayjs().year(), + graduationYear: DateTime.now().year, canUpdateYear: false, }), }, { name: "update `graduationYearUpdatedAt` if canUpdateYear is `true`", input: { - graduationYear: dayjs().year() + 1, + graduationYear: DateTime.now().year + 1, }, expected: { - graduationYear: dayjs().year() + 1, + graduationYear: DateTime.now().year + 1, graduationYearUpdatedAt: time, }, existing: mock({ firstLogin: false, - graduationYear: dayjs().year(), + graduationYear: DateTime.now().year, canUpdateYear: true, }), },