pub struct Config {Show 15 fields
pub ref: bool,
pub title_prop: bool,
pub desc_prop: bool,
pub expand_props: ExpandProps,
pub dimensions: bool,
pub icon: Option<Icon>,
pub native: bool,
pub svg_props: Vec<SvgProp>,
pub typescript: bool,
pub memo: bool,
pub replace_attr_values: Option<HashMap<String, String>>,
pub jsx_runtime: JSXRuntime,
pub jsx_runtime_import: Option<JSXRuntimeImport>,
pub named_export: String,
pub export_type: ExportType,
}
Expand description
The options used to transform the SVG.
Fields§
§ref: bool
Setting this to true
will forward ref to the root SVG tag.
title_prop: bool
Add title tag via title property. If title_prop is set to true and no title is provided at render time, this will fallback to an existing title element in the svg if exists.
desc_prop: bool
Add desc tag via desc property. If desc_prop is set to true and no description is provided at render time, this will fallback to an existing desc element in the svg if exists.
expand_props: ExpandProps
All properties given to component will be forwarded on SVG tag. Possible values: “start”, “end” or false.
dimensions: bool
Keep width
and height
attributes from the root SVG tag.
Removal is guaranteed if dimensions: false
, unlike the remove_dimensions: true
SVGO plugin option which also generates a viewBox
from the dimensions if no viewBox
is present.
icon: Option<Icon>
Replace SVG width
and height
by a custom value.
If value is omitted, it uses 1em
in order to make SVG size inherits from text size.
native: bool
Modify all SVG nodes with uppercase and use a specific template with react-native-svg
imports.
All unsupported nodes will be removed.
svg_props: Vec<SvgProp>
Add props to the root SVG tag.
typescript: bool
Generates .tsx
files with TypeScript typings.
memo: bool
Setting this to true
will wrap the exported component in React.memo
.
replace_attr_values: Option<HashMap<String, String>>
Replace an attribute value by an other. The main usage of this option is to change an icon color to “currentColor” in order to inherit from text color.
jsx_runtime: JSXRuntime
Specify a JSX runtime to use.
- “classic”: adds
import * as React from 'react'
on the top of file - “automatic”: do not add anything
- “classic-preact”: adds
import { h } from 'preact'
on the top of file
jsx_runtime_import: Option<JSXRuntimeImport>
Specify a custom JSX runtime source to use. Allows to customize the import added at the top of generated file.
named_export: String
The named export defaults to ReactComponent
, can be customized with the named_export
option.
export_type: ExportType
If you prefer named export in any case, you may set the export_type
option to named
.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more