tldraw
Version:
A tiny little drawing editor.
8 lines (7 loc) • 2.49 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../../../src/lib/ui/components/QuickActions/DefaultQuickActionsContent.tsx"],
"sourcesContent": ["import { useEditor, useValue } from '@tldraw/editor'\nimport {\n\tuseCanRedo,\n\tuseCanUndo,\n\tuseIsInSelectState,\n\tuseUnlockedSelectedShapesCount,\n} from '../../hooks/menu-hooks'\nimport { useReadonly } from '../../hooks/useReadonly'\nimport { TldrawUiMenuActionItem } from '../primitives/menus/TldrawUiMenuActionItem'\n\n/** @public @react */\nexport function DefaultQuickActionsContent() {\n\tconst editor = useEditor()\n\n\tconst isReadonlyMode = useReadonly()\n\n\tconst isInAcceptableReadonlyState = useValue(\n\t\t'should display quick actions',\n\t\t() => editor.isInAny('select', 'hand', 'zoom'),\n\t\t[editor]\n\t)\n\n\tif (isReadonlyMode && !isInAcceptableReadonlyState) return\n\n\treturn (\n\t\t<>\n\t\t\t<UndoRedoGroup />\n\t\t\t<DeleteDuplicateGroup />\n\t\t</>\n\t)\n}\n\nfunction DeleteDuplicateGroup() {\n\tconst oneSelected = useUnlockedSelectedShapesCount(1)\n\tconst isInSelectState = useIsInSelectState()\n\tconst selectDependentActionsEnabled = oneSelected && isInSelectState\n\treturn (\n\t\t<>\n\t\t\t<TldrawUiMenuActionItem actionId=\"delete\" disabled={!selectDependentActionsEnabled} />\n\t\t\t<TldrawUiMenuActionItem actionId=\"duplicate\" disabled={!selectDependentActionsEnabled} />\n\t\t</>\n\t)\n}\n\nfunction UndoRedoGroup() {\n\tconst canUndo = useCanUndo()\n\tconst canRedo = useCanRedo()\n\treturn (\n\t\t<>\n\t\t\t<TldrawUiMenuActionItem actionId=\"undo\" disabled={!canUndo} />\n\t\t\t<TldrawUiMenuActionItem actionId=\"redo\" disabled={!canRedo} />\n\t\t</>\n\t)\n}\n"],
"mappings": "AAyBE,mBACC,KADD;AAzBF,SAAS,WAAW,gBAAgB;AACpC;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACM;AACP,SAAS,mBAAmB;AAC5B,SAAS,8BAA8B;AAGhC,SAAS,6BAA6B;AAC5C,QAAM,SAAS,UAAU;AAEzB,QAAM,iBAAiB,YAAY;AAEnC,QAAM,8BAA8B;AAAA,IACnC;AAAA,IACA,MAAM,OAAO,QAAQ,UAAU,QAAQ,MAAM;AAAA,IAC7C,CAAC,MAAM;AAAA,EACR;AAEA,MAAI,kBAAkB,CAAC,4BAA6B;AAEpD,SACC,iCACC;AAAA,wBAAC,iBAAc;AAAA,IACf,oBAAC,wBAAqB;AAAA,KACvB;AAEF;AAEA,SAAS,uBAAuB;AAC/B,QAAM,cAAc,+BAA+B,CAAC;AACpD,QAAM,kBAAkB,mBAAmB;AAC3C,QAAM,gCAAgC,eAAe;AACrD,SACC,iCACC;AAAA,wBAAC,0BAAuB,UAAS,UAAS,UAAU,CAAC,+BAA+B;AAAA,IACpF,oBAAC,0BAAuB,UAAS,aAAY,UAAU,CAAC,+BAA+B;AAAA,KACxF;AAEF;AAEA,SAAS,gBAAgB;AACxB,QAAM,UAAU,WAAW;AAC3B,QAAM,UAAU,WAAW;AAC3B,SACC,iCACC;AAAA,wBAAC,0BAAuB,UAAS,QAAO,UAAU,CAAC,SAAS;AAAA,IAC5D,oBAAC,0BAAuB,UAAS,QAAO,UAAU,CAAC,SAAS;AAAA,KAC7D;AAEF;",
"names": []
}