diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b04d31c509307..f07f37ec2965f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -2399,6 +2399,9 @@ importers: '@automattic/color-studio': specifier: 4.0.0 version: 4.0.0 + '@automattic/components': + specifier: 2.2.0 + version: 2.2.0(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.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 @@ -2408,6 +2411,9 @@ importers: '@automattic/jetpack-shared-extension-utils': specifier: workspace:* version: link:../../js-packages/shared-extension-utils + '@automattic/launchpad': + specifier: 1.1.0 + version: 1.1.0(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.0(react@18.3.1))(@wordpress/element@6.16.0)(@wordpress/i18n@5.16.0)(debug@4.4.0)(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(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(@wordpress/data@10.16.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(webpack@5.94.0) @@ -2443,7 +2449,7 @@ importers: version: 10.16.0(react@18.3.1) '@wordpress/dom-ready': specifier: ^4.8.1 - version: 4.16.0 + version: 4.14.0 '@wordpress/element': specifier: 6.16.0 version: 6.16.0 @@ -2461,10 +2467,10 @@ importers: version: 7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/private-apis': specifier: ^1.8.1 - version: 1.16.0 + version: 1.14.0 '@wordpress/router': specifier: ^1.8.11 - version: 1.16.0(react@18.3.1) + version: 1.14.0(react@18.3.1) '@wordpress/url': specifier: 4.16.0 version: 4.16.0 @@ -2474,6 +2480,12 @@ importers: debug: specifier: 4.4.0 version: 4.4.0 + events: + specifier: ^3.3.0 + version: 3.3.0 + i18n-calypso: + specifier: 7.0.0 + version: 7.0.0(@types/react@18.3.18)(react@18.3.1) preact: specifier: ^10.13.1 version: 10.22.1 @@ -2512,6 +2524,9 @@ importers: '@babel/preset-react': specifier: 7.26.3 version: 7.26.3(@babel/core@7.26.0) + '@babel/runtime': + specifier: 7.24.7 + version: 7.24.7 '@playwright/test': specifier: 1.48.2 version: 1.48.2 @@ -5139,21 +5154,47 @@ packages: '@automattic/babel-plugin-preserve-i18n@1.0.0': resolution: {integrity: sha512-dRmLP0Ytf2oDNbUbO8MXLKYnPZfqhtFQ8v1hgDo2Fde1Y0bUz2Ll1UmUOHdyZudnrN/8Zt95cG/fIOJ0dxHi8Q==} + '@automattic/calypso-analytics@1.1.3': + resolution: {integrity: sha512-7DiQZLC2wzs5GW4PDXnSngYFNkMC8aB8FXgD5Xqgzo9cQmqo7Ka4sKITsp7b8yBHXrpEtMwCK265UAEQs8wSMg==} + '@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': + resolution: {integrity: sha512-SeDOPquZRMV5ljubKQUbY3EHh0JZB5OCRUqqT9eN1J8SpWOZZArxYTxsqW3ocFb7dyvd/R1153TmDsNxfZILTw==} + 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/color-studio@4.0.0': resolution: {integrity: sha512-L49rqIzCLnqLFoNJsANUXfmIWqlfgsEaDWcgXHt+lUbpZYDtWphUCVS/kIkSlAPHo3LmcRRzCTIq/DyU5C/nEA==} + '@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': + resolution: {integrity: sha512-Z1FaeGAgzVFhOPkcdFS/sjWqZMEFoqs+roer3h535Auqn+Apzf9bw86nJkFFaP2hbYMIUvq5nE7bKAlL5KAGLA==} + 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==} @@ -5163,12 +5204,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': + resolution: {integrity: sha512-FQaQmS9DLH926IGgy0nMrqR60ps1SET8LBHkz79/sY6+U/WRY3d6Ac/yhNQxT4xwA9wtNXX1fPDwF6kP04b7Zg==} + 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': + resolution: {integrity: sha512-SaAQ7ZNiaGNkdVbE01qyYGhu1zKTF/gpO1O5te3s8NPQaUy7456zoQSnuZqNawBuU09RwccDqvaFiVT0SqSYBw==} + '@automattic/page-pattern-modal@1.1.5': resolution: {integrity: sha512-cFA82qWUDSSFhOHfOkOqh7X8I9As5fNGp7w3LVw7ZDRl6wSiQZveLvWp4msNDnLmeiJTpxWVOZWvCirxYUE3Sw==} peerDependencies: @@ -5182,6 +5258,12 @@ packages: '@automattic/request-external-access@1.0.0': resolution: {integrity: sha512-vhN72lwPFzhCVMP1l2ODBqt7fI5jfeJz1JyBnq/AUCg9PpsJfdk4vZxhSOLhSSds8VMkU5WaNnaztkYfkkYOiA==} + '@automattic/shopping-cart@2.0.1': + resolution: {integrity: sha512-Vnfi+PtgiJu9VSmenTgbFrzB8G7eShVm9EAov7zIt54KeOBS44pn01ZJiZwZRRiA8pi8CkPHRW1sfpR/SAcKiw==} + peerDependencies: + react: ^18.3.1 + react-dom: ^18.3.1 + '@automattic/social-previews@2.1.0-beta.9': resolution: {integrity: sha512-Mdvlz7yZTNlSv4kwggH1Rr5Nvl59X3Dnqt5EBUFiPZi9UhAHvLnR1Uf3YFC5J/hWP/8UpF/wAPgar91+o8j9sQ==} peerDependencies: @@ -5195,9 +5277,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': + resolution: {integrity: sha512-CFPY3rd0Stk2TdCVJRJ4KLerpjXTuJi0ArshwikYfQCcCcZm+YKbLi3oPiqmtBIN5QOzL7AlqbD9Wwc9NiBBMA==} + 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: @@ -5818,6 +5912,10 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/runtime@7.24.7': + 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'} @@ -7429,6 +7527,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==} @@ -8053,6 +8154,10 @@ packages: webpack-dev-server: optional: true + '@wordpress/a11y@4.13.0': + resolution: {integrity: sha512-ZCNhj8GDi6cOVm7L0vfwG5y7XPZONfRbb1KEsJjfgiLY9BnjmfpI5TAqYXcoXbm+Xkea84dQWw1J03EfkuSyIg==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/a11y@4.16.0': resolution: {integrity: sha512-i3zrNFx+N+dNivQxUeQXWKGT1ccWePXcqPkVTqjdO+lACv+MtJoyE9PXZCmaxHWq00g1RTvIpLtrzV5L4gzZkA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8134,6 +8239,13 @@ packages: react: ^18.0.0 react-dom: ^18.0.0 + '@wordpress/components@28.13.0': + resolution: {integrity: sha512-JaGcXYtFCvHqa62dtxMAMhu6afvefFOuwfUTNiLYg60CA4UDITt6gf+qhpvKNOzVg4qQRw10o/nryrOMoMAEEg==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + '@wordpress/components@29.2.0': resolution: {integrity: sha512-a7vUL4oUGu4Jicqf0cFSdQvGtZVw9h4Gvxr53o8yJYmXY8YRVrbeEsZjA/twaqRa8WxGzzWnWNQ/XwtMEXNG0w==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8141,6 +8253,12 @@ 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.16.0': resolution: {integrity: sha512-FTpfEUeEyH3LnVRlNZxRwce3sEUPDAVI1P+AaF7ZrbzcV2ita4WamCoEHFDS4OMOnvISnSbVh2Rz3gF9oLvomQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8161,6 +8279,12 @@ packages: react: ^18.0.0 react-dom: ^18.0.0 + '@wordpress/data-controls@4.16.0': + resolution: {integrity: sha512-IdHZp+xe1/+XpwZZMt7aVTRT0/bxTFbWnGjYEylmqt1kYVA7sXKtDqxR00jIQ7BzAScMrIwxFowHxUGNFy+owA==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + peerDependencies: + react: ^18.0.0 + '@wordpress/data@10.16.0': resolution: {integrity: sha512-5Gx0Hb1VsnvACQJBJhgaFf0xn6cf1s0Wqv3q2DRnRShuSQTNxkUxA41+eZsPxC1JrnVXg0vPRCu5GpqwPO4O9g==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8183,14 +8307,34 @@ packages: peerDependencies: webpack: ^5.0.0 + '@wordpress/deprecated@3.58.0': + resolution: {integrity: sha512-knweE2lLEUxWRr6A48sHiO0ww5pPybGe2NVIZVq/y7EaYCMdpy6gYA0ZdVqMKZvtxKKqicJfwigcn+hinsTvUQ==} + engines: {node: '>=12'} + + '@wordpress/deprecated@4.13.0': + resolution: {integrity: sha512-wSDfGwRHzxcfpcUUlIHGQOIKYdGvTHbmVWIRf7dlPCRr5anpZTXsC/4ElDJFoi+w/gQklm//LrxjWP1Gqj8hmA==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/deprecated@4.16.0': resolution: {integrity: sha512-apv94cskjvWqkanqNn3vP7lugJODkSkPlLqjKPY5iBXI0RATaKuxcTNxuO9/Gn5QcuM89fjhsGTcZ4X/SZTGNQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/dom-ready@4.14.0': + resolution: {integrity: sha512-VeLZZJwKM+Y1d9KPXJ7IQFWwxrND8Xlu+XHpEesudn2kxYE/F5E1uGwS+8LjuprKW+ZEBzgmzZRraKG+KbGFWg==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/dom-ready@4.16.0': resolution: {integrity: sha512-rlp7gZRRPsob8z+//tS8bHHRTlkRiOfbKA1SJmyfakU/p4fcEXskLfdq/0wGPZtoHnia6kLKUyFMWhIBe8SuYQ==} 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.13.0': + resolution: {integrity: sha512-ucaz3Kh9L3EGpLiXXWqflC0T/1zMOe4DR31ynl+B68YSEWpM0VqTnRUFJRUFEc5wiOa70T8yFa3RLSwWpqJTIw==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/dom@4.16.0': resolution: {integrity: sha512-iT9D8BnoSgD9w+viDCKtO7lfMmzku3tC7oLEakH6LNZRas0jQuTC46cfokMAz6HTchxiAnuXoPYHsCPhGzWy8Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8215,6 +8359,10 @@ 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.14.0': resolution: {integrity: sha512-vZPm2ekv9B7fMcv/slyu/p8lV44EPa6RRHOk04ldNUpsrjC6ph6Q4wpuI5WzLEX7p1u71c8ZOuroEuRvdFxMcA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8223,6 +8371,10 @@ packages: resolution: {integrity: sha512-1Db9jeu7dxil/fJqAiLN5dA6gwoHWcgMSqZJ4dmZ0kMDMs40rtm6o60GFmAQGlrj+mmUvhOHTTwrBdpyfuv4bA==} 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.16.0': resolution: {integrity: sha512-Rb3nUsqK2tzLpKhSRO5IID5O+gvNlyHRkKVmTszTB+0vjK+yh0Mc4UPzdHksPo8K7KnlAFt3SgjcfWYo3LYyUA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8269,6 +8421,10 @@ 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.16.0': resolution: {integrity: sha512-W82L1PdIhJPNpEb2F+0NWzrDoUqZo6NnYID7qHCexBiagq4+QS4uydM6anyFvUNrpL51CmkCNu31Xi8HjpSTGg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8277,6 +8433,11 @@ packages: resolution: {integrity: sha512-wnCtif4GsQ3gZgINN2GK6+yLH+vIsW3ASvUfdUlxYMcvMagNhJsqaE6dqsnKkezD8q/WNL7zv82BDyGSLKeHNQ==} 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.16.0': resolution: {integrity: sha512-O4ZUvjS8AlYzTxvw7fmp3xk51rpKv1h2/dGFc/L+IB97UrCBAiC9HBv6FIHRF1gci4Vdu/QnCDw3qpC+N/2gCw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8303,6 +8464,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.13.0': + resolution: {integrity: sha512-Z32eGYExzGq/dN4iSNCddCMQU8p1u6mYzyNXDCovw4JSEN3Fr3HvmGYQGRIlkuTrlE6okSqArAvXVKR+I8S5Qg==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/is-shallow-equal@5.16.0': resolution: {integrity: sha512-9JI0bz7bQ9PdXPtXSnZXtbkyh0h7ZtojeG0lFtf9xtFkA56JUuMALa623v1YeuHKYbYmCc03/pqtpDKc/8QfVQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8319,6 +8488,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.14.0': + resolution: {integrity: sha512-vZpK+NbhC+3/JK8S5I/PuJMNYhfn7X8pupTPuEiKIXZgcnXAy3mORgirBeZJNkNUXRl3vfcsq0qFnIovI96fHA==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/keycodes@4.16.0': resolution: {integrity: sha512-T4kaFkw6R1VkcBk+F7B4gmzEhSPRJwpMdkP7roNvENzKGtXs49K4xO0koOZhWUlGpZvhPJ1WWERyoub8S7rX2A==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8372,14 +8549,26 @@ 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.16.0': resolution: {integrity: sha512-YmVPE/kHmAIEYiSnnfxQI7JBAvXxlCyVoGlfWxCJ/IH8W7gbZtl1R+iuRvT8L4Cdr+sUybT68Ry+o4o39OqURg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/private-apis@1.14.0': + resolution: {integrity: sha512-ul932/nV1+DV+bg35zKIcWz31tKUufiTl0Ysxcd81uFK+rG1Pf2420eM7V7wlOvJGpwrwbURpK4r4F5WQ0NpKQ==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/private-apis@1.16.0': resolution: {integrity: sha512-k/AQ11+vlbpSWhyOU5t8huoGdN+PursA8bUxVfhEnqcKRWTK+LKSmSEpdyL1sv6XJqznWYjgaNSdIxTkadsPpg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/react-i18n@4.16.0': + resolution: {integrity: sha512-GywcNpdyd2/Px6jsdAORoeC2jZdmDJA7rL0GZjxkerSuOreWMNaUYhYhcLW3biIexYxz0e0foNoZe570WdNnNg==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/redux-routine@5.16.0': resolution: {integrity: sha512-piLnJnV+tzWOEPJPdp431TcaKRoCpgGJ309W+UxM7fRHrYH/XZcXD8a+0pq56Dh/1QFO1elXXhPzhZQknwtyYw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8399,6 +8588,12 @@ packages: peerDependencies: react: ^18.0.0 + '@wordpress/router@1.14.0': + resolution: {integrity: sha512-cloEfwH2dHnR4MYXBMs5hrwFptSvoJToGZoOxKd89qtgwjvEkFc8sr1XsosekSqP8XxrXNZm3xanSyOyKWwJsw==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + peerDependencies: + react: ^18.0.0 + '@wordpress/router@1.16.0': resolution: {integrity: sha512-P4txQueN9aaRcPFTIyVePkGRl5h38cA66X/Q67kqL4OntphTgg4T8lpKlVu6QOD/Q52ARtjiHaIFq9ezRIfTvA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8412,6 +8607,10 @@ packages: react: ^18.0.0 react-dom: ^18.0.0 + '@wordpress/shortcode@4.13.0': + resolution: {integrity: sha512-CDPrKtawaVM9Q9UdE+tzh6PbajS8g6Ft1yvW46ATQEAzYdGNW/Radejx6OYz748SSaRuj3OFrOKziFWGjNoPCg==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/shortcode@4.16.0': resolution: {integrity: sha512-T3KLZq5SYGigltEQumCKExKBJqnI2IF2elnJpd5+CFxQQAb9/gsrZ4TBG7ommOlXHZKn5hwD2YIEEM/ZAkGQ4A==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8428,6 +8627,10 @@ packages: resolution: {integrity: sha512-bhBZTKcR8NZXgW9tsHDJm3YTIsCnWb/i50cN59w9FqYICOUFGC4RKyEDzJN6rpgW9dRu6J7xfsC8PjlMukNc6Q==} 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.16.0': resolution: {integrity: sha512-IE3u5Yk8QzUhiLAiGmYostsygxQExs9mVWlZ1BAXniEGCAcVdvDv7IB16dIgQxCYG3/idvmFdNbN8aQGX+nEIg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8449,6 +8652,10 @@ packages: peerDependencies: react: ^18.0.0 + '@wordpress/warning@3.13.0': + resolution: {integrity: sha512-e35ab+D1aE2zFOLd/f1zmjlHtVjVL31ayOszwRgK+XXv7jnhjW5KUjquAykKQbYnFlVLHC20h6p8IiNuSyzfUQ==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + '@wordpress/warning@3.16.0': resolution: {integrity: sha512-XsgqRPvB+VSecXnD3VfvJJxhcdTTX4EkgdzvWspmQnw0rNCV636KByZVgolzYhvr3La9EgqO+MqXzwvPHg/xfQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} @@ -8992,6 +9199,9 @@ packages: caniuse-lite@1.0.30001692: resolution: {integrity: sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==} + canvas-confetti@1.9.3: + resolution: {integrity: sha512-rFfTURMvmVEX1gyXFgn5QMn81bYk70qa0HLzcIOSVEyl57n6o9ItHeBtUSWdvKAPY0xlvBHno4/v3QPrT83q9g==} + capital-case@1.0.4: resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} @@ -9284,6 +9494,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.1: resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==} engines: {node: '>= 0.6'} @@ -10250,6 +10464,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'} @@ -10689,6 +10906,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'} @@ -10720,6 +10942,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'} @@ -10827,6 +11052,11 @@ packages: engines: {node: '>=18'} 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'} @@ -11748,6 +11978,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 @@ -12007,6 +12241,9 @@ packages: peerDependencies: webpack: ^5.0.0 + minimalistic-assert@1.0.1: + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + minimatch@10.0.1: resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} engines: {node: 20 || >=22} @@ -12906,6 +13143,11 @@ packages: q-flat@1.0.7: resolution: {integrity: sha512-Ug+B6yajVE5HF7eAszOvAcYmQ+DbYaDcQlxYuW9RaAqwZTRZQq+lHMGqHlnaxKP7CfuGCpXQXOb4qymRYMkYEQ==} + qrcode.react@3.2.0: + resolution: {integrity: sha512-YietHHltOHA4+l5na1srdaMx4sVSOjV9tamHs+mwiLWAMr6QVACRUw1Neax5CptFILcNoITctJY0Ipyn5enQ8g==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + qrcode.react@4.2.0: resolution: {integrity: sha512-QpgqWi8rD9DsS9EP3z7BT+5lY5SFhsqGjpgW5DY/i3mK4M9DTBNz3ErMi8BWYEfI3L0d8GIbGmcdFAS1uIRGjA==} peerDependencies: @@ -13005,6 +13247,15 @@ 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.3: + resolution: {integrity: sha512-yCYRJB5YkeQDQlTt17WGAgFJ7jr2QYcWa1SHqZ3PluDmnKJ/7+tVU+E6uKyZ0nODaeEj+xCpK4LcSnKXLMC0Nw==} + peerDependencies: + react: ^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18 || ^19 + react-dom: ^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18 || ^19 + react-page-visibility@7.0.0: resolution: {integrity: sha512-d4Kq/8TtJSr8dQc8EJeAZcSKTrGzC5OPTm6UrMur9BnwP0fgTawI9+Nd+ZGB7vwCfn2yZS0qDF9DR3/QYTGazw==} engines: {node: '>=10'} @@ -13845,6 +14096,9 @@ packages: resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} 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: @@ -14570,6 +14824,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: @@ -14585,6 +14844,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.4.0: resolution: {integrity: sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==} peerDependencies: @@ -14599,6 +14863,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'} @@ -14615,6 +14883,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'} + varint@6.0.0: resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==} @@ -15020,10 +15292,38 @@ snapshots: '@automattic/babel-plugin-preserve-i18n@1.0.0': {} + '@automattic/calypso-analytics@1.1.3': + dependencies: + '@automattic/load-script': 1.0.0 + cookie: 0.7.1 + debug: 4.4.0 + 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(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.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(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.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.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@automattic/urls': 1.0.0 + '@wordpress/data': 10.16.0(react@18.3.1) + i18n-calypso: 7.0.0(@types/react@18.3.18)(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 @@ -15032,8 +15332,90 @@ snapshots: '@automattic/color-studio@2.6.0': {} + '@automattic/color-studio@3.0.3': {} + '@automattic/color-studio@4.0.0': {} + '@automattic/components@2.2.0(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@automattic/calypso-analytics': 1.1.3 + '@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(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@emotion/css': 11.13.5 + '@emotion/react': 11.14.0(@types/react@18.3.18)(react@18.3.1) + '@emotion/styled': 11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@18.3.1))(@types/react@18.3.18)(react@18.3.1) + '@wordpress/base-styles': 5.16.0 + '@wordpress/components': 28.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/react-i18n': 4.16.0 + canvas-confetti: 1.9.3 + clsx: 2.1.1 + colord: 2.9.3 + debug: 4.4.0 + gridicons: 3.4.2(react@18.3.1) + i18n-calypso: 7.0.0(@types/react@18.3.18)(react@18.3.1) + lodash: 4.17.21 + prop-types: 15.8.1 + qrcode.react: 3.2.0(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-modal: 3.16.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-router-dom: 6.28.1(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(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@automattic/calypso-analytics': 1.1.3 + '@automattic/calypso-config': 1.2.0 + '@automattic/calypso-products': 1.2.1(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.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 + '@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.16.0 + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/data-controls': 4.16.0(react@18.3.1) + '@wordpress/deprecated': 4.13.0 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 + debug: 4.4.0 + fast-json-stable-stringify: 2.1.0 + i18n-calypso: 7.0.0(@types/react@18.3.18)(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.6 + 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 @@ -15048,6 +15430,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 @@ -15060,10 +15446,63 @@ snapshots: transitivePeerDependencies: - supports-color + '@automattic/interpolate-components@1.2.1(@types/react@18.3.18)(react@18.3.1)': + dependencies: + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.18 + + '@automattic/js-utils@0.1.0': {} + '@automattic/languages@1.0.0': dependencies: tslib: 2.5.0 + '@automattic/launchpad@1.1.0(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.0(react@18.3.1))(@wordpress/element@6.16.0)(@wordpress/i18n@5.16.0)(debug@4.4.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)': + dependencies: + '@automattic/calypso-analytics': 1.1.3 + '@automattic/calypso-config': 1.2.0 + '@automattic/components': 2.2.0(@babel/runtime@7.24.7)(@types/react@18.3.18)(@wordpress/data@10.16.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.18)(@wordpress/data@10.16.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.16.0 + '@wordpress/components': 28.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 + clsx: 2.1.1 + debug: 4.4.0 + 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.6 + transitivePeerDependencies: + - '@babel/runtime' + - '@emotion/is-prop-valid' + - '@types/react' + - supports-color + + '@automattic/load-script@1.0.0': + dependencies: + '@babel/runtime': 7.26.0 + debug: 3.2.7 + transitivePeerDependencies: + - supports-color + + '@automattic/material-design-icons@1.0.0': {} + + '@automattic/oauth-token@1.0.0': + dependencies: + cookie: 0.4.2 + store: 2.0.12 + '@automattic/page-pattern-modal@1.1.5(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(@wordpress/data@10.16.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(webpack@5.94.0)': dependencies: '@automattic/color-studio': 2.6.0 @@ -15100,6 +15539,14 @@ snapshots: dependencies: '@automattic/popup-monitor': 1.0.2 + '@automattic/shopping-cart@2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + debug: 4.4.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - supports-color + '@automattic/social-previews@2.1.0-beta.9(@babel/runtime@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@emotion/react': 11.14.0(@types/react@18.3.18)(react@18.3.1) @@ -15120,8 +15567,19 @@ snapshots: '@automattic/typography@1.0.0': {} + '@automattic/urls@1.0.0': {} + + '@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.16.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)': dependencies: rtlcss: 3.5.0 @@ -15907,6 +16365,10 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/runtime@7.24.7': + dependencies: + regenerator-runtime: 0.14.1 + '@babel/runtime@7.25.7': dependencies: regenerator-runtime: 0.14.1 @@ -17917,6 +18379,8 @@ snapshots: '@tannin/postfix@1.1.0': {} + '@tannin/sprintf@1.2.0': {} + '@tanstack/query-core@4.35.3': {} '@tanstack/query-core@5.0.5': {} @@ -18294,7 +18758,7 @@ snapshots: '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': 10.16.0(react@18.3.1) '@wordpress/element': 6.16.0 - '@wordpress/keycodes': 4.16.0 + '@wordpress/keycodes': 4.14.0 react-autosize-textarea: 7.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) transitivePeerDependencies: - '@emotion/is-prop-valid' @@ -18308,7 +18772,7 @@ snapshots: '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': 10.16.0(react@18.3.1) '@wordpress/element': 6.16.0 - '@wordpress/shortcode': 4.16.0 + '@wordpress/shortcode': 4.13.0 transitivePeerDependencies: - '@emotion/is-prop-valid' - react @@ -18761,6 +19225,12 @@ snapshots: webpack: 5.94.0(webpack-cli@6.0.1) webpack-cli: 6.0.1(webpack@5.94.0) + '@wordpress/a11y@4.13.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/dom-ready': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/a11y@4.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -19405,6 +19875,60 @@ snapshots: - '@types/react-dom' - supports-color + '@wordpress/components@28.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@ariakit/react': 0.4.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.7 + '@emotion/cache': 11.14.0 + '@emotion/css': 11.13.5 + '@emotion/react': 11.14.0(@types/react@18.3.18)(react@18.3.1) + '@emotion/serialize': 1.3.3 + '@emotion/styled': 11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@18.3.1))(@types/react@18.3.18)(react@18.3.1) + '@emotion/utils': 1.4.2 + '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@types/gradient-parser': 0.1.3 + '@types/highlight-words-core': 1.2.1 + '@use-gesture/react': 10.3.1(react@18.3.1) + '@wordpress/a11y': 4.13.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.13.0 + '@wordpress/dom': 4.13.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.13.0 + '@wordpress/keycodes': 4.16.0 + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.14.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/warning': 3.13.0 + change-case: 4.1.2 + clsx: 2.1.1 + colord: 2.9.3 + date-fns: 3.6.0 + deepmerge: 4.3.1 + fast-deep-equal: 3.1.3 + framer-motion: 11.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + gradient-parser: 0.1.5 + highlight-words-core: 1.2.3 + is-plain-object: 5.0.0 + memize: 2.1.0 + path-to-regexp: 6.3.0 + re-resizable: 6.10.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-colorful: 5.6.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-dom: 18.3.1(react@18.3.1) + remove-accents: 0.5.0 + uuid: 9.0.1 + transitivePeerDependencies: + - '@emotion/is-prop-valid' + - '@types/react' + - supports-color + '@wordpress/components@29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@ariakit/react': 0.4.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -19513,6 +20037,23 @@ snapshots: - '@types/react' - supports-color + '@wordpress/compose@6.35.0(react@18.3.1)': + dependencies: + '@babel/runtime': 7.26.0 + '@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.16.0(react@18.2.0)': dependencies: '@babel/runtime': 7.25.7 @@ -19782,6 +20323,14 @@ snapshots: - webpack - webpack-virtual-modules + '@wordpress/data-controls@4.16.0(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + react: 18.3.1 + '@wordpress/data@10.16.0(react@18.2.0)': dependencies: '@babel/runtime': 7.25.7 @@ -19876,15 +20425,39 @@ snapshots: json2php: 0.0.7 webpack: 5.94.0(webpack-cli@6.0.1) + '@wordpress/deprecated@3.58.0': + dependencies: + '@babel/runtime': 7.26.0 + '@wordpress/hooks': 3.58.0 + + '@wordpress/deprecated@4.13.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/hooks': 4.16.0 + '@wordpress/deprecated@4.16.0': dependencies: '@babel/runtime': 7.25.7 '@wordpress/hooks': 4.16.0 + '@wordpress/dom-ready@4.14.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/dom-ready@4.16.0': dependencies: '@babel/runtime': 7.25.7 + '@wordpress/dom@3.58.0': + dependencies: + '@babel/runtime': 7.26.0 + '@wordpress/deprecated': 3.58.0 + + '@wordpress/dom@4.13.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/deprecated': 4.13.0 + '@wordpress/dom@4.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -20293,6 +20866,17 @@ snapshots: - webpack - webpack-virtual-modules + '@wordpress/element@5.35.0': + dependencies: + '@babel/runtime': 7.26.0 + '@types/react': 18.3.18 + '@types/react-dom': 18.3.5(@types/react@18.3.18) + '@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.14.0': dependencies: '@babel/runtime': 7.25.7 @@ -20315,6 +20899,10 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + '@wordpress/escape-html@2.58.0': + dependencies: + '@babel/runtime': 7.26.0 + '@wordpress/escape-html@3.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -20542,6 +21130,10 @@ snapshots: - webpack - webpack-virtual-modules + '@wordpress/hooks@3.58.0': + dependencies: + '@babel/runtime': 7.26.0 + '@wordpress/hooks@4.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -20550,6 +21142,15 @@ snapshots: dependencies: '@babel/runtime': 7.25.7 + '@wordpress/i18n@4.58.0': + dependencies: + '@babel/runtime': 7.26.0 + '@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.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -20620,6 +21221,14 @@ snapshots: - '@types/react' - supports-color + '@wordpress/is-shallow-equal@4.58.0': + dependencies: + '@babel/runtime': 7.26.0 + + '@wordpress/is-shallow-equal@5.13.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/is-shallow-equal@5.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -20638,6 +21247,16 @@ snapshots: '@wordpress/keycodes': 4.16.0 react: 18.3.1 + '@wordpress/keycodes@3.58.0': + dependencies: + '@babel/runtime': 7.26.0 + '@wordpress/i18n': 4.58.0 + + '@wordpress/keycodes@4.14.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/i18n': 5.16.0 + '@wordpress/keycodes@4.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -20872,15 +21491,31 @@ snapshots: clsx: 2.1.1 react: 18.3.1 + '@wordpress/priority-queue@2.58.0': + dependencies: + '@babel/runtime': 7.26.0 + requestidlecallback: 0.3.0 + '@wordpress/priority-queue@3.16.0': dependencies: '@babel/runtime': 7.25.7 requestidlecallback: 0.3.0 + '@wordpress/private-apis@1.14.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/private-apis@1.16.0': dependencies: '@babel/runtime': 7.25.7 + '@wordpress/react-i18n@4.16.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + utility-types: 3.11.0 + '@wordpress/redux-routine@5.16.0(redux@5.0.1)': dependencies: '@babel/runtime': 7.25.7 @@ -21011,6 +21646,17 @@ snapshots: memize: 2.1.0 react: 18.3.1 + '@wordpress/router@1.14.0(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/private-apis': 1.14.0 + '@wordpress/url': 4.16.0 + history: 5.3.0 + react: 18.3.1 + route-recognizer: 0.3.4 + '@wordpress/router@1.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 @@ -21062,6 +21708,11 @@ snapshots: - '@types/react' - supports-color + '@wordpress/shortcode@4.13.0': + dependencies: + '@babel/runtime': 7.25.7 + memize: 2.1.0 + '@wordpress/shortcode@4.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -21093,6 +21744,11 @@ snapshots: dependencies: '@babel/runtime': 7.25.7 + '@wordpress/undo-manager@0.18.0': + dependencies: + '@babel/runtime': 7.26.0 + '@wordpress/is-shallow-equal': 4.58.0 + '@wordpress/undo-manager@1.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -21207,6 +21863,8 @@ snapshots: '@wordpress/element': 6.16.0 react: 18.3.1 + '@wordpress/warning@3.13.0': {} + '@wordpress/warning@3.16.0': {} '@wordpress/widgets@4.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': @@ -21901,6 +22559,8 @@ snapshots: caniuse-lite@1.0.30001692: {} + canvas-confetti@1.9.3: {} + capital-case@1.0.4: dependencies: no-case: 3.0.4 @@ -22277,6 +22937,8 @@ snapshots: cookie-signature@1.0.6: {} + cookie@0.4.2: {} + cookie@0.7.1: {} cookie@1.0.1: {} @@ -23473,6 +24135,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: @@ -24003,6 +24667,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 @@ -24027,6 +24696,11 @@ snapshots: dependencies: has-symbols: 1.1.0 + 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 @@ -24159,6 +24833,24 @@ snapshots: husky@9.1.7: {} + i18n-calypso@7.0.0(@types/react@18.3.18)(react@18.3.1): + dependencies: + '@automattic/interpolate-components': 1.2.1(@types/react@18.3.18)(react@18.3.1) + '@babel/runtime': 7.26.0 + '@tannin/sprintf': 1.2.0 + '@wordpress/compose': 6.35.0(react@18.3.1) + debug: 4.4.0 + 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 @@ -25390,6 +26082,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: @@ -25815,6 +26511,8 @@ snapshots: tapable: 2.2.1 webpack: 5.94.0(webpack-cli@6.0.1) + minimalistic-assert@1.0.1: {} + minimatch@10.0.1: dependencies: brace-expansion: 2.0.1 @@ -26735,6 +27433,10 @@ snapshots: q-flat@1.0.7: {} + qrcode.react@3.2.0(react@18.3.1): + dependencies: + react: 18.3.1 + qrcode.react@4.2.0(react@18.3.1): dependencies: react: 18.3.1 @@ -26838,6 +27540,17 @@ snapshots: react-is@18.3.1: {} + react-lifecycles-compat@3.0.4: {} + + react-modal@3.16.3(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 @@ -26921,6 +27634,12 @@ snapshots: '@remix-run/router': 1.21.0 react: 18.3.1 + react-slider@2.0.5(@babel/runtime@7.24.7)(react@18.3.1): + dependencies: + '@babel/runtime': 7.24.7 + prop-types: 15.8.1 + react: 18.3.1 + react-slider@2.0.5(@babel/runtime@7.26.0)(react@18.3.1): dependencies: '@babel/runtime': 7.26.0 @@ -27723,6 +28442,8 @@ snapshots: es-errors: 1.3.0 internal-slot: 1.1.0 + 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.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7) @@ -28472,6 +29193,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 @@ -28494,6 +29219,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.4.0(react@18.3.1): dependencies: react: 18.3.1 @@ -28510,6 +29239,8 @@ snapshots: utila@0.4.0: {} + utility-types@3.11.0: {} + utils-merge@1.0.1: {} uuid@8.3.2: {} @@ -28522,6 +29253,8 @@ snapshots: '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 + validator@13.12.0: {} + varint@6.0.0: {} vary@1.1.2: {} diff --git a/projects/packages/jetpack-mu-wpcom/changelog/add-dashboard-launch-steps b/projects/packages/jetpack-mu-wpcom/changelog/add-dashboard-launch-steps new file mode 100644 index 0000000000000..e9dc98c26d272 --- /dev/null +++ b/projects/packages/jetpack-mu-wpcom/changelog/add-dashboard-launch-steps @@ -0,0 +1,4 @@ +Significance: minor +Type: added + +Dashboard: add launchpad diff --git a/projects/packages/jetpack-mu-wpcom/package.json b/projects/packages/jetpack-mu-wpcom/package.json index e57128d21c2c8..b1eb4ce00b3b4 100644 --- a/projects/packages/jetpack-mu-wpcom/package.json +++ b/projects/packages/jetpack-mu-wpcom/package.json @@ -33,6 +33,7 @@ "@babel/core": "7.26.0", "@babel/plugin-transform-react-jsx": "7.25.9", "@babel/preset-react": "7.26.3", + "@babel/runtime": "7.24.7", "@playwright/test": "1.48.2", "@types/node": "^20.4.2", "@types/react": "^18.2.28", @@ -48,9 +49,11 @@ "dependencies": { "@automattic/calypso-color-schemes": "3.1.3", "@automattic/color-studio": "4.0.0", + "@automattic/components": "2.2.0", "@automattic/i18n-utils": "1.2.3", "@automattic/jetpack-base-styles": "workspace:*", "@automattic/jetpack-shared-extension-utils": "workspace:*", + "@automattic/launchpad": "1.1.0", "@automattic/page-pattern-modal": "1.1.5", "@automattic/typography": "1.0.0", "@popperjs/core": "^2.11.8", @@ -73,6 +76,8 @@ "@wordpress/url": "4.16.0", "clsx": "2.1.1", "debug": "4.4.0", + "events": "^3.3.0", + "i18n-calypso": "7.0.0", "preact": "^10.13.1", "react": "^18.2.0", "react-dom": "^18.2.0", diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/celebrate-launch/celebrate-launch-modal.js b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/celebrate-launch/celebrate-launch-modal.js new file mode 100644 index 0000000000000..8dd7fb3ef00aa --- /dev/null +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-dashboard-widgets/celebrate-launch/celebrate-launch-modal.js @@ -0,0 +1,151 @@ +import { Gridicon, ConfettiAnimation } from '@automattic/components'; +import { Button, Modal, Tooltip } from '@wordpress/components'; +import { useCopyToClipboard } from '@wordpress/compose'; +import { useState, useEffect } from '@wordpress/element'; +import { Icon, copy } from '@wordpress/icons'; +import { useTranslate } from 'i18n-calypso'; +import { wpcomTrackEvent } from '../../../common/tracks'; + +import './celebrate-launch-modal.scss'; + +/** + * CelebrateLaunchModal component + * + * @param {object} props - Props. + * @param {Function} props.onRequestClose - Callback on modal close. + * @param {object} props.sitePlan - The site plan. + * @param {string} props.siteDomain - The site domain. + * @param {string} props.siteUrl - The site URL. + * @param {boolean} props.hasCustomDomain - Whether the site has a custom domain. + * + * @return {JSX.Element} The CelebrateLaunchModal component. + */ +export default function CelebrateLaunchModal( { + onRequestClose, + sitePlan = {}, + siteDomain: siteSlug, + siteUrl, + hasCustomDomain, +} ) { + const translate = useTranslate(); + const isPaidPlan = ! sitePlan.is_free; + const isBilledMonthly = sitePlan.product_slug?.includes( 'monthly' ); + const [ clipboardCopied, setClipboardCopied ] = useState( false ); + + useEffect( () => { + wpcomTrackEvent( `calypso_launchpad_celebration_modal_view`, { + product_slug: sitePlan.product_slug, + } ); + }, [ sitePlan.product_slug ] ); + + /** + * Render the upsell content. + * + * @return {JSX.Element} The upsell content. + */ + function renderUpsellContent() { + let contentElement; + let buttonText; + let buttonHref; + + if ( ! isPaidPlan && ! hasCustomDomain ) { + contentElement = ( +
+ { translate( + 'Supercharge your website with a {{strong}}custom address{{/strong}} that matches your blog, brand, or business.', + { components: { strong: } } + ) } +
+ ); + buttonText = translate( 'Claim your domain' ); + buttonHref = `https://wordpress.com/domains/add/${ siteSlug }`; + } else if ( isPaidPlan && isBilledMonthly && ! hasCustomDomain ) { + contentElement = ( ++ { translate( + 'Interested in a custom domain? It’s free for the first year when you switch to annual billing.' + ) } +
+ ); + buttonText = translate( 'Claim your domain' ); + buttonHref = `https://wordpress.com/domains/add/${ siteSlug }`; + } else if ( isPaidPlan && ! hasCustomDomain ) { + contentElement = ( ++ { translate( + 'Your paid plan includes a domain name {{strong}}free for one year{{/strong}}. Choose one that’s easy to remember and even easier to share.', + { components: { strong: } } + ) } +
+ ); + buttonText = translate( 'Claim your free domain' ); + buttonHref = `https://wordpress.com/domains/add/${ siteSlug }`; + } else if ( hasCustomDomain ) { + return null; + } + + return ( ++ { translate( 'Now you can head over to your site and share it with the world.' ) } +
+{ siteSlug }
+