function fixYamlSnippetCompletionItem()

in src/util/yamlCompletionUtils.ts [63:84]


function fixYamlSnippetCompletionItem(completionItem: JsonLS.CompletionItem, finYamlIndentationFlag: boolean): void {
    if (completionItem.kind !== 9 || !completionItem.label.startsWith("Snippet:")) {
        return;
    }
    for (const snippet of snippets) {
        if (snippet.label === completionItem.label) {
            // tries to fix an issue in yaml-language-service YAML stringify for defaultSnippets
            // the issue is with stringify-ing 'multiline strings' and 'arrays of string elements'
            const yamlContent = YAML.stringify(snippet.body, {
                indent: 4,
            });
            completionItem.insertText = yamlContent;
            if (completionItem.textEdit?.newText) {
                completionItem.textEdit.newText = yamlContent;
            }
            break;
        }
    }
    if (finYamlIndentationFlag) {
        fixYamlArrayItemIndentation(completionItem);
    }
}