Refactoring - Changed CreateFieldsGroupData() to work with both YAML and Code Block format

This commit is contained in:
Noah Boos 2025-05-01 20:19:24 +02:00
parent 6ee817f20f
commit 0993bb221f
2 changed files with 34 additions and 2 deletions

View file

@ -282,6 +282,7 @@ export class AddNoteFromCodeBlockModal extends Modal {
} else {
if (inputValues) {
CreateFieldsGroupData(fieldsGroupData, selectedModel["fields"], inputValues);
console.log(inputValues);
AddFieldGroups(inputContainer, fieldsGroupData);
} else {
CreateFieldsGroupData(fieldsGroupData, selectedModel["fields"]);
@ -302,6 +303,7 @@ export class AddNoteFromCodeBlockModal extends Modal {
* @description Stores the values parsed by GetCodeBlockParameters().
*/
const codeBlockParameters: Object = await this.GetCodeBlockParameters();
// console.log(codeBlockParameters);
if (!codeBlockParameters) {
this.AddFieldsGroupsToModal(inputContainer, modelSelector.getValue(), null);
} else {

View file

@ -310,8 +310,10 @@ export function CreateFieldsGroupData(fieldsGroupData: Array<Object>, keys: Arra
for (let i = 0 ; i < keys.length; i++) {
const fieldName = keys[i];
let fieldValue = null;
if (values.hasOwnProperty(fieldName.toLowerCase())) {
fieldValue = values[fieldName.toLowerCase()];
if (values["fields"]) {
fieldValue = ExtractValueFromCodeBlock(fieldValue, values, fieldName);
} else {
fieldValue = ExtractValueFromMetadata(fieldValue, values, fieldName);
}
fieldsGroupData[i] = {
fieldName: fieldName,
@ -320,6 +322,34 @@ export function CreateFieldsGroupData(fieldsGroupData: Array<Object>, keys: Arra
}
}
/**
* Extract value from metadata.
* @param {string} fieldValue - The value to change.
* @param {Object} values - An object storing the gathered values to draw in.
* @param {string} fieldName - The name of the field the value has to be taken for.
* @return {string} fieldValue
*/
function ExtractValueFromMetadata(fieldValue: string, values: Object, fieldName: string): string {
if (values.hasOwnProperty(fieldName.toLowerCase())) {
fieldValue = values[fieldName.toLowerCase()];
return fieldValue;
}
}
/**
* Extract value from code block.
* @param {string} fieldValue - The value to change.
* @param {Object} values - An object storing the gathered values to draw in.
* @param {string} fieldName - The name of the field the value has to be taken for.
* @return {string} fieldValue
*/
function ExtractValueFromCodeBlock(fieldValue: string, values: Object, fieldName: string): string {
if (values["fields"].hasOwnProperty(fieldName.toLowerCase())) {
fieldValue = values["fields"][fieldName.toLowerCase()];
return fieldValue;
}
}
/**
* Function that returns the content of a given TFile.
* @param {Modal} modal - The instance of the modal that needs to read a file content.