Refactored MFA, project members, profile and change password modals to use common VModal component.
Didn't touch access grant modals.
Change-Id: I9af5277496a99ec907fbee57a84127064ca9c02b
Added label for new project dashboard which tells user that there might be a delay before actual data is shown.
Issue: https://github.com/storj/storj/issues/5002
Change-Id: Ife317f68c4bd3c5eadc72e35ed4e77c97b1c038e
This change replaces the support email with a link in the "deposit storj token" message.
see: https://github.com/storj/storj/issues/5007
Change-Id: Icff1171e563a6b9184eb0e2828cd61e3c95b45e4
Added string length limits for registration partner and promo params.
Limitation added both on client and server sides.
Issue: https://github.com/storj/storj-private/issues/44
Change-Id: Ifae04caad1775e0a8ca72ae7f9abcf0ea5fb564b
Implemented Recaptcha and Hcaptcha for login screen.
Slightly refactored registration page implementation.
Made 2 different login/registration captcha configs on server side to easily swap between captchas independently.
Issue: https://github.com/storj/storj/issues/4982
Change-Id: I362bd5db2d59010e90a22301893bc3e1d860293a
When a someone tries to create an account with an email that is already
associated with a verified account, send them an email with options to
sign in, create an account on another satellite, or reset password.
Change-Id: I844144d88b7356bd7064c4840c9441347a5368b0
This changes the project member page's table to match the new table design,
And updates the common table component fit this page's use case.
For: https://github.com/storj/storj/issues/4993
Change-Id: Ic7e2c4ceade9bbc98793760927a9243914f454d0
Coinpayments is not working properly; This change replaces the storj deposit form
on the upgrade account modal with a message to contact support.
Related to 1bd609c00
Change-Id: I02eeb6dd721320099a3c523c538dac597c4e8914
Coinpayments is not working properly; This change replaces the storj deposit form
with a message to contact support.
see: https://github.com/storj/storj-private/issues/43
Change-Id: If3792d05282c102c1d5ca0664bd8c70ad103f61c
* tabs and routing implemented
* added new method card
* token payment card complete - need to discuss responsiveness on this
* began table implementation
* latest stripe integration changes
Co-authored-by: hovex023 <97616907+hovex023@users.noreply.github.com>
Co-authored-by: Andrew Hove <andrew.hove@concordusa.com>
Co-authored-by: Maximillian von Briesen <mobyvb@gmail.com>
When implementing the new billing screen, we mistakenly removed the
router-view component from the old billing screen. There was also an
issue where the button would add an extra /billing in the path, so this
change modifies the way the router navigates to the add-coupon route.
Change-Id: Iad3e9aea8c91dbf3bb13022e0995b24ade26af0d
On small screens the top of the registration page is cut off. This change updates the styles to fix that
Change-Id: I73420cb30c5e34acf7aa6312c054655db410f5e2
we want sign up page to be more configurable since we have to add partner branding to it.
added ability to add logo, different title and decpription and even html after common markup.
v-html rule disabled and sanitize plusin added to avoid xss injections.
tsconfig changed to be able to load modules from json files.
Change-Id: I9ff2cf6e5cf977b8c41ca48953b491bd361f26a1
If "partner" query param is set on signup screen we pass it on satellite switch.
Issue: https://github.com/storj/storj/issues/4955
Change-Id: I59039d6ae660d8790390e59650de0ce1e3bba1b4
functionality moved from reset password where no cookie and causes error to proper place
added redirect with 2 sec delay after success
Change-Id: I9cfe7e88bed7cfaf04fc7dc7fde58702b0040c5c
after I copied and checked an acknowledgment i was able to delete the passphrase and create the access grant
now if I do this "copied" and "acknowledge" statuses if passphrase is changed
Change-Id: I57199a476c802eb3c44e4dddc43ef40fcedcee2f
Added new email html template.
It is sent when user tries to reset password with unknown or unverified account.
Made a couple of minor config changes.
Issue: https://github.com/storj/storj/issues/4913
Change-Id: I730f48b3478e302d1e38e1f8a27c75f66a8ba6fd
- Created screen for billing overview tab
- Added total estimated charges and balance
- Added breakdown of individual projects
- Links to billing history and payment methods
- Mobile Responsive
* tabs and routing implemented
* added feature flag
* added billing history buildout
* Update to use real data for table population
Story: https://github.com/storj/storj/issues/4633
Co-authored-by: cl-mitch <mitch.george@compozelabs.com>
Ask for encryption passphrase when user tries to navigate inside bucket using next flow: Buckets -> BucketDetails.
We don't ask for passphrase if user uses this flow: FileBrowser -> BucketDetails.
Don't allow empty passphrase in open bucket modal.
Fetch buckets using our API after new bucket creation flow (instead of S3 fetch).
Change-Id: Ia0894d6bb4a764c4ff0974fb16ed89bb82699807
Show free/pro badge in collapsed nav side bar.
Use getter to indicate which badge to show instead of calculating once after first render.
Fix project overview label for smaller screens. The problem was with new project dashboard route name.
Change-Id: I6ec340b14fe7cf11ba96a0d4ae6771e830c2ed94
On bucket details page, make bucket name breadcrumb link back to the
page for that bucket. Additionally, add a pointer cursor to the
"buckets" breadcrumb.
Also remove settings dropdown from bucket details page as the only item
is "View Bucket Details" which is already the current page.
github issue: https://github.com/storj/storj/issues/4909
Change-Id: Ic24abba7fb447ca5a8ac1e8ba244ba98dec2fc92
tabs and routing implemented for new billing flow
Co-authored-by: hovex023 <97616907+hovex023@users.noreply.github.com>
Co-authored-by: Maximillian von Briesen <mobyvb@gmail.com>
Add a badge to the account area indicating whether the user is paid tier
or free tier.
github issue: https://github.com/storj/storj/issues/4747
Change-Id: I3d435113fada48d4bda6faeef27680eb2850427b
Merged two components into single one to have single source of truth.
Also this may fix some go-rod test problems.
Change-Id: Iffa86d1b3c24a0e2a551335ecda721a93ff616e3
Our SVG loader was recently reworked so that snapshots of UI tests
are smaller, but this broke some SVG styles because SVG paths no longer
contain a scoped CSS attribute. This change adds deep selectors where
appropriate to repair the broken styles.
A scoped CSS attribute is added by Vue Loader to elements of components
with scoped styles to identify which component the element belongs to
and restrict CSS rules accordingly. Paths within imported SVGs no longer
contain this type of attribute, so the deep selector must be used to
style the SVG as if it were a child component.
Change-Id: If4beb903fa3b40aa208efa549b8fe23ccf2a547b
This change resolves an issue where clicking outside an access
grant deletion dropdown would produce errors instead of closing it.
Change-Id: I2e0d5bfc50e2abeffe2d181aa3319b3476138d07
Implemented new modal to open bucket.
This is a part of new objects flow.
It is hidden by feature flag.
Change-Id: I3839126933b8804c8adbd8949a29ac75771fab4a
Created and style modal-added open and close functionality
Added logic to access grants selection type
Changed CLI to API-Changed Types to radio buttons-Added date picker-Added buckets list(not yet populating with buckets)
Added permissions check box logic and new input field for buckets.
Added tooltips and hover logic for the tooltips
Added acknoledgement functionality to encrypt step
Added conditional logic to encrypt access button and the ascknoledgement box - removed blank comments from paymentMethods snapshot
Added logic to retrieve restricted api key, access credentials, and satellite address
Added copy functionality and download functionality for the credentials step
Change-Id: I8c8f02bc1ee38c3df42396cbd9bb3db2e7ff9cc4
Co-authored-by: cl-mitch <mitch.george@compozelabs.com>
In the name step of the create bucket view for the new objects flow, fix
the placeholder for the input to mention "name" rather than "passphrase"
Change-Id: Ia7a64383b58d36f6aee1df952ed7cb300734e09d
Fixed main content width to be appropriate.
In case of very long access grant name (100+ symbols) main content gets overlapped with window border. That's an unhandled edge case.
Change-Id: I42ef709edc8454f054baa52231c605afadc471e2
Reworked "add payment method" and "create project prompt" modals to use new common VModal component.
Change-Id: I73039e5d30077e35f05501a48f39142b799da875
logo redirects to homepage on login, signup, forgot password, reset
password, and activate account pages
Change-Id: I992aeae197004d620addd8d515cae1c1ca80a778
github issue: https://github.com/storj/storj/issues/4289
also change other notifications in CardDialog.vue to use $notify plugin
Change-Id: Ic38c39cce8ade720a8fcd9061e916978168575b8
Created and styled Access Grant Flow modal. Added open and close functionality
Added proper text for access grant create buttons
Added logic to access grants selection type
Added permissions check box logic and new input field for buckets.
Added tooltips and hover logic for the tooltips
Added acknowledgement functionality to encrypt step
Added conditional logic to encrypt access button and the acknowledgement box
Added a prop that shows the scrollbar for the bucket selector
Added name validation - needs proper error message
Implemented download utility and simplified true/false method
Co-authored-by: cl-mitch <mitch.george@compozelabs.com>
old bucket creation flow removed
new flow added
name and passphrase splitted into separate views
demo bucket will not be created automatically
bucket creation progress bar added
Change-Id: I2a1d7d77c3038caaafb3c06bdb0ac5dd1ad17599
Styled Access Grant Table according to new flow UX
Added search functionality to My Access Table.
Separated search styles into 2 components
Co-authored-by: Moby von Briesen <mobyvb@gmail.com>
Co-authored-by: hovex023 <97616907+hovex023@users.noreply.github.com>
Edit svg in payment-methods-container__card-container__dots-container to draw 3 dots instead of two.
Change-Id: Ie447abf9a2e15b619cf937fe1b1c263e2eeca3e8
Made some small styling changes to access grants and common components
Added svg and png files to be used in the new access grant modal
Co-authored-by: Maximillian von Briesen <mobyvb@gmail.com>
Co-authored-by: hovex023 <97616907+hovex023@users.noreply.github.com>
Adds a new configuration for hcaptcha enabled, secretkey, and sitekey.
If both reCAPTCHA and hCaptcha are configured as "enabled", reCAPTCHA
will be used.
Change-Id: I73cc6e133d8da3555e0ed8b2b377cf9eb263e6dc
Added new modal when free tier user tries to create new project.
This modal prompts to upgrade account.
Change-Id: I0e787e35b099387a08186c7df7fc080092d2366c
This reverts commit 2e3e5547e2.
The S3 client is returning an error related to region with the new
changes.
Change-Id: I989b8a46c0e97c1278517e1de07fe42d5950cf54
While there isn't a significant win neither the prod javascript size nor
the number of dependencies, it does reduce the number of deprecated
packages.
Change-Id: Ib8edeb6916844500d74ae067464be9f28f542605
Added account locking on 3 or more login attempts.
Includes both password and MFA failed attempts on login.
Unlock account on successful password reset.
Change-Id: If4899b40ab4a77d531c1f18bfe22cee2cffa72e0
Also reset package-lock.json files to workaround issue
of npm auto-updating storj eslint plugin dependency to ssh.
Change-Id: Iaba102d713dc596d5814bdc4cc54c9b911398d64
This contains also multiple fixes to make it work.
The following is a non-exhaustive list.
When @Prop default value is a callback, then it is called
instead of set verbatim. This means, when you want a default
value to be a callback, then it needs to be `default: () => () => X`.
jest does not yet properly support WebWorkers, hence the code introduces
an indirection to provide the worker URL.
This in turn required removing the global "store" dependency from
the tests. As a consequence the new NotificatorPlugin takes store
as a dependency. And many of the tests are adjusted to not import
store directly.
Moved StoreModule definition to avoid initializing the global store.
Some of the router code was moved into store. We can later figure out
how to structure it better and move it back.
bip39 needs explicit fallbacks for some of the dependencies.
Fixes to timer mocking. jest supports it natively.
Remove sinon dependency. jest provides all the functionality we need.
Change-Id: I7af3599390c63ce9f99dbd0b1e0870e9f8ca994d
In case user requests account deletion access grant is being created when user visits buckets screen.
With this fix access grant won't be created if user deletes all the buckets first and then deletes all the access grants.
Change-Id: I9a348bcf35a050838dbf6e1e7c682499d2f0a278
* Added new feature Flag for new Access Grant Flow.
* Added 3 cards to access grant view for S3, CLI and Access grant to replace old header
* Added new formatting, text and Icon for Access Grant Delete Popup modal
When an application wants to interact with resources on behalf of
an end-user, it needs to be granted access. In OAuth, this is done
when a user submits the consent screen.
Change-Id: Id838772f76999f63f5c9dbdda0995697b41c123a
Store selected os tab during onboarding flow.
Use stored value to show correct tab during all the CLI steps.
Change-Id: I82e9af7e5dd3a7eaf503ed4f38789b7b0fb4aa84
Store demo-bucket creation status in browser local store so that it's not created every time when user enters buckets screen.
It will start working after first usage in new browser.
So if user removes bucket in Chrome and opens Buckets screen in Firefox demo-bucket will be created but only once.
Change-Id: I9f5811d97ab6208c5f757ededcd7c36cd864795c
Moved invalid email testing to separate test.
Made all the emails used to have .test domain.
Added links to regex resources.
Change-Id: I26920ba7360064528256a6aeaea947bbe56ef618
This change makes the files store fully type-safe. It builds with `npm run build` and lints with `npm run lint`, displaying no errors or warnings.
There was an issue where I was unable to use the newer web APIs for filesystem operations, I think TypesScript (and Vue?) may need to be updated - I already tried updating `@types/web`. To mitigate this, I added slim type definitions for only the parts we use. The definitions are exactly as they appear on MDN and even include links to the relevant documentation. In future they can be removed with no compatibility issues.
Change-Id: I7b8b4a5f95caabdb546157c65e9f2f42c5132a6f
Properly encode email sent to the signup success URL so that emails with
symbols like `+` are processed and displayed properly.
Change-Id: I2d24ae08dc6a540e1e24d6c7baf62d83a856cd68
Reworked email validation for new users (for old users trying to login or reset password validation remains the same).
Regular expression was built according to RFC 5322 and then extended to include international characters.
Change-Id: Id0224fee21a1ec0f8a2dcca5b8431197dee6b9d3
Users will be required to enter a MFA passcode or recovery code
upon attempting a password reset for an account with MFA enabled.
Change-Id: I08d07597035d5a25849dbc70f7fd686753530610
This change allows us to send newly registered users to a configured URL
to help us track user conversions for marketing campaigns.
Brave conversions continue to be tracked using the /signup-success page
within the satellite app.
Change-Id: I9b451947ce0f39d3c99b233cb4b806d361151823
added InactivityTimerEnabled flag to enable/disable feature
added InactivityTimerDelay to configure delay time in seconds
default timer set up to 10 minutes
reset dom events: keypress, mouseover, mousedown, touchmove
Change-Id: Idb66067c2902b2cdbe1a972225319c8abff97927
download performed without adding link to address bar
added warning to not share link with external people
Change-Id: Ifa79582c51c77c000342c1e03e752dd157912975