Commit Graph

125 Commits

Author SHA1 Message Date
Paul Sealock fd019c4c35 Chart: don't switch to comparison mode directly 2019-03-12 12:03:58 +13:00
Albert Juhé Lluveras a7e3cf78a0 Show compared keys in chart legends even if their values are 0 (https://github.com/woocommerce/woocommerce-admin/pull/1754)
* Show compared keys in chart legends

* Fix JS error if filters is missing

* Add docs
2019-03-06 21:12:28 +01:00
Albert Juhé Lluveras 5d3aa58a5d Use IDs instead of labels to identify chart legend items (https://github.com/woocommerce/woocommerce-admin/pull/1730)
* Use instanceId to generate unique ids for chart legend items

* Decouple item key and label in Chart components

* Remove more duplicate IDs in the chart legend

* Use double underscores in element IDs following BEM rules

* Move 'withInstanceId' inside D3Legend component

* Simplify screen reader labels logic

* Add CHANGELOG message

* Use 'primary' and 'secondary' as items keys in time-comparison charts
2019-03-05 19:27:20 +01:00
Albert Juhé Lluveras a8ee12e1f9 Fix empty chart and summary numbers when searching in the Categories report (https://github.com/woocommerce/woocommerce-admin/pull/1698) 2019-02-27 17:28:18 +01:00
Albert Juhé Lluveras 4e4f04b8d8 Display chart and summary numbers placeholder when loading search terms (https://github.com/woocommerce/woocommerce-admin/pull/1694) 2019-02-27 15:43:34 +01:00
Albert Juhé Lluveras 53bac8700e Screen readers: read date instead of data keys in 'time-comparison' bar charts (https://github.com/woocommerce/woocommerce-admin/pull/1586)
* Screen readers: read date instead of data keys in 'time-comparison' bar charts

* Make previous period labels more verbose

* Revert "Make previous period labels more verbose"

This reverts commit 34d13deaa982425ca2cba76dacfd2c89c96f06c0.

* Improve isSameDay check

* Add date to hour tooltip and improve screen reader label

* Add CHANGELOG message
2019-02-26 11:56:49 +01:00
Albert Juhé Lluveras b85eef53fd Display table placeholder instead of empty table when loading search terms (https://github.com/woocommerce/woocommerce-admin/pull/1682) 2019-02-26 10:28:50 +01:00
Albert Juhé Lluveras 4a19d27ec1 Add 'isCheckbox' prop to 'MenuItem' (https://github.com/woocommerce/woocommerce-admin/pull/1620)
* Make column filter menu items not focusable

* Check if onInvoke exists before calling it

* Revert "Check if onInvoke exists before calling it"

This reverts commit e3b63edd51395c0f967991e2d20fccf867e37b91.

* Revert "Make column filter menu items not focusable"

This reverts commit 3e0ac949fa057a0c235876731768b6f312ced998.

* Add isCheckbox prop to MenuItem component

* Fix arrow keys navigation in checkbox menu items

* Table: don't update showCols state when the headers prop changes
2019-02-25 20:25:19 +01:00
Ron Rennick 00b640e2f0 Merge pull request woocommerce/woocommerce-admin#1567 from woocommerce/fix/1450
update chart type query string key to chartType
2019-02-15 12:58:22 -04:00
Albert Juhé Lluveras b61dff32f9 Sort tabular data when selecting a Summary Number (https://github.com/woocommerce/woocommerce-admin/pull/1564)
* Sort tabular data when selecting a Summary Number

* Fix 'orderby' param in orders endpoint
2019-02-15 11:54:41 +01:00
Paul Sealock 2e82211616 Add products/stats endpoint to categories 2019-02-15 09:44:46 +13:00
Ron Rennick 7f4bb8df63 update chart type query string key to chartType 2019-02-14 13:35:08 -04:00
Albert Juhé Lluveras 4962ee5e4e Empty chart message (https://github.com/woocommerce/woocommerce-admin/pull/1499)
* Show empty chart and summary numbers when search returns no results

* Preserve chart mode in empty searches

* Show message in empty charts

* Improve code order

* Add CHANGELOG message

* Rename emptySearch to emptySearchResults

* Improve emptyMessage propTypes comment

* Remove duplicated code

* Improve CHANGELOG message

* Create util function to check if chart is empty

* Update CHANGELOG message

* Add baseValue prop to Chart
2019-02-12 22:42:02 +01:00
Albert Juhé Lluveras b3e028bc81 Show empty chart and summary numbers when search returns no results (https://github.com/woocommerce/woocommerce-admin/pull/1491)
* Show empty chart and summary numbers when search returns no results

* Add changelog message

* Preserve chart mode in empty searches

* Add tests

* Fix CSS Lint error

* Make sure the legend updates when there is no data and it's not requesting

* Rename 'emptySearch' to 'emptySearchResults'

* Fix tests
2019-02-07 10:57:47 +01:00
Joshua T Flowers b7379def1b Format todo comments to match WC Core format (https://github.com/woocommerce/woocommerce-admin/pull/1474)
* Format todo comments to match WC Core format

* Remove variations todo comment
2019-02-06 14:41:53 +08:00
Justin Shreve 949afce248 Add Product Detail Report & Finish Comparison Chart Mode Functionality (https://github.com/woocommerce/woocommerce-admin/pull/1391)
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
2019-02-05 13:12:58 -05:00
Albert Juhé Lluveras 84ef5ffb89 Show empty table when search returns no results (https://github.com/woocommerce/woocommerce-admin/pull/1452)
* 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
2019-02-05 13:00:37 +01:00
Albert Juhé Lluveras 9dd4c10d7d Fix autocompleters in customers and taxes report (https://github.com/woocommerce/woocommerce-admin/pull/1458) 2019-02-04 09:51:29 +01:00
Justin Shreve 53a6e49874 Finish cleaning up client/store. (https://github.com/woocommerce/woocommerce-admin/pull/1403) 2019-01-30 02:22:10 -05:00
Timmy Crawford 10c6016d4c Update usage of lib/number to @woocommerce/number (https://github.com/woocommerce/woocommerce-admin/pull/1400)
* Remove usage of lib/number

* Remove formatNumber usage when currency is used.

* Add wc-number as a dependency of wc-currency.

* Add locutus as a dev dependency.

* Add number to test helper.
2019-01-29 08:48:46 -08:00
Joshua T Flowers 81b6f0f61b Use tableQuery sorting when url query is not present (https://github.com/woocommerce/woocommerce-admin/pull/1378) 2019-01-24 09:36:11 +08:00
Paul Sealock c7b705fb08 SummaryNumbers: close on click for mobile 2019-01-22 11:31:37 +13:00
Justin Shreve 01b96ebea5 Hook up performance indicators to the REST API 2019-01-18 08:19:19 -05:00
Joshua T Flowers 7cdbbf87e8 Update all wc-admin endpoints to v4 (https://github.com/woocommerce/woocommerce-admin/pull/1298)
* 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>
2019-01-18 10:52:58 +08:00
Joshua T Flowers 4b3df7732b Add showMenu prop to TableCard to hide ellipsis menu (https://github.com/woocommerce/woocommerce-admin/pull/1296)
* Add showMenu prop to TableCard to hide ellipsis menu

* Fix proptype description
2019-01-15 10:13:15 +08:00
Justin Shreve 350e296d2c Allow sorting by title and SKU to report tables (https://github.com/woocommerce/woocommerce-admin/pull/1266) 2019-01-10 12:10:31 -05:00
Albert Juhé Lluveras 03e17d372b Add new props to chart component (https://github.com/woocommerce/woocommerce-admin/pull/1247)
* Add different props to chart component that were inferred from 'mode'

* Add new chart props to packages CHANGELOG
2019-01-08 10:21:47 +01:00
Joshua T Flowers ef6d7ec4cb Add leaderboard section (https://github.com/woocommerce/woocommerce-admin/pull/1234)
* 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
2019-01-08 15:20:01 +08:00
Albert Juhé Lluveras a0f23c93c9 Improve Charts X-axis when displaying a single date (https://github.com/woocommerce/woocommerce-admin/pull/1195)
* Improve Charts X-axis when displaying a single date

* Add tests for getXTicks

* Fix typo in tests

* Add assertion in compareStrings test for dates with commas

* Update interval options

* Fix secondaryDate always showing 12AM

* Don't convert dates to UTC when checking if they belong to the same date
2018-12-27 19:51:58 +01:00
Albert Juhé Lluveras 5c8cfbc03f Report components docs (https://github.com/woocommerce/woocommerce-admin/pull/1140)
* Extend docs to report components

* Improve inline documentation in some files

* Update doc files

* Undo unnecessary doc changes

* Remove unnecessary line breaks in sidebar

* Rename 'Client components' to 'Analytics components'

* Minor docs fixes

* Rename toc contents to toc sections

* Update endpoint props doc to add an example and more information

* Fix outdated comment

* Fix merge error
2018-12-22 12:46:10 +01:00
Joshua T Flowers 9a4e613a2e Make user column preferences refer to hidden columns (https://github.com/woocommerce/woocommerce-admin/pull/1150)
* Make user column preferences refer to hidden columns

* Destructure props in onColumnsChange
2018-12-22 10:27:30 +08:00
Robert Elliott ebd857cefa Add/chart dashboard block (https://github.com/woocommerce/woocommerce-admin/pull/1002)
* added new block and dashboard charts

section title and filters... lots of duplicate keys

toggle chart types in block heading

* Updates per feedback.

* Add some documentaiton about new interactive prop on chart/legend

* Revert a few files that only had whitespace changes.
2018-12-21 16:24:26 -08:00
Albert Juhé Lluveras 9ef07a41b6 Merge pull request woocommerce/woocommerce-admin#1075 from woocommerce/add/extend-customers-data-from-endpoint
Extend customers table data with data from WC endpoint
2018-12-18 09:30:03 +01:00
Albert Juhé Lluveras 77381c0e20 Rename isError to getError in report table props 2018-12-15 13:15:13 +01:00
Albert Juhé Lluveras f9533afdda Rename 'totalCount' to 'totalResults' (https://github.com/woocommerce/woocommerce-admin/pull/1093) 2018-12-14 15:56:52 -08:00
Albert Juhé Lluveras 346ed578ae Update comment to specify extendItemsMethodNames must be available in 'wc-api' 2018-12-14 18:12:56 +01:00
Kevin Killingsworth a7aed85244 Add column visibility prefs to all tables (https://github.com/woocommerce/woocommerce-admin/pull/1082)
* 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.
2018-12-13 14:34:23 -06:00
Kevin Killingsworth 11176f7b0e wc-api: Add user meta for UI preferences (https://github.com/woocommerce/woocommerce-admin/pull/1057)
* 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.
2018-12-13 13:24:54 -06:00
Albert Juhé Lluveras c0ee524d6b Remove unnecessary query parameters 2018-12-12 15:51:24 +01:00
Albert Juhé Lluveras 9b4e7ad963 Extract extendTableData to a utils file 2018-12-12 15:25:36 +01:00
Albert Juhé Lluveras c679c8bad7 Extend customers data with data from WC endpoint 2018-12-12 15:22:25 +01:00
Albert Juhé Lluveras bb3e66ef32 Fix wrong default data structure in 'getReportTableData' (https://github.com/woocommerce/woocommerce-admin/pull/1042)
* Fix wrong default data structure in 'getReportTableData'

* Update tests

* Change default prop for tableData from null to an empty object in ReportTable
2018-12-10 09:51:11 -06:00
Jeff Stieler 16f24a31ba Hook up ReportTable to wc-api. 2018-12-07 16:39:42 -07:00
Jeff Stieler 98478653e4 Attempt to include report stats type in resource name prefix rather than identifier. 2018-12-07 16:39:42 -07:00
Jeff Stieler de1da53aaa Use wc-api for Report Chart data. 2018-12-07 16:39:41 -07:00
Albert Juhé Lluveras a393ba543b Fix ReportNumber sometimes receiving NaN values (https://github.com/woocommerce/woocommerce-admin/pull/1026)
* Fix ReportNumber sometimes receiving NaN values

* Remove unnecessary utils function

* Destructure summaryData
2018-12-07 15:13:02 -06:00
Robert Elliott c9ccc015ca move chart and d3chart components into @woocommerce/components package 2018-12-05 12:50:04 +02:00
Joshua T Flowers 9e1cb88dfa Add filters for order tables column headers/rows (https://github.com/woocommerce/woocommerce-admin/pull/781)
* Add filters for order tables column headers/rows

* Move filters inside rows

* Rename filter constants

* Apply filters directly to rows

* Rename Orders table filter to be more consistent with core

* Filter entire reports table
2018-12-05 09:44:32 +08:00
Albert Juhé Lluveras e1fd72d06b Fix 'categories' value in Categories report table summary (https://github.com/woocommerce/woocommerce-admin/pull/995)
* Add table summary to Revenue report

* Fix 'categories' value in Categories report table summary
2018-12-04 13:29:58 -06:00
Albert Juhé Lluveras 093b6d9ec0 Use ReportTable in Revenue report (https://github.com/woocommerce/woocommerce-admin/pull/982)
* Use ReportTable in RevenueTable component

* Convert 'query.per_page' to an integer before using it as a prop
2018-12-03 18:00:13 -06:00
Albert Juhé Lluveras bda7d0a6ee Use ReportTable in Orders report (https://github.com/woocommerce/woocommerce-admin/pull/968)
* Use ReportTable in Orders report

* Get totalCount from hte X-WP-Total header

* Order props alphabetically

* Cleanup report table 'tableData' prop

* Use short-circuit evaluation
2018-12-02 21:40:57 -06:00
Paul Sealock da4dea57be Variations: Add endopoint repsonse to table data 2018-12-03 12:16:43 +13:00
Albert Juhé Lluveras 540a191b57 Use X-WP-Total header to set the total number of items in tables (https://github.com/woocommerce/woocommerce-admin/pull/952)
* Use X-WP-Total header to set the total number of items in tables

* Improve naming

* Improve tests

* Make getReportItems() return a 'data' property by default

* Make getSummary prop behavior more clear
2018-11-29 08:03:04 -06:00
Albert Juhé Lluveras 0cbe3034d8 Merge report tables (https://github.com/woocommerce/woocommerce-admin/pull/928)
* Merge report tables

* Remove unnecessary semicolon

* Improve sorting of variables

* Rename props to tableProps in ReportTable
2018-11-26 08:01:20 -06:00
Paul Sealock 77589bae6f Merge pull request woocommerce/woocommerce-admin#902 from woocommerce/fix/chart-placeholder
Chart: persist orderedKeys when requesting data
2018-11-23 09:57:45 +13:00
Paul Sealock 7d65df783c Chart: Persist orderedKeys between state changes 2018-11-23 09:49:28 +13:00
Albert Juhé Lluveras 56d3a69d13 Default charts to 'time-comparison' (https://github.com/woocommerce/woocommerce-admin/pull/905)
* Default charts to 'time-comparison'

* Fix broken test in ReportChart
2018-11-22 07:03:35 -06:00
Robert Elliott fe66aa9623 updated tests remove layout 2018-11-21 16:41:09 +02:00
Robert Elliott 24758bc80d squashed commits for chart packaging
expand formatting function to xFormats

adding getTooltipValueFormat

remove old chart examples

remove magic numbers and use variables

refactor getTooltipRowValue

update package-lock

allow function formatters and use @wordpress/elements
2018-11-21 16:10:56 +02:00
Albert Juhé Lluveras 2a95345bb9 Add chartMode property to filters configuration (https://github.com/woocommerce/woocommerce-admin/pull/884)
* Add chartMode property to filters configuration

* Add tests

* Cleanup

* Add chartMode propType to filters
2018-11-20 16:21:47 -06:00
Paul Sealock 0d59998625 Persist chart settings 2018-11-20 12:55:30 +13:00
Kelly Dwan 2a9cb6509b Build: Move components to packages dir (https://github.com/woocommerce/woocommerce-admin/pull/804)
* Move components to packages folder

* Update documentation generator to handle packages/components and client/components

* Update component locations

* Update CSS build process

* Remove react-dates css, this is already included by gutenberg

* Fix CSS style - single quotes

* Fix incorrect imports

* Update package-lock with new dependencies

* Update component locations for devdocs

* Fix location of tests
2018-11-15 13:16:23 -05:00
Albert Juhé Lluveras 5033a1ba5c Update comparison chart design and show it on the Product report (https://github.com/woocommerce/woocommerce-admin/pull/816)
* Display comparison chart in Product detail report

* Make legend to overflow in comparison charts

* Show comparison chart also when comparing products

* Update comparison chart legend design

* Send itemsLabel and comparisonChart as props to the ReportChart component

* Update styles and create a legend.scss file

* Minor cleanup

* Fix legend test

* Sort props alphabetically
2018-11-12 15:41:33 -06:00
Kelly Dwan d27cb26ef7 Build: Move `lib/nav-utils` and `lib/history` to `@woocommerce/navigation` (https://github.com/woocommerce/woocommerce-admin/pull/763)
* Move nav-utils and history to new package

* Update config to build and use new navigation package

* Update all imports to use new navigation package

* Remove unnecessary README

* Update nav-utils path
2018-11-05 16:02:04 -05:00
Albert Juhé Lluveras c4bb740f1f Add error message to Top Selling Products table (https://github.com/woocommerce/woocommerce-admin/pull/750)
* Add error message to Top Selling Products

* Add margin bottom to Top Selling Products error message
2018-11-01 18:15:53 +01:00
Albert Juhé Lluveras 33cdba6945 Fix charts redirecting to previous path when changing interval value (https://github.com/woocommerce/woocommerce-admin/pull/731)
* Fix charts redirecting to previous path when changing interval value

* Fix chart being reset when changing interval

* Fix chart being reset when changing filters
2018-11-01 10:13:45 +01:00
Kelly Dwan f62537fc17 Try: Add Lerna to split out utility packages (https://github.com/woocommerce/woocommerce-admin/pull/678)
* Add lerna & GB package-building script

* Move currency library to lerna module

* Update lerna config

* Add publish commands

* Add currency as an faux-external module

* Add separate command to build just core files

* Update dependency path

* Update build script to build all packages into `dist`

* Add packages to the jest test setup

* Move date library to packages

* Update imports to use @woocommerce/date

* Output wcSettings definition before any scripts are output

Fixes issues where wc-dates lib relies on settings object

* Add the build step into travis

* Update jest config to dynamically get package paths

* Update package postcss config to match wc-admin’s main config

* Add combined watch scripts for package+app, add a `clean` command to clean up old build files

* Ignore PHPCS error (leave todo message to fix)

* Concat files with a space, fix issue where all files join in one continuous string and fail the check
2018-10-30 14:57:48 -04:00
Jonathan Belcher 0828ea5258 Fixes number formatting on charts (https://github.com/woocommerce/woocommerce-admin/pull/529) 2018-10-19 09:23:47 -04:00
Paul Sealock b168f36cf2 Merge pull request woocommerce/woocommerce-admin#583 from woocommerce/fix/primary-secondary-typo
ChartData: fix typo in primary/secondary data
2018-10-19 11:17:09 +13:00
Paul Sealock 894105e601 ChartData: fix typo in primary/secondary data 2018-10-19 10:15:03 +13:00
David Levin f74ae15b91 Update the order of orders report summary numbers (https://github.com/woocommerce/woocommerce-admin/pull/547)
* Update the order of orders report summary numbers

* Teamwork makes the dreamwork.
2018-10-18 13:45:36 -07:00
Paul Sealock cf358f50fc Reports: create queries for data requests in one place 2018-10-18 12:02:31 +13:00
Jonathan Belcher f6353591e3 Adds report error component (https://github.com/woocommerce/woocommerce-admin/pull/543)
* Adds report error component

* Add ReportError to chart and summary

* Review fixes
2018-10-17 14:56:50 -04:00
Albert Juhé Lluveras 36c37afe49 Hide day from X axis when the time period is too long (https://github.com/woocommerce/woocommerce-admin/pull/525)
* Refactor getXTicks

* Hide day from X axis when the time period is too long

* Fix X axis labels misaligned in charts

* Align axis ticks to the first day of the month when not displaying the day number

* Store threshold in a variable

* Add missing JSDoc

* Fix charts hanging when the number of days selected was exactly 180

* Improve function naming

* Fix dayTicksThreshold mismatch between date format and chart layout
2018-10-17 15:44:43 +02:00
Jonathan Belcher 386933a182 Refactors out summary and graph (https://github.com/woocommerce/woocommerce-admin/pull/517)
* Refactors out summary and chart
2018-10-16 12:07:43 -04:00