Skip to content

Commit

Permalink
add generativeDirectAnswer support (#441)
Browse files Browse the repository at this point in the history
J=CLIP-1226
TEST=auto,manual

added unit and visual regression test, ran and saw tests passed
added GDA to test-site App and verified that the appropriate gda content shows up and the UI looks as expected
  • Loading branch information
anguyen-yext2 authored Jun 20, 2024
1 parent c175279 commit 3f83773
Show file tree
Hide file tree
Showing 39 changed files with 3,597 additions and 757 deletions.
Binary file modified .storybook/snapshots/__snapshots__/mapboxmap--custom-pin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified .storybook/snapshots/__snapshots__/mapboxmap--multiple-pins.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified .storybook/snapshots/__snapshots__/mapboxmap--primary.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2,342 changes: 2,007 additions & 335 deletions THIRD-PARTY-NOTICES

Large diffs are not rendered by default.

11 changes: 11 additions & 0 deletions docs/search-ui-react.citationprops.citation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [CitationProps](./search-ui-react.citationprops.md) &gt; [citation](./search-ui-react.citationprops.citation.md)

## CitationProps.citation property

**Signature:**

```typescript
citation: string;
```
11 changes: 11 additions & 0 deletions docs/search-ui-react.citationprops.cssclasses.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [CitationProps](./search-ui-react.citationprops.md) &gt; [cssClasses](./search-ui-react.citationprops.cssclasses.md)

## CitationProps.cssClasses property

**Signature:**

```typescript
cssClasses: GenerativeDirectAnswerCssClasses;
```
22 changes: 22 additions & 0 deletions docs/search-ui-react.citationprops.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [CitationProps](./search-ui-react.citationprops.md)

## CitationProps interface

Props for citation card.

**Signature:**

```typescript
interface CitationProps
```

## Properties

| Property | Modifiers | Type | Description |
| --- | --- | --- | --- |
| [citation](./search-ui-react.citationprops.citation.md) | | string | |
| [cssClasses](./search-ui-react.citationprops.cssclasses.md) | | [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) | |
| [searchResults](./search-ui-react.citationprops.searchresults.md) | | Result\[\] | |

11 changes: 11 additions & 0 deletions docs/search-ui-react.citationprops.searchresults.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [CitationProps](./search-ui-react.citationprops.md) &gt; [searchResults](./search-ui-react.citationprops.searchresults.md)

## CitationProps.searchResults property

**Signature:**

```typescript
searchResults: Result[];
```
24 changes: 24 additions & 0 deletions docs/search-ui-react.executegenerativedirectanswer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [executeGenerativeDirectAnswer](./search-ui-react.executegenerativedirectanswer.md)

## executeGenerativeDirectAnswer() function

Executes a generative direct answer and return the corresponding response.

**Signature:**

```typescript
declare function executeGenerativeDirectAnswer(searchActions: SearchActions): Promise<GenerativeDirectAnswerResponse | undefined>;
```

## Parameters

| Parameter | Type | Description |
| --- | --- | --- |
| searchActions | SearchActions | |

**Returns:**

Promise&lt;GenerativeDirectAnswerResponse \| undefined&gt;

26 changes: 26 additions & 0 deletions docs/search-ui-react.generativedirectanswer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswer](./search-ui-react.generativedirectanswer.md)

## GenerativeDirectAnswer() function

Displays the AI generated answer of a generative direct answer.

**Signature:**

```typescript
declare function GenerativeDirectAnswer({ customCssClasses, answerHeader, citationsHeader, CitationCard }: GenerativeDirectAnswerProps): JSX.Element | null;
```

## Parameters

| Parameter | Type | Description |
| --- | --- | --- |
| { customCssClasses, answerHeader, citationsHeader, CitationCard } | [GenerativeDirectAnswerProps](./search-ui-react.generativedirectanswerprops.md) | |

**Returns:**

JSX.Element \| null

A React element for the generative direct answer, or null if there is no generated answer

Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) &gt; [answerText](./search-ui-react.generativedirectanswercssclasses.answertext.md)

## GenerativeDirectAnswerCssClasses.answerText property

**Signature:**

```typescript
answerText?: string;
```
11 changes: 11 additions & 0 deletions docs/search-ui-react.generativedirectanswercssclasses.citation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) &gt; [citation](./search-ui-react.generativedirectanswercssclasses.citation.md)

## GenerativeDirectAnswerCssClasses.citation property

**Signature:**

```typescript
citation?: string;
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) &gt; [citationsContainer](./search-ui-react.generativedirectanswercssclasses.citationscontainer.md)

## GenerativeDirectAnswerCssClasses.citationsContainer property

**Signature:**

```typescript
citationsContainer?: string;
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) &gt; [citationSnippet](./search-ui-react.generativedirectanswercssclasses.citationsnippet.md)

## GenerativeDirectAnswerCssClasses.citationSnippet property

**Signature:**

