From d486bb7336f9feaac66209a51a6f0f313e8c1732 Mon Sep 17 00:00:00 2001
From: Ella
Date: Fri, 17 Jan 2025 14:46:25 +0100
Subject: [PATCH] Add structure for domain upsell
---
.../wpcom-dashboard-widgets.php | 3 +-
.../wpcom-general-tasks-widget/index.js | 59 ++++++++++++++++---
.../wpcom-general-tasks-widget/style.scss | 22 +++++++
.../tasks/home-task-domain-upsell/index.js | 38 +++++++++++-
4 files changed, 112 insertions(+), 10 deletions(-)
create mode 100644 projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/style.scss
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.php b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.php
index ec76b2d6eab10..f5d89001a4171 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.php
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.php
@@ -23,7 +23,8 @@ function load_wpcom_dashboard_widgets() {
),
array(
'id' => 'wpcom_general_tasks_widget',
- 'name' => __( 'Tasks', 'jetpack-mu-wpcom' ),
+ 'name' => __( 'Suggestions', 'jetpack-mu-wpcom' ),
+ // ' . __( 'Suggestions', 'jetpack-mu-wpcom' ) . '​
'priority' => 'high',
),
);
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/index.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/index.js
index cccf61b1022a7..a71cb29254ab1 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/index.js
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/index.js
@@ -1,7 +1,10 @@
import apiFetch from '@wordpress/api-fetch';
import { useEffect, useState } from '@wordpress/element';
+import { __ } from '@wordpress/i18n';
import TaskDomainUpsell from './tasks/home-task-domain-upsell';
+import './style.scss';
+
const taskMap = {
'home-task-domain-upsell': TaskDomainUpsell,
};
@@ -22,25 +25,65 @@ export default ( { siteId } ) => {
// The secondary array countains strings that refer to cards, except for the
// tasks which is an array.
const tasks = response.secondary.find( item => Array.isArray( item ) );
- const task = tasks[ index ];
+ if ( ! tasks ) {
+ return { __( 'No suggestions.', 'jetpack-mu-wpcom' ) }
;
+ }
+
+ const task = tasks[ index ];
const TaskComponent = taskMap[ task ];
return (
<>
- { TaskComponent ? : To do: { task }
}
-
-
+
+ { TaskComponent ? (
+
+ ) : (
+ To do: { task }
+ ) }
+ { /* { createPortal(
+
+ {
+ event.preventDefault();
+ event.stopPropagation();
+ setIndex( index - 1 );
+ } }
+ disabled={ index === 0 }
+ >
+ { __( '← Previous', 'jetpack-mu-wpcom' ) }
+
+ {
+ event.preventDefault();
+ event.stopPropagation();
+ setIndex( index + 1 );
+ } }
+ disabled={ index === tasks.length - 1 }
+ >
+ { __( 'Next →', 'jetpack-mu-wpcom' ) }
+
+ ,
+ document.querySelector( '#wpcom_general_tasks_widget .wpcom_general_tasks_widget_title' )
+ ) } */ }
>
);
};
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/style.scss b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/style.scss
new file mode 100644
index 0000000000000..2f648fe9b18bb
--- /dev/null
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/style.scss
@@ -0,0 +1,22 @@
+#wpcom_general_tasks_widget_main {
+ min-height: 180px;
+
+ h2 {
+ padding: 0;
+ }
+}
+
+.wpcom_general_tasks_widget_buttons .button.button-link {
+ min-height: auto;
+ line-height: 1.4;
+ background: none;
+
+ &:disabled,
+ &:hover {
+ background: none !important; // Has !important for core style.
+ }
+}
+
+// #wpcom_general_tasks_widget .wpcom_general_tasks_widget_title_text {
+// display: none;
+// }
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/tasks/home-task-domain-upsell/index.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/tasks/home-task-domain-upsell/index.js
index e161517c02774..41dcd798389c7 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/tasks/home-task-domain-upsell/index.js
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-general-tasks-widget/tasks/home-task-domain-upsell/index.js
@@ -1,3 +1,39 @@
export default () => {
- return Domain Upsell Component
;
+ // To do: actually fetch it from the API.
+ const domain = new URL( window.location.href ).hostname.split( '.' )[ 0 ] + '.com';
+ return (
+ <>
+ Own a domain. Build a site.
+
+ { domain } is a perfect site address. It’s available, easy to find, share,
+ and follow. Get it now and claim a corner of the web.
+
+
+ { /* To do: convert to SVG. */ }
+
+ { domain }
+
+
+
+
+ >
+ );
};