{"_id":"@12-apps/shared-helpers","_rev":"41-e58fe84aa2808d0c60b9578287f411b6","name":"@12-apps/shared-helpers","dist-tags":{"latest":"2.1.0"},"versions":{"1.0.0":{"name":"@12-apps/shared-helpers","version":"1.0.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.0.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"634344937bc73e3ac1def352b7f5bf509c0bfab6","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.0.0.tgz","fileCount":251,"integrity":"sha512-jA8Gqkivk519DVK+Ap2o+8oPAf4ul7+dtBZQvv/q4sUDamGi8GLoHOVZCSO03a2/gduN+E1LKRIq20wWBSYguw==","signatures":[{"sig":"MEQCIDf6Hxb6s3KSwh+Y4Xg4Qw0X7OOh2vmgivkq8O5pyE/UAiBVR/uErIqt+Mpb14XgXH4yyofJPHin1q5fJ9pYuwVi5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":571570},"main":"dist/index.js","_from":"file:12-apps-shared-helpers-1.0.0.tgz","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"prisma generate && tsc","clean":"rm -rf dist node_modules coverage","db:seed":"prisma db seed","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","db:pglite:reset":"tsx prisma/pglite-reset.ts","db:pglite:setup":"tsx prisma/pglite-setup.ts","prisma:generate":"prisma generate"},"_npmUser":{"name":"tigredonorte","email":"tigredonorte3@gmail.com"},"_resolved":"/tmp/9cf4339e9265c2847d97981696db84dd/12-apps-shared-helpers-1.0.0.tgz","_integrity":"sha512-jA8Gqkivk519DVK+Ap2o+8oPAf4ul7+dtBZQvv/q4sUDamGi8GLoHOVZCSO03a2/gduN+E1LKRIq20wWBSYguw==","repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"11.9.0","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.14.0","dependencies":{"pg":"^8.16.3","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"restricted","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"0.0.0","@12-apps/typescript-config":"0.0.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.0.0_1784326731322_0.5995170857754046","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@12-apps/shared-helpers","version":"1.2.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.2.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"661661a55b631fabac72398feb53bc6e91be08b9","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.2.0.tgz","fileCount":229,"integrity":"sha512-LM3c5FcQa/DG6m9Y4fYd0oorjICcnJKl/+9vgMwzV/JStlitBDxSaAGRsfdkaioQSZNZzbhnghz4JmoFFZ/oXA==","signatures":[{"sig":"MEYCIQD/MNrPZLZLq7pMVDwKM4OFs3kDFRMNYqDgBEdeni71HgIhAIE7NykpD76RGrOzRFPQYV9FJ2HPM4BGbHLfenvqD2AI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":499689},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"a2a3c5f615c41998c3b014879cd7c33980651bf0","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.1.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.2.0","@12-apps/report-builder":"^1.1.0","@12-apps/entity-lifecycle":"^1.1.0","@12-apps/payments-backend":"^1.1.0","@12-apps/product-research":"^1.1.0","@12-apps/typescript-config":"^1.2.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.2.0_1785937960614_0.7756274989666545","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@12-apps/shared-helpers","version":"1.3.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.3.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"f4714d8db0d61c2b22c3e95fe4f6b339717f0337","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.3.0.tgz","fileCount":234,"integrity":"sha512-0hbNh/q902zYfo0lptpHUITLU1ySDV2P5IAwWBCqqv3FVkPEfdsUEt1nosEaiQcn6VlQZjam+w0TaP11fY1n4A==","signatures":[{"sig":"MEUCIAJLoBF4t28XiMkSotGtanjYFFEgZjL65QAjrkQX0nq8AiEAtChW0z0zIhl/G7slrUCATU9ByuuHG1aUloiJYmf5enk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":535686},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"d05da896cc8a43f54fec717c51429eefed6682d3","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.2.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.3.0","@12-apps/report-builder":"^1.2.0","@12-apps/entity-lifecycle":"^1.2.0","@12-apps/payments-backend":"^1.2.0","@12-apps/product-research":"^1.2.0","@12-apps/typescript-config":"^1.3.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.3.0_1785946244601_0.03078381024274912","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@12-apps/shared-helpers","version":"1.3.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.3.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"e0c6e552fc19a4d4ac0fd94b751a961fdd4f3735","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.3.1.tgz","fileCount":234,"integrity":"sha512-fLTk/p2TwUAG4Yaaeo0cAhAlEByKkNEWiHww0FL2VLUZ0km8PeJX89nOYNqzci467SvrunMVpsOwcMzjnMEC4g==","signatures":[{"sig":"MEUCIQDsk6vHFreJVvPME5xyQWbmNFZbtoMg9G1fAWks5FEdgwIgCOmlNB0O6FU1jSy9BsEm0FP4Re+IyhoBxYE9thibToE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":535686},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"6a59470cbaaf679bd15ec21462bb500a5843db54","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.2.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.3.1","@12-apps/report-builder":"^1.2.1","@12-apps/entity-lifecycle":"^1.2.1","@12-apps/payments-backend":"^1.2.1","@12-apps/product-research":"^1.2.1","@12-apps/typescript-config":"^1.3.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.3.1_1785949641292_0.4364801416479003","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@12-apps/shared-helpers","version":"1.4.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.4.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"dd3cad9e0465badb583b4df0c8d77d40329baf8a","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.4.0.tgz","fileCount":234,"integrity":"sha512-8zzYEG64ENrp/uUygKiUrb8MHhcXEXDNlQPA6ji+awQeQP026axUqvtjS9YDEeygx8wrFSc3gynEriloM1CIpg==","signatures":[{"sig":"MEQCIFcWvANU6GK5XTw1E4XZ4vAz9G8wC5jWpbdBorUGZzNpAiB/+TTxsZis1ar7+rawe5zh71upL2en50E6H1ZRNB1hHA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":535686},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"f52a264eaaba821a536b1f2a3fcfae9a6cc4f7c7","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.3.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.4.0","@12-apps/report-builder":"^1.3.0","@12-apps/entity-lifecycle":"^1.3.0","@12-apps/payments-backend":"^1.3.0","@12-apps/product-research":"^1.3.0","@12-apps/typescript-config":"^1.4.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.4.0_1785954999369_0.6390066212774912","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@12-apps/shared-helpers","version":"1.4.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.4.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"c500f1ca43a89a597f97a8eebef68208514dac44","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.4.1.tgz","fileCount":234,"integrity":"sha512-GWhR8qRulGVriBPCX6oWpBcS0BzNL4+ObMeYgud5o8tR5rQngpXAyMjdPxW3GfHdeNUj6HJKVOW9uMeZwmEzvA==","signatures":[{"sig":"MEQCIHHBE024lw9TWWWgPUHxmGJs5LIkYTZHI/p4ZnUfdfcEAiB8IVoZNp35tN6Rqi1yiaF1PJ/zEHQmJOR0h9zMJ4vi2A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":535686},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"4067cf613069590fbad29cf687882ba0f49e1073","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.3.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.4.1","@12-apps/report-builder":"^1.3.1","@12-apps/entity-lifecycle":"^1.3.1","@12-apps/payments-backend":"^1.3.1","@12-apps/product-research":"^1.3.1","@12-apps/typescript-config":"^1.4.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.4.1_1785956012188_0.35069755837699934","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@12-apps/shared-helpers","version":"1.5.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.5.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"acfc0544b527b69440909a5e8e1c878ffe4b7c44","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.5.0.tgz","fileCount":234,"integrity":"sha512-h8V4e8BiXQkQFiLVI397cKfr7Url7xBt92R1/vMGE/cBNyjQ5aI1MirlnV01fjlF0b6sivM+7iWWXzMn3TNqnQ==","signatures":[{"sig":"MEYCIQDhjpMWgIMn3XGfpL2yN6eoy8FiU4XZNuA4bp7besfZRQIhAP2UTqxTWZXMQieyrO06GqB7MraaqpOQ3+/5ym9SxaiO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":535686},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"9ac31454f10150e8721e44c9a38b8bb1d545dfea","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.4.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.5.0","@12-apps/report-builder":"^1.4.0","@12-apps/entity-lifecycle":"^1.4.0","@12-apps/payments-backend":"^1.4.0","@12-apps/product-research":"^1.4.0","@12-apps/typescript-config":"^1.5.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.5.0_1785966258975_0.814205831728509","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@12-apps/shared-helpers","version":"1.5.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.5.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"3454f5949faa9593a7596d896d8d2c98a3b2fcae","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.5.1.tgz","fileCount":209,"integrity":"sha512-hh7ePoHzcOryR6Cmnu9mR/VR+F/vCCdKx/NsBPXm9soZlBFVO1OFNNY/LMlgoU2aTM6kGPZsrApCniCyTwHzmg==","signatures":[{"sig":"MEQCIDgtX1bjkCR1dHqYG2n55sCeRKcWixdtFLD6e+Rw+ycZAiBq/ybQqEYPp35EcuzfnYHs92tujzmfqcf6IWOQFMBeTw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468405},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"81e7421d24f622d31b501c3562db19b0c6943936","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.4.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.5.1","@12-apps/report-builder":"^1.4.1","@12-apps/entity-lifecycle":"^1.4.1","@12-apps/payments-backend":"^1.4.1","@12-apps/product-research":"^1.4.1","@12-apps/typescript-config":"^1.5.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.5.1_1785979047040_0.5704280633930863","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@12-apps/shared-helpers","version":"1.5.2","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.5.2","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"34d79cf01080803a2a25f8767adb90369426e466","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.5.2.tgz","fileCount":209,"integrity":"sha512-i8D1yemlnPN0NiT2eRVZ1XumKAuqANj+Z4weLghel6mLY+LCPV35YROp2wPN9HYZQee+SzWDiNUKGlDJeSoOnQ==","signatures":[{"sig":"MEUCIQCtmu4qAGFjIByH7yq4JV762omHSAvnZdCo1Q91W/emiwIgRGVMQoNbhhumzuPKWAiJ3WC3gTIdws07enqYjQhQB2g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"f57c50c67e9ea99974be5dcae253e526be4090d9","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.4.2","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.5.3","@12-apps/report-builder":"^1.4.2","@12-apps/entity-lifecycle":"^1.4.3","@12-apps/payments-backend":"^1.4.3","@12-apps/product-research":"^1.4.2","@12-apps/typescript-config":"^1.5.3","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.5.2_1785993157391_0.36129043786539405","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@12-apps/shared-helpers","version":"1.6.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.6.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"c129e03475c60e3e1c2bea20020c2472f5e3d069","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.6.0.tgz","fileCount":209,"integrity":"sha512-uxslU+JFLIrDcZXH/AE8Zhe8hyKJtl+9DCO+TzwkFfsPsYIRxSErL/tijnf+mkJx/AIXHEd4i5Gzy+FqklrLJw==","signatures":[{"sig":"MEUCIQCaiDb2Fm18qUEQjEwvzXhZDdaB0LheoKbUzJlQMFG7OwIgJNtZ54svkSoIj04AHrTx/25LMgtc5X+y/VcYSUG+0ZM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"8e0cd152236f2f1e72297beceba8334893f28e2a","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.5.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.6.0","@12-apps/report-builder":"^1.5.0","@12-apps/entity-lifecycle":"^1.5.0","@12-apps/payments-backend":"^1.5.0","@12-apps/product-research":"^1.5.0","@12-apps/typescript-config":"^1.6.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.6.0_1786030956714_0.396851246596565","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@12-apps/shared-helpers","version":"1.6.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.6.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"68222a696bd4aea1fa21e4ead9e55e3e9ad58715","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.6.1.tgz","fileCount":209,"integrity":"sha512-qLF7ELWFkH4fOusqk6EUqqzRdgO4LUf9mzWxAG/FSxv4VJePSWFWoxixaYYAcEPSG2ni9W3+DjfX9unXwkgLEQ==","signatures":[{"sig":"MEUCIFzlwEuF5L2FaHrOeLBTIiUE/Pe+pDiElNYbvLSC386NAiEAsgD20F2DCcyJnVKbzBtTfZmqM/hoAGyJ9KgHoDz6XrQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"15f8407ccc08a7d53484c2d3d701a8b1eb28639d","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.19.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.5.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.6.1","@12-apps/report-builder":"^1.5.1","@12-apps/entity-lifecycle":"^1.5.1","@12-apps/payments-backend":"^1.5.1","@12-apps/product-research":"^1.5.1","@12-apps/typescript-config":"^1.6.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.6.1_1786059948931_0.08324316002957466","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"@12-apps/shared-helpers","version":"1.6.2","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.6.2","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"0f4ec8ebfa7de59433124b89b0c15e05a3b05cd7","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.6.2.tgz","fileCount":209,"integrity":"sha512-WE9lNF/OkMGbOaxw1xWewddOZm089/RHgn9wnHMj0xJR/gyO9JEoEKyVL6kIaKyu2ZVdWvXmMVCGBRdwNfy3+w==","signatures":[{"sig":"MEQCIA+YSzPZC6/1pVBgxQSC6kAnbVoATJdXbhNuxutWaQwuAiAqVUl5UUTBnB1SMj9sRX0ctPHAgipS3FXvnpJ7rJ3rpw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"5b1ad4d8fc1948a6a2494d48f84552644bd57405","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.5.2","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.6.2","@12-apps/report-builder":"^1.5.2","@12-apps/entity-lifecycle":"^1.5.2","@12-apps/payments-backend":"^1.5.2","@12-apps/product-research":"^1.5.2","@12-apps/typescript-config":"^1.6.2","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.6.2_1786061486669_0.9263941173585915","host":"s3://npm-registry-packages-npm-production"}},"1.6.3":{"name":"@12-apps/shared-helpers","version":"1.6.3","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.6.3","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"4aecc1f9bdd32841dc660b89698ab541d8d6f0ae","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.6.3.tgz","fileCount":209,"integrity":"sha512-saw8W3zskT/PwadbnFFmoyRI9wDEiQve/+4cN2sMA21QFcoSQFTOznQyM50U9dXORMXcr2Fs6cyF/nHEuWMOtw==","signatures":[{"sig":"MEQCIGFqLIQIzCOjmg0fpFe26ffPae/fgkJwedW6jZZDQzOmAiBgN89AG63/A77/IEz6PxG3Ln0Vt98gDZVYMEg1nUAlLw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"8ba6d6ad47840a83c06c146ef654227af5104a8e","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.5.3","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.6.3","@12-apps/report-builder":"^1.5.3","@12-apps/entity-lifecycle":"^1.5.3","@12-apps/payments-backend":"^1.5.3","@12-apps/product-research":"^1.5.3","@12-apps/typescript-config":"^1.6.3","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.6.3_1786066439952_0.4363478574846116","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@12-apps/shared-helpers","version":"1.7.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.7.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"ce5c35ad83df90fb272d5aca683983e7ba4701e7","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.7.0.tgz","fileCount":209,"integrity":"sha512-qhZS+adsX92gzngF9uo4C+P13s1cgUnJCZ2yoOIccqJN1+SMiPW+CI+dYl6ivqThglKcoJE3QTr2y7m4pvQZgQ==","signatures":[{"sig":"MEUCIBysjOMWfr/jye7tRqStklzROlR+6fd0Q9kJHbZJ+THHAiEA7w35zG41anWVIyf92pGeLRNhNQfojAGfKTWZa0WguHI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"1dbc1469b614c0f8b0f50e0116c4be4e99f39256","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.6.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.7.0","@12-apps/report-builder":"^1.6.0","@12-apps/entity-lifecycle":"^1.6.0","@12-apps/payments-backend":"^1.6.0","@12-apps/product-research":"^1.6.0","@12-apps/typescript-config":"^1.7.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.7.0_1786069592652_0.6303278938344221","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@12-apps/shared-helpers","version":"1.8.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.8.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"7397b6685912005e1d7d5a1e9b53faeec771e0e3","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.8.0.tgz","fileCount":209,"integrity":"sha512-jS4ZO4x/jKHG97Is8G9gsO5lYUKwjn4IHUFBQukhNpUcRMdXX/62OnoB2ZccMd3/ZGx3qMIcLV4W3OLIHffelg==","signatures":[{"sig":"MEUCIQCjZEwU6tv+w39xHFX1shqtrhGLYdLu9fDtccosoUzNmQIgfyBlbM7kyyWwgz0h1gme+HxCsO8tkasXTSNt6chGD+0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"6d34a3a466269e83fcce802ee81df261bfb14523","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.7.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.0.1","@12-apps/report-builder":"^1.7.0","@12-apps/entity-lifecycle":"^1.7.0","@12-apps/payments-backend":"^1.7.0","@12-apps/product-research":"^1.7.0","@12-apps/typescript-config":"^1.0.2","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.8.0_1786076569010_0.002144857098484554","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"@12-apps/shared-helpers","version":"1.8.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.8.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"8a9d72e5baad019dff46ffc1c198e9d091a13653","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.8.1.tgz","fileCount":209,"integrity":"sha512-q7ZLC0SikawFLEX7SKLTsdTPsCcPTlr1nIXeP4rvvGYjAbCjuKZGjNmGqbRehsMvVAaNbpvquNm/FB+W+bisDg==","signatures":[{"sig":"MEYCIQCk8spQ0mcRBC9J6mA0bqQmTcnUJRo4ti8TEMLc1zpURgIhAJ+DuBE3Jnq2nMG2efZ7Qe1ImTz9HPF43PJOnhoRNvcF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"2e9d99f013ab8d5373a4e32a01a9c0221bd12190","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.7.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.8.1","@12-apps/report-builder":"^1.7.1","@12-apps/entity-lifecycle":"^1.7.1","@12-apps/payments-backend":"^1.7.1","@12-apps/product-research":"^1.7.1","@12-apps/typescript-config":"^1.8.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.8.1_1786077169540_0.7710758013943302","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@12-apps/shared-helpers","version":"1.9.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.9.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"48fe6483908cb57465588057a3633c0bb8ba04e9","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.9.0.tgz","fileCount":209,"integrity":"sha512-b4QX3226yYycCdvDNfZB3SigbOQ7PmHlH9izhDpk9B0C4CHK9ll+ECqPgb14mDj4DiMNm/wTcwFWMRP4hrQVTg==","signatures":[{"sig":"MEQCICTVBf9JdaDi3K2s/EFuY+AAhNXTP+qO4MW1SXYQnyMJAiAXLL7yY9f/+5K60qBK563MyhHugajf7PygD8ifoNHlsw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"7bfcec03feb4cfeb6db70c9dd7b69a936a1687bd","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.19.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.8.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.9.0","@12-apps/report-builder":"^1.8.0","@12-apps/entity-lifecycle":"^1.8.0","@12-apps/payments-backend":"^1.8.0","@12-apps/product-research":"^1.8.0","@12-apps/typescript-config":"^1.9.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.9.0_1786089786859_0.39826206402947495","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@12-apps/shared-helpers","version":"1.9.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.9.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"fde7a01c8305153d136a8ce35d17e9216dc629db","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.9.1.tgz","fileCount":209,"integrity":"sha512-c/3mRFTW5zeaw6DrS+7rl+bIvZqY2XeWur9i0X2nBSas91yMDEY7n0U9bYpIgZarO1rWf18rxzQ1/HYsxSQOFA==","signatures":[{"sig":"MEUCIQDTrShnqArK5u0kvvcvNRuNM5IRS7agxbJ0zUhkhiRPJQIgX/pFdIHSHghSzGeSO410SCuQkPZL0hKKNNaer60mEFI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468564},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"e7605e656458d821164b2c47ee7fe9d7d4d790bd","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.19.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.8.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.9.1","@12-apps/report-builder":"^1.8.1","@12-apps/entity-lifecycle":"^1.8.1","@12-apps/payments-backend":"^1.8.1","@12-apps/product-research":"^1.8.1","@12-apps/typescript-config":"^1.9.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.9.1_1786093459083_0.24422324006926077","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@12-apps/shared-helpers","version":"1.10.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.10.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"314c739d08fcde9575e3153526512c1a45857310","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.10.0.tgz","fileCount":209,"integrity":"sha512-NDIdfzJRvDfQutIdjp3ZwHP3kElbZOpj9pmMeR37pcN+SIdtVDWjJbVbNcPKCEEdswApfCnLGGffkDdTl8qmSw==","signatures":[{"sig":"MEUCIGlzKp6bI3x7nEC1FhFYMj3G8tG2tRdA4Il3gNwdq07qAiEA7xZcY9mcyEBrppTZMCL6QuVIHjVuIjPeGMayG9X5kfk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468567},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"6bfe86e2215d81dffd8f616dad4aa181f027548b","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.9.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.10.0","@12-apps/report-builder":"^1.9.0","@12-apps/entity-lifecycle":"^1.9.0","@12-apps/payments-backend":"^1.9.0","@12-apps/product-research":"^1.9.0","@12-apps/typescript-config":"^1.10.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.10.0_1786100361295_0.8824410912571676","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@12-apps/shared-helpers","version":"1.11.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.11.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"ae486a90fe40aff299db1f051eebc1596eaa8101","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.11.0.tgz","fileCount":209,"integrity":"sha512-GmYBeHNUqSFaI6PM2Mq2Mn3oq5pI6T8r9vHIIcuhcAxRAinPPpPsGSvtI1CU+IymyTQ/oFEtYNvbJsDyHh96Mg==","signatures":[{"sig":"MEQCIGOz7crwW3Pibp0ZeBw38aRRB85Av2UKeaGChD1M38s7AiBmNQAMjL2WyXhqSW69VYHpGJwgtVbR11zpn3oYirtatw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468572},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"ca77c6e24bbdd7ce427c8003f0de2444c95d88cf","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.10.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.11.0","@12-apps/report-builder":"^1.10.0","@12-apps/entity-lifecycle":"^1.10.0","@12-apps/payments-backend":"^1.10.0","@12-apps/product-research":"^1.10.0","@12-apps/typescript-config":"^1.11.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.11.0_1786103626115_0.8609270815615804","host":"s3://npm-registry-packages-npm-production"}},"1.11.1":{"name":"@12-apps/shared-helpers","version":"1.11.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.11.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"106248c40336ecbaf1f14f6ef2c41d1dc94b16ba","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.11.1.tgz","fileCount":209,"integrity":"sha512-r8vHAk8tC04by14pquh7fx1wEmGjgX072eQ06faH8EHTsuTL22bo7R5vZaQUIfl/4mJO0Ho+sO0i4Ilcl6a9Dg==","signatures":[{"sig":"MEQCIBuAX4BthjQP/y8KqYE9ULvFKMKMtytL6pCAgXtfOeDoAiAk/rm5yfkTvG4liKSypD+EnVb5q6thF32lhrEYwJgttg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":468572},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"b1c4a9ee167c219178d1933083ccaa44ba467ca2","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@sentry/node":"^10.69.0","@prisma/client":"7.8.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@12-apps/shift":"^1.10.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.11.1","@12-apps/report-builder":"^1.10.1","@12-apps/entity-lifecycle":"^1.10.1","@12-apps/payments-backend":"^1.10.1","@12-apps/product-research":"^1.10.1","@12-apps/typescript-config":"^1.11.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.11.1_1786108129156_0.84552608220298","host":"s3://npm-registry-packages-npm-production"}},"1.12.1":{"name":"@12-apps/shared-helpers","version":"1.12.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.12.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"23c9942fbabefcf673b865b07afc91fda2933536","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.12.1.tgz","fileCount":206,"integrity":"sha512-6VsY3hN49qyxHLsZk2/sEO11NnrABOPW4Qnte0qaJA+sDMLuVo8B70IhYU0GEMB4DM5U40BzC679wpipIFwEVg==","signatures":[{"sig":"MEUCIQD22m9JPuxq4zkqVzgf/BWhSzBA2z+7eKIoiTij3srHswIgeIH4XZN9a1006NRuAkodwV36Em9ZrUHtr/hjQGy28VE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"e9fa4d72f92e37490fec1f39348375e9e34bf2ee","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.11.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.12.2","@12-apps/report-builder":"^1.11.1","@12-apps/entity-lifecycle":"^1.11.1","@12-apps/payments-backend":"^1.11.1","@12-apps/product-research":"^1.11.1","@12-apps/typescript-config":"^1.12.2","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.12.1_1786127788170_0.4569055437358003","host":"s3://npm-registry-packages-npm-production"}},"1.13.0":{"name":"@12-apps/shared-helpers","version":"1.13.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.13.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"06af6b893c8bc8c8ef96e5c8603343a104bbfafa","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.13.0.tgz","fileCount":206,"integrity":"sha512-6W9hIXfWFM6J8mZmeJFg4Cx+6nigy+C8ephxKPk1IYifX7H2PehLaSVRUTRd956B7RgESYBGVGt+Nv5XSXQ8cQ==","signatures":[{"sig":"MEQCIF4p+39C2OmplyALjE3KZ6uvy/3YbVSifX7gEGcUPsd6AiB4ClCjRdUUC0vAVsWa/F+VZ4IL7kVBPJPTUQRq1ocq0A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"903862a6809118567baa5931596f484c3ff8ff37","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.12.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.13.0","@12-apps/report-builder":"^1.12.0","@12-apps/entity-lifecycle":"^1.12.0","@12-apps/payments-backend":"^1.12.0","@12-apps/product-research":"^1.12.0","@12-apps/typescript-config":"^1.13.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.13.0_1786128600959_0.799777092318533","host":"s3://npm-registry-packages-npm-production"}},"1.14.0":{"name":"@12-apps/shared-helpers","version":"1.14.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.14.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"0cf660d4d2b90e01c17b8a07be2ec5ec4c3eb83a","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.14.0.tgz","fileCount":206,"integrity":"sha512-aw0vxODH3zVhKraUg6Ui7+A9YZIrsfzf2D2e7CtNkr9y0FFRDpsVBHPpaQDT/+tFn9CHecn9wIvcKNGtjnjU0A==","signatures":[{"sig":"MEUCIQCiooFloq1kMWYzTjvoUh5oVbvzhbCH+Wc07WIrAPn+lQIgFzqjmo1UBneDesZVeJasmIizGpGrN9y3/fvQ1971j78=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"f9c9457f43bc8c265f81d27b8d3bb5f250fce11e","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.13.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.15.0","@12-apps/report-builder":"^1.13.0","@12-apps/entity-lifecycle":"^1.14.0","@12-apps/payments-backend":"^1.13.0","@12-apps/product-research":"^1.13.0","@12-apps/typescript-config":"^1.15.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.14.0_1786133077640_0.9290456642994764","host":"s3://npm-registry-packages-npm-production"}},"1.15.0":{"name":"@12-apps/shared-helpers","version":"1.15.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.15.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"bb34c0df590737bdb6c1d272cc67209f2e0b23e9","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.15.0.tgz","fileCount":206,"integrity":"sha512-h+ItcXCSOEuFT61LrnwjnCkBlUQx2qGvwCDZqC46i7zx+bFhfUYKWF2QfZQmmeU4E8aIgth/6E+dOn5f63cExg==","signatures":[{"sig":"MEQCICBzn5U9OaFwSoocSm/ZqGm1Jc1dUu1MVn0DReHTK3y0AiASY6ebnRPWqv1sdIeUJgNXj/00KNx8bBpMMhYurYpoaQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"ebccb7d5693b1f1340342b72139daef11fc81223","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.14.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.16.0","@12-apps/report-builder":"^1.14.0","@12-apps/entity-lifecycle":"^1.15.0","@12-apps/payments-backend":"^1.14.0","@12-apps/product-research":"^1.14.0","@12-apps/typescript-config":"^1.16.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.15.0_1786133812874_0.8301026892872754","host":"s3://npm-registry-packages-npm-production"}},"1.16.0":{"name":"@12-apps/shared-helpers","version":"1.16.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.16.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"de155cc3801ccab6bdc4059c550d45911e6b5f82","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.16.0.tgz","fileCount":206,"integrity":"sha512-TCExjedWJZNVcvMrt427z5HxdZ9ffBM1MI3truLEDxstSyAOiGP4KoEdd4oP6OIo+sZE4ufMQuO7Rtzj4cPLVQ==","signatures":[{"sig":"MEUCIQDxHHrRHc6vVqVZ2u7LDVT1KFn2uti9cCec+h/zNf8i+QIgSinejJWEBaqK8y35wjmcgIlS64sQuZ8Tn00zLrm/u9E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"2d4a0e9dbf04f79e2306b779f56f0dd5d079e09a","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.15.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.17.0","@12-apps/report-builder":"^1.15.0","@12-apps/entity-lifecycle":"^1.16.0","@12-apps/payments-backend":"^1.15.0","@12-apps/product-research":"^1.15.0","@12-apps/typescript-config":"^1.17.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.16.0_1786145627553_0.5534191024134678","host":"s3://npm-registry-packages-npm-production"}},"1.16.1":{"name":"@12-apps/shared-helpers","version":"1.16.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.16.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"a6fdca739ade74d03efa62ea117f76cfb35770cd","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.16.1.tgz","fileCount":206,"integrity":"sha512-pCxOBRz8DdcEdl+Q+2MZUSqDBI7CTJIUYTEUE29mV/hR0WdRdbNwDDP9kYod62CAXRZIkIw1AjESWXjC3N+5Kw==","signatures":[{"sig":"MEYCIQDvlPmRDmOWOCSXjkbdgc+DMZjgsOOeV/pkxhTI/9DywQIhAMy4TN756dxwFLkVRsC1AB4XPjm3ha8DdW1cXTfjOJGo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.16.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"f0356169f9682182eabba77485cf4772051235ae","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.5.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.15.1","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.17.1","@12-apps/report-builder":"^1.15.1","@12-apps/entity-lifecycle":"^1.16.1","@12-apps/payments-backend":"^1.15.1","@12-apps/product-research":"^1.15.1","@12-apps/typescript-config":"^1.17.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.16.1_1786146766819_0.43980786269881356","host":"s3://npm-registry-packages-npm-production"}},"1.16.2":{"name":"@12-apps/shared-helpers","version":"1.16.2","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.16.2","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"6b7d6368e56c49570dc6db3b9551cdaeff33069b","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.16.2.tgz","fileCount":206,"integrity":"sha512-bIDvuaHH4NCE4wThAtpLmGMmnA6gWhLAew9RisuP9KUD7vkK3aTl4d3VZ+SlqaOghzULJztGqt67mlZeoYhENg==","signatures":[{"sig":"MEQCIE4HNuK2KxKsrZgIrQ5rBSKVehtu4q13LUHOEVNFxLe3AiBsb9SFmiEAV+yWK/1enxgea4+L+EwPBeDSwg9zlmEiIA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.16.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"4b2466cbe6cded4941ec25ef92cf41d7fab0697e","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.5.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.15.2","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.17.2","@12-apps/report-builder":"^1.15.2","@12-apps/entity-lifecycle":"^1.16.2","@12-apps/payments-backend":"^1.15.2","@12-apps/product-research":"^1.15.2","@12-apps/typescript-config":"^1.17.2","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.16.2_1786160029642_0.1606562148289623","host":"s3://npm-registry-packages-npm-production"}},"1.16.3":{"name":"@12-apps/shared-helpers","version":"1.16.3","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.16.3","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"f6ac02c6319e2326975a001cf687fcb61d9422cf","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.16.3.tgz","fileCount":206,"integrity":"sha512-0nJ97LcGVewH7OLwaYsXBg46AkMzM67SbeYrkx23cY+TrLPWAdAg7CQNktju5lIKdcHqo39svgqf6jmGTyJcDQ==","signatures":[{"sig":"MEUCIEWOsJP5gbljehQdGUwNrr6C6eg9JmYhDi2JB2zXph3LAiEAzU+tDCTc8yHQh9SlVYCKiTXBrmhIC0EQ5E7HK7krUIA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.16.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"ee3399530780d82beea32410802a945627ffe271","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.5.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.15.3","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.17.3","@12-apps/report-builder":"^1.15.3","@12-apps/entity-lifecycle":"^1.16.3","@12-apps/payments-backend":"^1.15.3","@12-apps/product-research":"^1.15.3","@12-apps/typescript-config":"^1.17.3","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.16.3_1786198006037_0.7647906249469236","host":"s3://npm-registry-packages-npm-production"}},"1.17.0":{"name":"@12-apps/shared-helpers","version":"1.17.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.17.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"98bea8deda20b1f4a6de044dcf8162fb533f4e80","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.17.0.tgz","fileCount":206,"integrity":"sha512-/GPLKItjNFrtA+bHCuFmvJ8Gr2cGAFnr4RpMX+wXv+Uop2YHdgZWQ9bUoCWQmT8iwjhdNb11CeGgLRIrczH1jQ==","signatures":[{"sig":"MEQCIHXE6sYXLIcdE95GHlmIBAVk9fIiqjdxJFqq1ZhVq0YmAiBu3u9A/uFepgkNavpl4hZZGt4uNcN/q7tNfSDN4MCa7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"8af3c18e1811d042f30016a4ba43e74abc4b8c50","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.6.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.16.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.18.0","@12-apps/report-builder":"^1.16.0","@12-apps/entity-lifecycle":"^1.17.0","@12-apps/payments-backend":"^1.16.0","@12-apps/product-research":"^1.16.0","@12-apps/typescript-config":"^1.18.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.17.0_1786203977156_0.3358750600987461","host":"s3://npm-registry-packages-npm-production"}},"1.18.0":{"name":"@12-apps/shared-helpers","version":"1.18.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.18.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"93c360443d88f6e79afd04aa7771628e2c382307","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.18.0.tgz","fileCount":206,"integrity":"sha512-hVu7QZm3ICfi+MzQkcOitV5t9m6R/AGWNalOZ64Mw0USWPSYeBUJO+RmIJNsycUSquWM1QARLwB5khv2Iyku5g==","signatures":[{"sig":"MEUCIQChA7tJ0nl5OeY57MA9VB7LL/hV6NYZnv49n887PvbRMgIgFl39rmtKZlGHHc1P5jNG+KNrroZCv9FhGmzv1rJ7WEA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"3a8eb1783f8cccce3b7ec49cb10e3e6d2c5d7310","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.7.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.17.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.19.0","@12-apps/report-builder":"^1.17.0","@12-apps/entity-lifecycle":"^1.18.0","@12-apps/payments-backend":"^1.17.0","@12-apps/product-research":"^1.17.0","@12-apps/typescript-config":"^1.19.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.18.0_1786206179767_0.13772923206233134","host":"s3://npm-registry-packages-npm-production"}},"1.19.0":{"name":"@12-apps/shared-helpers","version":"1.19.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.19.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"a84203f31313db87da07f4bac1661d17c9ebb9c0","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.19.0.tgz","fileCount":206,"integrity":"sha512-w5TuTazzlNOhD9dkpokgyhJPpDVo4qyJPh/v1mmWiBirw76ASRswIABV7cvAK3N7CzTzkrlRAM4S/E9mPwvjiQ==","signatures":[{"sig":"MEUCIG/wxxvBcxVZN4iDqt/rF0aBjV5XDDkyW3xE4WxmXlyaAiEAnFKauWk9dm4SQPdpHgaRmIYPVPZ/9RVdIbm7N63BZds=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":451875},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"21bbb5b06424cf045eaad617a5912aa00d0c654b","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.8.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.18.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.20.0","@12-apps/report-builder":"^1.18.0","@12-apps/entity-lifecycle":"^1.19.0","@12-apps/payments-backend":"^1.18.0","@12-apps/product-research":"^1.18.0","@12-apps/typescript-config":"^1.20.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.19.0_1786209523595_0.7158044150346596","host":"s3://npm-registry-packages-npm-production"}},"1.20.0":{"name":"@12-apps/shared-helpers","version":"1.20.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.20.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"5d4f6e8bac136ffb83f9ef287bc4817e0f361333","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.20.0.tgz","fileCount":207,"integrity":"sha512-ZJY0vgaz5/k7AD20iahfL5Lplc6CtokeZ4vxBBYXCL2L7X5v6mj2zdEFd0sm1R4NduYHgbnv6FsJQR/wH+fg4Q==","signatures":[{"sig":"MEUCIA7C1RGz8ngkIBuRFXQwnFxCsLwCDB+EZRLNEC2lrfq3AiEApvMKYx5KzbvnVF1CWdWdhIGlVjlhlVXgV3DNLW124L8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":452703},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"fe5dd7fefde2ea2bef3b29b47b23ac58dc9cbf72","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.8.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.18.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.20.0","@12-apps/report-builder":"^1.21.0","@12-apps/entity-lifecycle":"^1.19.0","@12-apps/payments-backend":"^1.23.0","@12-apps/product-research":"^1.18.0","@12-apps/typescript-config":"^1.20.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.20.0_1786381000494_0.947197589607156","host":"s3://npm-registry-packages-npm-production"}},"1.21.0":{"name":"@12-apps/shared-helpers","version":"1.21.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.21.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"dd96a594e430f3244d4a6aa566305a9c7c444f35","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.21.0.tgz","fileCount":208,"integrity":"sha512-qkexOJN4b2cwJP+neI6gaDA9ifPwutvSOHcJeBP/WD3mflmokW8wPftba+OqtxIZR1X1Gz8eX5ZskFHEVf8k8Q==","signatures":[{"sig":"MEQCICN84Y11zJeeBqdeHw1gEdF/abVGDOlKaJC2UaCjf7mCAiBfGPbyZKDyLwiK2cr2jmFQABkgEgG2A7dmCmPx3m1KCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":453614},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"277186e169b84d50946f964e08249d105365f9d0","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.8.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.18.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.20.0","@12-apps/report-builder":"^2.1.0","@12-apps/entity-lifecycle":"^1.19.0","@12-apps/payments-backend":"^1.23.0","@12-apps/product-research":"^1.18.0","@12-apps/typescript-config":"^1.20.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.21.0_1786386887029_0.7536826554847162","host":"s3://npm-registry-packages-npm-production"}},"1.22.0":{"name":"@12-apps/shared-helpers","version":"1.22.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.22.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"ccc38d8f8f6e542316976625d7d7267996e57fd4","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.22.0.tgz","fileCount":209,"integrity":"sha512-oUIRd0WipIfYCXvVNqKS75oKld91zoBMknX/BBwPmR+0egtPwxl4mVDHN+YkfNJX4SyKycIR0q03vvOrov6evA==","signatures":[{"sig":"MEUCIQCzxMhyk9GPNQVmV+P7aqA4+4MrJZ66s16LtvAeyoWXugIgEZ0hwwfGKCBcZK3OQcFASYRiTfEb700lwQdnteWtNI4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":454352},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"9ae86ce208c2af93778e92c04b8956a512bb5af9","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.8.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/shift":"^1.18.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.20.0","@12-apps/report-builder":"^2.2.0","@12-apps/entity-lifecycle":"^1.19.0","@12-apps/payments-backend":"^1.23.0","@12-apps/product-research":"^1.18.0","@12-apps/typescript-config":"^1.20.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.22.0_1786390449376_0.5096325737139094","host":"s3://npm-registry-packages-npm-production"}},"1.23.0":{"name":"@12-apps/shared-helpers","version":"1.23.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@1.23.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"fca1dca5ed59a3e26eb8e0b4658c497c7ebb307b","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-1.23.0.tgz","fileCount":211,"integrity":"sha512-RfY8Yk1iW0XI3jeSJTu38ChYEsa9eUMhuv2Sj2fuSA5nR7GzKVNmSO63Lfv6qI6qIOkd6+qqleffjORiRapktA==","signatures":[{"sig":"MEUCIQDnH/L35GtrNzbwM9ZE11kC8fdDMag5sgXVhnyO+ftiqwIgbkg3EZ3yeh/1xctLtQ5MMaXLUqPr0b+Pr6EkRHQF9Pc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@1.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":457860},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"},"./prisma":{"types":"./dist/prisma/index.d.ts","default":"./dist/prisma/index.js","require":"./dist/prisma/index.js"}},"gitHead":"4d8a5f17d5a4379b059e7660b91932095cfd3ee4","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-jobs-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate && tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch","prisma:push":"prisma db push","prisma:studio":"prisma studio","prisma:migrate":"prisma migrate dev","prisma:generate":"node scripts/sync-lifecycle-schema.mjs && node scripts/sync-research-schema.mjs && node scripts/sync-shift-schema.mjs --check && node scripts/sync-jobs-schema.mjs --check && node scripts/sync-prisma-plugins.mjs --check && prisma generate","prisma:sync-jobs":"node scripts/sync-jobs-schema.mjs","prisma:sync-shift":"node scripts/sync-shift-schema.mjs","prisma:sync-plugins":"node scripts/sync-prisma-plugins.mjs","prisma:sync-research":"node scripts/sync-research-schema.mjs","prisma:sync-lifecycle":"node scripts/sync-lifecycle-schema.mjs","prisma:sync-jobs:check":"node scripts/sync-jobs-schema.mjs --check","prisma:sync-shift:check":"node scripts/sync-shift-schema.mjs --check","prisma:sync-plugins:check":"node scripts/sync-prisma-plugins.mjs --check"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.19.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@prisma/client":"7.8.0","@aws-sdk/client-s3":"^3.693.0","@prisma/adapter-pg":"7.8.0","@electric-sql/pglite":"0.2.17","@maxmind/geoip2-node":"^6.3.4","pglite-prisma-adapter":"0.7.2","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.8.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","prisma":"7.8.0","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@12-apps/jobs":"^1.20.0","@12-apps/shift":"^1.18.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.20.0","@12-apps/report-builder":"^2.6.0","@12-apps/entity-lifecycle":"^1.19.0","@12-apps/payments-backend":"^1.23.0","@12-apps/product-research":"^1.18.0","@12-apps/typescript-config":"^1.20.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_1.23.0_1786549829342_0.6657190199276983","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@12-apps/shared-helpers","version":"2.0.0","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@2.0.0","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"7e3694c6b5562a1e7c5a81869a89ae44360f7ac2","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-2.0.0.tgz","fileCount":166,"integrity":"sha512-bp1dIQiw57AdEDptHV+Uwnj9VSM9CL0BmiTH+FR9MGiV7MjY2byrBRhc7JUyK21WGBd44ctfnXw1CnBYJPCrVQ==","signatures":[{"sig":"MEUCIQCpkqjRn3utiStvBY9IG9sxxCrCKSazaHYqHOc3r1W9EAIgZXtDf0hLZK+jo2olKgSbMbc1kgnYRRLBseh1VcI28Gc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":324746},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"}},"gitHead":"5f6a9a9dd6fadbaacb19a80e0f2b76d85ef0b07b","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.18.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@aws-sdk/client-s3":"^3.693.0","@maxmind/geoip2-node":"^6.3.4","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.8.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.20.0","@12-apps/typescript-config":"^1.20.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_2.0.0_1786556964520_0.8840148094183737","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@12-apps/shared-helpers","version":"2.0.1","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@2.0.1","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"857c3f9b683885627a4b1a61a045ce89452bf634","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-2.0.1.tgz","fileCount":166,"integrity":"sha512-IiNa+9y5m7SUi1kwYF8BRDczk/jmPsRNQB7Ko5SGiqVa+x9hn5ALF0M/+HfrqWlTvsCMIaHbL22/MZTr6zcvMA==","signatures":[{"sig":"MEUCIQCvQXlRItt3xrLnmPct39Yo8vX0zwmRzvKLl0RmLdnUlAIgNDQ8geX8CwP3nqsCVuRz+5HKyPQSOmikRf3xgybZCWU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@2.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":329225},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"}},"gitHead":"4fd963605bac53559e7f36509edd69ef7ba1804b","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.19.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@aws-sdk/client-s3":"^3.693.0","@maxmind/geoip2-node":"^6.3.4","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.8.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.20.0","@12-apps/typescript-config":"^1.20.0","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_2.0.1_1786802371577_0.09572320210535579","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@12-apps/shared-helpers","version":"2.0.2","keywords":["environment","config","typescript"],"license":"MIT","_id":"@12-apps/shared-helpers@2.0.2","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"homepage":"https://github.com/12-apps/shared-packages#readme","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"dist":{"shasum":"665a0f34df037c2b7e7d98598e595934d4b608ff","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-2.0.2.tgz","fileCount":166,"integrity":"sha512-ODKFvD2fd1NjxcdopisBUvuz0U3xqbNYrTJnczdZIcOy2bZvUNdHPGu8NIbR5MqndJDSV2M1gCxYxEF+i2CFjg==","signatures":[{"sig":"MEQCIFa/JJtCGNHr5jst8q6wjynh3kgc2Nl1hH+mSb63k9xXAiAv51hkO3oT/t3NYLAG6V2vqOBoi1u/LmAL1M9JJQUkHA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@2.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":329225},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","require":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","default":"./dist/*/index.js","require":"./dist/*/index.js"}},"gitHead":"3c4711049bf8351685612372531c3cae1370bbbb","scripts":{"lint":"pnpm run lint:files .","test":"node ../../scripts/vitest-with-teardown.mjs run","build":"tsc","clean":"rm -rf dist node_modules coverage","trigger":"pnpm -r --filter ./packages/** run build","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","test:watch":"vitest watch"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c20655a8-8ff3-44e7-8f9e-4a4e20dd225c"}},"repository":{"url":"git+https://github.com/12-apps/shared-packages.git","type":"git","directory":"packages/shared-helpers"},"_npmVersion":"12.0.2","description":"Shared helper utilities","directories":{},"_nodeVersion":"24.19.0","dependencies":{"pg":"^8.16.3","zod":"^4.3.5","xlsx":"^0.18.5","dotenv":"^16.4.7","undici":"^6.21.3","ioredis":"^5.11.1","winston":"^3.17.0","date-fns":"^4.1.0","jwt-decode":"^4.0.0","date-fns-tz":"^3.2.0","@aws-sdk/client-s3":"^3.693.0","@maxmind/geoip2-node":"^6.3.4","@aws-sdk/s3-request-presigner":"^3.972.0","@12-apps/observability-backend":"^1.8.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","vitest":"^3.2.4","@types/pg":"^8.16.0","typescript":"^5.8.2","@types/node":"^22.10.6","@sentry/node":"^10.69.0","@vitest/coverage-v8":"^3.2.4","@12-apps/eslint-config":"^1.21.1","@12-apps/typescript-config":"^1.20.1","eslint-plugin-test-flakiness":"^1.4.0"},"peerDependencies":{"typescript":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/shared-helpers_2.0.2_1787327396187_0.6808785871624876","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@12-apps/shared-helpers","version":"2.1.0","sideEffects":["**/db/lib/factory.*","**/requests/apiFactory.*"],"description":"Shared helper utilities","main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","require":"./dist/index.js","default":"./dist/index.js"},"./*":{"types":"./dist/*/index.d.ts","require":"./dist/*/index.js","default":"./dist/*/index.js"}},"scripts":{"trigger":"pnpm -r --filter ./packages/** run build","build":"tsc","clean":"rm -rf dist node_modules coverage","test":"node ../../scripts/vitest-with-teardown.mjs run","test:watch":"vitest watch","lint:files":"bash -c 'eslint \"${@:-.}\" --max-warnings 0' _","lint":"pnpm run lint:files .","lint:fix":"bash -c 'eslint \"${@:-.}\" --max-warnings 0 --fix' _","typecheck":"tsc --noEmit"},"dependencies":{"@12-apps/observability-backend":"^1.9.0","@aws-sdk/client-s3":"^3.693.0","@aws-sdk/s3-request-presigner":"^3.972.0","@maxmind/geoip2-node":"^6.3.4","date-fns":"^4.1.0","date-fns-tz":"^3.2.0","dotenv":"^16.4.7","ioredis":"^5.11.1","jwt-decode":"^4.0.0","pg":"^8.16.3","undici":"^6.21.3","winston":"^3.17.0","xlsx":"^0.18.5","zod":"^4.3.5"},"devDependencies":{"@12-apps/eslint-config":"^1.22.0","@12-apps/typescript-config":"^1.21.0","@sentry/node":"^10.69.0","@types/node":"^22.10.6","@types/pg":"^8.16.0","@vitest/coverage-v8":"^3.2.4","eslint":"^9.39.1","eslint-plugin-test-flakiness":"^1.4.0","typescript":"^5.8.2","vitest":"^3.2.4"},"peerDependencies":{"typescript":"^5.0.0"},"engines":{"node":">=22.0.0"},"keywords":["environment","config","typescript"],"license":"MIT","publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"repository":{"type":"git","url":"git+https://github.com/12-apps/shared-packages.git","directory":"packages/shared-helpers"},"gitHead":"4714bd10c901bcc51544843d5d6091cc1509e649","_id":"@12-apps/shared-helpers@2.1.0","bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"homepage":"https://github.com/12-apps/shared-packages#readme","_nodeVersion":"24.19.0","_npmVersion":"12.0.2","dist":{"integrity":"sha512-Cmx/8z43xXZQ0usHx6XJSgi7RJjiMsnpqCGX5Ab+wGd/Y1zMTLmz0JLlk0r0TNdaKyFtTGPrVLvl6V1EDs8Xcg==","shasum":"ae090fba63bc5a59169e86d3b4fde5bde91acd93","tarball":"https://registry.npmjs.org/@12-apps/shared-helpers/-/shared-helpers-2.1.0.tgz","fileCount":166,"unpackedSize":329307,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@12-apps%2fshared-helpers@2.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCID7dGibo7y+TrgGWHuHziO86rzxqfcbtkgusbiTgMjATAiEAkGfWsbbltggJfrR1W1S65Qv65f6TQA/K+8d45IxfrwQ="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7ecafbd5-81f7-4339-89bd-d6cb1fdffc85"}},"directories":{},"maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/shared-helpers_2.1.0_1787617988608_0.13186862016743217"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-17T22:18:51.061Z","modified":"2026-08-25T00:33:09.127Z","1.0.0":"2026-07-17T22:18:51.461Z","1.2.0":"2026-08-05T13:52:40.769Z","1.3.0":"2026-08-05T16:10:44.793Z","1.3.1":"2026-08-05T17:07:21.444Z","1.4.0":"2026-08-05T18:36:39.516Z","1.4.1":"2026-08-05T18:53:32.329Z","1.5.0":"2026-08-05T21:44:19.111Z","1.5.1":"2026-08-06T01:17:27.197Z","1.5.2":"2026-08-06T05:12:37.560Z","1.6.0":"2026-08-06T15:42:36.857Z","1.6.1":"2026-08-06T23:45:49.103Z","1.6.2":"2026-08-07T00:11:26.848Z","1.6.3":"2026-08-07T01:34:00.098Z","1.7.0":"2026-08-07T02:26:32.810Z","1.8.0":"2026-08-07T04:22:49.179Z","1.8.1":"2026-08-07T04:32:49.703Z","1.9.0":"2026-08-07T08:03:07.032Z","1.9.1":"2026-08-07T09:04:19.212Z","1.10.0":"2026-08-07T10:59:21.426Z","1.11.0":"2026-08-07T11:53:46.337Z","1.11.1":"2026-08-07T13:08:49.359Z","1.12.1":"2026-08-07T18:36:28.302Z","1.13.0":"2026-08-07T18:50:01.105Z","1.14.0":"2026-08-07T20:04:37.792Z","1.15.0":"2026-08-07T20:16:53.026Z","1.16.0":"2026-08-07T23:33:47.694Z","1.16.1":"2026-08-07T23:52:46.986Z","1.16.2":"2026-08-08T03:33:49.790Z","1.16.3":"2026-08-08T14:06:46.199Z","1.17.0":"2026-08-08T15:46:17.291Z","1.18.0":"2026-08-08T16:22:59.911Z","1.19.0":"2026-08-08T17:18:43.752Z","1.20.0":"2026-08-10T16:56:40.646Z","1.21.0":"2026-08-10T18:34:47.211Z","1.22.0":"2026-08-10T19:34:09.529Z","1.23.0":"2026-08-12T15:50:29.502Z","2.0.0":"2026-08-12T17:49:24.690Z","2.0.1":"2026-08-15T13:59:31.729Z","2.0.2":"2026-08-21T15:49:56.353Z","2.1.0":"2026-08-25T00:33:08.768Z"},"bugs":{"url":"https://github.com/12-apps/shared-packages/issues"},"license":"MIT","homepage":"https://github.com/12-apps/shared-packages#readme","keywords":["environment","config","typescript"],"repository":{"type":"git","url":"git+https://github.com/12-apps/shared-packages.git","directory":"packages/shared-helpers"},"description":"Shared helper utilities","maintainers":[{"name":"tigredonorte","email":"tigredonorte3@gmail.com"}],"readme":"ERROR: No README data found!","readmeFilename":""}