diff --git a/.gitignore b/.gitignore index c0e97b222..05a3be7da 100644 --- a/.gitignore +++ b/.gitignore @@ -55,3 +55,4 @@ public/workbox-*.js /src/generated/prisma +.neon diff --git a/eslint-report.json b/eslint-report.json index 8b66f2276..fd61c103b 100644 --- a/eslint-report.json +++ b/eslint-report.json @@ -1 +1 @@ -[{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/@types/assets/index.d.ts","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/@types/react-modal-video/index.d.ts","messages":[],"suppressedMessages":[{"ruleId":"react/prefer-stateless-function","severity":2,"message":"Component should be written as a pure function","line":5,"column":20,"nodeType":"ClassDeclaration","messageId":"componentShouldBePure","endLine":5,"endColumn":80,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"@typescript-eslint/no-explicit-any","severity":1,"message":"Unexpected any. Specify a different type.","line":5,"column":73,"nodeType":"TSAnyKeyword","messageId":"unexpectedAny","endLine":5,"endColumn":76,"suggestions":[{"messageId":"suggestUnknown","fix":{"range":[276,279],"text":"unknown"},"desc":"Use `unknown` instead, this will force you to explicitly, and safely assert the type is correct."},{"messageId":"suggestNever","fix":{"range":[276,279],"text":"never"},"desc":"Use `never` instead, this is useful when instantiating generic type parameters that you don't need to know the type of."}],"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/assets/lib/utils.ts","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/EmojiRain/index.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-card/blog-01.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-card/blog-02.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-card/blog-03.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-card/blog-04.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-card/blog-05.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-card/blog-06.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-meta/author.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-meta/meta-item.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/blog-meta/tags.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/breadcrumb/index.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/code-editor/index.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/common/text-block.tsx","messages":[],"suppressedMessages":[{"ruleId":"react/no-array-index-key","severity":2,"message":"Do not use Array index in keys","line":47,"column":25,"nodeType":"TemplateLiteral","messageId":"noArrayIndex","endLine":47,"endColumn":37,"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/common/thank-you-block.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/course-card/course-01.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/course-card/course-02.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/course-card/course-03.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/course-card/course-04.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/disqus-comment/index.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/event-card/event-01.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/event-card/event-02.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/forms/apply-form.tsx","messages":[{"ruleId":"complexity","severity":1,"message":"Arrow function has a complexity of 22. Maximum allowed is 10.","line":35,"column":19,"nodeType":"ArrowFunctionExpression","messageId":"complex","endLine":382,"endColumn":2}],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"import EmojiRain from \"@components/EmojiRain\";\nimport { useState } from \"react\";\nimport { useForm, SubmitHandler } from \"react-hook-form\";\nimport axios from \"axios\";\nimport Input from \"@ui/form-elements/input\";\nimport Checkbox from \"@ui/form-elements/checkbox\";\nimport TextArea from \"@ui/form-elements/textarea\";\nimport Button from \"@ui/button\";\nimport { hasKey } from \"@utils/methods\";\nimport Feedback from \"@ui/form-elements/feedback\";\nimport { linkedinRegex, githubRegex } from \"@utils/formValidations\";\nimport { motion } from \"motion/react\";\n\ninterface IFormValues {\n firstName: string;\n lastName: string;\n email: string;\n city: string;\n state: string;\n zipCode: string;\n country: string;\n branchOfService: string;\n yearJoined: string;\n yearSeparated: string;\n hasAttendedPreviousCourse: boolean;\n previousCourses: string;\n willAttendAnotherCourse: boolean;\n otherCourses: string;\n linkedInAccountName: string;\n githubAccountName: string;\n preworkLink: string;\n preworkRepo: string;\n}\n\nconst ApplyForm = () => {\n const [message, setMessage] = useState(\"\");\n const [showEmojiRain, setShowEmojiRain] = useState(false);\n\n const {\n register,\n handleSubmit,\n formState: { errors },\n reset,\n watch,\n } = useForm();\n\n const watchHasAttendedPreviousCourses = watch(\"hasAttendedPreviousCourse\", false);\n const watchWillAttendAnotherCourse = watch(\"willAttendAnotherCourse\", false);\n\n const onSubmit: SubmitHandler = async (data) => {\n try {\n await axios.post(\"/api/apply\", data);\n setMessage(\"Thank you for your application!\");\n setShowEmojiRain(true);\n\n // Optional: Hide the EmojiRain after a set duration\n setTimeout(() => setShowEmojiRain(false), 5000); // Adjust duration as necessary\n reset();\n } catch (error) {\n setMessage(\"Failed to submit the form. Please try again later.\");\n }\n };\n\n return (\n
\n

Apply

\n {message &&

{message}

}\n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n \n
\n {watchHasAttendedPreviousCourses && (\n \n \n \n \n )}\n \n \n
\n
\n {watchWillAttendAnotherCourse && (\n \n \n \n \n )}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n Apply\n \n {message && {message}}\n {showEmojiRain && }\n \n \n
\n );\n};\n\nexport default ApplyForm;\n","usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/forms/contact-form.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/forms/donate-form.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/forms/login-form.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/forms/mentor-form.tsx","messages":[{"ruleId":"complexity","severity":1,"message":"Arrow function has a complexity of 20. Maximum allowed is 10.","line":32,"column":26,"nodeType":"ArrowFunctionExpression","messageId":"complex","endLine":314,"endColumn":2},{"ruleId":"@typescript-eslint/no-explicit-any","severity":1,"message":"Unexpected any. Specify a different type.","line":205,"column":71,"nodeType":"TSAnyKeyword","messageId":"unexpectedAny","endLine":205,"endColumn":74,"suggestions":[{"messageId":"suggestUnknown","fix":{"range":[8526,8529],"text":"unknown"},"desc":"Use `unknown` instead, this will force you to explicitly, and safely assert the type is correct."},{"messageId":"suggestNever","fix":{"range":[8526,8529],"text":"never"},"desc":"Use `never` instead, this is useful when instantiating generic type parameters that you don't need to know the type of."}]},{"ruleId":"@typescript-eslint/no-explicit-any","severity":1,"message":"Unexpected any. Specify a different type.","line":230,"column":73,"nodeType":"TSAnyKeyword","messageId":"unexpectedAny","endLine":230,"endColumn":76,"suggestions":[{"messageId":"suggestUnknown","fix":{"range":[9849,9852],"text":"unknown"},"desc":"Use `unknown` instead, this will force you to explicitly, and safely assert the type is correct."},{"messageId":"suggestNever","fix":{"range":[9849,9852],"text":"never"},"desc":"Use `never` instead, this is useful when instantiating generic type parameters that you don't need to know the type of."}]},{"ruleId":"@typescript-eslint/no-explicit-any","severity":1,"message":"Unexpected any. Specify a different type.","line":255,"column":66,"nodeType":"TSAnyKeyword","messageId":"unexpectedAny","endLine":255,"endColumn":69,"suggestions":[{"messageId":"suggestUnknown","fix":{"range":[11113,11116],"text":"unknown"},"desc":"Use `unknown` instead, this will force you to explicitly, and safely assert the type is correct."},{"messageId":"suggestNever","fix":{"range":[11113,11116],"text":"never"},"desc":"Use `never` instead, this is useful when instantiating generic type parameters that you don't need to know the type of."}]},{"ruleId":"@typescript-eslint/no-explicit-any","severity":1,"message":"Unexpected any. Specify a different type.","line":274,"column":64,"nodeType":"TSAnyKeyword","messageId":"unexpectedAny","endLine":274,"endColumn":67,"suggestions":[{"messageId":"suggestUnknown","fix":{"range":[12209,12212],"text":"unknown"},"desc":"Use `unknown` instead, this will force you to explicitly, and safely assert the type is correct."},{"messageId":"suggestNever","fix":{"range":[12209,12212],"text":"never"},"desc":"Use `never` instead, this is useful when instantiating generic type parameters that you don't need to know the type of."}]},{"ruleId":"@typescript-eslint/no-explicit-any","severity":1,"message":"Unexpected any. Specify a different type.","line":294,"column":64,"nodeType":"TSAnyKeyword","messageId":"unexpectedAny","endLine":294,"endColumn":67,"suggestions":[{"messageId":"suggestUnknown","fix":{"range":[13340,13343],"text":"unknown"},"desc":"Use `unknown` instead, this will force you to explicitly, and safely assert the type is correct."},{"messageId":"suggestNever","fix":{"range":[13340,13343],"text":"never"},"desc":"Use `never` instead, this is useful when instantiating generic type parameters that you don't need to know the type of."}]}],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"import EmojiRain from \"@components/EmojiRain\";\nimport { useState } from \"react\";\nimport { useForm, SubmitHandler, FieldErrors } from \"react-hook-form\";\nimport axios from \"axios\";\nimport Input from \"@ui/form-elements/input\";\nimport Button from \"@ui/button\";\nimport { hasKey } from \"@utils/methods\";\nimport Feedback from \"@ui/form-elements/feedback\";\nimport { validateProfileLink } from \"@utils/formValidations\";\n\ninterface IBaseFormValues {\n name: string;\n email: string;\n \"branch-of-service\": string;\n \"github-portfolio-or-linkedin\": string;\n location: string;\n}\n\ninterface IMentorFormValues extends IBaseFormValues {\n \"technical-expertise\": string;\n \"employer-restrictions\": string;\n}\n\ninterface IMenteeFormValues extends IBaseFormValues {\n \"desired-skills\": string;\n \"career-goals\": string;\n availability: string;\n}\n\ntype IFormValues = IMentorFormValues | IMenteeFormValues;\n\nconst MentorMenteeForm = () => {\n const [message, setMessage] = useState(\"\");\n const [showEmojiRain, setShowEmojiRain] = useState(false);\n const [role, setRole] = useState<\"mentor\" | \"mentee\">(\"mentor\");\n\n const {\n register,\n handleSubmit,\n formState: { errors },\n reset,\n } = useForm();\n\n const onSubmit: SubmitHandler = async (data) => {\n try {\n // Add the role to the data\n const submissionData = {\n ...data,\n role,\n };\n\n // Use the same endpoint for both mentors and mentees\n const endpoint = role === \"mentor\" ? \"/api/mentor\" : \"/api/mentee\";\n await axios.post(endpoint, submissionData);\n\n setMessage(`Thank you for registering as a ${role}!`);\n setShowEmojiRain(true);\n\n setTimeout(() => setShowEmojiRain(false), 5000);\n\n reset();\n } catch (error) {\n setMessage(\"Failed to submit the form. Please try again later.\");\n }\n };\n\n const handleRoleChange = (newRole: \"mentor\" | \"mentee\") => {\n setRole(newRole);\n // Clear form when switching roles\n reset();\n };\n\n return (\n
\n

