This change adds project usage and cost per project to the vuetify app.
Issue: https://github.com/storj/storj/issues/6117
Change-Id: I8921aacb6bb24b41794008100ea6e52deed76b60
Hide CTAs on limit cards if user is not the owner of selected project.
We do this because user can't update limits if they are not the owner of the project.
Issue:
https://github.com/storj/storj/issues/6214
Change-Id: Ib6b564cd6afc1b4bed08ee9b26108f803f0ffb89
This change updates the access grant creation dialog to align with our
new designs. It also fixes an issue that would occur if the web worker
was initialized after the dialog was mounted.
Resolves#6169
Change-Id: Ic557766e6fcf57cc79c72e670a0e83c7eb2834ba
This change updates the vuetify app and the production app to load
fonts using the fontsource package.
Issue: https://github.com/storj/storj/issues/6200
Change-Id: I4b91a4d0dfcfc42f9f71ac03b31d1ef74c53e15d
This change fixes an issue where the gallery view will use wrong links
display object previews because they were encoded multiple times.
Issue: https://github.com/storj/customer-issues/issues/961
Change-Id: I498878e9beb927b812e40d4c7e5ae812cfa3554c
This change fixes an issue where the bucket deletion dialog wasn't
functional due to an invalid property value. This change also fixes an
issue where access grant worker errors were reported as being caused by
the bucket deletion dialog even when it wasn't open.
Change-Id: If2c2713857c4cc5c3c7ae60e431f5034e78c4c5f
Also copy the necessary vuetify dist directory in the `Earthfile` so
that this app can be easily deployed to staging environments.
Change-Id: I8d91c52bb8f7c31fc3764efe60a071e21b399b46
This change uses the new POST projects endpoint in place of the GraphQL
createProject query.
Issue: https://github.com/storj/storj/issues/6195
Change-Id: I1776b8b0e8656d2f5fa4219df020615bcc0f2543
This change allows buckets to be shared from the Buckets page through
a dropdown menu in the buckets table.
Resolves#6116
Change-Id: I92055a3ea174d786f2ef960124aafcbd3b2139c4
Added unique autocomplete values for password and passphrase inputs to make browser native autocomplete feature work correctly.
Issue:
https://github.com/storj/storj/issues/6151
Change-Id: I38e1bfed46beb47b3be1a620ce2a4996359feafc
This change requires a passphrase before opening a bucket and after
opening the objects page without going through the buckets page. It also shows if there are
objects stored with different passphrase.
Issues: https://github.com/storj/storj/issues/6100https://github.com/storj/storj/issues/6110
Change-Id: Ica509fd6db968ef9c232a05b3ee39e0ab5f746e1
This change replaces mock data for the total cost, STORJ token balance,
and coupon information in the Vuetify project's billing overview with
real data.
Resolves#6095
Change-Id: Iad1c5141065f8761d7d13140d42871018fa9aca4
This change adds a rule to the ESLint config to warn when tabs are used
instead of spaces for indentation.
Change-Id: I068d559211e0f9e40abaea86de839a409b405674
Users with a pending invitation for a project could be redirected to
that project's dashboard if its title in the projects table was
clicked. This type of redirection is only intended for projects that
the user is a member of, as navigating into any other project will send
the user back to the all projects dashboard. This change fixes this
issue, making invitation titles in the projects table unclickable.
Change-Id: I6ef6a72d92e8eb576d49d6268373af340116ee2f
This change fixes an issue where the vuetify app will reload when
"enter" is pressed in a form. It also adds a success notification on
successfully enabling 2FA.
Change-Id: I23a66122dce4f1bd2ff21a5cd6ae0f1b22be9395
This change allows buckets to be deleted from the Buckets page through
a dropdown menu in the buckets table. Before deletion, users are
prompted to confirm their decision in a dialog box.
Revoles #6114
Change-Id: Ie3a8bfbf94a29c4bc67b4dacbace6abe7e1bc2eb
This change resolves an issue where the buttons in the navigation
sidebar would not navigate to the correct page when clicked if the
current path was not a sibling of the intended page's path.
Change-Id: I400aa05954f532eabbad98f9fa36f594f08a6c10
Updated message to be more clear, and changed "estimated charges" to
"estimated usage". This should make this card in the billing UI less
confusing.
Updated styling.
Issue:
https://github.com/storj/storj/issues/6150
Change-Id: I5de4d72dfd437d4f6bda882f5b779b2217e84f98
This change implements the Project Settings page in the Vuetify
project. It allows users to view and change a project's name,
description, storage limit, and bandwidth limit.
Resolves#6176
Change-Id: Ibcc56d2bb7c71e818390e69eec197508e3551803
This change fixes an issue where notifications would display above the
viewport if the page was scrolled down. Now, notifications are fixed to
the top-right corner of the viewport.
Change-Id: I4d55b7d149b889e7b41e2f245ff8547e998877fc
This change adds the ability to create a bucket to the vuetify poc.
Issue: https://github.com/storj/storj/issues/6112
Change-Id: Ib56432e2ad09c6673c9903a49537199882fd1cf3
This change resolves an issue that 37a027a introduced wherein each
input component's details area was indiscriminately hidden. Now,
details are only hidden when there is no content to be displayed.
References #6170
Change-Id: I8ccbef3f64a54c400a2a2e9222618eb5015c8dd8
This change allows sessions within the Vuetify project to be refreshed.
In addition, dialogs appear to inform the user when a session is about
to expire and when it has expired.
Resolves#6147
Change-Id: I53d5508825aa9992e4fed8ce7b957d949ff28e2d
This change allows you to host the vuetify app on <x>.example.com where
the main app is hosted on example.com. A configuration is added to
specify an exact subdomain for cookies. For example, if my production
app is hosted on us1.storj.io and my vuetify app is hosted on
vuetify.us1.storj.io, the cookie domain should be set to ".us1.storj.io"
so that any authentication cookie is accessible to lower-level
subdomains.
Since the vuetify app does not currently support login/signup on its
own, it is still required to first login to the main satellite UI, then
navigate to the Vuetify app after the session cookie is set.
If the "vuetifypoc" prefix is not desirable when using subdomain hosting
for vuetify, the VITE_VUETIFY_PREFIX variable can be modified in
web/satellite/.env before running `npm run build-vuetify`. For now, we
should keep this prefix because it makes developing on the vuetify app
significantly easier if subdomains are not being used.
Issue: https://github.com/storj/storj/issues/6144
Change-Id: Iba1a5737892c8ee8f38148a17b94e3222f8798e6
This implements functionality to add cards to users' accounts, to the
vuetify POC.
Issue: https://github.com/storj/storj/issues/6097
Change-Id: Ie56e85e74fd44de6839e6a985877843b730a3f5f
Removed selection/checkboxes on team table.
Made search bars on searchable tables clearable.
Navbar toggle works on small screen sizes.
Removed notifications section from the settings page.
Issue:
https://github.com/storj/storj/issues/6148
Change-Id: I531088cf0db04fd2979d39f92bb4342e0d9551a6
The custom styling for the VAlert component as of
storj/vuetify-storj@71c509a has been pulled into the Vuetify project.
References #6170
Change-Id: Ia36fd936ddc33c7687bcf7b2cdd6f789d0bc0a92
Reverts this commit to make part size dynamic:
a9d979e4d7
There are issues with client-side memory usage using the dynamic sizing.
Change-Id: Iba18af1e424622b7b3bf57413322332d8e1aa63a
This change adds a Vue composable and wrapper component for reusing
session timeout code. In the future, the composable will be used to
implement session timeout in the Vuetify project.
References #6147
Change-Id: Ibd049a8a8041007319798ac4187a6ed6487b591f
When a user is in the free tier and attempts to add STORJ from billing screen, open the "upgrade" modal instead of the simpler "add STORJ tokens" modal.
The simpler modal is still used for Pro users.
Issue:
https://github.com/storj/storj/issues/6165
Change-Id: I261d67e1c4d569f7058da828bcb145a64136c231
Universal "large file notification" removed.
Threshold for user-triggered large file notification is 5gb instead of 1gb.
Large file notification appears as "info" instead of "warning".
Display large file notification on failed uploads >1gb.
Issue:
https://github.com/storj/storj/issues/6149
Change-Id: I6ae6ba50e45c65f058cbb91a5f0fbda79a49a812
This change modifies delete bucket requests to optin for force delete
using the x-minio-force-delete header. This solves an issue where
buckets deletes will be slow for buckets that have many objects. This
change is to make the UI emulate uplink rb --force since it has better
performance.
Issue: https://github.com/storj/customer-issues/issues/930
Change-Id: I0a74c1a201e74b07eb30b917adf78ef865ce2003
This change uses the new /delete-by-ids endpoint in place of the GraphQL query.
Issue:
https://github.com/storj/storj/issues/6140
Change-Id: Ia78016e68fca296367e650b7a919130e662ee8f6
This change uses the update project HTTP endpoint in place of the
GraphQL alternative.
Issue: https://github.com/storj/storj/issues/6134
Change-Id: I7d8203c20d8c0c1dcdddb7d1aaf472fc66568a3d
This change removes the project description from the subtitle of the
topmost item in the project navigation area, replacing it with the
project name and inserting "Project" where the name used to be.
References #6170
Change-Id: I07a04ebba54828df41f4d241aa69ec6b3d9e0cef
The message area beneath input components has been hidden by default so
that it doesn't occupy space when it isn't needed.
References #6170
Change-Id: I16b078cddb07708169b96e53db283aedb290f9f4
This change fixes the position of the close button in dialogs where
there was no spacing between the button and the edges of the dialog
header.
References #6170
Change-Id: Id3f798953319c1703d7bb6868757aecd02ec09f5
This change causes the satellite frontend to use the HTTP endpoint for
retrieving bucket usage totals rather than its GraphQL counterpart.
Resolves#6141
Change-Id: I9a42080c8344aa617a910a8782dc61101a6734c8
This change uses the new /projects/paged endpoint to get user's owned
projects in place of the OwnedProjects graphQL query.
Issue: https://github.com/storj/storj/issues/6135
Change-Id: I1e8dfdefdc7de51595637577f7d8bdce8e969652
This change adds an endpoint to get a user's projects, similar to
the OwnedProjects GraphQL query.
The console.ProjectInfo struct has been renamed to UpsertProjectInfo
to more accurately reflect its use.
Issue: https://github.com/storj/storj/issues/6135
Change-Id: I802fe4694a5cc75a9df2b565476f6e6f473431d4
This change uses the new /create endpoint in place of the GraphQL query.
Issue:
https://github.com/storj/storj/issues/6139
Change-Id: Ic7db9407377b742ab87c887a74a37eaec6a8dbb6
This change uses the new /list-paged endpoint in place of the GraphQL query.
Issue:
https://github.com/storj/storj/issues/6138
Change-Id: I68c35437f3f2e18898783e2fd523cfdfb3f10de3
Start using analytics pinia module instead of making direct API requests from components.
We do this to not mix transport layer logic with view logic.
Issue:
https://github.com/storj/storj/issues/6122
Change-Id: Idb1902aec0635df4f0e682ba50bcc97b240ac4a9
This change uses the new /projects endpoint in place of the GraphQL
MyProjects query.
Issue: https://github.com/storj/storj/issues/6132
Change-Id: Ie4ae69dd6def75c4b8c627aaf55c31914cf69ce5
Added update session timeout dialog for vuetify app and wired it up with the backend
Issue:
https://github.com/storj/storj/issues/6090
Change-Id: Icfd981c8d24a87b199e5e1eeb599f6369e6ee5c4
Made UI updates to reflect pending token payments during upgrade account flow.
So pending transactions with confirmations count are displayed on Add STORJ Tokens step of upgrade flow.
While this modal is open we make a request to storjscan once in 20 seconds to get recent confirmations count.
When all transactions become confirmed we show success view where a sum of STORJ tokens received is displayed.
Issue:
https://github.com/storj/storj/issues/5978
Change-Id: Icfdc1e5080ed58cea1822cb7d85551ba8064c636
Upgraded package-lock version to correspond to node v18+.
Upgraded aws-sdk dependencies to resolve vulnerabilities.
Also, fixed typing errors in object browser pinia module.
Change-Id: I35e6e219e66f98ca167ccb4ac57ad07ac99efff1
Added change name dialog for vuetify app and wired it up with backend.
Issue:
https://github.com/storj/storj/issues/6088
Change-Id: I37af595c9e48034d59ead051918bbb4ec5e6ff31
This change fixes an issue where changing the size of a page will also
change the current page. It uses a more accurate calculation to
determine if the new size and current page will result in a page index
error.
Issue: https://github.com/storj/storj/issues/6094
Change-Id: Ie62f79191eb34ccd75ccd42b923b8866fe4e4d7f
Added change password dialog for vuetify app and wired it up with backend.
Issue:
https://github.com/storj/storj/issues/6089
Change-Id: Ib1dffa947b65c299b278a48ed1491a623895a0bd
Updated wording because we don't want to dissuade customers from upgrading and using Storj by implying that there is a ceiling to what they can store and egress with Storj.
Issue:
https://github.com/storj/storj/issues/6040
Change-Id: I8a08bea47b698e66e023d1bfcaa5ef09dae79192
Imported chart components from main project to vuetify app project dashboard with slight updates.
Issue:
https://github.com/storj/storj/issues/6071
Change-Id: I51254ea60aab59c7a841784b5dac7d41446e1df4
Build-watch is broken again since we don't use NODE_ENV variable anymore.
Adjusted code to work with 'mode' setting.
Change-Id: I08b19ef59b39e6b14ce05d7340f032ee8377c49c
Revert upload parallelism queue size back to 4 segments at a time.
Increasing this number causes some memory issues for some users.
Issue:
https://github.com/storj/storj/issues/6120
Change-Id: Ic5bcd1f13ee625fdc2613ee23d6945c905f03142
Implements the "sign out" button in the vuetify app to clear all app
data and navigate to login.
For now, there is a hard refresh after the router navigates to login,
becuase the vuetify poc does not have its own login page to route to.
The hard refresh allows the user to be presented with the main app's
login page after signing out.
Change-Id: Idb1c1e6af8511ea5db6533e46b96b9c15693379f
This change implements the table on the buckets view of the vuetify app.
Searching and pagination are implemented, but sorting functionality
needs to be added in a separate change - we need to extend the
bucketsStore/backend functionality in order to support sorting.
Resolves https://github.com/storj/storj/issues/6062
Change-Id: I4e92e6facbd7b21f4ec081e41f7e568ddb3cea29
A project ID path parameter has been incorporated into project-specific
routes. Previously, project IDs were stored only in local storage,
which made it impossible to bookmark or share links to pages within a
particular project.
Resolves#6076
Change-Id: I4f46f58a95dfc9b67d95fdb1c6a65b50fcafe02b
The all projects dashboard of the Vuetify project has been updated to
display real project information rather than mock data. Additionally,
projects may now be selected and project invitations replied to through
the all projects dashboard.
Resolves#6036Resolves#6038
Change-Id: I8aef0dc07c172e2bc8e2f7eb26a3d205bd56067f
The glob patterns in the linting commands have been removed in favor of
a simpler way of expressing which files should be linted.
Change-Id: I150a01725642b4bc445e2e157ddf86e50e3911a2
The name of the Vuetify Pinia app store has been renamed so that it
does not conflict with the regular app store. Previously, whichever
store was created first would override the other due to them having
identical names.
Change-Id: I11cb3b70b7385320accd30644cb3ad6cfad7d00e
Update wording to reflect latest auto upgrade account flow.
new wording:
Send more than $10 in STORJ Tokens to the following deposit address to upgrade to a Pro account.
Your account will be upgraded after your transaction receives 15 confirmations.
If your account is not automatically upgraded, please fill out this limit increase request form.
Issue:
https://github.com/storj/storj-private/issues/367
Change-Id: I46fcb9243722313b98e5c54e8194d6152f7e1631
This change navigates users to the all projects dashboard when the logo
in the navigation bar has been clicked.
Change-Id: Id63b616d12eea510b52f715f3003838541d2ab63
This change allows the navigation drawer to be toggled by clicking the
the hamburger menu in the navigation bar. The hamburger menu has been
hidden in pages not containing a navigation drawer.
Resolves#6034
Change-Id: I48cfee1f48964c500c07f09f188c7077442261ab
This change enables linting for the Vuetify proof of concept code and
fixes the linting errors that were detected. Additionally, it migrates
the Vuetify components to the composition API.
Change-Id: Id8cc083954e3f4cb66a00ad2715a96c8747b592c
This change adds a sharing option to the dropdown menu for bucket rows
in the Buckets page.
Resolves#5964
Change-Id: Ife0eb8f6cabbe85eaedae1d94d97694f3c677a3e
Updated multipart upload part size to be 64MB or higher depending on file size.
Increased queue size from 4 to 5 (5 parts being uploaded at a time) because theoretically it can decrease uploading time, right?
Issue:
https://github.com/storj/storj/issues/5851
Change-Id: Ida5661fa0ed6bc5a0651afc05b5feb7e77791efe
* Fixes backend to use only a user's owned projects to determine if the
user has hit the project limit
* Makes frontend logic consistent (and simpler) for checking whether to
send user to the "Create Project" modal or the "upgrade account or
request limit increase" modal
Before this change, projects that a user is a member of would be
included in determining whether the user could create a project. Also,
the "create project" button in the projects menu in the navbar of the UI
did not enable a free tier user to create a new project, even if they
had not hit their limits.
Change-Id: Ia776eb627ca37b83f5bc63bed83ee83c9f7cc789
The upload modal has been updated to more closely match our designs.
- A button has been added to cancel all in-progress uploads.
- The status text has been fixed to display the proper file count.
- Clicking completed items in the upload modal previews them.
Resolves#5973
Change-Id: Iaee5fe05be14b3a6f2de1a9c807eca5137c7d643
This change fixes an issue where a new project member invitation would
silently replace an older one that has the same project ID and email if
the email did not belong to a registered user. Additionally, the
satellite frontend has been updated to display more descriptive error
messages for project member invitations.
Change-Id: I32b582c40c0028b8eedf2aed4b5bfb43501594b4
This change fixes an issue where the currently selected project would
be switched when removing project members.
Change-Id: I8138b4229eb7933d25a2fe84e5aa0b5846fc79b8
This change fixes an issue where long text content in the common table
will overflow and breaks layout.
Change-Id: I30f6e08488410359e0a97995f8d769b272b56c72
This change allows users to generate links for sharing folders.
Previously, users were only able to do this with files and buckets.
Resolves#5644
Change-Id: I16dd8270337e3561b6bda895b46d3cc9be5f8041
Updated upgrade account modal to show user account free tier limits instead of hardcoded values.
Issue:
https://github.com/storj/storj/issues/5939
Change-Id: I26ffbe2571c5ca4b37f02bec5211bac986bedc6a
Fixed bottom spacing for all pages. Basically removed bottom padding override in dashboard wrapper.
Removed a couple of unused components and icons.
Made pagination size changer dropdown to appear on top of selector to not extend page height.
This change fixes pagination issue on Team page:
https://github.com/storj/storj/issues/6012
Change-Id: I707dd1bf9d61b05742b7f97a757a2a8f5f9f93fd
Added support link to upgrade account STORJ token flow to tell user that they have to fill in another form to upgrade with tokens only.
Issue:
https://github.com/storj/storj/issues/5985
Change-Id: Ifb852b883c6bf092d5eec588e823925a8ea661c9
There are many case where the keywords `free` and `available`
are confused in their usage.
For most cases, `free` space is the amount of free space left
on the whole disk, and not just in allocation while
`available` space is the amount of free space left in the
allocated disk space.
What the user/sno wants to see is not the free space but the
available space. To the SNO, free space is the free space
left in the allocated disk space.
Because of this confusion, the multinode dashboard displays
the `free` disk space instead of the free space in the
allocated disk space https://github.com/storj/storj/issues/5248
While the storagenode dashboard shows the correct free space
in the allocation.
This change fixes the wrong free disk space. I also added a
few comments to make a distinction between the `free`
and `available` fields in the `DiskSpace*` structs.
Change-Id: I11b372ca53a5ac05dc3f79834c18f85ebec11855
This change properly encodes email addresses that are used as query
parameters in project invitation-related URLs.
Change-Id: Iaaf7b62b5ac3db3f0b0e000cc06fef8e315400a8
When entering passphrase to open bucket we make a ListObjectsV2Command request to figure out if there are objects encrypted with different passphrase.
If there are a lot of objects then this request takes forever to process.
By this change I added 10 seconds timeout for that request to not block user.
Issue:
https://github.com/storj/storj/issues/5954
Change-Id: I5243fba68d0b56dff2fb2b3a608a5e71860724c2
This change updates the projects table on all projects dashboard to
more closely match the designs.
Change-Id: I547a83352fba8c3ad7958802db7b38b342b383e8
This change groups the list of projects in ProjectSelection.vue into
those owned by the current user and those that are not.
Issue: https://github.com/storj/storj/issues/5972
Change-Id: I20f4e68f84e4ece230afa53e7e7eed507da625af
The cursor now appears as a pointer when interacting with the session
timeout modal's dropdown menu.
Change-Id: I309463b5f3af2df198a8bba5a9122e8a8f39de89
The mobile header's horizontal padding has been adjusted to match the
padding of the page content. Additionally, the size of the logo in the
mobile header has been decreased.
Change-Id: I7559813455fb186f1402783db6022ebdaa59c7ae
The styling of the session timeout selection modal has been altered to
more closely align with our designs.
Change-Id: Icaf2d16170908af4962075732c6df0f08d7dba2d
Fixed 'Too may objects' objects banner being displayed in a wrong place.
I made it simpler and more correct because it's impossible to know the exact count of objects for each path/prefix because s3 client can list only 1000 objects (for now) and our API at the same time calculates object count for the whole bucket (not for particular passphrase).
Added message that user can list all objects using Uplink CLI.
Also removed unused legacy css file.
Issue:
https://github.com/storj/storj/issues/5955
Change-Id: I4b3cff47763ebdb631119b690de876ecf6a22e9d
This change allows members without an account to be invited to a
project. The link in the invitation email will redirect these users to
the registration page containing custom text describing the invitation.
Resolves#5353
Change-Id: I6cba91e57c551ca13c7a9ae49150fc1d374cd6b5
This change updates the buttons same as the "New Folder" button to
have hover state consistent with the design in the figma.
It also fixes an issue where table view will be shown by default even
if the user has less than 8 projects.
Issue: https://github.com/storj/storj/issues/5971
Change-Id: Ic8b99496e1990550a9ea1550c3c2bd80bf997aa9
The upgrade notification has been updated to adapt to mobile screens
accordance with our designs.
Additionally, an issue where the notification would display "0B free
included" when displayed in the All Projects Dashboard has been fixed.
Change-Id: Ic13b9426ab5d6529c9d7b2ad8446a17da74905b1
This change adds a button to the header of the All Projects Dashboard
that navigates the user to the My Projects page.
Resolves#5996
Change-Id: Ie467e22c9039cf30fda1b8d815c1d6269f5ddf4f
This change makes the registration page to display custom text for
users that have been invited to a project.
References #5353
Change-Id: Ib20760f79ef29327b66316817010ca1dc00ff2ce
This change adds row actions (delete,reinvite,copy) to the project
members table. It also adds analytics events for the actions.
Issue: #5762
Also fixes: #5941
Change-Id: I7fb7f88c7bd5ac2ce3e3d00530af4708ff220bd7
A button has been added to the Team page for resending expired project
member invitations. It appears when one or more of such invitations
have been selected.
Additionally, styling for certain search fields and the Team page's
header has been updated to align more closely with our designs.
Resolves#5752
Change-Id: I623fed5f50e60beca2f82136f8771dde5aa684f4
This change sends new passphrase created event for when passphrase is
created with the method by which it was; entered/generated
Issue: #5918
Change-Id: Ib485b6ff7a968d4c84bf124e14c14c91478f0dfb
This change further restricts projects members from accessing the
projects settings page by navigating to (all) projects dashboard when
/edit-project-details is visited or project is switched.
It also applies a white background to the project ownership tag to
improve contrast and visibility.
Change-Id: Ib855c4e3aa4be7ec9ec1e9b312041118442358ad
This change follows up on 8f7c59d to hide project settings option on
the all projects dashboard table for members.
Change-Id: I0ac246e0f6018d7b3028b68439049df3081fce29
Pending project members whose invitations have expired now appear with
the "Invite Expired" role in the Team page.
References #5752
Change-Id: Ic91289618ee02e65de29e986fa3205eccf39b267
Add "geographic distribution" item into three-dot menu.
On small screens, instead of showing three-dot menu + geographic distribution, show three-dot menu + download.
Allow the user to use left and right arrow keys to navigate through previews in gallery view.
Update "Do not share download link with other people" notification according to new designs.
Add hover styles and tooltips to icons according to designs.
In the "View Details" modal, change "Saved in" to "Bucket".
(not related to gallery view) - the three-dot-menu in the file list has a border radius, but when you hover over the last component ("Delete"), the border radius goes away.
Issue:
https://github.com/storj/storj/issues/5968
Change-Id: I39bec2e630327d136cb2550dbbce4fcbf77399f9
Each project member invitation returned from our GraphQL API now
contains a field indicating whether the invitation has expired. This is
required for us to enable functionality in the satellite frontend that
is dependent on this information.
References #5752
Change-Id: I4b71738e7a7373c690de188614f8c95009bc3989
This change adds a new endpoint to verify the validity of an invite
link. It conditionally redirects to the login page with or without
whether the invite is valid.
Related: https://github.com/storj/storj/issues/5741
Change-Id: I587ef8ded67a9ea753e4edec1beeecd39c949922
This change slightly modifies the logic for serving the vuetify
frontend. After this change, if the config `console.use-vuetify-project`
is set to `true`, the Vuetify UI will be served at the `/vuetifypoc`
prefix. The POC is only project dashboard right now; the existing
login/registration pages must be used, but once the cookie is set, the
POC will work correctly.
Change-Id: I7725f23a0d2b04f274bab36d8be3370116687d1b
The Team page now displays project member invitations alongside project
members. These invitations can be removed in the same manner that
members can.
References #5855
Change-Id: Iade690757d4430deee3378066d7dc19766f53936
This change places project invitations ahead of projects in the cards
view of the All Projects Dashboard in order to be consistent with our
designs.
References #5855
Change-Id: I31268b97a9af2279bf90a171d0958b5a4bcbf13b
This change uses the new project invite endpoint in place of the former
that adds invited users directly to a project's members. LoginArea
is updated to make the region/email from an invite email link uneditable.
VInput.vue's composition api code has also been updated to match other
components.
Issue: https://github.com/storj/storj/issues/5741
Change-Id: Ia3f82f5675fba442bb079dc8659b5396a25b9f03
By this change we check if provided access grant name is free to use at the very beginning of the creation flow.
Issue:
https://github.com/storj/storj/issues/5693
Change-Id: I06583bf458cea977cb0a920d55df50f2d19e1599
Add some code to generate a basic markdown file documenting a generated
API. Generate this document for the API in
satellite/console/consoleweb/consoleapi/gen.
The documentation is not completely correct, as it may include some
values in the request body that are not actually usable by the
requester. This can be fixed by making sure all types used within the
generated API are properly annotated with `json` tags.
Issue: https://github.com/storj/storj-private/issues/244
Change-Id: I57b259967fb0db8f548b6598a10c825da15ba723
This change matches the all projects dashboard styling to the figma as
closely as currently possible.
Issue: https://github.com/storj/storj/issues/5934
Change-Id: I93edd898fbcee954265737052a1967d318370924
This change causes the satellite frontend to send analytics events for
project invitation responses. In addition, it more properly sources
reported project invitation response errors.
References #5855
Change-Id: I374e064c39920d3af829cb8467790d864a417115
This change allows users who are eligible to purchase a package plan to
do so, even if they missed the opportunity during onboarding.
Now, if the user is eligible, an opportunity to select a package for purchase
is presented as part of the upgrade modal.
Issue: https://github.com/storj/storj/issues/5932
Change-Id: I45575274839701bf7b80815330a4ae86a1d32093
Built side Vuetify subproject inside web/satellite with limited functinality.
For now it has navigation side bar, simple project dashboard and team page (where you can list/add team members).
Issue:
https://github.com/storj/storj/issues/5854
Change-Id: I9ff3e80b8ace1dc31de6a788174c5ffc19f050f8
This change hides the project details link, introduced for the issue
linked below, if the user is only a member and not the owner of the
project.
Related: https://github.com/storj/storj/issues/5930
Change-Id: If6b0817dfa32f2f661629cc158eb4fb44dfe9ffc
Move "common" pricing plan files from components/onboardingTour to
components/account/billing.
This way, the file imports make more sense when pricing plan info is
used outside of the onboarding flow.
Related to https://github.com/storj/storj/issues/5932
Change-Id: I94f5f561c88c3a8f0046065dfa1a708c062faa93
Fixed download objects in object browser.
Context:
aws-sdk v3 getSignedURL method now returns a Promise<string> instead of regular string. So we have to await for promise to resolve
Issue:
https://github.com/storj/storj/issues/5956
Change-Id: I2431095e7e8cd1bbc4e866c6958a2c03898c4b4d
This change adds a link to the project dashboard nav area to navigate
to the selected project's detail page.
Issue: https://github.com/storj/storj/issues/5930
Change-Id: Ief26505feeb62e88b8e6096d4be70004dc068b64
This change adds new email templates for project invites, one for
existing users, one for new users. It changes the project invite code
to use the new template for existing users.
Issue: https://github.com/storj/storj/issues/5860
Change-Id: Ic7b14a677277ea6c25ee527d03f709474fc05f83
This change allows users to view and interact with their project member
invitations through a banner in the dashboard area. The banner only
appears if the All Projects Dashboard is disabled, as it provides the
same functionality in a different way.
References #5855
Change-Id: Ia0771e2af52c40a72f1cacf72bc9098cc68f0dcd
This change allows users to view and interact with their project member
invitations from within the All Projects Dashboard.
References #5855
Change-Id: If5b4af46924530c91f8a5c16bfb5134de313dc90
This change limits the length of user input fields like search, email,
username. It also limits the receivable size of request payloads.
This is to prevent potential DDoS attacks resulting from receiving
large payloads.
Improvements are also made to the accounts page and register success
pages to display long names/emails better.
Issue: https://github.com/storj/storj-private/issues/201
Change-Id: I5d36eb83609b3605335a8d150b275c89deaf3b43
Added new gallery view for object browser.
It is behind new feature flag.
TODO: add options dropdown and modals
Issue:
https://github.com/storj/storj/issues/5824
Change-Id: I21829c599cd904b833eaf429690c66c3da306a0f
This change prevents the redirect to all projects dashboard when no
project is selected (if all projects dash is enabled).
Since a previously selected project id is saved in local storage, it is
used to store it's associated project in memory.
This change also makes a small change to a test that ignores potential
failures.
Issue: https://github.com/storj/storj/issues/5920
Change-Id: Ie758893dfb655893520c642fb47b934cd59f177e
Improve consistency of UI to use the term egress instead of bandwidth
or download
Issue https://github.com/storj/storj/issues/5887
Change-Id: I898ab5d55e5ad8a2d2dd0420c8496d57bc2ecb61
This change slightly modifies the token transactions table to match the
figma and account for bonuses.
Issue: https://github.com/storj/storj/issues/5755
Change-Id: I2bb27d5e331223a1e5e807ace09bbd6c3bc2c3b0
Add a config flag (default false) to hide the new limit cards (e.g.
segment, storage, bandwidth limits) from the UI. We need to investigate
some queries the egress card is using before enabling these everywhere.
Change-Id: I762e7d9e6a0a4315f1520e688b2bad32b100e5a0
Migrated webpack to vite.
Replaced jest with vitest (because I couldn't resolve 'import.meta' issue)
Replaced legacy vue-svg-loader with vite-svg-loader
Replaced bip39 dep with bip39-english (it includes only english wordlist)
Replaced aws-sdk v2 with aws-sdk V3 (because v2 was throwing some weird error in console. Ref: https://stackoverflow.com/questions/75107933/aws-sdk-contributes-to-build-error-uncaught-typeerror-e-is-not-a-constructor)
Renamed VUE_APP_ENDPOINT_URL env variable to VITE_ENDPOINT_URL
Removed a ton of dependencies (like babel and jest-related stuff).
Tested in Chrome, Safari, Brave, Firefox and Opera browsers.
Additionally fixed logout errors from buckets and object browser routes.
TODO: try to remove util and stream-browserify dependencies and see if it works
Change-Id: I4562649a59eb0ba80c1a672d55c59fceb8c80b23
Update to use NewCreateProjectModal to match figma designs and update
CreateProjectPromptModal to handle free tier case and paid tier increase
project limits case
Issue https://github.com/storj/storj/issues/5814
Change-Id: I8c5f818d3867d0484b213d1bfc3ce51e904c0afa
This fixes an issue where the "primary" class will be applied to the
wrong table cell. Also, truncation for long file names is fixed.
Change-Id: I6303f4b7d3a7a064f8dc79fac90b0bc2d5eb5024
This change moves the call to fetch user's frozen status into the
getUser store action. It fixes an issue where the froze status banners
will not show.
Change-Id: I1a1853d5a89502e294848ceb6a8566120ecd4c10
A "Role" column has been added to the project members table to indicate
the roles of the members in the project.
Issue: https://github.com/storj/storj/issues/5743
Change-Id: I991b01e3d2cd792c21bd661feb7a225300d9a86b
* Update defaults for gateway credentials URL and linksharing URL to use
storjsatelliteshare.io instead of storjshare.io
* Add new config for "public linksharing URL" and set it to
link.storjshare.io
* Use "private" linksharing URL for actions within the object browser
* Use "public" linksharing URL for sharing files externally
Resolves https://github.com/storj/storj/issues/5805
Change-Id: I2c8fbd04141755b4751dcf4d054253a7ff8d6cf3
A navigation is prevented to the onboarding if no project is selected.
However, an exception was not made for the pricing plan page and caused
the pricing plan page not to show even under passing conditions. This
change makes that exception for the pricing plan page.
Change-Id: I72ddb942a0059d748a13da0b6038b99b9b5064af
This change fixes an issue where clicking "Billing" on all projects
dashboard won't navigate to the billing page.
This also makes sure an error notification for projectID is not shown
after the user is back on the all projects dashboard from team page.
related: https://github.com/storj/storj/issues/5875
Change-Id: Ie6517c9006d1a780f307f6282f83c749d369adaf
This change fixes an error when all projects dashboard is enabled where
there will be no project selected and an error "projectid not provided"
will be thrown.
It navigates back to the all projects dashoard so the user can select
a project.
Issue: https://github.com/storj/storj/issues/5875
Change-Id: I144c4bbd3782dcdf40b2ed2be445c7f100c36b32
The project options has been modified to account for whether the all
projects dashboard is enabled or not. The "Manage projects" item is
hidden, and an "All projects" item is added if it is enabled.
Issue: https://github.com/storj/storj/issues/5866
Change-Id: Ic2e8337d2e5577d1c27231287ab3284145fa5b9b
The sidebar previously was showing on the onboarding pages when all
projects dashboard is enabled. This change hides it and also hides the
"session timeout" info banner which was also showing on onboarding.
Issue: https://github.com/storj/storj/issues/5874
Change-Id: Ie418a6f286262b59dce41aba98a5c9d0015cb984
Updated cards to show access grants count, buckets count, team size and billing status for current project
Issue:
https://github.com/storj/storj/issues/5865
Change-Id: I7e8d3aa3e05548d593576c3a0633e9eb51f38cff
Added new modal where user can update storage or bandwidth limit (if Pro tier).
Issue:
https://github.com/storj/storj/issues/5827
Change-Id: Ic3ae6b7a73d055b4eac93d4e2faad7bf26cb9d73
Instead of the hardcoded payout rates that is assumed for all satellites,
this change adds a new endpoint for fetching the pricing model for
each satellite.
The pricing model is then displayed on the Info & Estimation table
on the dashboard
Updates https://github.com/storj/storj-private/issues/245
Change-Id: Iac7669e3e6eb690bbaad6e64bbbe42dfd775f078
The current month estimated earnings on the main dashboard
was calculated on the frontend using hardcoded payout rates for
all satellites.
Instead, we could just use the calculate the current month earnings
from the estimated payout info.
Updates https://github.com/storj/storj-private/issues/245
Change-Id: Ie8ec3e4f2b86455c68f664690ef28bb352107bca
This is a temporal fix to buy us some time while we fix the issues.
We may revert later or maybe override with a later commit.
Updates https://github.com/storj/storj-private/issues/245
Change-Id: I27b2b6811d24d5948161553bf889fe45af013925
The project member invite modal has been updated to match the new figma
design.
Issue: https://github.com/storj/storj/issues/5744
Change-Id: I9ed7ad4ede0fb6f7f42f56b2d8386e12a5a5b6c1
This change makes the error thrown when adding an existing member to a
project readable.
Issue: https://github.com/storj/storj/issues/5840
Change-Id: I4269495f9b7b09c77fbf1af1fc605e5c95bd7cbf
We should not display payout rates when "All Satellites" option is
selected since some of the satellites may have different payout
rates.
Updates https://github.com/storj/storj-private/issues/245
Change-Id: I66cadf85aa8b57681ffbeac75c4ad97f8b057676
Fixed Copy and Download buttons.
Fixed wording styling.
Also fixed VButton's hover state if there is an icon.
Issue:
https://github.com/storj/storj/issues/5774
Change-Id: I9fbac12fe433817f4b5fc1d885f50e6f27e7f6a0
This change opens up the "set session timeout" modal for users to set a
custom timeout duration if they haven't already.
It also fixes a few UI/UX issues on the modal including toggling on the
dashboard.
Issue: https://github.com/storj/storj/issues/5770
Change-Id: I0e71e191049b242e638ca36214d6dd33f78ae5fe
Added new banner to inform user that they can update their session timeout now.
Issue:
https://github.com/storj/storj/issues/5772
Change-Id: Icdf2164b80b12954d004537a4f31d30ef6bb12b8
Reworked open bucket modal styling to correspond to create access grant flow
Issue:
https://github.com/storj/storj/issues/5819
Change-Id: I618b50472e45413a63a531ad959d9af69511d464
Reworked styling of manage project passphrase modals to crrespond to create access grant flow.
Issue:
https://github.com/storj/storj/issues/5815
Change-Id: Iab02d2d94239d9e8c7f85a498fb3a3d83ece34e0
Reworked styling of create project passphrase flow to be consistent with create access grant flow.
Issue:
https://github.com/storj/storj/issues/5815
Change-Id: I54db5b3c37a8cf96d939bfcb99cf0896af25c4cc