Because:
* Reorganize checkout pages to include intent and cartId in path, and
allow for landing page.
This commit:
* Reorganizes checkout pages
* Add checkout landing page
* Add getLocaleFromRequest and update l10n locale logic
Closes #FXA-7804
Because:
* Offering comparison in the eligibility manager incorrectly indicates
a downgrade if the difference between the target and source index
is greater than 1, which can happen for subgroups with multiple
offerings.
This commit:
* During offering comparison, if the difference between target and
source index is positive, return UPGRADE, for values that are the same
return SAME, and negative values return DOWNGRADE.
Closes #
Because:
* Want to track number of requests and timings of those requests made
to contentful.
This commit:
* Adds event emitter to Contentful Client, similar to PayPal Client.
* Add statsd to Contentful Manager to to track requests timings on
contentful client event.
Closes #FXA-9031
Because:
* Want to migrate Nx to latest
This commit:
* Migrate nx to 18 using nx cli migrate latest
* Readd a few dev dependancies back into packages/**/package.json
* Behavior of `npx nx...` commands seems to have changed, resulting in
multiple "command not found: <library>" errors, where <library>
refers to libaries used in packages/**/package.json scripts, such as
tailwindcss, tsc-alias, nx, etc.
* Updates nx cache location for Circle CI
Closes #FXA-8880
Because:
* Need to remove customers and related subcollections, from firestore,
for customers already deleted in FxA.
This commit:
* Adds a script that parses through all Firestore customer records, and
checks if the customer has a valid FxA account. If not, the uid is
added to the delete account cloud task queue, for deletion.
Closes #FXA-8969
Because:
* A mismatch was occurring between Stripe and Contentful capabilities due to the latter not being marked as required.
This commit:
* Updates Capability and Service to required to ensure items are populated before publishing.
Relates to FXA-9052
Because:
* Sentry is throwing an undefined error when `items` are missing.
This commit:
* Validates that `capabilitiesCollection` items and `servicesCollection` items are populated or returns an empty array.
* Adds additional tests to check that both collections are populated.
Closes FXA-9052
Because:
* Monitor is rebranding
This commit:
* Update all references and l10n strings and terms from Firefox Monitor to Mozilla Monitor
* Update link to monitor's site
Closes #FXA-9036
Because:
* Some RPs (currently only Moz Social) would like to know if users were at least 18 at time of account registration to prevent asking users a second time if we've already confirmed at COPPA check that they are at least 18
This commit:
* Adds a new atLeast18AtReg column in the account database, with default set to null for existing accounts
* At account registration via backbone or React, checks if the submitted age is at least 18 and store the response as a boolean value (we do not store the exact age)
* Makes this value available to RPs at the v1/profile endpoint via account/profile
Closes #FXA-8751
Because:
* Async function in render logic caused hydration error on page refresh
This commit:
* Remove async from `getFormatedMsg` wrapper function
Closes #FXA-8852
Because:
- We want to add support for up coming changes to key stretching in the auth server first
- We want to ensure all changes are backwards compatible
This Commit:
- Updates test to use approach for the client side stretch where:
- Stretch uses 650k iterations
- Client salt uses random value instead of user's original email
- Updates tests to run using both V1 and V2 credentials
- Updates database to support new columns for housing V2 credentials
- Updates account models accordingly
- Adds statsd metrics to track use of v2 credentials
- Updates CI tests to run remote integration tests for V2 credentials
Because:
* The Contentful content is fetched for only one locale, however the
comparison logic was comparing it against all plan's for all "locales"
configured for a product.
This commit:
* Updates the error reporting to only include 1 error message per ID.
Typically this will be a Stripe product ID.
* Adds the request acceptLanguage to Sentry context, so that it is
easier to identify which language the comparison was done for.
Closes #FXA-8856
Because:
* Update ContentfulManager method to account for zero results returned
by Contentful query.
This commit:
* Updates while loop condition
Closes #FXA-8865
Because:
* Queries were exceeding complexity and throwing errors in Sentry.
This commit:
* Reduces complexity of the affected query.
* Adds `total` and pagination.
Closes FXA-8747
Because:
* We want SP3 to have a soild foundation, consistency, and organization.
This commit:
* Moves `purchaseWithDetailsQuery` and 'offeringQuery' into their own directories.
* Moves related content into respective directories and updates paths.
* Updates types and factories where applicable.
Because:
* We want to use the latest graphql dependency
This commit:
* Updates GQL dep and all packages relying on it
* Moves some dependencies to root package.json
* Removes a couple of deps we aren't using
* Addresses breaking changes, updates related tests and mocks
* Fixes type errors
* Prettifies contentful autogenerated files
closes FXA-8489
Co-authored-by: Ben Bangert <100193+bbangert@users.noreply.github.com>
Co-authored-by: Julian Poyourow <julianpoyo@gmail.com>
Co-authored-by: Reino Muhl <reino.muhl@gmail.com>
Because:
* We've had numerous problems with Apollo Client server-side (it's intended as a frontend client, mostly for React).
This commit:
* Replaces Apollo Client with graphql-request for server-to-server graphql requests in the Contentful lib.
Closes FXA-8645
Because:
* The GET /plans API is used in multiple places to retrieve the relying
party configuration data currently configured in Stripe.metadata
This commit:
* Updates the logic used by the GET /plans API to retrieve the relying
party configuration data from Contentful, with Stripe.metadata as a
fallback
* Reports a Sentry error when the Contentful configuration data does not
match the Stripe.metadata
Closes #FXA-8538
Because:
* Branding should not have multiple translations and the same terms should be used across FxA and SubPlat.
This commit:
* This reduces clean up, potential translation duplication, and improves maintenance of branding.
Closes FXA-8403
Because:
* We want to use the new eligibilitymanager in the capability service
and compare its results to the existing check, reporting any
differences in the eligibility comparison.
This commit:
* Adds the eligibility manager to the capability service.
* Adds a wrapper to the results of the elgibility call to verify it
matches the existing comparison, and report to Sentry if it doesn't.
Closes FXA-8273
Because:
* The main factories file was getting a bit out of hand and separating them keeps everything more organized.
This commit:
* Moves eligibility and services factories into their own directories.
* Updates factories that include more than the single override parameter.
* Updates paths where applicable.
* Updates tests where applicable.
* Adds missing tests for planIdsToClientCapabilities
Closes FXA-8621
Because:
* We want to fetch the list of capabilities for the given plan ids.
This commit:
* Adds planIdsToClientCapabilities method to the capability manager.
Closes FXA-8240