|
@@ -6,7 +6,7 @@ import {
|
|
|
createNotification,
|
|
|
updateConfig,
|
|
|
sortApps,
|
|
|
- sortCategories
|
|
|
+ sortCategories,
|
|
|
} from '../../../store/actions';
|
|
|
|
|
|
// Typescript
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
GlobalState,
|
|
|
NewNotification,
|
|
|
Query,
|
|
|
- SettingsForm
|
|
|
+ SettingsForm,
|
|
|
} from '../../../interfaces';
|
|
|
|
|
|
// UI
|
|
@@ -53,7 +53,7 @@ const OtherSettings = (props: ComponentProps): JSX.Element => {
|
|
|
searchSameTab: 0,
|
|
|
dockerApps: 1,
|
|
|
kubernetesApps: 1,
|
|
|
- unpinStoppedApps: 1
|
|
|
+ unpinStoppedApps: 1,
|
|
|
});
|
|
|
|
|
|
// Get config
|
|
@@ -73,7 +73,7 @@ const OtherSettings = (props: ComponentProps): JSX.Element => {
|
|
|
searchSameTab: searchConfig('searchSameTab', 0),
|
|
|
dockerApps: searchConfig('dockerApps', 0),
|
|
|
kubernetesApps: searchConfig('kubernetesApps', 0),
|
|
|
- unpinStoppedApps: searchConfig('unpinStoppedApps', 0)
|
|
|
+ unpinStoppedApps: searchConfig('unpinStoppedApps', 0),
|
|
|
});
|
|
|
}, [props.loading]);
|
|
|
|
|
@@ -105,115 +105,117 @@ const OtherSettings = (props: ComponentProps): JSX.Element => {
|
|
|
|
|
|
setFormData({
|
|
|
...formData,
|
|
|
- [e.target.name]: value
|
|
|
+ [e.target.name]: value,
|
|
|
});
|
|
|
};
|
|
|
|
|
|
return (
|
|
|
- <form onSubmit={e => formSubmitHandler(e)}>
|
|
|
+ <form onSubmit={(e) => formSubmitHandler(e)}>
|
|
|
{/* OTHER OPTIONS */}
|
|
|
<h2 className={classes.SettingsSection}>Miscellaneous</h2>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='customTitle'>Custom page title</label>
|
|
|
+ <label htmlFor="customTitle">Custom page title</label>
|
|
|
<input
|
|
|
- type='text'
|
|
|
- id='customTitle'
|
|
|
- name='customTitle'
|
|
|
- placeholder='Flame'
|
|
|
+ type="text"
|
|
|
+ id="customTitle"
|
|
|
+ name="customTitle"
|
|
|
+ placeholder="Flame"
|
|
|
value={formData.customTitle}
|
|
|
- onChange={e => inputChangeHandler(e)}
|
|
|
+ onChange={(e) => inputChangeHandler(e)}
|
|
|
/>
|
|
|
</InputGroup>
|
|
|
|
|
|
{/* BEAHVIOR OPTIONS */}
|
|
|
<h2 className={classes.SettingsSection}>App Behavior</h2>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='pinAppsByDefault'>
|
|
|
+ <label htmlFor="pinAppsByDefault">
|
|
|
Pin new applications by default
|
|
|
</label>
|
|
|
<select
|
|
|
- id='pinAppsByDefault'
|
|
|
- name='pinAppsByDefault'
|
|
|
+ id="pinAppsByDefault"
|
|
|
+ name="pinAppsByDefault"
|
|
|
value={formData.pinAppsByDefault}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='pinCategoriesByDefault'>
|
|
|
+ <label htmlFor="pinCategoriesByDefault">
|
|
|
Pin new categories by default
|
|
|
</label>
|
|
|
<select
|
|
|
- id='pinCategoriesByDefault'
|
|
|
- name='pinCategoriesByDefault'
|
|
|
+ id="pinCategoriesByDefault"
|
|
|
+ name="pinCategoriesByDefault"
|
|
|
value={formData.pinCategoriesByDefault}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='useOrdering'>Sorting type</label>
|
|
|
+ <label htmlFor="useOrdering">Sorting type</label>
|
|
|
<select
|
|
|
- id='useOrdering'
|
|
|
- name='useOrdering'
|
|
|
+ id="useOrdering"
|
|
|
+ name="useOrdering"
|
|
|
value={formData.useOrdering}
|
|
|
- onChange={e => inputChangeHandler(e)}
|
|
|
+ onChange={(e) => inputChangeHandler(e)}
|
|
|
>
|
|
|
- <option value='createdAt'>By creation date</option>
|
|
|
- <option value='name'>Alphabetical order</option>
|
|
|
- <option value='orderId'>Custom order</option>
|
|
|
+ <option value="createdAt">By creation date</option>
|
|
|
+ <option value="name">Alphabetical order</option>
|
|
|
+ <option value="orderId">Custom order</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='defaultSearchProvider'>Default Search Provider</label>
|
|
|
+ <label htmlFor="defaultSearchProvider">Default Search Provider</label>
|
|
|
<select
|
|
|
- id='defaultSearchProvider'
|
|
|
- name='defaultSearchProvider'
|
|
|
+ id="defaultSearchProvider"
|
|
|
+ name="defaultSearchProvider"
|
|
|
value={formData.defaultSearchProvider}
|
|
|
- onChange={e => inputChangeHandler(e)}
|
|
|
+ onChange={(e) => inputChangeHandler(e)}
|
|
|
>
|
|
|
- {queries.map((query: Query) => (
|
|
|
- <option value={query.prefix}>{query.name}</option>
|
|
|
+ {queries.map((query: Query, idx) => (
|
|
|
+ <option key={idx} value={query.prefix}>
|
|
|
+ {query.name}
|
|
|
+ </option>
|
|
|
))}
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='searchSameTab'>
|
|
|
+ <label htmlFor="searchSameTab">
|
|
|
Open search results in the same tab
|
|
|
</label>
|
|
|
<select
|
|
|
- id='searchSameTab'
|
|
|
- name='searchSameTab'
|
|
|
+ id="searchSameTab"
|
|
|
+ name="searchSameTab"
|
|
|
value={formData.searchSameTab}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='appsSameTab'>Open applications in the same tab</label>
|
|
|
+ <label htmlFor="appsSameTab">Open applications in the same tab</label>
|
|
|
<select
|
|
|
- id='appsSameTab'
|
|
|
- name='appsSameTab'
|
|
|
+ id="appsSameTab"
|
|
|
+ name="appsSameTab"
|
|
|
value={formData.appsSameTab}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='bookmarksSameTab'>Open bookmarks in the same tab</label>
|
|
|
+ <label htmlFor="bookmarksSameTab">Open bookmarks in the same tab</label>
|
|
|
<select
|
|
|
- id='bookmarksSameTab'
|
|
|
- name='bookmarksSameTab'
|
|
|
+ id="bookmarksSameTab"
|
|
|
+ name="bookmarksSameTab"
|
|
|
value={formData.bookmarksSameTab}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
@@ -223,48 +225,48 @@ const OtherSettings = (props: ComponentProps): JSX.Element => {
|
|
|
{/* MODULES OPTIONS */}
|
|
|
<h2 className={classes.SettingsSection}>Modules</h2>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='hideSearch'>Hide search bar</label>
|
|
|
+ <label htmlFor="hideSearch">Hide search bar</label>
|
|
|
<select
|
|
|
- id='hideSearch'
|
|
|
- name='hideSearch'
|
|
|
+ id="hideSearch"
|
|
|
+ name="hideSearch"
|
|
|
value={formData.hideSearch}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='hideHeader'>Hide greeting and date</label>
|
|
|
+ <label htmlFor="hideHeader">Hide greeting and date</label>
|
|
|
<select
|
|
|
- id='hideHeader'
|
|
|
- name='hideHeader'
|
|
|
+ id="hideHeader"
|
|
|
+ name="hideHeader"
|
|
|
value={formData.hideHeader}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='hideApps'>Hide applications</label>
|
|
|
+ <label htmlFor="hideApps">Hide applications</label>
|
|
|
<select
|
|
|
- id='hideApps'
|
|
|
- name='hideApps'
|
|
|
+ id="hideApps"
|
|
|
+ name="hideApps"
|
|
|
value={formData.hideApps}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='hideCategories'>Hide categories</label>
|
|
|
+ <label htmlFor="hideCategories">Hide categories</label>
|
|
|
<select
|
|
|
- id='hideCategories'
|
|
|
- name='hideCategories'
|
|
|
+ id="hideCategories"
|
|
|
+ name="hideCategories"
|
|
|
value={formData.hideCategories}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
@@ -274,26 +276,26 @@ const OtherSettings = (props: ComponentProps): JSX.Element => {
|
|
|
{/* DOCKER SETTINGS */}
|
|
|
<h2 className={classes.SettingsSection}>Docker</h2>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='dockerApps'>Use Docker API</label>
|
|
|
+ <label htmlFor="dockerApps">Use Docker API</label>
|
|
|
<select
|
|
|
- id='dockerApps'
|
|
|
- name='dockerApps'
|
|
|
+ id="dockerApps"
|
|
|
+ name="dockerApps"
|
|
|
value={formData.dockerApps}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
|
</select>
|
|
|
</InputGroup>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='unpinStoppedApps'>
|
|
|
+ <label htmlFor="unpinStoppedApps">
|
|
|
Unpin stopped containers / other apps
|
|
|
</label>
|
|
|
<select
|
|
|
- id='unpinStoppedApps'
|
|
|
- name='unpinStoppedApps'
|
|
|
+ id="unpinStoppedApps"
|
|
|
+ name="unpinStoppedApps"
|
|
|
value={formData.unpinStoppedApps}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
@@ -303,12 +305,12 @@ const OtherSettings = (props: ComponentProps): JSX.Element => {
|
|
|
{/* KUBERNETES SETTINGS */}
|
|
|
<h2 className={classes.SettingsSection}>Kubernetes</h2>
|
|
|
<InputGroup>
|
|
|
- <label htmlFor='kubernetesApps'>Use Kubernetes Ingress API</label>
|
|
|
+ <label htmlFor="kubernetesApps">Use Kubernetes Ingress API</label>
|
|
|
<select
|
|
|
- id='kubernetesApps'
|
|
|
- name='kubernetesApps'
|
|
|
+ id="kubernetesApps"
|
|
|
+ name="kubernetesApps"
|
|
|
value={formData.kubernetesApps}
|
|
|
- onChange={e => inputChangeHandler(e, true)}
|
|
|
+ onChange={(e) => inputChangeHandler(e, true)}
|
|
|
>
|
|
|
<option value={1}>True</option>
|
|
|
<option value={0}>False</option>
|
|
@@ -321,7 +323,7 @@ const OtherSettings = (props: ComponentProps): JSX.Element => {
|
|
|
|
|
|
const mapStateToProps = (state: GlobalState) => {
|
|
|
return {
|
|
|
- loading: state.config.loading
|
|
|
+ loading: state.config.loading,
|
|
|
};
|
|
|
};
|
|
|
|
|
@@ -329,7 +331,7 @@ const actions = {
|
|
|
createNotification,
|
|
|
updateConfig,
|
|
|
sortApps,
|
|
|
- sortCategories
|
|
|
+ sortCategories,
|
|
|
};
|
|
|
|
|
|
export default connect(mapStateToProps, actions)(OtherSettings);
|