mirror of
https://github.com/svg/svgo.git
synced 2025-07-29 20:21:14 +03:00
Refactor prefixIds (#1561)
Ref https://github.com/svg/svgo/issues/1499 - migrated to visitor plugin api - covered with tsdoc - made the plugin idempotent as requested a few times Now even manually running svgo a few times will not duplicate prefix in ids and classes - run each plugin test twice to see which plugin need to run many times ideally idempotent plugins will allow to get rid of multipass option in v3
This commit is contained in:
11
lib/types.ts
11
lib/types.ts
@ -71,7 +71,16 @@ export type Visitor = {
|
||||
root?: VisitorRoot;
|
||||
};
|
||||
|
||||
export type Plugin<Params> = (root: XastRoot, params: Params) => null | Visitor;
|
||||
export type PluginInfo = {
|
||||
path?: string;
|
||||
multipassCount: number;
|
||||
};
|
||||
|
||||
export type Plugin<Params> = (
|
||||
root: XastRoot,
|
||||
params: Params,
|
||||
info: PluginInfo
|
||||
) => null | Visitor;
|
||||
|
||||
export type Specificity = [number, number, number, number];
|
||||
|
||||
|
Reference in New Issue
Block a user