{"_id":"@bernierllc/interactive-publisher","_rev":"9-c1e29b2a879900cd3cf10d382b40a177","name":"@bernierllc/interactive-publisher","dist-tags":{"latest":"0.7.0"},"versions":{"0.1.0":{"name":"@bernierllc/interactive-publisher","version":"0.1.0","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/interactive-publisher@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":"81a1443dc24edb697d718c715d7631e1c0ea0a7e","tarball":"https://registry.npmjs.org/@bernierllc/interactive-publisher/-/interactive-publisher-0.1.0.tgz","fileCount":15,"integrity":"sha512-uIzlTstBy+pSdUc2vrWL1JHBtnZjIHjhuSSWN1fwz7siSxYQg1lWSC5fkMBeSa6AXDyBTsTx5FESxYkxJV2xtQ==","signatures":[{"sig":"MEQCIBCMxXMqXh6ZOSYpTV+uW1KTK+oS9ZoBWVgY2bv1qviGAiAjppOPaDpNQl42xlc5t9aWO0vorjIww9Ze6rKsYwj7Lw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82139},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"a575862e7fb864dbb8915c1acf6a8e9d609ec3e2","private":false,"scripts":{"build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test-disabled":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/interactive-publisher"},"_npmVersion":"11.4.2","description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","directories":{},"_nodeVersion":"24.4.1","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"tmp":"tmp/interactive-publisher_0.1.0_1755555329322_0.16770521678257988","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@bernierllc/interactive-publisher","version":"0.3.0","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/interactive-publisher@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":"acbd2e0374bebabc9826f3601e882dea00809293","tarball":"https://registry.npmjs.org/@bernierllc/interactive-publisher/-/interactive-publisher-0.3.0.tgz","fileCount":15,"integrity":"sha512-/oR7VRk8S3mtF26dDEFtRTyYyRv2U9C6t4UZIzmS6PUTBCiPUGUQkR3cX0NPJzAe941Y+WE0cZFwKa5U5e8aGQ==","signatures":[{"sig":"MEUCIQDdw7k8MDmSgSPBPHF/ItXJyAmjbupKhYLjhBa5tAGzUwIgVv5znkC/ZfGWSOZP5dFU9LZbaMfuBGfpFqOLrFevy20=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82283},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"af7e74b3715d56d3a193e1bb6743b337c2b0df6d","private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:62ecd47c-174f-4880-a8e5-f3e8c95a01ab"}},"repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/interactive-publisher"},"_npmVersion":"lerna/9.0.3/node@v20.19.6+x64 (linux)","description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","directories":{},"_nodeVersion":"20.19.6","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"tmp":"tmp/interactive-publisher_0.3.0_1767642401907_0.7349302984418171","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@bernierllc/interactive-publisher","version":"0.3.1","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/interactive-publisher@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":"e3b4cae73981215707c497a8a587e7d78b764255","tarball":"https://registry.npmjs.org/@bernierllc/interactive-publisher/-/interactive-publisher-0.3.1.tgz","fileCount":15,"integrity":"sha512-7i/A4QTYrZjKP8wopxhzz9RuKyik8DTKbIo00PCMEHc+EDPwK7AwsPY490HHYl1aB73M9g1eFZDWxYtJObF9HA==","signatures":[{"sig":"MEUCIQC6OaGFjceY2Wiyd9JyBywrcE/fD4XhGpcxTGtpkJhhnAIgNfhMwJU0EAJfMtQXZ9NSIP9ijtR5xOAMxJOQH1IUdLg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82225},"main":"dist/index.js","_from":"file:bernierllc-interactive-publisher-0.3.1.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:62ecd47c-174f-4880-a8e5-f3e8c95a01ab"}},"_resolved":"/tmp/06d39495f38999f4e100f45f4f96bb6b/bernierllc-interactive-publisher-0.3.1.tgz","_integrity":"sha512-7i/A4QTYrZjKP8wopxhzz9RuKyik8DTKbIo00PCMEHc+EDPwK7AwsPY490HHYl1aB73M9g1eFZDWxYtJObF9HA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/interactive-publisher"},"_npmVersion":"11.11.0","description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","directories":{},"_nodeVersion":"20.20.0","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"tmp":"tmp/interactive-publisher_0.3.1_1773078226117_0.4070048999123175","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@bernierllc/interactive-publisher","version":"0.3.2","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/interactive-publisher@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":"06c37a557190ec5a757ca45bc6b978ddd18ee71b","tarball":"https://registry.npmjs.org/@bernierllc/interactive-publisher/-/interactive-publisher-0.3.2.tgz","fileCount":15,"integrity":"sha512-dq8XbWZyv8m4pXK9l8vb3Gq15++MFrxnyaaYVZXhD9t9gde4BF496NcXHMqmJpX47JcyKh/1JkG4vfB0YDoTqw==","signatures":[{"sig":"MEQCIDwJpvFW30lewlnpOskzWuQ6sbWQLtnlXn3wgooFbJFcAiAg/p/YSHtoo2FQCD4r9yG/dz5ikx7HZxp5of2D3hqarA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82225},"main":"dist/index.js","_from":"file:bernierllc-interactive-publisher-0.3.2.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:62ecd47c-174f-4880-a8e5-f3e8c95a01ab"}},"_resolved":"/home/runner/work/tools/tools/packages/service/interactive-publisher/bernierllc-interactive-publisher-0.3.2.tgz","_integrity":"sha512-dq8XbWZyv8m4pXK9l8vb3Gq15++MFrxnyaaYVZXhD9t9gde4BF496NcXHMqmJpX47JcyKh/1JkG4vfB0YDoTqw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/interactive-publisher"},"_npmVersion":"11.11.0","description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","directories":{},"_nodeVersion":"20.20.0","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.3.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"tmp":"tmp/interactive-publisher_0.3.2_1773163589607_0.06135610394456026","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bernierllc/interactive-publisher","version":"0.4.0","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/interactive-publisher@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":"4ffccd8d38cf887661b9f33fb693d7cb430e3748","tarball":"https://registry.npmjs.org/@bernierllc/interactive-publisher/-/interactive-publisher-0.4.0.tgz","fileCount":15,"integrity":"sha512-ywXFhEkmWHbxXMJ1eLv6zlPH9gnY8rHufrC2qdmHeqzFbdJMxwh58+N4yoEjhNLQ40JAHkO4eANywlBzKGR/oA==","signatures":[{"sig":"MEYCIQDeSGiJ6ECZMg2ovcD0nTqWhIt8nvci/x9x9MGxllQ70wIhAMA5tfP+c7zwcTFIJ4NqjiyTw7rrirBwO+e6pUL/qPvA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82225},"main":"dist/index.js","_from":"file:bernierllc-interactive-publisher-0.4.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:62ecd47c-174f-4880-a8e5-f3e8c95a01ab"}},"_resolved":"/home/runner/work/tools/tools/packages/service/interactive-publisher/bernierllc-interactive-publisher-0.4.0.tgz","_integrity":"sha512-ywXFhEkmWHbxXMJ1eLv6zlPH9gnY8rHufrC2qdmHeqzFbdJMxwh58+N4yoEjhNLQ40JAHkO4eANywlBzKGR/oA==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/interactive-publisher"},"_npmVersion":"11.14.1","description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"tmp":"tmp/interactive-publisher_0.4.0_1779241735039_0.7571167775734247","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@bernierllc/interactive-publisher","version":"0.4.1","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/interactive-publisher@0.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":"239adc1ed7251816d38141644b156edbd6663f86","tarball":"https://registry.npmjs.org/@bernierllc/interactive-publisher/-/interactive-publisher-0.4.1.tgz","fileCount":15,"integrity":"sha512-+Su/nS+HyahB5ZDpzRm3x30mMQrC3C66kRlyNT1MdMdoD9M6ULXrN9Vlx4G33Y1hWB0f0YUPBM9sdkUNisGeGQ==","signatures":[{"sig":"MEQCID/cEKIvSlk9kqhcrImzmdcyciMLawt1TrHj+HgVBKXxAiAVx8eCJyhFo5Oij3+BWtuT7VQLm0YPlgzImTX9oMC9fA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82225},"main":"dist/index.js","_from":"file:bernierllc-interactive-publisher-0.4.1.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:62ecd47c-174f-4880-a8e5-f3e8c95a01ab"}},"_resolved":"/home/runner/work/tools/tools/packages/service/interactive-publisher/bernierllc-interactive-publisher-0.4.1.tgz","_integrity":"sha512-+Su/nS+HyahB5ZDpzRm3x30mMQrC3C66kRlyNT1MdMdoD9M6ULXrN9Vlx4G33Y1hWB0f0YUPBM9sdkUNisGeGQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/interactive-publisher"},"_npmVersion":"11.14.1","description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"tmp":"tmp/interactive-publisher_0.4.1_1779243495812_0.8886626502308614","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@bernierllc/interactive-publisher","version":"0.6.0","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","_id":"@bernierllc/interactive-publisher@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":"64e7fce9151dff2b222909e9522da4652200cf41","tarball":"https://registry.npmjs.org/@bernierllc/interactive-publisher/-/interactive-publisher-0.6.0.tgz","fileCount":19,"integrity":"sha512-vYxXezTR73VCbjfiqX48G4Wcq6pPON76YYACFPRBfM9Hr5oIksUe6X+jEubU4T9yMxJo01Th4pbUYq8cTEOuQQ==","signatures":[{"sig":"MEUCIQCPAPjOEbbuO6NChwRdbPuy6JZiI4Dy/FydCH0iwE//XgIgSBUmNSNOXzWp565WzVcHKsSYrSvObcHbXJrgJNTDYw0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85535},"main":"dist/index.js","_from":"file:bernierllc-interactive-publisher-0.6.0.tgz","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"private":false,"scripts":{"test":"jest","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:62ecd47c-174f-4880-a8e5-f3e8c95a01ab"}},"_resolved":"/home/runner/work/tools/tools/packages/service/interactive-publisher/bernierllc-interactive-publisher-0.6.0.tgz","_integrity":"sha512-vYxXezTR73VCbjfiqX48G4Wcq6pPON76YYACFPRBfM9Hr5oIksUe6X+jEubU4T9yMxJo01Th4pbUYq8cTEOuQQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/service/interactive-publisher"},"_npmVersion":"11.14.1","description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","directories":{},"_nodeVersion":"20.20.2","dependencies":{"chalk":"^5.4.1","execa":"^9.6.0","commander":"^14.0.0","@bernierllc/package-analyzer":"0.5.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^20.11.19"},"_npmOperationalInternal":{"tmp":"tmp/interactive-publisher_0.6.0_1779246039128_0.19767427845862118","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@bernierllc/interactive-publisher","version":"0.7.0","description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","main":"dist/index.js","types":"dist/index.d.ts","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"author":{"name":"Bernier LLC"},"license":"Bernier LLC","private":false,"repository":{"type":"git","url":"git+https://github.com/bernierllc/tools.git","directory":"packages/service/interactive-publisher"},"dependencies":{"chalk":"^5.4.1","commander":"^14.0.0","execa":"^9.6.0","@bernierllc/package-analyzer":"0.6.0"},"devDependencies":{"@types/jest":"^29.5.12","@types/node":"^20.11.19","jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3"},"engines":{"node":">=18.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"scripts":{"build":"tsc","test":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage","clean":"rm -rf dist","prebuild":"npm run clean"},"_id":"@bernierllc/interactive-publisher@0.7.0","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"homepage":"https://github.com/bernierllc/tools#readme","_integrity":"sha512-m79C+T5Aw1mEn4cicvTNXPlubPoiDix1ZnwH1wOCI3Z8IJf9zWldb/WUdEal5IQ2rmOrTBvctG3IFyozeQQREQ==","_resolved":"/home/runner/work/tools/tools/packages/service/interactive-publisher/bernierllc-interactive-publisher-0.7.0.tgz","_from":"file:bernierllc-interactive-publisher-0.7.0.tgz","_nodeVersion":"20.20.2","_npmVersion":"11.14.1","dist":{"integrity":"sha512-m79C+T5Aw1mEn4cicvTNXPlubPoiDix1ZnwH1wOCI3Z8IJf9zWldb/WUdEal5IQ2rmOrTBvctG3IFyozeQQREQ==","shasum":"c1a87ca65b2047d954cdde68159452cc3acdcc3c","tarball":"https://registry.npmjs.org/@bernierllc/interactive-publisher/-/interactive-publisher-0.7.0.tgz","fileCount":19,"unpackedSize":85535,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC/bX5lKo2OSKFlGj5gnaQFjAiYkU58qQPdWgV6NkNFIwIgLVDaDpBRhJggaFItSh1ltzxAuiiswPmY7lsN1D1yAOs="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:62ecd47c-174f-4880-a8e5-f3e8c95a01ab"}},"directories":{},"maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/interactive-publisher_0.7.0_1779250482289_0.3458963135972666"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-18T22:15:29.207Z","modified":"2026-05-20T04:14:42.600Z","0.1.0":"2025-08-18T22:15:29.550Z","0.3.0":"2026-01-05T19:46:42.054Z","0.3.1":"2026-03-09T17:43:46.272Z","0.3.2":"2026-03-10T17:26:29.768Z","0.4.0":"2026-05-20T01:48:55.220Z","0.4.1":"2026-05-20T02:18:15.977Z","0.6.0":"2026-05-20T03:00:39.320Z","0.7.0":"2026-05-20T04:14:42.440Z"},"bugs":{"url":"https://github.com/bernierllc/tools/issues"},"author":{"name":"Bernier LLC"},"license":"Bernier LLC","homepage":"https://github.com/bernierllc/tools#readme","keywords":["interactive","publisher","publishing","cli","user-interface","automation","monorepo"],"repository":{"type":"git","url":"git+https://github.com/bernierllc/tools.git","directory":"packages/service/interactive-publisher"},"description":"Interactive publishing interface with enhanced UX and automation for monorepo packages","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"readme":"# @bernierllc/interactive-publisher\n\nAn interactive publishing interface with enhanced UX and automation for monorepo packages. This service provides a rich, user-friendly interface for publishing workflows using the publish-orchestrator and package-analyzer core packages.\n\n## Features\n\n- **Interactive Session Management**: Start, manage, and persist interactive publishing sessions\n- **Smart Package Selection**: Intelligent package categorization and selection with smart defaults\n- **Enhanced User Interface**: Multiple display formats (table, list, compact, detailed) with colorized output\n- **Quick Actions**: Predefined actions for common publishing tasks\n- **Search and Filter**: Advanced package search with multiple criteria\n- **Progress Tracking**: Real-time progress indicators with spinners\n- **Error Recovery**: Graceful error handling with retry options\n- **Session Persistence**: Save and restore session state across sessions\n- **Command History**: Track and manage command history\n- **Multiple Interaction Modes**: Full, quick, expert, and guided modes\n\n## Installation\n\n```bash\nnpm install @bernierllc/interactive-publisher\n```\n\n## Usage\n\n### Basic Usage\n\n```typescript\nimport { InteractivePublisher } from '@bernierllc/interactive-publisher';\n\nconst publisher = new InteractivePublisher({\n  workspacePath: '/path/to/workspace',\n  interactionMode: 'full',\n  displayFormat: 'table',\n  enableSmartDefaults: true\n});\n\n// Start interactive session\nawait publisher.startSession();\n\n// Select packages\nconst packages = await publisher.selectPackages();\n\n// Prompt user for confirmation\nconst result = await publisher.promptUser(packages);\n\nif (result.confirmed) {\n  // Execute publishing workflow\n  await publisher.publishOrchestrator.executeWorkflow(result.workflow);\n}\n\n// End session\nawait publisher.endSession();\n```\n\n### Interactive Session\n\n```typescript\nconst publisher = new InteractivePublisher();\n\n// Start session\nawait publisher.startSession();\n\n// Handle user commands\nawait publisher.handleUserInput('list');           // List all packages\nawait publisher.handleUserInput('search core');    // Search for core packages\nawait publisher.handleUserInput('select pkg1 pkg2'); // Select specific packages\nawait publisher.handleUserInput('publish');        // Start publishing workflow\nawait publisher.handleUserInput('quick publish-all'); // Execute quick action\n\n// End session\nawait publisher.endSession();\n```\n\n### Package Selection\n\n```typescript\n// Select all packages\nconst allPackages = await publisher.selectPackages();\n\n// Select packages with criteria\nconst readyPackages = await publisher.selectPackages({\n  canPublish: true\n});\n\nconst modifiedPackages = await publisher.selectPackages({\n  hasChanges: true\n});\n\nconst corePackages = await publisher.selectPackages({\n  category: PackageCategory.CORE\n});\n\n// Search packages\nconst searchResults = await publisher.searchPackages('utils', {\n  category: PackageCategory.UTIL\n});\n```\n\n### Quick Actions\n\n```typescript\n// Add custom quick action\npublisher.addQuickAction({\n  name: 'publish-core',\n  description: 'Publish all core packages',\n  shortcut: 'pc',\n  category: 'publishing',\n  action: async () => {\n    const packages = await publisher.selectPackages({ category: PackageCategory.CORE });\n    const result = await publisher.promptUser(packages);\n    if (result.confirmed) {\n      await publisher.publishOrchestrator.executeWorkflow(result.workflow);\n    }\n  }\n});\n\n// Execute quick action\nawait publisher.executeQuickAction('publish-core');\n```\n\n### Session Management\n\n```typescript\n// Save session state\nawait publisher.saveSession();\n\n// Load session state\nawait publisher.loadSession();\n\n// Export session to file\nawait publisher.exportSession('/path/to/session.json');\n\n// Import session from file\nconst sessionState = await publisher.importSession('/path/to/session.json');\n\n// Clear command history\npublisher.clearHistory();\n\n// Get command history\nconst history = publisher.getHistory();\n```\n\n## Configuration\n\n### InteractivePublisherConfig\n\n```typescript\ninterface InteractivePublisherConfig {\n  workspacePath?: string;              // Workspace root directory\n  interactionMode?: InteractionMode;   // User interaction mode\n  displayFormat?: DisplayFormat;       // Package list display format\n  enableSmartDefaults?: boolean;       // Enable smart package selection\n  enableSearch?: boolean;              // Enable package search\n  enableCategories?: boolean;          // Enable package categorization\n  enableQuickActions?: boolean;        // Enable quick actions\n  enableProgressTracking?: boolean;    // Enable progress indicators\n  enableErrorRecovery?: boolean;       // Enable error recovery\n  timeoutMs?: number;                  // Operation timeout\n  maxRetries?: number;                 // Maximum retry attempts\n  retryDelayMs?: number;               // Retry delay\n}\n```\n\n### Interaction Modes\n\n- **FULL**: Complete interactive experience with all features\n- **QUICK**: Streamlined interface for fast operations\n- **EXPERT**: Advanced interface with detailed error information\n- **GUIDED**: Step-by-step guided workflow\n\n### Display Formats\n\n- **TABLE**: Tabular format with columns\n- **LIST**: Simple list format\n- **COMPACT**: Minimal format for many packages\n- **DETAILED**: Comprehensive format with all details\n\n## API Reference\n\n### InteractivePublisher\n\n#### Constructor\n\n```typescript\nnew InteractivePublisher(config?: InteractivePublisherConfig)\n```\n\n#### Methods\n\n- `startSession(config?: InteractivePublisherConfig): Promise<void>`\n- `endSession(): Promise<void>`\n- `selectPackages(criteria?: SearchCriteria): Promise<PackageSelection[]>`\n- `categorizePackages(packages: PackageInfo[]): Map<PackageCategory, PackageInfo[]>`\n- `searchPackages(query: string, criteria?: SearchCriteria): Promise<PackageInfo[]>`\n- `getSmartDefaults(): Promise<SmartDefaults>`\n- `showPackageList(packages: PackageDisplayInfo[], format?: DisplayFormat): void`\n- `promptUser(packages: PackageSelection[]): Promise<PromptResult>`\n- `handleUserInput(input: string): Promise<void>`\n- `showProgress(operation: string, progress: number): void`\n- `showError(error: Error, recoverable?: boolean): Promise<boolean>`\n- `showWarning(message: string): void`\n- `showSuccess(message: string): void`\n- `getSessionState(): SessionState`\n- `addQuickAction(action: QuickAction): void`\n- `removeQuickAction(name: string): void`\n- `executeQuickAction(name: string): Promise<void>`\n- `saveSession(): Promise<void>`\n- `loadSession(): Promise<SessionState>`\n- `clearHistory(): void`\n- `getHistory(): string[]`\n- `exportSession(path: string): Promise<void>`\n- `importSession(path: string): Promise<SessionState>`\n\n## Types\n\n### PackageCategory\n\n```typescript\nenum PackageCategory {\n  CORE = 'core',\n  SERVICE = 'service',\n  SUITE = 'suite',\n  UI = 'ui',\n  UTIL = 'util',\n  LEGACY = 'legacy'\n}\n```\n\n### InteractionMode\n\n```typescript\nenum InteractionMode {\n  FULL = 'full',\n  QUICK = 'quick',\n  EXPERT = 'expert',\n  GUIDED = 'guided'\n}\n```\n\n### DisplayFormat\n\n```typescript\nenum DisplayFormat {\n  TABLE = 'table',\n  LIST = 'list',\n  COMPACT = 'compact',\n  DETAILED = 'detailed'\n}\n```\n\n### PackageSelection\n\n```typescript\ninterface PackageSelection {\n  packageName: string;\n  packagePath: string;\n  category: PackageCategory;\n  selected: boolean;\n  reason?: string;\n  priority: number;\n}\n```\n\n### QuickAction\n\n```typescript\ninterface QuickAction {\n  name: string;\n  description: string;\n  action: () => Promise<void>;\n  shortcut?: string;\n  category?: string;\n  enabled?: boolean;\n}\n```\n\n### SessionState\n\n```typescript\ninterface SessionState {\n  selectedPackages: PackageSelection[];\n  workflowConfig: PublishWorkflowConfig;\n  smartDefaults: SmartDefaults;\n  searchCriteria: SearchCriteria;\n  quickActions: QuickAction[];\n  history: string[];\n  errors: Error[];\n  warnings: string[];\n}\n```\n\n## Interactive Commands\n\nThe interactive publisher supports the following commands:\n\n- `help`, `h` - Show help information\n- `list`, `ls` - List all packages\n- `search <query>`, `s <query>` - Search packages\n- `select <packages...>` - Select specific packages\n- `publish`, `p` - Start publishing workflow\n- `quick <action>`, `q <action>` - Execute quick action\n- `quit`, `exit` - Exit session\n\n## Quick Actions\n\nBuilt-in quick actions:\n\n- `publish-all` - Publish all ready packages\n- `publish-modified` - Publish modified packages\n- `analyze` - Analyze workspace\n\n## Examples\n\n### Basic Publishing Workflow\n\n```typescript\nimport { InteractivePublisher } from '@bernierllc/interactive-publisher';\n\nasync function publishWorkflow() {\n  const publisher = new InteractivePublisher();\n  \n  try {\n    await publisher.startSession();\n    \n    // Select packages ready for publishing\n    const packages = await publisher.selectPackages({ canPublish: true });\n    \n    if (packages.length === 0) {\n      console.log('No packages ready for publishing');\n      return;\n    }\n    \n    // Prompt user for confirmation\n    const result = await publisher.promptUser(packages);\n    \n    if (result.confirmed) {\n      publisher.showProgress('Publishing packages', 0);\n      \n      // Execute publishing workflow\n      await publisher.publishOrchestrator.executeWorkflow(result.workflow);\n      \n      publisher.showProgress('Publishing packages', 1);\n      publisher.showSuccess('Packages published successfully');\n    }\n    \n  } catch (error) {\n    await publisher.showError(error instanceof Error ? error : new Error('Unknown error'));\n  } finally {\n    await publisher.endSession();\n  }\n}\n```\n\n### Custom Quick Actions\n\n```typescript\n// Add custom quick actions\npublisher.addQuickAction({\n  name: 'publish-core',\n  description: 'Publish all core packages',\n  shortcut: 'pc',\n  category: 'publishing',\n  action: async () => {\n    const packages = await publisher.selectPackages({ category: PackageCategory.CORE });\n    const result = await publisher.promptUser(packages);\n    if (result.confirmed) {\n      await publisher.publishOrchestrator.executeWorkflow(result.workflow);\n    }\n  }\n});\n\npublisher.addQuickAction({\n  name: 'analyze-changes',\n  description: 'Analyze recent changes',\n  shortcut: 'ac',\n  category: 'analysis',\n  action: async () => {\n    const modified = await publisher.selectPackages({ hasChanges: true });\n    console.log(`Found ${modified.length} packages with changes`);\n  }\n});\n```\n\n### Session Persistence\n\n```typescript\n// Save session for later\nawait publisher.saveSession();\n\n// In another session, load previous state\nconst newPublisher = new InteractivePublisher({ workspacePath: '/path/to/workspace' });\nawait newPublisher.startSession(); // Automatically loads saved session\n\n// Export session for sharing\nawait publisher.exportSession('/path/to/session.json');\n\n// Import session from file\nconst sessionState = await publisher.importSession('/path/to/session.json');\n```\n\n## Integration with Core Packages\n\nThis service integrates with the following core packages:\n\n- `@bernierllc/package-analyzer`: For package analysis and status checking\n- `@bernierllc/publish-orchestrator`: For publishing workflow execution\n\n## Testing\n\n```bash\nnpm test\nnpm run test:watch\nnpm run test:coverage\n```\n\n## License\n\nThis package is licensed under the same terms as the parent project. ","readmeFilename":"README.md"}