Commit Graph

1524 Commits

Author SHA1 Message Date
Vitalii
fd28a665c7 web/satellite: introduce access grants pinia module
Added new access grants pinia module.

Change-Id: Icb04d6e77ecc19797e250279cbe07e333596d816
2023-03-24 00:09:57 +00:00
Vitalii
2922eeed07 web/satellite: migrated components to use pinia ab testing module instead of Vuex
Migrated components to use new pinia ab testing module instead of old Vuex module.

Change-Id: Ib71ff1ad8d08829d939dee2ae87f4349bd4c33cf
2023-03-23 14:51:56 +02:00
Vitalii
a588f96b90 web/satellite: migrated UpgradeNotification component to use SFC composition api
Migrated component to use SFC composition api.

Change-Id: Ic2f11d1c77eaa5e66ed80c1c2fd6acbfe25f9052
2023-03-23 10:22:18 +00:00
Vitalii
6a99e3df31 web/satellite: migrated MobileNavigation component to use SFC composition api
Migrated component to use SFC composition api.
Fixed some router code usage in DashboardArea.
Fixed billing Detailed history router usage.
Fixed VBanner console error.

Change-Id: I372f870185a00334895c62d504e2aed44f8f5b9d
2023-03-22 21:23:01 +00:00
Vitalii
2dee4c9afc web/satellite: migrated navigation AccountArea to use SFC composition api
Migrated component to use SFC composition api.
Deleted unused PaidTierBar component.

Change-Id: Ie7938fbcd1b65ef0da9e9aefec879d605892253b
2023-03-22 11:54:01 +02:00
Vitalii
9feee869f0 web/satellite: add ab testing pinia module
Added new ab testing pinia module.

This is a part of migration from Vuex to pinia.

Change-Id: I5e6c325d979b0641ed745de4ca17039b812dd842
2023-03-22 11:49:24 +02:00
Vitalii
fb12717256 web/satellite: fix passphrase switching outside object browser
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
2023-03-20 17:05:26 +00:00
Wilfred Asomani
bf45e53169 satellite/{web,payments}: display correct stripe balance
This correctly displays the stripe balance in dollars, which was
previously displayed in cents.

Change-Id: Ifb14a63a90d3701201c616780cee466525c8be18
2023-03-17 11:54:08 -05:00
Jeremy Wharton
e0c3f66040 web/satellite: display correct prices in account upgrade modal
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.

Resolves storj/storj-private#187

Change-Id: I58206cc8ea7e7742a37f759a84dbb24ca40dd8eb
2023-03-17 10:15:28 -05:00
Jeremy Wharton
6942da3ddb web/satellite: migrate account upgrade modal to composition API
This change updates the account upgrade modal to use the composition
API.

Change-Id: If835da7bb627f07aec88bff59127b3ba459c9a0f
2023-03-17 10:14:23 -05:00
Cameron
355f800916 web/satellite: create default project during onboarding
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
2023-03-16 18:19:32 -04:00
Vitalii
132a688bec web/satellite: rework session timeout reset with ongoing upload
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
2023-03-15 16:00:53 +00:00
Vitalii
7942f3774f web/satellite: do not show server side encryption banner on relogin
Do not reset showing server side encryption banner for buckets page on relogin.

Issue:
https://github.com/storj/storj/issues/5555

Change-Id: I30d9d8e8370aa1fd1f60069720ecd07d8450c8ee
2023-03-15 15:23:59 +00:00
Vitalii
37d7c0efbf web/satellite: migrate VChart component to use SFC composition API
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
2023-03-15 14:31:52 +00:00
Wilfred Asomani
61af5b3191 web/satellite: move register page to composition api
This change updates RegisterArea.vue to use the composition API.

Issue: https://github.com/storj/storj/issues/5059

Change-Id: Ieea65731cd76a9e98282f23aed90e625c6d09387
2023-03-14 21:26:27 +00:00
Wilfred Asomani
59ebb0ef27 web/satellite: move login to composition api
This change updates LoginArea.vue to use the composition API.

Issue: https://github.com/storj/storj/issues/5060

Change-Id: I34d748da1224805ed179bd2cf37e61d496d0811c
2023-03-14 00:34:07 +00:00
Jeremy Wharton
c24341bcab web/satellite: update Coupons area in Billing page
The Coupons area of the Billing page has been updated to match our
designs.

Resolves storj/storj-private#172

Change-Id: I0f3d7f3818f47a1bbc6a2dba930ab429f83f92c2
2023-03-13 08:09:06 +00:00
Jeremy Wharton
c4f8695e8a web/satellite: generate TypeScript for frontend config
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
2023-03-10 22:33:24 +00:00
Jeremy Wharton
4d823e8166 private/apigen: isolate TypeScript class generation
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
2023-03-10 21:52:30 +00:00
Wilfred Asomani
fafa6658a9 web/satellite: fix file dropdown
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
2023-03-10 19:13:33 +00:00
Lizzy Thomson
0559d19db5 web/satellite: fix accessibility issues with sidebar navigation
Fixes https://github.com/storj/storj/issues/5449

Change-Id: I095c6a70899cd9f5939ef8c802d0faa8322d441d
2023-03-10 08:56:31 -07:00
Wilfred Asomani
b1d4763086 satellite/{web,payments}: show STORJ balance
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
2023-03-10 13:01:15 +00:00
Jeremy Wharton
1d1739e187 web/satellite: update styling of pricing plan components
The styling of pricing plan components has been updated to match our
designs.

References storj/storj-private#172

Change-Id: I61a2536267c41292abd9e4860b5bd45fafb61408
2023-03-09 22:03:46 +00:00
Wilfred Asomani
31e386c607 web/satellite: add new settings page
This change implements a new account settings page for the all projects
dashboard.

Issue: https://github.com/storj/storj/issues/5514

Change-Id: Id777cd5c1efe3fa4b40234771ae2a99cc5cb9dd3
2023-03-09 20:30:49 +00:00
Wilfred Asomani
52abe8ddb4 web/satellite: add all projects onboarding
This change implements onboarding for the all projects dashboard.

Issue: https://github.com/storj/storj/issues/5514

Change-Id: If8a48c21e6df264c84d362d17bf01d770d9ca768
2023-03-09 19:55:34 +00:00
Vitalii
d6b661a412 web/satellite: fix for long names in tables
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
2023-03-09 17:58:14 +00:00
Vitalii
e3cbbd4d80 web/satellite: migrated StorageChart to use composition API
Migrated component to use SFC composition API.

Change-Id: I7328b76ce6e3b038877232e2c76814d7583bbf66
2023-03-07 15:20:36 +00:00
Vitalii
28f08405f4 web/satellite: migrate BandwidthChart to use composition API
Migrated component to use SFC composition API.

Change-Id: I987781a2b6741a903800a21964bdfd992f4221b5
2023-03-07 15:19:43 +00:00
Vitalii
0b58657914 web/satellite: migrated dashboard InfoContainer component to use composition API
Migrated component to use SFC composition API.

Change-Id: Ibc985f8e81d941dd83fecd065873be1610f40767
2023-03-07 15:18:51 +00:00
Vitalii
43da70556a web/satellite: migrated DateRangeSelection component to use composition API
Migrated component to use SFC composition API.

Change-Id: I224fffc827f8be53aa8e0389334224b367b7ee71
2023-03-07 15:17:58 +00:00
Vitalii
52f142e3fc web/satellite: resolve some build warnings
Resolved some of the build warnings which are code-related.

Change-Id: I05f7981eacbaa61280ac111046fcc78025560a34
2023-03-07 17:13:42 +02:00
Vitalii
a01d47b3ed satellite:{console, web}: remove old project dashboard
Removed old project dashboard along with a feature flag.

