@athenaintel/react 0.21.1 → 0.21.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -61,31 +61,36 @@ const TiptapText = ({ text }) => {
|
|
|
61
61
|
attributes: {
|
|
62
62
|
class: "prose prose-sm dark:prose-invert max-w-none focus:outline-none"
|
|
63
63
|
},
|
|
64
|
-
handleClick
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
64
|
+
// ProseMirror's `handleClick` fires on `mouseup`, where `preventDefault`
|
|
65
|
+
// cannot cancel the anchor's navigation; the native `click` event can.
|
|
66
|
+
handleDOMEvents: {
|
|
67
|
+
click: (_view, event) => {
|
|
68
|
+
var _a;
|
|
69
|
+
if (event.button !== 0 || event.defaultPrevented) {
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
const target = event.target;
|
|
73
|
+
const targetElement = target instanceof HTMLElement ? target : target instanceof Node ? target.parentElement : null;
|
|
74
|
+
if (!targetElement) {
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
const link = targetElement.closest("a[href]");
|
|
78
|
+
if (!(link instanceof HTMLAnchorElement)) {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
if (handleLinkClickRef.current({
|
|
82
|
+
href: link.getAttribute("href") ?? link.href,
|
|
83
|
+
linkText: link.textContent,
|
|
84
|
+
target: link.target,
|
|
85
|
+
nativeEvent: event
|
|
86
|
+
})) {
|
|
87
|
+
event.preventDefault();
|
|
88
|
+
return true;
|
|
89
|
+
}
|
|
90
|
+
event.preventDefault();
|
|
91
|
+
(_a = window.open(link.href, link.target || "_blank")) == null ? void 0 : _a.focus();
|
|
84
92
|
return true;
|
|
85
93
|
}
|
|
86
|
-
event.preventDefault();
|
|
87
|
-
(_a = window.open(link.href, link.target || "_blank")) == null ? void 0 : _a.focus();
|
|
88
|
-
return true;
|
|
89
94
|
}
|
|
90
95
|
}
|
|
91
96
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tiptap-text.cjs","sources":["../../src/chat/tiptap-text.tsx"],"sourcesContent":["import { useEditor, EditorContent } from \"@tiptap/react\";\nimport StarterKit from \"@tiptap/starter-kit\";\nimport Link from \"@tiptap/extension-link\";\nimport { Table } from \"@tiptap/extension-table\";\nimport { TableRow } from \"@tiptap/extension-table-row\";\nimport { TableCell } from \"@tiptap/extension-table-cell\";\nimport { TableHeader } from \"@tiptap/extension-table-header\";\nimport { Markdown } from \"tiptap-markdown\";\nimport type { FC } from \"react\";\nimport { useEffect, useRef } from \"react\";\nimport { MentionExtension } from \"../chat-ui/mentions/mention-extension\";\nimport { useAthenaLinkClickHandler } from \"./athena-citation-links\";\n\nconst extensions = [\n StarterKit.configure({\n codeBlock: {\n HTMLAttributes: {\n class: \"rounded-md bg-muted p-3 font-mono text-sm\",\n },\n },\n }),\n Link.configure({\n openOnClick: false,\n autolink: true,\n HTMLAttributes: {\n class: \"text-primary underline\",\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n },\n }),\n Table.configure({\n resizable: false,\n HTMLAttributes: {\n class: \"aui-table\",\n },\n }),\n TableRow,\n TableCell,\n TableHeader,\n Markdown.configure({\n html: true,\n tightLists: true,\n linkify: true,\n breaks: true,\n transformPastedText: false,\n transformCopiedText: false,\n }),\n MentionExtension,\n];\n\nexport const TiptapText: FC<{ text: string }> = ({ text }) => {\n const handleLinkClick = useAthenaLinkClickHandler();\n const handleLinkClickRef = useRef(handleLinkClick);\n handleLinkClickRef.current = handleLinkClick;\n\n const editor = useEditor({\n immediatelyRender: true,\n extensions,\n content: text,\n editable: false,\n editorProps: {\n attributes: {\n class: \"prose prose-sm dark:prose-invert max-w-none focus:outline-none\",\n },\n handleClick: (_view,
|
|
1
|
+
{"version":3,"file":"tiptap-text.cjs","sources":["../../src/chat/tiptap-text.tsx"],"sourcesContent":["import { useEditor, EditorContent } from \"@tiptap/react\";\nimport StarterKit from \"@tiptap/starter-kit\";\nimport Link from \"@tiptap/extension-link\";\nimport { Table } from \"@tiptap/extension-table\";\nimport { TableRow } from \"@tiptap/extension-table-row\";\nimport { TableCell } from \"@tiptap/extension-table-cell\";\nimport { TableHeader } from \"@tiptap/extension-table-header\";\nimport { Markdown } from \"tiptap-markdown\";\nimport type { FC } from \"react\";\nimport { useEffect, useRef } from \"react\";\nimport { MentionExtension } from \"../chat-ui/mentions/mention-extension\";\nimport { useAthenaLinkClickHandler } from \"./athena-citation-links\";\n\nconst extensions = [\n StarterKit.configure({\n codeBlock: {\n HTMLAttributes: {\n class: \"rounded-md bg-muted p-3 font-mono text-sm\",\n },\n },\n }),\n Link.configure({\n openOnClick: false,\n autolink: true,\n HTMLAttributes: {\n class: \"text-primary underline\",\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n },\n }),\n Table.configure({\n resizable: false,\n HTMLAttributes: {\n class: \"aui-table\",\n },\n }),\n TableRow,\n TableCell,\n TableHeader,\n Markdown.configure({\n html: true,\n tightLists: true,\n linkify: true,\n breaks: true,\n transformPastedText: false,\n transformCopiedText: false,\n }),\n MentionExtension,\n];\n\nexport const TiptapText: FC<{ text: string }> = ({ text }) => {\n const handleLinkClick = useAthenaLinkClickHandler();\n const handleLinkClickRef = useRef(handleLinkClick);\n handleLinkClickRef.current = handleLinkClick;\n\n const editor = useEditor({\n immediatelyRender: true,\n extensions,\n content: text,\n editable: false,\n editorProps: {\n attributes: {\n class: \"prose prose-sm dark:prose-invert max-w-none focus:outline-none\",\n },\n // ProseMirror's `handleClick` fires on `mouseup`, where `preventDefault`\n // cannot cancel the anchor's navigation; the native `click` event can.\n handleDOMEvents: {\n click: (_view, event) => {\n if (event.button !== 0 || event.defaultPrevented) {\n return false;\n }\n\n const target = event.target;\n const targetElement =\n target instanceof HTMLElement\n ? target\n : target instanceof Node\n ? target.parentElement\n : null;\n if (!targetElement) {\n return false;\n }\n\n const link = targetElement.closest(\"a[href]\");\n if (!(link instanceof HTMLAnchorElement)) {\n return false;\n }\n\n if (\n handleLinkClickRef.current({\n href: link.getAttribute(\"href\") ?? link.href,\n linkText: link.textContent,\n target: link.target,\n nativeEvent: event,\n })\n ) {\n event.preventDefault();\n return true;\n }\n\n event.preventDefault();\n window.open(link.href, link.target || \"_blank\")?.focus();\n return true;\n },\n },\n },\n });\n\n useEffect(() => {\n if (editor && text !== (editor.storage as any).markdown?.getMarkdown()) {\n editor.commands.setContent(text);\n }\n }, [text, editor]);\n\n return <EditorContent editor={editor} />;\n};\n"],"names":["Table","TableRow","TableCell","TableHeader","Markdown","MentionExtension","useAthenaLinkClickHandler","useRef","useEditor","useEffect","jsx","EditorContent"],"mappings":";;;;;;;;;;;;;;AAaA,MAAM,aAAa;AAAA,EACjB,WAAW,UAAU;AAAA,IACnB,WAAW;AAAA,MACT,gBAAgB;AAAA,QACd,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,EACF,CACD;AAAA,EACD,KAAK,UAAU;AAAA,IACb,aAAa;AAAA,IACb,UAAU;AAAA,IACV,gBAAgB;AAAA,MACd,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,KAAK;AAAA,IAAA;AAAA,EACP,CACD;AAAA,EACDA,MAAAA,MAAM,UAAU;AAAA,IACd,WAAW;AAAA,IACX,gBAAgB;AAAA,MACd,OAAO;AAAA,IAAA;AAAA,EACT,CACD;AAAA,EACDC,SAAAA;AAAAA,EACAC,UAAAA;AAAAA,EACAC,YAAAA;AAAAA,EACAC,eAAAA,SAAS,UAAU;AAAA,IACjB,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,qBAAqB;AAAA,IACrB,qBAAqB;AAAA,EAAA,CACtB;AAAA,EACDC,iBAAAA;AACF;AAEO,MAAM,aAAmC,CAAC,EAAE,WAAW;AAC5D,QAAM,kBAAkBC,oBAAAA,0BAAA;AACxB,QAAM,qBAAqBC,MAAAA,OAAO,eAAe;AACjD,qBAAmB,UAAU;AAE7B,QAAM,SAASC,QAAAA,UAAU;AAAA,IACvB,mBAAmB;AAAA,IACnB;AAAA,IACA,SAAS;AAAA,IACT,UAAU;AAAA,IACV,aAAa;AAAA,MACX,YAAY;AAAA,QACV,OAAO;AAAA,MAAA;AAAA;AAAA;AAAA,MAIT,iBAAiB;AAAA,QACf,OAAO,CAAC,OAAO,UAAU;;AACvB,cAAI,MAAM,WAAW,KAAK,MAAM,kBAAkB;AAChD,mBAAO;AAAA,UACT;AAEA,gBAAM,SAAS,MAAM;AACrB,gBAAM,gBACJ,kBAAkB,cACd,SACA,kBAAkB,OAChB,OAAO,gBACP;AACR,cAAI,CAAC,eAAe;AAClB,mBAAO;AAAA,UACT;AAEA,gBAAM,OAAO,cAAc,QAAQ,SAAS;AAC5C,cAAI,EAAE,gBAAgB,oBAAoB;AACxC,mBAAO;AAAA,UACT;AAEA,cACE,mBAAmB,QAAQ;AAAA,YACzB,MAAM,KAAK,aAAa,MAAM,KAAK,KAAK;AAAA,YACxC,UAAU,KAAK;AAAA,YACf,QAAQ,KAAK;AAAA,YACb,aAAa;AAAA,UAAA,CACd,GACD;AACA,kBAAM,eAAA;AACN,mBAAO;AAAA,UACT;AAEA,gBAAM,eAAA;AACN,uBAAO,KAAK,KAAK,MAAM,KAAK,UAAU,QAAQ,MAA9C,mBAAiD;AACjD,iBAAO;AAAA,QACT;AAAA,MAAA;AAAA,IACF;AAAA,EACF,CACD;AAEDC,QAAAA,UAAU,MAAM;;AACd,QAAI,UAAU,WAAU,YAAO,QAAgB,aAAvB,mBAAiC,gBAAe;AACtE,aAAO,SAAS,WAAW,IAAI;AAAA,IACjC;AAAA,EACF,GAAG,CAAC,MAAM,MAAM,CAAC;AAEjB,SAAOC,+BAACC,QAAAA,iBAAc,QAAgB;AACxC;;"}
|
package/dist/chat/tiptap-text.js
CHANGED
|
@@ -59,31 +59,36 @@ const TiptapText = ({ text }) => {
|
|
|
59
59
|
attributes: {
|
|
60
60
|
class: "prose prose-sm dark:prose-invert max-w-none focus:outline-none"
|
|
61
61
|
},
|
|
62
|
-
handleClick
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
62
|
+
// ProseMirror's `handleClick` fires on `mouseup`, where `preventDefault`
|
|
63
|
+
// cannot cancel the anchor's navigation; the native `click` event can.
|
|
64
|
+
handleDOMEvents: {
|
|
65
|
+
click: (_view, event) => {
|
|
66
|
+
var _a;
|
|
67
|
+
if (event.button !== 0 || event.defaultPrevented) {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
const target = event.target;
|
|
71
|
+
const targetElement = target instanceof HTMLElement ? target : target instanceof Node ? target.parentElement : null;
|
|
72
|
+
if (!targetElement) {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
const link = targetElement.closest("a[href]");
|
|
76
|
+
if (!(link instanceof HTMLAnchorElement)) {
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
if (handleLinkClickRef.current({
|
|
80
|
+
href: link.getAttribute("href") ?? link.href,
|
|
81
|
+
linkText: link.textContent,
|
|
82
|
+
target: link.target,
|
|
83
|
+
nativeEvent: event
|
|
84
|
+
})) {
|
|
85
|
+
event.preventDefault();
|
|
86
|
+
return true;
|
|
87
|
+
}
|
|
88
|
+
event.preventDefault();
|
|
89
|
+
(_a = window.open(link.href, link.target || "_blank")) == null ? void 0 : _a.focus();
|
|
82
90
|
return true;
|
|
83
91
|
}
|
|
84
|
-
event.preventDefault();
|
|
85
|
-
(_a = window.open(link.href, link.target || "_blank")) == null ? void 0 : _a.focus();
|
|
86
|
-
return true;
|
|
87
92
|
}
|
|
88
93
|
}
|
|
89
94
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tiptap-text.js","sources":["../../src/chat/tiptap-text.tsx"],"sourcesContent":["import { useEditor, EditorContent } from \"@tiptap/react\";\nimport StarterKit from \"@tiptap/starter-kit\";\nimport Link from \"@tiptap/extension-link\";\nimport { Table } from \"@tiptap/extension-table\";\nimport { TableRow } from \"@tiptap/extension-table-row\";\nimport { TableCell } from \"@tiptap/extension-table-cell\";\nimport { TableHeader } from \"@tiptap/extension-table-header\";\nimport { Markdown } from \"tiptap-markdown\";\nimport type { FC } from \"react\";\nimport { useEffect, useRef } from \"react\";\nimport { MentionExtension } from \"../chat-ui/mentions/mention-extension\";\nimport { useAthenaLinkClickHandler } from \"./athena-citation-links\";\n\nconst extensions = [\n StarterKit.configure({\n codeBlock: {\n HTMLAttributes: {\n class: \"rounded-md bg-muted p-3 font-mono text-sm\",\n },\n },\n }),\n Link.configure({\n openOnClick: false,\n autolink: true,\n HTMLAttributes: {\n class: \"text-primary underline\",\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n },\n }),\n Table.configure({\n resizable: false,\n HTMLAttributes: {\n class: \"aui-table\",\n },\n }),\n TableRow,\n TableCell,\n TableHeader,\n Markdown.configure({\n html: true,\n tightLists: true,\n linkify: true,\n breaks: true,\n transformPastedText: false,\n transformCopiedText: false,\n }),\n MentionExtension,\n];\n\nexport const TiptapText: FC<{ text: string }> = ({ text }) => {\n const handleLinkClick = useAthenaLinkClickHandler();\n const handleLinkClickRef = useRef(handleLinkClick);\n handleLinkClickRef.current = handleLinkClick;\n\n const editor = useEditor({\n immediatelyRender: true,\n extensions,\n content: text,\n editable: false,\n editorProps: {\n attributes: {\n class: \"prose prose-sm dark:prose-invert max-w-none focus:outline-none\",\n },\n handleClick: (_view,
|
|
1
|
+
{"version":3,"file":"tiptap-text.js","sources":["../../src/chat/tiptap-text.tsx"],"sourcesContent":["import { useEditor, EditorContent } from \"@tiptap/react\";\nimport StarterKit from \"@tiptap/starter-kit\";\nimport Link from \"@tiptap/extension-link\";\nimport { Table } from \"@tiptap/extension-table\";\nimport { TableRow } from \"@tiptap/extension-table-row\";\nimport { TableCell } from \"@tiptap/extension-table-cell\";\nimport { TableHeader } from \"@tiptap/extension-table-header\";\nimport { Markdown } from \"tiptap-markdown\";\nimport type { FC } from \"react\";\nimport { useEffect, useRef } from \"react\";\nimport { MentionExtension } from \"../chat-ui/mentions/mention-extension\";\nimport { useAthenaLinkClickHandler } from \"./athena-citation-links\";\n\nconst extensions = [\n StarterKit.configure({\n codeBlock: {\n HTMLAttributes: {\n class: \"rounded-md bg-muted p-3 font-mono text-sm\",\n },\n },\n }),\n Link.configure({\n openOnClick: false,\n autolink: true,\n HTMLAttributes: {\n class: \"text-primary underline\",\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n },\n }),\n Table.configure({\n resizable: false,\n HTMLAttributes: {\n class: \"aui-table\",\n },\n }),\n TableRow,\n TableCell,\n TableHeader,\n Markdown.configure({\n html: true,\n tightLists: true,\n linkify: true,\n breaks: true,\n transformPastedText: false,\n transformCopiedText: false,\n }),\n MentionExtension,\n];\n\nexport const TiptapText: FC<{ text: string }> = ({ text }) => {\n const handleLinkClick = useAthenaLinkClickHandler();\n const handleLinkClickRef = useRef(handleLinkClick);\n handleLinkClickRef.current = handleLinkClick;\n\n const editor = useEditor({\n immediatelyRender: true,\n extensions,\n content: text,\n editable: false,\n editorProps: {\n attributes: {\n class: \"prose prose-sm dark:prose-invert max-w-none focus:outline-none\",\n },\n // ProseMirror's `handleClick` fires on `mouseup`, where `preventDefault`\n // cannot cancel the anchor's navigation; the native `click` event can.\n handleDOMEvents: {\n click: (_view, event) => {\n if (event.button !== 0 || event.defaultPrevented) {\n return false;\n }\n\n const target = event.target;\n const targetElement =\n target instanceof HTMLElement\n ? target\n : target instanceof Node\n ? target.parentElement\n : null;\n if (!targetElement) {\n return false;\n }\n\n const link = targetElement.closest(\"a[href]\");\n if (!(link instanceof HTMLAnchorElement)) {\n return false;\n }\n\n if (\n handleLinkClickRef.current({\n href: link.getAttribute(\"href\") ?? link.href,\n linkText: link.textContent,\n target: link.target,\n nativeEvent: event,\n })\n ) {\n event.preventDefault();\n return true;\n }\n\n event.preventDefault();\n window.open(link.href, link.target || \"_blank\")?.focus();\n return true;\n },\n },\n },\n });\n\n useEffect(() => {\n if (editor && text !== (editor.storage as any).markdown?.getMarkdown()) {\n editor.commands.setContent(text);\n }\n }, [text, editor]);\n\n return <EditorContent editor={editor} />;\n};\n"],"names":[],"mappings":";;;;;;;;;;;;AAaA,MAAM,aAAa;AAAA,EACjB,WAAW,UAAU;AAAA,IACnB,WAAW;AAAA,MACT,gBAAgB;AAAA,QACd,OAAO;AAAA,MAAA;AAAA,IACT;AAAA,EACF,CACD;AAAA,EACD,KAAK,UAAU;AAAA,IACb,aAAa;AAAA,IACb,UAAU;AAAA,IACV,gBAAgB;AAAA,MACd,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,KAAK;AAAA,IAAA;AAAA,EACP,CACD;AAAA,EACD,MAAM,UAAU;AAAA,IACd,WAAW;AAAA,IACX,gBAAgB;AAAA,MACd,OAAO;AAAA,IAAA;AAAA,EACT,CACD;AAAA,EACD;AAAA,EACA;AAAA,EACA;AAAA,EACA,SAAS,UAAU;AAAA,IACjB,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,qBAAqB;AAAA,IACrB,qBAAqB;AAAA,EAAA,CACtB;AAAA,EACD;AACF;AAEO,MAAM,aAAmC,CAAC,EAAE,WAAW;AAC5D,QAAM,kBAAkB,0BAAA;AACxB,QAAM,qBAAqB,OAAO,eAAe;AACjD,qBAAmB,UAAU;AAE7B,QAAM,SAAS,UAAU;AAAA,IACvB,mBAAmB;AAAA,IACnB;AAAA,IACA,SAAS;AAAA,IACT,UAAU;AAAA,IACV,aAAa;AAAA,MACX,YAAY;AAAA,QACV,OAAO;AAAA,MAAA;AAAA;AAAA;AAAA,MAIT,iBAAiB;AAAA,QACf,OAAO,CAAC,OAAO,UAAU;;AACvB,cAAI,MAAM,WAAW,KAAK,MAAM,kBAAkB;AAChD,mBAAO;AAAA,UACT;AAEA,gBAAM,SAAS,MAAM;AACrB,gBAAM,gBACJ,kBAAkB,cACd,SACA,kBAAkB,OAChB,OAAO,gBACP;AACR,cAAI,CAAC,eAAe;AAClB,mBAAO;AAAA,UACT;AAEA,gBAAM,OAAO,cAAc,QAAQ,SAAS;AAC5C,cAAI,EAAE,gBAAgB,oBAAoB;AACxC,mBAAO;AAAA,UACT;AAEA,cACE,mBAAmB,QAAQ;AAAA,YACzB,MAAM,KAAK,aAAa,MAAM,KAAK,KAAK;AAAA,YACxC,UAAU,KAAK;AAAA,YACf,QAAQ,KAAK;AAAA,YACb,aAAa;AAAA,UAAA,CACd,GACD;AACA,kBAAM,eAAA;AACN,mBAAO;AAAA,UACT;AAEA,gBAAM,eAAA;AACN,uBAAO,KAAK,KAAK,MAAM,KAAK,UAAU,QAAQ,MAA9C,mBAAiD;AACjD,iBAAO;AAAA,QACT;AAAA,MAAA;AAAA,IACF;AAAA,EACF,CACD;AAED,YAAU,MAAM;;AACd,QAAI,UAAU,WAAU,YAAO,QAAgB,aAAvB,mBAAiC,gBAAe;AACtE,aAAO,SAAS,WAAW,IAAI;AAAA,IACjC;AAAA,EACF,GAAG,CAAC,MAAM,MAAM,CAAC;AAEjB,SAAO,oBAAC,iBAAc,QAAgB;AACxC;"}
|