Skip to content

Commit 7250cb8

Browse files
authored
Merge pull request #213 from wingkwong/feat/nanoid
feat: nanoid
2 parents e40ffd7 + d9bc8bf commit 7250cb8

File tree

3 files changed

+34
-29
lines changed

3 files changed

+34
-29
lines changed

package-lock.json

Lines changed: 25 additions & 20 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@
3131
"@rollup/plugin-replace": "^5.0.5",
3232
"@rollup/plugin-terser": "^0.4.4",
3333
"babel-loader": "^9.1.3",
34+
"css-loader": "^6.0.0",
35+
"css-minimizer-webpack-plugin": "^6.0.0",
3436
"eslint": "^8.4.1",
3537
"eslint-config-airbnb": "^19.0.2",
3638
"eslint-plugin-import": "^2.25.3",
@@ -39,16 +41,14 @@
3941
"eslint-plugin-react-hooks": "^4.3.0",
4042
"html-webpack-plugin": "5.6.0",
4143
"mini-css-extract-plugin": "^2.7.6",
42-
"css-minimizer-webpack-plugin": "^6.0.0",
4344
"prop-types": "^15.7.2",
4445
"rollup": "^4.3.0",
4546
"rollup-plugin-peer-deps-external": "^2.2.4",
4647
"rollup-plugin-postcss": "^4.0.2",
4748
"terser-webpack-plugin": "^5.3.9",
4849
"webpack": "^5.69.1",
4950
"webpack-cli": "^4.9.2",
50-
"webpack-dev-server": "^4.7.4",
51-
"css-loader": "^6.0.0"
51+
"webpack-dev-server": "^4.7.4"
5252
},
5353
"author": "WK Wong <wingkwong.code@gmail.com>",
5454
"homepage": "https://github.com/wingkwong/react-quiz-component",
@@ -58,9 +58,9 @@
5858
},
5959
"dependencies": {
6060
"dompurify": "^3.0.0",
61+
"nanoid": "^5.0.5",
6162
"react": "^18.2.0",
6263
"react-dom": "^18.2.0",
63-
"snarkdown": "^2.0.0",
64-
"uuid": "^9.0.1"
64+
"snarkdown": "^2.0.0"
6565
}
6666
}

src/lib/Core.jsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import React, {
22
useState, useEffect, useCallback, Fragment,
33
} from 'react';
4-
import { v4 as uuidv4 } from 'uuid';
4+
import { nanoid } from 'nanoid';
55
import QuizResultFilter from './core-components/QuizResultFilter';
66
import { checkAnswer, selectAnswer, rawMarkup } from './core-components/helpers';
77
import InstantFeedback from './core-components/InstantFeedback';
@@ -147,7 +147,7 @@ function Core({
147147
}
148148

149149
return (
150-
<div key={uuidv4()}>
150+
<div key={nanoid()}>
151151
<button
152152
type="button"
153153
disabled
@@ -222,7 +222,7 @@ function Core({
222222
const answerSelectionType = question.answerSelectionType || 'single';
223223

224224
return (
225-
<div className="result-answer-wrapper" key={uuidv4()}>
225+
<div className="result-answer-wrapper" key={nanoid()}>
226226
<h3
227227
dangerouslySetInnerHTML={rawMarkup(
228228
`Q${question.questionIndex}: ${
@@ -296,7 +296,7 @@ function Core({
296296
answerSelectionType = answerSelectionType || 'single';
297297

298298
return answers.map((answer, index) => (
299-
<Fragment key={uuidv4()}>
299+
<Fragment key={nanoid()}>
300300
{(answerButtons[index] !== undefined)
301301
? (
302302
<button

0 commit comments

Comments
 (0)