Skip to content

Commit 5d4be78

Browse files
TCA-499 #comment This commit adds line breaks before chained methods #time 1h
1 parent 820dcbb commit 5d4be78

File tree

21 files changed

+121
-67
lines changed

21 files changed

+121
-67
lines changed

src-ts/.eslintrc.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,12 @@ module.exports = {
8383
'jsx-a11y/tabindex-no-positive': [
8484
'warn'
8585
],
86+
'newline-per-chained-call': [
87+
'error',
88+
{
89+
ignoreChainWithDepth: 1,
90+
}
91+
],
8692
'no-extra-boolean-cast': 'off',
8793
'no-null/no-null': 'error',
8894
'no-plusplus': [

src-ts/lib/contact-support-form/ContactSupportForm.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,8 @@ const ContactSupportForm: FC<ContactSupportFormProps> = (props: ContactSupportFo
5656
return contactSupportSubmitRequestAsync(request)
5757
.then(() => {
5858
setSaveOnSuccess(true)
59-
}).finally(() => setLoading(false))
59+
})
60+
.finally(() => setLoading(false))
6061
}, [])
6162

6263
const emailElement: JSX.Element | undefined = !!profile?.email

src-ts/lib/form/form-groups/form-card-set/FormCardSet.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,10 @@ const FormCardSet: React.FC<FormCardSetProps> = (props: FormCardSetProps) => {
2727
return <></>
2828
}
2929

30-
const iconName: string = `${icon.split('-').map((chunk: string) => chunk.charAt(0).toUpperCase() + chunk.slice(1)).join('')}Icon`
30+
const iconName: string = `${icon.split('-')
31+
.map((chunk: string) => chunk.charAt(0)
32+
.toUpperCase() + chunk.slice(1))
33+
.join('')}Icon`
3134
const IconComponent: React.FC<SVGProps<SVGSVGElement>> = IconOutline[iconName as keyof typeof IconOutline]
3235
return <IconComponent className={styles['card-row-icon']} />
3336
}

