NGO-DB/ndb-core

View on GitHub

Showing 127 of 282 total issues

File ability.service.spec.ts has 284 lines of code (exceeds 250 allowed). Consider refactoring.
Open

import { fakeAsync, TestBed, tick, waitForAsync } from "@angular/core/testing";

import { AbilityService } from "./ability.service";
import { BehaviorSubject, Subject } from "rxjs";
import { Child } from "../../../child-dev-project/children/model/child";
Severity: Minor
Found in src/app/core/permissions/ability/ability.service.spec.ts - About 2 hrs to fix

    File entities-table.component.ts has 283 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    import {
      AfterViewInit,
      Component,
      EventEmitter,
      Input,

      File entity-actions.service.spec.ts has 271 lines of code (exceeds 250 allowed). Consider refactoring.
      Open

      import { fakeAsync, TestBed, tick } from "@angular/core/testing";
      import { EntityActionsService } from "./entity-actions.service";
      import { EntityMapperService } from "../entity-mapper/entity-mapper.service";
      import {
        MatSnackBar,
      Severity: Minor
      Found in src/app/core/entity/entity-actions/entity-actions.service.spec.ts - About 2 hrs to fix

        PouchDatabase has 23 functions (exceeds 20 allowed). Consider refactoring.
        Open

        @Injectable()
        export class PouchDatabase extends Database {
          /**
           * Small helper function which creates a database with in-memory PouchDB initialized
           */
        Severity: Minor
        Found in src/app/core/database/pouch-database.ts - About 2 hrs to fix

          Function delete has 62 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

            async delete<E extends Entity>(
              entityParam: E | E[],
              navigate: boolean = false,
            ): Promise<boolean> {
              let textForDeleteEntity = "";
          Severity: Major
          Found in src/app/core/entity/entity-actions/entity-actions.service.ts - About 2 hrs to fix

            File entity-list.component.ts has 269 lines of code (exceeds 250 allowed). Consider refactoring.
            Open

            import {
              Component,
              EventEmitter,
              Input,
              OnChanges,
            Severity: Minor
            Found in src/app/core/entity-list/entity-list/entity-list.component.ts - About 2 hrs to fix

              File admin-entity-field.component.ts has 265 lines of code (exceeds 250 allowed). Consider refactoring.
              Open

              import {
                Component,
                Inject,
                Input,
                OnChanges,

                BasicAutocompleteComponent has 22 functions (exceeds 20 allowed). Consider refactoring.
                Open

                @Component({
                  selector: "app-basic-autocomplete",
                  templateUrl: "basic-autocomplete.component.html",
                  styleUrls: ["./basic-autocomplete.component.scss"],
                  providers: [

                  CustomFormControlDirective has 22 functions (exceeds 20 allowed). Consider refactoring.
                  Open

                  @Directive()
                  export abstract class CustomFormControlDirective<T>
                    implements ControlValueAccessor, MatFormFieldControl<T>, OnDestroy, DoCheck
                  {
                    static nextId = 0;

                    Function anonymize has 55 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                      async anonymize<E extends Entity>(entityParam: E | E[]) {
                        let entities = Array.isArray(entityParam) ? entityParam : [entityParam];
                        let textForAnonymizeEntity = "";
                    
                        if (entities.length > 1) {
                    Severity: Major
                    Found in src/app/core/entity/entity-actions/entity-actions.service.ts - About 2 hrs to fix

                      EntitiesTableComponent has 21 functions (exceeds 20 allowed). Consider refactoring.
                      Open

                      @UntilDestroy()
                      @Component({
                        selector: "app-entities-table",
                        standalone: true,
                        imports: [

                        QueryService has 21 functions (exceeds 20 allowed). Consider refactoring.
                        Open

                        @Injectable({
                          providedIn: "root",
                        })
                        export class QueryService {
                          private entities: { [type: string]: { [id: string]: Entity } } = {};
                        Severity: Minor
                        Found in src/app/core/export/query.service.ts - About 2 hrs to fix

                          File session-manager.service.spec.ts has 252 lines of code (exceeds 250 allowed). Consider refactoring.
                          Open

                          /*
                           *     This file is part of ndb-core.
                           *
                           *     ndb-core is free software: you can redistribute it and/or modify
                           *     it under the terms of the GNU General Public License as published by
                          Severity: Minor
                          Found in src/app/core/session/session-service/session-manager.service.spec.ts - About 2 hrs to fix

                            File pouch-database.ts has 251 lines of code (exceeds 250 allowed). Consider refactoring.
                            Open

                            /*
                             *     This file is part of ndb-core.
                             *
                             *     ndb-core is free software: you can redistribute it and/or modify
                             *     it under the terms of the GNU General Public License as published by
                            Severity: Minor
                            Found in src/app/core/database/pouch-database.ts - About 2 hrs to fix

                              File attendance.service.ts has 251 lines of code (exceeds 250 allowed). Consider refactoring.
                              Open

                              import { Injectable } from "@angular/core";
                              import { EntityMapperService } from "../../core/entity/entity-mapper/entity-mapper.service";
                              import moment from "moment";
                              import { RecurringActivity } from "./model/recurring-activity";
                              import { ActivityAttendance } from "./model/activity-attendance";
                              Severity: Minor
                              Found in src/app/child-dev-project/attendance/attendance.service.ts - About 2 hrs to fix

                                Function testDatatype has 46 lines of code (exceeds 25 allowed). Consider refactoring.
                                Open

                                export function testDatatype<D extends DefaultDatatype>(
                                  dataType: D | (new (params: any) => D),
                                  objectValue,
                                  databaseValue,
                                  additionalSchemaFieldConfig?: any,
                                Severity: Minor
                                Found in src/app/core/entity/schema/entity-schema.service.spec.ts - About 1 hr to fix

                                  Function generateFormFieldStory has 46 lines of code (exceeds 25 allowed). Consider refactoring.
                                  Open

                                  export function generateFormFieldStory<T>(
                                    editComponent,
                                    defaultValue,
                                    withTooltip = true,
                                    additionalSchema = {},
                                  Severity: Minor
                                  Found in src/app/core/entity/default-datatype/edit-component-story-utils.ts - About 1 hr to fix

                                    Function createNotesIndex has 44 lines of code (exceeds 25 allowed). Consider refactoring.
                                    Open

                                      private async createNotesIndex(): Promise<any> {
                                        const designDoc = {
                                          _id: "_design/notes_index",
                                          views: {
                                            note_child_by_date: {
                                    Severity: Minor
                                    Found in src/app/child-dev-project/children/children.service.ts - About 1 hr to fix

                                      Function calculateAggregations has 43 lines of code (exceeds 25 allowed). Consider refactoring.
                                      Open

                                        private calculateAggregations(
                                          aggregations: Aggregation[] = [],
                                          data?: any[],
                                          additionalValues: GroupByDescription[] = [],
                                        ): ReportRow[] {
                                      Severity: Minor
                                      Found in src/app/features/reporting/data-aggregation.service.ts - About 1 hr to fix

                                        Function exports has 42 lines of code (exceeds 25 allowed). Consider refactoring.
                                        Open

                                        module.exports = function (config) {
                                          config.set({
                                            basePath: "..",
                                            frameworks: ["jasmine", "@angular-devkit/build-angular"],
                                            plugins: [
                                        Severity: Minor
                                        Found in build/karma-ci.conf.js - About 1 hr to fix
                                          Severity
                                          Category
                                          Status
                                          Source
                                          Language