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
This change modifies the existing table pagination to match the figma.
Issue: https://github.com/storj/storj/issues/5765
Change-Id: Ic9c57072509705c3cb946b1b6764fd09ba616ceb
This change removes vue filters declared in main.ts and replaces them
with exported functions in utils/strings.ts. This is toward migration
to Vue 3; it has no support for filters.
Issue: https://github.com/storj/storj/issues/5063
Change-Id: I0f0e73f5a4ba3300cd8804b083b18c05e614fa8c
This change updates the session timeout modal to be triggered based on
the user's selected session timeout instead of the default config value
that is if the user has set a custom session timeout duration.
Change-Id: I1d3ace8542efe04c8ef4d729da6b6bec376d5ea4
Separated out frontend config to make it live in an independent unchangable module.
Issue:
https://github.com/storj/storj/issues/5797
Change-Id: I094c44549d586dff6d1ef727fe43091c4aec03b8
Added new modal for already expired session which is triggered after timeout instead of auto-redirecting to login page
Issue:
https://github.com/storj/storj/issues/5771
Change-Id: I8385ddfd9b8988c1d6130b6f0d19f1399a92d8fb
The dashboard area component would set up the session inactivity timers
after it was unmounted, conflicting with those that were started by
dashboards mounted afterward.
This issue caused session refresh requests to be sent more often than
they should have been. Additionally, expiration of the old set of
timers would clear newer ones before they were due to expire.
Change-Id: I86a73f13dab4cd8f979181b29002eb3b3e6e8bac
This change amends invalid references to the first onboarding step.
Previously, the route for the first onboarding step was computed in a
router module using our old way of specifying frontend config values.
When we upgraded to our new config style, the module could no longer be
responsible for computing the route due to the module being independent
of the store holding the config. The route was removed, but some
references to it remained.
Change-Id: I8817174bb4acab44c5ff2624d6edb1bd3e675de2
References to the Team page have been modified to refer to its new
name. Previously, it was called Project Members or Users.
Resolves#5761
Change-Id: I71ababe48847d7573f6abbbdb6b24c621b0abd4f
Start using object browser pinia module instead of old files vuex module.
Also removed vuex related code.
Note: dependency will be removed in a follow-up change
Change-Id: I78cfb62a1ecc32bd86381bd3bfd3be4bd0f38e14
This change ensures that we only trigger a redirect to the onboarding
tour if we're not already there. Previously, we didn't take the current
route into consideration when redirecting. This exposed the risk of an
error occurring that prevented the page from loading.
Change-Id: I70323b21f58229abf463a7c737c262e4253f579a
Add default uploading large file notification when in buckets page.
When dismissed, store in local storage. When user uploads a file that
exceeds 1 GB, show warning notification.
Issue https://github.com/storj/storj/issues/5148
Change-Id: I895a230c017e8439ab2c19ea494930b7e9900a47
Fix for an issue:
uploading folder triggers object preview modal to show up if there is already and only 1 uploaded object in this bucket.
By this fix we check if uploading object has prefix (basically folder) so we don't trigger object preview automatically.
Change-Id: I32943ef81c19d4ba1960ecb2f15126dfb381d845
This change modifies the password strength component to reference the
frontend config when displaying the minimum and maximum password
lengths. Previously, these values were written directly in the Vue
file.
Resolvesstorj/customer-issues#691
Change-Id: I75fd3b7acd4536d2adae25525c61df3127d9c0a1
Previously, we evaluated index.html as a template in order to insert
frontend config values into meta tags. Now that the frontend fetches
its config through the satellite API, this is no longer necessary.
Resolves#5494
Change-Id: Ic98507c5e16cd80317bd9c31d4b55abda0dd7e34
All values derived from meta tag config values have been removed.
They were unused because references to them were modified to instead
refer to the frontend config fetched through the satellite API.
References #5494
Change-Id: Iab6c5e18eac85e2f757e9e731e23239fa267ee0a
References to the meta tag config values in Vuex store modules and
Pinia stores have been modified to instead refer to the frontend config
fetched through the satellite API.
References #5494
Change-Id: I2d16d8fa8f3159c45f00f506825b0c2119e475ff
References to the meta tag config values in Vue components have been
modified to instead refer to the frontend config fetched through the
satellite API.
References #5494
Change-Id: I00ecf81d4a0ba6bd07c827cecb2c689d923d67c0
A common error page component that reflects our new designs has been
added, replacing our old 404 and 50X Vue pages.
Change-Id: Ifc9071674eeda03c5d961c26dce9ff0c80b95c6e
The webpack loader we use for SVGs uses an optimizer that strips the
viewBox attribute by default in order to reduce the byte count.
However, this prevents us from scaling SVGs using CSS. Because of this,
viewBox removal has been disabled.
Change-Id: I443eb83c762d3e0c84bb0fb6705e8f089d8a9405
Use new pinia module instead of old vuex module.
Removed 'do you want to leave object browser with ongoing uploads?' feature for now because it doesn't make sense with project level passphrase
Change-Id: I2249ee9a497d3fa7c59b583849e70366491c3eeb
No component has referenced this page since 9dab10e and we do not
anticipate this changing, so this page can be safely removed.
Resolves#5768
Change-Id: I57acb5e4d0977d74df46aaf67606a19ec0f10bcf
Update notification and banners to be aligned with inner dashboard
content
Issue https://github.com/storj/storj/issues/5636
Change-Id: I0e9fe73835e691bfa9aae05c1cfb08a5b9ab68e3
Combined buckets and objects pinia modules since they are responsible for the same thing.
Rename files module to object browser module to make it more clear.
Change-Id: Id55ec2ab7dbffaec95e5724340068891752a9576
Clarify that bandwidth cost/limits relate specifically to egress
bandwidth (ingress bandwidth is free and does not affect bw limit).
Change-Id: I95a8a07ac3607ff41417d894067800f81246b7a2
This change adds checkboxes to file items in the browser so they can be
selected that way instead of the previous click behaviour, which now
opens the object modal for files and open folder for folders. This
change also features some styling fixes for the browser.
Issue: https://github.com/storj/storj/issues/5726
Change-Id: I5b38208a8e8673d8212c749586bdb7e169c086f8
This change adds a new setting on the account settings page to change
session timeout duration. The old settings page is replaced with a new
one used on the all projects dashboard page. Also, onboarding API
endpoints and store action have been changed to be generic to include
session timeout setting.
Issue: https://github.com/storj/storj/issues/5560
Change-Id: I9026e61c6f86e4be5f9357e5d20e280eab2c29ea
The satellite UI now shows a loading screen instead of the Vue router
view when fetching the frontend config. This prevents components that
rely on the config from being prematurely rendered.
References #5494
Change-Id: Ifeb06288a6895f98a7cab8f321cd68078c73c696
This change fixes an issue where clicking on the name of a project will
perform no action. And another where clicking "Invoice Pdf" on billing
history table will download twice.
Issue: https://github.com/storj/storj/issues/5698
Change-Id: I1a05b994d4855da5be309b1b6d4eb4c70f6f946b
This change makes the upperbound of the project limit slider the max
between the current project limit and the default limit for paid tier.
Issue: https://github.com/storj/storj/issues/5553
Change-Id: I6ca31ec86810ee3577370ab5cd042fce8daf1b90
add ability to sort api keys on the access management page by ascending
or descending name or creation date. Additionally, edit api keys query
when ordering by name to order by lower(name) so names starting with
capital letters are not treated differently from lower case when
ordering.
Change-Id: I81dbb87587a24fb7097313f76bad116b1f20d306
We use defineComponent syntax because images are not loaded with regular <script setup> syntax and dynamic template source.
Change-Id: If0993c57772277e767db2b0705100215e17a4625
Components related to project usage costs have been updated to show
different estimations for each partner, and the satellite has been
updated to send the client the information it needs to do this.
Previously, project costs in the satellite frontend were estimated
using only the price model corresponding to the partner that the user
registered with. This caused users who had a project containing
differently-attributed buckets to see an incorrect price estimation.
Resolvesstorj/storj-private#186
Change-Id: I2531643bc49f24fcb2e5f87e528b552285b6ff20
This is a fix for locked objects count to not update after some action (upload, delete etc.)
Although the issue is still there if user deletes file, navigates outside object browser and navigates back to the same bucket.
In this case we would refetch objects count both from satellite API and our gateway.
So bucket tally wouldn't be triggered that fast and object browser would still show locked objects.
Anyway it's better than it is now.
Also reworked weird object browser initialization which triggered some routing error so this event would be displayed in hubspot as a UI error
Change-Id: I545ab925b135fe3ef2740d17aaece6d43b731c96
* There was one bug where all projects dashboard was enabled, and the
actual path was not being passed to the router
* There was another bug where all projects dashboard was disabled, and
the user was directed to the projects dashboard rather than the next
step of the onboarding flow, meaning that upon refresh, the user would
be prompted for package selection again
Change-Id: I388f04c3af9d03b84b4dd3af6de29e6b82b10531
This flag was previously implemented, but when we reworked the billing
UI, we forgot to re-implement it with the new screens.
This change fixes that.
Change-Id: Ifad2b82f1080928b72d7e572796fcf4287e5ed3f
This change uses the onboarding user settings for whether to show
onboarding (pricing plan) or not.
This change also fixes an issue where a new user is prompted for
passphrase once from onboarding and a second time on the dashboard.
Issue: https://github.com/storj/storj/issues/5661https://github.com/storj/storj/issues/5675
Change-Id: I8e92c732260116de830cfbbbe0545f7e7c8997b0
This change updates the satellite frontend to retrieve its
configuration from the satellite.
References #5494
Change-Id: I1eb961f8a32f7d88173006117d41eddb57624692
There is a bug when switching passphrase outside object browser.
We don't generate edge credentials when switching passphrase so navigating to object browser shows old objects (for old passphrase).
By this fix we clear edge credentials every time user switches passphrase.
Change-Id: Ia09d559f90ae7f02ae5c778844beb7ec268356e7
The account upgrade modal has been updated to display prices according
to the the user's price model. Previously, the modal displayed only the
default prices which were incorrect for users with price overrides.
Resolvesstorj/storj-private#187
Change-Id: I58206cc8ea7e7742a37f759a84dbb24ca40dd8eb
When a user logs in, we check if they have zero projects at the
dashboard. If so, the default project is created and they are sent to
the onboarding flow. However, this allows a user to skip onboarding if
they close out and log back in, since the dashboard is loaded first.
This change moves the default project creation to the beginning of the
overview step of onboarding to make sure any important preliminary
onboarding steps are not skippable.
Change-Id: I4fd1efc6ccd26b972fe57425efe268f8ba135c26
Using eventbus was a terrible approach because if session would expire in less than 3 mins then we would do an explicit API request to reset session for each upload progress ping.
With this change we simply check if there is at least one ongoing upload and refresh session with one single API request and we don't show inactivity modal.
This is a possible fix for this issue (at least I can't reproduce it):
https://github.com/storj/storj/issues/5618
How to test:
setup storj-up with InactivityTimerDuration config value set to 120 seconds.
go to object browser and start upload of some heavy file, for example 1GB.
check if inactivity timer would be shown in 2 mins, additionaly you may check DevTools network tab.
in my case upload is successfully done in about 3-4 mins without any problems.
Change-Id: I09142a7affac08db1d02992ca2d2f40c6267324f
Do not reset showing server side encryption banner for buckets page on relogin.
Issue:
https://github.com/storj/storj/issues/5555
Change-Id: I30d9d8e8370aa1fd1f60069720ecd07d8450c8ee
Upgraded chart.js dependency to V4.
Removed vue-chart and types/chart.js dependencies.
Refactored VChart component to rely only on chart.js dep without any additional wrappers.
Refactored VChart component to use SFC composition API.
Change-Id: Ic5e0131bff413f3205d4449db930644d113fe36d
The Coupons area of the Billing page has been updated to match our
designs.
Resolvesstorj/storj-private#172
Change-Id: I0f3d7f3818f47a1bbc6a2dba930ab429f83f92c2
A package has been written to generate a TypeScript file containing
classes corresponding to the frontend config. These classes will be
used across the frontend once we no longer reference meta tag values
for configuration.
References #5494
Change-Id: If425035892773167ac6d9fbfae8140cab79fbb70
The code responsible for generating TypeScript classes has been
separated from the rest of the TypeScript generation code so that other
packages may take advantage of this functionality.
References #5494
Change-Id: I97eabd430bd6a5f748eafaf8b1d783977e75e660
This changes the icon, and text of the "Details" dropdown item to
"Preview". It also fixes text alignment in the dropdown menu.
Issue: https://github.com/storj/storj/issues/5643
Change-Id: Ib7ab3bc6fd98b9319ec3c3af5644aee6d1942335
This change adds a card to the billing overview page, which shows the
user's token balance from coinpayments.
Issue: https://github.com/storj/storj-private/issues/151
Change-Id: I11e295b48791b32b745cb7a11c5b4aad6b56618e
The styling of pricing plan components has been updated to match our
designs.
References storj/storj-private#172
Change-Id: I61a2536267c41292abd9e4860b5bd45fafb61408
This change implements a new account settings page for the all projects
dashboard.
Issue: https://github.com/storj/storj/issues/5514
Change-Id: Id777cd5c1efe3fa4b40234771ae2a99cc5cb9dd3
This change implements onboarding for the all projects dashboard.
Issue: https://github.com/storj/storj/issues/5514
Change-Id: If8a48c21e6df264c84d362d17bf01d770d9ca768
Added truncating for long names in access grant and project member tables.
Added title to all table items so that full value is displayed on hover.
Issue:
https://github.com/storj/storj/issues/5130
Change-Id: I7f81d88c8ff4db606bdfeb15406ba3ee3fcec968
We should return public project id instead of regular one when quering project charges so that it is consistent on a client side.
This is a fix for an issue with displaying project name on a Billing screen.
Issue:
https://github.com/storj/storj/issues/5641
Change-Id: Ic0c544dbe7369aa88f3a7c97a2f5de5bc854e1fd
We decided to remove sanitizing dependency and restrict v-html with 2 exceptions for web/satellite (we control the content in those cases)
Issue:
https://github.com/storj/storj-private/issues/148
Change-Id: Ic6b2e894d20e7f0553f759ede51845a10831e890
Divide single error event into 2 separate events.
Those are list objects event and change route event.
Issue:
https://github.com/storj/storj-private/issues/164
Change-Id: I3efe0f2d14fceb5841b6d0ff6db685540351281a
Disable buckets checkbox if all buckets option is selected for new access grant flow.
This would disallow unchecking all buckets checkbox if none of the specific buckets is selected.
Change-Id: I81a9f03d49d2cde862fd0afbc2fde0abeb0b31ce
The pricing plan selection step of the onboarding tour is skipped if
there are no pricing packages configured for a user's partner.
Change-Id: I14bacbfaa10acf4cb97db04724749111a73e3928
This change uses the corresponding icons for different types of files
in the file browser.
Issue: https://github.com/storj/storj/issues/5477
Change-Id: I8b10ac4ece03563a465c7823a1e7482244a324b9
This change adds a tag to the project dashboard indicating if the user
is the owner of the project.
It also adds the project limit notification to the all projects dashboard
Issue: https://github.com/storj/storj/issues/5485
Change-Id: Ie2f446966459c160408fb5614ac1701179092cd5
The content alignment of project items that have descriptions and those
that don't differ. This change fixes that. It also adds some text style
changes.
Change-Id: Ic7bb348bdafee463a00faec7faa7af2d814416f8
Right now there is a problem that we list objects inside object browser using Delimiter param which helps us to define if bucket includes folders.
If we set Delimiter to '/' then in response we get a list of plain objects called Contents and another list called CommonPrefixes which includes 'folder' keys.
So this approach makes it impossible to know the exact object count because we don't know a number of objects behind folder keys.
So to correctly calculate objects count we have to make another list request without Delimeter param.
By doing this we get a single Contents list which includes plain objects and objects containing folder Prefix.
Example of Contents response without Delimiter param:
['object', 'object1', 'folder/object2', 'folder1/object3']
Change-Id: Id23f26bed369d2063bdbae96e7d915168c6c9bdd
A pricing plan selection step for users with a recognized partner has
been added to the beginning of the onboarding tour. Once visited, users
have the option of purchasing the pricing plan associated with their
partner or proceeding as a paid or free tier user.
Resolves storj-private#118
Resolves storj-private#126
Change-Id: I3b423194d96deaf87cf9807a766bf4d04fbcf86d
Added extra step for new access grant flow where user can confirm all selected caveats (except passphrase).
Change-Id: I9ac603d588016f30a95d4b578b3752e256a496da
The project limit banner allows free tier users to upgrade, and paid
tier users to request limit increase when project limit is reached.
Issue: https://github.com/storj/storj/issues/5483
Change-Id: I44cca07bee99618adbc1c25b8e559e42a51a3b01
Refactored project level passphrase flow to work correctly with new access grant flow.
Now we don't generate edge credentials when project passphrase is set.
We set them only when they are needed (bucket is being opened or created).
Replaced edge credentials generation to vuex objects module to be single source of truth.
Change-Id: I2a11194fff5a63f7970f6df60db16ad6a1ac7c60
This change does the initial implementation of the all projects
dashboard. It is accessible on satelliteUrl/all-projects.
This change does not implement onboarding step for new accounts.
Issue: https://github.com/storj/storj/issues/5514
Change-Id: Ideadbe91e7ce523f77bde0dee53a7d35ba9f16e0
This change just adds the components/changes needed by the all projects
dashboard.
Issue: https://github.com/storj/storj/issues/5514
Change-Id: Ie7926f563dd3eb47a56b234cfd004f5b69be00a8
This change prevents overlapping of registration success page content
when displayed on short screens. It also prevents the content from
exceeding the page width when it shouldn't.
Change-Id: I7d23da7ade5c023cd96ee9e997196e599a1bc059
Added s3 credentials generated step for new access grant flow.
We show access key secret key and endpoint.
They can be copied or downloaded to .txt file.
Change-Id: I647fb0a86453134702812e8ea9425b8417382a65
Added rule to restrict trailing white spaces.
Added rule to always use '===' instead of '=='.
Added rule to have correct spacing around commas.
Added rule to have spaces around '=>'.
Added rule to not have spaces in parentheses.
Added rule to have space before blocks '{}'.
Change-Id: Ibdbd204d591f0356e0745d89672e0e0579b59ce1
Added CLI access created step for new access grant flow.
We show satellite address and restricted key there.
They can be copied to clipboard or downloaded.
Change-Id: Ic1942abfa575017fbb57abb9f09e8de66039bb8d
Added access created step to new access grant flow.
Also added some really tiny fixes for current project passphrase flow.
Change-Id: I94eb25b53cf7cc0c6ea7b9c13762ca76736ea7ac
Added middleware info step in case if 'S3' access type is selected.
It's possible to toggle checkbox to not show it again in current browser,
Change-Id: I78b297b373f14715dc67b247baa8e684bea3a265
This change makes sure that inactivity modal appears on top of everything else including other modals.
If it is the last element of main dashboard wrapper then it will be the last element in DOM tree which makes it appear on top of everything.
Issue:
https://github.com/storj/storj/issues/5549
Change-Id: Ibb0c6e2036c0be09aae17118f672dbed4ffc5b62
Added passphrase generated screen.
Passphrase is a 12-word mnemonic in this case and it is generated with bip39 lib.
It can be copied to clipboard or downloaded as a .txt file.
Change-Id: I031f6c0e92f4f783c07a2d8d35c0433c1d9a81ff
Added generic enter passphrase component for new access grant flow to fulfill 2 cases where user enters project level passphrase and a new passphrase.
Change-Id: I10e89d0e32690b0423462ad76c20dafdb6ff096c
Added third step of new access grant flow where user selects further passphrase option from this list:
- use existing passphrase
- set my project passphrase
- generate new passphrase
- enter new passphrase
Note: In case of 'use existing passphrase' option access grant will be generated and user will be redirected to success screen (not implemented yet).
Change-Id: Idc238bb469f3e7a87a6523783cee4963bfe0445d
Fixed unlock feature inside object browser.
Bug: Clicking unlock button doesn't do anything but it should open switch passphrase modal.
Change-Id: Ie7fa0f842a393c4d887f4dac63fb59edf16229ea
Add notifications for free account limits for segment usage
and update to follow the figma designs.
Issue: https://github.com/storj/storj/issues/5482
Change-Id: I8a2fe38d609d53e09bf5074484cedc343223bffd
Adds a feature flag for the new all projects dashboard. It defaults to false.
Issue: https://github.com/storj/storj/issues/5514
Change-Id: I160904eccae7d30e05b734e69600725702b16aca
This change refactors appstate, removing the big list of booleans
Previously used to toggle modals and dropdowns, replacing them with enums.
Issue: https://github.com/storj/storj/issues/5244
Change-Id: I4cffb7ab3ad7712f7ff79dd7486df938ca63830e
Upon opening bucket we try to decrypt objects with provided passphrase.
If overall object count is higher than decrypted objects count then we show a passphrase warning.
Also updated banner inside object browser if there are unencrypted objects.
Added 'Object locked' line item which toggles switch passphrase modal on click.
Issue:
https://github.com/storj/storj/issues/5513
Change-Id: I00fce23cee04d4e2f09cc4612f733318a9f270fc
This change adds support for project public id to the bucket-names and
usage-report endpoints.
Issue: https://github.com/storj/storj/issues/5578
Change-Id: I2429ebebe52dfc8217fc40f4691e7bc473b805fb
The banners on the web satellite previously hovered over the page
and overlapped other content as a result. This change moves them
into the page content so it overlaps nothing and is scrollable off-screen
This change also makes the upgrade banner only show on the dashboard and
only if the user joined more than seven days ago.
Issue: https://github.com/storj/storj/issues/5525
Change-Id: I7278c31201f09d3515d907b833622b04c6de8557
This updates project related graphql mutations and queries to support
project publicId while maintaining support for project ID. The frontend
is updated to use only publicId when using these mutations/queries.
Issues:
https://github.com/storj/storj/issues/5409https://github.com/storj/storj/issues/5413
Change-Id: Ib6241db157de3b37c86a4a98c9f682bf4a047b62