@@ -94,7 +94,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
9494 ...prev ,
9595 selectionProcedure : {
9696 ...prev . selectionProcedure ,
97- tests : [ ...( prev . selectionProcedure . tests || [ ] ) , newTest ] ,
97+ tests : [ ...( prev . selectionProcedure ? .tests || [ ] ) , newTest ] ,
9898 } ,
9999 } ) ) ;
100100 } ;
@@ -104,7 +104,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
104104 ...prev ,
105105 selectionProcedure : {
106106 ...prev . selectionProcedure ,
107- tests : prev . selectionProcedure . tests . filter ( ( _ , i ) => i !== index ) ,
107+ tests : ( prev . selectionProcedure ? .tests ?? [ ] ) . filter ( ( _ , i ) => i !== index ) ,
108108 } ,
109109 } ) ) ;
110110 } ;
@@ -116,7 +116,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
116116 selectionProcedure : {
117117 ...prev . selectionProcedure ,
118118 interviews : [
119- ...( prev . selectionProcedure . interviews || [ ] ) ,
119+ ...( prev . selectionProcedure ? .interviews || [ ] ) ,
120120 newInterview ,
121121 ] ,
122122 } ,
@@ -128,9 +128,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
128128 ...prev ,
129129 selectionProcedure : {
130130 ...prev . selectionProcedure ,
131- interviews : prev . selectionProcedure . interviews . filter (
132- ( _ , i ) => i !== index ,
133- ) ,
131+ interviews : ( prev . selectionProcedure ?. interviews ?? [ ] ) . filter ( ( _ , i ) => i !== index ) ,
134132 } ,
135133 } ) ) ;
136134 } ;
@@ -337,7 +335,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
337335 < div className = "font-semibold my-2" > Selection mode</ div > { " " }
338336 { editMode ? (
339337 < select
340- value = { formData . selectionProcedure . selectionMode }
338+ value = { formData . selectionProcedure ? .selectionMode }
341339 onChange = { ( e ) => {
342340 setFormData ( ( prev ) => ( {
343341 ...prev ,
@@ -353,7 +351,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
353351 < option > HYBRID</ option >
354352 </ select >
355353 ) : (
356- < div > { job . selectionProcedure . selectionMode } </ div >
354+ < div > { job . selectionProcedure ? .selectionMode } </ div >
357355 ) }
358356 </ div >
359357 < div >
@@ -362,7 +360,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
362360 < input
363361 type = "checkbox"
364362 name = "shortlistFromResume"
365- checked = { formData . selectionProcedure . shortlistFromResume }
363+ checked = { formData . selectionProcedure ? .shortlistFromResume }
366364 onChange = { ( e ) => {
367365 setFormData ( ( prev ) => ( {
368366 ...prev ,
@@ -375,7 +373,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
375373 />
376374 ) : (
377375 < div >
378- { job . selectionProcedure . shortlistFromResume ? "YES" : "NO" }
376+ { job . selectionProcedure ? .shortlistFromResume ? "YES" : "NO" }
379377 </ div >
380378 ) }
381379 </ div >
@@ -385,7 +383,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
385383 < input
386384 type = "checkbox"
387385 name = "groupDiscussion"
388- checked = { formData . selectionProcedure . groupDiscussion }
386+ checked = { formData . selectionProcedure ? .groupDiscussion }
389387 onChange = { ( e ) => {
390388 setFormData ( ( prev ) => ( {
391389 ...prev ,
@@ -398,7 +396,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
398396 />
399397 ) : (
400398 < div >
401- { job . selectionProcedure . groupDiscussion ? "YES" : "NO" }
399+ { job . selectionProcedure ? .groupDiscussion ? "YES" : "NO" }
402400 </ div >
403401 ) }
404402 </ div >
@@ -409,7 +407,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
409407 type = "number"
410408 name = "numberOfMembers"
411409 value = {
412- formData . selectionProcedure . requirements
410+ formData . selectionProcedure ? .requirements
413411 ?. numberOfMembers || ""
414412 }
415413 onChange = { ( e ) => {
@@ -418,7 +416,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
418416 selectionProcedure : {
419417 ...prev . selectionProcedure ,
420418 requirements : {
421- ...( prev . selectionProcedure . requirements || { } ) ,
419+ ...( prev . selectionProcedure ? .requirements || { } ) ,
422420 numberOfMembers : e . target . value ,
423421 } ,
424422 } ,
@@ -427,7 +425,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
427425 />
428426 ) : (
429427 < div >
430- { job . selectionProcedure . requirements ?. numberOfMembers ||
428+ { job . selectionProcedure ? .requirements ?. numberOfMembers ||
431429 "N/A" }
432430 </ div >
433431 ) }
@@ -438,7 +436,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
438436 < div className = "font-semibold bg-gray-200" > Tests</ div >
439437 < ul className = "list-disc capitalize" >
440438 { editMode
441- ? ( formData . selectionProcedure . tests || [ ] ) . map (
439+ ? ( formData . selectionProcedure ? .tests || [ ] ) . map (
442440 ( test , index ) => (
443441 < li
444442 key = { index }
@@ -464,7 +462,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
464462 value = { test . type || "" }
465463 onChange = { ( e ) => {
466464 const updatedTests =
467- formData . selectionProcedure . tests . map (
465+ formData . selectionProcedure ? .tests . map (
468466 ( t , i ) =>
469467 i === index
470468 ? { ...t , type : e . target . value }
@@ -496,7 +494,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
496494 value = { test . duration || "" }
497495 onChange = { ( e ) => {
498496 const updatedTests =
499- formData . selectionProcedure . tests . map (
497+ formData . selectionProcedure ? .tests . map (
500498 ( t , i ) =>
501499 i === index
502500 ? { ...t , duration : e . target . value }
@@ -515,7 +513,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
515513 </ li >
516514 ) ,
517515 )
518- : ( job . selectionProcedure . tests || [ ] ) . map (
516+ : ( job . selectionProcedure ? .tests || [ ] ) . map (
519517 ( test , index ) => (
520518 < li key = { index } className = "my-2" >
521519 < div >
@@ -541,7 +539,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
541539 < div className = "font-semibold bg-gray-200" > Interviews</ div >
542540 < ul className = "list-disc capitalize" >
543541 { editMode
544- ? ( formData . selectionProcedure . interviews || [ ] ) . map (
542+ ? ( formData . selectionProcedure ? .interviews || [ ] ) . map (
545543 ( interview , index ) => (
546544 < li
547545 key = { index }
@@ -567,7 +565,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
567565 value = { interview . type || "" }
568566 onChange = { ( e ) => {
569567 const updatedInterviews =
570- formData . selectionProcedure . interviews . map (
568+ formData . selectionProcedure ? .interviews . map (
571569 ( i , j ) =>
572570 j === index
573571 ? { ...i , type : e . target . value }
@@ -601,7 +599,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
601599 value = { interview . duration || "" }
602600 onChange = { ( e ) => {
603601 const updatedInterviews =
604- formData . selectionProcedure . interviews . map (
602+ formData . selectionProcedure ? .interviews . map (
605603 ( i , j ) =>
606604 j === index
607605 ? { ...i , duration : e . target . value }
@@ -620,7 +618,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
620618 </ li >
621619 ) ,
622620 )
623- : ( job . selectionProcedure . interviews || [ ] ) . map (
621+ : ( job . selectionProcedure ? .interviews || [ ] ) . map (
624622 ( interview , index ) => (
625623 < li key = { index } className = "my-2" >
626624 < div >
@@ -649,7 +647,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
649647 type = "text"
650648 name = "otherRequirements"
651649 value = {
652- formData . selectionProcedure . requirements
650+ formData . selectionProcedure ? .requirements
653651 ?. otherRequirements || ""
654652 }
655653 onChange = { ( e ) => {
@@ -658,7 +656,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
658656 selectionProcedure : {
659657 ...prev . selectionProcedure ,
660658 requirements : {
661- ...( prev . selectionProcedure . requirements || { } ) ,
659+ ...( prev . selectionProcedure ? .requirements || { } ) ,
662660 otherRequirements : e . target . value ,
663661 } ,
664662 } ,
@@ -667,7 +665,7 @@ const JobDetailPage = ({ params }: { params: { jobID: string } }) => {
667665 />
668666 ) : (
669667 < div >
670- { job . selectionProcedure . requirements ?. otherRequirements ||
668+ { job . selectionProcedure ? .requirements ?. otherRequirements ||
671669 "N/A" }
672670 </ div >
673671 ) }
0 commit comments