@enxtur-packages/messenger-bot-core
v1.1.15
Published
A TypeScript library providing io-ts codec utilities for building type-safe API integrations. The package includes:
Readme
messenger-bot-core
A TypeScript library providing io-ts codec utilities for building type-safe API integrations. The package includes:
- Common io-ts codecs for API request/response validation
- Type-safe request definition builders for params, query, body, and result
Example
const REQUEST_DEFINITION = request({
method: 'GET',
path: 'sample/:id', // it's for server
buildPath: (params) => { // It's used to build request path for client
return `/sample/sample/${params.id}`;
},
params: t.type({
id: NUMBER_FROM_STRING,
}),
result: t.type({
id: t.number,
name: t.string,
}),
});This request definition provides:
- Runtime validation for request parameters and response data
- Type safety through TypeScript for both client and server
- Automatic path parameter parsing and validation
- Consistent contract between client and server implementations
Prerequisites
- Node.js >= 20.17.0
- npm >= 9.6.5
Project Setup
npm installDevelopment
npm run devBuild
npm run buildLint
npm run lintFormat
npm run formatTest
npm run testTest Coverage
npm run test:cov