{"_id":"@bernierllc/email-template-service","_rev":"24-b9f82ba548fb5cb52bb0c8c23a1a4aca","name":"@bernierllc/email-template-service","dist-tags":{"latest":"3.0.6"},"versions":{"1.0.0":{"name":"@bernierllc/email-template-service","version":"1.0.0","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.0.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"27cf3caf621ae9a8eb89b3f5ce6dc104a58b8ec1","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.0.0.tgz","fileCount":31,"integrity":"sha512-m1QFeHTqU7tq5SEtuABJxKRKsV6ws3e79QGzsT6DbbaNOgNmDAz6pw4g7CoEzsbLgnrwLfSlN0eJuqTKJ+k8ow==","signatures":[{"sig":"MEYCIQCQ5rNtDZVnbGFTOzSe/UUddig3iQfX0GQQL0RrPDyL5wIhAIUUzuN1PLMQiRZWkwBg45hJbSsQ6t8l2JHfCynIxPyh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":173977},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f7091f40315c6c560be3b52c699eb1d6a90e068c","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"25.2.0","dependencies":{"@bernierllc/logger":"workspace:*","@bernierllc/email-sender":"workspace:*","@bernierllc/template-engine":"workspace:*","@bernierllc/template-variable-registry":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.0.0_1764170424409_0.08737164177664125","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bernierllc/email-template-service","version":"1.0.1","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.0.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"9e2dc7353724f21fd1425bb88c50eb4e9516c2b8","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.0.1.tgz","fileCount":27,"integrity":"sha512-z2sBn8Itq/k9Wtee/md82kkgB28d1gD98k1P8RDTwvKb9568fatKc22IMjBLdsGV4tTQn2N9+nVYKnKkXEZVxA==","signatures":[{"sig":"MEQCIDkXsMRUWYZ4m9Hhghq6/Em0MclnC+kko3jbOCxJ++BUAiBC8VJbY8BLwnriZkYjq+cv9WqxdywYaN0TkOd15VaA0A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.0.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_resolved":"/tmp/36f62c73daa990ba62d021de1dd29608/bernierllc-email-template-service-1.0.1.tgz","_integrity":"sha512-z2sBn8Itq/k9Wtee/md82kkgB28d1gD98k1P8RDTwvKb9568fatKc22IMjBLdsGV4tTQn2N9+nVYKnKkXEZVxA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.7.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.0.3","@bernierllc/email-sender":"3.0.4","@bernierllc/template-engine":"0.2.1","@bernierllc/template-variable-registry":"1.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.0.1_1766276740213_0.9908997483466606","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bernierllc/email-template-service","version":"1.0.2","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.0.2","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"2b331b16905e91a3ab08d1f6d8a2b3c6aeb14a8e","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.0.2.tgz","fileCount":27,"integrity":"sha512-/JnZYgPTUsXn5JiqVcGOlx4YBQ9VC1GAPlxhy1Ha/sB35BRgClO89hFAryDGW+QVKW977aJDt++mbfDw/SY0OQ==","signatures":[{"sig":"MEQCIHVH7uze2U2zRnOd09lpvx5vCtdWamW/LiBLFsS/5y2YAiAii46S8preGipUY0Z3ig9iuWyP9jyJ/4TlGSf6O3rPCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.0.2.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_resolved":"/tmp/3be88fcbaa326ac641c5ffcd0c17f30a/bernierllc-email-template-service-1.0.2.tgz","_integrity":"sha512-/JnZYgPTUsXn5JiqVcGOlx4YBQ9VC1GAPlxhy1Ha/sB35BRgClO89hFAryDGW+QVKW977aJDt++mbfDw/SY0OQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.7.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.0.3","@bernierllc/email-sender":"3.0.5","@bernierllc/template-engine":"0.2.1","@bernierllc/template-variable-registry":"1.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.0.2_1766283519116_0.6848236353468484","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@bernierllc/email-template-service","version":"1.0.3","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.0.3","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"7ae745a94fbc4e6c4960d0fafc4d72bb7896a944","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.0.3.tgz","fileCount":27,"integrity":"sha512-4bpU+WmcUSSGN2brUICu7Cgr0sp6KMh8wmCPdKc82NkpR5bmSf2IDXzkQXpNe3hJDWCRLt47TXSLuqkuY1bkhQ==","signatures":[{"sig":"MEYCIQC/x6upGI0GS6UwbmhdpQNMZxtPKN0wWT1NVQ6xBeTEsQIhANIkzUTFwpg6Mgpyp2xzxQcwK8nuGv518B9g3NJG+ROP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.0.3.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/tmp/91825cfde03e20de36d547eac2b717cd/bernierllc-email-template-service-1.0.3.tgz","_integrity":"sha512-4bpU+WmcUSSGN2brUICu7Cgr0sp6KMh8wmCPdKc82NkpR5bmSf2IDXzkQXpNe3hJDWCRLt47TXSLuqkuY1bkhQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.7.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.0.4","@bernierllc/email-sender":"3.0.5","@bernierllc/template-engine":"0.2.1","@bernierllc/template-variable-registry":"1.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.0.3_1766437850566_0.7878454371192598","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@bernierllc/email-template-service","version":"1.0.4","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.0.4","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"cf934cb1808b6e9385a71a0860f9b2ea960e94a6","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.0.4.tgz","fileCount":27,"integrity":"sha512-e9sUwNPA5pixi988ngXNvDCedg1jhKY0hzR0NEfva2DdQ8vc41G4oQV7d32NTgn2YOTvEa7j5KFaeq3UKQV1jg==","signatures":[{"sig":"MEUCIQCHQ68oTNife0bULPqlUIBlLtpF/U8NoTj7wwkfdtAA5QIgKKTM729i8mSa/b9pJBrSqYaqUUQkrM2LvnuOBhkdx1A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.0.4.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/tmp/6c1bd24af7a2b7a848f18abef82677ed/bernierllc-email-template-service-1.0.4.tgz","_integrity":"sha512-e9sUwNPA5pixi988ngXNvDCedg1jhKY0hzR0NEfva2DdQ8vc41G4oQV7d32NTgn2YOTvEa7j5KFaeq3UKQV1jg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.7.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.1.0","@bernierllc/email-sender":"3.1.0","@bernierllc/template-engine":"0.2.1","@bernierllc/template-variable-registry":"1.0.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.0.4_1766454464829_0.5641701065376914","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@bernierllc/email-template-service","version":"1.2.0","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.2.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"f7776fbad5ffb9b4fe62be82659e4e7cc521ec16","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.2.0.tgz","fileCount":27,"integrity":"sha512-R0F9fz/guKAA8+cfbA7IXL+YQTzwPTVK5uay5YDZXXT5XlAFcJYAcuLSM9pfPohawuzvkKGWZ88uD0qO0unJhg==","signatures":[{"sig":"MEUCIDALdxPTKr4D/IEjRjIoF8tfN4I23jVk8V5/he1Qr0nTAiEAqc/ZWFEER1NPzq1N755eGYy78FBt8BSZp21UYnhZIXE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126039},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"af7e74b3715d56d3a193e1bb6743b337c2b0df6d","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v20.19.6+x64 (linux)","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/logger":"1.3.0","@bernierllc/email-sender":"5.0.0","@bernierllc/template-engine":"0.4.0","@bernierllc/template-variable-registry":"1.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.2.0_1767642454312_0.27254178553179287","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@bernierllc/email-template-service","version":"1.2.1","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.2.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"ff81c9466378f93f589858bfec857ea0b0089625","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.2.1.tgz","fileCount":27,"integrity":"sha512-nWNHzGKariUsYZ4i8GCMhS/cpcc/hCA1i6ap/qIdDBhs/8znK+mmsUs5nBMlGdWtjM9ntKUJd16XX7e0HIWUrA==","signatures":[{"sig":"MEYCIQD58uCzy0xrvmvSZ77ZdLubf9ugs6bhjPKBMCt7t6gGvAIhAKOi0mSX4gsH/3fduI9Z45wVZBcbTDBAHoCJx8+Gb1+I","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.2.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_resolved":"/Users/mattbernier/projects/tools/packages/service/email-template-service/bernierllc-email-template-service-1.2.1.tgz","_integrity":"sha512-nWNHzGKariUsYZ4i8GCMhS/cpcc/hCA1i6ap/qIdDBhs/8znK+mmsUs5nBMlGdWtjM9ntKUJd16XX7e0HIWUrA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"25.2.1","dependencies":{"@bernierllc/logger":"1.3.1","@bernierllc/email-sender":"5.1.1","@bernierllc/template-engine":"0.4.1","@bernierllc/template-variable-registry":"1.2.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.2.1_1772569388318_0.06863479749186108","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@bernierllc/email-template-service","version":"1.2.2","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.2.2","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"81bc26db4d986995e094840b5e2850394c78e2b8","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.2.2.tgz","fileCount":27,"integrity":"sha512-iiZjRbAMJpvnHcf2zq1IiZjoZ0stglJHBJ58a2k8pLj6X0cgQ/2yj4LSMtuqLU3BgXbIeMv8Gm4LuFAtdyL9DA==","signatures":[{"sig":"MEUCIDT0umq6z8kAaX+Ug1OBLNEp4m3lfUfahki9L1KW1GrCAiEAnuBAtylID3OyyuF/cAy9PCHjTDUNzCd/TKV/nHauEf4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.2.2.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.2.2.tgz","_integrity":"sha512-iiZjRbAMJpvnHcf2zq1IiZjoZ0stglJHBJ58a2k8pLj6X0cgQ/2yj4LSMtuqLU3BgXbIeMv8Gm4LuFAtdyL9DA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.11.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@bernierllc/logger":"1.3.2","@bernierllc/email-sender":"5.2.0","@bernierllc/template-engine":"0.4.2","@bernierllc/template-variable-registry":"1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.2.2_1773161202053_0.45188095264583317","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@bernierllc/email-template-service","version":"1.2.3","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.2.3","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"737d3bc014e639a2e5151112ea734168f548f5ea","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.2.3.tgz","fileCount":27,"integrity":"sha512-U7bmyIS8cUhfZpjmraxSBA2dtC98gnzQacICo5PGPtjYfzkY4XomeWZrrOwFRFVoQHFHHv9xp6DkbPZPg9EEqQ==","signatures":[{"sig":"MEYCIQDbtWRD34ssKvqJjQKnCDUPowYb5ke+PtJzUwdct8LObgIhAJ8SJ7oqMhljyUwTpmU/cwDwHwK9GpzKzlKNdGpKZRwU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.2.3.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.2.3.tgz","_integrity":"sha512-U7bmyIS8cUhfZpjmraxSBA2dtC98gnzQacICo5PGPtjYfzkY4XomeWZrrOwFRFVoQHFHHv9xp6DkbPZPg9EEqQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.11.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.1","dependencies":{"@bernierllc/logger":"1.3.2","@bernierllc/email-sender":"5.2.1","@bernierllc/template-engine":"0.4.2","@bernierllc/template-variable-registry":"1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.2.3_1773869825078_0.3914183953093071","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"@bernierllc/email-template-service","version":"1.2.4","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.2.4","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"6132c16504dbe9f9c4102e2415c29a2cca1ee86a","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.2.4.tgz","fileCount":27,"integrity":"sha512-GSSBsrnnf9qBFGN1tanHyHcIbVuTNNW+5ZFL1ky2dvoTP1b14q4zkj7KN8Hl6MT04g8EVFkzcaUZjkutexf85A==","signatures":[{"sig":"MEYCIQDgQ23wgEw0JyENF6uMBF75CbJ0oGCT/F8s2RRhKTrthAIhAOAUTEMNF7hwPkotThLSJoWKOsnxF/O6yIMn9qWotQOc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.2.4.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.2.4.tgz","_integrity":"sha512-GSSBsrnnf9qBFGN1tanHyHcIbVuTNNW+5ZFL1ky2dvoTP1b14q4zkj7KN8Hl6MT04g8EVFkzcaUZjkutexf85A==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.12.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.1","dependencies":{"@bernierllc/logger":"1.3.2","@bernierllc/email-sender":"5.3.0","@bernierllc/template-engine":"0.4.2","@bernierllc/template-variable-registry":"1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.2.4_1774131176677_0.6167426034356438","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"@bernierllc/email-template-service","version":"1.2.5","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.2.5","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"ce3ff7785f41cc8830b1eb51891dc69062be909f","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.2.5.tgz","fileCount":27,"integrity":"sha512-n+Pm4jLzxJHSuuqHpSLuHCZWvbGkmcpcQU99A6rBMmQjvUW2v+fJuoMxtoijd6AyCKrv1pgChRmHE/4vhKlXNg==","signatures":[{"sig":"MEYCIQCvVRCTTUe4HBcW42RncFTax5CTvU2GUrE0xjS6PYMKugIhANpfrG8xxZiCzbM4qgLlFgUsfPrIhqqTNftijZN2els7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.2.5.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.2.5.tgz","_integrity":"sha512-n+Pm4jLzxJHSuuqHpSLuHCZWvbGkmcpcQU99A6rBMmQjvUW2v+fJuoMxtoijd6AyCKrv1pgChRmHE/4vhKlXNg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.4.0","@bernierllc/email-sender":"5.3.0","@bernierllc/template-engine":"0.4.2","@bernierllc/template-variable-registry":"1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.2.5_1779133784734_0.9243575548175522","host":"s3://npm-registry-packages-npm-production"}},"1.2.6":{"name":"@bernierllc/email-template-service","version":"1.2.6","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.2.6","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"19bc2a512b273de5659b734e6e5b4198fc18e77d","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.2.6.tgz","fileCount":27,"integrity":"sha512-Rf08Smbq/c8Lse3TBq2UU2WIVfJCD+9+2ObughDdkNgrCg/6P/tH4mFdvLOx7952+cvOZqmV12e4GRKHmon+3Q==","signatures":[{"sig":"MEUCIQCZGt5aiS+TQW4KxW8+wU++frLXmJrCqzOYjOBhyMBl1AIgLzY6AxSbCWdspgFc70h9oPhEWYf6G/weSpPbiRxNgg0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.2.6.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.2.6.tgz","_integrity":"sha512-Rf08Smbq/c8Lse3TBq2UU2WIVfJCD+9+2ObughDdkNgrCg/6P/tH4mFdvLOx7952+cvOZqmV12e4GRKHmon+3Q==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.4.2","@bernierllc/email-sender":"5.3.0","@bernierllc/template-engine":"0.4.2","@bernierllc/template-variable-registry":"1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.2.6_1779157467468_0.29760583237285165","host":"s3://npm-registry-packages-npm-production"}},"1.2.7":{"name":"@bernierllc/email-template-service","version":"1.2.7","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.2.7","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"ebfd61841c95a4a7c11b2dae10cc1d777269364a","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.2.7.tgz","fileCount":27,"integrity":"sha512-eHYMPH27QjgReowgsV2qV25Abl7saDQ8ZeZyTFqmiNYxlUB4bq9TKFffY7dMzMcHi1a7+btzIAdenUzqLmWH/Q==","signatures":[{"sig":"MEQCIGlOVEWoeFQ3p95Io0tC3//pndsocKjMb9XXHKQQsSQaAiBF8P0YdiefJ7BXk393XuIOVq1sSDccvL8gWaN3yTJDAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.2.7.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.2.7.tgz","_integrity":"sha512-eHYMPH27QjgReowgsV2qV25Abl7saDQ8ZeZyTFqmiNYxlUB4bq9TKFffY7dMzMcHi1a7+btzIAdenUzqLmWH/Q==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.4.3","@bernierllc/email-sender":"5.3.0","@bernierllc/template-engine":"0.4.2","@bernierllc/template-variable-registry":"1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.2.7_1779221619505_0.08024366562200536","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@bernierllc/email-template-service","version":"1.3.0","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.3.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"98ac66602e2a5d8e6b920d65ba74533768a7d4fa","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.3.0.tgz","fileCount":27,"integrity":"sha512-d+9LxBDW/D0Vc/2L5EYx62RFCnjv0lykaDmIUnrevukJ6ePRemdqrF4dfE6Y6k23pTxCNws71NY2cJE/gR7gDw==","signatures":[{"sig":"MEUCIECNjGq8zZUuXNZNxkDqT5iyRMMH3YVDMSKbsAgHkBl3AiEAvPKPxPcJHtvFmJD2BnD1wyXodaEA9gOu6QiYSqO82DQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.3.0.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.3.0.tgz","_integrity":"sha512-d+9LxBDW/D0Vc/2L5EYx62RFCnjv0lykaDmIUnrevukJ6ePRemdqrF4dfE6Y6k23pTxCNws71NY2cJE/gR7gDw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.6.0","@bernierllc/email-sender":"5.4.0","@bernierllc/template-engine":"0.6.0","@bernierllc/template-variable-registry":"1.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.3.0_1779241681929_0.9939078452258507","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@bernierllc/email-template-service","version":"1.3.1","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.3.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"0dcfc9eaa8963a792107e853ee7f490740a1fa02","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.3.1.tgz","fileCount":27,"integrity":"sha512-7cMvgWF0ZQnCz50uUAKK8Fgo3L6x5g50gJ4nCA+wzTe5T0LWlpzBYCeknXDazTaJQMhsi9W5wv0LSXJ2uPZmiw==","signatures":[{"sig":"MEQCIGH1b1vig2wk5sNF7aJmQT2NN6mumB6EjD/xebzcdFDLAiAgwdHf8vd0OOcPkxBgc8vk40VR0/fSJjVMJDAiCk1qLw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.3.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.3.1.tgz","_integrity":"sha512-7cMvgWF0ZQnCz50uUAKK8Fgo3L6x5g50gJ4nCA+wzTe5T0LWlpzBYCeknXDazTaJQMhsi9W5wv0LSXJ2uPZmiw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.6.0","@bernierllc/email-sender":"5.4.0","@bernierllc/template-engine":"0.6.0","@bernierllc/template-variable-registry":"1.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.3.1_1779243475396_0.349391123053193","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@bernierllc/email-template-service","version":"1.4.0","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.4.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"540ff27b0588b7f018d64c3f2df60f53bc9669e2","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.4.0.tgz","fileCount":27,"integrity":"sha512-42g572eXpxnBU/1Uf/IoUSnaA37U7eZ5l3rV5yatptHTT2QFqyIICslILLcUdZxLx/y6Kj/lF2paiu2PRulPIA==","signatures":[{"sig":"MEYCIQDstn6ZS+baeCcTfs+ZjvZZ7b0eqb1oDunsUg7zBgseggIhAMNOxIu9KUAYB6abERTOqC9w97COuB/wgnNHgGhj+UoC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.4.0.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.4.0.tgz","_integrity":"sha512-42g572eXpxnBU/1Uf/IoUSnaA37U7eZ5l3rV5yatptHTT2QFqyIICslILLcUdZxLx/y6Kj/lF2paiu2PRulPIA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.7.0","@bernierllc/email-sender":"5.5.0","@bernierllc/template-engine":"0.7.0","@bernierllc/template-variable-registry":"1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.4.0_1779250428077_0.3529739420758271","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@bernierllc/email-template-service","version":"1.4.1","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@1.4.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"b2f0b36216aa96b9aed7fbff4fb1ba6ade968384","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-1.4.1.tgz","fileCount":27,"integrity":"sha512-TTZz1Lw047suKT7rwXwbZTcIb5wU7Dk1VizcODZT+rR+VMU6PDlv40juxXrn4W25UWtBQsg6v4tjymLcOdq/gg==","signatures":[{"sig":"MEYCIQDHOAIp3kOgWmRdUyldLwIpERgr7h4zCWwJxh8dvdlb/gIhALw4AWF3x2FUIllAWlbswlki2mQkJECn5gV92H3y8QRe","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125981},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-1.4.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-1.4.1.tgz","_integrity":"sha512-TTZz1Lw047suKT7rwXwbZTcIb5wU7Dk1VizcODZT+rR+VMU6PDlv40juxXrn4W25UWtBQsg6v4tjymLcOdq/gg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.14.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.7.0","@bernierllc/email-sender":"5.7.0","@bernierllc/template-engine":"0.7.0","@bernierllc/template-variable-registry":"1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_1.4.1_1779252025680_0.4838918228713347","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@bernierllc/email-template-service","version":"3.0.0","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@3.0.0","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"e11977885ec9509a18b4ca5eb88bca206c278745","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-3.0.0.tgz","fileCount":27,"integrity":"sha512-wjZubukaFhUEDibVkZd8YeNQ66mDW3alg9XFRvpPGVDay1H0xEVh8a6BySqnaHphR/fg3sCjhevXa7EvpiA2BQ==","signatures":[{"sig":"MEQCIC0CNwHWpdSH/G5IO0K9tSD8Wwmwb2hfnnjqZCYDUrp/AiBQ/Ihc8urpEjO/3bxiRV9LCiDVFIywEwW+gtcqMU8vLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131838},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-3.0.0.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-3.0.0.tgz","_integrity":"sha512-wjZubukaFhUEDibVkZd8YeNQ66mDW3alg9XFRvpPGVDay1H0xEVh8a6BySqnaHphR/fg3sCjhevXa7EvpiA2BQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"11.15.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/logger":"1.7.0","@bernierllc/email-sender":"5.7.0","@bernierllc/template-engine":"0.7.0","@bernierllc/template-variable-registry":"1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_3.0.0_1779312730722_0.12999293437310833","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@bernierllc/email-template-service","version":"3.0.1","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@3.0.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"9cc0f3ba26f870b3f3bf460d51346cc453b32b40","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-3.0.1.tgz","fileCount":27,"integrity":"sha512-n2OTD3BRbimk5qNOT7B9/D0OY0OS1qNdaTUPZQPU3F+SCNo4OeNzHGCwNh0CeKOWb0Ry4gOzf/LW0E9BPRJ4fA==","signatures":[{"sig":"MEUCIQCS3RaFqcTgRFQEsJ6cyCYq5YVAYTtNvkXWaHhlV2hhfgIgEvFBiLyeMUY8ddOKA6tr+6cWtMKVwyudTo9xjkhlgh0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131838},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-3.0.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-3.0.1.tgz","_integrity":"sha512-n2OTD3BRbimk5qNOT7B9/D0OY0OS1qNdaTUPZQPU3F+SCNo4OeNzHGCwNh0CeKOWb0Ry4gOzf/LW0E9BPRJ4fA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"12.0.1","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@bernierllc/logger":"1.7.1","@bernierllc/email-sender":"5.7.0","@bernierllc/template-engine":"0.7.0","@bernierllc/template-variable-registry":"1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_3.0.1_1784015883233_0.5312799043204623","host":"s3://npm-registry-packages-npm-production"}},"3.0.2":{"name":"@bernierllc/email-template-service","version":"3.0.2","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@3.0.2","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"c1a19467582509abd0ac8668396b363dc6caec71","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-3.0.2.tgz","fileCount":27,"integrity":"sha512-L6k06/bEENypiJVpT6+H1oY65OA+0AYeuFkZJpjFV4Z2vrw01JxGDl7XetTITyoGfDNinsloJhfx+Sdus/tQYA==","signatures":[{"sig":"MEUCIQDU+9pH2lcAYrS19rHfoXJDSKRCQ64DbmBS57eiLf4GqQIgakyq8Yd5+9w/zv19XeyO5eBRvAOTA4rCgElM9stz53M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131838},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-3.0.2.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-3.0.2.tgz","_integrity":"sha512-L6k06/bEENypiJVpT6+H1oY65OA+0AYeuFkZJpjFV4Z2vrw01JxGDl7XetTITyoGfDNinsloJhfx+Sdus/tQYA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"12.0.2","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"24.19.0","dependencies":{"@bernierllc/logger":"1.7.1","@bernierllc/email-sender":"5.8.0","@bernierllc/template-engine":"0.7.0","@bernierllc/template-variable-registry":"1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_3.0.2_1788112422612_0.8835674091333576","host":"s3://npm-registry-packages-npm-production"}},"3.0.3":{"name":"@bernierllc/email-template-service","version":"3.0.3","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@3.0.3","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"a2ea11163301dcdbe8b8539055a8fb869165615b","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-3.0.3.tgz","fileCount":27,"integrity":"sha512-vLiBmGL2/87zhsOz4e0SzzgZEDRGD6w5xnSsgZ69JrA+MtlXRgNhHcvOAhMHYT0WfyEiVW/mYYWOXsLz+SmTxQ==","signatures":[{"sig":"MEUCIQDFGQsRwoK7gpM8ovDm5ThKIqFHxM82J1LadvGsiMxP4wIgRofDPFFnMfEnreaQpEOEDj4AvgGWeNrrOIOsRpsjAJ8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBORenmfdXLMPar6XYHmcv7cVBdho8DUVrEbD7rCSxxHAiEA4zhQ6ipTarbQM+N+8ba9stawfZKihTQFgGvTBByHLKA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131838},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-3.0.3.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-3.0.3.tgz","_integrity":"sha512-vLiBmGL2/87zhsOz4e0SzzgZEDRGD6w5xnSsgZ69JrA+MtlXRgNhHcvOAhMHYT0WfyEiVW/mYYWOXsLz+SmTxQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"12.1.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"24.21.0","dependencies":{"@bernierllc/logger":"1.7.1","@bernierllc/email-sender":"5.9.0","@bernierllc/template-engine":"0.7.0","@bernierllc/template-variable-registry":"1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_3.0.3_1790709353161_0.3472567875453234","host":"s3://npm-registry-packages-npm-production"}},"3.0.4":{"name":"@bernierllc/email-template-service","version":"3.0.4","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@3.0.4","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"b1ef4a48d2589a75241cf4e01fb47209037decd1","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-3.0.4.tgz","fileCount":27,"integrity":"sha512-sbbw4trp+U37ibPU9dQY4yHS7t+/Lw8ZampFZGeN1QfpeJ3Kl6u7oroLkhVvRlTXS9++Fr2xNBA6LLS4SwQ8yw==","signatures":[{"sig":"MEQCIFYTZOuT6wR7rOUDRGNbvZ6Du5nTG7Cm7jXJANfGunyAAiB3iD2hckPyEf44ku6pUwU/QJmCctw5Hp0uJHaIelHFfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD1lD5VvRkXHbRBaL3Z/QxOLyyiLG9iHaNFuS29bxr+PgIgOzBo0DHItP6HLpYAWvDnjOY8a6wqU7ZHNR/JPi8wSaI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131838},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-3.0.4.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-3.0.4.tgz","_integrity":"sha512-sbbw4trp+U37ibPU9dQY4yHS7t+/Lw8ZampFZGeN1QfpeJ3Kl6u7oroLkhVvRlTXS9++Fr2xNBA6LLS4SwQ8yw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"12.2.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"24.21.0","dependencies":{"@bernierllc/logger":"1.7.1","@bernierllc/email-sender":"5.9.0","@bernierllc/template-engine":"0.7.0","@bernierllc/template-variable-registry":"1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_3.0.4_1790882777113_0.9950048272129168","host":"s3://npm-registry-packages-npm-production"}},"3.0.5":{"name":"@bernierllc/email-template-service","version":"3.0.5","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"author":{"name":"Bernier LLC"},"license":"MIT","_id":"@bernierllc/email-template-service@3.0.5","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"homepage":"https://github.com/bernierllc/tools#readme","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"997b742fa32237a730e936379d59a892c0d46c1e","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-3.0.5.tgz","fileCount":27,"integrity":"sha512-CrcBLEMA0ORQxng5kAB/HWujaADC5bWDHrkSWLSIHDKe/TSbylJfAj9lrs7ATzcu07/nznKnELxoJOPa+8eqfg==","signatures":[{"sig":"MEQCIEa7Rus3W8Qe3iTFsQoAk/xNYDOcrxzGKuBrKqjexXibAiBANgtqIDi9Wrcc0hrx6QhcIOztRrLKZ0fn8cUNakIlvg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHojbbjoJ1vJLoZGLsGzmjqlkkW/Y04OgDjlmDJWGAEoAiEArPm5iUT0jvU8qy+8uHV2LgN1ymoH/xn6X8HDW/EVDIU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131842},"main":"dist/index.js","_from":"file:bernierllc-email-template-service-3.0.5.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-3.0.5.tgz","_integrity":"sha512-CrcBLEMA0ORQxng5kAB/HWujaADC5bWDHrkSWLSIHDKe/TSbylJfAj9lrs7ATzcu07/nznKnELxoJOPa+8eqfg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"12.2.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"_nodeVersion":"24.21.0","dependencies":{"@bernierllc/logger":"^1.7.1","@bernierllc/email-sender":"^5.9.0","@bernierllc/template-engine":"^0.7.0","@bernierllc/template-variable-registry":"^1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/email-template-service_3.0.5_1790884364913_0.9278433255129159","host":"s3://npm-registry-packages-npm-production"}},"3.0.6":{"_id":"@bernierllc/email-template-service@3.0.6","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"dist":{"shasum":"8c86d594f36a45bb36644d752ffb26e280ca416d","tarball":"https://registry.npmjs.org/@bernierllc/email-template-service/-/email-template-service-3.0.6.tgz","fileCount":27,"integrity":"sha512-kvzlX7wGSyQpSMHo06QGd7Y1yvAdm2fgI8F0OHEIKmyL89588Y014yEuE/IyuFiiflAeZ52543BNBsrEtQZ2Rw==","signatures":[{"sig":"MEUCIC6eLCOdsoVeqlsQM3V/nBivSGWBSn1ZwGEo5aGwKeI9AiEA/DEJlc8y6A3yvmsFdZJLVbH6ZeUivlv1nX6VVqKKAds=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGkvQmcmAr0BSfIb/+tuC81ke416IXIBoJKbFUYK9z2KAiB2eYlM+CxtDhoY7GI9ejmfCeFcz3NtXmkOK43Nisa6uQ=="}],"unpackedSize":131843},"main":"dist/index.js","name":"@bernierllc/email-template-service","_from":"file:bernierllc-email-template-service-3.0.6.tgz","types":"dist/index.d.ts","author":{"name":"Bernier LLC"},"license":"MIT","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts --max-warnings=0","test":"jest --watch","build":"tsc","clean":"rm -rf dist coverage","format":"prettier --write src/**/*.ts","test:run":"jest","test:coverage":"jest --coverage"},"version":"3.0.6","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"108e49bc-c5a0-4b03-994c-1d5bf6caee36"}},"homepage":"https://github.com/bernierllc/tools#readme","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"_resolved":"/home/runner/work/tools/tools/packages/service/email-template-service/bernierllc-email-template-service-3.0.6.tgz","_integrity":"sha512-kvzlX7wGSyQpSMHo06QGd7Y1yvAdm2fgI8F0OHEIKmyL89588Y014yEuE/IyuFiiflAeZ52543BNBsrEtQZ2Rw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"_npmVersion":"12.2.0","description":"Email template management service with provider synchronization and variable context validation","directories":{},"maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"_nodeVersion":"24.21.0","dependencies":{"@bernierllc/logger":"^1.7.1","@bernierllc/email-sender":"^5.10.0","@bernierllc/template-engine":"^0.7.0","@bernierllc/template-variable-registry":"^1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.4.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/email-template-service_3.0.6_1790902647651_0.42077903335570066"}}},"time":{"created":"2025-11-26T15:20:24.277Z","modified":"2026-10-02T00:57:27.939Z","1.0.0":"2025-11-26T15:20:24.586Z","1.0.1":"2025-12-21T00:25:40.364Z","1.0.2":"2025-12-21T02:18:39.253Z","1.0.3":"2025-12-22T21:10:50.747Z","1.0.4":"2025-12-23T01:47:44.994Z","1.2.0":"2026-01-05T19:47:34.457Z","1.2.1":"2026-03-03T20:23:08.490Z","1.2.2":"2026-03-10T16:46:42.183Z","1.2.3":"2026-03-18T21:37:05.233Z","1.2.4":"2026-03-21T22:12:56.825Z","1.2.5":"2026-05-18T19:49:44.923Z","1.2.6":"2026-05-19T02:24:27.650Z","1.2.7":"2026-05-19T20:13:39.650Z","1.3.0":"2026-05-20T01:48:02.069Z","1.3.1":"2026-05-20T02:17:55.549Z","1.4.0":"2026-05-20T04:13:48.216Z","1.4.1":"2026-05-20T04:40:25.832Z","3.0.0":"2026-05-20T21:32:10.865Z","3.0.1":"2026-07-14T07:58:03.380Z","3.0.2":"2026-08-30T17:53:42.758Z","3.0.3":"2026-09-29T19:15:53.253Z","3.0.4":"2026-10-01T19:26:17.197Z","3.0.5":"2026-10-01T19:52:44.993Z","3.0.6":"2026-10-02T00:57:27.750Z"},"bugs":{"url":"https://github.com/bernierllc/tools/issues"},"author":{"name":"Bernier LLC"},"license":"MIT","homepage":"https://github.com/bernierllc/tools#readme","keywords":["email","template","service","provider","sync","variable","validation","typescript"],"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git"},"description":"Email template management service with provider synchronization and variable context validation","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"readme":"# @bernierllc/email-template-service\n\nEmail template management service with provider synchronization, variable context validation, and base template support.\n\n## Features\n\n- Complete template CRUD operations with validation\n- Provider plugin system for email service integration (SendGrid, Mailgun, etc.)\n- Bidirectional synchronization between local database and provider services\n- Variable context registration and validation\n- Base template support for consistent branding\n- Conflict detection and resolution strategies\n- Batch synchronization with error tracking\n- TypeScript-first with strict type safety\n- Extensible database adapter interface\n\n## Installation\n\n```bash\nnpm install @bernierllc/email-template-service\n```\n\n## Quick Start\n\n```typescript\nimport {\n  EmailTemplateService,\n  InMemoryDatabaseAdapter,\n  MockProviderPlugin\n} from '@bernierllc/email-template-service';\n\n// Initialize service\nconst service = new EmailTemplateService({\n  database: new InMemoryDatabaseAdapter(),\n  templateEngine: myTemplateEngine,\n  variableRegistry: myVariableRegistry,\n  providers: [new MockProviderPlugin()],\n  syncConfig: {\n    enabled: true,\n    providers: {\n      sendgrid: {\n        enabled: true,\n        strategy: 'auto',\n        direction: 'bidirectional'\n      }\n    },\n    defaultStrategy: 'auto',\n    conflictResolution: 'local_wins'\n  }\n});\n\n// Create a template\nconst template = await service.createTemplate({\n  name: 'Welcome Email',\n  subject: 'Welcome to our platform, {{firstName}}!',\n  htmlContent: '<html><body><h1>Welcome {{firstName}} {{lastName}}!</h1></body></html>',\n  textContent: 'Welcome {{firstName}} {{lastName}}!',\n  tags: ['welcome', 'onboarding'],\n  createdBy: 'admin'\n});\n\n// Sync to provider\nawait service.syncToProvider(template.id, 'sendgrid');\n\n// List templates\nconst result = await service.listTemplates({\n  category: 'transactional',\n  page: 1,\n  limit: 10\n});\n```\n\n## Core Concepts\n\n### Templates\n\nTemplates are email definitions with support for:\n- HTML and text content\n- Variable placeholders (e.g., `{{firstName}}`)\n- Subject lines with variables\n- Categorization and tagging\n- Versioning\n- Provider synchronization status\n\n### Provider Plugins\n\nProvider plugins enable integration with email service providers:\n- **SendGrid**: Template management and synchronization\n- **Mailgun**: Template operations and tracking\n- **Custom**: Implement `TemplateProviderPlugin` interface\n\nPlugins support:\n- Template CRUD operations in provider systems\n- Bidirectional synchronization\n- Feature capability detection\n- Health monitoring and status reporting\n\n### Variable Contexts\n\nVariable contexts define available variables for templates:\n- Type-safe variable definitions\n- Required vs. optional variables\n- Context inheritance\n- Template validation against contexts\n- Auto-completion suggestions\n\n### Base Templates\n\nBase templates provide consistent branding:\n- Reusable header/footer HTML and CSS\n- Theme management\n- Branding elements (logos, colors, fonts)\n- Dynamic content insertion\n- Template building from base + content\n\n## API Reference\n\n### EmailTemplateService\n\n#### Template Operations\n\n##### createTemplate(definition: TemplateDefinition): Promise<Template>\n\nCreate a new email template.\n\n```typescript\nconst template = await service.createTemplate({\n  name: 'Password Reset',\n  subject: 'Reset your password',\n  htmlContent: '<html><body>Click here to reset: {{resetLink}}</body></html>',\n  context: 'auth',\n  createdBy: 'admin'\n});\n```\n\n##### updateTemplate(id: string, updates: TemplateUpdate): Promise<Template>\n\nUpdate an existing template.\n\n```typescript\nconst updated = await service.updateTemplate(template.id, {\n  subject: 'Reset your password - Updated',\n  lastModifiedBy: 'admin'\n});\n```\n\n##### deleteTemplate(id: string): Promise<void>\n\nDelete a template and its provider copies.\n\n```typescript\nawait service.deleteTemplate(template.id);\n```\n\n##### getTemplate(id: string): Promise<Template | null>\n\nRetrieve a template by ID.\n\n```typescript\nconst template = await service.getTemplate('tpl_123');\n```\n\n##### listTemplates(options: ListOptions): Promise<PaginatedResult<Template>>\n\nList templates with filtering and pagination.\n\n```typescript\nconst result = await service.listTemplates({\n  category: 'marketing',\n  tags: ['promo'],\n  isActive: true,\n  search: 'holiday',\n  page: 1,\n  limit: 20,\n  sortBy: 'createdAt',\n  sortOrder: 'desc'\n});\n```\n\n#### Provider Synchronization\n\n##### syncToProvider(templateId: string, providerId: string): Promise<SyncResult>\n\nSync a template to a specific provider.\n\n```typescript\nconst result = await service.syncToProvider('tpl_123', 'sendgrid');\nconsole.log(result.action); // 'created' or 'updated'\nconsole.log(result.providerTemplateId);\n```\n\n##### syncFromProvider(providerTemplateId: string, providerId: string): Promise<Template>\n\nImport a template from a provider.\n\n```typescript\nconst template = await service.syncFromProvider('sg_template_456', 'sendgrid');\n```\n\n##### syncAllTemplates(providerId: string): Promise<BatchSyncResult>\n\nSync all local templates to a provider.\n\n```typescript\nconst result = await service.syncAllTemplates('sendgrid');\nconsole.log(`Synced: ${result.successful}/${result.total}`);\nconsole.log(`Failed: ${result.failed}`);\n```\n\n#### Base Template Operations\n\n##### createBaseTemplate(definition: BaseTemplateDefinition): Promise<BaseTemplate>\n\nCreate a reusable base template.\n\n```typescript\nconst baseTemplate = await service.createBaseTemplate({\n  name: 'Corporate Email Template',\n  headerHtml: '<header><img src=\"{{logo}}\" /></header>',\n  footerHtml: '<footer>© 2025 Company Name</footer>',\n  theme: 'corporate'\n});\n```\n\n##### buildTemplate(baseTemplateId: string, content: string, variables?: Record<string, unknown>): Promise<BuiltTemplate>\n\nBuild a complete template from base + content.\n\n```typescript\nconst built = await service.buildTemplate(\n  baseTemplate.id,\n  '<main><h1>{{title}}</h1><p>{{content}}</p></main>',\n  {\n    logo: 'https://example.com/logo.png',\n    title: 'Important Update',\n    content: 'This is the email body'\n  }\n);\n\nconsole.log(built.html); // Complete HTML with header, content, footer\nconsole.log(built.text); // Plain text version\n```\n\n#### Variable Context Management\n\n##### registerContext(name: string, context: VariableContext): Promise<void>\n\nRegister a variable context for templates.\n\n```typescript\nawait service.registerContext('user', {\n  description: 'User-related variables',\n  variables: {\n    firstName: { type: 'string', required: true, description: 'User first name' },\n    lastName: { type: 'string', required: true, description: 'User last name' },\n    email: { type: 'string', required: true, description: 'User email address' },\n    accountAge: { type: 'number', required: false, description: 'Days since signup' }\n  }\n});\n```\n\n##### validateTemplate(templateId: string, contextOverride?: string): Promise<ValidationResult>\n\nValidate a template against its variable context.\n\n```typescript\nconst validation = await service.validateTemplate('tpl_123');\n\nif (!validation.isValid) {\n  console.log('Errors:', validation.errors);\n  console.log('Undefined variables:', validation.undefinedVariables);\n}\n```\n\n##### getVariableSuggestions(context: string, prefix?: string): Promise<VariableSuggestion[]>\n\nGet variable suggestions for auto-completion.\n\n```typescript\nconst suggestions = await service.getVariableSuggestions('user', 'first');\n// Returns: [{ name: 'firstName', type: 'string', ... }]\n```\n\n## Database Adapters\n\nThe service supports any database through the `DatabaseAdapter` interface.\n\n### In-Memory Adapter (Testing/Development)\n\n```typescript\nimport { InMemoryDatabaseAdapter } from '@bernierllc/email-template-service';\n\nconst adapter = new InMemoryDatabaseAdapter();\n```\n\n### Custom Adapter\n\nImplement the `DatabaseAdapter` interface for your database:\n\n```typescript\nimport { DatabaseAdapter, Template, BaseTemplate } from '@bernierllc/email-template-service';\n\nclass PostgresDatabaseAdapter implements DatabaseAdapter {\n  async createTemplate(template: Template): Promise<Template> {\n    // Insert into PostgreSQL\n  }\n\n  async updateTemplate(id: string, updates: Partial<Template>): Promise<Template> {\n    // Update PostgreSQL row\n  }\n\n  // Implement other required methods...\n}\n```\n\n## Provider Plugins\n\n### Creating a Provider Plugin\n\n```typescript\nimport {\n  BaseProviderPlugin,\n  Template,\n  ProviderTemplate,\n  SyncResult\n} from '@bernierllc/email-template-service';\n\nclass SendGridTemplatePlugin extends BaseProviderPlugin {\n  readonly name = 'SendGrid Template Plugin';\n  readonly version = '1.0.0';\n  readonly providerId = 'sendgrid';\n  readonly capabilities = [\n    {\n      feature: 'template-versioning',\n      description: 'Supports template versions',\n      methods: ['createTemplate', 'updateTemplate']\n    }\n  ];\n\n  async initialize(config: PluginConfig): Promise<void> {\n    await super.initialize(config);\n    this.client = new SendGridClient(config.apiKey);\n  }\n\n  async createTemplate(template: Template): Promise<string> {\n    this.ensureInitialized();\n    const result = await this.client.createTemplate({\n      name: template.name,\n      generation: 'dynamic',\n      subject: template.subject,\n      html_content: template.htmlContent\n    });\n    return result.id;\n  }\n\n  // Implement other required methods...\n}\n```\n\n## Configuration\n\n### Sync Configuration\n\n```typescript\n{\n  enabled: true, // Enable synchronization\n  providers: {\n    sendgrid: {\n      enabled: true,\n      strategy: 'auto',          // 'auto', 'manual', or 'scheduled'\n      direction: 'bidirectional', // 'bidirectional', 'push_only', 'pull_only'\n      schedule: '0 */6 * * *',    // Cron expression for scheduled sync\n      batchSize: 50               // Batch size for bulk operations\n    }\n  },\n  defaultStrategy: 'manual',    // Default sync strategy\n  conflictResolution: 'local_wins' // 'local_wins', 'remote_wins', 'timestamp', 'manual'\n}\n```\n\n## Error Handling\n\nThe service provides specific error types:\n\n```typescript\nimport {\n  TemplateNotFoundError,\n  TemplateValidationError,\n  ProviderNotFoundError,\n  SyncError,\n  SyncConflictError\n} from '@bernierllc/email-template-service';\n\ntry {\n  await service.updateTemplate('invalid-id', { name: 'New Name' });\n} catch (error) {\n  if (error instanceof TemplateNotFoundError) {\n    console.error('Template not found');\n  } else if (error instanceof TemplateValidationError) {\n    console.error('Validation errors:', error.errors);\n  } else if (error instanceof SyncError) {\n    console.error('Sync failed:', error.message);\n  }\n}\n```\n\n## Testing\n\nThe package includes comprehensive tests using real data:\n\n```bash\n# Run tests\nnpm test\n\n# Run tests with coverage\nnpm run test:coverage\n\n# Run tests once (CI)\nnpm run test:run\n```\n\n## Dependencies\n\n### Required\n- `@bernierllc/template-variable-registry` - Variable context management\n- `@bernierllc/email-template-engine` - Template processing\n- `@bernierllc/email-sender` - Email sending abstraction\n- `@bernierllc/logger` - Service logging\n\n### Optional\n- `@bernierllc/cache-manager` - Template caching\n- `@bernierllc/retry-policy` - Provider operation retries\n\n## Integration Status\n\n- **Logger**: Integrated - All service operations and provider sync events logged\n- **Docs-Suite**: Ready - Complete API documentation with examples\n- **NeverHub**: Required - Template events, sync status, and provider health monitoring\n\n## License\n\nCopyright (c) 2025 Bernier LLC. All rights reserved.\n\n## See Also\n\n- [@bernierllc/email-template-engine](../email-template-engine) - Template processing and rendering\n- [@bernierllc/template-variable-registry](../template-variable-registry) - Variable context management\n- [@bernierllc/email-sender](../email-sender) - Email sending service\n- [@bernierllc/email-sendgrid-plugin](../email-sendgrid-plugin) - SendGrid provider plugin\n","readmeFilename":"README.md"}