{ "name": "hostinger-reach", "private": true, "description": "Hostinger Reach", "scripts": { "auth:gcp": "gcloud auth application-default login", "auth:gca": "npx google-artifactregistry-auth", "dev:vue-frontend": "webpack --config webpack.config.js --env target=assets --mode development --watch", "dev:blocks": "webpack --config webpack.config.js --env target=subscription --mode development --watch", "build:vue-frontend": "webpack --config webpack.config.js --env target=assets --mode production", "build:blocks": "webpack --config webpack.config.js --env target=subscription --mode production", "build:all": "npm run sync:cursor-skills && npm run build:vue-frontend && npm run build:blocks", "prepare": "npm run sync:cursor-skills && husky", "lint:php": "vendor/bin/phpcs", "lint:php:fix": "vendor/bin/phpcbf", "lint:frontend": "cd frontend/vue && eslint .", "lint:frontend:fix": "cd frontend/vue && eslint . --fix", "lint:all": "npm run lint:php && npm run lint:frontend", "test:vue": "vitest --run", "test:vue:watch": "vitest --watch", "test:vue:ui": "vitest --ui", "test:coverage": "vitest --run --coverage", "sync:cursor-skills": "npx @hostinger/wp-plugin-toolkit sync-cursor-skills" }, "lint-staged": { "*.php": [ "npm run lint:php" ], "frontend/vue/**/*.{ts,vue}": [ "npm run lint:frontend" ] }, "optionalDependencies": { "@rollup/rollup-linux-x64-gnu": "4.52.3" }, "devDependencies": { "@hostinger/wp-plugin-toolkit": "^1.1.0", "@rushstack/eslint-patch": "^1.12.0", "@vitejs/plugin-vue": "^6.0.2", "@vitest/coverage-v8": "^4.0.8", "@vue/test-utils": "^2.4.6", "@wordpress/babel-preset-default": "^8.34.0", "@wordpress/scripts": "^31.6.0", "copy-webpack-plugin": "^13.0.1", "css-minimizer-webpack-plugin": "^5.0.1", "eslint": "^9.32.0", "husky": "^9.1.7", "jsdom": "^25.0.1", "lint-staged": "^16.1.2", "mini-css-extract-plugin": "^2.9.2", "sass": "^1.89.2", "sass-loader": "^16.0.5", "terser-webpack-plugin": "^5.3.14", "ts-loader": "^9.5.2", "tsx": "^4.20.3", "typescript": "^5.8.3", "vite": "^7.2.7", "vitest": "^4.0.8", "vue": "^3.5.17", "vue-loader": "^16.8.3", "webpack": "^5.99.9", "webpack-cli": "^6.0.1" }, "engines": { "node": ">=20.17.0", "npm": ">=9.0.0" }, "browserslist": [ "last 2 versions" ], "babel": { "presets": [ "@babel/preset-env" ] }, "dependencies": { "@babel/runtime": "^7.28.4", "@hostinger/hcomponents": "^14.0.2", "@wordpress/api-fetch": "^7.34.0", "@wordpress/block-editor": "^15.7.0", "@wordpress/blocks": "^15.7.0", "@wordpress/components": "^30.7.0", "@wordpress/jest-console": "^8.34.0", "@wordpress/server-side-render": "^6.10.0", "esbuild": "^0.27.0", "html-entities": "^2.6.0", "pinia": "^2.2.6", "pinia-plugin-persistedstate": "^3.2.1", "vue-router": "^4.5.1" }, "overrides": { "diff": "^8.0.3", "fsevents": "2.3.2", "serialize-javascript": "^7.0.3", "immutable": "^5.1.5", "svgo": "^3.3.3", "minimatch": "^10.2.3", "webpack-dev-server": "^5.2.1", "legacy-javascript": "npm:empty-npm-package@^1.0.0" } }