Updated to using fms-ts for email
This commit is contained in:
parent
4e4997d5d5
commit
77bf97c234
5 changed files with 174 additions and 272 deletions
15
package.json
15
package.json
|
@ -16,18 +16,19 @@
|
|||
"@prisma/client": "4.14.1",
|
||||
"@tailwindcss/typography": "^0.5.9",
|
||||
"@tanstack/react-query": "^4.29.7",
|
||||
"@trpc/client": "10.26.0",
|
||||
"@trpc/next": "10.26.0",
|
||||
"@trpc/react-query": "10.26.0",
|
||||
"@trpc/server": "10.26.0",
|
||||
"@trpc/client": "10.27.1",
|
||||
"@trpc/next": "10.27.1",
|
||||
"@trpc/react-query": "10.27.1",
|
||||
"@trpc/server": "10.27.1",
|
||||
"@types/json2csv": "^5.0.3",
|
||||
"@types/next-pwa": "^5.6.2",
|
||||
"ably": "^1.2.39",
|
||||
"autoprefixer": "^10.4.14",
|
||||
"daisyui": "^2.51.6",
|
||||
"fms-ts": "^0.1.6",
|
||||
"ioredis": "^5.3.2",
|
||||
"json2csv": "6.0.0-alpha.2",
|
||||
"next": "^13.4.2",
|
||||
"next": "^13.4.3",
|
||||
"next-auth": "^4.22.1",
|
||||
"next-pwa": "^5.6.0",
|
||||
"postcss": "^8.4.23",
|
||||
|
@ -45,8 +46,8 @@
|
|||
"@types/react-dom": "^18.2.4",
|
||||
"@typescript-eslint/eslint-plugin": "^5.59.6",
|
||||
"@typescript-eslint/parser": "^5.59.6",
|
||||
"eslint": "^8.40.0",
|
||||
"eslint-config-next": "^13.4.2",
|
||||
"eslint": "^8.41.0",
|
||||
"eslint-config-next": "^13.4.3",
|
||||
"prisma": "4.14.1",
|
||||
"typescript": "^5.0.4"
|
||||
},
|
||||
|
|
292
pnpm-lock.yaml
generated
292
pnpm-lock.yaml
generated
|
@ -17,17 +17,17 @@ dependencies:
|
|||
specifier: ^4.29.7
|
||||
version: 4.29.7(react-dom@18.2.0)(react@18.2.0)
|
||||
'@trpc/client':
|
||||
specifier: 10.26.0
|
||||
version: 10.26.0(@trpc/server@10.26.0)
|
||||
specifier: 10.27.1
|
||||
version: 10.27.1(@trpc/server@10.27.1)
|
||||
'@trpc/next':
|
||||
specifier: 10.26.0
|
||||
version: 10.26.0(@tanstack/react-query@4.29.7)(@trpc/client@10.26.0)(@trpc/react-query@10.26.0)(@trpc/server@10.26.0)(next@13.4.2)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 10.27.1
|
||||
version: 10.27.1(@tanstack/react-query@4.29.7)(@trpc/client@10.27.1)(@trpc/react-query@10.27.1)(@trpc/server@10.27.1)(next@13.4.3)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@trpc/react-query':
|
||||
specifier: 10.26.0
|
||||
version: 10.26.0(@tanstack/react-query@4.29.7)(@trpc/client@10.26.0)(@trpc/server@10.26.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: 10.27.1
|
||||
version: 10.27.1(@tanstack/react-query@4.29.7)(@trpc/client@10.27.1)(@trpc/server@10.27.1)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@trpc/server':
|
||||
specifier: 10.26.0
|
||||
version: 10.26.0
|
||||
specifier: 10.27.1
|
||||
version: 10.27.1
|
||||
'@types/json2csv':
|
||||
specifier: ^5.0.3
|
||||
version: 5.0.3
|
||||
|
@ -43,6 +43,9 @@ dependencies:
|
|||
daisyui:
|
||||
specifier: ^2.51.6
|
||||
version: 2.51.6(autoprefixer@10.4.14)(postcss@8.4.23)
|
||||
fms-ts:
|
||||
specifier: ^0.1.6
|
||||
version: 0.1.6
|
||||
ioredis:
|
||||
specifier: ^5.3.2
|
||||
version: 5.3.2
|
||||
|
@ -50,14 +53,14 @@ dependencies:
|
|||
specifier: 6.0.0-alpha.2
|
||||
version: 6.0.0-alpha.2
|
||||
next:
|
||||
specifier: ^13.4.2
|
||||
version: 13.4.2(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
specifier: ^13.4.3
|
||||
version: 13.4.3(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
next-auth:
|
||||
specifier: ^4.22.1
|
||||
version: 4.22.1(next@13.4.2)(react-dom@18.2.0)(react@18.2.0)
|
||||
version: 4.22.1(next@13.4.3)(react-dom@18.2.0)(react@18.2.0)
|
||||
next-pwa:
|
||||
specifier: ^5.6.0
|
||||
version: 5.6.0(@babel/core@7.21.8)(next@13.4.2)(webpack@5.83.1)
|
||||
version: 5.6.0(@babel/core@7.21.8)(next@13.4.3)(webpack@5.83.1)
|
||||
postcss:
|
||||
specifier: ^8.4.23
|
||||
version: 8.4.23
|
||||
|
@ -95,16 +98,16 @@ devDependencies:
|
|||
version: 18.2.4
|
||||
'@typescript-eslint/eslint-plugin':
|
||||
specifier: ^5.59.6
|
||||
version: 5.59.6(@typescript-eslint/parser@5.59.6)(eslint@8.40.0)(typescript@5.0.4)
|
||||
version: 5.59.6(@typescript-eslint/parser@5.59.6)(eslint@8.41.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/parser':
|
||||
specifier: ^5.59.6
|
||||
version: 5.59.6(eslint@8.40.0)(typescript@5.0.4)
|
||||
version: 5.59.6(eslint@8.41.0)(typescript@5.0.4)
|
||||
eslint:
|
||||
specifier: ^8.40.0
|
||||
version: 8.40.0
|
||||
specifier: ^8.41.0
|
||||
version: 8.41.0
|
||||
eslint-config-next:
|
||||
specifier: ^13.4.2
|
||||
version: 13.4.2(eslint@8.40.0)(typescript@5.0.4)
|
||||
specifier: ^13.4.3
|
||||
version: 13.4.3(eslint@8.41.0)(typescript@5.0.4)
|
||||
prisma:
|
||||
specifier: 4.14.1
|
||||
version: 4.14.1
|
||||
|
@ -1308,13 +1311,13 @@ packages:
|
|||
to-fast-properties: 2.0.0
|
||||
dev: false
|
||||
|
||||
/@eslint-community/eslint-utils@4.4.0(eslint@8.40.0):
|
||||
/@eslint-community/eslint-utils@4.4.0(eslint@8.41.0):
|
||||
resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
|
||||
dependencies:
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
eslint-visitor-keys: 3.4.1
|
||||
dev: true
|
||||
|
||||
|
@ -1340,8 +1343,8 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@eslint/js@8.40.0:
|
||||
resolution: {integrity: sha512-ElyB54bJIhXQYVKjDSvCkPO1iU1tSAeVQJbllWJq1XQSmmA4dgFk8CbiBGpiOPxleE48vDogxCtmMYku4HSVLA==}
|
||||
/@eslint/js@8.41.0:
|
||||
resolution: {integrity: sha512-LxcyMGxwmTh2lY9FwHPGWOHmYFCZvbrFCBZL4FzSSsxsRPuhrYUg/49/0KDfW8tnIEaEHtfmn6+NPN+1DqaNmA==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
dev: true
|
||||
|
||||
|
@ -1417,21 +1420,21 @@ packages:
|
|||
next-auth: ^4
|
||||
dependencies:
|
||||
'@prisma/client': 4.14.1(prisma@4.14.1)
|
||||
next-auth: 4.22.1(next@13.4.2)(react-dom@18.2.0)(react@18.2.0)
|
||||
next-auth: 4.22.1(next@13.4.3)(react-dom@18.2.0)(react@18.2.0)
|
||||
dev: false
|
||||
|
||||
/@next/env@13.4.2:
|
||||
resolution: {integrity: sha512-Wqvo7lDeS0KGwtwg9TT9wKQ8raelmUxt+TQKWvG/xKfcmDXNOtCuaszcfCF8JzlBG1q0VhpI6CKaRMbVPMDWgw==}
|
||||
/@next/env@13.4.3:
|
||||
resolution: {integrity: sha512-pa1ErjyFensznttAk3EIv77vFbfSYT6cLzVRK5jx4uiRuCQo+m2wCFAREaHKIy63dlgvOyMlzh6R8Inu8H3KrQ==}
|
||||
dev: false
|
||||
|
||||
/@next/eslint-plugin-next@13.4.2:
|
||||
resolution: {integrity: sha512-ZeFWgrxwckxTpYM+ANeUL9E7LOGPbZKmI94LJIjbDU69iEIgqd4WD0l2pVbOJMr/+vgoZmJ9Dx1m0WJ7WScXHA==}
|
||||
/@next/eslint-plugin-next@13.4.3:
|
||||
resolution: {integrity: sha512-5B0uOnh7wyUY9vNNdIA6NUvWozhrZaTMZOzdirYAefqD0ZBK5C/h3+KMYdCKrR7JrXGvVpWnHtv54b3dCzwICA==}
|
||||
dependencies:
|
||||
glob: 7.1.7
|
||||
dev: true
|
||||
|
||||
/@next/swc-darwin-arm64@13.4.2:
|
||||
resolution: {integrity: sha512-6BBlqGu3ewgJflv9iLCwO1v1hqlecaIH2AotpKfVUEzUxuuDNJQZ2a4KLb4MBl8T9/vca1YuWhSqtbF6ZuUJJw==}
|
||||
/@next/swc-darwin-arm64@13.4.3:
|
||||
resolution: {integrity: sha512-yx18udH/ZmR4Bw4M6lIIPE3JxsAZwo04iaucEfA2GMt1unXr2iodHUX/LAKNyi6xoLP2ghi0E+Xi1f4Qb8f1LQ==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [darwin]
|
||||
|
@ -1439,8 +1442,8 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/@next/swc-darwin-x64@13.4.2:
|
||||
resolution: {integrity: sha512-iZuYr7ZvGLPjPmfhhMl0ISm+z8EiyLBC1bLyFwGBxkWmPXqdJ60mzuTaDSr5WezDwv0fz32HB7JHmRC6JVHSZg==}
|
||||
/@next/swc-darwin-x64@13.4.3:
|
||||
resolution: {integrity: sha512-Mi8xJWh2IOjryAM1mx18vwmal9eokJ2njY4nDh04scy37F0LEGJ/diL6JL6kTXi0UfUCGbMsOItf7vpReNiD2A==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [darwin]
|
||||
|
@ -1448,8 +1451,8 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-arm64-gnu@13.4.2:
|
||||
resolution: {integrity: sha512-2xVabFtIge6BJTcJrW8YuUnYTuQjh4jEuRuS2mscyNVOj6zUZkom3CQg+egKOoS+zh2rrro66ffSKIS+ztFJTg==}
|
||||
/@next/swc-linux-arm64-gnu@13.4.3:
|
||||
resolution: {integrity: sha512-aBvtry4bxJ1xwKZ/LVPeBGBwWVwxa4bTnNkRRw6YffJnn/f4Tv4EGDPaVeYHZGQVA56wsGbtA6nZMuWs/EIk4Q==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
|
@ -1457,8 +1460,8 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-arm64-musl@13.4.2:
|
||||
resolution: {integrity: sha512-wKRCQ27xCUJx5d6IivfjYGq8oVngqIhlhSAJntgXLt7Uo9sRT/3EppMHqUZRfyuNBTbykEre1s5166z+pvRB5A==}
|
||||
/@next/swc-linux-arm64-musl@13.4.3:
|
||||
resolution: {integrity: sha512-krT+2G3kEsEUvZoYte3/2IscscDraYPc2B+fDJFipPktJmrv088Pei/RjrhWm5TMIy5URYjZUoDZdh5k940Dyw==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
|
@ -1466,8 +1469,8 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-x64-gnu@13.4.2:
|
||||
resolution: {integrity: sha512-NpCa+UVhhuNeaFVUP1Bftm0uqtvLWq2JTm7+Ta48+2Uqj2mNXrDIvyn1DY/ZEfmW/1yvGBRaUAv9zkMkMRixQA==}
|
||||
/@next/swc-linux-x64-gnu@13.4.3:
|
||||
resolution: {integrity: sha512-AMdFX6EKJjC0G/CM6hJvkY8wUjCcbdj3Qg7uAQJ7PVejRWaVt0sDTMavbRfgMchx8h8KsAudUCtdFkG9hlEClw==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
|
@ -1475,8 +1478,8 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-x64-musl@13.4.2:
|
||||
resolution: {integrity: sha512-ZWVC72x0lW4aj44e3khvBrj2oSYj1bD0jESmyah3zG/3DplEy/FOtYkMzbMjHTdDSheso7zH8GIlW6CDQnKhmQ==}
|
||||
/@next/swc-linux-x64-musl@13.4.3:
|
||||
resolution: {integrity: sha512-jySgSXE48shaLtcQbiFO9ajE9mqz7pcAVLnVLvRIlUHyQYR/WyZdK8ehLs65Mz6j9cLrJM+YdmdJPyV4WDaz2g==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
|
@ -1484,8 +1487,8 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/@next/swc-win32-arm64-msvc@13.4.2:
|
||||
resolution: {integrity: sha512-pLT+OWYpzJig5K4VKhLttlIfBcVZfr2+Xbjra0Tjs83NQSkFS+y7xx+YhCwvpEmXYLIvaggj2ONPyjbiigOvHQ==}
|
||||
/@next/swc-win32-arm64-msvc@13.4.3:
|
||||
resolution: {integrity: sha512-5DxHo8uYcaADiE9pHrg8o28VMt/1kR8voDehmfs9AqS0qSClxAAl+CchjdboUvbCjdNWL1MISCvEfKY2InJ3JA==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [win32]
|
||||
|
@ -1493,8 +1496,8 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/@next/swc-win32-ia32-msvc@13.4.2:
|
||||
resolution: {integrity: sha512-dhpiksQCyGca4WY0fJyzK3FxMDFoqMb0Cn+uDB+9GYjpU2K5//UGPQlCwiK4JHxuhg8oLMag5Nf3/IPSJNG8jw==}
|
||||
/@next/swc-win32-ia32-msvc@13.4.3:
|
||||
resolution: {integrity: sha512-LaqkF3d+GXRA5X6zrUjQUrXm2MN/3E2arXBtn5C7avBCNYfm9G3Xc646AmmmpN3DJZVaMYliMyCIQCMDEzk80w==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [ia32]
|
||||
os: [win32]
|
||||
|
@ -1502,8 +1505,8 @@ packages:
|
|||
dev: false
|
||||
optional: true
|
||||
|
||||
/@next/swc-win32-x64-msvc@13.4.2:
|
||||
resolution: {integrity: sha512-O7bort1Vld00cu8g0jHZq3cbSTUNMohOEvYqsqE10+yfohhdPHzvzO+ziJRz4Dyyr/fYKREwS7gR4JC0soSOMw==}
|
||||
/@next/swc-win32-x64-msvc@13.4.3:
|
||||
resolution: {integrity: sha512-jglUk/x7ZWeOJWlVoKyIAkHLTI+qEkOriOOV+3hr1GyiywzcqfI7TpFSiwC7kk1scOiH7NTFKp8mA3XPNO9bDw==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [win32]
|
||||
|
@ -1690,53 +1693,53 @@ packages:
|
|||
use-sync-external-store: 1.2.0(react@18.2.0)
|
||||
dev: false
|
||||
|
||||
/@trpc/client@10.26.0(@trpc/server@10.26.0):
|
||||
resolution: {integrity: sha512-ojHxQFIE97rBEGPK8p1ijbzo0T1IdEBoJ9fFSgWWL9FMuEEA/DNQ9s0uuiOrDKhCCdTFT1unfRharoJhB2/O2w==}
|
||||
/@trpc/client@10.27.1(@trpc/server@10.27.1):
|
||||
resolution: {integrity: sha512-e9Syj6F41OHDSUg3JvT67fgoD22UbxPzYgp9Bno13NFpyeJc6vkXRlAgDc8ZuouqUPQuouJWll/I90CsuxEqvA==}
|
||||
peerDependencies:
|
||||
'@trpc/server': 10.26.0
|
||||
'@trpc/server': 10.27.1
|
||||
dependencies:
|
||||
'@trpc/server': 10.26.0
|
||||
'@trpc/server': 10.27.1
|
||||
dev: false
|
||||
|
||||
/@trpc/next@10.26.0(@tanstack/react-query@4.29.7)(@trpc/client@10.26.0)(@trpc/react-query@10.26.0)(@trpc/server@10.26.0)(next@13.4.2)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-p328crXBH6C228LKxjqbpDEXdLmy4+LdgsZuYK3oFMqaJEmCT22b+zcQ9IvQrcPfDxhKOpJym0QpuDNaWpG2qg==}
|
||||
/@trpc/next@10.27.1(@tanstack/react-query@4.29.7)(@trpc/client@10.27.1)(@trpc/react-query@10.27.1)(@trpc/server@10.27.1)(next@13.4.3)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-3aMGjhJXiJOj/tjqkyMot3x/nbxbHeEcCWjgYiCHmiXVk9h9liIG73f2is8jWEPs3o/eJ+eNwNSzkfhrhIWq2g==}
|
||||
peerDependencies:
|
||||
'@tanstack/react-query': ^4.18.0
|
||||
'@trpc/client': 10.26.0
|
||||
'@trpc/react-query': 10.26.0
|
||||
'@trpc/server': 10.26.0
|
||||
'@trpc/client': 10.27.1
|
||||
'@trpc/react-query': 10.27.1
|
||||
'@trpc/server': 10.27.1
|
||||
next: '*'
|
||||
react: '>=16.8.0'
|
||||
react-dom: '>=16.8.0'
|
||||
dependencies:
|
||||
'@tanstack/react-query': 4.29.7(react-dom@18.2.0)(react@18.2.0)
|
||||
'@trpc/client': 10.26.0(@trpc/server@10.26.0)
|
||||
'@trpc/react-query': 10.26.0(@tanstack/react-query@4.29.7)(@trpc/client@10.26.0)(@trpc/server@10.26.0)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@trpc/server': 10.26.0
|
||||
next: 13.4.2(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@trpc/client': 10.27.1(@trpc/server@10.27.1)
|
||||
'@trpc/react-query': 10.27.1(@tanstack/react-query@4.29.7)(@trpc/client@10.27.1)(@trpc/server@10.27.1)(react-dom@18.2.0)(react@18.2.0)
|
||||
'@trpc/server': 10.27.1
|
||||
next: 13.4.3(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0(react@18.2.0)
|
||||
react-ssr-prepass: 1.5.0(react@18.2.0)
|
||||
dev: false
|
||||
|
||||
/@trpc/react-query@10.26.0(@tanstack/react-query@4.29.7)(@trpc/client@10.26.0)(@trpc/server@10.26.0)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-n+enpalaCZhd3A/mbZmXeydRZHsAJo7mzc2ncgHn5S+C3SrfOM897uQdbHdj02Li25ULxzP1O92w+vZzmFbgkA==}
|
||||
/@trpc/react-query@10.27.1(@tanstack/react-query@4.29.7)(@trpc/client@10.27.1)(@trpc/server@10.27.1)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-6Q6B5cGKvxnmy/B5VsOjOG4sBl19VJJrGloFp93jc3Hq3+EfniOssdoA81VLI3fInif8ns0Z4jgWUIpq8741cA==}
|
||||
peerDependencies:
|
||||
'@tanstack/react-query': ^4.18.0
|
||||
'@trpc/client': 10.26.0
|
||||
'@trpc/server': 10.26.0
|
||||
'@trpc/client': 10.27.1
|
||||
'@trpc/server': 10.27.1
|
||||
react: '>=16.8.0'
|
||||
react-dom: '>=16.8.0'
|
||||
dependencies:
|
||||
'@tanstack/react-query': 4.29.7(react-dom@18.2.0)(react@18.2.0)
|
||||
'@trpc/client': 10.26.0(@trpc/server@10.26.0)
|
||||
'@trpc/server': 10.26.0
|
||||
'@trpc/client': 10.27.1(@trpc/server@10.27.1)
|
||||
'@trpc/server': 10.27.1
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0(react@18.2.0)
|
||||
dev: false
|
||||
|
||||
/@trpc/server@10.26.0:
|
||||
resolution: {integrity: sha512-+Wt0NFAeflVSNiUnHIDNN3C8jP7XIRmYrcgJ6IsAnm0lK4p/FkpCpeu1aig5qxrgZx30PHNDLZ/3FttVSEW2aQ==}
|
||||
/@trpc/server@10.27.1:
|
||||
resolution: {integrity: sha512-oMTNpei0+CAet0BuDdBE9cup0SseJAOlWRhWhcTAU05rETsJnzCA5DfNkf+aP3XiAM8rMJfrTfC0Z3aeADhHaA==}
|
||||
dev: false
|
||||
|
||||
/@types/cacheable-request@6.0.3:
|
||||
|
@ -1806,7 +1809,7 @@ packages:
|
|||
resolution: {integrity: sha512-K5zLZSzrJCOQBay5E7abGp7gQ0q1Pv58dE3RuBo5LQXYQFaCO4JPju0XYdzgLoQ20yhBVZ43AwIcSgCzx9KvqA==}
|
||||
dependencies:
|
||||
'@types/react': 18.2.6
|
||||
next: 13.4.2(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
next: 13.4.3(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
workbox-build: 6.5.4
|
||||
transitivePeerDependencies:
|
||||
- '@babel/core'
|
||||
|
@ -1863,7 +1866,7 @@ packages:
|
|||
resolution: {integrity: sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g==}
|
||||
dev: false
|
||||
|
||||
/@typescript-eslint/eslint-plugin@5.59.6(@typescript-eslint/parser@5.59.6)(eslint@8.40.0)(typescript@5.0.4):
|
||||
/@typescript-eslint/eslint-plugin@5.59.6(@typescript-eslint/parser@5.59.6)(eslint@8.41.0)(typescript@5.0.4):
|
||||
resolution: {integrity: sha512-sXtOgJNEuRU5RLwPUb1jxtToZbgvq3M6FPpY4QENxoOggK+UpTxUBpj6tD8+Qh2g46Pi9We87E+eHnUw8YcGsw==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
|
@ -1875,12 +1878,12 @@ packages:
|
|||
optional: true
|
||||
dependencies:
|
||||
'@eslint-community/regexpp': 4.5.1
|
||||
'@typescript-eslint/parser': 5.59.6(eslint@8.40.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/parser': 5.59.6(eslint@8.41.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/scope-manager': 5.59.6
|
||||
'@typescript-eslint/type-utils': 5.59.6(eslint@8.40.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/utils': 5.59.6(eslint@8.40.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/type-utils': 5.59.6(eslint@8.41.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/utils': 5.59.6(eslint@8.41.0)(typescript@5.0.4)
|
||||
debug: 4.3.4
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
grapheme-splitter: 1.0.4
|
||||
ignore: 5.2.4
|
||||
natural-compare-lite: 1.4.0
|
||||
|
@ -1891,7 +1894,7 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@typescript-eslint/parser@5.59.6(eslint@8.40.0)(typescript@5.0.4):
|
||||
/@typescript-eslint/parser@5.59.6(eslint@8.41.0)(typescript@5.0.4):
|
||||
resolution: {integrity: sha512-7pCa6al03Pv1yf/dUg/s1pXz/yGMUBAw5EeWqNTFiSueKvRNonze3hma3lhdsOrQcaOXhbk5gKu2Fludiho9VA==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
|
@ -1905,7 +1908,7 @@ packages:
|
|||
'@typescript-eslint/types': 5.59.6
|
||||
'@typescript-eslint/typescript-estree': 5.59.6(typescript@5.0.4)
|
||||
debug: 4.3.4
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
typescript: 5.0.4
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
@ -1919,7 +1922,7 @@ packages:
|
|||
'@typescript-eslint/visitor-keys': 5.59.6
|
||||
dev: true
|
||||
|
||||
/@typescript-eslint/type-utils@5.59.6(eslint@8.40.0)(typescript@5.0.4):
|
||||
/@typescript-eslint/type-utils@5.59.6(eslint@8.41.0)(typescript@5.0.4):
|
||||
resolution: {integrity: sha512-A4tms2Mp5yNvLDlySF+kAThV9VTBPCvGf0Rp8nl/eoDX9Okun8byTKoj3fJ52IJitjWOk0fKPNQhXEB++eNozQ==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
|
@ -1930,9 +1933,9 @@ packages:
|
|||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/typescript-estree': 5.59.6(typescript@5.0.4)
|
||||
'@typescript-eslint/utils': 5.59.6(eslint@8.40.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/utils': 5.59.6(eslint@8.41.0)(typescript@5.0.4)
|
||||
debug: 4.3.4
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
tsutils: 3.21.0(typescript@5.0.4)
|
||||
typescript: 5.0.4
|
||||
transitivePeerDependencies:
|
||||
|
@ -1965,19 +1968,19 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@typescript-eslint/utils@5.59.6(eslint@8.40.0)(typescript@5.0.4):
|
||||
/@typescript-eslint/utils@5.59.6(eslint@8.41.0)(typescript@5.0.4):
|
||||
resolution: {integrity: sha512-vzaaD6EXbTS29cVH0JjXBdzMt6VBlv+hE31XktDRMX1j3462wZCJa7VzO2AxXEXcIl8GQqZPcOPuW/Z1tZVogg==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||
dependencies:
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@8.40.0)
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@8.41.0)
|
||||
'@types/json-schema': 7.0.11
|
||||
'@types/semver': 7.5.0
|
||||
'@typescript-eslint/scope-manager': 5.59.6
|
||||
'@typescript-eslint/types': 5.59.6
|
||||
'@typescript-eslint/typescript-estree': 5.59.6(typescript@5.0.4)
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
eslint-scope: 5.1.1
|
||||
semver: 7.5.1
|
||||
transitivePeerDependencies:
|
||||
|
@ -2431,8 +2434,8 @@ packages:
|
|||
hasBin: true
|
||||
dependencies:
|
||||
caniuse-lite: 1.0.30001488
|
||||
electron-to-chromium: 1.4.400
|
||||
node-releases: 2.0.10
|
||||
electron-to-chromium: 1.4.402
|
||||
node-releases: 2.0.11
|
||||
update-browserslist-db: 1.0.11(browserslist@4.21.5)
|
||||
dev: false
|
||||
|
||||
|
@ -2631,7 +2634,7 @@ packages:
|
|||
resolution: {integrity: sha512-MaQ9FwzlZ/KLeVCLhzI3rZw0EhrIryfZa3AyT4agVybR0DjlkDHA8898lamLD6kfkf9MMn8D+zDAUR4+GxaymQ==}
|
||||
engines: {node: '>=12.13'}
|
||||
dependencies:
|
||||
is-what: 4.1.9
|
||||
is-what: 4.1.10
|
||||
dev: false
|
||||
|
||||
/core-js-compat@3.30.2:
|
||||
|
@ -2840,8 +2843,8 @@ packages:
|
|||
jake: 10.8.6
|
||||
dev: false
|
||||
|
||||
/electron-to-chromium@1.4.400:
|
||||
resolution: {integrity: sha512-Lsvf7cvwbIxCfB8VqbnVtEsjGi3+48ejDiQZfWo5gkT+1vQ2DHQI5pl0nUvPD6z1IQk6JgFeMC5ZQJqVhalEHg==}
|
||||
/electron-to-chromium@1.4.402:
|
||||
resolution: {integrity: sha512-gWYvJSkohOiBE6ecVYXkrDgNaUjo47QEKK0kQzmWyhkH+yoYiG44bwuicTGNSIQRG3WDMsWVZJLRnJnLNkbWvA==}
|
||||
dev: false
|
||||
|
||||
/emoji-regex@9.2.2:
|
||||
|
@ -2960,8 +2963,8 @@ packages:
|
|||
engines: {node: '>=10'}
|
||||
dev: true
|
||||
|
||||
/eslint-config-next@13.4.2(eslint@8.40.0)(typescript@5.0.4):
|
||||
resolution: {integrity: sha512-zjLJ9B9bbeWSo5q+iHfdt8gVYyT+y2BpWDfjR6XMBtFRSMKRGjllDKxnuKBV1q2Y/QpwLM2PXHJTMRyblCmRAg==}
|
||||
/eslint-config-next@13.4.3(eslint@8.41.0)(typescript@5.0.4):
|
||||
resolution: {integrity: sha512-1lXwdFi29fKxzeugof/TUE7lpHyJQt5+U4LaUHyvQfHjvsWO77vFNicJv5sX6k0VDVSbnfz0lw+avxI+CinbMg==}
|
||||
peerDependencies:
|
||||
eslint: ^7.23.0 || ^8.0.0
|
||||
typescript: '>=3.3.1'
|
||||
|
@ -2969,16 +2972,16 @@ packages:
|
|||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@next/eslint-plugin-next': 13.4.2
|
||||
'@next/eslint-plugin-next': 13.4.3
|
||||
'@rushstack/eslint-patch': 1.2.0
|
||||
'@typescript-eslint/parser': 5.59.6(eslint@8.40.0)(typescript@5.0.4)
|
||||
eslint: 8.40.0
|
||||
'@typescript-eslint/parser': 5.59.6(eslint@8.41.0)(typescript@5.0.4)
|
||||
eslint: 8.41.0
|
||||
eslint-import-resolver-node: 0.3.7
|
||||
eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-plugin-import@2.27.5)(eslint@8.40.0)
|
||||
eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-typescript@3.5.5)(eslint@8.40.0)
|
||||
eslint-plugin-jsx-a11y: 6.7.1(eslint@8.40.0)
|
||||
eslint-plugin-react: 7.32.2(eslint@8.40.0)
|
||||
eslint-plugin-react-hooks: 4.6.0(eslint@8.40.0)
|
||||
eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-plugin-import@2.27.5)(eslint@8.41.0)
|
||||
eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-typescript@3.5.5)(eslint@8.41.0)
|
||||
eslint-plugin-jsx-a11y: 6.7.1(eslint@8.41.0)
|
||||
eslint-plugin-react: 7.32.2(eslint@8.41.0)
|
||||
eslint-plugin-react-hooks: 4.6.0(eslint@8.41.0)
|
||||
typescript: 5.0.4
|
||||
transitivePeerDependencies:
|
||||
- eslint-import-resolver-webpack
|
||||
|
@ -2995,7 +2998,7 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-plugin-import@2.27.5)(eslint@8.40.0):
|
||||
/eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-plugin-import@2.27.5)(eslint@8.41.0):
|
||||
resolution: {integrity: sha512-TdJqPHs2lW5J9Zpe17DZNQuDnox4xo2o+0tE7Pggain9Rbc19ik8kFtXdxZ250FVx2kF4vlt2RSf4qlUpG7bhw==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
|
@ -3004,9 +3007,9 @@ packages:
|
|||
dependencies:
|
||||
debug: 4.3.4
|
||||
enhanced-resolve: 5.14.0
|
||||
eslint: 8.40.0
|
||||
eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.40.0)
|
||||
eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-typescript@3.5.5)(eslint@8.40.0)
|
||||
eslint: 8.41.0
|
||||
eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.41.0)
|
||||
eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-typescript@3.5.5)(eslint@8.41.0)
|
||||
get-tsconfig: 4.5.0
|
||||
globby: 13.1.4
|
||||
is-core-module: 2.12.1
|
||||
|
@ -3019,7 +3022,7 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-module-utils@2.8.0(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.40.0):
|
||||
/eslint-module-utils@2.8.0(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.41.0):
|
||||
resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==}
|
||||
engines: {node: '>=4'}
|
||||
peerDependencies:
|
||||
|
@ -3040,16 +3043,16 @@ packages:
|
|||
eslint-import-resolver-webpack:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/parser': 5.59.6(eslint@8.40.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/parser': 5.59.6(eslint@8.41.0)(typescript@5.0.4)
|
||||
debug: 3.2.7
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
eslint-import-resolver-node: 0.3.7
|
||||
eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-plugin-import@2.27.5)(eslint@8.40.0)
|
||||
eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-plugin-import@2.27.5)(eslint@8.41.0)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-typescript@3.5.5)(eslint@8.40.0):
|
||||
/eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-typescript@3.5.5)(eslint@8.41.0):
|
||||
resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==}
|
||||
engines: {node: '>=4'}
|
||||
peerDependencies:
|
||||
|
@ -3059,15 +3062,15 @@ packages:
|
|||
'@typescript-eslint/parser':
|
||||
optional: true
|
||||
dependencies:
|
||||
'@typescript-eslint/parser': 5.59.6(eslint@8.40.0)(typescript@5.0.4)
|
||||
'@typescript-eslint/parser': 5.59.6(eslint@8.41.0)(typescript@5.0.4)
|
||||
array-includes: 3.1.6
|
||||
array.prototype.flat: 1.3.1
|
||||
array.prototype.flatmap: 1.3.1
|
||||
debug: 3.2.7
|
||||
doctrine: 2.1.0
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
eslint-import-resolver-node: 0.3.7
|
||||
eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.40.0)
|
||||
eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.59.6)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.41.0)
|
||||
has: 1.0.3
|
||||
is-core-module: 2.12.1
|
||||
is-glob: 4.0.3
|
||||
|
@ -3082,7 +3085,7 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-jsx-a11y@6.7.1(eslint@8.40.0):
|
||||
/eslint-plugin-jsx-a11y@6.7.1(eslint@8.41.0):
|
||||
resolution: {integrity: sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==}
|
||||
engines: {node: '>=4.0'}
|
||||
peerDependencies:
|
||||
|
@ -3097,7 +3100,7 @@ packages:
|
|||
axobject-query: 3.1.1
|
||||
damerau-levenshtein: 1.0.8
|
||||
emoji-regex: 9.2.2
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
has: 1.0.3
|
||||
jsx-ast-utils: 3.3.3
|
||||
language-tags: 1.0.5
|
||||
|
@ -3107,16 +3110,16 @@ packages:
|
|||
semver: 6.3.0
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-react-hooks@4.6.0(eslint@8.40.0):
|
||||
/eslint-plugin-react-hooks@4.6.0(eslint@8.41.0):
|
||||
resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==}
|
||||
engines: {node: '>=10'}
|
||||
peerDependencies:
|
||||
eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
|
||||
dependencies:
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-react@7.32.2(eslint@8.40.0):
|
||||
/eslint-plugin-react@7.32.2(eslint@8.41.0):
|
||||
resolution: {integrity: sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==}
|
||||
engines: {node: '>=4'}
|
||||
peerDependencies:
|
||||
|
@ -3126,7 +3129,7 @@ packages:
|
|||
array.prototype.flatmap: 1.3.1
|
||||
array.prototype.tosorted: 1.1.1
|
||||
doctrine: 2.1.0
|
||||
eslint: 8.40.0
|
||||
eslint: 8.41.0
|
||||
estraverse: 5.3.0
|
||||
jsx-ast-utils: 3.3.3
|
||||
minimatch: 3.1.2
|
||||
|
@ -3160,15 +3163,15 @@ packages:
|
|||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
dev: true
|
||||
|
||||
/eslint@8.40.0:
|
||||
resolution: {integrity: sha512-bvR+TsP9EHL3TqNtj9sCNJVAFK3fBN8Q7g5waghxyRsPLIMwL73XSKnZFK0hk/O2ANC+iAoq6PWMQ+IfBAJIiQ==}
|
||||
/eslint@8.41.0:
|
||||
resolution: {integrity: sha512-WQDQpzGBOP5IrXPo4Hc0814r4/v2rrIsB0rhT7jtunIalgg6gYXWhRMOejVO8yH21T/FGaxjmFjBMNqcIlmH1Q==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@8.40.0)
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@8.41.0)
|
||||
'@eslint-community/regexpp': 4.5.1
|
||||
'@eslint/eslintrc': 2.0.3
|
||||
'@eslint/js': 8.40.0
|
||||
'@eslint/js': 8.41.0
|
||||
'@humanwhocodes/config-array': 0.11.8
|
||||
'@humanwhocodes/module-importer': 1.0.1
|
||||
'@nodelib/fs.walk': 1.2.8
|
||||
|
@ -3188,13 +3191,12 @@ packages:
|
|||
find-up: 5.0.0
|
||||
glob-parent: 6.0.2
|
||||
globals: 13.20.0
|
||||
grapheme-splitter: 1.0.4
|
||||
graphemer: 1.4.0
|
||||
ignore: 5.2.4
|
||||
import-fresh: 3.3.0
|
||||
imurmurhash: 0.1.4
|
||||
is-glob: 4.0.3
|
||||
is-path-inside: 3.0.3
|
||||
js-sdsl: 4.4.0
|
||||
js-yaml: 4.1.0
|
||||
json-stable-stringify-without-jsonify: 1.0.1
|
||||
levn: 0.4.1
|
||||
|
@ -3367,6 +3369,10 @@ packages:
|
|||
resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==}
|
||||
dev: true
|
||||
|
||||
/fms-ts@0.1.6:
|
||||
resolution: {integrity: sha512-udJ0KwyFEIF27DQDl0PUptyTYrWczBr8P9g/b4j+Zri4cxQZcKCqcLfHUeDaD8usoThpk4WO0jVjftcjs9fYRw==}
|
||||
dev: false
|
||||
|
||||
/for-each@0.3.3:
|
||||
resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
|
||||
dependencies:
|
||||
|
@ -3580,6 +3586,10 @@ packages:
|
|||
resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
|
||||
dev: true
|
||||
|
||||
/graphemer@1.4.0:
|
||||
resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
|
||||
dev: true
|
||||
|
||||
/has-bigints@1.0.2:
|
||||
resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
|
||||
|
||||
|
@ -3896,8 +3906,8 @@ packages:
|
|||
get-intrinsic: 1.2.1
|
||||
dev: true
|
||||
|
||||
/is-what@4.1.9:
|
||||
resolution: {integrity: sha512-I3FU0rkVvwhgLLEs6iITwZ/JaLXe7tQcHyzupXky8jigt1vu4KM0UOqDr963j36JRvJ835EATVIm6MnGz/i1/g==}
|
||||
/is-what@4.1.10:
|
||||
resolution: {integrity: sha512-JBy26nXqBUwzTfgj6T5Y/UgXSmRd+03FTq5v3P+N1cOmOtI1hz7dBn+ZfqM7c86qqWTNBEH98h3pkpmI6USnQA==}
|
||||
engines: {node: '>=12.13'}
|
||||
dev: false
|
||||
|
||||
|
@ -3954,10 +3964,6 @@ packages:
|
|||
resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==}
|
||||
dev: false
|
||||
|
||||
/js-sdsl@4.4.0:
|
||||
resolution: {integrity: sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==}
|
||||
dev: true
|
||||
|
||||
/js-tokens@4.0.0:
|
||||
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
|
||||
|
||||
|
@ -4278,7 +4284,7 @@ packages:
|
|||
resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
|
||||
dev: false
|
||||
|
||||
/next-auth@4.22.1(next@13.4.2)(react-dom@18.2.0)(react@18.2.0):
|
||||
/next-auth@4.22.1(next@13.4.3)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-NTR3f6W7/AWXKw8GSsgSyQcDW6jkslZLH8AiZa5PQ09w1kR8uHtR9rez/E9gAq/o17+p0JYHE8QjF3RoniiObA==}
|
||||
peerDependencies:
|
||||
next: ^12.2.5 || ^13
|
||||
|
@ -4293,7 +4299,7 @@ packages:
|
|||
'@panva/hkdf': 1.1.1
|
||||
cookie: 0.5.0
|
||||
jose: 4.14.4
|
||||
next: 13.4.2(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
next: 13.4.3(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
oauth: 0.9.15
|
||||
openid-client: 5.4.2
|
||||
preact: 10.14.1
|
||||
|
@ -4303,7 +4309,7 @@ packages:
|
|||
uuid: 8.3.2
|
||||
dev: false
|
||||
|
||||
/next-pwa@5.6.0(@babel/core@7.21.8)(next@13.4.2)(webpack@5.83.1):
|
||||
/next-pwa@5.6.0(@babel/core@7.21.8)(next@13.4.3)(webpack@5.83.1):
|
||||
resolution: {integrity: sha512-XV8g8C6B7UmViXU8askMEYhWwQ4qc/XqJGnexbLV68hzKaGHZDMtHsm2TNxFcbR7+ypVuth/wwpiIlMwpRJJ5A==}
|
||||
peerDependencies:
|
||||
next: '>=9.0.0'
|
||||
|
@ -4311,7 +4317,7 @@ packages:
|
|||
babel-loader: 8.3.0(@babel/core@7.21.8)(webpack@5.83.1)
|
||||
clean-webpack-plugin: 4.0.0(webpack@5.83.1)
|
||||
globby: 11.1.0
|
||||
next: 13.4.2(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
next: 13.4.3(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0)
|
||||
terser-webpack-plugin: 5.3.9(webpack@5.83.1)
|
||||
workbox-webpack-plugin: 6.5.4(webpack@5.83.1)
|
||||
workbox-window: 6.5.4
|
||||
|
@ -4325,8 +4331,8 @@ packages:
|
|||
- webpack
|
||||
dev: false
|
||||
|
||||
/next@13.4.2(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-aNFqLs3a3nTGvLWlO9SUhCuMUHVPSFQC0+tDNGAsDXqx+WJDFSbvc233gOJ5H19SBc7nw36A9LwQepOJ2u/8Kg==}
|
||||
/next@13.4.3(@babel/core@7.21.8)(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-FV3pBrAAnAIfOclTvncw9dDohyeuEEXPe5KNcva91anT/rdycWbgtu3IjUj4n5yHnWK8YEPo0vrUecHmnmUNbA==}
|
||||
engines: {node: '>=16.8.0'}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
|
@ -4346,7 +4352,7 @@ packages:
|
|||
sass:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@next/env': 13.4.2
|
||||
'@next/env': 13.4.3
|
||||
'@swc/helpers': 0.5.1
|
||||
busboy: 1.6.0
|
||||
caniuse-lite: 1.0.30001488
|
||||
|
@ -4356,22 +4362,22 @@ packages:
|
|||
styled-jsx: 5.1.1(@babel/core@7.21.8)(react@18.2.0)
|
||||
zod: 3.21.4
|
||||
optionalDependencies:
|
||||
'@next/swc-darwin-arm64': 13.4.2
|
||||
'@next/swc-darwin-x64': 13.4.2
|
||||
'@next/swc-linux-arm64-gnu': 13.4.2
|
||||
'@next/swc-linux-arm64-musl': 13.4.2
|
||||
'@next/swc-linux-x64-gnu': 13.4.2
|
||||
'@next/swc-linux-x64-musl': 13.4.2
|
||||
'@next/swc-win32-arm64-msvc': 13.4.2
|
||||
'@next/swc-win32-ia32-msvc': 13.4.2
|
||||
'@next/swc-win32-x64-msvc': 13.4.2
|
||||
'@next/swc-darwin-arm64': 13.4.3
|
||||
'@next/swc-darwin-x64': 13.4.3
|
||||
'@next/swc-linux-arm64-gnu': 13.4.3
|
||||
'@next/swc-linux-arm64-musl': 13.4.3
|
||||
'@next/swc-linux-x64-gnu': 13.4.3
|
||||
'@next/swc-linux-x64-musl': 13.4.3
|
||||
'@next/swc-win32-arm64-msvc': 13.4.3
|
||||
'@next/swc-win32-ia32-msvc': 13.4.3
|
||||
'@next/swc-win32-x64-msvc': 13.4.3
|
||||
transitivePeerDependencies:
|
||||
- '@babel/core'
|
||||
- babel-plugin-macros
|
||||
dev: false
|
||||
|
||||
/node-releases@2.0.10:
|
||||
resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==}
|
||||
/node-releases@2.0.11:
|
||||
resolution: {integrity: sha512-+M0PwXeU80kRohZ3aT4J/OnR+l9/KD2nVLNNoRgFtnf+umQVFdGBAO2N8+nCnEi0xlh/Wk3zOGC+vNNx+uM79Q==}
|
||||
dev: false
|
||||
|
||||
/normalize-path@3.0.0:
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
import type { User } from "@prisma/client";
|
||||
import { z } from "zod";
|
||||
import { env } from "~/env.mjs";
|
||||
import { createTRPCRouter, protectedProcedure } from "~/server/api/trpc";
|
||||
import { sendMail } from "~/server/jmap";
|
||||
import { sendMail } from "fms-ts";
|
||||
import { fetchFromCache, writeToCache, deleteFromCache } from "~/server/redis";
|
||||
import type { Role } from "~/utils/types";
|
||||
|
||||
|
@ -113,7 +114,13 @@ export const userRouter = createTRPCRouter({
|
|||
"-- \n" +
|
||||
"Sprint Padawan Admin - Atridad \n";
|
||||
|
||||
await sendMail(subject, body, user.email);
|
||||
await sendMail(
|
||||
env.JMAP_USERNAME,
|
||||
env.JMAP_TOKEN,
|
||||
subject,
|
||||
body,
|
||||
user.email
|
||||
);
|
||||
await deleteFromCache(`kv_usercount_admin`);
|
||||
await deleteFromCache(`kv_userlist_admin`);
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@ import { PrismaAdapter } from "@next-auth/prisma-adapter";
|
|||
import { env } from "~/env.mjs";
|
||||
import { prisma } from "~/server/db";
|
||||
import type { Role } from "~/utils/types";
|
||||
import { sendMail } from "./jmap";
|
||||
import { sendMail } from "fms-ts";
|
||||
import { deleteFromCache } from "./redis";
|
||||
|
||||
/**
|
||||
|
@ -59,7 +59,13 @@ export const authOptions: NextAuthOptions = {
|
|||
"-- \n" +
|
||||
"Sprint Padawan Admin - Atridad \n";
|
||||
|
||||
await sendMail(subject, body, user.email);
|
||||
await sendMail(
|
||||
env.JMAP_USERNAME,
|
||||
env.JMAP_TOKEN,
|
||||
subject,
|
||||
body,
|
||||
user.email
|
||||
);
|
||||
await deleteFromCache(`kv_userlist_admin`);
|
||||
await deleteFromCache(`kv_usercount_admin`);
|
||||
}
|
||||
|
|
|
@ -1,118 +0,0 @@
|
|||
/* eslint-disable */
|
||||
import { env } from "~/env.mjs";
|
||||
|
||||
const hostname = env.JMAP_HOSTNAME || "api.fastmail.com";
|
||||
const username = env.JMAP_USERNAME;
|
||||
|
||||
const authUrl = `https://${hostname}/.well-known/jmap`;
|
||||
const headers = {
|
||||
"Content-Type": "application/json",
|
||||
Authorization: `Bearer ${env.JMAP_TOKEN}`,
|
||||
};
|
||||
|
||||
export const getSession = async () => {
|
||||
const response = await fetch(authUrl, {
|
||||
method: "GET",
|
||||
headers,
|
||||
});
|
||||
return response.json();
|
||||
};
|
||||
|
||||
export const mailboxQuery = async (apiUrl: string, accountId: string) => {
|
||||
const response = await fetch(apiUrl, {
|
||||
method: "POST",
|
||||
headers,
|
||||
body: JSON.stringify({
|
||||
using: ["urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail"],
|
||||
methodCalls: [
|
||||
["Mailbox/query", { accountId, filter: { name: "Drafts" } }, "a"],
|
||||
],
|
||||
}),
|
||||
});
|
||||
const data = await response.json();
|
||||
|
||||
return await data["methodResponses"][0][1].ids[0];
|
||||
};
|
||||
|
||||
export const identityQuery = async (apiUrl: string, accountId: string) => {
|
||||
const response = await fetch(apiUrl, {
|
||||
method: "POST",
|
||||
headers,
|
||||
body: JSON.stringify({
|
||||
using: [
|
||||
"urn:ietf:params:jmap:core",
|
||||
"urn:ietf:params:jmap:mail",
|
||||
"urn:ietf:params:jmap:submission",
|
||||
],
|
||||
methodCalls: [["Identity/get", { accountId, ids: null }, "a"]],
|
||||
}),
|
||||
});
|
||||
const data = await response.json();
|
||||
|
||||
return await data["methodResponses"][0][1].list.filter(
|
||||
// eslint-disable-line
|
||||
(identity: any) => identity.email === username
|
||||
)[0].id;
|
||||
};
|
||||
|
||||
export const draftResponse = async (
|
||||
apiUrl: string,
|
||||
accountId: string,
|
||||
draftId: string,
|
||||
identityId: string,
|
||||
subject: string,
|
||||
messageBody: string,
|
||||
sendTo: string
|
||||
) => {
|
||||
const draftObject = {
|
||||
from: [{ email: username }],
|
||||
to: [{ email: sendTo }],
|
||||
subject,
|
||||
keywords: { $draft: true },
|
||||
mailboxIds: { [draftId]: true },
|
||||
bodyValues: { body: { value: messageBody, charset: "utf-8" } },
|
||||
textBody: [{ partId: "body", type: "text/plain" }],
|
||||
};
|
||||
|
||||
const response = await fetch(apiUrl, {
|
||||
method: "POST",
|
||||
headers,
|
||||
body: JSON.stringify({
|
||||
using: [
|
||||
"urn:ietf:params:jmap:core",
|
||||
"urn:ietf:params:jmap:mail",
|
||||
"urn:ietf:params:jmap:submission",
|
||||
],
|
||||
methodCalls: [
|
||||
["Email/set", { accountId, create: { draft: draftObject } }, "a"],
|
||||
[
|
||||
"EmailSubmission/set",
|
||||
{
|
||||
accountId,
|
||||
onSuccessDestroyEmail: ["#sendIt"],
|
||||
create: { sendIt: { emailId: "#draft", identityId } },
|
||||
},
|
||||
"b",
|
||||
],
|
||||
],
|
||||
}),
|
||||
});
|
||||
|
||||
const data = await response.json();
|
||||
console.log(JSON.stringify(data, null, 2));
|
||||
};
|
||||
|
||||
export const sendMail = async (
|
||||
subject: string,
|
||||
body: string,
|
||||
sendTo: string
|
||||
) => {
|
||||
const session = await getSession();
|
||||
const apiUrl = session.apiUrl;
|
||||
const accountId = session.primaryAccounts["urn:ietf:params:jmap:mail"];
|
||||
|
||||
const draftId = await mailboxQuery(apiUrl, accountId);
|
||||
|
||||
const identityId = await identityQuery(apiUrl, accountId);
|
||||
draftResponse(apiUrl, accountId, draftId, identityId, subject, body, sendTo);
|
||||
};
|
Loading…
Add table
Reference in a new issue