Skip to content

Commit 988c6fd

Browse files
committed
Upgrade QR code library
1 parent 007ece6 commit 988c6fd

File tree

3 files changed

+10
-18
lines changed

3 files changed

+10
-18
lines changed

website/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@
149149
"mousetrap": "1.6.5",
150150
"nusmoderator": "3.0.0",
151151
"p-queue": "6.6.2",
152+
"qrcode.react": "4.1.0",
152153
"query-string": "6.14.1",
153154
"react": "18.3.1",
154155
"react-beautiful-dnd": "13.1.1",
@@ -159,7 +160,6 @@
159160
"react-leaflet": "3.2.5",
160161
"react-loadable": "5.5.0",
161162
"react-modal": "3.16.1",
162-
"react-qr-svg": "2.4.0",
163163
"react-redux": "7.2.9",
164164
"react-router-dom": "5.3.4",
165165
"react-scrollspy": "3.4.3",

website/src/views/timetable/ShareTimetable.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import axios from 'axios';
33
import classnames from 'classnames';
44
import qs from 'query-string';
55
import { Copy, Mail, Repeat } from 'react-feather';
6-
import type { QRCodeProps } from 'react-qr-svg';
6+
import type { QRCodeSVG } from 'qrcode.react';
77

88
import type { SemTimetableConfig } from 'types/timetables';
99
import type { ModuleCode, Semester } from 'types/modules';
@@ -48,7 +48,7 @@ export const SHORT_URL_KEY = 'shorturl';
4848

4949
export default class ShareTimetable extends React.PureComponent<Props, State> {
5050
// React QR component is lazy loaded for performance
51-
static QRCode: React.ComponentType<QRCodeProps> | null;
51+
static QRCode: typeof QRCodeSVG | null;
5252

5353
// Save a copy of the current URL to detect when URL changes
5454
url: string | null = null;
@@ -63,8 +63,8 @@ export default class ShareTimetable extends React.PureComponent<Props, State> {
6363

6464
override componentDidMount() {
6565
if (!ShareTimetable.QRCode) {
66-
retryImport(() => import(/* webpackChunkName: "export" */ 'react-qr-svg')).then((module) => {
67-
ShareTimetable.QRCode = module.QRCode;
66+
retryImport(() => import(/* webpackChunkName: "export" */ 'qrcode.react')).then((module) => {
67+
ShareTimetable.QRCode = module.QRCodeSVG;
6868
this.forceUpdate();
6969
});
7070
}
@@ -167,7 +167,7 @@ export default class ShareTimetable extends React.PureComponent<Props, State> {
167167
<div className="col-sm-4">
168168
<h3 className={styles.shareHeading}>QR Code</h3>
169169
<div className={styles.qrCode}>
170-
{ShareTimetable.QRCode && <ShareTimetable.QRCode value={url} />}
170+
{ShareTimetable.QRCode && <ShareTimetable.QRCode size={172} value={url} />}
171171
</div>
172172
</div>
173173
<div className="col-sm-4">

website/yarn.lock

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9748,10 +9748,10 @@ q@^1.1.2:
97489748
resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
97499749
integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==
97509750

9751-
9752-
version "0.0.0"
9753-
resolved "https://registry.yarnpkg.com/qr.js/-/qr.js-0.0.0.tgz#cace86386f59a0db8050fa90d9b6b0e88a1e364f"
9754-
integrity sha512-c4iYnWb+k2E+vYpRimHqSu575b1/wKl4XFeJGpFmrJQz5I88v9aY2czh7s0w36srfCM1sXgC/xpoJz5dJfq+OQ==
9751+
9752+
version "4.1.0"
9753+
resolved "https://registry.yarnpkg.com/qrcode.react/-/qrcode.react-4.1.0.tgz#ff15dc9edb135f735bb303a8356938c1e8dcc4c8"
9754+
integrity sha512-uqXVIIVD/IPgWLYxbOczCNAQw80XCM/LulYDADF+g2xDsPj5OoRwSWtIS4jGyp295wyjKstfG1qIv/I2/rNWpQ==
97559755

97569756
97579757
version "6.13.0"
@@ -10036,14 +10036,6 @@ [email protected]:
1003610036
react-lifecycles-compat "^3.0.0"
1003710037
warning "^4.0.3"
1003810038

10039-
10040-
version "2.4.0"
10041-
resolved "https://registry.yarnpkg.com/react-qr-svg/-/react-qr-svg-2.4.0.tgz#c703d95907b9713192730a5bbeffb57e4aa782bd"
10042-
integrity sha512-3Q/LyjBi+eWjJ0WyZvBzyY3rCMlUBZyRnbTcKbXQ39J1bd0/vgqYhXoYai7XlDTS42Ro50BBY4TmeUVyIZh+nA==
10043-
dependencies:
10044-
prop-types "^15.5.8"
10045-
qr.js "0.0.0"
10046-
1004710039
[email protected], react-redux@^7.2.0:
1004810040
version "7.2.9"
1004910041
resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-7.2.9.tgz#09488fbb9416a4efe3735b7235055442b042481d"

0 commit comments

Comments
 (0)