From 2ba2837d9125598bcd00f575cbb6ab083e3de868 Mon Sep 17 00:00:00 2001 From: Alexandru Munteanu <alexandru.munteanu@thinslices.com> Date: Tue, 30 Jan 2018 17:48:50 +0200 Subject: [PATCH] Update fragment on sortable drop --- .../src/components/FileItem.local.scss | 8 +++++++- .../src/components/FileSection.js | 10 ++++++---- .../component-wizard/src/components/Files.js | 20 +++++++++++++++++-- packages/component-wizard/src/redux/files.js | 1 - 4 files changed, 31 insertions(+), 8 deletions(-) diff --git a/packages/component-wizard/src/components/FileItem.local.scss b/packages/component-wizard/src/components/FileItem.local.scss index 076d3f041..1b38d085b 100644 --- a/packages/component-wizard/src/components/FileItem.local.scss +++ b/packages/component-wizard/src/components/FileItem.local.scss @@ -16,9 +16,15 @@ align-items: center; display: flex; justify-content: center; - margin: 0 5px; + margin: 0 10px; + + a { + align-items: center; + display: flex; + } button { + background-color: transparent; border: none; cursor: pointer; diff --git a/packages/component-wizard/src/components/FileSection.js b/packages/component-wizard/src/components/FileSection.js index 1cc64ed29..780fdc04b 100644 --- a/packages/component-wizard/src/components/FileSection.js +++ b/packages/component-wizard/src/components/FileSection.js @@ -23,16 +23,17 @@ const FileSection = ({ title, files, listId, + isOver, isLast, isFirst, addFile, + canDrop, + dropItems, moveItem, + isFileOver, removeFile, - connectDropTarget, - isOver, - canDrop, connectFileDrop, - isFileOver, + connectDropTarget, }) => connectFileDrop( connectDropTarget( @@ -55,6 +56,7 @@ const FileSection = ({ <SortableList beginDragProps={['id', 'index', 'name', 'listId']} dragHandle={DragHandle} + dropItem={dropItems} items={files} listId={listId} listItem={FileItem} diff --git a/packages/component-wizard/src/components/Files.js b/packages/component-wizard/src/components/Files.js index 4b8c301d3..8961fcd53 100644 --- a/packages/component-wizard/src/components/Files.js +++ b/packages/component-wizard/src/components/Files.js @@ -17,12 +17,14 @@ const Files = ({ moveItem, removeFile, changeList, + dropItems, ...rest }) => ( <div> <FileSection addFile={addFile('manuscripts')} changeList={changeList} + dropItems={dropItems} files={get(files, 'manuscripts') || []} isFirst listId="manuscripts" @@ -76,6 +78,13 @@ export default compose( }, }), withHandlers({ + dropItems: ({ files, updateFragment, project, version }) => () => { + updateFragment(project, { + submitted: new Date(), + ...version, + files, + }) + }, changeList: ({ files, setFiles, updateFragment, project, version }) => ( fromListId, toListId, @@ -121,8 +130,15 @@ export default compose( }) }) }, - moveItem: ({ setFiles, files }) => type => (dragIndex, hoverIndex) => { - setFiles(SortableList.moveItem(files[type], dragIndex, hoverIndex), type) + moveItem: ({ + setFiles, + files, + project, + version, + updateFragment, + }) => type => (dragIndex, hoverIndex) => { + const newFiles = SortableList.moveItem(files[type], dragIndex, hoverIndex) + setFiles(newFiles, type) }, removeFile: ({ setFiles, diff --git a/packages/component-wizard/src/redux/files.js b/packages/component-wizard/src/redux/files.js index 87d69a3be..e00ea4340 100644 --- a/packages/component-wizard/src/redux/files.js +++ b/packages/component-wizard/src/redux/files.js @@ -48,7 +48,6 @@ const createFileData = (file, type) => { method: 'POST', headers: { Accept: 'text/plain', - 'Content-Type': 'multipart/form-data', }, body: data, } -- GitLab