diff --git a/package.json b/package.json
index 163fd9e2c..feceab7b9 100644
--- a/package.json
+++ b/package.json
@@ -106,17 +106,17 @@
},
"dependencies": {
"@primer/octicons-react": "^19.8.0",
- "axios": "=0.27.2",
+ "axios": "^0.27.2",
"date-fns": "^2.16.1",
"electron-updater": "^4.3.9",
"final-form": "^4.20.1",
"history": "^4.10.1",
"lodash": "^4.17.21",
"menubar": "^9.3.0",
- "nprogress": "=0.2.0",
- "react": "=16.14.0",
- "react-dom": "=16.14.0",
- "react-emojione": "=5.0.1",
+ "nprogress": "^0.2.0",
+ "react": "^18.2.0",
+ "react-dom": "^18.2.0",
+ "react-emojione": "^5.0.1",
"react-final-form": "^6.4.0",
"react-router": "^5.3.4",
"react-router-dom": "^5.3.4",
@@ -131,8 +131,10 @@
"@types/lodash": "^4.14.165",
"@types/node": "^18.18.0",
"@types/react": "^16.9.32",
+ "@types/node": "^18.0.0",
+ "@types/react": "^18.2.22",
"@types/react-router-dom": "^5.3.3",
- "@types/react-transition-group": "^4.4.0",
+ "@types/react-transition-group": "^4.4.7",
"autoprefixer": "^10.4.16",
"coveralls": "^3.1.1",
"css-loader": "^6.8.1",
@@ -145,7 +147,7 @@
"postcss": "^8.4.30",
"postcss-loader": "^7.3.3",
"prettier": "^3.0.3",
- "react-test-renderer": "=16.14.0",
+ "react-test-renderer": "^18.2.0",
"style-loader": "^3.3.3",
"tailwindcss": "^3.3.3",
"ts-jest": "^27",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 243e9da96..89b1cdec2 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -7,9 +7,9 @@ settings:
dependencies:
'@primer/octicons-react':
specifier: ^19.8.0
- version: 19.8.0(react@16.14.0)
+ version: 19.8.0(react@18.2.0)
axios:
- specifier: '=0.27.2'
+ specifier: ^0.27.2
version: 0.27.2
date-fns:
specifier: ^2.16.1
@@ -30,29 +30,29 @@ dependencies:
specifier: ^9.3.0
version: 9.3.0(electron@13.1.7)
nprogress:
- specifier: '=0.2.0'
+ specifier: ^0.2.0
version: 0.2.0
react:
- specifier: '=16.14.0'
- version: 16.14.0
+ specifier: ^18.2.0
+ version: 18.2.0
react-dom:
- specifier: '=16.14.0'
- version: 16.14.0(react@16.14.0)
+ specifier: ^18.2.0
+ version: 18.2.0(react@18.2.0)
react-emojione:
- specifier: '=5.0.1'
- version: 5.0.1(react-dom@16.14.0)(react@16.14.0)
+ specifier: ^5.0.1
+ version: 5.0.1(react-dom@18.2.0)(react@18.2.0)
react-final-form:
specifier: ^6.4.0
- version: 6.4.0(final-form@4.20.1)(react@16.14.0)(typescript@4.9.5)
+ version: 6.4.0(final-form@4.20.1)(react@18.2.0)(typescript@4.9.5)
react-router:
specifier: ^5.3.4
- version: 5.3.4(react@16.14.0)
+ version: 5.3.4(react@18.2.0)
react-router-dom:
specifier: ^5.3.4
- version: 5.3.4(react@16.14.0)
+ version: 5.3.4(react@18.2.0)
react-transition-group:
specifier: ^4.4.1
- version: 4.4.1(react-dom@16.14.0)(react@16.14.0)
+ version: 4.4.1(react-dom@18.2.0)(react@18.2.0)
ts-loader:
specifier: ^9.4.2
version: 9.4.2(typescript@4.9.5)(webpack@5.83.1)
@@ -63,10 +63,10 @@ dependencies:
devDependencies:
'@testing-library/react':
specifier: ^11.2.2
- version: 11.2.2(react-dom@16.14.0)(react@16.14.0)
+ version: 11.2.2(react-dom@18.2.0)(react@18.2.0)
'@testing-library/react-hooks':
specifier: ^8.0.0
- version: 8.0.0(@types/react@16.9.32)(react-dom@16.14.0)(react-test-renderer@16.14.0)(react@16.14.0)
+ version: 8.0.0(@types/react@18.2.23)(react-dom@18.2.0)(react-test-renderer@18.2.0)(react@18.2.0)
'@types/jest':
specifier: ^27
version: 27.5.2
@@ -74,17 +74,17 @@ devDependencies:
specifier: ^4.14.165
version: 4.14.165
'@types/node':
- specifier: ^18.18.0
+ specifier: ^18.0.0
version: 18.18.0
'@types/react':
- specifier: ^16.9.32
- version: 16.9.32
+ specifier: ^18.2.22
+ version: 18.2.23
'@types/react-router-dom':
specifier: ^5.3.3
version: 5.3.3
'@types/react-transition-group':
- specifier: ^4.4.0
- version: 4.4.0
+ specifier: ^4.4.7
+ version: 4.4.7
autoprefixer:
specifier: ^10.4.16
version: 10.4.16(postcss@8.4.30)
@@ -122,8 +122,8 @@ devDependencies:
specifier: ^3.0.3
version: 3.0.3
react-test-renderer:
- specifier: '=16.14.0'
- version: 16.14.0(react@16.14.0)
+ specifier: ^18.2.0
+ version: 18.2.0(react@18.2.0)
style-loader:
specifier: ^3.3.3
version: 3.3.3(webpack@5.83.1)
@@ -876,13 +876,13 @@ packages:
fastq: 1.15.0
dev: true
- /@primer/octicons-react@19.8.0(react@16.14.0):
+ /@primer/octicons-react@19.8.0(react@18.2.0):
resolution: {integrity: sha512-2Z+D7xTloFTLQVRUEbg0pQpe6aTL9RR+8RqBhjkrF+BFuVdM1ENOyjywaGEO7DIkPU5Zxlv0gxSlD85LQxL+sw==}
engines: {node: '>=8'}
peerDependencies:
react: '>=16.3'
dependencies:
- react: 16.14.0
+ react: 18.2.0
dev: false
/@sindresorhus/is@0.14.0:
@@ -921,7 +921,7 @@ packages:
pretty-format: 26.6.2
dev: true
- /@testing-library/react-hooks@8.0.0(@types/react@16.9.32)(react-dom@16.14.0)(react-test-renderer@16.14.0)(react@16.14.0):
+ /@testing-library/react-hooks@8.0.0(@types/react@18.2.23)(react-dom@18.2.0)(react-test-renderer@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-uZqcgtcUUtw7Z9N32W13qQhVAD+Xki2hxbTR461MKax8T6Jr8nsUvZB+vcBTkzY2nFvsUet434CsgF0ncW2yFw==}
engines: {node: '>=12'}
peerDependencies:
@@ -938,14 +938,14 @@ packages:
optional: true
dependencies:
'@babel/runtime': 7.21.5
- '@types/react': 16.9.32
- react: 16.14.0
- react-dom: 16.14.0(react@16.14.0)
- react-error-boundary: 3.1.4(react@16.14.0)
- react-test-renderer: 16.14.0(react@16.14.0)
+ '@types/react': 18.2.23
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ react-error-boundary: 3.1.4(react@18.2.0)
+ react-test-renderer: 18.2.0(react@18.2.0)
dev: true
- /@testing-library/react@11.2.2(react-dom@16.14.0)(react@16.14.0):
+ /@testing-library/react@11.2.2(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-jaxm0hwUjv+hzC+UFEywic7buDC9JQ1q3cDsrWVSDAPmLotfA6E6kUHlYm/zOeGCac6g48DR36tFHxl7Zb+N5A==}
engines: {node: '>=10'}
peerDependencies:
@@ -954,8 +954,8 @@ packages:
dependencies:
'@babel/runtime': 7.21.5
'@testing-library/dom': 7.31.2
- react: 16.14.0
- react-dom: 16.14.0(react@16.14.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
dev: true
/@tootallnate/once@1.1.2:
@@ -1104,7 +1104,7 @@ packages:
resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==}
dependencies:
'@types/history': 4.7.11
- '@types/react': 16.9.32
+ '@types/react': 18.2.23
'@types/react-router': 5.1.20
dev: true
@@ -1112,20 +1112,21 @@ packages:
resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==}
dependencies:
'@types/history': 4.7.11
- '@types/react': 16.9.32
+ '@types/react': 18.2.23
dev: true
- /@types/react-transition-group@4.4.0:
- resolution: {integrity: sha512-/QfLHGpu+2fQOqQaXh8MG9q03bFENooTb/it4jr5kKaZlDQfWvjqWZg48AwzPVMBHlRuTRAY7hRHCEOXz5kV6w==}
+ /@types/react-transition-group@4.4.7:
+ resolution: {integrity: sha512-ICCyBl5mvyqYp8Qeq9B5G/fyBSRC0zx3XM3sCC6KkcMsNeAHqXBKkmat4GqdJET5jtYUpZXrxI5flve5qhi2Eg==}
dependencies:
- '@types/react': 16.9.32
+ '@types/react': 18.2.23
dev: true
- /@types/react@16.9.32:
- resolution: {integrity: sha512-fmejdp0CTH00mOJmxUPPbWCEBWPvRIL4m8r0qD+BSDUqmutPyGQCHifzMpMzdvZwROdEdL78IuZItntFWgPXHQ==}
+ /@types/react@18.2.23:
+ resolution: {integrity: sha512-qHLW6n1q2+7KyBEYnrZpcsAmU/iiCh9WGCKgXvMxx89+TYdJWRjZohVIo9XTcoLhfX3+/hP0Pbulu3bCZQ9PSA==}
dependencies:
'@types/prop-types': 15.7.5
- csstype: 2.6.21
+ '@types/scheduler': 0.16.4
+ csstype: 3.1.2
dev: true
/@types/responselike@1.0.0:
@@ -1133,6 +1134,10 @@ packages:
dependencies:
'@types/node': 18.18.0
+ /@types/scheduler@0.16.4:
+ resolution: {integrity: sha512-2L9ifAGl7wmXwP4v3pN4p2FLhD0O1qsJpvKmNin5VA8+UvNVb447UDaAEV6UdrkA+m/Xs58U1RFps44x6TFsVQ==}
+ dev: true
+
/@types/semver@7.5.0:
resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==}
dev: false
@@ -2077,13 +2082,8 @@ packages:
cssom: 0.3.8
dev: true
- /csstype@2.6.21:
- resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==}
- dev: true
-
/csstype@3.1.2:
resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==}
- dev: false
/dashdash@1.14.1:
resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==}
@@ -4476,6 +4476,7 @@ packages:
loose-envify: 1.4.0
object-assign: 4.1.1
react-is: 16.13.1
+ dev: false
/propagate@2.0.1:
resolution: {integrity: sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==}
@@ -4519,38 +4520,36 @@ packages:
dependencies:
safe-buffer: 5.2.1
- /react-dom@16.14.0(react@16.14.0):
- resolution: {integrity: sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==}
+ /react-dom@18.2.0(react@18.2.0):
+ resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==}
peerDependencies:
- react: ^16.14.0
+ react: ^18.2.0
dependencies:
loose-envify: 1.4.0
- object-assign: 4.1.1
- prop-types: 15.8.1
- react: 16.14.0
- scheduler: 0.19.1
+ react: 18.2.0
+ scheduler: 0.23.0
- /react-emojione@5.0.1(react-dom@16.14.0)(react@16.14.0):
+ /react-emojione@5.0.1(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-sjI6k8uQ14rWENYoAb+2BFQGLBt/cpLDJJNhnZvdFJytAJijhv+JmbmyyrfQPdyID0Cs4N8XFqnek0xq6POwGA==}
peerDependencies:
react: ^16
react-dom: ^16
dependencies:
- react: 16.14.0
- react-dom: 16.14.0(react@16.14.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
dev: false
- /react-error-boundary@3.1.4(react@16.14.0):
+ /react-error-boundary@3.1.4(react@18.2.0):
resolution: {integrity: sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA==}
engines: {node: '>=10', npm: '>=6'}
peerDependencies:
react: '>=16.13.1'
dependencies:
'@babel/runtime': 7.21.5
- react: 16.14.0
+ react: 18.2.0
dev: true
- /react-final-form@6.4.0(final-form@4.20.1)(react@16.14.0)(typescript@4.9.5):
+ /react-final-form@6.4.0(final-form@4.20.1)(react@18.2.0)(typescript@4.9.5):
resolution: {integrity: sha512-M7J7f0pnoj0o8sBq3iG6jsWJEh08pNUyl2D4wBC9SJvCNkGdol2UdyjMiEFYD3rz9LIFzQqFSG0kbRBCadqzhA==}
peerDependencies:
final-form: ^4.19.0
@@ -4558,7 +4557,7 @@ packages:
dependencies:
'@babel/runtime': 7.21.5
final-form: 4.20.1
- react: 16.14.0
+ react: 18.2.0
ts-essentials: 6.0.7(typescript@4.9.5)
transitivePeerDependencies:
- typescript
@@ -4566,12 +4565,17 @@ packages:
/react-is@16.13.1:
resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
+ dev: false
/react-is@17.0.2:
resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==}
dev: true
- /react-router-dom@5.3.4(react@16.14.0):
+ /react-is@18.2.0:
+ resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
+ dev: true
+
+ /react-router-dom@5.3.4(react@18.2.0):
resolution: {integrity: sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==}
peerDependencies:
react: '>=15'
@@ -4580,13 +4584,13 @@ packages:
history: 4.10.1
loose-envify: 1.4.0
prop-types: 15.8.1
- react: 16.14.0
- react-router: 5.3.4(react@16.14.0)
+ react: 18.2.0
+ react-router: 5.3.4(react@18.2.0)
tiny-invariant: 1.3.1
tiny-warning: 1.0.3
dev: false
- /react-router@5.3.4(react@16.14.0):
+ /react-router@5.3.4(react@18.2.0):
resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==}
peerDependencies:
react: '>=15'
@@ -4597,25 +4601,34 @@ packages:
loose-envify: 1.4.0
path-to-regexp: 1.8.0
prop-types: 15.8.1
- react: 16.14.0
+ react: 18.2.0
react-is: 16.13.1
tiny-invariant: 1.3.1
tiny-warning: 1.0.3
dev: false
- /react-test-renderer@16.14.0(react@16.14.0):
- resolution: {integrity: sha512-L8yPjqPE5CZO6rKsKXRO/rVPiaCOy0tQQJbC+UjPNlobl5mad59lvPjwFsQHTvL03caVDIVr9x9/OSgDe6I5Eg==}
+ /react-shallow-renderer@16.15.0(react@18.2.0):
+ resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==}
peerDependencies:
- react: ^16.14.0
+ react: ^16.0.0 || ^17.0.0 || ^18.0.0
dependencies:
object-assign: 4.1.1
- prop-types: 15.8.1
- react: 16.14.0
- react-is: 16.13.1
- scheduler: 0.19.1
+ react: 18.2.0
+ react-is: 18.2.0
+ dev: true
+
+ /react-test-renderer@18.2.0(react@18.2.0):
+ resolution: {integrity: sha512-JWD+aQ0lh2gvh4NM3bBM42Kx+XybOxCpgYK7F8ugAlpaTSnWsX+39Z4XkOykGZAHrjwwTZT3x3KxswVWxHPUqA==}
+ peerDependencies:
+ react: ^18.2.0
+ dependencies:
+ react: 18.2.0
+ react-is: 18.2.0
+ react-shallow-renderer: 16.15.0(react@18.2.0)
+ scheduler: 0.23.0
dev: true
- /react-transition-group@4.4.1(react-dom@16.14.0)(react@16.14.0):
+ /react-transition-group@4.4.1(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-Djqr7OQ2aPUiYurhPalTrVy9ddmFCCzwhqQmtN+J3+3DzLO209Fdr70QrN8Z3DsglWql6iY1lDWAfpFiBtuKGw==}
peerDependencies:
react: '>=16.6.0'
@@ -4625,17 +4638,15 @@ packages:
dom-helpers: 5.2.1
loose-envify: 1.4.0
prop-types: 15.8.1
- react: 16.14.0
- react-dom: 16.14.0(react@16.14.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
dev: false
- /react@16.14.0:
- resolution: {integrity: sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==}
+ /react@18.2.0:
+ resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
engines: {node: '>=0.10.0'}
dependencies:
loose-envify: 1.4.0
- object-assign: 4.1.1
- prop-types: 15.8.1
/read-cache@1.0.0:
resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
@@ -4817,11 +4828,10 @@ packages:
xmlchars: 2.2.0
dev: true
- /scheduler@0.19.1:
- resolution: {integrity: sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==}
+ /scheduler@0.23.0:
+ resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==}
dependencies:
loose-envify: 1.4.0
- object-assign: 4.1.1
/schema-utils@3.1.2:
resolution: {integrity: sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==}
diff --git a/src/index.tsx b/src/index.tsx
index e2928de11..1af47c973 100644
--- a/src/index.tsx
+++ b/src/index.tsx
@@ -1,9 +1,11 @@
+import { createRoot } from 'react-dom/client';
import * as React from 'react';
-import * as ReactDOM from 'react-dom';
import 'tailwindcss/tailwind.css';
import 'nprogress/nprogress.css';
import { App } from './app';
-ReactDOM.render(, document.getElementById('gitify'));
+const container = document.getElementById('gitify');
+const root = createRoot(container);
+root.render();