* Activity Panel: set reviews unread indicator based on real data
* Unify date comparisons to GMT
* Add numberOfReviews propType
* Verify date_created_gmt exists before using it
* Typos
* Table: update columns visibility on headers change
* Make sure initial user pref columns are loaded in all reports
* Return early filterShownHeaders when hiddenKeys is an empty array
* Undo 'headers', 'prevHeaders' order switch
* Add last read user data for inbox
* Check last read time against inbox note to determine read status
* Set last read in unmount to make component stateless
* Compare latest note time against last read time in activity panel
* Fix error checking and per_page limit
* Use component mount time for last read time in inbox
* Compare unread against note GMT time
* Add missing trailing comma
* Add store notice around processing historical data.
* Cleanup
* Handle PR feedback.
* Clean up `add` logic and add empty content_data. Also add logic to get_notes_count so that we can hide unactioned statuses.
* Add the ability to update a note, and to also mark a status when an alert is clicked.
* Remove mark_actioned call on sync
* add missing todo
* Add actionable status setting
* Add actionable statuses to settings page
* Hook up actionable order statuses to activity panel
* Hook up actionable order statuses to activity panel
* Add initial transient notices component
* Animate notices to slide in and out
* Add notices to wc-api
* Map notices from wc-api to transient notices
* Add success message on settings save
* Add save notices to Settings page
* Remove all margin and padding from notice box when empty
* Add role alert to transient notices
* Add prefers reduced motion media query for transient animation
* Remove initial test notice
* Remove notices from wc-api
* Add wc-admin store for transient notices
* Pull transient notices from newly implemented store
* Use speak instead of role alert for accessibility
* Only show success message after request is complete
* Destructure state in componentDidUpdate
* Add store notice tests and fixtures
* Add box shadow to transient notice
* Move transient notices to bottom left
* Fix indentation
Product detail report and comparison
Code cleanup
Fix 404 on product variations endpoint after rebase
Fix up tests
Fix loading indicators and add some checks around malformed variation response
Add date filtering SQL bits to the variations query
Handle PR feedback: Fix viewport, fix duplicate product issue, fix legend display reset, fix bargraph overflow, fix some coding standards/whitespace, add extra variation santiziation.
Fix scroll on wide charts, and fix undefined prop getting passed into report chart render
* Show empty table when search returns no results
* Fix singular wrong string for 'orders'
Co-Authored-By: Aljullu <aljullu@gmail.com>
* Check if search returned 0 results inside table components instead of passing a prop
* Move labels loading logic into a lib
* Move lib/labels into lib/async-requests
* Implement tabular data filtering
* Allow searching for string in report tables
* Add table filtering to customers table
* Get ids from searched string to populate the table
* Fix autocompleter keyboard interactions
* Improve props naming
* Cleanup report customers data store
* Prevent an edge case issue that might not update the selectedOptions when directily modifying the URL
* Fix wrong selected autocompleter option
* Add missing translation domain
* Move searchItemsByString to wc-api/items/utils.js
* Avoid autocompleter results appearing when there was no search string
* Alphabetically order 'allowFreeTextSearch' prop
* Reset selected table rows when directly modifying the URL
* Simplify props destructuring
* Undo customers data store change
* Simplify isProductDetailsView expression
* Improve order
* Merge getOrders and getItems
* Move labels loading logic into a lib
* Move lib/labels into lib/async-requests
* Implement tabular data filtering
* Allow searching for string in report tables
* Add table filtering to customers table
* Get ids from searched string to populate the table
* Fix autocompleter keyboard interactions
* Improve props naming
* Cleanup report customers data store
* Prevent an edge case issue that might not update the selectedOptions when directily modifying the URL
* Fix wrong selected autocompleter option
* Add missing translation domain
* Move searchItemsByString to wc-api/items/utils.js
* Avoid autocompleter results appearing when there was no search string
* Alphabetically order 'allowFreeTextSearch' prop
* Reset selected table rows when directly modifying the URL
* Simplify props destructuring
* Undo customers data store change
* Simplify isProductDetailsView expression
* Improve order
* Filter tax code parts before modifying them
* Add settings page routes
* Add control options for excluded statuses
* Add control options for excluded statuses
* Add excluded order statuses to rest api
* Add wc settings to wc-api
* Add wc settings to wc-api
* Split and validate multiselect values in settings controller
* Add wcAdminSettings to wcSettings global
* Set initial excluded statuses from serverside wcSettings data
* Add extensible filter for wcSettings global
* Split arrays into comma separated strings in wc-api
* Extract setting as separate component
* Extra settings to config file
* Add checkboxGroup option as input type
* Separate status types into default and custom groups
* Add setting option styling
* Add responsive styling for settings
* Fix wpClosedMenu and wpOpenMenu for settings page
* Add support for resetting to default values
* Only show checkbox group if options are available
* Add proptypes to Setting component
* Add extensible filter to analytics settings
* Add readme for settings config and extensibility
* Hook up excluded status settings to reports
* Pass object to settings API instead of comma delimited string
* Fix inpuType -> inputType typo
* Remove hasError from constructor
* Bump settings API to v4
* Use interpolateComponents instead of dangerously setting html
* Use empty array in initial excldued statuses setting value if none is retrieved
* Remove double check for refunded status in default order statuses
* Update settings wc-api to use namespace
* Add aria=labelledby to checkbox group
* Add namespace v4 for WC product/categories endpoint
* Update categories wc-api to use v4 namespace constant
* Add single product category filter to product categories report
* Add link to filtered product report from category report
* Use persistedQuery for category links
* Check if category is defined before displaying category link
* Remove selectedTags when filter does not match queried filter
* Update all wc-admin endpoints to v4
* Add namespace for products and customers controllers
* Include product quantity in orders data store
* Add coupons to extended data in the orders data store
* Format order statuses response from database
* Hook up orders table to orders endpoint
* Add namespace to data endpoint controller
* Add namespaces to remaining extended controllers
* Use NAMESPACE var in place of wc/v4
* Update product links in orders table to products reports
* Add coupons rest controller override
* Format coupon code in response
Co-Authored-By: joshuatf <joshuatf@gmail.com>
* Hydrate initial state through localized script
* Parse user meta for default rows as integer
* Change eslint ignore to undef only
* Add currentUserData to wcSettings
* Add leaderboard section to dashboard
* Add rows per table user preference
* Pass in rowsPerTable to leaderboards to adjust total rows
* Add styling for rows select dropdown
* Set default for total rows if tableQuery is undefined
* Remove double localization on leaderboard labels
* Simplify toggle logic for hidden leaderboards
* Move updateCurrentUserData outside of setState callback
* Add user preferences for shown dashboard charts
* Add user preferences for dashboard chart type
* Check if user preferences are set before assigning to state
* Move API update methods out of callbacks and use xor
* Connect downloads chart and table to REST API
* Display date picker in Downloads report
* Fix missing value for 'days' in Downloads table summary
* Fix download_count being a string instead of a number
* Minor date packages comment fixes
* Fix filters in Downloads report
* Add back empty line
* JSDoc comments style fixes
* Fix username filter not working
* Fix days counter off by 1
* Fix alignment issue
* Add support for product cats in wp rest api
* Add categories to WC API
* Add category breadcrumbs component
* Increase per_page limit size for product cat API
* Use wc/v3 API to pull product categories
* Return category IDs in API
* Add categories to product reports
* Add category IDs test for REST API
* Switch to getResource instead of require for total count selector
* Hook up taxes to endpoint
* Hook up tax stats endpoint
* Add default tax stat totals for empty results
* Create subtotals from intervals in API
* Change orders to orders_count to keep consistent naming
* Create Stock report
* Create Stock report page
* Display product name in Stock table
* Hide 'Parent' column in Stock table
* Add stock to endpoints map
* Remove dateRangeFilter.show from ReportFilters
* Fix stock status link
* Set the default order to 'stock_quanity'
* Add correct name to StockReport
* Add column prefs to the other tables
This adds column prefs to the other remaining report tables.
* Table columns: Override defaults with user prefs.
* table columns: Add remaining analytics tables
* user read/update operation: Combine responses
This combines the response handling for the read and update operations.
* wc-api: Add user meta for UI preferences
This adds wc-api code to store UI preferences and provides one example
of updating the revenue table to save column preferences.
* wc-api user: fix returns of operations to arrays
Before, a function was returning undefined when the resourceNames didn't
include what we wanted for the user operations. This was causing some
console errors.
* ReportTable: use columnPrefsKey
This uses `columnPrefsKey` for the user preferences key instead of some
erroneously hard-coded values.
* Fix formatting/comments
These are a couple of small formatting and comment fixes.
* Replace woocommerce_meta_ prefix with wc_admin_
This changes the prefix for the meta fields for the `woocommerce_meta`
user meta array to be `wc_admin_` which better hints at the purpose of
these settings.