Commit Graph

824 Commits

Author SHA1 Message Date
Monty Anderson
804304a75d web/satellite: integrate browser
* 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
2021-11-05 16:30:07 +02:00
Egon Elbre
6b7473e8b9 web/satellite/images: reduce svg size
Currently uploadObjectStep.svg was a large file that was embedded into
the js bundle. This reduces the gzipped bundle size by 80KB.

Change-Id: Iff673ca44330b345eb6b317175cd8bf4e1efd29b
2021-11-03 18:21:27 +00:00
Yingrong Zhao
774ae017e3 satellite/{satellitedb, web}: display object count in satellite UI
Even though we want to start charging segment fee instead of object fee,
it's hard for users to understand what a segment is. This PR adds the
object count back in the UI alongside with segment count to help address
the issue.

Change-Id: I92eb42c769d350eba68a72443deffec5c278359c
2021-11-01 18:26:13 +00:00
Egon Elbre
187e508364 web/satellite/browser: auto-format code
Change-Id: I74504758be935ec5580713bcf8d566c444cfd51e
2021-11-01 17:07:09 +02:00
Monty Anderson
ea8782fcfa web/satellite: move browser from storj/browser
Change-Id: I1ee976ca117307dd1464dd78295b17c790fe8483
2021-11-01 16:48:06 +02:00
Vitalii Shpital
460f8fcdd4 web/satellite: added satellite name to MFA label
Changed MFA label from "STORJ DCS" to "STORJ <sat_name>" for the users who use the same email for different satellites.

Change-Id: I1ff68a08fee1da57ab3c32173ce8d3b52cac39d9
2021-11-01 13:55:47 +00:00
Vitalii Shpital
4a955b8a76 web/satellite: account area stylings and status fixes
Fixed user's paid tier status to be set by amount of CCs instead of db field.
Fixed some minor styling issues.

Change-Id: Ie1989289a1bf3ce964de7fe19ca8dd3e11dffc38
2021-11-01 13:22:10 +00:00
Jeremy Wharton
136899eeea web/satellite: Trim whitespace around login credentials
Trims whitespace around the email address, MFA passcode,
and MFA recovery code before sending a login request to the satellite.

Change-Id: I145e6a5991270b0e49ac3f09ab3c9d1c9f970699
2021-10-30 19:39:13 +00:00
Yingrong Zhao
fcde92d38d web/satellite: display segment count in billing
Change-Id: I472d65967c656889b8ffeb799cb46bc18b2a9b15
2021-10-27 19:51:45 +00:00
Vitalii Shpital
5bbb69886a web/satellite: improved responsiveness of new nav sidebar
Since we don't have main content responsiveness I decided to make sidebar shrink earlier (1280px).
Added event listener for dropdowns to close if navigation sidebar is being scrolled vertically.

Change-Id: I15ac2ae652aedfc06fd331585bb64b69076c0eed
2021-10-26 13:37:05 +00:00
Vitalii Shpital
c7e2570123 web/satellite: tab adaptation for new navigation sidebar
Tab (768px) adaptation for new navigation sidebar.

Change-Id: I53b6b7b8bb25df8975d7ab4b5145c72170bb2e1f
2021-10-26 08:04:41 +00:00
Vitalii Shpital
6c2cb98d2f web/satellite: fix onb CLI setup uplink download link
Fixed a download link for CLI setup screen of onboarding flow.

This is a fix for this github issue
https://github.com/storj/storj/issues/4220

Change-Id: I5ab8f69f30c7c83098004556aebb5318916cd9e6
2021-10-25 14:16:08 +00:00
Vitalii Shpital
a281adddd5 web/satellite: auto-create first demo bucket for the user
Create first bucket ('demo-bucket') for the user if they have no buckets.
Fixed bucket name validation to include '.' and '-'.

Change-Id: I21ddad63f214b6482ebaad95474ff0b6cf16254f
2021-10-25 15:31:54 +03:00
NickolaiYurchenko
0ed3ef0fe4 web/satellite: registation success page moved
page moved to separate route to be able to track conversion metrics

Change-Id: I1506ac416056d652b9292d62c29f79bd75567c6a
2021-10-25 08:51:41 +00:00
Vitalii Shpital
3e040767b4 testsuite/ui/satellite: fix tests to pass with new navigation
Fixed tests that were failing due to new navigation structure.

Change-Id: Ia48458bf98d464e366d2468897d4012d8e0890fc
2021-10-22 22:26:26 +00:00
Vitalii Shpital
49492d28fc testsuite/ui/satellite: test for new navigation sidebar
Added tests for new navigation sidebar.

Change-Id: If07615625ecb21de060e7c3853e6d1d675edb8e8
2021-10-22 08:35:57 +00:00
Monty Anderson
3989107031 web/satellite: add feature flag for new browser
Change-Id: If3773b9df7f79d4c5e094140448d60ec060cdaeb
2021-10-22 03:49:08 +00:00
Vitalii Shpital
9773197c61 web/satellite: new nav account area and vertical layout fixes
Added account area and dropdown for new navigation sidebar.
Fixed vertical layout for new and old nav structures depending on top info bars amount.

Change-Id: I238ba1f899d27d7fd9b865b0c17b0bfd7cff47ad
2021-10-20 13:57:14 +00:00
Vitalii Shpital
0aab339d0d web/satellite: links and dropdowns for new navigation sidebar
Added nav links, resources and quick start dropdowns.