Change-Id: I9292b19caf101a84042d8c3006c27bc44db8d6b5
2023-03-07 13:34:59 +02:00
Vitalii
b6721633f1 satellite/payments: return public project ID for project charges
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
2023-03-06 22:50:21 +00:00
Vitalii
f834622a01 web: remove sanitizing dependency and restrict v-html
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
2023-03-06 19:58:27 +00:00
Vitalii
d843666606 web/satellite: divide file browser error tracking into 2 separate events
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
2023-03-06 18:53:25 +00:00
Vitalii
41efebeebd web/satellite: migrated AddCouponCodeInput to use SFC composition api
Migrated component to use composition API.

Change-Id: Ia39ef0f7c2226821f055856db1adcccc8b70e7e6
2023-03-06 16:57:51 +00:00
Vitalii
45a47f654e web/satellite: disable buckets checkbox if all buckets are selected
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
2023-03-06 14:45:55 +02:00
Jeremy Wharton
662e916194 web/satellite: skip pricing plan step if no available packages
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
2023-03-03 09:09:15 +00:00
Wilfred Asomani
0676a4ca89 web/satellite: use correct table icons
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
2023-03-03 08:14:51 +00:00
Wilfred Asomani
172fcc4f66 web/satellite: add project ownership tag
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
2023-03-02 20:55:50 +00:00
Wilfred Asomani
418a0639cd web/satellite: fix project item alignment
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
2023-03-02 12:37:05 +00:00
Vitalii
eab83ee7fa web/satellite: fix locked files number if there are folders
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
2023-03-01 18:02:04 +02:00
Jeremy Wharton
31ec4fae9e web/satellite: add pricing plan selection to onboarding tour
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
2023-02-28 20:49:59 -06:00
Vitalii
cd192164d2 web/satellite: confirm details step for new access grant flow
Added extra step for new access grant flow where user can confirm all selected caveats (except passphrase).

Change-Id: I9ac603d588016f30a95d4b578b3752e256a496da
2023-02-28 23:14:29 +00:00
Vitalii
552272d189 web/satellite: added more analytics for new access grant flow
Added docs opened tracking.

Change-Id: I9b69d521347e4a26c448312661fd278329b4466b
2023-02-28 23:13:53 +00:00
Vitalii
e9c4d1151f web/satellite: responsiveness and accessibility fixes for new access grant flow
Fixed responsiveness and accessibility for new access grant flow.

Change-Id: Ie39c807a702995610d240e19cf5dfd2c8a51d860
2023-02-28 22:14:14 +00:00
Wilfred Asomani
ec4b0c8ff6 web/satellite: add project limit banner
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
2023-02-28 15:51:47 +00:00
Vitalii
490402132e web/satellite: refactor project level passphrase flow
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
2023-02-28 14:51:59 +00:00
Wilfred Asomani
bac4c86388 web/satellite: add all projects dashboard
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
2023-02-28 13:54:43 +00:00
Wilfred Asomani
76d7bc6d18 web/satellite: add components for new dashboard
This change just adds the components/changes needed by the all projects
dashboard.

Issue: https://github.com/storj/storj/issues/5514

Change-Id: Ie7926f563dd3eb47a56b234cfd004f5b69be00a8
2023-02-27 21:33:24 +00:00
Jeremy Wharton
85d6843f2e web/satellite: registration success responsiveness improvements
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
2023-02-27 17:52:39 +00:00
Vitalii
a1c0fa96d2 web/satellite: S3 credentials step for new access grant flow
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
2023-02-27 15:15:58 +02:00
Vitalii
430b9646dc web/{satellite, storagenode, multinode}: more linter fixes
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
2023-02-27 12:37:32 +00:00
Vitalii
bd0ad21c24 web/satellite: CLI access step for new access grant flow
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
2023-02-27 13:59:47 +02:00
Vitalii
991211a2b0 web/satellite: access created step for new access grant flow
Added access created step to new access grant flow.
Also added some really tiny fixes for current project passphrase flow.

Change-Id: I94eb25b53cf7cc0c6ea7b9c13762ca76736ea7ac
2023-02-24 22:26:42 +00:00
Vitalii
fa2f7336cd web/satellite: encryption info step for new access grant flow
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
2023-02-24 21:49:27 +00:00
Vitalii
17ec326fd4 web/satellite: make inactivity modal appear on top of other modals
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
2023-02-24 16:03:31 +00:00
Vitalii
a9ca643e3f web/satellite: added passphrase generated screen for new access grant flow
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
2023-02-22 14:18:34 +02:00
Vitalii
a1f46fe721 web/satellite: enter passphrase step for new access grant flow
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
2023-02-22 00:00:41 +00:00
Wilfred Asomani
81d7f751da web/satellite: clean up popup constants
This change removes unused modal and dropdown action/mutation constants

Change-Id: Ib4f789ec967727d3619e9fd7769caf99dc9531ac
2023-02-21 23:11:02 +00:00
Vitalii
6f12ba59ba web/satellite: third step on new access grant flow
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
2023-02-21 16:07:42 +02:00
Vitalii
00021e6c75 web/satellite: fix unlock feature inside object browser
Fixed unlock feature inside object browser.

Bug: Clicking unlock button doesn't do anything but it should open switch passphrase modal.

Change-Id: Ie7fa0f842a393c4d887f4dac63fb59edf16229ea
2023-02-21 13:27:26 +00:00
Vitalii
9ac314e482 web/satellite: second step of new access grant flow
Added second step where user sets permissions, buckets and date caveats.

Change-Id: I2f959a5bbd46b47b52ea9cafc866b13d28b3e972
2023-02-16 23:12:11 +00:00
Lizzy Thomson
155b927c5e satellite/console: add notifications for free account limits
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
2023-02-16 13:31:01 -07:00
Wilfred Asomani
9138e84fb1 satellite/{web,console}: feature flag for all projects dashboard
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
2023-02-15 15:53:31 +00:00
Malcolm Bouzi
109da3c798 web/satellite: refactor appstate store module to use enum for popups
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
2023-02-15 09:25:39 +00:00
Vitalii
8c7e031ee3 web/satellite: extended open bucket functionality
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
2023-02-14 19:04:36 +02:00
Wilfred Asomani
4a67b57103 satellite/{console,web}: make bucket endpoints support publicID
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
2023-02-13 23:00:03 +00:00
Vitalii
450772f034 web/satellite: first step of new access grant flow
Added icons and typings.
Added a first step (Create a new access) of the new flow.

Change-Id: Ic60073dd20fd9ac8728151eb9a2f182366c46e99
2023-02-09 14:39:59 +02:00
Vitalii
65e3cfb9c6 satellite/{web, console}: feature flag for new access grant flow
Added a feature flag for new create access grant flow.
Also added some initial setup.

Change-Id: I7f738181c8a83f5a724f9e562427445cae146b6f
2023-02-09 00:35:35 +00:00
Wilfred Asomani
8ec3bc5803 web/satellite: move banners into page content
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
2023-02-08 09:22:58 +00:00
Jeremy Wharton
b5f4385278 web/satellite: update table row selected & hovered colors
Resolves #5478

Change-Id: Iaa8f0c5a0e6ca3239316a18abf32494beef4a2a1
2023-02-07 23:07:54 +00:00
Wilfred Asomani
e8cd096eec satellite/{console,web}: make grapql mutations support publicId
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/5409
https://github.com/storj/storj/issues/5413

