Prior to 7.2.0 the quantity input was hidden if input min and max were identical (either because the product was sold individually, or because of min/max products config). This change restores that behavior, but makes it possible to render the input in readonly mode if desired (via filters).
* Working prototype of product details via slotfill
* Raising default order for product slot-fills
* Move logic to details field name component
* Adding order prop to all fills.
* Adding components changelog
* Adding changelog
* Deleting obsolete product details section files
* Reducing spacing between slot filled fields
* Move attribution fetching to separate hook
* Add changelog entry
* Set all attributes on update of subset of attributes
* Move filtering logic to hook
* Remove tests that filter attribute by type inside the component
* Rename AttributeField to AttributeControl and props from attributes to value
* issue-35763/fix-php-8.2-deprecation-warnings
* Declare $mockable_functions property
* Declare $mockable_classes property
* Fix deprecated usage of ${var} in strings
* Add changelog file
* Avoid using interpolation to create SQL statement
We could ignore the PHPCS error. However, ignoring the error leaves
PHPCS unable to detect future changes that may introduce unsafe
interpolation.
I think the more verbose approach is the safest approach in this
case.
* Ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared
There doesn't seem to be a way to use a variable name for the name of the table without
triggering a PHPCS error.
* Avoid interpolated passing interpolated variables to __()
* End inline comments with a full-stop
* Fixed#31760 issue
* additional space removal after &&
* Make sure tracking shortcode only tracks orders of type `WC_Order`
* Add changelog
Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
* Add requesting state, actions, and selectors to CRUD data stores
* Allow resource specific selectors for requesting status
* Use constants for action names in reducer
* Add tests around new utils
* Add changelog entry
* Use getResourceName instead of getRequestKey in reducer
* Rename and use getRequestIdentifier to avoid ambiguity with resource names
* Sanitize and replace ID query with key in resolution selectors
* Fix up crud action names and remove camel casing
* Fix missing ID in ID query check
* Fix up tests around request identifier
* Add additional tests around utils
* Clean up imports
* Add missing selectors to tests
* Upgrade PHPUnit to v8, and remove usage of PHPUnit7 fork in CI
Once the minimum WordPress version supported by WooCommerce is 5.9
and the minimum PHP version supported is 7.2, we can switch to
PHPUnit 7 and the patched PHPUnit 7 with support for PHP 8 is
no longer needed.
* Resolve PHPUnit 8 deprecations in tests
* Add changelog file
* Fix code formatting
* Tweak email layout/styling. This should improve responsive properties for RTL emails particularly.
* Further improve layout consistency across a range of mobile email clients.
* Update existing code to match current coding standards.
* Further PHPCS fix.
* Update sample email to match recent changes in our default email CSS.
* Rename `get_errors_no` to `get_errors_count`
* Remove the validation for marketing channel slugs
Do not check if the marketing channel's slug exists in the list returned by WooCommerce.com Recommendation API. This essentially allows any third-party extension to register as a marketing channel.
* Revert InstalledExtensions
The InstalledExtensions class will be used by the previous generation of Marketing dashboard (if the user has not enabled the new "Marketing" feature); therefore, it's best to restore it to the original code.
* Fix code style
* Add channel property to MarketingCampaign
* Add methods to filter the recommended marketing channels and extensions
* Add `marketing/recommendations` API
* Add unit tests for `marketing/recommendations` API
* Add `marketing/channels` API
* Add unit tests for `marketing/channels` API
* Add `marketing/campaigns` API
* Add unit tests for `marketing/campaigns` API
* Translate Exception message
* Remove doc references to predetermined list of marketing channels
* Add `unregister_all` method
To allow unregistering all marketing channels.
* Unregister all channels on test tear down
* Change API access denied authorization code
* Change API access permission
* Add MarketingCampaignType class
This allows defining campaign types for each marketing channel.
* Add campaign type property to campaign class
* Add `marketing/campaign-types` API
This API returns the aggregated list of supported marketing campaign types for all registered marketing channels.
* Add unit tests for `marketing/campaign-types` API
* Remove unused jsonSerialize method
* Fix unit tests
Co-authored-by: Nima <nima.karimi@automattic.com>
* Customers REST API: return user metadata only when requester has an administrator role
* Add changelog file
Co-authored-by: Nestor Soriano <konamiman@konamiman.com>