Commit Graph

136 Commits

Author SHA1 Message Date
Kevin Killingsworth 8b7e309e6f navigation: Lazy-create history (https://github.com/woocommerce/woocommerce-admin/pull/1472)
history.createHashHistory() is being called whenever this package is
imported, which causes the URL to redirect to a hash. This is
unnecessary in cases where elements of wc-admin are used outside of a
completely controlled/routed page.

This lazy-creates the history object only when it's needed and therefore
avoids the URL redirection unless history features are in use.
2019-02-06 13:28:29 -06:00
Timmy Crawford 10c6016d4c Update usage of lib/number to @woocommerce/number (https://github.com/woocommerce/woocommerce-admin/pull/1400)
* Remove usage of lib/number

* Remove formatNumber usage when currency is used.

* Add wc-number as a dependency of wc-currency.

* Add locutus as a dev dependency.

* Add number to test helper.
2019-01-29 08:48:46 -08:00
Albert Juhé Lluveras 066daa4b6a Add Top Coupons Block (https://github.com/woocommerce/woocommerce-admin/pull/1397)
* Add Top Coupons Block

* Order coupons by orders_count by default

* Fix wrong variable name
2019-01-25 18:59:53 +01:00
Paul Sealock c7b705fb08 SummaryNumbers: close on click for mobile 2019-01-22 11:31:37 +13:00
Albert Juhé Lluveras 37d6fa0b60 CSS Lint fixes (https://github.com/woocommerce/woocommerce-admin/pull/1367) 2019-01-21 19:09:16 +01:00
Justin Shreve 286f5a7ae1 Update list of allowed stats 2019-01-18 15:11:38 -05:00
Justin Shreve b8d25c3073 Fix setting default values 2019-01-18 12:11:49 -05:00
Justin Shreve bd54541ca0 Handle PR feedback 2019-01-18 08:52:10 -05:00
Justin Shreve 01b96ebea5 Hook up performance indicators to the REST API 2019-01-18 08:19:19 -05:00
Joshua T Flowers fb8c4dd92f Add single category filter to categories report (https://github.com/woocommerce/woocommerce-admin/pull/1336)
* Add single category filter to categories report

* Change categories leaderboard link to signle category link

* Remove todo comment regarding the single_category filter

* Update category links to categories report in products table
2019-01-18 15:46:12 +08:00
Joshua T Flowers ee19308254 Add initial state hydration for user data (https://github.com/woocommerce/woocommerce-admin/pull/1297)
* Hydrate initial state through localized script

* Parse user meta for default rows as integer

* Change eslint ignore to undef only

* Add currentUserData to wcSettings
2019-01-15 10:24:06 +08:00
Justin Shreve 764845a6c0 Add top categories block (https://github.com/woocommerce/woocommerce-admin/pull/1276)
* Add Top Categories Block

* Update category and product blocks with correct links.

* Handle PR feedback/design cleanup
2019-01-11 10:11:10 -05:00
Albert Juhé Lluveras 279bc142bb Fix chart blocks not being responsive (https://github.com/woocommerce/woocommerce-admin/pull/1265) 2019-01-10 10:55:15 +01:00
Joshua T Flowers bdb9525afe Add dashboard chart interval preferences (https://github.com/woocommerce/woocommerce-admin/pull/1230)
* Add user interval preferences for dashboard charts

* Add interval selector styling
2019-01-09 08:12:39 +08:00
Albert Juhé Lluveras 03e17d372b Add new props to chart component (https://github.com/woocommerce/woocommerce-admin/pull/1247)
* Add different props to chart component that were inferred from 'mode'

* Add new chart props to packages CHANGELOG
2019-01-08 10:21:47 +01:00
Joshua T Flowers ef6d7ec4cb Add leaderboard section (https://github.com/woocommerce/woocommerce-admin/pull/1234)
* Add leaderboard section to dashboard

* Add rows per table user preference

* Pass in rowsPerTable to leaderboards to adjust total rows

* Add styling for rows select dropdown

* Set default for total rows if tableQuery is undefined

* Remove double localization on leaderboard labels

* Simplify toggle logic for hidden leaderboards

* Move updateCurrentUserData outside of setState callback
2019-01-08 15:20:01 +08:00
Joshua T Flowers 9fef5d4f5d Add dashboard chart links to reports (https://github.com/woocommerce/woocommerce-admin/pull/1236)
* Add dashboard chart links to reports

* Remove extra css background property from screen reader text

* Remove elements from previous click handler attempt

* Concat translation strings with sprintf

* Change chart hover interactions

* Move i18n to external dependencies

* Make legend buttons match background on hover
2019-01-08 14:48:39 +08:00
Joshua T Flowers e067da06be Add dashboard chart user preferences (https://github.com/woocommerce/woocommerce-admin/pull/1225)
* Add user preferences for shown dashboard charts

* Add user preferences for dashboard chart type

* Check if user preferences are set before assigning to state

* Move API update methods out of callbacks and use xor
2019-01-08 09:49:11 +08:00
Joshua T Flowers 28c0d292a8 Update dashboard charts on query change (https://github.com/woocommerce/woocommerce-admin/pull/1209)
* Update dashboard charts on query change

* Remove state derived props
2019-01-03 10:51:45 +08:00
Timmy Crawford 78ca63a72d Dashboard: Add Leaderboard Component (https://github.com/woocommerce/woocommerce-admin/pull/1198)
* Create Leaderboard component. Update Top Selling Products to use it.

* Use date picker values in Top Selling Products.

* Convert top selling products tests into leaderboard tests

* Updates per feedback.

* Skipping failing test for now.
2018-12-31 14:42:46 +08:00
Joshua T Flowers 2d5e592a10 Update chart button active state for dashboard charts (https://github.com/woocommerce/woocommerce-admin/pull/1202)
* Update chart button active state for dashboard charts

* Add default active state when no query is present
2018-12-28 09:59:05 -08:00
Joshua T Flowers 7cf9e293e1 Fix margin on dashboard block charts (https://github.com/woocommerce/woocommerce-admin/pull/1165) 2018-12-25 11:02:23 +08:00
Robert Elliott ebd857cefa Add/chart dashboard block (https://github.com/woocommerce/woocommerce-admin/pull/1002)
* added new block and dashboard charts

section title and filters... lots of duplicate keys

toggle chart types in block heading

* Updates per feedback.

* Add some documentaiton about new interactive prop on chart/legend

* Revert a few files that only had whitespace changes.
2018-12-21 16:24:26 -08:00
Joshua T Flowers 08d3e2c38d Change product_gross_revenue to product_net_revenue (https://github.com/woocommerce/woocommerce-admin/pull/1105)
* Change product_gross_revenue to product_net_revenue

* Change product_gross_revenue to product_net_revenue in category data store

* Change to net_revenue in frontend category report
2018-12-19 08:56:27 +08:00
Timmy Crawford 3c2cdc4322 Fix error on dashboard. (https://github.com/woocommerce/woocommerce-admin/pull/1121)
* Fix error on dashboard.

* Revert changes from woocommerce/woocommerce-admin#1101
2018-12-18 11:32:25 -08:00
Albert Juhé Lluveras 501842a421 Rename 'isError' methods to 'getError' when they return an object instead of a boolean 2018-12-15 13:38:54 +01:00
Paul Sealock bf0e025b05 REST API: isolate extened info in /reports/products 2018-12-04 13:01:36 +13:00
Kelly Dwan d27cb26ef7 Build: Move `lib/nav-utils` and `lib/history` to `@woocommerce/navigation` (https://github.com/woocommerce/woocommerce-admin/pull/763)
* Move nav-utils and history to new package

* Update config to build and use new navigation package

* Update all imports to use new navigation package

* Remove unnecessary README

* Update nav-utils path
2018-11-05 16:02:04 -05:00
Kelly Dwan c29043a3bc Switch to using `@wordpress/viewport` for responsive screen layouts (https://github.com/woocommerce/woocommerce-admin/pull/761)
* Switch to Gutenberg viewport package

* Switch CSS breakpoints to core-supported values

* Fix double-calendar logic
2018-11-02 15:20:11 -04:00
Albert Juhé Lluveras c4bb740f1f Add error message to Top Selling Products table (https://github.com/woocommerce/woocommerce-admin/pull/750)
* Add error message to Top Selling Products

* Add margin bottom to Top Selling Products error message
2018-11-01 18:15:53 +01:00
Jonathan Belcher 43cccb49b7 Adds Section Header component (https://github.com/woocommerce/woocommerce-admin/pull/689)
* Adds Section Header component

* Return Card header to previous state

* Restore card header

* Fix weird format comment in markdown

* PR review comment fixes

* Add snapshot to test

* Add role to hr to remove from screen readers

* Code review fixes
2018-10-30 22:07:16 -04:00
Kelly Dwan f62537fc17 Try: Add Lerna to split out utility packages (https://github.com/woocommerce/woocommerce-admin/pull/678)
* Add lerna & GB package-building script

* Move currency library to lerna module

* Update lerna config

* Add publish commands

* Add currency as an faux-external module

* Add separate command to build just core files

* Update dependency path

* Update build script to build all packages into `dist`

* Add packages to the jest test setup

* Move date library to packages

* Update imports to use @woocommerce/date

* Output wcSettings definition before any scripts are output

Fixes issues where wc-dates lib relies on settings object

* Add the build step into travis

* Update jest config to dynamically get package paths

* Update package postcss config to match wc-admin’s main config

* Add combined watch scripts for package+app, add a `clean` command to clean up old build files

* Ignore PHPCS error (leave todo message to fix)

* Concat files with a space, fix issue where all files join in one continuous string and fail the check
2018-10-30 14:57:48 -04:00
Albert Juhé Lluveras 2b3446540c Move withSelect() inside table components (https://github.com/woocommerce/woocommerce-admin/pull/707)
* Move withSelect() inside table components

* Add isLoading prop to TableCard (https://github.com/woocommerce/woocommerce-admin/pull/713)

* Add isLoading prop to TableCard

* Add onSort prop to TablePlaceholder

* All checkbox shouldn't be checked if the number of rows is 0
2018-10-29 08:57:05 +01:00
Paul Sealock 02383f0ce7 Dashboard: Add DatePicker 2018-10-25 11:40:59 +13:00
Albert Juhé Lluveras bfcc817240 Create EmptyTable component (https://github.com/woocommerce/woocommerce-admin/pull/605)
* Create EmptyTable component

* Update failing test

* Make EmptyTable a functional component

* Add EmptyTable to example.md
2018-10-20 13:16:53 +02:00
Timmy Crawford e8fe6bac83 Remove chart from dashboard. (https://github.com/woocommerce/woocommerce-admin/pull/544) 2018-10-16 18:20:24 -07:00
Albert Juhé Lluveras 8120cc7d6a Rename 'mock-data' files so they don't have the same file name (https://github.com/woocommerce/woocommerce-admin/pull/522) 2018-10-15 19:06:37 +02:00
Albert Juhé Lluveras 9623898acd Add Orders table (https://github.com/woocommerce/woocommerce-admin/pull/493)
* Create Orders table

* Remove getOrderIds selector

* Create an OrdersReportTable component

* Alphabetically order extracted props

* Fix JS error for missing coupon properties

* Add TODO comment for missing customer type

* Add calculation for net revenue

* Align all table cells but identifier to the right

* Remove temporary text

* Improve cell link inline CSS

* Count several purchases of the same product as items sold

* Add TODO message to coupon link

* Add Download to Orders table

* Don't use camelCase for table column keys

* Cleanup

* Make products and coupons columns non-sortable

* Create renderList method to simplify products/coupons list creation

* Display correct currency for each order

* RTL table fixes

* Fix: products and coupons columns showing 'false' in CSV download

* Minor fixes

* Rename 'isIdentifier' with 'isLeftAligned' in table columns

* Remove toggleStatus method
2018-10-11 10:30:51 +02:00
Kelly Dwan 6d2eec1c12 Update `layout/*` file structure (https://github.com/woocommerce/woocommerce-admin/pull/463)
* Move section, header, and activity panel out of layout folder

* Update file soures

* Move documentation into component, and update generation script to handle the duplicated exports
2018-09-21 11:19:05 -04:00
Timmy Crawford e4fd525cb4 Top Products: Display Product Name. (https://github.com/woocommerce/woocommerce-admin/pull/406)
* Top Products: Display Product Name.

* Fix tests.
2018-09-14 08:21:21 -07:00
Albert Juhé Lluveras 48ed6fa568 Make Top Selling Products table to have the same height in all states (https://github.com/woocommerce/woocommerce-admin/pull/394)
* Make table font-size accessible

* Make TopSellingProducts table load only five products

* Make empty message on TopSellingProducts table the same height than the table

* Update breaking test

* Use font-size mixin in table items/header
2018-09-13 11:05:26 +02:00
Albert Juhé Lluveras ac044b8720 Add empty state message to Top Selling Products card (https://github.com/woocommerce/woocommerce-admin/pull/365) 2018-09-12 14:09:53 +02:00
Robert Elliott 233c7755f7 hover confusion 2018-09-07 11:21:52 +02:00
Robert Elliott 964a43b674 x, y and tooltip formatting 2018-09-05 23:02:13 +02:00
Justin Shreve 251d9804ef Remove test code/examples and disable the inbox activity panel. (https://github.com/woocommerce/woocommerce-admin/pull/355)
* Remove test code/examples and disable the inbox activity panel.

* Remove search example
2018-09-05 14:52:48 -04:00
Albert Juhé Lluveras 9183756a70 Fix TopSellingProducts table not correctly loading data (https://github.com/woocommerce/woocommerce-admin/pull/351)
Update TopSellingProducts table API connection to correctly work
with the new selectors response format introduced in woocommerce/woocommerce-admin#316.
2018-09-04 16:10:07 +02:00
Albert Juhé Lluveras 3dcb1339b3 Create TablePlaceholder component to be used when table contents are loading (https://github.com/woocommerce/woocommerce-admin/pull/338) 2018-08-31 16:43:25 +02:00
Albert Juhé Lluveras 52a0a9690c Connect TopSellingProducts with the API (https://github.com/woocommerce/woocommerce-admin/pull/323)
* Connect Top Selling Products table to the API

* Add tests to TopSellingProducts

* Prepare TopSellingProducts component to render loading/error messages
2018-08-29 17:55:56 +02:00
Kelly Dwan dec97d178e Components: Export reusable components to a separate file + global (https://github.com/woocommerce/woocommerce-admin/pull/297)
* Importing all components from a root components file

* Update Ratings component to avoid circular dependencies, fix tests

* Export components on `wc.components`, use this for importing

* Move react-dates initialize to the components file

* Push query changes to history

Fixes an issues where native a links do not update the query in `history`

* Update test config for new @woocommerce/components path

* Update chart components import

* Merge simple/complex & alphabetize by first exported name

* Add a readme with info about how to call these components
2018-08-20 17:18:13 -04:00
Timmy Crawford 8a90563690 Dashboard: Use isNumeric in Top Selling Products. 2018-08-16 16:42:32 -07:00
Robert Elliott bbc7e13e3e split out example.js and index for component 2018-08-13 12:23:50 +02:00
Timmy Crawford 5f85e75b97 Merge pull request woocommerce/woocommerce-admin#284 from woocommerce/add/top-selling-products
Dashboard: Add Top Products block.
2018-08-10 10:42:58 -07:00
Timmy Crawford ac3e83590a Add tests for numberFormat 2018-08-09 11:50:56 -07:00
Timmy Crawford 9effb75c73 Add table styling. 2018-08-09 11:16:30 -07:00
Timmy Crawford 547ea94483 Dashboard: Add Top Products block. 2018-08-08 16:52:21 -07:00
Kelly Dwan 4669ab9422 Layout: Add the 40px side gutters on 1100px+ screens (https://github.com/woocommerce/woocommerce-admin/pull/282) 2018-08-08 18:11:54 -04:00
Timmy Crawford 0de60d5685 Update breakpoint 2018-08-08 10:21:38 -07:00
Timmy Crawford f0e6770284 Adding some more placeholder cards. 2018-08-06 15:56:24 -07:00
Timmy Crawford a6214e1df1 Updates per feedback. 2018-08-06 15:34:47 -07:00
Timmy Crawford cc61776d29 Add breakpoint to single column 2018-08-06 14:07:51 -07:00
Timmy Crawford d013fe6926 Dashboard: Add columns for blocks. 2018-08-02 16:10:55 -07:00
Timmy Crawford 3f2a6a2fd6 Fix for gutenberg 3.4 2018-08-01 12:07:17 -07:00
Kelly Dwan 727654ff3b SummaryNumber Component: Update to latest hifi design (https://github.com/woocommerce/woocommerce-admin/pull/237)
* Add first pass + demo of updated SummaryNumber

* Add new larger screen breakpoint

* Remove the max-width from the content wrapper

* Update previous label text

* Fix the border colors/sizing

* Create a mixin to generate the grid template pattern

* Add green/red colors based on trend, with prop to reverse

In some cases, a downward trend is good (ex, refunds), so we want to be able to color those green

* Move selected number containers up to avoid the double-border

* Document className logic, and apply 10-item layout to all cases of 10+ items

* Remove layout notes

* Update component docs, clean up optional displays

* Update style of SummaryNumbers inside cards

* Filter out any `false` or otherwise unrenderable children

* Fix card borders

* Update dashboard component to use new props

* Check that prevValue is defined

a prevValue of 0 was incorrectly outputting `0` for both label and value

* Update no-change datapoint style

* Update default data values

Rather than hiding the prevValue/label or delta section if these are not passed through, use default N/A placeholders

* Change SummaryList & SummaryNumber to a list of links

Add active, hover, and focus styles

* Add a short help text for screen reader users

* Add href to README

* Add the href prop to the readme example

* Fix border colors

The `nth-of-type` rules need to be on the `li` containers

* Fix font-weights on value & delta

* Wrap the previous label/value when the percentage wraps
2018-07-30 11:14:09 -04:00
Robert Elliott dd663e0cd9 init for legends PR
updates from feedback
2018-07-25 17:04:03 +02:00
Kelly Dwan 944b7ab460 Update to Gutenberg 3.3 (https://github.com/woocommerce/woocommerce-admin/pull/234)
Removes Gutenberg package dependency in favor of published sub-packages, update tests and build process to reflect new package locations
2018-07-23 16:14:40 -04:00
Justin Shreve b64d729f0a Remove Agenda Widget (https://github.com/woocommerce/woocommerce-admin/pull/216) 2018-07-17 13:07:51 -04:00
Robert Elliott 7b8bcea17a move dummy into fixtures subfolder 2018-07-10 17:07:34 +02:00
Robert Elliott da980328e2 move dummy js and add README 2018-07-10 16:09:47 +02:00
Justin Shreve 71c12e6795 Update woo-dash naming to new wc-admin name (https://github.com/woocommerce/woocommerce-admin/pull/183) 2018-07-10 08:48:06 -04:00
Robert Elliott 5c0a293297 refactor params to reduce recalculating scales each time + new tests 2018-07-09 15:35:25 +02:00
Robert Elliott 01eea75a2a bug fixes to drawLines and dummy renders of bars and lines on Dashboard 2018-07-09 15:35:24 +02:00
Robert Elliott 806d423324 bar chart and example 2018-07-09 15:35:12 +02:00
Timmy Crawford 8306bc91bf s/PerformanceIndicators/StorePerformance/ 2018-07-02 11:08:50 -07:00
Timmy Crawford 8c9921ee74 Use SummaryNumber for Store Performance 2018-06-29 11:27:18 -07:00
Justin Shreve d604f3625c Rename sidebar to activity-panel, and refactor code and behavior. 2018-06-28 09:52:45 -04:00
Kelly Dwan 99ac7728cd Try a context-aware heading component (https://github.com/woocommerce/woocommerce-admin/pull/121)
* Add H and Section components for context-aware headings

* Switch to using the new context-aware heading and section components

* Style header by class name, not heading level

* Add our client dir to the modules list for Jest

We already have this setting in webpack, but Jest doesn’t pick up on that
2018-06-20 11:10:06 -04:00
Kelly Dwan b0bcce86d8 Add CSS naming conventions following Gutenberg’s standards (https://github.com/woocommerce/woocommerce-admin/pull/99)
* Add CSS naming conventions following Gutenberg’s standards

* Update `woo-dashboard` to `woocommerce-layout`

* Update admin notice container to new classname standard
2018-06-01 10:35:18 -04:00
Kelly Dwan 4191d7adab Add ActivityCard component (https://github.com/woocommerce/woocommerce-admin/pull/86)
* Add an ActivityCard component

* Add font-size mixin, hover-state mixin, and a fake base padding

* Style the ActivityCard

* Style the card image

* Add README

* Address PR feedback

- Add className prop
- children propType is required
- Link to a real image
2018-05-25 15:34:35 -04:00
Justin Shreve 893298aa5d Update Agenda widget to use Count component (https://github.com/woocommerce/woocommerce-admin/pull/81)
* Update Agenda widget to use Count component

* Move font-weight rule to count component
2018-05-24 11:45:32 -04:00
Kelly Dwan a56437c9c8 Fix React warnings for nested components/className (https://github.com/woocommerce/woocommerce-admin/pull/83)
* Fix class/className warning

* Fix nested `a` warning

* Add note about SCRIPT_DEBUG
2018-05-23 14:01:41 -04:00
Justin Shreve d4ade607d8 Add agenda widget base and related components (https://github.com/woocommerce/woocommerce-admin/pull/57)
* Add agenda widget with accordion

* Add AgendaItem, README, and do some cleanup

* Handle PR Feedback: Rename AgendaAccordion to AgendaGroup, accept an href prop for a non-accordion state. Accept onClick or href for AgendaItem, a11y fixes, fix some typos, update examples & README.

* Address PR Feedback: Rename AgendaGroup to AgenaHeader, use a direct link for href mode, use IconButton instead of Button & Dashicon, pull out link rendering to its own method. Use <Link /> for app links.

* Combine box-shadow focus/hover rule and add transparent background

* Make `count` optional
2018-05-22 11:19:56 -04:00
Kelly Dwan 8f23630269 Layout: Add structure components & CSS (https://github.com/woocommerce/woocommerce-admin/pull/45)
* Refactor dashboard layout into new Layout components

* Style the new layout

* Use Slot/Fill for the Header component

* Center cards, fixed size for sidebar

* Only set the box-sizing on things within our app

* Make app the full height of the wp-admin frame

* Add styles to show/hide sidebar

* Toggle the sidebar

* Wrap router around entire Layout, use page setting to show/hide sidebar on page

* Fix the styles on show/hide buttons, add title & close button to the sidebar

* Use a min-height on visible sidebars

* Add/update READMEs

* Update space between main content & sidebar
2018-05-18 13:31:08 -04:00
Kelly Dwan 146547cb1d Components: Add EllipsisMenu component (https://github.com/woocommerce/woocommerce-admin/pull/40)
* Add EllipsisMenu & MenuItem

* Add styles for menu items

* Don’t disable all keyboard interactions

Was breaking tab

* Move EllipsisMenu to client folder

* Clean up unused props & focus state

* Add an unfocusable MenuTitle component

* Update EllipsisMenu exports so that all menu-related components can be pulled from EllipsisMenu

* Make strings translatable

Even demo content should use translation functions :)

* Add README

* Fix arrow position

* Add box-sizing back to global reset
2018-05-14 11:47:42 -04:00
Justin Shreve d7df8ed76e Adds SCSS color variables and breakpoints (https://github.com/woocommerce/woocommerce-admin/pull/39)
* Adds SCSS color variables and breakpoint mixins

* Use webpack to pull in shared CSS

* Move notices reset rule to wpadmin-reset

* Prefix breakpoints, colors, and wpadmin reset
2018-05-14 09:41:30 -04:00
Justin Shreve 1dbf44ef55 Hide notices on woo-dash pages (https://github.com/woocommerce/woocommerce-admin/pull/36) 2018-05-11 13:07:53 -04:00
Justin Shreve d380fd7569 Rename js/src to client (https://github.com/woocommerce/woocommerce-admin/pull/38)
* Rename js/src to client/

* Update the prettier format to only look in client/
2018-05-11 12:13:57 -04:00