Change-Id: Ib6241db157de3b37c86a4a98c9f682bf4a047b62
2023-02-06 11:57:44 +00:00
Wilfred Asomani
12f884e802 web/satellite: fix account menu visibility on tablets
This change fixes an issue where the "My Account" menu on the side nav
will not be visible on certain tablets.

Issue: https://github.com/storj/storj/issues/5445

Change-Id: I15d90851bc39fd1ab37e7e127c48d3de6c7e811e
2023-02-06 09:39:39 +00:00
Jeremy Wharton
add3034b43 satellite/payments/stripecoinpayments: forbid replacing partner coupons
Users with a partner package plan should be unable to replace their
plan's coupon. This change enforces this behavior by rejecting coupon
application attempts from users that meet this criteria.

Change-Id: I6383d19f2c7fbd9e1a2826473b2f867ea8a8ea3e
2023-02-03 17:15:01 +00:00
Wilfred Asomani
e751ee3c1b web/satellite: dismiss access grant modal tooltip
This change fixes an issue where the tooltip on the create access grant
modal will not dismiss even after hovering/clicking outside of it.

Issue: https://github.com/storj/storj/issues/5502

Change-Id: Ib6c042f3b18566bfeb4b05cb50acfa5e5ca1fbb9
2023-02-01 18:36:55 +00:00
Moby von Briesen
b4dbfa0cf8 web/satellite: Fix permission setting for access grants modal
Every case for the check/uncheck logic was not covered to actually
update the permissions list that gets sent to the worker to create the
access. This commit fixes these cases.

Solves https://github.com/storj/storj/issues/5512

Change-Id: I15f30f9f989039df110930b5a6e8914f5bf9d91e
2023-02-01 17:52:20 +00:00
Jeremy Wharton
897de167a6 satellite/console,web/satellite: remove user input from welcome and invite emails
Emails should not contain user input that could be used by malicious
agents to deliver a message. Usernames have been removed from
account activation emails, and project names have been removed from
project invitation emails.

References storj-private#133

Change-Id: Ic05921149b409145df109c0966ea5dfd86d86eb1
2023-02-01 16:29:57 +00:00
Vitalii
7dfa379d77 web/satellite: show prompt for project passphrase on project create/switch
Show modal to enter project passphrase when switching between projects or creating new one.
Also fixed a bug when create project passphrase modal is shown twice after onboarding 'continue in web' click.

Change-Id: Iab64cf9f457b9739314610612608a5d8070810e3
2023-02-01 16:41:46 +02:00
Vitalii
fa26ae85e9 web/satellite: create bucket without a passphrase feature
Allow user to create bucket without a passphrase if project level passphrase was not set.

Issue:
https://github.com/storj/storj/issues/5521