```typescript
citationSnippet?: string;
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) &gt; [citationTitle](./search-ui-react.generativedirectanswercssclasses.citationtitle.md)

## GenerativeDirectAnswerCssClasses.citationTitle property

**Signature:**

```typescript
citationTitle?: string;
```
11 changes: 11 additions & 0 deletions docs/search-ui-react.generativedirectanswercssclasses.container.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) &gt; [container](./search-ui-react.generativedirectanswercssclasses.container.md)

## GenerativeDirectAnswerCssClasses.container property

**Signature:**

```typescript
container?: string;
```
11 changes: 11 additions & 0 deletions docs/search-ui-react.generativedirectanswercssclasses.divider.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) &gt; [divider](./search-ui-react.generativedirectanswercssclasses.divider.md)

## GenerativeDirectAnswerCssClasses.divider property

**Signature:**

```typescript
divider?: string;
```
11 changes: 11 additions & 0 deletions docs/search-ui-react.generativedirectanswercssclasses.header.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) &gt; [header](./search-ui-react.generativedirectanswercssclasses.header.md)

## GenerativeDirectAnswerCssClasses.header property

**Signature:**

```typescript
header?: string;
```
27 changes: 27 additions & 0 deletions docs/search-ui-react.generativedirectanswercssclasses.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md)

## GenerativeDirectAnswerCssClasses interface

The CSS class interface used for [GenerativeDirectAnswer()](./search-ui-react.generativedirectanswer.md)<!-- -->.

**Signature:**

```typescript
interface GenerativeDirectAnswerCssClasses
```

## Properties

| Property | Modifiers | Type | Description |
| --- | --- | --- | --- |
| [answerText?](./search-ui-react.generativedirectanswercssclasses.answertext.md) | | string | _(Optional)_ |
| [citation?](./search-ui-react.generativedirectanswercssclasses.citation.md) | | string | _(Optional)_ |
| [citationsContainer?](./search-ui-react.generativedirectanswercssclasses.citationscontainer.md) | | string | _(Optional)_ |
| [citationSnippet?](./search-ui-react.generativedirectanswercssclasses.citationsnippet.md) | | string | _(Optional)_ |
| [citationTitle?](./search-ui-react.generativedirectanswercssclasses.citationtitle.md) | | string | _(Optional)_ |
| [container?](./search-ui-react.generativedirectanswercssclasses.container.md) | | string | _(Optional)_ |
| [divider?](./search-ui-react.generativedirectanswercssclasses.divider.md) | | string | _(Optional)_ |
| [header?](./search-ui-react.generativedirectanswercssclasses.header.md) | | string | _(Optional)_ |

13 changes: 13 additions & 0 deletions docs/search-ui-react.generativedirectanswerprops.answerheader.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerProps](./search-ui-react.generativedirectanswerprops.md) &gt; [answerHeader](./search-ui-react.generativedirectanswerprops.answerheader.md)

## GenerativeDirectAnswerProps.answerHeader property

The header for the answer section of the generative direct answer.

**Signature:**

```typescript
answerHeader?: string | JSX.Element;
```
13 changes: 13 additions & 0 deletions docs/search-ui-react.generativedirectanswerprops.citationcard.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerProps](./search-ui-react.generativedirectanswerprops.md) &gt; [CitationCard](./search-ui-react.generativedirectanswerprops.citationcard.md)

## GenerativeDirectAnswerProps.CitationCard property

The component for citation card

**Signature:**

```typescript
CitationCard?: (props: CitationProps) => JSX.Element | null;
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerProps](./search-ui-react.generativedirectanswerprops.md) &gt; [citationsHeader](./search-ui-react.generativedirectanswerprops.citationsheader.md)

## GenerativeDirectAnswerProps.citationsHeader property

The header for the citations section of the generative direct answer.

**Signature:**

