Commit Graph

56 Commits

Author SHA1 Message Date
Paul Sealock fea332b5b4 Change homepage to homesceen (https://github.com/woocommerce/woocommerce-admin/pull/4549) 2020-06-15 14:17:12 +12:00
Paul Sealock d7aec170f1 Runtime feature config override (https://github.com/woocommerce/woocommerce-admin/pull/4523) 2020-06-11 12:26:20 +12:00
Paul Sealock 7f8149563b Homescreen: Add option to disable (https://github.com/woocommerce/woocommerce-admin/pull/4450)
* Add homescreen option

* change opt name to homescreen
2020-06-04 08:42:30 +12:00
Joshua T Flowers d14fd4dbe1 Migrate onboarding data store to wp data (https://github.com/woocommerce/woocommerce-admin/pull/4433)
* Migrate onboarding from wc-api to wp-data store

* Add tests for onboarding reducer

* Update references to onboarding data store

* Update tests for replacing profileItems

* Add onboarding hydration for profile items

* Prevent store from being registered twice

* Add requesting state to onboarding store

* Prevent duplicate registration on all wp data stores

* Update more components to use new wp data onboarding store

* Add tests for onboarding requesting state

* Update isRequesting to use isOnboardingRequesting
2020-05-28 11:51:40 +03:00
David Stone 8ebd33fe6b Use Route based code splitting to optimize bundle size (https://github.com/woocommerce/woocommerce-admin/pull/4094)
* Use lazy loading to split up the size of the js downloaded

* Use lazy loading to split up the size of the js downloaded

* Add Moment Timezone plugin to reduce size of data file.

* Lazy load header panels and use Dashicons for faster loading

* Load assets from the correct publicPath

* Load assets from the correct publicPath

* PHP cs fixes

* Fix missing quotes on string literal.

* Fix PropType warning for lazy loaded component.

* Separate the task list and dashboard chunks.

* Lazy load dashboard sections.

* Restore original icons and reduce size by importing only the icons needed

* Lazy load alerts to save more Kb on initial load

* Minify built JS in production mode.

* Add preload tags for WC Admin assets. (https://github.com/woocommerce/woocommerce-admin/pull/4162)

* Fix linting errors.

* Add modified UnminifiedWebpackPlugin.

* Produce minified and unminified bundles for all builds.

* Remove unused variable from webpack config.

* Run unminify after sourcemap generation.

* Only hook after optimization if we're using a devtool.

* Add minification suffix in Loader::get_url().

* Lazy load OBW on new home screen.

* Move OBW style up a level to layout.

* Hydrate ProfileWizard independently of withSelect and withDispatch

* Fix order of composition and fallback function when using hydration.

Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-04-29 12:01:27 -06:00
Jeff Stieler e893ce3c54 Fix OBW when new home screen is enabled. (https://github.com/woocommerce/woocommerce-admin/pull/4215)
* Move ProfileWizard component out of Dashboard.

* Don't trigger the OBW from the Analytics Dashboard (with new home screen).

* Trigger OBW from the new home screen.

* Fix duplicate import.
2020-04-27 08:56:15 -06:00
Jeff Stieler 6140e7994f New home screen pageview tracking (https://github.com/woocommerce/woocommerce-admin/pull/4189)
* Specify home screen in tracks event when enabled.

* Add Jetpack info to home page Tracks event.

* Use @wordpress/data's withSelect - no need for wc-api.

* Add plugins hydration to existing compose() call.

* Safer access of wcSettings object in plugins hydration.

* Remove redundant plugins hydration from TaskList and ProfileWizard.
2020-04-27 08:41:26 -06:00
Paul Sealock c500d3fa98 Plugins DataStore: decouple from onboarding (https://github.com/woocommerce/woocommerce-admin/pull/4048)
* Plugins DataStore: Add client side store
2020-04-17 11:58:36 +12:00
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