Commit Graph
6797 Commits
Author SHA1 Message Date
Kyle Hickinson f4b1d75f83 [iOS] Add ability to enable Brave admin policies on iOS (#30089)
* [iOS] Add ability to enable Brave admin policies on iOS

This change also adds the an example of handling the BraveWalletDisabled policy

* fixed code checks

* update property name; bump to cr139 min; other review feedback

* remove patch, update override

* remove unused DEPS file

* update wallet policy unit test since ios now runs component unit tests

* re-add android buildflag check to brave_wallet IsDisabledByPolicy
2025-08-05 20:45:34 +01:00
Max Karolinskiy 1a708d6a9f Fixes ProfileMenuView override. (#30386) 2025-08-05 10:59:33 -07:00
cdesouza-chromium 468ce215b7 [CodeHealth] IWYU for absl::StrFormat (#30441)
This PR runs a mechanical change to do IWYU on all files using the new
abseil functions, while also removing the old header inclusions for
`base::StringPrintf`.

A presubmit `BanRule` is also being added for the `base::` functions.

Resolves https://github.com/brave/brave-browser/issues/48143
2025-08-05 18:20:12 +01:00
cdesouza-chromium 5eb666f034 [CodeHealth] Run gn format on all files (#30448)
This PR is the run of `gn format` on all `gn` files. This is a
mechanical change done with:

```sh
git ls-files -- "*.gn" | xargs gn format
git ls-files -- "*.gni" | xargs gn format
```

This change has been motivated primarily by an improvement to the
formatters privided by `gn` correcting cases of redundant target naming,
i.e cases where `//foo:foo` is used, and should just be `//foo`.

For this particular `gn` change, see:
https://chromium.googlesource.com/chromium/src/+/c822490a82cdb6ad479159683a92858f7c6f0a58

Resolves https://github.com/brave/brave-browser/issues/48161
2025-08-05 18:08:10 +01:00
Aleksei Khoroshilov 52c7ff1dee Remove Page graph build dependency on args.gn (#30436)
* Expose page graph gn args via a separate file.

* Replace py patch with chromium_src patch.
2025-08-05 19:31:07 +07:00
Sangwoo Ko 4ea7300593 [Split View]Fix cookie sharing in split view context menu with proper SameSite handling (#30390)
Fix cookie sharing in split view context menu with proper SameSite handling

This commit addresses cookie sharing issues when opening links in split view
via context menu by implementing proper initiator handling to respect
SameSite cookie attributes.

Key changes:

Cookie Security Fix:
- Modified "Open link in split view" context menu to use OpenURLParams with
  proper initiator context instead of simple GURL
- Ensures SameSite=Strict cookies are not shared across different origins
  when opening links in split view from context menu with test coverage

Implementation Details:
- Extended OpenLinkInSplitView() function signature to accept full
  OpenURLParams instead of just GURL
- Previously, we opened a empty tab and then navigation was performed.
  This is suspected to be the cause of cookie sharing issues, as we don't
  give any hint about initiator.

Resolves https://github.com/brave/brave-browser/issues/47642
2025-08-04 09:30:49 +09:00
Brian Johnson f6035f6ca4 hardcode "chrome-untrusted" to fix ios laying violation (#30420) 2025-08-01 09:33:20 -07:00
cdesouza-chromium c100289833 [CodeHealth] Remove uses of base::StringPrintf pt.4 (#30395)
This PR has additional replacements for base::StringPrintf with the
underlying abseil implementation absl::StrFormat.

This is mostly a mechanical change.

Resolves https://github.com/brave/brave-browser/issues/48076
2025-08-01 12:06:49 +01:00
Brian Johnson 165e7052a7 Fix laying violation for ios/web -> brave/ios/browser (#30414) 2025-08-01 14:44:28 +09:00
Szilard Szaloki d07fb818dc Brave Account section in Android settings. (#30354) 2025-07-31 15:31:35 -05:00
Brandon-T 9fd9ae22be [iOS] - Fix Tab Group syncing crash when syncing tab groups from Desktop (#30313) 2025-07-31 10:09:51 -04:00
Agustín Ruiz be7082653f Increase maximum amount of custom images to 48 - Update Settings top bar design (#30286)
* Increase maximum amount of custom images to 48

* Update Settings top navigation to match latest designs

* Use correct tokens

* Update styles to use the right tokens

* Updated styling of top bar

* remove shadow from active state
2025-07-31 08:04:12 -03:00
Kamil Jozwiak e137f7fe13 Upgrade from Chromium 139.0.7258.52 to Chromium 139.0.7258.66. (#30375)
<!-- Add brave-browser issue below that this PR will resolve -->
Resolves https://github.com/brave/brave-browser/issues/48048

<!-- CI-related labels that can be applied to this PR:
* CI/run-audit-deps (1) - check for known npm/cargo vulnerabilities
(audit_deps)
* CI/run-network-audit (1) - run network-audit
* CI/run-upstream-tests - run Chromium unit and browser tests on Linux
and Windows (otherwise only on Linux)
* CI/run-linux-arm64, CI/run-macos-x64, CI/run-windows-arm64,
CI/run-windows-x86 - run builds that would otherwise be skipped
* CI/skip - do not run CI builds (except noplatform)
* CI/skip-linux-x64, CI/skip-android, CI/skip-macos-arm64, CI/skip-ios,
CI/skip-windows-x64 - skip CI builds for specific platforms
* CI/skip-upstream-tests - do not run Chromium unit, or browser tests
(otherwise only on Linux)
* CI/skip-all-linters - do not run presubmit and lint checks
* CI/storybook-url (1) - deploy storybook and provide a unique URL for
each build

(1) applied automatically when some files are changed (see:
https://github.com/brave/brave-core/blob/master/.github/labeler.yml)
-->

<!--
## Checklist:

- Review design docs
[Browser design
principles](https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/chrome_browser_design_principles.md)
[Style
guide](https://chromium.googlesource.com/chromium/src/+/main/styleguide/c++/c++.md)
[Core principles](https://www.chromium.org/developers/core-principles/)
- Ensure there are
(tests)[https://www.chromium.org/developers/testing/]. Unit test as much
as possible (including edge cases), but also include browser tests
covering high level functionality.
- Ensure that there are comments explaining what classes/methods are/do.
The "why" is often more important than the "what" in comments. Also
update any relevant docs (moving docs from wiki to brave-core if
necessary).
- Request security or other review (third-party libraries, rust code,
etc...) if applicable [security/privacy review is
needed](https://github.com/brave/brave-browser/wiki/Security-reviews)
[other review](https://github.com/brave/reviews/issues/new/choose)
Also see [adding third-party
libraries](https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/adding_to_third_party.md)
for general guidelines on using third party code
- Maks sure there is a
[ticket](https://github.com/brave/brave-browser/issues) for your issue
- Use Github [auto-closing
keywords](https://docs.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue)
in the PR description above
- Write a good [PR/commit
description](https://google.github.io/eng-practices/review/developer/cl-descriptions.html)
- Squash any review feedback or "fixup" commits before merge, so that
history is a record of what happened in the repo, not your PR
- Add appropriate labels (`QA/Yes` or `QA/No`; `release-notes/include`
or `release-notes/exclude`; `OS/...`) to the associated issue
- Checked the PR locally:
* `npm run test -- brave_browser_tests`, `npm run test --
brave_unit_tests`
[wiki](https://github.com/brave/brave-browser/wiki/Tests)
* `npm run presubmit`
[wiki](https://github.com/brave/brave-browser/wiki/Presubmit-checks),
`npm run gn_check`, `npm run tslint`
- Run `git rebase master` (if needed)
-->
2025-07-30 21:43:38 -04:00
Brian R. Bondy 9395f30fbe Hide web3 related things when Wallet policy is disabled (#30139) 2025-07-30 21:19:55 -04:00
Jocelyn Liu ca8b0a66b5 Fix Leo right-click actions not working in PDF (#30357)
Currently when trying to do right-click actions in PDF, it would fail
silently because it can't get a tab helper due to tab_helper won't be
installed in guest WebContents (PDF plugin). embedder_web_contents
should be used instead to access the tab helper, which is done in this
PR.

This PR also makes a change to not try rewrite-in-place for PDF case.
Current impl doesn't work for PDF since web_contents.Replace doesn't
work, so we should just go for regular panel operation in this case for
now.

Also, when error happens, we currently try to open AI chat panel using
source_web_contents_, which is incorrect, it should be
embedder_web_contents_. However, in this PR, we just won't go into
rewrite-in-place code path for PDF cases, hence no need to change
source_web_contents_ to embedder_web_contents_ inside this path.

Test coverage are also improved for both PDF and non-PDF cases.
2025-07-31 09:21:12 +09:00
Sangwoo Ko 96158036be Make PermissionPromptBubble always on top (#30359)
Sets the zorder for permission prompt bubble to kSecuritySurface, so that it
appears above other UI elements even they are floating on top.For example,
Picture-in-Picture window is on top of other widgets, but permission prompt
bubble should still be on top of it.
2025-07-31 06:34:10 +09:00
Jay Harris c382d3cad0 [AI Chat]: Clean up the lifecycle of the AssociatedContentDelegate (#30255) 2025-07-31 08:49:46 +12:00
Max Karolinskiy 4fcf39ee58 Update from Chromium 139.0.7258.52 to Chromium 139.0.7258.66. 2025-07-30 16:45:30 -04:00
cdesouza-chromium ca8784e8ab [codehealth] Migrate to v8::Isolate::GetCurrent (#30366)
Those methods just return the value from TLS and do not read from the
object any more. Hence they should be replaced by
`v8::Isolate::GetCurrent()`.

Resolves https://github.com/brave/brave-browser/issues/48040
2025-07-30 22:39:55 +02:00
Max Karolinskiy 1c0bd5840c [Linux] Fixes search engines not persisting for locale. (#30319)
* [Linux] Fixes search engines not persisting for locale.

On Linux, unlike other platforms, RegionalCapabilitiesServiceClientLinux::FetchCountryId
only relies on variations service to retrieve the locale. On the initial run, there's no
valid locale set from the variations service and the regional capabilities service falls
back on the device locale. On the consecutive runs the locale is retrieved from the
variations service and causes the search engines selection to change as well. This makes
little sense since the user would likely prefer to retain the same set of search engines
regardless of their physical location.

This change overrides RegionalCapabilitiesServiceClientLinux::FetchCountryId to use the
platform-neutral implementation in RegionalCapabilitiesServiceClient that gets the locale
from the device.

* Disable failing upstream tests.
* Add a browser test to check capabilities service uses device locale.
2025-07-29 13:34:11 -07:00
Simon Hong 18e5e06671 Fixed WDP Infobar is not rendered properly (#30329)
Resolves brave/brave-browser#47836

WebDiscoveryInfoBarContentView should be the direct children as it occupies whole InfoBarView bounds.
Upstream prevent to call AddChildView() from InfoBarView's sub class. but we need it.
Fixed by using friend class WebDiscoveryInfoBarContentView.

TEST=WebDiscoveryTest.InfobarAddedTest
2025-07-29 21:29:58 +09:00
Sangwoo Ko df7a753942 [Customize Chrome] Add Brave Rewards to toolbar customization panel in new "Url bar" category (#30227)
This commit extends the toolbar customization feature to support 
Brave Rewards placement in the url bar by introducing a new "Url bar" category 
and implementing the necessary infrastructure.

Key changes:
- Add new "Url bar" category (CategoryId::kUrlBar) to organize url bar-specific actions
- Implement kShowReward action for toggling Brave Rewards visibility
- Integrate Brave Rewards with existing preference system (brave_rewards::prefs::kShowLocationBarButton)
- Add dynamic category management that only shows "Url bar" category when 
Brave Rewards is supported for the current profile

Technical implementation:
- Extended customize_toolbar.mojom with new ActionId::kShowReward and 
  CategoryId::kUrlBar enums
- Implemented AppendBraveSpecificCategories() function to conditionally 
  add Url bar category based on Brave Rewards availability
- Enhanced list action modifiers to handle URL bar actions alongside existing 
  navigation actions
- Added comprehensive unit tests covering both enabled and disabled states
   for Brave Rewards

<!-- Add brave-browser issue below that this PR will resolve -->
Resolves https://github.com/brave/brave-browser/issues/47820

<img width="332" height="189" alt="image" src="https://github.com/user-attachments/assets/af8b7b9b-03e2-4451-8a34-df6ae797cce6" />
2025-07-29 07:26:53 +09:00
cdesouza-chromium 0e01cb87cc [Reapply][msan] Fix uninitialised read caused by SetCookieInfo (#30305)
- Revert notes

The original change was having no effect because we were subclassing
`PageInfoCookiesContentView`, in order to avoid patching, however
`PageInfoCookiesContentView` does virtual dispatch calls in its
constructor, and in such cases the derived implementation is entirely
ignored.

This change corrects this issue with a combination of a patch and
overrides now. Additionally, tests are being added to confirm that the
changes work correctly.

Finally, a dangling pointer case was detected and also corrected.

Revert: https://github.com/brave/brave-core/pull/30276

Original desc:

This override was doing a copy of the value passed in, `cookie_info`,
and then changing the value of one of the fields to `kHide`, in order to
make things work properly for the rest of the things done by the
override, and avoid a `CHECK`. The issue here is that `cookie_info` is a
`const` reference, and `cookie_info` have a copy constructor, so the
fields were being copied manually. This worked for a short time, until
other fields were added to this struct, with some being uninitialised.

This change removes the whole copying of this type, as that is
bug-prone, with new fields being added, and rather overrides
`SetThirdPartyCookiesInfo` to always bail out, as this is the actual
effect we are looking for by mutating the value of `cookie_info`.
`SetThirdPartyCookiesInfo` is only used by `SetCookieInfo` in fact.

Resolves https://github.com/brave/brave-browser/issues/47875
2025-07-28 11:26:15 +01:00
Darnell Andries 2757c92db1 Toggle P3A component updater registration depending on opt-in status (#30021)
* Toggle P3A component updater registration depending on opt-in status

* Pass component update service to P3AService::Init on iOS
2025-07-25 12:31:10 -07:00
Kamil Jozwiak 2e92ee48c1 Merge pull request #30246 from brave/139.0.7258.52
Upgrade from Chromium 139.0.7258.42 to Chromium 139.0.7258.52.
2025-07-25 11:59:11 -04:00
Simon Hong 92257936ed Reload only active split tab (#30269)
Resolves brave/brave-browser#47896

Reload button reloads tabs that currently selected tabs.
With SideBySide, all split tabs(left & right) are added in selected tab when it's activated.
So, both split tabs are all reloaded. But we only want to reload active split tab.
It's difficult to touch selection model because it's related whole split tabs behavior.
To resolve this, inactive split tab is removed from selected tabs in chrome::ReloadInternal()
when only that split tabs is selected.

TEST=SplitViewWithTabDialogBrowserTest.SplitViewReloadTest
2025-07-25 21:15:35 +09:00
Sangwoo Ko 5a7320f419 [Tree Tabs] Introduce TreeTabNode (#30171)
As a first step towards implementing tree tabs, this commit introduces 
the `TreeTabNode` class. This class extends the `TabCollection` interface
and represents a node in a tree structure of tabs. It can hold a current
tab and supports child collections, such as other `TreeTabNode`, 
`TabGroupTabCollections`, and `SplitTabCollections` recursively.

<!-- Add brave-browser issue below that this PR will resolve -->
Resolves https://github.com/brave/brave-browser/issues/47695
2025-07-25 20:32:08 +09:00
Simon Hong c314b45cfd Handle ReaderModeToolbar with SideBySide (#30149)
Resolves brave/brave-browser#46491

When SideBySide is enabled, BraveMultiContentsView owns each contents views(BraveContentsContainerView).
BraveContentsContainerView covers whole each split view area and it controls split view activation border.
So, ReaderModeToolbarView also should be included in BraveContentsContainerView.
As this is same behaviour with our split view implementation, existing test case can verify this PR's change.

TEST=SpeedReaderWithSplitViewBrowserTest.*
2025-07-25 09:45:11 +09:00
Brian Johnson 181d7e17e1 Cleanup some incorrect usage of //extensions/common from android and ios (#30251) 2025-07-24 16:26:36 -07:00
cdesouza-chromium 8446dee720 Revert "[msan] Fix uninitialised read caused by SetCookieInfo (#30238)" (#30276)
This reverts commit c1a4121919.
2025-07-24 23:07:41 +01:00
cdesouza-chromium 77e0ce9527 [ubsan] Fix uninitialised read in BraveGCMDriverDesktop (#30252)
This change fixes an uninitialised read in `BraveGCMDriverDesktop`, as
the `enabled_`, which can happen to be read in some cases.

Resolves https://github.com/brave/internal/issues/1368
2025-07-24 17:47:18 +01:00
Pavel Beloborodov b0630cedf9 Preparing extensions mv2 settings import implementation. (#30233)
* Preparing extensions mv2 settings import implementation.

Brave-hosted extensions metadata is moved to brave_hosted_extensions.h/.cc
Feature declaration is moved to features.h/.cc, introduced three feature params.
2025-07-24 17:51:26 +07:00
Aleksei Khoroshilov a41bf5350b Replace "src/" includes with <> in chromium_src. (#30096)
This change updates how brave/chromium_src overrides can reference original files: it adds ability to use #include <...> along with #include "src/...". This is enabled by replacing -I../../brave/chromium_src with -iquote../../brave_chromium_src, which adds an include search path only for #include "..." directives.

With this approach, other files in the build tree can reference brave/chromium_src overrides using #include "...", while the overrides themselves can reference original Chromium files using #include <...>. Since Chromium uses #include "..." for all in-tree files, we can leverage this convention and configure our overrides so that we can drop support for #include "src/" later by removing -I../../.. and making rbe_exec_root modification obsolete (the main goal).
2025-07-24 17:37:44 +07:00
Sangwoo Ko 7523c25f96 [Download Bubble] Add quick action to delete downloaded item (#30069)
This commit introduces a new quick action button that allows users to delete
downloaded files directly from the download bubble interface. The feature
provides a more convenient way to manage downloaded files without requiring
users to navigate to the file system or open another UI.

- Add BraveDownloadCommands class extending DownloadCommands with two Brave
  commands:
  - kRemoveFromList: Removes item from download list (file remains on disk)
  - kDeleteLocalFile: Deletes file from disk and removes from list
- Implement command handling in DownloadBubbleUIController to process the new
  delete actions
- Update DownloadItemModel to support the new delete functionality
- Add UI integration in DownloadBubbleRowView to display the delete quick action
- Add comprehensive unit tests for the new functionality
- The delete quick action is conditionally shown based on download state

<!-- Add brave-browser issue below that this PR will resolve -->
Resolves https://github.com/brave/brave-browser/issues/35432
2025-07-24 13:13:27 +09:00
cdesouza-chromium c1a4121919 [msan] Fix uninitialised read caused by SetCookieInfo (#30238)
This override was doing a copy of the value passed in, `cookie_info`,
and then changing the value of one of the fields to `kHide`, in order to
make things work properly for the rest of the things done by the
override, and avoid a `CHECK`. The issue here is that `cookie_info` is a
`const` reference, and `cookie_info` have a copy constructor, so the
fields were being copied manually. This worked for a short time, until
other fields were added to this struct, with some being uninitialised.

This change removes the whole copying of this type, as that is
bug-prone, with new fields being added, and rather overrides
`SetThirdPartyCookiesInfo` to always bail out, as this is the actual
effect we are looking for by mutating the value of `cookie_info`.
`SetThirdPartyCookiesInfo` is only used by `SetCookieInfo` in fact.

Resolves https://github.com/brave/brave-browser/issues/47875
2025-07-24 03:03:16 +01:00
Max Karolinskiy fddbb986dc Update from Chromium 139.0.7258.42 to Chromium 139.0.7258.52. 2025-07-23 16:53:21 -04:00
vadims c1933020e0 Refactoring of the PSST feature
It is first stage of the PSST feature implementation. The main goal
was to make the existing code ready to the next implementation
steps and be consistent with feature requirements.

Resolves: https://github.com/brave/brave-browser/issues/46045

---------

Signed-off-by: Vadym Struts <vstruts@brave.com>
2025-07-23 21:45:51 +02:00
Michael Herrmann b4a523923b Fix Omaha 4 build (#30228)
`npm run build -- Release --target=chrome/updater` gave:

ninja: error: '../../brave/app/theme/chromium/mac/app.icns', needed by
'phony/chrome/updater/mac/updater_app_icon', missing and no known rule
to make it
2025-07-23 19:18:14 +02:00
Sangwoo Ko 0cb83938f7 [Customize Chrome] Change l10n string in "Customize Toolbar" side panel (#30225)
Changes the second section's label from "Brave Menu" to "Toolbar" in the 
"Customize Toolbar" side panel.

<!-- Add brave-browser issue below that this PR will resolve -->
Resolves https://github.com/brave/brave-browser/issues/47867

<img width="662" height="1230" alt="image" src="https://github.com/user-attachments/assets/52cce636-5a77-4c1b-aa59-3b65dcf3823b" />
2025-07-23 07:00:16 -07:00
Simon Hong f6ca5ecd3e Refactoring BraveMultiContentsView (#30220)
Resolves brave/brave-browser#47856

No functional changes.
As upstream makes ContentsContainerView handle border, we also should follow in that way.
BraveContentsContainerView will update border/radius.
So, we don't need to change MultiContentsView::Layout() because we updated it to apply custom border/radius.
It's BraveContentsContainerView's job.

Existing test can cover this changes. - SideBySideEnabledBrowserTest.BraveMultiContentsViewTest
2025-07-23 18:35:54 +09:00
Pavel Beloborodov 6ae5588438 navigator.share API is disabled in Tor windows on Mac. (#30098)
* navigator.share API is disabled in Tor windows on Mac.
2025-07-23 15:50:09 +07:00
Jay Harris 3c9feb569b [Profiles]: Fix profile picker buttons (#30215) 2025-07-23 14:52:21 +09:00
Jay HarrisandSimon Hong 245015c1cc [Nala]: MdTextButton themes (#29983)
---------

Co-authored-by: Simon Hong <shong@brave.com>
2025-07-23 09:05:01 +12:00
Max Karolinskiy 4456dd77b9 Disable aimode search keyword (#30137)
* Move overrides of default pref values to a function.
* Disables aimode keyword search via policy.
* Disables aimode in settings and omnibox.
* Disables failing upstream unit test.
2025-07-22 07:26:01 -07:00
Francois Marier 1d11e3a26b Treat .onion as a secure context for insecure form warnings and autofill
Fixes brave/brave-browser#44802
2025-07-18 21:45:17 -07:00
cdesouza-chromium 900ccbe34f [RELAND][bedrock] PlaylistSidePanelCoordinator as a browser window feature (#30129)
Reland Notes: This PR was reverted because
`SidePanelUtil::PopulateGlobalEntries` was CHECKing for the coordinator
pointer, however we do not create the coordinator for popups or desktop
PWAs. This reland corrects that, adds test to cover that case, and also
guard the creation of the coordinator behind the playlist feature flag.

This PR converts `PlaylistSidePanelCoordinator` to a browser window
feature. This means abandoning the use of `BrowserUserData` for it,
and applying the principle outlined for these types of components in
https://chromium.googlesource.com/chromium/src/+/main/docs/chrome_browser_design_principles.md

Additionally, this change does away with PlaylistSidePanelWebView, as
it was merely a think layer over the base class, providing a WeakPtr
member. The base class itself, SidePanelWebUIView, has a weak ptr
factory that we could expose if we really need that type of semantics,
however for the use in this coordinator, it doesn't seem to be the case
that we need weak ptr semantics when there is in fact an observer for
the views life time, which can easily be used to reset the pointer to
the view.

Most Browser* layer violations have been correct, although there should
be a follow up to entirely remove Browser* and similar uses of
GetBrowserForMigrationOnly, by properly correcting the access to
BrowserView in other places.

Resolves https://github.com/brave/brave-browser/issues/47604
2025-07-18 22:23:03 +01:00
Claudio DeSouza 58e7750df5 Update from Chromium 139.0.7258.32 to Chromium 139.0.7258.42. 2025-07-17 21:42:39 +01:00
cdesouza-chromium 640b6e2aa1 [json64] Fix broken header guard (#30100)
This header guard started failing recently. Maybe something changed
since M139, but it is not very clear what happened. This change corrects
the presubmit warning with the expected value.
2025-07-17 20:38:26 +01:00
Max Karolinskiy 96fcfe331a [PRESUBMIT] Adds filter to CheckOverrides check. (#30105)
Without the filter, the default chromium filters appear to be used which
filter out chromium_src/third_party directory.
2025-07-17 12:18:48 -07:00
Max Karolinskiy 9771f5d58d Disables Amount Extraction Heuristic Regexes component. (#30080)
[cr139 follow up] Disables Amount Extraction Heuristic Regexes component.

This component is only used for Buy Now Pay Later, which we disable.
2025-07-17 07:04:20 -07:00