{"_id":"@bernierllc/nevar-action-registry","_rev":"5-4703fba3261a8729c5958bb14d744e70","name":"@bernierllc/nevar-action-registry","dist-tags":{"latest":"0.5.0"},"versions":{"0.0.1":{"name":"@bernierllc/nevar-action-registry","version":"0.0.1","keywords":["oidc","trusted-publishing","setup"],"_id":"@bernierllc/nevar-action-registry@0.0.1","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"dist":{"shasum":"8abc630bedf698905d2e86ffc1cfd8eeda0614b0","tarball":"https://registry.npmjs.org/@bernierllc/nevar-action-registry/-/nevar-action-registry-0.0.1.tgz","fileCount":2,"integrity":"sha512-1yiS1TOMk2R230JaIRhQmESy957zeg0k7QjL5NE6k8TA8IqOu9p54CX94dUyyDW1/CH16DeIzwUHfzuyaoR2UQ==","signatures":[{"sig":"MEUCIQCZgqem3DME5SycfhfG2g4Jn0pbIF7gj46uRckBx2CpmgIgNjCA90oCzp52GXtWebtI19ZOpG54FCy6YGRPclX9j3I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2095},"_npmUser":{"name":"mkbernier","email":"mkbernier@gmail.com"},"_npmVersion":"11.11.0","description":"OIDC trusted publishing setup package for @bernierllc/nevar-action-registry","directories":{},"_nodeVersion":"25.8.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/nevar-action-registry_0.0.1_1774655653335_0.679755085403601","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@bernierllc/nevar-action-registry","version":"0.1.0","keywords":["nevar","rules-engine","action-registry","action-handler","config-validation"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/nevar-action-registry@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":"d29a2a2a97b7fe9f5f31a53c579f62a9609a6849","tarball":"https://registry.npmjs.org/@bernierllc/nevar-action-registry/-/nevar-action-registry-0.1.0.tgz","fileCount":7,"integrity":"sha512-plmz8/3IBSFcg37RoeDiDeLALLYskdDIzrOfTSmDfPPNsVmUNLFwD/Dz+wJCnVltua4vUHgOH1zFmxM+M/WDXQ==","signatures":[{"sig":"MEQCIFfdpE1h1huJjcs/3+fRvpR8L8VCoPvwEEUvXWth2WHvAiA7QFMEUvHACb2wysd8rgrmqPY3yTkS4nYDqW5yIKVI/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10321},"main":"dist/index.js","_from":"file:bernierllc-nevar-action-registry-0.1.0.tgz","types":"dist/index.d.ts","engines":{"node":">=16.0.0"},"scripts":{"lint":"eslint src __tests__ --ext .ts","test":"jest --watch","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f4143326-a7e4-4313-ba2a-9e52e616ae33"}},"_resolved":"/home/runner/work/tools/tools/packages/core/nevar-action-registry/bernierllc-nevar-action-registry-0.1.0.tgz","_integrity":"sha512-plmz8/3IBSFcg37RoeDiDeLALLYskdDIzrOfTSmDfPPNsVmUNLFwD/Dz+wJCnVltua4vUHgOH1zFmxM+M/WDXQ==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/nevar-action-registry"},"_npmVersion":"11.12.1","description":"Action handler registration and config validation for the Nevar rules engine","directories":{},"_nodeVersion":"20.20.1","dependencies":{"zod":"^3.22.0","@bernierllc/nevar-types":"0.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nevar-action-registry_0.1.0_1774897587965_0.03402512554815207","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@bernierllc/nevar-action-registry","version":"0.2.0","keywords":["nevar","rules-engine","action-registry","action-handler","config-validation"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/nevar-action-registry@0.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":"4952ca5f96e22b7571200b4d685bb049237d1247","tarball":"https://registry.npmjs.org/@bernierllc/nevar-action-registry/-/nevar-action-registry-0.2.0.tgz","fileCount":7,"integrity":"sha512-jrQPB43jhfr5wbf4JnQJKJ8vyCp7o64dffH2GhCxKUmRbQ85o0PynG6aisa2hdSEulQ+JgXWU1HaE4EyrCC2ug==","signatures":[{"sig":"MEUCIQD21d738Zl8DUXhBsJKLH25XnmyP/5xVzdXSL8kz3kw/AIgU4SPU/9wOMZshGZIWaKjhwzphO3CH69CntPjNES+GIc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10321},"main":"dist/index.js","_from":"file:bernierllc-nevar-action-registry-0.2.0.tgz","types":"dist/index.d.ts","engines":{"node":">=16.0.0"},"scripts":{"lint":"eslint src __tests__ --ext .ts","test":"jest --watch","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f4143326-a7e4-4313-ba2a-9e52e616ae33"}},"_resolved":"/home/runner/work/tools/tools/packages/core/nevar-action-registry/bernierllc-nevar-action-registry-0.2.0.tgz","_integrity":"sha512-jrQPB43jhfr5wbf4JnQJKJ8vyCp7o64dffH2GhCxKUmRbQ85o0PynG6aisa2hdSEulQ+JgXWU1HaE4EyrCC2ug==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/nevar-action-registry"},"_npmVersion":"11.14.1","description":"Action handler registration and config validation for the Nevar rules engine","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.22.0","@bernierllc/nevar-types":"0.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nevar-action-registry_0.2.0_1779133514350_0.9143610546283825","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bernierllc/nevar-action-registry","version":"0.4.0","keywords":["nevar","rules-engine","action-registry","action-handler","config-validation"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","_id":"@bernierllc/nevar-action-registry@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":"42a853a0b035098a8d79e8a8afc172305a47820c","tarball":"https://registry.npmjs.org/@bernierllc/nevar-action-registry/-/nevar-action-registry-0.4.0.tgz","fileCount":9,"integrity":"sha512-NXYcTBjgWYnycptfBkXDWCsAu/iw8iG7C7XBNk3yDyS0mQU6WupisUHRjm6FmmqqiICS12SPL5IstV+t8XZ1rw==","signatures":[{"sig":"MEQCIED3dF0L0cK4rVtjA3E0BMC59BrhBFLrbcw0xT3hMwGOAiAmvnRRx1FV+1WofM+cezc1zos2et5cS5FNrnaxTBNTfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12163},"main":"dist/index.js","_from":"file:bernierllc-nevar-action-registry-0.4.0.tgz","types":"dist/index.d.ts","engines":{"node":">=16.0.0"},"scripts":{"lint":"eslint src __tests__ --ext .ts","test":"jest --watch","build":"tsc","clean":"rimraf dist","prebuild":"npm run clean","test:run":"jest","test:coverage":"jest --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f4143326-a7e4-4313-ba2a-9e52e616ae33"}},"_resolved":"/home/runner/work/tools/tools/packages/core/nevar-action-registry/bernierllc-nevar-action-registry-0.4.0.tgz","_integrity":"sha512-NXYcTBjgWYnycptfBkXDWCsAu/iw8iG7C7XBNk3yDyS0mQU6WupisUHRjm6FmmqqiICS12SPL5IstV+t8XZ1rw==","repository":{"url":"git+https://github.com/bernierllc/tools.git","type":"git","directory":"packages/core/nevar-action-registry"},"_npmVersion":"11.14.1","description":"Action handler registration and config validation for the Nevar rules engine","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.22.0","@bernierllc/nevar-types":"0.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.0","@types/jest":"^29.5.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nevar-action-registry_0.4.0_1779241245016_0.6204094086675318","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@bernierllc/nevar-action-registry","version":"0.5.0","description":"Action handler registration and config validation for the Nevar rules engine","main":"dist/index.js","types":"dist/index.d.ts","keywords":["nevar","rules-engine","action-registry","action-handler","config-validation"],"author":{"name":"Bernier LLC"},"license":"SEE LICENSE IN LICENSE","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"engines":{"node":">=16.0.0"},"repository":{"type":"git","url":"git+https://github.com/bernierllc/tools.git","directory":"packages/core/nevar-action-registry"},"dependencies":{"zod":"^3.22.0","@bernierllc/nevar-types":"0.4.0"},"devDependencies":{"@types/jest":"^29.5.0","@types/node":"^20.0.0","@typescript-eslint/eslint-plugin":"^6.0.0","@typescript-eslint/parser":"^6.0.0","eslint":"^8.0.0","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.0"},"scripts":{"build":"tsc","prebuild":"npm run clean","clean":"rimraf dist","test":"jest --watch","test:run":"jest","test:coverage":"jest --coverage","lint":"eslint src __tests__ --ext .ts"},"_id":"@bernierllc/nevar-action-registry@0.5.0","bugs":{"url":"https://github.com/bernierllc/tools/issues"},"homepage":"https://github.com/bernierllc/tools#readme","_integrity":"sha512-xInarDHuopaesPF/u+svRJsNuH/own0numUeRwWjMYwyG3kmQmDoPZNyelY/IhRTSdllQ9hXSwS1O9KKimmktw==","_resolved":"/home/runner/work/tools/tools/packages/core/nevar-action-registry/bernierllc-nevar-action-registry-0.5.0.tgz","_from":"file:bernierllc-nevar-action-registry-0.5.0.tgz","_nodeVersion":"20.20.2","_npmVersion":"11.14.1","dist":{"integrity":"sha512-xInarDHuopaesPF/u+svRJsNuH/own0numUeRwWjMYwyG3kmQmDoPZNyelY/IhRTSdllQ9hXSwS1O9KKimmktw==","shasum":"05dfad2d1eb2aeb5e81a3118c21417cef61a8016","tarball":"https://registry.npmjs.org/@bernierllc/nevar-action-registry/-/nevar-action-registry-0.5.0.tgz","fileCount":9,"unpackedSize":12163,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCva4LEGV2oiQJNFUZGioVEh0zLzX1etZd5b5kFFU69YAIhAITf7wpF4+Br8IL+oimAB+JCEHkgmsj7jJliGhMZUvvP"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f4143326-a7e4-4313-ba2a-9e52e616ae33"}},"directories":{},"maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nevar-action-registry_0.5.0_1779249993815_0.3203852489005592"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-27T23:54:13.265Z","modified":"2026-05-20T04:06:34.099Z","0.0.1":"2026-03-27T23:54:13.497Z","0.1.0":"2026-03-30T19:06:28.115Z","0.2.0":"2026-05-18T19:45:14.492Z","0.4.0":"2026-05-20T01:40:45.162Z","0.5.0":"2026-05-20T04:06:33.973Z"},"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":["nevar","rules-engine","action-registry","action-handler","config-validation"],"repository":{"type":"git","url":"git+https://github.com/bernierllc/tools.git","directory":"packages/core/nevar-action-registry"},"description":"Action handler registration and config validation for the Nevar rules engine","maintainers":[{"name":"alikhan410","email":"mczeyo@gmail.com"},{"name":"mkbernier","email":"mkbernier@gmail.com"}],"readme":"# @bernierllc/nevar-action-registry\n\nAction handler registration and config validation for the Nevar rules engine.\n\n## Overview\n\n`nevar-action-registry` manages action handler definitions: registration, lookup, and configuration validation. It does **not** execute actions — that responsibility belongs to `@bernierllc/nevar-action-executor`.\n\n## Installation\n\n```bash\nnpm install @bernierllc/nevar-action-registry\n```\n\n## Usage\n\n```typescript\nimport { ActionRegistry } from '@bernierllc/nevar-action-registry';\nimport { z } from 'zod';\n\nconst registry = new ActionRegistry();\n\n// Register an action handler\nregistry.register('send-email', {\n  label: 'Send Email',\n  category: 'notifications',\n  configSchema: z.object({\n    to: z.string().email(),\n    subject: z.string().min(1),\n    body: z.string(),\n  }),\n  canDefer: false,\n  handler: async (config, context, priorResults) => {\n    // Action execution logic (used by nevar-action-executor)\n    return { sent: true };\n  },\n});\n\n// Validate config before execution\nregistry.validateConfig('send-email', {\n  to: 'user@example.com',\n  subject: 'Hello',\n  body: 'World',\n});\n\n// List registered actions\nconst actions = registry.list();\n// [{ actionType: 'send-email', label: 'Send Email', category: 'notifications', canDefer: false }]\n\n// Filter by category\nconst notifications = registry.getByCategory('notifications');\n```\n\n## API\n\n### `register(actionType, definition)`\nRegister an action handler definition. Throws `NevarValidationError` on duplicate.\n\n### `get(actionType)`\nReturns the full `ActionHandlerDefinition` or `undefined`.\n\n### `has(actionType)`\nReturns `true` if the action type is registered.\n\n### `validateConfig(actionType, config)`\nValidates config against the action's Zod schema. Throws `NevarValidationError` with validation details on failure.\n\n### `list()`\nReturns all registered actions as serializable entries (without handler function).\n\n### `getByCategory(category)`\nFilters registered actions by category.\n\n## Integration Documentation\n\n### Logger Integration\nThis package does not integrate with `@bernierllc/logger`. As a core package, logger integration is optional and not included by default. Consumers should handle logging at the service layer.\n\n### NeverHub Integration\nThis package does not integrate with `@bernierllc/neverhub-adapter`. As a core package, NeverHub integration is not applicable. NeverHub registration should be handled by service-layer packages that compose this package.\n\n## License\n\nCopyright (c) 2025 Bernier LLC. All rights reserved.\n","readmeFilename":"README.md"}