tldraw 4.1.0-canary.ca796f65c3a4 → 4.1.0-canary.caaa99b713a2
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.
- package/dist-cjs/index.d.ts +21 -0
- package/dist-cjs/index.js +1 -1
- package/dist-cjs/lib/canvas/TldrawCropHandles.js +1 -1
- package/dist-cjs/lib/canvas/TldrawScribble.js +1 -1
- package/dist-cjs/lib/canvas/TldrawSelectionForeground.js +1 -1
- package/dist-cjs/lib/defaultEmbedDefinitions.js +26 -7
- package/dist-cjs/lib/defaultEmbedDefinitions.js.map +2 -2
- package/dist-cjs/lib/defaultExternalContentHandlers.js +1 -1
- package/dist-cjs/lib/defaultExternalContentHandlers.js.map +2 -2
- package/dist-cjs/lib/shapes/arrow/ArrowShapeUtil.js +3 -0
- package/dist-cjs/lib/shapes/arrow/ArrowShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/bookmark/BookmarkShapeUtil.js +14 -2
- package/dist-cjs/lib/shapes/bookmark/BookmarkShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/frame/FrameShapeUtil.js +1 -1
- package/dist-cjs/lib/shapes/image/ImageShapeUtil.js +1 -1
- package/dist-cjs/lib/shapes/line/LineShapeUtil.js +3 -0
- package/dist-cjs/lib/shapes/line/LineShapeUtil.js.map +2 -2
- package/dist-cjs/lib/shapes/shared/HyperlinkButton.js +1 -1
- package/dist-cjs/lib/shapes/shared/PlainTextLabel.js +1 -1
- package/dist-cjs/lib/shapes/shared/RichTextLabel.js +1 -1
- package/dist-cjs/lib/shapes/shared/ShapeFill.js +1 -1
- package/dist-cjs/lib/shapes/text/PlainTextArea.js +1 -1
- package/dist-cjs/lib/shapes/text/RichTextArea.js +1 -1
- package/dist-cjs/lib/shapes/video/VideoShapeUtil.js +1 -1
- package/dist-cjs/lib/tools/SelectTool/childStates/Crop/children/Idle.js +1 -1
- package/dist-cjs/lib/tools/SelectTool/childStates/Crop/children/Idle.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/DraggingHandle.js +9 -1
- package/dist-cjs/lib/tools/SelectTool/childStates/DraggingHandle.js.map +2 -2
- package/dist-cjs/lib/tools/SelectTool/childStates/Idle.js +1 -1
- package/dist-cjs/lib/tools/SelectTool/childStates/Idle.js.map +2 -2
- package/dist-cjs/lib/ui/TldrawUi.js +2 -2
- package/dist-cjs/lib/ui/components/DebugMenu/DefaultDebugMenuContent.js +1 -1
- package/dist-cjs/lib/ui/components/KeyboardShortcutsDialog/DefaultKeyboardShortcutsDialog.js +1 -1
- package/dist-cjs/lib/ui/components/Minimap/DefaultMinimap.js +1 -1
- package/dist-cjs/lib/ui/components/Minimap/MinimapManager.js +5 -0
- package/dist-cjs/lib/ui/components/Minimap/MinimapManager.js.map +2 -2
- package/dist-cjs/lib/ui/components/OfflineIndicator/OfflineIndicator.js +1 -1
- package/dist-cjs/lib/ui/components/SharePanel/PeopleMenu.js +6 -2
- package/dist-cjs/lib/ui/components/SharePanel/PeopleMenu.js.map +2 -2
- package/dist-cjs/lib/ui/components/SharePanel/UserPresenceColorPicker.js +1 -1
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanel.js +1 -1
- package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanelContent.js +1 -1
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelButtonPicker.js +1 -1
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelButtonPicker.js.map +1 -1
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelDoubleDropdownPicker.js +1 -1
- package/dist-cjs/lib/ui/components/StylePanel/StylePanelDropdownPicker.js +1 -1
- package/dist-cjs/lib/ui/components/Toolbar/DefaultToolbar.js +1 -1
- package/dist-cjs/lib/ui/components/Toolbar/OverflowingToolbar.js +1 -1
- package/dist-cjs/lib/ui/components/Toolbar/ToggleToolLockedButton.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/Button/TldrawUiButton.js +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiContextualToolbar.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/TldrawUiDialog.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/TldrawUiDropdownMenu.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/TldrawUiIcon.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/TldrawUiInput.js +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiPopover.js +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiSlider.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/TldrawUiToolbar.js +2 -2
- package/dist-cjs/lib/ui/components/primitives/TldrawUiTooltip.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/layout.js +1 -1
- package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuGroup.js +1 -1
- package/dist-cjs/lib/ui/context/actions.js +1 -1
- package/dist-cjs/lib/ui/context/breakpoints.js +1 -1
- package/dist-cjs/lib/ui/context/events.js +1 -1
- package/dist-cjs/lib/ui/hooks/useClipboardEvents.js +1 -1
- package/dist-cjs/lib/ui/hooks/useKeyboardShortcuts.js +1 -1
- package/dist-cjs/lib/ui/hooks/useLocalStorageState.js +1 -1
- package/dist-cjs/lib/ui/hooks/useTools.js +1 -1
- package/dist-cjs/lib/ui/hooks/useTranslation/useTranslation.js +1 -1
- package/dist-cjs/lib/ui/version.js +3 -3
- package/dist-cjs/lib/ui/version.js.map +1 -1
- package/dist-cjs/lib/utils/text/richText.js +4 -4
- package/dist-esm/index.d.mts +21 -0
- package/dist-esm/index.mjs +1 -1
- package/dist-esm/lib/defaultEmbedDefinitions.mjs +26 -7
- package/dist-esm/lib/defaultEmbedDefinitions.mjs.map +2 -2
- package/dist-esm/lib/defaultExternalContentHandlers.mjs +1 -1
- package/dist-esm/lib/defaultExternalContentHandlers.mjs.map +2 -2
- package/dist-esm/lib/shapes/arrow/ArrowShapeUtil.mjs +3 -0
- package/dist-esm/lib/shapes/arrow/ArrowShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/bookmark/BookmarkShapeUtil.mjs +13 -1
- package/dist-esm/lib/shapes/bookmark/BookmarkShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/shapes/line/LineShapeUtil.mjs +3 -0
- package/dist-esm/lib/shapes/line/LineShapeUtil.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/Crop/children/Idle.mjs +1 -1
- package/dist-esm/lib/tools/SelectTool/childStates/Crop/children/Idle.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/DraggingHandle.mjs +11 -2
- package/dist-esm/lib/tools/SelectTool/childStates/DraggingHandle.mjs.map +2 -2
- package/dist-esm/lib/tools/SelectTool/childStates/Idle.mjs +1 -1
- package/dist-esm/lib/tools/SelectTool/childStates/Idle.mjs.map +2 -2
- package/dist-esm/lib/ui/components/Minimap/MinimapManager.mjs +5 -0
- package/dist-esm/lib/ui/components/Minimap/MinimapManager.mjs.map +2 -2
- package/dist-esm/lib/ui/components/SharePanel/PeopleMenu.mjs +6 -2
- package/dist-esm/lib/ui/components/SharePanel/PeopleMenu.mjs.map +2 -2
- package/dist-esm/lib/ui/components/StylePanel/StylePanelButtonPicker.mjs +1 -1
- package/dist-esm/lib/ui/components/StylePanel/StylePanelButtonPicker.mjs.map +1 -1
- package/dist-esm/lib/ui/version.mjs +3 -3
- package/dist-esm/lib/ui/version.mjs.map +1 -1
- package/package.json +11 -11
- package/src/lib/defaultEmbedDefinitions.ts +21 -1
- package/src/lib/defaultExternalContentHandlers.ts +1 -1
- package/src/lib/shapes/arrow/ArrowShapeUtil.tsx +3 -0
- package/src/lib/shapes/bookmark/BookmarkShapeUtil.tsx +13 -3
- package/src/lib/shapes/line/LineShapeUtil.tsx +3 -0
- package/src/lib/shapes/text/TextShapeTool.test.ts +74 -0
- package/src/lib/tools/SelectTool/childStates/Crop/children/Idle.ts +1 -1
- package/src/lib/tools/SelectTool/childStates/DraggingHandle.tsx +13 -1
- package/src/lib/tools/SelectTool/childStates/Idle.ts +1 -1
- package/src/lib/ui/components/Minimap/MinimapManager.ts +6 -0
- package/src/lib/ui/components/SharePanel/PeopleMenu.tsx +6 -2
- package/src/lib/ui/components/StylePanel/StylePanelButtonPicker.tsx +1 -1
- package/src/lib/ui/version.ts +3 -3
- package/src/lib/utils/embeds/embeds.test.ts +16 -0
- package/src/test/customSnapping.test.tsx +55 -11
- package/tldraw.css +7 -2
|
@@ -33,8 +33,8 @@ __export(TldrawUiInput_exports, {
|
|
|
33
33
|
module.exports = __toCommonJS(TldrawUiInput_exports);
|
|
34
34
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
35
35
|
var import_editor = require("@tldraw/editor");
|
|
36
|
-
var import_classnames = __toESM(require("classnames"));
|
|
37
|
-
var React = __toESM(require("react"));
|
|
36
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
37
|
+
var React = __toESM(require("react"), 1);
|
|
38
38
|
var import_useTranslation = require("../../hooks/useTranslation/useTranslation");
|
|
39
39
|
var import_TldrawUiIcon = require("./TldrawUiIcon");
|
|
40
40
|
const TldrawUiInput = React.forwardRef(
|
|
@@ -35,9 +35,9 @@ __export(TldrawUiPopover_exports, {
|
|
|
35
35
|
module.exports = __toCommonJS(TldrawUiPopover_exports);
|
|
36
36
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
37
37
|
var import_editor = require("@tldraw/editor");
|
|
38
|
-
var import_classnames = __toESM(require("classnames"));
|
|
38
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
39
39
|
var import_radix_ui = require("radix-ui");
|
|
40
|
-
var import_react = __toESM(require("react"));
|
|
40
|
+
var import_react = __toESM(require("react"), 1);
|
|
41
41
|
var import_useMenuIsOpen = require("../../hooks/useMenuIsOpen");
|
|
42
42
|
function TldrawUiPopover({ id, children, onOpenChange, open, className }) {
|
|
43
43
|
const [isOpen, handleOpenChange] = (0, import_useMenuIsOpen.useMenuIsOpen)(id, onOpenChange);
|
|
@@ -34,7 +34,7 @@ module.exports = __toCommonJS(TldrawUiSlider_exports);
|
|
|
34
34
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
35
35
|
var import_editor = require("@tldraw/editor");
|
|
36
36
|
var import_radix_ui = require("radix-ui");
|
|
37
|
-
var import_react = __toESM(require("react"));
|
|
37
|
+
var import_react = __toESM(require("react"), 1);
|
|
38
38
|
var import_useTranslation = require("../../hooks/useTranslation/useTranslation");
|
|
39
39
|
var import_TldrawUiTooltip = require("./TldrawUiTooltip");
|
|
40
40
|
const TldrawUiSlider = import_react.default.forwardRef(function Slider({
|
|
@@ -35,9 +35,9 @@ __export(TldrawUiToolbar_exports, {
|
|
|
35
35
|
});
|
|
36
36
|
module.exports = __toCommonJS(TldrawUiToolbar_exports);
|
|
37
37
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
38
|
-
var import_classnames = __toESM(require("classnames"));
|
|
38
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
39
39
|
var import_radix_ui = require("radix-ui");
|
|
40
|
-
var import_react = __toESM(require("react"));
|
|
40
|
+
var import_react = __toESM(require("react"), 1);
|
|
41
41
|
var import_layout = require("./layout");
|
|
42
42
|
var import_TldrawUiTooltip = require("./TldrawUiTooltip");
|
|
43
43
|
const LayoutByOrientation = {
|
|
@@ -36,7 +36,7 @@ module.exports = __toCommonJS(TldrawUiTooltip_exports);
|
|
|
36
36
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
37
37
|
var import_editor = require("@tldraw/editor");
|
|
38
38
|
var import_radix_ui = require("radix-ui");
|
|
39
|
-
var import_react = __toESM(require("react"));
|
|
39
|
+
var import_react = __toESM(require("react"), 1);
|
|
40
40
|
var import_layout = require("./layout");
|
|
41
41
|
const DEFAULT_TOOLTIP_DELAY_MS = 700;
|
|
42
42
|
class TooltipManager {
|
|
@@ -36,7 +36,7 @@ __export(layout_exports, {
|
|
|
36
36
|
});
|
|
37
37
|
module.exports = __toCommonJS(layout_exports);
|
|
38
38
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
39
|
-
var import_classnames = __toESM(require("classnames"));
|
|
39
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
40
40
|
var import_radix_ui = require("radix-ui");
|
|
41
41
|
var import_react = require("react");
|
|
42
42
|
const TldrawUiOrientationContext = (0, import_react.createContext)({
|
|
@@ -32,7 +32,7 @@ __export(TldrawUiMenuGroup_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(TldrawUiMenuGroup_exports);
|
|
34
34
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
35
|
-
var import_classnames = __toESM(require("classnames"));
|
|
35
|
+
var import_classnames = __toESM(require("classnames"), 1);
|
|
36
36
|
var import_actions = require("../../../context/actions");
|
|
37
37
|
var import_useTranslation = require("../../../hooks/useTranslation/useTranslation");
|
|
38
38
|
var import_layout = require("../layout");
|
|
@@ -37,7 +37,7 @@ __export(actions_exports, {
|
|
|
37
37
|
module.exports = __toCommonJS(actions_exports);
|
|
38
38
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
39
39
|
var import_editor = require("@tldraw/editor");
|
|
40
|
-
var React = __toESM(require("react"));
|
|
40
|
+
var React = __toESM(require("react"), 1);
|
|
41
41
|
var import_frames = require("../../utils/frames/frames");
|
|
42
42
|
var import_A11y = require("../components/A11y");
|
|
43
43
|
var import_EditLinkDialog = require("../components/EditLinkDialog");
|
|
@@ -34,7 +34,7 @@ __export(breakpoints_exports, {
|
|
|
34
34
|
module.exports = __toCommonJS(breakpoints_exports);
|
|
35
35
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
36
|
var import_editor = require("@tldraw/editor");
|
|
37
|
-
var import_react = __toESM(require("react"));
|
|
37
|
+
var import_react = __toESM(require("react"), 1);
|
|
38
38
|
var import_constants = require("../constants");
|
|
39
39
|
const BreakpointContext = import_react.default.createContext(null);
|
|
40
40
|
function BreakPointProvider({ forceMobile = false, children }) {
|
|
@@ -34,7 +34,7 @@ __export(events_exports, {
|
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(events_exports);
|
|
36
36
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
37
|
-
var React = __toESM(require("react"));
|
|
37
|
+
var React = __toESM(require("react"), 1);
|
|
38
38
|
const defaultEventHandler = () => void 0;
|
|
39
39
|
const EventsContext = React.createContext(null);
|
|
40
40
|
function TldrawUiEventsProvider({ onEvent, children }) {
|
|
@@ -34,7 +34,7 @@ __export(useClipboardEvents_exports, {
|
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(useClipboardEvents_exports);
|
|
36
36
|
var import_editor = require("@tldraw/editor");
|
|
37
|
-
var import_lz_string = __toESM(require("lz-string"));
|
|
37
|
+
var import_lz_string = __toESM(require("lz-string"), 1);
|
|
38
38
|
var import_react = require("react");
|
|
39
39
|
var import_clipboard = require("../../utils/clipboard");
|
|
40
40
|
var import_events = require("../context/events");
|
|
@@ -33,7 +33,7 @@ __export(useKeyboardShortcuts_exports, {
|
|
|
33
33
|
});
|
|
34
34
|
module.exports = __toCommonJS(useKeyboardShortcuts_exports);
|
|
35
35
|
var import_editor = require("@tldraw/editor");
|
|
36
|
-
var import_hotkeys_js = __toESM(require("hotkeys-js"));
|
|
36
|
+
var import_hotkeys_js = __toESM(require("hotkeys-js"), 1);
|
|
37
37
|
var import_react = require("react");
|
|
38
38
|
var import_actions = require("../context/actions");
|
|
39
39
|
var import_useReadonly = require("./useReadonly");
|
|
@@ -32,7 +32,7 @@ __export(useLocalStorageState_exports, {
|
|
|
32
32
|
});
|
|
33
33
|
module.exports = __toCommonJS(useLocalStorageState_exports);
|
|
34
34
|
var import_editor = require("@tldraw/editor");
|
|
35
|
-
var import_react = __toESM(require("react"));
|
|
35
|
+
var import_react = __toESM(require("react"), 1);
|
|
36
36
|
function useLocalStorageState(key, defaultValue) {
|
|
37
37
|
const [state, setState] = import_react.default.useState(defaultValue);
|
|
38
38
|
import_react.default.useLayoutEffect(() => {
|
|
@@ -36,7 +36,7 @@ __export(useTools_exports, {
|
|
|
36
36
|
module.exports = __toCommonJS(useTools_exports);
|
|
37
37
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
38
38
|
var import_editor = require("@tldraw/editor");
|
|
39
|
-
var React = __toESM(require("react"));
|
|
39
|
+
var React = __toESM(require("react"), 1);
|
|
40
40
|
var import_EmbedDialog = require("../components/EmbedDialog");
|
|
41
41
|
var import_a11y = require("../context/a11y");
|
|
42
42
|
var import_events = require("../context/events");
|
|
@@ -35,7 +35,7 @@ __export(useTranslation_exports, {
|
|
|
35
35
|
});
|
|
36
36
|
module.exports = __toCommonJS(useTranslation_exports);
|
|
37
37
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
38
|
-
var React = __toESM(require("react"));
|
|
38
|
+
var React = __toESM(require("react"), 1);
|
|
39
39
|
var import_asset_urls = require("../../context/asset-urls");
|
|
40
40
|
var import_defaultTranslation = require("./defaultTranslation");
|
|
41
41
|
var import_translations = require("./translations");
|
|
@@ -22,10 +22,10 @@ __export(version_exports, {
|
|
|
22
22
|
version: () => version
|
|
23
23
|
});
|
|
24
24
|
module.exports = __toCommonJS(version_exports);
|
|
25
|
-
const version = "4.1.0-canary.
|
|
25
|
+
const version = "4.1.0-canary.caaa99b713a2";
|
|
26
26
|
const publishDates = {
|
|
27
27
|
major: "2025-09-18T14:39:22.803Z",
|
|
28
|
-
minor: "2025-
|
|
29
|
-
patch: "2025-
|
|
28
|
+
minor: "2025-10-10T09:10:50.472Z",
|
|
29
|
+
patch: "2025-10-10T09:10:50.472Z"
|
|
30
30
|
};
|
|
31
31
|
//# sourceMappingURL=version.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/lib/ui/version.ts"],
|
|
4
|
-
"sourcesContent": ["// This file is automatically generated by internal/scripts/refresh-assets.ts.\n// Do not edit manually. Or do, I'm a comment, not a cop.\n\nexport const version = '4.1.0-canary.
|
|
4
|
+
"sourcesContent": ["// This file is automatically generated by internal/scripts/refresh-assets.ts.\n// Do not edit manually. Or do, I'm a comment, not a cop.\n\nexport const version = '4.1.0-canary.caaa99b713a2'\nexport const publishDates = {\n\tmajor: '2025-09-18T14:39:22.803Z',\n\tminor: '2025-10-10T09:10:50.472Z',\n\tpatch: '2025-10-10T09:10:50.472Z',\n}\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGO,MAAM,UAAU;AAChB,MAAM,eAAe;AAAA,EAC3B,OAAO;AAAA,EACP,OAAO;AAAA,EACP,OAAO;AACR;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -39,10 +39,10 @@ __export(richText_exports, {
|
|
|
39
39
|
});
|
|
40
40
|
module.exports = __toCommonJS(richText_exports);
|
|
41
41
|
var import_core = require("@tiptap/core");
|
|
42
|
-
var import_extension_code = __toESM(require("@tiptap/extension-code"));
|
|
43
|
-
var import_extension_highlight = __toESM(require("@tiptap/extension-highlight"));
|
|
44
|
-
var import_extension_link = __toESM(require("@tiptap/extension-link"));
|
|
45
|
-
var import_starter_kit = __toESM(require("@tiptap/starter-kit"));
|
|
42
|
+
var import_extension_code = __toESM(require("@tiptap/extension-code"), 1);
|
|
43
|
+
var import_extension_highlight = __toESM(require("@tiptap/extension-highlight"), 1);
|
|
44
|
+
var import_extension_link = __toESM(require("@tiptap/extension-link"), 1);
|
|
45
|
+
var import_starter_kit = __toESM(require("@tiptap/starter-kit"), 1);
|
|
46
46
|
var import_editor = require("@tldraw/editor");
|
|
47
47
|
var import_defaultFonts = require("../../shapes/shared/defaultFonts");
|
|
48
48
|
var import_textDirection = require("./textDirection");
|
package/dist-esm/index.d.mts
CHANGED
|
@@ -312,6 +312,7 @@ export declare class ArrowShapeUtil extends ShapeUtil<TLArrowShape> {
|
|
|
312
312
|
hideRotateHandle(): boolean;
|
|
313
313
|
hideSelectionBoundsBg(): boolean;
|
|
314
314
|
hideSelectionBoundsFg(): boolean;
|
|
315
|
+
hideInMinimap(): boolean;
|
|
315
316
|
canBeLaidOut(shape: TLArrowShape, info: TLShapeUtilCanBeLaidOutOpts): boolean;
|
|
316
317
|
getFontFaces(shape: TLArrowShape): TLFontFace[];
|
|
317
318
|
getDefaultProps(): TLArrowShape['props'];
|
|
@@ -636,6 +637,7 @@ export declare function DebugFlags(): JSX_2.Element | null;
|
|
|
636
637
|
/** @public */
|
|
637
638
|
export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
638
639
|
readonly doesResize: true;
|
|
640
|
+
readonly embedOnPaste: false;
|
|
639
641
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
640
642
|
readonly height: 500;
|
|
641
643
|
readonly hostnames: readonly ["beta.tldraw.com", "tldraw.com", "localhost:3000"];
|
|
@@ -650,6 +652,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
650
652
|
readonly width: 720;
|
|
651
653
|
}, {
|
|
652
654
|
readonly doesResize: true;
|
|
655
|
+
readonly embedOnPaste: true;
|
|
653
656
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
654
657
|
readonly height: 500;
|
|
655
658
|
readonly hostnames: readonly ["figma.com"];
|
|
@@ -659,6 +662,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
659
662
|
readonly width: 720;
|
|
660
663
|
}, {
|
|
661
664
|
readonly doesResize: true;
|
|
665
|
+
readonly embedOnPaste: true;
|
|
662
666
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
663
667
|
readonly height: 500;
|
|
664
668
|
readonly hostnames: readonly ["google.*"];
|
|
@@ -671,6 +675,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
671
675
|
readonly width: 720;
|
|
672
676
|
}, {
|
|
673
677
|
readonly doesResize: true;
|
|
678
|
+
readonly embedOnPaste: true;
|
|
674
679
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
675
680
|
readonly height: 500;
|
|
676
681
|
readonly hostnames: readonly ["val.town"];
|
|
@@ -682,6 +687,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
682
687
|
readonly width: 720;
|
|
683
688
|
}, {
|
|
684
689
|
readonly doesResize: true;
|
|
690
|
+
readonly embedOnPaste: true;
|
|
685
691
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
686
692
|
readonly height: 500;
|
|
687
693
|
readonly hostnames: readonly ["codesandbox.io"];
|
|
@@ -693,6 +699,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
693
699
|
readonly width: 720;
|
|
694
700
|
}, {
|
|
695
701
|
readonly doesResize: true;
|
|
702
|
+
readonly embedOnPaste: true;
|
|
696
703
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
697
704
|
readonly height: 400;
|
|
698
705
|
readonly hostnames: readonly ["codepen.io"];
|
|
@@ -704,6 +711,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
704
711
|
readonly width: 520;
|
|
705
712
|
}, {
|
|
706
713
|
readonly doesResize: false;
|
|
714
|
+
readonly embedOnPaste: true;
|
|
707
715
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
708
716
|
readonly height: 400;
|
|
709
717
|
readonly hostnames: readonly ["scratch.mit.edu"];
|
|
@@ -713,6 +721,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
713
721
|
readonly width: 520;
|
|
714
722
|
}, {
|
|
715
723
|
readonly doesResize: true;
|
|
724
|
+
readonly embedOnPaste: true;
|
|
716
725
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
717
726
|
readonly height: 450;
|
|
718
727
|
readonly hostnames: readonly ["*.youtube.com", "youtube.com", "youtu.be"];
|
|
@@ -727,6 +736,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
727
736
|
readonly width: 800;
|
|
728
737
|
}, {
|
|
729
738
|
readonly doesResize: true;
|
|
739
|
+
readonly embedOnPaste: true;
|
|
730
740
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
731
741
|
readonly height: 500;
|
|
732
742
|
readonly hostnames: readonly ["calendar.google.*"];
|
|
@@ -742,6 +752,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
742
752
|
readonly width: 720;
|
|
743
753
|
}, {
|
|
744
754
|
readonly doesResize: true;
|
|
755
|
+
readonly embedOnPaste: true;
|
|
745
756
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
746
757
|
readonly height: 500;
|
|
747
758
|
readonly hostnames: readonly ["docs.google.*"];
|
|
@@ -756,6 +767,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
756
767
|
readonly width: 720;
|
|
757
768
|
}, {
|
|
758
769
|
readonly doesResize: true;
|
|
770
|
+
readonly embedOnPaste: true;
|
|
759
771
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
760
772
|
readonly height: 500;
|
|
761
773
|
readonly hostnames: readonly ["gist.github.com"];
|
|
@@ -765,6 +777,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
765
777
|
readonly width: 720;
|
|
766
778
|
}, {
|
|
767
779
|
readonly doesResize: true;
|
|
780
|
+
readonly embedOnPaste: true;
|
|
768
781
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
769
782
|
readonly height: 500;
|
|
770
783
|
readonly hostnames: readonly ["replit.com"];
|
|
@@ -774,6 +787,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
774
787
|
readonly width: 720;
|
|
775
788
|
}, {
|
|
776
789
|
readonly doesResize: true;
|
|
790
|
+
readonly embedOnPaste: true;
|
|
777
791
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
778
792
|
readonly height: 500;
|
|
779
793
|
readonly hostnames: readonly ["felt.com"];
|
|
@@ -783,6 +797,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
783
797
|
readonly width: 720;
|
|
784
798
|
}, {
|
|
785
799
|
readonly doesResize: true;
|
|
800
|
+
readonly embedOnPaste: true;
|
|
786
801
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
787
802
|
readonly height: 500;
|
|
788
803
|
readonly hostnames: readonly ["open.spotify.com"];
|
|
@@ -794,6 +809,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
794
809
|
readonly width: 720;
|
|
795
810
|
}, {
|
|
796
811
|
readonly doesResize: true;
|
|
812
|
+
readonly embedOnPaste: true;
|
|
797
813
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
798
814
|
readonly height: 360;
|
|
799
815
|
readonly hostnames: readonly ["vimeo.com", "player.vimeo.com"];
|
|
@@ -804,6 +820,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
804
820
|
readonly width: 640;
|
|
805
821
|
}, {
|
|
806
822
|
readonly doesResize: true;
|
|
823
|
+
readonly embedOnPaste: true;
|
|
807
824
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
808
825
|
readonly height: 500;
|
|
809
826
|
readonly hostnames: readonly ["excalidraw.com"];
|
|
@@ -815,6 +832,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
815
832
|
}, {
|
|
816
833
|
readonly backgroundColor: "#fff";
|
|
817
834
|
readonly doesResize: true;
|
|
835
|
+
readonly embedOnPaste: true;
|
|
818
836
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
819
837
|
readonly height: 500;
|
|
820
838
|
readonly hostnames: readonly ["observablehq.com"];
|
|
@@ -825,6 +843,7 @@ export declare const DEFAULT_EMBED_DEFINITIONS: readonly [{
|
|
|
825
843
|
readonly width: 720;
|
|
826
844
|
}, {
|
|
827
845
|
readonly doesResize: true;
|
|
846
|
+
readonly embedOnPaste: true;
|
|
828
847
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
829
848
|
readonly height: 450;
|
|
830
849
|
readonly hostnames: readonly ["desmos.com"];
|
|
@@ -1428,6 +1447,7 @@ export declare interface EmbedDefinition {
|
|
|
1428
1447
|
readonly overridePermissions?: TLEmbedShapePermissions;
|
|
1429
1448
|
readonly instructionLink?: string;
|
|
1430
1449
|
readonly backgroundColor?: string;
|
|
1450
|
+
readonly embedOnPaste?: boolean;
|
|
1431
1451
|
readonly overrideOutlineRadius?: number;
|
|
1432
1452
|
readonly toEmbedUrl: (url: string) => string | undefined;
|
|
1433
1453
|
readonly fromEmbedUrl: (url: string) => string | undefined;
|
|
@@ -1969,6 +1989,7 @@ export declare class LineShapeUtil extends ShapeUtil<TLLineShape> {
|
|
|
1969
1989
|
hideRotateHandle(): boolean;
|
|
1970
1990
|
hideSelectionBoundsFg(): boolean;
|
|
1971
1991
|
hideSelectionBoundsBg(): boolean;
|
|
1992
|
+
hideInMinimap(): boolean;
|
|
1972
1993
|
getDefaultProps(): TLLineShape['props'];
|
|
1973
1994
|
getGeometry(shape: TLLineShape): PathBuilderGeometry2d;
|
|
1974
1995
|
getHandles(shape: TLLineShape): TLHandle[];
|
package/dist-esm/index.mjs
CHANGED
|
@@ -28,7 +28,8 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
28
28
|
return url;
|
|
29
29
|
}
|
|
30
30
|
return;
|
|
31
|
-
}
|
|
31
|
+
},
|
|
32
|
+
embedOnPaste: false
|
|
32
33
|
},
|
|
33
34
|
{
|
|
34
35
|
type: "figma",
|
|
@@ -55,7 +56,8 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
55
56
|
}
|
|
56
57
|
}
|
|
57
58
|
return;
|
|
58
|
-
}
|
|
59
|
+
},
|
|
60
|
+
embedOnPaste: true
|
|
59
61
|
},
|
|
60
62
|
{
|
|
61
63
|
type: "google_maps",
|
|
@@ -98,7 +100,8 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
98
100
|
return `https://www.google.com/maps/@${lat},${lon},${zoomOrMeters}${mapType === "roadmap" ? "z" : "m"}`;
|
|
99
101
|
}
|
|
100
102
|
return;
|
|
101
|
-
}
|
|
103
|
+
},
|
|
104
|
+
embedOnPaste: true
|
|
102
105
|
},
|
|
103
106
|
{
|
|
104
107
|
type: "val_town",
|
|
@@ -124,7 +127,8 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
124
127
|
return `https://www.val.town/v/${matches[1]}`;
|
|
125
128
|
}
|
|
126
129
|
return;
|
|
127
|
-
}
|
|
130
|
+
},
|
|
131
|
+
embedOnPaste: true
|
|
128
132
|
},
|
|
129
133
|
{
|
|
130
134
|
type: "codesandbox",
|
|
@@ -150,7 +154,8 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
150
154
|
return `https://codesandbox.io/s/${matches[1]}`;
|
|
151
155
|
}
|
|
152
156
|
return;
|
|
153
|
-
}
|
|
157
|
+
},
|
|
158
|
+
embedOnPaste: true
|
|
154
159
|
},
|
|
155
160
|
{
|
|
156
161
|
type: "codepen",
|
|
@@ -178,7 +183,8 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
178
183
|
return `https://codepen.io/${user}/pen/${id}`;
|
|
179
184
|
}
|
|
180
185
|
return;
|
|
181
|
-
}
|
|
186
|
+
},
|
|
187
|
+
embedOnPaste: true
|
|
182
188
|
},
|
|
183
189
|
{
|
|
184
190
|
type: "scratch",
|
|
@@ -187,6 +193,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
187
193
|
width: 520,
|
|
188
194
|
height: 400,
|
|
189
195
|
doesResize: false,
|
|
196
|
+
embedOnPaste: true,
|
|
190
197
|
toEmbedUrl: (url) => {
|
|
191
198
|
const SCRATCH_URL_REGEXP = /https?:\/\/scratch.mit.edu\/projects\/([^/]+)/;
|
|
192
199
|
const matches = url.match(SCRATCH_URL_REGEXP);
|
|
@@ -218,6 +225,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
218
225
|
"allow-popups-to-escape-sandbox": true
|
|
219
226
|
},
|
|
220
227
|
isAspectRatioLocked: true,
|
|
228
|
+
embedOnPaste: true,
|
|
221
229
|
toEmbedUrl: (url) => {
|
|
222
230
|
const urlObj = safeParseUrl(url);
|
|
223
231
|
if (!urlObj) return;
|
|
@@ -279,6 +287,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
279
287
|
overridePermissions: {
|
|
280
288
|
"allow-popups-to-escape-sandbox": true
|
|
281
289
|
},
|
|
290
|
+
embedOnPaste: true,
|
|
282
291
|
toEmbedUrl: (url) => {
|
|
283
292
|
const urlObj = safeParseUrl(url);
|
|
284
293
|
const cidQs = urlObj?.searchParams.get("cid");
|
|
@@ -320,6 +329,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
320
329
|
overridePermissions: {
|
|
321
330
|
"allow-popups-to-escape-sandbox": true
|
|
322
331
|
},
|
|
332
|
+
embedOnPaste: true,
|
|
323
333
|
toEmbedUrl: (url) => {
|
|
324
334
|
const urlObj = safeParseUrl(url);
|
|
325
335
|
if (urlObj?.pathname.match(/^\/presentation/) && urlObj?.pathname.match(/\/pub\/?$/)) {
|
|
@@ -352,6 +362,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
352
362
|
width: 720,
|
|
353
363
|
height: 500,
|
|
354
364
|
doesResize: true,
|
|
365
|
+
embedOnPaste: true,
|
|
355
366
|
// Security warning:
|
|
356
367
|
// Gists allow adding .json extensions to the URL which return JSONP.
|
|
357
368
|
// Furthermore, the JSONP can include callbacks that execute arbitrary JavaScript.
|
|
@@ -384,10 +395,12 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
384
395
|
width: 720,
|
|
385
396
|
height: 500,
|
|
386
397
|
doesResize: true,
|
|
398
|
+
embedOnPaste: true,
|
|
387
399
|
toEmbedUrl: (url) => {
|
|
388
400
|
const urlObj = safeParseUrl(url);
|
|
389
401
|
if (urlObj && urlObj.pathname.match(/\/@([^/]+)\/([^/]+)/)) {
|
|
390
|
-
|
|
402
|
+
urlObj.searchParams.append("embed", "true");
|
|
403
|
+
return urlObj.href;
|
|
391
404
|
}
|
|
392
405
|
return;
|
|
393
406
|
},
|
|
@@ -407,6 +420,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
407
420
|
width: 720,
|
|
408
421
|
height: 500,
|
|
409
422
|
doesResize: true,
|
|
423
|
+
embedOnPaste: true,
|
|
410
424
|
toEmbedUrl: (url) => {
|
|
411
425
|
const urlObj = safeParseUrl(url);
|
|
412
426
|
if (urlObj && urlObj.pathname.match(/^\/map\//)) {
|
|
@@ -432,6 +446,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
432
446
|
minHeight: 500,
|
|
433
447
|
overrideOutlineRadius: 12,
|
|
434
448
|
doesResize: true,
|
|
449
|
+
embedOnPaste: true,
|
|
435
450
|
toEmbedUrl: (url) => {
|
|
436
451
|
const urlObj = safeParseUrl(url);
|
|
437
452
|
if (urlObj && urlObj.pathname.match(/^\/(artist|album)\//)) {
|
|
@@ -455,6 +470,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
455
470
|
height: 360,
|
|
456
471
|
doesResize: true,
|
|
457
472
|
isAspectRatioLocked: true,
|
|
473
|
+
embedOnPaste: true,
|
|
458
474
|
toEmbedUrl: (url) => {
|
|
459
475
|
const urlObj = safeParseUrl(url);
|
|
460
476
|
if (urlObj && urlObj.hostname === "vimeo.com") {
|
|
@@ -483,6 +499,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
483
499
|
height: 500,
|
|
484
500
|
doesResize: true,
|
|
485
501
|
isAspectRatioLocked: true,
|
|
502
|
+
embedOnPaste: true,
|
|
486
503
|
toEmbedUrl: (url) => {
|
|
487
504
|
const urlObj = safeParseUrl(url);
|
|
488
505
|
if (urlObj && urlObj.hash.match(/#room=/)) {
|
|
@@ -507,6 +524,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
507
524
|
doesResize: true,
|
|
508
525
|
isAspectRatioLocked: false,
|
|
509
526
|
backgroundColor: "#fff",
|
|
527
|
+
embedOnPaste: true,
|
|
510
528
|
toEmbedUrl: (url) => {
|
|
511
529
|
const urlObj = safeParseUrl(url);
|
|
512
530
|
if (urlObj && urlObj.pathname.match(/^\/@([^/]+)\/([^/]+)\/?$/)) {
|
|
@@ -536,6 +554,7 @@ const DEFAULT_EMBED_DEFINITIONS = [
|
|
|
536
554
|
width: 700,
|
|
537
555
|
height: 450,
|
|
538
556
|
doesResize: true,
|
|
557
|
+
embedOnPaste: true,
|
|
539
558
|
toEmbedUrl: (url) => {
|
|
540
559
|
const urlObj = safeParseUrl(url);
|
|
541
560
|
if (urlObj && urlObj.hostname === "www.desmos.com" && urlObj.pathname.match(/^\/calculator\/([^/]+)\/?$/) && urlObj.search === "" && urlObj.hash === "") {
|