@pstdio/ui 0.0.4 → 0.1.0

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.
Files changed (47) hide show
  1. package/dist/chat-ui.js +1212 -193
  2. package/dist/chat-ui.js.map +1 -1
  3. package/dist/components/chat-ui/index.d.ts +8 -5
  4. package/dist/components/chat-ui/tool-rendering/build-timeline.d.ts +2 -2
  5. package/dist/components/documentation/docs-changelog.d.ts +20 -0
  6. package/dist/components/documentation/docs-changelog.stories.d.ts +15 -0
  7. package/dist/components/documentation/docs-outline.d.ts +13 -0
  8. package/dist/components/documentation/docs-outline.stories.d.ts +16 -0
  9. package/dist/components/documentation/docs-pagination.d.ts +10 -0
  10. package/dist/components/documentation/docs-pagination.stories.d.ts +14 -0
  11. package/dist/components/documentation/docs-sidebar.d.ts +14 -0
  12. package/dist/components/documentation/docs-sidebar.stories.d.ts +7 -0
  13. package/dist/components/folder-picker-dialog.d.ts +25 -0
  14. package/dist/components/folder-picker-dialog.stories.d.ts +11 -0
  15. package/dist/components/panel-menu.d.ts +2 -0
  16. package/dist/components/panel-menu.stories.d.ts +1 -0
  17. package/dist/components/rich-text/markdown-editor/markdown-editor.d.ts +1 -0
  18. package/dist/components/rich-text/markdown-editor/markdown-editor.stories.d.ts +1 -0
  19. package/dist/components/rich-text/utils/inferResourceType.d.ts +1 -1
  20. package/dist/components/session-indicator.d.ts +1 -1
  21. package/dist/components/switch.d.ts +15 -0
  22. package/dist/components/switch.stories.d.ts +16 -0
  23. package/dist/components/{ticket-card.d.ts → tickets/ticket-card.d.ts} +2 -1
  24. package/dist/components/tickets/ticket-list.d.ts +23 -0
  25. package/dist/components/tickets/ticket-list.stories.d.ts +10 -0
  26. package/dist/empty-state-Bu1ocnPz.js +70 -0
  27. package/dist/empty-state-Bu1ocnPz.js.map +1 -0
  28. package/dist/index.d.ts +27 -0
  29. package/dist/index.js +1148 -305
  30. package/dist/index.js.map +1 -1
  31. package/dist/{rich-message-CiA3ripk.js → rich-message-CNDoACE7.js} +8 -7
  32. package/dist/{rich-message-CiA3ripk.js.map → rich-message-CNDoACE7.js.map} +1 -1
  33. package/dist/rich-text.js +267 -262
  34. package/dist/rich-text.js.map +1 -1
  35. package/dist/style.css +1 -1
  36. package/dist/theme/primitives/colors.d.ts +12 -28
  37. package/dist/theme/recipes/menu.d.ts +1 -1
  38. package/dist/theme/tokens/borders.d.ts +6 -6
  39. package/dist/theme/tokens/colors.d.ts +180 -0
  40. package/dist/{theme-9E0MRtZk.js → theme-C7CIuIPZ.js} +197 -115
  41. package/dist/theme-C7CIuIPZ.js.map +1 -0
  42. package/dist/theme.js +1 -1
  43. package/package.json +6 -8
  44. package/dist/theme-9E0MRtZk.js.map +0 -1
  45. /package/dist/components/{ticket-board.d.ts → tickets/ticket-board.d.ts} +0 -0
  46. /package/dist/components/{ticket-board.stories.d.ts → tickets/ticket-board.stories.d.ts} +0 -0
  47. /package/dist/components/{ticket-card.stories.d.ts → tickets/ticket-card.stories.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"rich-text.js","sources":["../src/components/rich-text/shared/plugins/LinkEditorPlugin/utils/setFloatingElemPos.ts","../src/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/FloatingTextFormatToolbarPlugin.tsx","../src/components/rich-text/collaborative-markdown-editor/awareness-cursors.tsx","../src/components/rich-text/collaborative-markdown-editor/collaborative-markdown-editor.tsx","../src/components/rich-text/markdown-editor/markdown-editor.tsx","../src/components/rich-text/utils/inferResourceType.ts","../src/components/rich-text/utils/mediaType.ts"],"sourcesContent":["const VERTICAL_GAP = 10;\nconst HORIZONTAL_OFFSET = 5;\n\nexport function setFloatingElemPos(\n targetRect: DOMRect | null,\n floatingElem: HTMLElement,\n anchorElem: HTMLElement,\n verticalGap: number = VERTICAL_GAP,\n horizontalOffset: number = HORIZONTAL_OFFSET,\n): void {\n const scrollerElem = anchorElem.parentElement;\n\n if (targetRect === null || !scrollerElem) {\n floatingElem.style.opacity = \"0\";\n floatingElem.style.transform = \"translate(-10000px, -10000px)\";\n return;\n }\n\n const floatingElemRect = floatingElem.getBoundingClientRect();\n const anchorElementRect = anchorElem.getBoundingClientRect();\n const editorScrollerRect = scrollerElem.getBoundingClientRect();\n\n let top = targetRect.top - verticalGap;\n let left = targetRect.left - horizontalOffset;\n\n if (top < editorScrollerRect.top) {\n top += floatingElemRect.height + targetRect.height + verticalGap * 2;\n }\n\n if (left + floatingElemRect.width > editorScrollerRect.right) {\n left = editorScrollerRect.right - floatingElemRect.width - horizontalOffset;\n }\n\n top -= anchorElementRect.top;\n left -= anchorElementRect.left;\n\n floatingElem.style.opacity = \"1\";\n floatingElem.style.transform = `translate(${left}px, ${top}px)`;\n}\n","import \"./FloatingTextFormatToolbarPlugin.css\";\n\nimport { IconButton, Stack, Text } from \"@chakra-ui/react\";\nimport {\n $isListNode,\n INSERT_ORDERED_LIST_COMMAND,\n INSERT_UNORDERED_LIST_COMMAND,\n REMOVE_LIST_COMMAND,\n} from \"@lexical/list\";\nimport { useLexicalComposerContext } from \"@lexical/react/LexicalComposerContext\";\nimport { $createHeadingNode, $isHeadingNode, type HeadingTagType } from \"@lexical/rich-text\";\nimport { $setBlocksType } from \"@lexical/selection\";\nimport { $findMatchingParent, mergeRegister } from \"@lexical/utils\";\nimport {\n $createParagraphNode,\n $getSelection,\n $isRangeSelection,\n $isRootOrShadowRoot,\n CLICK_COMMAND,\n COMMAND_PRIORITY_CRITICAL,\n COMMAND_PRIORITY_HIGH,\n FORMAT_TEXT_COMMAND,\n type LexicalEditor,\n type LexicalNode,\n SELECTION_CHANGE_COMMAND,\n} from \"lexical\";\nimport type React from \"react\";\nimport { type Dispatch, useCallback, useEffect, useRef, useState } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { Tooltip } from \"../../../../tooltip\";\nimport { setFloatingElemPos } from \"../LinkEditorPlugin/utils/setFloatingElemPos\";\n\n// Increase the vertical gap (negative places it below the selection) to avoid overlap\nconst GAP = -4;\n\nconst blockTypeToBlockName = {\n bullet: \"Bulleted List\",\n check: \"Check List\",\n code: \"Code Block\",\n h1: \"Heading 1\",\n h2: \"Heading 2\",\n h3: \"Heading 3\",\n h4: \"Heading 4\",\n h5: \"Heading 5\",\n h6: \"Heading 6\",\n number: \"Numbered List\",\n paragraph: \"Normal\",\n quote: \"Quote\",\n};\n\nconst toKnownBlockType = (type: string) => {\n return type in blockTypeToBlockName ? (type as keyof typeof blockTypeToBlockName) : null;\n};\n\nconst findSelectionElement = (anchorNode: LexicalNode) => {\n const rootMatch =\n anchorNode.getKey() === \"root\"\n ? anchorNode\n : $findMatchingParent(anchorNode, (node) => {\n const parent = node.getParent();\n return parent !== null && $isRootOrShadowRoot(parent);\n });\n\n return rootMatch ?? anchorNode.getTopLevelElementOrThrow();\n};\n\nconst resolveBlockTypeFromAnchor = (anchorNode: LexicalNode) => {\n const element = findSelectionElement(anchorNode);\n\n if ($isListNode(element)) {\n return element.getListType() as keyof typeof blockTypeToBlockName;\n }\n\n const parentList = $findMatchingParent(anchorNode, (node) => $isListNode(node));\n if (parentList !== null && $isListNode(parentList)) {\n return parentList.getListType() as keyof typeof blockTypeToBlockName;\n }\n\n const type = $isHeadingNode(element) ? element.getTag() : element.getType();\n return toKnownBlockType(type);\n};\n\nfunction FloatingTextToolbar({\n editor,\n anchorElem,\n isToolbarActive,\n setIsToolbarActive,\n}: {\n editor: LexicalEditor;\n anchorElem: HTMLElement;\n isToolbarActive: boolean;\n setIsToolbarActive: Dispatch<boolean>;\n}): React.JSX.Element {\n const editorRef = useRef<HTMLDivElement | null>(null);\n const [blockType, setBlockType] = useState<keyof typeof blockTypeToBlockName>(\"paragraph\");\n const [isBold, setIsBold] = useState(false);\n const [isItalic, setIsItalic] = useState(false);\n const [isUnderline, setIsUnderline] = useState(false);\n\n const formatHeading = useCallback(\n (headingSize: HeadingTagType) => {\n if (blockType !== headingSize) {\n editor.update(() => {\n const selection = $getSelection();\n $setBlocksType(selection, () => $createHeadingNode(headingSize));\n });\n } else {\n editor.update(() => {\n const selection = $getSelection();\n $setBlocksType(selection, () => $createParagraphNode());\n });\n }\n },\n [blockType, editor],\n );\n\n const formatBulletList = useCallback(() => {\n if (blockType !== \"bullet\") {\n editor.dispatchCommand(INSERT_UNORDERED_LIST_COMMAND, undefined);\n } else {\n editor.dispatchCommand(REMOVE_LIST_COMMAND, undefined);\n }\n }, [blockType, editor]);\n\n const formatNumberedList = useCallback(() => {\n if (blockType !== \"number\") {\n editor.dispatchCommand(INSERT_ORDERED_LIST_COMMAND, undefined);\n } else {\n editor.dispatchCommand(REMOVE_LIST_COMMAND, undefined);\n }\n }, [blockType, editor]);\n\n const $updateToolbar = useCallback(() => {\n const selection = $getSelection();\n if (!$isRangeSelection(selection)) return;\n\n setIsBold(selection.hasFormat(\"bold\"));\n setIsItalic(selection.hasFormat(\"italic\"));\n setIsUnderline(selection.hasFormat(\"underline\"));\n\n const nextBlockType = resolveBlockTypeFromAnchor(selection.anchor.getNode());\n if (nextBlockType) {\n setBlockType(nextBlockType);\n }\n }, []);\n\n const $updateFloatingToolbar = useCallback(() => {\n const selection = $getSelection();\n const editorElem = editorRef.current;\n const nativeSelection = window.getSelection();\n\n if (editorElem === null) {\n return;\n }\n\n const rootElement = editor.getRootElement();\n\n // Show floating toolbar when there's a non-collapsed text selection\n if (\n selection !== null &&\n $isRangeSelection(selection) &&\n !selection.isCollapsed() &&\n nativeSelection !== null &&\n !nativeSelection.isCollapsed &&\n rootElement !== null &&\n rootElement.contains(nativeSelection.anchorNode) &&\n editor.isEditable()\n ) {\n const domRect: DOMRect | undefined = nativeSelection.getRangeAt(0).getBoundingClientRect();\n\n if (domRect) {\n // Anchor to the bottom of the selection to avoid overlap with tall selections\n const bottomRect = new DOMRect(domRect.left, domRect.bottom, 0, 0);\n setFloatingElemPos(bottomRect, editorElem, anchorElem, GAP);\n }\n\n setIsToolbarActive(true);\n } else {\n if (rootElement !== null) {\n setFloatingElemPos(null, editorElem, anchorElem);\n }\n setIsToolbarActive(false);\n }\n\n $updateToolbar();\n\n return true;\n }, [anchorElem, editor, setIsToolbarActive, $updateToolbar]);\n\n useEffect(() => {\n const scrollerElem = anchorElem.parentElement;\n\n const update = () => {\n editor.getEditorState().read(() => {\n $updateFloatingToolbar();\n });\n };\n\n window.addEventListener(\"resize\", update);\n\n if (scrollerElem) {\n scrollerElem.addEventListener(\"scroll\", update);\n }\n\n return () => {\n window.removeEventListener(\"resize\", update);\n if (scrollerElem) {\n scrollerElem.removeEventListener(\"scroll\", update);\n }\n };\n }, [anchorElem.parentElement, editor, $updateFloatingToolbar]);\n\n useEffect(() => {\n return mergeRegister(\n editor.registerUpdateListener(({ editorState }) => {\n editorState.read(() => {\n $updateFloatingToolbar();\n });\n }),\n editor.registerCommand(\n SELECTION_CHANGE_COMMAND,\n (_payload) => {\n $updateFloatingToolbar();\n return false;\n },\n COMMAND_PRIORITY_CRITICAL,\n ),\n editor.registerCommand(\n CLICK_COMMAND,\n (_payload) => {\n const selection = $getSelection();\n if ($isRangeSelection(selection)) {\n $updateFloatingToolbar();\n }\n return false;\n },\n COMMAND_PRIORITY_HIGH,\n ),\n );\n }, [editor, $updateFloatingToolbar]);\n\n return (\n <div ref={editorRef} className={`floating-text-format-toolbar ${isToolbarActive ? \"active\" : \"\"}`}>\n <Stack direction=\"row\" gap=\"0.5\" alignItems=\"center\">\n {/* Text formatting buttons */}\n <Tooltip content=\"Bold\">\n <IconButton\n data-active={isBold || undefined}\n onClick={() => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, \"bold\");\n }}\n variant=\"ghost\"\n aria-label=\"Bold\"\n size=\"xs\"\n >\n <Text fontWeight=\"bold\" fontSize=\".75rem\">\n B\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Italic\">\n <IconButton\n data-active={isItalic || undefined}\n onClick={() => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, \"italic\");\n }}\n variant=\"ghost\"\n aria-label=\"Italic\"\n size=\"xs\"\n >\n <Text fontStyle=\"italic\" fontSize=\".75rem\">\n I\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Underline\">\n <IconButton\n data-active={isUnderline || undefined}\n onClick={() => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, \"underline\");\n }}\n variant=\"ghost\"\n aria-label=\"Underline\"\n size=\"xs\"\n >\n <Text textDecoration=\"underline\" fontSize=\".75rem\">\n U\n </Text>\n </IconButton>\n </Tooltip>\n\n {/* Separator */}\n <Stack as=\"span\" height=\"1rem\" mx=\"0.5\">\n <span\n style={{\n borderLeft: \"1px solid\",\n height: \"100%\",\n borderColor: \"var(--chakra-colors-border-muted)\",\n }}\n />\n </Stack>\n\n {/* Heading buttons */}\n <Tooltip content=\"Heading 1\">\n <IconButton\n data-active={blockType === \"h1\" || undefined}\n variant=\"ghost\"\n aria-label=\"Heading 1\"\n size=\"xs\"\n onClick={() => {\n formatHeading(\"h1\");\n }}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n H1\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Heading 2\">\n <IconButton\n data-active={blockType === \"h2\" || undefined}\n variant=\"ghost\"\n aria-label=\"Heading 2\"\n size=\"xs\"\n onClick={() => {\n formatHeading(\"h2\");\n }}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n H2\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Heading 3\">\n <IconButton\n data-active={blockType === \"h3\" || undefined}\n variant=\"ghost\"\n aria-label=\"Heading 3\"\n size=\"xs\"\n onClick={() => {\n formatHeading(\"h3\");\n }}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n H3\n </Text>\n </IconButton>\n </Tooltip>\n\n {/* Separator */}\n <Stack as=\"span\" height=\"1rem\" mx=\"0.5\">\n <span\n style={{\n borderLeft: \"1px solid\",\n height: \"100%\",\n borderColor: \"var(--chakra-colors-border-muted)\",\n }}\n />\n </Stack>\n\n {/* List buttons */}\n <Tooltip content=\"Bulleted List\">\n <IconButton\n data-active={blockType === \"bullet\" || undefined}\n variant=\"ghost\"\n aria-label=\"Bulleted List\"\n size=\"xs\"\n onClick={formatBulletList}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n •\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Numbered List\">\n <IconButton\n data-active={blockType === \"number\" || undefined}\n variant=\"ghost\"\n aria-label=\"Numbered List\"\n size=\"xs\"\n onClick={formatNumberedList}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n 1.\n </Text>\n </IconButton>\n </Tooltip>\n </Stack>\n </div>\n );\n}\n\nfunction useFloatingTextToolbar(editor: LexicalEditor, anchorElem: HTMLElement): React.JSX.Element | null {\n const [isToolbarActive, setIsToolbarActive] = useState(false);\n\n return createPortal(\n <FloatingTextToolbar\n editor={editor}\n anchorElem={anchorElem}\n isToolbarActive={isToolbarActive}\n setIsToolbarActive={setIsToolbarActive}\n />,\n anchorElem,\n );\n}\n\nexport function FloatingTextFormatToolbarPlugin({\n anchorElem = document.body,\n}: {\n anchorElem?: HTMLElement;\n}): React.JSX.Element | null {\n const [editor] = useLexicalComposerContext();\n return useFloatingTextToolbar(editor, anchorElem);\n}\n","/**\n * Injects CSS for Yjs awareness cursor rendering in the collaborative editor.\n * @lexical/yjs injects cursor elements with data-* attributes; this styles them.\n */\nexport function AwarenessCursorsCSS() {\n return (\n <style>\n {`\n .collaboration-cursor-container {\n position: relative;\n display: inline;\n }\n\n .collaboration-cursor-caret {\n position: absolute;\n top: 0;\n bottom: 0;\n width: 2px;\n pointer-events: none;\n }\n\n .collaboration-cursor-label {\n position: absolute;\n top: -18px;\n left: -2px;\n padding: 1px 6px;\n font-size: 11px;\n font-weight: 600;\n line-height: 16px;\n white-space: nowrap;\n border-radius: 4px 4px 4px 0;\n color: #fff;\n pointer-events: none;\n user-select: none;\n }\n\n .collaboration-cursor-selection {\n position: absolute;\n pointer-events: none;\n opacity: 0.25;\n }\n `}\n </style>\n );\n}\n","import \"../theme/rich-text-theme.css\";\n\nimport { Box, Flex } from \"@chakra-ui/react\";\nimport { LexicalCollaboration } from \"@lexical/react/LexicalCollaborationContext\";\nimport { CollaborationPluginV2__EXPERIMENTAL } from \"@lexical/react/LexicalCollaborationPlugin\";\nimport { LexicalComposer } from \"@lexical/react/LexicalComposer\";\nimport { LexicalErrorBoundary } from \"@lexical/react/LexicalErrorBoundary\";\nimport { HorizontalRulePlugin } from \"@lexical/react/LexicalHorizontalRulePlugin\";\nimport { LinkPlugin } from \"@lexical/react/LexicalLinkPlugin\";\nimport { ListPlugin } from \"@lexical/react/LexicalListPlugin\";\nimport { RichTextPlugin } from \"@lexical/react/LexicalRichTextPlugin\";\nimport type { Provider } from \"@lexical/yjs\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport { WebsocketProvider } from \"y-websocket\";\nimport * as Y from \"yjs\";\nimport { ContentEditable } from \"../shared/components/content-editable\";\nimport { editorNodes, editorTheme } from \"../shared/editor-config\";\nimport { ImportCodeBlocksPlugin } from \"../shared/plugins/CodePlugin/CodeBlockPlugin\";\nimport { EquationPlugin } from \"../shared/plugins/EquationPlugin/EquationPlugin\";\nimport { FloatingTextFormatToolbarPlugin } from \"../shared/plugins/FloatingTextFormatToolbarPlugin\";\nimport { AwarenessCursorsCSS } from \"./awareness-cursors\";\n\nexport interface CollaborativeMarkdownEditorProps {\n roomId: string;\n wsUrl: string;\n wsParams?: Record<string, string>;\n userName?: string;\n userColor?: string;\n placeholder?: string;\n}\n\nexport function CollaborativeMarkdownEditor(props: CollaborativeMarkdownEditorProps) {\n const { roomId, wsUrl, wsParams = {}, userName = \"Anonymous\", userColor = \"#30bced\", placeholder } = props;\n\n const editorContainerRef = useRef<HTMLDivElement>(null);\n const [floatingToolbarAnchorElem, setFloatingToolbarAnchorElem] = useState<HTMLElement | null>(null);\n const [synced, setSynced] = useState(false);\n\n // Create Y.Doc once per component instance (survives React StrictMode remount)\n const doc = useMemo(() => new Y.Doc(), []);\n\n // Create WebsocketProvider once per component instance.\n // useMemo ensures the same provider survives StrictMode's cleanup/remount cycle,\n // avoiding the broken binding issue in CollaborationPlugin v1 (see Lexical #6640).\n const provider = useMemo(() => {\n const p = new WebsocketProvider(wsUrl, roomId, doc, { params: wsParams, connect: false });\n\n p.on(\"sync\", (isSynced: boolean) => {\n if (isSynced) setSynced(true);\n });\n\n return p;\n }, [wsUrl, roomId, doc, wsParams]);\n\n // Manage provider connect/disconnect lifecycle\n useEffect(() => {\n provider.connect();\n\n return () => {\n provider.disconnect();\n };\n }, [provider]);\n\n useEffect(() => {\n setFloatingToolbarAnchorElem(editorContainerRef.current);\n }, []);\n\n const initialConfig = {\n namespace: \"COLLABORATIVE_EDITOR\",\n nodes: editorNodes,\n editorState: null,\n onError: (error: Error) => console.error(error),\n editable: true,\n theme: editorTheme,\n };\n\n return (\n <Flex\n ref={editorContainerRef}\n className=\"rich-text\"\n justifyContent=\"space-between\"\n width=\"100%\"\n maxWidth=\"100%\"\n height=\"100%\"\n position=\"relative\"\n direction=\"column\"\n overflow=\"hidden\"\n >\n <AwarenessCursorsCSS />\n\n <LexicalComposer initialConfig={initialConfig}>\n <LexicalCollaboration>\n <CollaborationPluginV2__EXPERIMENTAL\n id={roomId}\n doc={doc}\n provider={provider as unknown as Provider}\n __shouldBootstrapUnsafe={false}\n username={userName}\n cursorColor={userColor}\n />\n <LinkPlugin />\n <ListPlugin />\n <HorizontalRulePlugin />\n <ImportCodeBlocksPlugin />\n <EquationPlugin />\n <RichTextPlugin\n contentEditable={<ContentEditable fullWidth={false} />}\n placeholder={\n synced && placeholder ? (\n <Box\n position=\"absolute\"\n top=\"0\"\n color=\"fg.muted\"\n pointerEvents=\"none\"\n userSelect=\"none\"\n textStyle=\"paragraph/M/regular\"\n >\n {placeholder}\n </Box>\n ) : null\n }\n ErrorBoundary={LexicalErrorBoundary}\n />\n {floatingToolbarAnchorElem ? (\n <FloatingTextFormatToolbarPlugin anchorElem={floatingToolbarAnchorElem} />\n ) : null}\n </LexicalCollaboration>\n </LexicalComposer>\n </Flex>\n );\n}\n","import \"../theme/rich-text-theme.css\";\n\nimport { Box, Flex } from \"@chakra-ui/react\";\nimport { $convertFromMarkdownString, $convertToMarkdownString } from \"@lexical/markdown\";\nimport { LexicalComposer } from \"@lexical/react/LexicalComposer\";\nimport { LexicalErrorBoundary } from \"@lexical/react/LexicalErrorBoundary\";\nimport { HistoryPlugin } from \"@lexical/react/LexicalHistoryPlugin\";\nimport { HorizontalRulePlugin } from \"@lexical/react/LexicalHorizontalRulePlugin\";\nimport { LinkPlugin } from \"@lexical/react/LexicalLinkPlugin\";\nimport { ListPlugin } from \"@lexical/react/LexicalListPlugin\";\nimport { OnChangePlugin } from \"@lexical/react/LexicalOnChangePlugin\";\nimport { RichTextPlugin } from \"@lexical/react/LexicalRichTextPlugin\";\nimport { $getRoot } from \"lexical\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { ContentEditable } from \"../shared/components/content-editable\";\nimport { editorNodes, editorTheme, editorTransformers } from \"../shared/editor-config\";\nimport { ImportCodeBlocksPlugin } from \"../shared/plugins/CodePlugin/CodeBlockPlugin\";\nimport { EquationPlugin } from \"../shared/plugins/EquationPlugin/EquationPlugin\";\nimport { FloatingTextFormatToolbarPlugin } from \"../shared/plugins/FloatingTextFormatToolbarPlugin\";\nimport ToggleEditablePlugin from \"../shared/plugins/ToggleEditablePlugin\";\nimport { TreeViewPlugin } from \"../shared/plugins/TreeViewPlugin/TreeViewPlugin\";\nimport { splitFrontmatter } from \"../utils/markdown\";\n\nexport interface MarkdownEditorProps {\n debug?: boolean;\n defaultState: string;\n isEditable?: boolean;\n placeholder?: string;\n onChange?: (value: string) => void;\n}\n\nexport function MarkdownEditor(props: MarkdownEditorProps) {\n const { debug = false, defaultState = \"\", isEditable = false, placeholder, onChange } = props;\n const { frontmatter, body } = splitFrontmatter(defaultState);\n const shouldTrackChanges = isEditable && Boolean(onChange);\n const editorContainerRef = useRef<HTMLDivElement>(null);\n const [floatingToolbarAnchorElem, setFloatingToolbarAnchorElem] = useState<HTMLElement | null>(null);\n\n useEffect(() => {\n setFloatingToolbarAnchorElem(editorContainerRef.current);\n }, []);\n\n const initialConfig = {\n namespace: \"MARKDOWN_EDITOR\",\n nodes: editorNodes,\n editorState: () => {\n return $convertFromMarkdownString(body, editorTransformers, undefined, false);\n },\n onError: (error: Error) => console.error(error),\n editable: isEditable,\n theme: editorTheme,\n };\n\n return (\n <Flex\n ref={editorContainerRef}\n className=\"rich-text\"\n justifyContent=\"space-between\"\n width=\"100%\"\n maxWidth=\"100%\"\n height=\"100%\"\n position=\"relative\"\n direction=\"column\"\n overflow=\"hidden\"\n >\n <LexicalComposer initialConfig={initialConfig}>\n <HistoryPlugin />\n <LinkPlugin />\n <ListPlugin />\n <HorizontalRulePlugin />\n <ImportCodeBlocksPlugin />\n <EquationPlugin />\n <RichTextPlugin\n contentEditable={<ContentEditable fullWidth={false} />}\n placeholder={\n placeholder ? (\n <Box\n position=\"absolute\"\n top=\"0\"\n color=\"fg.muted\"\n pointerEvents=\"none\"\n userSelect=\"none\"\n textStyle=\"paragraph/M/regular\"\n >\n {placeholder}\n </Box>\n ) : null\n }\n ErrorBoundary={LexicalErrorBoundary}\n />\n {isEditable && floatingToolbarAnchorElem ? (\n <FloatingTextFormatToolbarPlugin anchorElem={floatingToolbarAnchorElem} />\n ) : null}\n {shouldTrackChanges ? (\n <OnChangePlugin\n ignoreSelectionChange\n ignoreHistoryMergeTagChange={false}\n onChange={(editorState) => {\n editorState.read(() => {\n const root = $getRoot();\n const markdownBody = $convertToMarkdownString(editorTransformers, root);\n onChange?.(frontmatter + markdownBody);\n });\n }}\n />\n ) : null}\n <ToggleEditablePlugin isEditable={isEditable} />\n {debug && <TreeViewPlugin />}\n </LexicalComposer>\n </Flex>\n );\n}\n","import type { ResourceType } from \"../types\";\n\nexport function inferResourceTypeFromMediaType(mediaType: string) {\n const normalized = mediaType.toLowerCase().trim();\n if (!normalized) return \"text\";\n\n if (normalized.startsWith(\"image/\")) return \"image\";\n if (normalized === \"application/pdf\") return \"pdf\";\n if (normalized === \"text/markdown\") return \"markdown\";\n if (normalized === \"text/csv\" || normalized === \"text/tab-separated-values\") return \"table\";\n if (normalized === \"application/json\") return \"json\";\n if (normalized.startsWith(\"text/\")) return \"text\";\n if (normalized.startsWith(\"application/\")) return \"text\";\n\n const fallback: ResourceType = \"text\";\n return fallback;\n}\n","const extensionToMediaType: Record<string, string> = {\n csv: \"text/csv\",\n tsv: \"text/tab-separated-values\",\n json: \"application/json\",\n md: \"text/markdown\",\n markdown: \"text/markdown\",\n txt: \"text/plain\",\n pdf: \"application/pdf\",\n png: \"image/png\",\n jpg: \"image/jpeg\",\n jpeg: \"image/jpeg\",\n gif: \"image/gif\",\n svg: \"image/svg+xml\",\n webp: \"image/webp\",\n mp4: \"video/mp4\",\n mov: \"video/quicktime\",\n ts: \"text/typescript\",\n tsx: \"text/typescript\",\n js: \"text/javascript\",\n jsx: \"text/javascript\",\n sql: \"text/x-sql\",\n yml: \"text/yaml\",\n yaml: \"text/yaml\",\n};\n\nexport function mediaTypeFromPath(path: string) {\n const cleaned = path.split(\"?\")[0]?.split(\"#\")[0] ?? \"\";\n const ext = cleaned.split(\".\").pop()?.toLowerCase();\n if (!ext) return null;\n return extensionToMediaType[ext] ?? null;\n}\n"],"names":["VERTICAL_GAP","HORIZONTAL_OFFSET","setFloatingElemPos","targetRect","floatingElem","anchorElem","verticalGap","horizontalOffset","scrollerElem","parentElement","style","opacity","transform","floatingElemRect","getBoundingClientRect","anchorElementRect","editorScrollerRect","top","left","height","width","right","GAP","blockTypeToBlockName","bullet","check","code","h1","h2","h3","h4","h5","h6","number","paragraph","quote","toKnownBlockType","type","findSelectionElement","anchorNode","getKey","$findMatchingParent","node","parent","getParent","$isRootOrShadowRoot","getTopLevelElementOrThrow","resolveBlockTypeFromAnchor","element","$isListNode","getListType","parentList","$isHeadingNode","getTag","getType","FloatingTextToolbar","t0","$","_c","editor","isToolbarActive","setIsToolbarActive","editorRef","useRef","blockType","setBlockType","useState","isBold","setIsBold","isItalic","setIsItalic","isUnderline","setIsUnderline","t1","headingSize","update","selection","$getSelection","$setBlocksType","$createHeadingNode","_temp2","formatHeading","t2","dispatchCommand","INSERT_UNORDERED_LIST_COMMAND","undefined","REMOVE_LIST_COMMAND","formatBulletList","t3","INSERT_ORDERED_LIST_COMMAND","formatNumberedList","t4","Symbol","for","selection_1","$isRangeSelection","hasFormat","nextBlockType","anchor","getNode","$updateToolbar","t5","selection_2","editorElem","current","nativeSelection","window","getSelection","rootElement","getRootElement","isCollapsed","contains","isEditable","domRect","getRangeAt","bottomRect","DOMRect","bottom","$updateFloatingToolbar","t6","t7","getEditorState","read","addEventListener","removeEventListener","useEffect","t8","t9","mergeRegister","registerUpdateListener","t10","editorState","registerCommand","SELECTION_CHANGE_COMMAND","_payload","COMMAND_PRIORITY_CRITICAL","CLICK_COMMAND","_payload_0","selection_3","COMMAND_PRIORITY_HIGH","t11","t12","FORMAT_TEXT_COMMAND","t13","Text","t14","Tooltip","jsx","IconButton","t15","t16","t17","t18","t19","t20","t21","t22","t23","Stack","borderLeft","borderColor","t24","t25","t26","t27","t28","t29","t30","t31","t32","t33","t34","t35","t36","t37","t38","t39","t40","t41","t42","t43","t44","selection_0","_temp","$createParagraphNode","useFloatingTextToolbar","createPortal","FloatingTextFormatToolbarPlugin","document","body","useLexicalComposerContext","AwarenessCursorsCSS","CollaborativeMarkdownEditor","props","roomId","wsUrl","wsParams","userName","userColor","placeholder","editorContainerRef","floatingToolbarAnchorElem","setFloatingToolbarAnchorElem","synced","setSynced","Y","Doc","doc","p","WebsocketProvider","params","connect","isSynced","on","provider","disconnect","namespace","nodes","editorNodes","onError","editable","theme","editorTheme","initialConfig","CollaborationPluginV2__EXPERIMENTAL","LinkPlugin","ListPlugin","HorizontalRulePlugin","ImportCodeBlocksPlugin","EquationPlugin","ContentEditable","Box","RichTextPlugin","LexicalErrorBoundary","Flex","LexicalComposer","jsxs","LexicalCollaboration","error","console","MarkdownEditor","debug","defaultState","onChange","splitFrontmatter","frontmatter","shouldTrackChanges","Boolean","$convertFromMarkdownString","editorTransformers","HistoryPlugin","OnChangePlugin","root","$getRoot","markdownBody","$convertToMarkdownString","ToggleEditablePlugin","TreeViewPlugin","inferResourceTypeFromMediaType","mediaType","normalized","toLowerCase","trim","startsWith","extensionToMediaType","csv","tsv","json","md","markdown","txt","pdf","png","jpg","jpeg","gif","svg","webp","mp4","mov","ts","tsx","js","sql","yml","yaml","mediaTypeFromPath","path","ext","split","pop"],"mappings":"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"}
