Commit Graph

626 Commits

Author SHA1 Message Date
Joshua T Flowers bc998444a3 Future proof experimental components (https://github.com/woocommerce/woocommerce-admin/pull/5961)
* Possibly use safe Text component

* Possibly use safe navigation components

* Add experimental package

* Update components to import from woocommerce/experimental

* Make experimental package private

* Reference experimental package relatively

* Update packages/experimental/README.md

Co-authored-by: Paul Sealock <psealock@gmail.com>

* Update packages/experimental/CHANGELOG.md

Co-authored-by: Paul Sealock <psealock@gmail.com>

* Update history state instead of mocking getQuery in tests

* Handle PR feedback

* Create excluded externals array and return early

Co-authored-by: Paul Sealock <psealock@gmail.com>
2021-01-07 18:57:09 -05:00
renovate[bot] 1b2f20b6bb Update dependency react-transition-group to v4.4.1 (https://github.com/woocommerce/woocommerce-admin/pull/5950)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-01-07 12:57:50 +13:00
Sam Seay a2c4a6a306 A/B test creating a business features step for free extensions (https://github.com/woocommerce/woocommerce-admin/pull/5786)
This fixes woocommerce/woocommerce-admin#5287 

Major changes:

1. The `<Form>` component (which is a published component) gets a new optional prop (so its backward compatible), called `onChangeCallback`. This is called when any form value changes, allowing the controlling component to act on individual form changes. This was needed to utilise `<Form>` to revalidate and check if the user could access the next tab. This should not impact existing usages of the `<Form>`, but it could be good to test this.

2. Introduces a new flow for choosing business extensions that was specified in woocommerce/woocommerce-admin#5287 issue description. Please check the issue for reviewing the designs. The simplest way to implement this, ended up being keeping the existing flow intact and where necessary copy pasting code from those components into the new flow. This new flow is only shown if your segmentation matches the following: `Stores that selected the US as the country and Other or Food & Drinks as the industry
2021-01-07 11:08:57 +13:00
renovate[bot] e3d38e3d31 Update dependency react-router-dom to v5.2.0 (https://github.com/woocommerce/woocommerce-admin/pull/5949)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-01-05 13:42:18 +13:00
Joshua T Flowers ab9038d329 Update table component to use wp card (https://github.com/woocommerce/woocommerce-admin/pull/5904)
* Use wp card in table components

* Migrate report styles to report stylesheet

* Fix table scroll shadow

* Fix pagination styling

* Handle PR feedback

* Move search and action styles to table

* Add margin between table actions

* Remove vertical dividers

* Update chart table border colors (https://github.com/woocommerce/woocommerce-admin/pull/5932)
2021-01-04 15:56:57 -05:00
Joshua T Flowers 0bc842f7c3 Allow default link behavior when cmd or ctrl are used (https://github.com/woocommerce/woocommerce-admin/pull/5966)
* Allow default link behavior when cmd or ctrl are used

* Convert Link to functional component

* Add alt and shift keys
2020-12-29 11:13:20 -05:00
David Levin 36c9454e90 update woocommerce dropdown button (https://github.com/woocommerce/woocommerce-admin/pull/5906)
Co-authored-by: David Levin <davidlevin@Davids-MacBook-Pro-2.local>
2020-12-22 09:14:11 -08:00
Albert Juhé Lluveras 080271fb27 Add SearchListControl isCompact prop (https://github.com/woocommerce/woocommerce-admin/pull/5901)
* Add isCompact prop to SearchListControl

* Add left and right borders to search list

* Remove box-shadow when search list items are focused/active

* Add Changelog notice

* Update snapshots
2020-12-22 15:32:24 +01:00
Joshua T Flowers 2db701b5f3 Add deprecation notice to wc card component (https://github.com/woocommerce/woocommerce-admin/pull/5911)
* Add deprecation notice to wc card component

* Add changelog note
2020-12-21 18:12:05 -05:00
Joshua T Flowers da239f6bb7 Update filters to use wp card component (https://github.com/woocommerce/woocommerce-admin/pull/5903)
* Use cards in advanced filters

* Use wp card for compare filters

* Fix scss lint errors
2020-12-21 14:43:39 -05:00
Paul Sealock 80f641b849 Unbundle wp.components (https://github.com/woocommerce/woocommerce-admin/pull/5753)
* enqueue wp-components

* conditional check of Navigation?

* nav version checks, first pass

* better nav checking

* bump min requirments

* min versions

* Use WP 5.6 instead of 5.6.0

* add wp.date and wp.compose

* Handle missing FlexItem

* enqueue styles

* fix date range mobile dropdown
2020-12-21 14:57:55 +13:00
David Levin 4822afe5fb update section header component styles to match typography in @wordpress/components (https://github.com/woocommerce/woocommerce-admin/pull/5891)
* update card header styles to match typography in @wordpress/components

* revert analytics card headers

Co-authored-by: David Levin <davidlevin@Davids-MacBook-Pro-2.local>
2020-12-17 13:49:03 -08:00
Jeff Stieler c8c544f70c Support custom product attributes in advanced filter (https://github.com/woocommerce/woocommerce-admin/pull/5848)
* Add product attributes autocomplete for Search control.

* Support single selection in Search component.

* Fix SelectControl input after selection in single mode.

* Remove label from Search component's inner SelectControl.

Placeholder is the behavior we want to avoid label and selection collision.

* Match Search component selected prop to SelectControl.

It's passed through anyhow.

* Rework attribute filter to use new endpoints for custom terms.

* Hook up custom attribute filter to report queries.

* Fix errant space in filter name.

* Fix SelectControl active status when control is disabled.

* Fix SelectControl "has tags" logic for non-multiple use cases.

* Fix attribute filter screen reader text.

* Update changelogs.

* Move custom attribute test to it's own function.

* Remove SelectControl input disabling.

This was supposed to improve keyboard behavior for non-multiple controls, but it was questionable.

* Fix backspace in attribute term field.
2020-12-17 09:59:01 -05:00
Albert Juhé Lluveras e44193cb1d Fix count bubble alignment in SearchListItem with latest @wordpress/components (https://github.com/woocommerce/woocommerce-admin/pull/5809)
* Remove showCount prop from SearchListControlItem

* Add option to show counts in ShowListControl story

* Fix count alignment in SearchListItem with latest Gutenberg

* Add new changelog entry

* Update dated prop description
2020-12-10 11:44:31 +01:00
Elizabeth Pizzuti 93cca16404 Style updates to tax task (https://github.com/woocommerce/woocommerce-admin/pull/5709)
* style changes to tax task

* Fix undefined variable use.

* Set plugin install dismissal actions as tertiary.

* change back to variable

* add margin to primary

* text-button-styles-homescreen

* Add specificity to the task caption selector.

We need to beat out the styles from Gutenberg.

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2020-12-02 09:27:50 -05: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 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
Moon eb7a779e1f Add/5349 trigger ces on filtering analytics (https://github.com/woocommerce/woocommerce-admin/pull/5649)
* Use a store to render CES tracks

* Use the CES store to trigger CES survey when users change date range or single product filters.

* Support onClick event for the Compare button

* Trigger CES survey when a user clicks the Compare button on products, variations, categories, coupon, and taxes pages

* Set default text for onSubmitLabel in js and remove its requirement

* Add addCesSurveyTrackForAnalytics action so that it can be shared in other components in analytics pages -- remove duplicates

* Call addCesSurveyTrack from addCesSurveyTrackForAnalytics to avoid duplicate

* Remove 'tracks' from the method name
2020-11-24 15:18:50 -08:00
renovate[bot] 0718343d11 Update dependency core-js to v3.7.0 (https://github.com/woocommerce/woocommerce-admin/pull/5667)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-11-25 08:48:14 +13:00
Sam Seay be47d9d795 Only import the Gridicons we need, to reduce package size. (https://github.com/woocommerce/woocommerce-admin/pull/5668) 2020-11-19 09:52:24 +13:00
Paul Sealock 947c6a4c32 update package dependencies 2020-11-18 13:33:41 +13:00
louwie17 b8efece7cb Alter select control padding to match text-control (https://github.com/woocommerce/woocommerce-admin/pull/5587) 2020-11-12 08:47:11 -04: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
renovate[bot] dbd7c823f6 Update babel monorepo to v7.12.5 (https://github.com/woocommerce/woocommerce-admin/pull/5525)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-11-05 13:50:38 +13:00
Sam Seay 5c50c4cc03 Restyle the setup task list to match new designs (https://github.com/woocommerce/woocommerce-admin/pull/5520)
Dev: Add the new `<Badge>` component to @woocommerce/components
Dev: Restyle the setup task list header to display incomplete tasks
2020-11-05 10:48:26 +13:00
Moon f657d108a3 Add width: 100% style to the container of the popover menu to expand menu item width to 100% (https://github.com/woocommerce/woocommerce-admin/pull/5519)
Co-authored-by: Moon <moon.kyong@demandmedia.com>
2020-11-02 18:03:56 -08:00
Fernando f0398ee502 Added Accordion component (https://github.com/woocommerce/woocommerce-admin/pull/5474)
* Added Accordion component

This commit adds an Accordion component to our available components

* Refactored Accordion component

* Added new Accordion component to index

* Fixed a few Accordion details

* Accordion fixed

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-10-28 15:02:22 -03:00
Bec Scott 2315bf1662 Fix missing custom autocompleter attribute in Search component of Advanced Filter (https://github.com/woocommerce/woocommerce-admin/pull/5448)
Co-authored-by: khoand0000 <khoand0000@gmail.com>
2020-10-27 10:52:56 -04:00
Gan Eng Chin f5432beb72 Display a "read blog" message (https://github.com/woocommerce/woocommerce-admin/pull/5453)
* Display a "read blog" message when there is an error in getting blog posts or there is no blog posts.

* Simplify ReadBlogMessage with interpolateComponents and Link.
2020-10-23 14:07:58 +08:00
renovate[bot] 29f6bcc126 Update babel monorepo (https://github.com/woocommerce/woocommerce-admin/pull/5439)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-10-22 12:19:55 +10:00
Jeff Stieler 7ca9e691d4 Migrate Enzyme tests to React Testing Library (https://github.com/woocommerce/woocommerce-admin/pull/5299)
* Migrate leaderboard tests to RTL.

* Remove test of default prop value.

* Migrate ReportSummary tests to RTL.

* Migrate ActivityCard tests to RTL.

* Migrate ActivityCardPlaceholder tests to RTL.

* Migrate remaining ProductType tests to RTL.

* Migrate Card tests to RTL.

* Update RTL and user event packages.

* Migrate Date tests to RTL.

* Migrate D3Legend tests to RTL.

* Migrate D3Base tests to RTL.

* Migrate Gravatar tests to RTL.

* Migrate ImageUpload tests to RTL.

* Migrate ProductImage tests to RTL.

* Migrate Rating tests to RTL.

* Migrate Search tests to RTL.

* Migrate Plugins tests to RTL.

* Migrate SelectControl tests to RTL.

* Migrate Timeline tests to RTL.

Remove tests that inspect DOM since there are snapshots.

* Migrate DismissModal tests to RTL.

* Migrate SetupNotice tests to RTL.

* Migrate WelcomeCard tests to RTL.

* Fix setup error reason retrieval in ShippingBanner.

* Migrate ShippingBanner tests to RTL.

* Migrate RecommendedExtensions tests to RTL.

* Migrate KnowledgeBase tests to RTL.

* Rename enzyme setup file, modify to setup RTL.

* No need to import jest-dom in test files.

* Remove enzyme dependency.

* Use snapshot for testing Leaderboard markup.

* Switch from "not to be empty" to "be in the document".

* No need to waitFor() recordEvent mock.

* Be specific about clicking the "hide" button.

* Use toBeVisible() instead of checking style property.
2020-10-15 08:41:39 -04:00
Sam Seay fc030fb007 Migrate the devdocs examples to Storybook CSF stories (https://github.com/woocommerce/woocommerce-admin/pull/5271)
Fixes woocommerce/woocommerce-admin#5234
2020-10-15 14:55:55 +13:00
renovate[bot] d42cb0d6a9 Update dependency moment to v2.29.1 (https://github.com/woocommerce/woocommerce-admin/pull/5370)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-10-15 09:58:53 +13:00
Joshua T Flowers 443e2f9a55 Wrap search control selected items in list (https://github.com/woocommerce/woocommerce-admin/pull/5231)
* Wrap search control selected items in list

* Fix up snapshots
2020-10-06 23:27:38 +03:00
Paul Dechov 1bdd2ea0e1 Search component: Behavior and styling tweaks (https://github.com/woocommerce/woocommerce-admin/pull/5199)
Fix visual issues with the <Search> component.
2020-10-06 12:22:22 +13:00
Jeff Stieler 264aa8dee4 Add Variations Report (https://github.com/woocommerce/woocommerce-admin/pull/5167)
* Add initial Variations Report to analytics feature.

* Restrict query to variations when not specifying any product IDs.

* Add route to get variations without specifying a parent.

* Move variations table component to variations report directory.

* Add missing LIMIT clause to variations report query.

* Remove broken features from Variations table.

* Add Variations report controller to CSV emailer.

* Add initial Variation Stats endpoint, based on Product Stats.

* Hook Variations Report components up to new stats endpoint.

* Hook attribute filter up to variations report queries.

* Remove variation title filter usage.

See: https://github.com/woocommerce/woocommerce-admin/pull/5100

* Use filtered separator in variation name formatting.

* Add "single variation" to variations report, fix autocompleter API request.

* Fix segmentation by variation.

* Add comparison to variations report.

* Always include manually specified variations in report results.

* Fix variations report table comparison mode.

The ReportTable component expects the `filter` query param.

* Fixing styling of compare button without table search component.

* Add variation filter to Orders report.

* Link orders count to orders report filtered by variation.

* Orders report: include variation attributes in product names.

* Further style tweaks for variations report download button.

* Add variations filter to order stats query.

* Clean up "category includes" login in REST controllers.

Prep for "category excludes" in the Variations report.

* Support category exclusion in report filters.

* Fix filter param used by the variation report table component.

* Add category filter to variations report.

* Fix initial selected ReportTable rows when using non-default compareParam.

* Add a new autocompleter for variable products.

* Add products filter to variations report.

* Fix tests.

* Handle variation IDs that are no longer found.

* Add documentation.

* Use getSetting() instead of directly accessing window properties in client code.

* Fix ordering Variations by SKU.
2020-09-25 09:57:48 -04:00
Paul Sealock 328075abb7 Remove ` @woocommerce/wc-admin-settings` from data package (https://github.com/woocommerce/woocommerce-admin/pull/5158)
* remove getAdminLink

* prep for package release

* correctly pass in args

* tests
2020-09-18 14:22:52 +12:00
Paul Sealock 2dea138505 Update/components deps (https://github.com/woocommerce/woocommerce-admin/pull/5153)
* bump components dependencie

* prep for package release
2020-09-18 08:19:36 +12:00
Bec Scott 90567853de Enable the home screen for everybody (https://github.com/woocommerce/woocommerce-admin/pull/5108)
* One-shot to enable the homescreen for everybody

* Make the home page the default (only) experience

* remove option check in activity panel tabs, get tests working, fix lint issues

* Remove is-homescreen CSS class

* Remove extra home page route registration

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-09-15 09:44:46 +10:00
Bec Scott 5310944f17 Add option to not charge sales tax (https://github.com/woocommerce/woocommerce-admin/pull/5111)
* Add option to not set up sales tax

* Correct JS lint errors

* Add abort option to plugin step

* Inline redirect to home page

* Use testing-library/react for the new test

* Also set woocommerce_calc_taxes to 'no'

Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-09-14 08:50:02 +10:00
Paul Sealock 4a07997a86 Packages: release prep (https://github.com/woocommerce/woocommerce-admin/pull/5122)
* packgages version bumps

* fix errant s?
2020-09-11 14:33:10 +12:00
renovate[bot] 36ed773769 Update dependency d3-time-format to v2.3.0 (https://github.com/woocommerce/woocommerce-admin/pull/5070)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-09-03 14:40:55 +10:00
Jeff Stieler aa86428ebc Add support for advanced filters with multiple instances. (https://github.com/woocommerce/woocommerce-admin/pull/5050)
* Refactor filter input row into component.

* Support multiple filter value in "add filter" list.

* Refactor out one-off updateFilter() callback.

* Use array index to remove filters.

Also create unique keys for multiple value filters.

* Use numeric index instead of filter "key" for change callbacks.

* Maintain unique keys for multiple filter components.

This avoids rerenders when filters are removed.

* Calculate instance numbers in constructor.

* Support advanced filter instances in navigation helper methods.

* Add allowMultiple to advanced filters README.

* Fix tests.

* Add test cases for multiple filter instances.

* Handle missing attribute names and terms in screen reader text.

* Fix perpetual loading indicator when there are no attribute terms.

* Handle new boolean case when generating screen reader text.

* Handle multiple filter instances when creating report queries.

* Remove unused variables.
2020-09-01 08:23:27 -04:00
Sam Seay fb03e64ced Profile wizard style consistency updates (https://github.com/woocommerce/woocommerce-admin/pull/5059)
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
Co-authored-by: James Koster <james@jameskoster.co.uk>
2020-09-01 20:47:49 +12:00
Paul Sealock 7e7064e38c Fix components internal deps (https://github.com/woocommerce/woocommerce-admin/pull/5018)
* Fix components internal deps

* Pass full response

* remove errant comment
2020-08-28 11:55:48 +12:00
Jeff Stieler 650ecac14a Add "Product Attribute" advanced report filter. (https://github.com/woocommerce/woocommerce-admin/pull/5038)
* Simplify variation name logic.

* Remove errant commas from variation autocomplete options.

* Add single variation filter to products report.

* Include more variations in search results.

Also trim the response fields down.

* Add initial AttributeFilter component.

Only selected of attribute names for now.

* Add attribute term selection control.

* Position attribute filter inputs side by side.

* Add loading indicator to attribute term control.

* Clear term when attribute value changes, and handle backspaces.

* Generate screen reader text.

* Translate filter labels, add field separator.

* Improve grammar in screen reader text.

* Fix lint errors.
2020-08-27 08:11:12 -04:00
Jeff Stieler e845de7003 Fix missing title component in advanced filter screen reader interpolation. (https://github.com/woocommerce/woocommerce-admin/pull/5032) 2020-08-26 08:29:21 -04:00
renovate[bot] 8bf5cff688 Update dependency d3-format to v1.4.5 (https://github.com/woocommerce/woocommerce-admin/pull/5048)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-26 15:24:04 +12:00
renovate[bot] fa2a90cad6 Update dependency d3-selection to v1.4.2 (https://github.com/woocommerce/woocommerce-admin/pull/4928)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-08-24 12:31:09 +12:00