src-ts/lib/page-footer/PageFooter.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,8 @@ const PageFooter: FC<{}> = () => {
4848
<div>
4949
<span>
5050
©
51-
{(new Date()).getFullYear()}
51+
{(new Date())
52+
.getFullYear()}
5253
{' '}
5354
Topcoder
5455
</span>

src-ts/lib/route-provider/router.utils.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,6 @@ export type LazyLoadType = (
1414
* (while react's `lazy` method only allows to import default exports)
1515
*/
1616
export const lazyLoad: LazyLoadType = (moduleImport: () => Promise<any>, namedExport: string = 'default') => (
17-
lazy(() => moduleImport().then(m => ({ default: get(m, namedExport) })))
17+
lazy(() => moduleImport()
18+
.then(m => ({ default: get(m, namedExport) })))
1819
)

src-ts/tools/dev-center/dev-center-lib/MarkdownDoc/markdownRenderer/renderer.tsx

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -80,17 +80,18 @@ export class Renderer implements MarkdownRenderer {
8080
const children: ReturnType<typeof this.groupBy> = this.groupBy(
8181
nodes,
8282
options,
83-
).map(node => {
84-
if (Array.isArray(node)) {
85-
return (
86-
<MarkdownAccordion>
87-
{React.Children.map(node, child => child)}
88-
</MarkdownAccordion>
89-
)
90-
}
83+
)
84+
.map(node => {
85+
if (Array.isArray(node)) {
86+
return (
87+
<MarkdownAccordion>
88+
{React.Children.map(node, child => child)}
89+
</MarkdownAccordion>
90+
)
91+
}
9192

92-
return node
93-
})
93+
return node
94+
})
9495

9596
return (
9697
<div className={styles['markdown-doc']}>
@@ -287,7 +288,8 @@ export class Renderer implements MarkdownRenderer {
287288
const h: string = marked.parser([token], parserOptions)
288289
const level: number = token.depth
289290
const title: string = removeLineBreak(stripTag(h, `h${level}`))
290-
const headingId: string = extractId(h, `h${level}`, index).trim()
291+
const headingId: string = extractId(h, `h${level}`, index)
292+
.trim()
291293

292294
options.toc.push({
293295
headingId,
@@ -351,12 +353,14 @@ export class Renderer implements MarkdownRenderer {
351353
const tag: string = extractTag(html)
352354
if (tag) {
353355
const isParagraphTag: boolean = tag === MarkdownParagraphTag.p
354-
const isHeaderTag: boolean = Object.values(MarkdownHeaderTag).indexOf(tag as MarkdownHeaderTag) !== -1
356+
const isHeaderTag: boolean = Object.values(MarkdownHeaderTag)
357+
.indexOf(tag as MarkdownHeaderTag) !== -1
355358
if (isParagraphTag || isHeaderTag) {
356359
let id: string | undefined
357360
if (isHeaderTag) {
358361
token = token as marked.Tokens.Heading
359-
id = extractId(html, `h${token.depth}`, index).trim()
362+
id = extractId(html, `h${token.depth}`, index)
363+
.trim()
360364
}
361365

362366
return React.createElement(tag, {

src-ts/tools/dev-center/dev-center-lib/MarkdownDoc/markdownRenderer/util.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,11 @@ export function renderMarkdown(
3030
const matchStr: string = matches ? matches[0] : ''
3131
return matchStr
3232
? {
33-
s: fromStr.replace(matchStr, '').trimStart(),
34-
title: matchStr.replace(/^#/, '').replace(/`/g, '').trim(),
33+
s: fromStr.replace(matchStr, '')
34+
.trimStart(),
35+
title: matchStr.replace(/^#/, '')
36+
.replace(/`/g, '')
37+
.trim(),
3538
}
3639
: { title, s }
3740
}

src-ts/tools/dev-center/dev-center-pages/community-app/landing-page/dev-center-articles-section/CardSection/CardSection.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ const CardSection: FC = () => {
3333
return blog
3434
}
3535
}),
36-
).then(arr => setArticles(arr))
36+
)
37+
.then(arr => setArticles(arr))
3738
}, [])
3839

3940
const articleStyles: Array<any> = [

src-ts/tools/gamification-admin/pages/badge-detail/AwardedMembersTab/awarded-members-table/member-awardedAt-renderer/MemberAwaredAtRenderer.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@ const MemberAwaredAtRenderer = (memberAward: MemberBadgeAward): JSX.Element => {
1212
}
1313

1414
return (
15-
<div className={styles.memberAwardedAt}>{new Date(memberAward.awarded_at).toLocaleString(undefined, dateFormat)}</div>
15+
<div className={styles.memberAwardedAt}>
16+
{new Date(memberAward.awarded_at)
17+
.toLocaleString(undefined, dateFormat)}
18+
</div>
1619
)
1720
}
1821

src-ts/tools/gamification-admin/pages/badge-detail/badge-details.functions.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ export async function submitRequestAsync(request: UpdateBadgeRequest): Promise<G
1313
export function generateCSV(input: Array<Array<string | number>>): string {
1414
input.unshift(GamificationConfig.CSV_HEADER)
1515

16-
return input.map(row => row.join(',')).join('\n')
16+
return input.map(row => row.join(','))
17+
.join('\n')
1718
}
1819

1920
export async function manualAssignRequestAsync(csv: string): Promise<any> {

src-ts/tools/learn/course-certificate/certificate-view/CertificateView.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,8 @@ const CertificateView: FC<CertificateViewProps> = (props: CertificateViewProps)
4747
const certificateWrapRef: MutableRefObject<HTMLElement | any> = useRef()
4848

4949
const userName: string = useMemo(() => (
50-
[props.profile.firstName, props.profile.lastName].filter(Boolean).join(' ')
50+
[props.profile.firstName, props.profile.lastName].filter(Boolean)
51+
.join(' ')
5152
|| props.profile.handle
5253
), [props.profile.firstName, props.profile.handle, props.profile.lastName])
5354

src-ts/tools/learn/free-code-camp/FreeCodeCamp.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,9 @@ const FreeCodeCamp: FC<{}> = () => {
157157

158158
function handleFccLessonReady(lessonPath: string): void {
159159

160-
const [nLessonPath, modulePath, coursePath]: Array<string> = lessonPath.replace(/\/$/, '').split('/').reverse()
160+
const [nLessonPath, modulePath, coursePath]: Array<string> = lessonPath.replace(/\/$/, '')
161+
.split('/')
162+
.reverse()
161163
updatePath(nLessonPath, modulePath, coursePath)
162164

163165
const currentLesson: { [key: string]: string } = {
@@ -206,7 +208,8 @@ const FreeCodeCamp: FC<{}> = () => {
206208
certificateProgress.id,
207209
UserCertificationUpdateProgressActions.completeLesson,
208210
currentLesson,
209-
).then(setCertificateProgress)
211+
)
212+
.then(setCertificateProgress)
210213
}
211214
}
212215

src-ts/tools/learn/learn-lib/lesson-provider/lesson.provider.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@ export function useLessonProvider(
5757
courseData?.key ?? course,
5858
module,
5959
lesson,
60-
].filter(Boolean).join('/')
60+
].filter(Boolean)
61+
.join('/')
6162

6263
setState(prevState => ({
6364
...prevState,

src-ts/tools/learn/learn-lib/resource-provider-provider/resource-provider.provider.tsx

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,15 @@ export function useResourceProvider(providerName?: string): ResourceProviderData
2929
loading: true,
3030
}))
3131

32-
getResourceProvidersAsync().then(providers => {
33-
setState(prevState => ({
34-
...prevState,
35-
loading: false,
36-
provider: providers?.find(p => p.name === providerName),
37-
ready: true,
38-
}))
39-
})
32+
getResourceProvidersAsync()
33+
.then(providers => {
34+
setState(prevState => ({
35+
...prevState,
36+
loading: false,
37+
provider: providers?.find(p => p.name === providerName),
38+
ready: true,
39+
}))
40+
})
4041
}, [providerName])
4142

4243
return state

src-ts/tools/learn/my-learning/tab-content-layout/TabContentLayout.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,12 @@ const TabContentLayout: FC<TabContentLayoutProps> = (props: TabContentLayoutProp
3737
const certsByCategory: Dictionary<Array<LearnCertification>> = groupBy(props.certifications, 'category')
3838
return [
3939
{ label: 'All Categories', value: '' },
40-
...Object.keys(certsByCategory).sort().map(c => ({
41-
label: c,
42-
value: c,
43-
})),
40+
...Object.keys(certsByCategory)
41+
.sort()
42+
.map(c => ({
43+
label: c,
44+
value: c,
45+
})),
4446
]
4547
}, [props.certifications])
4648

src-ts/tools/learn/welcome/available-courses-list/AvailableCoursesList.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,12 @@ const AvailableCoursesList: FC<AvailableCoursesListProps> = (props: AvailableCou
3535
value: string,
3636
}> = useMemo(() => [
3737
{ label: 'All Categories', orderIndex: -1, value: '' },
38-
...Object.keys(certsByCategory).sort().map(c => ({
39-
label: c,
40-
value: c,
41-
})),
38+
...Object.keys(certsByCategory)
39+
.sort()
40+
.map(c => ({
41+
label: c,
42+
value: c,
43+
})),
4244
], [certsByCategory])
4345

4446
// create and sort the certificates groups

src-ts/tools/learn/welcome/progress-block/cards-slider/CardsSlider.tsx

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,15 @@ const CardsSlider: FC<CardsSliderProps> = (props: CardsSliderProps) => {
3535
{renderSlides(props.children)}
3636
</div>
3737
<div className={styles['nav-wrap']}>
38-
{fill(Array(props.children.length), '').map((_, i) => (
39-
<span
38+
{fill(Array(props.children.length), '')
39+
.map((_, i) => (
40+
<span
4041
// eslint-disable-next-line react/no-array-index-key
41-
key={i}
42-
className={classNames(styles['nav-dot'], activeSlide === i && 'active')}
43-
onClick={() => setActiveSlide(i)}
44-
/>
45-
))}
42+
key={i}
43+
className={classNames(styles['nav-dot'], activeSlide === i && 'active')}
44+
onClick={() => setActiveSlide(i)}
45+
/>
46+
))}
4647
</div>
4748
</div>
4849
)

src-ts/tools/learn/welcome/progress-block/progress-action/ProgressAction.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,8 @@ const ProgressAction: FC<ProgressActionProps> = (props: ProgressActionProps) =>
5151
const recentlyUpdatedCertifications: Array<LearnUserCertificationProgress> = orderBy([
5252
...props.userCompletedCertifications,
5353
...props.userInProgressCertifications,
54-
], 'updatedAt', 'desc').slice(0, USER_PROGRESS_MAX_SLIDES_COUNT)
54+
], 'updatedAt', 'desc')
55+
.slice(0, USER_PROGRESS_MAX_SLIDES_COUNT)
5556

5657
function renderInProgress(courseToDisplay: UserCertificationInProgress): JSX.Element {
5758
return (

src-ts/tools/work/work-detail-solutions/work-solutions-list/WorkSolutionsList.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ const WorkSolutionsList: FC<WorkSolutionsListProps> = (props: WorkSolutionsListP
2020
<div className={styles['solutions-not-available']}>
2121
YOUR SOLUTIONS WILL BE AVAILABLE FOR DOWNLOAD ON:
2222
<br />
23-
{moment(props.work.solutionsReadyDate).format('MM/DD/YY')}
23+
{moment(props.work.solutionsReadyDate)
24+
.format('MM/DD/YY')}
2425
</div>
2526
)
2627
}

src-ts/tools/work/work-lib/work-provider/work-functions/work-factory/work.factory.ts

Lines changed: 29 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -146,12 +146,13 @@ export function buildUpdateRequest(workTypeConfig: WorkTypeConfig, challenge: Ch
146146
},
147147
]
148148

149-
Object.keys(formData).forEach(key => {
150-
intakeMetadata.push({
151-
name: ChallengeMetadataName[key as keyof typeof ChallengeMetadataName],
152-
value: formData[key] || '',
149+
Object.keys(formData)
150+
.forEach(key => {
151+
intakeMetadata.push({
152+
name: ChallengeMetadataName[key as keyof typeof ChallengeMetadataName],
153+
value: formData[key] || '',
154+
})
153155
})
154-
})
155156
// ---- End Build Metadata ---- //
156157

157158
// --- Build the Markdown string that gets displayed in Work Manager app and others --- //
@@ -433,7 +434,8 @@ function checkFormDataOptionEmpty(detail: any): boolean {
433434
|| (typeof detail === 'string' && detail.trim().length === 0)
434435
|| (Array.isArray(detail) && detail.length === 0)
435436
|| (typeof detail === 'object'
436-
&& Object.values(detail).filter((val: any) => val && val.trim().length !== 0)
437+
&& Object.values(detail)
438+
.filter((val: any) => val && val.trim().length !== 0)
437439
.length === 0)
438440
)
439441
}
@@ -446,7 +448,9 @@ function findOpenPhase(challenge: Challenge): ChallengePhase | undefined {
446448

447449
// sort the phases descending by start date
448450
const sortedPhases: Array<ChallengePhase> = challenge.phases
449-
.sort((a, b) => new Date(b.actualStartDate).getTime() - new Date(a.actualStartDate).getTime())
451+
.sort((a, b) => new Date(b.actualStartDate)
452+
.getTime() - new Date(a.actualStartDate)
453+
.getTime())
450454

451455
const now: Date = new Date()
452456
// if we have an open phase, just use that
@@ -624,7 +628,8 @@ function getProgressStepDateEnd(challenge: Challenge, phases: Array<string>): Da
624628
return undefined
625629
}
626630

627-
if (phase.isOpen || moment(phase.scheduledStartDate).isAfter()) {
631+
if (phase.isOpen || moment(phase.scheduledStartDate)
632+
.isAfter()) {
628633
return new Date(phase.scheduledEndDate)
629634
}
630635

@@ -638,7 +643,8 @@ function getProgressStepDateStart(challenge: Challenge, phases: Array<string>):
638643
return undefined
639644
}
640645

641-
if (!phase.isOpen || moment(phase.scheduledStartDate).isAfter()) {
646+
if (!phase.isOpen || moment(phase.scheduledStartDate)
647+
.isAfter()) {
642648
return new Date(phase.scheduledStartDate)
643649
}
644650

@@ -651,21 +657,30 @@ function getSolutionsReadyDate(challenge: Challenge): Date | undefined {
651657

652658
function getStartDate(): string {
653659
let daysToAdd: number = 1
654-
switch (moment(new Date()).weekday()) {
655-
case moment().day('Friday').weekday():
660+
switch (moment(new Date())
661+
.weekday()) {
662+
case moment()
663+
.day('Friday')
664+
.weekday():
656665
daysToAdd = 3
657666
break
658-
case moment().day('Saturday').weekday():
667+
case moment()
668+
.day('Saturday')
669+
.weekday():
659670
daysToAdd = 2
660671
break
661-
case moment().day('Sunday').weekday():
672+
case moment()
673+
.day('Sunday')
674+
.weekday():
662675
daysToAdd = 1
663676
break
664677
default:
665678
daysToAdd = 1
666679
}
667680

668-
return moment().add(daysToAdd, 'days').format()
681+
return moment()
682+
.add(daysToAdd, 'days')
683+
.format()
669684
}
670685

671686
function getSubmittedDate(challenge: Challenge): Date {

0 commit comments

Comments
 (0)