Fix NewPost typing by preserving spaces while stripping bible tokens

This commit is contained in:
Adolfo Reyna
2026-02-24 16:19:08 -05:00
parent fc3159d3fb
commit a2846423b9

View File

@@ -9,7 +9,7 @@ import Media from '../components/Media';
import { Platform } from 'react-native';
import { useSnapshot } from 'valtio';
import GlobalState from '../contexts/GlobalState.js';
import { createBibleToken, extractBibleReferences, stripBibleTokens } from '../utils/bibleReferences.js';
import { createBibleToken, extractBibleReferences } from '../utils/bibleReferences.js';
const BATCH_SIZE = 1; // Constant for batch size
@@ -63,8 +63,13 @@ let NewPostView = (props) => {
GlobalState.biblePickerSelection = null;
}, [biblePickerSelectionTs]);
const removeBibleTokensFromDraft = (value = "") => {
return String(value || "").replace(/@bible:[^\s]+/gi, "");
};
const handlePostContentChange = (nextValue = "") => {
const detectedReferences = extractBibleReferences(nextValue);
const incomingValue = String(nextValue || "");
const detectedReferences = extractBibleReferences(incomingValue);
if (detectedReferences.length) {
setBibleReferences((prev) => {
const seen = new Set(prev);
@@ -72,7 +77,7 @@ let NewPostView = (props) => {
return Array.from(seen);
});
}
setPostContent(stripBibleTokens(nextValue));
setPostContent(removeBibleTokensFromDraft(incomingValue));
};
const pickImage = async () => {