* Add hook reference README
* update hook reference
* better
* changelog
* add pr number
* remove example
* add desc
* add stats
* jsdoc REPORTS_FILTER
* Category configs
* configs
* data
* dashboard
* dashboard charts
* save
* save
* save
* done with filters
* Add scope to slotFill docs
* data
* add all slotfills
* data
* Fix error when scope is not present, and make use of typedef imports
* Move chart and filter jsdoc definitions to the reports index file
* Update hook reference data.json
* Make use of import for filter typedef and address some typos
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Retrieve variation name from woocommerce_order_items for deleted products
* Remove test code
* Refactor to use wc_order_product_lookup table
* Identation fix
* Remove link if the variation/product has been deleted
* Add changelog
* Remove (deleted) suffix
* Add (Deleted) suffix in frontend
* Fix misaligned status column on order report
Add labelPositionToLeft prop to order-status component
Set labelPositionToLeft=true for <OrderStatus> on orders report table
Remove style import
* Add changelogs
Add changelogs
* Remove use of wc-admin-settings from packages
* Move getSetting to getAdminSetting and remove wc-admin-settings package
* Add changelog
* Update package.json and remove last use of wc-admin-settings
* Add route and layout for unmatched path
* Add NoMatch to catch missing report pages
* Load WooCommerce Admin scripts on all pages
* Move NoMatch inside default page layout
* Add permission checks to tabs
* Allow update_option_extended_task_list to be called on non-admin pages
* Check for task list task count in extended list update function
* Add changelog entry
* Add PR number to changelog entry
* Remove deprecated extended task list filter and tests
* Sentence case all the things
* Update a few more things that were missed on the first round
* update documentation titles to use title case
* Add changelog
* Handle PR feedback
* Revert readme changelog changes
* Revert changes to ALT text in dev documentation
* Revert a change to ALT text in dev documentation
* Fix failing tests
Co-authored-by: David Levin <davidlevin@Davids-MacBook-Pro-2.local>
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
By adding a `isReverseTrend` prop we can pass to `SummaryNumber` we can indicate that a negative trend in refunds is a good thing and therefore display a green indicator.
* Match stock status in CSV download to the table
* Add changelog
* Set status value from stockStatuses
* Update stock status for server-side export
* Replace status value in the controller
* Remove unnecessary call to constructor
* Remove changelog from readme
* Add changelog
- Remove unused `isEmpty` prop from ReportError.
- Remove `isError` prop from ReportError, as it is always set. Also, to reduce confusion that: Could "report error" be not an error?
- Remove default value of `className` prop from `ReportError`, it is unnecesary, as `EmptyContent` takes falsy values as well as `''`.
- Change `ReportError` to a function component.
* Avoid new references in getReportChartData() return.
* Avoid some new references in ReportTable component.
* Avoid some new references, fix cache key for getReportChartData memoization.
* Memoize date package functions used in ReportTable.
* Avoid more new references in RevenueReportTable.
* Use woocommerce_admin_report_table client side filter on the CSV download
* Remove duplicated applyFilters call
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Use a store to render CES tracks
* Use the CES store to trigger CES survey when users change date range or single product filters.
* Support onClick event for the Compare button
* Trigger CES survey when a user clicks the Compare button on products, variations, categories, coupon, and taxes pages
* Set default text for onSubmitLabel in js and remove its requirement
* Add addCesSurveyTrackForAnalytics action so that it can be shared in other components in analytics pages -- remove duplicates
* Call addCesSurveyTrack from addCesSurveyTrackForAnalytics to avoid duplicate
* Remove 'tracks' from the method name
* Add initial Variations Report to analytics feature.
* Restrict query to variations when not specifying any product IDs.
* Add route to get variations without specifying a parent.
* Move variations table component to variations report directory.
* Add missing LIMIT clause to variations report query.
* Remove broken features from Variations table.
* Add Variations report controller to CSV emailer.
* Add initial Variation Stats endpoint, based on Product Stats.
* Hook Variations Report components up to new stats endpoint.
* Hook attribute filter up to variations report queries.
* Remove variation title filter usage.
See: https://github.com/woocommerce/woocommerce-admin/pull/5100
* Use filtered separator in variation name formatting.
* Add "single variation" to variations report, fix autocompleter API request.
* Fix segmentation by variation.
* Add comparison to variations report.
* Always include manually specified variations in report results.
* Fix variations report table comparison mode.
The ReportTable component expects the `filter` query param.
* Fixing styling of compare button without table search component.
* Add variation filter to Orders report.
* Link orders count to orders report filtered by variation.
* Orders report: include variation attributes in product names.
* Further style tweaks for variations report download button.
* Add variations filter to order stats query.
* Clean up "category includes" login in REST controllers.
Prep for "category excludes" in the Variations report.
* Support category exclusion in report filters.
* Fix filter param used by the variation report table component.
* Add category filter to variations report.
* Fix initial selected ReportTable rows when using non-default compareParam.
* Add a new autocompleter for variable products.
* Add products filter to variations report.
* Fix tests.
* Handle variation IDs that are no longer found.
* Add documentation.
* Use getSetting() instead of directly accessing window properties in client code.
* Fix ordering Variations by SKU.
* Remove use of `woocommerce_product_variation_title_include_attributes` filter.
* Use attribute values in product variation titles.
* Include attribute values in product variation name during segmentation.
* Include attribute values in product variations autocompleter query.
* Add product attribute filter to Orders report config.
* Add attribute args to Orders report controller.
* Include attribute filters in orders report query.
* Add attribute args to Orders Stats report controller.
* Include attribute filters in orders report stats query.
* Add test for product attribute filter in orders report.
* Add tests for invalid parameter values.
* Add tests for product attribute filter in order stats endpoint.
* Fix tests for PHP 5.6 and WC 3.8.x.
* Simplify variation name logic.
* Remove errant commas from variation autocomplete options.
* Add single variation filter to products report.
* Include more variations in search results.
Also trim the response fields down.
* Add initial AttributeFilter component.
Only selected of attribute names for now.
* Add attribute term selection control.
* Position attribute filter inputs side by side.
* Add loading indicator to attribute term control.
* Clear term when attribute value changes, and handle backspaces.
* Generate screen reader text.
* Translate filter labels, add field separator.
* Improve grammar in screen reader text.
* Fix lint errors.
* Move controls to data package root
* Add reports data store in wp data
* Move report utils to data package
* Update error state and actions to match existing methods
* Update references to reports data store
* Add error setters
* Fix control registration path
* Add reports reducer tests
* Remove remaining report wc-api references
* Handle PR feedback
* reference packgage, not lib/date
Co-authored-by: Paul Sealock <psealock@gmail.com>
* add new woocommerce/eslint-plugin
* implement eslint-plugin (switch scripts to use wp-scripts etc)
* various linting fixes
* more lint fixes
* improve fix script
* more eslint fixes
* more eslint fixes
* temporary convert rules to warnings until they are all handled
* linting fixes
* update package-lock.json
* remove duplicates
* remove unnecessary `@wordpress/dependency-group` rule config
* add docs and adjust rules
* prettier fix
* fix merge artifact
* convert more rules to warnings
* change order to reflect importance
* install babel-preset-default
* remove unnecessary configuration for babel
* fix dependency group rule and test
* fix test
* handle collapsible whitespace
* add react testing library eslint plugin
* linter errors
* Add back in prettierrc
* package-lock update
* js lint fix with --fix
* disable whitespace in translation
* package-lock update
* make eslint actual dependency, not peer dependency
* pin eslint to v7
* I don't know why, but its working
* fix lint js
Co-authored-by: Paul Sealock <psealock@gmail.com>
Fixeswoocommerce/woocommerce-admin#4732
This updates `@wordpress/base-styles`, and because `@wordpress/components` depends on variables from it, that must be updated as well.
There are 3 major changes required as part of updating:
1. The $theme-color variable is no longer exposed by base-styles. Instead there are 3 css vars exposed. These are made available by use of a provided mixin. Situations where $theme-color was darkened using scss have been mapped as best as possible to the 2 other darkened shades of the css var that are available such as `--wp-admin-theme-color-darker-20` and `--wp-admin-theme-color-darker-10`. In some cases this means the colors are not exactly the same as before.
2. The post css `theme()` call is no longer available. All uses of this have been consolidated to use of the main theme css var `--wp-admin-theme-color`. This means that calls like `theme(secondary)` or `theme(outline)` etc have all been consolidated to the one color.
3. Many of the variables used for different shades of gray have been deprecated. These have been mapped across to the new gray variables. (Mapped according to the list described in woocommerce/woocommerce-admin#4732)
* Add (failing) test for deleted coupon amounts in reporting.
* Always sync an ID into the order-coupon lookup table.
* Don't remove coupon data from order analytics when the coupon is deleted.
* Fix coupon ID lookup from order item metadata.
* Allow negative coupon_id in the lookup table.
Representing deleted coupons.
* Handle deleted coupons when gathering extended info.
* Add more tests for deleted coupon handling.
* Handle deleted coupons in coupons report table.
* Fix lint errors.