CR fixes III
authorDaniel Kos <daniel.kos@contractors.roche.com>
Mon, 3 Sep 2018 11:46:46 +0000 (13:46 +0200)
committerDaniel Kos <daniel.kos@contractors.roche.com>
Mon, 3 Sep 2018 11:46:46 +0000 (13:46 +0200)
Feature #13828

Arvados-DCO-1.1-Signed-off-by: Daniel Kos <daniel.kos@contractors.roche.com>

43 files changed:
src/models/collection.ts
src/models/group.ts
src/models/resource.ts
src/services/ancestors-service/ancestors-service.ts
src/services/api/filter-builder.test.ts [moved from src/common/api/filter-builder.test.ts with 100% similarity]
src/services/api/filter-builder.ts [moved from src/common/api/filter-builder.ts with 100% similarity]
src/services/api/order-builder.test.ts [moved from src/common/api/order-builder.test.ts with 100% similarity]
src/services/api/order-builder.ts [moved from src/common/api/order-builder.ts with 94% similarity]
src/services/api/url-builder.ts [moved from src/common/api/url-builder.ts with 100% similarity]
src/services/collection-files-service/collection-files-service.ts
src/services/collection-service/collection-service.ts
src/services/common-service/common-resource-service.test.ts [moved from src/common/api/common-resource-service.test.ts with 98% similarity]
src/services/common-service/common-resource-service.ts [moved from src/common/api/common-resource-service.ts with 98% similarity]
src/services/common-service/trashable-resource-service.ts [new file with mode: 0644]
src/services/container-request-service/container-request-service.ts
src/services/container-service/container-service.ts
src/services/favorite-service/favorite-service.test.ts
src/services/favorite-service/favorite-service.ts
src/services/groups-service/groups-service.ts
src/services/keep-service/keep-service.ts
src/services/link-service/link-service.ts
src/services/project-service/project-service.test.ts
src/services/project-service/project-service.ts
src/services/tag-service/tag-service.ts
src/services/user-service/user-service.ts
src/store/collection-panel/collection-panel-files/collection-panel-files-actions.ts
src/store/collections/collection-copy-actions.ts
src/store/collections/collection-create-actions.ts
src/store/collections/collection-move-actions.ts
src/store/collections/collection-partial-copy-actions.ts
src/store/collections/collection-update-actions.ts
src/store/data-explorer/data-explorer-middleware-service.ts
src/store/favorite-panel/favorite-panel-middleware-service.ts
src/store/processes/processes-actions.ts
src/store/project-panel/project-panel-middleware-service.ts
src/store/projects/project-create-actions.ts
src/store/projects/project-move-actions.ts
src/store/projects/project-update-actions.ts
src/store/side-panel-tree/side-panel-tree-actions.ts
src/store/trash-panel/trash-panel-middleware-service.ts
src/views-components/data-explorer/renderers.tsx
src/views-components/project-tree-picker/project-tree-picker.tsx
src/views/trash-panel/trash-panel.tsx

index 5215998956cde1d419b00e1c47a71beab565f4eb..f8e38f9a0fac227bd2cfeccd62654723f9c66ef5 100644 (file)
@@ -2,9 +2,9 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import { ResourceKind, TrashResource } from "./resource";
+import { ResourceKind, TrashableResource } from "./resource";
 
