Commit Graph

41 Commits

Author SHA1 Message Date
Cem Ünalan 48ebe7b84c
Marketplace: Add "Add to Store" button for free and WordPress.org products #43616 (#43983)
* Marketplace: Add "Add to Store" button for free and WordPress.org products (#43616)

* Marketplace: Install free .org plugins with Add to Store button

* Marketplace: addressed feedback for the the new install free products flow

- Moved notices to the top of the modal
- Updated notice styles slightly
- Updated the CreateOrderSuccessResponse to reflect API changes

* Marketplace: Require the Helper orders API file

* Marketplace: fix linter errors

* Marketplace: form encode when submitting the request

The body is encoded anyways by the WordPress core. However, if I don't
do it here, I can't create a valid signature to be verified by
Woo.com.

I could have just submitted a JSON too, but this seamed easier since
the body is parsed on Woo.com automatically when it's in this form.

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

* Marketplace: remove "~" character in imports and use relative paths

* Marketplace: fix margins in the product with the Add to Store button

* Marketplace: Add conditions to hide the button

We hide it if:

- the product is already installed
- user doesn't have the right capability
- if the product is just installed using our flow and there is
no page refresh

* Marketplace: don't show Add to Store button on Themes and on Discover

* Marketplace: fix linting

* Marketplace: hide ratings from the product if "is-small" class exists

* Marketplace: fix linting errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-24 23:02:20 +03:00
berislav grgičak c018d7751b
Redirect Woo.com connect request to selected page (#43315)
* Working redirect

* Dynamic connect urls

* Clean up

* Changelog
2024-01-10 07:20:15 +01:00
berislav grgičak 8d6621ece1
Remove install support for Woo.com hosted products (#42952)
* Installer url API

* Redirect if installer not available

* Remove paid product autoinstall support

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 12:52:51 +01:00
berislav grgičak 2964800f27
Add subscription install modal (#42009)
* Install modal

* Add connect button

* Small product card

* Add install functionality

* Add no subscription error

* Fix error notice loading

* Connect style

* Add success state

* Fix admin urls

* Add error message to failed install events

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-14 12:45:40 +01:00
And Finally 3b6d53efe5 Removed refresh button spin animation – was going backwards, and isn't consistent with general design approach. 2023-11-22 14:27:22 +00:00
And Finally 51321ee586
Merge branch 'feature/marketplace-subscriptions' into fix/my-subscriptions-scrolling-chromium 2023-11-22 13:39:23 +00:00
And Finally 7ec9d60d8a Makes product icon and product name in My Subscriptions list link to Woo.com product page. 2023-11-22 13:05:10 +00:00
And Finally 6e124264be Addressing linter errors. 2023-11-22 13:00:20 +00:00
And Finally c336475d8e Addressing linter errors. 2023-11-22 12:43:49 +00:00
raicem 05d8169ec3 Marketplace: fix issue with sideways scrolling on my subscriptions table 2023-11-22 12:42:31 +03:00
Cem Ünalan 9a7a7e7f9c
Marketplace: Add Tracks events to My Subscriptions page (#41455)
* Marketplace: add Tracks events for the subscription page

Added events for:
- marketplace_product_installed
- marketplace_product_install_failed
- marketplace_renew_button_clicked
- marketplace_subscribe_button_clicked
- marketplace_product_updated
- marketplace_product_update_failed

* Marketplace: update Tracks properties

We used to reference product slug only. But may change and if the store
is rate limited, that information is missing. This commit switches
using "product_zip_slug" and "product_id".

* Marketplace: add product version info to update and install Tracks events
2023-11-22 09:40:18 +03:00
berislav grgičak 6f58b003a5
Marketplace subscriptions mobile fixes (#41597)
* Gradient fixes

* Responsive header
2023-11-21 12:43:06 +01:00
berislav grgičak ab400a4128
Unconnected subscription improvements (#41468)
* Don't show a My Subscriptions group if it's empty

* Hide expiry if installed but has no subscription

* Show subscription status labels in a column

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

* Show only one badge

* Show installed header if no installed items

* Remove test code

* Show entire installed section

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-21 08:33:06 +01:00
berislav grgičak 48d7490c2a
Marketplace design improvements (#41505)
* Not connected screen fixes

* Table improvements

* Success notice icon

* Use the same layout of columns for both tables

* Popover

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

* CSS lint fixes

* Styling tweaks. Changed font-weight of `.woocommerce-marketplace__product-list-title` to 400, to correspond with the correct weight of the titles like "Installed on this store" in the My Subscriptions section.

* Undo refresh move

* Fix subgrid max widths

* Fic status height

* Update collaborate link

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-21 08:08:26 +01:00
berislav grgičak b3d24ef7d1
Update refresh button to use API (#41397)
* Add refresh to subscription context

* Add refresh button

* Prevent multiple clicks

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

* Fix notices

* Refresh notices

* Trigger Build

* Add spacing and fix class name

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-16 11:51:30 +01:00
Kyle Nel f22f2fe3cf
Marketplace - Update empty state for installed subscriptions table (#41267)
* Add empty state for installed subscriptions table

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: raicem <unalancem@gmail.com>
Co-authored-by: mlaetitia <30905719+mlaetitia@users.noreply.github.com>
2023-11-15 09:06:54 +02:00
berislav grgičak 785b630dca
Fix subscription grouping (#41288)
* Hide install if not installable

* Refactor local data generation

* Add subscription installed flag

* Add connect support to not in use items

* Remove debug code

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

* Linter fixes

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

* Update plugins/woocommerce/includes/admin/helper/class-wc-helper.php

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Update plugins/woocommerce/includes/admin/helper/class-wc-helper.php

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Update plugins/woocommerce/includes/admin/helper/class-wc-helper.php

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Update plugins/woocommerce/includes/admin/helper/class-wc-helper.php

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Remove duplicate changelog

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-10 06:11:40 +01:00
Cem Ünalan 4b97e3e9c9
Marketplace: table design updates (#41066)
* Marketplace: table design updates

* Marketplace: address PR feedback

- Added enum for status levels
- Fixed color for the table rows
- Used ADMIN_URL for referencing plugins page
-

* Marketplace: Update WooCommerce.com references to Woo.com

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Marketplace: fix how status badges look on narrower screens

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-08 13:26:44 +03:00
berislav grgičak 154c69c2d5
My subscriptions error notices (#41124)
* Marketplace: Populate the table rows with components

* Marketplace: add links to dropdown menu and fix fallback product icons

* Marketplace: fix popover width

* Add My subscriptions install (#40630)

* Marketplace: add plugin install from the subscriptions page

Co-authored-by: berislav grgičak <berislav.grgicak@gmail.com>

* Marketplace: Use the activation function to show install button

---------

Co-authored-by: raicem <unalancem@gmail.com>

* Add WP updates script to the extensions page

* Add update button

* Add update data to subscriptions

* Update plugins

* Prevent update if license unavailable

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

* Remove all data from API

* Linter fixes

* Linter fixes

* Remove merge string

* Update link style

* Add comment for updates.js

* Prevent updates if required data is missing

* Return removed slug code

* Add renew modal

* Update install to run until new data loaded

* Add activate modal

* Add connect modal

* Add renew button

* Renewal button

* Rename activate to connect

* Add subscribe button

* Add action buttons

* Remove unused const

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

* Switch to WP installer

* Use WP installer

* Remove install endpoint

* Fix php warning

* Add download_link if subscription exists

* My subscriptions action modals (#40934)

* Add renew modal

* Update install to run until new data loaded

* Add activate modal

* Add connect modal

* Add renew button

* Renewal button

* Rename activate to connect

* Add subscribe button

* Add action buttons

* Remove unused const

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

* Update plugins/woocommerce-admin/client/marketplace/components/my-subscriptions/my-subscriptions.scss

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Update import path

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>

* Use product slugs for installing

* Add store for installing state

* Add theme install support

* Product activate endpoint

* Activate after install

* PHP warning

* Update context

* Debugging

* Install context

* Linter

* Simplify context

* Use Redux instead of context

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

* Replace ~ with relative paths

* Add error notices

* Move update to functions

* Add notice store

* Fix linter errors

* Remove temp file

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

* Don't autoremove notices

* Add status to notices

* Send just required path field

* Subvscribe hover color

* Css linter fix

* Fix error notice style

* Update manage button text

* Linter fixes

---------

Co-authored-by: raicem <unalancem@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-07 09:21:12 +01:00
berislav grgičak 19df04921e
Update/my subscriptions wp installer (#40990)
* Marketplace: Populate the table rows with components

* Marketplace: add links to dropdown menu and fix fallback product icons

* Marketplace: fix popover width

* Add My subscriptions install (#40630)

* Marketplace: add plugin install from the subscriptions page

Co-authored-by: berislav grgičak <berislav.grgicak@gmail.com>

* Marketplace: Use the activation function to show install button

---------

Co-authored-by: raicem <unalancem@gmail.com>

* Add WP updates script to the extensions page

* Add update button

* Add update data to subscriptions

* Update plugins

* Prevent update if license unavailable

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

* Remove all data from API

* Linter fixes

* Linter fixes

* Remove merge string

* Update link style

* Add comment for updates.js

* Prevent updates if required data is missing

* Return removed slug code

* Add renew modal

* Update install to run until new data loaded

* Add activate modal

* Add connect modal

* Add renew button

* Renewal button

* Rename activate to connect

* Add subscribe button

* Add action buttons

* Remove unused const

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

* Switch to WP installer

* Use WP installer

* Remove install endpoint

* Fix php warning

* Add download_link if subscription exists

* My subscriptions action modals (#40934)

* Add renew modal

* Update install to run until new data loaded

* Add activate modal

* Add connect modal

* Add renew button

* Renewal button

* Rename activate to connect

* Add subscribe button

* Add action buttons

* Remove unused const

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

* Update plugins/woocommerce-admin/client/marketplace/components/my-subscriptions/my-subscriptions.scss

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Update import path

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>

* Use product slugs for installing

* Add store for installing state

* Add theme install support

* Product activate endpoint

* Activate after install

* PHP warning

* Update context

* Debugging

* Install context

* Linter

* Simplify context

* Use Redux instead of context

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

* Replace ~ with relative paths

* Remove unnecessary is_null check

---------

Co-authored-by: raicem <unalancem@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-06 09:35:43 +01:00
Kyle Nel b62fc16aa3
Change woocommerce.com URLs to woo.com in marketplace (#41127)
Change woocommerce.com to woo.com
2023-11-06 10:15:34 +02:00
berislav grgičak 53c4fe6afb
My subscription product updates (#40752)
* Marketplace: Populate the table rows with components

* Marketplace: add links to dropdown menu and fix fallback product icons

* Marketplace: fix popover width

* Add My subscriptions install (#40630)

* Marketplace: add plugin install from the subscriptions page

Co-authored-by: berislav grgičak <berislav.grgicak@gmail.com>

* Marketplace: Use the activation function to show install button

---------

Co-authored-by: raicem <unalancem@gmail.com>

* Add WP updates script to the extensions page

* Add update button

* Add update data to subscriptions

* Update plugins

* Prevent update if license unavailable

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

* Remove all data from API

* Linter fixes

* Linter fixes

* Remove merge string

* Update link style

* Add comment for updates.js

* Prevent updates if required data is missing

* Return removed slug code

* My subscriptions action modals (#40934)

* Add renew modal

* Update install to run until new data loaded

* Add activate modal

* Add connect modal

* Add renew button

* Renewal button

* Rename activate to connect

* Add subscribe button

* Add action buttons

* Remove unused const

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

* Update plugins/woocommerce-admin/client/marketplace/components/my-subscriptions/my-subscriptions.scss

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Update import path

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>

---------

Co-authored-by: raicem <unalancem@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-10-27 06:08:27 +02:00
berislav grgičak 83b7b95850
Add subscriptions empty state (#40862)
* Add disconnected state

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

* Added top margin to `.woocommerce-store-alerts` to address https://github.com/Automattic/woocommerce.com/issues/18448.

* Rename description class

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-10-23 07:55:23 +02:00
Bero 679df40f5b Linter fixes 2023-10-18 17:43:36 +02:00
berislav grgičak e30a99dc55
Return to new subscriptions page after action (#40727)
* Add redirect override method

* Redirect to wc-admin when needed

* Update refresh url

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

* Deleted unused import of `Themes` component. Was breaking local build.

* Linter fixes

* Linter

* Update plugins/woocommerce/includes/admin/helper/class-wc-helper-admin.php

Co-authored-by: Cem Ünalan <raicem@users.noreply.github.com>

* Small fixes

* PHPCS fixes

* Linter fixes

* Linter

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: Cem Ünalan <raicem@users.noreply.github.com>
2023-10-18 12:07:18 +02:00
Cem Ünalan 25dccd4968
Marketplace: Implement the subscriptions table row (#40626)
* Marketplace: Populate the table rows with components

* Marketplace: add links to dropdown menu and fix fallback product icons

* Marketplace: fix popover width

* Add My subscriptions install (#40630)

* Marketplace: add plugin install from the subscriptions page

Co-authored-by: berislav grgičak <berislav.grgicak@gmail.com>

* Marketplace: Use the activation function to show install button

---------

Co-authored-by: raicem <unalancem@gmail.com>

* Marketplace: Fix issues with copy on the My Subscriptions page

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: berislav grgičak <berislav.grgicak@gmail.com>

* Marketplace: Use $grid-unit variables in SCSS

* Marketplace: fix the build error a missing module

* Linter fixes

---------

Co-authored-by: berislav grgičak <berislav.grgicak@gmail.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-10-18 12:14:14 +03:00
Bero ff3e42948d Add icon 2023-10-06 08:23:49 +02:00
Bero 60ef6dbbaf FIx installed list filter 2023-09-28 20:58:07 +02:00
Bero 3de2a2bf3d Fix linter error 2023-09-28 20:49:22 +02:00
berislav grgičak 8100917f2f
Update plugins/woocommerce-admin/client/marketplace/components/my-subscriptions/my-subscriptions.tsx
Co-authored-by: Cem Ünalan <raicem@users.noreply.github.com>
2023-09-28 10:02:46 +02:00
berislav grgičak a6dcfb08bb
Update plugins/woocommerce-admin/client/marketplace/components/my-subscriptions/my-subscriptions.tsx
Co-authored-by: Cem Ünalan <raicem@users.noreply.github.com>
2023-09-28 08:53:06 +02:00
Bero 93c650e2f5 Add expired to the installed list 2023-09-27 13:03:56 +02:00
Bero a0c30a298a Fix version number logic 2023-09-27 12:26:13 +02:00
Bero 17979635b6 Load correct data in components 2023-09-27 12:21:50 +02:00
Bero a4cceab468 List subscriptions from API 2023-09-26 14:12:14 +02:00
Dan Q fd02270f5d Appease linter 2023-09-22 11:28:57 +01:00
Dan Q 1e929314e0 Fix style of tooltip 2023-09-22 11:05:42 +01:00
Dan Q 648dbcd75c Linter appeasement 2023-09-21 15:17:53 +01:00
Dan Q b05a5abc10 Fix typo and lint 2023-09-21 15:11:19 +01:00
Dan Q 5e7263b77d Create My Subscriptions skeleton (with refresh link) 2023-09-21 15:00:04 +01:00
Dan Q 283f52b794 Define a basic Subscription type 2023-09-21 14:59:37 +01:00