2021-02-18 12:38:41 +00:00
|
|
|
import { OutputData } from "@editorjs/editorjs";
|
|
|
|
|
2021-02-18 12:59:47 +00:00
|
|
|
import {
|
|
|
|
PageTranslationInputFieldName,
|
|
|
|
TranslationInputFieldName
|
|
|
|
} from "./types";
|
2021-02-18 12:38:41 +00:00
|
|
|
|
|
|
|
export const getParsedTranslationInputData = ({
|
|
|
|
fieldName,
|
|
|
|
data
|
|
|
|
}: {
|
2021-02-18 12:59:47 +00:00
|
|
|
fieldName: TranslationInputFieldName | PageTranslationInputFieldName;
|
2021-02-18 12:38:41 +00:00
|
|
|
data: string | OutputData;
|
|
|
|
}): Record<string, string | null> => {
|
2021-02-18 12:59:47 +00:00
|
|
|
const fieldsToParse = [
|
|
|
|
TranslationInputFieldName.description,
|
|
|
|
PageTranslationInputFieldName.content
|
|
|
|
];
|
|
|
|
|
|
|
|
if (fieldsToParse.includes(fieldName)) {
|
2021-02-18 12:38:41 +00:00
|
|
|
return {
|
|
|
|
description: getParsedDataForJsonStringField(data as OutputData)
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
return { [fieldName]: data as string };
|
|
|
|
};
|
|
|
|
|
|
|
|
export const getParsedDataForJsonStringField = (
|
|
|
|
data: OutputData
|
|
|
|
): string | null => (!!data.blocks?.length ? JSON.stringify(data) : null);
|