2.4.1 • Published 2 years ago
@qiwi/semrel-plugin-creator v2.4.1
@qiwi/semrel-plugin-creator
Semrel plugin creator
Install
yarn add @qiwi/semrel-plugin-creator
Usage
import {createPlugin} from '@qiwi/semrel-plugin-creator'
const handler = async ({step, pluginConfig, context, name}) => {
if (step === 'prepare') {
pluginConfig.foo = 'bar'
}
if (step === 'publish') {
await doSomething()
}
}
const plugin = createPlugin({
handler,
name: 'plugin-name',
include: ['prepare', 'publish']
})
API
export type TPluginHandlerContext = {
pluginConfig: TPluginConfig
stepConfig: TPluginConfig
stepConfigs: TStepConfigs
context: TSemrelContext
step: TReleaseStep
}
export type TPluginFactoryOptionsNormalized = {
handler: TReleaseHandler
name?: string
include: TReleaseStep[]
exclude: TReleaseStep[]
require: TReleaseStep[]
}
export type TPluginFactoryOptions = Partial<TPluginFactoryOptionsNormalized>
export type TReleaseHandler = (context: TPluginHandlerContext) => Promise<any>
export type TPluginFactory = (
handler: TPluginFactoryOptions | TReleaseHandler,
) => TPlugin
2.4.1
2 years ago
2.4.0
2 years ago
2.3.3
2 years ago
2.3.2
2 years ago
2.3.1
2 years ago
2.3.0
2 years ago
2.2.5
2 years ago
2.2.6
2 years ago
2.2.4
2 years ago
2.2.1
2 years ago
2.2.0
2 years ago
2.2.3
2 years ago
2.2.2
2 years ago
2.1.0
3 years ago
2.0.0
3 years ago
1.7.8
3 years ago
1.7.7
3 years ago
1.7.6
3 years ago
1.7.5
3 years ago
1.7.4
3 years ago
1.7.3
3 years ago
1.7.2
3 years ago
1.7.1
3 years ago
1.7.0
3 years ago
1.6.4
3 years ago
1.6.3
3 years ago
1.6.2
3 years ago
1.6.1
3 years ago
1.6.0
3 years ago
1.5.1
3 years ago
1.5.0
3 years ago
1.4.0
3 years ago
1.3.1
3 years ago
1.3.0
3 years ago
1.2.0
3 years ago
1.1.1
3 years ago
1.0.2
3 years ago
1.1.0
3 years ago
1.0.1
3 years ago
1.0.0
3 years ago