1
+ {"version":3,"file":"rich-text.js","sources":["../src/components/rich-text/shared/plugins/LinkEditorPlugin/utils/setFloatingElemPos.ts","../src/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/FloatingTextFormatToolbarPlugin.tsx","../src/components/rich-text/collaborative-markdown-editor/awareness-cursors.tsx","../src/components/rich-text/collaborative-markdown-editor/collaborative-markdown-editor.tsx","../src/components/rich-text/markdown-editor/markdown-editor.tsx","../src/components/rich-text/utils/inferResourceType.ts","../src/components/rich-text/utils/mediaType.ts"],"sourcesContent":["const VERTICAL_GAP = 10;\nconst HORIZONTAL_OFFSET = 5;\n\nexport function setFloatingElemPos(\n targetRect: DOMRect | null,\n floatingElem: HTMLElement,\n anchorElem: HTMLElement,\n verticalGap: number = VERTICAL_GAP,\n horizontalOffset: number = HORIZONTAL_OFFSET,\n): void {\n const scrollerElem = anchorElem.parentElement;\n\n if (targetRect === null || !scrollerElem) {\n floatingElem.style.opacity = \"0\";\n floatingElem.style.transform = \"translate(-10000px, -10000px)\";\n return;\n }\n\n const floatingElemRect = floatingElem.getBoundingClientRect();\n const anchorElementRect = anchorElem.getBoundingClientRect();\n const editorScrollerRect = scrollerElem.getBoundingClientRect();\n\n let top = targetRect.top - verticalGap;\n let left = targetRect.left - horizontalOffset;\n\n if (top < editorScrollerRect.top) {\n top += floatingElemRect.height + targetRect.height + verticalGap * 2;\n }\n\n if (left + floatingElemRect.width > editorScrollerRect.right) {\n left = editorScrollerRect.right - floatingElemRect.width - horizontalOffset;\n }\n\n top -= anchorElementRect.top;\n left -= anchorElementRect.left;\n\n floatingElem.style.opacity = \"1\";\n floatingElem.style.transform = `translate(${left}px, ${top}px)`;\n}\n","import \"./FloatingTextFormatToolbarPlugin.css\";\n\nimport { IconButton, Stack, Text } from \"@chakra-ui/react\";\nimport {\n $isListNode,\n INSERT_ORDERED_LIST_COMMAND,\n INSERT_UNORDERED_LIST_COMMAND,\n REMOVE_LIST_COMMAND,\n} from \"@lexical/list\";\nimport { useLexicalComposerContext } from \"@lexical/react/LexicalComposerContext\";\nimport { $createHeadingNode, $isHeadingNode, type HeadingTagType } from \"@lexical/rich-text\";\nimport { $setBlocksType } from \"@lexical/selection\";\nimport { $findMatchingParent, mergeRegister } from \"@lexical/utils\";\nimport {\n $createParagraphNode,\n $getSelection,\n $isRangeSelection,\n $isRootOrShadowRoot,\n CLICK_COMMAND,\n COMMAND_PRIORITY_CRITICAL,\n COMMAND_PRIORITY_HIGH,\n FORMAT_TEXT_COMMAND,\n type LexicalEditor,\n type LexicalNode,\n SELECTION_CHANGE_COMMAND,\n} from \"lexical\";\nimport type React from \"react\";\nimport { type Dispatch, useCallback, useEffect, useRef, useState } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { Tooltip } from \"../../../../tooltip\";\nimport { setFloatingElemPos } from \"../LinkEditorPlugin/utils/setFloatingElemPos\";\n\n// Increase the vertical gap (negative places it below the selection) to avoid overlap\nconst GAP = -4;\n\nconst blockTypeToBlockName = {\n bullet: \"Bulleted List\",\n check: \"Check List\",\n code: \"Code Block\",\n h1: \"Heading 1\",\n h2: \"Heading 2\",\n h3: \"Heading 3\",\n h4: \"Heading 4\",\n h5: \"Heading 5\",\n h6: \"Heading 6\",\n number: \"Numbered List\",\n paragraph: \"Normal\",\n quote: \"Quote\",\n};\n\nconst toKnownBlockType = (type: string) => {\n return type in blockTypeToBlockName ? (type as keyof typeof blockTypeToBlockName) : null;\n};\n\nconst findSelectionElement = (anchorNode: LexicalNode) => {\n const rootMatch =\n anchorNode.getKey() === \"root\"\n ? anchorNode\n : $findMatchingParent(anchorNode, (node) => {\n const parent = node.getParent();\n return parent !== null && $isRootOrShadowRoot(parent);\n });\n\n return rootMatch ?? anchorNode.getTopLevelElementOrThrow();\n};\n\nconst resolveBlockTypeFromAnchor = (anchorNode: LexicalNode) => {\n const element = findSelectionElement(anchorNode);\n\n if ($isListNode(element)) {\n return element.getListType() as keyof typeof blockTypeToBlockName;\n }\n\n const parentList = $findMatchingParent(anchorNode, (node) => $isListNode(node));\n if (parentList !== null && $isListNode(parentList)) {\n return parentList.getListType() as keyof typeof blockTypeToBlockName;\n }\n\n const type = $isHeadingNode(element) ? element.getTag() : element.getType();\n return toKnownBlockType(type);\n};\n\nfunction FloatingTextToolbar({\n editor,\n anchorElem,\n isToolbarActive,\n setIsToolbarActive,\n}: {\n editor: LexicalEditor;\n anchorElem: HTMLElement;\n isToolbarActive: boolean;\n setIsToolbarActive: Dispatch<boolean>;\n}): React.JSX.Element {\n const editorRef = useRef<HTMLDivElement | null>(null);\n const [blockType, setBlockType] = useState<keyof typeof blockTypeToBlockName>(\"paragraph\");\n const [isBold, setIsBold] = useState(false);\n const [isItalic, setIsItalic] = useState(false);\n const [isUnderline, setIsUnderline] = useState(false);\n\n const formatHeading = useCallback(\n (headingSize: HeadingTagType) => {\n if (blockType !== headingSize) {\n editor.update(() => {\n const selection = $getSelection();\n $setBlocksType(selection, () => $createHeadingNode(headingSize));\n });\n } else {\n editor.update(() => {\n const selection = $getSelection();\n $setBlocksType(selection, () => $createParagraphNode());\n });\n }\n },\n [blockType, editor],\n );\n\n const formatBulletList = useCallback(() => {\n if (blockType !== \"bullet\") {\n editor.dispatchCommand(INSERT_UNORDERED_LIST_COMMAND, undefined);\n } else {\n editor.dispatchCommand(REMOVE_LIST_COMMAND, undefined);\n }\n }, [blockType, editor]);\n\n const formatNumberedList = useCallback(() => {\n if (blockType !== \"number\") {\n editor.dispatchCommand(INSERT_ORDERED_LIST_COMMAND, undefined);\n } else {\n editor.dispatchCommand(REMOVE_LIST_COMMAND, undefined);\n }\n }, [blockType, editor]);\n\n const $updateToolbar = useCallback(() => {\n const selection = $getSelection();\n if (!$isRangeSelection(selection)) return;\n\n setIsBold(selection.hasFormat(\"bold\"));\n setIsItalic(selection.hasFormat(\"italic\"));\n setIsUnderline(selection.hasFormat(\"underline\"));\n\n const nextBlockType = resolveBlockTypeFromAnchor(selection.anchor.getNode());\n if (nextBlockType) {\n setBlockType(nextBlockType);\n }\n }, []);\n\n const $updateFloatingToolbar = useCallback(() => {\n const selection = $getSelection();\n const editorElem = editorRef.current;\n const nativeSelection = window.getSelection();\n\n if (editorElem === null) {\n return;\n }\n\n const rootElement = editor.getRootElement();\n\n // Show floating toolbar when there's a non-collapsed text selection\n if (\n selection !== null &&\n $isRangeSelection(selection) &&\n !selection.isCollapsed() &&\n nativeSelection !== null &&\n !nativeSelection.isCollapsed &&\n rootElement !== null &&\n rootElement.contains(nativeSelection.anchorNode) &&\n editor.isEditable()\n ) {\n const domRect: DOMRect | undefined = nativeSelection.getRangeAt(0).getBoundingClientRect();\n\n if (domRect) {\n // Anchor to the bottom of the selection to avoid overlap with tall selections\n const bottomRect = new DOMRect(domRect.left, domRect.bottom, 0, 0);\n setFloatingElemPos(bottomRect, editorElem, anchorElem, GAP);\n }\n\n setIsToolbarActive(true);\n } else {\n if (rootElement !== null) {\n setFloatingElemPos(null, editorElem, anchorElem);\n }\n setIsToolbarActive(false);\n }\n\n $updateToolbar();\n\n return true;\n }, [anchorElem, editor, setIsToolbarActive, $updateToolbar]);\n\n useEffect(() => {\n const scrollerElem = anchorElem.parentElement;\n\n const update = () => {\n editor.getEditorState().read(() => {\n $updateFloatingToolbar();\n });\n };\n\n window.addEventListener(\"resize\", update);\n\n if (scrollerElem) {\n scrollerElem.addEventListener(\"scroll\", update);\n }\n\n return () => {\n window.removeEventListener(\"resize\", update);\n if (scrollerElem) {\n scrollerElem.removeEventListener(\"scroll\", update);\n }\n };\n }, [anchorElem.parentElement, editor, $updateFloatingToolbar]);\n\n useEffect(() => {\n return mergeRegister(\n editor.registerUpdateListener(({ editorState }) => {\n editorState.read(() => {\n $updateFloatingToolbar();\n });\n }),\n editor.registerCommand(\n SELECTION_CHANGE_COMMAND,\n (_payload) => {\n $updateFloatingToolbar();\n return false;\n },\n COMMAND_PRIORITY_CRITICAL,\n ),\n editor.registerCommand(\n CLICK_COMMAND,\n (_payload) => {\n const selection = $getSelection();\n if ($isRangeSelection(selection)) {\n $updateFloatingToolbar();\n }\n return false;\n },\n COMMAND_PRIORITY_HIGH,\n ),\n );\n }, [editor, $updateFloatingToolbar]);\n\n return (\n <div ref={editorRef} className={`floating-text-format-toolbar ${isToolbarActive ? \"active\" : \"\"}`}>\n <Stack direction=\"row\" gap=\"0.5\" alignItems=\"center\">\n {/* Text formatting buttons */}\n <Tooltip content=\"Bold\">\n <IconButton\n data-active={isBold || undefined}\n onClick={() => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, \"bold\");\n }}\n variant=\"ghost\"\n aria-label=\"Bold\"\n size=\"xs\"\n >\n <Text fontWeight=\"bold\" fontSize=\".75rem\">\n B\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Italic\">\n <IconButton\n data-active={isItalic || undefined}\n onClick={() => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, \"italic\");\n }}\n variant=\"ghost\"\n aria-label=\"Italic\"\n size=\"xs\"\n >\n <Text fontStyle=\"italic\" fontSize=\".75rem\">\n I\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Underline\">\n <IconButton\n data-active={isUnderline || undefined}\n onClick={() => {\n editor.dispatchCommand(FORMAT_TEXT_COMMAND, \"underline\");\n }}\n variant=\"ghost\"\n aria-label=\"Underline\"\n size=\"xs\"\n >\n <Text textDecoration=\"underline\" fontSize=\".75rem\">\n U\n </Text>\n </IconButton>\n </Tooltip>\n\n {/* Separator */}\n <Stack as=\"span\" height=\"1rem\" mx=\"0.5\">\n <span\n style={{\n borderLeft: \"1px solid\",\n height: \"100%\",\n borderColor: \"var(--chakra-colors-border-muted)\",\n }}\n />\n </Stack>\n\n {/* Heading buttons */}\n <Tooltip content=\"Heading 1\">\n <IconButton\n data-active={blockType === \"h1\" || undefined}\n variant=\"ghost\"\n aria-label=\"Heading 1\"\n size=\"xs\"\n onClick={() => {\n formatHeading(\"h1\");\n }}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n H1\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Heading 2\">\n <IconButton\n data-active={blockType === \"h2\" || undefined}\n variant=\"ghost\"\n aria-label=\"Heading 2\"\n size=\"xs\"\n onClick={() => {\n formatHeading(\"h2\");\n }}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n H2\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Heading 3\">\n <IconButton\n data-active={blockType === \"h3\" || undefined}\n variant=\"ghost\"\n aria-label=\"Heading 3\"\n size=\"xs\"\n onClick={() => {\n formatHeading(\"h3\");\n }}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n H3\n </Text>\n </IconButton>\n </Tooltip>\n\n {/* Separator */}\n <Stack as=\"span\" height=\"1rem\" mx=\"0.5\">\n <span\n style={{\n borderLeft: \"1px solid\",\n height: \"100%\",\n borderColor: \"var(--chakra-colors-border-muted)\",\n }}\n />\n </Stack>\n\n {/* List buttons */}\n <Tooltip content=\"Bulleted List\">\n <IconButton\n data-active={blockType === \"bullet\" || undefined}\n variant=\"ghost\"\n aria-label=\"Bulleted List\"\n size=\"xs\"\n onClick={formatBulletList}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n •\n </Text>\n </IconButton>\n </Tooltip>\n <Tooltip content=\"Numbered List\">\n <IconButton\n data-active={blockType === \"number\" || undefined}\n variant=\"ghost\"\n aria-label=\"Numbered List\"\n size=\"xs\"\n onClick={formatNumberedList}\n >\n <Text fontWeight=\"thin\" fontSize=\".8rem\">\n 1.\n </Text>\n </IconButton>\n </Tooltip>\n </Stack>\n </div>\n );\n}\n\nfunction useFloatingTextToolbar(editor: LexicalEditor, anchorElem: HTMLElement): React.JSX.Element | null {\n const [isToolbarActive, setIsToolbarActive] = useState(false);\n\n return createPortal(\n <FloatingTextToolbar\n editor={editor}\n anchorElem={anchorElem}\n isToolbarActive={isToolbarActive}\n setIsToolbarActive={setIsToolbarActive}\n />,\n anchorElem,\n );\n}\n\nexport function FloatingTextFormatToolbarPlugin({\n anchorElem = document.body,\n}: {\n anchorElem?: HTMLElement;\n}): React.JSX.Element | null {\n const [editor] = useLexicalComposerContext();\n return useFloatingTextToolbar(editor, anchorElem);\n}\n","/**\n * Injects CSS for Yjs awareness cursor rendering in the collaborative editor.\n * @lexical/yjs injects cursor elements with data-* attributes; this styles them.\n */\nexport function AwarenessCursorsCSS() {\n return (\n <style>\n {`\n .collaboration-cursor-container {\n position: relative;\n display: inline;\n }\n\n .collaboration-cursor-caret {\n position: absolute;\n top: 0;\n bottom: 0;\n width: 2px;\n pointer-events: none;\n }\n\n .collaboration-cursor-label {\n position: absolute;\n top: -18px;\n left: -2px;\n padding: 1px 6px;\n font-size: 11px;\n font-weight: 600;\n line-height: 16px;\n white-space: nowrap;\n border-radius: 4px 4px 4px 0;\n color: #fff;\n pointer-events: none;\n user-select: none;\n }\n\n .collaboration-cursor-selection {\n position: absolute;\n pointer-events: none;\n opacity: 0.25;\n }\n `}\n </style>\n );\n}\n","import \"../theme/rich-text-theme.css\";\n\nimport { Box, Flex } from \"@chakra-ui/react\";\nimport { LexicalCollaboration } from \"@lexical/react/LexicalCollaborationContext\";\nimport { CollaborationPluginV2__EXPERIMENTAL } from \"@lexical/react/LexicalCollaborationPlugin\";\nimport { LexicalComposer } from \"@lexical/react/LexicalComposer\";\nimport { LexicalErrorBoundary } from \"@lexical/react/LexicalErrorBoundary\";\nimport { HorizontalRulePlugin } from \"@lexical/react/LexicalHorizontalRulePlugin\";\nimport { LinkPlugin } from \"@lexical/react/LexicalLinkPlugin\";\nimport { ListPlugin } from \"@lexical/react/LexicalListPlugin\";\nimport { RichTextPlugin } from \"@lexical/react/LexicalRichTextPlugin\";\nimport type { Provider } from \"@lexical/yjs\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport { WebsocketProvider } from \"y-websocket\";\nimport * as Y from \"yjs\";\nimport { ContentEditable } from \"../shared/components/content-editable\";\nimport { editorNodes, editorTheme } from \"../shared/editor-config\";\nimport { ImportCodeBlocksPlugin } from \"../shared/plugins/CodePlugin/CodeBlockPlugin\";\nimport { EquationPlugin } from \"../shared/plugins/EquationPlugin/EquationPlugin\";\nimport { FloatingTextFormatToolbarPlugin } from \"../shared/plugins/FloatingTextFormatToolbarPlugin\";\nimport { AwarenessCursorsCSS } from \"./awareness-cursors\";\n\nexport interface CollaborativeMarkdownEditorProps {\n roomId: string;\n wsUrl: string;\n wsParams?: Record<string, string>;\n userName?: string;\n userColor?: string;\n placeholder?: string;\n}\n\nexport function CollaborativeMarkdownEditor(props: CollaborativeMarkdownEditorProps) {\n const { roomId, wsUrl, wsParams = {}, userName = \"Anonymous\", userColor = \"#30bced\", placeholder } = props;\n\n const editorContainerRef = useRef<HTMLDivElement>(null);\n const [floatingToolbarAnchorElem, setFloatingToolbarAnchorElem] = useState<HTMLElement | null>(null);\n const [synced, setSynced] = useState(false);\n\n // Create Y.Doc once per component instance (survives React StrictMode remount)\n const doc = useMemo(() => new Y.Doc(), []);\n\n // Create WebsocketProvider once per component instance.\n // useMemo ensures the same provider survives StrictMode's cleanup/remount cycle,\n // avoiding the broken binding issue in CollaborationPlugin v1 (see Lexical #6640).\n const provider = useMemo(() => {\n const p = new WebsocketProvider(wsUrl, roomId, doc, { params: wsParams, connect: false });\n\n p.on(\"sync\", (isSynced: boolean) => {\n if (isSynced) setSynced(true);\n });\n\n return p;\n }, [wsUrl, roomId, doc, wsParams]);\n\n // Manage provider connect/disconnect lifecycle\n useEffect(() => {\n provider.connect();\n\n return () => {\n provider.disconnect();\n };\n }, [provider]);\n\n useEffect(() => {\n setFloatingToolbarAnchorElem(editorContainerRef.current);\n }, []);\n\n const initialConfig = {\n namespace: \"COLLABORATIVE_EDITOR\",\n nodes: editorNodes,\n editorState: null,\n onError: (error: Error) => console.error(error),\n editable: true,\n theme: editorTheme,\n };\n\n return (\n <Flex\n ref={editorContainerRef}\n className=\"rich-text\"\n justifyContent=\"space-between\"\n width=\"100%\"\n maxWidth=\"100%\"\n height=\"100%\"\n position=\"relative\"\n direction=\"column\"\n overflow=\"visible\"\n >\n <AwarenessCursorsCSS />\n\n <LexicalComposer initialConfig={initialConfig}>\n <LexicalCollaboration>\n <CollaborationPluginV2__EXPERIMENTAL\n id={roomId}\n doc={doc}\n provider={provider as unknown as Provider}\n __shouldBootstrapUnsafe={false}\n username={userName}\n cursorColor={userColor}\n />\n <LinkPlugin />\n <ListPlugin />\n <HorizontalRulePlugin />\n <ImportCodeBlocksPlugin />\n <EquationPlugin />\n <RichTextPlugin\n contentEditable={<ContentEditable fullWidth={false} />}\n placeholder={\n synced && placeholder ? (\n <Box\n position=\"absolute\"\n top=\"0\"\n color=\"fg.muted\"\n pointerEvents=\"none\"\n userSelect=\"none\"\n textStyle=\"paragraph/M/regular\"\n >\n {placeholder}\n </Box>\n ) : null\n }\n ErrorBoundary={LexicalErrorBoundary}\n />\n {floatingToolbarAnchorElem ? (\n <FloatingTextFormatToolbarPlugin anchorElem={floatingToolbarAnchorElem} />\n ) : null}\n </LexicalCollaboration>\n </LexicalComposer>\n </Flex>\n );\n}\n","import \"../theme/rich-text-theme.css\";\n\nimport { Box, Flex } from \"@chakra-ui/react\";\nimport { $convertFromMarkdownString, $convertToMarkdownString } from \"@lexical/markdown\";\nimport { AutoFocusPlugin } from \"@lexical/react/LexicalAutoFocusPlugin\";\nimport { LexicalComposer } from \"@lexical/react/LexicalComposer\";\nimport { LexicalErrorBoundary } from \"@lexical/react/LexicalErrorBoundary\";\nimport { HistoryPlugin } from \"@lexical/react/LexicalHistoryPlugin\";\nimport { HorizontalRulePlugin } from \"@lexical/react/LexicalHorizontalRulePlugin\";\nimport { LinkPlugin } from \"@lexical/react/LexicalLinkPlugin\";\nimport { ListPlugin } from \"@lexical/react/LexicalListPlugin\";\nimport { OnChangePlugin } from \"@lexical/react/LexicalOnChangePlugin\";\nimport { RichTextPlugin } from \"@lexical/react/LexicalRichTextPlugin\";\nimport { $getRoot } from \"lexical\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { ContentEditable } from \"../shared/components/content-editable\";\nimport { editorNodes, editorTheme, editorTransformers } from \"../shared/editor-config\";\nimport { ImportCodeBlocksPlugin } from \"../shared/plugins/CodePlugin/CodeBlockPlugin\";\nimport { EquationPlugin } from \"../shared/plugins/EquationPlugin/EquationPlugin\";\nimport { FloatingTextFormatToolbarPlugin } from \"../shared/plugins/FloatingTextFormatToolbarPlugin\";\nimport ToggleEditablePlugin from \"../shared/plugins/ToggleEditablePlugin\";\nimport { TreeViewPlugin } from \"../shared/plugins/TreeViewPlugin/TreeViewPlugin\";\nimport { splitFrontmatter } from \"../utils/markdown\";\n\nexport interface MarkdownEditorProps {\n autoFocus?: boolean;\n debug?: boolean;\n defaultState: string;\n isEditable?: boolean;\n placeholder?: string;\n onChange?: (value: string) => void;\n}\n\nexport function MarkdownEditor(props: MarkdownEditorProps) {\n const { autoFocus = false, debug = false, defaultState = \"\", isEditable = false, placeholder, onChange } = props;\n const { frontmatter, body } = splitFrontmatter(defaultState);\n const shouldTrackChanges = isEditable && Boolean(onChange);\n const editorContainerRef = useRef<HTMLDivElement>(null);\n const [floatingToolbarAnchorElem, setFloatingToolbarAnchorElem] = useState<HTMLElement | null>(null);\n\n useEffect(() => {\n setFloatingToolbarAnchorElem(editorContainerRef.current);\n }, []);\n\n const initialConfig = {\n namespace: \"MARKDOWN_EDITOR\",\n nodes: editorNodes,\n editorState: () => {\n return $convertFromMarkdownString(body, editorTransformers, undefined, false);\n },\n onError: (error: Error) => console.error(error),\n editable: isEditable,\n theme: editorTheme,\n };\n\n return (\n <Flex\n ref={editorContainerRef}\n className=\"rich-text\"\n justifyContent=\"space-between\"\n width=\"100%\"\n maxWidth=\"100%\"\n height=\"100%\"\n position=\"relative\"\n direction=\"column\"\n overflow=\"visible\"\n >\n <LexicalComposer initialConfig={initialConfig}>\n {autoFocus ? <AutoFocusPlugin /> : null}\n <HistoryPlugin />\n <LinkPlugin />\n <ListPlugin />\n <HorizontalRulePlugin />\n <ImportCodeBlocksPlugin />\n <EquationPlugin />\n <RichTextPlugin\n contentEditable={<ContentEditable fullWidth={false} />}\n placeholder={\n placeholder ? (\n <Flex\n position=\"absolute\"\n top=\"0\"\n left=\"0\"\n right=\"0\"\n pointerEvents=\"none\"\n userSelect=\"none\"\n justifyContent=\"center\"\n >\n <Box width=\"100%\" maxWidth=\"720px\" color=\"fg.muted\" textStyle=\"paragraph/M/regular\">\n {placeholder}\n </Box>\n </Flex>\n ) : null\n }\n ErrorBoundary={LexicalErrorBoundary}\n />\n {isEditable && floatingToolbarAnchorElem ? (\n <FloatingTextFormatToolbarPlugin anchorElem={floatingToolbarAnchorElem} />\n ) : null}\n {shouldTrackChanges ? (\n <OnChangePlugin\n ignoreSelectionChange\n ignoreHistoryMergeTagChange={false}\n onChange={(editorState) => {\n editorState.read(() => {\n const root = $getRoot();\n const markdownBody = $convertToMarkdownString(editorTransformers, root);\n onChange?.(frontmatter + markdownBody);\n });\n }}\n />\n ) : null}\n <ToggleEditablePlugin isEditable={isEditable} />\n {debug && <TreeViewPlugin />}\n </LexicalComposer>\n </Flex>\n );\n}\n","import type { ResourceType } from \"../types\";\n\nexport function inferResourceTypeFromMediaType(mediaType: string) {\n const normalized = mediaType.toLowerCase().trim();\n if (!normalized) return \"text\";\n\n if (normalized.startsWith(\"image/\")) return \"image\";\n if (normalized === \"application/pdf\") return \"pdf\";\n if (normalized === \"text/markdown\") return \"markdown\";\n if (normalized === \"text/csv\" || normalized === \"text/tab-separated-values\") return \"table\";\n if (normalized === \"application/json\") return \"json\";\n if (normalized.startsWith(\"text/\")) return \"text\";\n if (normalized.startsWith(\"application/\")) return \"text\";\n\n const fallback: ResourceType = \"text\";\n return fallback;\n}\n","const extensionToMediaType: Record<string, string> = {\n csv: \"text/csv\",\n tsv: \"text/tab-separated-values\",\n json: \"application/json\",\n md: \"text/markdown\",\n markdown: \"text/markdown\",\n txt: \"text/plain\",\n pdf: \"application/pdf\",\n png: \"image/png\",\n jpg: \"image/jpeg\",\n jpeg: \"image/jpeg\",\n gif: \"image/gif\",\n svg: \"image/svg+xml\",\n webp: \"image/webp\",\n mp4: \"video/mp4\",\n mov: \"video/quicktime\",\n ts: \"text/typescript\",\n tsx: \"text/typescript\",\n js: \"text/javascript\",\n jsx: \"text/javascript\",\n sql: \"text/x-sql\",\n yml: \"text/yaml\",\n yaml: \"text/yaml\",\n};\n\nexport function mediaTypeFromPath(path: string) {\n const cleaned = path.split(\"?\")[0]?.split(\"#\")[0] ?? \"\";\n const ext = cleaned.split(\".\").pop()?.toLowerCase();\n if (!ext) return null;\n return extensionToMediaType[ext] ?? null;\n}\n"],"names":["VERTICAL_GAP","HORIZONTAL_OFFSET","setFloatingElemPos","targetRect","floatingElem","anchorElem","verticalGap","horizontalOffset","scrollerElem","parentElement","style","opacity","transform","floatingElemRect","getBoundingClientRect","anchorElementRect","editorScrollerRect","top","left","height","width","right","GAP","blockTypeToBlockName","bullet","check","code","h1","h2","h3","h4","h5","h6","number","paragraph","quote","toKnownBlockType","type","findSelectionElement","anchorNode","getKey","$findMatchingParent","node","parent","getParent","$isRootOrShadowRoot","getTopLevelElementOrThrow","resolveBlockTypeFromAnchor","element","$isListNode","getListType","parentList","$isHeadingNode","getTag","getType","FloatingTextToolbar","t0","$","_c","editor","isToolbarActive","setIsToolbarActive","editorRef","useRef","blockType","setBlockType","useState","isBold","setIsBold","isItalic","setIsItalic","isUnderline","setIsUnderline","t1","headingSize","update","selection","$getSelection","$setBlocksType","$createHeadingNode","_temp2","formatHeading","t2","dispatchCommand","INSERT_UNORDERED_LIST_COMMAND","undefined","REMOVE_LIST_COMMAND","formatBulletList","t3","INSERT_ORDERED_LIST_COMMAND","formatNumberedList","t4","Symbol","for","selection_1","$isRangeSelection","hasFormat","nextBlockType","anchor","getNode","$updateToolbar","t5","selection_2","editorElem","current","nativeSelection","window","getSelection","rootElement","getRootElement","isCollapsed","contains","isEditable","domRect","getRangeAt","bottomRect","DOMRect","bottom","$updateFloatingToolbar","t6","t7","getEditorState","read","addEventListener","removeEventListener","useEffect","t8","t9","mergeRegister","registerUpdateListener","t10","editorState","registerCommand","SELECTION_CHANGE_COMMAND","_payload","COMMAND_PRIORITY_CRITICAL","CLICK_COMMAND","_payload_0","selection_3","COMMAND_PRIORITY_HIGH","t11","t12","FORMAT_TEXT_COMMAND","t13","Text","t14","Tooltip","jsx","IconButton","t15","t16","t17","t18","t19","t20","t21","t22","t23","Stack","borderLeft","borderColor","t24","t25","t26","t27","t28","t29","t30","t31","t32","t33","t34","t35","t36","t37","t38","t39","t40","t41","t42","t43","t44","selection_0","_temp","$createParagraphNode","useFloatingTextToolbar","createPortal","FloatingTextFormatToolbarPlugin","document","body","useLexicalComposerContext","AwarenessCursorsCSS","CollaborativeMarkdownEditor","props","roomId","wsUrl","wsParams","userName","userColor","placeholder","editorContainerRef","floatingToolbarAnchorElem","setFloatingToolbarAnchorElem","synced","setSynced","Y","Doc","doc","p","WebsocketProvider","params","connect","isSynced","on","provider","disconnect","namespace","nodes","editorNodes","onError","editable","theme","editorTheme","initialConfig","CollaborationPluginV2__EXPERIMENTAL","LinkPlugin","ListPlugin","HorizontalRulePlugin","ImportCodeBlocksPlugin","EquationPlugin","ContentEditable","Box","RichTextPlugin","LexicalErrorBoundary","Flex","LexicalComposer","jsxs","LexicalCollaboration","error","console","MarkdownEditor","autoFocus","debug","defaultState","onChange","splitFrontmatter","frontmatter","shouldTrackChanges","Boolean","$convertFromMarkdownString","editorTransformers","AutoFocusPlugin","HistoryPlugin","OnChangePlugin","root","$getRoot","markdownBody","$convertToMarkdownString","ToggleEditablePlugin","TreeViewPlugin","inferResourceTypeFromMediaType","mediaType","normalized","toLowerCase","trim","startsWith","extensionToMediaType","csv","tsv","json","md","markdown","txt","pdf","png","jpg","jpeg","gif","svg","webp","mp4","mov","ts","tsx","js","sql","yml","yaml","mediaTypeFromPath","path","ext","split","pop"],"mappings":"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"}
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .rich-text__ltr{text-align:left}.rich-text__rtl{text-align:right}.rich-text{--rich-text-font-scale: 1;font-size:calc(1rem * var(--rich-text-font-scale))}.rich-text[data-rich-message=true]{--rich-text-font-scale: .8}.rich-text__paragraph{margin:0;position:relative}.rich-text__quote{margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-left:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem);font-size:calc(15px * var(--rich-text-font-scale));color:var(--chakra-colors-fg-muted);border-left:4px solid var(--chakra-colors-border);padding-left:16px}.rich-text__indent{--lexical-indent-base-value: 40px}.rich-text__textBold{font-weight:700}.rich-text__reference{font:inherit;border-bottom:1px dotted currentColor;opacity:.9;white-space:nowrap}.rich-text__textStrikethrough{text-decoration:line-through}.rich-text__textUnderlineStrikethrough{text-decoration:underline line-through}.rich-text__textSubscript{font-size:.8em;vertical-align:sub}.rich-text__textSuperscript{font-size:.8em;vertical-align:super}.rich-text__textCode{background-color:var(--chakra-colors-bg-code);padding:1px .25rem;font-family:var(--chakra-fonts-mono);font-size:.94em}.rich-text__link{color:var(--chakra-colors-blue-600);text-decoration:none;cursor:pointer}.rich-text__link:hover{text-decoration:underline}.rich-text__code{background-color:var(--chakra-colors-bg-muted);font-family:var(--chakra-fonts-mono);display:block;padding:8px 8px 8px 52px;line-height:1.53;font-size:calc(13px * var(--rich-text-font-scale));margin:8px 0;overflow-x:auto;position:relative;tab-size:2}.rich-text__code:before{content:attr(data-gutter);position:absolute;background-color:var(--chakra-colors-bg-subtle);left:0;top:0;bottom:0;border-right:1px solid var(--chakra-colors-border);padding:8px;color:var(--chakra-colors-fg-muted);white-space:pre-wrap;text-align:right;min-width:25px}.rich-text__table{border-collapse:collapse;border-spacing:0;color:var(--chakra-colors-fg);font-size:calc(var(--chakra-font-sizes-sm) * var(--rich-text-font-scale));line-height:21px;overflow-y:auto;overflow-x:auto;table-layout:fixed;width:max-content}.rich-text__tableSelection *::selection{background-color:transparent}.rich-text__tableSelected{outline:2px solid var(--chakra-colors-blue-500)}.rich-text__tableCell{border:1px solid var(--chakra-colors-border);vertical-align:top;text-align:start;padding:6px 8px;position:relative;outline:none}.rich-text__tableCellSortedIndicator{display:block;opacity:.5;position:absolute;bottom:0;left:0;width:100%;height:4px;background-color:var(--chakra-colors-bg)}.rich-text__tableCellResizer{position:absolute;right:-4px;height:100%;width:8px;cursor:ew-resize;z-index:10;top:0}.rich-text__tableCellHeader{background-color:var(--chakra-colors-bg-muted);font-weight:400;text-align:start}.rich-text__tableCellSelected{background-color:var(--chakra-colors-blue-100)}.rich-text__tableCellPrimarySelected{border:2px solid var(--chakra-colors-blue-500);display:block;height:calc(100% - 2px);position:absolute;width:calc(100% - 2px);left:-1px;top:-1px;z-index:2}.rich-text__tableCellEditing{box-shadow:var(--chakra-shadows-sm);border-radius:3px}.rich-text__tableAddColumns,.rich-text__tableAddRows{position:absolute;background-color:var(--chakra-colors-bg-muted);animation:table-controls .2s ease;border:0;cursor:pointer}.rich-text__tableAddColumns{top:0;width:20px;height:100%;right:-25px}.rich-text__tableAddColumns:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddRows{bottom:-25px;width:calc(100% - 25px);height:20px;left:0}.rich-text__tableAddRows:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddColumns:hover,.rich-text__tableAddRows:hover{background-color:var(--chakra-colors-blue-100)}@keyframes table-controls{0%{opacity:0}to{opacity:1}}.rich-text__tableCellResizeRuler{display:block;position:absolute;width:1px;background-color:var(--chakra-colors-blue-500);height:100%;top:0}.rich-text__tableCellActionButtonContainer{display:block;right:5px;top:6px;position:absolute;z-index:4;width:20px;height:20px}.rich-text__tableCellActionButton{background-color:var(--chakra-colors-bg-muted);display:block;border:0;border-radius:20px;width:20px;height:20px;color:var(--chakra-colors-fg);cursor:pointer}.rich-text__tableCellActionButton:hover{background-color:var(--chakra-colors-bg-subtle)}.rich-text__characterLimit{display:inline;background-color:var(--chakra-colors-red-100)}ul.rich-text__ul,ol.rich-text__ol,ol.rich-text__ol1,ol.rich-text__ol2,ol.rich-text__ol3,ol.rich-text__ol4,ol.rich-text__ol5{--rt-indent: var(--chakra-spacing-sm, .5rem);--rt-level: 1;list-style-position:outside;padding-inline-start:calc(var(--rt-indent) * var(--rt-level));margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}ul.rich-text__ul{list-style-type:disc}ol.rich-text__ol,ol.rich-text__ol1{list-style-type:decimal}ol.rich-text__ol2{list-style-type:upper-alpha}ol.rich-text__ol3{list-style-type:lower-alpha}ol.rich-text__ol4{list-style-type:upper-roman}ol.rich-text__ol5{list-style-type:lower-roman}li.rich-text__listItem{display:list-item;list-style-position:outside;margin-inline:var(--chakra-spacing-1, .25rem)}li.rich-text__listItemUnchecked,li.rich-text__listItemChecked{display:list-item;list-style-type:none}ul.rich-text__ul :where(ul,ol),ol.rich-text__ol :where(ul,ol),ol.rich-text__ol1 :where(ul,ol),ol.rich-text__ol2 :where(ul,ol),ol.rich-text__ol3 :where(ul,ol),ol.rich-text__ol4 :where(ul,ol),ol.rich-text__ol5 :where(ul,ol){--rt-level: calc(var(--rt-level) + 1);padding-inline-start:calc(var(--rt-indent) * var(--rt-level))}.rich-text__listItemUnchecked:before,.rich-text__listItemChecked:before{content:"";width:16px;height:16px;top:2px;left:0;cursor:pointer;display:block;background-size:cover;position:absolute}.rich-text__listItemUnchecked[dir=rtl]:before,.rich-text__listItemChecked[dir=rtl]:before{left:auto;right:0}.rich-text__listItemUnchecked:focus:before,.rich-text__listItemChecked:focus:before{box-shadow:0 0 0 2px var(--chakra-colors-blue-200);border-radius:2px}.rich-text__listItemUnchecked:before{border:1px solid var(--chakra-colors-gray-400);border-radius:2px}.rich-text__listItemChecked:before{border:1px solid var(--chakra-colors-blue-500);border-radius:2px;background-color:var(--chakra-colors-blue-500);background-repeat:no-repeat}.rich-text__listItemChecked:after{content:"";cursor:pointer;border-color:var(--chakra-colors-bg, var(--chakra-colors-bg));border-style:solid;position:absolute;display:block;top:6px;width:3px;left:7px;right:7px;height:6px;transform:rotate(45deg);border-width:0 2px 2px 0}.rich-text__nestedListItem{list-style-type:inherit}.rich-text__nestedListItem:before,.rich-text__nestedListItem:after{display:none}.rich-text__tokenComment{color:var(--chakra-colors-gray-500)}.rich-text__tokenPunctuation{color:var(--chakra-colors-gray-400)}.rich-text__tokenProperty{color:var(--chakra-colors-purple-600)}.rich-text__tokenSelector{color:var(--chakra-colors-green-600)}.rich-text__tokenOperator{color:var(--chakra-colors-orange-600)}.rich-text__tokenAttr{color:var(--chakra-colors-blue-600)}.rich-text__tokenVariable{color:var(--chakra-colors-yellow-600)}.rich-text__tokenFunction{color:var(--chakra-colors-pink-600)}.rich-text__mark{background:var(--chakra-colors-yellow-100);border-bottom:2px solid var(--chakra-colors-yellow-200);padding-bottom:2px}.rich-text__markOverlap{background:var(--chakra-colors-yellow-200);border-bottom:2px solid var(--chakra-colors-yellow-300)}.rich-text__mark.selected{background:var(--chakra-colors-yellow-300);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__markOverlap.selected{background:var(--chakra-colors-yellow-400);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__layoutContainer{display:grid;gap:var(--chakra-spacing-2, .5rem)}.rich-text__layoutItem{border-radius:var(--chakra-radii-sm)}.rich-text__layoutItem>:first-child{margin-top:0;margin-bottom:0}.draggable-block-demo__row{display:flex;gap:var(--chakra-spacing-3, .75rem);padding-block:var(--chakra-spacing-2, .5rem);padding-inline:var(--chakra-spacing-4, 1rem);position:relative;transition:box-shadow .14s ease}.rich-text__row{border-radius:var(--chakra-radii-lg)}.draggable-block-demo__row:focus-within{box-shadow:0 0 0 2px var(--chakra-colors-blue-200)}.draggable-block-demo__content,.rich-text__content{position:relative;flex:1 1 0;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.draggable-block-demo__content--empty{color:var(--chakra-colors-fg-muted);border-style:dashed;background:var(--chakra-colors-bg-subtle)}.draggable-block-demo__handle-slot{position:absolute;inset:0;width:0;height:0;pointer-events:none}.draggable-block-demo__handle-controls{position:absolute;pointer-events:none;opacity:0;transform:translate(-10000px,-10000px);z-index:11;display:flex;flex-direction:column;align-items:center;gap:8px}.draggable-block-demo__floating-handle,.draggable-block-demo__delete-button{pointer-events:auto}.draggable-block-demo__floating-handle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-sm);cursor:grab;transition:box-shadow .12s ease,transform .12s ease}.draggable-block-demo__floating-handle:active{cursor:grabbing}.draggable-block-demo__handle-icon{margin-left:-4px;display:inline-block;font-size:calc(12px * var(--rich-text-font-scale));letter-spacing:-4px;-webkit-user-select:none;user-select:none}.draggable-block-demo__delete-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-red-200);background:var(--chakra-colors-red-50);color:var(--chakra-colors-red-600);cursor:pointer;box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,border-color .12s ease}.draggable-block-demo__delete-button:hover{background:var(--chakra-colors-red-100);border-color:var(--chakra-colors-red-300)}.draggable-block-demo__delete-icon{font-size:calc(16px * var(--rich-text-font-scale));line-height:1;-webkit-user-select:none;user-select:none}.draggable-block-demo__gap{position:absolute;left:0;width:100%;height:28px;display:flex;justify-content:center;align-items:center;pointer-events:auto;opacity:0;transition:opacity .12s ease}.draggable-block-demo__gap-line{width:100%;border-top:1px dashed var(--chakra-colors-border);position:absolute;top:50%;transform:translateY(-50%)}.draggable-block-demo__gap-button{pointer-events:auto;border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);border-radius:999px;width:20px;height:20px;font-size:calc(18px * var(--rich-text-font-scale));line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,color .12s ease}.draggable-block-demo__gap:hover,.draggable-block-demo__gap.is-active{opacity:1}.draggable-block-demo__gap-button:hover{background:var(--chakra-colors-bg-subtle);color:var(--chakra-colors-fg)}.draggable-block-demo__indicator{position:absolute;background:var(--chakra-colors-blue-500);pointer-events:none;border-radius:2px;z-index:12}.draggable-block-demo__indicator--horizontal{height:2px}.draggable-block-demo__indicator--vertical{width:2px}.rich-text__h1{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-5, 1.5rem);margin-bottom:var(--chakra-spacing-4, 1rem)}.rich-text__h1_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-2, .5rem)}.rich-text__h2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__h2_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem);margin-bottom:var(--chakra-spacing-1, .125rem)}.rich-text__h3{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__h3_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem)}.rich-text__p{font-family:var(--chakra-fonts-body);letter-spacing:.14px;margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__p:first-child{margin-top:0}.rich-text__p:only-child{margin-bottom:0}.rich-text__p2{font-family:var(--chakra-fonts-body);letter-spacing:.14px;margin:0}.rich-text__textUnderline{text-decoration:underline}.rich-text__textItalic{font-style:italic}span.editor-equation{display:inline-block}.editor-equation span{cursor:inherit}.editor-equation{-webkit-user-select:none;user-select:none}.katex-display{overflow-x:auto;overflow-y:hidden}.floating-text-format-toolbar{display:flex;position:absolute;top:0;left:0;z-index:1000;opacity:0;background-color:var(--chakra-colors-bg);border-radius:8px;border:1px solid var(--chakra-colors-border-secondary);box-shadow:0 5px 10px #0000001a;transition:opacity .2s;will-change:transform;padding:4px;gap:2px}.floating-text-format-toolbar.active{opacity:1}.floating-text-format-toolbar button[data-active]{background-color:var(--chakra-colors-background-accent-primary-light);color:var(--chakra-colors-text-selectable-primary)}.rich-text__p--no-margin{margin:0}
1
+ .rich-text__ltr{text-align:left}.rich-text__rtl{text-align:right}.rich-text{--rich-text-font-scale: 1;font-size:calc(1rem * var(--rich-text-font-scale))}.rich-text[data-rich-message=true]{--rich-text-font-scale: .8}.rich-text__paragraph{margin:0;position:relative}.rich-text__quote{margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-left:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem);font-size:calc(15px * var(--rich-text-font-scale));color:var(--chakra-colors-fg-muted);border-left:4px solid var(--chakra-colors-border);padding-left:16px}.rich-text__indent{--lexical-indent-base-value: 40px}.rich-text__textBold{font-weight:700}.rich-text__reference{font:inherit;border-bottom:1px dotted currentColor;opacity:.9;white-space:nowrap}.rich-text__textStrikethrough{text-decoration:line-through}.rich-text__textUnderlineStrikethrough{text-decoration:underline line-through}.rich-text__textSubscript{font-size:.8em;vertical-align:sub}.rich-text__textSuperscript{font-size:.8em;vertical-align:super}.rich-text__textCode{background-color:var(--chakra-colors-bg-code);padding:1px .25rem;font-family:var(--chakra-fonts-mono);font-size:.94em}.rich-text__link{color:var(--chakra-colors-blue-600);text-decoration:none;cursor:pointer}.rich-text__link:hover{text-decoration:underline}.rich-text__code{background-color:var(--chakra-colors-bg-muted);font-family:var(--chakra-fonts-mono);display:block;padding:8px 8px 8px 52px;line-height:1.53;font-size:calc(13px * var(--rich-text-font-scale));margin:8px 0;overflow-x:auto;position:relative;tab-size:2}.rich-text__code:before{content:attr(data-gutter);position:absolute;background-color:var(--chakra-colors-bg-subtle);left:0;top:0;bottom:0;border-right:1px solid var(--chakra-colors-border);padding:8px;color:var(--chakra-colors-fg-muted);white-space:pre-wrap;text-align:right;min-width:25px}.rich-text__table{border-collapse:collapse;border-spacing:0;color:var(--chakra-colors-fg);font-size:calc(var(--chakra-font-sizes-sm) * var(--rich-text-font-scale));line-height:21px;overflow-y:auto;overflow-x:auto;table-layout:fixed;width:max-content}.rich-text__tableSelection *::selection{background-color:transparent}.rich-text__tableSelected{outline:2px solid var(--chakra-colors-blue-500)}.rich-text__tableCell{border:1px solid var(--chakra-colors-border);vertical-align:top;text-align:start;padding:6px 8px;position:relative;outline:none}.rich-text__tableCellSortedIndicator{display:block;opacity:.5;position:absolute;bottom:0;left:0;width:100%;height:4px;background-color:var(--chakra-colors-bg)}.rich-text__tableCellResizer{position:absolute;right:-4px;height:100%;width:8px;cursor:ew-resize;z-index:10;top:0}.rich-text__tableCellHeader{background-color:var(--chakra-colors-bg-muted);font-weight:400;text-align:start}.rich-text__tableCellSelected{background-color:var(--chakra-colors-blue-100)}.rich-text__tableCellPrimarySelected{border:2px solid var(--chakra-colors-blue-500);display:block;height:calc(100% - 2px);position:absolute;width:calc(100% - 2px);left:-1px;top:-1px;z-index:2}.rich-text__tableCellEditing{box-shadow:var(--chakra-shadows-sm);border-radius:3px}.rich-text__tableAddColumns,.rich-text__tableAddRows{position:absolute;background-color:var(--chakra-colors-bg-muted);animation:table-controls .2s ease;border:0;cursor:pointer}.rich-text__tableAddColumns{top:0;width:20px;height:100%;right:-25px}.rich-text__tableAddColumns:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddRows{bottom:-25px;width:calc(100% - 25px);height:20px;left:0}.rich-text__tableAddRows:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddColumns:hover,.rich-text__tableAddRows:hover{background-color:var(--chakra-colors-blue-100)}@keyframes table-controls{0%{opacity:0}to{opacity:1}}.rich-text__tableCellResizeRuler{display:block;position:absolute;width:1px;background-color:var(--chakra-colors-blue-500);height:100%;top:0}.rich-text__tableCellActionButtonContainer{display:block;right:5px;top:6px;position:absolute;z-index:4;width:20px;height:20px}.rich-text__tableCellActionButton{background-color:var(--chakra-colors-bg-muted);display:block;border:0;border-radius:20px;width:20px;height:20px;color:var(--chakra-colors-fg);cursor:pointer}.rich-text__tableCellActionButton:hover{background-color:var(--chakra-colors-bg-subtle)}.rich-text__characterLimit{display:inline;background-color:var(--chakra-colors-red-100)}ul.rich-text__ul,ol.rich-text__ol,ol.rich-text__ol1,ol.rich-text__ol2,ol.rich-text__ol3,ol.rich-text__ol4,ol.rich-text__ol5{--rt-indent: var(--chakra-spacing-sm, .5rem);--rt-level: 1;list-style-position:outside;padding-inline-start:calc(var(--rt-indent) * var(--rt-level));margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}ul.rich-text__ul{list-style-type:disc}ol.rich-text__ol,ol.rich-text__ol1{list-style-type:decimal}ol.rich-text__ol2{list-style-type:upper-alpha}ol.rich-text__ol3{list-style-type:lower-alpha}ol.rich-text__ol4{list-style-type:upper-roman}ol.rich-text__ol5{list-style-type:lower-roman}li.rich-text__listItem{display:list-item;list-style-position:outside;margin-inline:var(--chakra-spacing-1, .25rem)}li.rich-text__listItemUnchecked,li.rich-text__listItemChecked{display:list-item;list-style-type:none}ul.rich-text__ul :where(ul,ol),ol.rich-text__ol :where(ul,ol),ol.rich-text__ol1 :where(ul,ol),ol.rich-text__ol2 :where(ul,ol),ol.rich-text__ol3 :where(ul,ol),ol.rich-text__ol4 :where(ul,ol),ol.rich-text__ol5 :where(ul,ol){--rt-level: calc(var(--rt-level) + 1);padding-inline-start:calc(var(--rt-indent) * var(--rt-level))}.rich-text__listItemUnchecked:before,.rich-text__listItemChecked:before{content:"";width:16px;height:16px;top:2px;left:0;cursor:pointer;display:block;background-size:cover;position:absolute}.rich-text__listItemUnchecked[dir=rtl]:before,.rich-text__listItemChecked[dir=rtl]:before{left:auto;right:0}.rich-text__listItemUnchecked:focus:before,.rich-text__listItemChecked:focus:before{box-shadow:0 0 0 2px var(--chakra-colors-blue-200);border-radius:2px}.rich-text__listItemUnchecked:before{border:1px solid var(--chakra-colors-gray-400);border-radius:2px}.rich-text__listItemChecked:before{border:1px solid var(--chakra-colors-blue-500);border-radius:2px;background-color:var(--chakra-colors-blue-500);background-repeat:no-repeat}.rich-text__listItemChecked:after{content:"";cursor:pointer;border-color:var(--chakra-colors-bg, var(--chakra-colors-bg));border-style:solid;position:absolute;display:block;top:6px;width:3px;left:7px;right:7px;height:6px;transform:rotate(45deg);border-width:0 2px 2px 0}.rich-text__nestedListItem{list-style-type:inherit}.rich-text__nestedListItem:before,.rich-text__nestedListItem:after{display:none}.rich-text__tokenComment{color:var(--chakra-colors-gray-500)}.rich-text__tokenPunctuation{color:var(--chakra-colors-gray-400)}.rich-text__tokenProperty{color:var(--chakra-colors-purple-600)}.rich-text__tokenSelector{color:var(--chakra-colors-green-600)}.rich-text__tokenOperator{color:var(--chakra-colors-orange-600)}.rich-text__tokenAttr{color:var(--chakra-colors-blue-600)}.rich-text__tokenVariable{color:var(--chakra-colors-yellow-600)}.rich-text__tokenFunction{color:var(--chakra-colors-pink-600)}.rich-text__mark{background:var(--chakra-colors-yellow-100);border-bottom:2px solid var(--chakra-colors-yellow-200);padding-bottom:2px}.rich-text__markOverlap{background:var(--chakra-colors-yellow-200);border-bottom:2px solid var(--chakra-colors-yellow-300)}.rich-text__mark.selected{background:var(--chakra-colors-yellow-300);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__markOverlap.selected{background:var(--chakra-colors-yellow-400);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__layoutContainer{display:grid;gap:var(--chakra-spacing-2, .5rem)}.rich-text__layoutItem{border-radius:var(--chakra-radii-sm)}.rich-text__layoutItem>:first-child{margin-top:0;margin-bottom:0}.draggable-block-demo__row{display:flex;gap:var(--chakra-spacing-3, .75rem);padding-block:var(--chakra-spacing-2, .5rem);padding-inline:var(--chakra-spacing-4, 1rem);position:relative;transition:box-shadow .14s ease}.rich-text__row{border-radius:var(--chakra-radii-lg)}.draggable-block-demo__row:focus-within{box-shadow:0 0 0 2px var(--chakra-colors-blue-200)}.draggable-block-demo__content,.rich-text__content{position:relative;flex:1 1 0;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.draggable-block-demo__content--empty{color:var(--chakra-colors-fg-muted);border-style:dashed;background:var(--chakra-colors-bg-subtle)}.draggable-block-demo__handle-slot{position:absolute;inset:0;width:0;height:0;pointer-events:none}.draggable-block-demo__handle-controls{position:absolute;pointer-events:none;opacity:0;transform:translate(-10000px,-10000px);z-index:11;display:flex;flex-direction:column;align-items:center;gap:8px}.draggable-block-demo__floating-handle,.draggable-block-demo__delete-button{pointer-events:auto}.draggable-block-demo__floating-handle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-sm);cursor:grab;transition:box-shadow .12s ease,transform .12s ease}.draggable-block-demo__floating-handle:active{cursor:grabbing}.draggable-block-demo__handle-icon{margin-left:-4px;display:inline-block;font-size:calc(12px * var(--rich-text-font-scale));letter-spacing:-4px;-webkit-user-select:none;user-select:none}.draggable-block-demo__delete-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-red-200);background:var(--chakra-colors-red-50);color:var(--chakra-colors-red-600);cursor:pointer;box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,border-color .12s ease}.draggable-block-demo__delete-button:hover{background:var(--chakra-colors-red-100);border-color:var(--chakra-colors-red-300)}.draggable-block-demo__delete-icon{font-size:calc(16px * var(--rich-text-font-scale));line-height:1;-webkit-user-select:none;user-select:none}.draggable-block-demo__gap{position:absolute;left:0;width:100%;height:28px;display:flex;justify-content:center;align-items:center;pointer-events:auto;opacity:0;transition:opacity .12s ease}.draggable-block-demo__gap-line{width:100%;border-top:1px dashed var(--chakra-colors-border);position:absolute;top:50%;transform:translateY(-50%)}.draggable-block-demo__gap-button{pointer-events:auto;border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);border-radius:999px;width:20px;height:20px;font-size:calc(18px * var(--rich-text-font-scale));line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,color .12s ease}.draggable-block-demo__gap:hover,.draggable-block-demo__gap.is-active{opacity:1}.draggable-block-demo__gap-button:hover{background:var(--chakra-colors-bg-subtle);color:var(--chakra-colors-fg)}.draggable-block-demo__indicator{position:absolute;background:var(--chakra-colors-blue-500);pointer-events:none;border-radius:2px;z-index:12}.draggable-block-demo__indicator--horizontal{height:2px}.draggable-block-demo__indicator--vertical{width:2px}.rich-text__h1{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-5, 1.5rem);margin-bottom:var(--chakra-spacing-4, 1rem)}.rich-text__h1_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-2, .5rem)}.rich-text__h2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__h2_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem);margin-bottom:var(--chakra-spacing-1, .125rem)}.rich-text__h3{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__h3_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem)}.rich-text__p{font-family:var(--chakra-fonts-body);letter-spacing:.14px;margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__p:first-child{margin-top:0}.rich-text__p:only-child{margin-bottom:0}.rich-text__p2{font-family:var(--chakra-fonts-body);letter-spacing:.14px;margin:0}.rich-text__textUnderline{text-decoration:underline}.rich-text__textItalic{font-style:italic}span.editor-equation{display:inline-block}.editor-equation span{cursor:inherit}.editor-equation{-webkit-user-select:none;user-select:none}.katex-display{overflow-x:auto;overflow-y:hidden}.floating-text-format-toolbar{display:flex;position:absolute;top:0;left:0;z-index:1000;opacity:0;background-color:var(--chakra-colors-bg);border-radius:8px;border:1px solid var(--chakra-colors-border-muted);box-shadow:0 5px 10px #0000001a;transition:opacity .2s;will-change:transform;padding:4px;gap:2px}.floating-text-format-toolbar.active{opacity:1}.floating-text-format-toolbar button[data-active]{background-color:var(--chakra-colors-bg-accent-primary-medium);color:var(--chakra-colors-text-selectable-primary)}.rich-text__p--no-margin{margin:0}
@@ -5,6 +5,9 @@ export declare const blacks: {
5
5
  50: {
6
6
  value: string;
7
7
  };
8
+ 75: {
9
+ value: string;
10
+ };
8
11
  100: {
9
12
  value: string;
10
13
  };
@@ -26,6 +29,9 @@ export declare const blacks: {
26
29
  700: {
27
30
  value: string;
28
31
  };
32
+ 750: {
33
+ value: string;
34
+ };
29
35
  800: {
30
36
  value: string;
31
37
  };
@@ -255,20 +261,6 @@ export declare const orange: {
255
261
  value: string;
256
262
  };
257
263
  };
258
- export declare const accentPrimary: {
259
- DEFAULT: {
260
- value: string;
261
- };
262
- light: {
263
- value: string;
264
- };
265
- medium: {
266
- value: string;
267
- };
268
- dark: {
269
- value: string;
270
- };
271
- };
272
264
  export declare const yellow: {
273
265
  DEFAULT: {
274
266
  value: string;
@@ -522,6 +514,9 @@ export declare const colors: {
522
514
  50: {
523
515
  value: string;
524
516
  };
517
+ 75: {
518
+ value: string;
519
+ };
525
520
  100: {
526
521
  value: string;
527
522
  };
@@ -543,6 +538,9 @@ export declare const colors: {
543
538
  700: {
544
539
  value: string;
545
540
  };
541
+ 750: {
542
+ value: string;
543
+ };
546
544
  800: {
547
545
  value: string;
548
546
  };
@@ -737,20 +735,6 @@ export declare const colors: {
737
735
  value: string;
738
736
  };
739
737
  };
740
- accentPrimary: {
741
- DEFAULT: {
742
- value: string;
743
- };
744
- light: {
745
- value: string;
746
- };
747
- medium: {
748
- value: string;
749
- };
750
- dark: {
751
- value: string;
752
- };
753
- };
754
738
  orange: {
755
739
  DEFAULT: {
756
740
  value: string;
@@ -1 +1 @@
1
- export declare const menuSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "indicator" | "separator" | "trigger" | "positioner" | "arrow" | "arrowTip" | "item" | "itemIndicator" | "itemGroup" | "contextTrigger" | "itemGroupLabel" | "itemText" | "triggerItem" | "itemCommand", import('@chakra-ui/react').SlotRecipeVariantRecord<"content" | "indicator" | "separator" | "trigger" | "positioner" | "arrow" | "arrowTip" | "item" | "itemIndicator" | "itemGroup" | "contextTrigger" | "itemGroupLabel" | "itemText" | "triggerItem" | "itemCommand">>;
1
+ export declare const menuSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "indicator" | "separator" | "item" | "trigger" | "positioner" | "arrow" | "arrowTip" | "contextTrigger" | "itemGroup" | "itemGroupLabel" | "itemIndicator" | "itemText" | "triggerItem" | "itemCommand", import('@chakra-ui/react').SlotRecipeVariantRecord<"content" | "indicator" | "separator" | "item" | "trigger" | "positioner" | "arrow" | "arrowTip" | "contextTrigger" | "itemGroup" | "itemGroupLabel" | "itemIndicator" | "itemText" | "triggerItem" | "itemCommand">>;
@@ -1,35 +1,35 @@
1
1
  export declare const borders: {
2
- accent: {
2
+ DEFAULT: {
3
3
  value: {
4
4
  base: string;
5
5
  _dark: string;
6
6
  };
7
7
  };
8
- "accent-light": {
8
+ muted: {
9
9
  value: {
10
10
  base: string;
11
11
  _dark: string;
12
12
  };
13
13
  };
14
- primary: {
14
+ subtle: {
15
15
  value: {
16
16
  base: string;
17
17
  _dark: string;
18
18
  };
19
19
  };
20
- secondary: {
20
+ inverted: {
21
21
  value: {
22
22
  base: string;
23
23
  _dark: string;
24
24
  };
25
25
  };
26
- tertiary: {
26
+ accent: {
27
27
  value: {
28
28
  base: string;
29
29
  _dark: string;
30
30
  };
31
31
  };
32
- inverse: {
32
+ "accent-light": {
33
33
  value: {
34
34
  base: string;
35
35
  _dark: string;