@tldraw/editor
Version:
tldraw infinite canvas SDK (editor).
8 lines (7 loc) • 1.79 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../src/lib/hooks/useDarkMode.ts"],
"sourcesContent": ["import { useValue } from '@tldraw/state-react'\nimport React from 'react'\nimport { debugFlags } from '../utils/debug-flags'\nimport { useContainer } from './useContainer'\nimport { useEditor } from './useEditor'\nimport { useIsDarkMode } from './useIsDarkMode'\n\nexport function useDarkMode() {\n\tconst editor = useEditor()\n\tconst container = useContainer()\n\tconst isDarkMode = useIsDarkMode()\n\tconst forceSrgb = useValue(debugFlags.forceSrgb)\n\n\tReact.useEffect(() => {\n\t\tif (isDarkMode) {\n\t\t\tcontainer.setAttribute('data-color-mode', 'dark')\n\t\t\tcontainer.classList.remove('tl-theme__light')\n\t\t\tcontainer.classList.add('tl-theme__dark')\n\t\t} else {\n\t\t\tcontainer.setAttribute('data-color-mode', 'light')\n\t\t\tcontainer.classList.remove('tl-theme__dark')\n\t\t\tcontainer.classList.add('tl-theme__light')\n\t\t}\n\t\tif (forceSrgb) {\n\t\t\tcontainer.classList.add('tl-theme__force-sRGB')\n\t\t} else {\n\t\t\tcontainer.classList.remove('tl-theme__force-sRGB')\n\t\t}\n\t}, [editor, container, forceSrgb, isDarkMode])\n}\n"],
"mappings": "AAAA,SAAS,gBAAgB;AACzB,OAAO,WAAW;AAClB,SAAS,kBAAkB;AAC3B,SAAS,oBAAoB;AAC7B,SAAS,iBAAiB;AAC1B,SAAS,qBAAqB;AAEvB,SAAS,cAAc;AAC7B,QAAM,SAAS,UAAU;AACzB,QAAM,YAAY,aAAa;AAC/B,QAAM,aAAa,cAAc;AACjC,QAAM,YAAY,SAAS,WAAW,SAAS;AAE/C,QAAM,UAAU,MAAM;AACrB,QAAI,YAAY;AACf,gBAAU,aAAa,mBAAmB,MAAM;AAChD,gBAAU,UAAU,OAAO,iBAAiB;AAC5C,gBAAU,UAAU,IAAI,gBAAgB;AAAA,IACzC,OAAO;AACN,gBAAU,aAAa,mBAAmB,OAAO;AACjD,gBAAU,UAAU,OAAO,gBAAgB;AAC3C,gBAAU,UAAU,IAAI,iBAAiB;AAAA,IAC1C;AACA,QAAI,WAAW;AACd,gBAAU,UAAU,IAAI,sBAAsB;AAAA,IAC/C,OAAO;AACN,gBAAU,UAAU,OAAO,sBAAsB;AAAA,IAClD;AAAA,EACD,GAAG,CAAC,QAAQ,WAAW,WAAW,UAAU,CAAC;AAC9C;",
"names": []
}