diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..c90f43ca4 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,36 @@ +# This file is for unifying the coding style for different editors and IDEs +# editorconfig.org + +# WordPress Coding Standards +# https://make.wordpress.org/core/handbook/coding-standards/ + +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_style = tab +insert_final_newline = true +trim_trailing_whitespace = true + +[*.css] +indent_style = tab +indent_size = 4 + +[*.scss] +indent_style = tab +indent_size = 4 + +[*.json] +indent_style = space +indent_size = 4 + +[*.txt] +end_of_line = crlf + +[*.{yml,yaml}] +indent_style = space +indent_size = 2 + +[*.md] +trim_trailing_whitespace = false diff --git a/composer.json b/composer.json index 15a2d4a5b..392d7d88b 100644 --- a/composer.json +++ b/composer.json @@ -1,85 +1,103 @@ { - "name": "osomstudio/juniper", - "type": "project", - "license": "MIT", - "description": "", - "homepage": "https://github.com/osomstudio/juniper", - "authors": [ - { - "name": "OsomStudio", - "homepage": "https://osomstudio.com" - } - ], - "keywords": [ - "juniper", "timber", "bedrock", "composer", "roots", "wordpress", "wp", "wp-config" - ], - "support": { - "issues": "https://github.com/osomstudio/juniper/issues" - }, - "repositories": [ - { - "type": "composer", - "url": "https://wpackagist.org", - "only": ["wpackagist-plugin/*", "wpackagist-theme/*"] - }, - { - "type": "composer", - "url": "https://pivvenit.github.io/acf-composer-bridge/composer/v3/wordpress-plugin/" - } - ], - "require": { - "php": ">=7.1", - "composer/installers": "^1.12", - "vlucas/phpdotenv": "*", - "oscarotero/env": "^2.1", - "roots/bedrock-autoloader": "^1.0", - "roots/bedrock-disallow-indexing": "^2.0", - "roots/wordpress": "6.4.3", - "roots/wp-config": "1.0.0", - "roots/wp-password-bcrypt": "1.0.0", - "soberwp/models": "dev-master", - "wpackagist-plugin/contact-form-7": "5.7.5.1", - "wpackagist-plugin/wordpress-seo": "*", - "wpackagist-plugin/w3-total-cache": "2.3.1", - "wpackagist-plugin/contact-form-7-honeypot":"2.1.1", - "wpackagist-plugin/webp-express":"0.25.5", - "wpackagist-plugin/svg-support":"2.5.5", - "advanced-custom-fields/advanced-custom-fields-pro": "6.1.2" - }, - "require-dev": { - "squizlabs/php_codesniffer": "^3.6.0", - "roave/security-advisories": "dev-latest", - "wp-coding-standards/wpcs": "*" - }, - "config": { - "optimize-autoloader": true, - "preferred-install": "dist", - "allow-plugins": { - "pivvenit/acf-pro-installer": true, - "composer/installers": true, - "roots/wordpress-core-installer": true - } - }, - "minimum-stability": "dev", - "prefer-stable": true, - "extra": { - "installer-paths": { - "web/app/mu-plugins/{$name}/": ["type:wordpress-muplugin"], - "web/app/plugins/{$name}/": ["type:wordpress-plugin"], - "web/app/themes/{$name}/": ["type:wordpress-theme"] - }, - "wordpress-install-dir": "web/wp" - }, - "scripts": { - "post-root-package-install": [ - "php -r \"copy('.env.example', '.env');\"" + "name": "osomstudio/juniper", + "type": "project", + "license": "MIT", + "homepage": "https://github.com/osomstudio/juniper", + "authors": [ + { + "name": "OsomStudio", + "homepage": "https://osomstudio.com" + } ], - "test": [ - "phpcs" + "keywords": [ + "juniper", + "timber", + "bedrock", + "composer", + "roots", + "wordpress", + "wp", + "wp-config" ], - "start": [ - "composer install", - "cd web/app/themes/* && npm install && composer install" - ] - } + "support": { + "issues": "https://github.com/osomstudio/juniper/issues" + }, + "repositories": [ + { + "type": "composer", + "url": "https://wpackagist.org", + "only": [ + "wpackagist-plugin/*", + "wpackagist-theme/*" + ] + }, + { + "type": "composer", + "url": "https://connect.advancedcustomfields.com" + } + ], + "require": { + "php": ">=8.1", + "composer/installers": "^2.2", + "vlucas/phpdotenv": "^5.5", + "oscarotero/env": "^2.1", + "roots/bedrock-autoloader": "^1.0", + "roots/bedrock-disallow-indexing": "^2.0", + "roots/wordpress": "^6.5", + "roots/wp-config": "1.0.0", + "roots/wp-password-bcrypt": "^1.1", + "wpackagist-plugin/contact-form-7": "5.7.5.1", + "wpackagist-plugin/wordpress-seo": "*", + "wpackagist-plugin/w3-total-cache": "2.3.1", + "wpackagist-plugin/contact-form-7-honeypot": "2.1.1", + "wpackagist-plugin/webp-express": "0.25.5", + "wpackagist-plugin/svg-support": "2.5.5", + "wpengine/advanced-custom-fields-pro": "^6.2" + }, + "require-dev": { + "roave/security-advisories": "dev-latest", + "squizlabs/php_codesniffer": "^3.6.0", + "wp-coding-standards/wpcs": "^3.1" + }, + "extra": { + "installer-paths": { + "web/app/mu-plugins/{$name}/": [ + "type:wordpress-muplugin" + ], + "web/app/plugins/{$name}/": [ + "type:wordpress-plugin" + ], + "web/app/themes/{$name}/": [ + "type:wordpress-theme" + ] + }, + "wordpress-install-dir": "web/wp" + }, + "scripts": { + "post-root-package-install": [ + "php -r \"copy('.env.example', '.env');\"" + ], + "test": [ + "phpcs --standard=WordPress-Extra -snp --basepath=. --ignore=vendor,node_modules --extensions=php --exclude=WordPress.Files.FileName ./web/app/themes" + ], + "start": [ + "composer install", + "cd web/app/themes/* && npm install && composer install" + ] + }, + "config": { + "optimize-autoloader": true, + "preferred-install": "dist", + "allow-plugins": { + "composer/installers": true, + "roots/wordpress-core-installer": true, + "dealerdirect/phpcodesniffer-composer-installer": true + }, + "sort-packages": true, + "platform": { + "php": "8.1" + } + }, + "minimum-stability": "dev", + "prefer-stable": true } diff --git a/web/app/themes/juniper-theme/composer.json b/web/app/themes/juniper-theme/composer.json index 436e80f94..2b0f62937 100644 --- a/web/app/themes/juniper-theme/composer.json +++ b/web/app/themes/juniper-theme/composer.json @@ -1,24 +1,31 @@ { "name": "junipertheme/junipertheme", "type": "library", - "require": { - "timber/timber": "^2.0", - "bartnovak/timber-acf-wp-blocks": "^0.1.0" - }, - "autoload": { - "psr-4": { - "Juniper\\": "inc" - } - }, "authors": [ { "name": "bartnovak", "email": "b.nowak@osomstudio.com" } ], + "autoload": { + "psr-4": { + "Juniper\\": "inc" + } + }, + "require": { + "php": ">=8.1", + "timber/timber": "^2.0", + "bartnovak/timber-acf-wp-blocks": "^0.1.0" + }, "config": { + "optimize-autoloader": true, + "preferred-install": "dist", "allow-plugins": { "composer/installers": true + }, + "sort-packages": true, + "platform": { + "php": "8.1" } } } diff --git a/web/app/themes/juniper-theme/package.json b/web/app/themes/juniper-theme/package.json index 9b4ad96fe..c712d301c 100644 --- a/web/app/themes/juniper-theme/package.json +++ b/web/app/themes/juniper-theme/package.json @@ -1,29 +1,24 @@ { "name": "parcel-juniper-theme", "version": "1.0.0", - "description": "", - "repository": { - "type": "git", - "url": "" - }, "dependencies": { - "@barba/core": "^2.9.7", - "@barba/prefetch": "^2.1.10", - "bootstrap": "^5.1.3", - "cypress": "^12.0.2", - "imagesloaded": "^4.1.4", - "jquery": "^3.6.0", - "postcss": "^8.3.6" + "@barba/core": "^2.9", + "@barba/prefetch": "^2.1", + "bootstrap": "^5.3", + "cypress": "^13.9", + "imagesloaded": "^5.0", + "jquery": "^3.7", + "postcss": "^8.4" }, "devDependencies": { - "@parcel/transformer-sass": "^2.5.0", - "eslint": "^8.40.0", - "eslint-config-airbnb-base": "^15.0.0", - "husky": "^4.3.8", - "litepicker": "^2.0.11", - "parcel": "^2.5.0", - "sass": "^1.26.5", - "browserslist": "^4.21.9" + "@parcel/transformer-sass": "^2.12", + "browserslist": "^4.23", + "eslint": "^8.56", + "eslint-config-airbnb-base": "^15.0", + "husky": "^9.0", + "litepicker": "^2.0", + "parcel": "^2.12", + "sass": "^1.77" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1",