From 91ca2de5d59ca791537e636fd82bfeae939d373e Mon Sep 17 00:00:00 2001
From: arthur
Date: Thu, 17 Oct 2024 16:10:41 +0800
Subject: [PATCH 01/16] jetpack-mu-wpcom: Transpile @automattic/* in
node_modules
---
projects/packages/jetpack-mu-wpcom/webpack.config.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/projects/packages/jetpack-mu-wpcom/webpack.config.js b/projects/packages/jetpack-mu-wpcom/webpack.config.js
index bdc247cca9bd0..f518212ddd2ff 100644
--- a/projects/packages/jetpack-mu-wpcom/webpack.config.js
+++ b/projects/packages/jetpack-mu-wpcom/webpack.config.js
@@ -90,9 +90,9 @@ module.exports = [
exclude: /node_modules\//,
} ),
- // Transpile @automattic/jetpack-* in node_modules too.
+ // Transpile @automattic/* in node_modules too.
jetpackWebpackConfig.TranspileRule( {
- includeNodeModules: [ '@automattic/jetpack-' ],
+ includeNodeModules: [ '@automattic/' ],
} ),
// Handle CSS.
From 224970ce2f35ad2fd034549b497f409a39490f91 Mon Sep 17 00:00:00 2001
From: arthur
Date: Thu, 17 Oct 2024 17:33:49 +0800
Subject: [PATCH 02/16] jetpack-mu-wpcom: Install events as fallback
---
projects/packages/jetpack-mu-wpcom/package.json | 1 +
projects/packages/jetpack-mu-wpcom/webpack.config.js | 4 ++++
2 files changed, 5 insertions(+)
diff --git a/projects/packages/jetpack-mu-wpcom/package.json b/projects/packages/jetpack-mu-wpcom/package.json
index 369e5da7d40d9..84ae34d6fe894 100644
--- a/projects/packages/jetpack-mu-wpcom/package.json
+++ b/projects/packages/jetpack-mu-wpcom/package.json
@@ -73,6 +73,7 @@
"@wordpress/url": "4.9.0",
"clsx": "2.1.1",
"debug": "4.3.4",
+ "events": "^3.3.0",
"preact": "^10.13.1",
"react": "^18.2.0",
"react-dom": "^18.2.0",
diff --git a/projects/packages/jetpack-mu-wpcom/webpack.config.js b/projects/packages/jetpack-mu-wpcom/webpack.config.js
index f518212ddd2ff..baf8d6852cf6f 100644
--- a/projects/packages/jetpack-mu-wpcom/webpack.config.js
+++ b/projects/packages/jetpack-mu-wpcom/webpack.config.js
@@ -70,6 +70,10 @@ module.exports = [
/** Replace the classnames used by @automattic/newspack-blocks with clsx because we changed to use clsx */
classnames: findPackage( 'clsx' ),
},
+ fallback: {
+ ...jetpackWebpackConfig.resolve.fallback,
+ events: require.resolve( 'events/' ),
+ },
},
node: false,
plugins: [
From 7f983294d192bb0807938c3b7f2868f7a9b8a89f Mon Sep 17 00:00:00 2001
From: arthur
Date: Thu, 17 Oct 2024 17:43:27 +0800
Subject: [PATCH 03/16] jetpack-mu-wpcom: Install @babel/runtime
---
projects/packages/jetpack-mu-wpcom/package.json | 2 ++
1 file changed, 2 insertions(+)
diff --git a/projects/packages/jetpack-mu-wpcom/package.json b/projects/packages/jetpack-mu-wpcom/package.json
index 84ae34d6fe894..f7de548ff543e 100644
--- a/projects/packages/jetpack-mu-wpcom/package.json
+++ b/projects/packages/jetpack-mu-wpcom/package.json
@@ -34,6 +34,7 @@
"@babel/core": "7.24.7",
"@babel/plugin-transform-react-jsx": "7.24.7",
"@babel/preset-react": "7.24.7",
+ "@babel/runtime": "7.24.7",
"@playwright/test": "1.45.1",
"@types/node": "^20.4.2",
"@types/react": "^18.2.28",
@@ -52,6 +53,7 @@
"@automattic/i18n-utils": "1.2.3",
"@automattic/jetpack-base-styles": "workspace:*",
"@automattic/jetpack-shared-extension-utils": "workspace:*",
+ "@automattic/launchpad": "1.1.0-rc.3",
"@automattic/page-pattern-modal": "1.1.5",
"@automattic/typography": "1.0.0",
"@popperjs/core": "^2.11.8",
From c53764f93354c0b12098296a5f12dee2094963b3 Mon Sep 17 00:00:00 2001
From: arthur
Date: Thu, 17 Oct 2024 18:21:38 +0800
Subject: [PATCH 04/16] jetpack-mu-wpcom: Init Launchpad widget
---
pnpm-lock.yaml | 791 ++++++++++++++++++
.../components/error-boundary/index.tsx | 36 +
.../wpcom-dashboard-widgets.js | 17 +-
.../wpcom-dashboard-widgets.php | 10 +-
.../wpcom-launchpad-widget/index.js | 16 +
5 files changed, 868 insertions(+), 2 deletions(-)
create mode 100644 projects/packages/jetpack-mu-wpcom/src/common/components/error-boundary/index.tsx
create mode 100644 projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.js
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 224c12b5751f7..0768a50c6727e 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -2214,6 +2214,9 @@ importers:
'@automattic/jetpack-shared-extension-utils':
specifier: workspace:*
version: link:../../js-packages/shared-extension-utils
+ '@automattic/launchpad':
+ specifier: 1.1.0-rc.3
+ version: 1.1.0-rc.3(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(@wordpress/element@6.9.0)(@wordpress/i18n@5.9.0)(debug@4.3.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)
'@automattic/page-pattern-modal':
specifier: 1.1.5
version: 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)
@@ -2277,6 +2280,9 @@ importers:
debug:
specifier: 4.3.4
version: 4.3.4
+ events:
+ specifier: ^3.3.0
+ version: 3.3.0
preact:
specifier: ^10.13.1
version: 10.22.1
@@ -2315,6 +2321,9 @@ importers:
'@babel/preset-react':
specifier: 7.24.7
version: 7.24.7(@babel/core@7.24.7)
+ '@babel/runtime':
+ specifier: 7.24.7
+ version: 7.24.7
'@playwright/test':
specifier: 1.45.1
version: 1.45.1
@@ -4970,18 +4979,44 @@ packages:
'@automattic/babel-plugin-preserve-i18n@1.0.0':
resolution: {integrity: sha512-dRmLP0Ytf2oDNbUbO8MXLKYnPZfqhtFQ8v1hgDo2Fde1Y0bUz2Ll1UmUOHdyZudnrN/8Zt95cG/fIOJ0dxHi8Q==}
+ '@automattic/calypso-analytics@1.1.2':
+ resolution: {integrity: sha512-+pPM41BL8XYxHKoEidk3/J3XjKxinVZfB0/t8E2KPBqGclDSVg7PXxslOzWsQsNju64rSWcjIY5+c8fnnWRW5g==}
+
'@automattic/calypso-color-schemes@3.1.3':
resolution: {integrity: sha512-nzs36yfxUOcsD3HvB72IHgdUfIzTRnT7QmF78CBXEREawTEs0uDyELdx/rAOtW/PauxRYRGQ4zeK5c67FWqLxw==}
'@automattic/calypso-config@1.2.0':
resolution: {integrity: sha512-7NE5oVOEyQ4KRz1VNnPIHgW+mcwxnkcs/+Cymba7OA7SYKARiTg3ETGlZGX19S0F7gjYZMq+IeLHeAZSrNjz/Q==}
+ '@automattic/calypso-products@1.2.1-rc.1':
+ resolution: {integrity: sha512-EZW0PVB4KI8tlStveIFBDDPnHNCLu8X9t/StjSdYA0Wkono5Ib2snyGu8hgJpOPEvup4BwTloki8hhY2f9DaaA==}
+ peerDependencies:
+ '@wordpress/data': ^10.8.0
+ react: ^18.3.1
+
'@automattic/calypso-url@1.1.0':
resolution: {integrity: sha512-oA6pzfrp538gq5JEjE0ARDjvR8Efhw+jrK15TJPjAq5Q+vhPSJhH8sYKEsMAoYZV3d5nnyUcmI5Evge+yq4zeg==}
'@automattic/color-studio@2.6.0':
resolution: {integrity: sha512-2LzB6bbQw1vayZxZy5Y+DnCYU7x8tPu+rZhNkWD7V8QZTSJMJO65XKZhYaCByC+C5OegXyGyZzcqEOHHdj5iiQ==}
+ '@automattic/color-studio@3.0.3':
+ resolution: {integrity: sha512-2GXkwfu4ndGEWWSlQQamCdXIQ9qJ1zbqbGROxJzE6F4kS2EXGgXvkMolpaa6X7ZjosqlGhtTTvYOwgIw/2qD7A==}
+
+ '@automattic/components@2.2.0-rc.4':
+ resolution: {integrity: sha512-2WCFKXxvXVPiMw8JA5djQNGyiz4XNreBobsf+9VtFO2rtCSfXkDrImdvhTWS78/ajd62Wl9c+hIIfjnn4j9H4Q==}
+ peerDependencies:
+ '@wordpress/data': ^10.8.0
+ react: ^18.3.1
+ react-dom: ^18.3.1
+
+ '@automattic/data-stores@3.1.0-rc.6':
+ resolution: {integrity: sha512-XfCBDUUmpDbgagt5vkz4cRR8Vgxw+au++ZpljWIK4m8lxdusd35NQvnOUv36lpMO8Y56kTOxj8y7OW8LizqeUw==}
+ peerDependencies:
+ '@wordpress/data': ^10.8.0
+ react: ^18.3.1
+ react-dom: ^18.3.1
+
'@automattic/explat-client-react-helpers@0.1.1':
resolution: {integrity: sha512-ilebWXmuleHg3BYThJvKW/iraS5kV9iQvm+vtJn6Mkl01rkMDCmsl4MGYOYiKLi/BpUq0QVlD8qKapOsz5g3Vg==}
@@ -4991,12 +5026,47 @@ packages:
'@automattic/format-currency@1.0.1':
resolution: {integrity: sha512-RY2eiUlDiqNSHiJzz2YmH/mw4IjAUO5hkxbwcVGHJkBZowdq/WcSG2yhXc8N9cV9N1fTO/ryCuJvGnpHUe+mAg==}
+ '@automattic/format-currency@2.0.0':
+ resolution: {integrity: sha512-9A+oKRUm+n4f+cT4FHsDkCpo4mVRa/zBAvsXXq5vZpwfOWskAyDjdxA03Jl8A+z7pHYRimysG4WLM3jMRJutLw==}
+
'@automattic/i18n-utils@1.2.3':
resolution: {integrity: sha512-zvZlazUoEasLATrta3ljfxu2uaZWgHRNKWf56KKBlrPiIxNQvx9D7YyN2MhiV27e/PuAhB0gI4ghqp3gzurKmA==}
+ '@automattic/interpolate-components@1.2.1':
+ resolution: {integrity: sha512-YNQtJsrs9KQ3lkBdtLyDheVRijoBA3y/PuHdgJ0eB4AX9JyjkDX7jd79Inh79+01CGNLbMQGrEJby2zvbJr17A==}
+ peerDependencies:
+ '@types/react': '>=16.14.23'
+ react: '>=16.2.0'
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@automattic/js-utils@0.1.0':
+ resolution: {integrity: sha512-mo/BsXWCjR8fYzg66q3Qk3/fhLplMX6Wh8i1IFXPW4nwVsP3btryayn4xPdkMBPPuKwemBzHTHX3L7j4LUtwCw==}
+
'@automattic/languages@1.0.0':
resolution: {integrity: sha512-froTyDbTmLitHkvY9WLCpFdjUo6moOLkDKw63J2fLiB2gBApy2thkBV+LRx4Z0kIF5iXVkQF4yYOPYkT9Sr13Q==}
+ '@automattic/launchpad@1.1.0-rc.3':
+ resolution: {integrity: sha512-7A7yDV/44DYPEjzcxmkDFCBZXl2EtuIxRDmMFIVn/5MbhZNBInZJrB2mimcl1GBZKTfjPa1Z3kj3CC9UaUHGIA==}
+ peerDependencies:
+ '@wordpress/data': ^10.8.0
+ '@wordpress/element': ^6.8.0
+ '@wordpress/i18n': ^5.8.0
+ debug: ^4.3.3
+ react: ^18.3.1
+ react-dom: ^18.3.1
+ redux: ^4.2.1
+
+ '@automattic/load-script@1.0.0':
+ resolution: {integrity: sha512-Hc1mRmTK12OKrONnGhe7Ht1Gpo4B/ls8WQ1IZ1/qBws1bUZ6u7Crnpv3HZkN4UI7irG3OU4l4Pn1TXtoJLcKRw==}
+
+ '@automattic/material-design-icons@1.0.0':
+ resolution: {integrity: sha512-8baJ1l8ftLq/UdLeucOeGXo4/wpaB/pSOBO587/pKC/xv2Oo8Ok21g1WKwp0Y8hEq4+3JNtCzOGVxmIgDBTYvA==}
+
+ '@automattic/oauth-token@1.0.0-rc.1':
+ resolution: {integrity: sha512-kdmiGaP4fZVpaN0tCZZrN/HANUiQS1wdR1LWzuDU81NW/7kkcvporGqckZuTCguknQjAfhzkX4pMXLnFhAmklg==}
+
'@automattic/page-pattern-modal@1.1.5':
resolution: {integrity: sha512-cFA82qWUDSSFhOHfOkOqh7X8I9As5fNGp7w3LVw7ZDRl6wSiQZveLvWp4msNDnLmeiJTpxWVOZWvCirxYUE3Sw==}
peerDependencies:
@@ -5010,6 +5080,18 @@ packages:
'@automattic/request-external-access@1.0.0':
resolution: {integrity: sha512-vhN72lwPFzhCVMP1l2ODBqt7fI5jfeJz1JyBnq/AUCg9PpsJfdk4vZxhSOLhSSds8VMkU5WaNnaztkYfkkYOiA==}
+ '@automattic/shopping-cart@2.0.0':
+ resolution: {integrity: sha512-R6BYKd6YLmYjyxWaDak+Ef1jybmSYc2d8VFmVrgywDAfMbbTUuDrRwSLu9cJTrh5rP/jlKcVzXGtoJebNyv2pA==}
+ peerDependencies:
+ react: ^16.12.0
+ react-dom: ^16.12.0
+
+ '@automattic/shopping-cart@2.0.1-rc.1':
+ resolution: {integrity: sha512-OCzN7H9CwXem0eUIainbM9ExoNV8AdivFKr1OPz/JoOJGxoFZVUig5wE0Emw40VWxt5a1s8XtOUvyb6FxpnXUQ==}
+ peerDependencies:
+ react: ^18.3.1
+ react-dom: ^18.3.1
+
'@automattic/social-previews@2.1.0-beta.8':
resolution: {integrity: sha512-DakeRnV8JUhi8eD2Ft3HhrPPSnMgWnQDb0K/fuhrolNNbl/gVNng1gAF8Y8WrpGRVN5h0xdVhuszJeG6r4RotA==}
peerDependencies:
@@ -5023,9 +5105,21 @@ packages:
'@automattic/typography@1.0.0':
resolution: {integrity: sha512-TnT+vPaNUXQYwDsPCPxhNY0d4LnOKvrb0SizUCC5iybo5sfOlX/rYalGDyz6nPQDF0EBaQwMf7qhVsflFR0cBg==}
+ '@automattic/urls@1.0.0':
+ resolution: {integrity: sha512-dTunk7PqvF/w0b7DFb8aUW85XbkqEwChTllManUq1uMDdeA6S6YWeCs7t5bBei0D1RFUs9FDdyspeLisNxfbAg==}
+
+ '@automattic/viewport-react@1.0.1-rc.1':
+ resolution: {integrity: sha512-YeMnMpjMMmoxEG/uuLyc7nKkbI8MKlsEgQpufHch3J8QtHt0qn7+1ZPBQ7fDZvMocZctMivHz1WHldiTL5KX1w==}
+ peerDependencies:
+ react: ^18.3.1
+ react-dom: ^18.3.1
+
'@automattic/viewport@1.0.0':
resolution: {integrity: sha512-aSJRuZ80kds6kO+baIw8wK4nmlHG/e/sUPa7BDwalo8vBLtBnW07GsXm1zGgz9htgEogFuuxBdKR4IjO1z8phA==}
+ '@automattic/viewport@1.1.0':
+ resolution: {integrity: sha512-aZhGcaXVeT0rxZdsPq+xbQyIpT+GoS5gYiXAVrTrImOgWUEhP0LU9guil8Wy9/2FJrxfD3IkvNnzC1aWviXw1w==}
+
'@automattic/webpack-rtl-plugin@6.0.0':
resolution: {integrity: sha512-hjKjxccXJltt+KU7Oxu6HUeFMfd9w5mec+orFGa97zPKxPNCG90dXhiWn+Hrf6ZmP+o0vqrdsGN5x3O0pnQMqA==}
peerDependencies:
@@ -5674,6 +5768,10 @@ packages:
resolution: {integrity: sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==}
engines: {node: '>=6.9.0'}
+ '@babel/runtime@7.25.7':
+ resolution: {integrity: sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==}
+ engines: {node: '>=6.9.0'}
+
'@babel/template@7.25.7':
resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==}
engines: {node: '>=6.9.0'}
@@ -6597,6 +6695,10 @@ packages:
resolution: {integrity: sha512-XiY0IsyHR+DXYS5vBxpoBe/8veTeoRpMHP+vDosLZxL5bnpetzI0igkxkLZS235ldLzyfkxF+2divEwWHP3vMQ==}
engines: {node: '>=14'}
+ '@remix-run/router@1.20.0':
+ resolution: {integrity: sha512-mUnk8rPJBI9loFDZ+YzPGdeniYK+FTmRD1TMCz7ev2SNIozyKKpnGgsxO34u6Z4z/t0ITuu7voi/AshfsGsgFg==}
+ engines: {node: '>=14.0.0'}
+
'@remix-run/router@1.5.0':
resolution: {integrity: sha512-bkUDCp8o1MvFO+qxkODcbhSqRa6P2GXgrGZVpt0dCXNW2HCSCqYI0ZoAqEOSAjRWmmlKcYgFvN4B4S+zo/f8kg==}
engines: {node: '>=14'}
@@ -7169,6 +7271,9 @@ packages:
'@tannin/postfix@1.1.0':
resolution: {integrity: sha512-oocsqY7g0cR+Gur5jRQLSrX2OtpMLMse1I10JQBm8CdGMrDkh1Mg2gjsiquMHRtBs4Qwu5wgEp5GgIYHk4SNPw==}
+ '@tannin/sprintf@1.2.0':
+ resolution: {integrity: sha512-T0ORaQrH6kNFGzTg285RVPK+NCYZxOoA+r0QfKgHqK+yk5RuYPSKDa18XCLtycCNq+VWKpfyDpzGUGhYgCV+kw==}
+
'@tanstack/query-core@4.35.3':
resolution: {integrity: sha512-PS+WEjd9wzKTyNjjQymvcOe1yg8f3wYc6mD+vb6CKyZAKvu4sIJwryfqfBULITKCla7P9C4l5e9RXePHvZOZeQ==}
@@ -7690,6 +7795,10 @@ packages:
peerDependencies:
react: ^18.0.0
+ '@wordpress/api-fetch@7.10.0':
+ resolution: {integrity: sha512-sL71KkvtdGdaZmy7T0+nsTaBVhN0LSwkm3nh/qnebIYzpjZeiPWF/QeoGtJk/lKB15HjbTbfwvFEjiMI4dFvhA==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/api-fetch@7.9.0':
resolution: {integrity: sha512-iqH4lNiH8FnIkJ8Nxx4KQYQMd4c/4OwZfjrk0ITwMK5PaVJHnFZ7xZV6ncMbgXbf0VjuPjfKMRmPzxICXw08IQ==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7762,6 +7871,18 @@ packages:
react: ^18.0.0
react-dom: ^18.0.0
+ '@wordpress/compose@6.35.0':
+ resolution: {integrity: sha512-PfruhCxxxJokDQHc2YBgerEiHV7BIxQk9g5vU4/f9X/0PBQWUTuxOzSFcAba03vnjfAgtPTSMp50T50hcJwXfA==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ react: ^18.0.0
+
+ '@wordpress/compose@7.10.0':
+ resolution: {integrity: sha512-/j4+wXthaV/KMt0VANvhhRJEJfPc21c7Tq1ZeLxgsbkq4xmi9qXeDT91cvP/U+Ta3phf15K8vdxMr8MqHHiFoQ==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ peerDependencies:
+ react: ^18.0.0
+
'@wordpress/compose@7.9.0':
resolution: {integrity: sha512-6f1mZLwMD2woFSMLJ5JaCZQZz1kFD2X4gwT5c4IVnzpm+/9A0OqeTdncAi6I6wHRtKN9DzvaMQPuZitQz7HmNA==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7782,6 +7903,18 @@ packages:
react: ^18.0.0
react-dom: ^18.0.0
+ '@wordpress/data-controls@4.10.0':
+ resolution: {integrity: sha512-a7IBnxmzZYIYQzj5iPgBfHZPR65gj+AONNFHM7EUIe9FuyqWtPHy/1jUB7z95ataadh+G4d62ZwZiR1O+prSxg==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ peerDependencies:
+ react: ^18.0.0
+
+ '@wordpress/data@10.10.0':
+ resolution: {integrity: sha512-oyYl89p86+U9W6vKDqScKhUGKKzsnETj9rg8zOnT4K9ceOScjGCgdCE+XxcY9exeRg33aSYDjmvnsXXYStBYmA==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ peerDependencies:
+ react: ^18.0.0
+
'@wordpress/data@10.9.0':
resolution: {integrity: sha512-hw8VYSPZuEqlEwRnQnKgqzbwCqoGY4U5kLCZA/1McOYspvkIceTVve4qBC17QUJhu2pLEXEc6p4zBpy+SXfToQ==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7804,6 +7937,14 @@ packages:
peerDependencies:
webpack: ^5.0.0
+ '@wordpress/deprecated@3.58.0':
+ resolution: {integrity: sha512-knweE2lLEUxWRr6A48sHiO0ww5pPybGe2NVIZVq/y7EaYCMdpy6gYA0ZdVqMKZvtxKKqicJfwigcn+hinsTvUQ==}
+ engines: {node: '>=12'}
+
+ '@wordpress/deprecated@4.10.0':
+ resolution: {integrity: sha512-lktJKX3AxrskTuLbJuKY/Mzg9De6MYcOzEEL+RUHxfIx8wMtiDnVTAf7epur9XuHVOmdgCCRT6D44I23MoS0sw==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/deprecated@4.9.0':
resolution: {integrity: sha512-1PMCLULxTlI0iatsHxpPgtogMfvd/wvAqAOLGHUdkdbBtUEquGrRMo/h+TLU/ne2JDf5JKMA4ntQV6zDNO4+eg==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7812,6 +7953,14 @@ packages:
resolution: {integrity: sha512-Kas5YaRl+HebAxFfv9ctB8bdmjbhISIBo747nXCK6KqojQ/Zn2Bctv2XTypR3GMb7OS7KqVMeyCJhjEpuc8Wlw==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ '@wordpress/dom@3.58.0':
+ resolution: {integrity: sha512-t3xSr/nqekj2qwUGRAqSeGx6116JOBxzI+VBiUfZrjGEnuyKdLelXDEeYtcwbb7etMkj/6F60/NB7GTl5IwizQ==}
+ engines: {node: '>=12'}
+
+ '@wordpress/dom@4.10.0':
+ resolution: {integrity: sha512-1ZRCrDB2TV44GLwaUH9HRGQGQqXcawSEmzVPABQwfwzkUKijfbRdsWqpHrTLqlSZRImHEdp6oSON+1JmCNhXSw==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/dom@4.9.0':
resolution: {integrity: sha512-g9jRTxOpSfygEbKNGwYwx21b5GktI2SkwQSAPKpG4mmFAvLbqIzjVc2nkudRO914DKgPWrBsfKsc4Smbtpbkig==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7830,10 +7979,26 @@ packages:
react: ^18.0.0
react-dom: ^18.0.0
+ '@wordpress/element@5.35.0':
+ resolution: {integrity: sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==}
+ engines: {node: '>=12'}
+
+ '@wordpress/element@6.10.0':
+ resolution: {integrity: sha512-7zW+14vHqEn45nszSLMUqE5IbzOtvgUUgF56qlMhwabpG4l/zhaj3gO3wLDI19C13ih1vOdSjzPc3At4fB3tRQ==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/element@6.9.0':
resolution: {integrity: sha512-G5W29cxfAVc/JQBzkKoXh1t4T+G3HWa1kIgXCqIZksonlYHzCVON1Or+rD/YJZSxT6RDkBVDzdl9p0pGOrccTg==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ '@wordpress/escape-html@2.58.0':
+ resolution: {integrity: sha512-9YJXMNfzkrhHEVP1jFEhgijbZqW8Mt3NHIMZjIQoWtBf7QE86umpYpGGBXzYC0YlpGTRGzZTBwYaqFKxjeaSgA==}
+ engines: {node: '>=12'}
+
+ '@wordpress/escape-html@3.10.0':
+ resolution: {integrity: sha512-3glY3MhXEHlPP0/hrS3vkRmAOHtutvoHGhkr8vnva6TLg4CsAeo42nYbuFJ+ukVMWdCtmV+28UjOeiYtG/fZOA==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/escape-html@3.9.0':
resolution: {integrity: sha512-+/SnVUXzzr+0pgfAqK3pocGveSDS3SHrgJ1BTgV7DA1l6y9mbjnqKgFQkNW/nzca92ZuYg2vjLcq1dqDGz4v1Q==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7875,6 +8040,14 @@ packages:
react: ^18.0.0
react-dom: ^18.0.0
+ '@wordpress/hooks@3.58.0':
+ resolution: {integrity: sha512-9LB0ZHnZRQlORttux9t/xbAskF+dk2ujqzPGsVzc92mSKpQP3K2a5Wy74fUnInguB1vLUNHT6nrNdkVom5qX1Q==}
+ engines: {node: '>=12'}
+
+ '@wordpress/hooks@4.10.0':
+ resolution: {integrity: sha512-LcorV5Z9XoJCKyj5Ulgw1HPHyM2mxsSInC7wl5cuIgDFmuwPTfRndUDGWz/v86GX1GnUIB0h/ggd53vx1HiW4A==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/hooks@4.9.0':
resolution: {integrity: sha512-nan2w5imPhTaJwWdKjm/0ZMDbWR3P6Vhl4OqnBZZcJqOyNSfwsnJ98I+BWjq0U6SmiCnZQERjN0SjVdmD1tCjw==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7883,6 +8056,16 @@ packages:
resolution: {integrity: sha512-RaiMecK8Igqb4yreJncSZEBl6DR1eAj8M3mHwrJASJLiiBLcaWg0oi8iiabUEmgGCsIu2pCeXmV+8WO0FRDO5Q==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ '@wordpress/i18n@4.58.0':
+ resolution: {integrity: sha512-VfvS3BWv/RDjRKD6PscIcvYfWKnGJcI/DEqyDgUMhxCM6NRwoL478CsUKTiGJIymeyRodNRfprdcF086DpGKYw==}
+ engines: {node: '>=12'}
+ hasBin: true
+
+ '@wordpress/i18n@5.10.0':
+ resolution: {integrity: sha512-HZ6UcMHsjOocDI0zVAuP4JIl97LRmpGo/lVxzVIreaLoYitmYVDUzji02u1o7sEdRWc1Hpkm2/oO/9275rJg1w==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ hasBin: true
+
'@wordpress/i18n@5.9.0':
resolution: {integrity: sha512-pKFV9S/l0TFlm0mlWLW51hAoRDNmZPGnfEpNXq43VKZkm1cco3Z1E54PHMGk8HdCECHqYNiJuQJOBOlqcYmnVQ==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7909,6 +8092,14 @@ packages:
react: ^18.0.0
react-dom: ^18.0.0
+ '@wordpress/is-shallow-equal@4.58.0':
+ resolution: {integrity: sha512-NH2lbXo/6ix1t4Zu9UBXpXNtoLwSaYmIRSyDH34XNb0ic8a7yjEOhYWVW3LTfSCv9dJVyxlM5TJPtL85q7LdeQ==}
+ engines: {node: '>=12'}
+
+ '@wordpress/is-shallow-equal@5.10.0':
+ resolution: {integrity: sha512-KOkZzOnmjpH7hzPiaXUjhUlfKIGTzL7qUdNHBC1SFDOYpnRUSw8f1AtWxRpPBHl5dieYVx0x1qjOWjm/DtTOXg==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/is-shallow-equal@5.9.0':
resolution: {integrity: sha512-cKqgI6RQ27ZZRo4Zc/jioG3qInDKQqcT3xg5YxsduX2f1b6vQV42p0L4waLFeJZQ8WDUsgsR53AQivdInkO8gA==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7925,6 +8116,14 @@ packages:
peerDependencies:
react: ^18.0.0
+ '@wordpress/keycodes@3.58.0':
+ resolution: {integrity: sha512-Q/LRKpx8ndzuHlkxSQ2BD+NTYYKQPIneNNMng8hTAfyU7RFwXpqj06HpeOFGh4XIdPKCs/8hmucoLJRmmLmZJA==}
+ engines: {node: '>=12'}
+
+ '@wordpress/keycodes@4.10.0':
+ resolution: {integrity: sha512-2i+N90HBMqQegtGqeVB8pJz8ZgKAY1eZmQegE9MXczYVac85DDOoxhY/41c44s6Kwl3waJ2Zght6UXE0OUFMxw==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/keycodes@4.9.0':
resolution: {integrity: sha512-WO4MPlO+uGaDP5jYB9f4hn0NgBwvlaUvj4MLOIDcQGE0ljElLGFeXvqjVH0KVtnZkIKiZNPK7eoQxTWnxWaTjw==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -7978,14 +8177,36 @@ packages:
peerDependencies:
react: ^18.0.0
+ '@wordpress/priority-queue@2.58.0':
+ resolution: {integrity: sha512-W+qCS8HJWsXG8gE6yK/H/IObowcghPrQMM3cQHtfd/U05yFNU1Bd/fbj3AO1fVRztktS47lIpi9m3ll1evPEHA==}
+ engines: {node: '>=12'}
+
+ '@wordpress/priority-queue@3.10.0':
+ resolution: {integrity: sha512-Gjbw5NmRLrZ9KkiROJlL4I/s96bMlpd7gGkQbcCyyeLIZduGxQDzI4Jih5s0Xrm7Gj8WFd57wRDe/voZJR0ZsQ==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/priority-queue@3.9.0':
resolution: {integrity: sha512-QVfELUL4ei5Uf0DNG9wMVNBILasGWWWogVjVeP1xXqmfSDoeFpPzXpfL9zfANndE2S49DJP9ZoZsCaJHtMrYzA==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ '@wordpress/private-apis@1.10.0':
+ resolution: {integrity: sha512-gH6ZHmkc01MC431nMyjxFmU/77jVliOwjuv6SffQUgHMJyM75LiKC8CU8LEeLWbn3obG87m/n7Quj5p2MjtaeA==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/private-apis@1.9.0':
resolution: {integrity: sha512-hZbKVSlo5yOpssMshXwNlUyk83Ev55ZKMfJMVU5nWxiIM9bMCuhpwU+AXQ0GKxOzn2oMayVmtJ00FRbJFg+AMg==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ '@wordpress/react-i18n@4.10.0':
+ resolution: {integrity: sha512-G8w6xUfbDtZvRKht4XwWDNj0IKeSTOPVs6qM36yf/l43NPNAAJ0g/pSnCvkcVH0P7T0J0SZ3MbqNQ41/1ConvA==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
+ '@wordpress/redux-routine@5.10.0':
+ resolution: {integrity: sha512-oDqZDjz8H/bt02IEoIZCwsUsL17UOEnMg/heV0PoJxo3k5MTrvqJqzgBLoSC0PFzx/pwOo4TwvwCL+kjjm5gCQ==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ peerDependencies:
+ redux: '>=4'
+
'@wordpress/redux-routine@5.9.0':
resolution: {integrity: sha512-eEb/otHMhOwVUydb5kErV3X+1R8qQ2hrLmlWIh+kiiKwFJVCl3ge/xN8Tiy1kEBEqgGRgPqxuLvNPZDd0ySpNg==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -8034,10 +8255,22 @@ packages:
resolution: {integrity: sha512-mnwh8WcA9//DVwwZVfEaFHfIK1RaNQ8QvhD1fOtjJWjheS12QsQwjdlGTgvBVl66ErP65GdK7BM1pTv6NI0GwA==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ '@wordpress/undo-manager@0.18.0':
+ resolution: {integrity: sha512-upbzPEToa095XG+2JXLHaolF1LfXEMFS0lNMYV37myoUS+eZ7/tl9Gx+yU2+OqWy57TMwx33NlWUX/n+ynzPRw==}
+ engines: {node: '>=12'}
+
+ '@wordpress/undo-manager@1.10.0':
+ resolution: {integrity: sha512-WaLwZ+AlfXQm9PhLf6kwCBaD5DoKaIqelRsgAaqa4APjgMBlxktQ1dadime0CO9+e8R2kLwAE3rxQXhGjicRMw==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/undo-manager@1.9.0':
resolution: {integrity: sha512-JLrcmeCTqITbChkJy+PeXcE03+6ZgIfQ22cBg1+0mzLQxglx1gndTnhRcnCSebvsXnmOVmxvE4HmJ84lv7liCQ==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+ '@wordpress/url@4.10.0':
+ resolution: {integrity: sha512-SKlXocsTlaSee2trXcB0N3jdIfEGMnPiqNxxvTjeeBmsP/47MMXu5lXYslYyYlQbluhAR5/RMf0o3WqZAF2uOg==}
+ engines: {node: '>=18.12.0', npm: '>=8.19.2'}
+
'@wordpress/url@4.9.0':
resolution: {integrity: sha512-PjfExLOzaagtDZ20CAaCMh4SzeHWzJC3fiRzX4eV0esfHr4K58duxIEHXwOZ69L8/Cn596OCjrFO+CHd16jYdQ==}
engines: {node: '>=18.12.0', npm: '>=8.19.2'}
@@ -8585,6 +8818,9 @@ packages:
caniuse-lite@1.0.30001667:
resolution: {integrity: sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==}
+ canvas-confetti@1.9.3:
+ resolution: {integrity: sha512-rFfTURMvmVEX1gyXFgn5QMn81bYk70qa0HLzcIOSVEyl57n6o9ItHeBtUSWdvKAPY0xlvBHno4/v3QPrT83q9g==}
+
capital-case@1.0.4:
resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==}
@@ -8859,6 +9095,10 @@ packages:
cookie-signature@1.0.6:
resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==}
+ cookie@0.4.2:
+ resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==}
+ engines: {node: '>= 0.6'}
+
cookie@0.7.0:
resolution: {integrity: sha512-qCf+V4dtlNhSRXGAZatc1TasyFO6GjohcOul807YOb5ik3+kQSnb4d7iajeCL8QHaJ4uZEjCgiCJerKXwdRVlQ==}
engines: {node: '>= 0.6'}
@@ -9730,6 +9970,9 @@ packages:
resolution: {integrity: sha512-tQbH0pH/8LHTnwTrsKWideqi6rFB/QNUawEwrn+WHyz7PX1Tuz2u7wfTvbaNBdP5JD5LVWxNo8/A8CHNZ3bV6g==}
engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0}
+ exenv@1.2.2:
+ resolution: {integrity: sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==}
+
exit@0.1.2:
resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==}
engines: {node: '>= 0.8.0'}
@@ -10156,6 +10399,11 @@ packages:
peerDependencies:
react: 15 - 18
+ gridicons@3.4.2:
+ resolution: {integrity: sha512-KC2BzPDh3F0vJzYa7KYBWJOO9gTHoKoFiHNazZEU9Gq2jIJ2zObOA67wlZjZkPHPCjZiLQrko3AYFLrMrHXKrA==}
+ peerDependencies:
+ react: 15 - 18
+
has-ansi@2.0.0:
resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==}
engines: {node: '>=0.10.0'}
@@ -10186,6 +10434,9 @@ packages:
resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
engines: {node: '>= 0.4'}
+ hash.js@1.1.7:
+ resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==}
+
hasha@5.2.2:
resolution: {integrity: sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==}
engines: {node: '>=8'}
@@ -10305,6 +10556,11 @@ packages:
engines: {node: '>=14'}
hasBin: true
+ i18n-calypso@7.0.0:
+ resolution: {integrity: sha512-GQesQzd/VYXiJOrjMixJNFOqNOcp43kKGKZTimYu70RabvcObpjfAOqtrQganszXqXWxZ7fAXOnhCTd8NVtf/Q==}
+ peerDependencies:
+ react: ^18.2.0
+
iconv-lite@0.4.24:
resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
engines: {node: '>=0.10.0'}
@@ -11164,6 +11420,10 @@ packages:
resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==}
engines: {node: '>=12'}
+ lru@3.1.0:
+ resolution: {integrity: sha512-5OUtoiVIGU4VXBOshidmtOsvBIvcQR6FD/RzWSvaeHyxCGB+PCUCu+52lqMfdc0h/2CLvHhZS4TwUmMQrrMbBQ==}
+ engines: {node: '>= 0.4.0'}
+
lz-string@1.5.0:
resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==}
hasBin: true
@@ -11411,6 +11671,9 @@ packages:
peerDependencies:
webpack: ^5.0.0
+ minimalistic-assert@1.0.1:
+ resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
+
minimatch@3.1.2:
resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
@@ -12367,6 +12630,16 @@ packages:
react-is@18.3.1:
resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
+ react-lifecycles-compat@3.0.4:
+ resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==}
+
+ react-modal@3.16.1:
+ resolution: {integrity: sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==}
+ engines: {node: '>=8'}
+ peerDependencies:
+ react: ^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18
+ react-dom: ^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18
+
react-page-visibility@7.0.0:
resolution: {integrity: sha512-d4Kq/8TtJSr8dQc8EJeAZcSKTrGzC5OPTm6UrMur9BnwP0fgTawI9+Nd+ZGB7vwCfn2yZS0qDF9DR3/QYTGazw==}
engines: {node: '>=10'}
@@ -12444,6 +12717,13 @@ packages:
react: '>=16.8'
react-dom: '>=16.8'
+ react-router-dom@6.27.0:
+ resolution: {integrity: sha512-+bvtFWMC0DgAFrfKXKG9Fc+BcXWRUO1aJIihbB79xaeq0v5UzfvnM5houGUm1Y461WVRcgAQ+Clh5rdb1eCx4g==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ react: '>=16.8'
+ react-dom: '>=16.8'
+
react-router-dom@6.6.2:
resolution: {integrity: sha512-6SCDXxRQqW5af8ImOqKza7icmQ47/EMbz572uFjzvcArg3lZ+04PxSPp8qGs+p2Y+q+b+S/AjXv8m8dyLndIIA==}
engines: {node: '>=14'}
@@ -12479,6 +12759,12 @@ packages:
peerDependencies:
react: '>=16.8'
+ react-router@6.27.0:
+ resolution: {integrity: sha512-YA+HGZXz4jaAkVoYBE98VQl+nVzI+cVI2Oj/06F5ZM+0u3TgedN9Y9kmMRo2mnkSK2nCpNQn0DVob4HCsY/WLw==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ react: '>=16.8'
+
react-router@6.6.2:
resolution: {integrity: sha512-uJPG55Pek3orClbURDvfljhqFvMgJRo59Pktywkk8hUUkTY2aRfza8Yhl/vZQXs+TNQyr6tu+uqz/fLxPICOGQ==}
engines: {node: '>=14'}
@@ -13070,6 +13356,9 @@ packages:
resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==}
engines: {node: '>= 0.4'}
+ store@2.0.12:
+ resolution: {integrity: sha512-eO9xlzDpXLiMr9W1nQ3Nfp9EzZieIQc10zPPMP5jsVV7bLOziSFFBP0XoDXACEIFtdI+rIz0NwWVA/QVJ8zJtw==}
+
storybook-addon-mock@5.0.0:
resolution: {integrity: sha512-AGhfdAsksusJgh/VNcaGbXe1gJIVx8RKuPYMCkmCRyeMAEZggrWcU7nIADZWUJuD477mKUkaBP7I54p+3527Xg==}
peerDependencies:
@@ -13755,6 +14044,11 @@ packages:
peerDependencies:
react: '>=16.8.0'
+ use-debounce@3.4.3:
+ resolution: {integrity: sha512-nxy+opOxDccWfhMl36J5BSCTpvcj89iaQk2OZWLAtBJQj7ISCtx1gh+rFbdjGfMl6vtCZf6gke/kYvrkVfHMoA==}
+ peerDependencies:
+ react: '>=16.8.0'
+
use-memo-one@1.1.3:
resolution: {integrity: sha512-g66/K7ZQGYrI6dy8GLpVcMsBp4s17xNkYJVSMvTEevGy3nDxHOfE6z8BVE22+5G5x7t3+bhzrlTDB7ObrEE0cQ==}
peerDependencies:
@@ -13770,6 +14064,11 @@ packages:
'@types/react':
optional: true
+ use-subscription@1.6.0:
+ resolution: {integrity: sha512-0Y/cTLlZfw547tJhJMoRA16OUbVqRm6DmvGpiGbmLST6BIA5KU5cKlvlz8DVMrACnWpyEjCkgmhLatthP4jUbA==}
+ peerDependencies:
+ react: ^18.0.0
+
use-sync-external-store@1.2.2:
resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==}
peerDependencies:
@@ -13784,6 +14083,10 @@ packages:
utila@0.4.0:
resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==}
+ utility-types@3.11.0:
+ resolution: {integrity: sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==}
+ engines: {node: '>= 4'}
+
utils-merge@1.0.1:
resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==}
engines: {node: '>= 0.4.0'}
@@ -13800,6 +14103,10 @@ packages:
resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==}
engines: {node: '>=10.12.0'}
+ validator@13.12.0:
+ resolution: {integrity: sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==}
+ engines: {node: '>= 0.10'}
+
value-equal@1.0.1:
resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==}
@@ -14211,10 +14518,38 @@ snapshots:
'@automattic/babel-plugin-preserve-i18n@1.0.0': {}
+ '@automattic/calypso-analytics@1.1.2':
+ dependencies:
+ '@automattic/load-script': 1.0.0
+ cookie: 0.4.2
+ debug: 4.3.4
+ hash.js: 1.1.7
+ tslib: 2.5.0
+ uuid: 9.0.1
+ transitivePeerDependencies:
+ - supports-color
+
'@automattic/calypso-color-schemes@3.1.3': {}
'@automattic/calypso-config@1.2.0': {}
+ '@automattic/calypso-products@1.2.1-rc.1(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@automattic/calypso-config': 1.2.0
+ '@automattic/components': 2.2.0-rc.4(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/i18n-utils': 1.2.3
+ '@automattic/shopping-cart': 2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/urls': 1.0.0
+ '@wordpress/data': 10.9.0(react@18.3.1)
+ i18n-calypso: 7.0.0(@types/react@18.3.3)(react@18.3.1)
+ react: 18.3.1
+ transitivePeerDependencies:
+ - '@babel/runtime'
+ - '@emotion/is-prop-valid'
+ - '@types/react'
+ - react-dom
+ - supports-color
+
'@automattic/calypso-url@1.1.0':
dependencies:
photon: 4.1.1
@@ -14223,6 +14558,88 @@ snapshots:
'@automattic/color-studio@2.6.0': {}
+ '@automattic/color-studio@3.0.3': {}
+
+ '@automattic/components@2.2.0-rc.4(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@automattic/calypso-analytics': 1.1.2
+ '@automattic/calypso-color-schemes': 3.1.3
+ '@automattic/calypso-url': 1.1.0
+ '@automattic/color-studio': 3.0.3
+ '@automattic/format-currency': 2.0.0
+ '@automattic/i18n-utils': 1.2.3
+ '@automattic/load-script': 1.0.0
+ '@automattic/material-design-icons': 1.0.0
+ '@automattic/typography': 1.0.0
+ '@automattic/viewport-react': 1.0.1-rc.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@emotion/css': 11.13.4
+ '@emotion/react': 11.13.3(@types/react@18.3.3)(react@18.3.1)
+ '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)
+ '@wordpress/base-styles': 5.9.0
+ '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@wordpress/data': 10.9.0(react@18.3.1)
+ '@wordpress/icons': 10.9.0(react@18.3.1)
+ '@wordpress/react-i18n': 4.10.0
+ canvas-confetti: 1.9.3
+ clsx: 2.1.1
+ colord: 2.9.3
+ debug: 4.3.4
+ gridicons: 3.4.2(react@18.3.1)
+ i18n-calypso: 7.0.0(@types/react@18.3.3)(react@18.3.1)
+ lodash: 4.17.21
+ prop-types: 15.8.1
+ qrcode.react: 3.1.0(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ react-modal: 3.16.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ react-router-dom: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ react-slider: 2.0.5(@babel/runtime@7.24.7)(react@18.3.1)
+ utility-types: 3.11.0
+ uuid: 9.0.1
+ transitivePeerDependencies:
+ - '@babel/runtime'
+ - '@emotion/is-prop-valid'
+ - '@types/react'
+ - supports-color
+
+ '@automattic/data-stores@3.1.0-rc.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@automattic/calypso-analytics': 1.1.2
+ '@automattic/calypso-config': 1.2.0
+ '@automattic/calypso-products': 1.2.1-rc.1(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/format-currency': 2.0.0
+ '@automattic/i18n-utils': 1.2.3
+ '@automattic/js-utils': 0.1.0
+ '@automattic/load-script': 1.0.0
+ '@automattic/oauth-token': 1.0.0-rc.1
+ '@automattic/shopping-cart': 2.0.1-rc.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@tanstack/react-query': 5.20.5(react@18.3.1)
+ '@wordpress/api-fetch': 7.9.0
+ '@wordpress/data': 10.9.0(react@18.3.1)
+ '@wordpress/data-controls': 4.10.0(react@18.3.1)
+ '@wordpress/deprecated': 4.9.0
+ '@wordpress/element': 6.9.0
+ '@wordpress/i18n': 5.9.0
+ '@wordpress/primitives': 4.9.0(react@18.3.1)
+ '@wordpress/url': 4.9.0
+ debug: 4.3.4
+ fast-json-stable-stringify: 2.1.0
+ i18n-calypso: 7.0.0(@types/react@18.3.3)(react@18.3.1)
+ qs: 6.12.1
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ redux: 4.2.1
+ tslib: 2.5.0
+ use-debounce: 3.4.3(react@18.3.1)
+ utility-types: 3.11.0
+ validator: 13.12.0
+ wpcom-proxy-request: 7.0.5
+ transitivePeerDependencies:
+ - '@babel/runtime'
+ - '@emotion/is-prop-valid'
+ - '@types/react'
+ - supports-color
+
'@automattic/explat-client-react-helpers@0.1.1':
dependencies:
'@automattic/explat-client': 0.1.0
@@ -14237,6 +14654,10 @@ snapshots:
dependencies:
tslib: 2.5.0
+ '@automattic/format-currency@2.0.0':
+ dependencies:
+ tslib: 2.5.0
+
'@automattic/i18n-utils@1.2.3':
dependencies:
'@automattic/calypso-config': 1.2.0
@@ -14249,10 +14670,63 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@automattic/interpolate-components@1.2.1(@types/react@18.3.3)(react@18.3.1)':
+ dependencies:
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.3
+
+ '@automattic/js-utils@0.1.0': {}
+
'@automattic/languages@1.0.0':
dependencies:
tslib: 2.5.0
+ '@automattic/launchpad@1.1.0-rc.3(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(@wordpress/element@6.9.0)(@wordpress/i18n@5.9.0)(debug@4.3.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)':
+ dependencies:
+ '@automattic/calypso-analytics': 1.1.2
+ '@automattic/calypso-config': 1.2.0
+ '@automattic/components': 2.2.0-rc.4(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/data-stores': 3.1.0-rc.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/i18n-utils': 1.2.3
+ '@automattic/typography': 1.0.0
+ '@automattic/viewport': 1.1.0
+ '@tanstack/react-query': 5.20.5(react@18.3.1)
+ '@wordpress/base-styles': 5.9.0
+ '@wordpress/components': 28.9.0(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@wordpress/data': 10.9.0(react@18.3.1)
+ '@wordpress/element': 6.9.0
+ '@wordpress/i18n': 5.9.0
+ '@wordpress/icons': 10.9.0(react@18.3.1)
+ '@wordpress/url': 4.9.0
+ clsx: 2.1.1
+ debug: 4.3.4
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ redux: 4.2.1
+ tslib: 2.5.0
+ utility-types: 3.11.0
+ wpcom-proxy-request: 7.0.5
+ transitivePeerDependencies:
+ - '@babel/runtime'
+ - '@emotion/is-prop-valid'
+ - '@types/react'
+ - supports-color
+
+ '@automattic/load-script@1.0.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ debug: 3.2.7
+ transitivePeerDependencies:
+ - supports-color
+
+ '@automattic/material-design-icons@1.0.0': {}
+
+ '@automattic/oauth-token@1.0.0-rc.1':
+ dependencies:
+ cookie: 0.4.2
+ store: 2.0.12
+
'@automattic/page-pattern-modal@1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)':
dependencies:
'@automattic/color-studio': 2.6.0
@@ -14286,6 +14760,22 @@ snapshots:
dependencies:
'@automattic/popup-monitor': 1.0.2
+ '@automattic/shopping-cart@2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ debug: 4.3.4
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@automattic/shopping-cart@2.0.1-rc.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ debug: 4.3.4
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ transitivePeerDependencies:
+ - supports-color
+
'@automattic/social-previews@2.1.0-beta.8(@babel/runtime@7.24.7)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@emotion/react': 11.13.3(@types/react@18.3.3)(react@18.3.1)
@@ -14306,8 +14796,19 @@ snapshots:
'@automattic/typography@1.0.0': {}
+ '@automattic/urls@1.0.0': {}
+
+ '@automattic/viewport-react@1.0.1-rc.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@automattic/viewport': 1.1.0
+ '@wordpress/compose': 7.9.0(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+
'@automattic/viewport@1.0.0': {}
+ '@automattic/viewport@1.1.0': {}
+
'@automattic/webpack-rtl-plugin@6.0.0(webpack@5.94.0(webpack-cli@4.9.1))':
dependencies:
rtlcss: 3.5.0
@@ -15164,6 +15665,10 @@ snapshots:
dependencies:
regenerator-runtime: 0.14.1
+ '@babel/runtime@7.25.7':
+ dependencies:
+ regenerator-runtime: 0.14.1
+
'@babel/template@7.25.7':
dependencies:
'@babel/code-frame': 7.25.7
@@ -16327,6 +16832,8 @@ snapshots:
'@remix-run/router@1.2.1': {}
+ '@remix-run/router@1.20.0': {}
+
'@remix-run/router@1.5.0': {}
'@remix-run/router@1.7.1': {}
@@ -17075,6 +17582,8 @@ snapshots:
'@tannin/postfix@1.1.0': {}
+ '@tannin/sprintf@1.2.0': {}
+
'@tanstack/query-core@4.35.3': {}
'@tanstack/query-core@5.0.5': {}
@@ -17751,6 +18260,12 @@ snapshots:
react: 18.3.1
uuid: 9.0.1
+ '@wordpress/api-fetch@7.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/i18n': 5.10.0
+ '@wordpress/url': 4.10.0
+
'@wordpress/api-fetch@7.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -18278,6 +18793,40 @@ snapshots:
- '@types/react'
- supports-color
+ '@wordpress/compose@6.35.0(react@18.3.1)':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ '@types/mousetrap': 1.6.15
+ '@wordpress/deprecated': 3.58.0
+ '@wordpress/dom': 3.58.0
+ '@wordpress/element': 5.35.0
+ '@wordpress/is-shallow-equal': 4.58.0
+ '@wordpress/keycodes': 3.58.0
+ '@wordpress/priority-queue': 2.58.0
+ '@wordpress/undo-manager': 0.18.0
+ change-case: 4.1.2
+ clipboard: 2.0.11
+ mousetrap: 1.6.5
+ react: 18.3.1
+ use-memo-one: 1.1.3(react@18.3.1)
+
+ '@wordpress/compose@7.10.0(react@18.3.1)':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@types/mousetrap': 1.6.15
+ '@wordpress/deprecated': 4.10.0
+ '@wordpress/dom': 4.10.0
+ '@wordpress/element': 6.10.0
+ '@wordpress/is-shallow-equal': 5.10.0
+ '@wordpress/keycodes': 4.10.0
+ '@wordpress/priority-queue': 3.10.0
+ '@wordpress/undo-manager': 1.10.0
+ change-case: 4.1.2
+ clipboard: 2.0.11
+ mousetrap: 1.6.5
+ react: 18.3.1
+ use-memo-one: 1.1.3(react@18.3.1)
+
'@wordpress/compose@7.9.0(react@18.2.0)':
dependencies:
'@babel/runtime': 7.24.7
@@ -18466,6 +19015,33 @@ snapshots:
- supports-color
- utf-8-validate
+ '@wordpress/data-controls@4.10.0(react@18.3.1)':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/api-fetch': 7.10.0
+ '@wordpress/data': 10.10.0(react@18.3.1)
+ '@wordpress/deprecated': 4.10.0
+ react: 18.3.1
+
+ '@wordpress/data@10.10.0(react@18.3.1)':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/compose': 7.10.0(react@18.3.1)
+ '@wordpress/deprecated': 4.10.0
+ '@wordpress/element': 6.10.0
+ '@wordpress/is-shallow-equal': 5.10.0
+ '@wordpress/priority-queue': 3.10.0
+ '@wordpress/private-apis': 1.10.0
+ '@wordpress/redux-routine': 5.10.0(redux@4.2.1)
+ deepmerge: 4.3.1
+ equivalent-key-map: 0.2.2
+ is-plain-object: 5.0.0
+ is-promise: 4.0.0
+ react: 18.3.1
+ redux: 4.2.1
+ rememo: 4.0.2
+ use-memo-one: 1.1.3(react@18.3.1)
+
'@wordpress/data@10.9.0(react@18.2.0)':
dependencies:
'@babel/runtime': 7.24.7
@@ -18560,6 +19136,16 @@ snapshots:
json2php: 0.0.7
webpack: 5.94.0(webpack-cli@4.9.1)
+ '@wordpress/deprecated@3.58.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ '@wordpress/hooks': 3.58.0
+
+ '@wordpress/deprecated@4.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/hooks': 4.10.0
+
'@wordpress/deprecated@4.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -18569,6 +19155,16 @@ snapshots:
dependencies:
'@babel/runtime': 7.24.7
+ '@wordpress/dom@3.58.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ '@wordpress/deprecated': 3.58.0
+
+ '@wordpress/dom@4.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/deprecated': 4.10.0
+
'@wordpress/dom@4.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -18839,6 +19435,28 @@ snapshots:
- supports-color
- utf-8-validate
+ '@wordpress/element@5.35.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ '@types/react': 18.3.3
+ '@types/react-dom': 18.3.0
+ '@wordpress/escape-html': 2.58.0
+ change-case: 4.1.2
+ is-plain-object: 5.0.0
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+
+ '@wordpress/element@6.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@types/react': 18.3.3
+ '@types/react-dom': 18.3.0
+ '@wordpress/escape-html': 3.10.0
+ change-case: 4.1.2
+ is-plain-object: 5.0.0
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+
'@wordpress/element@6.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -18850,6 +19468,14 @@ snapshots:
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
+ '@wordpress/escape-html@2.58.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+
+ '@wordpress/escape-html@3.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+
'@wordpress/escape-html@3.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -19006,6 +19632,14 @@ snapshots:
- '@types/react-dom'
- supports-color
+ '@wordpress/hooks@3.58.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+
+ '@wordpress/hooks@4.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+
'@wordpress/hooks@4.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -19014,6 +19648,24 @@ snapshots:
dependencies:
'@babel/runtime': 7.24.7
+ '@wordpress/i18n@4.58.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ '@wordpress/hooks': 3.58.0
+ gettext-parser: 1.4.0
+ memize: 2.1.0
+ sprintf-js: 1.1.2
+ tannin: 1.2.0
+
+ '@wordpress/i18n@5.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/hooks': 4.10.0
+ gettext-parser: 1.4.0
+ memize: 2.1.0
+ sprintf-js: 1.1.2
+ tannin: 1.2.0
+
'@wordpress/i18n@5.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -19086,6 +19738,14 @@ snapshots:
- '@types/react'
- supports-color
+ '@wordpress/is-shallow-equal@4.58.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+
+ '@wordpress/is-shallow-equal@5.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+
'@wordpress/is-shallow-equal@5.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -19104,6 +19764,16 @@ snapshots:
'@wordpress/keycodes': 4.9.0
react: 18.3.1
+ '@wordpress/keycodes@3.58.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ '@wordpress/i18n': 4.58.0
+
+ '@wordpress/keycodes@4.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/i18n': 5.10.0
+
'@wordpress/keycodes@4.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -19296,15 +19966,44 @@ snapshots:
clsx: 2.1.1
react: 18.3.1
+ '@wordpress/priority-queue@2.58.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ requestidlecallback: 0.3.0
+
+ '@wordpress/priority-queue@3.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ requestidlecallback: 0.3.0
+
'@wordpress/priority-queue@3.9.0':
dependencies:
'@babel/runtime': 7.24.7
requestidlecallback: 0.3.0
+ '@wordpress/private-apis@1.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+
'@wordpress/private-apis@1.9.0':
dependencies:
'@babel/runtime': 7.24.7
+ '@wordpress/react-i18n@4.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/element': 6.10.0
+ '@wordpress/i18n': 5.10.0
+ utility-types: 3.11.0
+
+ '@wordpress/redux-routine@5.10.0(redux@4.2.1)':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ is-plain-object: 5.0.0
+ is-promise: 4.0.0
+ redux: 4.2.1
+ rungen: 0.3.2
+
'@wordpress/redux-routine@5.9.0(redux@4.2.1)':
dependencies:
'@babel/runtime': 7.24.7
@@ -19479,11 +20178,26 @@ snapshots:
dependencies:
'@babel/runtime': 7.24.7
+ '@wordpress/undo-manager@0.18.0':
+ dependencies:
+ '@babel/runtime': 7.24.7
+ '@wordpress/is-shallow-equal': 4.58.0
+
+ '@wordpress/undo-manager@1.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ '@wordpress/is-shallow-equal': 5.10.0
+
'@wordpress/undo-manager@1.9.0':
dependencies:
'@babel/runtime': 7.24.7
'@wordpress/is-shallow-equal': 5.9.0
+ '@wordpress/url@4.10.0':
+ dependencies:
+ '@babel/runtime': 7.25.7
+ remove-accents: 0.5.0
+
'@wordpress/url@4.9.0':
dependencies:
'@babel/runtime': 7.24.7
@@ -20160,6 +20874,8 @@ snapshots:
caniuse-lite@1.0.30001667: {}
+ canvas-confetti@1.9.3: {}
+
capital-case@1.0.4:
dependencies:
no-case: 3.0.4
@@ -20503,6 +21219,8 @@ snapshots:
cookie-signature@1.0.6: {}
+ cookie@0.4.2: {}
+
cookie@0.7.0: {}
cookie@0.7.1: {}
@@ -21576,6 +22294,8 @@ snapshots:
signal-exit: 3.0.7
strip-final-newline: 3.0.0
+ exenv@1.2.2: {}
+
exit@0.1.2: {}
expand-tilde@1.2.2:
@@ -22078,6 +22798,11 @@ snapshots:
prop-types: 15.8.1
react: 18.3.1
+ gridicons@3.4.2(react@18.3.1):
+ dependencies:
+ prop-types: 15.8.1
+ react: 18.3.1
+
has-ansi@2.0.0:
dependencies:
ansi-regex: 2.1.1
@@ -22100,6 +22825,11 @@ snapshots:
dependencies:
has-symbols: 1.0.3
+ hash.js@1.1.7:
+ dependencies:
+ inherits: 2.0.4
+ minimalistic-assert: 1.0.1
+
hasha@5.2.2:
dependencies:
is-stream: 2.0.1
@@ -22253,6 +22983,24 @@ snapshots:
husky@8.0.3: {}
+ i18n-calypso@7.0.0(@types/react@18.3.3)(react@18.3.1):
+ dependencies:
+ '@automattic/interpolate-components': 1.2.1(@types/react@18.3.3)(react@18.3.1)
+ '@babel/runtime': 7.24.7
+ '@tannin/sprintf': 1.2.0
+ '@wordpress/compose': 6.35.0(react@18.3.1)
+ debug: 4.3.4
+ events: 3.3.0
+ hash.js: 1.1.7
+ lodash: 4.17.21
+ lru: 3.1.0
+ react: 18.3.1
+ tannin: 1.2.0
+ use-subscription: 1.6.0(react@18.3.1)
+ transitivePeerDependencies:
+ - '@types/react'
+ - supports-color
+
iconv-lite@0.4.24:
dependencies:
safer-buffer: 2.1.2
@@ -23381,6 +24129,10 @@ snapshots:
lru-cache@7.18.3: {}
+ lru@3.1.0:
+ dependencies:
+ inherits: 2.0.4
+
lz-string@1.5.0: {}
magic-string@0.27.0:
@@ -23799,6 +24551,8 @@ snapshots:
tapable: 2.2.1
webpack: 5.94.0(webpack-cli@4.9.1)
+ minimalistic-assert@1.0.1: {}
+
minimatch@3.1.2:
dependencies:
brace-expansion: 1.1.11
@@ -24769,6 +25523,17 @@ snapshots:
react-is@18.3.1: {}
+ react-lifecycles-compat@3.0.4: {}
+
+ react-modal@3.16.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+ dependencies:
+ exenv: 1.2.2
+ prop-types: 15.8.1
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ react-lifecycles-compat: 3.0.4
+ warning: 4.0.3
+
react-page-visibility@7.0.0(react@18.3.1):
dependencies:
prop-types: 15.8.1
@@ -24867,6 +25632,13 @@ snapshots:
react-dom: 18.3.1(react@18.3.1)
react-router: 6.21.0(react@18.3.1)
+ react-router-dom@6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+ dependencies:
+ '@remix-run/router': 1.20.0
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ react-router: 6.27.0(react@18.3.1)
+
react-router-dom@6.6.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
dependencies:
'@remix-run/router': 1.2.1
@@ -24907,6 +25679,11 @@ snapshots:
'@remix-run/router': 1.14.0
react: 18.3.1
+ react-router@6.27.0(react@18.3.1):
+ dependencies:
+ '@remix-run/router': 1.20.0
+ react: 18.3.1
+
react-router@6.6.2(react@18.3.1):
dependencies:
'@remix-run/router': 1.2.1
@@ -25574,6 +26351,8 @@ snapshots:
dependencies:
internal-slot: 1.0.7
+ store@2.0.12: {}
+
storybook-addon-mock@5.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
dependencies:
'@storybook/blocks': 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)
@@ -26294,6 +27073,10 @@ snapshots:
dependencies:
react: 18.3.1
+ use-debounce@3.4.3(react@18.3.1):
+ dependencies:
+ react: 18.3.1
+
use-memo-one@1.1.3(react@18.2.0):
dependencies:
react: 18.2.0
@@ -26316,6 +27099,10 @@ snapshots:
react: 18.3.1
tslib: 2.5.0
+ use-subscription@1.6.0(react@18.3.1):
+ dependencies:
+ react: 18.3.1
+
use-sync-external-store@1.2.2(react@18.3.1):
dependencies:
react: 18.3.1
@@ -26332,6 +27119,8 @@ snapshots:
utila@0.4.0: {}
+ utility-types@3.11.0: {}
+
utils-merge@1.0.1: {}
uuid@8.3.2: {}
@@ -26344,6 +27133,8 @@ snapshots:
'@types/istanbul-lib-coverage': 2.0.6
convert-source-map: 2.0.0
+ validator@13.12.0: {}
+
value-equal@1.0.1: {}
vary@1.1.2: {}
diff --git a/projects/packages/jetpack-mu-wpcom/src/common/components/error-boundary/index.tsx b/projects/packages/jetpack-mu-wpcom/src/common/components/error-boundary/index.tsx
new file mode 100644
index 0000000000000..1fb814ef2d39c
--- /dev/null
+++ b/projects/packages/jetpack-mu-wpcom/src/common/components/error-boundary/index.tsx
@@ -0,0 +1,36 @@
+import React from 'react';
+
+interface Props {
+ fallback: React.ReactNode;
+ children: React.ReactNode;
+}
+
+interface State {
+ hasError: boolean;
+ error: Error | null;
+}
+
+class ErrorBoundary extends React.Component< Props, State > {
+ constructor( props: Props ) {
+ super( props );
+ this.state = { hasError: false, error: null };
+ }
+
+ static getDerivedStateFromError( error: Error ): State {
+ return { hasError: true, error };
+ }
+
+ componentDidCatch( error: Error, errorInfo: React.ErrorInfo ): void {
+ // eslint-disable-next-line no-console
+ console.error( error, errorInfo );
+ }
+
+ render(): React.ReactNode {
+ if ( this.state.hasError ) {
+ return this.props.fallback || null;
+ }
+ return this.props.children;
+ }
+}
+
+export default ErrorBoundary;
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
index 1ffa9c2b60021..6213573faad15 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
@@ -1,8 +1,15 @@
import '../../common/public-path';
import React from 'react';
import ReactDOM from 'react-dom/client';
+import ErrorBoundary from '../../common/components/error-boundary';
+import WpcomLaunchpadWidget from './wpcom-launchpad-widget';
import WpcomSiteManagementWidget from './wpcom-site-management-widget';
+// Initialize configData
+if ( typeof window !== 'undefined' && ! window.configData ) {
+ window.configData = {};
+}
+
const data = typeof window === 'object' ? window.JETPACK_MU_WPCOM_DASHBOARD_WIDGETS : {};
const widgets = [
@@ -10,12 +17,20 @@ const widgets = [
id: 'wpcom_site_management_widget_main',
Widget: WpcomSiteManagementWidget,
},
+ {
+ id: 'wpcom_launchpad_widget_main',
+ Widget: WpcomLaunchpadWidget,
+ },
];
widgets.forEach( ( { id, Widget } ) => {
const container = document.getElementById( id );
if ( container ) {
const root = ReactDOM.createRoot( container );
- root.render( );
+ root.render(
+ Something went wrong
}>
+
+
+ );
}
} );
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 c627f966f295a..08b6b84db2c57 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
@@ -21,6 +21,11 @@ function load_wpcom_dashboard_widgets() {
'name' => __( 'Site Management Panel', 'jetpack-mu-wpcom' ),
'priority' => 'high',
),
+ array(
+ 'id' => 'wpcom_launchpad_widget',
+ 'name' => __( 'Launchpad Panel', 'jetpack-mu-wpcom' ),
+ 'priority' => 'high',
+ ),
);
foreach ( $wpcom_dashboard_widgets as $wpcom_dashboard_widget ) {
@@ -56,7 +61,10 @@ function enqueue_wpcom_dashboard_widgets() {
wp_add_inline_script(
$handle,
- "var JETPACK_MU_WPCOM_DASHBOARD_WIDGETS = $data;",
+ "
+ var JETPACK_MU_WPCOM_DASHBOARD_WIDGETS = $data;
+ var configData = {};
+ ",
'before'
);
}
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.js
new file mode 100644
index 0000000000000..e2a28596f99ee
--- /dev/null
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.js
@@ -0,0 +1,16 @@
+import { Launchpad } from '@automattic/launchpad';
+import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
+
+const WpcomLaunchpadWidget = ( { siteDomain } ) => {
+ return (
+
+
+
+ );
+};
+
+export default WpcomLaunchpadWidget;
From de81498c2eb9e3f3a2768586ade7b2bcda2d6624 Mon Sep 17 00:00:00 2001
From: arthur
Date: Thu, 17 Oct 2024 18:57:55 +0800
Subject: [PATCH 05/16] changelog
---
.../packages/jetpack-mu-wpcom/changelog/exp-launchpad-widget | 4 ++++
.../plugins/mu-wpcom-plugin/changelog/exp-launchpad-widget | 4 ++++
projects/plugins/wpcomsh/changelog/exp-launchpad-widget | 4 ++++
3 files changed, 12 insertions(+)
create mode 100644 projects/packages/jetpack-mu-wpcom/changelog/exp-launchpad-widget
create mode 100644 projects/plugins/mu-wpcom-plugin/changelog/exp-launchpad-widget
create mode 100644 projects/plugins/wpcomsh/changelog/exp-launchpad-widget
diff --git a/projects/packages/jetpack-mu-wpcom/changelog/exp-launchpad-widget b/projects/packages/jetpack-mu-wpcom/changelog/exp-launchpad-widget
new file mode 100644
index 0000000000000..75d3816982559
--- /dev/null
+++ b/projects/packages/jetpack-mu-wpcom/changelog/exp-launchpad-widget
@@ -0,0 +1,4 @@
+Significance: minor
+Type: added
+
+Launchpad Widget: Introduce the launchpad widget to the WP Admin Dashboard
diff --git a/projects/plugins/mu-wpcom-plugin/changelog/exp-launchpad-widget b/projects/plugins/mu-wpcom-plugin/changelog/exp-launchpad-widget
new file mode 100644
index 0000000000000..75d3816982559
--- /dev/null
+++ b/projects/plugins/mu-wpcom-plugin/changelog/exp-launchpad-widget
@@ -0,0 +1,4 @@
+Significance: minor
+Type: added
+
+Launchpad Widget: Introduce the launchpad widget to the WP Admin Dashboard
diff --git a/projects/plugins/wpcomsh/changelog/exp-launchpad-widget b/projects/plugins/wpcomsh/changelog/exp-launchpad-widget
new file mode 100644
index 0000000000000..75d3816982559
--- /dev/null
+++ b/projects/plugins/wpcomsh/changelog/exp-launchpad-widget
@@ -0,0 +1,4 @@
+Significance: minor
+Type: added
+
+Launchpad Widget: Introduce the launchpad widget to the WP Admin Dashboard
From 1cdde02765b91dc1b73e11e411c71dc066c78e16 Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 15:47:56 +0800
Subject: [PATCH 06/16] Improve ErrorBoundary
---
.../common/components/error-boundary/index.tsx | 17 +++++++++++++----
.../wpcom-dashboard-widgets.js | 2 +-
2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/projects/packages/jetpack-mu-wpcom/src/common/components/error-boundary/index.tsx b/projects/packages/jetpack-mu-wpcom/src/common/components/error-boundary/index.tsx
index 1fb814ef2d39c..4225c31c1a157 100644
--- a/projects/packages/jetpack-mu-wpcom/src/common/components/error-boundary/index.tsx
+++ b/projects/packages/jetpack-mu-wpcom/src/common/components/error-boundary/index.tsx
@@ -1,7 +1,8 @@
+import { __ } from '@wordpress/i18n';
import React from 'react';
interface Props {
- fallback: React.ReactNode;
+ fallback?: React.ReactNode;
children: React.ReactNode;
}
@@ -26,10 +27,18 @@ class ErrorBoundary extends React.Component< Props, State > {
}
render(): React.ReactNode {
- if ( this.state.hasError ) {
- return this.props.fallback || null;
+ const { children, fallback } = this.props;
+ const { hasError } = this.state;
+
+ if ( hasError ) {
+ return fallback !== undefined ? (
+ fallback
+ ) : (
+ { __( 'Something went wrong', 'jetpack-mu-wpcom' ) }
+ );
}
- return this.props.children;
+
+ return children;
}
}
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
index 6213573faad15..bb39ca608a6ed 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
@@ -28,7 +28,7 @@ widgets.forEach( ( { id, Widget } ) => {
if ( container ) {
const root = ReactDOM.createRoot( container );
root.render(
- Something went wrong }>
+
);
From 243f84b9b9ed33e18e4ed21209fc9f02b38e94de Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 16:12:33 +0800
Subject: [PATCH 07/16] Improve types
---
.../features/wpcom-dashboard-widgets/types.ts | 18 +++++++++
.../wpcom-dashboard-widgets.js | 36 ------------------
.../wpcom-dashboard-widgets.php | 19 ++++++++--
.../wpcom-dashboard-widgets.tsx | 38 +++++++++++++++++++
.../{index.js => index.tsx} | 15 +++++---
.../{index.js => index.tsx} | 30 +++++++++------
6 files changed, 98 insertions(+), 58 deletions(-)
create mode 100644 projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/types.ts
delete mode 100644 projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
create mode 100644 projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
rename projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/{index.js => index.tsx} (51%)
rename projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/{index.js => index.tsx} (74%)
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/types.ts b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/types.ts
new file mode 100644
index 0000000000000..e29f7c81edf72
--- /dev/null
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/types.ts
@@ -0,0 +1,18 @@
+export interface Site {
+ name: string;
+ domain: string;
+ iconUrl: string;
+}
+
+export interface DashboardWidgetsData {
+ site: Site;
+}
+
+export interface ConfigData {}
+
+declare global {
+ interface Window {
+ wpcomDashboardWidgetsData: DashboardWidgetsData;
+ configData: ConfigData;
+ }
+}
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
deleted file mode 100644
index bb39ca608a6ed..0000000000000
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import '../../common/public-path';
-import React from 'react';
-import ReactDOM from 'react-dom/client';
-import ErrorBoundary from '../../common/components/error-boundary';
-import WpcomLaunchpadWidget from './wpcom-launchpad-widget';
-import WpcomSiteManagementWidget from './wpcom-site-management-widget';
-
-// Initialize configData
-if ( typeof window !== 'undefined' && ! window.configData ) {
- window.configData = {};
-}
-
-const data = typeof window === 'object' ? window.JETPACK_MU_WPCOM_DASHBOARD_WIDGETS : {};
-
-const widgets = [
- {
- id: 'wpcom_site_management_widget_main',
- Widget: WpcomSiteManagementWidget,
- },
- {
- id: 'wpcom_launchpad_widget_main',
- Widget: WpcomLaunchpadWidget,
- },
-];
-
-widgets.forEach( ( { id, Widget } ) => {
- const container = document.getElementById( id );
- if ( container ) {
- const root = ReactDOM.createRoot( container );
- root.render(
-
-
-
- );
- }
-} );
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 08b6b84db2c57..362585d1dfcd3 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
@@ -45,6 +45,19 @@ function () {},
}
add_action( 'wp_dashboard_setup', 'load_wpcom_dashboard_widgets' );
+/**
+ * Get the site data
+ */
+function wpcom_dashboard_widgets_get_site_data() {
+ $data = array(
+ 'name' => get_bloginfo( 'name' ),
+ 'domain' => wp_parse_url( home_url(), PHP_URL_HOST ),
+ 'iconUrl' => get_site_icon_url( 38 ),
+ );
+
+ return $data;
+}
+
/**
* Enqueue the assets of the wpcom dashboard widgets.
*/
@@ -53,16 +66,14 @@ function enqueue_wpcom_dashboard_widgets() {
$data = wp_json_encode(
array(
- 'siteName' => get_bloginfo( 'name' ),
- 'siteDomain' => wp_parse_url( home_url(), PHP_URL_HOST ),
- 'siteIconUrl' => get_site_icon_url( 38 ),
+ 'site' => wpcom_dashboard_widgets_get_site_data(),
)
);
wp_add_inline_script(
$handle,
"
- var JETPACK_MU_WPCOM_DASHBOARD_WIDGETS = $data;
+ var wpcomDashboardWidgetsData = $data;
var configData = {};
",
'before'
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
new file mode 100644
index 0000000000000..f8ba41a93eed5
--- /dev/null
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
@@ -0,0 +1,38 @@
+import '../../common/public-path';
+import React from 'react';
+import ReactDOM from 'react-dom/client';
+import ErrorBoundary from '../../common/components/error-boundary';
+import WpcomLaunchpadWidget from './wpcom-launchpad-widget';
+import WpcomSiteManagementWidget from './wpcom-site-management-widget';
+
+const renderWidgets = () => {
+ // Initialize configData.
+ window.configData = window.configData || {};
+
+ const widgets = [
+ {
+ id: 'wpcom_site_management_widget_main',
+ Widget: WpcomSiteManagementWidget,
+ },
+ {
+ id: 'wpcom_launchpad_widget_main',
+ Widget: WpcomLaunchpadWidget,
+ },
+ ];
+
+ widgets.forEach( ( { id, Widget } ) => {
+ const container = document.getElementById( id );
+ if ( container ) {
+ const root = ReactDOM.createRoot( container );
+ root.render(
+
+
+
+ );
+ }
+ } );
+};
+
+if ( typeof window !== 'undefined' ) {
+ renderWidgets();
+}
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
similarity index 51%
rename from projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.js
rename to projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
index e2a28596f99ee..fcd80c5b90705 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.js
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
@@ -1,14 +1,17 @@
import { Launchpad } from '@automattic/launchpad';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
+import type { Site } from '../types';
+
+interface Props {
+ site: Site;
+}
+
+const WpcomLaunchpadWidget = ( { site }: Props ) => {
+ const { domain } = site;
-const WpcomLaunchpadWidget = ( { siteDomain } ) => {
return (
-
+
);
};
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.tsx
similarity index 74%
rename from projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.js
rename to projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.tsx
index e7a8363f85897..7eadad2f2ef8c 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.js
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.tsx
@@ -1,28 +1,34 @@
import { __ } from '@wordpress/i18n';
import React from 'react';
import './style.scss';
+import type { Site } from '../types';
-const WpcomSiteManagementWidget = ( { siteName, siteDomain, siteIconUrl } ) => {
+interface Props {
+ site: Site;
+}
+
+const WpcomSiteManagementWidget = ( { site }: Props ) => {
+ const { name, domain, iconUrl } = site;
const devToolItems = [
{
name: __( 'Deployments', 'jetpack-mu-wpcom' ),
- href: `/github-deployments/${ siteDomain }`,
+ href: `/github-deployments/${ domain }`,
},
{
name: __( 'Monitoring', 'jetpack-mu-wpcom' ),
- href: `/site-monitoring/${ siteDomain }`,
+ href: `/site-monitoring/${ domain }`,
},
{
name: __( 'Logs', 'jetpack-mu-wpcom' ),
- href: `/site-logs/${ siteDomain }/php`,
+ href: `/site-logs/${ domain }/php`,
},
{
name: __( 'Staging Site', 'jetpack-mu-wpcom' ),
- href: `/staging-site/${ siteDomain }`,
+ href: `/staging-site/${ domain }`,
},
{
name: __( 'Server Settings', 'jetpack-mu-wpcom' ),
- href: `/hosting-config/${ siteDomain }`,
+ href: `/hosting-config/${ domain }`,
},
];
@@ -32,19 +38,19 @@ const WpcomSiteManagementWidget = ( { siteName, siteDomain, siteIconUrl } ) => {
{
/* webclip.png is the default on WoA sites. Anything other than that means we have a custom site icon. */
- siteIconUrl && siteIconUrl !== 'https://s0.wp.com/i/webclip.png' ? (
-

+ iconUrl && iconUrl !== 'https://s0.wp.com/i/webclip.png' ? (
+

) : (
-
{ siteName[ 0 ] }
+
{ name[ 0 ] }
)
}
-
{ siteName }
-
{ siteDomain }
+
{ name }
+
{ domain }
From 5f761e93d162899c8c36cb06bfd0632162e56614 Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 16:16:40 +0800
Subject: [PATCH 08/16] Pass siteIntent to client
---
.../src/features/wpcom-dashboard-widgets/types.ts | 1 +
.../wpcom-dashboard-widgets/wpcom-dashboard-widgets.php | 7 ++++---
.../wpcom-launchpad-widget/index.tsx | 8 ++++++--
3 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/types.ts b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/types.ts
index e29f7c81edf72..b20955b146e4c 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/types.ts
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/types.ts
@@ -2,6 +2,7 @@ export interface Site {
name: string;
domain: string;
iconUrl: string;
+ siteIntent: string;
}
export interface DashboardWidgetsData {
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 362585d1dfcd3..cae603268c083 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
@@ -50,9 +50,10 @@ function () {},
*/
function wpcom_dashboard_widgets_get_site_data() {
$data = array(
- 'name' => get_bloginfo( 'name' ),
- 'domain' => wp_parse_url( home_url(), PHP_URL_HOST ),
- 'iconUrl' => get_site_icon_url( 38 ),
+ 'name' => get_bloginfo( 'name' ),
+ 'domain' => wp_parse_url( home_url(), PHP_URL_HOST ),
+ 'iconUrl' => get_site_icon_url( 38 ),
+ 'siteIntent' => get_option( 'site_intent' ),
);
return $data;
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
index fcd80c5b90705..cb4ca49258849 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
@@ -7,11 +7,15 @@ interface Props {
}
const WpcomLaunchpadWidget = ( { site }: Props ) => {
- const { domain } = site;
+ const { domain, siteIntent } = site;
return (
-
+
);
};
From f69740473ea70bf9354fad565efcdcf9ca3468e1 Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 16:30:47 +0800
Subject: [PATCH 09/16] Hide launchpad widget by default
---
.../wpcom-dashboard-widgets/wpcom-dashboard-widgets.php | 6 ++++++
1 file changed, 6 insertions(+)
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 cae603268c083..dda4937bd5359 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
@@ -20,15 +20,21 @@ function load_wpcom_dashboard_widgets() {
'id' => 'wpcom_site_management_widget',
'name' => __( 'Site Management Panel', 'jetpack-mu-wpcom' ),
'priority' => 'high',
+ 'enabled' => true,
),
array(
'id' => 'wpcom_launchpad_widget',
'name' => __( 'Launchpad Panel', 'jetpack-mu-wpcom' ),
'priority' => 'high',
+ 'enabled' => ! empty( $_GET['wpcom_launchpad_widget'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
),
);
foreach ( $wpcom_dashboard_widgets as $wpcom_dashboard_widget ) {
+ if ( ! $wpcom_dashboard_widget['enabled'] ) {
+ continue;
+ }
+
wp_add_dashboard_widget(
$wpcom_dashboard_widget['id'],
$wpcom_dashboard_widget['name'],
From d361c99d3729d14a97ae7253c52cc92eaf6bf7d7 Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 17:27:56 +0800
Subject: [PATCH 10/16] Hide configure
---
.../wpcom-launchpad-widget/index.tsx | 1 +
.../wpcom-launchpad-widget/style.scss | 7 +++++++
2 files changed, 8 insertions(+)
create mode 100644 projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
index cb4ca49258849..174f3573fcef2 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
@@ -1,6 +1,7 @@
import { Launchpad } from '@automattic/launchpad';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import type { Site } from '../types';
+import './style.scss';
interface Props {
site: Site;
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
new file mode 100644
index 0000000000000..d5c33d671c870
--- /dev/null
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
@@ -0,0 +1,7 @@
+#wpcom_launchpad_widget {
+ color: #1e1e1e;
+
+ .postbox-title-action {
+ display: none;
+ }
+}
From 9b6c6080ce0d4c782cb983668ad8e968964dea98 Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 17:35:35 +0800
Subject: [PATCH 11/16] Hide Launchpad widget if the site is launched
---
.../wpcom-dashboard-widgets/wpcom-dashboard-widgets.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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 dda4937bd5359..8527bbb056acd 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
@@ -26,7 +26,7 @@ function load_wpcom_dashboard_widgets() {
'id' => 'wpcom_launchpad_widget',
'name' => __( 'Launchpad Panel', 'jetpack-mu-wpcom' ),
'priority' => 'high',
- 'enabled' => ! empty( $_GET['wpcom_launchpad_widget'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
+ 'enabled' => get_option( 'launch-status' ) !== 'launched' && ! empty( $_GET['wpcom_launchpad_widget'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
),
);
From 0160774a9c132a97d2090dff6344e5c596d556f5 Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 18:10:15 +0800
Subject: [PATCH 12/16] Add header to the launchpad widget
---
pnpm-lock.yaml | 8 ++++-
.../packages/jetpack-mu-wpcom/package.json | 2 ++
.../wpcom-dashboard-widgets.tsx | 7 +++-
.../wpcom-launchpad-widget/index.tsx | 35 ++++++++++++++++---
.../wpcom-launchpad-widget/style.scss | 19 ++++++++++
5 files changed, 65 insertions(+), 6 deletions(-)
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 0768a50c6727e..3b7a385cb119a 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -2205,6 +2205,12 @@ importers:
'@automattic/color-studio':
specifier: 2.6.0
version: 2.6.0
+ '@automattic/components':
+ specifier: 2.2.0-rc.4
+ version: 2.2.0-rc.4(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/data-stores':
+ specifier: 3.1.0-rc.6
+ version: 3.1.0-rc.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@automattic/i18n-utils':
specifier: 1.2.3
version: 1.2.3
@@ -14617,7 +14623,7 @@ snapshots:
'@wordpress/api-fetch': 7.9.0
'@wordpress/data': 10.9.0(react@18.3.1)
'@wordpress/data-controls': 4.10.0(react@18.3.1)
- '@wordpress/deprecated': 4.9.0
+ '@wordpress/deprecated': 4.10.0
'@wordpress/element': 6.9.0
'@wordpress/i18n': 5.9.0
'@wordpress/primitives': 4.9.0(react@18.3.1)
diff --git a/projects/packages/jetpack-mu-wpcom/package.json b/projects/packages/jetpack-mu-wpcom/package.json
index f7de548ff543e..31358077762cf 100644
--- a/projects/packages/jetpack-mu-wpcom/package.json
+++ b/projects/packages/jetpack-mu-wpcom/package.json
@@ -50,6 +50,8 @@
"dependencies": {
"@automattic/calypso-color-schemes": "3.1.3",
"@automattic/color-studio": "2.6.0",
+ "@automattic/components": "2.2.0-rc.4",
+ "@automattic/data-stores": "3.1.0-rc.6",
"@automattic/i18n-utils": "1.2.3",
"@automattic/jetpack-base-styles": "workspace:*",
"@automattic/jetpack-shared-extension-utils": "workspace:*",
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
index f8ba41a93eed5..9324e499ea53b 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
@@ -1,4 +1,5 @@
import '../../common/public-path';
+import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import React from 'react';
import ReactDOM from 'react-dom/client';
import ErrorBoundary from '../../common/components/error-boundary';
@@ -20,13 +21,17 @@ const renderWidgets = () => {
},
];
+ const queryClient = new QueryClient();
+
widgets.forEach( ( { id, Widget } ) => {
const container = document.getElementById( id );
if ( container ) {
const root = ReactDOM.createRoot( container );
root.render(
-
+
+
+
);
}
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
index 174f3573fcef2..7671188b12f5a 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/index.tsx
@@ -1,5 +1,7 @@
+import { CircularProgressBar } from '@automattic/components';
+import { useSortedLaunchpadTasks } from '@automattic/data-stores';
import { Launchpad } from '@automattic/launchpad';
-import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
+import { __ } from '@wordpress/i18n';
import type { Site } from '../types';
import './style.scss';
@@ -7,17 +9,42 @@ interface Props {
site: Site;
}
+const LAUNCHPAD_CONTEXT = 'dashboard-widget';
+
const WpcomLaunchpadWidget = ( { site }: Props ) => {
const { domain, siteIntent } = site;
+ const {
+ data: { checklist, title },
+ } = useSortedLaunchpadTasks( domain, siteIntent, LAUNCHPAD_CONTEXT );
+
+ const numberOfSteps = checklist?.length || 0;
+ const completedSteps = ( checklist?.filter( task => task.completed ) || [] ).length;
+ const hasChecklist = checklist !== undefined && checklist !== null;
+ const launchpadTitle = hasChecklist
+ ? title ?? __( 'Next steps for your site', 'jetpack-mu-wpcom' )
+ : ' ';
return (
-
+ <>
+
+
{ launchpadTitle }
+ { numberOfSteps > completedSteps && (
+
+
+
+ ) }
+
-
+ >
);
};
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
index d5c33d671c870..9913df371dfd7 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
@@ -5,3 +5,22 @@
display: none;
}
}
+
+#wpcom_launchpad_widget_main {
+ .wpcom-launchpad-widget__header {
+ display: flex;
+ align-items: center;
+
+ .wpcom-launchpad-widget__title {
+ flex: 1;
+ font-size: 1.125rem;
+ font-weight: 500;
+ }
+
+ .wpcom-launchpad-widget__progress-bar-container {
+ display: flex;
+ flex-direction: row;
+ gap: 20px;
+ }
+ }
+}
From 4b6a298e8fb86a22eb93131b738f75f5786f92c7 Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 18:13:45 +0800
Subject: [PATCH 13/16] Fix naming
---
.../wpcom-dashboard-widgets.php | 6 ++---
.../wpcom-dashboard-widgets.tsx | 4 ++--
.../wpcom-launchpad-widget/style.scss | 4 ++--
.../wpcom-site-management-widget/index.tsx | 20 ++++++++--------
.../wpcom-site-management-widget/style.scss | 24 +++++++++----------
5 files changed, 29 insertions(+), 29 deletions(-)
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 8527bbb056acd..5a9bcbd0993a3 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
@@ -17,13 +17,13 @@ function load_wpcom_dashboard_widgets() {
$wpcom_dashboard_widgets = array(
array(
- 'id' => 'wpcom_site_management_widget',
+ 'id' => 'wpcom-site-management-widget',
'name' => __( 'Site Management Panel', 'jetpack-mu-wpcom' ),
'priority' => 'high',
'enabled' => true,
),
array(
- 'id' => 'wpcom_launchpad_widget',
+ 'id' => 'wpcom-launchpad-widget',
'name' => __( 'Launchpad Panel', 'jetpack-mu-wpcom' ),
'priority' => 'high',
'enabled' => get_option( 'launch-status' ) !== 'launched' && ! empty( $_GET['wpcom_launchpad_widget'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
@@ -95,7 +95,7 @@ function enqueue_wpcom_dashboard_widgets() {
*/
function render_wpcom_dashboard_widget( $post, $callback_args ) {
$args = $callback_args['args'];
- $widget_id = $args['id'] . '_main';
+ $widget_id = implode( '-', array( $args['id'], 'main' ) );
$widget_class = $args['class'] ?? $args['id'];
$widget_name = $args['name'];
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
index 9324e499ea53b..abb29c93e1820 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-dashboard-widgets.tsx
@@ -12,11 +12,11 @@ const renderWidgets = () => {
const widgets = [
{
- id: 'wpcom_site_management_widget_main',
+ id: 'wpcom-site-management-widget-main',
Widget: WpcomSiteManagementWidget,
},
{
- id: 'wpcom_launchpad_widget_main',
+ id: 'wpcom-launchpad-widget-main',
Widget: WpcomLaunchpadWidget,
},
];
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
index 9913df371dfd7..80a36cc894ba6 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-launchpad-widget/style.scss
@@ -1,4 +1,4 @@
-#wpcom_launchpad_widget {
+#wpcom-launchpad-widget {
color: #1e1e1e;
.postbox-title-action {
@@ -6,7 +6,7 @@
}
}
-#wpcom_launchpad_widget_main {
+#wpcom-launchpad-widget-main {
.wpcom-launchpad-widget__header {
display: flex;
align-items: center;
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.tsx b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.tsx
index 7eadad2f2ef8c..42c8486edcc22 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.tsx
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/index.tsx
@@ -34,8 +34,8 @@ const WpcomSiteManagementWidget = ( { site }: Props ) => {
return (
<>
-
-
+
+
{
/* webclip.png is the default on WoA sites. Anything other than that means we have a custom site icon. */
iconUrl && iconUrl !== 'https://s0.wp.com/i/webclip.png' ? (
@@ -45,28 +45,28 @@ const WpcomSiteManagementWidget = ( { site }: Props ) => {
)
}
-
-
{ name }
-
{ domain }
+
-
-
+
{ __(
'Get a quick overview of your plans, storage, and domains, or easily access your development tools using the links provided below:',
'jetpack-mu-wpcom'
) }
-
-
+
+
{ __( 'DEV TOOLS:', 'jetpack-mu-wpcom' ) }
-
+
{ devToolItems.map( item => (
-
diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/style.scss b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/style.scss
index 2bd4bd4577d90..0f76b7787717f 100644
--- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/style.scss
+++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/wpcom-site-management-widget/style.scss
@@ -1,4 +1,4 @@
-#wpcom_site_management_widget {
+#wpcom-site-management-widget {
color: #1e1e1e;
.postbox-title-action {
@@ -6,14 +6,14 @@
}
}
-#wpcom_site_management_widget_main {
- .wpcom_site_management_widget__header {
+#wpcom-site-management-widget-main {
+ .wpcom-site-management-widget__header {
display: flex;
align-items: center;
gap: 12px;
}
- .wpcom_site_management_widget__site-favicon {
+ .wpcom-site-management-widget__site-favicon {
display: flex;
align-items: center;
justify-content: center;
@@ -29,17 +29,17 @@
cursor: default;
}
- .wpcom_site_management_widget__site-favicon img {
+ .wpcom-site-management-widget__site-favicon img {
width: 100%;
height: auto;
}
- .wpcom_site_management_widget__site-info {
+ .wpcom-site-management-widget__site-info {
flex-grow: 1;
overflow: hidden;
}
- .wpcom_site_management_widget__site-name {
+ .wpcom-site-management-widget__site-name {
font-size: 14px;
font-weight: 500;
line-height: 20px;
@@ -48,7 +48,7 @@
white-space: nowrap;
}
- .wpcom_site_management_widget__site-url {
+ .wpcom-site-management-widget__site-url {
color: #3a434a;
font-size: 12px;
font-weight: 400;
@@ -58,18 +58,18 @@
white-space: nowrap;
}
- .wpcom_site_management_widget__site-actions {
+ .wpcom-site-management-widget__site-actions {
flex-shrink: 0;
}
- .wpcom_site_management_widget__content p {
+ .wpcom-site-management-widget__content p {
margin: 12px 0;
font-size: 13px;
font-weight: 400;
line-height: 18px;
}
- .wpcom_site_management_widget__dev-tools-title {
+ .wpcom-site-management-widget__dev-tools-title {
margin-bottom: 12px;
font-size: 11px;
font-weight: 600;
@@ -77,7 +77,7 @@
text-transform: uppercase;
}
- .wpcom_site_management_widget__dev-tools-content {
+ .wpcom-site-management-widget__dev-tools-content {
ul {
display: grid;
grid-template-columns: 1fr 1fr;
From cc8d05cc5720986a12acae5d9926686b09550d14 Mon Sep 17 00:00:00 2001
From: arthur
Date: Fri, 18 Oct 2024 18:21:32 +0800
Subject: [PATCH 14/16] Rename the panel
---
.../wpcom-dashboard-widgets/wpcom-dashboard-widgets.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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 5a9bcbd0993a3..dbe53de6b5390 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
@@ -24,7 +24,7 @@ function load_wpcom_dashboard_widgets() {
),
array(
'id' => 'wpcom-launchpad-widget',
- 'name' => __( 'Launchpad Panel', 'jetpack-mu-wpcom' ),
+ 'name' => __( 'Site Setup Panel', 'jetpack-mu-wpcom' ),
'priority' => 'high',
'enabled' => get_option( 'launch-status' ) !== 'launched' && ! empty( $_GET['wpcom_launchpad_widget'] ), // phpcs:ignore WordPress.Security.NonceVerification.Recommended
),
From 8007ab8a255737025b2a216878963461ec779bab Mon Sep 17 00:00:00 2001
From: arthur
Date: Mon, 21 Oct 2024 14:31:28 +0800
Subject: [PATCH 15/16] Update @automattic/components, @automattic/data-stores,
@automattic/launchpad
---
projects/packages/jetpack-mu-wpcom/package.json | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/projects/packages/jetpack-mu-wpcom/package.json b/projects/packages/jetpack-mu-wpcom/package.json
index 31358077762cf..b8ad9e38ee515 100644
--- a/projects/packages/jetpack-mu-wpcom/package.json
+++ b/projects/packages/jetpack-mu-wpcom/package.json
@@ -50,12 +50,12 @@
"dependencies": {
"@automattic/calypso-color-schemes": "3.1.3",
"@automattic/color-studio": "2.6.0",
- "@automattic/components": "2.2.0-rc.4",
- "@automattic/data-stores": "3.1.0-rc.6",
+ "@automattic/components": "2.2.0",
+ "@automattic/data-stores": "3.1.0",
"@automattic/i18n-utils": "1.2.3",
"@automattic/jetpack-base-styles": "workspace:*",
"@automattic/jetpack-shared-extension-utils": "workspace:*",
- "@automattic/launchpad": "1.1.0-rc.3",
+ "@automattic/launchpad": "1.1.0",
"@automattic/page-pattern-modal": "1.1.5",
"@automattic/typography": "1.0.0",
"@popperjs/core": "^2.11.8",
From 38ebe97d6cf27f12d8d8475a7500228d141b3d4c Mon Sep 17 00:00:00 2001
From: arthur
Date: Mon, 21 Oct 2024 14:32:20 +0800
Subject: [PATCH 16/16] Update pnpm-lock.yaml
---
pnpm-lock.yaml | 99 ++++++++++++++++++++++++--------------------------
1 file changed, 48 insertions(+), 51 deletions(-)
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 3b7a385cb119a..ed825b761cbcc 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -2206,11 +2206,11 @@ importers:
specifier: 2.6.0
version: 2.6.0
'@automattic/components':
- specifier: 2.2.0-rc.4
- version: 2.2.0-rc.4(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ specifier: 2.2.0
+ version: 2.2.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@automattic/data-stores':
- specifier: 3.1.0-rc.6
- version: 3.1.0-rc.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ specifier: 3.1.0
+ version: 3.1.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@automattic/i18n-utils':
specifier: 1.2.3
version: 1.2.3
@@ -2221,8 +2221,8 @@ importers:
specifier: workspace:*
version: link:../../js-packages/shared-extension-utils
'@automattic/launchpad':
- specifier: 1.1.0-rc.3
- version: 1.1.0-rc.3(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(@wordpress/element@6.9.0)(@wordpress/i18n@5.9.0)(debug@4.3.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)
+ specifier: 1.1.0
+ version: 1.1.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(@wordpress/element@6.9.0)(@wordpress/i18n@5.9.0)(debug@4.3.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)
'@automattic/page-pattern-modal':
specifier: 1.1.5
version: 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)
@@ -4994,8 +4994,8 @@ packages:
'@automattic/calypso-config@1.2.0':
resolution: {integrity: sha512-7NE5oVOEyQ4KRz1VNnPIHgW+mcwxnkcs/+Cymba7OA7SYKARiTg3ETGlZGX19S0F7gjYZMq+IeLHeAZSrNjz/Q==}
- '@automattic/calypso-products@1.2.1-rc.1':
- resolution: {integrity: sha512-EZW0PVB4KI8tlStveIFBDDPnHNCLu8X9t/StjSdYA0Wkono5Ib2snyGu8hgJpOPEvup4BwTloki8hhY2f9DaaA==}
+ '@automattic/calypso-products@1.2.1':
+ resolution: {integrity: sha512-SeDOPquZRMV5ljubKQUbY3EHh0JZB5OCRUqqT9eN1J8SpWOZZArxYTxsqW3ocFb7dyvd/R1153TmDsNxfZILTw==}
peerDependencies:
'@wordpress/data': ^10.8.0
react: ^18.3.1
@@ -5009,15 +5009,15 @@ packages:
'@automattic/color-studio@3.0.3':
resolution: {integrity: sha512-2GXkwfu4ndGEWWSlQQamCdXIQ9qJ1zbqbGROxJzE6F4kS2EXGgXvkMolpaa6X7ZjosqlGhtTTvYOwgIw/2qD7A==}
- '@automattic/components@2.2.0-rc.4':
- resolution: {integrity: sha512-2WCFKXxvXVPiMw8JA5djQNGyiz4XNreBobsf+9VtFO2rtCSfXkDrImdvhTWS78/ajd62Wl9c+hIIfjnn4j9H4Q==}
+ '@automattic/components@2.2.0':
+ resolution: {integrity: sha512-AMuCD49xEPqR5b68l5MsVq/Lv/r8CpfXd/xJzZixhAFxTROtX+pcSaq7bR6SvMXuVhq+Mx+R+M7S2igS1H2L/g==}
peerDependencies:
'@wordpress/data': ^10.8.0
react: ^18.3.1
react-dom: ^18.3.1
- '@automattic/data-stores@3.1.0-rc.6':
- resolution: {integrity: sha512-XfCBDUUmpDbgagt5vkz4cRR8Vgxw+au++ZpljWIK4m8lxdusd35NQvnOUv36lpMO8Y56kTOxj8y7OW8LizqeUw==}
+ '@automattic/data-stores@3.1.0':
+ resolution: {integrity: sha512-Z1FaeGAgzVFhOPkcdFS/sjWqZMEFoqs+roer3h535Auqn+Apzf9bw86nJkFFaP2hbYMIUvq5nE7bKAlL5KAGLA==}
peerDependencies:
'@wordpress/data': ^10.8.0
react: ^18.3.1
@@ -5053,8 +5053,8 @@ packages:
'@automattic/languages@1.0.0':
resolution: {integrity: sha512-froTyDbTmLitHkvY9WLCpFdjUo6moOLkDKw63J2fLiB2gBApy2thkBV+LRx4Z0kIF5iXVkQF4yYOPYkT9Sr13Q==}
- '@automattic/launchpad@1.1.0-rc.3':
- resolution: {integrity: sha512-7A7yDV/44DYPEjzcxmkDFCBZXl2EtuIxRDmMFIVn/5MbhZNBInZJrB2mimcl1GBZKTfjPa1Z3kj3CC9UaUHGIA==}
+ '@automattic/launchpad@1.1.0':
+ resolution: {integrity: sha512-FQaQmS9DLH926IGgy0nMrqR60ps1SET8LBHkz79/sY6+U/WRY3d6Ac/yhNQxT4xwA9wtNXX1fPDwF6kP04b7Zg==}
peerDependencies:
'@wordpress/data': ^10.8.0
'@wordpress/element': ^6.8.0
@@ -5070,8 +5070,8 @@ packages:
'@automattic/material-design-icons@1.0.0':
resolution: {integrity: sha512-8baJ1l8ftLq/UdLeucOeGXo4/wpaB/pSOBO587/pKC/xv2Oo8Ok21g1WKwp0Y8hEq4+3JNtCzOGVxmIgDBTYvA==}
- '@automattic/oauth-token@1.0.0-rc.1':
- resolution: {integrity: sha512-kdmiGaP4fZVpaN0tCZZrN/HANUiQS1wdR1LWzuDU81NW/7kkcvporGqckZuTCguknQjAfhzkX4pMXLnFhAmklg==}
+ '@automattic/oauth-token@1.0.0':
+ resolution: {integrity: sha512-SaAQ7ZNiaGNkdVbE01qyYGhu1zKTF/gpO1O5te3s8NPQaUy7456zoQSnuZqNawBuU09RwccDqvaFiVT0SqSYBw==}
'@automattic/page-pattern-modal@1.1.5':
resolution: {integrity: sha512-cFA82qWUDSSFhOHfOkOqh7X8I9As5fNGp7w3LVw7ZDRl6wSiQZveLvWp4msNDnLmeiJTpxWVOZWvCirxYUE3Sw==}
@@ -5086,14 +5086,8 @@ packages:
'@automattic/request-external-access@1.0.0':
resolution: {integrity: sha512-vhN72lwPFzhCVMP1l2ODBqt7fI5jfeJz1JyBnq/AUCg9PpsJfdk4vZxhSOLhSSds8VMkU5WaNnaztkYfkkYOiA==}
- '@automattic/shopping-cart@2.0.0':
- resolution: {integrity: sha512-R6BYKd6YLmYjyxWaDak+Ef1jybmSYc2d8VFmVrgywDAfMbbTUuDrRwSLu9cJTrh5rP/jlKcVzXGtoJebNyv2pA==}
- peerDependencies:
- react: ^16.12.0
- react-dom: ^16.12.0
-
- '@automattic/shopping-cart@2.0.1-rc.1':
- resolution: {integrity: sha512-OCzN7H9CwXem0eUIainbM9ExoNV8AdivFKr1OPz/JoOJGxoFZVUig5wE0Emw40VWxt5a1s8XtOUvyb6FxpnXUQ==}
+ '@automattic/shopping-cart@2.0.1':
+ resolution: {integrity: sha512-Vnfi+PtgiJu9VSmenTgbFrzB8G7eShVm9EAov7zIt54KeOBS44pn01ZJiZwZRRiA8pi8CkPHRW1sfpR/SAcKiw==}
peerDependencies:
react: ^18.3.1
react-dom: ^18.3.1
@@ -5114,8 +5108,8 @@ packages:
'@automattic/urls@1.0.0':
resolution: {integrity: sha512-dTunk7PqvF/w0b7DFb8aUW85XbkqEwChTllManUq1uMDdeA6S6YWeCs7t5bBei0D1RFUs9FDdyspeLisNxfbAg==}
- '@automattic/viewport-react@1.0.1-rc.1':
- resolution: {integrity: sha512-YeMnMpjMMmoxEG/uuLyc7nKkbI8MKlsEgQpufHch3J8QtHt0qn7+1ZPBQ7fDZvMocZctMivHz1WHldiTL5KX1w==}
+ '@automattic/viewport-react@1.0.1':
+ resolution: {integrity: sha512-CFPY3rd0Stk2TdCVJRJ4KLerpjXTuJi0ArshwikYfQCcCcZm+YKbLi3oPiqmtBIN5QOzL7AlqbD9Wwc9NiBBMA==}
peerDependencies:
react: ^18.3.1
react-dom: ^18.3.1
@@ -14301,6 +14295,9 @@ packages:
wpcom-proxy-request@7.0.5:
resolution: {integrity: sha512-IJ0AYAxA6zOaIt8mD3aKDcaTQrOQiaV41/AKU42fL+GkH2chV7MGYf02hQrtMifLAjdAg0Xwm7IlGCfv+cy9XQ==}
+ wpcom-proxy-request@7.0.6:
+ resolution: {integrity: sha512-Hzo3AWwT89/4TWHiMdzClu0hlDptZLmQjaP3vQL2kw7dhNsWD6yE52sOOrzyfCSsoJZbZOk9j38A1+2csNfppQ==}
+
wrap-ansi@3.0.1:
resolution: {integrity: sha512-iXR3tDXpbnTpzjKSylUJRkLuOrEC7hwEB221cgn6wtF8wpmz28puFXAEfPT5zrjM3wahygB//VuWEr1vTkDcNQ==}
engines: {node: '>=4'}
@@ -14539,12 +14536,12 @@ snapshots:
'@automattic/calypso-config@1.2.0': {}
- '@automattic/calypso-products@1.2.1-rc.1(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ '@automattic/calypso-products@1.2.1(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@automattic/calypso-config': 1.2.0
- '@automattic/components': 2.2.0-rc.4(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/components': 2.2.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@automattic/i18n-utils': 1.2.3
- '@automattic/shopping-cart': 2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/shopping-cart': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@automattic/urls': 1.0.0
'@wordpress/data': 10.9.0(react@18.3.1)
i18n-calypso: 7.0.0(@types/react@18.3.3)(react@18.3.1)
@@ -14566,7 +14563,7 @@ snapshots:
'@automattic/color-studio@3.0.3': {}
- '@automattic/components@2.2.0-rc.4(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ '@automattic/components@2.2.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@automattic/calypso-analytics': 1.1.2
'@automattic/calypso-color-schemes': 3.1.3
@@ -14577,7 +14574,7 @@ snapshots:
'@automattic/load-script': 1.0.0
'@automattic/material-design-icons': 1.0.0
'@automattic/typography': 1.0.0
- '@automattic/viewport-react': 1.0.1-rc.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/viewport-react': 1.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@emotion/css': 11.13.4
'@emotion/react': 11.13.3(@types/react@18.3.3)(react@18.3.1)
'@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)
@@ -14608,17 +14605,17 @@ snapshots:
- '@types/react'
- supports-color
- '@automattic/data-stores@3.1.0-rc.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ '@automattic/data-stores@3.1.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@automattic/calypso-analytics': 1.1.2
'@automattic/calypso-config': 1.2.0
- '@automattic/calypso-products': 1.2.1-rc.1(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/calypso-products': 1.2.1(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@automattic/format-currency': 2.0.0
'@automattic/i18n-utils': 1.2.3
'@automattic/js-utils': 0.1.0
'@automattic/load-script': 1.0.0
- '@automattic/oauth-token': 1.0.0-rc.1
- '@automattic/shopping-cart': 2.0.1-rc.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/oauth-token': 1.0.0
+ '@automattic/shopping-cart': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@tanstack/react-query': 5.20.5(react@18.3.1)
'@wordpress/api-fetch': 7.9.0
'@wordpress/data': 10.9.0(react@18.3.1)
@@ -14639,7 +14636,7 @@ snapshots:
use-debounce: 3.4.3(react@18.3.1)
utility-types: 3.11.0
validator: 13.12.0
- wpcom-proxy-request: 7.0.5
+ wpcom-proxy-request: 7.0.6
transitivePeerDependencies:
- '@babel/runtime'
- '@emotion/is-prop-valid'
@@ -14688,12 +14685,12 @@ snapshots:
dependencies:
tslib: 2.5.0
- '@automattic/launchpad@1.1.0-rc.3(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(@wordpress/element@6.9.0)(@wordpress/i18n@5.9.0)(debug@4.3.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)':
+ '@automattic/launchpad@1.1.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(@wordpress/element@6.9.0)(@wordpress/i18n@5.9.0)(debug@4.3.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)':
dependencies:
'@automattic/calypso-analytics': 1.1.2
'@automattic/calypso-config': 1.2.0
- '@automattic/components': 2.2.0-rc.4(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@automattic/data-stores': 3.1.0-rc.6(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/components': 2.2.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@automattic/data-stores': 3.1.0(@babel/runtime@7.24.7)(@types/react@18.3.3)(@wordpress/data@10.9.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@automattic/i18n-utils': 1.2.3
'@automattic/typography': 1.0.0
'@automattic/viewport': 1.1.0
@@ -14712,7 +14709,7 @@ snapshots:
redux: 4.2.1
tslib: 2.5.0
utility-types: 3.11.0
- wpcom-proxy-request: 7.0.5
+ wpcom-proxy-request: 7.0.6
transitivePeerDependencies:
- '@babel/runtime'
- '@emotion/is-prop-valid'
@@ -14728,7 +14725,7 @@ snapshots:
'@automattic/material-design-icons@1.0.0': {}
- '@automattic/oauth-token@1.0.0-rc.1':
+ '@automattic/oauth-token@1.0.0':
dependencies:
cookie: 0.4.2
store: 2.0.12
@@ -14766,15 +14763,7 @@ snapshots:
dependencies:
'@automattic/popup-monitor': 1.0.2
- '@automattic/shopping-cart@2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
- dependencies:
- debug: 4.3.4
- react: 18.3.1
- react-dom: 18.3.1(react@18.3.1)
- transitivePeerDependencies:
- - supports-color
-
- '@automattic/shopping-cart@2.0.1-rc.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ '@automattic/shopping-cart@2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
debug: 4.3.4
react: 18.3.1
@@ -14804,7 +14793,7 @@ snapshots:
'@automattic/urls@1.0.0': {}
- '@automattic/viewport-react@1.0.1-rc.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ '@automattic/viewport-react@1.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@automattic/viewport': 1.1.0
'@wordpress/compose': 7.9.0(react@18.3.1)
@@ -27398,6 +27387,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ wpcom-proxy-request@7.0.6:
+ dependencies:
+ debug: 4.3.4
+ uuid: 9.0.1
+ wp-error: 1.3.0
+ transitivePeerDependencies:
+ - supports-color
+
wrap-ansi@3.0.1:
dependencies:
string-width: 2.1.1