@js4cytoscape/ndex-client 0.4.3-alpha.9 → 0.5.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ndexClient.common.js +614 -54
- package/dist/ndexClient.js +462 -26
- package/package.json +14 -5
- package/src/CyNDEx.js +2 -2
- package/src/NDEx.js +173 -2
- package/src/index.js +2 -4
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@js4cytoscape/ndex-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0-alpha.1",
|
|
4
4
|
"description": "NDEx client library",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
|
-
"url": "https://github.com/cytoscape/js4cytoscape.git"
|
|
7
|
+
"url": "git+https://github.com/cytoscape/js4cytoscape.git"
|
|
8
8
|
},
|
|
9
9
|
"bugs": {
|
|
10
10
|
"url": "https://github.com/cytoscape/js4cytoscape/issues"
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"watch:js": "webpack --watch",
|
|
21
21
|
"build": "webpack --mode=development",
|
|
22
22
|
"build-prod": "webpack --mode=production",
|
|
23
|
-
"test": "nyc mocha"
|
|
23
|
+
"test": "nyc mocha --require @babel/register"
|
|
24
24
|
},
|
|
25
25
|
"author": "Jing Chen",
|
|
26
26
|
"license": "MIT",
|
|
@@ -28,9 +28,18 @@
|
|
|
28
28
|
"node": ">=12.16.1"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"axios": "^1.6.
|
|
31
|
+
"axios": "^1.6.8"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@microsoft/tsdoc": "^0.14.2"
|
|
34
|
+
"@microsoft/tsdoc": "^0.14.2",
|
|
35
|
+
"@babel/core": "^7.14.6",
|
|
36
|
+
"@babel/preset-env": "^7.14.5",
|
|
37
|
+
"@babel/register": "^7.14.5",
|
|
38
|
+
"babel-plugin-istanbul": "^6.0.0"
|
|
39
|
+
},
|
|
40
|
+
"babel": {
|
|
41
|
+
"presets": [
|
|
42
|
+
"@babel/preset-env"
|
|
43
|
+
]
|
|
35
44
|
}
|
|
36
45
|
}
|
package/src/CyNDEx.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const CY_REST_BASE_URL = 'http://127.0.0.1';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
import { default as axios } from 'axios';
|
|
4
4
|
|
|
5
5
|
class CyNDEx {
|
|
6
6
|
|
|
@@ -175,4 +175,4 @@ class CyNDEx {
|
|
|
175
175
|
}
|
|
176
176
|
}
|
|
177
177
|
|
|
178
|
-
|
|
178
|
+
export default CyNDEx ;
|
package/src/NDEx.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import { default as axios } from 'axios';
|
|
2
2
|
|
|
3
3
|
const CX1_HEADER = {
|
|
4
4
|
numberVerification: [{
|
|
@@ -857,5 +857,176 @@ class NDEx {
|
|
|
857
857
|
});
|
|
858
858
|
}
|
|
859
859
|
|
|
860
|
+
signInFromIdToken(idToken) {
|
|
861
|
+
return this._httpPostV3ProtectedObj('users/signin', undefined, {idToken: idToken});
|
|
862
|
+
}
|
|
863
|
+
|
|
864
|
+
// V3-Files APIs
|
|
865
|
+
copyFile(fromUuid, toPath, type, accessKey) {
|
|
866
|
+
let parameters = {};
|
|
867
|
+
|
|
868
|
+
if (accessKey !== undefined) {
|
|
869
|
+
parameters ['accesskey'] = accessKey;
|
|
870
|
+
}
|
|
871
|
+
return this._httpPostV3ProtectedObj('files/copy', parameters, {from_uuid: fromUuid, type: type, to_path: toPath,});
|
|
872
|
+
}
|
|
873
|
+
|
|
874
|
+
getCount() {
|
|
875
|
+
return this._httpGetV3ProtectedObj('files/count', {});
|
|
876
|
+
}
|
|
877
|
+
|
|
878
|
+
getTrash(){
|
|
879
|
+
return this._httpGetV3ProtectedObj('files/trash', {});
|
|
880
|
+
}
|
|
881
|
+
|
|
882
|
+
restoreFile(networkIds, folderIds, shortcutIds) {
|
|
883
|
+
return this._httpPostV3ProtectedObj('files/trash/restore', undefined, {networks: networkIds, folders: folderIds, shortcuts: shortcutIds});
|
|
884
|
+
}
|
|
885
|
+
// Sharing
|
|
886
|
+
_validateSharingData(data, membersValidation) {
|
|
887
|
+
if (!Array.isArray(data)) throw new Error("Data must be an array");
|
|
888
|
+
|
|
889
|
+
data.forEach((entry, i) => {
|
|
890
|
+
if (!entry.uuid || typeof entry.uuid !== 'string') {
|
|
891
|
+
throw new Error(`Entry ${i} is missing a valid uuid`);
|
|
892
|
+
}
|
|
893
|
+
if (!entry.type || typeof entry.type !== 'string') {
|
|
894
|
+
throw new Error(`Entry ${i} is missing a valid type`);
|
|
895
|
+
}
|
|
896
|
+
|
|
897
|
+
if (membersValidation === 'object') {
|
|
898
|
+
if (
|
|
899
|
+
typeof entry.members !== 'object' ||
|
|
900
|
+
Array.isArray(entry.members) ||
|
|
901
|
+
entry.members === null
|
|
902
|
+
) {
|
|
903
|
+
throw new Error(`Entry ${i} has invalid members`);
|
|
904
|
+
}
|
|
905
|
+
} else if (membersValidation === 'array') {
|
|
906
|
+
if (!entry.members || !Array.isArray(entry.members)) {
|
|
907
|
+
throw new Error(`Entry ${i} has invalid members`);
|
|
908
|
+
}
|
|
909
|
+
}
|
|
910
|
+
});
|
|
911
|
+
|
|
912
|
+
return data;
|
|
913
|
+
}
|
|
914
|
+
|
|
915
|
+
addMember(data){
|
|
916
|
+
data = this._validateSharingData(data, 'object');
|
|
917
|
+
return this._httpPostV3ProtectedObj('files/sharing/add_member', undefined, data);
|
|
918
|
+
}
|
|
919
|
+
|
|
920
|
+
removeMember(data){
|
|
921
|
+
data = this._validateSharingData(data, 'array');
|
|
922
|
+
return this._httpPostV3ProtectedObj('files/sharing/remove_member', undefined, data);
|
|
923
|
+
}
|
|
924
|
+
|
|
925
|
+
updateMember(data){
|
|
926
|
+
data = this._validateSharingData(data, 'object');
|
|
927
|
+
return this._httpPostV3ProtectedObj('files/sharing/update_member', undefined, data);
|
|
928
|
+
}
|
|
929
|
+
|
|
930
|
+
transferOwnership(uuid,type,toUser){
|
|
931
|
+
|
|
932
|
+
}
|
|
933
|
+
|
|
934
|
+
listShares(limit){
|
|
935
|
+
let parameters = {};
|
|
936
|
+
if(limit !== undefined){
|
|
937
|
+
parameters['limit'] = limit;
|
|
938
|
+
}
|
|
939
|
+
return this._httpGetV3ProtectedObj('files/sharing/list', parameters);
|
|
940
|
+
}
|
|
941
|
+
|
|
942
|
+
share(uuid,type){
|
|
943
|
+
return this._httpPostV3ProtectedObj('files/sharing/share', undefined, {uuid: uuid, type: type});
|
|
944
|
+
}
|
|
945
|
+
|
|
946
|
+
unshare(uuid,type){
|
|
947
|
+
return this._httpPostV3ProtectedObj('files/sharing/unshare', undefined, {uuid: uuid, type: type});
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
// Folder
|
|
951
|
+
getFolders(limit){
|
|
952
|
+
let parameters = {};
|
|
953
|
+
|
|
954
|
+
if (limit !== undefined) {
|
|
955
|
+
parameters ['limit'] = limit;
|
|
956
|
+
}
|
|
957
|
+
return this._httpGetV3ProtectedObj('files/folders', parameters);
|
|
958
|
+
}
|
|
959
|
+
|
|
960
|
+
createFolder(name, parentFolderId) {
|
|
961
|
+
return this._httpPostV3ProtectedObj('files/folders', undefined, {name: name, parent: parentFolderId});
|
|
962
|
+
}
|
|
963
|
+
|
|
964
|
+
getFolder(folderId, accessKey) {
|
|
965
|
+
let parameters = {};
|
|
966
|
+
|
|
967
|
+
if (accessKey !== undefined) {
|
|
968
|
+
parameters ['accesskey'] = accessKey;
|
|
969
|
+
}
|
|
970
|
+
return this._httpGetV3ProtectedObj('files/folders/' + folderId, parameters);
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
updateFolder(folderId, name, parentFolderId) {
|
|
974
|
+
return this._httpPutV3Obj('files/folders/' + folderId, undefined, {name: name, parent: parentFolderId});
|
|
975
|
+
}
|
|
976
|
+
|
|
977
|
+
deleteFolder(folderId) {
|
|
978
|
+
return this._httpDeleteV3Obj('files/folders/' + folderId, undefined);
|
|
979
|
+
}
|
|
980
|
+
|
|
981
|
+
getFolderCount(folderId, accessKey) {
|
|
982
|
+
let parameters = {};
|
|
983
|
+
|
|
984
|
+
if (accessKey !== undefined) {
|
|
985
|
+
parameters ['accesskey'] = accessKey;
|
|
986
|
+
}
|
|
987
|
+
return this._httpGetV3ProtectedObj('files/folders/' + folderId + '/count', parameters);
|
|
988
|
+
}
|
|
989
|
+
|
|
990
|
+
getFolderList(folderId, accessKey) {
|
|
991
|
+
let parameters = {};
|
|
992
|
+
|
|
993
|
+
if (accessKey !== undefined) {
|
|
994
|
+
parameters ['accesskey'] = accessKey;
|
|
995
|
+
}
|
|
996
|
+
return this._httpGetV3ProtectedObj('files/folders/' + folderId + '/list', parameters);
|
|
997
|
+
}
|
|
998
|
+
|
|
999
|
+
// Sortcut
|
|
1000
|
+
getShortcuts(limit){
|
|
1001
|
+
let parameters = {};
|
|
1002
|
+
|
|
1003
|
+
if (limit !== undefined) {
|
|
1004
|
+
parameters ['limit'] = limit;
|
|
1005
|
+
}
|
|
1006
|
+
return this._httpGetV3ProtectedObj('files/shortcuts', parameters);
|
|
1007
|
+
}
|
|
1008
|
+
|
|
1009
|
+
createShortcut(name, parentFolderId, targetId) {
|
|
1010
|
+
return this._httpPostV3ProtectedObj('files/shortcuts', undefined, {name: name, parent: parentFolderId, target: targetId});
|
|
1011
|
+
}
|
|
1012
|
+
|
|
1013
|
+
getShortcut(shortcutId, accessKey) {
|
|
1014
|
+
let parameters = {};
|
|
1015
|
+
|
|
1016
|
+
if (accessKey !== undefined) {
|
|
1017
|
+
parameters ['accesskey'] = accessKey;
|
|
1018
|
+
}
|
|
1019
|
+
return this._httpGetV3ProtectedObj('files/shortcuts/' + shortcutId, parameters);
|
|
1020
|
+
}
|
|
1021
|
+
|
|
1022
|
+
updateShortcut(shortcutId, name, parentFolderId, targetId) {
|
|
1023
|
+
return this._httpPutV3Obj('files/shortcuts/' + shortcutId, undefined, {name: name, parent: parentFolderId, target: targetId});
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
delteShortcut(shortcutId) {
|
|
1027
|
+
return this._httpDeleteV3Obj('files/shortcuts/' + shortcutId, undefined);
|
|
1028
|
+
}
|
|
1029
|
+
|
|
860
1030
|
}
|
|
861
|
-
|
|
1031
|
+
|
|
1032
|
+
export default NDEx;
|
package/src/index.js
CHANGED