aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/nodes
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/views/nodes')
-rw-r--r--src/client/views/nodes/IconTagBox.tsx7
-rw-r--r--src/client/views/nodes/formattedText/RichTextRules.ts2
2 files changed, 6 insertions, 3 deletions
diff --git a/src/client/views/nodes/IconTagBox.tsx b/src/client/views/nodes/IconTagBox.tsx
index 3d021fd73..ea1c3591a 100644
--- a/src/client/views/nodes/IconTagBox.tsx
+++ b/src/client/views/nodes/IconTagBox.tsx
@@ -14,6 +14,7 @@ import { ObservableReactComponent } from '../ObservableReactComponent';
import { PropertiesView } from '../PropertiesView';
import { DocumentView } from './DocumentView';
import './IconTagBox.scss';
+import { TagItem } from '../TagsView';
export interface IconTagProps {
Views: DocumentView[];
@@ -55,6 +56,8 @@ export class IconTagBox extends ObservableReactComponent<IconTagProps> {
*/
setIconTag = undoable((icon: string, state: boolean) => {
this._props.Views.forEach(view => {
+ state && TagItem.addTagToDoc(view.dataDoc, icon);
+ !state && TagItem.removeTagFromDoc(view.dataDoc, icon);
view.dataDoc[icon] = state;
});
}, 'toggle card tag');
@@ -66,7 +69,7 @@ export class IconTagBox extends ObservableReactComponent<IconTagProps> {
* @returns
*/
getButtonIcon = (doc: Doc, icon: IconProp): JSX.Element => {
- const isActive = doc[icon.toString()];
+ const isActive = TagItem.docHasTag(doc, icon.toString()); // doc[icon.toString()];
const color = isActive ? '#4476f7' : '#323232';
return <FontAwesomeIcon icon={icon} style={{ color, height: '20px', width: '20px' }} />;
@@ -91,7 +94,7 @@ export class IconTagBox extends ObservableReactComponent<IconTagProps> {
key={i}
type="button"
onClick={() => {
- const state = this.View.Document[iconMap(i).toString()];
+ const state = TagItem.docHasTag(this.View.Document, iconMap(i).toString()); // this.View.Document[iconMap(i).toString()];
this.setIconTag(iconMap(i), !state);
}}>
{this.getButtonIcon(this.View.Document, iconMap(i))}
diff --git a/src/client/views/nodes/formattedText/RichTextRules.ts b/src/client/views/nodes/formattedText/RichTextRules.ts
index 0ef67b4be..f58434906 100644
--- a/src/client/views/nodes/formattedText/RichTextRules.ts
+++ b/src/client/views/nodes/formattedText/RichTextRules.ts
@@ -406,7 +406,7 @@ export class RichTextRules {
this.Document[DocData].tags = new List<string>(tags);
this.Document._layout_showTags = true;
}
- const fieldView = state.schema.nodes.dashField.create({ fieldKey: '#' + tag });
+ const fieldView = state.schema.nodes.dashField.create({ fieldKey: tag.startsWith('@') ? tag.replace(/^@/, '') : '#' + tag });
return state.tr
.setSelection(new TextSelection(state.doc.resolve(start), state.doc.resolve(end)))
.replaceSelectionWith(fieldView, true)