Closed thompsonsj closed 2 months ago
Console logging arguments passed to updatePayloadTranslation
, it's clear that this function is being called twice.
What is likely happening is that context
is being set by syncTranslations
and the syncAllTranslations
afterChange
hook is interpreting the context
values as a 'good-to-go' signal!
{
articleDirectoryId: '669a7f8047147b4efa3dd270',
pluginOptions: {
projectId: 323731,
directoryId: 1169,
token: undefined,
localeMap: {
da_DK: [Object],
de_DE: [Object],
en_GB: [Object],
en_US: [Object],
es_ES: [Object],
fi_FI: [Object],
fr_FR: [Object],
it_IT: [Object],
nl_NL: [Object],
no_NO: [Object],
sv_SE: [Object]
},
sourceLocale: 'en',
tabbedUI: true,
collections: [
[Object],
'content-hub-tags',
[Object],
'landing-page-tags',
'policies',
'software-reviews',
[Object]
],
slateToHtmlConfig: {
markMap: [Object],
elementMap: [Object],
elementAttributeTransform: [Function: elementAttributeTransform],
elementTransforms: [Object],
encodeEntities: false,
alwaysEncodeBreakingEntities: true,
alwaysEncodeCodeEntities: false,
convertLineBreakToBr: false,
defaultTag: 'p'
},
htmlToSlateConfig: {
elementAttributeTransform: [Function: elementAttributeTransform],
elementTags: [Object],
textTags: [Object],
htmlPreProcessString: [Function: htmlPreProcessString],
filterWhitespaceNodes: true,
convertBrToLineBreak: true,
trimWhiteSpace: true
},
pluginCollectionAdmin: {
enableRichTextLink: false,
enableRichTextRelationship: false,
hidden: [Function: hidden]
},
lexicalBlockFolderPrefix: 'lex.'
},
payload: '<payload object>',
draft: true,
dryRun: false,
excludeLocales: [
'da_DK', 'en_GB',
'en_US', 'es_ES',
'fi_FI', 'fr_FR',
'it_IT', 'nl_NL',
'no_NO', 'sv_SE'
]
}
{
articleDirectoryId: '669a7f8047147b4efa3dd270',
pluginOptions: {
projectId: 323731,
directoryId: 1169,
token: undefined,
localeMap: {
da_DK: [Object],
de_DE: [Object],
en_GB: [Object],
en_US: [Object],
es_ES: [Object],
fi_FI: [Object],
fr_FR: [Object],
it_IT: [Object],
nl_NL: [Object],
no_NO: [Object],
sv_SE: [Object]
},
sourceLocale: 'en',
tabbedUI: true,
collections: [
[Object],
'content-hub-tags',
[Object],
'landing-page-tags',
'policies',
'software-reviews',
[Object]
],
slateToHtmlConfig: {
markMap: [Object],
elementMap: [Object],
elementAttributeTransform: [Function: elementAttributeTransform],
elementTransforms: [Object],
encodeEntities: false,
alwaysEncodeBreakingEntities: true,
alwaysEncodeCodeEntities: false,
convertLineBreakToBr: false,
defaultTag: 'p'
},
htmlToSlateConfig: {
elementAttributeTransform: [Function: elementAttributeTransform],
elementTags: [Object],
textTags: [Object],
htmlPreProcessString: [Function: htmlPreProcessString],
filterWhitespaceNodes: true,
convertBrToLineBreak: true,
trimWhiteSpace: true
},
pluginCollectionAdmin: {
enableRichTextLink: false,
enableRichTextRelationship: false,
hidden: [Function: hidden]
},
lexicalBlockFolderPrefix: 'lex.'
},
payload: '<payload object>',
draft: true,
dryRun: false,
excludeLocales: undefined
}
https://github.com/thompsonsj/payload-crowdin-sync/pull/188 fixes this. Tested manually on a production install.
The Sync translations checkbox should sync only the current locale. This is as opposed to Sync all translations which syncs all locales. Recent experience suggests it impacts all locales.
Check, test, try to replicate...etc. The usual!