diff --git a/font-awesome/fonts-old/fontawesome-webfont.eot b/font-awesome/fonts-old/fontawesome-webfont.eot new file mode 100644 index 0000000..858753a Binary files /dev/null and b/font-awesome/fonts-old/fontawesome-webfont.eot differ diff --git a/font-awesome/fonts-old/fontawesome-webfont.svg b/font-awesome/fonts-old/fontawesome-webfont.svg new file mode 100644 index 0000000..0a06f4c --- /dev/null +++ b/font-awesome/fonts-old/fontawesome-webfont.svg @@ -0,0 +1,16 @@ + + + +Generated by IcoMoon + + + + + + + + + + + + \ No newline at end of file diff --git a/font-awesome/fonts-old/fontawesome-webfont.ttf b/font-awesome/fonts-old/fontawesome-webfont.ttf new file mode 100644 index 0000000..8df37c1 Binary files /dev/null and b/font-awesome/fonts-old/fontawesome-webfont.ttf differ diff --git a/font-awesome/fonts-old/fontawesome-webfont.woff b/font-awesome/fonts-old/fontawesome-webfont.woff new file mode 100644 index 0000000..8b2bde8 Binary files /dev/null and b/font-awesome/fonts-old/fontawesome-webfont.woff differ diff --git a/font-awesome/fonts-old/fontawesome-webfont.woff2 b/font-awesome/fonts-old/fontawesome-webfont.woff2 new file mode 100644 index 0000000..09a8312 Binary files /dev/null and b/font-awesome/fonts-old/fontawesome-webfont.woff2 differ diff --git a/font-awesome/fonts/fontawesome-webfont.eot b/font-awesome/fonts/fontawesome-webfont.eot index 858753a..848e5d5 100644 Binary files a/font-awesome/fonts/fontawesome-webfont.eot and b/font-awesome/fonts/fontawesome-webfont.eot differ diff --git a/font-awesome/fonts/fontawesome-webfont.svg b/font-awesome/fonts/fontawesome-webfont.svg index 0a06f4c..2bdff36 100644 --- a/font-awesome/fonts/fontawesome-webfont.svg +++ b/font-awesome/fonts/fontawesome-webfont.svg @@ -8,7 +8,9 @@ + + diff --git a/font-awesome/fonts/fontawesome-webfont.ttf b/font-awesome/fonts/fontawesome-webfont.ttf index 8df37c1..4c678c0 100644 Binary files a/font-awesome/fonts/fontawesome-webfont.ttf and b/font-awesome/fonts/fontawesome-webfont.ttf differ diff --git a/font-awesome/fonts/fontawesome-webfont.woff b/font-awesome/fonts/fontawesome-webfont.woff index 8b2bde8..1dae7e8 100644 Binary files a/font-awesome/fonts/fontawesome-webfont.woff and b/font-awesome/fonts/fontawesome-webfont.woff differ diff --git a/font-awesome/fonts/fontawesome-webfont.woff2 b/font-awesome/fonts/fontawesome-webfont.woff2 index 09a8312..cf5fece 100644 Binary files a/font-awesome/fonts/fontawesome-webfont.woff2 and b/font-awesome/fonts/fontawesome-webfont.woff2 differ diff --git a/package-lock.json b/package-lock.json index e1f2939..9afb314 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5946,7 +5946,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -6361,7 +6362,8 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -6417,6 +6419,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -6460,12 +6463,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, diff --git a/src/browser/js/dashboardStatus/actions.js b/src/browser/js/dashboardStatus/actions.js index 595f33f..f12d5fe 100644 --- a/src/browser/js/dashboardStatus/actions.js +++ b/src/browser/js/dashboardStatus/actions.js @@ -51,7 +51,7 @@ export const listAllObjects = devicesDevicesInput => { ? devicesDevicesInput : [] : devices; - + let iDeviceFileCount = 0; // if no devices for config/device.json, set loaded to true @@ -152,8 +152,8 @@ export const listConfigFiles = (devicesDevices, devicesDevicesInput) => { dispatch(setConfigObjects(configObjectsUniqueAry)); dispatch(fetchConfigFileContentAll(configObjectsUniqueAry)); dispatch(loadedConfig(true)); - if(devicesDevicesInput == undefined){ - dispatch(listLogFiles()) + if (devicesDevicesInput == undefined) { + dispatch(listLogFiles()); } } }) @@ -164,15 +164,15 @@ export const listConfigFiles = (devicesDevices, devicesDevicesInput) => { dispatch(setConfigObjects(configObjectsUniqueAry)); dispatch(fetchConfigFileContentAll(configObjectsUniqueAry)); dispatch(loadedConfig(true)); - if(devicesDevicesInput == undefined){ - dispatch(listLogFiles()) + if (devicesDevicesInput == undefined) { + dispatch(listLogFiles()); } } }); }); } else if (!getState().dashboardStatus.loadedFiles) { - if(devicesDevicesInput == undefined){ - dispatch(listLogFiles()) + if (devicesDevicesInput == undefined) { + dispatch(listLogFiles()); } } }; @@ -186,23 +186,23 @@ export const listLogFiles = devicesFilesInput => { return function(dispatch, getState) { let devices = getState().buckets.list ? getState().buckets.list : []; - devices = devices.filter(e => e.match(loggerRegex)); - - const devicesFilesDefaultMax = 3; - - // by default show all devices for the device info and none for the log file info (unless fewer than 3 devices) - let devicesFiles = devicesFilesInput - ? devicesFilesInput.length - ? devicesFilesInput - : [] - : devices.length <= devicesFilesDefaultMax - ? devices - : []; - - // if no devices for files, set loaded to true - if (devicesFiles.length == 0) { - dispatch(loadedFiles(true)); - } + devices = devices.filter(e => e.match(loggerRegex)); + + const devicesFilesDefaultMax = 3; + + // by default show all devices for the device info and none for the log file info (unless fewer than 3 devices) + let devicesFiles = devicesFilesInput + ? devicesFilesInput.length + ? devicesFilesInput + : [] + : devices.length <= devicesFilesDefaultMax + ? devices + : []; + + // if no devices for files, set loaded to true + if (devicesFiles.length == 0) { + dispatch(loadedFiles(true)); + } if (!getState().dashboardStatus.loadedFiles) { devicesFiles.map(device => { @@ -269,7 +269,7 @@ export const listLogFiles = devicesFilesInput => { if (e > periodStartVarFormat) { const deviceId = device; const lastModified = e; - const size = sizePerTime[e] / (1024*1024); + const size = sizePerTime[e] / (1024 * 1024); const count = countPerTime[e]; dataPerTimeAry.push({ deviceId, @@ -288,7 +288,7 @@ export const listLogFiles = devicesFilesInput => { } }); - dispatch(setDevicesFilesCount(iCount)) + dispatch(setDevicesFilesCount(iCount)); if (iCount == devicesFiles.length) { dispatch(setObjectsData(mf4ObjectsHourAry)); @@ -307,11 +307,6 @@ export const listLogFiles = devicesFilesInput => { }); } }; - - - - - }; export const clearDataDevices = () => ({ diff --git a/src/browser/js/jsonrpc.js b/src/browser/js/jsonrpc.js index e1d5120..0be2624 100644 --- a/src/browser/js/jsonrpc.js +++ b/src/browser/js/jsonrpc.js @@ -35,7 +35,7 @@ export default class JSONrpc { options.params = {}; } - let s3Explorer = new S3Explorer(options.params, token); + const s3Explorer = new S3Explorer(options.params, token); let result; @@ -44,7 +44,7 @@ export default class JSONrpc { result = s3Explorer.getSessionsObject(); break; case "ListBuckets": - result = s3Explorer.listBuckets(); + result = s3Explorer.listBuckets(options.params.marker); break; case "StorageInfo": result = s3Explorer.storageInfo(); diff --git a/src/sdk/s3explorer.js b/src/sdk/s3explorer.js index 7fffcdc..97ff4a6 100644 --- a/src/sdk/s3explorer.js +++ b/src/sdk/s3explorer.js @@ -40,7 +40,7 @@ class S3Explorer { /** * @method: getSessionsObject * @param {@} cb - * @description: Saved session when Listobject API is working fine. + * @description: Saved session when ListObject API is working fine. */ getSessionsObject(cb) { @@ -69,10 +69,10 @@ class S3Explorer { } // list s3 compatible storage buckets - listBuckets(cb) { - var stream = this.s3Client.listObjects(this.bucketName, "", false); + listBuckets(marker, cb) { + marker = marker ? marker : ""; + var stream = this.s3Client.listObjects(this.bucketName, "", marker, false); let objectsArray = []; - // objectsArray.push({prefix:`${this.bucketName}/`, size:0, name:'Home'}) stream.on("data", function(obj) { if (obj.prefix) { obj["name"] = obj.prefix.substring(0, obj.prefix.length - 1); @@ -124,13 +124,22 @@ class S3Explorer { * @param {*} cb */ listObjects(bucketName, prefix, marker, cb) { - var stream; let updatedPrefix = bucketName + "/" + prefix; if ("Home" == bucketName) { - stream = this.s3Client.listObjects(this.bucketName, prefix, false); + stream = this.s3Client.listObjects( + this.bucketName, + prefix, + marker, + false + ); } else { - stream = this.s3Client.listObjects(this.bucketName, updatedPrefix, false); + stream = this.s3Client.listObjects( + this.bucketName, + updatedPrefix, + marker, + false + ); } let objectsArray = []; @@ -154,18 +163,17 @@ class S3Explorer { }); } - // list bucket objects from S3 compatible storage listObjectsRecursive(bucketName, prefix, marker, cb) { - var stream; let objectNameWithPrefix = bucketName + "/" + prefix; if ("Home" == bucketName) { - stream = this.s3Client.listObjects(this.bucketName, prefix, true); + stream = this.s3Client.listObjects(this.bucketName, prefix, marker, true); } else { stream = this.s3Client.listObjects( this.bucketName, objectNameWithPrefix, + marker, true ); } @@ -174,13 +182,12 @@ class S3Explorer { let iCount = 0; // look into optimizing this part - stream.on("data", function(obj) { + stream.on("data", function(obj) { if (obj.name || obj.prefix) { obj["name"] = obj.prefix ? obj.prefix : obj.name; objectsArray.push(obj); - iCount += 1 + iCount += 1; } - }); stream.on("end", function() { let response = StorageResponses.makeDefaultResponse( @@ -548,32 +555,43 @@ S3Explorer.prototype.listObjectsRecursive = promisify( ); S3Explorer.prototype.storageInfo = promisify(S3Explorer.prototype.storageInfo); S3Explorer.prototype.makeBucket = promisify(S3Explorer.prototype.makeBucket); + S3Explorer.prototype.deleteBucket = promisify( S3Explorer.prototype.deleteBucket ); + S3Explorer.prototype.removeObject = promisify( S3Explorer.prototype.removeObject ); + S3Explorer.prototype.listAllBucketPolicies = promisify( S3Explorer.prototype.listAllBucketPolicies ); + S3Explorer.prototype.putObject = promisify(S3Explorer.prototype.putObject); + S3Explorer.prototype.fPutObject = promisify(S3Explorer.prototype.fPutObject); + S3Explorer.prototype.presignedGet = promisify( S3Explorer.prototype.presignedGet ); + S3Explorer.prototype.presignedPutObject = promisify( S3Explorer.prototype.presignedPutObject ); + S3Explorer.prototype.createURLToken = promisify( S3Explorer.prototype.createURLToken ); + S3Explorer.prototype.presignedGetObj = promisify( S3Explorer.prototype.presignedGetObj ); + S3Explorer.prototype.getObjectStat = promisify( S3Explorer.prototype.getObjectStat ); + S3Explorer.prototype.getEndpointAndBucketName = promisify( S3Explorer.prototype.getEndpointAndBucketName ); diff --git a/src/sdk/storage.js b/src/sdk/storage.js index 97d3d6e..d7efeea 100644 --- a/src/sdk/storage.js +++ b/src/sdk/storage.js @@ -1211,7 +1211,7 @@ export class Client { // * `obj.size` _number_: size of the object // * `obj.etag` _string_: etag of the object // * `obj.lastModified` _Date_: modified time stamp - listObjects(bucketName, prefix, recursive) { + listObjects(bucketName, prefix, marker, recursive) { if (prefix === undefined) prefix = '' if (recursive === undefined) recursive = false if (!isValidBucketName(bucketName)) { @@ -1228,7 +1228,7 @@ export class Client { } // if recursive is false set delimiter to '/' var delimiter = recursive ? '' : '/' - var marker = '' + var marker = marker ? marker : "" var objects = [] var ended = false var readStream = Stream.Readable({objectMode: true})