mirror of
https://github.com/PrimalHQ/primal-web-app.git
synced 2024-10-01 17:31:13 +00:00
Allow max two line breaks in a note
This commit is contained in:
parent
9b5e8fea5c
commit
7f9476c52e
@ -193,8 +193,11 @@ const ParsedNote: Component<{
|
|||||||
|
|
||||||
const updateContent = (contentArray: NoteContent[], type: string, token: string, meta?: Record<string, any>) => {
|
const updateContent = (contentArray: NoteContent[], type: string, token: string, meta?: Record<string, any>) => {
|
||||||
if (contentArray.length > 0 && contentArray[contentArray.length -1].type === type) {
|
if (contentArray.length > 0 && contentArray[contentArray.length -1].type === type) {
|
||||||
|
|
||||||
setContent(content.length -1, 'tokens' , (els) => [...els, token]);
|
setContent(content.length -1, 'tokens' , (els) => [...els, token]);
|
||||||
|
|
||||||
meta && setContent(content.length -1, 'meta' , () => ({ ...meta }));
|
meta && setContent(content.length -1, 'meta' , () => ({ ...meta }));
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -206,11 +209,12 @@ const ParsedNote: Component<{
|
|||||||
const parseToken = (token: string) => {
|
const parseToken = (token: string) => {
|
||||||
if (token === '__LB__') {
|
if (token === '__LB__') {
|
||||||
lastSignificantContent !== 'image' && updateContent(content, 'linebreak', token);
|
lastSignificantContent !== 'image' && updateContent(content, 'linebreak', token);
|
||||||
|
lastSignificantContent = 'LB';
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (token === '__SP__') {
|
if (token === '__SP__') {
|
||||||
lastSignificantContent !== 'image' && updateContent(content, 'text', ' ');
|
!['image', 'LB'].includes(lastSignificantContent) && updateContent(content, 'text', ' ');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -370,8 +374,12 @@ const ParsedNote: Component<{
|
|||||||
const renderLinebreak = (item: NoteContent) => {
|
const renderLinebreak = (item: NoteContent) => {
|
||||||
if (isNoteTooLong()) return;
|
if (isNoteTooLong()) return;
|
||||||
|
|
||||||
// Allow only one consecutive linebreak
|
// Allow max consecutive linebreak
|
||||||
return <br />
|
const len = Math.min(2, item.tokens.length);
|
||||||
|
|
||||||
|
const lineBreaks = Array(len).fill(<br/>)
|
||||||
|
|
||||||
|
return <For each={lineBreaks}>{_ => <br/>}</For>
|
||||||
};
|
};
|
||||||
|
|
||||||
const renderText = (item: NoteContent) => {
|
const renderText = (item: NoteContent) => {
|
||||||
|
Loading…
Reference in New Issue
Block a user