Commit Graph

48 Commits

Author SHA1 Message Date
Darren Ethier 783f613815 wp.data Settings refactor
add data store for settings using wp.data

add use-select-with-refresh example

replace fresh-data usage with new settings data store for settings page

Add data package

move to packages

Fix isDirty after save

Add isBusy to primary button when saving

update Readme

remove comment

readme to use useSelect

Revert "update Readme"

This reverts commit 7402fd49b8f384fde5878e0bee0616f0a87bb4f6.

Data Layer: Settings page to use Settings store (https://github.com/woocommerce/woocommerce-admin/pull/3430)

* Data Layer: Settings store as source of truth for settings page

This reverts commit 7402fd49b8f384fde5878e0bee0616f0a87bb4f6.

* fixup

* save on reset

* non mutable constants

* add set/getSettings

* save using setSettings

* separate HOC

* cleanup

* remove settingsToData

* withHydration

* remove withSettings HOC

* renmove useSettins for now

* withSettingsHydration updates

* Revert "withSettingsHydration updates"

This reverts commit f2adf108fbe19b574978fea5925a1a18e7ed3007.

* rename withSettingsHydration

* redo withSettingsHydration simplification

* restore

* useSettings

* render using useSettings

* handleInputChange working

* get setIsDirty working

* saving works

* reset and cleanup

* cleanup

* use snake case on hook files

* use clearIsDirty

* Avoid mutation on setting update

* remove @todo

* persiting -> isPersisting

* better reducer ternaries

* add wcSettings as arg to withSettingsHydration

reset package-lock

Settings: split out mutable wcAdminSettings (https://github.com/woocommerce/woocommerce-admin/pull/3675)

Settings: handle async settings groups (https://github.com/woocommerce/woocommerce-admin/pull/3707)
2020-03-25 16:20:17 +13:00
Darren Ethier 33c5b41e3f Align WooCommerce javascript code standards/linting/styles with WordPress core. (https://github.com/woocommerce/woocommerce-admin/pull/3674)
* align code styles with the same configuration as Woo-Blocks

* initial pass of reformat-files

* applies manual fixes to various new linting errors surfaced by the configuration change.

* Fix state mutation in image-upload

* remove unused pre-commit-hook.js

* requestAnimationFrame -> window.requestAnimationFrame

* wc-api eslint changes

* eslint fixes on client/lib and client/settings

* client/header eslint changes

* fixes for client/dashboard part 1

* fixes client/dashboard part 2 of 2

* client/analytics part 1

* client/analytics continued

* client/analytics, last batch

* rename __mock__ directory

* pass in useEffect, useState from React component or function

* remove '+' from sprintf string argument

* use ref instead of findDOMNode

* reformat and repaply package.json changes

* install deps before running linter in Travis

* useGetCountryStateAutofill

* counryStateAutofill

* countryStateAutofill

Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-02-14 15:23:21 +13:00
Justin Shreve 5068282b7b Add purchase modal at the end of the profile wizard (https://github.com/woocommerce/woocommerce-admin/pull/3444)
* Add purchase modal to confirm intent before cart redirect

* Handle PR feedback: Fix comment on getProductIdsForCart, move cart modal to open on theme page (which rewrites the mark completed functionality), fix CSS display, Add busy stsate to redirect to cart button

* Fix some minor naming issues and add a busy state on thee later link
2019-12-20 07:58:38 -05:00
Joshua T Flowers 529cab809e Onboarding: Fix error if product types are missing (https://github.com/woocommerce/woocommerce-admin/pull/3340)
* Get product types from profile items or set to empty array

* Remove duplicate cart redirect methods

* Add missing cart redirect params

* Use path for wccom-back instead of full url
2019-12-10 15:08:16 -05:00
Justin Shreve 5b80e321ba Enable onboarding in the plugin build for those who have opted-in (https://github.com/woocommerce/woocommerce-admin/pull/3184)
* Enable onboarding in the plugin build for those who have opted-in

* Update constant andd option value
2019-11-07 13:31:02 -05:00
Joshua T Flowers 993934606f Onboarding: Redirect to wccom cart if purchases required (https://github.com/woocommerce/woocommerce-admin/pull/3121) 2019-10-30 09:49:27 +08:00
Justin Shreve e31e115e93 Update proceed without Jetpack/WCS to go to store details step (https://github.com/woocommerce/woocommerce-admin/pull/3040)
* Update proceed without Jetpack/WCS to go to store details step

* Adjust how we track the start/plugins step
2019-10-17 10:57:29 -04:00
Justin Shreve 0785f3c97b Add Task List Completed Functionality (https://github.com/woocommerce/woocommerce-admin/pull/3021)
* Task list completed functionality

* Hook up banner functionality

* Handle PR feedback: Add pointer/arrow, adjust banner hide behavior, some minor code changes.
2019-10-11 08:55:35 -04:00
Darren Ethier f8ebc4cd6d refactor all client files to use new settings api (https://github.com/woocommerce/woocommerce-admin/pull/3002) 2019-10-07 07:51:25 -04:00
Joshua T Flowers c4edf4305d Onboarding: Add task list toggle option (https://github.com/woocommerce/woocommerce-admin/pull/2862) 2019-09-02 11:52:47 +08:00
Joshua T Flowers b42a8b34cd Onboarding: Add products task (https://github.com/woocommerce/woocommerce-admin/pull/2667)
* Add product subtask list component

* Add has-action class to list component

* Redirect after active task completion

* Refactor task completion check

* Add task completion statuses to component settings

* Fix missing className prop for list items

* Add task completion styling
2019-07-19 10:54:38 +08:00
Daniel Rey López 08417da553 Allow each page to specify their breadcrumbs without having to render the Header component (https://github.com/woocommerce/woocommerce-admin/pull/2491)
* Simplify Header rendering, remove the use of react-slot-fill

* Remove the useless "/analytics" route

* Move all the <Header> renders to the new, declarative way of specifying breadcrumbs

* Re-render the Layout when a report is added using the REPORTS_FILTER, since that affects the breadcrumbs output

* Fix the base breadcrumb link and breadcrumbs on embedded pages

* Expanded Layout.propTypes to specify the breadcrumbs' shape
2019-07-05 09:15:49 +01:00
Paul Sealock a33bdda62e Customizable dashboard: handle turned off feature flag 2019-07-01 21:40:50 +12:00
Joshua T Flowers c524cb905f Put onboarding controllers behind feature flag check (https://github.com/woocommerce/woocommerce-admin/pull/2350)
* Put onboarding controllers behind feature flag check

* Don't load profileItems if onboarding is disabled
2019-05-31 16:55:52 +02:00
Joshua T Flowers 3b945b4bba Add profile onboarding mutators and selectors to wc-api (https://github.com/woocommerce/woocommerce-admin/pull/2310)
* Add onboarding profile selectors and mutators to wc-api

* Show onboarding profiler depending on API results

* Add initial state hydration for onboarding profile

* Add onboarding namespace constant
2019-05-28 22:45:52 +08:00
Joshua T Flowers 5e8509edd3 Onboarding: Add profiler body class on initial load + respect skipped/completed flags (https://github.com/woocommerce/woocommerce-admin/pull/2300) (https://github.com/woocommerce/woocommerce-admin/pull/2318)
* Add profiler body class on initial load, and respect skipped/complete status.

* Handle PR feedback: Remove unnecessary global, add some todos, added a filter around the next step slug, generalized the is-loading class a bit.
2019-05-28 06:38:01 -04:00
Joshua T Flowers 5e07474d16 Add step wrapper/controller to onboarding profile wizard (https://github.com/woocommerce/woocommerce-admin/pull/2241)
* Render profiler step based on query

* Add profile wizard header component

* Add profile wizard header styling

* Add plugin step

* Add header logo as SVG
2019-05-17 11:04:52 +08:00
Timmy Crawford d51845930a Dashboard: Rename class/feature to remove conflict with legacy dashboard widget (https://github.com/woocommerce/woocommerce-admin/pull/2138)
* Dashboard: Rename class/feature to remove conflict with legacy dashboard class

* Updates per feedback, and fixes.
2019-05-08 09:10:05 -07:00
Justin Shreve 00cbca33df Add profile wizard base page (https://github.com/woocommerce/woocommerce-admin/pull/1933)
* Add profile wizard base page

* Update wizard base to the new color/font treatments
2019-05-07 15:25:51 -04:00
Justin Shreve bdc94320f4 Add customizable dashboard feature flag, and base page. (https://github.com/woocommerce/woocommerce-admin/pull/2052) 2019-04-22 09:23:37 -04:00
Joshua T Flowers 04e35bf197 Add onboarding task list to dashboard (https://github.com/woocommerce/woocommerce-admin/pull/1929)
* Conditionally show task list on dashbaord page

* Move task list items into TaskList component

* Set onboarding flags to false in core and plugin environments

* Hide dashboard onboarding by default temporarily
2019-03-28 14:09:44 +08:00
David Levin 3b7f630b11 Update order of dashboard components 2019-03-21 15:23:20 -07:00
Jeff Stieler bfe5a75e98 Update text domain. (https://github.com/woocommerce/woocommerce-admin/pull/1795)
* Translation call text domain change from “wc-admin” to “woocommerce-admin”.

* Fix .pot file generation.

* Fix errantly closed array item in /revenue/stats controller.

* Rename plugin zip, main file, and repo name to "woocommerce-admin".
2019-03-13 11:14:02 -06:00
Justin Shreve 01b96ebea5 Hook up performance indicators to the REST API 2019-01-18 08:19:19 -05: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
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
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
Paul Sealock 02383f0ce7 Dashboard: Add DatePicker 2018-10-25 11:40:59 +13:00
Timmy Crawford e8fe6bac83 Remove chart from dashboard. (https://github.com/woocommerce/woocommerce-admin/pull/544) 2018-10-16 18:20:24 -07: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
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
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
Robert Elliott bbc7e13e3e split out example.js and index for component 2018-08-13 12:23:50 +02:00
Timmy Crawford 547ea94483 Dashboard: Add Top Products block. 2018-08-08 16:52:21 -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 d013fe6926 Dashboard: Add columns for blocks. 2018-08-02 16:10:55 -07:00
Robert Elliott dd663e0cd9 init for legends PR
updates from feedback
2018-07-25 17:04:03 +02:00
Justin Shreve b64d729f0a Remove Agenda Widget (https://github.com/woocommerce/woocommerce-admin/pull/216) 2018-07-17 13:07:51 -04: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 806d423324 bar chart and example 2018-07-09 15:35:12 +02: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
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
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