array('padding' => 5) ); /** * @var mixed[] */ protected static $defineBlocks = array( 'trigger' => array(), 'target' => array() ); protected function build() { $trigger = $this->block('trigger')[0]->children()[0]; $target = $this->block('target')[0]; if(!($target instanceof \zin\zui)) $target = $target->children()[0]; $trigger->setProp('data-zin-id', $trigger->gid); $trigger->setProp('data-target', "[data-zin-id='{$target->gid}']"); $target->setProp('data-zin-id', $target->gid); $props = array_merge($this->props->pick(array('placement', 'strategy', 'flip', 'shift', 'arrow', 'offset')), array('_to' => "[data-zin-id='{$trigger->gid}']")); return array( $trigger, $target, zui::popovers(set($props)) ); } }