Skip to content
This repository was archived by the owner on Jun 11, 2021. It is now read-only.

Commit 2c280e2

Browse files
feat(docsearch): track docsearch-react UA
1 parent eb400f2 commit 2c280e2

6 files changed

Lines changed: 19 additions & 13 deletions

File tree

packages/autocomplete-preset-algolia/src/results.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,7 @@ interface GetAlgoliaSourceParams {
1818

1919
function getAlgoliaSource({ searchClient, queries }: GetAlgoliaSourceParams) {
2020
if (typeof (searchClient as Client).addAlgoliaAgent === 'function') {
21-
(searchClient as Client).addAlgoliaAgent(
22-
`autocomplete-core (${__VERSION__})`
23-
);
21+
(searchClient as Client).addAlgoliaAgent('autocomplete-core', __VERSION__);
2422
}
2523

2624
return searchClient.search(

packages/autocomplete-react/src/getAlgoliaHits.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ interface GetAlgoliaSourceParams {
1010

1111
export function getAlgoliaHits(params: GetAlgoliaSourceParams) {
1212
if (typeof params.searchClient.addAlgoliaAgent === 'function') {
13-
params.searchClient.addAlgoliaAgent(`autocomplete-react (${__VERSION__})`);
13+
params.searchClient.addAlgoliaAgent('autocomplete-react', __VERSION__);
1414
}
1515

1616
return originalGetAlgoliaHits(params);

packages/autocomplete-react/src/getAlgoliaResults.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ interface GetAlgoliaSourceParams {
1010

1111
export function getAlgoliaResults(params: GetAlgoliaSourceParams) {
1212
if (typeof params.searchClient.addAlgoliaAgent === 'function') {
13-
params.searchClient.addAlgoliaAgent(`autocomplete-react (${__VERSION__})`);
13+
params.searchClient.addAlgoliaAgent('autocomplete-react', __VERSION__);
1414
}
1515

1616
return originalGetAlgoliaResults(params);

packages/docsearch-js/src/docsearch.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export function docsearch(props) {
1818
<DocSearch
1919
{...props}
2020
transformSearchClient={(searchClient) => {
21-
searchClient.addAlgoliaAgent(`docsearch.js (${version})`);
21+
searchClient.addAlgoliaAgent('docsearch.js', version);
2222

2323
return props.transformSearchClient
2424
? props.transformSearchClient(searchClient)

packages/docsearch-react/src/useSearchClient.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,18 @@ export function useSearchClient(
1111
): SearchClient {
1212
const searchClient = React.useMemo(() => {
1313
const client = algoliasearch(appId, apiKey);
14-
client.addAlgoliaAgent(`docsearch (${version})`);
14+
client.addAlgoliaAgent('docsearch', version);
15+
16+
// Since DocSearch.js relies on DocSearch React with an alias to Preact,
17+
// we cannot add the `docsearch-react` user agent by default, otherwise
18+
// it would also be sent on a DocSearch.js integration.
19+
// We therefore only add the `docsearch-react` user agent if `docsearch.js`
20+
// is not present.
21+
if (
22+
/docsearch.js \(.*\)/.test(client.transporter.userAgent.value) === false
23+
) {
24+
client.addAlgoliaAgent('docsearch-react', version);
25+
}
1526

1627
return transformSearchClient(client);
1728
}, [appId, apiKey, transformSearchClient]);

packages/website/src/theme/SearchBar/index.js

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,7 @@ import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
66
import { useHistory } from '@docusaurus/router';
77
import Link from '@docusaurus/Link';
88
import Head from '@docusaurus/Head';
9-
import {
10-
DocSearchButton,
11-
useDocSearchKeyboardEvents,
12-
version as docSearchVersion,
13-
} from '@docsearch/react';
9+
import { DocSearchButton, useDocSearchKeyboardEvents } from '@docsearch/react';
1410

1511
let DocSearchModal = null;
1612

@@ -42,7 +38,8 @@ function transformItems(items) {
4238
}
4339

4440
function transformSearchClient(searchClient) {
45-
searchClient.addAlgoliaAgent(`docsearch-docusaurus (${docSearchVersion})`);
41+
// @TODO: attach Docusaurus version to user agent
42+
searchClient.addAlgoliaAgent('docusaurus');
4643

4744
return searchClient;
4845
}

0 commit comments

Comments
 (0)