Commit Graph

145 Commits

Author SHA1 Message Date
Moon 6f163b4cee Fix/7358 stock api performance improvement (https://github.com/woocommerce/woocommerce-admin/pull/7377)
* Add a new endpoint to get low in stock products.

* Set images and attributes property

* WIP -- set last order date

* Do not join postmeta if store does not have any custom stock threshold

* Combine get_query() and get_query_for_sitewide_threshold() into one method and a few code clean ups

* Support status field

* Use new products/low-in-stock endpoint to count low in stock products.

* Use new products/low-in-stock to get low in stock products data.

* Remove low_in_stock support

* Deprecate low_in_stock

* Use the new ProductsLowInStock when low_in_stock is set

* Set cache-control header for the new endpoint

* Use wc_rest_prepare_date_response to format the response date

* Extract low in stock test to a separate file

* Make is_using_sitewide_stock_threshold_only protected

* Revert Products.php changes

* Add back low in stock test to products test

* Remove unnecessary if

* Make the controller final

* Deprecate low_in_stock

* Bug fix -- last_order_date was not setting correctly for variation post type. This commit fixes it

* Add changelog
2021-07-20 16:47:22 -07:00
Jeff Stieler 8e61f55017 Allow packages to be built in isolation. (https://github.com/woocommerce/woocommerce-admin/pull/7286)
* Use yarn instead of npm.

In prep for workspaces, since we're locked to npm < 7. See: https://github.com/woocommerce/woocommerce-admin/pull/7126#issue-661287749

* Initial workspace creation.

* Add initial tsc build to @woocommerce/number.

* Attempt to build experimental package.

* Try currency package.

* Define all packages as workspaces.

* Use tsconfig common to packages.

* Fix currency package build.

* Build csv-export with tsc.

* Try to build customer-effort-score with tsc.

* Fix JSX pragma.

* Build data package with tsc.

* Build date package with tsc.

* Build experimental package with tsc.

* Try to build explat package with tsc.

* Build navigation package with tsc.

* Build notices package with tsc.

* Build onboarding package with tsc.

* Build components package with tsc.

* Swap in package JS build into main script.

* Fix experimental package build.

* Try per-package css build with components.

* Try to run components package tests in isolation.

Broken on JSX in test files not being transformed.

* Move @woocommerce/wc-admin-settings into a package.

* Try to fix components package tests.

Fails because we aren't setting up the jest/jest-dom globals.

* Move JS test code to reusable (private) package.

* Enable incremental TS builds.

* Use workspaces to run JS tests.

* Use new jest configs for update snapshot scripts.

* Fix style builds.

* Fix package version in components.

* Fix client test debug and watch scripts.

* Update yarn lock.

* Update test-staged behavior.

* Try to fix storybook.

* Fix storybook.

* Update more npm commands to yarn.

* Add changelog.

* Fix lint errors.

* Update packages readme script references.

* Clean up unused gitignore match.

* Fix another npm command.

* Fix JS builds on watch.

* Fix start script.

* Fix start scripts for packages.

* Use tsc to build packages before tests

* yarn -> npm.

# Conflicts:
#	package-lock.json
#	package.json

* Fix linter error.

* Remove workspace definitions.

* Fix missing Fragment import.

* Fix package lock.

* Fix missing reference.

* Only build commonjs module for js-tests helper.

* Remove errant dependency from components.

* Remove noop scripts.

* Fix package JS build before testing.

* Revert noisy formatting changes.

* Fix precommit and test scripts.

* Fix minimum expected recommended extension count.

Japan test case breaks this.

* Revert babel config changes.

* chore(release): publish

 - @woocommerce/components@7.2.0
 - @woocommerce/csv-export@1.4.0
 - @woocommerce/currency@3.2.0
 - @woocommerce/customer-effort-score@1.1.0
 - @woocommerce/data@1.4.0
 - @woocommerce/date@3.1.0
 - @woocommerce/dependency-extraction-webpack-plugin@1.7.0
 - @woocommerce/eslint-plugin@1.3.0
 - @woocommerce/experimental@1.5.0
 - @woocommerce/explat@1.1.0
 - @woocommerce/js-tests@1.1.0
 - @woocommerce/navigation@6.1.0
 - @woocommerce/notices@3.1.0
 - @woocommerce/number@2.2.0
 - @woocommerce/onboarding@1.1.0
 - @woocommerce/tracks@1.1.0
 - @woocommerce/wc-admin-settings@1.1.0

* Add script for running 'start' in a package.

* Remove yarn from gitignore.

* Update package changelogs, prep versions for release.

* Try to fix E2E tests after main merge.

* Some cleanup.

* Add changelog.

Co-authored-by: Paul Sealock <psealock@gmail.com>
2021-07-14 16:38:57 -04:00
Moon 303e6ff84c Set default value for performanceIndicators var (https://github.com/woocommerce/woocommerce-admin/pull/7343)
* Set default value for performanceIndicators var
2021-07-13 20:09:02 -07:00
Paul Sealock 6ea9914ac0 Hook reference: Add SlotFill support (https://github.com/woocommerce/woocommerce-admin/pull/6833)
* add @slotFill to process

* add types

* committing data

* use filter instead of hook

* changelog

* add action type

* update paths to ignore builds and node_modules

* changelog

* Add action data type

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
2021-07-09 11:01:43 +12:00
Paul Sealock 1701b6ce15 Analytics Flag: Remove performance indicators when disabled (https://github.com/woocommerce/woocommerce-admin/pull/7234)
* remove performance indicators if analytics off

* changelog

* Hide the display option if there is only content for a single column
2021-07-01 11:16:11 +12:00
Ilyas Foo 3b7c05a845 WordPress 5.8 compatibility UI fixes (https://github.com/woocommerce/woocommerce-admin/pull/7255)
* Add appropriate text props to supplement variant revamp

* Add font styles to navigation title since its removed in wp.components

* Add more missing styles

* Accidental change

* Add changelog

* Fix lint

* Update jest snapshots
2021-06-28 09:14:59 +08:00
Taha Paksu 399ef81b11 Fix currency display errors in homescreen order activity card (https://github.com/woocommerce/woocommerce-admin/pull/7181) 2021-06-15 21:02:14 +03:00
Sam Seay 77906db0ff Use sass-migrator to migrate division to math.div (https://github.com/woocommerce/woocommerce-admin/pull/7136) 2021-06-10 17:09:27 +08:00
Fernando 8ced81d369 Show task and activity notifications in the Inbox panel (https://github.com/woocommerce/woocommerce-admin/pull/7017)
* Added abbreviated panels

This commit adds abbreviated panels

* Added notifications getter

* Variables renamed

* Added unread-indicators refactor

* Open panel by default

* Refactor unread-indicators

* Renamed a few files and added event recording

* Modified "critical alert" presentation

* Removed useless control

* Renamed const

* Added control to InboxPanel component

* Multiple critical alerts handling

* Fixed styles

* Moved Inbox panel styles

# Conflicts:
#	packages/experimental/src/inbox-note/style.scss

* Added tests

* Inbox panel width reduced

* Small refactor for unread notifications

* Renamed abbreviated card component

* Added changelog

# Conflicts:
#	readme.txt

# Conflicts:
#	readme.txt

* Renamed inbox-panel and the cards config file

* Renamed unread notifications variable

* Fixed abbreviated card box-shadow

* Small refactor to unread-indicators file

* Refactored method getInitialState

* Added scroll to task list

# Conflicts:
#	client/task-list/task-list.js

* Small CSS changes to titles

* Fixed changelog

# Conflicts:
#	readme.txt

# Conflicts:
#	readme.txt

* Added param to filter `woocommerce_admin_onboarding_task_list`

* Removed extensibility from `getAbbreviatedNotifications`

* Fixed chunk name

* Removed `critical` prop from `AbbreviatedCard` comopnent

* Moved AbbreviatedCard component to `packages`

This commit moves the component `AbbreviatedCard` to `packages`

# Conflicts:
#	docs/components/_sidebar.md
#	packages/components/CHANGELOG.md
#	packages/components/src/index.js

# Conflicts:
#	packages/components/CHANGELOG.md

* Removed `critical alerts` tag from abbreviated card

This commit removes the tag `critical alerts` from the `Things to do next` abbreviated card

* Removed filter `woocommerce_admin_abbreviated_card_list`

* Fixed icon

* Added defaut value to `hasUnreadNotifications`

* Fix mapSelect error when the dismissed tasks option isn't populated.

* Added AbbreviatedNotificationsPanel

* Added tests

* Renamed `getUnreadNotes` to `isNotesPanelVisible`

* Removed abbreviated-card.js

* Added singular/plural copy handling

* Renamed method `getInitialState` to `getInitialOpenState`

* Fixed Link prop

* Revert "Fixed Link prop"

This reverts commit 74e6a7fae030766eb5d6be098caa15478f2cb2c6.

* Fixed Link prop

* Added task list visibility check

* Fixed scroll after redirect

# Conflicts:
#	client/task-list/index.js

* Added propType to `AbbreviatedCard`

* Fixed `Add-task doc example

* Removed default values from ActivityPanel

* Fixed multiple calls to a filter

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2021-06-09 10:56:45 -03:00
Joshua T Flowers a417a72ce4 Add loading placeholders for payment gateways task (https://github.com/woocommerce/woocommerce-admin/pull/7123)
* Add payment list placeholder

* Add current step placeholder

* Fix task list placeholder shown for individual tasks

* Add changelog entry
2021-06-03 15:14:31 -04:00
Joel Thiessen 073a220b59 Adding Slotfill extension components for remote payments (https://github.com/woocommerce/woocommerce-admin/pull/6932) 2021-05-11 09:36:56 -07:00
Paul Sealock 7ab756b76c Try ExPlat: Add A/A test (https://github.com/woocommerce/woocommerce-admin/pull/6669)
* Add basic ExPlat initialization

* add tsx support
2021-04-15 13:32:46 +12:00
Sam Seay 4e17af5734 Show management links when the task list is complete (even if its not hidden). (https://github.com/woocommerce/woocommerce-admin/pull/6657) 2021-03-26 10:54:24 +13: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
Paul Sealock 7c61e2bff9 Hook Reference: Automate a reference resource (https://github.com/woocommerce/woocommerce-admin/pull/6454)
* read sample doc

* npm cli

* work with arrays

* Its happening

* better naming

* cleanup

* moar cleanup

* new line

* better

* save

* fixup rebase error

* package lock update

* node 12 usage

* add changelog

* fancy logs

* update package lock

* changelog in right place
2021-03-17 13:27:26 +13:00
Joshua T Flowers 4d445350ea Close activity panel tabs by default and track (https://github.com/woocommerce/woocommerce-admin/pull/6566)
* Close activity panels by default and track shown

* Add task list shown data to tracks

* Add changelog and testing instructions

* Fire the panel tracks again when the task list is hidden
2021-03-15 20:34:20 -04:00
Fernando 09d6bd9164 Fixed a few console errors in JS tests (https://github.com/woocommerce/woocommerce-admin/pull/6472)
* Fixed connect test

* Fixed plugins test

* Fixed stock panel tests

* Added changelog

# Conflicts:
#	readme.txt

* Removed blank line

* Changelog line removed

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2021-03-04 09:15:03 -03:00
Hsing-Yu Flowers 2439347dd5 Fix missing i18n in welcome modal (https://github.com/woocommerce/woocommerce-admin/pull/6468)
* Localize string

* Add changelog entry

Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
2021-03-02 11:21:48 +08:00
Joshua T Flowers 8e9c60b0b0 Add navigation intro modal (https://github.com/woocommerce/woocommerce-admin/pull/6367)
* Add initial intro modal

* Hide modal on dismissal

* Add modal styling

* Add modal page content

* Update styles to match Figma designs

* Replace video with gifs

* Check if user is opted in to satisfy gdpr concerns

* Add testing instructions and changelog notes

* Handle PR feedback

* Handle responsiveness

* Dismiss modal when welcome modal is shown simultaneously

* Update shared modal option constants
2021-02-22 13:40:44 -05:00
David Levin f485ebf3de Update single column home screen width to 680px (https://github.com/woocommerce/woocommerce-admin/pull/6297) 2021-02-22 09:10:39 +08: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
Elizabeth Pizzuti bc5c6a700b Updated copy in task lists (https://github.com/woocommerce/woocommerce-admin/pull/6298) 2021-02-11 12:57:51 +13:00
louwie17 8bc7863c71 Show management links when main task list is hidden (https://github.com/woocommerce/woocommerce-admin/pull/6291)
* Show management links when main task list is hidden, and add test

* Add changelog
2021-02-10 13:30:29 +10:00
Hsing-Yu Flowers 600c91a2cc Check current user's install plugin capability before rendering (https://github.com/woocommerce/woocommerce-admin/pull/6167)
* Use get_userdata instead REST API

* Check current user's install plugin capability before rendering

* Retrieve user data via the REST API
2021-02-03 14:19:15 -03:00
Fernando 1f368b73f8 Fixed panels check (https://github.com/woocommerce/woocommerce-admin/pull/6220)
This commit fixes the home screen panels check

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2021-01-29 11:23:02 -03:00
louwie17 78d62c858d Move inbox panel to left column, to increase user interaction (https://github.com/woocommerce/woocommerce-admin/pull/6122)
* Move inbox panel to left column, to increase user interaction

* Add changelog

* Fix and add test

* Remove old loading banner-block

* Remove unused css

* Fix test with new props
2021-01-28 09:33:36 -04:00
Fernando 7bf63fae05 Hide Inventory and Reviews panels if store setup task list is visible (https://github.com/woocommerce/woocommerce-admin/pull/6182)
* Fixed reviews and inventory panels visibility

This commit fixes the reviews and inventory panels visibility when setup task list is enabled

* Fixed tests

* Fixed control and small refactor

* Fixed useSelect

* Fixed multiple useSelect

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2021-01-27 18:40:27 -03:00
Fernando 2ab28c977f Extended task list refactor (https://github.com/woocommerce/woocommerce-admin/pull/6081)
* Fixed hiding core task list

This commit fixes the hiding of the core task list

* Added tests

* Added fix to readme.txt

* Fixed readme.txt

* Added new test

* Hooks were fixed

* Refactored task lists handling

This commit refactors a few things related to the task lists handling

* Added tests

* Fixed task lists handling

* Fixed tests

* Renamed 'taskListHidden' to 'taskListsHidden'

* Added taskListsHidden util

* Fix completed tasks tracking infinite loop

This commit fixes the completed tasks tracking infinite loop (for multiple extended tasks)

* Refactored update check

* Hide task list if there aren't any visible tasks

* Fixed comment

* Fixed typo

* Renamed example method

* Fixed example extension

* Added tab to the extension example

* Fixed extended task list enabling option

* Added more tests

* Added PHP tests

* Fixed some comments

* Removed utils.js file

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2021-01-27 15:40:02 -03: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
Ilyas Foo 0b06f09d6a Update store deprecation welcome modal support doc link (https://github.com/woocommerce/woocommerce-admin/pull/6094)
* Update support doc link

* Update readme.txt
2021-01-20 12:04:37 +08:00
Joshua T Flowers d05d615f71 Add missing keys to activity panel on homescreen (https://github.com/woocommerce/woocommerce-admin/pull/6065) 2021-01-14 17:04:16 -05:00
Joshua T Flowers 0b3f4d8e92 Try: Replace Accordion with Panel component (https://github.com/woocommerce/woocommerce-admin/pull/5970)
* Use Panel for Activity Panels

* Update styling for panels in activity panels

* Remove Accordion component

* Add collapsible param to activity panel tests

* Fix errant comma

* Add bottom border to panel header toggle and remove disbled button styling

* Update empty activity card styles

* Add border between activity cards
2021-01-12 16:18:51 -05:00
Moon aa602e66cf Display the task components regardless of woocommerce_task_list_hidden value (https://github.com/woocommerce/woocommerce-admin/pull/6026) 2021-01-07 19:24:23 -08:00
Bec Scott 3338c273c2 Add welcome modal when coming from Calypso (https://github.com/woocommerce/woocommerce-admin/pull/6004)
* Add welcome modal when coming from Calypso

* add to changelog

* do some important work for prettier

* udpated with final copy

* Add PR number to readme
2021-01-08 12:06:52 +10:00
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
Jeff Stieler 4184392d33 Don't show Stock or Reviews panels before there are Products and/or Orders. (https://github.com/woocommerce/woocommerce-admin/pull/5973)
* Hide Stock and Reviews panels until there are products and/or orders.

* Add tests.

* Add to changelog.
2020-12-29 11:19:13 -05: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
louwie17 9055d3831e Update verified product owner view for a review (https://github.com/woocommerce/woocommerce-admin/pull/5877)
* Add checkmark svg and update verified owner view

* Add changelog

* Fix lint errors, add tooltip, and add test
2020-12-16 08:32:40 -04: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
louwie17 c1ad7aa21d Move collapsible to panels config, fixing orders panel (https://github.com/woocommerce/woocommerce-admin/pull/5855)
* Move collapsible to panels config, so we can always set it to true for orders

* Add changelog
2020-12-09 16:57:41 -04:00
Fernando 91bf42d7f4 Home Screen - modified tasks extensibility (https://github.com/woocommerce/woocommerce-admin/pull/5794)
* Added tasks extensibility

This commit addes tasks extensibility

* Fixed tests

This commit fixes the tests

* Fixed add task example

This commit fixes the add task example

* Fixed method possiblyCompleteTaskList

This commit fixes the method "possiblyCompleteTaskList"

* Fixed method getIncompleteTasks

This commit fixes the method getIncompleteTasks

* Fixed add task example

* Added callback onDismiss

This commit adds the callback for the "onDismiss"

* Added onDismiss and isDismissable to add task example

This commit adds the props "onDismiss" and "isDismissable" to add task example

* Not showing extensions task list if empty

* Fixed onDismiss callback

* Add changelog

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Sam Seay <samueljseay@gmail.com>
2020-12-03 17:16:04 -04:00
louwie17 09f42065d6 Invalidate product count if the last product was updated in the list (https://github.com/woocommerce/woocommerce-admin/pull/5790) 2020-12-04 09:20:13 +13: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
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
Jeff Stieler 479eb2c850 Don't show the Orders panel on the homescreen with the Task List (https://github.com/woocommerce/woocommerce-admin/pull/5552)
* Add order count to shared component settings.

* Hide the Orders panel when the store has no orders.

* Check for all order statuses except drafts from the checkout block.
2020-11-23 10:06:55 -05:00
louwie17 76954a5e23 Continue showing tasklist even if list is complete, only hide if set to hidden (https://github.com/woocommerce/woocommerce-admin/pull/5673) 2020-11-20 14:46:47 -04: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
Fernando 0e78190fb2 Home screen - Fixed the orders not displaying bug (https://github.com/woocommerce/woocommerce-admin/pull/5590) 2020-11-12 09:28:44 +13:00
Sam Seay 7d32d6db0e Change rendering of homescreen layout so store links are last (https://github.com/woocommerce/woocommerce-admin/pull/5579)
* Change rendering of homescreen layout so store links are last.

* Render in left column in 2 column mode.

* Revert accidental log changes.

* Make homescreen layout component width-aware.

Potentially toggle the two column styling when viewport width changes.

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
2020-11-11 12:20:15 -05:00
Jeff Stieler c794428710 Fix column scroll collision after layout change. (https://github.com/woocommerce/woocommerce-admin/pull/5586)
* Reset homescreen column stickiness when layout changes.

* Close display options menu when making a selection.
2020-11-11 12:19:24 -05:00
Sam Seay 908f8babb9 Fix a bug where the modal would display even when dismissed. (https://github.com/woocommerce/woocommerce-admin/pull/5581) 2020-11-11 13:23:33 +13:00
Jeff Stieler 041aec8ff9 Homescreen layout changes (https://github.com/woocommerce/woocommerce-admin/pull/5465)
* Migrate homescreen specific backend code to its own class.

* Default to single column homescreen.

Create an option to handle the default homescreen layout value.

* Potentially reset sticky column when layout is changed.

* Move homescreen components to their new locations.

* Clean up defunct CSS.

* Default to the two-column layout on existing stores.

* Remove header from inbox notes.

* Add "your store today" header on two column homescreens.

* Set default homescreen layout to two columns when task list is complete or hidden.

* Remove unused variables.

* Add sticky scrolling behavior to both homepage columns.
2020-11-06 12:53:03 -05:00
Fernando f739d1feac Added support for custom actionable statuses (https://github.com/woocommerce/woocommerce-admin/pull/5550)
* Added support for custom actionable statuses

This commit adds support for custom actionable statuses

* Fixed styles

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-11-06 13:50:24 -03:00
Timmy Crawford 8e5e410605 Add missing text domain on home screen stats. (https://github.com/woocommerce/woocommerce-admin/pull/5541) 2020-11-06 08:36:33 -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
Sam Seay 06f9248572 Reorganize the store management link section and provide extensibility (https://github.com/woocommerce/woocommerce-admin/pull/5476)
Rearrange the store management links under categories and expose extensibility via the `woocommerce_admin_homescreen_quicklinks` filter.
2020-11-04 13:33:04 +13:00
Jeff Stieler eefe2e8acc Add Homescreen layout control (https://github.com/woocommerce/woocommerce-admin/pull/5429)
* Remove inbox-specific class, widen single column.

* Create user preference for homescreen column layout.

* Add display options "tab" to homescreen.

* Style display options.

* Tweak homepage layout option values.

* Add tracks events for homepage layout.

* Add test coverage for homescreen display options.

* No need to use Fragment component.

* Use named exports.

* Fix display options styling on mobile/narrow viewports.

Don't show the options at all if we're forcing single column.

* Fix linting error.
2020-10-22 18:13:14 -04:00
Timmy Crawford 1a94f54837 Home Screen: Always show the inbox for temporary gutenberg plugin fix. (https://github.com/woocommerce/woocommerce-admin/pull/5416) 2020-10-16 10:35:38 -07: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
Fernando 1da4eedbf0 Moved Inbox Panel component (https://github.com/woocommerce/woocommerce-admin/pull/5252)
This commit moves the Inbox Panel component

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2020-10-06 10:13:32 -03:00
Sam Seay b492a2aa15 Use 'yes' to update modal dismiss option. (https://github.com/woocommerce/woocommerce-admin/pull/5152)
Fixes a bug in Atomic sites where dismissing the home screen modal would not set the option causing the modal to come back on each reload.
2020-09-19 08:19:55 +12: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
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
Paul Sealock 3c6483e842 Remove wc api 🎉 (https://github.com/woocommerce/woocommerce-admin/pull/5075)
* remove wc-api selects and constansts

* remove extendedItems dependence on wc-api

* remove wc-api

* PR feedback
2020-09-04 09:45:40 +12:00
Bec Scott b64efcb2e8 Tweak button padding so it works on Safari (https://github.com/woocommerce/woocommerce-admin/pull/5043)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-08-28 09:00:12 +10:00
Jeff Stieler 5e7f2af61d Rename "profile" to "store details". (https://github.com/woocommerce/woocommerce-admin/pull/4965)
* Rename "profile" to "store details".

* Missed some /profiler links.

* Fix linter error.

* Store details => Setup Wizard.

* Rename task list item.
2020-08-27 08:10:23 -04:00
Joshua T Flowers d4dd74e44a Remove onboarding feature flag and a/b testing (https://github.com/woocommerce/woocommerce-admin/pull/4999)
* Remove store page creation during new onboarding experience

* Remove onboarding feature flag

* Add back in onboarding feature flag to enable feature loading
2020-08-25 00:51:41 +03:00
Jeff Stieler eea63f602f Refactor task list status to onboarding data store. (https://github.com/woocommerce/woocommerce-admin/pull/4998)
* Add onboarding task status API endpoint.

* Add task status to onboarding data store.

* Update appearance task to use onboarding store for status info.

* Update main task list component to use onboarding data store for status info.

* Clear onboarding status info "cache" when setting shipping rates in the task list.

* Clear onboarding status info "cache" when enabling payment methods from the task list.

* Fix onboarding data store reducer tests.

* Clean up redundant code, nest task status settings under new key for hydration.

* Include tasks status in onboarding data hydration.

* Update tax task to use onboarding data store for status info.

* Avoid continually rehydrating onboarding data.

* Refactor payment task method retrieval to use onboarding data store.

* Fix bug with disappearing appearance tax steps.

* Update appearance completion faster by using hydrated onboarding value.

* Avoid PHP warnings when onboarding isn't enabled.

* Remove unused imports.
2020-08-24 09:20:57 -04:00
Daniel Bitzer d8098d6fd7 Adds `@woocommerce/tracks` package (https://github.com/woocommerce/woocommerce-admin/pull/5017)
* Add @woocommerce/tracks package.json

* Add @woocommerce/tracks .npmrc

* Move lib/tracks.js in to tracks package

* Add tracks package debug dependency

* Add readme for tracks package

* Add changelog for tracks package

* Add info about debugging and opt-ins to tracks package readme

* Load tracks package script

* Add tracks package to packages readme

* Add tracks package to webpack config

* Add tracks package external to starter-pack

* Replace lib/tracks uses with @woocommerce/tracks

* Update package-lock.json
2020-08-20 14:29:52 +09:30
Sam Seay 2f1d65847c Remove usage of __experimentalResolveSelect (https://github.com/woocommerce/woocommerce-admin/pull/4949)
This uses a generator action and hooks to reimplement the CTA as a more
simple and logicless component, with most of the logic now in the
HOC component.
2020-08-20 16:02:01 +12:00
Bec Scott c253cc7796 Add updateOptions prop to Layout tests (https://github.com/woocommerce/woocommerce-admin/pull/4986)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-08-17 10:30:46 +10:00
Paul Sealock c3d1e1eb61 Stock Report: Fix bad text domains (https://github.com/woocommerce/woocommerce-admin/pull/4980)
* Fix bad text domains

* fix currency bug
2020-08-14 08:25:08 +12:00
Joshua T Flowers 483055dd75 Migrate notes data store to wp data (https://github.com/woocommerce/woocommerce-admin/pull/4943)
* Add initial notes data store using wp data

* Cache individual note queries

* Update notes undo endpoint to batch update endpoint

* Allow batch updates of notes

* Add requesting state

* Update components to use new note store

* Remove old notes store from wc-api

* Get note IDs from json and validate data in REST API

* Add an updating state to each note

* Throw errors in actions so they can be caught by client

* Add store reducer tests

* Handle PR feedback

* Fix failing tests

* Don't set inbox panel visibility while batch updating

* Move woocommerce block to external dependencies
2020-08-13 16:23:38 +03:00
Jeff Stieler 5fbc511f25 Don't directly import from React, use @wordpress/element. (https://github.com/woocommerce/woocommerce-admin/pull/4978) 2020-08-13 08:29:29 -04:00
Paul Sealock c145783e0a Fix dependency declarations (https://github.com/woocommerce/woocommerce-admin/pull/4972)
* renmove WC comment block

* client routes

* more fixes

* moar search

* getting there

* by hand now

* david beating goliath

* mission accomplished

* client filepath

* save

* got it

* remove script

* fixes

* deal with package internal dep

* remove webpack alias

* fix webpack relative paths

* remove commented rule

* remove extra line

* remove unused modules entry
2020-08-13 14:05:22 +12:00
James Koster 2c592b1209 Update the colors of the illustrations in the welcome modal to use the theme spot color (https://github.com/woocommerce/woocommerce-admin/pull/4945) 2020-08-06 16:58:00 -07:00
Sam Seay 34d8d930b0 Display modal with more info about the new homescreen (https://github.com/woocommerce/woocommerce-admin/pull/4890)
Fixes woocommerce/woocommerce-admin#4590

This implements a paged modal via the Gutenberg Guide component. Some styling adjustment was needed to match the designs exactly.

This also introduces 3 SVG based illustrations for display in the modal. According to this comment there is a need to color them based on the theme at some point, but based on a current lack of requirements for that, I felt that could be done at a separate time (that was suggested in the comment as well).
2020-08-05 12:14:56 +12:00
Darren Ethier dc5304823b Add @woocommerce/eslint-plugin (https://github.com/woocommerce/woocommerce-admin/pull/4714)
* add new woocommerce/eslint-plugin

* implement eslint-plugin (switch scripts to use wp-scripts etc)

* various linting fixes

* more lint fixes

* improve fix script

* more eslint fixes

* more eslint fixes

* temporary convert rules to warnings until they are all handled

* linting fixes

* update package-lock.json

* remove duplicates

* remove unnecessary `@wordpress/dependency-group` rule config

* add docs and adjust rules

* prettier fix

* fix merge artifact

* convert more rules to warnings

* change order to reflect importance

* install babel-preset-default

* remove unnecessary configuration for babel

* fix dependency group rule and test

* fix test

* handle collapsible whitespace

* add react testing library eslint plugin

* linter errors

* Add back in prettierrc

* package-lock update

* js lint fix with --fix

* disable whitespace in translation

* package-lock update

* make eslint actual dependency, not peer dependency

* pin eslint to v7

* I don't know why, but its working

* fix lint js

Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-07-28 14:32:58 +12:00
Joshua T Flowers fe4fcf2467 Add the experimental resolver to WCA data package (https://github.com/woocommerce/woocommerce-admin/pull/4862)
* Add the experimental resolver to WCA data package

* Add note about function origin and deprecation
2020-07-27 17:07:39 -07:00
Sam Seay b448ff60b7 Update @wordpress/base-styles and replace deprecated variables (https://github.com/woocommerce/woocommerce-admin/pull/4759)
Fixes woocommerce/woocommerce-admin#4732

This updates `@wordpress/base-styles`, and because `@wordpress/components` depends on variables from it, that must be updated as well.

There are 3 major changes required as part of updating:

1. The $theme-color variable is no longer exposed by base-styles. Instead there are 3 css vars exposed. These are made available by use of a provided mixin. Situations where $theme-color was darkened using scss have been mapped as best as possible to the 2 other darkened shades of the css var that are available such as `--wp-admin-theme-color-darker-20` and `--wp-admin-theme-color-darker-10`. In some cases this means the colors are not exactly the same as before.

2. The post css `theme()` call is no longer available. All uses of this have been consolidated to use of the main theme css var `--wp-admin-theme-color`. This means that calls like `theme(secondary)` or `theme(outline)` etc have all been consolidated to the one color.

3. Many of the variables used for different shades of gray have been deprecated. These have been mapped across to the new gray variables. (Mapped according to the list described in woocommerce/woocommerce-admin#4732)
2020-07-17 12:11:42 +12:00
Fernando a7a59583c9 Added skip profiler functionality (https://github.com/woocommerce/woocommerce-admin/pull/4721)
* Added skip profiler functionality

This commit adds the skip profiler functionality, leaving the Home screen `Store details` as incomplete.

# Conflicts:
#	client/task-list/tasks.js

* Unit tests repaiared

* Added OBW page

This commit makes the necessary changes to add an OBW page

# Conflicts:
#	client/profile-wizard/index.js

* Event name changed

This commit renames the event name we were recording since it was wrong.

* Redirection modified

This commit modifies the way we do redirection

# Conflicts:
#	client/profile-wizard/index.js

* Removed `profiler` feature flag

* Removed `profiler` feature flag

This commit removes the `profiler` feature flag

* Added error handling for `updateProfileItems`

This commit adds error handling for the method `updateProfileItems`

* Update client/profile-wizard/index.js

Co-authored-by: Matt Sherman <matt.sherman@automattic.com>

* Removed "throw" from "then"

* Update client/dashboard/index.js

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Update client/profile-wizard/index.js

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Modified redirection URL

This commit modifies the redirection URL.

# Conflicts:
#	client/task-list/tasks.js

# Conflicts:
#	client/profile-wizard/index.js

* Removed the variable "lastStep" and the related logic.

* Removed change of state for variable "skipped"

* Added error trowing to onboarding actions

This commit adds error trowing to onboarding actions

* Removed response handling for `updateProfileItems`

* Added default value for "profileItems" in Homescreen and Dashboard

* Removed `step` from OnboardingProfile and test

This commit removes the `step` from OnboardingProfile.php and from tests

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Matt Sherman <matt.sherman@automattic.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
2020-07-16 12:17:10 -03:00
Joshua T Flowers 774fd910c2 Refactor Jetpack connection flows (https://github.com/woocommerce/woocommerce-admin/pull/4655)
* Resolve Jetpack connection URL on benefits screen

* Resolve Jetpack connection URL in connection stats

* Fix up error handling for Jetpack connection flows

* Remove autoConnect option from Connect component
2020-06-25 15:01:33 +03:00
Paul Sealock a0d641d7ad Include dash stylesheets in homescreen (https://github.com/woocommerce/woocommerce-admin/pull/4693) 2020-06-24 18:08:30 -07:00
James Koster 1649706b22 Fix spacing between stats overview and store management cards (https://github.com/woocommerce/woocommerce-admin/pull/4681)
* Fix spacing between stats overview and store management cards

* Revert "Fix spacing between stats overview and store management cards"

This reverts commit 993374313657f7ecf7803cc738b82bf63ecdf490.

* Home screen div margins
2020-06-24 13:08:59 -07:00
James Koster 612ded1cf5 Fix inbox spacing (https://github.com/woocommerce/woocommerce-admin/pull/4632)
* Fix inbox spacing

* css tidy up

* Task list and stats margin
2020-06-22 13:17:17 -07:00
Bec Scott 062279ffbf Tweak tag remove button style so it is properly centered (https://github.com/woocommerce/woocommerce-admin/pull/4651)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-22 16:02:35 +10:00
Paul Sealock c938b66ee7 Task List: Cleanup styles (https://github.com/woocommerce/woocommerce-admin/pull/4627) 2020-06-19 12:13:41 +12:00
Paul Sealock b5214e95d3 Stats Overview: Cleanup styles (https://github.com/woocommerce/woocommerce-admin/pull/4625) 2020-06-19 11:44:00 +12:00
Paul Sealock 03db742cdd Currency package: make naming clearer (https://github.com/woocommerce/woocommerce-admin/pull/4560) 2020-06-18 11:33:40 +12:00
Bec Scott ad9cf27eaa Add a bottom border to the Install Jetpack CTA (https://github.com/woocommerce/woocommerce-admin/pull/4589)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-16 16:47:49 +10:00
Bec Scott 21aa058a67 Clean up Jetpack CTA styles to use base component styles (https://github.com/woocommerce/woocommerce-admin/pull/4562)
Co-authored-by: Rebecca Scott <me@becdetat.com>
2020-06-15 18:39:45 -07:00
Paul Sealock fea332b5b4 Change homepage to homesceen (https://github.com/woocommerce/woocommerce-admin/pull/4549) 2020-06-15 14:17:12 +12:00