refactor: move config to search-backend plugin
Signed-off-by: Enrico Alvarenga <enricomalvarenga@gmail.com>
This commit is contained in:
committed by
Camila Belo
parent
40de4a7210
commit
bdf9e1d668
@@ -280,3 +280,7 @@ gocd:
|
||||
|
||||
permission:
|
||||
enabled: true
|
||||
|
||||
search:
|
||||
query:
|
||||
pageLimit: 100
|
||||
@@ -10,3 +10,19 @@ centralized in the `search` plugin README.md.
|
||||
For a better overview of how the search platform is put together, check the
|
||||
[Backstage Search Architecture](https://backstage.io/docs/features/search/architecture)
|
||||
documentation.
|
||||
|
||||
### Optional Settings
|
||||
|
||||
Configure the search query values via `app-config.yaml` to define how it behaves by default.
|
||||
|
||||
```yaml
|
||||
# app-config.yaml
|
||||
search:
|
||||
query:
|
||||
pageLimit: 50
|
||||
```
|
||||
|
||||
Acceptable values for `pageLimit` are `10`, `25`, `50` or `100`.
|
||||
|
||||
**NOTE**: Currently this configuration only reflects the initial state of the Search React components. This means that
|
||||
it defines how it behaves when it is first loaded or reset.
|
||||
|
||||
Vendored
+16
@@ -40,5 +40,21 @@ export interface Config {
|
||||
*/
|
||||
queryLatencyBudgetMs?: number;
|
||||
};
|
||||
|
||||
/**
|
||||
* An object representing the default search query configuration.
|
||||
* By configuring and modifying the values of this object,
|
||||
* you can customize the default values of the search queries
|
||||
* and define how it behaves by default.
|
||||
*/
|
||||
query?: {
|
||||
/**
|
||||
* A number indicating the maximum number of results to be returned
|
||||
* per page during pagination.
|
||||
*
|
||||
* @visibility frontend
|
||||
*/
|
||||
pageLimit?: 10 | 25 | 50 | 100;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -61,9 +61,6 @@ export type DefaultResultListItemProps = {
|
||||
toggleModal?: () => void;
|
||||
};
|
||||
|
||||
// @public
|
||||
export const getSearchContextInitialStateDefaults: () => SearchContextState;
|
||||
|
||||
// @public (undocumented)
|
||||
export const HighlightedSearchResultText: (
|
||||
props: HighlightedSearchResultTextProps,
|
||||
|
||||
@@ -249,7 +249,7 @@ export const SearchContextProvider = (props: SearchContextProviderProps) => {
|
||||
...searchInitialState,
|
||||
...(initialState || {}),
|
||||
pageLimit:
|
||||
configApi.getOptionalNumber('app.search.query.pageLimit') ||
|
||||
configApi.getOptionalNumber('search.query.pageLimit') ||
|
||||
initialState?.pageLimit,
|
||||
};
|
||||
|
||||
|
||||
@@ -18,7 +18,6 @@ export {
|
||||
SearchContextProvider,
|
||||
useSearch,
|
||||
useSearchContextCheck,
|
||||
getSearchContextInitialStateDefaults,
|
||||
} from './SearchContext';
|
||||
|
||||
export type {
|
||||
|
||||
@@ -28,7 +28,6 @@ export {
|
||||
SearchContextProvider,
|
||||
useSearch,
|
||||
useSearchContextCheck,
|
||||
getSearchContextInitialStateDefaults,
|
||||
} from './context';
|
||||
export type {
|
||||
SearchContextProviderProps,
|
||||
|
||||
@@ -8,20 +8,6 @@ Development is ongoing. You can follow the progress and contribute at the Backst
|
||||
|
||||
Run `yarn dev` in the root directory, and then navigate to [/search](http://localhost:3000/search) to check out the plugin.
|
||||
|
||||
### Optional Settings
|
||||
|
||||
Configure the SearchPage component initial state via `app-config.yaml` to define how it behaves when it is first loaded or reset.
|
||||
|
||||
```yaml
|
||||
# app-config.yaml
|
||||
app:
|
||||
search:
|
||||
initialState:
|
||||
pageLimit: 50
|
||||
```
|
||||
|
||||
Acceptable values for `pageLimit` are `10`, `25`, `50` or `100`.
|
||||
|
||||
### Areas of Responsibility
|
||||
|
||||
This search plugin is primarily responsible for the following:
|
||||
|
||||
Vendored
-40
@@ -1,40 +0,0 @@
|
||||
/*
|
||||
* Copyright 2023 The Backstage Authors
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export interface Config {
|
||||
app: {
|
||||
/**
|
||||
* Configuration options for the search plugin
|
||||
*/
|
||||
search?: {
|
||||
/**
|
||||
* An object representing the default search query configuration.
|
||||
* By configuring and modifying the values of this object,
|
||||
* you can customize the default values of the search component
|
||||
* and define how it behaves when it is first loaded or reset.
|
||||
*/
|
||||
query?: {
|
||||
/**
|
||||
* A number indicating the maximum number of results to be returned
|
||||
* per page during pagination.
|
||||
*
|
||||
* @visibility frontend
|
||||
*/
|
||||
pageLimit?: 10 | 25 | 50 | 100;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -70,8 +70,6 @@
|
||||
"msw": "^1.0.0"
|
||||
},
|
||||
"files": [
|
||||
"dist",
|
||||
"config.d.ts"
|
||||
],
|
||||
"configSchema": "config.d.ts"
|
||||
"dist"
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user