Commit graph

179 commits

Author SHA1 Message Date
Kanagaraj M c0e45f9098 Fix failing unit tests in browser (#5688)
* format js files using prettier

Used the following command to format the files
prettier --write "browser/app/js/**/*.js"

* fix failing unit tests in browser
2018-03-22 12:25:56 -07:00
Kanagaraj M cb3818be27
adding local pagination to bucket list (#5684)
* adding local pagination to bucket list

When there are more than 5000 buckets, browser ui
becomes unresponsive since react needs to create
5000 elements which takes browser resources.
So we show only 100 buckets for the first time,
and load more buckets when the user is scrolling down.

* move inline styles to less file
2018-03-22 23:28:48 +05:30
Rushan 1459c4be1e Browser: Update UI with new components and elements (#5671) 2018-03-21 11:38:57 -07:00
Kaan Kabalak 384b4fdf28 Tweak fetchBuckets to comply with the changes made to the routes (#5592)
This commit removes the argument in the fetchBuckets function that was
introduced in #5580. Due to the adjustment made in #5584, we no longer
need to differentiate between where the function has been called from.
2018-03-21 11:38:56 -07:00
Kanagaraj M 6a15b89b9a refactor Dropzone component and added tests (#5578) 2018-03-21 11:38:56 -07:00
Kanagaraj M 54e5ee6535 removed duplicate route components from browser (#5584)
All routes '/', '/:bucket/', '/:bucket/*' render the same
component. Instead we could just have a single route like following which
combines all the above routes

'/:bucket?/*'

bucket is optional here, so it can cover '/'
2018-03-21 11:38:56 -07:00
Kaan Kabalak a6adef0bdf Refactor bucket delete and bucket policy (#5580)
This commit adds the bucket delete and bucket policy functionalities
to the browser.

Part of rewriting the browser code to follow best practices and
guidelines of React (issues #5409 and #5410)

The backend code has been modified by @krishnasrinivas to prevent
issue #4498 from occuring. The relevant changes have been made to the
code according to the latest commit and the unit tests in the backend.
This commit also addresses issue #5449.
2018-03-21 11:38:56 -07:00
Kanagaraj M 416841869a allow non-loggedin users to access public bucket (#5570)
* conditionally render main action buttons

- Make bucket action will be available only for loggedIn users
- File upload button will be avaialble for loggedIn users
  and non-loggedIn users if the prefix is writable

* select the bucket and prefix from the url

When the url contains bucket and prefix, it will be selected
by default instead of the first bucket from the list.

* show BucketSearch only for LoggedIn users

* allow non-LoggedIn users to access public bucket

* removed unused Router imports

* fix test case failures in BucketList.test.js

* remove dupicate minioBrowserPrefix from url

since history is already initialized with minioBrowserPrefix,
no need to use it in push or replace

* remove unused match from App component

* remove unused minioBrowserPrefix imports
2018-03-21 11:30:50 -07:00
Kanagaraj M bb0adea494 Refactor browser dropdown links and components (#5562)
* refactor browser links and about modal

Moved about modal to separate component and added unit tests.

* refactor change password modal component

* added unit tests for ChangePasswordModal

* fix logout function in browser dropdown

* remove older unused BrowserDropdown component

* remove unused variables from BrowserDropdown component

* show BrowserDropdown and StorageInfo only for LoggedIn users

Non-loggedIn users will see a 'Login' button
2018-03-21 11:30:50 -07:00
Kanagaraj M 6a42727e00 Refactor download object and bulk action components (#5546) 2018-03-21 11:30:50 -07:00
Kanagaraj M da4558a8f7 Refactor delete object and share object components (#5537) 2018-03-21 11:30:50 -07:00
Kaan Kabalak 566ac78b8b Add missing unit tests for PR #5499 (#5527)
Part of #5410
2018-03-21 11:30:50 -07:00
Kanagaraj M 44f8f7059c Refactor make bucket and upload components (#5521) 2018-03-21 11:30:50 -07:00
Kanagaraj M 9bfa07ecf5 re-organize components and actions by feature (#5518)
Now the files grouped based on the features instead of
the previous approach of grouping by type.
2018-03-21 11:30:50 -07:00
Kaan Kabalak ead6337eab Add missing unit tests to JavaScript and React components (#5505)
Add the missing unit tests login, bucket listing, and bucket searching functionalities.
2018-03-21 11:30:50 -07:00
Kanagaraj M feb726dd98 Refactor of components (#5499) 2018-03-21 11:30:50 -07:00
Kanagaraj M 9ab6a8035f upgrading react and refactoring components (#5409) (#5444)
- upgraded react from v16.2.0
- upgraded react-router to v4.2.0 and re-writen the routes
- using prettier to format the code
- added jest to unit test components/reducers/selectors

This provides a skeleton to start of with. Only basic unit test
cases are added, remaining needs to be added.

In terms of functionality, it provides login, listing and searching
buckets. Remaining functionalities will be added in upcoming patches.
2018-03-21 11:30:50 -07:00
Kanagaraj M 76be54551f support for sourcemaps in browser code (#5451)
changed from 'eval' to 'cheap-module-eval-source-map' to 
generate source map of the original code instead of transpiled code.
2018-03-21 11:30:50 -07:00
Kaan Kabalak 0da377f3e9 Upgrade webpack from v1 to v3 (#5448)
- Changed webpack.config.js and webpack.production.config.js
according to the migration guidelines
- Updated packages that had unmet peer dependencies after the 
webpack update

Fixes #5398
2018-03-21 11:30:50 -07:00
Kaan Kabalak 9cc77e51f5 Change name of 'Settings' dropdown link to 'Change Password' (#5394) 2018-03-21 11:30:50 -07:00
Kaan Kabalak bbbbb8d3e2 Center dropdown toggle correctly across browsers (#5395)
This commit also fixes the shifting issue for Firefox when the dropdown
toggle is clicked.
2018-03-21 11:30:50 -07:00
Kaan Kabalak 78a641fc6a Fix multi-file dropzone upload issue causing bucket listing duplication (#5392)
This commit fixes the order of the functions inside the selectPrefix
function due to the fact that, as multiple files were being uploaded,
the resetObjects function (that clears the object list) ran repeatedly
for each of these objects, right before the appendObjects function (that
appends the objects being uploaded to the current list of objects) also
ran for all of these objects. This caused all the objects in the bucket
to be repeated in the list for the number of objects that were dragged
into the dropzone.
2018-01-13 22:45:20 +05:30
Kaan Kabalak de2ce5acb4 Correct color code of Excel file icon (#5361)
Fixes #5352
2018-01-05 16:19:41 +05:30
Kaan Kabalak 659f724f4c Integrate existing remove bucket functionality from newux to current UI (#5289)
This commit takes the existing remove bucket functionality written by
brendanashworth, integrates it to the current UI with a dropdown for
each bucket, and fixes small issues that were present, like the dropdown
not disappearing after the user clicks on 'Delete' for certain buckets.
This feature only deletes a bucket that is empty (that has no objects).

Fixes #4166
2017-12-29 18:45:44 +05:30
Kaan Kabalak ffdf115bf2 Fix mobile issue where checkbox was seen over sidebar on list item hover (#5288)
Fixes #5287
2017-12-15 12:36:05 -08:00
Kaan Kabalak 67ac74471d Fix error message on browser window resize when user has no buckets (#5275)
This commit handles the case where the list of buckets is empty on the
listObjects function of actions.js

Fixes #5267
2017-12-06 15:52:23 -08:00
Eduardo Reyes 685afb6749 Fixes last item in the list menu being blocked. (#5234)
This commit fixes an issue where the last item's menu on a list of files
that scrolls gets blocked by the floating add button.

The fix is simply add the same padding that we use for the responsive
view, since it works just fine in responsive.
2017-11-27 14:02:57 -08:00
Krishna Srinivas d57d57ddf5 Update ui-assets.go (#5185) 2017-11-14 16:22:35 -08:00
Krishna Srinivas 7e7ae29d89 browser: Remove hardcoding of minioBrowserPrefix=/minio (#5048)
This enable reverse proxy of minio-browser. Fixes #5040
2017-11-06 15:59:37 -08:00
Harshavardhana b4ddccc2f7 browser: Return a more descriptive error for HTTP 500 (#5112) 2017-10-27 15:09:14 -07:00
Krishna Srinivas 65a817fe8c Move packages between dependencies and devDependencies (#5094)
This change is needed to generate the right Open Source Disclosure File.
2017-10-21 12:21:32 +05:30
Harshavardhana f25bec6bf1 Do not attempt to generate URLToken for anonymous downloads (#5078)
This is a regression since last release - fixes #5076
2017-10-18 11:14:27 +05:30
Harshavardhana 283ad7e5e5 browser: update ui-assets for new changes. (#4780) 2017-08-07 12:48:51 -07:00
Brendan Ashworth ec5293ce29 jwt,browser: allow short-expiry tokens for GETs (#4684)
This commit fixes a potential security issue, whereby a full-access
token to the server would be available in the GET URL of a download
request. This fixes that issue by introducing short-expiry tokens, which
are only valid for one minute, and are regenerated for every download
request.

This commit specifically introduces the short-lived tokens, adds tests
for the tokens, adds an RPC call for generating a token given a
full-access token, updates the browser to use the new tokens for
requests where the token is passed as a GET parameter, and adds some
tests with the new temporary tokens.

Refs: https://github.com/minio/minio/pull/4673
2017-07-24 12:46:37 -07:00
Harshavardhana aaacce4c43 browser: update ui-assets with new changes. (#4595) 2017-06-25 18:09:24 -07:00
Rushan d0f18dc1b5 browser: Use custom input number step-up/down function (#4524) 2017-06-14 17:34:11 -07:00
Rushan 0f5483f497 browser: Disable usage/free stats for browser-gateway (#4497) 2017-06-08 15:09:50 -07:00
Harshavardhana a4d1ef1b62 browser: update ui-assets with new changes. (#4467)
Fixes #4269
2017-06-02 15:11:47 -07:00
Harshavardhana b78f6fbcc5 Do not send envVars in ServerInfo() (#4422)
Sending envVars along with access and secret
exposes the entire minio server's sensitive
information. This will be an unexpected
situation for all users.

If at all we need to look for things like if
credentials are set through env, we should
only have access to only this information
not the entire set of system envs.
2017-05-24 21:09:23 -07:00
Rushan a767ad321a Browser: Fix Safari Blob download issue (#4357) 2017-05-17 17:03:44 -07:00
poornas d1971b9a4d Prevent duplicate policy rows from being created (#4276) 2017-05-10 09:52:31 -07:00
Rushan d13aa1c42d browser: make input number types readonly in share objects modal (#4273) 2017-05-07 18:02:19 -07:00
Harshavardhana a89c7299d1 browser: Update ui-assets with new fixes. (#4246)
Brings two fixes.

 - browser: Listing should append instead of replacing previous listing (#4188)
 - browser: Make login form browser auto-fill compatible (#4091) fixes #4235
 - browser: Selecting a new bucket appends objects list to previous bucket's list (#4252)
2017-05-04 14:57:41 -07:00
Krishna Srinivas 972a527b66 browser: Selecting a new bucket appends objects list to previous bucket's list (#4252) 2017-05-04 11:12:46 -07:00
Krishna Srinivas 1ea53b4d9f browser: Listing should append instead of replacing previous listing (#4188)
Fixes #4144
2017-04-28 09:30:26 -07:00
Rushan 1b0b2c1c76 Browser: Make login form browser auto-fill compatible (#4091) 2017-04-11 10:11:42 -07:00
Harshavardhana 393c01d078 browser: Generate new UI assets. 2017-04-04 23:03:36 -07:00
Rajeesh C V e9037b9d36 fix: add white space in storage usage section (#4038)
Fix for #3962 - add whitespace before storage usage details section in
 Browse component
2017-04-04 09:14:45 -07:00
Rushan 5cec6bd80d Browser: Use object name with prefix to delete sub-path objects (#4013) 2017-03-30 23:28:28 -07:00
Krishna Srinivas 777d12d928 browser: update ui-assets.go (#3956) 2017-03-22 23:17:14 -07:00
Rushan fbfb4fc5a0 Browser: Use polyfill to support Object.assign in IE11 (#3942) 2017-03-21 13:48:07 -07:00
Krishna Srinivas cad0d0eb7a browser: Update ui-assets.go (#3902)
fixes #3898
2017-03-15 11:32:51 -07:00
Krishna Srinivas 96050c1e21 browser: Do not show "Loading..." if there are no buckets. (#3904) 2017-03-14 19:07:23 -07:00
Rushan a27d1b3d86 Browser: Use babel-polyfill to support new ES6 built-ins in older browsers (#3900) 2017-03-14 15:02:20 -07:00
Harshavardhana 305952d734 browser: Update ui-assets with new changes. 2017-03-10 15:13:26 -08:00
Rushan e77885d671 Browser: Add Object.assign polyfill to support older browsers (#3884) 2017-03-10 14:30:23 -08:00
Harshavardhana e54025805f browser: update ui-assets with new changes. 2017-03-09 15:26:25 -08:00
Rushan ccc3349f0c Browser: Show complete bucket name by removing the ellipsis cut off (#3877) 2017-03-09 10:42:38 -08:00
Krishna Srinivas 29ff9674a0 browser: Humanize expiry time for Share-Object. (#3861) 2017-03-06 20:13:52 -08:00
Krishna Srinivas 436db49bf3 Share object expiry value modification modal was not working (#3860) 2017-03-06 18:50:25 -08:00
Rushan 966818955e Browser: Implement multiple object delete (#3859) 2017-03-06 15:43:43 -08:00
Harshavardhana b05c1c11d4 browser: Update UI assets with new changes. 2017-03-03 18:05:02 -08:00
Krishna Srinivas 0bae3330e8 browser: Send correct arguments for RemoveObjects web handler. (#3848)
Fixes #3839
2017-03-03 17:07:17 -08:00
Rushan fcad4a44fd Browser: Remove duplicate object entries while sorting (#3813) 2017-02-28 13:11:34 -08:00
Harshavardhana 25b5a0534f browser: Update ui-assets and fix the copyright header. (#3790) 2017-02-22 17:27:26 -08:00
Rushan 52d6678bf0 Browser: Implement multi select user interface for object listings (#3730) 2017-02-22 14:51:38 -08:00
Krishna Srinivas 3e770defae browser: Update ui assets with new changes (#3751) 2017-02-15 14:44:34 -08:00
Krishna Srinivas ae4656e699 browser: Remove currentPath prefix in object names from list result. (#3750) 2017-02-15 13:07:47 -08:00
Harshavardhana f6a9e690bf browser: Update ui assets with new changes. 2017-02-15 11:29:23 -08:00
Krishna Srinivas 25b936c369 browser: Implement infinite scrolling for object listing. (#3720)
fixes #2831
2017-02-10 22:54:42 -08:00
Harshavardhana 4b4cb07fb6 Update browser assets with new changes. 2017-02-02 03:01:49 -08:00
Harshavardhana fc446e0b81 docs: Add browser doc for running dev in custom port (#3675)
Fixes #3674
2017-02-01 13:12:13 -08:00
Krishna Srinivas f7f103725b browser: Make logo and "Minio Browser" text non-clickable. (#3668)
fixes #3601
2017-01-31 13:44:07 -08:00
Harshavardhana cb48517a78 Update browser assets with new changes. 2017-01-30 16:38:49 -08:00
Krishna Srinivas 46743c7918 browser: Component attr names should not clash with redux state keys. (#3656)
fixes #270
2017-01-30 14:25:55 -08:00
Harshavardhana 18c9d49a32 Build browser with new changes and update yarn.lock 2017-01-24 19:11:37 -08:00
Krishna Srinivas 659d5aabd1 browser: Access to private paths redirects to login. (#3622) 2017-01-24 12:08:00 -08:00
Krishna Srinivas b4343a28b7 browser: add yarn.lock and .gitignore files. (#3621) 2017-01-24 11:56:30 -08:00
Krishna Srinivas cead24b0f7 miniobrowser: Bring Minio browser source into minio repo. (#3617) 2017-01-23 18:07:22 -08:00