{"_id":"@bernierllc/data-transformer","_rev":"8-038561199bd4a60763786cd85516ae45","name":"@bernierllc/data-transformer","dist-tags":{"latest":"0.8.0"},"versions":{"0.1.0":{"name":"@bernierllc/data-transformer","version":"0.1.0","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/data-transformer@0.1.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":"d444e9a6fac5139888917c7f02fc1f9df56f35b5","tarball":"https://registry.npmjs.org/@bernierllc/data-transformer/-/data-transformer-0.1.0.tgz","fileCount":27,"integrity":"sha512-6LN0RbiWwPkApd5cJrxZmVHE82p/2xOb+OCS1jSWNPkDpcAQjS5uWhXhK4hXy9w1eMzjnIOj3f3zYuvfuL1ULA==","signatures":[{"sig":"MEQCIHb2zIxvY+CYh2IlGWAxA8VgbvKCEXJPNnHsz16Sj+D+AiBVIc8jH/EwJwYk+UIS2n40FXsTU1reF+xyfvKj1OEA1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48784},"main":"dist/index.js","_from":"file:bernierllc-data-transformer-0.1.0.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src/**/*.ts --fix","test:run":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_resolved":"/tmp/ccaae7a3fe70ba554a4dc4de68f6b356/bernierllc-data-transformer-0.1.0.tgz","_integrity":"sha512-6LN0RbiWwPkApd5cJrxZmVHE82p/2xOb+OCS1jSWNPkDpcAQjS5uWhXhK4hXy9w1eMzjnIOj3f3zYuvfuL1ULA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/data-transformer"},"_npmVersion":"11.7.0","description":"Generic schema mapping execution for JSON/API data transformation","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/schema-validator":"1.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","ts-jest":"^29.1.4","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/parser":"^7.13.0","@typescript-eslint/eslint-plugin":"^7.13.0"},"_npmOperationalInternal":{"tmp":"tmp/data-transformer_0.1.0_1766087444971_0.5278702156042971","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@bernierllc/data-transformer","version":"0.3.0","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/data-transformer@0.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":"fdab78a90ceecedfd15c31a243fa9896a5d019da","tarball":"https://registry.npmjs.org/@bernierllc/data-transformer/-/data-transformer-0.3.0.tgz","fileCount":27,"integrity":"sha512-UeKnt2d4NL9fGGYlOkzC11LJYuuigILcVLctttqaeqcO6FJ60jQprYmkn248JT+6vlNSPOJhKyK0lojWjDOZiw==","signatures":[{"sig":"MEUCIQCaMDIDzzQz//zYmg9buI5Wvzdf6MvXpTfOio4ULdfUOQIgPh//q1y6qDOV7kx85NL4/ekV4zNrp+mEq6UvXehmSto=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48842},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"af7e74b3715d56d3a193e1bb6743b337c2b0df6d","scripts":{"lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src/**/*.ts --fix","test:run":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bd35c57c-c8d1-4409-a3c7-085932a567f0"}},"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/data-transformer"},"_npmVersion":"lerna/9.0.3/node@v20.19.6+x64 (linux)","description":"Generic schema mapping execution for JSON/API data transformation","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@bernierllc/schema-validator":"1.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","ts-jest":"^29.1.4","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/parser":"^7.13.0","@typescript-eslint/eslint-plugin":"^7.13.0"},"_npmOperationalInternal":{"tmp":"tmp/data-transformer_0.3.0_1767642410210_0.456566704594245","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@bernierllc/data-transformer","version":"0.3.1","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/data-transformer@0.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":"4542631da25ac35044e051c601d671949c15161c","tarball":"https://registry.npmjs.org/@bernierllc/data-transformer/-/data-transformer-0.3.1.tgz","fileCount":27,"integrity":"sha512-X56xASNs1nfe6urNO2Wq4cp1EtnSkbSR+S00YHIdn+ooFjEBl3azYxYtMpPiY3JXEhMni3hxcClqigGQLUgsHA==","signatures":[{"sig":"MEUCIEUKTkDhoum6J6rvhOOvnkvABoqqN6YA+GcgeaiBYrThAiEA+1Ou4X3pOobBp0Yxw1deD2T5TuhSz8dcc6YgFTkOG5Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48784},"main":"dist/index.js","_from":"file:bernierllc-data-transformer-0.3.1.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src/**/*.ts --fix","test:run":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bd35c57c-c8d1-4409-a3c7-085932a567f0"}},"_resolved":"/tmp/c011ccff7dc7c3f9934e0b0115fce811/bernierllc-data-transformer-0.3.1.tgz","_integrity":"sha512-X56xASNs1nfe6urNO2Wq4cp1EtnSkbSR+S00YHIdn+ooFjEBl3azYxYtMpPiY3JXEhMni3hxcClqigGQLUgsHA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/data-transformer"},"_npmVersion":"11.11.0","description":"Generic schema mapping execution for JSON/API data transformation","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@bernierllc/schema-validator":"1.2.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","ts-jest":"^29.1.4","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/parser":"^7.13.0","@typescript-eslint/eslint-plugin":"^7.13.0"},"_npmOperationalInternal":{"tmp":"tmp/data-transformer_0.3.1_1773078175473_0.42415330057627565","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@bernierllc/data-transformer","version":"0.3.2","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/data-transformer@0.3.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":"632d0a12665b4cc495ab678593f2e86bdca2127f","tarball":"https://registry.npmjs.org/@bernierllc/data-transformer/-/data-transformer-0.3.2.tgz","fileCount":27,"integrity":"sha512-w4BnBlJagB5UcUZ5zsWs31S1GGlwfomwG1DfBqP/vW6wes/fqdr/j+TQ1gkWCBvJodo9AYUfJWYbEWEr/93ndw==","signatures":[{"sig":"MEYCIQDl6ztGxCjELz2JWiobeTvYzAA28EORz5u0ZQ51ms5OUgIhAJYOnQMevDtV+yd75+ZahMV5PfsBH0QP8SmIAMXk7QTv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48784},"main":"dist/index.js","_from":"file:bernierllc-data-transformer-0.3.2.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src/**/*.ts --fix","test:run":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bd35c57c-c8d1-4409-a3c7-085932a567f0"}},"_resolved":"/home/runner/work/tools/tools/packages/core/data-transformer/bernierllc-data-transformer-0.3.2.tgz","_integrity":"sha512-w4BnBlJagB5UcUZ5zsWs31S1GGlwfomwG1DfBqP/vW6wes/fqdr/j+TQ1gkWCBvJodo9AYUfJWYbEWEr/93ndw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/data-transformer"},"_npmVersion":"11.11.0","description":"Generic schema mapping execution for JSON/API data transformation","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@bernierllc/schema-validator":"1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","ts-jest":"^29.1.4","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/parser":"^7.13.0","@typescript-eslint/eslint-plugin":"^7.13.0"},"_npmOperationalInternal":{"tmp":"tmp/data-transformer_0.3.2_1773163139620_0.31595627813647","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bernierllc/data-transformer","version":"0.4.0","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/data-transformer@0.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":"b48e815e6a25e5a338c19da4c7eb1eec70f188e6","tarball":"https://registry.npmjs.org/@bernierllc/data-transformer/-/data-transformer-0.4.0.tgz","fileCount":27,"integrity":"sha512-VLoqKkzR4e69s4NQma1ipL3UG+hAZG88d0qDMuJI/U4kl0pi4naHHpZ7QhO7TswNrF8bb8Qxhuofjx8EvDJxXw==","signatures":[{"sig":"MEQCICoBJL/CMMlLta8omNLNwTr7J7jPvVxyTS1zHKVXWShWAiA68oAiFOftEJ7YbJioAdemCk/hMKC78gCNH4BvsPY/Vg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48784},"main":"dist/index.js","_from":"file:bernierllc-data-transformer-0.4.0.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src/**/*.ts --fix","test:run":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bd35c57c-c8d1-4409-a3c7-085932a567f0"}},"_resolved":"/home/runner/work/tools/tools/packages/core/data-transformer/bernierllc-data-transformer-0.4.0.tgz","_integrity":"sha512-VLoqKkzR4e69s4NQma1ipL3UG+hAZG88d0qDMuJI/U4kl0pi4naHHpZ7QhO7TswNrF8bb8Qxhuofjx8EvDJxXw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/data-transformer"},"_npmVersion":"11.14.1","description":"Generic schema mapping execution for JSON/API data transformation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/schema-validator":"1.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","ts-jest":"^29.1.4","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/parser":"^7.13.0","@typescript-eslint/eslint-plugin":"^7.13.0"},"_npmOperationalInternal":{"tmp":"tmp/data-transformer_0.4.0_1779221285412_0.8226568863636088","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@bernierllc/data-transformer","version":"0.6.0","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/data-transformer@0.6.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":"c0b2eb82be8781584ebef730d7286acca76c051d","tarball":"https://registry.npmjs.org/@bernierllc/data-transformer/-/data-transformer-0.6.0.tgz","fileCount":31,"integrity":"sha512-0r7MMbWnAGD4kEjmqDnsJSUpHogmvVqHYsoX5zUMmj0Ng1sGNzm5SWeMrKwHEAHrE85CbksZqXh/0wOSvG8tzQ==","signatures":[{"sig":"MEUCIDL+AJiPDaKVgdcElIMEwktBdWs3bT4vhxepYN5iFx+EAiEA85b4ZiEFBCnExrVjUEQql6lJlRrlgCEE11TTX3AXluc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51860},"main":"dist/index.js","_from":"file:bernierllc-data-transformer-0.6.0.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src/**/*.ts --fix","test:run":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bd35c57c-c8d1-4409-a3c7-085932a567f0"}},"_resolved":"/home/runner/work/tools/tools/packages/core/data-transformer/bernierllc-data-transformer-0.6.0.tgz","_integrity":"sha512-0r7MMbWnAGD4kEjmqDnsJSUpHogmvVqHYsoX5zUMmj0Ng1sGNzm5SWeMrKwHEAHrE85CbksZqXh/0wOSvG8tzQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/data-transformer"},"_npmVersion":"11.14.1","description":"Generic schema mapping execution for JSON/API data transformation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/schema-validator":"1.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","ts-jest":"^29.1.4","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/parser":"^7.13.0","@typescript-eslint/eslint-plugin":"^7.13.0"},"_npmOperationalInternal":{"tmp":"tmp/data-transformer_0.6.0_1779241094976_0.07353356002454614","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@bernierllc/data-transformer","version":"0.7.0","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/data-transformer@0.7.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":"6982b43c6bea74f31fad4425a9bf4c983d72a42b","tarball":"https://registry.npmjs.org/@bernierllc/data-transformer/-/data-transformer-0.7.0.tgz","fileCount":31,"integrity":"sha512-3FFuuHldQw0HevBEJD1R9zMWWGBrfxO4ZLUUDie7CWXREs+0VRDbfHQ9ZcFwqGEWDLY9XKo28qs3rHvsK6YtOg==","signatures":[{"sig":"MEUCIF+G82zTIBkBZke5CJFBGy+/b/l02jQNQsHiSX/PEwRfAiEA3za91/wBFv61ZqNcgTCNkS4z7qHg9Zp1HuyZLO02HH0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51860},"main":"dist/index.js","_from":"file:bernierllc-data-transformer-0.7.0.tgz","types":"dist/index.d.ts","scripts":{"lint":"eslint src/**/*.ts","test":"jest","build":"tsc","clean":"rm -rf dist","lint:fix":"eslint src/**/*.ts --fix","test:run":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bd35c57c-c8d1-4409-a3c7-085932a567f0"}},"_resolved":"/home/runner/work/tools/tools/packages/core/data-transformer/bernierllc-data-transformer-0.7.0.tgz","_integrity":"sha512-3FFuuHldQw0HevBEJD1R9zMWWGBrfxO4ZLUUDie7CWXREs+0VRDbfHQ9ZcFwqGEWDLY9XKo28qs3rHvsK6YtOg==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/data-transformer"},"_npmVersion":"11.14.1","description":"Generic schema mapping execution for JSON/API data transformation","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@bernierllc/schema-validator":"1.6.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","ts-jest":"^29.1.4","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/parser":"^7.13.0","@typescript-eslint/eslint-plugin":"^7.13.0"},"_npmOperationalInternal":{"tmp":"tmp/data-transformer_0.7.0_1779249837913_0.7894177478677109","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@bernierllc/data-transformer","version":"0.8.0","description":"Generic schema mapping execution for JSON/API data transformation","main":"dist/index.js","types":"dist/index.d.ts","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","dependencies":{"@bernierllc/schema-validator":"3.0.0"},"devDependencies":{"@types/jest":"^29.5.12","@types/node":"^20.14.2","@typescript-eslint/eslint-plugin":"^7.13.0","@typescript-eslint/parser":"^7.13.0","eslint":"^8.57.0","jest":"^29.7.0","ts-jest":"^29.1.4","typescript":"^5.4.5"},"repository":{"type":"git","url":"git+https://github.com/bernierllc/tools.git","directory":"packages/core/data-transformer"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"scripts":{"build":"tsc","test":"jest","test:run":"jest","test:coverage":"jest --coverage","test:watch":"jest --watch","lint":"eslint src/**/*.ts","lint:fix":"eslint src/**/*.ts --fix","clean":"rm -rf dist"},"_id":"@bernierllc/data-transformer@0.8.0","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"homepage":"https://github.com/bernierllc/tools#readme","_integrity":"sha512-89CxzKtEC50gQXqBLnBYATVt/LypQhNfKwIUd2PxBOyEcuIlaRguip9el7fmP2m3gjicPHKobbXdhhgx1L9GXA==","_resolved":"/home/runner/work/tools/tools/packages/core/data-transformer/bernierllc-data-transformer-0.8.0.tgz","_from":"file:bernierllc-data-transformer-0.8.0.tgz","_nodeVersion":"20.20.2","_npmVersion":"11.14.1","dist":{"integrity":"sha512-89CxzKtEC50gQXqBLnBYATVt/LypQhNfKwIUd2PxBOyEcuIlaRguip9el7fmP2m3gjicPHKobbXdhhgx1L9GXA==","shasum":"a5e0dc4cd2d8db3fd544a53a1b7448ca01a8b5a6","tarball":"https://registry.npmjs.org/@bernierllc/data-transformer/-/data-transformer-0.8.0.tgz","fileCount":31,"unpackedSize":51860,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCS5L9Rsx1ipxUQVVpa2PyoGDqmkRI8GoJ2xPD4sKsCYAIhAKJcfgLEF1Gc8WSQZGT3jMTK19lKB5acdOVjK085K7BM"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bd35c57c-c8d1-4409-a3c7-085932a567f0"}},"directories":{},"maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/data-transformer_0.8.0_1779307148456_0.39657464390771113"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-18T19:50:44.830Z","modified":"2026-05-20T19:59:08.774Z","0.1.0":"2025-12-18T19:50:45.131Z","0.3.0":"2026-01-05T19:46:50.346Z","0.3.1":"2026-03-09T17:42:55.637Z","0.3.2":"2026-03-10T17:18:59.763Z","0.4.0":"2026-05-19T20:08:05.558Z","0.6.0":"2026-05-20T01:38:15.205Z","0.7.0":"2026-05-20T04:03:58.062Z","0.8.0":"2026-05-20T19:59:08.628Z"},"bugs":{"url":"https://github.com/bernierllc/tools/issues"},"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","homepage":"https://github.com/bernierllc/tools#readme","keywords":["data-transformation","schema-mapping","json","api","type-conversion","field-normalization","bernierllc"],"repository":{"type":"git","url":"git+https://github.com/bernierllc/tools.git","directory":"packages/core/data-transformer"},"description":"Generic schema mapping execution for JSON/API data transformation","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"readme":"# @bernierllc/data-transformer\n\nGeneric schema mapping execution for JSON/API data transformation.\n\n## Features\n\n- 🔄 **Transform data using schema mappings** - Define source-to-target field mappings with type conversion\n- 🎯 **Type conversion** - Convert between text, number, date, and boolean types\n- 📝 **Field name normalization** - Support for camelCase, snake_case, kebab-case, and PascalCase\n- ✅ **Mapping validation** - Validate mappings before transformation\n- 🐛 **Error reporting** - Detailed error and warning messages\n- 📦 **Supports arrays** - Transform single objects or arrays of objects\n\n## Installation\n\n```bash\nnpm install @bernierllc/data-transformer\n```\n\n## Usage\n\n### Basic Transformation\n\n```typescript\nimport { DataTransformer, SchemaMapping } from '@bernierllc/data-transformer';\n\nconst transformer = new DataTransformer();\n\nconst mapping: SchemaMapping[] = [\n  { sourceField: 'PROJECT_ID', targetField: 'externalId', dataType: 'text' },\n  { sourceField: 'TOWN', targetField: 'address', dataType: 'text' },\n  { sourceField: 'AD_DATE', targetField: 'permitDate', dataType: 'date' },\n  { sourceField: 'TOTAL_COST', targetField: 'cost', dataType: 'number' }\n];\n\nconst data = {\n  PROJECT_ID: '608923',\n  TOWN: 'BOSTON',\n  AD_DATE: '2023-05-15',\n  TOTAL_COST: 15000000\n};\n\nconst result = transformer.transform(data, mapping);\n\nconsole.log(result.data);\n// {\n//   externalId: '608923',\n//   address: 'BOSTON',\n//   permitDate: '2023-05-15T00:00:00.000Z',\n//   cost: 15000000\n// }\n```\n\n### Transformation Rules\n\nApply advanced transformation rules:\n\n```typescript\nconst mapping: SchemaMapping[] = [\n  {\n    sourceField: 'name',\n    targetField: 'fullName',\n    dataType: 'text',\n    transformation: {\n      trim: true,\n      defaultValue: 'Unknown'\n    }\n  },\n  {\n    sourceField: 'cost',\n    targetField: 'amount',\n    dataType: 'number',\n    transformation: {\n      parseAs: 'int' // or 'float'\n    }\n  },\n  {\n    sourceField: 'date',\n    targetField: 'createdAt',\n    dataType: 'date',\n    transformation: {\n      format: 'YYYY-MM-DD' // or 'ISO8601', 'MM/DD/YYYY'\n    }\n  }\n];\n```\n\n### Array Transformation\n\nTransform arrays of objects:\n\n```typescript\nconst data = [\n  { name: 'John', age: '30' },\n  { name: 'Jane', age: '25' }\n];\n\nconst mapping: SchemaMapping[] = [\n  { sourceField: 'name', targetField: 'fullName', dataType: 'text' },\n  { sourceField: 'age', targetField: 'userAge', dataType: 'number' }\n];\n\nconst result = transformer.transform(data, mapping);\n\nconsole.log(result.data);\n// [\n//   { fullName: 'John', userAge: 30 },\n//   { fullName: 'Jane', userAge: 25 }\n// ]\n```\n\n### Error Handling\n\n```typescript\nconst result = transformer.transform(data, mapping);\n\nif (result.errors.length > 0) {\n  console.error('Transformation errors:', result.errors);\n  // [{ field: 'userAge', message: 'Cannot convert \"abc\" to number', value: 'abc' }]\n}\n\nif (result.warnings.length > 0) {\n  console.warn('Transformation warnings:', result.warnings);\n  // [{ field: 'address', message: 'Source field \"TOWN\" not found in data', value: undefined }]\n}\n```\n\n### Mapping Validation\n\nValidate mappings before transformation:\n\n```typescript\nconst validation = transformer.validateMapping(mapping);\n\nif (!validation.valid) {\n  console.error('Invalid mapping:', validation.errors);\n}\n\nif (validation.warnings.length > 0) {\n  console.warn('Mapping warnings:', validation.warnings);\n}\n```\n\n### Field Name Normalization\n\n```typescript\n// Convert field names to different cases\nconst camelCase = transformer.normalizeFieldName('PROJECT_ID', 'camel');\n// 'projectId'\n\nconst snakeCase = transformer.normalizeFieldName('projectId', 'snake');\n// 'project_id'\n\nconst kebabCase = transformer.normalizeFieldName('projectId', 'kebab');\n// 'project-id'\n\nconst pascalCase = transformer.normalizeFieldName('project_id', 'pascal');\n// 'ProjectId'\n```\n\n### Type Conversion\n\n```typescript\n// Convert individual values\nconst numberValue = transformer.applyTypeConversion('123', 'number');\n// 123\n\nconst dateValue = transformer.applyTypeConversion('2023-05-15', 'date', {\n  format: 'YYYY-MM-DD'\n});\n// '2023-05-15'\n\nconst booleanValue = transformer.applyTypeConversion('true', 'boolean');\n// true\n\nconst textValue = transformer.applyTypeConversion('  hello  ', 'text', {\n  trim: true\n});\n// 'hello'\n```\n\n## API\n\n### DataTransformer\n\n#### `transform(data, mapping): TransformResult`\n\nTransform data using schema mappings.\n\n- `data`: Single object or array of objects to transform\n- `mapping`: Array of schema mappings\n- Returns: `TransformResult` with `data`, `errors`, and `warnings`\n\n#### `applyTypeConversion(value, dataType, options?): any`\n\nApply type conversion to a value.\n\n- `value`: Value to convert\n- `dataType`: Target data type (`'text'`, `'number'`, `'date'`, `'boolean'`)\n- `options`: Optional transformation rules\n- Returns: Converted value\n\n#### `normalizeFieldName(name, targetCase): string`\n\nNormalize field name to target case.\n\n- `name`: Field name to normalize\n- `targetCase`: Target case format (`'camel'`, `'snake'`, `'kebab'`, `'pascal'`)\n- Returns: Normalized field name\n\n#### `validateMapping(mapping): ValidationResult`\n\nValidate mapping configuration.\n\n- `mapping`: Schema mappings to validate\n- Returns: `ValidationResult` with `valid`, `errors`, and `warnings`\n\n## Types\n\n### SchemaMapping\n\n```typescript\ninterface SchemaMapping {\n  sourceField: string;\n  targetField: string;\n  dataType: 'text' | 'number' | 'date' | 'boolean';\n  transformation?: TransformationRule;\n}\n```\n\n### TransformationRule\n\n```typescript\ninterface TransformationRule {\n  defaultValue?: any;\n  format?: string; // For dates: 'ISO8601', 'YYYY-MM-DD', 'MM/DD/YYYY'\n  trim?: boolean; // For text\n  parseAs?: 'int' | 'float'; // For numbers\n}\n```\n\n### TransformResult\n\n```typescript\ninterface TransformResult {\n  data: any;\n  errors: TransformError[];\n  warnings: TransformWarning[];\n}\n```\n\n### TransformError / TransformWarning\n\n```typescript\ninterface TransformError {\n  field: string;\n  message: string;\n  value: any;\n}\n```\n\n## Design Philosophy\n\nThis package follows MECE (Mutually Exclusive, Collectively Exhaustive) principles:\n\n- **Mutually Exclusive**: Handles generic JSON/object transformation, distinct from CSV-specific operations (`@bernierllc/csv-mapper`)\n- **Collectively Exhaustive**: Covers all generic data transformation needs\n\n### What This Package Does\n\n✅ Generic schema mapping execution for JSON/objects\n✅ Type conversion (text, number, date, boolean)\n✅ Field name normalization\n✅ Mapping validation\n✅ Error handling and reporting\n\n### What This Package Does NOT Do\n\n❌ CSV parsing/reading (use `@bernierllc/csv-mapper`)\n❌ Domain-specific business logic\n❌ Data access/storage\n❌ Generic validation (use `@bernierllc/schema-validator`)\n\n## License\n\nCopyright (c) 2025 Bernier LLC. See LICENSE file for details.\n","readmeFilename":"README.md"}