generator property

UIComponentGenerator<UISVG> generator
final

Implementation

static final UIComponentGenerator<UISVG> generator =
    UIComponentGenerator<UISVG>(
        'ui-svg',
        'div',
        'ui-svg',
        '',
        (parent, attributes, contentHolder, contentNodes) => UISVG(
              parent,
              src: attributes['src']?.value,
              svgContent: contentHolder?.text,
              width: attributes['width']?.value ?? '20px',
              height: attributes['height']?.value ?? '20px',
              color: attributes['color']?.value,
              title: attributes['title']?.value,
            ),
        [
          UIComponentAttributeHandler<UISVG, String>('src',
              parser: parseString,
              getter: (c) => c.src,
              setter: (c, v) => c.src = v,
              appender: (c, v) => c.src = (c.src ?? '') + (v ?? ''),
              cleaner: (c) => c.src = null),
          UIComponentAttributeHandler<UISVG, String>('svg-content',
              parser: parseString,
              getter: (c) => c.svgContent,
              setter: (c, v) => c.svgContent = v,
              appender: (c, v) =>
                  c.svgContent = (c.svgContent ?? '') + (v ?? ''),
              cleaner: (c) => c.svgContent = null),
          UIComponentAttributeHandler<UISVG, String>('color',
              parser: parseString,
              getter: (c) => c.color,
              setter: (c, v) => c.color = v,
              appender: (c, v) => c.color = (c.color ?? '') + (v ?? ''),
              cleaner: (c) => c.color = null),
          UIComponentAttributeHandler<UISVG, String>('title',
              parser: parseString,
              getter: (c) => c.title,
              setter: (c, v) => c.title = v,
              appender: (c, v) => c.title = (c.title ?? '') + (v ?? ''),
              cleaner: (c) => c.title = null),
          UIComponentAttributeHandler<UISVG, String>('width',
              parser: parseString,
              getter: (c) => c.width,
              setter: (c, v) => c.width = v ?? '20px',
              appender: (c, v) => c.width = v ?? '20px',
              cleaner: (c) => c.width = '20px'),
          UIComponentAttributeHandler<UISVG, String>('height',
              parser: parseString,
              getter: (c) => c.height,
              setter: (c, v) => c.height = v ?? '20px',
              appender: (c, v) => c.height = v ?? '20px',
              cleaner: (c) => c.height = '20px'),
        ],
        hasChildrenElements: false,
        contentAsText: true);