Register

\n\n {/* Role selection */}\n
\n handleRoleChange(\"mentor\")}\n className={`tw-flex-1 ${role === \"mentor\" ? \"\" : \"tw-bg-gray-300 tw-text-gray-700\"}`}\n >\n Register as Mentor\n \n handleRoleChange(\"mentee\")}\n className={`tw-flex-1 ${role === \"mentee\" ? \"\" : \"tw-bg-gray-300 tw-text-gray-700\"}`}\n >\n Register as Mentee\n \n
\n\n
\n {/* Common Fields for Both Roles */}\n
\n \n \n
\n
\n \n \n
\n
\n \n \n
\n
\n \n GitHub Portfolio or LinkedIn *\n \n \n
\n
\n \n \n
\n\n {/* Mentor-Specific Fields */}\n {role === \"mentor\" && (\n <>\n
\n \n Technical Expertise *\n \n )?.[\n \"technical-expertise\"\n ]?.message\n }\n state={hasKey(errors, \"technical-expertise\") ? \"error\" : \"success\"}\n showState={!!hasKey(errors, \"technical-expertise\")}\n {...register(\"technical-expertise\" as any, {\n required: \"Technical Expertise is required\",\n })}\n />\n
\n
\n \n Employer Restrictions *\n \n )?.[\n \"employer-restrictions\"\n ]?.message\n }\n state={\n hasKey(errors, \"employer-restrictions\") ? \"error\" : \"success\"\n }\n showState={!!hasKey(errors, \"employer-restrictions\")}\n {...register(\"employer-restrictions\" as any, {\n required: \"Employer Restrictions is required\",\n })}\n />\n
\n \n )}\n\n {/* Mentee-Specific Fields */}\n {role === \"mentee\" && (\n <>\n
\n \n )?.[\"desired-skills\"]\n ?.message\n }\n state={hasKey(errors, \"desired-skills\") ? \"error\" : \"success\"}\n showState={!!hasKey(errors, \"desired-skills\")}\n {...register(\"desired-skills\" as any, {\n required: \"Desired Skills is required\",\n })}\n />\n
\n
\n \n )?.[\"career-goals\"]\n ?.message\n }\n state={hasKey(errors, \"career-goals\") ? \"error\" : \"success\"}\n showState={!!hasKey(errors, \"career-goals\")}\n {...register(\"career-goals\" as any, {\n required: \"Career Goals is required\",\n })}\n />\n
\n
\n \n \n
\n \n )}\n\n \n Register as {role === \"mentor\" ? \"Mentor\" : \"Mentee\"}\n \n {message && {message}}\n {showEmojiRain && }\n \n
\n );\n};\n\nexport default MentorMenteeForm;\n","usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/forms/newsletter-form.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/funfact/funfact-01.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/funfact/funfact-02.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/game/AnswerButtons.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/game/FactDisplay.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/game/GameArea.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/game/PlayerSetup.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/game/ScoreBoard.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/gradation/index.tsx","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"lines-around-directive","replacedBy":["padding-line-between-statements"]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"global-require","replacedBy":[]},{"ruleId":"no-buffer-constructor","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-path-concat","replacedBy":[]}]},{"filePath":"/Users/jeromehardaway/work/vetswhocode/vets-who-code-app/src/components/html-content/index.tsx","messages":[{"ruleId":"complexity","severity":1,"message":"Arrow function has a complexity of 16. Maximum allowed is 10.","line":38,"column":23,"nodeType":"ArrowFunctionExpression","messageId":"complex","endLine":63,"endColumn":14}],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"import clsx from \"clsx\";\nimport { IContent, ListContentType } from \"@utils/types\";\n\ntype TProps = {\n body: IContent[];\n className?: string;\n};\n\nconst HTMLContent = ({ body, className }: TProps) => {\n const generateList = (\n type: \"list\" | \"order-list\",\n content: ListContentType[] | string[],\n key: string | number\n ) => {\n const Type = type === \"list\" ? \"ul\" : \"ol\";\n return (\n \n {content.map((item) => {\n if (typeof item === \"string\") {\n return
  • {item}
  • ;\n }\n return (\n
  • \n {item.text} {generateList(item.type, item.content, `item-${item.text}`)}\n
  • \n );\n })}\n
    \n );\n };\n return (\n \n {body.map(({ id, type, content }) => {\n if (type === \"text\" && typeof content === \"string\") {\n return

    ;\n }\n if (\n (type === \"h3\" || type === \"h4\" || type === \"h5\" || type === \"blockquote\") &&\n typeof content === \"string\"\n ) {\n const Tag = type;\n return ;\n }\n\n if ((type === \"order-list\" || type === \"list\") && Array.isArray(content)) {\n return generateList(type, content, id);\n }\n if (\n type === \"iframe\" &&\n typeof content === \"object\" &&\n !Array.isArray(content) &&\n content.src\n ) {\n return