Commit Graph

143 Commits

Author SHA1 Message Date
Paul Sealock 3fc69b9739 Homepage: Add stats overview selection (https://github.com/woocommerce/woocommerce-admin/pull/4264)
* Homwpage: add stats overview stat toggle

* toggle stats

* fix

* tests

* better hook name

* clean up

* add back in Fragment

* remove extra prop

* better test name
2020-05-05 10:58:39 +12:00
Paul Sealock c500d3fa98 Plugins DataStore: decouple from onboarding (https://github.com/woocommerce/woocommerce-admin/pull/4048)
* Plugins DataStore: Add client side store
2020-04-17 11:58:36 +12:00
Paul Sealock cb4ba39e30 Dynamic Currency with Context API (https://github.com/woocommerce/woocommerce-admin/pull/4027)
* Make currency setting dynamic with context API

* reference Currency

* what is 'this'

* remove comment

* All report tables

* Customers report

* activity panel

* leaderboard test

* business details

* store details

* single source of truth

* shipping rates

* remove currency-format.js

* tidy up

* make Currency a factory function

* factory revenue table

* tables

* Chart y-axis labels

* customers table

* cleanup

* business details

* shipping

* number-format

* stock and downloads tables

* changelog

* cleanup

* SQL example: update to dynamic currencies (https://github.com/woocommerce/woocommerce-admin/pull/4033)
2020-04-03 10:54:38 +13:00
Jeff Stieler f8bc173cfb Only query requested stat totals in reports. (https://github.com/woocommerce/woocommerce-admin/pull/4009)
* Pass specified totals/intervals fields parameter to the Order Stats Query.

* Only request stats used in render for report summaries and charts.

Implement Orders as an example.

* Specify stats fields for all report requests.

* Add 'fields' parameter handling to all stats endpoint controllers.

* Reduce stats fields requested by dashboard charts.
2020-03-31 09:08:40 -06:00
Allen Snook 078de3e9c0 Merge add/wc-pay to master, enabled for development only (https://github.com/woocommerce/woocommerce-admin/pull/4022)
* Add feature flag for wcpay (https://github.com/woocommerce/woocommerce-admin/pull/3958)

* Add card to payments task for WooCommerce Payments (https://github.com/woocommerce/woocommerce-admin/pull/3978)

* Add card to payments task for WooCommerce Payments

* Add missing plugin and settings PHP constants for woocommerce payments

* Add endpoint to return url to kick off wcpay

* Fix incorrect option name

* I can haz purple with white text, plz

* Linkify TOS, settings

* Recommend wcpay when visible; move wcpay to list top

* Test for wcpay feature flag

* Improved handling of feature flag

* If the user is an agency, include wcpay docs link on card

* Reverse agency logic, LOL

* Camel case fillRule etc

* Turn off wcpay for core and plugin for now
2020-03-27 16:24:32 -07:00
Matt Sherman 0f18d6a326 Change "Google Shopping" to "Google Ads" and update Google Ads logo (https://github.com/woocommerce/woocommerce-admin/pull/4007) 2020-03-27 13:18:27 -04:00
Darren Ethier 783f613815 wp.data Settings refactor
add data store for settings using wp.data

add use-select-with-refresh example

replace fresh-data usage with new settings data store for settings page

Add data package

move to packages

Fix isDirty after save

Add isBusy to primary button when saving

update Readme

remove comment

readme to use useSelect

Revert "update Readme"

This reverts commit 7402fd49b8f384fde5878e0bee0616f0a87bb4f6.

Data Layer: Settings page to use Settings store (https://github.com/woocommerce/woocommerce-admin/pull/3430)

* Data Layer: Settings store as source of truth for settings page

This reverts commit 7402fd49b8f384fde5878e0bee0616f0a87bb4f6.

* fixup

* save on reset

* non mutable constants

* add set/getSettings

* save using setSettings

* separate HOC

* cleanup

* remove settingsToData

* withHydration

* remove withSettings HOC

* renmove useSettins for now

* withSettingsHydration updates

* Revert "withSettingsHydration updates"

This reverts commit f2adf108fbe19b574978fea5925a1a18e7ed3007.

* rename withSettingsHydration

* redo withSettingsHydration simplification

* restore

* useSettings

* render using useSettings

* handleInputChange working

* get setIsDirty working

* saving works

* reset and cleanup

* cleanup

* use snake case on hook files

* use clearIsDirty

* Avoid mutation on setting update

* remove @todo

* persiting -> isPersisting

* better reducer ternaries

* add wcSettings as arg to withSettingsHydration

reset package-lock

Settings: split out mutable wcAdminSettings (https://github.com/woocommerce/woocommerce-admin/pull/3675)

Settings: handle async settings groups (https://github.com/woocommerce/woocommerce-admin/pull/3707)
2020-03-25 16:20:17 +13:00
Joshua T Flowers 6c4c8fb7c1 Onboarding: Add toggles to configured payments in task list (https://github.com/woocommerce/woocommerce-admin/pull/3801)
* Add isConfigured property to all payment methods

* Remove payment configuration checks from server side

* Add isEnabled flags to all payment methods

* Add payment method toggle methods

* Extract payment methods

* Fix update options selectors

* Add error handling for payment method updates

* Remove configured from saved option

* Add event when payment is toggled

* Check if payment option exists before checking config

* Only fetch PayPal connection URL when plugin is active

* Only fetch Stripe connection URL when plugin is active
2020-03-16 12:09:29 +01:00
Bec Scott b8aee0f93b Onboarding: business step: add Google Ads extension install (https://github.com/woocommerce/woocommerce-admin/pull/3725)
* Onboarding: business step: add Google Ads extension install

* Updated extension slug etc to match the extension

* Fix a couple of slugs that were missed

* Remove extra div that was breaking because of an unrelated change (reused class name)

Co-authored-by: Bec Scott <me@becdetat.com>
2020-03-16 16:12:30 +10:00
Joshua T Flowers da6f113d18 Onboarding: Update payments task flow (https://github.com/woocommerce/woocommerce-admin/pull/3782)
* Add new payment method cards

* Refactor payment methods

* Track payment configuration and completion client-side

* Record tasklist_payment_connect_method event in markConfigured

* Record event on payment setup

* Add recommended payment method ribbon

* Return to payments task even when previously configured
2020-03-15 22:45:19 +01:00
Paul Sealock 35462eab0d Coding standards: fix errors (https://github.com/woocommerce/woocommerce-admin/pull/3763) 2020-02-25 14:18:52 +13:00
Paul Sealock 43274b9fa8 Coding Standards: Fix getReportItems function call order (https://github.com/woocommerce/woocommerce-admin/pull/3724) 2020-02-17 14:02:32 +13:00
Darren Ethier 33c5b41e3f Align WooCommerce javascript code standards/linting/styles with WordPress core. (https://github.com/woocommerce/woocommerce-admin/pull/3674)
* align code styles with the same configuration as Woo-Blocks

* initial pass of reformat-files

* applies manual fixes to various new linting errors surfaced by the configuration change.

* Fix state mutation in image-upload

* remove unused pre-commit-hook.js

* requestAnimationFrame -> window.requestAnimationFrame

* wc-api eslint changes

* eslint fixes on client/lib and client/settings

* client/header eslint changes

* fixes for client/dashboard part 1

* fixes client/dashboard part 2 of 2

* client/analytics part 1

* client/analytics continued

* client/analytics, last batch

* rename __mock__ directory

* pass in useEffect, useState from React component or function

* remove '+' from sprintf string argument

* use ref instead of findDOMNode

* reformat and repaply package.json changes

* install deps before running linter in Travis

* useGetCountryStateAutofill

* counryStateAutofill

* countryStateAutofill

Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-02-14 15:23:21 +13:00
Joshua T Flowers e1bb3255c9 Onboarding: Hide plugin install step when already installed (https://github.com/woocommerce/woocommerce-admin/pull/3575)
* Remove already active plugins from install list

* Update global with newly activated and installed plugins

* Cache activated plugins to prevent step removal
2020-01-17 09:46:11 +08:00
Joshua T Flowers d5444f6351 Updating unread stock indicator on stock update (https://github.com/woocommerce/woocommerce-admin/pull/3550)
* Force refetch of low product query after updating stock

* Continue showing unread indicator while fetching
2020-01-14 18:19:35 +08:00
Justin Shreve 5068282b7b Add purchase modal at the end of the profile wizard (https://github.com/woocommerce/woocommerce-admin/pull/3444)
* Add purchase modal to confirm intent before cart redirect

* Handle PR feedback: Fix comment on getProductIdsForCart, move cart modal to open on theme page (which rewrites the mark completed functionality), fix CSS display, Add busy stsate to redirect to cart button

* Fix some minor naming issues and add a busy state on thee later link
2019-12-20 07:58:38 -05:00
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
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 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
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
Joshua T Flowers 4fb1945917 Onboarding: Use ShipStation for AU, GB, and CA (https://github.com/woocommerce/woocommerce-admin/pull/3200)
* Add shipstation to allowed plugins list

* Use shipstation for qualifying countries

* Add default value for onError prop in Plugins component
2019-11-12 10:44:39 +08:00
Joshua T Flowers 6520493738 Onboarding: Pre-fill profiler fields with data (https://github.com/woocommerce/woocommerce-admin/pull/3165) 2019-11-05 08:05:20 +08:00
Joshua T Flowers dcea8db86a Onboarding: Add setup theme step to profiler (https://github.com/woocommerce/woocommerce-admin/pull/3124)
* Add wccom redirect if purchasable products exist

* Update path to remove query when profiler is complete

* Fix lastReceived time for profile items update

* Add busy state to theme choose buttons
2019-11-01 10:04:54 +08:00
Justin Shreve e9f4d45274 Install business extensions on the business details page (https://github.com/woocommerce/woocommerce-admin/pull/3084)
* Install Facebook & MailChimp plugins on the business details page

* Handle PR feedback: Add missing plugin name constants, and improve plugin component error handling
2019-10-23 11:17:38 -04:00
Joshua T Flowers 0ee9188e58 Onboarding: Skip tax steps if complete and mark task complete (https://github.com/woocommerce/woocommerce-admin/pull/3007) 2019-10-17 06:01:56 +08:00
Joshua T Flowers 181c02bbc8 Onboarding: Add redirect URL option to jetpack connection URL (https://github.com/woocommerce/woocommerce-admin/pull/3052)
* Add redirect_url as rest param to jetpack connection

* Add query param to jetpack connection URL in wc-api

* Add redirect URL to connection and plugin steps
2019-10-17 06:00:47 +08: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
Justin Shreve c2a340da55 Add Stripe, PayPal, Klarna, and Square Connection Flows to the Payments Task (https://github.com/woocommerce/woocommerce-admin/pull/2897)
* Add payment method configuration

* Add stripe connection code

* Finish stripe connection logic

* Add PayPal Connection Flows

* Handle PR feedback: Enable methods when configuring via manual mode, update error modal to just rely on the errorMessage state, add TOS link and acceptance to the profile wizard, update optionsIsRequesting usage, and update docblocks.

* Update TOS message / display

* Add missing success messages on manual save

* Add Square & Klarna to Payments Task (https://github.com/woocommerce/woocommerce-admin/pull/2960)

* Add Square to payments task

* Add logos to payment task

* Add Klarna configuration, and fix assetUrl usage
2019-10-03 12:03:29 -04:00
Joshua T Flowers f095466442 Onboarding: Add create homepage logic to "Customize Appearance" step (https://github.com/woocommerce/woocommerce-admin/pull/2889) 2019-09-06 22:18:44 +08:00
Joshua T Flowers 7bce0b710f Onboarding: Add "Customize Appearance" task (https://github.com/woocommerce/woocommerce-admin/pull/2857)
* Add initial Customize Appearance task

* Add options wc endpoint

* Add wc-api specs to manage options
2019-09-02 11:45:56 +08:00
Justin Shreve e5b4606047 Add base payments task & jetpack connection status method (https://github.com/woocommerce/woocommerce-admin/pull/2853)
* Add a base for the payments task, with the ability to choose methods. Also adds Jetpack connection status.

* Handle PR feedback
2019-08-29 12:41:04 -04:00
Justin Shreve fe585aa2ee Onboarding - Profile Wizard: Update plugin installation step to deal with previously installed plugins (https://github.com/woocommerce/woocommerce-admin/pull/2825)
* Handle previously installed plugins during the onboarding wizard

* Allow the activate endpoint to activate multiple plugins at once, avoiding a race condition.

* Handle PR feedback

* Add the ability to fetch active plugins via wc-api
2019-08-23 08:56:57 -04:00
Joshua T Flowers 234e4d513c Add plugin and jetpack wc-api methods to shipping task (https://github.com/woocommerce/woocommerce-admin/pull/2778)
* Add shipping labels step

* Add jetpack connection selectors to wc-api

* Add plugin install and activation methods to wc-api

* Add shipping connect step

* Add busy cursor CSS to buttons
2019-08-21 14:34:21 +08:00
Joshua T Flowers f4d7936b17 Onboarding: Add shipping rate base task (https://github.com/woocommerce/woocommerce-admin/pull/2760) 2019-08-21 13:58:47 +08:00
Jeff Stieler 6cb15280bb Wait until all chart data page requests are complete before rendering. 2019-08-13 15:27:15 -07: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
Timmy Crawford 3a781d1af0 Settings: Fix notice shown after save. (https://github.com/woocommerce/woocommerce-admin/pull/2660)
* Settings: Fix notice shown after save.

* Updates per feedback.
2019-07-22 14:15:41 -07: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 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
Joshua T Flowers 980ff6fa71 Update to new Snackbar component and notice store (https://github.com/woocommerce/woocommerce-admin/pull/2596)
* Add new wordpress/components version and fix dependencies

* Add in snackbar styling and gutenberg variables

* Convert all existing notice actions to wordpress/notices

* Fix linting errors

* Add package.lock changes

* Update search list control snapshots with new attributes
2019-07-08 12:10:34 +08:00
Albert Juhé Lluveras 808143d7c9 Remove updated stock products from Activity Panel (https://github.com/woocommerce/woocommerce-admin/pull/2442)
* Remove updated stock products from Activity Panel

* Use prefers-reduced-motion preference

* Update comparison to check if stock quantity is 'lower or equal to' lowStockAmount

* Focus quantityInput on 'beginEdit' instead of 'componentDidUpdate'

* Add comment explaining why we hide cards

* Refactor updateProductStock action

* Add type and parent_id properties to update
2019-06-27 11:21:43 +02:00
Paul Sealock 4aab25b8ba Table queries: remove befor/after from no interval endpoints 2019-06-14 06:21:35 +12:00
Paul Sealock ed21ccf62e Merge pull request woocommerce/woocommerce-admin#2387 from woocommerce/fix/2365-improve-tab-switching-read-suppression
Improve hidden tab suppression/fix rapid requests
2019-06-13 09:22:48 +12:00
Jeff Stieler f88efb3173 Don’t dispatch fresh-data request actions when document is hidden. 2019-06-12 12:58:46 -06:00
Jeff Stieler b83ef86add Merge pull request woocommerce/woocommerce-admin#2325 from woocommerce/add/admin-note-trigger-action
Trigger an action server side when admin note actions are clicked
2019-06-12 17:04:10 +02:00
Albert Juhé Lluveras 5d01cee56c Add progress bars to Historical Data Import screen (https://github.com/woocommerce/woocommerce-admin/pull/2312)
* Hook up import/status endpoint to Historical Data Import screen

* Fix PHP tests

* Add speak message when the import is complete

* Several fixes

* Cleanup

* Update progress bars every 3 seconds and bugfixes

* Rename ongoingImport to activeImport

* Use timestamp to identify queries

* Use timestamps for historical data state

* Add 'initializing' status

* Cleanup

* Pass less props around

* Refactor getStatus

* Set stop timestamp on request error

* Typo
2019-06-11 14:47:53 +02:00
coderkevin 78e85f87c3 Improve hidden tab suppression/fix rapid requests
This fixes the rapid request problem that was happening when switching
tabs while having timed out requests. It changes the approach from
suppressing the actions sent out to preventing the read function from
being called at all.

I think the original problem has occurred because the original approach
was relying on an internal implementation of apiFetch from wp.data. This
new approach does not have such a dependency. It prevents apiFetch from
even being called. However, in the process, it will also prevent any
newly required resources from being fetched if the user manages to
switch tabs before it is requested. (e.g. refresh, then switch tabs
quickly).
2019-06-10 17:03:08 -05:00