Source code for tablate.library.initializers.mappers.element.html.html_frame_mapper

from tablate.library.checkers.set_attr_resolver import set_attr_resolver
from tablate.library.formatters.html.style.attributes.color import background_color_attr
from tablate.type.defaults import max_lines_default, background_default, frame_divider_default, \
    html_px_multiplier_default, html_divider_weight_default, html_divider_color_default
from tablate.type.primitives import HtmlPxMultiplier
from tablate.type.type_style import HtmlFrameStyles, FrameStyles


[docs] def html_frame_mapper(html_frame_input: HtmlFrameStyles = None, html_frame_defaults: HtmlFrameStyles = None, base_frame_defaults: FrameStyles = None, html_px_multiplier: HtmlPxMultiplier = html_px_multiplier_default) -> HtmlFrameStyles: html_frame_divider_weight = set_attr_resolver( instance=html_frame_input, attr="html_frame_divider_weight", default=set_attr_resolver( instance=html_frame_defaults, attr="html_frame_divider_weight", default=html_divider_weight_default)) html_frame_divider_style = set_attr_resolver( instance=html_frame_input, attr="html_frame_divider_style", default=set_attr_resolver( instance=html_frame_defaults, attr="html_frame_divider_style", default=set_attr_resolver( instance=base_frame_defaults, attr="divider", default=frame_divider_default))) html_frame_divider_color = set_attr_resolver( instance=html_frame_input, attr="html_frame_divider_color", default=set_attr_resolver( instance=html_frame_defaults, attr="html_frame_divider_color", default=html_divider_color_default)) html_max_lines = set_attr_resolver( instance=html_frame_input, attr="html_max_lines", default=set_attr_resolver( instance=html_frame_defaults, attr="html_max_lines", default=set_attr_resolver( instance=base_frame_defaults, attr="max_lines", default=max_lines_default))) html_multiline = set_attr_resolver( instance=html_frame_input, attr="html_multiline", default=set_attr_resolver( instance=html_frame_defaults, attr="html_multiline", default=set_attr_resolver( instance=base_frame_defaults, attr="multiline", default=max_lines_default))) html_background = set_attr_resolver( instance=html_frame_input, attr="html_background", default=set_attr_resolver( instance=html_frame_defaults, attr="html_background", default=background_color_attr(set_attr_resolver( instance=base_frame_defaults, attr="background", default=background_default)))) html_frame_return = HtmlFrameStyles(html_frame_divider_weight=html_frame_divider_weight, html_frame_divider_style=html_frame_divider_style, html_frame_divider_color=html_frame_divider_color, html_max_lines=html_max_lines, html_multiline=html_multiline, html_background=html_background, html_px_multiplier=html_px_multiplier) return html_frame_return