Opetushallitus/eperusteet-frontend-utils

View on GitHub

Showing 95 of 183 total issues

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'koto_laajaalainenosaaminen':
    node.location = {
      name: 'perusteKotoLaajaalainenOsaaminen',
      params: {
        kotoLaajaalainenOsaaminenId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'suorituspolku':
    node.location = {
      name: 'toteutussuunnitelmaSisalto',
      params: {
        sisaltoviiteId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'koto_kielitaitotaso':
    node.location = {
      name: 'toteutussuunnitelmaSisalto',
      params: {
        sisaltoviiteId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'tavoitesisaltoalue':
    node.location = {
      name: 'perusteTavoitesisaltoalue',
      params: {
        tavoitesisaltoalueId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'aihekokonaisuudet':
    node.location = {
      name: 'perusteAihekokonaisuudet',
      params: {
        aihekokonaisuudetId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'koto_kielitaitotaso':
    node.location = {
      name: 'perusteKotoKielitaitotaso',
      params: {
        kotokielitaitotasoId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'opintokokonaisuus':
    node.location = {
      name: 'toteutussuunnitelmaSisalto',
      params: {
        sisaltoviiteId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'koulutuksenosa':
    node.location = {
      name: 'perusteKoulutuksenOsa',
      params: {
        koulutuksenosaId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'laajaalainenosaaminen':
    node.location = {
      name: 'toteutussuunnitelmaSisalto',
      params: {
        sisaltoviiteId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'laajaalainenosaaminen':
    node.location = {
      name: 'perusteLaajaalainenOsaaminen',
      params: {
        laajaalainenosaaminenId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'osaamiskokonaisuus':
    node.location = {
      name: 'perusteOsaamiskokonaisuus',
      params: {
        osaamiskokonaisuusId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'osasuorituspolku':
    node.location = {
      name: 'toteutussuunnitelmaSisalto',
      params: {
        sisaltoviiteId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'koulutuksenosat':
    node.location = {
      name: 'toteutussuunnitelmaSisalto',
      params: {
        sisaltoviiteId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'tekstikappale':
    node.location = {
      name: 'toteutussuunnitelmaSisalto',
      params: {
        sisaltoviiteId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 607..614
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 37 locations. Consider refactoring.
Open

  case 'vuosiluokkakokonaisuus':
    node.location = {
      name: 'opetussuunnitelmanvuosiluokkakokonaisuus',
      params: {
        vlkId: _.toString(rawNode.id),
Severity: Major
Found in vue/src/utils/NavigationBuilder.ts and 36 other locations - About 30 mins to fix
vue/src/utils/NavigationBuilder.ts on lines 187..194
vue/src/utils/NavigationBuilder.ts on lines 195..202
vue/src/utils/NavigationBuilder.ts on lines 261..268
vue/src/utils/NavigationBuilder.ts on lines 275..282
vue/src/utils/NavigationBuilder.ts on lines 298..305
vue/src/utils/NavigationBuilder.ts on lines 306..313
vue/src/utils/NavigationBuilder.ts on lines 314..321
vue/src/utils/NavigationBuilder.ts on lines 351..358
vue/src/utils/NavigationBuilder.ts on lines 359..366
vue/src/utils/NavigationBuilder.ts on lines 367..374
vue/src/utils/NavigationBuilder.ts on lines 375..382
vue/src/utils/NavigationBuilder.ts on lines 383..390
vue/src/utils/NavigationBuilder.ts on lines 391..398
vue/src/utils/NavigationBuilder.ts on lines 399..406
vue/src/utils/NavigationBuilder.ts on lines 407..414
vue/src/utils/NavigationBuilder.ts on lines 415..422
vue/src/utils/NavigationBuilder.ts on lines 423..430
vue/src/utils/NavigationBuilder.ts on lines 431..438
vue/src/utils/NavigationBuilder.ts on lines 439..446
vue/src/utils/NavigationBuilder.ts on lines 476..483
vue/src/utils/NavigationBuilder.ts on lines 484..491
vue/src/utils/NavigationBuilder.ts on lines 492..499
vue/src/utils/NavigationBuilder.ts on lines 500..507
vue/src/utils/NavigationBuilder.ts on lines 526..533
vue/src/utils/NavigationBuilder.ts on lines 567..574
vue/src/utils/NavigationBuilder.ts on lines 575..582
vue/src/utils/NavigationBuilder.ts on lines 583..590
vue/src/utils/NavigationBuilder.ts on lines 591..598
vue/src/utils/NavigationBuilder.ts on lines 599..606
vue/src/utils/NavigationBuilder.ts on lines 639..646
vue/src/utils/NavigationBuilder.ts on lines 656..663
vue/src/utils/NavigationBuilder.ts on lines 664..671
vue/src/utils/NavigationBuilder.ts on lines 672..679
vue/src/utils/NavigationBuilder.ts on lines 680..687
vue/src/utils/NavigationBuilder.ts on lines 688..695
vue/src/utils/NavigationBuilder.ts on lines 696..703

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 45.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Severity
Category
Status
Source
Language