$data['value'] ], $data['attr'] ); if ( isset( $data['value']['type'] ) ) { // @todo This IF will be redundant when I improve `over` function $data = Obj::over( Obj::lensPath( [ 'value', 'type' ] ), 'strtoupper', $data ); } unset( $data['attr'] ); } return $data; } /** * @param string|array $query * * @return array [query, type, label] */ public static function parse( $query ) { if ( is_array( $query ) ) { return [ $query['value'], isset( $query['type'] ) ? $query['type'] : '', isset( $query['label'] ) ? $query['label'] : '', ]; } return [ $query, '', '' ]; } }