Change-Id: Ifc4a6724229ce0708db720edb2f8953098e346ed
2023-02-01 08:53:39 +00:00
Jeremy Wharton
33bd929308 web/satellite: encode file browser URL components
File paths may contain characters that have special meaning when placed
in URLs. For example, a folder name may contain a pound symbol (#)
which is the URL fragment delimiter. This causes the characters that
succeed this symbol to not be considered part of the primary resource
identifier as they should be, resulting in navigation errors.
This change resolves this issue.

Resolves #5522

Change-Id: I59972321795375ec5981c3e9c505e35f998022d6
2023-02-01 00:08:54 +00:00
Vitalii
5377b9c314 satellite/{web, console}: removed old project level passphrase flow
Removed old behavior and bucket creation flow.

Issue:
https://github.com/storj/storj/issues/5521

Change-Id: I1a443911215cd1f611069fd9e6202598066b80b2
2023-01-31 23:02:44 +00:00
Wilfred Asomani
3a714cefcf satellite: remove rewards package
Affected packages admin,attribution,console,metainfo,satellitedb,web,payments
This change removes the satellite/rewards package and its related usages.
It removes references to APIKeyInfo/PartnerID, Project/PartnerID
 and User/PartnerID.

Issue: https://github.com/storj/storj/issues/5432

Change-Id: Ieaa352ee848db45e94f85556febdbcf1444d8c3e
2023-01-31 11:46:50 +00:00
NickolaiYurchenko
facbd65882 web/satellite: EstimatedCostsAndCredits components migrated to use composition api
Change-Id: I11ee04880a5dbdc5494f7a51c0b4077e88827a11
2023-01-30 09:22:25 +00:00
Vitalii
6f11c8b32c web/satellite: show create/enter passphrase modal after login
Show create/enter passphrase modal after login for new project level passphrase flow.
Also fixed buckets view mounted hook to load create bucket modal instead of old flow.

Issue:
https://github.com/storj/storj/issues/5510

Change-Id: If9ea70faaa2987f336d72d55a6ed2bbd02ced592
2023-01-26 18:06:59 +02:00
NickolaiYurchenko
a53849f874 web/satellite: PeriodSelection, SmallDepositHistory, SortingHeader migrated to use composition api
Change-Id: I029b8daa8268aae1fd9a12ab83a368f5e6862ba7
2023-01-25 22:17:52 +00:00
NickolaiYurchenko
15efa1e319 web/satellite: CouponArea, DetailedHistory, PaymentHistoryItemDate, PaymentsItem migrated to use composition api
Change-Id: I3963835053e69dd3b989a417b295abaa0b645284
2023-01-25 21:47:32 +00:00
Vitalii
c98ef89311 web/satellite: fixed multiple passphrases notification for object browser
Fixed notifications link to toggle manage passphrase modal instead of redirecting to buckets screen.

Issue:
https://github.com/storj/storj/issues/5452

Change-Id: I84ce67da7445c6316eb0658606c0129bb4af680e
2023-01-24 16:21:35 +00:00
NickolaiYurchenko
bf5b378836 web/satellite: CreditCardContainer and billing Overview migrated to use composition api
Change-Id: I8e0a027671aa996f42edf916c9b0434e773de618
2023-01-23 18:53:25 +00:00
Yaroslav Vorobiov
b86ce0d527 satellite/payments/storjscan: return 404 when there is no wallet
When there is no wallet in the database for a particular customer
return 404 http response status code instread of internal server error.
Change web/satellite payments API to return empty wallet on 404 response
code instead of throwing an error.

Change-Id: Ib44914f9ed002382258968fb81846f2b97dee0fe
2023-01-23 18:07:33 +00:00
Vitalii
d1c230fe4d web/satellite: fix Vuex state clearing on session timeout
Fixed Vuex state clearing on session timeout.
Now state is being cleared right after redirect to login and before logout API call.

Change-Id: I3cddb85735899f0913a273a49335730a4097435e
2023-01-23 17:58:26 +02:00
Wilfred Asomani
250f505f4d web/satellite: fix new folder button in file browser
This change opens the "new folder" modal on click of the "new folder"
button in the file browser

Change-Id: I063d644c70ad1eff005eb509d97b95cf30aca00a
2023-01-23 11:19:12 +00:00
NickolaiYurchenko
b9c0bbce2f web/satellite: access page responsiveness added
navigation logo shrink fixed by updating icon;
https://github.com/storj/storj/issues/5461
https://github.com/storj/storj/issues/5458

Change-Id: I6794cbf1c63786978336810f4c8151dc7825c7c8
2023-01-23 12:06:03 +02:00
NickolaiYurchenko
5a4f089750 web/satellite: Billing history and Coupons components migrated to use composition api
Change-Id: I589af5376af5d94a15069c1d6ff4fbe2ce1c6fb0
2023-01-20 16:16:23 +00:00
Wilfred Asomani
d76f764b72 satellite/web: replace cancel with back buttons
This replaces "Cancel" with "Back" on Clear, Create and Switch steps.
It also removes margin-top from the button rows in Clear, Create steps.

Issue: https://github.com/storj/storj/issues/5463

Change-Id: Ib2ef0dba9b91e82a7cf5b042fad0162128fa071a
2023-01-18 17:51:18 +00:00
Jeremy Wharton
6142b1cd12 web/satellite: show overridden usage prices in the satellite UI
This change allows users who register with a partner that has
different project usage prices to see the correct prices in the
satellite UI.

Resolves storj/storj-private#90

Change-Id: I06bde50db474b25396671a27e282ef5637efe85b
2023-01-17 15:01:57 +00:00
Vitalii
079728f725 web/satellite: improved project level passphrase experience
Clicking continue in web toggles create project level passphrase which then redirects to project dashboard.
Added new create bucket modal.
Updated open bucket modal.
Updated project dashboard and buckets view to work correctly with no buckets state and no passphrase state.

Issue:
https://github.com/storj/storj/issues/5455

Change-Id: If6ddac7d3365854a02b2bb8898e4742e9d2c31c1
2023-01-17 08:15:06 +00:00
NickolaiYurchenko
a80bbb9d16 web/satellite: navigation label fixed, add token address truncation changed
console error fixed;
https://github.com/storj/storj/issues/5462
https://github.com/storj/storj/issues/5469

Change-Id: I33e9f5ae09a166fdd8b21ef811fc078d14c10663
2023-01-13 15:42:02 +00:00
NickolaiYurchenko
86fb188be6 web/satellite: Setting.vue migrated to use composition api
added useLoading composable to get rid or repetative same code usage;

Change-Id: I3524efdb1919759046bbf11fe3510f8044adc828
2023-01-13 17:04:30 +02:00
NickolaiYurchenko
a7fc884a2c web/satellite: browser header buttons styles fixed
https://github.com/storj/storj/issues/5459

Change-Id: I75368aabd0faac3d6662b95a31bce4896e6a8341
2023-01-13 14:39:32 +02:00
NickolaiYurchenko
2e28e59a5e web/satellite: cant open bucket on name click bug fixed
https://github.com/storj/storj/issues/5467

Change-Id: I0c91167ddd1d01b15238dbebf10f49dc0cc6c340
2023-01-12 19:03:43 +00:00
NickolaiYurchenko
e0f2087245 web/satellite: EncryptForm component migrated to use composition api
Change-Id: Iae41d7bd7b44f53c43b4bf2ab552b5f746915469
2023-01-12 14:35:49 +00:00
prerna-parashar
6e9567cb25
satellite/analytics: Track Project Details Updates (#5451) 2023-01-11 21:25:41 +05:30
NickolaiYurchenko
60cd245764 web/satellite: access grant CreateForm modal migrated and slightly refactored
Change-Id: Icbe0c1189fcf077450988873bd0916b5518df4a8
2023-01-10 17:42:02 +00:00
Lizzy Thomson
c3c239d1f7 web/satellite: update billing history logic
Update billing history logic to exclude empty status invoices

Fixes https://github.com/storj/storj/issues/5427

Change-Id: If600f3dbce511b1c427d8fcde577dd145e693bb1
2023-01-09 17:47:45 +00:00
NickolaiYurchenko
d806c5c49b web/satellite: CreditCardContainer.vue padding bug on 'Default' label fixed
Change-Id: I714614a5d92e4f3d994f03da94dd053e751bbf50
2023-01-06 18:09:38 +00:00
Wilfred Asomani
05c83a5539 satellite/{console,web}: support delete by ID and publicID
Update the delete API key by name and projectID to support project-ID
and project-publicID.

Issue: https://github.com/storj/storj/issues/5410

Change-Id: I3bd11b9c3ae1ad6ce662dfc18b42779d2e4edf9b
2023-01-06 13:40:10 +00:00
Wilfred Asomani
ab8f22a6d0 web/satellite: add zkSync warning message
Slightly modified the warning message on the "Add STORJ Tokens" modal;
And added a warning for zkSync.

Issue: https://github.com/storj/storj/issues/5418

Change-Id: I206e7b493c3fe04c69a3815a5f03bd6a07cfceae
2023-01-04 14:41:16 +00:00
NickolaiYurchenko
96e7c1341f web/satellite: ShareContainer, ShareButton refactored and migrated to use composition api
Change-Id: Ic8b2d2b70cb5a614858b352064f0619b5a518b3d
2022-12-23 21:42:00 +00:00
NickolaiYurchenko
b683f83994 web/satellite: PasswordStrength, NewBillingAddCouponCodeInput components migrated to use composition api
Change-Id: I1b878a7bce574c34ec424e7c8b94077c65fa9529
2022-12-23 15:55:59 +00:00
Vitalii
af238e2ef9 web/satellite: removed old create access grant flow
Removed old flow and feature flag.

Issue:
https://github.com/storj/storj/issues/5407

Change-Id: I9dec18eb7d8c7912ead87188789466db5f59a5ca
2022-12-23 15:14:02 +00:00
NickolaiYurchenko
ad9fbe2953 web/satellite: SelectInput, RegistrationSuccess components migrated to use composition api
Change-Id: Ic2d0e152d48e7b5b57780712905d51ab1139a77d
2022-12-23 12:17:06 +00:00
Malcolm Bouzi
9a59b75159 web/satellite: make date on billing page look unclickable.
ticket: https://github.com/storj/storj/issues/5315
Change-Id: I249bfd3025a278b3a985318f41725ea70fc2135d
2022-12-22 19:06:14 +00:00
NickolaiYurchenko
013e74f804 web/satellite: route to billing page on frozen status banner changed
redirect path changed from billing overview to billing payment methods;
fixed router path change beeing not tracked;

Change-Id: Ib5b11d4819ec8fe43acbe624a937f9364921d13a
2022-12-22 19:01:18 +02:00
Malcolm Bouzi
d20a2e9a7d web/satellite: update copy on the coupon code application modal.
ticket: https://github.com/storj/storj/issues/5314
Change-Id: I24226f0565670dd87c2c21dbfea1eaf667854bdc
2022-12-22 16:03:53 +00:00
Malcolm Bouzi
5d13a5e0ed web/satellite: update loading screen to include branding.
ticket: https://github.com/storj/storj/issues/5278

Change-Id: I02d5d237ce03224c0b9af5428d6853b32d346f5e
2022-12-21 16:06:43 -05:00
Malcolm Bouzi
9535444dcd web/satellite: adds satellite selection through tab control on the forget password page.
ticket: https://github.com/storj/storj/issues/5164
Change-Id: I1e0cefe75883a12c7b26ad42b7c44fddb7e93d10
2022-12-20 16:59:04 +00:00
NickolaiYurchenko
0e3e588718 web/satellite: frozen status check and banner added
added api call, user isFrozen status;
new banner added;
DashboardArea migrated to use composition api;

Change-Id: Ia3fe68c2239064b2b729c6de14d7fc1dc8f4cf3b
2022-12-20 17:58:49 +02:00
Vitalii
2ebdc5ff2f web/satellite: unauthorized error (401) interception for http requests
Implemented interception for http requests.
We redirect user to login page on every 401 response.

Issue:
https://github.com/storj/storj/issues/5339

Change-Id: Icba4fc0031cb2b4e682a1be078cdcf95b7fa6bfe
2022-12-20 07:14:17 +00:00
Vitalii
dcb16d83dd web/satellite: fix for open bucket and bucket search issues
Fixed bucket search not being cleared on component unmount.
Fixed open bucket issue for project dashboard presented by the conflict with vue-click-outside directive.

Change-Id: I3682c6b131dcdb902369cf74b31c1b270cd15b08
2022-12-20 01:12:06 +02:00
Vitalii
92a757cf3f web/satellite: clear vuex state on session timeout
We have to clear vuex app state on session timeout because user's session gets invalidated and user is redirected to login screen.

Issue:
https://github.com/storj/storj/issues/5370

Change-Id: Id654056331c81fac0b46ed90eccea0a044e4e1c9
2022-12-15 21:57:32 +00:00
NickolaiYurchenko
bb170a9d57 web/satellite: VCheckbox, VButton migrated to use composition api
related tests moved to ignored folder or fixed and will be changed after;

Change-Id: Idb4b1a93ac176b98184c746222b5cd1e30dad595
2022-12-15 18:10:08 +00:00
NickolaiYurchenko
8d30b58a8c web/satellite: VInfo, VerticalArrows, VDateRangePicket migrated to use composition api
related tests moved to ignored folder;

Change-Id: Ic76fe5f6da8088484ddcd2956bb6bb6c0d5d6223
2022-12-15 17:30:46 +00:00
NickolaiYurchenko
55774bac10 web/satellite: VLoader, VModal, VList migrated to use composition api
VLIst component and tests deleted;
related tests moved to ignore folder;

Change-Id: Id65754a044cdc8adcd551a6f4e3c5df65b11ffa0
2022-12-15 16:59:59 +00:00
NickolaiYurchenko
e54d9b1c6a web/satellite: VAlidationMessage, TableItem and TablePagination migrated to use composition api
Change-Id: Id02dd4f32fdd9924a2528a7363682fb6e1cb7afa
2022-12-15 16:02:13 +00:00
NickolaiYurchenko
4fad04e153 web/satellite: autocomplete search bug fixed
problem: after clicking on any bucket serch input was prefilled weird by browser and causes table empty state to appear;
solution: added workaround to add readonly status for input and disable it on focus;

Change-Id: I3dd05e709ef3aceb3b8542fe468bdb41b7b6d353
2022-12-14 19:39:27 +00:00
NickolaiYurchenko
235e9be208 web/satellite: VBar, VBanner migrated to use composition api
composables folder created (same as react hooks) for functionality reusage;
related test moved to ignored folder;

Change-Id: I494aa27079aa5694bee7b18511eeadd56ced59e9
2022-12-14 11:21:11 +00:00
Lizzy Thomson
eee79ec3cd web/satellite: fix project selection logic
fixes https://github.com/storj/storj/issues/5294

Change-Id: I4cc3110e94700b0f31d20edabfd31482ae891200
2022-12-13 22:08:12 +00:00
Vitalii
5d727becb4 satellite/{analytics, web}: segment ui error tracking implemented
Implemented UI error tracking.
We use satellite analytics service to track the fact that UI error occurred and send minimal info to Segment (not Hubspot).
We send only the fact that UI error occurred and the place where this error occurred.
Extended notificator plugin error function to include the place where error occurred.
I made the place argument nullable to be always explicitly provided (build fails if place is not provided).
If place is not null then error event is triggered in the background.

Issue:
https://github.com/storj/storj-private/issues/107

Change-Id: I7d129fb29629979f5be6ff5dea37ad19b1a2397e
2022-12-13 18:11:53 +00:00
Vitalii
17db59e27a web/satellite: update apollo-client dependency to remove CSP error
This is insane but the problem was caused by the old apollo-client dependency which is 3 years old.
The error was coming from ts-invariant code here
https://github.com/apollographql/invariant-packages/blob/master/packages/ts-invariant/src/invariant.ts#L64

By this change I updated our app to use new @apollo/client dependency but there is one pretty big concern.
This lib has react as a peer dependency (what?!) so to avoid adding react to our vue project I had to import needed functionality from @apollo/client/core instead of just @apollo/client.

There is a discussion here https://github.com/apollographql/apollo-client/issues/7318
According to this ^ apollo team are going to remove react from their peer dependecies list when apollo V4 will be launched.
See https://github.com/apollographql/apollo-client/issues/8190

That's another point why we should move away from using graphql entirely or at least stop using apollo.

Issue:
https://github.com/storj/storj/issues/5371

Change-Id: Ifd484efbcd9e99d8c2e21d0dab93670c9358e25c
2022-12-13 16:04:50 +00:00
NickolaiYurchenko
2b78433cf0 web/satellite: VPagination, VHeader, VSearch migration to use composition api
fixed issue with required props that were not passed to component;
added default props;
related test added to ignored folder till vue 3 version update with vue-cli-service;

Change-Id: Idc95a4c0b9f124797519652004abf53e066605c2
2022-12-12 16:13:14 +02:00
Malcolm Bouzi
99f4b2a26e web/satellite: Ensure that all users can register through keyboard only to improve accessibility:
- account types can be selected
- checkboxes can be interacted with

see: https://github.com/storj/storj/issues/5163

Change-Id: Id97c026b79fb2993bba9138e9d4754e7a1371bbc
2022-12-09 14:47:25 +00:00
Clement Sam
7461ffe148 {storagenode,web/multinode}: fix storage usage db/cache retrieval queries
The query changes we did while fixing the usage graph led to wrong
payout calculations directly linked to disk space.

This change:

- avoids converting from Bh to B directly in the query
- returns the at_rest_total in the original bytes*hour value
- returns at_rest_total_bytes as the calculated disk spaced used in bytes
- uses the at_rest_total_bytes only for the disk space graph
- return summary_bytes as the average disk space used within the specified date
- updates the disk space graph header to "average disk space used this month"

The total disk used in the month is also displayed in B not B*day

Resolves https://github.com/storj/storj/issues/5355

Change-Id: I2cfefb0fe711f9c59de2adb547c4ab50b05c7cbb
2022-12-09 11:07:33 +00:00
Wilfred Asomani
66b4509276 web/satellite: use TableItem in FileEntry.vue
This change continues the update of the file browser to use the common table component.
It replaces the use of <tr>s with <table-item>.
It also removes bootstrap from the file browser and fixes resulting UI "bugs"

Issue: https://github.com/storj/storj/issues/5090

Change-Id: Idfe415e9338243ad4fcedc8a74621c9e13e1da29
2022-12-08 14:38:09 +00:00
Wilfred Asomani
bf106131b0 satellite/{web/payments}: show token balance on billing overview
This change shows STORJ token balance on the billing overview page instead of the Stripe balance it shows currently.
It changes the text on the "Available balance" card to reflect the new balance being displayed. Finally, it adds shortcuts to navigate straight to token history or add tokens modal when call to action on "Balance card"

Issue: https://github.com/storj/storj/issues/5204

Change-Id: Ic88e43c602e4949b6c6be4c7644c04f3c7d38585
2022-12-08 11:47:37 +00:00
Wilfred Asomani
91b551134d web/satellite: fix mobile header not visible on ios safari and chrome
This change fixes an issue where the navigation header will not show on iOS (safari and chrome).
This is apparently a known issue where the Webkit viewport height is taller than the visible viewport.
More information here; https://bugs.webkit.org/show_bug.cgi?id=141832 , https://stackoverflow.com/a/56671096

This change applies the fix on all iOS browsers (using Webkit) except for Firefox, in which this fix introduces a strange behaviour
when a virtual keyboard is opened and dismissed, while not solving the issue because it doesn't exist here.

Issue: https://github.com/storj/storj/issues/5153

Change-Id: I19fc8018012bb70a5eda3eb21d44bfeedd08411c
2022-12-07 20:21:00 +00:00
CatInAHatIsBack
7d200d3962
web/storagenode: fix bandwidth graph (#5020)
fixes #4951

Co-authored-by: Clement Sam <clementsam75@gmail.com>
2022-12-07 14:31:13 +01:00
Vitalii
9a0c2dd878 web/satellite: added manage passphrase modal
Added manage passphrase modal where user can create new, switch or clear their project level passphrase.
Removed debug buttons from navigation.

Issue:
https://github.com/storj/storj/issues/5325

Change-Id: I53f263a9697f197cee3f68634f5799d45b3eb193
2022-12-06 10:57:39 +02:00
Vitalii
b5aadff0f7 web/satellite: create project passphrase modal
Added create project passphrase modal.
User can select between generated and entered passphrase.

Issue:
https://github.com/storj/storj/issues/5324

Change-Id: I69887562230c7c8002e9bc763ac24c551a0caa1d
2022-11-30 10:39:18 +00:00
prerna-parashar
3fe6aee786
satellite/analytics: Added analytics to track project members addition/deletion (#5340)
satellite/analytics: Added analytics to track project members addition/deletion
2022-11-29 14:56:03 -08:00
Wilfred Asomani
2442ba415f satellite/{web,console}: token links expiry changes
This change reduces the token links expiry time from 24h to 30m and improves the UI to promt users of the expiration.

see: https://github.com/storj/storj-private/issues/17

Change-Id: Iac00f5740fa84069937fdf9bd30a739b6db2a9e0
2022-11-29 21:44:42 +00:00
Vitalii
ffd6ba8e9c web/satellite: add server-side encryption banner to new project dashboard
Added server-side encryption banner to new project dashboard (same as on buckets view).
Reduced notAfter AG caveat to 1 hour for deleting bucket.
Added bucket AG caveat for deleting bucket.

Change-Id: I2aba9e5db315123b8d37c24d80789320093db00e
2022-11-29 14:50:27 +00:00
dlamarmorgan
94dcfd77ee Revert "web/satellite: allow execute permissions on wasm_exec"
This reverts commit 9022506292.

Reason for revert: Execute permissions are not required for this file. The error "Uncaught DOMException: Failed to execute 'importScripts' on 'WorkerGlobalScope':" was instead caused by a browser cached version of import returning an incorrect response.

Change-Id: Ib5f6bf30dc5a9919bb7d71fb2b04075486c74f89
2022-11-23 20:26:07 +00:00
Jeremy Wharton
7a2be3e6f6 private/web,satellite/console/.../consoleapi: serve rate limiting errors as JSON
This change causes rate limiting errors to be returned to the client
as JSON objects rather than plain text to prevent the satellite UI from
encountering issues when trying to parse them.

Resolves storj/customer-issues#88

Change-Id: I11abd19068927a22f1c28d18fc99e7dad8461834
2022-11-23 17:56:07 +00:00
Vitalii
93bd1e2664 web/satellite: reworked bucket tables
Reworked bucket tables to be the same on buckets view and project dashboard.
Improved table adaptation.
User can open/delete bucket from project dashboard.
User can view bucket details from project dashboard.
User can search through buckets from buckets view.

Issues:
https://github.com/storj/storj/issues/5176
https://github.com/storj/storj/issues/5174

Change-Id: Ie4599ab62dc7eeba9a3349ab188cde8a198cc0f3
2022-11-22 17:49:54 +00:00
dlamarmorgan
9022506292 web/satellite: allow execute permissions on wasm_exec
Execute permissions are needed on the wasm_exec.js file but nothing seems to set this by default. Once set, it will keep permissions even after rebuilds, but this change will set the initial permissions if required for any new environments.

Change-Id: Ic6848e561210231e67dd2e17a286abdf885926ed
2022-11-21 11:20:53 -08:00
Wilfred Asomani
6c7f412124 web/satellite: fix pop up position on safari
This change fixes wrong positioning of pop ups (the bucket guide, and bucket item drop down) on Safari.

Change-Id: Ia0abcc1a1450cb21e38a435218fb6c788ce546e2
2022-11-21 13:49:05 +00:00
NickolaiYurchenko
c27563b519 web/satellite: analytics api calls moved to pinia store
Change-Id: Icb17f51f0ebe625fe639cc10f7ff077f68520313
2022-11-21 10:47:26 +00:00
Moby von Briesen
1b67983130 web/satellite: Fix filebrowser bugs in Firefox
When attempting to upload a file on Firefox mobile, an error
"item.webkitRelativePath is undefined" prevents the client from
proceeding with the upload after the file is selected. This commit
contains a small check to protect against this issue.

Additionally, in Firefox (desktop, maybe mobile), links in the file
browser to enter subfolders, exit subfolders, or navigate out of folders
via breadcrumbs has default behavior of navigating the user to an empty
page that only displays "null". This changes adds `@click.prevent` in
some key locations to prevent this undesired behavior.

Change-Id: I83ee6fcc5a7d0ce9996dacc3f966e38a4936a9fe
2022-11-18 17:57:23 -05:00
Jeremy Wharton
f84111ee69 web/satellite: prevent token card text from overlapping elements
This change resolves an issue where text inside the Billing page's
Storj Token card would appear over the project dropdown menu.
The issue was caused by using z-indexing to prevent an absolutely
positioned cosmetic element from displaying over its non-positioned
siblings. An alternate solution is presented in this change:
specifying a position for the non-cosmetic elements allows them to
display properly over preceding positioned elements without the usage
of z-indexing.

Resolves #5219

Change-Id: Icebbda33dcef9418020b025fe8ab3f461cd56533
2022-11-18 21:05:21 +00:00
Moby von Briesen
776f1128b3 web/satellite: project level passphrase vuex logic
Added new feature flag.
Reworked vuex logic to work properly with project level passphrase.
Implemented new simple set project level passphrase modal.

Issue:
https://github.com/storj/storj/issues/5280

Change-Id: I6a15e90ee9fa7aa8a09c67022466787090120f9c
2022-11-17 16:53:25 +00:00
Vitalii
28b4e57e9e web/satellite: fix upload buttons
Fixed upload buttons click in file browser for Safari

Change-Id: I9c6195fe231bd26eb9ce99f1f7a9d2073b8207bf
2022-11-17 15:24:08 +00:00
Wilfred Asomani
6fe89d5244 web/satellite: add a button to claim wallet from storjscan
Previously, a wallet is claimed automatically on opening the payment methods page.
This will result in users who may not even use the wallets claiming them.
This change introduces a button that will be clicked before a wallet is claimed.

Issue: https://github.com/storj/storj/issues/5326

Change-Id: Iab2020d80a30315b6b43ad93d33a984663770279
2022-11-17 14:47:57 +00:00
NickolaiYurchenko
5ef109f45a web/satellite: VTable default props console error fixed
Change-Id: I46bea6fd7a2d676f503747c9d9f25f87f394ec09
2022-11-17 14:44:10 +02:00
NickolaiYurchenko
3e5b527567 web/satellite: VSearchAlternateStyling, VTableCheckbox migrated to use composition api
tsc warnings fixed for defineProps and hooks

Change-Id: I09cebfc3a6a63e59465bb01f28a7de536254e78a
2022-11-16 10:44:17 +00:00
Malcolm Bouzi
e76915421d web/satellite: update all dropdown components to have the same interactions and states.
see: https://github.com/storj/storj/issues/5170

Change-Id: If0e85ca32e4b02c85c6d120bd383043c92c6db94
2022-11-14 15:47:39 +00:00
Wilfred Asomani
5c2b111347 web/satellite: filter out draft invoices
This change addresses an issue where draft invoices will be included with other ivoices by filltering them out. Clicking "Invoice PDF" on these entries will download an html page.

Issue: https://github.com/storj/storj/issues/5284
Change-Id: I15bc1f3641f01c33d2760c3118bc79d42f8755c7
2022-11-14 09:51:31 +00:00
Jeremy Wharton
5d4de3b751 web/satellite: properly position beta satellite checkbox
This change resolves an issue where an incorrect CSS class caused the
custom beta satellite checkbox to appear in the top-left corner
and the basic checkbox to appear in its place.

Change-Id: I5bea40a178c6657f4dea178799023ac35f78d76b
2022-11-11 15:41:54 -06:00
Malcolm Bouzi
3ae057261e web/satellite: make sure users are able to tab through all navigation dropdown items.
Change-Id: Ia6148d96cbe385e25bc1107b974288fb98000fe8
2022-11-09 20:15:07 +00:00
Vitalii
5f089873e0 web/satellite: fix auto open of first uploaded object preview
Fix for AHA moment when user uploads their first object in some particular bucket.

Change-Id: I3682762e6c73b10fd76e816bb752313bc735e9d2
2022-11-09 19:21:50 +00:00
Wilfred Asomani
bae4ee4c5f web/satellite: clear AB testing data on log out for mobile
this change adds a call to clear AB testing data for mobile screens on log out.
Currently, that data is cleared on only large screens; web/satellite/src/components/navigation/AccountArea.vue L156

Change-Id: I04508d33cf65a17d6ac0cc470811aa3bad04d80f
2022-11-09 18:24:55 +00:00
Jeremy Wharton
3c8facfe58 satellite/console,web/satellite: always notify when adding project members
Upon adding members to a project using the Add Team Member modal,
users are now notified that only email addresses belonging to an
account will receive a project invitation. This notification appears
regardless of whether every submitted email corresponds to an account.
Previously, users received an error message if any email address not
attached to an account was submitted.

Change-Id: Ia014c8311c1347e001b1c6c33de73ea61f20b0cb
2022-11-09 17:48:50 +00:00
Clement Sam
59b37db670 storagenode: overhaul QUIC check implementation
The current implementation blocks the the startup until one or none
of the trusted satellites is able to reach the node via QUIC.
This can cause delayed startup. Also, the quic check is done
once during startup, and if there is a misconfiguration later,
snos would have to restart to node.

In this change, we reuse the contact service which pings the satellite
periodically for node checkin. During checkin the satellite tries
pinging the node back via both TCP and QUIC and reports both statuses.
WIth this, we are able to get a periodic update of the QUIC status
without restarting the node.

Also adds the time the node was last pinged via QUIC to the tooltip
on the QUIC status tab.

Resolves https://github.com/storj/storj/issues/4398

Change-Id: I18aa2a8e8d44e8187f8f2eb51f398fa6073882a4
2022-11-09 03:15:57 +00:00
NickolaiYurchenko
3c8f68fed9 web/satellite: pinia package added
added to replace vuex in future
buckets, projects and users modules pinia analogues created
have no pretty and straight-forward ways to work with option api + ts files so it is better to use with composition api components

Change-Id: Ia8acc491c0e76e01bf6d533747d186257680e5c9
2022-11-08 11:22:58 +00:00
NickolaiYurchenko
8ebea4cf8d web/satellite: FileBrowser component migrated to use composition api
Change-Id: Id0bb007b790e0d2365eb78f2bc78f8c3da05bc70
2022-11-07 16:27:45 +00:00
Vitalii
a342edd1c2 web/multinode: fixed linter
Fixed web linter

Issue:
https://github.com/storj/storj/issues/5158

Change-Id: Ibc0b8e9f241e77e833645d9fa114bf5742c9f81c
2022-11-04 19:06:21 +00:00
Vitalii
8268933b56 web/storagenode: fix linter
Fixed web linter.

Issue:
https://github.com/storj/storj/issues/5158

Change-Id: Ia63e3e6e7352a99e902c9ed08a4bcfd75059e943
2022-11-04 18:32:26 +00:00
Clement Sam
10f59f8633 web/storagenode: update new suspension and audit threshold on dashboard
The new audit scoring sets disqualification threshold to <96:
https://forum.storj.io/t/new-audit-scoring-is-live/19466/24.

This changes applies this update to the dashboard,
same colors but different thresholds now:
<96 = disqualification
<99 = warning

previously:
<60 = disqualification
<95 = warning

Closes https://github.com/storj/storj/issues/5113

Change-Id: Iaf61e5034101fe5d4d70df6b72eb5f4ccb706e5b
2022-11-04 17:47:05 +00:00
Vitalii
7ac1e38e28 web/satellite: reworked new Add coupon modal to use common VModal component
Reworked new Add coupon modal to use common VModal component to improve UX.

Issue:
https://github.com/storj/storj/issues/5104

Change-Id: Idd186ffd30a529761d15052bee4fac7cee4f5814
2022-11-02 19:16:25 +02:00
Vitalii
7f285c2eee web/satellite: reworked old add coupon code modal to use common VModal component
Reworked old Add coupon code modal to use common VModal component to improve UX.

Issue:
https://github.com/storj/storj/issues/5104

Change-Id: I4e1b38cfa2a88bacb4bcc58b837bc5b4319aca3d
2022-11-02 19:04:49 +02:00
Vitalii
db864a8605 web/satellite: reworked delete bucket modal to use common VModal component
Reworked delete bucket modal to use common VModal component to improve UX.

Issue:
https://github.com/storj/storj/issues/5104

Change-Id: I74acd07a0cb3f7e0231f88bf1255de9ac000ace5
2022-11-02 19:04:49 +02:00
Vitalii
8152920a51 web/satellite: reworked share object modal to use common VModal component
Reworked share object modal to use common VModal component to improve UX.

ISSUE:
https://github.com/storj/storj/issues/5104

Change-Id: Ie07550bb3e116651b08721298994eb0c867cf6f4
2022-11-02 19:04:49 +02:00
Cameron
865974950d satellite/overlay: insert node online events into node events table
Instead of sending emails at the time the node is seen to be back
online, we have decided to send the event to the node events table,
which will initiate the email sending process at some point.

Change-Id: Id756209498112579de8e78ee20ad2df54571a617
2022-11-02 16:26:19 +00:00
Wilfred Asomani
4edef9e05c web/satellite: add AB test for new upgrade banner
This change adds AB testing for a new upgrade banner and sends a hit event when "Upgrade" is clicked.

Change-Id: Ie463e224af5b0cb74a601b68eedb2b34f9089fd7
2022-11-01 16:39:52 +00:00
Erik van Velzen
e09c8198d5 web/satellite/static/emails: set dcs support address
Helene: support@storj.io is for node operators. Support for DCS accounts
should go to supportdcs@storj.io.

Fixes https://github.com/storj/customer-issues/issues/354

Change-Id: Icfd437004defcee6d49f19e58bdea16e7e99b7d8
2022-11-01 00:06:24 +00:00
Clement Sam
d625eb85fd storagenode: use bytes instead of bytes*hour unit for used space graph
Closes https://github.com/storj/storj/issues/5146

Change-Id: I1b135da81a68193b5b50c761088d79471ca3a2fe
2022-10-28 18:42:45 +00:00
Malcolm Bouzi
c565c5e5fc web/satellite: update buckets page table to match designs.
see: https://github.com/storj/storj/issues/5175

Change-Id: I58de009f743196509ae39612a4201d36b7225e96
2022-10-28 10:09:24 -04:00
NickolaiYurchenko
d0cd39af7b web/satellite: session timer reset added while uploading files added
problem: when uploading large files we face a problem with session expire while waiting for file to upload
solution: added callback to progress event to reset session timer
timer is refreshed only when less than 3 min left

Change-Id: Ieab9250be61757762a884165902cd48f90048409
2022-10-28 09:23:50 +00:00
Lizzy Thomson
08052b38bd web/satellite: update date format
Update date range format to include abbreviated month name
Update correlated tests

Change-Id: I5772f4fbc1842c364efd34e2bcc4e37a81026326
2022-10-26 10:20:52 -06:00
Cameron
a2ca443e29 satellite/overlay: send Node Online emails
Send an email when a node goes from offline to online.

Change-Id: I82d3f9001b9b0669e096d784edf097ffdcb1697d
2022-10-20 18:56:35 +00:00
Wilfred Asomani
56128b972b web/satellite: clear payment account details on logout
this change clears the stored wallet, coupon and priceSummaryForSelectedProject on logout.

see: https://github.com/storj/storj/issues/5252

Change-Id: I2f51d727be97af9a0f26163bb3e93affa35dd2ee
2022-10-20 14:22:34 +00:00
Vitalii
149b59069f satellite/{web, console}: removed old object flow
Removed old flow along with a feature flag

Issue:
https://github.com/storj/storj/issues/5166

Change-Id: I85cfabbf94e910c9d5efb01ef850f6b888a13f71
2022-10-20 16:27:50 +03:00
NickolaiYurchenko
d6f8efb6e3 web/satellite: color palette added
colors moved from figma to style variables
colors from pallete changed from hex to use variables

Change-Id: I0a6adced8f598abc3e1102fcec68cf376ddb53cd
2022-10-19 11:16:26 +00:00
Yaroslav Vorobiov
34a88374fc web/satellite: remove add storj token deposit code
Removes unused front-end code to add storj token deposit since
coinpayments was disabled.

Change-Id: I4ce9a551727b523961e87307950125f69785b5d2
2022-10-17 14:27:43 +02:00
Wilfred Asomani
3acd133c55 web/satellite: change token payment link to etherscan
This change uses the more accurate "View on Etherscan" for storjscan transactions on the native payment history table.

see: https://github.com/storj/storj/issues/5249

Change-Id: I07ba88f63417bb6a95f50be8e54f6bf0e8a4bd95
2022-10-13 21:39:07 +00:00
Lizzy Thomson
419fb9cf20 web/satellite: update color and add y-axis on bandwidth graph
change color of bandwidth graph to match figma designs, remove text explaining limits, and add y axis to display on usage/bandwidth graphs

fixes https://github.com/storj/storj/issues/5200

Change-Id: I3c8d08a70bb5e99b7a91ca12678be8ca8ff0e6bf
2022-10-13 17:04:38 +00:00
Wilfred Asomani
fac638fc7d web/satellite: rewrite VInput with composition API
This change updates VInput with composition API, and fix resulting test failures.

see: https://github.com/storj/storj/issues/5115

Change-Id: Ic6870f4faef51de168ef077952b7ce6a39562e6e
2022-10-13 13:33:06 +00:00
Wilfred Asomani
b23b3e02e6 web/satellite: rewrite VButton with composition API
This change updates VButton with composition API, updates .eslintrc.js to ignore resulting import errors, and fix resulting test failures.

see: https://github.com/storj/storj/issues/5114

Change-Id: Iaf9e8323333c797936d3acb38dd32f6e27d1ed08
2022-10-13 12:54:39 +00:00
Cameron
98fed4bc30 {satellite/console,web/satellite}: get project salt from satellite
Add getSalt to projects api. Add action, GET_SALT, on Store
Projects module to make the api request and return the salt
string everywhere in the web app that generates an access grant.
The Wasm code which is used to create the access grant has been
changed to decode the salt as a base64 encoded string. The names
of the function calls in the changed Wasm code have also been
changed to ensure that access grant creation fails if JS access
grant worker code and Wasm code are not the same version.

https://github.com/storj/storj-private/issues/64

Change-Id: Ia2bc4cbadad84b066ca1882b042a3f0bb13c783a
2022-10-12 19:06:27 +00:00
Jeremy Wharton
1887660678 web/satellite: update custom HTML styling for registration page
Add styling for strong text in `customHtmlDescription` for
alternate signup landing pages in `registrationViewConfig`.

Change-Id: Ie688815713b84edb46532bc000152625ccb38ca7
2022-10-12 16:15:31 +00:00
Malcolm Bouzi
773683221d web/satellite: add right border to desktop navbar to match designs.
Change-Id: I62e473fd86e16eacec2f367d232fc9f99b2f5e66
2022-10-11 17:42:03 +00:00
Vitalii
2e6b473aba web/satellite: improved modal experience
Made modals to close on background click.
Refactored new folder and object details modals to use VModal component.

Change-Id: Ib7c6ecb576507f2088c0c90fab262113ac7c0760
2022-10-11 16:49:11 +00:00
Malcolm Bouzi
ff99392fd7 web/satellite: update bucket share modals to match designs
Change-Id: Ie4f5dc10c94c6b44c99380582741bf8d07b4ce22
2022-10-07 17:33:40 +00:00
NickolaiYurchenko
6884b587e3 web/satellite: limit warning banner for free tier users added
Shown only for free tier users.
Only appears at > 80% used storage or bandwidth (or both)
Different banner and modal styles for 100% used
Added resizable listener for banner

Change-Id: I29ac1777127155dab83b4eb113a1f033ea926524
2022-10-06 15:53:53 +00:00
Jeremy Wharton
480715e3b8 web/satellite: remove prefix from downloaded access grant contents
This change removes the "access grant:" prefix from the file contents
of access grants downloaded from the satellite UI. The prefix prevented
access grant files from being imported into uplink.

Resolves #5066

Change-Id: I879a3d2d6009f8ccd50351de79dc0a05df7b6810
2022-10-03 22:05:34 +00:00
Vitalii
509bb1aa01 web/satellite: optimized project selection
Optimized project selection API requests.
We make parallel requests where possible.
We fetch needed data depending on the current navigation route instead of fetching all the dashboard data.

Change-Id: Ideb5de52cccdb5a73d53422b8f982111e211a714
2022-10-03 15:06:58 +00:00
Wilfred Asomani
05e57edb20 web/satellite: see token payments history
This change lists token payment histories from storjscan/coinpayments on the "Payment Methods > Storj Tokens" page

see: https://github.com/storj/storj/issues/4941

Change-Id: I178ba7940c4cb132f05673607030725a4c4b3e1c
2022-09-30 16:44:47 +00:00
Jeremy Wharton
fe3aedebe8 web/satellite: move mobile Billing nav item into My Account dropdown
This change moves the top-level Billing navigation item into the
My Account dropdown menu in the mobile view to match the behavior of
the desktop view.

Change-Id: Ibb192ec0d34e98851193efb28280bea90fa58302
2022-09-29 19:39:38 +00:00
Vitalii
92b25c8c96 web/satellite: added server-side encryption step for create S3 creds flow
Added server-side encryption step to create s3 credentials flow.
Reworked create access grant modal to use new VModal common component.

Issue:
https://github.com/storj/storj/issues/5119

Change-Id: Ie13fef80ced7a0330d87afe757813f35dab1c072
2022-09-29 13:46:46 +00:00
prerna-parashar
94c5aaf70e
satellite/analytics: Added analytics for user behavior on Billing page (#5205)
* Added analytics for Billing page

* Fixed Jenkins errors

* Fixed lint errors

* Fixed Lint errors

* Fixed Lint errors

Co-authored-by: Maximillian von Briesen <mobyvb@gmail.com>
2022-09-29 09:20:24 +03:00