-export interface CollectionResource extends TrashResource {
+export interface CollectionResource extends TrashableResource {
     kind: ResourceKind.COLLECTION;
     name: string;
     description: string;
index 5319250e1bfc406714e30a2f3a909b337488dc19..e2d0367a5e40fab7fef6fc7e98058c9e3840ee89 100644 (file)
@@ -2,9 +2,9 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import { ResourceKind, TrashResource } from "./resource";
+import { ResourceKind, TrashableResource } from "./resource";
 
-export interface GroupResource extends TrashResource {
+export interface GroupResource extends TrashableResource {
     kind: ResourceKind.GROUP;
     name: string;
     groupClass: GroupClass | null;
index aff1b2417d6fe06a04b9ada5e1bf5fbb31282876..3d40b50c42217df19b0830b8d9869deddc015cbc 100644 (file)
@@ -14,7 +14,7 @@ export interface Resource {
     etag: string;
 }
 
-export interface TrashResource extends Resource {
+export interface TrashableResource extends Resource {
     trashAt: string;
     deleteAt: string;
     isTrashed: boolean;
index daab58b3fc38ecd8d4ef5cac39c7169dcacbebff..f90b4a3053ca1744c2228a51c4c45177bf644c87 100644 (file)
@@ -6,7 +6,7 @@ import { GroupsService } from "~/services/groups-service/groups-service";
 import { UserService } from '../user-service/user-service';
 import { GroupResource } from '~/models/group';
 import { UserResource } from '~/models/user';
-import { extractUuidObjectType, ResourceObjectType, TrashResource } from "~/models/resource";
+import { extractUuidObjectType, ResourceObjectType, TrashableResource } from "~/models/resource";
 
 export class AncestorService {
     constructor(
@@ -14,7 +14,7 @@ export class AncestorService {
         private userService: UserService
     ) { }
 
-    async ancestors(uuid: string, rootUuid: string): Promise<Array<UserResource | GroupResource | TrashResource>> {
+    async ancestors(uuid: string, rootUuid: string): Promise<Array<UserResource | GroupResource | TrashableResource>> {
         const service = this.getService(extractUuidObjectType(uuid));
         if (service) {
             const resource = await service.get(uuid);
similarity index 94%
rename from src/common/api/order-builder.ts
rename to src/services/api/order-builder.ts
index 196b06952e55c911d9cd0bac6ed881151918bf98..03f2696a5614178daa4aaec77e0d346d045faf75 100644 (file)
@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: AGPL-3.0
 
 import * as _ from "lodash";
-import { Resource } from "~/models/resource";
+import { Resource } from "src/models/resource";
 
 export enum OrderDirection { ASC, DESC }
 
index 1d9a537f4a559cfdf06ab01d29eb9a011943f1ed..6f88a729aba7ebba03e73709fe5ca97189f64460 100644 (file)
@@ -5,7 +5,7 @@
 import { CollectionService } from "../collection-service/collection-service";
 import { parseKeepManifestText, stringifyKeepManifest } from "./collection-manifest-parser";
 import { mapManifestToCollectionFilesTree } from "./collection-manifest-mapper";
-import { CommonResourceService } from "~/common/api/common-resource-service";
+import { CommonResourceService } from "~/services/common-service/common-resource-service";
 import * as _ from "lodash";
 
 export class CollectionFilesService {
index 581747b95cb1afa92821f6eebe5e34573251b397..6e6f2a97d439748a3fb96d9741cff45aa965e073 100644 (file)
@@ -2,7 +2,6 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import { CommonResourceService } from "~/common/api/common-resource-service";
 import { CollectionResource } from "~/models/collection";
 import { AxiosInstance } from "axios";
 import { CollectionFile, CollectionDirectory } from "~/models/collection-file";
@@ -11,11 +10,11 @@ import { AuthService } from "../auth-service/auth-service";
 import { mapTreeValues } from "~/models/tree";
 import { parseFilesResponse } from "./collection-service-files-response";
 import { fileToArrayBuffer } from "~/common/file";
-import * as _ from 'lodash';
+import { TrashableResourceService } from "~/services/common-service/trashable-resource-service";
 
 export type UploadProgress = (fileId: number, loaded: number, total: number, currentTime: number) => void;
 
-export class CollectionService extends CommonResourceService<CollectionResource> {
+export class CollectionService extends TrashableResourceService<CollectionResource> {
     constructor(serverApi: AxiosInstance, private webdavClient: WebDAV, private authService: AuthService) {
         super(serverApi, "collections");
     }
@@ -68,22 +67,4 @@ export class CollectionService extends CommonResourceService<CollectionResource>
         return this.webdavClient.put(fileURL, fileContent, requestConfig);
 
     }
-
-    trash(uuid: string): Promise<CollectionResource> {
-        return this.serverApi
-            .post(this.resourceType + `${uuid}/trash`)
-            .then(CommonResourceService.mapResponseKeys);
-    }
-
-    untrash(uuid: string): Promise<CollectionResource> {
-        const params = {
-            ensure_unique_name: true
-        };
-        return this.serverApi
-            .post(this.resourceType + `${uuid}/untrash`, {
-                params: CommonResourceService.mapKeys(_.snakeCase)(params)
-            })
-            .then(CommonResourceService.mapResponseKeys);
-    }
-
 }
similarity index 98%
rename from src/common/api/common-resource-service.test.ts
rename to src/services/common-service/common-resource-service.test.ts
index a1d5e0868f4e0f0c333251022aed668e2edc7ded..d67d5dbf403ab66ea59c6267dce0d0fa90dacd9c 100644 (file)
@@ -5,7 +5,7 @@
 import { CommonResourceService } from "./common-resource-service";
 import axios, { AxiosInstance } from "axios";
 import MockAdapter from "axios-mock-adapter";
-import { Resource } from "~/models/resource";
+import { Resource } from "src/models/resource";
 
 export const mockResourceService = <R extends Resource, C extends CommonResourceService<R>>(Service: new (client: AxiosInstance) => C) => {
     const axiosInstance = axios.create();
similarity index 98%
rename from src/common/api/common-resource-service.ts
rename to src/services/common-service/common-resource-service.ts
index 2c9bfb51679f16bef721b4499f0cf00181ddc3f4..3fb4004688abe3fc7b9c449b1729aa3aa8bbd9db 100644 (file)
@@ -4,7 +4,7 @@
 
 import * as _ from "lodash";
 import { AxiosInstance, AxiosPromise } from "axios";
-import { Resource } from "~/models/resource";
+import { Resource } from "src/models/resource";
 
 export interface ListArguments {
     limit?: number;
diff --git a/src/services/common-service/trashable-resource-service.ts b/src/services/common-service/trashable-resource-service.ts
new file mode 100644 (file)
index 0000000..23e7366
--- /dev/null
@@ -0,0 +1,32 @@
+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
+import * as _ from "lodash";
+import { AxiosInstance } from "axios";
+import { TrashableResource } from "src/models/resource";
+import { CommonResourceService } from "~/services/common-service/common-resource-service";
+
+export class TrashableResourceService<T extends TrashableResource> extends CommonResourceService<T> {
+
+    constructor(serverApi: AxiosInstance, resourceType: string) {
+        super(serverApi, resourceType);
+    }
+
+    trash(uuid: string): Promise<T> {
+        return this.serverApi
+            .post(this.resourceType + `${uuid}/trash`)
+            .then(CommonResourceService.mapResponseKeys);
+    }
+
+    untrash(uuid: string): Promise<T> {
+        const params = {
+            ensure_unique_name: true
+        };
+        return this.serverApi
+            .post(this.resourceType + `${uuid}/untrash`, {
+                params: CommonResourceService.mapKeys(_.snakeCase)(params)
+            })
+            .then(CommonResourceService.mapResponseKeys);
+    }
+}
index 8cf8e74a0d72de55864d3761df5937b5b54980e5..01805ff903ee4396da0ae64dc283045da2119c98 100644 (file)
@@ -2,7 +2,7 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import { CommonResourceService } from "~/common/api/common-resource-service";
+import { CommonResourceService } from "~/services/common-service/common-resource-service";
 import { AxiosInstance } from "axios";
 import { ContainerRequestResource } from '../../models/container-request';
 
index 698c7f52b8285ad2a65c58ecece17095b32d4d8e..0ace1f60af6a1e72fbf674727493209796a5f360 100644 (file)
@@ -2,7 +2,7 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import { CommonResourceService } from "~/common/api/common-resource-service";
+import { CommonResourceService } from "~/services/common-service/common-resource-service";
 import { AxiosInstance } from "axios";
 import { ContainerResource } from '../../models/container';
 
index d4bf9ac7f68c2bf14bccd1dd685e8db29d13cab3..beaf869eeedb0a0594e20c81e32e2206f2cac2ae 100644 (file)
@@ -6,8 +6,8 @@ import { LinkService } from "../link-service/link-service";
 import { GroupsService } from "../groups-service/groups-service";
 import { FavoriteService } from "./favorite-service";
 import { LinkClass } from "~/models/link";
-import { mockResourceService } from "~/common/api/common-resource-service.test";
-import { FilterBuilder } from "~/common/api/filter-builder";
+import { mockResourceService } from "~/services/common-service/common-resource-service.test";
+import { FilterBuilder } from "~/services/api/filter-builder";
 
 describe("FavoriteService", () => {
 
index 7a49c8ccbac3555af028536815f38ade60c08de5..4601054315fab0a196c1fa4de6c12056558e4a57 100644 (file)
@@ -5,8 +5,8 @@
 import { LinkService } from "../link-service/link-service";
 import { GroupsService, GroupContentsResource } from "../groups-service/groups-service";
 import { LinkClass } from "~/models/link";
-import { FilterBuilder, joinFilters } from "~/common/api/filter-builder";
-import { ListResults } from "~/common/api/common-resource-service";
+import { FilterBuilder, joinFilters } from "~/services/api/filter-builder";
+import { ListResults } from "~/services/common-service/common-resource-service";
 
 export interface FavoriteListArguments {
     limit?: number;
index 4756aa3edcf22c1b000a6b7894fdc265970c9a44..b285e9285518505cf6e459d357ba72ee58acec05 100644 (file)
@@ -3,12 +3,13 @@
 // SPDX-License-Identifier: AGPL-3.0
 
 import * as _ from "lodash";
-import { CommonResourceService, ListResults } from "~/common/api/common-resource-service";
+import { CommonResourceService, ListResults } from "~/services/common-service/common-resource-service";
 import { AxiosInstance } from "axios";
 import { CollectionResource } from "~/models/collection";
 import { ProjectResource } from "~/models/project";
 import { ProcessResource } from "~/models/process";
-import { TrashResource } from "~/models/resource";
+import { TrashableResource } from "~/models/resource";
+import { TrashableResourceService } from "~/services/common-service/trashable-resource-service";
 
 export interface ContentsArguments {
     limit?: number;
@@ -24,7 +25,7 @@ export type GroupContentsResource =
     ProjectResource |
     ProcessResource;
 
-export class GroupsService<T extends TrashResource = TrashResource> extends CommonResourceService<T> {
+export class GroupsService<T extends TrashableResource = TrashableResource> extends TrashableResourceService<T> {
 
     constructor(serverApi: AxiosInstance) {
         super(serverApi, "groups");
@@ -43,24 +44,6 @@ export class GroupsService<T extends TrashResource = TrashResource> extends Comm
             })
             .then(CommonResourceService.mapResponseKeys);
     }
-
-    trash(uuid: string): Promise<T> {
-        return this.serverApi
-            .post(this.resourceType + `${uuid}/trash`)
-            .then(CommonResourceService.mapResponseKeys);
-    }
-
-    untrash(uuid: string): Promise<T> {
-        const params = {
-            ensure_unique_name: true
-        };
-        return this.serverApi
-            .post(this.resourceType + `${uuid}/untrash`, {
-                params: CommonResourceService.mapKeys(_.snakeCase)(params)
-            })
-            .then(CommonResourceService.mapResponseKeys);
-    }
-
 }
 
 export enum GroupContentsResourcePrefix {
index fd49823a4730a29b8a1c45e3271de991650d9d09..77d06d933d37ba334e5205a70adde87d127d83d4 100644 (file)
@@ -2,7 +2,7 @@
 //\r
 // SPDX-License-Identifier: AGPL-3.0\r
 \r
-import { CommonResourceService } from "~/common/api/common-resource-service";\r
+import { CommonResourceService } from "~/services/common-service/common-resource-service";\r
 import { AxiosInstance } from "axios";\r
 import { KeepResource } from "~/models/keep";\r
 \r
index 8724904ef2a5eb0d61ed9ba101f82d5eda3bff60..c77def5f8c2eb461b8533ded52b6ae522cdc03e4 100644 (file)
@@ -2,7 +2,7 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import { CommonResourceService } from "~/common/api/common-resource-service";
+import { CommonResourceService } from "~/services/common-service/common-resource-service";
 import { LinkResource } from "~/models/link";
 import { AxiosInstance } from "axios";
 
index a717736c3a68f3fb3e5ca9692696fcad5d72d095..11c2f61f3d87f5d9f7190726fc22d658d078f73d 100644 (file)
@@ -4,7 +4,7 @@
 
 import axios from "axios";
 import { ProjectService } from "./project-service";
-import { FilterBuilder } from "~/common/api/filter-builder";
+import { FilterBuilder } from "~/services/api/filter-builder";
 
 describe("CommonResourceService", () => {
     const axiosInstance = axios.create();
index e916f3c0a4da9d8be388a8577d3d304115385007..2dc3eeb0a87f61ee5af40454802d4d8b09e9e860 100644 (file)
@@ -5,8 +5,8 @@
 import { GroupsService } from "../groups-service/groups-service";
 import { ProjectResource } from "~/models/project";
 import { GroupClass } from "~/models/group";
-import { ListArguments } from "~/common/api/common-resource-service";
-import { FilterBuilder, joinFilters } from "~/common/api/filter-builder";
+import { ListArguments } from "~/services/common-service/common-resource-service";
+import { FilterBuilder, joinFilters } from "~/services/api/filter-builder";
 
 export class ProjectService extends GroupsService<ProjectResource> {
 
index 52e481a7975b38890c88c9d9309f68bf960e59fa..9f5b34fd412a725de32e2279b670067fa764bb96 100644 (file)
@@ -4,9 +4,9 @@
 
 import { LinkService } from "../link-service/link-service";
 import { LinkClass } from "~/models/link";
-import { FilterBuilder } from "~/common/api/filter-builder";
+import { FilterBuilder } from "~/services/api/filter-builder";
 import { TagTailType, TagResource } from "~/models/tag";
-import { OrderBuilder } from "~/common/api/order-builder";
+import { OrderBuilder } from "~/services/api/order-builder";
 
 export class TagService {
 
index 3c09a87d78512439887389ccaee4d0afdc698f32..31cc4bbbbce8820b357dcab978a2efc2f8fb381f 100644 (file)
@@ -3,11 +3,11 @@
 // SPDX-License-Identifier: AGPL-3.0
 
 import { AxiosInstance } from "axios";
-import { CommonResourceService } from "~/common/api/common-resource-service";
+import { CommonResourceService } from "~/services/common-service/common-resource-service";
 import { UserResource } from "~/models/user";
 
 export class UserService extends CommonResourceService<UserResource> {
     constructor(serverApi: AxiosInstance) {
         super(serverApi, "users");
     }
-}
\ No newline at end of file
+}
index 413fedfc1c08eccd17fe24f4c22aecd03d5a000e..f214fd2f7b41297677efac451836bf09568eee1a 100644 (file)
@@ -12,7 +12,7 @@ import { dialogActions } from '../../dialog/dialog-actions';
 import { getNodeValue } from "~/models/tree";
 import { filterCollectionFilesBySelection } from './collection-panel-files-state';
 import { startSubmit, initialize, stopSubmit, reset } from 'redux-form';
-import { getCommonResourceServiceError, CommonResourceServiceError } from "~/common/api/common-resource-service";
+import { getCommonResourceServiceError, CommonResourceServiceError } from "~/services/common-service/common-resource-service";
 import { getDialog } from "~/store/dialog/dialog-reducer";
 import { resetPickerProjectTree } from '~/store/project-tree-picker/project-tree-picker-actions';
 
index 15ea85532d3f66a7f8a1c2a798c8c805227a4675..87ba0424be5df6bba68f31dbade878b57559077c 100644 (file)
@@ -8,7 +8,7 @@ import { initialize, startSubmit, stopSubmit } from 'redux-form';
 import { resetPickerProjectTree } from '~/store/project-tree-picker/project-tree-picker-actions';
 import { RootState } from '~/store/store';
 import { ServiceRepository } from '~/services/services';
-import { getCommonResourceServiceError, CommonResourceServiceError } from '~/common/api/common-resource-service';
+import { getCommonResourceServiceError, CommonResourceServiceError } from '~/services/common-service/common-resource-service';
 
 export const COLLECTION_COPY_FORM_NAME = 'collectionCopyFormName';
 
@@ -46,4 +46,4 @@ export const copyCollection = (resource: CollectionCopyFormDialogData) =>
             }
             return ;
         }
-    };
\ No newline at end of file
+    };
index 5a1246a7b0891b4a387cfb7a92dd538b4c34cc8a..254d6a8aa6850cb318057f5bbbccd228e397653e 100644 (file)
@@ -7,7 +7,7 @@ import { reset, startSubmit, stopSubmit, initialize } from 'redux-form';
 import { RootState } from '~/store/store';
 import { dialogActions } from "~/store/dialog/dialog-actions";
 import { ServiceRepository } from '~/services/services';
-import { getCommonResourceServiceError, CommonResourceServiceError } from "~/common/api/common-resource-service";
+import { getCommonResourceServiceError, CommonResourceServiceError } from "~/services/common-service/common-resource-service";
 import { uploadCollectionFiles } from './collection-upload-actions';
 import { fileUploaderActions } from '~/store/file-uploader/file-uploader-actions';
 
index dcd7b1aa8068136d3713eaf8c1f481dddac7b57e..420bcd01f1d90ed3d505414291d65b8f0bb89193 100644 (file)
@@ -7,7 +7,7 @@ import { dialogActions } from "~/store/dialog/dialog-actions";
 import { startSubmit, stopSubmit, initialize } from 'redux-form';
 import { ServiceRepository } from '~/services/services';
 import { RootState } from '~/store/store';
-import { getCommonResourceServiceError, CommonResourceServiceError } from "~/common/api/common-resource-service";
+import { getCommonResourceServiceError, CommonResourceServiceError } from "~/services/common-service/common-resource-service";
 import { snackbarActions } from '~/store/snackbar/snackbar-actions';
 import { projectPanelActions } from '~/store/project-panel/project-panel-action';
 import { MoveToFormDialogData } from '~/store/move-to-dialog/move-to-dialog';
index a063abae4107a28438da4e503d2c33d7700a1ca6..dedf75e16cda4d972720b4a685d2fecefe04d2d1 100644 (file)
@@ -10,7 +10,7 @@ import { dialogActions } from '~/store/dialog/dialog-actions';
 import { ServiceRepository } from '~/services/services';
 import { filterCollectionFilesBySelection } from '../collection-panel/collection-panel-files/collection-panel-files-state';
 import { snackbarActions } from '~/store/snackbar/snackbar-actions';
-import { getCommonResourceServiceError, CommonResourceServiceError } from '~/common/api/common-resource-service';
+import { getCommonResourceServiceError, CommonResourceServiceError } from '~/services/common-service/common-resource-service';
 
 export const COLLECTION_PARTIAL_COPY_FORM_NAME = 'COLLECTION_PARTIAL_COPY_DIALOG';
 
@@ -68,4 +68,4 @@ export const copyCollectionPartial = ({ name, description, projectUuid }: Collec
                 }
             }
         }
-    };
\ No newline at end of file
+    };
index 75e03d5066d7bd6d19422152e8881da2cb8c8db1..03bb72aa56ff4f8c4cebce0414af3ad0d2efd23f 100644 (file)
@@ -12,7 +12,7 @@ import { dataExplorerActions } from "~/store/data-explorer/data-explorer-action"
 import { snackbarActions } from "~/store/snackbar/snackbar-actions";
 import { ContextMenuResource } from '~/store/context-menu/context-menu-reducer';
 import { PROJECT_PANEL_ID } from "~/views/project-panel/project-panel";
-import { getCommonResourceServiceError, CommonResourceServiceError } from "~/common/api/common-resource-service";
+import { getCommonResourceServiceError, CommonResourceServiceError } from "~/services/common-service/common-resource-service";
 import { ServiceRepository } from "~/services/services";
 import { CollectionResource } from '~/models/collection';
 
@@ -46,4 +46,4 @@ export const updateCollection = (collection: Partial<CollectionResource>) =>
             }
             return;
         }
-    };
\ No newline at end of file
+    };
index 7ad74f2f32449dbb78b0fa766c665a142c73cd74..934af7be94ca04ebe369a7911403c09810592684 100644 (file)
@@ -7,7 +7,7 @@ import { RootState } from "../store";
 import { DataColumns } from "~/components/data-table/data-table";
 import { DataTableFilterItem } from "~/components/data-table-filters/data-table-filters";
 import { DataExplorer } from './data-explorer-reducer';
-import { ListResults } from '~/common/api/common-resource-service';
+import { ListResults } from '~/services/common-service/common-resource-service';
 
 export abstract class DataExplorerMiddlewareService {
     protected readonly id: string;
index e5857dd363e75433fb9bdb3822e738c39ea7fa48..f808b97e8835882a682694799a0b52cdc63155f9 100644 (file)
@@ -8,11 +8,11 @@ import { RootState } from "../store";
 import { DataColumns } from "~/components/data-table/data-table";
 import { ServiceRepository } from "~/services/services";
 import { SortDirection } from "~/components/data-table/data-column";
-import { FilterBuilder } from "~/common/api/filter-builder";
+import { FilterBuilder } from "~/services/api/filter-builder";
 import { updateFavorites } from "../favorites/favorites-actions";
 import { favoritePanelActions } from "./favorite-panel-action";
 import { Dispatch, MiddlewareAPI } from "redux";
-import { OrderBuilder, OrderDirection } from "~/common/api/order-builder";
+import { OrderBuilder, OrderDirection } from "~/services/api/order-builder";
 import { LinkResource } from "~/models/link";
 import { GroupContentsResource, GroupContentsResourcePrefix } from "~/services/groups-service/groups-service";
 import { resourcesActions } from "~/store/resources/resources-actions";
index d667517191179cca2c020df3b0507934d76e5d78..f026d37ed3b06bae0aed2ebd8bfe24f2883ab2a9 100644 (file)
@@ -6,7 +6,7 @@ import { Dispatch } from "redux";
 import { RootState } from '~/store/store';
 import { ServiceRepository } from '~/services/services';
 import { updateResources } from '~/store/resources/resources-actions';
-import { FilterBuilder } from '~/common/api/filter-builder';
+import { FilterBuilder } from '~/services/api/filter-builder';
 import { ContainerRequestResource } from '../../models/container-request';
 
 export const loadProcess = (uuid: string) =>
index da7f5b33e0d96e928f534f9491e501004fabd3f7..aade4172f99201cc10205109bd8740c37d9f72ee 100644 (file)
@@ -8,8 +8,8 @@ import { RootState } from "../store";
 import { DataColumns } from "~/components/data-table/data-table";
 import { ServiceRepository } from "~/services/services";
 import { SortDirection } from "~/components/data-table/data-column";
-import { OrderBuilder, OrderDirection } from "~/common/api/order-builder";
-import { FilterBuilder } from "~/common/api/filter-builder";
+import { OrderBuilder, OrderDirection } from "~/services/api/order-builder";
+import { FilterBuilder } from "~/services/api/filter-builder";
 import { GroupContentsResourcePrefix, GroupContentsResource } from "~/services/groups-service/groups-service";
 import { updateFavorites } from "../favorites/favorites-actions";
 import { projectPanelActions, PROJECT_PANEL_CURRENT_UUID } from './project-panel-action';
@@ -19,7 +19,7 @@ import { updateResources } from "~/store/resources/resources-actions";
 import { getProperty } from "~/store/properties/properties";
 import { snackbarActions } from '../snackbar/snackbar-actions';
 import { DataExplorer, getDataExplorer } from '../data-explorer/data-explorer-reducer';
-import { ListResults } from '~/common/api/common-resource-service';
+import { ListResults } from '~/services/common-service/common-resource-service';
 
 export class ProjectPanelMiddlewareService extends DataExplorerMiddlewareService {
     constructor(private services: ServiceRepository, id: string) {
index 76f20590763ff8c0791117faedeee73614ce7aa3..6d704c207edb6c5b1cd463466923303cf251ae72 100644 (file)
@@ -6,7 +6,7 @@ import { Dispatch } from "redux";
 import { reset, startSubmit, stopSubmit, initialize } from 'redux-form';
 import { RootState } from '~/store/store';
 import { dialogActions } from "~/store/dialog/dialog-actions";
-import { getCommonResourceServiceError, CommonResourceServiceError } from '~/common/api/common-resource-service';
+import { getCommonResourceServiceError, CommonResourceServiceError } from '~/services/common-service/common-resource-service';
 import { ProjectResource } from '~/models/project';
 import { ServiceRepository } from '~/services/services';
 
index 6e24314ccc6f00a75bbcbb06629defb9a716dff2..c251bdf8f8724d3a6fd7969dce4aae0b011d1ab2 100644 (file)
@@ -7,7 +7,7 @@ import { dialogActions } from "~/store/dialog/dialog-actions";
 import { startSubmit, stopSubmit, initialize } from 'redux-form';
 import { ServiceRepository } from '~/services/services';
 import { RootState } from '~/store/store';
-import { getCommonResourceServiceError, CommonResourceServiceError } from "~/common/api/common-resource-service";
+import { getCommonResourceServiceError, CommonResourceServiceError } from "~/services/common-service/common-resource-service";
 import { MoveToFormDialogData } from '~/store/move-to-dialog/move-to-dialog';
 import { resetPickerProjectTree } from '~/store/project-tree-picker/project-tree-picker-actions';
 
index 39b97b24f782e7d0ac1e99a46b441f8828352fb8..8e327ebeb3e25041012ad918f3e30aa1225bdda6 100644 (file)
@@ -7,7 +7,7 @@ import { initialize, startSubmit, stopSubmit } from 'redux-form';
 import { RootState } from "~/store/store";
 import { dialogActions } from "~/store/dialog/dialog-actions";
 import { ContextMenuResource } from '~/store/context-menu/context-menu-reducer';
-import { getCommonResourceServiceError, CommonResourceServiceError } from "~/common/api/common-resource-service";
+import { getCommonResourceServiceError, CommonResourceServiceError } from "~/services/common-service/common-resource-service";
 import { ServiceRepository } from "~/services/services";
 import { ProjectResource } from '~/models/project';
 
@@ -40,4 +40,4 @@ export const updateProject = (project: Partial<ProjectResource>) =>
             }
             return ;
         }
-    };
\ No newline at end of file
+    };
index 8fbc375c9a706016b2a98f660c8a8749e1aa65b8..c102ab3cd408407fc3cf93f052ceb7cc0a384223 100644 (file)
@@ -7,7 +7,7 @@ import { treePickerActions } from "~/store/tree-picker/tree-picker-actions";
 import { createTreePickerNode, TreePickerNode } from '~/store/tree-picker/tree-picker';
 import { RootState } from '../store';
 import { ServiceRepository } from '~/services/services';
-import { FilterBuilder } from '~/common/api/filter-builder';
+import { FilterBuilder } from '~/services/api/filter-builder';
 import { resourcesActions } from '../resources/resources-actions';
 import { getTreePicker, TreePicker } from '../tree-picker/tree-picker';
 import { TreeItemStatus } from "~/components/tree/tree";
index 90a8b19a0e1fc41a058a83e32bcf15688baf219d..19ed3be13194982a97527417adb3b4eff8438389 100644 (file)
@@ -10,16 +10,16 @@ import { RootState } from "../store";
 import { DataColumns } from "~/components/data-table/data-table";
 import { ServiceRepository } from "~/services/services";
 import { SortDirection } from "~/components/data-table/data-column";
-import { FilterBuilder } from "~/common/api/filter-builder";
+import { FilterBuilder } from "~/services/api/filter-builder";
 import { trashPanelActions } from "./trash-panel-action";
 import { Dispatch, MiddlewareAPI } from "redux";
-import { OrderBuilder, OrderDirection } from "~/common/api/order-builder";
+import { OrderBuilder, OrderDirection } from "~/services/api/order-builder";
 import { GroupContentsResourcePrefix } from "~/services/groups-service/groups-service";
 import { TrashPanelColumnNames, TrashPanelFilter } from "~/views/trash-panel/trash-panel";
 import { ProjectResource } from "~/models/project";
 import { ProjectPanelColumnNames } from "~/views/project-panel/project-panel";
 import { updateFavorites } from "~/store/favorites/favorites-actions";
-import { TrashResource } from "~/models/resource";
+import { TrashableResource } from "~/models/resource";
 import { snackbarActions } from "~/store/snackbar/snackbar-actions";
 import { updateResources } from "~/store/resources/resources-actions";
 
@@ -63,7 +63,7 @@ export class TrashPanelMiddlewareService extends DataExplorerMiddlewareService {
                 });
 
             const items = listResults.items
-                .filter(it => (it as TrashResource).isTrashed)
+                .filter(it => (it as TrashableResource).isTrashed)
                 .map(it => it.uuid);
 
             api.dispatch(trashPanelActions.SET_ITEMS({
index 9bcbcf611c288b50b5434c5a8c8ecca1d99ab334..c96813df95bb25f8b4f773804ed6eda5df7255b2 100644 (file)
@@ -5,7 +5,7 @@
 import * as React from 'react';
 import { Grid, Typography } from '@material-ui/core';
 import { FavoriteStar } from '../favorite-star/favorite-star';
-import { ResourceKind, TrashResource } from '~/models/resource';
+import { ResourceKind, TrashableResource } from '~/models/resource';
 import { ProjectIcon, CollectionIcon, ProcessIcon, DefaultIcon } from '~/components/icon/icon';
 import { formatDate, formatFileSize } from '~/common/formatters';
 import { resourceLabel } from '~/common/labels';
@@ -64,13 +64,13 @@ export const ResourceLastModifiedDate = connect(
 
 export const ResourceTrashDate = connect(
     (state: RootState, props: { uuid: string }) => {
-        const resource = getResource<TrashResource>(props.uuid)(state.resources);
+        const resource = getResource<TrashableResource>(props.uuid)(state.resources);
         return { date: resource ? resource.trashAt : '' };
     })((props: { date: string }) => renderDate(props.date));
 
 export const ResourceDeleteDate = connect(
     (state: RootState, props: { uuid: string }) => {
-        const resource = getResource<TrashResource>(props.uuid)(state.resources);
+        const resource = getResource<TrashableResource>(props.uuid)(state.resources);
         return { date: resource ? resource.deleteAt : '' };
     })((props: { date: string }) => renderDate(props.date));
 
index 3859180f0e2d81f0308070d399a1b836d5fa277a..9139ee7c20c531a65668995b0fbe4245323848f8 100644 (file)
@@ -15,7 +15,7 @@ import { ProjectIcon, FavoriteIcon, ProjectsIcon, ShareMeIcon } from "~/componen
 import { createTreePickerNode } from "~/store/tree-picker/tree-picker";
 import { RootState } from "~/store/store";
 import { ServiceRepository } from "~/services/services";
-import { FilterBuilder } from "~/common/api/filter-builder";
+import { FilterBuilder } from "~/services/api/filter-builder";
 import { WrappedFieldProps } from 'redux-form';
 
 type ProjectTreePickerProps = Pick<TreePickerProps, 'onContextMenu' | 'toggleItemActive' | 'toggleItemOpen'>;
index 0d3a4ddc7815e30e0cf7ef48c39dd7e709097957..492265603ab626b4f22966701e8e34354105713b 100644 (file)
@@ -10,7 +10,7 @@ import { DataColumns } from '~/components/data-table/data-table';
 import { RootState } from '~/store/store';
 import { DataTableFilterItem } from '~/components/data-table-filters/data-table-filters';
 import { SortDirection } from '~/components/data-table/data-column';
-import { ResourceKind, TrashResource } from '~/models/resource';
+import { ResourceKind, TrashableResource } from '~/models/resource';
 import { resourceLabel } from '~/common/labels';
 import { ArvadosTheme } from '~/common/custom-theme';
 import { TrashIcon } from '~/components/icon/icon';
@@ -143,7 +143,7 @@ export const TrashPanel = withStyles(styles)(
 
             handleContextMenu = (event: React.MouseEvent<HTMLElement>, resourceUuid: string) => {
                 const kind = resourceKindToContextMenuKind(resourceUuid);
-                const resource = getResource(resourceUuid)(this.props.resources) as TrashResource;
+                const resource = getResource(resourceUuid)(this.props.resources) as TrashableResource;
                 if (kind && resource) {
                     this.props.dispatch<any>(openContextMenu(event, {
                         name: '',