Allow unified search results to have attributes
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
This commit is contained in:
parent
fc57f60ece
commit
cc92d5a293
|
@ -82,6 +82,13 @@ class SearchResultEntry implements JsonSerializable {
|
||||||
*/
|
*/
|
||||||
protected $rounded;
|
protected $rounded;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string[]
|
||||||
|
* @psalm-var array<string, string>
|
||||||
|
* @since 20.0.0
|
||||||
|
*/
|
||||||
|
protected $attributes = [];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $thumbnailUrl a relative or absolute URL to the thumbnail or icon of the entry
|
* @param string $thumbnailUrl a relative or absolute URL to the thumbnail or icon of the entry
|
||||||
* @param string $title a main title of the entry
|
* @param string $title a main title of the entry
|
||||||
|
@ -106,6 +113,19 @@ class SearchResultEntry implements JsonSerializable {
|
||||||
$this->rounded = $rounded;
|
$this->rounded = $rounded;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add optional attributes to the result entry, e.g. an ID or some other
|
||||||
|
* context information that can be read by the client application
|
||||||
|
*
|
||||||
|
* @param string $key
|
||||||
|
* @param string $value
|
||||||
|
*
|
||||||
|
* @since 20.0.0
|
||||||
|
*/
|
||||||
|
public function addAttribute(string $key, string $value): void {
|
||||||
|
$this->attributes[$key] = $value;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array
|
* @return array
|
||||||
*
|
*
|
||||||
|
@ -119,6 +139,7 @@ class SearchResultEntry implements JsonSerializable {
|
||||||
'resourceUrl' => $this->resourceUrl,
|
'resourceUrl' => $this->resourceUrl,
|
||||||
'icon' => $this->icon,
|
'icon' => $this->icon,
|
||||||
'rounded' => $this->rounded,
|
'rounded' => $this->rounded,
|
||||||
|
'attributes' => $this->attributes,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue