Implementation
Map<String, String> get directives => {
if (xData != null) 'x-data': xData!,
if (xInit != null) 'x-init': xInit!,
if (xShow != null) 'x-show': xShow!,
if (xText != null) 'x-text': xText!,
if (xHtml != null) 'x-html': xHtml!,
if (xModel != null) 'x-model': xModel!,
if (xModelable != null) 'x-modelable': xModelable!,
if (xFor != null) 'x-for': xFor!,
if (xTransition != null) 'x-transition': xTransition!,
if (xEffect != null) 'x-effect': xEffect!,
if (xIgnore == true) 'x-ignore': '',
if (xRef != null) 'x-ref': xRef!,
if (xCloak == true) 'x-cloak': '',
if (xTeleport != null) 'x-teleport': xTeleport!,
if (xIf == true) 'x-if': '',
if (xId != null) 'x-id': xId!,
...xBind.map((k, v) => MapEntry('x-bind:$k', v)),
...xOn.map((k, v) => MapEntry('x-on:$k', v)),
};