]> source.dussan.org Git - sonarqube.git/commitdiff
Order types.ts alphabetically to prevent merge conflicts
authorGrégoire Aubert <gregoire.aubert@sonarsource.com>
Wed, 21 Feb 2018 13:55:04 +0000 (14:55 +0100)
committerGrégoire Aubert <gregoire.aubert@sonarsource.com>
Wed, 21 Feb 2018 13:55:04 +0000 (14:55 +0100)
server/sonar-web/src/main/js/app/types.ts

index 5d552e722a29fe29dcb4e5cfdee6bda4cab87d63..dddeec8424e82ff442db440c069bf83399b36ff6 100644 (file)
@@ -24,49 +24,23 @@ export type Diff<T extends string, U extends string> = ({ [P in T]: P } &
 
 export type Omit<T, K extends keyof T> = Pick<T, Diff<keyof T, K>>;
 
-export enum BranchType {
-  LONG = 'LONG',
-  SHORT = 'SHORT'
-}
-
-export interface MainBranch {
-  analysisDate?: string;
-  isMain: true;
-  name: string;
-  status?: {
-    qualityGateStatus: string;
-  };
-}
-
-export interface LongLivingBranch {
-  analysisDate?: string;
-  isMain: false;
-  name: string;
-  status?: {
-    qualityGateStatus: string;
-  };
-  type: BranchType.LONG;
-}
+// Type ordered alphabetically to prevent merge conflicts
 
-export interface ShortLivingBranch {
-  analysisDate?: string;
-  isMain: false;
-  isOrphan?: true;
-  mergeBranch: string;
-  name: string;
-  status?: {
-    bugs: number;
-    codeSmells: number;
-    vulnerabilities: number;
-  };
-  type: BranchType.SHORT;
+export interface AppState {
+  adminPages?: Extension[];
+  authenticationError?: boolean;
+  authorizationError?: boolean;
+  canAdmin?: boolean;
+  globalPages?: Extension[];
+  organizationsEnabled?: boolean;
+  qualifiers: string[];
 }
 
 export type Branch = MainBranch | LongLivingBranch | ShortLivingBranch;
 
-export interface Extension {
-  key: string;
-  name: string;
+export enum BranchType {
+  LONG = 'LONG',
+  SHORT = 'SHORT'
 }
 
 export interface Breadcrumb {
@@ -75,12 +49,6 @@ export interface Breadcrumb {
   qualifier: string;
 }
 
-export interface LightComponent {
-  key: string;
-  organization: string;
-  qualifier: string;
-}
-
 export interface Component extends LightComponent {
   analysisDate?: string;
   breadcrumbs: Breadcrumb[];
@@ -111,51 +79,47 @@ interface ComponentConfiguration {
   showUpdateKey?: boolean;
 }
 
-export interface Metric {
-  custom?: boolean;
-  decimalScale?: number;
-  description?: string;
-  direction?: number;
-  domain?: string;
-  hidden?: boolean;
-  id: string;
+export interface CoveredFile {
   key: string;
-  name: string;
-  qualitative?: boolean;
-  type: string;
+  longName: string;
+  coveredLines: number;
 }
 
-export interface Organization {
-  adminPages?: { key: string; name: string }[];
-  avatar?: string;
-  canAdmin?: boolean;
-  canDelete?: boolean;
-  canProvisionProjects?: boolean;
-  canUpdateProjectsVisibilityToPrivate?: boolean;
-  description?: string;
-  isAdmin?: boolean;
-  isDefault?: boolean;
-  key: string;
-  name: string;
-  pages?: { key: string; name: string }[];
-  projectVisibility: Visibility;
-  url?: string;
+export interface CurrentUser {
+  isLoggedIn: boolean;
+  showOnboardingTutorial?: boolean;
 }
 
-export interface Paging {
-  pageIndex: number;
-  pageSize: number;
-  total: number;
+export interface CustomMeasure {
+  createdAt?: string;
+  description?: string;
+  id: string;
+  metric: {
+    key: string;
+    name: string;
+    domain?: string;
+    type: string;
+  };
+  projectKey: string;
+  pending?: boolean;
+  user: {
+    active?: boolean;
+    email?: string;
+    login: string;
+    name: string;
+  };
+  value: string;
+  updatedAt?: string;
 }
 
-export enum Visibility {
-  Public = 'public',
-  Private = 'private'
+export interface Extension {
+  key: string;
+  name: string;
 }
 
-export interface CurrentUser {
-  isLoggedIn: boolean;
-  showOnboardingTutorial?: boolean;
+export interface FacetValue {
+  count: number;
+  val: string;
 }
 
 export interface Group {
@@ -166,6 +130,11 @@ export interface Group {
   name: string;
 }
 
+export interface HomePage {
+  parameter?: string;
+  type: HomePageType;
+}
+
 export enum HomePageType {
   Project = 'PROJECT',
   Organization = 'ORGANIZATION',
@@ -173,15 +142,28 @@ export enum HomePageType {
   MyIssues = 'MY_ISSUES'
 }
 
-export interface HomePage {
-  parameter?: string;
-  type: HomePageType;
+export interface IdentityProvider {
+  backgroundColor: string;
+  helpMessage?: string;
+  iconPath: string;
+  key: string;
+  name: string;
+}
+
+export function isLoggedIn(user: CurrentUser): user is LoggedInUser {
+  return user.isLoggedIn;
 }
 
 export function isSameHomePage(a: HomePage, b: HomePage) {
   return a.type === b.type && a.parameter === b.parameter;
 }
 
+export interface LightComponent {
+  key: string;
+  organization: string;
+  qualifier: string;
+}
+
 export interface LoggedInUser extends CurrentUser {
   avatar?: string;
   email?: string;
@@ -191,18 +173,76 @@ export interface LoggedInUser extends CurrentUser {
   name: string;
 }
 
-export function isLoggedIn(user: CurrentUser): user is LoggedInUser {
-  return user.isLoggedIn;
+export interface LongLivingBranch {
+  analysisDate?: string;
+  isMain: false;
+  name: string;
+  status?: {
+    qualityGateStatus: string;
+  };
+  type: BranchType.LONG;
 }
 
-export interface AppState {
-  adminPages?: Extension[];
-  authenticationError?: boolean;
-  authorizationError?: boolean;
+export interface MainBranch {
+  analysisDate?: string;
+  isMain: true;
+  name: string;
+  status?: {
+    qualityGateStatus: string;
+  };
+}
+
+export interface Metric {
+  custom?: boolean;
+  decimalScale?: number;
+  description?: string;
+  direction?: number;
+  domain?: string;
+  hidden?: boolean;
+  id: string;
+  key: string;
+  name: string;
+  qualitative?: boolean;
+  type: string;
+}
+
+export interface Organization {
+  adminPages?: { key: string; name: string }[];
+  avatar?: string;
   canAdmin?: boolean;
-  globalPages?: Extension[];
-  organizationsEnabled?: boolean;
-  qualifiers: string[];
+  canDelete?: boolean;
+  canProvisionProjects?: boolean;
+  canUpdateProjectsVisibilityToPrivate?: boolean;
+  description?: string;
+  isAdmin?: boolean;
+  isDefault?: boolean;
+  key: string;
+  name: string;
+  pages?: { key: string; name: string }[];
+  projectVisibility: Visibility;
+  url?: string;
+}
+
+export interface Paging {
+  pageIndex: number;
+  pageSize: number;
+  total: number;
+}
+
+export interface PermissionTemplate {
+  defaultFor: string[];
+  id: string;
+  name: string;
+  description?: string;
+  projectKeyPattern?: string;
+  createdAt: string;
+  updatedAt?: string;
+  permissions: Array<{
+    key: string;
+    usersCount: number;
+    groupsCount: number;
+    withProjectCreator?: boolean;
+  }>;
 }
 
 export interface Rule {
@@ -219,6 +259,14 @@ export interface Rule {
   type: string;
 }
 
+export interface RuleActivation {
+  createdAt: string;
+  inherit: RuleInheritance;
+  params: { key: string; value: string }[];
+  qProfile: string;
+  severity: string;
+}
+
 export interface RuleDetails extends Rule {
   createdAt: string;
   debtOverloaded?: boolean;
@@ -243,12 +291,10 @@ export interface RuleDetails extends Rule {
   templateKey?: string;
 }
 
-export interface RuleActivation {
-  createdAt: string;
-  inherit: RuleInheritance;
-  params: { key: string; value: string }[];
-  qProfile: string;
-  severity: string;
+export enum RuleInheritance {
+  NotInherited = 'NONE',
+  Inherited = 'INHERITED',
+  Overridden = 'OVERRIDES'
 }
 
 export interface RuleParameter {
@@ -260,100 +306,24 @@ export interface RuleParameter {
   type: string;
 }
 
-export enum RuleInheritance {
-  NotInherited = 'NONE',
-  Inherited = 'INHERITED',
-  Overridden = 'OVERRIDES'
-}
-
 export enum RuleScope {
   Main = 'MAIN',
   Test = 'TEST',
   All = 'ALL'
 }
 
-export interface IdentityProvider {
-  backgroundColor: string;
-  helpMessage?: string;
-  iconPath: string;
-  key: string;
-  name: string;
-}
-
-export interface User {
-  active: boolean;
-  avatar?: string;
-  email?: string;
-  externalIdentity?: string;
-  externalProvider?: string;
-  groups?: string[];
-  local: boolean;
-  login: string;
+export interface ShortLivingBranch {
+  analysisDate?: string;
+  isMain: false;
+  isOrphan?: true;
+  mergeBranch: string;
   name: string;
-  scmAccounts?: string[];
-  tokensCount?: number;
-}
-
-export interface CustomMeasure {
-  createdAt?: string;
-  description?: string;
-  id: string;
-  metric: {
-    key: string;
-    name: string;
-    domain?: string;
-    type: string;
-  };
-  projectKey: string;
-  pending?: boolean;
-  user: {
-    active?: boolean;
-    email?: string;
-    login: string;
-    name: string;
+  status?: {
+    bugs: number;
+    codeSmells: number;
+    vulnerabilities: number;
   };
-  value: string;
-  updatedAt?: string;
-}
-
-export interface PermissionTemplate {
-  defaultFor: string[];
-  id: string;
-  name: string;
-  description?: string;
-  projectKeyPattern?: string;
-  createdAt: string;
-  updatedAt?: string;
-  permissions: Array<{
-    key: string;
-    usersCount: number;
-    groupsCount: number;
-    withProjectCreator?: boolean;
-  }>;
-}
-
-export interface TestCase {
-  coveredLines: number;
-  durationInMs: number;
-  fileId: string;
-  fileKey: string;
-  fileName: string;
-  id: string;
-  message?: string;
-  name: string;
-  stacktrace?: string;
-  status: string;
-}
-
-export interface CoveredFile {
-  key: string;
-  longName: string;
-  coveredLines: number;
-}
-
-export interface FacetValue {
-  count: number;
-  val: string;
+  type: BranchType.SHORT;
 }
 
 export interface SourceViewerFile {
@@ -374,3 +344,35 @@ export interface SourceViewerFile {
   subProjectName?: string;
   uuid: string;
 }
+
+export interface TestCase {
+  coveredLines: number;
+  durationInMs: number;
+  fileId: string;
+  fileKey: string;
+  fileName: string;
+  id: string;
+  message?: string;
+  name: string;
+  stacktrace?: string;
+  status: string;
+}
+
+export interface User {
+  active: boolean;
+  avatar?: string;
+  email?: string;
+  externalIdentity?: string;
+  externalProvider?: string;
+  groups?: string[];
+  local: boolean;
+  login: string;
+  name: string;
+  scmAccounts?: string[];
+  tokensCount?: number;
+}
+
+export enum Visibility {
+  Public = 'public',
+  Private = 'private'
+}