diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 81691ae7d7ac3..7261faafca68b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -2927,6 +2927,8 @@ importers: specifier: 6.0.1 version: 6.0.1(webpack@5.94.0) + projects/packages/newsletter-widget: {} + projects/packages/plans: {} projects/packages/plugin-deactivation: diff --git a/projects/packages/newsletter-widget/.gitattributes b/projects/packages/newsletter-widget/.gitattributes new file mode 100644 index 0000000000000..b0b228d4ad6ad --- /dev/null +++ b/projects/packages/newsletter-widget/.gitattributes @@ -0,0 +1,17 @@ +# Files not needed to be distributed in the package. +.gitattributes export-ignore +.github/ export-ignore +package.json export-ignore + +# Files to include in the mirror repo, but excluded via gitignore +# Remember to end all directories with `/**` to properly tag every file. +# /src/js/example.min.js production-include + +# Files to exclude from the mirror repo, but included in the monorepo. +# Remember to end all directories with `/**` to properly tag every file. +.gitignore production-exclude +changelog/** production-exclude +phpunit.xml.dist production-exclude +.phpcs.dir.xml production-exclude +tests/** production-exclude +.phpcsignore production-exclude diff --git a/projects/packages/newsletter-widget/.gitignore b/projects/packages/newsletter-widget/.gitignore new file mode 100644 index 0000000000000..140fd587d2d52 --- /dev/null +++ b/projects/packages/newsletter-widget/.gitignore @@ -0,0 +1,2 @@ +vendor/ +node_modules/ diff --git a/projects/packages/newsletter-widget/.phan/baseline.php b/projects/packages/newsletter-widget/.phan/baseline.php new file mode 100644 index 0000000000000..c7aa9a4dd4f30 --- /dev/null +++ b/projects/packages/newsletter-widget/.phan/baseline.php @@ -0,0 +1,12 @@ + [], + // 'directory_suppressions' => ['src/directory_name' => ['PhanIssueName1', 'PhanIssueName2']] can be manually added if needed. + // (directory_suppressions will currently be ignored by subsequent calls to --save-baseline, but may be preserved in future Phan releases) +]; diff --git a/projects/packages/newsletter-widget/.phan/config.php b/projects/packages/newsletter-widget/.phan/config.php new file mode 100644 index 0000000000000..3f5fee4e77ce5 --- /dev/null +++ b/projects/packages/newsletter-widget/.phan/config.php @@ -0,0 +1,13 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/projects/packages/newsletter-widget/CHANGELOG.md b/projects/packages/newsletter-widget/CHANGELOG.md new file mode 100644 index 0000000000000..721294abd00ad --- /dev/null +++ b/projects/packages/newsletter-widget/CHANGELOG.md @@ -0,0 +1,7 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + diff --git a/projects/packages/newsletter-widget/README.md b/projects/packages/newsletter-widget/README.md new file mode 100644 index 0000000000000..d7539f4fff0fe --- /dev/null +++ b/projects/packages/newsletter-widget/README.md @@ -0,0 +1,24 @@ +# newsletter-widget + +This package consumes the Calypso standalone app newsletter to render the Newsletter Widget in the wp-admin dashboard. + +## How to install newsletter-widget + +### Installation From Git Repo + +## Contribute + +## Get Help + +## Using this package in your WordPress plugin + +If you plan on using this package in your WordPress plugin, we would recommend that you use [Jetpack Autoloader](https://packagist.org/packages/automattic/jetpack-autoloader) as your autoloader. This will allow for maximum interoperability with other plugins that use this package as well. + +## Security + +Need to report a security vulnerability? Go to [https://automattic.com/security/](https://automattic.com/security/) or directly to our security bug bounty site [https://hackerone.com/automattic](https://hackerone.com/automattic). + +## License + +newsletter-widget is licensed under [GNU General Public License v2 (or later)](./LICENSE.txt) + diff --git a/projects/packages/newsletter-widget/changelog/.gitkeep b/projects/packages/newsletter-widget/changelog/.gitkeep new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/projects/packages/newsletter-widget/changelog/initial-version b/projects/packages/newsletter-widget/changelog/initial-version new file mode 100644 index 0000000000000..fb1837c901e51 --- /dev/null +++ b/projects/packages/newsletter-widget/changelog/initial-version @@ -0,0 +1,4 @@ +Significance: patch +Type: added + +Initial version. diff --git a/projects/packages/newsletter-widget/composer.json b/projects/packages/newsletter-widget/composer.json new file mode 100644 index 0000000000000..19b46babc3501 --- /dev/null +++ b/projects/packages/newsletter-widget/composer.json @@ -0,0 +1,59 @@ +{ + "name": "automattic/jetpack-newsletter-widget", + "description": "This package consumes the Calypso standalone app newsletter to render the Newsletter Widget in the wp-admin dashboard.", + "type": "jetpack-library", + "license": "GPL-2.0-or-later", + "require": { + "php": ">=7.2" + }, + "require-dev": { + "yoast/phpunit-polyfills": "^1.1.1", + "automattic/jetpack-changelogger": "@dev" + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "scripts": { + "build-development": "echo 'Add your build step to composer.json, please!'", + "build-production": "echo 'Add your build step to composer.json, please!'", + "phpunit": [ + "./vendor/phpunit/phpunit/phpunit --colors=always" + ], + "test-coverage": [ + "php -dpcov.directory=. ./vendor/bin/phpunit --coverage-php \"$COVERAGE_DIR/php.cov\"" + ], + "test-php": [ + "@composer phpunit" + ] + }, + "repositories": [ + { + "type": "path", + "url": "../../packages/*", + "options": { + "monorepo": true + } + } + ], + "minimum-stability": "dev", + "prefer-stable": true, + "extra": { + "autotagger": true, + "branch-alias": { + "dev-trunk": "0.1.x-dev" + }, + "changelogger": { + "link-template": "https://github.com/Automattic/jetpack-newsletter-widget/compare/v${old}...v${new}" + }, + "mirror-repo": "Automattic/jetpack-newsletter-widget", + "textdomain": "jetpack-newsletter-widget", + "version-constants": { + "::PACKAGE_VERSION": "src/class-newsletter-widget.php" + } + }, + "suggest": { + "automattic/jetpack-autoloader": "Allow for better interoperability with other plugins that use this package." + } +} diff --git a/projects/packages/newsletter-widget/package.json b/projects/packages/newsletter-widget/package.json new file mode 100644 index 0000000000000..9b30cb437e6a0 --- /dev/null +++ b/projects/packages/newsletter-widget/package.json @@ -0,0 +1,25 @@ +{ + "private": true, + "name": "@automattic/jetpack-newsletter-widget", + "version": "0.1.0-alpha", + "description": "This package consumes the Calypso standalone app newsletter to render the Newsletter Widget in the wp-admin dashboard.", + "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/packages/newsletter-widget/#readme", + "bugs": { + "url": "https://github.com/Automattic/jetpack/labels/[Package] Newsletter Widget" + }, + "repository": { + "type": "git", + "url": "https://github.com/Automattic/jetpack.git", + "directory": "projects/packages/newsletter-widget" + }, + "license": "GPL-2.0-or-later", + "author": "Automattic", + "scripts": { + "build": "echo 'Not implemented.'", + "build-js": "echo 'Not implemented.'", + "build-production": "echo 'Not implemented.'", + "build-production-js": "echo 'Not implemented.'", + "clean": "true" + }, + "devDependencies": {} +} diff --git a/projects/packages/newsletter-widget/phpunit.xml.dist b/projects/packages/newsletter-widget/phpunit.xml.dist new file mode 100644 index 0000000000000..3223c32458db2 --- /dev/null +++ b/projects/packages/newsletter-widget/phpunit.xml.dist @@ -0,0 +1,14 @@ + + + + tests/php + + + + + + + src + + + diff --git a/projects/packages/newsletter-widget/src/class-newsletter-widget.php b/projects/packages/newsletter-widget/src/class-newsletter-widget.php new file mode 100644 index 0000000000000..581df9d162428 --- /dev/null +++ b/projects/packages/newsletter-widget/src/class-newsletter-widget.php @@ -0,0 +1,16 @@ + + + + diff --git a/projects/packages/newsletter-widget/tests/php/bootstrap.php b/projects/packages/newsletter-widget/tests/php/bootstrap.php new file mode 100644 index 0000000000000..46763b04a2cdb --- /dev/null +++ b/projects/packages/newsletter-widget/tests/php/bootstrap.php @@ -0,0 +1,11 @@ +