{"_id":"@syngrisi/syngrisi","_rev":"82-040e8a9ef4f504778ed20e19a3cfe87e","name":"@syngrisi/syngrisi","dist-tags":{"latest":"3.19.1"},"versions":{"2.2.1":{"name":"@syngrisi/syngrisi","version":"2.2.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"1e1fb049db1ce11df75c6574231f36df0aa210ab","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.1.tgz","fileCount":387,"integrity":"sha512-NhiAbVYc7MTKVR4kxW4+Qkcq7sFf7uSX33f7o/2kbLt+JNuIcXMipnbvd68CEzDyN/GIR8ti0XjhvRdDESG+pw==","signatures":[{"sig":"MEQCIGfbxCSS1nleFrBRymjG2LtPmCEcB9eu5efxm1EuWH+PAiAXe+A8ACupdgI89r2KNa1nJQYkYZds/sv4QlWZoYmlaw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8236133},"main":"server.js","engines":{"node":">=20"},"gitHead":"a0d3926ab3ce0c104e75f1e41f3be19211442142","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests' server.js","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server && tsc -b --verbose","clean:server":"rm -rf dist","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"10.1.0","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.22.4","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","express-fileupload":"^1.4.0","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","vite":"^3.0.9","eslint":"^8.53.0","parcel":"^2.10.2","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/mongoose":"^5.11.97","@types/react-dom":"^18.0.6","@vitejs/plugin-react":"^2.0.0","@typescript-eslint/parser":"^6.11.0","@typescript-eslint/eslint-plugin":"^6.11.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.1_1701502061426_0.02616719257585043","host":"s3://npm-registry-packages"}},"2.2.2":{"name":"@syngrisi/syngrisi","version":"2.2.2","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.2","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"31b1a21efe27ce858ff4d4f96f112193f7401ce0","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.2.tgz","fileCount":387,"integrity":"sha512-73qSWWWxSx0a9rFwG9b7McLqjs8Pp7MGjfBLOlOjpSoKWniqvbxceKG/nhtrArZLjTeEeQrj0Ncyr/6cD/uOeg==","signatures":[{"sig":"MEUCIGl88t2tT5OPmhZPpFlaAA6JffzhzZemL4ahWvGIRuaOAiEA//RRNu79vDzvrqNHr/Lx3q7TNcxD5C05RiuKDDoJ5aI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8236208},"main":"server.js","engines":{"node":">=20"},"gitHead":"c65cb44b70f41cc4e20fa4efdb30a6e6bff654bd","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests' server.js","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server && tsc -b --verbose","clean:server":"rm -rf dist","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+x64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.22.4","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","express-fileupload":"^1.4.0","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","vite":"^3.0.9","eslint":"^8.53.0","parcel":"^2.10.2","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/mongoose":"^5.11.97","@types/react-dom":"^18.0.6","@vitejs/plugin-react":"^2.0.0","@typescript-eslint/parser":"^6.11.0","@typescript-eslint/eslint-plugin":"^6.11.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.2_1701507745604_0.25463663793810043","host":"s3://npm-registry-packages"}},"2.2.3":{"name":"@syngrisi/syngrisi","version":"2.2.3","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.3","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"e4585d0930baf54d15a33397d131aeee7c72a070","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.3.tgz","fileCount":387,"integrity":"sha512-rBi/Peg7z2+noRGgN9aBLIwgIwNZKggb7nWpSr0tj/M36wf75G3r8Mb6E/qDtFOXW4odds1Y62KWENGtX2fwtA==","signatures":[{"sig":"MEYCIQCGnIIoEtKfEn8noSkTlZMAI01dC9oMgnSViz2L5MwcygIhANuk4GAesc2xor0Ary28dB3RZF6k9GvCXbTeZ5/vvy5E","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8236215},"main":"server.js","engines":{"node":">=20"},"gitHead":"d5b7c9661e69189fcbb7f8e3ff119a725c69c737","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests' server.js","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server && tsc -b --verbose","clean:server":"rm -rf dist","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+x64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.22.4","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","express-fileupload":"^1.4.0","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","vite":"^3.0.9","eslint":"^8.53.0","parcel":"^2.10.2","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/mongoose":"^5.11.97","@types/react-dom":"^18.0.6","@vitejs/plugin-react":"^2.0.0","@typescript-eslint/parser":"^6.11.0","@typescript-eslint/eslint-plugin":"^6.11.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.3_1702985907279_0.23094627576253668","host":"s3://npm-registry-packages"}},"2.2.6-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.6-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.6-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"0afec4914358b20fba0df930699fc31bfcacb68b","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.6-alpha.0.tgz","fileCount":750,"integrity":"sha512-zG4ttmFcMc2wU8ytGvnvYWYY6I2zAzhtsj1YaLbKqznGYjJh1EKfJNwiuR6oHYzmf8mC3FBx525bZS0PzB2LhA==","signatures":[{"sig":"MEYCIQCtUIV+qwGu7Gb1g5wIwAuUvzsuzABfgHKRDqA+5juWdwIhAIY2EMqgOV6/Ahq39bvkGabO4lKwVfE4vet9UOUXBwLn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935206},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"b1281d2a63a03a85781d81bc6de00c765efdb34d","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.6-alpha.0_1737105230322_0.19584163260717258","host":"s3://npm-registry-packages-npm-production"}},"2.2.7-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.7-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.7-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"1f3f921f083f453b7141c181e2cb05f382b7eed2","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.7-alpha.0.tgz","fileCount":750,"integrity":"sha512-c2iQGXUPQaYx502SdD82Cf9hrU1/OSA6fOkUDElEKOnyRzNKuHQ2x3PjfvSBx1w+G91gdh++qmH7dVnJ3RqxRg==","signatures":[{"sig":"MEQCICt1ckcNe2jotF3kV6HA2mhQB/bVsKR3+WvjdbeNxy6wAiB7nmhX90HYqIWJkELNlrn/C08erh/y5Km7k2xmKZH0wQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26935220},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"57c6a0fe6a65e619c9b61cf1bab75784ea40a8e9","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.7-alpha.0_1737107931900_0.6795694789534399","host":"s3://npm-registry-packages-npm-production"}},"2.2.8-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.8-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.8-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"c592aae154af4b445e80744d6d9ed121d8745248","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.8-alpha.0.tgz","fileCount":750,"integrity":"sha512-ylztqQN91c9B+6gCkD0pLo4KFtG7AQKfYty5cQoqMkLHi67eBLHzUfRHLXfge0nFc+hhgHLtmx0VNl0g6GJxUw==","signatures":[{"sig":"MEUCIQDkoR4WK1eoOy3L6TuTbXwHMviAtXi8H/X/MviNmjQG5QIgYd4EC0ePTKuE/twBPjxR7qj/iYzzA65PrqPRUs3SR1U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26912182},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"ae9ac2bcacffc6e5eb93160d3f5566ee729fdec7","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.8-alpha.0_1737108304055_0.2648325620792831","host":"s3://npm-registry-packages-npm-production"}},"2.2.9-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.9-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.9-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"b0be44db11cbc1176dadfb892d8eacc654f72ccd","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.9-alpha.0.tgz","fileCount":750,"integrity":"sha512-/NB8uKQ17pa4huGBv9w33isp1GT9oGIlzLBsOpyoi3yEaTy3zMq2IuVnJual7rY9+E4OoqKtOoIDeLCJjYmifQ==","signatures":[{"sig":"MEYCIQCbq2AhhtRoutUkWOXb/zPhL7HiU3/4g58RnIyEKm5gGAIhAIM7NnZqfyee0MNUN8Zg7p54DkHFJeaqapJTuyMHACsd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26934306},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"ea53faa88eea174cbe3cc316dcf18c96ba0c7849","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.9-alpha.0_1737109262290_0.5725087905374295","host":"s3://npm-registry-packages-npm-production"}},"2.2.10-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.10-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.10-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"06f2e40506f65c37b6ee2a77de4f6eebc4a338e1","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.10-alpha.0.tgz","fileCount":750,"integrity":"sha512-QM3lr4yFNkVgDb/WCQWlTPQzTUPM5U6zjpMtTv+BFVS5t3zOMT35FspIttvTfmNy12nL6/NNFZF3RXrqxfK4ew==","signatures":[{"sig":"MEUCICyCuoqIM/DYB2fCRHmNkwH4ZQNsrAsEaR48Zpui+U0NAiEAjhhNS6EJ8p/LmDhY2z2KHE1lInQjhe3PDLsNE5GEUU4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26934065},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"b5f5d17f816d72f307844f17bd3c1a144337c26e","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.10-alpha.0_1737110182219_0.48722861093060765","host":"s3://npm-registry-packages-npm-production"}},"2.2.11-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.11-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.11-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"4d4bd9ba24b22a156715ef45c38848528e60d0d9","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.11-alpha.0.tgz","fileCount":750,"integrity":"sha512-FqVmWR8PgbwSd6KFMP7hWMLFIMThe6G8tXrCxF7jGgH5GJGIVOxRdhtQCx3ZUnYRfy2NrENeKiXv0Qz0PIiseg==","signatures":[{"sig":"MEUCIQCSSGu2/5Q44+6wWocrXq7WgBtalZh3e0ywKDe/2RRUDAIgA3o/j8FPNaY+X15zDhWEFEdSnkeZhPPLUvcZS/24e7M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26934702},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"a230fb29e0a6f190a8704c05562822c84e84fac7","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.11-alpha.0_1737110623055_0.15216066236923265","host":"s3://npm-registry-packages-npm-production"}},"2.2.12-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.12-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.12-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"426f9de032586d5aee1cbcb7509ef8d1dcad8208","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.12-alpha.0.tgz","fileCount":750,"integrity":"sha512-blrU444W1N0UR2JbO16Dbl1ley6tvLXIorOueZgQ/+ZkPJ6MtTRHoK0OsKtXHGaMNnx53uVSoouODUCBnF+pKw==","signatures":[{"sig":"MEQCICi95KUlDxW91QrNzIQL+XPQn1eKlW2Lc69PWBkdeXi2AiBunGqufAQPm+nDXJAtU+8x8wmdnAT3k7uiKMWu7TIFnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26934924},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"ff5e12fc182cae63d8dfb8c56c419f95b4bfdafd","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.12-alpha.0_1737112329708_0.3085574067520027","host":"s3://npm-registry-packages-npm-production"}},"2.2.14-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.14-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.14-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"1952f630bc99c124ecff6aac0ac4a6a6baa53f5e","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.14-alpha.0.tgz","fileCount":750,"integrity":"sha512-xudVrlb4bJ/qcGFGfzswar1Kcnw+ZXA038N4/M4KD1zKfmM/ZX5NkQJ19+V03QAfLHHPfYa5SoRkG0VcSMn37w==","signatures":[{"sig":"MEUCIQCq4W6fIX4B8P2dydS4D/9eErGvlVe7sFzm/bphhZbcAwIgM1/wVAWpTnBYLGNr4EMKxseC/AChjIs9/rMoUpDdRAo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26934906},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"db0ba10c5a4f66c67615d0de80157e9f55848b62","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.14-alpha.0_1737119402470_0.806408690636476","host":"s3://npm-registry-packages-npm-production"}},"2.2.15-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.15-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.15-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"2007b9864fb6d95d079ac1d9063ae81665218e62","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.15-alpha.0.tgz","fileCount":750,"integrity":"sha512-k9QvagNfMvFeOKkqgWJb+I2edsq+4uHWn+fZRRn1v9RW4C77BLrubjFbTTuiL0xb5LGSOWgCgV6StDYkKcKL1w==","signatures":[{"sig":"MEUCIQC6jNWw3m3o7soWnP8KQ9jbVA8Sbj83FeDguPpSV5VhKgIgKI3jBw2XJOFWxPpD6PzcPqsgwNMdq9LpuSoAYyGfjrU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27026984},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"2bacdae3e949e75a256a9b71eeb5ef43c479ea69","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.15-alpha.0_1737125327878_0.35365297002120677","host":"s3://npm-registry-packages-npm-production"}},"2.2.16-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.16-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.16-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"337e78927cadd219a875edd366bdaae00d76001e","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.16-alpha.0.tgz","fileCount":750,"integrity":"sha512-DVzFjPjBvRiqfZ7+wZnCMS+Oz9VmWLXh7zOe4SU0/cq/ZDm+L6SZwBgt9WjyiQo2bK31qgBu6m79is30kHZhVw==","signatures":[{"sig":"MEUCIDObWn9lE5kDfKHRSatd6PUjf5DekkCIB6vfMq2pQY9UAiEAsyxQIVnvNyZes6r1dc+aiLHHiqVle2PcpIdcrRlhhWA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27027484},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"233dfc4ccc884c741a3c3eb47d8fc7c44e8a220a","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.16-alpha.0_1737128635736_0.8320551278439752","host":"s3://npm-registry-packages-npm-production"}},"2.2.17-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.17-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.17-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"8ea457b67ad08b7abb508959fdfa1b4196938f61","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.17-alpha.0.tgz","fileCount":752,"integrity":"sha512-tC/F947j3dZxoFHIU3m9/LSm3mXZ10jCfN/SMAWBscOFr65KUfSlUFWGKiOj1cd6ft28MtDOKGMpp2odidSSzw==","signatures":[{"sig":"MEQCIBg2LNS2pPUpeURPPyBubs/2f/HqQCFLqCI6MC5ssBXnAiBRYCd711O2nlEJFW3c0CrMRAtHSKHS6lcT9/BeWctnYA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27085181},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"bddbb13bec1510edea5468282016ff959c46adb2","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.17-alpha.0_1737267430754_0.03684701503640753","host":"s3://npm-registry-packages-npm-production"}},"2.2.18-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.18-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.18-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"fa16e420f4e40d1fe720690422df02649f10211f","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.18-alpha.0.tgz","fileCount":753,"integrity":"sha512-ir+7N3OjKFcJ3gkzdPfBCGdnCbUL17gXdiOTbCGb5ceby+XC6cUqtGzcu+fn58HFUICMaKjqZ0zV/twiyEBWaw==","signatures":[{"sig":"MEUCIQCxXQOOmF+xc+A8kP2qn+8nL/aqAdT6pbq7OhGyu1JR/QIgY1IKJQtiBZDSGrGzwHxfUTEnSVTnTDV1VkhAIAMjey0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27086231},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"1ea7d2786b0b8da57067d9d34fe2c31ba5029a57","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^3.0.9","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"^4.3.2","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.18-alpha.0_1737274627602_0.1982663218886409","host":"s3://npm-registry-packages-npm-production"}},"2.2.21-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.21-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.21-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"82f9d30ea3d275fad733376f9d677d63bb94ffb8","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.21-alpha.0.tgz","fileCount":759,"integrity":"sha512-5lPS28kVkRSxYpsSqv4nPT/auW/+o/fX9NOXGLdDXoxxfMktynAM0e4JXjxyPTZpGD0WLtW4jFAp5C8h9ROnTQ==","signatures":[{"sig":"MEYCIQCwjBD5kSUsXeyx9orJPHOh+2vU02/BJO3KwUetkk8ikAIhAMvCRC1QC8Z+reooSgKcwZHtrshBXz1cKq4pYqIFMu8C","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43573758},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"1af251401526e01f2531e028ad937059b0e419ed","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^6.0.7","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"5.1.4","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.21-alpha.0_1737282952152_0.5337899836841011","host":"s3://npm-registry-packages-npm-production"}},"2.2.22-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.22-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.22-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"7cfbbd79b1ca6d3175710b3dd623309fef7c998d","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.22-alpha.0.tgz","fileCount":759,"integrity":"sha512-YqmHya1YZve+8eU1A+fV6rbYhuomZCyKlk6SLTswE/Z7cVbfGQ5uNj2M4yvdEdtYycmAZJtMzmYfQHGrAraoSw==","signatures":[{"sig":"MEQCICXpTUI1mVR7ECHYlcWKWco5G6x30fe0GuUn5I4KB0uQAiBhUmRHaupyXXN3mCPbPHp/hFbG7qQr0Kj9G6yX2spObw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43573786},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"2784ba41065db810f8cf44defacd9fc91781bf3a","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^6.0.7","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"5.1.4","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.22-alpha.0_1737283804041_0.19305238015149562","host":"s3://npm-registry-packages-npm-production"}},"2.2.23-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.23-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.23-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"77129ed253b53a115cd06fd8e5f75929aea0b4ee","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.23-alpha.0.tgz","fileCount":759,"integrity":"sha512-suuhQQa3oKYCtHcv90UPIixm4ae2FK2NCU4McqptMrlhzLn9X7W4mJjpo6h5fotvHWYRMFa6ERmIur4e2VI0gg==","signatures":[{"sig":"MEYCIQDYoyEPgtvr5a7HLozuLG93Y23oqPlc5o+kqAWDyIqgaQIhALQZxB/rVsicrE++rlNQYHCtqFk2V4fy91Mkc/9k0gDP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41362779},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"b6601f3777f446e20a030bb16172441cbaee47ea","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^6.0.7","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"5.1.4","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.23-alpha.0_1737284333256_0.6066985410220407","host":"s3://npm-registry-packages-npm-production"}},"2.2.24-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.24-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.24-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"933b4f312b79adacf419c4d56eb4ac91c8f7bd2a","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.24-alpha.0.tgz","fileCount":759,"integrity":"sha512-w8TaNazOZ4IBGCQQUCLN9hl6PY10ZjLyV/RlVSB8YRHxt/aQpnHGwo6G/Wxt1ChfNvEsksnbmVhA1GgDd/dILg==","signatures":[{"sig":"MEUCIQDn1g/wyx8qrJBC84HCto9mE5wBhM3XIYblnq1jvhVBjwIgATHDRyh2iK47Hi+NgFtXYByygROMVYdIgcy+StPSlxE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41366988},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"8d992fe9e6f003b62e32befec76eaed8b29a7594","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^6.0.7","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"5.1.4","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.24-alpha.0_1737287451475_0.6282396587304133","host":"s3://npm-registry-packages-npm-production"}},"2.2.26-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.26-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.26-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"9a570db3b1478ca808839bed6f20f4584755996b","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.26-alpha.0.tgz","fileCount":759,"integrity":"sha512-ofk/wo18d63q7yCI9otFX62K9lwCRK+Xfo76plxc/cJY0eQXot0mHjTyLubdIuiiHB6A+yncaV0roiG5vKZaZQ==","signatures":[{"sig":"MEQCIElz3D8HuwDuNdKiuG/nGjx+4F0zm3ZTwaYx1mRri+7KAiBmto2BRoBHn8hkj/t6Bl6L+xlBIM0jjdjGEb6dCJ7JQA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41367157},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"f8ba257da1e64e63af750a956693656f66cb3720","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^6.0.7","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"5.1.4","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.26-alpha.0_1737290828586_0.3868110892979624","host":"s3://npm-registry-packages-npm-production"}},"2.2.27-alpha.0":{"name":"@syngrisi/syngrisi","version":"2.2.27-alpha.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.27-alpha.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"133b3b995266adda6414876dbd46b1df3c3ab503","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.27-alpha.0.tgz","fileCount":759,"integrity":"sha512-01memvRondeGoSglCP3UhnSN5KkYXdA4MrsiwquAW5joUzeaCqa4aqanyE/ln4ulKeEulWiySwADa2VSbSlwpw==","signatures":[{"sig":"MEQCIGl9LzoqP42z6Z2AAfiLBfF17J1XD8rYXh8eg4wjY8LyAiA5XIPLxaBCHY9+vQvPrRVPwgKlKG9G2owBR5TGbgzyog==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41388889},"main":"./dist/server/server.js","type":"commonjs","engines":{"node":">=20"},"gitHead":"fa622876bf565ec6e96c86f6b5343ed32e515a7e","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.23.8","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","helmet":"^7.1.0","envalid":"^8.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","@types/compression":"^1.7.5","express-fileupload":"^1.5.0","source-map-support":"^0.5.21","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.2.27-alpha.0","eslint-plugin-custom-rules":"^0.0.0","@asteasolutions/zod-to-openapi":"^7.0.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","tsup":"^8.1.0","vite":"^6.0.7","eslint":"^8.57.0","parcel":"^2.10.2","rimraf":"^5.0.7","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/express":"^4.17.21","@types/mongoose":"^5.11.97","@types/passport":"^1.0.16","@playwright/test":"^1.43.1","@types/react-dom":"^18.0.6","vite-tsconfig-paths":"5.1.4","@types/cookie-parser":"^1.4.7","@vitejs/plugin-react":"^2.0.0","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.0","@types/express-fileupload":"^1.5.0","@types/swagger-ui-express":"^4.1.6","@typescript-eslint/parser":"^6.21.0","@typescript-eslint/eslint-plugin":"^6.21.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.27-alpha.0_1742207124645_0.328957423595136","host":"s3://npm-registry-packages-npm-production"}},"2.2.5":{"name":"@syngrisi/syngrisi","version":"2.2.5","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.2.5","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"dfc81d47f45c9658cc75c740968404d392a5d3ae","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.2.5.tgz","fileCount":385,"integrity":"sha512-ONaE/V+436wuWUvZI1xUO+esapHkKbp5hc8oEThwNGVcZPuqbV5slxQsyZiGOarV6qdsc+ONT710K5hdEL9jJw==","signatures":[{"sig":"MEQCICtcAXZWJC6t5lWQJ6HIY9BqdBlSM0BNXNpgpPvzOackAiBm08tyR6wWE8VNz20U0v9VAEX9FEzL1Llmvp4mqrT00g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8276138},"main":"server.js","engines":{"node":">=20"},"gitHead":"06dbc4ee1d5b629755be7230d7c73b324a526d16","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests' server.js","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server && tsc -b --verbose","clean:server":"rm -rf dist","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.9.0+x64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.9.0","dependencies":{"zod":"^3.22.4","bson":"^5.5.1","pino":"^8.16.1","chalk":"^4.1.2","hasha":"^5.1.0","dotenv":"^16.0.0","express":"^4.18.2","nodemon":"^3.0.1","p-queue":"^6.4.0","winston":"^3.11.0","mongoose":"^7.6.4","passport":"^0.6.0","pino-http":"^8.5.1","bottleneck":"^2.19.5","body-parser":"^1.19.0","compression":"^1.7.4","http-status":"^1.5.2","uuid-apikey":"^1.5.2","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.6","passport-local":"^1.0.0","express-session":"^1.17.1","winston-mongodb":"^5.1.1","@inquirer/prompts":"^3.3.0","express-fileupload":"^1.4.0","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.1.36-alpha.0"},"_hasShrinkwrap":false,"devDependencies":{"c8":"^8.0.1","sass":"^1.54.0","vite":"^3.0.9","eslint":"^8.53.0","parcel":"^2.10.2","cross-env":"^7.0.3","form-data":"^4.0.0","typescript":"^5.2.2","@types/node":"^20.9.0","@types/react":"^18.0.15","babel-eslint":"^10.1.0","@types/fabric":"^4.5.12","@types/jquery":"^3.5.14","@types/mongoose":"^5.11.97","@types/react-dom":"^18.0.6","@vitejs/plugin-react":"^2.0.0","@typescript-eslint/parser":"^6.11.0","@typescript-eslint/eslint-plugin":"^6.11.0"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.2.5_1745900597182_0.624434354304467","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@syngrisi/syngrisi","version":"2.3.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.3.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"c531c08fed62761e7a656374453d93481e372259","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.3.0.tgz","fileCount":801,"integrity":"sha512-tJR/v/BqIwrtQsO2aArJ+uCQPQvXjxIEGc/5ukRNIEM3Uj673ibGq/ZbFjlfq6QE/n5cJS3v85x4iSBuORhonw==","signatures":[{"sig":"MEUCIQDjVsDeEWqwhl81wKRnKH8YnfPwe/aWRrZbt/nR57I24gIgDHDekybChhKlXWeGNSNRtL8ycVlSDs/IEi+whkQwMzY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":91612917},"main":"./dist/server/server.js","type":"module","engines":{"node":">=20"},"gitHead":"b77d354875f86b564d5aebad465187885a040e87","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.19.2+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.19.2","dependencies":{"zod":"^4.1.12","pino":"^10.1.0","chalk":"^5.6.2","hasha":"^7.0.0","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.1.0","nodemon":"^3.1.11","p-queue":"^9.0.0","winston":"^3.18.3","mongoose":"^8.19.3","passport":"^0.7.0","pino-http":"^11.0.0","body-parser":"^2.2.0","compression":"^1.8.1","http-status":"^2.1.0","uuid-apikey":"^1.5.3","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.7","passport-local":"^1.0.0","express-session":"^1.18.2","winston-mongodb":"^7.0.1","@inquirer/prompts":"^7.10.1","@types/compression":"^1.8.1","express-fileupload":"^1.5.2","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.3.0","@asteasolutions/zod-to-openapi":"^8.1.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.94.0","tsup":"^8.5.1","vite":"^7.2.2","eslint":"^9.39.1","rimraf":"^6.1.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.4","@types/fabric":"^5.3.10","@types/express":"^5.0.5","playwright-bdd":"^8.4.1","@types/mongoose":"^5.11.97","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/cookie-parser":"^1.4.10","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.46.4","@typescript-eslint/eslint-plugin":"^8.46.4"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.3.0_1763394344831_0.6543621151981265","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@syngrisi/syngrisi","version":"2.3.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.3.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"99823759838894eee4ecd2c5b1f16a41aed96264","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.3.1.tgz","fileCount":801,"integrity":"sha512-govYfgr8MBq8vXuUrnw6IA/FlSHuny7pjC5JudRiXowcicx/bRWKGwSw/+JdJB6KZgkUTKcgUu+k6UpBxnuMeg==","signatures":[{"sig":"MEQCIAzNwJIRuqwGjwV03UlPdNMYK41PUBMsqKkQ3JMjBMs/AiACLupgOVtYEtcP7C2gWqsWUPnepCXUaZ1Ir0m6p0Qh2w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":91610750},"main":"./dist/server/server.js","type":"module","engines":{"node":">=20"},"gitHead":"a3c46bd96a0bd5b62ee241134a04fb563c471b34","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.19.2+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.19.2","dependencies":{"zod":"^4.1.12","pino":"^10.1.0","chalk":"^5.6.2","hasha":"^7.0.0","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.1.0","nodemon":"^3.1.11","p-queue":"^9.0.0","winston":"^3.18.3","mongoose":"^8.19.3","passport":"^0.7.0","pino-http":"^11.0.0","body-parser":"^2.2.0","compression":"^1.8.1","http-status":"^2.1.0","uuid-apikey":"^1.5.3","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.7","passport-local":"^1.0.0","express-session":"^1.18.2","winston-mongodb":"^7.0.1","@inquirer/prompts":"^7.10.1","@types/compression":"^1.8.1","express-fileupload":"^1.5.2","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.3.0","@asteasolutions/zod-to-openapi":"^8.1.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.94.0","tsup":"^8.5.1","vite":"^7.2.2","eslint":"^9.39.1","rimraf":"^6.1.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.4","@types/fabric":"^5.3.10","@types/express":"^5.0.5","playwright-bdd":"^8.4.1","@types/mongoose":"^5.11.97","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/cookie-parser":"^1.4.10","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.46.4","@typescript-eslint/eslint-plugin":"^8.46.4"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.3.1_1763397954265_0.4159112870842214","host":"s3://npm-registry-packages-npm-production"}},"2.3.2":{"name":"@syngrisi/syngrisi","version":"2.3.2","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.3.2","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"aa121a702872d8e8cdc2844600de812776ef7312","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.3.2.tgz","fileCount":804,"integrity":"sha512-zCKn5ny6SMSeiEM/Dfv1D3NaulYDFHtQSeAhW1XdsPT7mFG9DYzVnZ9+9JlhlUVQsrtkpvq3Yr7vcyalUMq8zg==","signatures":[{"sig":"MEUCIBudjKFDmE0LQxmxxNqdtr/QCmGhX6beNGy3lYdloKvnAiEAvNTyaQTZvwn4uewE3FxPWdmT07eSL8y6dyoTSsU4t6Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92293154},"main":"./dist/server/server.js","type":"module","engines":{"node":">=20"},"gitHead":"383eb6d0373a8ac9244995df25452f23dfd59e02","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.19.2+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.19.2","dependencies":{"zod":"^4.1.12","pino":"^10.1.0","chalk":"^5.6.2","hasha":"^7.0.0","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.1.0","nodemon":"^3.1.11","p-queue":"^9.0.0","winston":"^3.18.3","mongoose":"^8.19.3","passport":"^0.7.0","pino-http":"^11.0.0","body-parser":"^2.2.0","compression":"^1.8.1","http-status":"^2.1.0","uuid-apikey":"^1.5.3","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.7","passport-local":"^1.0.0","express-session":"^1.18.2","winston-mongodb":"^7.0.1","@inquirer/prompts":"^7.10.1","@types/compression":"^1.8.1","express-fileupload":"^1.5.2","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.3.0","@asteasolutions/zod-to-openapi":"^8.1.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.94.0","tsup":"^8.5.1","vite":"^7.2.2","eslint":"^9.39.1","rimraf":"^6.1.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.4","@types/fabric":"^5.3.10","@types/express":"^5.0.5","playwright-bdd":"^8.4.1","@types/mongoose":"^5.11.97","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/cookie-parser":"^1.4.10","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.46.4","@typescript-eslint/eslint-plugin":"^8.46.4"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.3.2_1763407023317_0.8811949841974398","host":"s3://npm-registry-packages-npm-production"}},"2.3.4":{"name":"@syngrisi/syngrisi","version":"2.3.4","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.3.4","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"d1df2b19d92489f718e1fd085b48c974600b0530","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.3.4.tgz","fileCount":804,"integrity":"sha512-9e32mRZlHwpGAGGIrYuRP3DhNCjwOcN5IXbLSesE7Q/1i6hgbKGxgRhzYqXfS4KJmDudCYyO4+n/OHkJTF9BeQ==","signatures":[{"sig":"MEQCIGXIwxZ8S1WB+pbfiM32egpyPZrVpgem5LXNgp39AHJ9AiBucbdovaoQTBOyd60xoKXnSUMS8ogCpZsqEiborx6gdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92293154},"main":"./dist/server/server.js","type":"module","engines":{"node":">=20"},"gitHead":"90119fa0f5a93d05f52e684dc4a31e6e9a97a6c7","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd tests && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd tests && npm run smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'tests'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude tests src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd tests && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/7.4.2/node@v20.19.2+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"20.19.2","dependencies":{"zod":"^4.1.12","pino":"^10.1.0","chalk":"^5.6.2","hasha":"^7.0.0","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.1.0","nodemon":"^3.1.11","p-queue":"^9.0.0","winston":"^3.18.3","mongoose":"^8.19.3","passport":"^0.7.0","pino-http":"^11.0.0","body-parser":"^2.2.0","compression":"^1.8.1","http-status":"^2.1.0","uuid-apikey":"^1.5.3","string-table":"^0.1.5","connect-mongo":"^5.1.0","cookie-parser":"^1.4.7","passport-local":"^1.0.0","express-session":"^1.18.2","winston-mongodb":"^7.0.1","@inquirer/prompts":"^7.10.1","@types/compression":"^1.8.1","express-fileupload":"^1.5.2","swagger-ui-express":"^5.0.1","passport-local-mongoose":"^8.0.0","@syngrisi/node-resemble.js":"^2.3.0","@asteasolutions/zod-to-openapi":"^8.1.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"sass":"^1.94.0","tsup":"^8.5.1","vite":"^7.2.2","eslint":"^9.39.1","rimraf":"^6.1.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.4","@types/fabric":"^5.3.10","@types/express":"^5.0.5","playwright-bdd":"^8.4.1","@types/mongoose":"^5.11.97","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/cookie-parser":"^1.4.10","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.46.4","@typescript-eslint/eslint-plugin":"^8.46.4"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.3.4_1763409306549_0.19313471177851915","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@syngrisi/syngrisi","version":"2.4.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.4.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"192cdf5cfafc5fcaee14516c8b383deb0e218772","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.4.0.tgz","fileCount":928,"integrity":"sha512-Ucvawf5GgXYWvR4bt3wgKn7gwH9UZn25QGWRLxTaW2tmw4ybABmfOntdNYLQBYGxLTqKWBlt7/BDtnNmK1VBRg==","signatures":[{"sig":"MEUCIQDagX9L09hkbuxfg7oVUSeXzLnEXhA6XjmGNME+TLW0XAIgJcZ/4pulQRYIKluY11I3x36naGnZDt0i2LZdWjU0Hug=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110911412},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"12bfda406cbe5aaccf3f17fdab02a9bd1a9d6343","scripts":{"dev":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pub":"np --yolo --no-publish","test":"npm run build && cd e2e && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && npm run test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && npm run test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:mcp":"cd e2e && npm run start:mcp","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'e2e'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude e2e src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd e2e && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.19.0+arm64 (darwin)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.19.0","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.18.3","mongoose":"^8.20.2","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^8.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^2.4.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.4.0_1765081361729_0.5723375871398373","host":"s3://npm-registry-packages-npm-production"}},"2.4.1":{"name":"@syngrisi/syngrisi","version":"2.4.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.4.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"df8bbe0b7251dbab9ea85ea730fc1c64b1029bc7","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.4.1.tgz","fileCount":934,"integrity":"sha512-u/gmtTh3loWjbaEPZa8PvTrCeqYESJoxrGZ//HjvNlmefcPp9b3GrFPWcUR6BBihPqq5TdP8RYzt5ErkUc4vTw==","signatures":[{"sig":"MEUCIQCBupZssRH3siUPiKw+b6TFtCssNj9jeZ/5LrqF8LviUwIgM0cDnAIBfzrqx+GN+rpdzXsSSbd/qzGnVQH7I0S48ZU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@2.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":114089469},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"9441e797cb176635d3f56f55d8846642fe525b59","scripts":{"dev":"npm run build:ui && (until curl -s http://localhost:3000 > /dev/null; do sleep 0.5; done && open http://localhost:3000) & cross-env SYNGRISI_AUTH=false npx tsup --watch --onSuccess 'node ./dist/server/server.js'","pub":"np --yolo --no-publish","test":"npm run build && cd e2e && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && npm run test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","dev:ui":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && npm run test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:mcp":"cd e2e && npm run start:mcp","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'e2e'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude e2e src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd e2e && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.18.3","mongoose":"^8.20.2","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^8.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^2.4.1","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.4.1_1765114357129_0.8700820858241027","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@syngrisi/syngrisi","version":"2.5.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.5.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"8b903ca207dbd6122c55269b4488e69fbf4acbb4","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.5.0.tgz","fileCount":951,"integrity":"sha512-MNFIA5TFcj1ahE5j6LA8At0MlevU2T3hoMtku6gyNllkbkCL6s2jgQlTVHWavHd05e1MHRcaHrsEaG3Numqp5w==","signatures":[{"sig":"MEYCIQDMIfPDmm6oiCZ1cxHr3X+fCuljqWX0E0ZRpbv012wZtwIhAMmTJ1nlxn8K/QHXND8QXN5F1juWdVHx0ANBA59hhHOK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117660558},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"12bfda406cbe5aaccf3f17fdab02a9bd1a9d6343","scripts":{"dev":"npm run build:ui && (until curl -s http://localhost:3000 > /dev/null; do sleep 0.5; done && open http://localhost:3000) & cross-env SYNGRISI_AUTH=false npx tsup --watch --onSuccess 'node ./dist/server/server.js'","pub":"np --yolo --no-publish","test":"npm run build && cd e2e && npm run test","build":"npm run build:ui && npm run build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && npm run test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then npm run server:watch; else node ./dist/server/server.js; fi","dev:ui":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && npm run test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:mcp":"cd e2e && npm run start:mcp","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'e2e'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && npm i && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude e2e src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"npm run install:server && npm run install:ui","test:docker":"cd e2e && npm run test:docker","build:server":"npm run clean:server&& npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"npm i","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"svp1105714","email":"1105714@gmail.com"},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"10.9.3","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.19.0","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.0.1","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^2.5.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.5.0_1765222255403_0.7366540495033007","host":"s3://npm-registry-packages-npm-production"}},"2.5.1":{"name":"@syngrisi/syngrisi","version":"2.5.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.5.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"e0e55db2c94da91a104cf54235940721e69db523","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.5.1.tgz","fileCount":950,"integrity":"sha512-d3BfWnv/fMbXIMc0dzDEYLLvOmaAaLX1Pf5WTbhqlx2YoxwKUfkCMnV7ZCp0VmYPDmCLeJY386eBEHav7YoBaA==","signatures":[{"sig":"MEUCIG6eIR7S/xGXckTtRYsAjctTm18ySnI5gdh+yJMANIJyAiEAmav+hooWux6SLMnclTOnFtWnNiUon0oCQ4NAJWDr/oc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@2.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":117705777},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"9dee80a27bb639063b4fc01622ddf1a46ae433c5","scripts":{"dev":"yarn build:ui && (until curl -s http://localhost:3000 > /dev/null; do sleep 0.5; done && open http://localhost:3000) & cross-env SYNGRISI_AUTH=false npx tsup --watch --onSuccess 'node ./dist/server/server.js'","pub":"np --yolo --no-publish","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:mcp":"cd e2e && yarn start:mcp","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'e2e'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude e2e src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.0.1","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^2.5.1","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.5.1_1765286359828_0.05403291910786123","host":"s3://npm-registry-packages-npm-production"}},"2.5.2":{"name":"@syngrisi/syngrisi","version":"2.5.2","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.5.2","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"9ddb7885f33625baa33a77f645309cae4dd623b3","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.5.2.tgz","fileCount":950,"integrity":"sha512-FnImh1XUP3ggUeAMns8V/zq8y0Uk8yxOrqOoao7c15rNs+jhYBLzdKWtSgxv084GSeP9KzYXp6WKzDpG74FriA==","signatures":[{"sig":"MEQCIGtuQRnZhtzCu6TGbtImeC6gI7mVqb4fSyC6Kr86uumfAiBt7a8RnDiScHo5YYH07TfLSunrhQX4JExrXhFBctQJhg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@2.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":117705904},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"33a5ff751d7721f895f4f1a9a7e8cdf9b6b294bc","scripts":{"dev":"yarn build:ui && (until curl -s http://localhost:3000 > /dev/null; do sleep 0.5; done && open http://localhost:3000) & cross-env SYNGRISI_AUTH=false npx tsup --watch --onSuccess 'node ./dist/server/server.js'","pub":"np --yolo --no-publish","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:mcp":"cd e2e && yarn start:mcp","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'e2e'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude e2e src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.0.1","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^2.5.2","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.5.2_1765372451877_0.336586347376129","host":"s3://npm-registry-packages-npm-production"}},"2.5.3":{"name":"@syngrisi/syngrisi","version":"2.5.3","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.5.3","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"58966ff6b06cdb39a70ab0dfa7c1b86a432db0f9","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.5.3.tgz","fileCount":950,"integrity":"sha512-uFRqEPagMpQ5hFQheoUK45+3yGF4vYbo62O58ktE1EU6WM4rQ4ZQ31qF9xBLtPaA60n9W8aWA0hjx1ZfarFzlw==","signatures":[{"sig":"MEUCIAIjdI+k37fZ0bPtzhLqSNFLcghz+etGgDpIUw24s72VAiEAtHAAFvlP5FFuXBoV2hWnHoTcnXBq6fDYIeffxOZG6t0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@2.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":117977613},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"857225768ac9536922e237b94f1a9a1178d53bb7","scripts":{"dev":"yarn build:ui && (until curl -s http://localhost:3000 > /dev/null; do sleep 0.5; done && open http://localhost:3000) & cross-env SYNGRISI_AUTH=false npx tsup --watch --onSuccess 'node ./dist/server/server.js'","pub":"np --yolo --no-publish","seed":"cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:mcp":"cd e2e && yarn start:mcp","start_old":"SYNGRISI_AUTH=false nodemon --ignore 'mvc/views/lib/*.js' --ignore 'e2e'","starttest":"node server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","deadfile:be":"npx deadfile ./server.js --exclude e2e src/tasks backups data docs mvc/views/react src/ui-app baseline*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","startservice":"forever start -l forever.log -o out.log -e err.log server.js","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node src/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.0.1","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^2.5.3","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.5.3_1765487338615_0.25393910180645807","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"@syngrisi/syngrisi","version":"2.6.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.6.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"c3f59b4e733eba0e64c18e4c239ad10d7cb7cb96","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.6.0.tgz","fileCount":950,"integrity":"sha512-L1yCN7/yi+E2TxORfJ8zflD2ruZ7FawrevwFdUQutQjuko3Mms4GqVZeZIpCgLb1zvefbvt7rr97pNPasce8tQ==","signatures":[{"sig":"MEQCIA4AUXUKdB7RjAl/Vp+GCv7/DgjX7MlzOF0bNiWc5EFNAiBpmF5PJ9yQwY6dgB9Uw1h7bMhh8SjaEL5PfwbnpQItlg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@2.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":117918227},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"778a198e6696355c41f727db53fca937fc7005ce","scripts":{"dev":"yarn build:ui && (until curl -s http://localhost:3000 > /dev/null; do sleep 0.5; done && open http://localhost:3000) & cross-env SYNGRISI_AUTH=false npx tsup --watch --onSuccess 'node ./dist/server/server.js'","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.0.1","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^2.6.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.6.0_1765522951689_0.6957456754683442","host":"s3://npm-registry-packages-npm-production"}},"2.6.1":{"name":"@syngrisi/syngrisi","version":"2.6.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@2.6.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"bf722ebf77f6ba7be29f9cbf76ea3bb1a7f800cd","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-2.6.1.tgz","fileCount":951,"integrity":"sha512-z3ZtG6NvECUIkrkX+Icu+7/suCdFwv/xBwqGUWJFjeqxshW0ZYhDkG7fOuzO7QXeDx+PcIjGynvEl7AA9yXIgA==","signatures":[{"sig":"MEYCIQCr4uvSk8sggT3tYzfpEqsF7zVhBwnhMYQv+6AP9p2gWAIhAIbrvWs2cMnXmV+LfhfdvoiDjY2FLi9VBLsyK85i+Dwi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@2.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":118065274},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"9c8a083ab2e6026962576cf481847a17e69469bd","scripts":{"dev":"yarn build:ui && (until curl -s http://localhost:3000 > /dev/null; do sleep 0.5; done && open http://localhost:3000) & cross-env SYNGRISI_AUTH=false npx tsup --watch --onSuccess 'node ./dist/server/server.js'","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='index2/' vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.0.1","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^2.6.1","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_2.6.1_1765570816625_0.21961088727326405","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@syngrisi/syngrisi","version":"3.0.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.0.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"cc4674005f093a8f5285b8c0ad962746aed1f89b","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.0.0.tgz","fileCount":967,"integrity":"sha512-sHglja6iyv05voe4Khv9/wiX9O+aKGxPPT/7mHQ7PQMrVmGisMOwZuso0szuFuA5pkDizkxYcHL+I7J8rm1aIQ==","signatures":[{"sig":"MEUCIQDdq3gCYmaTxjR4i/CgLOf7UPTxFgM4j6pHAn+I+rkZmQIgAvefL12KRN+ECHGonB9JdkcgdsPefuoJiZp4Bo8h54U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":121357810},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"a963646a81a5b9a0287a839667b003c2826341ee","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.0.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.0.0_1765786838358_0.7763792298602155","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@syngrisi/syngrisi","version":"3.1.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.1.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"83c53e78c738612f150240d64a6b575fbe9da887","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.1.0.tgz","fileCount":970,"integrity":"sha512-vsXt9UGCjL6/5kmK0HuC64dQkRPQUP0AzRVmNK90B+BP0OBhRFAglEmEOlaVLYsRoxx7wO7q/tkhMWE/MVB91A==","signatures":[{"sig":"MEUCIQDq3Drrb5yoOAXA70XVm+3LtI1kw9yN6D/bRTPwto7JgQIgeUKBAZQ2Rx7QxzJpB1JknM+19dpNPKHfmW0ElRLB6Q0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":122271797},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"f88990c7fc709ffd5007f45c31535f1edb5fafb4","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.1.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.1.0_1765805766090_0.7046674634758132","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"@syngrisi/syngrisi","version":"3.1.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.1.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"61a75b745c80a64a279272f39b51ec4616f656b1","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.1.1.tgz","fileCount":970,"integrity":"sha512-vjysNMmxAW6tZwnip1AttyuKY5q7OZtZaWA4WKVUDLCOtuJmmGv+Z3hbEhNo4qOcBhlX23z/W/AfJEvgb80bDA==","signatures":[{"sig":"MEQCIBc35nXh24YdbsMogVzRmftX4dZN0OeEKWYbKScxuTHIAiBM5AGKmpCs/rBVPc2FYisjuUsPVq4KmDLiau23u0uhMw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":122271835},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"d40af242a5e15c188b4910c7f2da0acd016b5667","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.1.1","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.1.1_1765889348144_0.855569515298884","host":"s3://npm-registry-packages-npm-production"}},"3.1.2":{"name":"@syngrisi/syngrisi","version":"3.1.2","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.1.2","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"a8859a36249efe850ab72d625c1e711d8d3351d5","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.1.2.tgz","fileCount":984,"integrity":"sha512-dVbWjeMGwyIWNow6nLHQhsvAfh9X3byrnGnH42of8clXigMRRIXJGXyBt5kjXRzQ7KXNtBXImdrEH5DeB/1YCg==","signatures":[{"sig":"MEUCIB2oT0mzR+PAXcpdu7HN0ZbUwssTMe5ACYcFIpWZxg+RAiEA69CVwRrbOP2/ninxti67LQXVjlhqJIByE86/IluG8tc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":123548081},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"5e437593a4c3191f718cc7ea7390b86177062ac3","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.1.2","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.1.2_1765981239168_0.23214636529075583","host":"s3://npm-registry-packages-npm-production"}},"3.1.3":{"name":"@syngrisi/syngrisi","version":"3.1.3","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.1.3","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"8fbba937bf2787e5da1cb9d8b087aa89eaa83762","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.1.3.tgz","fileCount":984,"integrity":"sha512-1ynpYWucGKc2CnZ/rheIVD9yB1uoBs8UfebTS/fTF5r1NdGqy9nAS6392BSklPnZvjXPqRQ4h8sDenWlgvCsVA==","signatures":[{"sig":"MEQCIEr51hwwGQF4kHJRflICBzWMDlqQZd8G0SPInurAg5iZAiA1ZXvBQbfp5Pdz2kDx/a9gKdQwBnx4F8qTBRZ1oOKHDw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":123548081},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"04fe86ead7c8446d01c945c4942d2aeffaf8a303","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.21.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.1.3","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.1.3_1765995671156_0.6895286231180429","host":"s3://npm-registry-packages-npm-production"}},"3.1.4":{"name":"@syngrisi/syngrisi","version":"3.1.4","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.1.4","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"f9271c12e1fd6901fbb9d02f2ea0cee9bac1b7aa","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.1.4.tgz","fileCount":1033,"integrity":"sha512-Df8ODVO6BxzAgyjtqw8C+jZze8ZT5er32H/OLxV2LCphnSRbI0GqhpU+b96XOYfHNRh+RgquTYJpJpCnkV5v5Q==","signatures":[{"sig":"MEQCIC+JWlds4x0AHm4xGsw3l6raJLuSWUzM/lislmDtBqjWAiABz7oTnJWhSgi8vtDmbE5ElAdDebH/AhkK/9syVHZQwA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":140094143},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"0e6ece536c5bc282eecb082e820d7d5956ab9cca","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.0+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.1.4","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.1.4_1769963472306_0.8701965635780629","host":"s3://npm-registry-packages-npm-production"}},"3.1.5":{"name":"@syngrisi/syngrisi","version":"3.1.5","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.1.5","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"1813d30710b15044eae1c56773e6f00dcc632de2","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.1.5.tgz","fileCount":1033,"integrity":"sha512-RPrfTSHp68OVisa/owTi5st1Z9joh5vitERBjMnm79Mfxx2qSSWxcvPUogwqkCwJ80rs0A9jUeVcOXhniZwclg==","signatures":[{"sig":"MEUCICilFAT2RaOilPPgeMjBW79HYrsH7FyxziTlJXpyP0DYAiEA7HHb8ccmGtftIHguhw4dT+Cxijc8bQrdBqaS9KCoKjQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":140174607},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"340e1604f559869809ea763101080c55676cf3a8","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.0+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.1.5","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.1.5_1770407611890_0.29427720833916937","host":"s3://npm-registry-packages-npm-production"}},"3.1.6":{"name":"@syngrisi/syngrisi","version":"3.1.6","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.1.6","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"aab6f96e7b9d8b43da1e35ca9d041a38b5eddb9e","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.1.6.tgz","fileCount":1033,"integrity":"sha512-9esVUDJkw/9ZbQLrUIZJgVpeD9LZXsVd1AUCQJdBZkm37Ca8uIExr1ArWQQt+z5BjFgIyPfU5u1rvb55JjyALQ==","signatures":[{"sig":"MEYCIQDmSSkyJhK/8ETOMLUPmJgVb1Ig16jpSHMJutztYcAiJwIhANjKO6GXr4JwJDoSdh1TnEcGuO0ZeGToRsFW/Wj29Hgy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.1.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":140210722},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"cb1808dd0959cf4b96f54106e9e599ae7b1fae67","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.0+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.1.6","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.1.6_1772050442399_0.47918619892007963","host":"s3://npm-registry-packages-npm-production"}},"3.1.7":{"name":"@syngrisi/syngrisi","version":"3.1.7","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.1.7","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"69275c4c8d2f3475b71ce16b31a842b086c13d25","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.1.7.tgz","fileCount":1033,"integrity":"sha512-SmLAc8ArElQN2KgCJS63PklqyB3QZ2WCt6DBqpYVo/nz/CgSwKAzn7cI23bVRn713/b+mS6fHejrJWBvOhJeSA==","signatures":[{"sig":"MEQCIFIQUtXULsGWrjpHwWCIKKvXpn5djhKfNW0pXd6s8mAUAiBPVs4g+hgGdx16GhRITYk9BFilSguCf3Q9Ybos7BtsaA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":140212445},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"c1ab213f09448a9e08c461a16583285ebb13511c","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.0+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.1.7","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.1.7_1772100625597_0.14950137618649229","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@syngrisi/syngrisi","version":"3.2.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.2.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"6ab7aaf5e90fa83622982017321645c0a3ede7a0","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.2.0.tgz","fileCount":1050,"integrity":"sha512-BGKaS+eTUqVmRu1hAPqibGNr/ykeLJR8JmVArZbt5WYUez+Or/2OyxUZO0/VcJHp44uhyBzB1bk+yjtcwmPdjA==","signatures":[{"sig":"MEUCIQDGR9ryaYC8ERPl96Gs/QE+COFme3YdIZxaSMVmljA9QgIgLw37nmj9GArqj0QTSS5jbI6Pnv6aXsgOgzZLddlna3o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75741626},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"c76e014ee67256fe4c30fb1d8b8b38c6a9b5d82c","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.2.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.2.0_1774844728751_0.12935151017526603","host":"s3://npm-registry-packages-npm-production"}},"3.2.1":{"name":"@syngrisi/syngrisi","version":"3.2.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.2.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"b4ca4efbc00681866d1a22707a49c2d23c46e305","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.2.1.tgz","fileCount":1050,"integrity":"sha512-ahJnidL6EUePcO4EfYlEuNKss/cnca5xIu8AmVuS7U39HDN0mrbfCbNU/53TyCvlrbKWsV5wghIaXljTn85adw==","signatures":[{"sig":"MEUCIQC8h0BCizjyX6skAXmHZaruNxB/SRz+r01MxBkxnS75PQIgc/5Z+5MSEwryW4WQJD1YNeyFog2oSQl9MvLWSq7Iifs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75774099},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"a8d3aa06c372795a252c2788060d7bbd8d86dc76","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.2.1","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.2.1_1774878178171_0.11558679400653227","host":"s3://npm-registry-packages-npm-production"}},"3.2.2":{"name":"@syngrisi/syngrisi","version":"3.2.2","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.2.2","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"ba11f5a4be5c3487465f00aada4cfd57543712f6","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.2.2.tgz","fileCount":1050,"integrity":"sha512-//5EVhVtbiGMnz26t//FBR/BF6s8tYMOY0JCrPTbRy8GmjSVNFsXfKO1aqiVF2+eAaU0AVov+IprnWB4YLukbg==","signatures":[{"sig":"MEYCIQDiW7h0L/KpJ9McD+depSccfmR3ycSSlyROwmqvkGd8dAIhALJLuMj8M137D2n2cMcnciY8ShQU9xfgWR9eieCMns3+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75775028},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"155cbac43d419a54d265dc079e97eaab1aaa064f","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.2.2","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.2.2_1775051487122_0.2162334856515744","host":"s3://npm-registry-packages-npm-production"}},"3.2.3":{"name":"@syngrisi/syngrisi","version":"3.2.3","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.2.3","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"862dbbe818d0e5583155e0889fc3c1bb00594052","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.2.3.tgz","fileCount":1051,"integrity":"sha512-ky7nVc5nRfK3X9CmrHADWPlduDwSftvmF9T+hg1UdvaVneRcrIqe3vMtX1/oznOh/6KkxkWdKpasAQsMMUmuKQ==","signatures":[{"sig":"MEQCIBVuI0PA1/0D0nC1wSvlnoqszD2UNrTspvjRwXShMX3cAiBB02j4lSjn5ZMGMBdTAAx3nUnYTg4YW+IB2/2u2ICymw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":77309186},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"e060839f29c02881b7e9a84c0127f6ec391efa64","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.2.3","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.2.3_1775123811827_0.7843530016878921","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@syngrisi/syngrisi","version":"3.3.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.3.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"d31f1d26a02a68d00ced362fecceb885ad92e550","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.3.0.tgz","fileCount":1057,"integrity":"sha512-98O0+D8vJXW4GQNJh5n4Zg9uPEECEOy9xYhBMfbAWf541a0KXuCoZsaTHM+KZWocpAAc2wck3bzvdl4yx3uQ5w==","signatures":[{"sig":"MEUCIGE+SK+Gmh6xk5Kdf8pTOyUK0EU2pwAn5X7FIXv16V6eAiEAyK44sBj7JQQ9+hZAYfzlDi3JSrWVONrdMKF6W0pFLRs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":77305030},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"97e6f97e4d7b3876f934d550797153b7f84d0dc1","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.1+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.3.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.3.0_1775128186626_0.8141389302448521","host":"s3://npm-registry-packages-npm-production"}},"3.3.1":{"name":"@syngrisi/syngrisi","version":"3.3.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.3.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"cb1e08820e11fd39075f2d19a4e52b2faf8b8c4d","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.3.1.tgz","fileCount":1057,"integrity":"sha512-UmoDFOnhlm7NhqobhDR12CrIzcrIJX+SKX/uATQJG4t2ZabBMlgbfbvTtNWplVyrZuoOKKqMDMPXIwRlwDzCvg==","signatures":[{"sig":"MEUCIF7TBIbVPBGkQQVJO9QrsZGovlZ1ZtzhhhOZyVOnAuw0AiEA8BRoJnLkIJbm2DQR0igpWSPRx44CiP4/KhoTgA5dluo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78532747},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"44d8b64cbd3725c13ddb4c65c012d870211da1b2","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.3.1","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.3.1_1775149619339_0.3896327008741438","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"@syngrisi/syngrisi","version":"3.4.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"d3cf6f525bac09ed5698ae1d8b09270a8011a7d0","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.0.tgz","fileCount":1060,"integrity":"sha512-yjXPbKdXZXghX7YqLF/EYOx0q9GXE4nbCq22ndILJiKiMOceXaGGFB1sg28KR3yuKxA8ut64POiA013fszXqKA==","signatures":[{"sig":"MEQCIGGVW0VlJvfRNBUdXR5f1j02PpOmTt5TQ7oOWUI98c2uAiAriBEq44LKeg128UG3avgPSsZe0pY9MTv68+oCKwDnYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70791275},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"b424c177eefe1c7e98e0dcd0670d428bb7d8b49c","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.0_1775646466077_0.3351112978559987","host":"s3://npm-registry-packages-npm-production"}},"3.4.1":{"name":"@syngrisi/syngrisi","version":"3.4.1","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"efc08e81099e65fab64357b5f19c8959ec6490ae","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.1.tgz","fileCount":1060,"integrity":"sha512-m5UmvGDD3xNIjaAGkIYJWmn5QwB0hUIZrWRzyJnGychz6qbbqx8t7nXPmMLvXMJLpvBPM1p/NJYshuae5rwvJQ==","signatures":[{"sig":"MEYCIQDtIQn9l7ImG8I/Ehsk2qABRl54Sw1L126Yz9ZSPgd+2wIhANgLuMsPQAHlj54guW4xCJXApW46kGLSiPNneQKyPQhR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70852907},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"a6ddab81702160411fc502fc497ffff8e14fed19","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.1","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.1_1776002183852_0.7296083510617732","host":"s3://npm-registry-packages-npm-production"}},"3.4.2":{"name":"@syngrisi/syngrisi","version":"3.4.2","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.2","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"b6caab0530df221f2265f426d483638c3539e646","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.2.tgz","fileCount":1060,"integrity":"sha512-5KH3vaCdwz+QGUbqsQ/ZPbhUIfiY30U1kfXNJYHkNR0Af2NTI143Qz7MyCyq2UmvYDKGHf4xhKJpgzXRXMzI/Q==","signatures":[{"sig":"MEQCIEaUoK/ccPLq00yLJz5eC0vIUfm496kvWND6e+XWLXCaAiAlBubz4uA9GllA1t+uWn5e13Fcy+KdchN/NVzEHQw4gA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70852907},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"50b3521784753eef22166e5e85645b1dee0af6be","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.2","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.2_1776005292177_0.04042166394733604","host":"s3://npm-registry-packages-npm-production"}},"3.4.3":{"name":"@syngrisi/syngrisi","version":"3.4.3","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.3","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"078f4733dab3df5da51ac91ae9c6d79027be45b9","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.3.tgz","fileCount":1060,"integrity":"sha512-a1jagEAYgYoWv7Kcdq/EIaMmvBkOcqGRiiqA6tyYO8cc9FB0mQ283+ZHmvfwRP1czFdHF7T0DRA7JV/+4PJdOw==","signatures":[{"sig":"MEYCIQD3HArn+T451XcLV+9Sx7tXbpt5VBdbMEmJ02ZG5HsrkAIhAPQw3LcMu8TsZttG9SNeKj7+WFMQXnPyuWEhFR+5LjG/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70854862},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"2ee632978dc34298f90051aedb0bc4dfdda24f69","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.3","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.3_1776015962514_0.6343541286946008","host":"s3://npm-registry-packages-npm-production"}},"3.4.4":{"name":"@syngrisi/syngrisi","version":"3.4.4","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.4","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"148be884f6d3f50a0826548d6d82a28edda3aebe","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.4.tgz","fileCount":1060,"integrity":"sha512-d3ulYxAa2WA9g1dhlMyv+uvyje5UHEwjdNp/eiikQsUcVUqYjN1BR/59srVVea6L/HRLBU+5PgkeddTa8FDtTg==","signatures":[{"sig":"MEQCIHQ5NY1LrT+kpntxchMoq0vf3knoCUrFNqfnlZk/RwAnAiBEeCeYreECHl4b3uJuir8lz95eAJmR0O6Ua1KmepEq/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70855470},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"f9b1eb4829afea8d79f515853ba08869223aecac","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.4","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.4_1776171232428_0.17518862722589001","host":"s3://npm-registry-packages-npm-production"}},"3.4.5":{"name":"@syngrisi/syngrisi","version":"3.4.5","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.5","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"2f3ad33fabfdc4e238ad416dbfc60929036e4a71","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.5.tgz","fileCount":1060,"integrity":"sha512-MFQ3mD0ktqpEKcDXEIiakdaIkgw23tNuxqUekSzKhduEmWqoDg9IoRJ/L66AhyiA1VK394MVNF2wfDpAky+3Kg==","signatures":[{"sig":"MEQCICdZkqL6rR6fVmHHs+ml8j+2kA8jvQP8XLvhELksmEsZAiBR28ekvzAwb0PGkkXsDZtaoc0+Mga5EkYRz8HB6H4SOw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70855597},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"e4f3924a7a363b24a3a11489b8a3d872d077fada","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.5","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.5_1776196041808_0.3547905145551369","host":"s3://npm-registry-packages-npm-production"}},"3.4.6":{"name":"@syngrisi/syngrisi","version":"3.4.6","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.6","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"d04f6a0652e5fa4638f79e571fbfe4d72d4d7ec8","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.6.tgz","fileCount":1060,"integrity":"sha512-1QHryQ4H2FZXeqzSAYtiKUXKnkNh+rWSYYwaT5CDObqvImPm/+6lcb7ZCQupO32s8+yn1L5fQMUx29amdZVbGw==","signatures":[{"sig":"MEUCIGJAY7VtVQ9aPyJTlhGzPQZ3YTfcXNe0g+uOiafdWrPxAiEA7/5O3dQNZVkkCQkg346MDWeV8nccL8s1JyyhnMHKHiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70858111},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"a6ada1872571c853ca54db2e8ae49990049608bc","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.6","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.6_1776241180036_0.11240047873949366","host":"s3://npm-registry-packages-npm-production"}},"3.4.7":{"name":"@syngrisi/syngrisi","version":"3.4.7","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.7","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"474be8d1e0aca216d5fcc4664aad2dd3279655d3","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.7.tgz","fileCount":1060,"integrity":"sha512-GNY6GP5jCLpz8dDSjjnlwVEPPM+AGPT8bfoHu2k3xxT+wk7W/JBl/A+wEodIC5928XxBCXoSk/9xudLnGkxM4g==","signatures":[{"sig":"MEUCIGqUXc65NIGAKLaFNAouPavz0Z5eLpJUajR/CaD5b7bmAiEAghthyGb84W9y3hE9A9P/oUL4/HC3gjNaPEDb7suJ/B0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70858111},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"67501e92ec19dd43d050cf70abc2e607ae04ea60","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.7","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.7_1777313892515_0.32096505717301227","host":"s3://npm-registry-packages-npm-production"}},"3.4.8":{"name":"@syngrisi/syngrisi","version":"3.4.8","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.4.8","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"d4412d3e1b2cd202367512a3156e724caed114b3","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.4.8.tgz","fileCount":1060,"integrity":"sha512-0tjZydIn2vLDBZeslIWb+SUdm0STX2dYLZf3v+r8ROYjxf51ZE6mtY+PYUlOo8FIy59uEzmB2+/fwHmjyRsKiQ==","signatures":[{"sig":"MEQCIH+WS+N2KqKT86P30oqgTwzDW1VC+V/0fmSGYpvw/Ad/AiA92KcbLyDBXCvYre3/T67ZA5z6OHPtNP5UJIiZpTJXcA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.4.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70856001},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"2950bd44f75d6d404c4db7af48bb797421ea0a52","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.4.8","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.4.8_1777360136199_0.9428401347491617","host":"s3://npm-registry-packages-npm-production"}},"3.5.0":{"name":"@syngrisi/syngrisi","version":"3.5.0","keywords":["testing","regression","visual","screenshots","comparison"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.5.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"073cdaafc6b2f7428b68f3d815862b7266b2717a","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.5.0.tgz","fileCount":1060,"integrity":"sha512-Ul4+fKq53Zkd7sPWQNU8rI/ow2UPt5lMb1zHRvy32oyqJIAmA66sva6V66yvNXqG6fdBogSa9T88lZ19gDY/TA==","signatures":[{"sig":"MEQCIE9xoZCWRnqGOz3EeHwx8+Lz5CJ3v5WKyqXsN5Dcy9lIAiApRZvgyXyTqwDPQL97BWeD7q63c9UgCInZPyxvOYVp4A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70863350},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"e0fe684e97b8ab54be6a37116766c038898ce279","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.22.2+x64 (linux)","description":"Syngrisi - Visual Testing Tool","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","bson":"^7.2.0","jose":"^6.1.3","dotenv":"^17.2.3","helmet":"^8.1.0","envalid":"^8.1.1","express":"^5.2.1","winston":"^3.19.0","mongoose":"^8.9.0","passport":"^0.7.0","tar-stream":"^3.1.8","compression":"^1.8.1","connect-mongo":"^5.1.0","passport-local":"^1.0.0","path-to-regexp":"^8.3.0","express-session":"^1.18.2","fast-xml-parser":"^5.3.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.0.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.2.1","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.0.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.5.0","@asteasolutions/zod-to-openapi":"^8.2.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^6.5.1","tsx":"^4.21.0","sass":"^1.94.2","tsup":"^8.5.1","vite":"^7.2.6","react":"^19.2.1","eslint":"^9.39.1","rimraf":"^6.1.2","nodemon":"^3.1.11","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.1","typescript":"^5.9.3","@types/node":"^24.10.1","@types/react":"^19.2.7","concurrently":"^9.2.1","@types/fabric":"^5.3.10","@types/express":"^5.0.6","playwright-bdd":"^8.4.2","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^5.1.1","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.18.2","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.48.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.48.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.5.0_1777391812444_0.7724606429938958","host":"s3://npm-registry-packages-npm-production"}},"3.5.1":{"name":"@syngrisi/syngrisi","version":"3.5.1","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.5.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"592b2ba416cb655dd58dfa9ad2d56bdc871c7ad7","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.5.1.tgz","fileCount":1061,"integrity":"sha512-rhm9eLXmIlYBG106RlP0lQ7/AnH1ULVGdrjRf689xLqnPxyu3BzxnydkWO1ErNrwQAgEVvyYi0PgTiKYVd1WHw==","signatures":[{"sig":"MEUCIB0v4bIEkPbysSqJN28aesf2eDhz1rbH7kc+pir0n/8LAiEAtAzyCkfjAKsKGllHii1pNfRCRCgNHvh0t6Pzmg4PGRg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70274359},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"6c15303764437067fc3fba140b565dbb56d05f7a","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.22.3+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.5.1","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.5.1_1782125177163_0.9294607919378146","host":"s3://npm-registry-packages-npm-production"}},"3.6.0":{"name":"@syngrisi/syngrisi","version":"3.6.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.6.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"c6a0e13b2048c5fb2d8f5c6ec893e6f3fc139971","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.6.0.tgz","fileCount":1122,"integrity":"sha512-pu9e3TdhHqRAArDnybmo6Ov20fxUGXfgvtV9DcvAE95PA+5v+xCtwciRVcbAIopB1q729wK3ub5GCZYNKIOXpQ==","signatures":[{"sig":"MEUCIGVwybbzwgLnJ9BrGJRAc0dOJd7NX/81kfikZogMYSXzAiEAotA5KWyfD4rKgcsq3frgQmOCCtJfMFv6nvPh1tPX+xM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76445456},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"edcb79e27b7a5b2ba549fd4a875a85459597cc17","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.22.3+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.6.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.6.0_1782339009310_0.8578360340590232","host":"s3://npm-registry-packages-npm-production"}},"3.7.0":{"name":"@syngrisi/syngrisi","version":"3.7.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.7.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"aa7338652e6e1c72deb3408c44815a3b95f04a44","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.7.0.tgz","fileCount":1135,"integrity":"sha512-mlpCGqgl0a2D7udF9aOsLnGhuU0sIA3lX1ALE2MKdWvA2JHp4Udf0MqAt8VRM+/VYYoiZsKK3qA/j694vHhyGw==","signatures":[{"sig":"MEUCIQD0zQFM7L8RNpQFRHkjMudfypqc+QEKxbhJNPc2+llpQwIgIbHkGf0eXpPzg2vIj4xL8nTP/Mk7z06QkbU+pTwKHeo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":77621448},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"d0e4689b07de90cd81a487d987af770a0c67b83f","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.0+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.7.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.7.0_1782490735201_0.035380567783098726","host":"s3://npm-registry-packages-npm-production"}},"3.8.0":{"name":"@syngrisi/syngrisi","version":"3.8.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.8.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"7bb2a03a04a3f9a63cdc29e914e57b8f2b46a0dd","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.8.0.tgz","fileCount":1134,"integrity":"sha512-A5QP1k63u2ryuIDx2xYYDgPxhOYpy9s2BGrnW7UuCDvzsC4tCu2g7tz5ZrqobdA6iJ2r1UPcsd7JbeHe4hOa0Q==","signatures":[{"sig":"MEUCIFTbTimINJVe+5GjGrlCPYoG7y+BS+VjzyC+5p6qREYFAiEAqfdnAbf18rXkiCUn3wjqls6zCnqxrX6lZWR+XcQ6/WQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75988120},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"b2872817c75125fdbc39fe914d59f15ec7ecc69c","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.0+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.8.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.8.0_1782704355529_0.8822169510981539","host":"s3://npm-registry-packages-npm-production"}},"3.9.0":{"name":"@syngrisi/syngrisi","version":"3.9.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.9.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"7390912379e5bfed346053ad98aae5af5f3f83d5","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.9.0.tgz","fileCount":1135,"integrity":"sha512-iHy+190EraPDTgHC4Pk6ayuyQIqchKg8ngLBoAzq1Kk5SWDsyiNKoBVTXqLzgZZaDmyvRnoa/0WVABz6tkUOVg==","signatures":[{"sig":"MEQCIBofU4W5dcjn2oSGEMhIveW7PMuZRU+qtyvwEB96R8exAiAzwFBYYIg7OS+p7dxL9EyMOTsvJv2FFtPsJwqtJUHh9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76011986},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"5c6fe5b0e2be0f8cc96ff8e7bd40a1c458884ce1","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.0+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.9.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.9.0_1782714658637_0.5769941093026396","host":"s3://npm-registry-packages-npm-production"}},"3.9.1":{"name":"@syngrisi/syngrisi","version":"3.9.1","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.9.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"c49b794e608d7d3f2652d4b670378d90591169e0","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.9.1.tgz","fileCount":1135,"integrity":"sha512-l8hpkArqgsxAhjx0QvDw7VrtD224ohoX81OJa46luiNBKT/Jvtn4LVb/gwY9KdjXNmBeYb56LkMapZAYR1On3Q==","signatures":[{"sig":"MEQCICGLKn4qkNj7nvUKcV2JMtLONWSvEzAUHohO59LMwUmNAiByavKg1hyqshvmiysEqToQpqQ2SqJk0Obp9hhM2InKBg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76013274},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"7ad90fa16b6035ec6d339ef77125faaebea5be69","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.0+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.9.1","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.9.1_1782730813890_0.6459612013978389","host":"s3://npm-registry-packages-npm-production"}},"3.9.2":{"name":"@syngrisi/syngrisi","version":"3.9.2","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.9.2","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"3316af2182e5e62cb7cc2fff1ce3e7591d6e9f4c","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.9.2.tgz","fileCount":1161,"integrity":"sha512-VVARKANBbMD3HYaoKNqWHll3FoUiEjN56dCnFwNUy4HhH5/j9mW8/r9WAEc5iYw1JxwaE7nsfi5aWpk0E3pcTA==","signatures":[{"sig":"MEUCIBGm+2fIbvqruvFnjbDfFuJPMO2K/M6iMxViL/BwZdjcAiEAum2VMISOK2YyLR3OYhY3R11zBd8efP8fH/X7KCNSVCo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76875721},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"5dbdd661fea3affc94bf8a9d3adb9fe171fb2d03","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.0+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.9.2","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.9.2_1782975684897_0.26717679218966395","host":"s3://npm-registry-packages-npm-production"}},"3.10.0":{"name":"@syngrisi/syngrisi","version":"3.10.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.10.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"28286bff8bf426843f622d8e79c3ede77a6dfcb3","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.10.0.tgz","fileCount":1161,"integrity":"sha512-qf/LfExg1LWJ/PRDJdR03D9hLt7O6CkKz4NzWg4GgHYQEKMrBfsMA95Yz96FwRb3H35zbEjHyeINwhU0fLP8fA==","signatures":[{"sig":"MEQCICVZqVaQwuz0geQxKC7be2IBICQ9S2OeyMfS7WZtMkNNAiBpJEtG1Z5dSw3bnnggEhZHPmbH491D8AuT9r7g4DA7kg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76887088},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"cd49b5d3cf39157d3c3614b191703faab4f2d7c0","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.10.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.10.0_1783017471131_0.16529056142756104","host":"s3://npm-registry-packages-npm-production"}},"3.10.1":{"name":"@syngrisi/syngrisi","version":"3.10.1","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.10.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"3c215f7787640a61d8a27165c64ab637e8615ad7","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.10.1.tgz","fileCount":1161,"integrity":"sha512-Ku6jVSOQFmkXqu/DsUab6rKU8upKXkw89VYTq4N/Ixsr4YyeEV8yHDPSknTz/jo6t9TChBwrbeMh3v3O4sohgA==","signatures":[{"sig":"MEYCIQCFin200/k8FQCA3PCWGBsboezImpUUwt9/DS/g1QSbDwIhANQd1Uei8CIhxZrbOjnJrdZZxjoBZLFCYS8BBMVV8+As","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76893126},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"b041f1c558b3855177faa0862aa72118c46c88cf","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.10.1","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.10.1_1783053755232_0.8400032194987954","host":"s3://npm-registry-packages-npm-production"}},"3.11.0":{"name":"@syngrisi/syngrisi","version":"3.11.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.11.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"e5625c06875e173b3e21d6c2a3a582c7de25b102","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.11.0.tgz","fileCount":1174,"integrity":"sha512-JQZ+eCbCPnbqCTZ8bPUpQvEWxuFuLBSHz9G563ite37gLoUTm1MwRTa4KYQK+oZx0Pm4Ny1fBl06vA+6/zJLLg==","signatures":[{"sig":"MEUCIQDIAYTUO34y1GgHJ8hOdloMkJ97/RRj3MhQhXO9jA08lAIgCyQ/PcbqZXBpvASdQPC3b0S/eeGz5sTXk/8UpSA59rg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":79843887},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"e3ecb5ff6132c48f2371e4e4a21b5f017c1e32dc","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.11.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.11.0_1783137929661_0.26723349934983043","host":"s3://npm-registry-packages-npm-production"}},"3.12.0":{"name":"@syngrisi/syngrisi","version":"3.12.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.12.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"190f5cc1105d218e5bb7849d7cb3e00702c10956","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.12.0.tgz","fileCount":1175,"integrity":"sha512-MlSMmuHY1MiXGaTM9Kh2JV9sNXZss9PsB9jOjbDr01EqFqZqjDoVN+P7PU2ijmdVRHicEQfCwTgz0qtBNn5RxA==","signatures":[{"sig":"MEQCIDEYKPX6hJr6b+BAT983CCZ5MKh5HLyWO4hTpJ1pDptQAiAyE2kFadmb4tMks0oX9ibzv23fIHJeRCZpUE//mF0f0Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":79986083},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"77626d70897318fcfb416e0f85ee95b79d7b98f2","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.12.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.12.0_1783159118667_0.9539455578000866","host":"s3://npm-registry-packages-npm-production"}},"3.13.0":{"name":"@syngrisi/syngrisi","version":"3.13.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.13.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"a19da8e635f1220e780eae40efdd39df0efb994a","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.13.0.tgz","fileCount":1174,"integrity":"sha512-OodZRF/3B2LaprEpcA/IivxxREcQoSiWyBrJpKI2+s/v/TBN0C6No6Y1NNiAPA9tEkSCZWAK1atPhjcFMJ9mVA==","signatures":[{"sig":"MEUCIQC+J/UdScGns4E7wqBbCT9stueSUo+ItIEWR0OZ6I5gxQIgB17YC4NPbDCJ08Cpdjg2tbFTx0PU2XeVCWez9oVWXuc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":79981205},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"85387d4336180caf19234292684dce77992c25b6","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.13.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.13.0_1783169197876_0.010814415371373842","host":"s3://npm-registry-packages-npm-production"}},"3.14.0":{"name":"@syngrisi/syngrisi","version":"3.14.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.14.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"76a98b2fa14803daa30a417fab2473856e5ad5d4","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.14.0.tgz","fileCount":1175,"integrity":"sha512-cbYjIvoSeZKvnPWtvngTvqb5La9tWAHu20Afh/zblyd/gHr6rhNxnbXHwxw6ppoicmfyPimr4CnA2dnZADbsZA==","signatures":[{"sig":"MEYCIQDdU0UkAyxyWER3/GhFuEmBBD7TXWghPsIXzBKklA5FtQIhAIEtDVv+srMdp+jXOS1oqH6XknZKdQZ5SDUmbe7GhK3q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":80408679},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"680dbb9a411c22e8830cbfa2563ad11d0a41a840","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.14.0","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.14.0_1783182351798_0.525381768531028","host":"s3://npm-registry-packages-npm-production"}},"3.14.1":{"name":"@syngrisi/syngrisi","version":"3.14.1","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.14.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"2527b127a79b1fa4f76985ba8b2cd0a798187ea0","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.14.1.tgz","fileCount":1175,"integrity":"sha512-8qmSQiDdle4lviTFqtQ1lXp4NrDn6rm/2bJBc93GsSFFm6XpSKSTBkkRdALu4q7VQVo1QNx9u4OyG6ZbPdl0Tw==","signatures":[{"sig":"MEUCID3/BALlY0e2jyR5d9JGM7kmXuLy/0vwnG9GVY2XsgbTAiEAjylQBeC0dzvAcpWGVgmj2/Lg6JKqWKYgrGGBEmZnQOY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.14.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":80408679},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"4516b5a252b8f549453f141dbc3bcb1d779fceb1","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","install:ui":"cd src/ui-app && yarn install && cd --","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server && yarn install:ui","test:docker":"cd e2e && yarn test:docker","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","pngjs":"^7.0.0","dotenv":"^17.4.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","connect-mongo":"^6.0.0","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.14.1","@asteasolutions/zod-to-openapi":"^8.5.0"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.14.1_1783237991339_0.6685697868914593","host":"s3://npm-registry-packages-npm-production"}},"3.15.0":{"name":"@syngrisi/syngrisi","version":"3.15.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.15.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"b73ac567a8338e47ecc79d9f0024ac56ff88c788","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.15.0.tgz","fileCount":1254,"integrity":"sha512-cs4kpfF9/3vv+Qv92vHCf9KE346n2c3idGCRHJImfSwa7STfr0t1SLSu/mpn/IfPKutp1XI+JnPrBzkTVaA9aw==","signatures":[{"sig":"MEQCIDMVv4r/Rua6emwR7xyj0ey1q0A4sEjKUTtInH1qyXNzAiBofjs77DlyoZ7jG5sH3hy9AqsbGZZlqQT5qdC6jFV8mQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":90697596},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"8399aedee1cf7a73fa4ca4a3cb38f303f1593004","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","test:server":"tsx --test 'src/server/**/*.test.ts'","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dayjs":"^1.11.10","pngjs":"^7.0.0","dotenv":"^17.4.2","fabric":"^5.5.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","date-fns":"^4","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","react-router":"^7","react-window":"^2.2.7","@mantine/core":"^9","@mantine/form":"^9","connect-mongo":"^6.0.0","@mantine/dates":"^9","@mantine/hooks":"^9","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","@mantine/modals":"^9","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","@mantine/nprogress":"^9","@mantine/spotlight":"^9","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","@tabler/icons-react":"^3.30.0","react-error-boundary":"^4","@tanstack/react-query":"^5","@mantine/notifications":"^9","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.15.0","react-intersection-observer":"^9.16.0","@asteasolutions/zod-to-openapi":"^8.5.0","@tanstack/react-query-devtools":"^5"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.15.0_1783264753816_0.6481214908999506","host":"s3://npm-registry-packages-npm-production"}},"3.15.1":{"name":"@syngrisi/syngrisi","version":"3.15.1","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.15.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"4b0092cc2af273b34404110f5937f2140fcdaca4","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.15.1.tgz","fileCount":1256,"integrity":"sha512-lL2xCso09FOjEGpO0U+4xG+XLWawaGFDuceW3QDTFMCKul9G6sU/4mqUkjjgWy+PIfNO+/DxhQnVqmWdDj/R+A==","signatures":[{"sig":"MEUCIQCFX3RjiJybl0xMARvL49fhfkVrm0HJndrjueexHJYB5wIgBRxTp60kKcA2q4Fj0V9EsFnF8RRCGC9XV4NPSFdAsK8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.15.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":90879803},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"07b88a8573a224e790f599b09109782a9b3e3d9f","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","lint:ui":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./src/ui-app/.eslintrc.cjs 'src/ui-app/**/*.{ts,tsx}'","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","test:server":"tsx --test 'src/server/**/*.test.ts'","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","typecheck:ui":"tsc -p src/ui-app/tsconfig.json --noEmit --ignoreDeprecations 6.0","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dayjs":"^1.11.10","pngjs":"^7.0.0","dotenv":"^17.4.2","fabric":"^5.5.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","date-fns":"^4","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","react-router":"^7","react-window":"^2.2.7","@mantine/core":"^9","@mantine/form":"^9","connect-mongo":"^6.0.0","@mantine/dates":"^9","@mantine/hooks":"^9","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","@mantine/modals":"^9","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","@mantine/nprogress":"^9","@mantine/spotlight":"^9","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","@tabler/icons-react":"^3.30.0","react-error-boundary":"^4","@tanstack/react-query":"^5","@mantine/notifications":"^9","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.15.1","react-intersection-observer":"^9.16.0","@asteasolutions/zod-to-openapi":"^8.5.0","@tanstack/react-query-devtools":"^5"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.15.1_1783332995049_0.00992198948699552","host":"s3://npm-registry-packages-npm-production"}},"3.16.0":{"name":"@syngrisi/syngrisi","version":"3.16.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.16.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"750746c760d873bda1f9c7393fbd4698cb98421c","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.16.0.tgz","fileCount":1262,"integrity":"sha512-HqNK9RN4UGRT+rTaF1JgMbixTrtJ79BDWewYt4u7cOvEwezElPnLi6u1NxIsikxzWzCHPEnBi4c/OzzVdGYMVw==","signatures":[{"sig":"MEYCIQDM5nuk0qojmlI+GxtQYAq5dlVxNLcHiN65WP0usL3iIgIhAKsemUkQmiwFDa/m1Lmdc9xicoFNcOOQJ2ZPyB5Nk6D7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":91398082},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"fe1663bce3a1db72833fe1434c9030b5f75c0b7d","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","lint:ui":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./src/ui-app/.eslintrc.cjs 'src/ui-app/**/*.{ts,tsx}'","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","test:server":"tsx --test 'src/server/**/*.test.ts'","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","typecheck:ui":"tsc -p src/ui-app/tsconfig.json --noEmit --ignoreDeprecations 6.0","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dayjs":"^1.11.10","pngjs":"^7.0.0","dotenv":"^17.4.2","fabric":"^5.5.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","date-fns":"^4","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","react-router":"^7","react-window":"^2.2.7","@mantine/core":"^9","@mantine/form":"^9","connect-mongo":"^6.0.0","@mantine/dates":"^9","@mantine/hooks":"^9","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","@mantine/modals":"^9","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","@mantine/nprogress":"^9","@mantine/spotlight":"^9","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","@tabler/icons-react":"^3.30.0","react-error-boundary":"^4","@tanstack/react-query":"^5","@mantine/notifications":"^9","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.16.0","react-intersection-observer":"^9.16.0","@asteasolutions/zod-to-openapi":"^8.5.0","@tanstack/react-query-devtools":"^5"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.16.0_1783355718381_0.9074168495266115","host":"s3://npm-registry-packages-npm-production"}},"3.16.1":{"name":"@syngrisi/syngrisi","version":"3.16.1","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.16.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"512473ca4d1de0745e4f5c2506528ede6beff6ae","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.16.1.tgz","fileCount":1262,"integrity":"sha512-y5uekcoVx8OYvC2mVJ9QVuxLPZ/0ZWLdJM2PdY/UkBdN+hhH4O804z4mX4xFOy3Cf2nD48xDvwqrvInW07MaDg==","signatures":[{"sig":"MEQCIGAFhhXyJo7RwJ+NkXk2kE3AJ8OSMjINz7jjFaWAKrIpAiB6D4SLgTUwW6j0u2kaTRCoVBX1vqu+NlppqyfYn6Oh7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.16.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":91661180},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"2a7ef02034fd214147e38c11c96e3096cfe70b16","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","lint:ui":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./src/ui-app/.eslintrc.cjs 'src/ui-app/**/*.{ts,tsx}'","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","test:server":"tsx --test 'src/server/**/*.test.ts'","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","typecheck:ui":"tsc -p src/ui-app/tsconfig.json --noEmit --ignoreDeprecations 6.0","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dayjs":"^1.11.10","pngjs":"^7.0.0","dotenv":"^17.4.2","fabric":"^5.5.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","date-fns":"^4","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","react-router":"^7","react-window":"^2.2.7","@mantine/core":"^9","@mantine/form":"^9","connect-mongo":"^6.0.0","@mantine/dates":"^9","@mantine/hooks":"^9","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","@mantine/modals":"^9","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","@mantine/nprogress":"^9","@mantine/spotlight":"^9","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","@tabler/icons-react":"^3.30.0","react-error-boundary":"^4","@tanstack/react-query":"^5","@mantine/notifications":"^9","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.16.1","react-intersection-observer":"^9.16.0","@asteasolutions/zod-to-openapi":"^8.5.0","@tanstack/react-query-devtools":"^5"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.16.1_1783417254003_0.8295190672990915","host":"s3://npm-registry-packages-npm-production"}},"3.17.0":{"name":"@syngrisi/syngrisi","version":"3.17.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.17.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"f28cc6fc52ade8b438ccd4d6a4da2c4b67f93c95","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.17.0.tgz","fileCount":1262,"integrity":"sha512-lKzBeqXvHA2NdIn2LwXqo1JhYJ+eIk2KvcnqWXuXftAbfJ4UZ2SA7Ibn+VxzvfUJKEMDY+eyGR65BMHHmTgGaQ==","signatures":[{"sig":"MEUCIFzDloLzy65S+1Hd1gckIy41fghrck7z1W7oW8p0BshCAiEA68SeX6cwggmhWosl3qL3nIA2Xch/5OGCiN5G4JDhs4A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@syngrisi%2fsyngrisi@3.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":91661180},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"d674bf0296c42762f95d883d313fd1612c24e3ff","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","lint:ui":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./src/ui-app/.eslintrc.cjs 'src/ui-app/**/*.{ts,tsx}'","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","test:server":"tsx --test 'src/server/**/*.test.ts'","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","typecheck:ui":"tsc -p src/ui-app/tsconfig.json --noEmit --ignoreDeprecations 6.0","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"lerna/9.0.7/node@v22.23.1+x64 (linux)","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dayjs":"^1.11.10","pngjs":"^7.0.0","dotenv":"^17.4.2","fabric":"^5.5.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","date-fns":"^4","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","react-router":"^7","react-window":"^2.2.7","@mantine/core":"^9","@mantine/form":"^9","connect-mongo":"^6.0.0","@mantine/dates":"^9","@mantine/hooks":"^9","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","@mantine/modals":"^9","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","@mantine/nprogress":"^9","@mantine/spotlight":"^9","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","@tabler/icons-react":"^3.30.0","react-error-boundary":"^4","@tanstack/react-query":"^5","@mantine/notifications":"^9","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.17.0","react-intersection-observer":"^9.16.0","@asteasolutions/zod-to-openapi":"^8.5.0","@tanstack/react-query-devtools":"^5"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.17.0_1783592368847_0.3729896456634094","host":"s3://npm-registry-packages-npm-production"}},"3.18.0":{"name":"@syngrisi/syngrisi","version":"3.18.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.18.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"deb30607ab7a426546eec2fceefe964de457b1e1","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.18.0.tgz","fileCount":1285,"integrity":"sha512-hCelCTPbcwD3Wj1kjf1zY2MZSSY9qr6nYULUGd+XNfhrY8aLveNvH8enNp23BOd8l1cRrdPS2JYo/Z/eTGcdXg==","signatures":[{"sig":"MEYCIQCyxU2NVhE15QXpZac5SmwyDiJhts6s3E3v++MXtlotpAIhANGdfMdjIT0CmcFhh4VzFJSwn4ritBZsjU3/x+xIIi3M","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93728908},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"12bfda406cbe5aaccf3f17fdab02a9bd1a9d6343","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","lint:ui":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./src/ui-app/.eslintrc.cjs 'src/ui-app/**/*.{ts,tsx}'","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","test:server":"tsx --test 'src/server/**/*.test.ts'","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","typecheck:ui":"tsc -p src/ui-app/tsconfig.json --noEmit --ignoreDeprecations 6.0","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"12.0.1","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dayjs":"^1.11.10","pngjs":"^7.0.0","dotenv":"^17.4.2","fabric":"^5.5.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","date-fns":"^4","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","react-router":"^7","react-window":"^2.2.7","@mantine/core":"^9","@mantine/form":"^9","connect-mongo":"^6.0.0","@mantine/dates":"^9","@mantine/hooks":"^9","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","@mantine/modals":"^9","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","@mantine/nprogress":"^9","@mantine/spotlight":"^9","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","@tabler/icons-react":"^3.30.0","react-error-boundary":"^4","@tanstack/react-query":"^5","@mantine/notifications":"^9","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.18.0","react-intersection-observer":"^9.16.0","@asteasolutions/zod-to-openapi":"^8.5.0","@tanstack/react-query-devtools":"^5"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.18.0_1784892502351_0.6857571034074545","host":"s3://npm-registry-packages-npm-production"}},"3.18.1":{"name":"@syngrisi/syngrisi","version":"3.18.1","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.18.1","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"82a5c9bf58c2691af4fab4c2ae216f3c665b4c2c","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.18.1.tgz","fileCount":1285,"integrity":"sha512-3T0xUU5yWWqe0Dv+z3LcBeyrk9bjsp39ipWBvINHTwG4xjuUjWN6Hp+GUV2qhvOAemtfqAg6WVu0Jx18CT2xOg==","signatures":[{"sig":"MEYCIQDLOIYHjHmbF58kEp7iugktIqgnyCxBN0lL6OcDEAnMowIhANFbex7yL5QMWwRV8QamyImo4749vLFxOuJ6wdhekCi8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93729547},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"12bfda406cbe5aaccf3f17fdab02a9bd1a9d6343","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","lint:ui":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./src/ui-app/.eslintrc.cjs 'src/ui-app/**/*.{ts,tsx}'","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","test:server":"tsx --test 'src/server/**/*.test.ts'","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","typecheck:ui":"tsc -p src/ui-app/tsconfig.json --noEmit --ignoreDeprecations 6.0","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"12.0.1","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dayjs":"^1.11.10","pngjs":"^7.0.0","dotenv":"^17.4.2","fabric":"^5.5.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","date-fns":"^4","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","react-router":"^7","react-window":"^2.2.7","@mantine/core":"^9","@mantine/form":"^9","connect-mongo":"^6.0.0","@mantine/dates":"^9","@mantine/hooks":"^9","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","@mantine/modals":"^9","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","@mantine/nprogress":"^9","@mantine/spotlight":"^9","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","@tabler/icons-react":"^3.30.0","react-error-boundary":"^4","@tanstack/react-query":"^5","@mantine/notifications":"^9","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.18.1","react-intersection-observer":"^9.16.0","@asteasolutions/zod-to-openapi":"^8.5.0","@tanstack/react-query-devtools":"^5"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.18.1_1784898391632_0.3072244617545561","host":"s3://npm-registry-packages-npm-production"}},"3.19.0":{"name":"@syngrisi/syngrisi","version":"3.19.0","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","_id":"@syngrisi/syngrisi@3.19.0","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"bin":{"sy":"dist/server/server.js"},"nyc":{"all":true,"exclude":["**/*.test.js","coverage/**","node_modules/**"],"include":["src/server/**/*.js"],"reporter":["json"],"extension":[".js"]},"dist":{"shasum":"952da247f37bd8363564be81ae5d3f8525da2b83","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.19.0.tgz","fileCount":1298,"integrity":"sha512-2DIRVSTGHik/F9zuBNgaMc2JkWPFwKsGFrmPhrDUkaA0+jownGLCS88hKMH2RLVEKMkJvin38y35zwnz4zaziA==","signatures":[{"sig":"MEQCID2ywDnp83IzaOjNSmpLl5hqe7kW03JouSlwcnAiXdv2AiBO2Hrb2UriQgHD4KUJJYfFNMdNe85A+n9wKuMatQ7/ow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95036768},"main":"./dist/server/server.js","type":"module","engines":{"node":">=22.19.0"},"gitHead":"12bfda406cbe5aaccf3f17fdab02a9bd1a9d6343","scripts":{"dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","pub":"np --yolo --no-publish","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed","test":"yarn build && cd e2e && yarn test","build":"yarn build:ui && yarn build:server","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","smoke":"cd e2e && yarn test:smoke","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","dev:ui":"vite","lint:ui":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./src/ui-app/.eslintrc.cjs 'src/ui-app/**/*.{ts,tsx}'","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","test:mcp":"cd e2e && yarn test:mcp","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","start:mcp":"cd e2e && yarn start:mcp","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","test:server":"tsx --test 'src/server/**/*.test.ts'","build:server":"yarn clean:server && npx tsup","clean:server":"rimraf dist","server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","tasks:backup":"node dist/src/tasks/backup.js","typecheck:ui":"tsc -p src/ui-app/tsconfig.json --noEmit --ignoreDeprecations 6.0","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","tasks:reindex":"node dist/tasks/reindex.js","tasks:restore":"node dist/src/tasks/restore.js","install:server":"yarn install","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","task:old-baselines":"node dist/tasks/cli/handle-old-baselines.cli.js","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"repository":{"url":"git+https://github.com/syngrisi/syngrisi.git","type":"git"},"_npmVersion":"12.0.1","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","bson":"^7.3.0","jose":"^6.2.3","dayjs":"^1.11.10","pngjs":"^7.0.0","dotenv":"^17.4.2","fabric":"^5.5.2","helmet":"^8.2.0","envalid":"^8.2.0","express":"^5.2.1","winston":"^3.19.0","date-fns":"^4","mongoose":"^9.7.1","passport":"^0.7.0","tar-stream":"^3.2.0","compression":"^1.8.1","react-router":"^7","react-window":"^2.2.7","@mantine/core":"^9","@mantine/form":"^9","connect-mongo":"^6.0.0","@mantine/dates":"^9","@mantine/hooks":"^9","passport-local":"^1.0.0","path-to-regexp":"^8.4.2","@mantine/modals":"^9","express-session":"^1.19.0","fast-xml-parser":"^5.9.3","passport-oauth2":"^1.8.0","winston-mongodb":"^7.0.1","@inquirer/prompts":"^8.5.2","@mantine/nprogress":"^9","@mantine/spotlight":"^9","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","swagger-ui-express":"^5.0.1","@tabler/icons-react":"^3.30.0","react-error-boundary":"^4","@tanstack/react-query":"^5","@mantine/notifications":"^9","passport-google-oauth20":"^2.0.0","passport-local-mongoose":"^9.1.0","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.19.0","react-intersection-observer":"^9.16.0","@asteasolutions/zod-to-openapi":"^8.5.0","@tanstack/react-query-devtools":"^5"},"nodemonConfig":{"delay":500,"ignore":["mvc/views/lib/*.js"],"include":["dist"]},"_hasShrinkwrap":false,"devDependencies":{"ink":"^7.1.0","tsx":"^4.22.4","sass":"^1.101.0","tsup":"^8.5.1","vite":"^8.0.16","react":"^19.2.7","eslint":"^9.39.4","rimraf":"^6.1.3","nodemon":"^3.1.14","ts-node":"^10.9.2","cross-env":"^10.1.0","react-dom":"^19.2.7","typescript":"^6.0.3","@types/node":"^26.0.0","@types/react":"^19.2.17","concurrently":"^10.0.3","@types/fabric":"^5.3.11","@types/express":"^5.0.6","playwright-bdd":"^9.2.0","@types/passport":"^1.0.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@vitejs/plugin-react":"^6.0.2","eslint-plugin-custom":"file:.eslint","@types/passport-local":"^1.0.38","@types/express-session":"^1.19.0","@types/passport-oauth2":"^1.8.0","@types/express-fileupload":"^1.5.1","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/parser":"^8.61.1","@types/passport-google-oauth20":"^2.0.17","@typescript-eslint/eslint-plugin":"^8.61.1"},"_npmOperationalInternal":{"tmp":"tmp/syngrisi_3.19.0_1784957239223_0.9106924675591417","host":"s3://npm-registry-packages-npm-production"}},"3.19.1":{"name":"@syngrisi/syngrisi","version":"3.19.1","description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","main":"./dist/server/server.js","type":"module","bin":{"sy":"dist/server/server.js"},"repository":{"type":"git","url":"git+https://github.com/syngrisi/syngrisi.git"},"engines":{"node":">=22.19.0"},"homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"nodemonConfig":{"ignore":["mvc/views/lib/*.js"],"include":["dist"],"delay":500},"scripts":{"server:watch":"npx tsup --watch --onSuccess \"node ./dist/server/server.js\" # compile all server ts files changes","start":"if [ \"$NODE_ENV\" = \"development\" ]; then yarn server:watch; else node ./dist/server/server.js; fi","start:dev":"cross-env SYNGRISI_AUTH=true SYNGRISI_TEST_MODE=true SYNGRISI_ENABLE_SCHEDULERS_IN_TEST_MODE=true npx tsup --watch --onSuccess \"node ./dist/server/server.js\"","test":"yarn build && cd e2e && yarn test","test:mcp":"cd e2e && yarn test:mcp","test:mcp:test-engine":"cd e2e && yarn test:mcp:test-engine","start:mcp":"cd e2e && yarn start:mcp","start:mcp:bridge":"cd e2e && yarn start:mcp:bridge","build":"yarn build:ui && yarn build:server","clean:server":"rimraf dist","build:ui":"rm -rf mvc/views/react/assets && cross-env VITE_ROOT_PATH='./src/ui-app/' vite build","build:server":"yarn clean:server && npx tsup","install:server":"yarn install","install:all":"yarn install:server","test:docker":"cd e2e && yarn test:docker","smoke":"cd e2e && yarn test:smoke","staging:test":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts","staging:test:smoke":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-smoke","staging:test:extended":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-extended","staging:test:maintenance":"cd e2e && npx bddgen --config playwright.staging.config.ts && npx playwright test --config playwright.staging.config.ts --project staging-maintenance","staging:test:readonly":"./scripts/staging/run-readonly-tests.sh","staging:test:readwrite":"./scripts/staging/run-readwrite-tests.sh","staging:test:polluting":"./scripts/staging/run-polluting-tests.sh","staging:test:all":"./scripts/staging/run-all-staging-tests.sh","test:migrations":"tsx --test src/server/migrations/__tests__/migrationRunner.test.ts","test:server":"tsx --test 'src/server/**/*.test.ts'","typecheck":"tsc -p tsconfig.json --noEmit --ignoreDeprecations 6.0","typecheck:ui":"tsc -p src/ui-app/tsconfig.json --noEmit --ignoreDeprecations 6.0","lint":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./.eslintrc.cjs 'src/server/**/*.ts'","lint:ui":"ESLINT_USE_FLAT_CONFIG=false eslint -c ./src/ui-app/.eslintrc.cjs 'src/ui-app/**/*.{ts,tsx}'","dev":"npx concurrently -k -n \"UI,SERVER\" -c \"magenta,blue\" \"yarn dev:ui\" \"cross-env SYNGRISI_AUTH=false yarn server:watch\"","dev:ui":"vite","dev:admin":"cross-env VITE_SYNGRISI_BASED_URL='http://localhost:3000' VITE_INDEX_ROUTE='admin/' vite/' vite #(!) open http://localhost:8080/admin/ ","build:watch":"cross-env VITE_ROOT_PATH='./src/ui-app/' vite build --watch","pub":"np --yolo --no-publish","tasks:reindex":"node dist/tasks/reindex.js","tasks:backup":"node dist/src/tasks/backup.js","tasks:restore":"node dist/src/tasks/restore.js","tasks:migration_2_0":"node src/tasks/migrations/2.0.migration.js","task:consistency":"node dist/tasks/cli/handle-database-consistency.cli.js","task:old-checks":"node dist/tasks/cli/handle-old-checks.cli.js","task:old-baselines":"node dist/tasks/cli/handle-old-baselines.cli.js","task:old-logs":"node dist/tasks/cli/remove-old-logs.cli.js","task:orphan-files":"node dist/tasks/cli/handle-orphan-files.cli.js","task:orphan-snapshots":"node dist/tasks/cli/handle-orphan-snapshots.cli.js","clean":"read -p \"Are you sure you want to clean the project? [y/n] \" REPLY; if [[ $REPLY =~ ^[Yy]$ ]]; then mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png; fi","clean:force":"mongosh SyngrisiDb --eval \"db.dropDatabase();\" && rm -f ./baselines/*.png","start_test":"cross-env SYNGRISI_DB_URI='mongodb://localhost/SyngrisiDbTest' nodemon dist/server/server.js","clear_test":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\" && rm -rf ./baselinesTest/$CID","clear_test_db_only":"mongosh SyngrisiDbTest$CID --eval \"db.dropDatabase();\"","docker_clear_test":"rm -rf ./data/db_data && rm -rf ./baselinesTest/$CID","docker_clear_test_db_only":"rm -rf ./data/db_data","clear_test_screenshots_only":"rm -rf ./baselinesTest/$CID/*","deadfile:fe":"deadfile ./mvc/views/react/index2/index.html ./mvc/views/react/auth/index.html --dir ./mvc/views/react","pkglist":"npx npm-packlist # list of files that will be published in syngrisi package, show the files section","seed":"yarn clean:force && node scripts/init-db.cjs && cd ../../seed-data && yarn install && SYNGRISI_URL=http://localhost:3000 SYNGRISI_API_KEY=123 yarn seed"},"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"license":"MIT","dependencies":{"@asteasolutions/zod-to-openapi":"^8.5.0","@inquirer/prompts":"^8.5.2","@mantine/core":"^9","@mantine/dates":"^9","@mantine/form":"^9","@mantine/hooks":"^9","@mantine/modals":"^9","@mantine/notifications":"^9","@mantine/nprogress":"^9","@mantine/spotlight":"^9","@node-saml/passport-saml":"^5.1.0","@syngrisi/node-resemble.js":"^3.19.1","@tabler/icons-react":"^3.30.0","@tanstack/react-query":"^5","@tanstack/react-query-devtools":"^5","bson":"^7.3.0","compression":"^1.8.1","connect-mongo":"^6.0.0","date-fns":"^4","dayjs":"^1.11.10","dotenv":"^17.4.2","envalid":"^8.2.0","express":"^5.2.1","express-fileupload":"^1.5.2","express-rate-limit":"^8.5.2","express-session":"^1.19.0","fabric":"^5.5.2","fast-xml-parser":"^5.9.3","helmet":"^8.2.0","jose":"^6.2.3","mongoose":"^9.7.1","passport":"^0.7.0","passport-google-oauth20":"^2.0.0","passport-local":"^1.0.0","passport-local-mongoose":"^9.1.0","passport-oauth2":"^1.8.0","path-to-regexp":"^8.4.2","react-error-boundary":"^4","react-intersection-observer":"^9.16.0","react-router":"^7","react-window":"^2.2.7","swagger-ui-express":"^5.0.1","tar-stream":"^3.2.0","winston":"^3.19.0","winston-mongodb":"^7.0.1","zod":"^4.1.13","pngjs":"^7.0.0"},"devDependencies":{"@types/express":"^5.0.6","@types/express-fileupload":"^1.5.1","@types/express-session":"^1.19.0","@types/fabric":"^5.3.11","@types/node":"^26.0.0","@types/passport":"^1.0.17","@types/passport-google-oauth20":"^2.0.17","@types/passport-local":"^1.0.38","@types/passport-oauth2":"^1.8.0","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@types/react-window":"^2.0.0","@types/swagger-ui-express":"^4.1.8","@typescript-eslint/eslint-plugin":"^8.61.1","@typescript-eslint/parser":"^8.61.1","@vitejs/plugin-react":"^6.0.2","concurrently":"^10.0.3","cross-env":"^10.1.0","eslint":"^9.39.4","eslint-plugin-custom":"file:.eslint","ink":"^7.1.0","nodemon":"^3.1.14","playwright-bdd":"^9.2.0","react":"^19.2.7","react-dom":"^19.2.7","rimraf":"^6.1.3","sass":"^1.101.0","ts-node":"^10.9.2","tsup":"^8.5.1","tsx":"^4.22.4","typescript":"^6.0.3","vite":"^8.0.16"},"nyc":{"all":true,"include":["src/server/**/*.js"],"exclude":["**/*.test.js","coverage/**","node_modules/**"],"reporter":["json"],"extension":[".js"]},"gitHead":"12bfda406cbe5aaccf3f17fdab02a9bd1a9d6343","_id":"@syngrisi/syngrisi@3.19.1","_nodeVersion":"22.23.1","_npmVersion":"12.0.1","dist":{"integrity":"sha512-KmeF2sBJy31Sqx94OO29D7v/TE1wYlhq5G3ChR4hwQgKsZ8Q1OkYbIZYXXrsCOgyTMKWJmPAfuYTn+mgQ5tjhw==","shasum":"bbc30ef1bc47e974a309826352d1df2ab39a3919","tarball":"https://registry.npmjs.org/@syngrisi/syngrisi/-/syngrisi-3.19.1.tgz","fileCount":1316,"unpackedSize":97256979,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIE01yzmKtjVReaTfbobjxmDJRFbZ71Pext06iYYLk24WAiEAyGxzsAl+YcRMndqBzQeFJ8/Dw3kUZEoLCPwANpaFhug="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c62850f4-2094-471f-8047-3b8d28eb81dc"}},"directories":{},"maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/syngrisi_3.19.1_1784962076822_0.1282975817812777"},"_hasShrinkwrap":false}},"time":{"created":"2023-12-02T07:27:41.357Z","modified":"2026-07-25T06:47:57.406Z","2.2.1":"2023-12-02T07:27:41.823Z","2.2.2":"2023-12-02T09:02:25.894Z","2.2.3":"2023-12-19T11:38:27.659Z","2.2.6-alpha.0":"2025-01-17T09:13:50.626Z","2.2.7-alpha.0":"2025-01-17T09:58:52.228Z","2.2.8-alpha.0":"2025-01-17T10:05:04.290Z","2.2.9-alpha.0":"2025-01-17T10:21:02.600Z","2.2.10-alpha.0":"2025-01-17T10:36:22.582Z","2.2.11-alpha.0":"2025-01-17T10:43:43.760Z","2.2.12-alpha.0":"2025-01-17T11:12:10.170Z","2.2.14-alpha.0":"2025-01-17T13:10:02.793Z","2.2.15-alpha.0":"2025-01-17T14:48:48.315Z","2.2.16-alpha.0":"2025-01-17T15:43:56.057Z","2.2.17-alpha.0":"2025-01-19T06:17:11.077Z","2.2.18-alpha.0":"2025-01-19T08:17:07.896Z","2.2.21-alpha.0":"2025-01-19T10:35:52.538Z","2.2.22-alpha.0":"2025-01-19T10:50:04.341Z","2.2.23-alpha.0":"2025-01-19T10:58:54.390Z","2.2.24-alpha.0":"2025-01-19T11:50:51.870Z","2.2.26-alpha.0":"2025-01-19T12:47:09.113Z","2.2.27-alpha.0":"2025-03-17T10:25:25.040Z","2.2.5":"2025-04-29T04:23:17.434Z","2.3.0":"2025-11-17T15:45:45.261Z","2.3.1":"2025-11-17T16:45:54.753Z","2.3.2":"2025-11-17T19:17:03.786Z","2.3.4":"2025-11-17T19:55:06.991Z","2.4.0":"2025-12-07T04:22:42.507Z","2.4.1":"2025-12-07T13:32:37.907Z","2.5.0":"2025-12-08T19:30:56.198Z","2.5.1":"2025-12-09T13:19:20.650Z","2.5.2":"2025-12-10T13:14:12.703Z","2.5.3":"2025-12-11T21:08:59.583Z","2.6.0":"2025-12-12T07:02:32.517Z","2.6.1":"2025-12-12T20:20:17.422Z","3.0.0":"2025-12-15T08:20:39.155Z","3.1.0":"2025-12-15T13:36:06.913Z","3.1.1":"2025-12-16T12:49:09.130Z","3.1.2":"2025-12-17T14:20:39.946Z","3.1.3":"2025-12-17T18:21:12.011Z","3.1.4":"2026-02-01T16:31:13.419Z","3.1.5":"2026-02-06T19:53:32.788Z","3.1.6":"2026-02-25T20:14:03.339Z","3.1.7":"2026-02-26T10:10:26.484Z","3.2.0":"2026-03-30T04:25:29.364Z","3.2.1":"2026-03-30T13:42:58.899Z","3.2.2":"2026-04-01T13:51:27.794Z","3.2.3":"2026-04-02T09:56:52.506Z","3.3.0":"2026-04-02T11:09:47.344Z","3.3.1":"2026-04-02T17:06:59.918Z","3.4.0":"2026-04-08T11:07:46.639Z","3.4.1":"2026-04-12T13:56:24.444Z","3.4.2":"2026-04-12T14:48:12.756Z","3.4.3":"2026-04-12T17:46:03.103Z","3.4.4":"2026-04-14T12:53:52.996Z","3.4.5":"2026-04-14T19:47:22.372Z","3.4.6":"2026-04-15T08:19:40.572Z","3.4.7":"2026-04-27T18:18:13.091Z","3.4.8":"2026-04-28T07:08:56.806Z","3.5.0":"2026-04-28T15:56:53.099Z","3.5.1":"2026-06-22T10:46:17.545Z","3.6.0":"2026-06-24T22:10:09.734Z","3.7.0":"2026-06-26T16:18:55.762Z","3.8.0":"2026-06-29T03:39:15.895Z","3.9.0":"2026-06-29T06:30:59.059Z","3.9.1":"2026-06-29T11:00:14.253Z","3.9.2":"2026-07-02T07:01:25.297Z","3.10.0":"2026-07-02T18:37:51.485Z","3.10.1":"2026-07-03T04:42:35.576Z","3.11.0":"2026-07-04T04:05:30.073Z","3.12.0":"2026-07-04T09:58:39.107Z","3.13.0":"2026-07-04T12:46:38.407Z","3.14.0":"2026-07-04T16:25:52.208Z","3.14.1":"2026-07-05T07:53:11.730Z","3.15.0":"2026-07-05T15:19:14.252Z","3.15.1":"2026-07-06T10:16:35.455Z","3.16.0":"2026-07-06T16:35:18.809Z","3.16.1":"2026-07-07T09:40:54.388Z","3.17.0":"2026-07-09T10:19:29.274Z","3.18.0":"2026-07-24T11:28:22.747Z","3.18.1":"2026-07-24T13:06:32.119Z","3.19.0":"2026-07-25T05:27:19.625Z","3.19.1":"2026-07-25T06:47:57.239Z"},"bugs":{"url":"https://github.com/syngrisi/syngrisi/issues"},"author":{"name":"Viktar Silakou","email":"1105714@gmail.com"},"license":"MIT","homepage":"https://github.com/syngrisi/syngrisi/tree/main/packages/syngrisi","keywords":["testing","regression","visual","screenshots","comparison","open-source","platform","visual-regression-testing","visual-testing-platform"],"repository":{"type":"git","url":"git+https://github.com/syngrisi/syngrisi.git"},"description":"Syngrisi - Visual Testing Platform - open-source visual regression testing platform","maintainers":[{"name":"svp1105714","email":"1105714@gmail.com"}],"readme":"# Syngrisi: Visual Testing Platform <a name=\"about\"></a>\n\nSyngrisi is an open-source visual regression testing platform designed to facilitate automated visual testing. It seamlessly integrates with both new and\nexisting test automation kits, providing an API for automated solutions and a user-friendly UI for reviewing and\nmanaging visual test data.\n\n**🧠 New — AI Triage (beta):** a vision-LLM classifies every failed check (intended change / likely bug / noise) with a confidence score, so you review verdicts instead of a wall of red diffs. Fully self-hosted — point it at a local model via Ollama and screenshots never leave your infrastructure. See [AI_TRIAGE.md](AI_TRIAGE.md).\n\n## Try with a Single-Click\n\nTo quickly preview the project without setting it up locally, click the 'Open in Gitpod' button. Gitpod will automatically set up an environment, install the [Syngrisi Cucumber Boilerplate Project](https://github.com/syngrisi/syngrisi-cucumber-boilerplate), and launch the Syngrisi instance for you.\n\n[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/syngrisi/syngrisi-cucumber-boilerplate)\n\n## System Prerequisites <a name=\"prerequisites\"></a>\n\nThere are two modes in which Syngrisi can be run:\n\n- **Native Mode:** Utilize Node.js to run Syngrisi directly on your operating system for local execution.\n- **Container Mode:** Utilizing Docker and Docker Compose, this mode is more apt for production environments.\n\n### Native Mode\n\n- [NodeJS](https://nodejs.org/en/download/) `v22.19.0` or above.\n- [MongoDB Community Edition](https://docs.mongodb.com/manual/administration/install-community/) `8.0` or above (7.0 is also supported)\n\n### Container Mode\n\n- [Docker + Docker Compose](https://docs.docker.com/engine/install/)\n\n## Quick Start\n\n<https://user-images.githubusercontent.com/23633060/225095007-39ee0a29-61c1-4f46-99ab-1af67052accb.mp4>\n\n> [!TIP]\n> If you want to try Syngrisi for the first time, you can use [boilerplate projects](#boilerplates); they are installed easily and quickly and allow you to evaluate the basic capabilities of the tool.\n\n### Native Mode Installation\n\nTo install Syngrisi in the current folder:\n\n```bash\nnpm init sy@latest\n```\n\nTo install to a specific folder:\n\n```bash\nnpm init sy@latest <path_to_syngrisi>\n```\n\nFor more details on setup customization, refer to the [create-sy](../create-sy) package documentation.\n\n> [!IMPORTANT]\n> Ensure that MongoDB is running before starting Syngrisi in **native** mode.\n\nTo run the server, execute:\n\n```shell script\nnpx sy\n```\n\n### Container Mode Installation\n\nIn addition to running the application natively, it can also be launched in a Docker container using a Docker Compose\nfile. To download and execute Docker and Docker Compose files for Syngrisi, follow these steps:\n\n```bash\n# Check if docker-compose is installed\ncommand -v docker compose >/dev/null 2>&1 || { echo >&2 \"docker-compose is required; please install it and run this command again.\"; exit 1; }\n\n# Create the project folder\nmkdir my_new_syngrisi_project && cd my_new_syngrisi_project\n\n# Download Docker and Docker Compose files\ncurl -LO https://raw.githubusercontent.com/syngrisi/syngrisi/main/packages/syngrisi/syngrisi-app.dockerfile\ncurl -LO https://raw.githubusercontent.com/syngrisi/syngrisi/main/packages/syngrisi/docker-compose.yml\n\n# Create and start services\nsudo docker compose up\n```\n\n> [!NOTE]\n> By default Docker pulls the `latest` npm tag of `@syngrisi/syngrisi`. To pin a specific release, set `SYNGRISI_NPM_TAG`, e.g. `SYNGRISI_NPM_TAG=2.3.0 docker compose up`.\n\nYou are free to modify the Docker Compose file according to your requirements. Ensure that service definitions and options are set up correctly; otherwise, services may not function as expected.\n\nEnvironment variables for Docker Compose can be configured either in an environment file or directly in the shell. For detailed\nconfiguration instructions, please refer to the Syngrisi documentation.\n\n```shell script\nsudo docker compose up\n```\n\n## Syngrisi Boilerplates  <a name=\"boilerplates\"></a>\n\nTo quickly take a look at Syngrisi or start a new automation test project, you can use one of the boilerplates:\n\n- [Syngrisi Cucumber Boilerplate project](https://github.com/syngrisi/syngrisi-cucumber-boilerplate): the project contains all the necessary steps for functional tests + steps for visual checks.\n- [Syngrisi Playwright Boilerplate](https://github.com/syngrisi/syngrisi-playwright-boilerplate): Starter project for functional Playwright tests with the ability to do visual checks based on Syngrisi\n\n## Configuration via Environment Variables <a name=\"env\"></a>\n\nCustomize Syngrisi's behavior effortlessly using environment variables, without any need to modify the codebase.\nThe System Environment variables have priority more than correspondent Syngrisi Admin Settings if they exist.\nFor example, to set the log level to debug, use the following command:\n\nWindows:`set SYNGRISI_LOG_LEVEL=debug`\nmacOS/Linux: `export SYNGRISI_LOG_LEVEL=debug`\n\nYou can also include the variables in your `.env` or modify variables in `docker-compose.yml` file before start Syngrisi\nservice.\n\nMore details on environment variables are available in the [docs/environment_variables.md](docs/environment_variables.md) file.\n\n## API documentation\n\nTo view the OpenAPI documentation, use Swagger. The documentation is available at:\n\nSwagger UI: `http://your-domain/swagger/`\n\nSwagger JSON: `http://your-domain/swagger/json`\n\n## Devices list <a name=\"devices\"></a>\n\nSyngrisi includes a [list](./static/data/custom_devices.json) of recognized devices, sourced from BrowserStack.\n\nThe application sets the platform icon based on this list. Do not edit this file directly. If you wish to add your own devices, simply create an additional file named `custom_devices.json`; the data from this file will be appended to the main list.\n\n## Development\n\n> [!NOTE]\n> Before setting up your project, make sure MongoDB is installed.\n\n- Clone the repository and go to the Syngrisi package folder.\n\n    ```sh\n    git clone git@github.com:syngrisi/syngrisi.git\n    cd syngrisi/packages/syngrisi/\n    ```\n\n- Install dependensies\n\n    ```sh\n    npm run install:all\n    ```\n\n- Build the project\n\n    ```sh\n    npm run build\n    ```\n\n- Copy `.env.template` to `.env` and set your own variables if needed\n\n    ```sh\n    cp .env.template .env\n    ```\n\n- Start the application\n\n    ```sh\n    npm start\n    ```\n\n- Or use development mode (builds UI once, watches server, auth disabled)\n\n    ```sh\n    npm run dev\n    ```\n\n## Seed Demo Data <a name=\"seed-data\"></a>\n\nTo quickly populate your Syngrisi instance with demo data for evaluation and testing purposes, use the seed script:\n\n```sh\nnpm run seed\n```\n\n**What it does:**\n- Creates test data with various check statuses (NEW, PASSED, FAILED)\n- Generates tests across different browsers (Chromium, Firefox, WebKit)\n- Creates tests for multiple branches (main, develop, feature/*, release/*)\n- Populates tests with different viewport sizes\n- Creates mixed-status tests to demonstrate all application features\n\n**Requirements:**\n- Syngrisi server must be running (`npm start`)\n- MongoDB must be accessible\n- Default connection: `http://localhost:3000` with API key `123`\n\n**Use cases:**\n- **First-time evaluation**: Quickly see what Syngrisi can do with pre-populated realistic data\n- **Demo/Presentation**: Showcase Syngrisi features without running actual tests\n- **Development**: Test UI components and features with consistent data\n- **QA/Testing**: Verify application behavior with various test scenarios\n\n**Customization:**\n\nYou can customize the seed script by setting environment variables:\n\n```sh\n# Custom Syngrisi URL and API key\nSYNGRISI_URL=http://your-server:3000 SYNGRISI_API_KEY=your-key npm run seed\n```\n\n> [!WARNING]\n> The seed script creates test data in your database. Use it only in development or demo environments, not in production.\n\n## License\n\nSyngrisi is available under the MIT License. For more details, refer to the [LICENSE](./LICENSE.md) file.\n","readmeFilename":"README.md"}