2018-11-26 13:33:15 +11:00
|
|
|
|
using System.Collections.Generic;
|
2021-02-18 11:06:02 +01:00
|
|
|
|
using Umbraco.Cms.Core.Models;
|
2018-11-26 13:33:15 +11:00
|
|
|
|
|
2021-02-18 11:06:02 +01:00
|
|
|
|
namespace Umbraco.Cms.Core.PropertyEditors
|
2018-11-26 13:33:15 +11:00
|
|
|
|
{
|
|
|
|
|
|
/// <summary>
|
2018-12-05 17:34:34 +01:00
|
|
|
|
/// Represents a property index value factory.
|
2018-11-26 13:33:15 +11:00
|
|
|
|
/// </summary>
|
2018-12-05 12:57:23 +01:00
|
|
|
|
public interface IPropertyIndexValueFactory
|
2018-11-26 13:33:15 +11:00
|
|
|
|
{
|
2018-12-05 12:57:23 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Gets the index values for a property.
|
|
|
|
|
|
/// </summary>
|
2018-12-07 09:03:36 +01:00
|
|
|
|
/// <remarks>
|
|
|
|
|
|
/// <para>Returns key-value pairs, where keys are indexed field names. By default, that would be the property alias,
|
|
|
|
|
|
/// and there would be only one pair, but some implementations (see for instance the grid one) may return more than
|
|
|
|
|
|
/// one pair, with different indexed field names.</para>
|
|
|
|
|
|
/// <para>And then, values are an enumerable of objects, because each indexed field can in turn have multiple
|
|
|
|
|
|
/// values. By default, there would be only one object: the property value. But some implementations may return
|
|
|
|
|
|
/// more than one value for a given field.</para>
|
|
|
|
|
|
/// </remarks>
|
2022-02-18 14:32:51 +01:00
|
|
|
|
IEnumerable<KeyValuePair<string, IEnumerable<object?>>> GetIndexValues(IProperty property, string? culture, string? segment, bool published);
|
2018-11-26 13:33:15 +11:00
|
|
|
|
}
|
|
|
|
|
|
}
|