//https://raw.githubusercontent.com/RIFTIO/RIFT.ware/master/rift-shell
-import _ from 'lodash'
+import _cloneDeep from 'lodash/cloneDeep'
+import _findIndex from 'lodash/findIndex'
import React from 'react';
import ReactDOM from 'react-dom';
import TreeView from 'react-treeview';
let splitUrl = url.split('/');
let fileName = splitUrl[splitUrl.length - 1];
folder.pop;
- let fullPath = _.cloneDeep(folder);
+ let fullPath = _cloneDeep(folder);
fullPath.push(fileName);
fullPath = fullPath.join('/');
folder = folder.join('/');
- let fileIndex = _.findIndex(files[folder], function(f) {
+ let fileIndex = _findIndex(files[folder], function(f) {
return f.name == fullPath;
})
if (fileIndex == -1) {
function contentFolder(context, folder, path, key, inputState, updateFn, sendDownloadFileRequst, deleteFn) {
let type = context.props.type;
let id = context.props.item.id;
- const onboardDropZone = createDropZone.bind(this, FileManagerUploadDropZone.ACTIONS.onboard, '.ComposerAppAddFile.' + path.replace(/\//g, '-'), type, id, path);
+ let classId = `DZ-${path.replace(/\//g, '-')}`;
+ const onboardDropZone = createDropZone.bind(this, FileManagerUploadDropZone.ACTIONS.onboard, '.ComposerAppAddFile.' + classId, type, id, path);
return (
<Panel title={path} key={key} itemClassName="nested" no-corners>
<div className="folder">
}
render() {
let {type, id, path, key, ...props} = this.props;
+ let classId = `DZ-${path.replace(/\//g, '-')}`;
return (
<div className="inputSection">
<label className="sqTextInput" style={{flexDirection: 'row', alignItems:'center'}}>
<span>Upload File</span>
- <Button className={'ComposerAppAddFile ' + path.replace(/\//g, '-')} label="BROWSE"/>
+ <Button className={'ComposerAppAddFile ' + classId} label="BROWSE"/>
</label>
</div>
)
const name = stripPath(file.name, path);
const id = context.props.item.id;
const type = context.props.type;
+ const downloadHost = API_SERVER.match('localhost') || API_SERVER.match('127.0.0.1') ? `${window.location.protocol}//${window.location.hostname}` : API_SERVER;
//{`${window.location.protocol}//${API_SERVER}:4567/api/package${type}/${id}/${path}/${name}`}
return (
<div className="file" key={key}>
{file.status && (file.status == 'IN_PROGRESS' || file.status == 'DOWNLOADING' ) ? <LoadingIndicator size={2} /> : file.status }
</div>
<div className="file-name">
- <a target="_blank" href={`${API_SERVER}:4567/api/package/${type}/${id}/${path}/${name}`}>{name}</a>
+ <a target="_blank" href={`${downloadHost}:4567/api/package/${type}/${id}/${path}/${name}`}>{name}</a>
</div>
</div>
<div className="file-action" style={{display: (!file.status || (file && file.status.toLowerCase() != 'loading...')) ? 'inherit' : 'none', cursor: 'pointer'}} onClick={deleteFn(file.name)}>X</div>