```typescript
citationsHeader?: string | JSX.Element;
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerProps](./search-ui-react.generativedirectanswerprops.md) &gt; [customCssClasses](./search-ui-react.generativedirectanswerprops.customcssclasses.md)

## GenerativeDirectAnswerProps.customCssClasses property

CSS classes for customizing the component styling.

**Signature:**

```typescript
customCssClasses?: GenerativeDirectAnswerCssClasses;
```
23 changes: 23 additions & 0 deletions docs/search-ui-react.generativedirectanswerprops.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@yext/search-ui-react](./search-ui-react.md) &gt; [GenerativeDirectAnswerProps](./search-ui-react.generativedirectanswerprops.md)

## GenerativeDirectAnswerProps interface

Props for [GenerativeDirectAnswer()](./search-ui-react.generativedirectanswer.md)<!-- -->.

**Signature:**

```typescript
interface GenerativeDirectAnswerProps
```

## Properties

| Property | Modifiers | Type | Description |
| --- | --- | --- | --- |
| [answerHeader?](./search-ui-react.generativedirectanswerprops.answerheader.md) | | string \| JSX.Element | _(Optional)_ The header for the answer section of the generative direct answer. |
| [CitationCard?](./search-ui-react.generativedirectanswerprops.citationcard.md) | | (props: [CitationProps](./search-ui-react.citationprops.md)<!-- -->) =&gt; JSX.Element \| null | _(Optional)_ The component for citation card |
| [citationsHeader?](./search-ui-react.generativedirectanswerprops.citationsheader.md) | | string \| JSX.Element | _(Optional)_ The header for the citations section of the generative direct answer. |
| [customCssClasses?](./search-ui-react.generativedirectanswerprops.customcssclasses.md) | | [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) | _(Optional)_ CSS classes for customizing the component styling. |

5 changes: 5 additions & 0 deletions docs/search-ui-react.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,12 @@
| [DirectAnswer({ customCssClasses, UnknownFieldTypeDisplay })](./search-ui-react.directanswer.md) | Renders Direct Answers provided by the Search API. |
| [DropdownItem(\_props)](./search-ui-react.dropdownitem.md) | A wrapper component for specifying a DropdownItemWithIndex. The index will be automatically provided by the Dropdown component instance. |
| [executeAutocomplete(searchActions)](./search-ui-react.executeautocomplete.md) | Executes a universal/vertical autocomplete search and return the corresponding response. |
| [executeGenerativeDirectAnswer(searchActions)](./search-ui-react.executegenerativedirectanswer.md) | Executes a generative direct answer and return the corresponding response. |
| [executeSearch(searchActions)](./search-ui-react.executesearch.md) | Executes a universal/vertical search. |
| [Facets(props)](./search-ui-react.facets.md) | A component that displays all facets applicable to the current vertical search. |
| [FilterDivider({ className })](./search-ui-react.filterdivider.md) | A divider component used to separate NumericalFacets, HierarchicalFacets, StandardFacets, and StaticFilters. |
| [FilterSearch({ searchFields, label, placeholder, searchOnSelect, onSelect, onDropdownInputChange, afterDropdownInputFocus, sectioned, customCssClasses })](./search-ui-react.filtersearch.md) | A component which allows a user to search for filters associated with specific entities and fields. |
| [GenerativeDirectAnswer({ customCssClasses, answerHeader, citationsHeader, CitationCard })](./search-ui-react.generativedirectanswer.md) | Displays the AI generated answer of a generative direct answer. |
| [Geolocation\_2({ geolocationOptions, radius, label, GeolocationIcon, handleClick, customCssClasses, })](./search-ui-react.geolocation_2.md) | A React Component which collects location information to create a location filter and perform a new search. |
| [getSearchIntents(searchActions)](./search-ui-react.getsearchintents.md) | Get search intents of the current query stored in headless using autocomplete request. |
| [getUserLocation(geolocationOptions)](./search-ui-react.getuserlocation.md) | Retrieves user's location using navigator.geolocation API. |
Expand Down Expand Up @@ -61,6 +63,7 @@
| [ApplyFiltersButtonProps](./search-ui-react.applyfiltersbuttonprops.md) | Props for [ApplyFiltersButton()](./search-ui-react.applyfiltersbutton.md) |
| [AutocompleteResultCssClasses](./search-ui-react.autocompleteresultcssclasses.md) | The CSS class interface for the Autocomplete Result. |
| [CardProps](./search-ui-react.cardprops.md) | The props provided to every [CardComponent](./search-ui-react.cardcomponent.md)<!-- -->. |
| [CitationProps](./search-ui-react.citationprops.md) | Props for citation card. |
| [Coordinate](./search-ui-react.coordinate.md) | Coordinate use to represent the result's location on a map. |
| [CtaData](./search-ui-react.ctadata.md) | The shape of a StandardCard CTA field's data. |
| [DirectAnswerCssClasses](./search-ui-react.directanswercssclasses.md) | The CSS class interface for [DirectAnswer()](./search-ui-react.directanswer.md)<!-- -->. |
Expand All @@ -72,6 +75,8 @@
| [FilterOptionConfig](./search-ui-react.filteroptionconfig.md) | The configuration data for a field value filter option. |
| [FilterSearchCssClasses](./search-ui-react.filtersearchcssclasses.md) | The CSS class interface for [FilterSearch()](./search-ui-react.filtersearch.md)<!-- -->. |
| [FilterSearchProps](./search-ui-react.filtersearchprops.md) | The props for the [FilterSearch()](./search-ui-react.filtersearch.md) component. |
| [GenerativeDirectAnswerCssClasses](./search-ui-react.generativedirectanswercssclasses.md) | The CSS class interface used for [GenerativeDirectAnswer()](./search-ui-react.generativedirectanswer.md)<!-- -->. |
| [GenerativeDirectAnswerProps](./search-ui-react.generativedirectanswerprops.md) | Props for [GenerativeDirectAnswer()](./search-ui-react.generativedirectanswer.md)<!-- -->. |
| [GeolocationCssClasses](./search-ui-react.geolocationcssclasses.md) | The CSS class interface for the Geolocation component. |
| [GeolocationProps](./search-ui-react.geolocationprops.md) | The props for the Geolocation component. |
| [HierarchicalFacetDisplayCssClasses](./search-ui-react.hierarchicalfacetdisplaycssclasses.md) | The CSS class interface for HierarchicalFacetDisplay. |
Expand Down
Loading

0 comments on commit 3f83773

Please sign in to comment.