Commit Graph

100 Commits

Author SHA1 Message Date
louwie17 992951f3ef Bump package versions for release (https://github.com/woocommerce/woocommerce-admin/pull/7106)
* Bump package versions for release

* Update start plugin dependency version

* Add changelog to components and onboarding package
2021-06-09 18:01:07 -03:00
Joshua T Flowers a2fa141bcb Update payment gateway suggestions semantics to be more consistent (https://github.com/woocommerce/woocommerce-admin/pull/7130)
* Rename and simplify frontend component names

* Rename feature flag and feature folder

* Rename transients and filters

* Rename SlotFills

* Fix feature name comment

* Update variable naming in payment suggestions

* Update WCPay Button component

* Rename suggestion key to id

* Rename recommended to recommendation

* Add changelog entry

* Update isConfigured to needsSetup

* Fix key id reference in WCPayMethodCard

* Update onboarding component filenames and exports

* Fix typo

* Add changelog entry

* Fix up remaining references to keys/ids
2021-06-08 13:40:57 -04:00
Joshua T Flowers 09840c9239 Optimize payment gateway resolution (https://github.com/woocommerce/woocommerce-admin/pull/7124)
* Pass down installed payment gateways instead of refetching

* Resolve individual gateways after resolving all gateways

* Add changelog entry
2021-06-07 15:04:19 -04:00
Tomek Wytrębowicz ca70d90bf7 Add `md5` for `/data` dependencies. (https://github.com/woocommerce/woocommerce-admin/pull/7087)
It was used, but not stated in `package.json`.

Fixes woocommerce/woocommerce-admin#7086.
2021-05-31 17:29:45 +02:00
Joshua T Flowers dc175824c9 Hook up payments gateway data store (https://github.com/woocommerce/woocommerce-admin/pull/7038)
* Hook up payment gateway data store

* Fix deprecated onSubmitCallback in dynamic form

* Throw catchable errors in data store

* Provide a way to get errors from the data store

* Hook up payment connection update with data store

* Remove redundant requesting state on selectors

* Add changelog entry

* Handle PR feedback

* Fix linting errors
2021-05-26 14:31:30 -04:00
louwie17 b3c6d25daa Fix deprecated warnings from `select` control in `@wordpress/data-controls` (https://github.com/woocommerce/woocommerce-admin/pull/7007)
* Made use of the wordpress/data controls instead of depreciated data-controls package

* Fix test and add changelog

* Remove space
2021-05-25 12:14:31 -03:00
Moon 9613c04d31 Add a new store to interact with WC Payments REST APIs (https://github.com/woocommerce/woocommerce-admin/pull/6918)
* Add a new store to interact with WC Payments REST APIs

* Convert to Typescript

* Refactor payments store

* Fixed type on GET_PAYMENT_GATEWAYS_SUCCESS action name

* Added SettingDefinition

* Added PaymentSelectors type

* Updated Array<type> to string[]

* Update action name in test

* Move stub.ts out of test directory

* Set type for the test stub and change order type to number | ""

* Rename action type name

* Add changelog

* Follow _REQUEST _SUCCESS _ERROR action naming

* Add a new action and reducer for getPaymentGateway

* Change store key

* Move to packages/data

* Export store name
2021-05-24 13:29:44 -04:00
Jeff Stieler 5e51901e6a Update package versions for publishing. (https://github.com/woocommerce/woocommerce-admin/pull/6985) 2021-05-13 09:42:04 -06:00
Mik 820bf30e29 Replace marketing extension - Google Listings and Ads (https://github.com/woocommerce/woocommerce-admin/pull/6939)
* Replace google icon

* Remove note for Google Ads extension

* Replace extension in API OnboardingProfile

* Record event for new extension

* Replace extension in onboarding flow

* Replace extension benefits

* Change background colour of Google icon

* Fix svg warnings

* Add changelog entry

* Fix prettier error

* Add old note to obsolete list for removal
2021-05-10 10:56:47 +01:00
Ilyas Foo de9cfb210d Try add payment method selector to onboarding store (https://github.com/woocommerce/woocommerce-admin/pull/6921)
* Added payment method to onboarding data store

* Add reducer test

* Address feedback on reducer naming convention, isResolving, enabledMethods

* Move out types to live in its own island

* Add a comment to remind ourselves for utilizing payments data store for enabled payment gateways

* Update changelog
2021-05-07 18:06:35 +08:00
Christos Lilitsas 1edb849c67 Remove allowed keys list for adding woocommerce_meta data (https://github.com/woocommerce/woocommerce-admin/pull/6889)
* introduce filter for wc meta preferences

* package changelog

* added PR number

* Remove allow list for woocommerce_meta keys

* Remove hooks dep

* Lint js fixes

* Update readme.txt

* Update readme.txt

* Fix test.

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2021-04-28 18:18:29 -04:00
louwie17 071a68b950 Update task list component to make use of new experimental list (https://github.com/woocommerce/woocommerce-admin/pull/6849)
* Add initial task item component with the new task list

* Switch components to functional components

* Some minor updates from the last rebase

* Fix missing variables.

* Fix tests

* Add animation for the experimental list

* Fix lint error

* Add changelog

* Fix E2E tests

* Update PR suggestions and export list from experimental package

* Fix dismiss styling issue

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2021-04-27 12:23:34 -03:00
louwie17 be7dd2dd5e Add recommended payment methods (https://github.com/woocommerce/woocommerce-admin/pull/6760)
* Add initial payment recommendations code for the payments settings

* Added request data for the recommended payments

* Some styling updates and make sure it does not show when marketplace suggestions is disabled

* Update url

* Update comment in php class

* Add tests

* Fix lint errors

* Remove unnecessary type

* Fix lint error

* Fix broken test

* Convert plugin package to typescript

* Fix lint errors

* Add changelog

* Add support for locale-data

* Fix track name

* Fix up the tests

* Fix lint errors

* Address PR feedback

* Add tests for option hydration

* Make types more robust in plugins reducer

* Made use of SlotFill component instead of page registry and router

* Removed console log, and fixed types

* Add newer version of i18n to data package, for newer types

* Make the request to WooCommerce.com more restrictive

* Fix path of import

* Update PHP with suggested changes

* Remove SlotFill with applyFilters

* Update copy and PR feedback

* Update package lock

* Updated package lock

* Fix the package lock

* Added dot, and some minor styling changes

* Add test instructions
2021-04-20 14:17:19 -03:00
louwie17 28d4c03ae0 Add try catch around JSON parse of users meta values (https://github.com/woocommerce/woocommerce-admin/pull/6819)
* Add try catch around JSON parse of users meta values

* Add changelog
2021-04-16 17:31:59 -03:00
louwie17 7859e37221 Making experimental package public and updating its dependency versions (https://github.com/woocommerce/woocommerce-admin/pull/6810)
* Making experimental package public, and updating the dependency versions

* add experimental to webpack and make explat public

* bump DEWP package version

* use filepath for inter package dependencies

* load experimental script

* remove check for experimental

Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
2021-04-16 15:34:15 +12:00
Paul Sealock 8c135e31c5 bump package versions (https://github.com/woocommerce/woocommerce-admin/pull/6767) 2021-04-13 08:32:27 +12:00
Joel Thiessen 588776deb3 Fix persisted queries being lost when navigating to excluded page (such as Homescreen) (https://github.com/woocommerce/woocommerce-admin/pull/6614) 2021-04-02 14:35:31 -07:00
Sam Seay cc01b9816e Fix TypeScript build for `packages` and add types for wc/data's onboarding store (https://github.com/woocommerce/woocommerce-admin/pull/6595) 2021-03-25 10:29:37 +13:00
Fernando 93cc81206e Payments task: include Mercado Pago (https://github.com/woocommerce/woocommerce-admin/pull/6572)
* Added Mercado Pago payment gateway

# Conflicts:
#	client/task-list/tasks/payments/index.js
#	client/task-list/tasks/payments/methods.js

* Added tests

* Added plugin's name to constants

* Added default url

* Modified card copy

* Modified copy

* Added changelog

# Conflicts:
#	readme.txt

* Added testing instructions

# Conflicts:
#	TESTING-INSTRUCTIONS.md

* Added "Local Partner" ribbon

* Using local image

* Fixed typo

* Fixed line duplication

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2021-03-22 15:57:43 -03:00
Moon fda300ff4f Improve WC Shipping & Tax logic (https://github.com/woocommerce/woocommerce-admin/pull/6547)
* Improve WC Shipping & Tax logic

* Add changelog

* Simplify return statement

* Add test for filtering selected extensions

* Fix broken test
2021-03-17 01:22:33 -07:00
Fernando 5b368f4227 Store profiler: Business Details steps changes (https://github.com/woocommerce/woocommerce-admin/pull/6503)
* Added "MailPoet" option to Business Details step

This commit adds the "MailPoet" option to Business Details step in the OBW

* Fixed plugins order

* Creative Mail option toggled off by default

This commit toggles off the Creative Mail option by default

* Fixed copy and image URL

* Added mailpoet.png image

* Added changelog

# Conflicts:
#	readme.txt

* Added testing instructions

# Conflicts:
#	TESTING-INSTRUCTIONS.md

* Fixed key

* Fixed lint error

* Fixed testing instructions

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2021-03-09 15:00:34 -03:00
Sam Seay 9225fce382 Fix a bug in useSettings that causes an infinite loop. (https://github.com/woocommerce/woocommerce-admin/pull/6540) 2021-03-09 12:44:11 +13:00
Joshua T Flowers 40a86daf2f Remove active item from navigation store (https://github.com/woocommerce/woocommerce-admin/pull/6486)
* Remove active item from navigation store

* Add changelog entry
2021-03-03 16:57:00 -05:00
Sam Seay 630f31ae9d Clean up unused deps and add TS to the build. (https://github.com/woocommerce/woocommerce-admin/pull/6441) 2021-03-01 16:01:22 +13:00
Paul Sealock 101df3b019 Add Dependency Extraction Webpack Plugin (https://github.com/woocommerce/woocommerce-admin/pull/5762)
* Add woo flavored DEWP

* clean up webpack config

* clean

* marketing coupons

* onboarding scripts

* nav scripts

* better imports of deps

* add asset files to bundle

* under git rebase conflict error

* try order

* Add wp_set_script_translations to the scripting loop

* changelog
2021-03-01 12:48:52 +13:00
Joshua T Flowers 9c5aa6d318 Move capability checks to client (https://github.com/woocommerce/woocommerce-admin/pull/6365)
* Move user data store folder

* Add user capability check hook

* Don't limit script loading by user capability

* Convert ActivityPanel to functional component

* Update ActivityPanel to use useSelect

* Check that a user can manage woocommerce for the store setup tab

* Add capabilities to pages

* Add testing instructions
2021-02-19 08:57:17 -05:00
Joshua T Flowers 452494a4fe Move favorited menu items to primary menu (https://github.com/woocommerce/woocommerce-admin/pull/6290)
* Update menu ID when favoriting an item

* Allow favorites to be included alongside the primary menu items

* Add categories to favorites menu server-side

* Don't reset menu state when active item is the same

* Make sure favorites are finished resolving before showing
2021-02-16 11:12:25 -05:00
Joshua T Flowers cb03659dbd Add navigation favorites data store (https://github.com/woocommerce/woocommerce-admin/pull/6275)
* Add favorites data methods

* Add reducer tests

* Refactor actions to be more event based

* Add favorites resolver

* Fix requesting property for addFavorite

* Fix up misnamed types and missing yields

* Update nav data store to work with REST endpoints

* Remove errant addFavoriteSuccess call
2021-02-10 15:26:11 -05:00
louwie17 3d330bcee3 Fix the react state update error on homescreen (https://github.com/woocommerce/woocommerce-admin/pull/6286)
* Fix the react state update error on homescreen

* Fix note store dependency

* Update package lock file

* Add tests, and revert package-lock

* Add transient notices tests, and address PR feedback
2021-02-09 11:19:43 -04:00
louwie17 e7c0d0b8b1 Add paypal commerce obw integration (https://github.com/woocommerce/woocommerce-admin/pull/6261)
* Initial paypal plugin name replacement

* Add necessary fields for the Paypal plugin

* Updated payment methods info to use new options key

* Add most of the OBW paypal integration

* Some old code cleanup

* Get ready for the dynamic onboarding addition.

* Update paypal onboarding, adding script after plugin enabled

* Revert some old changes

* Check if plugin is enabled correctly

* Allow for manual input as a fallback

* Fix unit tests and alter the config updates

* Update plugin to use latest rest endpoint instead :)

* Add comment

* Fix some naming from PR feedback

* Made use of the payment gateway info from tasks/status, and show 500 error message

* Add support for the status and set credential endpoints

* Set the enabled value in ppcp-settings as well

* Added fall back for the 'get-status' method

* Fix issue where I was overwriting the options :/

* Small fix for when updating items manually

* Add changelog

* Remove old tests

* Add testing instructions
2021-02-06 09:41:26 +10:00
Sam Seay 6847c44869 Add the Mollie payment provider setup task (https://github.com/woocommerce/woocommerce-admin/pull/6257)
* Whitelist the mollie plugin and ensure it does not crash on activation.

* Improve error messages for failed plugin installs.

* Add the payment provider screen for the Mollie payment provider.

* Revert change to try/catch activation, its not needed.

* Move the whitelist of mollie to Onboarding.php.

* Add api fetch to dep list of components, update the node setup workflow on gh actions.

* Pass indsutry to the klarna tests to avoid a crash.

* Add some tests for the mollie payment method.

* Remove redundant change to handler.

* Add a changelog entry for the feature.

* fix name of option

* Add testing instructions

Co-authored-by: Rebecca Scott <me@becdetat.com>
2021-02-05 13:41:55 +10:00
Darren Ethier 4210b6f0a8 Update @wordpress/eslint-plugin dependency to latest version. (https://github.com/woocommerce/woocommerce-admin/pull/5856)
* update @wordpress/eslint-plugin dependency to latest version

* local prettier config isn’t needed anymore because of fix in upstream package

* add jsdoc config to use typescript format for jsdocs

* update changelog

* update packages and include .prettierrc.js back in for code editor support of prettier

* add docs

* minor prettier fix in test file

* Convert all new eslint rules throwing errors to warnings temporarily to be handled in separate prs

* updated changelog

* fix package-lock.json

* prettier auto-fixes

* add prettier dependency at root

* sigh prettier is being finicky

* version bump

Co-authored-by: Paul Sealock <psealock@gmail.com>
2021-01-26 13:24:28 +13:00
louwie17 74b3eccbc9 Add option to create product by template (https://github.com/woocommerce/woocommerce-admin/pull/5892)
* Initial product template modal

* Add custom product template for the new-post route

* Add test, and code for making use of the insert_post action

* Added ProductTemplates Datastore to create template with REST api

* Add back variation method, deleted by accident

* Move product from template endpoint to OnboardingTasks class

* Fix lint errors

* Added tracks and template hooks

* Rename product create permission check function, for less confusion

* Remove duplicate recommended option

* Fix stylelint errors

* PHP tests for the product_from_template endpoint

* Fix onboarding php unit tests

* Write tests for client product template options

* Refactored list component, to use it as a radio control list

* Fix lint errors

* REmove assertion as it fails on the ci

* Add changelog

* Updating tests to make sure all product attribute taxonomies are removed

* Add more specific assertions for importing sample products test

* Update the sample products test

* Deconstruct item object, from PR suggestion

* Fix PHP errors, by updating the createProductFromTemplate call
2021-01-25 12:52:42 -04:00
Fernando 513173a9d9 Add merchant email notifications (https://github.com/woocommerce/woocommerce-admin/pull/5922)
* Added MerchantEmailNotifications class

* Added new type and Events refactor

# Conflicts:
#	src/Events.php

* Added templates

* Refactored MerchantEmailNotifications and NotificationEmail

* Templates refactored

* Added email opening tracking endpoint

* Added templates handling

* Moved folder `MerchantEmailNotifications`

* Fixed template extensibility

* Fixed note `heading` check

* Added default type in `get_template_filename`

* Added tests

* Removed bypass

* Modified URL

* Added required noteTypes

* Added flag for functionallity

* Fixed plain link

* Fixed comment

* Turned email notifications on by default

This commit adds the code to turn email notifications on by default

* Fixed email styles

* Fixed typo

* Renamed method "possible_send" as "run"

* Removed unnecessary control

* Fixed another typo

* Renamed method as "get_notification_email_addresses"

* Refactored method "send_merchant_notification"

* Renamed plain-merchant-notification

* Fixed tests

* Merchant email notifications - Action triggering (https://github.com/woocommerce/woocommerce-admin/pull/5976)

* Added templates

# Conflicts:
#	includes/emails/plain-mechant-notification.php

# Conflicts:
#	includes/emails/html-merchant-notification.php

* Added note action triggering

This commit adds the note actions triggering

# Conflicts:
#	includes/emails/html-merchant-notification.php

* Fixed error handling

* Refactored "trigger_note_action" method

* Fixed actions url

* Fixed note URL

* Added external redirect

* Added image and html handling for email

* Fixed tests

* Fixed buttons style

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Add your first product: email notification (https://github.com/woocommerce/woocommerce-admin/pull/6024)

* Added AddFirstProduct note

# Conflicts:
#	src/Events.php

* Added "AddFirstProduct" email note

This commit adds the email note "AddFirstProduct"

* Fixed image

This commit removes the image img-product-light.svg to use a png instead. Otherwise, the gmail proxy would break the image

* Fixed readme.txt

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

* Added readme.txt

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2021-01-12 21:09:22 -03:00
Jeff Stieler 0c951a4652 Reduce Unnecessary Re-renders in Revenue Report (https://github.com/woocommerce/woocommerce-admin/pull/5986)
* 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.
2021-01-07 14:01:45 +13:00
louwie17 cad707f57c Highlight help panel with tooltip (https://github.com/woocommerce/woocommerce-admin/pull/5826)
* Show highlight help panel popup after user enters uncompleted task more then once

* Updated styling of highlight tooltip

* Removed empty array from the useSelect to prevent unnecessary re-renders

* Updated styling of the highlight tooltip to match wireframe and wrote tests

* Fix close button location

* Add event tracking

* Add changelog

* Make use of user preferences meta data for task visit tracking

* Add support for toggling the show boolean

* Make sure the delay works correctly for highlight tooltip

* Continue tracking tasks visit count, and added onShow callback for tooltip
2020-12-18 09:17:07 -04:00
Jeff Stieler e342864b74 Use createHigherOrderComponent(). (https://github.com/woocommerce/woocommerce-admin/pull/5898)
Fixes some "anonymous" components in tree.
2020-12-17 10:03:09 -05:00
louwie17 e2c7937f44 Only show card placeholder for item that is updating, not the whole list (https://github.com/woocommerce/woocommerce-admin/pull/5845)
* Only show card placeholder for item that is updating, not the whole list

* Always merge reviews
2020-12-11 09:56:44 -04:00
Bec Scott baaac28228 Send store age in weeks to tracks (https://github.com/woocommerce/woocommerce-admin/pull/5817)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-12-04 11:12:28 +10:00
louwie17 98a55aaeb9 Migrate reviews panel to home screen (https://github.com/woocommerce/woocommerce-admin/pull/5706)
* Create initial reviews panel and displaying it on the home screen

* Update reviews package to support updating and deleting reviews

* Allow custom icons to be defined for rating component

* Add approve, spam, and delete actions to home screen review panel

* Show entire list as updating when items are still in the store

* Update rating to only import the required icons, and allow icons to be passed in instead of strings

* Prune out reviews header panel, as we are not using it anymore

* Showing just a header if collapsible is false for activity panel

* Add tests for reviews panel and accordion changes

* Fix undoing a deleted item by using status - untrash

* Several styling changes to match wireframe as mentioned in PR review

* Moved review rating into the subtitle in relation to new design

* Update clear cache logic for last item

* Remove activity panel unused css

* Use invalideResolution instead of invalidateResolutionForStoreSelector
2020-12-02 09:30:39 -04:00
Jeff Stieler 4ad17adf36 Generate MD5 hashes without bundling all of Node crypto. (https://github.com/woocommerce/woocommerce-admin/pull/5768)
Reduces the build by 1.2MB.
2020-12-01 20:17:02 -05:00
Jeff Stieler de6d0d2c05 Add Razorpay to payment task for stores in India (https://github.com/woocommerce/woocommerce-admin/pull/5775)
* Display Razorpay for stores in India.

* Add Razorpay setup component.

* Remove composition with HoCs.

Refactor to use useSelect() and useDispatch() instead.

* Tweak useSelect() call.
2020-12-01 17:10:57 -05:00
louwie17 60c3dcbd55 Make sure we don't create a new object everytime a useSelect is called, and we do not generate a new function pointer either (https://github.com/woocommerce/woocommerce-admin/pull/5759) 2020-12-01 08:44:54 -04:00
Jeff Stieler 34810b2791 Cleanup items store actions (https://github.com/woocommerce/woocommerce-admin/pull/5746)
* Don't return an action-like object in action creators.

* Add missing itemType param to setError() calls.

* Add setItem() action (singular).

* Use singular setItem() when updating product stock.

* Split setting items and totals counts into separate actions.

* Refactor totals count resolvers not to use getItems().
2020-11-30 10:12:08 -05:00
Jeff Stieler 2a302603c6 Migrate Stock Panel to Homescreen (https://github.com/woocommerce/woocommerce-admin/pull/5729)
* Refactor low stock variable to be the count instead of a boolean.

* Add initial render of the Stock panel on the homescreen.

* Move existing Stock panel to homescreen accordion.

* Ensure int value for low stock product count.

* Update ProductImage styling.

* Update stock activity car styles.

* Only show 5 low stock products.

* Add "undo" action to the stock updated snackbar.

* Fix check for explicit notice dismissal when taking actions.

* Hide now-in-stock products after updating.

By cllearing "edited" flag on successful update.

* Fetch more products after updating stock.

* Fix the number of product placeholders shown.

* Only show products placeholders on the initial fetch.

* Fix placeholder style.

* Fetch low stock count dynamically.

* Let initialOpen prop toggle Accordion panels if they haven't been toggled by the user.

* Refactor item total count state.

Allows for auto-updating item totals whenever identical queries (from a totals perspective) are issued.

* Add last order date to low stock products API response.

* Allow non-date strings in ActivityCard date prop.

* Add last order date to stock panel cards.

* Remove empty stock panel view.

* Add test file for StockPanel.

* Only request necessary fields from products endpoint.

* Add test for products fetch after stock update.

* Fix field name.

* Add test for last order date in low stock products API response.

* Stock panel should be initially closed.

* Skip updating a product if the quantity is unchanged.
2020-11-25 13:51:15 -05:00
Fernando 649cb0f6ad Fixed orders panel flickering (https://github.com/woocommerce/woocommerce-admin/pull/5655)
* Fixed orders panel flickering

This commit fixes the orders panel flickering when Gutenberg is activated

* Fixed badge flickering

* Removed unnecessary line

* Fixed items selector

This commit fixes the items selector. The method 'getItemsTotalCount' was returning the 'defaultValue' instead of the 'totalCount' when  its value was 0

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-11-18 15:59:46 -03:00
Paul Sealock 947c6a4c32 update package dependencies 2020-11-18 13:33:41 +13:00
Timmy Crawford fbfb1dc86b Data: Verify we have an interval array before accessing. (https://github.com/woocommerce/woocommerce-admin/pull/5546) 2020-11-06 08:33:57 -08:00
Fernando 6ae4c5fbfd Home Screen - migrated orders panel (https://github.com/woocommerce/woocommerce-admin/pull/5455)
Fixes woocommerce/woocommerce-admin#5238
2020-11-06 14:21:05 +13:00
Joel Thiessen c73bafbd09 Store Profiler - include Creative Mail as a free extension (https://github.com/woocommerce/woocommerce-admin/pull/5543)
* Include Creative Mail as a free extension in onboarding wizard on main flow
2020-11-05 16:55:44 -08:00