diff --git a/tools/eslint-excludelist.json b/tools/eslint-excludelist.json index fe51488c7066..8d2d89111769 100644 --- a/tools/eslint-excludelist.json +++ b/tools/eslint-excludelist.json @@ -1 +1,203 @@ -[] +[ + "projects/js-packages/components/components/button/index.tsx", + "projects/js-packages/components/components/pricing-card/index.tsx", + "projects/js-packages/components/components/upsell-banner/index.tsx", + "projects/js-packages/connection/components/connect-button/index.jsx", + "projects/js-packages/connection/components/connect-screen/basic/visual.tsx", + "projects/js-packages/connection/components/connect-screen/required-plan/visual.jsx", + "projects/js-packages/connection/components/manage-connection-dialog/index.jsx", + "projects/js-packages/partner-coupon/components/redeem-partner-coupon-post-connection/index.jsx", + "projects/js-packages/partner-coupon/components/redeem-partner-coupon-pre-connection/index.jsx", + "projects/js-packages/scan/src/components/threat-modal/threat-fix-details.tsx", + "projects/packages/activity-log/src/js/components/ActivityLog/ActivityActor.tsx", + "projects/packages/activity-log/src/js/components/ActivityLog/ActivityEvent.tsx", + "projects/packages/activity-log/src/js/components/ActivityLog/UpsellCallout.tsx", + "projects/packages/activity-log/src/js/components/ActivityLog/index.tsx", + "projects/packages/activity-log/src/js/components/DateRangePicker/date-inputs.tsx", + "projects/packages/activity-log/src/js/components/DateRangePicker/date-range-content.tsx", + "projects/packages/activity-log/src/js/components/DateRangePicker/presets-listbox.tsx", + "projects/packages/backup/src/dashboard/components/file-info-card/index.tsx", + "projects/packages/backup/src/dashboard/screens/download.tsx", + "projects/packages/backup/src/dashboard/screens/overview.tsx", + "projects/packages/backup/src/dashboard/screens/restore.tsx", + "projects/packages/backup/src/js/components/backup-storage-space/storage-help-popover/index.jsx", + "projects/packages/forms/routes/forms/stage.tsx", + "projects/packages/forms/routes/responses/integrations-modal.tsx", + "projects/packages/forms/routes/responses/stage.tsx", + "projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/akismet.tsx", + "projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/google-drive.tsx", + "projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/hostinger-reach.tsx", + "projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/helpers/mailpoet.tsx", + "projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/index.tsx", + "projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/integration-card/index.tsx", + "projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/integration-card/integration-card-body.tsx", + "projects/packages/forms/src/blocks/contact-form/components/jetpack-integrations-modal/integration-card/integration-card-header.tsx", + "projects/packages/forms/src/blocks/field-hidden/edit.js", + "projects/packages/forms/src/blocks/field-slider/edit.js", + "projects/packages/forms/src/blocks/input-range/edit.js", + "projects/packages/forms/src/blocks/option/edit.js", + "projects/packages/forms/src/dashboard/components/empty-responses/index.tsx", + "projects/packages/forms/src/dashboard/components/export-responses/modal.tsx", + "projects/packages/forms/src/dashboard/components/forms-responses-tabs/index.tsx", + "projects/packages/forms/src/dashboard/components/inbox-status-toggle/index.tsx", + "projects/packages/forms/src/dashboard/components/inspector/mobile.tsx", + "projects/packages/forms/src/dashboard/components/inspector/response-fields/field-email/index.tsx", + "projects/packages/forms/src/dashboard/components/inspector/response-fields/field-image-select/index.tsx", + "projects/packages/forms/src/dashboard/components/inspector/response-fields/field-preview/index.tsx", + "projects/packages/forms/src/dashboard/components/inspector/response-fields/field-rating/index.tsx", + "projects/packages/forms/src/dashboard/components/inspector/response-meta/index.tsx", + "projects/packages/forms/src/dashboard/components/inspector/single.tsx", + "projects/packages/forms/src/dashboard/components/layout/header.tsx", + "projects/packages/forms/src/dashboard/components/page/header.tsx", + "projects/packages/forms/src/dashboard/forms/index.tsx", + "projects/packages/forms/src/dashboard/wp-build/components/dataviews-header-row/index.tsx", + "projects/packages/forms/src/dashboard/wp-build/components/forms-help-modal/index.tsx", + "projects/packages/forms/src/dashboard/wp-build/components/inbox-status-toggle/index.tsx", + "projects/packages/forms/src/form-editor/plugins/embed-form-modal.tsx", + "projects/packages/forms/src/form-editor/plugins/form-pre-publish-panel.tsx", + "projects/packages/jetpack-mu-wpcom/src/common/tour-kit/variants/wpcom/components/wpcom-tour-kit-step-card.tsx", + "projects/packages/my-jetpack/_inc/components/connection-screen/body.tsx", + "projects/packages/my-jetpack/_inc/components/my-jetpack-tab-panel/products/filtered-plans.tsx", + "projects/packages/my-jetpack/_inc/components/my-jetpack-tab-panel/products/filtered-products.tsx", + "projects/packages/my-jetpack/_inc/components/my-jetpack-tab-panel/products/product-card.tsx", + "projects/packages/my-jetpack/_inc/components/product-card/recommendation-actions.tsx", + "projects/packages/my-jetpack/_inc/components/product-interstitial-modal/product-interstitial-modal-cta.tsx", + "projects/packages/my-jetpack/_inc/components/product-interstitial/jetpack-ai/more-requests.jsx", + "projects/packages/my-jetpack/_inc/components/product-interstitial/jetpack-ai/product-page.jsx", + "projects/packages/my-jetpack/_inc/components/product-interstitial/pricing-interstitial.jsx", + "projects/packages/my-jetpack/_inc/components/product-interstitial/product-interstitial.jsx", + "projects/packages/my-jetpack/_inc/components/product-interstitial/protect/product-page.tsx", + "projects/packages/my-jetpack/_inc/components/stats-section/count-comparison-card.jsx", + "projects/packages/newsletter/_inc/components/newsletter-page.tsx", + "projects/packages/newsletter/_inc/subscribers/components/connection-gate.tsx", + "projects/packages/newsletter/_inc/subscribers/components/empty-state.tsx", + "projects/packages/newsletter/_inc/subscribers/components/header-actions.tsx", + "projects/packages/newsletter/_inc/subscribers/components/modals/add-subscribers-modal.tsx", + "projects/packages/newsletter/_inc/subscribers/components/modals/comp-modal.tsx", + "projects/packages/newsletter/_inc/subscribers/components/modals/remove-comp-modal.tsx", + "projects/packages/newsletter/_inc/subscribers/components/modals/unsubscribe-modal.tsx", + "projects/packages/newsletter/_inc/subscribers/components/subscribers-data-views.tsx", + "projects/packages/newsletter/routes/dashboard/stage.tsx", + "projects/packages/newsletter/src/settings/newsletter-settings.tsx", + "projects/packages/newsletter/src/settings/sections/email-content-section.tsx", + "projects/packages/newsletter/src/settings/sections/email-sender-settings-section.tsx", + "projects/packages/newsletter/src/settings/sections/newsletter-categories-section.tsx", + "projects/packages/newsletter/src/settings/sections/subscriptions-section.tsx", + "projects/packages/newsletter/src/settings/sections/welcome-email-section.tsx", + "projects/packages/podcast/src/blocks/podcast-episode/edit.tsx", + "projects/packages/podcast/src/dashboard/category-picker.tsx", + "projects/packages/podcast/src/dashboard/distribution/index.tsx", + "projects/packages/podcast/src/dashboard/distribution/podcast-apps/pocketcasts/submit-modal.tsx", + "projects/packages/podcast/src/dashboard/distribution/submit-modal.tsx", + "projects/packages/podcast/src/dashboard/index.tsx", + "projects/packages/podcast/src/dashboard/settings/index.tsx", + "projects/packages/podcast/src/dashboard/stats/components/horizontal-bar-list.tsx", + "projects/packages/podcast/src/dashboard/stats/components/section-card.tsx", + "projects/packages/podcast/src/dashboard/stats/components/summary-tiles.tsx", + "projects/packages/podcast/src/dashboard/welcome/category-setup-modal.tsx", + "projects/packages/podcast/src/dashboard/welcome/index.tsx", + "projects/packages/publicize/_inc/components/admin-page/header/index.js", + "projects/packages/publicize/_inc/components/admin-page/pricing-page/index.tsx", + "projects/packages/publicize/_inc/components/admin-page/toggles/social-image-generator-toggle/index.tsx", + "projects/packages/publicize/_inc/components/admin-page/toggles/social-module-toggle/index.tsx", + "projects/packages/publicize/_inc/components/admin-page/toggles/social-notes-toggle/index.tsx", + "projects/packages/publicize/_inc/components/connection-management/connection-info-modern.tsx", + "projects/packages/publicize/_inc/components/connection-management/connection-info.tsx", + "projects/packages/publicize/_inc/components/connection-management/disconnect.tsx", + "projects/packages/publicize/_inc/components/connection-management/index.tsx", + "projects/packages/publicize/_inc/components/customize-and-preview/customization-section/index.tsx", + "projects/packages/publicize/_inc/components/customize-and-preview/preview-section/index.tsx", + "projects/packages/publicize/_inc/components/form/empty-state.tsx", + "projects/packages/publicize/_inc/components/manage-connections-modal/confirmation-form/index.tsx", + "projects/packages/publicize/_inc/components/manage-connections-modal/index-modern.tsx", + "projects/packages/publicize/_inc/components/media-picker/index.tsx", + "projects/packages/publicize/_inc/components/overview-tab/index.tsx", + "projects/packages/publicize/_inc/components/overview-tab/traffic-chart-card.tsx", + "projects/packages/publicize/_inc/components/panel/description.tsx", + "projects/packages/publicize/_inc/components/services/connect-form.tsx", + "projects/packages/publicize/_inc/components/services/custom-inputs-modern.tsx", + "projects/packages/publicize/_inc/components/services/service-connection-info-modern.tsx", + "projects/packages/publicize/_inc/components/services/service-item-modern.tsx", + "projects/packages/publicize/_inc/components/services/service-item.tsx", + "projects/packages/publicize/_inc/components/services/x-notice.tsx", + "projects/packages/publicize/_inc/components/settings-tab/content-creation-card.tsx", + "projects/packages/publicize/_inc/components/settings-tab/customize-media-card.tsx", + "projects/packages/publicize/_inc/components/settings-tab/publicize-inactive-empty-state.tsx", + "projects/packages/publicize/_inc/components/share-buttons/share-buttons.tsx", + "projects/packages/publicize/_inc/components/social-gate/connection-gate.tsx", + "projects/packages/publicize/_inc/components/social-gate/pricing-gate.tsx", + "projects/packages/publicize/_inc/components/social-page.tsx", + "projects/packages/publicize/routes/dashboard/stage.tsx", + "projects/packages/scan/_inc/components/scan-page.tsx", + "projects/packages/scan/routes/index/stage.tsx", + "projects/packages/scan/src/js/screens/overview/active-threats.tsx", + "projects/packages/scan/src/js/screens/overview/bulk-fix-modal.tsx", + "projects/packages/scan/src/js/screens/overview/fix-threat-modal.tsx", + "projects/packages/scan/src/js/screens/overview/ignore-threat-modal.tsx", + "projects/packages/scan/src/js/screens/overview/scan-history.tsx", + "projects/packages/scan/src/js/screens/overview/scan-status.tsx", + "projects/packages/scan/src/js/screens/overview/unignore-threat-modal.tsx", + "projects/packages/search/src/dashboard/components/ai-agent-access-control/index.jsx", + "projects/packages/search/src/dashboard/components/ai-answers-tab/index.jsx", + "projects/packages/search/src/dashboard/components/global-notices/index.jsx", + "projects/packages/search/src/dashboard/components/pages/dashboard-page.jsx", + "projects/packages/search/src/dashboard/components/pages/sections/first-run-section.jsx", + "projects/packages/search/src/dashboard/components/pages/sections/overview-section.jsx", + "projects/packages/search/src/dashboard/components/reader-chat-control/index.jsx", + "projects/packages/search/src/dashboard/components/record-meter/notice-box.jsx", + "projects/packages/search/src/dashboard/components/woocommerce-product-search-control/index.jsx", + "projects/packages/videopress/routes/library/stage.tsx", + "projects/packages/videopress/src/client/admin/components/admin-page/index.tsx", + "projects/packages/videopress/src/client/admin/components/edit-video-details/index.tsx", + "projects/packages/videopress/src/dashboard/components/connection-gate/connect-screen.tsx", + "projects/packages/videopress/src/dashboard/components/dashboard-layout/index.tsx", + "projects/packages/videopress/src/dashboard/components/dashboard-tabs/index.tsx", + "projects/packages/videopress/src/dashboard/components/library/thumbnail-field.tsx", + "projects/packages/videopress/src/dashboard/components/overview/date-range-selector.tsx", + "projects/packages/videopress/src/dashboard/components/overview/free-tier-notice.tsx", + "projects/packages/videopress/src/dashboard/components/video-details/chapters-help-modal.tsx", + "projects/packages/videopress/src/dashboard/components/video-details/header-actions.tsx", + "projects/packages/videopress/src/dashboard/components/video-details/select-frame-dialog.tsx", + "projects/packages/videopress/src/dashboard/components/video-details/thumbnail-card.tsx", + "projects/packages/videopress/src/dashboard/components/video-details/video-details-card.tsx", + "projects/plugins/boost/app/assets/src/js/features/boost-pricing-table/boost-pricing-table.tsx", + "projects/plugins/boost/app/assets/src/js/features/cornerstone-pages/meta/meta.tsx", + "projects/plugins/boost/app/assets/src/js/features/critical-css/regenerate-critical-css-suggestion/regenerate-critical-css-suggestion.tsx", + "projects/plugins/boost/app/assets/src/js/features/critical-css/show-stopper-error/show-stopper-error.tsx", + "projects/plugins/boost/app/assets/src/js/features/image-guide/image-guide.tsx", + "projects/plugins/boost/app/assets/src/js/features/lcp/status/error-details.tsx", + "projects/plugins/boost/app/assets/src/js/features/minify-legacy-notice/minify-legacy-notice.tsx", + "projects/plugins/boost/app/assets/src/js/features/module/module.tsx", + "projects/plugins/boost/app/assets/src/js/features/page-cache/health/error-notices.tsx", + "projects/plugins/boost/app/assets/src/js/features/page-cache/meta/meta.tsx", + "projects/plugins/boost/app/assets/src/js/features/page-cache/page-cache.tsx", + "projects/plugins/boost/app/assets/src/js/pages/cache-debug-log/cache-debug-log.tsx", + "projects/plugins/jetpack/_inc/client/ai/main.jsx", + "projects/plugins/jetpack/_inc/client/ai/mcp/index.jsx", + "projects/plugins/jetpack/_inc/client/ai/mcp/read.jsx", + "projects/plugins/jetpack/_inc/client/ai/mcp/setup.jsx", + "projects/plugins/jetpack/_inc/client/ai/mcp/write.jsx", + "projects/plugins/jetpack/_inc/client/components/connection-banner/index.jsx", + "projects/plugins/jetpack/_inc/client/components/global-notices/state/notices/actions.js", + "projects/plugins/jetpack/_inc/client/components/global-notices/state/notices/reducer.js", + "projects/plugins/jetpack/_inc/client/components/modal/index.jsx", + "projects/plugins/jetpack/_inc/client/components/popover/util.js", + "projects/plugins/jetpack/_inc/client/components/settings-card/index.jsx", + "projects/plugins/jetpack/_inc/client/components/settings-nav-tabs/index.jsx", + "projects/plugins/jetpack/_inc/client/config.js", + "projects/plugins/jetpack/_inc/client/lib/accessible-focus/index.js", + "projects/plugins/jetpack/_inc/client/mixins/emitter/index.js", + "projects/plugins/jetpack/_inc/client/my-plan/index.jsx", + "projects/plugins/jetpack/_inc/twitter-timeline.js", + "projects/plugins/jetpack/extensions/blocks/donations/controls.js", + "projects/plugins/jetpack/extensions/blocks/donations/style-controls.js", + "projects/plugins/jetpack/extensions/blocks/subscriptions/email-preview.js", + "projects/plugins/jetpack/extensions/blocks/subscriptions/menu.js", + "projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/controls.tsx", + "projects/plugins/jetpack/extensions/shared/memberships/settings.js", + "projects/plugins/protect/src/js/components/protect-app/index.jsx", + "projects/plugins/protect/src/js/components/upgrade-notice/index.tsx", + "projects/plugins/protect/src/js/routes/firewall/firewall-upgrade-prompt.jsx", + "projects/plugins/protect/src/js/routes/firewall/index.jsx", + "projects/plugins/protect/src/js/routes/settings/index.jsx" +] diff --git a/tools/js-tools/eslintrc/base.mjs b/tools/js-tools/eslintrc/base.mjs index 2adbc4a0de34..8dea83a6e1f6 100644 --- a/tools/js-tools/eslintrc/base.mjs +++ b/tools/js-tools/eslintrc/base.mjs @@ -275,6 +275,8 @@ export function makeBaseConfig( configurl, opts = {} ) { }, }, rules: { + '@wordpress/use-recommended-components': 'error', + // Set domain from opts, with a bogus default in case it's omitted. '@wordpress/i18n-text-domain': [ 'error',