Commit Graph

16 Commits

Author SHA1 Message Date
Moon 670e2c0669
Remove use of SQL_CALC_FOUND_ROWS in low stock query (#40289)
* Separate count query

* Fix total_results var

* Add count-low-in-stock endpoint

* Use new count-low-in-stock endpoint

* Fix inconsistent in function names

* Type cast to int

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix spelling

* Separate count query function

* Add changefile(s) from automation for the following project(s): woocommerce

* Use get_count_query

* Use count-low-in-stock endpoint

* Remove condition where it only updates product count when there is less than 2 items -- no longer needed as we are using a new endpoint to count the products

* Fix spelling

* Add changefile(s) from automation for the following project(s): woocommerce

* Lint fixes

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-09 12:49:50 +08:00
Nathan Silveira f668ce72ac
Add tests to tracks events fired through JS (#38124)
* Add test for inbox_note_view event

* Add tracks test for Layout's page_view

* Add test to inbox_action_click

* Add tests to analytics_filter tracks event

* Add tracks event test to activity_panel_open

* Add tests to tracks event activity_panel_orders_orders_begin_fulfillment

* Add tracks tests to activity_panel_stock_update_stock

* Improve tests based on code review comments

* Mock recordEvent and recordPageView globally

* Add missing mock

* Improve inbox panel tests
2023-05-10 09:36:42 -03:00
Chi-Hsuan Huang 7068c78101
Fix JS lint errors (#33484)
* Fix @woocommerce/data lint errors

* Fix internal-e2e-builds lint error

* Fix lint errors
2022-06-21 16:37:34 +08:00
louwie17 e02bdd98a0
Remove order/product count from wcSettings (#33064)
* Remove orderCount and publishedProductCount setting and make use of data stores

* Add test

* Add changelog

* Make use of orders data store instead of items data store

* Add users param to reports customers API params to allow filtering by user_id

* Fix invalidateResolution call that was misspelled
2022-06-01 14:15:09 -03:00
RJChow 1ba60ee69d Codemod to change i18n text domain from 'woocommerce-admin' to 'woocommerce' in WCA Client 2022-04-01 11:41:32 +08:00
Fernando b74600593e Change the reviews empty state panels logic (https://github.com/woocommerce/woocommerce-admin/pull/8147)
* Add unapproved reviews check

* Add tests

* Add changelog

* Create a review e2e test

* Fix lint

* Rename some constants (https://github.com/woocommerce/woocommerce-admin/pull/8178)

* Renamed `countUnapprovedReviews`

* Renamed `lowStockProductsCount`

* Renamed `unreadOrdersCount`

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

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-01-19 13:45:17 -03:00
louwie17 3998f88597 Remove unpublished wc-admin-settings package and update getSetting usage (https://github.com/woocommerce/woocommerce-admin/pull/8057)
* Remove use of wc-admin-settings from packages

* Move getSetting to getAdminSetting and remove wc-admin-settings package

* Add changelog

* Update package.json and remove last use of wc-admin-settings
2022-01-06 08:53:30 -04:00
Joshua T Flowers 7aeb0a19d2 Migrate header items to slot fills (https://github.com/woocommerce/woocommerce-admin/pull/7805)
* Add SlotFill area to header

* Add activity panel fill

* Move activity panel to root client folder

* Move activity panel registration to its own folder

* Add navigation fill

* Add page title slotfill

* Slot fill the back button

* Move mobile banner to slot fill

* Fix navigation fill on embed pages

* Add changelog entry

* Allow order prop to header item fill

* Split header into before and after

* Fix header title gaps

* Fix nav and mobile app banner placement

* Fix display options import

* Only use last item for page header title fill

* Use function to pass fill props instead of bind

* Rename header slots

* Fix mobile banner dismissal check

* Fix up inbox panel rename

* Update task title in tests

* Fix up task status retrieval
2021-12-14 11:56:42 -05:00
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
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
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
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 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
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