Commit Graph

430 Commits

Author SHA1 Message Date
Paul Sealock 8205112732 Add currency extension (https://github.com/woocommerce/woocommerce-admin/pull/3328)
* Add currency extension

* use wcSettings

* save

* get revenue working

* all reports

* remove error log

* better rename

* add column

* persist queries

* go back to individual hooks

* comments

* address feedback
2019-12-06 11:38:26 +13:00
Justin Shreve 448e1f3e11 Remove Newspack Dependency (https://github.com/woocommerce/woocommerce-admin/pull/3302)
* Switch to @wordpress/component's Button

* Finish button conversion

* Move to @wp/component's CheckboxControl

* Add  ImageUpload component

* Remove Newspack package

* CSS Cleanup

* Handle PR feedback: Fix tests, add ImageUploader basic test, fix FireFox/Safari Display issues, and  currency input bug
2019-12-02 12:39:22 -05:00
Paul Sealock a5a67b107e Settings: Persist date range selection (https://github.com/woocommerce/woocommerce-admin/pull/3293)
* Settings: fix date range persistance

* set undefined on persisted on save

* add comment
2019-11-29 09:54:15 +13:00
Jeff Stieler 9469663379 Decouple date package from `wcSettings`. (https://github.com/woocommerce/woocommerce-admin/pull/3278)
* Decouple date package from wcSettings.

* Update missed documentation and example.

* Expect simpler prop values for date filter.

* Remove unused props from primary/secondary dates.

* Avoid introducing moment dependency for type checking.

* Handle null moment/date values in DateRangeFilterPicker.

* Fix missing ISO date format.

* Fix moment instance detection.
2019-11-26 14:39:40 -05:00
Jeff Stieler c2020507e3 Decouple Navigation from `wcSettings`. (https://github.com/woocommerce/woocommerce-admin/pull/3294)
* Move getAdminLink to wc-admin-settings.

* Add changelog entries.

* Look for `getAdminLink()` in @woocommerce/settings first.
2019-11-22 12:07:26 -05:00
David Levin 52cb35f4de Correcting and clarifying analytics terms and calculations (https://github.com/woocommerce/woocommerce-admin/pull/3104)
* Relabel Net Revenue to Net Sales, revert previous refund work on Gross revenue and rename to total sales. Update the orer of all the things

* Add gross sales calculation to revenue stats endpoint.

* Restore coupon_total when updating order stats.

* Wire up gross sales to revenue report.

* Fix revenue report refunds calculation when there are no refunds.

* update net sales labels and cases in order, product and category tables

* Subtract refunded shipping and taxes from gross sales.

* pluses to minuses to fix the gross revenue and refund totals when refunding

* Add gross_sales to revenue stats orderby enum.

* Change refund labels to Returns

* Remove usage of defunct coupon_total column.

* Store refunded amount in stats table.

* Rename "gross_total" column to "total_sales".

* Net total for refund orders can be used instead of a new column.

* Rename gross_revenue to total_sales.

* Coalesce coupons total in order stats query.

SUM()ing all nulls gives null, not zero.

* Use segmentation selections to backfill missing data.

Fo when report columns and segmentation columns don't match.

* Remove errant gross_sales from expected interval test data.

* Fix gross sales tests for revenue/stats.

* Move missing segment fills back to their original locations.

* Fix remaining tests failing because of gross sales.

* Fix db upgrade function rename of gross_total column.

* Fix linter errors.
2019-11-22 10:06:14 -05:00
Jeff Stieler 17514872ad Decouple currency and numbers packages from `wcSettings`. (https://github.com/woocommerce/woocommerce-admin/pull/3277)
* Remove wcSettings dependency from currency and number packages.

Either take a configuration object in function calls or in a new class constructor.

* Use new Currency class and number format methods in client/.

Compose with store settings to keep the same API.

* Don't reintroduce lodash dependency to currency package.

* Add changelog entries to currency and number packages.

* Update docs, example, and changelog for AdvancedFilters component.

* Use precision-less formatValue() for integer report values.

* Make Currency instance immutable.
2019-11-21 16:51:52 -05:00
Joshua T Flowers 940716d7f5 Add wc admin card classes to leaderboards (https://github.com/woocommerce/woocommerce-admin/pull/3267) 2019-11-21 20:10:37 +08:00
Jeff Stieler f8fa7b6bc7 Fetch autocomplete countries from the API rather than wcSettings object. (https://github.com/woocommerce/woocommerce-admin/pull/3262) 2019-11-19 14:17:15 -05:00
Joshua T Flowers 000d666096 Add tax filtering to orders data (https://github.com/woocommerce/woocommerce-admin/pull/3197)
* Add tax rates filter to orders report

* Add tax rate filters to orders data store

* Add tax rate query filters to order stats data store

* Add tax rate orders link to taxes table
2019-11-13 11:22:06 +08:00
Ron Rennick f78c143f3b Move in-house rest endpoints to private namespace (https://github.com/woocommerce/woocommerce-admin/pull/3204)
* move in-house rest endpoints to private namespace

* PHPCS sniff fixes
2019-11-12 14:15:55 -04:00
Ron Rennick c3c790591f Address revenue discrepancies (https://github.com/woocommerce/woocommerce-admin/pull/3095)
* exclude wc-auto-draft orders from import

* round amounts for tax inclusive pricing

* differentiate between product and overall revenue

* use correct total when importing product line item

* update product revenue labels to "net sales"
2019-10-25 09:29:09 -03:00
Jeff Stieler 1ac8577fc2 Match server-side CSV export format to client-side (https://github.com/woocommerce/woocommerce-admin/pull/2987)
* Add "exportable" report interface for defining CSV export values.

* Define export values for Orders Report.

* Define export values for Products Report.

* Define export values for Categories Report.

* Define export values for Coupons Report.

* Allow commas and double quotes in CSV exported values.

* Fix in-browser export formatting of orders report products.

* Align server-side orders report export formatting with in-browser.

* Cover comma and double quote escaping in CSV export package tests.

* Define export values for Customers Report.

* Embed response links when requesting data for CSV exports.

* Define export values for Downloads Report.

* Move reusable report export functions to a trait.

* Define export values for Stock Report.

* Define export values for Taxes Report.

* Define export values for Variations Report.

* Define export values for Revenue Report.

* Always pass export row data through the filter.

* Fix formatting in test case for CSV coupon export.

* Quote escape CSV headers in client-side export.

Escape values with spaces as well.

* Check if inventory is managed at the product level before using the stock status/quantity.

* Prevent CSV injection in csv-export package.
2019-10-24 09:41:16 -07:00
Darren Ethier fee65dd6ac Decouple wcSettings from published packages. (https://github.com/woocommerce/woocommerce-admin/pull/3001)
* refactor wcSettings in components to use new api

* update test snapshot

* refactor wcSettings in other packages

* fix how defaults are set for setting

* decouple siteLocale from ReportsFilters and AdvancedFilters

* Decouple currency settings from packages

AdvancedFilters, ReportFilters, and NumberFilters now receive currency info as props.

* decouple currency settings from `ReportChart`

* decouple `wcAdminAssetsUrl` setting from `EmptyContent`

- also refactors to remove the need for `ImageAsset` component.

* decouple OrderStatus from wcSettings

* decouple wcAdminUrl setting from ProductImage component

- this also implements a SVG for default product image.

* remove export for image-asset that is no longer present

* remove console.log

* update test snapshots for ProductImage
2019-10-11 11:45:45 -04:00
Jeff Stieler e53d5daa94 Hook up download button to export endpoint. (https://github.com/woocommerce/woocommerce-admin/pull/2900)
* Move TableCard actions from packaged component to ReportTable.

* Build an IE stylesheet for the main app.

* Remove defunct TableCard download test.

* Update components changelog.

* Fix pagination.

Pull query from table data instead of ReportTable props.

* Initiate report export from download button (https://github.com/woocommerce/woocommerce-admin/pull/2951)

* Add report export operations to API spec.

* Initiate a report export job when there is more than one page of report data.

* Add report download "type" to Tracks event.

* Ensure WC_Emails class is hooked in before sending report download emails.

* Set email parameter for background CSV download requests.
2019-10-08 15:02:26 -07:00
Darren Ethier f8ebc4cd6d refactor all client files to use new settings api (https://github.com/woocommerce/woocommerce-admin/pull/3002) 2019-10-07 07:51:25 -04:00
Paul Sealock 029e514c75 wcSettings: fix countries getSettings (https://github.com/woocommerce/woocommerce-admin/pull/2974)
* wcSettings: fix countries getSettings

* Revert "wcSettings: fix countries getSettings"

This reverts commit cdccfa95cded4b1d7e8908102e8814a0281b027e.

* fix incorrect countries usage

* apply countries fix to Customers Report
2019-10-01 10:43:26 +13:00
Darren Ethier d728d38219 Refactor: Alternative approach to implementing extendable settings from the server (https://github.com/woocommerce/woocommerce-admin/pull/2917)
* integrate with new asset data registration (php side)

- includes back-compatibility.

* update js configuration and implement settings alias

- this aliases `@woocommerce/wc-admin-settings` to the settings api exposed via blocks (either the blocks plugin or core) and all the settings provided via the server.
- Adds fallback for back-compat if `wc.wcSettings` is not available in the environment (fallsback to `wcSettings`).

* initial pass to update all wcSettings direct usage to the new api

- this is just an initial pass, more can be done in separate pulls.

* missed one spot for adding new filter implementation

* fix incorrect jest config

* Avoid unnecessary assignment and directly return.

* Remove unnecessary defaults

* Fix inline comment text case.

Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com>

* Remove unnecessary inline comment.

* use @todo instead of TODO

Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com>

* fix incorrect reference in webpack config.

* add missing import and slightly delay dependency injection for scripts

* update get-setting and set-setting callbacks

* disable lint rule for console.error on dev doc builds
2019-09-23 17:47:08 -04:00
Jeff Stieler 2fed2f2467 Fix report column labels on client side. 2019-09-04 07:49:37 -07:00
Ron Rennick 24d3104eca fix merge conflicts 2019-09-03 14:08:02 -03:00
Jeff Stieler 079748cbb2 Remove "filter" from the report charts filter names. 2019-08-28 07:55:55 -07:00
Jeff Stieler c795fb0e09 Allow filters and advanced filters to be added to reports without them. 2019-08-27 12:33:31 -07:00
Ron Rennick 9d2d085aee handle offset attribute and children 2019-08-23 15:34:44 -03:00
Jeff Stieler 7a28fbc0ff Add filters for all report filter configs. 2019-08-23 09:41:42 -07:00
Ron Rennick dbf6b54fd0 Merge pull request woocommerce/woocommerce-admin#2812 from cojennin/fix/2745-csv-coupons
Orders report now shows coupons in Coupon(s) column
2019-08-20 11:18:33 -03:00
Connor Jennings d44af04add Update client/analytics/report/orders/table.js
Co-Authored-By: Joshua T Flowers <joshuatf@gmail.com>
2019-08-20 09:15:55 -04:00
Ron Rennick 17c66a79a5 Merge branch 'master' into fix/2243 2019-08-20 10:04:10 -03:00
Jeff Stieler 6a4616765d Merge pull request woocommerce/woocommerce-admin#2806 from woocommerce/fix/report-column-visibility
Fix bug with checking user preferences for report column visibility.
2019-08-19 10:18:35 -07:00
Connor Jennings 68a8012f57 CSV download of Orders now shows coupons in Coupon(s) column 2019-08-19 12:45:57 -04:00
Ron Rennick 1517f865e1 convert scroll functionality to a component 2019-08-19 03:18:40 -03:00
Jeff Stieler 974566ea0c Fix bug with checking user preferences for report column visibility. 2019-08-16 13:06:19 -07:00
Jeff Stieler 4f4ab5e076 Pass "show data picker" prop to underlying component in ReportFilters.
Fixes errant date picker on the Customers Report.
2019-08-16 10:04:42 -07:00
Ron Rennick d2b48f0fcd scroll import action to import section of settings page 2019-08-14 14:35:28 -03:00
Ron Rennick 833cc7a1c2 convert zero last active date to null in customer query 2019-08-07 16:12:47 -03:00
Paul Sealock d98eceffc7 Revert "Revert "Update to new Snackbar component and notice store"" (https://github.com/woocommerce/woocommerce-admin/pull/2643)
* Revert "Revert "Update to new Snackbar component and notice store""

* Update uploader component to use createNotice

* Bump required WP version to 5.2

* Update required PHP and WP versions in plugin header
2019-07-23 11:26:46 +08:00
Jeff Stieler 69245c848b Merge pull request woocommerce/woocommerce-admin#2638 from woocommerce/add/2605-tracks-priority-3
Add priority 3 Tracks events
2019-07-16 09:10:11 -06:00
Albert Juhé Lluveras f392b5588d Replace 'stringifyQuery' with 'addQueryArgs' (https://github.com/woocommerce/woocommerce-admin/pull/2655) 2019-07-16 10:56:24 +02:00
Jeff Stieler 562a1a231d Send tracks event when historical data is deleted. 2019-07-12 11:46:38 -06:00
Jeff Stieler e5424fdd4d Send a tracks event when analytics settings are reset to defaults. 2019-07-12 11:46:38 -06:00
Jeff Stieler 280542255f Send a track event when analytics settings are saved. 2019-07-12 11:46:37 -06:00
Jeff Stieler 1da8aba8e8 Send a tracks event for report table pagination actions. 2019-07-12 11:46:37 -06:00
Jeff Stieler ea6116592e Merge branch 'master' into add/2604-tracks-priority-2 2019-07-12 11:34:50 -06:00
Jeff Stieler 34e91de4ce Merge pull request woocommerce/woocommerce-admin#2637 from woocommerce/fix/report-table-pagination
Fix "page" parameter collision between routing and table pagination.
2019-07-11 17:23:31 -06:00
Jeff Stieler b92bef4941 Fix "page" parameter collision between routing and table pagination. 2019-07-11 14:18:16 -06:00
Timmy Crawford f4735658d7 Revert "Update to new Snackbar component and notice store (https://github.com/woocommerce/woocommerce-admin/pull/2596)"
This reverts commit 980ff6fa71.
2019-07-10 09:58:51 -07:00
Jeff Stieler 7a7283dffa Send a tracks event when the report table filter search is used. 2019-07-10 08:37:02 -06:00
Jeff Stieler ce731b958a Send tracks event when advanced filter match type is changed. 2019-07-09 16:45:31 -06:00
Jeff Stieler a13487265c Send tracks event when table sorting is changed. 2019-07-09 14:38:53 -06:00
Jeff Stieler f7c48e6738 Send tracks event when report table columns are toggled. 2019-07-09 13:55:51 -06:00
Ron Rennick c31d5eeace Merge pull request woocommerce/woocommerce-admin#2612 from woocommerce/fix/2427
exclude old WC auto-draft orders from import
2019-07-09 13:05:36 -03:00