public function getPreJson()
{
$result = [];
$group = '';
$g = 0;
foreach ($this->stack as $item) {
switch ($item['style']) {
case 'group':
$name = 'group_' . $item['name'];
$group = $group == '' ? $name : $group . '.' . $name;
array_set($result, $group . '._time', $item['time']);
break;
case 'groupend':
$group = substr($group, 0, strrpos($group, '.'));
break;
default:
$keyName = $group == '' ? '' : $group . '.';
$name = $item['name'] ? $item['name'] : 'nn_' . ++$g;
$keyName .= str_slug($item['style'] . '_' . $name, '_');
if (isset($item['value'])) {
array_set($result, $keyName, $item['value']);
}
break;
}
}
return $result;
}