tldraw
Version:
A tiny little drawing editor.
8 lines (7 loc) • 2.1 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../../../src/lib/ui/components/HelperButtons/BackToContent.tsx"],
"sourcesContent": ["import { useEditor, useQuickReactor } from '@tldraw/editor'\nimport { useRef, useState } from 'react'\nimport { useActions } from '../../context/actions'\nimport { TldrawUiMenuActionItem } from '../primitives/menus/TldrawUiMenuActionItem'\n\nexport function BackToContent() {\n\tconst editor = useEditor()\n\n\tconst actions = useActions()\n\n\tconst [showBackToContent, setShowBackToContent] = useState(false)\n\tconst rIsShowing = useRef(false)\n\n\tuseQuickReactor(\n\t\t'toggle showback to content',\n\t\t() => {\n\t\t\tconst showBackToContentPrev = rIsShowing.current\n\t\t\tconst shapeIds = editor.getCurrentPageShapeIds()\n\t\t\tlet showBackToContentNow = false\n\t\t\tif (shapeIds.size) {\n\t\t\t\tshowBackToContentNow = shapeIds.size === editor.getNotVisibleShapes().size\n\t\t\t}\n\n\t\t\tif (showBackToContentPrev !== showBackToContentNow) {\n\t\t\t\tsetShowBackToContent(showBackToContentNow)\n\t\t\t\trIsShowing.current = showBackToContentNow\n\t\t\t}\n\t\t},\n\t\t[editor]\n\t)\n\n\tif (!showBackToContent) return null\n\n\treturn (\n\t\t<TldrawUiMenuActionItem\n\t\t\tactionId=\"back-to-content\"\n\t\t\tonSelect={() => {\n\t\t\t\tactions['back-to-content'].onSelect('helper-buttons')\n\t\t\t\tsetShowBackToContent(false)\n\t\t\t}}\n\t\t/>\n\t)\n}\n"],
"mappings": "AAkCE;AAlCF,SAAS,WAAW,uBAAuB;AAC3C,SAAS,QAAQ,gBAAgB;AACjC,SAAS,kBAAkB;AAC3B,SAAS,8BAA8B;AAEhC,SAAS,gBAAgB;AAC/B,QAAM,SAAS,UAAU;AAEzB,QAAM,UAAU,WAAW;AAE3B,QAAM,CAAC,mBAAmB,oBAAoB,IAAI,SAAS,KAAK;AAChE,QAAM,aAAa,OAAO,KAAK;AAE/B;AAAA,IACC;AAAA,IACA,MAAM;AACL,YAAM,wBAAwB,WAAW;AACzC,YAAM,WAAW,OAAO,uBAAuB;AAC/C,UAAI,uBAAuB;AAC3B,UAAI,SAAS,MAAM;AAClB,+BAAuB,SAAS,SAAS,OAAO,oBAAoB,EAAE;AAAA,MACvE;AAEA,UAAI,0BAA0B,sBAAsB;AACnD,6BAAqB,oBAAoB;AACzC,mBAAW,UAAU;AAAA,MACtB;AAAA,IACD;AAAA,IACA,CAAC,MAAM;AAAA,EACR;AAEA,MAAI,CAAC,kBAAmB,QAAO;AAE/B,SACC;AAAA,IAAC;AAAA;AAAA,MACA,UAAS;AAAA,MACT,UAAU,MAAM;AACf,gBAAQ,iBAAiB,EAAE,SAAS,gBAAgB;AACpD,6BAAqB,KAAK;AAAA,MAC3B;AAAA;AAAA,EACD;AAEF;",
"names": []
}