23 lines
502 B
JavaScript
23 lines
502 B
JavaScript
/**
|
|
* @typedef {import('../types.js').Options} Options
|
|
* @typedef {import('../types.js').State} State
|
|
*/
|
|
|
|
/**
|
|
* @param {State} state
|
|
* @returns {Exclude<Options['rule'], null | undefined>}
|
|
*/
|
|
export function checkRule(state) {
|
|
const marker = state.options.rule || '*'
|
|
|
|
if (marker !== '*' && marker !== '-' && marker !== '_') {
|
|
throw new Error(
|
|
'Cannot serialize rules with `' +
|
|
marker +
|
|
'` for `options.rule`, expected `*`, `-`, or `_`'
|
|
)
|
|
}
|
|
|
|
return marker
|
|
}
|