standardized spacing/styling for Config menu (className "upload" changed to "configMenu")
Upload button disabled for Data Upload, Model Upload in Config menu when no documents uploaded
For Data Upload, adding either a documents or a stopword file enables the Upload button
fixed bug where pinning/hiding topic in sidebar selects the topic as well
Notes:
If a user adds a file (thus enabling the Upload button), then clicks "Choose File" again but cancels the popup file explorer before selecting a file, the input will switch to "No file chosen". However, the Upload button will stay enabled. I tested what happens when the Upload button is clicked in this state with an invalid (pdf) file, and got an error saying "Could not interpret model file. Upload canceled.", the same error that I would get if I just tried to upload a pdf file while the input showed the pdf file as chosen. This leads me to believe that even though the input element thinks the file is not selected, it is still preserved in the app's internal state and gets uploaded when the button is clicked, which could be misleading for a user.
Config menu could be refactored: the functions onDocumentFileChange, onStopwordFileChange, and onModelFileChange are extremely similar aside from function name and one line. All three are passed in as individual props and it could be more efficient to consolidate them into one flexible function that can be reused and passed in as one prop
May be able to reduce lines of code for Configuration component by importing and using React Bootstrap Modal component (may require some styling to preserve appearance)
May be cleaner/more consistent to pull out all individual config menu items into separate files (Topics, Vocabulary), import them into a ConfigMenu component, and import that ConfigMenu component into the TopBar to maintain abstraction/modularity (instead of hardcoding config menu items into the TopBar.js file)
Notes:
Closes #179 Closes #173 Closes #166