translation-data form,data grid

This commit is contained in:
Stela Augustinova
2025-11-07 14:49:00 +01:00
parent e694aca70b
commit d14ffcb736
9 changed files with 145 additions and 55 deletions

View File

@@ -13,6 +13,7 @@
import { parseCellValue, safeJsonParse, stringifyCellValue } from 'dbgate-tools';
import { showSnackbarError } from '../utility/snackbar';
import ErrorMessageModal from './ErrorMessageModal.svelte';
import { _t } from '../translations';
export let onSave;
export let value;
@@ -49,14 +50,14 @@
if (parsed) {
textValue = JSON.stringify(parsed, null, 2);
} else {
showModal(ErrorMessageModal, { message: 'Not valid JSON' });
showModal(ErrorMessageModal, { message: _t('dataGrid.formatJson.invalid', { defaultMessage: 'Not valid JSON' }) });
}
}
</script>
<FormProvider>
<ModalBase {...$$restProps}>
<div slot="header">Edit cell value</div>
<div slot="header">{_t('dataGrid.editCellValue', { defaultMessage: 'Edit cell value' })}</div>
<div class="editor">
<AceEditor bind:value={textValue} bind:this={editor} onKeyDown={handleKeyDown} mode={syntaxMode} />
@@ -72,21 +73,21 @@
closeCurrentModal();
}}
/>
<FormStyledButton type="button" value="Cancel" on:click={closeCurrentModal} />
<FormStyledButton type="button" value={_t('common.cancel', { defaultMessage: 'Cancel' })} on:click={closeCurrentModal} />
</div>
<div>
<FormStyledButton type="button" value="Format JSON" on:click={handleFormatJson} />
<FormStyledButton type="button" skipWidth={true} value={_t('dataGrid.formatJson', { defaultMessage: 'Format JSON' })} on:click={handleFormatJson} />
Code highlighting:
{_t('dataGrid.codeHighlighting', { defaultMessage: 'Code highlighting:' })}
<SelectField
isNative
value={syntaxMode}
on:change={e => (syntaxMode = e.detail)}
options={[
{ value: 'text', label: 'None (raw text)' },
{ value: 'text', label: _t('dataGrid.codeHighlighting.none', { defaultMessage: 'None (raw text)' }) },
{ value: 'json', label: 'JSON' },
{ value: 'html', label: 'HTML' },
{ value: 'html', label: 'HTML'},
{ value: 'xml', label: 'XML' },
]}
/>

View File

@@ -6,8 +6,9 @@
import ModalBase from './ModalBase.svelte';
import { closeCurrentModal } from './modalTools';
import { _t } from '../translations';
export let title = 'Error';
export let title = _t('common.error', { defaultMessage: 'Error' });
export let message;
export let showAsCode = false;
</script>
@@ -30,7 +31,7 @@
{/if}
<div slot="footer">
<FormSubmit value="Close" on:click={closeCurrentModal} data-testid="ErrorMessageModal_closeButton" />
<FormSubmit value={_t('common.close', { defaultMessage: 'Close' })} on:click={closeCurrentModal} data-testid="ErrorMessageModal_closeButton" />
</div>
</ModalBase>
</FormProvider>

View File

@@ -15,6 +15,7 @@
import _ from 'lodash';
import { apiCall } from '../utility/api';
import ErrorInfo from '../elements/ErrorInfo.svelte';
import { _t } from '../translations';
export let onConfirm;
export let conid;
@@ -73,15 +74,15 @@
<FormProvider>
<ModalBase {...$$restProps}>
<svelte:fragment slot="header">Choose value from {field}</svelte:fragment>
<svelte:fragment slot="header">{_t('dataGrid.chooseValue', { defaultMessage: 'Choose value from {field}', values: { field } })}</svelte:fragment>
<!-- <FormTextField name="search" label='Search' placeholder="Search" bind:value={search} /> -->
<div class="largeFormMarker">
<SearchInput placeholder="Search" bind:value={search} isDebounced />
<SearchInput placeholder={_t('common.search', { defaultMessage: 'Search' })} bind:value={search} isDebounced />
</div>
{#if isLoading}
<LoadingInfo message="Loading data" />
<LoadingInfo message={_t('common.loadingData', { defaultMessage: 'Loading data' })} />
{/if}
{#if !isLoading && rows}
@@ -111,7 +112,7 @@
},
{
fieldName: 'value',
header: 'Value',
header: _t('dataGrid.value', { defaultMessage: 'Value' }),
formatter: row => (row.value == null ? '(NULL)' : row.value),
},
]}
@@ -146,7 +147,7 @@
}}
/>
{/if}
<FormStyledButton type="button" value="Close" on:click={closeCurrentModal} />
<FormStyledButton type="button" value={_t('common.close', { defaultMessage: 'Close' })} on:click={closeCurrentModal} />
</svelte:fragment>
</ModalBase>
</FormProvider>