0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2025-02-17 22:04:19 -05:00

refactor(console): filter empty content before updating custom phrases (#1995)

This commit is contained in:
Xiao Yijun 2022-09-26 13:48:23 +08:00
parent 0679a6a67c
commit 5e59bc9e93
No known key found for this signature in database
GPG key ID: 6F648FC1262DB420
3 changed files with 27 additions and 2 deletions

View file

@ -18,11 +18,11 @@
},
"devDependencies": {
"@fontsource/roboto-mono": "^4.5.7",
"@logto/core-kit": "^1.0.0-beta.13",
"@logto/phrases": "^1.0.0-beta.9",
"@logto/phrases-ui": "^1.0.0-beta.9",
"@logto/react": "1.0.0-beta.8",
"@logto/schemas": "^1.0.0-beta.9",
"@logto/core-kit": "^1.0.0-beta.13",
"@mdx-js/react": "^1.6.22",
"@parcel/core": "2.7.0",
"@parcel/transformer-mdx": "2.7.0",
@ -43,6 +43,7 @@
"@types/react-modal": "^3.13.1",
"@types/react-syntax-highlighter": "^15.5.1",
"classnames": "^2.3.1",
"clean-deep": "^3.4.0",
"cross-env": "^7.0.3",
"csstype": "^3.0.11",
"dayjs": "^1.10.5",

View file

@ -3,6 +3,7 @@ import resource, {
languageCodeAndDisplayNameMappings,
Translation as UiTranslation,
} from '@logto/phrases-ui';
import cleanDeep from 'clean-deep';
import { useEffect, useMemo } from 'react';
import { FormProvider, useForm } from 'react-hook-form';
import { toast } from 'react-hot-toast';
@ -65,7 +66,7 @@ const LanguageEditor = ({ selectedLanguageKey, onFormStateChange }: LanguageEdit
const updatedCustomPhrase = await api
.put(`/api/custom-phrases/${selectedLanguageKey}`, {
json: {
...formData,
...cleanDeep(formData),
},
})
.json<CustomPhraseResponse>();

23
pnpm-lock.yaml generated
View file

@ -46,6 +46,7 @@ importers:
'@types/react-modal': ^3.13.1
'@types/react-syntax-highlighter': ^15.5.1
classnames: ^2.3.1
clean-deep: ^3.4.0
cross-env: ^7.0.3
csstype: ^3.0.11
dayjs: ^1.10.5
@ -110,6 +111,7 @@ importers:
'@types/react-modal': 3.13.1
'@types/react-syntax-highlighter': 15.5.1
classnames: 2.3.1
clean-deep: 3.4.0
cross-env: 7.0.3
csstype: 3.0.11
dayjs: 1.10.7
@ -5570,6 +5572,15 @@ packages:
resolution: {integrity: sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==}
dev: true
/clean-deep/3.4.0:
resolution: {integrity: sha512-Lo78NV5ItJL/jl+B5w0BycAisaieJGXK1qYi/9m4SjR8zbqmrUtO7Yhro40wEShGmmxs/aJLI/A+jNhdkXK8mw==}
engines: {node: '>=4'}
dependencies:
lodash.isempty: 4.4.0
lodash.isplainobject: 4.0.6
lodash.transform: 4.6.0
dev: true
/clean-regexp/1.0.0:
resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
engines: {node: '>=4'}
@ -10212,10 +10223,18 @@ packages:
resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==}
dev: true
/lodash.isempty/4.4.0:
resolution: {integrity: sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg==}
dev: true
/lodash.ismatch/4.4.0:
resolution: {integrity: sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc=}
dev: true
/lodash.isplainobject/4.0.6:
resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==}
dev: true
/lodash.kebabcase/4.1.1:
resolution: {integrity: sha1-hImxyw0p/4gZXM7KRI/21swpXDY=}
dev: true
@ -10258,6 +10277,10 @@ packages:
lodash._reinterpolate: 3.0.0
dev: true
/lodash.transform/4.6.0:
resolution: {integrity: sha512-LO37ZnhmBVx0GvOU/caQuipEh4GN82TcWv3yHlebGDgOxbxiwwzW5Pcx2AcvpIv2WmvmSMoC492yQFNhy/l/UQ==}
dev: true
/lodash.truncate/4.4.2:
resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==}
dev: true