Change-Id: I12f2afddd899621749bb00d0fed58f84a45701a3
2021-10-20 13:56:27 +00:00
Vitalii Shpital
b619ce6913 web/satellite: new nav project dropdown
Added new project dropdown for new navigation sidebar.

Change-Id: Idbfd37cfff2218b8bfda803bdf143b8eab691200
2021-10-20 13:56:19 +00:00
Vitalii Shpital
0009447773 satellite/console, web/satellite: feature flag for new navigation structure
Change-Id: I6f1fd43ea8154714187c7547ae93de0efe3482e6
2021-10-20 13:51:25 +00:00
nerdatwork
8a0a233537
web/satellite: Fix typo in 2FA popup (#4221) 2021-10-18 15:16:55 +02:00
Malcolm Bouzi
d7812a3b17 satellite/console,web/satellite: add slider and unit toggling to project limit updating
Change-Id: Iab7c08baa09d598ff53ddf09ef09dcd2a997a81b
2021-10-15 14:11:50 +00:00
Egon Elbre
52c950e429 testsuite/ui/uitest: add Edge testing
Change-Id: I1e592ac755b582d4fa73e95fd999a35a27f8a116
2021-10-15 13:27:13 +00:00
Moby von Briesen
331132be95 web/satellite: Fix support link on registration page
The old one was pointing to storagenode support.

Change-Id: I0d16f0a8a21f70d3b5a49b514fb12e1836d3834a
2021-10-14 17:21:26 +00:00
Egon Elbre
8f4550d621 ci: fix using npm run build-wasm
Newer npm seems to invoke the command without the current user
privileges. However, Go already initializes its cache using root.

Change-Id: I23b32ca3bbd7db06515c2af86b1bb5adc8e38a8f
2021-10-14 15:10:40 +00:00
Egon Elbre
bc6d8c06e3 web: optimize builds
Stylelint and eslint should be run separately and not part of the build
process.

Add a flag STORJ_DEBUG_BUNDLE_SIZE to debug compiled bundle size.

Reduce the number of chunks, it's far from ideal. Once we reduce the
images and browser size, we probably can drop chunking altogether.

Change-Id: I5bdf35ceb140e2c47a30df8d319606d05bfb30dd
2021-10-12 11:29:37 +00:00
Egon Elbre
9fd091831d ci: optimize benchmarks
We are not using the benchmark results for anything, they are mostly
there to ensure that we don't break the benchmarks. So we can disable
CockroachDB for them.

Similarly add short versions of other tests.

Also try to precompile test/benchmark code.

Change-Id: I60b501789f70c289af68c37a052778dc75ae2b69
2021-10-08 19:42:40 +03:00
Vitalii Shpital
1d8342ab17 web/satellite: fixed access grant web worker caching issue
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
2021-10-07 14:31:04 +00:00
Egon Elbre
6ab2647adb ci: run UI tests
We have implemented few UI tests using go-rod, but haven't been running
them regularly.

Change-Id: I6c89365f719882431842a2026b426860f1293b8b
2021-10-06 15:54:06 +00:00
Egon Elbre
bb55c30594 web: move eslint-storj to separate repo
For some reason our build process cannot handle relative path packages,
it's easier to create a new repository than to figure out,
why npm/docker etc. don't like it.

Change-Id: I94b7cb9611f453246b596f97114fe5c54d9a4008
2021-10-05 12:08:44 +00:00
Malcolm Bouzi
10a468fb50 web/satellite: make all header components visible on smaller screen sizes
Change-Id: If84ad344a40bb666250106d2f2b9ffaa01413296
2021-10-04 13:55:31 +00:00
Vitalii Shpital
854b66f1b9 testsuite/ui/satellite: refactored go-rod tests selectors a little bit
Reduced amount of uniq selectors. Replaced them with link/href selectors.

Change-Id: Iac685cc4c79387cb10b96241741316de216f11a4
2021-10-04 12:52:40 +00:00
Egon Elbre
3dbd44347e web/satellite: don't ignore Vue errors and warnings
Change-Id: If64f362d5634b88c1f564e017ff7af591df9be3c
2021-09-29 16:26:54 +00:00
NickolaiYurchenko
d5043a0f86 web/storagenode: dcs word removed from gui
Change-Id: Ia19f050107d18120bab989bed1bcd6df8b2105af
2021-09-29 14:17:28 +00:00
Vitalii Shpital
f829d64a3a web/satellite, testsuite/ui/satellite: updated onb Welcome screen's encryption info and added tests
Updated encryption info for onb Welcome screen.
Added test for encryption wording and links.

Change-Id: I6b8dffa8edfc0a3c1ed40a5b5ddd6e5a796e499d
2021-09-29 13:39:47 +00:00
Vitalii Shpital
46d1b4dfaa testsuite/ui/satellite: added test for restart onb tour functionality
Updated old test to include 'restart tour functionality'.

Change-Id: Id5d1e375f5b455fb2494d21ae2b66cc6d20d3a18
2021-09-29 13:12:36 +00:00
Vitalii Shpital
8e3d7d30e8 web/satellite, testsuite/ui/satellite: added tests for onb CLI os tabs switching
Added tests to check if os tabs switching works during new onb CLI flow.

Change-Id: I614cfdc5c18a48e69e40f6a7613b352d4367c3a6
2021-09-29 13:11:33 +00:00
Vitalii Shpital
1def7b0ec3 web/satellite, testsuite/ui/satellite: added tests for invalid sign up credentials and satellites dropdown
Added tests for signup with invalid email or password.
Added test for signup screen's satellites dropdown.

Change-Id: I76d975039543e315b3e9c9416e3ec1f2a3331a6a
2021-09-29 15:20:24 +03:00
Vitalii Shpital
9da3de1a89 web/satellite, testsuite/satellite/ui: removed onb CLI flow's Generate AG step and updated tests
Removed Generate access grant step.
Updated according test and added Back button click test logic.

Change-Id: I736eb4ecb4c3a2437c78af3f42da160b0f147d26
2021-09-24 13:21:40 +00:00
Moby von Briesen
030ab669fa web/satellite: Route all child routes to object browser
Also disable some warning/error checks in jestSetup.ts that are causing
build to fail.

Change-Id: Iafaa05af4058bd0f6cc1ec94f6d85b11672612f3
2021-09-23 18:22:27 -04:00
Jeremy Wharton
b97479e36b web/satellite: Reset reCAPTCHA response token on error
Resets the reCAPTCHA response token when an error is returned from
the satellite. This prevents old response tokens from being used
in later requests.

Change-Id: Icabb53bb6b307d22c21ae960075d552ba739aa86
2021-09-23 14:35:34 +00:00
Vitalii Shpital
99914dfc02 web/satellite: fix for button label uppercase issue
Added prop for VButton component to make button labels uppercase.
It uses text-transform css property which is better for screen readers.

Change-Id: I2a771af954a3bb9846a58dac9c2a1769e13f6e5c
2021-09-22 18:51:05 +00:00
Vitalii Shpital
8b91c55ec4 web/satellite, satellite/console: return old onboarding flow with feature flag
Added new feature flag for switching between different flows.
Got back old onboarding flow.

Change-Id: Idbf23ba8ff36900a47e3b4ebeb34b78351202e29
2021-09-21 11:37:30 +00:00
Vitalii Shpital
69d3a839fc web/satellite: fix for onb CLI upload step image
Fixed SVG image usage ID for onb CLI upload step

Change-Id: Ieb94902de5702594edb20817541a8d968c0ad4f1
2021-09-20 20:07:48 +03:00
Vitalii Shpital
91c69a8afc web/satellite: fix for encrypt your data screen
Fixed issue for Encrypt your data screen. It was impossible to proceed further into object browser after selecting Generate passphrase option

Change-Id: Ibddda3c6bd7fce34bd1c629bbbb2d87529964b8a
2021-09-20 19:34:34 +03:00
Vitalii Shpital
9153b221fd testsuite/ui/satellite: updated pnboarding CLI tests and improved selectors
Updated onb CLI flow test.
Updated tests to use aria-roledescription as selector.

Change-Id: I1442592e1938fbe730064977dc9b78266e403706
2021-09-17 15:11:47 +00:00
Vitalii Shpital
853a7536f6 web/satellite: reworked onb CLI flow to correspond v1.1
Removed useless screens and fixed routing.
Removed useless logic from common component.

Change-Id: I73a1af5803f866526d3ae327e832654501e4f8bd
2021-09-17 15:11:41 +00:00
Egon Elbre
09e1ff7fc4 web/satellite: fix promise usages
Change-Id: I6496ebdd57667e8222b2bfbe6174860997b6bb3f
2021-09-16 16:32:21 +00:00
Vitalii Shpital
86845351c3 web/satellite: reworked upgrade to Pro account modal
Reworked the modal to correspond to latest designs.
Added prices and updated copies.

Change-Id: I6e59fdfe4222e02fcc35ac5d594bdc0bdf52a63c
2021-09-15 19:47:56 +03:00
Jeremy Wharton
9dab10e1d9 web/satellite: Remove Advanced Report from GUI
Advanced Report is broken and it's causing support tickets.
The Advanced Report page must not be linked to until it is fixed.

Change-Id: I51d6afeee7584022ec920f311bb4c0d31174fd2c
2021-09-15 14:33:02 +00:00
Vitalii Shpital
2e6b4e90f8 web/satellite: add warning message to EncryptYourData component
Added warning copy to EncryptYourData component to let user know that this approach uses server-side encryption.

Change-Id: I864b8d5272e3d54a5ef0fafe464cd0e1ccaa9e83
2021-09-15 09:11:46 +00:00
Vitalii Shpital
b472925c1e web/satellite: hot fix for Onb CLI flow's Create Bucket component's back button
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
2021-09-10 12:36:40 +00:00
Vitalii Shpital
c06424cbf3 web/satellite: fixed inputs to have correct box-sizing
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
2021-09-10 11:40:09 +00:00
Vitalii Shpital
b86295c500 web/satellite: Final steps of onb CLI flow
Change-Id: I2c0a48b54347b81655b38f2cd2abd90cb8a84699
2021-09-08 20:09:23 +03:00
Vitalii Shpital
54c60fab47 web/satellite: onb cli flow's access grant flow
Added Generated AG, Install CLI and Import AG components

Change-Id: I5757ce4b82a17fdf807c346059ee26ff42be11ef
2021-09-08 20:09:23 +03:00
Vitalii Shpital
97a5c58ce4 web/satellite: cli flow's Skip Flow
Added API key, CLI setup and Generate AG components.
Also some common components were added to reuse in this flow.

Change-Id: Ic7b2e33b02b8d2c0e8f989a1ac59c8ebf05830d4
2021-09-08 20:09:23 +03:00
Vitalii Shpital
390c6b6fc6 web/satellite: cli flow's Encrypt Your Data component
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
2021-09-08 20:09:23 +03:00
Vitalii Shpital
7a08c19c53 web/satellite: initial setup for onboarding CLI flow
Added components for the new flow.
Removed onboarding logic from regular access grant wizard.
Updated routes to include new flow.

Change-Id: I52ca6eb3da1e4e3a4b465ed58cd45398d10fd268
2021-09-08 20:09:23 +03:00
Jeremy Wharton
f55af3125c web/satellite: Replace checkbox reCAPTCHA with invisible reCAPTCHA
This change replaces the checkbox reCAPTCHA in the registration page
with an invisible reCAPTCHA.

Change-Id: I5b52e5fe35b551ba88af2404429b23bf38d4f9c1
2021-09-07 19:04:17 +00:00
Egon Elbre
84539f5798 web/: disallow warnings and errors in tests
* all: fix missing Vue.use(Router)
* multinode: having same state and module names is not allowed
* multinode: simplify store definition
* storagenode: add or fix any annotations

Change-Id: If8a63ae46049fc77fc6cd7a7ad912d4ad74d23ac
2021-09-07 13:43:26 +00:00
Egon Elbre
e5977ec849 web/: add custom linter for requiring @vue/component
Also ignore coverage folder for linting. I had to add a new
.stylelintignore file, because ignoreFiles property was not properly
working.

Change-Id: Iadd99b64eadd9c4103f750519263113ae8780ce1
2021-09-01 13:56:37 +00:00
Egon Elbre
7d5d555264 web/: disallow unregistered and unused components
The components used in templates should always be included in the
component declaration. Similarly, it shouldn't contain extra components
to avoid compiling in components that aren't needed.

Change-Id: I8c47ceffa8bcbcca223ac0f538f9e30d1e849829
2021-08-31 21:25:49 +03:00
Egon Elbre
0889866b17 web/: add @vue/component annotations
Some linters do not work properly without those annotations.
This was done with a batch replace.

Also needed to turn off two lint rules, they will be re-enabled in the
followup change. This way the batch change can be clearly separated from
manual modifications.

Change-Id: I891ae09689520edaba5588c1f2206766db2d2b90
2021-08-31 21:25:49 +03:00
nerdatwork
238282b7f6
web/satellite: fix typo in Add a Payment method popup 2021-08-31 10:44:43 +00:00
Vitalii Shpital
a7e151e970 web/satellite: added ability to restart onboarding tour
Added an info icon which toggles a bubble where user can click a button to restrat onboarding tour

Change-Id: I8b02a1506684377c2887cc9d9c93b5450f1bfd4d
2021-08-30 08:14:38 +00:00
Moby von Briesen
1549a6a68a web/satellite: Use OSP logo
Remove Storj DCS logo and replace it with the Storj OCS logo - the dcs
logo will replace this from our branding repo.

Change-Id: I01daa67380f04bf62df980a2c84b3e48bccd63f1
2021-08-26 16:52:15 +00:00
Vitalii Shpital
0376fcdaef integration/ui/satellite: fixed tests for onboarding flow
Fixed tests to pass

Change-Id: I90c61168a3a67188e586564a5df381f2f41e2834
2021-08-26 19:07:52 +03:00
Egon Elbre
6daad68735 web/satellite: don't require explicit RootGetter type
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
2021-08-25 13:16:24 +03:00
Egon Elbre
ad0b19fb02 web/satellite: fix lint issues
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
2021-08-25 06:01:19 +00:00
Egon Elbre
f0c3514b24 web/satellite: remove uses of v-html
Change-Id: Ief9d8af327c02212a6c138773af9f1dc8028a5b6
2021-08-24 13:29:35 +03:00
Jeremy Wharton
6a6cc28fc1 satellite/console,private/web: Rate limit coupon code application
Rate limits application of coupon codes by user ID to prevent
brute forcing. Refactors the rate limiter to allow limiting based
on arbitrary criteria and not just by IP.

Change-Id: I99d6749bd5b5e47d7e1aeb0314e363a8e7259dba
2021-08-23 17:00:31 +00:00
Vitalii Shpital
ca5215c481 web/satellite: rework passphrase step of objects flow
Combined generate/enter passphrase into 1 component.
Designs were significantly chenged.

Change-Id: I53a533af1b1aad1a270f16c432c6d28101dde966
2021-08-20 10:26:59 +00:00
NickolaiYurchenko
fafabaa501 web/satellite: redundant images deletion
Change-Id: I831804877d3b257f16a489e0d8b4226ac3cd1191
2021-08-20 08:51:58 +00:00
Jeremy Wharton
96e39018c7 satellite/console,web/satellite: Allow disabling MFA with recovery code
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
2021-08-18 14:34:17 +00:00
Jeremy Wharton
24b39b7559 web/satellite: Warn user if number of MFA recovery codes is low
Adds a banner at the top of the dashboard warning the user if he
has 3 or less MFA recovery codes.

Change-Id: I3271f1fe33501eaeeeca343bf60ca899e80f0fa1
2021-08-18 13:18:34 +00:00
dlamarmorgan
cc083dbdc9 web/satellite,satellite/console: Allow paid tier users to edit limits
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
2021-08-18 00:07:10 +00:00
Jeremy Wharton
ea772a8480 web/satellite: Allow users to see coupon in billing area
This change allows users to see the Stripe coupon applied to their
account in the billing area.

Change-Id: Ie1e810bfb2847f9b0c0bb827d5ca03c16cf5e818
2021-08-14 16:09:54 -05:00
Jeremy Wharton
51ebc564d9 web/satellite,satellite/console: Overhaul password reset
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
2021-08-12 17:40:53 +00:00
Egon Elbre
e43af5eb3d web/: enable more vue eslint rules
Fixes two things:

All button tags must have type field specified, otherwise it defaults to
submit, which is mostly not correct for our site.

Disallows unused refs.

Change-Id: I28bb44aab9c153f83fec16fc4023a453444c3926
2021-08-12 16:56:37 +03:00
Malcolm Bouzi
92c53afb84 satellite/{payments,console},web/satellite: Adds confirmation step if user already has coupon code applied and wants to replace it
Change-Id: I04d40d3b25bd67e29c043d651541ff300b5379ac
2021-08-11 20:04:23 +00:00
Vitalii Shpital
c5d5229716 web/satellite: update Overview step of onboarding flow
Updated the very first screen after sign up according to new designs

Change-Id: I03521e77ca2331e8ec4d9bf7094eccff7178bc58
2021-08-11 19:36:52 +03:00
Jeremy Wharton
9eb8dc0c79 web/satellite: Fix invalid font reference
Replaces all occurrences of the non-existent 'font_normal'
with 'font_regular'. References to 'font_normal' would always
fallback and never display the proper font.

Change-Id: I2cb98a5bbec33b45f7e4ec6ba67bc5be63b5b523
2021-08-11 15:48:59 +00:00
Egon Elbre
b8280bd057 web/satellite: enable vue/recommended linting
Change-Id: I73cd1e72f369a172f9416be9b1220cbbd6c77637
2021-08-11 11:10:51 +03:00
Egon Elbre
6b153192a3 web/satellite: fix lint issues
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
2021-08-10 09:22:19 +00:00
Jeremy Wharton
7b152cddec web/satellite: Fix Usage Report style
The Usage Report page referenced a nonexistent stylesheet and improperly
imported a font that does not exist in this repository. This change
resolves those issues.

Change-Id: I78006d4a652fd1e32dd4dd146b2287f58a7659d6
2021-08-09 20:56:55 +00:00
Moby von Briesen
7f02e1f469 satellite/console: Remove config flag for MFA
MFA is complete and we are good to enable it in production. This change
removes the flag that disables MFA by default.

Change-Id: I2f985ae501171bdab505d664b43c8cfc248bad8d
2021-08-05 18:04:36 +00:00
NickolaiYurchenko
cc590343c2 web/satellite: server side encryption acknowledge checkbox added
Change-Id: If57ab6e8fddc34c142d19f754caf1338dfdb0bf6
2021-08-04 16:16:26 +00:00
Egon Elbre
f5ac00f909 web/satellite: switch to eslint, sass, bump deps
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
2021-08-03 15:56:33 +00:00
Vitalii Shpital
42a0b92404 web/satellite: set default NotAfter caveat for object browser access grant
According to FIRE-53 ticket we set default NotAfter caveat for object browser access grant

Change-Id: Ib421605f524cc176d9ffbf94fc95c09bd06fd477
2021-08-02 09:45:50 +00:00
Vitalii Shpital
cc277806d0 web/satellite: regenerate recovery codes popup
Added ability to regenerate MFA recovery codes to account settings.
Appropriate button and popup were added.

Change-Id: Ie7d42e7e13e868f3b0b8b7d5db7eacc9e8206aaf
2021-08-02 09:25:00 +00:00
Vitalii Shpital
c6c2a1daf9 web/satellite: added MFA login step
Added Enter MFA passcode step to login after first attempt.
Connected client-side and server-side.

Change-Id: I4482afde50172bbf2c598aa01bbd220763b4f6d1
2021-07-30 08:50:19 +00:00
Egon Elbre
96291a3999 web/{satellite,storagenode}: bump lockfile version
Change-Id: Idc842efb3e49b633e317a0cfe3540f5a05cd81da
2021-07-30 07:47:19 +00:00
Jeremy Wharton
615aae6bdd web/satellite: Remove activated account page
Error message for attempting to activate an already-activated
account is removed from its own page and incorporated into the
login page in an identical manner to the message that appears
upon successful activation.

Change-Id: I29cd2685a7808fa71d34a439c86a38eb5fc3e199
2021-07-29 14:47:57 +00:00
Jeremy Wharton
6bbb5b5cc2 web/satellite: Static error page maintenance fixes
Unifies the stylesheet for 404 and 500 errors. References the
Storj logo rather than embedding it in the HTML. Replaces references
to Storj with Storj DCS. Removes reference to nonexistent font.

Change-Id: If224f30eb0b21171fc8f575de6c4cef98a48c6f5
2021-07-28 16:18:27 +00:00
Jeremy Wharton
49fbb5010f web/satellite: Merge and update 'Forgot Password' page files
Merges the 'Forgot Password' page files into one Vue file and updates
it to be consistent with deployed code. This change is part of an
ongoing effort to remove code from the branding repo.

Change-Id: Ib18b95dd5a3269f26f4f547fc46ac6278c468a54
2021-07-28 14:40:59 +00:00
Jeremy Wharton
3720afb81b web/satellite: Update emails to be consistent with deployed code
Update the forgot password, invite, and welcome emails to be
cosistent with deployed code. This change is part of an ongoing
effort to remove code from the branding repo.

Change-Id: I6edb6811904552c1cf7761b96bc9aa879c2eb154
2021-07-26 22:49:28 +00:00
Jeremy Wharton
276ebcd4b6 satellite: Remove duplicate logo in error pages
Remove duplicate instance of the Storj logo in the
40X and 50X error pages.

Change-Id: I74152560d39f34fb93f5d559b9b390c3e83a61ec
2021-07-26 20:30:16 +00:00
Moby von Briesen
149f6f2626 satellite/payments: Implement coupon codes
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
2021-07-26 17:15:55 +00:00
Jeremy Wharton
1535bbe673 satellite/console: Forward friendly registration errors to client
Provides the means to serve an error to the user with a user-friendly
error message (serveCustomJSONError). Auth API uses this when
processing registration attempts.

Previously, the error message was inferred by the client based on
the status code of the response received from the server. However,
if multiple distinct errors fit a certain status code, it was impossible
to correctly interpret the error.

Change-Id: I2f91e9c81ba1a4d14ba67e0b4b531a48800d4799
2021-07-22 11:31:12 +00:00
Vitalii Shpital
4c7384ca2f web/satellite: removed redundant files splitting
Since we removed login/registration explicit templates and styles from branding repo we don't need file splitting in main repo anymore.
So moved html and css code into components

Change-Id: Ib297e2576f16a7fddd17cc62f6c655adf96a59b6
2021-07-20 12:44:02 +03:00
Vitalii Shpital
2489b78d22 web/satellite: move user MFA secret generation to server-side
It was decided to move user MFA secret generation to server-side and be fetched by http request

Change-Id: I5e31d35fb78d1d9f3280518fe3eb543bb8ed4377
2021-07-19 13:48:09 +00:00
Moby von Briesen
bc2f81c2fa web/satellite: Add beta checkbox to registration page
Only if is-beta-satellite is set to true.
Also cleans up some styles.

Change-Id: I2273936ae2b41a3409fb985b13cc987224a3ba85
2021-07-16 15:55:11 +00:00
Moby von Briesen
7624bdd090 web/satellite: Return server-side error message during registration
It turns out, there are multiple different 400 errors that might be
returned from the server during registration. Rather than display
hardcoded text on the client ("Validation of reCAPTCHA was
unsuccessful"), this change simply displays the error sent by the
server.

As mentioned in the comment, we should eventually do this for all
errors, but that will be a more in-depth change. The purpose of this
commit is to unblock a point release.

Change-Id: Ideca107cc4039a0dabfa0fb02c943da920f7ff4f
2021-07-16 09:43:11 -04:00
Jeremy Wharton
1e0a1b15d4 web/satellite: Repair reCAPTCHA resetting upon registration error
Previously, the reCAPTCHA would only reset if a Bad Request
error was received. Resets should initiate regardless of error
type to prevent the same reCAPTCHA response from being submitted
more then once.

Additionally, registration errors could trigger a reset for a
nonexistent reCAPTCHA element.

Change-Id: Ib405707f1803cf41e5de192f31d75153136e6c67
2021-07-15 15:42:52 -05:00
Vitalii Shpital
22e88c8f0a web/satellite: disable MFA functionality
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
2021-07-14 17:38:57 +03:00
Vitalii Shpital
e463eb17ac web/satellite: added enabling user MFA functionality to account settings
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
2021-07-14 15:13:59 +03:00
Moby von Briesen
4c912c7479 web/satellite: Update paid tier banner copy
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
2021-07-13 13:34:47 +00:00
Vitalii Shpital
8855c0dff7 web/satellite: added MFA feature flag, updated client-side api and Vuex store module
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
2021-07-12 10:12:59 +00:00
Jeremy Wharton
a5f6bb9cc0 satellite/console: Add reCAPTCHA verification step to registration
The user must complete a reCAPTCHA in order to register.
ReCAPTCHA verification failure results in rejection of the
registration attempt.

Change-Id: I34ba7db414d756fd1aaebdc3d19cccbfc7fc1ea3
2021-07-07 21:34:07 +00:00
Jeremy Wharton
ec9ad5bd7d web/satellite: Don't require passphrase entry after generation
Remove the Enter Encryption Passphrase screen that
immediately follows the Generate Passphrase screen upon entering
the Object Browser for the first time.

Change-Id: I04fb00325e7798096dc209473f5553d6e5df0dd3
2021-07-07 21:11:17 +00:00
Vitalii Shpital
bbd3efaeed web/satellite: Paid Tier add payment modal implemented
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
2021-07-06 16:16:18 +00:00
Malcolm Bouzi
ecf3de3c3b web/satellite: Add new intro section to register page
- With the removal of the sign up page in Webflow, we need to add section with some product intro

Change-Id: Ifa84c670a6cd93ed79e1791e07d40647c43017cd
2021-07-06 13:17:14 +00:00
Vitalii Shpital
bab43af6ce web/satellite: added Upgrade to Paid Tier banner
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
2021-07-01 15:05:03 +00:00
Michał Niewrzał
0ca7583282 satellite/accounting: add total for bytes and segments to tallies
We want to calculate bucket tally only from iterating objects.
Object currently has an info about totals for bytes and segments.
We need to adjust tallies to keep those totals. Older entries will
be untouched and code will use totals only if available. Change
is adding columns for totals to bucket_storage_tally table and
is adding general handling for them.

Next step is to start using total columns instead of inline/remote.
This will be done with next change.

Change-Id: I37fed1b327789efcf1d0570318aee3045db17fad
2021-07-01 08:52:32 +00:00
Moby von Briesen
4e95d27033 web,satellite: Remove paywall-related functionality
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
2021-06-29 02:47:48 +02:00
Vitalii Shpital
d30fd77652 satellite/console: new endpoint to get total usage and limits for all the projects user owns
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
2021-06-25 21:22:59 +00:00
Vitalii Shpital
d9741491a1 web/satellite: added cancel upload warning popup
Added warning popup for when file upload is in progress.
It says that leaving objects page will cancel upload

Change-Id: If49c1ddc898f2e6dbdc86e5a00d604a55b628720
2021-06-22 17:12:04 +03:00
Vitalii Shpital
7d3b5b932e web/satellite: replace old fonts with new versions
Replaced old .ttf Inter fonts with new version fonts.
For all modern browsers that use woff2 we save ~700KBs

Change-Id: I937c6e850298ad4bdd1f6c7279c6552c897c1ac4
2021-06-22 13:47:52 +00:00
Vitalii Shpital
ed28fa3ff9 web/satellite: added loaders across all the UI. Removed most of the requests from initial load
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
2021-06-10 15:16:52 +00:00
Jeremy Wharton
c27da95742
Update index.html to be consistent with deployed code (#4140)
This change is part of an ongoing effort to remove code from our branding repository.

Co-authored-by: Stefan Benten <mail@stefan-benten.de>
2021-06-10 09:28:57 -05:00
Moby von Briesen
b17d684f40 web/satellite: Update login area to use latest production code
This is another step in removing code from our branding repository. The
code between our three prod satellites was almost identical - this
change just uses the html/scss for the prod satellites, and generalizes
a small portion of the html so that the satellite selection dropdown is
based on configuration rather than hardcoded.

There are significant differences in the code for non-prod satellites
like saltlake, eu-north, and us2. We can address this in a future
change.

Change-Id: I72a79f5b60670abb6340c62132b35ba3884d0750
2021-06-03 16:59:31 -04:00
Egon Elbre
556b80e06b web/: ignore node_modules while linting css
For some reason in CI environment, stylelint started analyzing code in
node_modules.

Change-Id: I4fdac8e84a320d05506a01de753d19db57536bc4
2021-06-03 16:18:16 +03:00
Malcolm Bouzi
136af8e630 web, satellite: allow registering business accounts to ask for contact from sales team
Full prefix: web/satellite, satellite/{console, analytics, satellitedb}

- checkbox added to register view - business tab
- user being saved with new column
- add sales contact choice to Segment calls
- ui fix added to employee count dropdown

Change-Id: Ib976872463b88874ea9714db635d58c79cdbe3a1
2021-06-02 13:10:38 +00:00
Vitalii Shpital
a04c96b1bf web/satellite: replace initial cloud loader with a new one
Replaced loading spinner of the loading state after login.
This is the first step of unifying of all the spinners across UI

Change-Id: I00bffb0c7113803ffcda580888f5ba6f425b16d4
2021-06-02 09:03:08 +00:00
Vitalii Shpital
c26d52a538 web/satellite: remove duplicated default project creation code
Moved creation of default project to vuex store to dispatch it in different places.
It removes duplicated code fragments

Change-Id: Ic5e52776727e681797bbd76342b78480812552d1
2021-06-02 08:43:44 +00:00
prerna-parashar
75bf2ad586
satellite/analytics: Add analytics for "link shared" in objects view (#4130) 2021-06-01 14:44:37 -07:00
Vitalii Shpital
a5dbc544f4 satellite/console: project member deletion bugs fixed
There was a bug when user tried to get project after removing themselves from it.

Also we made user select firstly created project only if they removed themselves from current selected project.

Change-Id: I4b28ebc1ab4a8c14d05ef702e034f2ab39225cc3
2021-05-27 14:54:54 +00:00
Vitalii Shpital
32dd4315af web/satellite: improve AG's selection checkmark
replaced png with svg of AG selection checkmark to improve it's visibility

Change-Id: I868d8c831a33d4cf47dcd40aaa49e1c31fe9cf0b
2021-05-27 16:09:37 +03:00
Malcolm Bouzi
37bc46c6f6 web/satellite: Fix for Payment Method area buttons on billing page not being aligned
Aligns 'Add STORJ' and 'Add Card' buttons

Change-Id: I6a9a92f59d7e2e903d0e4d683cb09cd8de6da987
2021-05-25 22:01:24 +00:00
Vitalii Shpital
c410eae177 web/satellite: better error message for duplicated bucket
WHAT:
better error message when trying to create a bucket with a name that already exists

WHY:
better user experience

Change-Id: I1f56439d6dc8503cdca03759b0cc180688aafd87
2021-05-25 08:24:00 +00:00
Vitalii Shpital
b33b0a38d6 web/satellite: remove redundant console errors on duplicated route changes
WHAT:
removed console errors when trying to navigate to current route

WHY:
there shouldn't be errors in console

Change-Id: Ifa6ccf2f336cab58ac5e27b5dae2167a3229f98a
2021-05-25 08:03:15 +00:00
Vitalii Shpital
2896a2736c web/satellite: remove time caveats for object browser AGs
WHAT:
removed notBefore and notAfter caveats from object browser AGs

WHY:
caused a bug when user's clock is not synced correctly

Change-Id: I1af10418f1668003a09cba313eaed3b0764eabdc
2021-05-24 14:50:17 +00:00
Vitalii Shpital
a9fcbf7284 web/satellite: bump object browser version
WHAT:
use new object browser version

Change-Id: Ieb473b8f4b1beff81a5c2661f55e8e3f946daa2e
2021-05-19 16:01:15 +00:00
Malcolm Bouzi
9ccebfa7fd web/satellite: create select input component to capture employee count in registration
The current input dropdown solution allowed users to input their own text for employee count.
We want them to be limited to 3 choices, with a default value if none are chosen

Change-Id: I0fb2ab58fc756967efeac5f67e0f7001ef19c66f
2021-05-11 14:41:26 +00:00
Vitalii Shpital
222d9b7f0d web/satellite: add script to compile and compress wasm module
WHAT:
compile, compress and place wasm module into the correct place

WHY:
easier usage/testing

Change-Id: I06e83ef1bed9fc62366e1400ce5ed8942bd96633
2021-04-30 15:48:56 +00:00
Malcolm Bouzi
30d2a2ea7b web/satellite: add total account balance to billing page
- added to top left of billing page
- credit history dropdown removed

Change-Id: I85a0db67d61a318c5ec29d67153ce4f47770bc17
2021-04-28 18:29:18 +00:00
Vitalii Shpital
2e5e4cb64f web/satellite: access grant wizard refactored
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
2021-04-28 17:41:10 +00:00
Moby von Briesen
b317f28fdb web/satellite: Update registration files
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
2021-04-28 16:16:16 +00:00
Vitalii Shpital
bc95455135 web/satellite: delete bucket popup reworked
WHAT
added bucket name validation to delete bucket popup
removed bucket name auto-fill

WHY
better user experience

Change-Id: I5ba98050575a174ac22e5c32877cb2354cedb63f
2021-04-28 17:55:46 +03:00
Vitalii Shpital
2936b6755d web/satellite: wording updates
WHAT:
changed name of auto-created project from Untitled Project to My First Project
added estimated charges info for Free tier users

WHY:
better user experience

Change-Id: I6e5183a436989677ded928b665363b81f9878b34
2021-04-28 14:03:15 +00:00
Vitalii Shpital
75ba99b881 web/satellite: bump object browser component version with part size fix 2.0
WHAT:
another try to fix object browser part size issue
updated package-lock.json

WHY:
bug fix

Change-Id: I8104f3f84223f2e898fad6de63596a9841667ebc
2021-04-28 14:19:33 +03:00
Vitalii Shpital
917e4b81d3 web/satellite: regular header reworked
WHAT:
removed unnecessary templates splitting
fixed resources dropdown margins
fixes close navigation button responsiveness
aligned logo
added loader for projects dropdown and removed redundant request on dropdown closing
added satellite name to header's right side

WHY:
bug fixes/better user experience

Change-Id: I7ed30f882a1f5484efbf3e0e21ee5d637ef83bf2
2021-04-27 16:40:48 +00:00
Vitalii Shpital
f2e06ce882 web/satellite: added skip button for the onboarding flow
WHAT:
added skip button to onboardling flow

WHY:
better user experience

Change-Id: I80953de701e13730019efac38595116c9ce94689
2021-04-27 10:54:29 +00:00
Vitalii Shpital
64c82507c5 web/satellite: make project dashboard delay message more visible
WHAT:
replace info icon with a regular message

WHY:
better user experience

Change-Id: I7edaf1d139f824752eb3c96bcfbba7e5ef2aa09f
2021-04-27 10:54:25 +00:00
Vitalii Shpital
a84b8367dc web/satellite: changed Token to API Key label for CLI step of AG flow
WHAT:
label changed from Token to API Key

WHY:
to remove user's confusion

Change-Id: If30384bb3cf6b32ae7fede0a53af176c73965090
2021-04-27 10:35:01 +00:00
Malcolm Bouzi
31c1137860 web/satellite: add login path
path will be used for a new link

Change-Id: Idb14ea5bd152cf169575b7223fc429eb44d7049e
2021-04-23 15:01:27 +00:00
Malcolm Bouzi
52c3d7d642 web/satellite: add disabled state to onboarding overview RClone link
Change-Id: I4cef2d0772967f47e9fa063494de9f8903eb4f29
2021-04-21 19:34:55 +00:00
Vitalii Shpital
f6ec7f9bfc web/satellite: remove paywall steps from onboarding flow
WHAT:
removed paywall related steps from onboarding flow
fixed back button bugs

WHY:
bug fixing

Change-Id: I150127fe9c2b3b134d0cb7ee9581d8fdd415a591
2021-04-20 17:38:50 +00:00
Vitalii Shpital
f8aaf5c5f3 web/satellite: bump object browser version with part size fix
WHAT:
this version includes a fix for part size to be 64MB

WHY:
post-launch fix

Change-Id: Ie50adddef0340e679604995bab5aaa8317496728
2021-04-20 16:26:34 +00:00