初始化
This commit is contained in:
84
frontend/wailsjs/go/main/App.d.ts
vendored
Normal file
84
frontend/wailsjs/go/main/App.d.ts
vendored
Normal file
@@ -0,0 +1,84 @@
|
||||
// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
|
||||
// This file is automatically generated. DO NOT EDIT
|
||||
import {model} from '../models';
|
||||
import {main} from '../models';
|
||||
|
||||
export function AddRule(arg1:string,arg2:string):Promise<model.ExclusionRule>;
|
||||
|
||||
export function CancelAnalysis(arg1:string):Promise<void>;
|
||||
|
||||
export function CheckoutBranch(arg1:number,arg2:string):Promise<model.CheckoutResult>;
|
||||
|
||||
export function ClearData(arg1:string,arg2:number):Promise<void>;
|
||||
|
||||
export function ClearLogs():Promise<void>;
|
||||
|
||||
export function DeleteProject(arg1:number):Promise<void>;
|
||||
|
||||
export function DeleteProjectGroup(arg1:number):Promise<void>;
|
||||
|
||||
export function DeleteRule(arg1:number):Promise<void>;
|
||||
|
||||
export function GetBootstrapStatus():Promise<main.BootstrapStatus>;
|
||||
|
||||
export function GetCommitDetails(arg1:number,arg2:string):Promise<model.GitCommitDetail>;
|
||||
|
||||
export function GetDashboard():Promise<model.Dashboard>;
|
||||
|
||||
export function GetDashboardByGroup(arg1:number):Promise<model.Dashboard>;
|
||||
|
||||
export function GetGitDiagnostics(arg1:number):Promise<model.GitDiagnostics>;
|
||||
|
||||
export function GetGitStats(arg1:number):Promise<model.GitStats>;
|
||||
|
||||
export function GetGitStatsForRef(arg1:number,arg2:string):Promise<model.GitStats>;
|
||||
|
||||
export function GetLogs(arg1:string):Promise<Array<model.LogEntry>>;
|
||||
|
||||
export function GetProject(arg1:number):Promise<model.Project>;
|
||||
|
||||
export function GetProjectInsights(arg1:number):Promise<model.ProjectInsights>;
|
||||
|
||||
export function GetRules():Promise<Array<model.ExclusionRule>>;
|
||||
|
||||
export function GetSettings():Promise<model.AppSettings>;
|
||||
|
||||
export function GetStructure(arg1:number):Promise<model.StructureStats>;
|
||||
|
||||
export function InitializeDatabase(arg1:string):Promise<main.BootstrapStatus>;
|
||||
|
||||
export function ListProjectGroups():Promise<Array<model.ProjectGroup>>;
|
||||
|
||||
export function ListProjects():Promise<Array<model.Project>>;
|
||||
|
||||
export function ListProjectsByGroup(arg1:number):Promise<Array<model.Project>>;
|
||||
|
||||
export function ListWSLDistros():Promise<Array<string>>;
|
||||
|
||||
export function MigrateDatabase(arg1:string):Promise<void>;
|
||||
|
||||
export function RefreshProjectInsights(arg1:number):Promise<model.ProjectInsights>;
|
||||
|
||||
export function ReportClientError(arg1:string,arg2:string,arg3:string):Promise<void>;
|
||||
|
||||
export function RetryDatabase():Promise<main.BootstrapStatus>;
|
||||
|
||||
export function SaveProject(arg1:number,arg2:model.ProjectInput):Promise<model.Project>;
|
||||
|
||||
export function SaveProjectGroup(arg1:number,arg2:string):Promise<model.ProjectGroup>;
|
||||
|
||||
export function SaveSettings(arg1:model.AppSettings):Promise<void>;
|
||||
|
||||
export function SelectDatabaseFile():Promise<string>;
|
||||
|
||||
export function SelectDirectory():Promise<string>;
|
||||
|
||||
export function SelectInitialDatabaseFile(arg1:string):Promise<string>;
|
||||
|
||||
export function SelectWSLDirectory(arg1:string):Promise<string>;
|
||||
|
||||
export function StartAnalysis(arg1:number,arg2:string):Promise<string>;
|
||||
|
||||
export function StartBatchAnalysis():Promise<Array<string>>;
|
||||
|
||||
export function StartBatchAnalysisByGroup(arg1:number):Promise<Array<string>>;
|
||||
163
frontend/wailsjs/go/main/App.js
Normal file
163
frontend/wailsjs/go/main/App.js
Normal file
@@ -0,0 +1,163 @@
|
||||
// @ts-check
|
||||
// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
|
||||
// This file is automatically generated. DO NOT EDIT
|
||||
|
||||
export function AddRule(arg1, arg2) {
|
||||
return window['go']['main']['App']['AddRule'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function CancelAnalysis(arg1) {
|
||||
return window['go']['main']['App']['CancelAnalysis'](arg1);
|
||||
}
|
||||
|
||||
export function CheckoutBranch(arg1, arg2) {
|
||||
return window['go']['main']['App']['CheckoutBranch'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function ClearData(arg1, arg2) {
|
||||
return window['go']['main']['App']['ClearData'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function ClearLogs() {
|
||||
return window['go']['main']['App']['ClearLogs']();
|
||||
}
|
||||
|
||||
export function DeleteProject(arg1) {
|
||||
return window['go']['main']['App']['DeleteProject'](arg1);
|
||||
}
|
||||
|
||||
export function DeleteProjectGroup(arg1) {
|
||||
return window['go']['main']['App']['DeleteProjectGroup'](arg1);
|
||||
}
|
||||
|
||||
export function DeleteRule(arg1) {
|
||||
return window['go']['main']['App']['DeleteRule'](arg1);
|
||||
}
|
||||
|
||||
export function GetBootstrapStatus() {
|
||||
return window['go']['main']['App']['GetBootstrapStatus']();
|
||||
}
|
||||
|
||||
export function GetCommitDetails(arg1, arg2) {
|
||||
return window['go']['main']['App']['GetCommitDetails'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function GetDashboard() {
|
||||
return window['go']['main']['App']['GetDashboard']();
|
||||
}
|
||||
|
||||
export function GetDashboardByGroup(arg1) {
|
||||
return window['go']['main']['App']['GetDashboardByGroup'](arg1);
|
||||
}
|
||||
|
||||
export function GetGitDiagnostics(arg1) {
|
||||
return window['go']['main']['App']['GetGitDiagnostics'](arg1);
|
||||
}
|
||||
|
||||
export function GetGitStats(arg1) {
|
||||
return window['go']['main']['App']['GetGitStats'](arg1);
|
||||
}
|
||||
|
||||
export function GetGitStatsForRef(arg1, arg2) {
|
||||
return window['go']['main']['App']['GetGitStatsForRef'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function GetLogs(arg1) {
|
||||
return window['go']['main']['App']['GetLogs'](arg1);
|
||||
}
|
||||
|
||||
export function GetProject(arg1) {
|
||||
return window['go']['main']['App']['GetProject'](arg1);
|
||||
}
|
||||
|
||||
export function GetProjectInsights(arg1) {
|
||||
return window['go']['main']['App']['GetProjectInsights'](arg1);
|
||||
}
|
||||
|
||||
export function GetRules() {
|
||||
return window['go']['main']['App']['GetRules']();
|
||||
}
|
||||
|
||||
export function GetSettings() {
|
||||
return window['go']['main']['App']['GetSettings']();
|
||||
}
|
||||
|
||||
export function GetStructure(arg1) {
|
||||
return window['go']['main']['App']['GetStructure'](arg1);
|
||||
}
|
||||
|
||||
export function InitializeDatabase(arg1) {
|
||||
return window['go']['main']['App']['InitializeDatabase'](arg1);
|
||||
}
|
||||
|
||||
export function ListProjectGroups() {
|
||||
return window['go']['main']['App']['ListProjectGroups']();
|
||||
}
|
||||
|
||||
export function ListProjects() {
|
||||
return window['go']['main']['App']['ListProjects']();
|
||||
}
|
||||
|
||||
export function ListProjectsByGroup(arg1) {
|
||||
return window['go']['main']['App']['ListProjectsByGroup'](arg1);
|
||||
}
|
||||
|
||||
export function ListWSLDistros() {
|
||||
return window['go']['main']['App']['ListWSLDistros']();
|
||||
}
|
||||
|
||||
export function MigrateDatabase(arg1) {
|
||||
return window['go']['main']['App']['MigrateDatabase'](arg1);
|
||||
}
|
||||
|
||||
export function RefreshProjectInsights(arg1) {
|
||||
return window['go']['main']['App']['RefreshProjectInsights'](arg1);
|
||||
}
|
||||
|
||||
export function ReportClientError(arg1, arg2, arg3) {
|
||||
return window['go']['main']['App']['ReportClientError'](arg1, arg2, arg3);
|
||||
}
|
||||
|
||||
export function RetryDatabase() {
|
||||
return window['go']['main']['App']['RetryDatabase']();
|
||||
}
|
||||
|
||||
export function SaveProject(arg1, arg2) {
|
||||
return window['go']['main']['App']['SaveProject'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function SaveProjectGroup(arg1, arg2) {
|
||||
return window['go']['main']['App']['SaveProjectGroup'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function SaveSettings(arg1) {
|
||||
return window['go']['main']['App']['SaveSettings'](arg1);
|
||||
}
|
||||
|
||||
export function SelectDatabaseFile() {
|
||||
return window['go']['main']['App']['SelectDatabaseFile']();
|
||||
}
|
||||
|
||||
export function SelectDirectory() {
|
||||
return window['go']['main']['App']['SelectDirectory']();
|
||||
}
|
||||
|
||||
export function SelectInitialDatabaseFile(arg1) {
|
||||
return window['go']['main']['App']['SelectInitialDatabaseFile'](arg1);
|
||||
}
|
||||
|
||||
export function SelectWSLDirectory(arg1) {
|
||||
return window['go']['main']['App']['SelectWSLDirectory'](arg1);
|
||||
}
|
||||
|
||||
export function StartAnalysis(arg1, arg2) {
|
||||
return window['go']['main']['App']['StartAnalysis'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function StartBatchAnalysis() {
|
||||
return window['go']['main']['App']['StartBatchAnalysis']();
|
||||
}
|
||||
|
||||
export function StartBatchAnalysisByGroup(arg1) {
|
||||
return window['go']['main']['App']['StartBatchAnalysisByGroup'](arg1);
|
||||
}
|
||||
663
frontend/wailsjs/go/models.ts
Normal file
663
frontend/wailsjs/go/models.ts
Normal file
@@ -0,0 +1,663 @@
|
||||
export namespace main {
|
||||
|
||||
export class BootstrapStatus {
|
||||
state: string;
|
||||
databasePath: string;
|
||||
defaultPath: string;
|
||||
errorCode?: string;
|
||||
errorDetail?: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new BootstrapStatus(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.state = source["state"];
|
||||
this.databasePath = source["databasePath"];
|
||||
this.defaultPath = source["defaultPath"];
|
||||
this.errorCode = source["errorCode"];
|
||||
this.errorDetail = source["errorDetail"];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
export namespace model {
|
||||
|
||||
export class AppSettings {
|
||||
theme: string;
|
||||
locale: string;
|
||||
gitScope: string;
|
||||
databasePath: string;
|
||||
autoRefresh: boolean;
|
||||
glassOpacity: number;
|
||||
loadingStyle: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new AppSettings(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.theme = source["theme"];
|
||||
this.locale = source["locale"];
|
||||
this.gitScope = source["gitScope"];
|
||||
this.databasePath = source["databasePath"];
|
||||
this.autoRefresh = source["autoRefresh"];
|
||||
this.glassOpacity = source["glassOpacity"];
|
||||
this.loadingStyle = source["loadingStyle"];
|
||||
}
|
||||
}
|
||||
export class CheckoutResult {
|
||||
branch: string;
|
||||
message: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new CheckoutResult(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.branch = source["branch"];
|
||||
this.message = source["message"];
|
||||
}
|
||||
}
|
||||
export class Contributor {
|
||||
name: string;
|
||||
email: string;
|
||||
commits: number;
|
||||
added: number;
|
||||
deleted: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new Contributor(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.name = source["name"];
|
||||
this.email = source["email"];
|
||||
this.commits = source["commits"];
|
||||
this.added = source["added"];
|
||||
this.deleted = source["deleted"];
|
||||
}
|
||||
}
|
||||
export class Dashboard {
|
||||
projects: number;
|
||||
totalLines: number;
|
||||
commits: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new Dashboard(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.projects = source["projects"];
|
||||
this.totalLines = source["totalLines"];
|
||||
this.commits = source["commits"];
|
||||
}
|
||||
}
|
||||
export class ExclusionRule {
|
||||
id: number;
|
||||
pattern: string;
|
||||
category: string;
|
||||
builtin: boolean;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new ExclusionRule(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.id = source["id"];
|
||||
this.pattern = source["pattern"];
|
||||
this.category = source["category"];
|
||||
this.builtin = source["builtin"];
|
||||
}
|
||||
}
|
||||
export class ExtensionStat {
|
||||
extension: string;
|
||||
files: number;
|
||||
size: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new ExtensionStat(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.extension = source["extension"];
|
||||
this.files = source["files"];
|
||||
this.size = source["size"];
|
||||
}
|
||||
}
|
||||
export class FileEntry {
|
||||
path: string;
|
||||
name: string;
|
||||
extension: string;
|
||||
size: number;
|
||||
isDir: boolean;
|
||||
parent: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new FileEntry(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.path = source["path"];
|
||||
this.name = source["name"];
|
||||
this.extension = source["extension"];
|
||||
this.size = source["size"];
|
||||
this.isDir = source["isDir"];
|
||||
this.parent = source["parent"];
|
||||
}
|
||||
}
|
||||
export class FolderStat {
|
||||
name: string;
|
||||
files: number;
|
||||
size: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new FolderStat(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.name = source["name"];
|
||||
this.files = source["files"];
|
||||
this.size = source["size"];
|
||||
}
|
||||
}
|
||||
export class GitCommit {
|
||||
hash: string;
|
||||
author: string;
|
||||
email: string;
|
||||
message: string;
|
||||
date: string;
|
||||
added: number;
|
||||
deleted: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new GitCommit(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.hash = source["hash"];
|
||||
this.author = source["author"];
|
||||
this.email = source["email"];
|
||||
this.message = source["message"];
|
||||
this.date = source["date"];
|
||||
this.added = source["added"];
|
||||
this.deleted = source["deleted"];
|
||||
}
|
||||
}
|
||||
export class GitFileChange {
|
||||
path: string;
|
||||
status: string;
|
||||
added: number;
|
||||
deleted: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new GitFileChange(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.path = source["path"];
|
||||
this.status = source["status"];
|
||||
this.added = source["added"];
|
||||
this.deleted = source["deleted"];
|
||||
}
|
||||
}
|
||||
export class GitCommitDetail {
|
||||
hash: string;
|
||||
author: string;
|
||||
email: string;
|
||||
message: string;
|
||||
date: string;
|
||||
added: number;
|
||||
deleted: number;
|
||||
files: GitFileChange[];
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new GitCommitDetail(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.hash = source["hash"];
|
||||
this.author = source["author"];
|
||||
this.email = source["email"];
|
||||
this.message = source["message"];
|
||||
this.date = source["date"];
|
||||
this.added = source["added"];
|
||||
this.deleted = source["deleted"];
|
||||
this.files = this.convertValues(source["files"], GitFileChange);
|
||||
}
|
||||
|
||||
convertValues(a: any, classs: any, asMap: boolean = false): any {
|
||||
if (!a) {
|
||||
return a;
|
||||
}
|
||||
if (a.slice && a.map) {
|
||||
return (a as any[]).map(elem => this.convertValues(elem, classs));
|
||||
} else if ("object" === typeof a) {
|
||||
if (asMap) {
|
||||
for (const key of Object.keys(a)) {
|
||||
a[key] = new classs(a[key]);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
return new classs(a);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
}
|
||||
export class GitDiagnostics {
|
||||
available: boolean;
|
||||
errorCode?: string;
|
||||
detail?: string;
|
||||
isWsl: boolean;
|
||||
distro?: string;
|
||||
linuxPath?: string;
|
||||
workspaceBranch?: string;
|
||||
viewRef?: string;
|
||||
refCount: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new GitDiagnostics(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.available = source["available"];
|
||||
this.errorCode = source["errorCode"];
|
||||
this.detail = source["detail"];
|
||||
this.isWsl = source["isWsl"];
|
||||
this.distro = source["distro"];
|
||||
this.linuxPath = source["linuxPath"];
|
||||
this.workspaceBranch = source["workspaceBranch"];
|
||||
this.viewRef = source["viewRef"];
|
||||
this.refCount = source["refCount"];
|
||||
}
|
||||
}
|
||||
|
||||
export class GitRef {
|
||||
name: string;
|
||||
hash: string;
|
||||
kind: string;
|
||||
current: boolean;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new GitRef(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.name = source["name"];
|
||||
this.hash = source["hash"];
|
||||
this.kind = source["kind"];
|
||||
this.current = source["current"];
|
||||
}
|
||||
}
|
||||
export class HeatDay {
|
||||
date: string;
|
||||
count: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new HeatDay(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.date = source["date"];
|
||||
this.count = source["count"];
|
||||
}
|
||||
}
|
||||
export class GitStats {
|
||||
available: boolean;
|
||||
error?: string;
|
||||
currentBranch: string;
|
||||
workspaceBranch: string;
|
||||
viewRef: string;
|
||||
commitCount: number;
|
||||
added: number;
|
||||
deleted: number;
|
||||
contributorCount: number;
|
||||
commits: GitCommit[];
|
||||
refs: GitRef[];
|
||||
contributors: Contributor[];
|
||||
heatmap: HeatDay[];
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new GitStats(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.available = source["available"];
|
||||
this.error = source["error"];
|
||||
this.currentBranch = source["currentBranch"];
|
||||
this.workspaceBranch = source["workspaceBranch"];
|
||||
this.viewRef = source["viewRef"];
|
||||
this.commitCount = source["commitCount"];
|
||||
this.added = source["added"];
|
||||
this.deleted = source["deleted"];
|
||||
this.contributorCount = source["contributorCount"];
|
||||
this.commits = this.convertValues(source["commits"], GitCommit);
|
||||
this.refs = this.convertValues(source["refs"], GitRef);
|
||||
this.contributors = this.convertValues(source["contributors"], Contributor);
|
||||
this.heatmap = this.convertValues(source["heatmap"], HeatDay);
|
||||
}
|
||||
|
||||
convertValues(a: any, classs: any, asMap: boolean = false): any {
|
||||
if (!a) {
|
||||
return a;
|
||||
}
|
||||
if (a.slice && a.map) {
|
||||
return (a as any[]).map(elem => this.convertValues(elem, classs));
|
||||
} else if ("object" === typeof a) {
|
||||
if (asMap) {
|
||||
for (const key of Object.keys(a)) {
|
||||
a[key] = new classs(a[key]);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
return new classs(a);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
}
|
||||
|
||||
export class InsightIssue {
|
||||
severity: string;
|
||||
type: string;
|
||||
title: string;
|
||||
detail: string;
|
||||
path?: string;
|
||||
line?: number;
|
||||
suggestion: string;
|
||||
evidence?: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new InsightIssue(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.severity = source["severity"];
|
||||
this.type = source["type"];
|
||||
this.title = source["title"];
|
||||
this.detail = source["detail"];
|
||||
this.path = source["path"];
|
||||
this.line = source["line"];
|
||||
this.suggestion = source["suggestion"];
|
||||
this.evidence = source["evidence"];
|
||||
}
|
||||
}
|
||||
export class InsightSummary {
|
||||
high: number;
|
||||
medium: number;
|
||||
low: number;
|
||||
todoCount: number;
|
||||
longFiles: number;
|
||||
largeFiles: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new InsightSummary(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.high = source["high"];
|
||||
this.medium = source["medium"];
|
||||
this.low = source["low"];
|
||||
this.todoCount = source["todoCount"];
|
||||
this.longFiles = source["longFiles"];
|
||||
this.largeFiles = source["largeFiles"];
|
||||
}
|
||||
}
|
||||
export class LanguageStat {
|
||||
name: string;
|
||||
files: number;
|
||||
code: number;
|
||||
comments: number;
|
||||
blanks: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new LanguageStat(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.name = source["name"];
|
||||
this.files = source["files"];
|
||||
this.code = source["code"];
|
||||
this.comments = source["comments"];
|
||||
this.blanks = source["blanks"];
|
||||
}
|
||||
}
|
||||
export class LogEntry {
|
||||
id: number;
|
||||
level: string;
|
||||
category: string;
|
||||
message: string;
|
||||
detail: string;
|
||||
createdAt: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new LogEntry(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.id = source["id"];
|
||||
this.level = source["level"];
|
||||
this.category = source["category"];
|
||||
this.message = source["message"];
|
||||
this.detail = source["detail"];
|
||||
this.createdAt = source["createdAt"];
|
||||
}
|
||||
}
|
||||
export class ProjectStats {
|
||||
totalLines: number;
|
||||
codeLines: number;
|
||||
commentLines: number;
|
||||
blankLines: number;
|
||||
fileCount: number;
|
||||
commitCount: number;
|
||||
addedLines: number;
|
||||
deletedLines: number;
|
||||
contributorCount: number;
|
||||
lastAnalyzed: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new ProjectStats(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.totalLines = source["totalLines"];
|
||||
this.codeLines = source["codeLines"];
|
||||
this.commentLines = source["commentLines"];
|
||||
this.blankLines = source["blankLines"];
|
||||
this.fileCount = source["fileCount"];
|
||||
this.commitCount = source["commitCount"];
|
||||
this.addedLines = source["addedLines"];
|
||||
this.deletedLines = source["deletedLines"];
|
||||
this.contributorCount = source["contributorCount"];
|
||||
this.lastAnalyzed = source["lastAnalyzed"];
|
||||
}
|
||||
}
|
||||
export class Project {
|
||||
id: number;
|
||||
name: string;
|
||||
path: string;
|
||||
description: string;
|
||||
groupId: number;
|
||||
groupName: string;
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
stats: ProjectStats;
|
||||
languages: LanguageStat[];
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new Project(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.id = source["id"];
|
||||
this.name = source["name"];
|
||||
this.path = source["path"];
|
||||
this.description = source["description"];
|
||||
this.groupId = source["groupId"];
|
||||
this.groupName = source["groupName"];
|
||||
this.createdAt = source["createdAt"];
|
||||
this.updatedAt = source["updatedAt"];
|
||||
this.stats = this.convertValues(source["stats"], ProjectStats);
|
||||
this.languages = this.convertValues(source["languages"], LanguageStat);
|
||||
}
|
||||
|
||||
convertValues(a: any, classs: any, asMap: boolean = false): any {
|
||||
if (!a) {
|
||||
return a;
|
||||
}
|
||||
if (a.slice && a.map) {
|
||||
return (a as any[]).map(elem => this.convertValues(elem, classs));
|
||||
} else if ("object" === typeof a) {
|
||||
if (asMap) {
|
||||
for (const key of Object.keys(a)) {
|
||||
a[key] = new classs(a[key]);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
return new classs(a);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
}
|
||||
export class ProjectGroup {
|
||||
id: number;
|
||||
name: string;
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new ProjectGroup(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.id = source["id"];
|
||||
this.name = source["name"];
|
||||
this.createdAt = source["createdAt"];
|
||||
this.updatedAt = source["updatedAt"];
|
||||
}
|
||||
}
|
||||
export class ProjectInput {
|
||||
name: string;
|
||||
path: string;
|
||||
description: string;
|
||||
groupId: number;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new ProjectInput(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.name = source["name"];
|
||||
this.path = source["path"];
|
||||
this.description = source["description"];
|
||||
this.groupId = source["groupId"];
|
||||
}
|
||||
}
|
||||
export class ProjectInsights {
|
||||
projectId: number;
|
||||
healthScore: number;
|
||||
generatedAt: string;
|
||||
summary: InsightSummary;
|
||||
issues: InsightIssue[];
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new ProjectInsights(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.projectId = source["projectId"];
|
||||
this.healthScore = source["healthScore"];
|
||||
this.generatedAt = source["generatedAt"];
|
||||
this.summary = this.convertValues(source["summary"], InsightSummary);
|
||||
this.issues = this.convertValues(source["issues"], InsightIssue);
|
||||
}
|
||||
|
||||
convertValues(a: any, classs: any, asMap: boolean = false): any {
|
||||
if (!a) {
|
||||
return a;
|
||||
}
|
||||
if (a.slice && a.map) {
|
||||
return (a as any[]).map(elem => this.convertValues(elem, classs));
|
||||
} else if ("object" === typeof a) {
|
||||
if (asMap) {
|
||||
for (const key of Object.keys(a)) {
|
||||
a[key] = new classs(a[key]);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
return new classs(a);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
}
|
||||
|
||||
export class StructureStats {
|
||||
files: FileEntry[];
|
||||
totalFiles: number;
|
||||
totalDirs: number;
|
||||
totalSize: number;
|
||||
largeFiles: FileEntry[];
|
||||
folders: FolderStat[];
|
||||
extensions: ExtensionStat[];
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new StructureStats(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.files = this.convertValues(source["files"], FileEntry);
|
||||
this.totalFiles = source["totalFiles"];
|
||||
this.totalDirs = source["totalDirs"];
|
||||
this.totalSize = source["totalSize"];
|
||||
this.largeFiles = this.convertValues(source["largeFiles"], FileEntry);
|
||||
this.folders = this.convertValues(source["folders"], FolderStat);
|
||||
this.extensions = this.convertValues(source["extensions"], ExtensionStat);
|
||||
}
|
||||
|
||||
convertValues(a: any, classs: any, asMap: boolean = false): any {
|
||||
if (!a) {
|
||||
return a;
|
||||
}
|
||||
if (a.slice && a.map) {
|
||||
return (a as any[]).map(elem => this.convertValues(elem, classs));
|
||||
} else if ("object" === typeof a) {
|
||||
if (asMap) {
|
||||
for (const key of Object.keys(a)) {
|
||||
a[key] = new classs(a[key]);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
return new classs(a);
|
||||
}
|
||||
return a;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user