Added bandwidth/storage charts (with test data) to new project dashboard.
Added functional buttons to new project dashboard.
Fixed this issue https://github.com/storj/storj/issues/4262.
Change-Id: Ie87370b8f7b6015bc84022a6086ef1db40e16535
Added 2 new steps to the beginning of onb CLI flow if it is visited from new navigation side bar.
Steps are: Access grant name and Access grant permissions.
Fixed wording for success screen.
Change-Id: If1a7605e0920d1262d13142843df95b438ce7717
The package was barely used and the amount of code needed to remove it
is minor.
Also remove top-level package-lock, because it's not being used.
Change-Id: Ifb4ec4fe7f4fa36ce6e707a33d47f04c583cbe6c
Moved passphrase step to be after buckets screen.
Seems like it accidently enabled bucket force delete feature because buckets AG is being generated with empty passphrase.
Change-Id: I7ca0daf4e49045bf4d49b996eb5e2406132caeea
* create `isInitalized` property to check S3 client exists
* hide FileBrowser until `isInitialized === true`
* change broken reference from `buttonUpload` to `buttonFileUpload`
* add feature flag `new-browser` to switch between external and internal browser
* fix handling of `webkitRelativePath` for folder upload feature
* only load external styles when using external browser via contingent `file-browser` class
Change-Id: Ibdbfa45d8dbe3c6d828473c16e4cdb8694562c1a
Create first bucket ('demo-bucket') for the user if they have no buckets.
Fixed bucket name validation to include '.' and '-'.
Change-Id: I21ddad63f214b6482ebaad95474ff0b6cf16254f
Fixed caching issue by using regular Webassembly.instantiate instead of instantizteStreaming which fails to work in chrome sometimes.
Now web worker instantiation is part of initial app loading process. This fixes go-rod test flakiness.
Change-Id: I5300e70d4e0866f2321df86ce729f32b588bc5c4
There is a bug with back button of Create Bucket step of new onb CLI flow when proceeding further into flow and trying to come back.
Change-Id: I663a05021824164617ba933815973d8be856539f
Fixed inputs to have correct box-sizing and fixed stylings for it.
Removed 2 unused components.
Fixed VInfo component's small styling issue.
Change-Id: I268b4b754be477d4e0d36b3946d62d65fd7d6cc8
Refactored Generate Passphrase screen to be common for onb and object flows.
Replaced initial Generate Passphrase screen to access grants wizard.
Moved download file functionality to utils.
Implemented Onboarding Encrypt your Data logic.
Change-Id: I46e780a5997c215d53ccd0254964b1c2b39c7c02
There's no need to define RootGetter type on StoreModule,
because Context already should have it defined.
Although the invocation to get that type is rather arcane.
Change-Id: I9525c0e4853f4c5211bdaf1645f0a27c26af8f53
Fix svg.d.ts definition.
Disable no-explicit-any in src/api, because wrangling all the GraphQL
result types properly is not that nice. We can either fix this later
manually, generate GraphQL types or remove the GraphQL endpoints.
Add annotations to src/store/. Currently it still uses any in places and
also defines more types than absolutely necessary. This is an
unfortunate side-effect of the vuex api. There does seem to be an
alternative package that handles them, but to minimize the number of
changes, we'll currently use these types. Due to those decisions it's
also not easily possible to have types instead of any in multiple
places.
StripeCardInput currently uses any, however, if we find the proper
declarations, we can replace them later.
Change-Id: I2ec8bf7fdd8023129d1f8739ce2b6d97de2a58d0
This change allows users to disable multi-factor authentication
with a recovery code. Previously, users could only disable MFA
with a passcode.
Change-Id: Iec20bf7d8f6781182b81d1f17d9641491dbc8460
Adds a banner at the top of the dashboard warning the user if he
has 3 or less MFA recovery codes.
Change-Id: I3271f1fe33501eaeeeca343bf60ca899e80f0fa1
Added editable fields to the project details page for Storage Limit and Bandwidth limit. Leveraged existing types when possible.
Added fixed checking into the limits to prevent reducing limits beyond current usage, as well as limiting usage to less than the default paid tier maximum.
Change-Id: I07ce53470919a8a9d4dce56ade6904ede8daf34c
Updates the password reset page to use the new theme.
Adds new endpoint '/api/v0/auth/reset-password'
for password reset.
Additionally, updates the link-clicking mail simulator to only
click links with a specified attribute. Otherwise, the password reset
cancellation link would be clicked before the password reset link
could be accessed, rendering testing impossible.
Change-Id: I8fde74ef7ad980880a7bf6558e3b9ed31509a393
After migrating to eslint some errors were disabled to make it easier to
migrate.
This enables all the lint rules and treats all warnings as a build
failure. Similarly, CI won't automatically try to fix mistakes.
Change-Id: I80f808af026fc51bed90421b3b24737994a52094
tslint has been deprecated so it's nice to switch to eslint.
Currently this uses a minimal eslint, to get things up and running.
node-sass requires C which does not work nicely on all platforms.
Change-Id: I3ca9adf2971475c009e541652b7637c18ad960f4
Added Enter MFA passcode step to login after first attempt.
Connected client-side and server-side.
Change-Id: I4482afde50172bbf2c598aa01bbd220763b4f6d1
Full path: satellite/{payments,console},web/satellite
* Adds the ability to apply coupon codes from the billing page in the
satellite UI.
* Flag for coupon code UI is split into two flags - one for the billing
page and one for the signup page. This commit implements the first, but
not the second.
* Update the Stripe dependency to v72, which is necessary to
use Stripe's promo code functionality.
Change-Id: I19d9815c48205932bef68d87d5cb0b000498fa70
Added disable user MFA functionality to account settings.
Disable MFA popup where user will have to enter MFA passcode first.
2 buttons (enable, disable)) are visible for now until backend is ready.
Change-Id: Iff8b497a370fc1c6c08c5ccaf01ce1f2dc317126
Added feature flagged functionality for enabling user MFA.
Added new Popup where user will scan qr code and confirm enabling
by entering passcode from MFA app. Also recovery codes will be visible afterwords
Change-Id: Ie8d1bc83c941a08fd8701442601a2d20126c8892
Also, show paid tier banner if a user has not added a credit card,
rather than if they are flagged as "paid_tier" in the database. This
addresses issues where we might display the banner for users who have
already added a credit card before the paid tier commit: e36001b7cf
Change-Id: I0352d48ae9f97ceab81ae065ccb97be3e5516857
Added feature flag for MFA
Added new client-side api call to enable MFA returning secret
Updated users Vuex module to include new API call
Change-Id: Ia9e10f68c4a7da39b4f7c1073e657c2de98fb0db
Added new PaidTier-related modal where user can add CC or STORJ Tokens.
Becomes visible on CTA click on Paid Tier banner at the top.
Change-Id: I51015e95d396e21d5c1a1728b8f753798626c09e
Added new info banner to show user their used and total storage values with a button to upgrade to Paid Tier with auto limit increase
Change-Id: I827818dcb5179358df246218a47feb61bc1a1bac
Because of our free/paid tier plan, we do not need a paywall anymore. We
have not used it in a while, but still have leftover code laying around.
Change-Id: Iaea8c39faf042a2f7a6b837727bb135c8bdf2907
Added new endpoint and service method to return total usage and limits for all the projects that user owns.
It is needed for new paid tier UI
Change-Id: Ic5b67ca7b275ec4930d976a007168235c0500b70
Added warning popup for when file upload is in progress.
It says that leaving objects page will cancel upload
Change-Id: If49c1ddc898f2e6dbdc86e5a00d604a55b628720
Added loader spinners across all of the UI to be visible while data is being fetched.
Removed most of the requests from the initial load of the satellite dashboard.
Removed useless requests after creating of new projects.
This should make user's experience much more better since load time of the app is much lower than it was before.
Change-Id: Ib0941ad4eee6b3caf781d132062b55cb17703fe7
Moved creation of default project to vuex store to dispatch it in different places.
It removes duplicated code fragments
Change-Id: Ic5e52776727e681797bbd76342b78480812552d1
WHAT:
timeouts replaced with promises to make things work faster
removed cli step templates splitting
removed default date caveats for AG
fixed small back button bug
WHY:
improvement
Change-Id: Idc2608c467b7ab11ee4f0337d0b9fa3d282959a2
Allows us to remove the following files from satellite branding
repo, with an up-to-date single source of truth now in storj/storj:
* web/satellite/src/common/registrationSuccess.html
* web/satellite/src/common/registrationSuccess.scss
* web/satellite/src/views/register/registerArea.html
* web/satellite/src/views/register/registerArea.scss
The registrationSuccess files have been removed from all satellites in
the branding repository. The registerArea files have been removed only
from production satellites in the branding repository.
Importantly, this change enables the "resend email" functionality on
production satellites - previously, this functionality was available in
storj/storj, but not our branding repository.
Removes the config for VerificationPageURL, which redirected users away
from the satellite app to storj.io after creating an account. In order
for the email resend button to work, we cannot leave the app.
Adds a new config value for partner satellites, which replaces the
partner satellite names config. The new config includes name and
address. It is validated on setup/run to ensure it can be parsed.
Change-Id: I67db0702d9b9641f1a37b599f2929d56f3c33aca
- add Credit History table to billing acount page and set up ui for a user adding promo codes
- implement promo codes ui in registration form
- add feature flag to handle if coupon code ui should be rendered
Change-Id: I9fdeef7cffc7901958d3f9be335e1115b2471a2e
WHAT:
generate gateway credentials that will be used to instantiate s3 client
WHY:
for s3 client that will be used to manage buckets
Change-Id: I6d654e48c41925b72e11ec3edde3dc54f5290d42
WHAT:
setup of objects store module,
setup of initial bucket's view,
generate special API key that will be used to generate gateway credentials
WHY:
initial setup of future bucket's management view
Change-Id: I0078869b95c04c0b142b2e112e93ff2332e8e90f
WHAT:
remove all the api keys related code
WHY:
it became redundant after access grants implementation
Change-Id: I36344d478d8d7524e3994ea2076491be4add1aa3
WHAT:
right now we've got accounts with PM but without projects.
So when user tries to create AG they get uuid error which means that there is no uuid of a project provided.
So we decided to create default project for such users before actual creating of AG.
WHY:
backwards compatibility
Change-Id: Icab857e711f1020fdcf8a12279153014d9daf11c
WHAT:
config flag to indicate if satellite is in beta
WHY:
to avoid using hardcoded satellite names which may cause issues
Change-Id: If92eb7417c340bf343a9a91e2f6b11f0349020c5
WHAT:
remove upload info step from create access grant flow
close webworker on logout to always initiate new one on login
small styling fixes
WHY:
better user experience
Change-Id: I41ae0fe859b29889a9cced30f874d4a341e09ad2
web/satellite: add new projects list management page
- add manage projects link to Projects navigation dropdown
- add create project cta to page
- add pagination of projects page
- render dates, number of users and project name to list table
- update snapshots
WHAT:
when user deletes access grants, an empty list of being deleted grants appears for a second.
It is fixed now
WHY:
better user experience
Change-Id: Ibda50ad809dfc49f95c4c844487d9527c676fd76
WHAT:
web worker is initialized during onlogin loading screen now
WHY:
removed unnecessary initializations and increased UX experience
Change-Id: I734f194f862c15b3fb08e436a161da32d8d4a8ac
WHAT:
POST request to get gateway credentials using access grant.
Put request url to config and use it for request.
WHY:
to show gateway credentials on UI
Change-Id: I15ef43ecdeed69b0961d5796aacb47f36d560b1b
WHAT:
bucket names selection logic for create access grant flow
WHY:
bucket based access grant restriction
Change-Id: I922811ce43afbc0bf0c2c9bcaea755657257f26f
WHAT:
permissions step page for create access grant flow. Regular permissions and buckets dropdown
WHY:
to configure access grant permissions
Change-Id: Ia5571556a7fb83fd9a508e6aabfcdf5b57e9bc96
WHAT:
Now project amount limit is taken from users db instead of config. But if db value is 0 then default config value will be used instead.
WHY:
this will allow us to change user's project limit by changing db value.
Change-Id: I9edcd0bf9eaae5fe40e90a44cac82d9ce8519274
WHAT:
new project summary (details) section added to project dashboard page.
v1 shows team size, API keys amount, buckets amount, estimated charges for selected project for current month.
WHY:
redesign. Better user experience?
Change-Id: I31204a3e68db49486bad1e1a0eedd238eba6b84e
WHAT:
working logic of dropdowns moved to local store. Removed ability to open more than one dropdown. Dropdowns' colors changed to satisfy needed contrast ratio
WHY:
better user experience
Change-Id: Ia7a5683a3544fcb6bdd8a05d1fd6a12755b76caf
WHAT:
added functionality for user to update project name. Logic only, without actual GUI updates.
WHY:
better user experience
Change-Id: I1e38e33ba827b0bdf2c89e29de24e4e87edb474a
WHAT:
info bars for accounts with no paywall implemented, USR-976
WHY:
we should notify users with no paywall that available coupon value is running low or coupon is used
Change-Id: I1a84afce890515b3aaedf1f0b8d359499af05471
WHAT:
modal with saving API key confirmation implemented for onboarding tour
WHY:
ensure user saved API key
Change-Id: I9bc000cf5a19a9d6fc9eb3a4bfb9156d6b4bc78f
Add a config so that some percent of users require credit cards /
account balances
in order to create a project or have a promotional coupon applied
UI was updated to match needed paywall status
At this point we decided not to use a field to store if a user is in an
A/B
test, and instead just use math to see if they're in a test. We decided
to use MD5 (because its in Postgres too) and User UUID for that math.
Change-Id: I0fcd80707dc29afc668632d078e1b5a7a24f3bb3
WHAT:
completed transaction state condition depends only on stripe balance now
WHY:
avoid waiting for transaction status to update
Change-Id: I09be620f94934209b60ef692ffcc0f5097880920
WHAT:
1. Deposit & Billing history view was divided to be shown separately as Deposit History and Billing History
2. Datepicker was removed from billing page
WHY:
billing UX enhancements
Change-Id: Ie183849ef0965169997674ce37b71db38a562fc2