@uipath/apollo-react 4.63.0 → 4.65.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.
- package/dist/canvas/components/BaseCanvas/BaseCanvas.cjs +2 -1
- package/dist/canvas/components/BaseCanvas/BaseCanvas.d.ts.map +1 -1
- package/dist/canvas/components/BaseCanvas/BaseCanvas.js +2 -1
- package/dist/canvas/components/BaseCanvas/BaseCanvas.types.d.ts +2 -0
- package/dist/canvas/components/BaseCanvas/BaseCanvas.types.d.ts.map +1 -1
- package/dist/canvas/components/BaseCanvas/CanvasProviders.cjs +8 -4
- package/dist/canvas/components/BaseCanvas/CanvasProviders.d.ts +3 -1
- package/dist/canvas/components/BaseCanvas/CanvasProviders.d.ts.map +1 -1
- package/dist/canvas/components/BaseCanvas/CanvasProviders.js +8 -4
- package/dist/canvas/components/ProbeCard/ProbeCard.cjs +5 -5
- package/dist/canvas/components/ProbeCard/ProbeCard.d.ts.map +1 -1
- package/dist/canvas/components/ProbeCard/ProbeCard.js +2 -2
- package/dist/canvas/components/ProbeCard/useDragSession.cjs +2 -2
- package/dist/canvas/components/ProbeCard/useDragSession.js +1 -1
- package/dist/canvas/components/StickyNoteNode/StickyNoteCanvasOptionsContext.cjs +61 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteCanvasOptionsContext.d.ts +11 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteCanvasOptionsContext.d.ts.map +1 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteCanvasOptionsContext.js +24 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMedia.cjs +449 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMedia.d.ts +45 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMedia.d.ts.map +1 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMedia.js +394 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMediaDialog.cjs +379 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMediaDialog.d.ts +8 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMediaDialog.d.ts.map +1 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMediaDialog.js +345 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMediaMarkdown.cjs +279 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMediaMarkdown.d.ts +18 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMediaMarkdown.d.ts.map +1 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteMediaMarkdown.js +242 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteNode.cjs +193 -41
- package/dist/canvas/components/StickyNoteNode/StickyNoteNode.d.ts +2 -1
- package/dist/canvas/components/StickyNoteNode/StickyNoteNode.d.ts.map +1 -1
- package/dist/canvas/components/StickyNoteNode/StickyNoteNode.js +193 -41
- package/dist/canvas/components/StickyNoteNode/StickyNoteNode.types.d.ts +4 -0
- package/dist/canvas/components/StickyNoteNode/StickyNoteNode.types.d.ts.map +1 -1
- package/dist/canvas/hooks/useLatestRef.d.ts.map +1 -0
- package/dist/canvas/locales/en.cjs +1 -1
- package/dist/canvas/locales/en.d.ts.map +1 -1
- package/dist/canvas/locales/en.js +1 -1
- package/dist/canvas/styles/tailwind.canvas.css +1 -1
- package/package.json +1 -1
- package/dist/canvas/components/ProbeCard/useLatestRef.d.ts.map +0 -1
- /package/dist/canvas/{components/ProbeCard → hooks}/useLatestRef.cjs +0 -0
- /package/dist/canvas/{components/ProbeCard → hooks}/useLatestRef.d.ts +0 -0
- /package/dist/canvas/{components/ProbeCard → hooks}/useLatestRef.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StickyNoteNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StickyNoteNode/StickyNoteNode.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAM1E,OAAsB,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"StickyNoteNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StickyNoteNode/StickyNoteNode.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAM1E,OAAsB,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA+ChE,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEd,0BAA0B,EAE3B,MAAM,wBAAwB,CAAC;AAMhC,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IACjD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iBAAiB,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAC;IAC1D,kBAAkB,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;CAC5C;AA4tBD,eAAO,MAAM,cAAc,iUA/rBxB,mBAAmB,6CA+rBwE,CAAC"}
|
|
@@ -10,12 +10,17 @@ import remark_breaks from "remark-breaks";
|
|
|
10
10
|
import remark_gfm from "remark-gfm";
|
|
11
11
|
import { useSafeLingui } from "../../../i18n/index.js";
|
|
12
12
|
import { GRID_SPACING } from "../../constants.js";
|
|
13
|
+
import { useLatestRef } from "../../hooks/useLatestRef.js";
|
|
13
14
|
import { areNodePropsEqualIgnoringPosition } from "../../utils/nodePropsEqual.js";
|
|
14
15
|
import { useSelectionState } from "../BaseCanvas/SelectionStateContext.js";
|
|
15
16
|
import { NodeViewportOverlay } from "../NodeViewportOverlay.js";
|
|
16
17
|
import { NodeToolbar } from "../Toolbar/index.js";
|
|
17
18
|
import { FormattingToolbar } from "./FormattingToolbar.js";
|
|
18
19
|
import { activeFormatsEqual, continueListOnEnter, detectActiveFormats } from "./markdown-formatting/index.js";
|
|
20
|
+
import { useStickyNoteCanvasOptions } from "./StickyNoteCanvasOptionsContext.js";
|
|
21
|
+
import { findStickyNoteMediaAtSelection, insertStickyNoteMedia, parseStickyNoteMediaTokens, replaceStickyNoteMedia, serializeStickyNoteMedia } from "./StickyNoteMedia.js";
|
|
22
|
+
import { StickyNoteMediaDialog } from "./StickyNoteMediaDialog.js";
|
|
23
|
+
import { StickyNoteMediaMarkdownProvider, createStickyNoteMediaMarkdownComponents } from "./StickyNoteMediaMarkdown.js";
|
|
19
24
|
import { BottomCornerIndicators, ColorOption, ColorPickerPanel, RESIZE_CONTROL_Z_INDEX, ResizeHandle, StickyNoteContainer, StickyNoteMarkdown, StickyNoteTextArea, StickyNoteWrapper, TopCornerIndicators, stickyNoteGlobalStyles } from "./StickyNoteNode.styles.js";
|
|
20
25
|
import { STICKY_NOTE_COLORS, withAlpha } from "./StickyNoteNode.types.js";
|
|
21
26
|
import { preserveNewlines, readTextSelection } from "./StickyNoteNode.utils.js";
|
|
@@ -23,18 +28,36 @@ import { useMarkdownShortcuts } from "./useMarkdownShortcuts.js";
|
|
|
23
28
|
import { useScrollCapture } from "./useScrollCapture.js";
|
|
24
29
|
const minWidth = 8 * GRID_SPACING;
|
|
25
30
|
const minHeight = 8 * GRID_SPACING;
|
|
26
|
-
const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = 'Add text', renderPlaceholderOnSelect = false, readOnly
|
|
31
|
+
const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = 'Add text', renderPlaceholderOnSelect = false, readOnly: readOnlyProp, onContentChange, onColorChange, onResize, onResizeStart, onResizeEnd, enableMediaEmbedding: enableMediaEmbeddingProp, formattingActions, markdownComponents: customMarkdownComponents })=>{
|
|
27
32
|
const { _ } = useSafeLingui();
|
|
33
|
+
const canvasOptions = useStickyNoteCanvasOptions();
|
|
34
|
+
const readOnly = readOnlyProp ?? canvasOptions.readOnly;
|
|
35
|
+
const enableMediaEmbedding = enableMediaEmbeddingProp ?? canvasOptions.enableMediaEmbedding;
|
|
28
36
|
const { updateNodeData, deleteElements } = useReactFlow();
|
|
29
37
|
const { multipleNodesSelected } = useSelectionState();
|
|
30
38
|
const [isEditing, setIsEditing] = useState(!readOnly && (data.autoFocus ?? false));
|
|
31
39
|
const [isResizing, setIsResizing] = useState(false);
|
|
32
40
|
const [isColorPickerOpen, setIsColorPickerOpen] = useState(false);
|
|
41
|
+
const [mediaDialog, setMediaDialog] = useState(null);
|
|
33
42
|
const [localContent, setLocalContent] = useState(data.content || '');
|
|
34
43
|
const latestContentRef = useRef(localContent);
|
|
35
44
|
const textAreaRef = useRef(null);
|
|
36
45
|
const formattingToolbarRef = useRef(null);
|
|
37
46
|
const skipBlurRef = useRef(null);
|
|
47
|
+
const resizeActiveRef = useRef(false);
|
|
48
|
+
const resizeLifecycle = {
|
|
49
|
+
content: data.content,
|
|
50
|
+
id,
|
|
51
|
+
isEditing,
|
|
52
|
+
localContent,
|
|
53
|
+
onContentChange,
|
|
54
|
+
onResize,
|
|
55
|
+
onResizeEnd,
|
|
56
|
+
onResizeStart,
|
|
57
|
+
readOnly,
|
|
58
|
+
updateNodeData
|
|
59
|
+
};
|
|
60
|
+
const resizeLifecycleRef = useLatestRef(resizeLifecycle);
|
|
38
61
|
const { ref: markdownRef, scrollCaptureProps } = useScrollCapture();
|
|
39
62
|
const colorButtonRef = useRef(null);
|
|
40
63
|
const [activeFormats, setActiveFormats] = useState({
|
|
@@ -47,6 +70,15 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
47
70
|
const colorKey = data.color || 'yellow';
|
|
48
71
|
const color = STICKY_NOTE_COLORS[colorKey] ?? STICKY_NOTE_COLORS.yellow;
|
|
49
72
|
const colorWithAlpha = withAlpha(color);
|
|
73
|
+
const endResizeLifecycle = useCallback(()=>{
|
|
74
|
+
if (!resizeActiveRef.current) return;
|
|
75
|
+
resizeActiveRef.current = false;
|
|
76
|
+
setIsResizing(false);
|
|
77
|
+
const latestOnResizeEnd = resizeLifecycleRef.current.onResizeEnd;
|
|
78
|
+
if (latestOnResizeEnd) queueMicrotask(latestOnResizeEnd);
|
|
79
|
+
}, [
|
|
80
|
+
resizeLifecycleRef
|
|
81
|
+
]);
|
|
50
82
|
const updateLocalContent = useCallback((content)=>{
|
|
51
83
|
latestContentRef.current = content;
|
|
52
84
|
setLocalContent(content);
|
|
@@ -204,6 +236,92 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
204
236
|
updateLocalContent,
|
|
205
237
|
updateNodeData
|
|
206
238
|
]);
|
|
239
|
+
const openMediaDialog = useCallback((context)=>{
|
|
240
|
+
const { selection } = context;
|
|
241
|
+
setMediaDialog({
|
|
242
|
+
source: 'editor',
|
|
243
|
+
context,
|
|
244
|
+
token: findStickyNoteMediaAtSelection(selection.value, selection.selectionStart, selection.selectionEnd)
|
|
245
|
+
});
|
|
246
|
+
}, []);
|
|
247
|
+
const mediaFormattingAction = useMemo(()=>({
|
|
248
|
+
id: 'sticky-note-embed-media',
|
|
249
|
+
icon: /*#__PURE__*/ jsx(CanvasIcon, {
|
|
250
|
+
icon: "image-plus",
|
|
251
|
+
size: 14
|
|
252
|
+
}),
|
|
253
|
+
label: _({
|
|
254
|
+
id: 'sticky-note.media.embed-action',
|
|
255
|
+
message: 'Embed image or video'
|
|
256
|
+
}),
|
|
257
|
+
onAction: openMediaDialog
|
|
258
|
+
}), [
|
|
259
|
+
_,
|
|
260
|
+
openMediaDialog
|
|
261
|
+
]);
|
|
262
|
+
const effectiveFormattingActions = useMemo(()=>enableMediaEmbedding ? [
|
|
263
|
+
mediaFormattingAction,
|
|
264
|
+
...formattingActions ?? []
|
|
265
|
+
] : formattingActions ?? [], [
|
|
266
|
+
enableMediaEmbedding,
|
|
267
|
+
formattingActions,
|
|
268
|
+
mediaFormattingAction
|
|
269
|
+
]);
|
|
270
|
+
const handleEditRenderedMedia = useCallback((media, range)=>{
|
|
271
|
+
const sourceContent = latestContentRef.current;
|
|
272
|
+
const renderedTokens = parseStickyNoteMediaTokens(preserveNewlines(sourceContent));
|
|
273
|
+
const renderedIndex = renderedTokens.findIndex((token)=>token.start === range.start && token.end === range.end);
|
|
274
|
+
const sourceToken = renderedIndex >= 0 ? parseStickyNoteMediaTokens(sourceContent)[renderedIndex] : void 0;
|
|
275
|
+
setMediaDialog({
|
|
276
|
+
source: 'rendered',
|
|
277
|
+
token: sourceToken ?? {
|
|
278
|
+
media,
|
|
279
|
+
...range
|
|
280
|
+
}
|
|
281
|
+
});
|
|
282
|
+
}, []);
|
|
283
|
+
const cancelMediaDialog = useCallback(()=>{
|
|
284
|
+
const current = mediaDialog;
|
|
285
|
+
setMediaDialog(null);
|
|
286
|
+
if (current?.source === 'editor') current.context.resume();
|
|
287
|
+
}, [
|
|
288
|
+
mediaDialog
|
|
289
|
+
]);
|
|
290
|
+
useEffect(()=>{
|
|
291
|
+
if (!mediaDialog || enableMediaEmbedding && !readOnly) return;
|
|
292
|
+
setMediaDialog(null);
|
|
293
|
+
skipBlurRef.current = null;
|
|
294
|
+
if (!readOnly && 'editor' === mediaDialog.source) mediaDialog.context.resume();
|
|
295
|
+
}, [
|
|
296
|
+
enableMediaEmbedding,
|
|
297
|
+
mediaDialog,
|
|
298
|
+
readOnly
|
|
299
|
+
]);
|
|
300
|
+
const submitMediaDialog = useCallback((media)=>{
|
|
301
|
+
if (!mediaDialog) return;
|
|
302
|
+
const block = serializeStickyNoteMedia(media);
|
|
303
|
+
if ('editor' === mediaDialog.source) {
|
|
304
|
+
const currentValue = mediaDialog.context.currentValue();
|
|
305
|
+
const next = mediaDialog.token ? replaceStickyNoteMedia(currentValue, mediaDialog.token, block) ?? insertStickyNoteMedia(currentValue, block, null) : insertStickyNoteMedia(currentValue, block, mediaDialog.context.selection);
|
|
306
|
+
setMediaDialog(null);
|
|
307
|
+
mediaDialog.context.commit(next);
|
|
308
|
+
return;
|
|
309
|
+
}
|
|
310
|
+
const currentValue = latestContentRef.current;
|
|
311
|
+
const next = replaceStickyNoteMedia(currentValue, mediaDialog.token, block) ?? insertStickyNoteMedia(currentValue, block, null);
|
|
312
|
+
setMediaDialog(null);
|
|
313
|
+
updateLocalContent(next.value);
|
|
314
|
+
onContentChange?.(next.value);
|
|
315
|
+
updateNodeData(id, {
|
|
316
|
+
content: next.value
|
|
317
|
+
});
|
|
318
|
+
}, [
|
|
319
|
+
id,
|
|
320
|
+
mediaDialog,
|
|
321
|
+
onContentChange,
|
|
322
|
+
updateLocalContent,
|
|
323
|
+
updateNodeData
|
|
324
|
+
]);
|
|
207
325
|
const updateActiveFormats = useCallback(()=>{
|
|
208
326
|
if (!textAreaRef.current) return;
|
|
209
327
|
const next = detectActiveFormats({
|
|
@@ -246,13 +364,16 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
246
364
|
updateLocalContent
|
|
247
365
|
]);
|
|
248
366
|
const handleResizeStart = useCallback(()=>{
|
|
249
|
-
if (
|
|
250
|
-
|
|
251
|
-
|
|
367
|
+
if (resizeActiveRef.current) return;
|
|
368
|
+
resizeActiveRef.current = true;
|
|
369
|
+
const lifecycle = resizeLifecycleRef.current;
|
|
370
|
+
if (lifecycle.isEditing) {
|
|
371
|
+
const content = textAreaRef.current?.value ?? lifecycle.localContent;
|
|
372
|
+
if (!lifecycle.readOnly && content !== lifecycle.content) {
|
|
252
373
|
skipBlurRef.current = content;
|
|
253
374
|
flushSync(()=>{
|
|
254
|
-
onContentChange?.(content);
|
|
255
|
-
updateNodeData(id, {
|
|
375
|
+
lifecycle.onContentChange?.(content);
|
|
376
|
+
lifecycle.updateNodeData(lifecycle.id, {
|
|
256
377
|
content
|
|
257
378
|
});
|
|
258
379
|
});
|
|
@@ -260,24 +381,20 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
260
381
|
textAreaRef.current?.blur();
|
|
261
382
|
}
|
|
262
383
|
setIsResizing(true);
|
|
263
|
-
onResizeStart?.();
|
|
384
|
+
lifecycle.onResizeStart?.();
|
|
264
385
|
}, [
|
|
265
|
-
|
|
266
|
-
id,
|
|
267
|
-
isEditing,
|
|
268
|
-
localContent,
|
|
269
|
-
onContentChange,
|
|
270
|
-
onResizeStart,
|
|
271
|
-
readOnly,
|
|
272
|
-
updateNodeData
|
|
386
|
+
resizeLifecycleRef
|
|
273
387
|
]);
|
|
274
388
|
const handleResizeEnd = useCallback((_event, params)=>{
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
389
|
+
if (!resizeActiveRef.current) return;
|
|
390
|
+
try {
|
|
391
|
+
resizeLifecycleRef.current.onResize?.(params.width, params.height);
|
|
392
|
+
} finally{
|
|
393
|
+
endResizeLifecycle();
|
|
394
|
+
}
|
|
278
395
|
}, [
|
|
279
|
-
|
|
280
|
-
|
|
396
|
+
endResizeLifecycle,
|
|
397
|
+
resizeLifecycleRef
|
|
281
398
|
]);
|
|
282
399
|
const handleColorChange = useCallback((newColor)=>{
|
|
283
400
|
onColorChange?.(newColor);
|
|
@@ -320,9 +437,16 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
320
437
|
const builtInMarkdownComponents = useMemo(()=>({
|
|
321
438
|
a: ({ node: _node, href, children, ...props })=>/*#__PURE__*/ jsx("a", {
|
|
322
439
|
...props,
|
|
440
|
+
className: [
|
|
441
|
+
'nodrag',
|
|
442
|
+
'nopan',
|
|
443
|
+
props.className
|
|
444
|
+
].filter(Boolean).join(' '),
|
|
323
445
|
href: href,
|
|
324
446
|
target: "_blank",
|
|
325
447
|
rel: "noopener noreferrer",
|
|
448
|
+
onPointerDown: (event)=>event.stopPropagation(),
|
|
449
|
+
onMouseDown: (event)=>event.stopPropagation(),
|
|
326
450
|
onClick: (e)=>{
|
|
327
451
|
e.stopPropagation();
|
|
328
452
|
},
|
|
@@ -332,12 +456,27 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
332
456
|
children: children
|
|
333
457
|
})
|
|
334
458
|
}), []);
|
|
459
|
+
const mediaMarkdownComponents = useMemo(()=>createStickyNoteMediaMarkdownComponents(customMarkdownComponents?.img), [
|
|
460
|
+
customMarkdownComponents?.img
|
|
461
|
+
]);
|
|
335
462
|
const markdownComponents = useMemo(()=>({
|
|
336
463
|
...customMarkdownComponents,
|
|
464
|
+
...enableMediaEmbedding ? mediaMarkdownComponents : {},
|
|
337
465
|
...builtInMarkdownComponents
|
|
338
466
|
}), [
|
|
339
467
|
builtInMarkdownComponents,
|
|
340
|
-
customMarkdownComponents
|
|
468
|
+
customMarkdownComponents,
|
|
469
|
+
enableMediaEmbedding,
|
|
470
|
+
mediaMarkdownComponents
|
|
471
|
+
]);
|
|
472
|
+
const mediaMarkdownOptions = useMemo(()=>({
|
|
473
|
+
editable: enableMediaEmbedding && selected && !readOnly,
|
|
474
|
+
onEditMedia: handleEditRenderedMedia
|
|
475
|
+
}), [
|
|
476
|
+
enableMediaEmbedding,
|
|
477
|
+
handleEditRenderedMedia,
|
|
478
|
+
readOnly,
|
|
479
|
+
selected
|
|
341
480
|
]);
|
|
342
481
|
const toolbarConfig = useMemo(()=>{
|
|
343
482
|
const actions = [
|
|
@@ -402,6 +541,7 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
402
541
|
handleDelete
|
|
403
542
|
]);
|
|
404
543
|
const shouldRenderToolbarOverlay = !readOnly && selected && !dragging && !isResizing && !multipleNodesSelected;
|
|
544
|
+
const shouldRenderResizeControls = !readOnly || isResizing;
|
|
405
545
|
return /*#__PURE__*/ jsxs(Fragment, {
|
|
406
546
|
children: [
|
|
407
547
|
/*#__PURE__*/ jsx(Global, {
|
|
@@ -410,12 +550,13 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
410
550
|
/*#__PURE__*/ jsxs(StickyNoteWrapper, {
|
|
411
551
|
"data-sticky-note": true,
|
|
412
552
|
children: [
|
|
413
|
-
|
|
553
|
+
shouldRenderResizeControls && /*#__PURE__*/ jsxs(Fragment, {
|
|
414
554
|
children: [
|
|
415
555
|
/*#__PURE__*/ jsx(NodeResizeControl, {
|
|
416
556
|
style: {
|
|
417
557
|
background: 'transparent',
|
|
418
558
|
border: 'none',
|
|
559
|
+
pointerEvents: readOnly ? 'none' : void 0,
|
|
419
560
|
zIndex: RESIZE_CONTROL_Z_INDEX
|
|
420
561
|
},
|
|
421
562
|
position: "top-left",
|
|
@@ -424,7 +565,7 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
424
565
|
onResizeStart: handleResizeStart,
|
|
425
566
|
onResizeEnd: handleResizeEnd,
|
|
426
567
|
children: /*#__PURE__*/ jsx(ResizeHandle, {
|
|
427
|
-
selected: selected,
|
|
568
|
+
selected: selected && !readOnly,
|
|
428
569
|
cursor: "nwse-resize"
|
|
429
570
|
})
|
|
430
571
|
}),
|
|
@@ -432,6 +573,7 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
432
573
|
style: {
|
|
433
574
|
background: 'transparent',
|
|
434
575
|
border: 'none',
|
|
576
|
+
pointerEvents: readOnly ? 'none' : void 0,
|
|
435
577
|
zIndex: RESIZE_CONTROL_Z_INDEX
|
|
436
578
|
},
|
|
437
579
|
position: "top-right",
|
|
@@ -440,7 +582,7 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
440
582
|
onResizeStart: handleResizeStart,
|
|
441
583
|
onResizeEnd: handleResizeEnd,
|
|
442
584
|
children: /*#__PURE__*/ jsx(ResizeHandle, {
|
|
443
|
-
selected: selected,
|
|
585
|
+
selected: selected && !readOnly,
|
|
444
586
|
cursor: "nesw-resize"
|
|
445
587
|
})
|
|
446
588
|
}),
|
|
@@ -448,6 +590,7 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
448
590
|
style: {
|
|
449
591
|
background: 'transparent',
|
|
450
592
|
border: 'none',
|
|
593
|
+
pointerEvents: readOnly ? 'none' : void 0,
|
|
451
594
|
zIndex: RESIZE_CONTROL_Z_INDEX
|
|
452
595
|
},
|
|
453
596
|
position: "bottom-left",
|
|
@@ -456,7 +599,7 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
456
599
|
onResizeStart: handleResizeStart,
|
|
457
600
|
onResizeEnd: handleResizeEnd,
|
|
458
601
|
children: /*#__PURE__*/ jsx(ResizeHandle, {
|
|
459
|
-
selected: selected,
|
|
602
|
+
selected: selected && !readOnly,
|
|
460
603
|
cursor: "nesw-resize"
|
|
461
604
|
})
|
|
462
605
|
}),
|
|
@@ -464,6 +607,7 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
464
607
|
style: {
|
|
465
608
|
background: 'transparent',
|
|
466
609
|
border: 'none',
|
|
610
|
+
pointerEvents: readOnly ? 'none' : void 0,
|
|
467
611
|
zIndex: RESIZE_CONTROL_Z_INDEX
|
|
468
612
|
},
|
|
469
613
|
position: "bottom-right",
|
|
@@ -472,7 +616,7 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
472
616
|
onResizeStart: handleResizeStart,
|
|
473
617
|
onResizeEnd: handleResizeEnd,
|
|
474
618
|
children: /*#__PURE__*/ jsx(ResizeHandle, {
|
|
475
|
-
selected: selected,
|
|
619
|
+
selected: selected && !readOnly,
|
|
476
620
|
cursor: "nwse-resize"
|
|
477
621
|
})
|
|
478
622
|
})
|
|
@@ -513,27 +657,30 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
513
657
|
activeFormats: activeFormats,
|
|
514
658
|
onFormat: handleFormat,
|
|
515
659
|
onBlur: handleBlur,
|
|
516
|
-
actions:
|
|
660
|
+
actions: effectiveFormattingActions,
|
|
517
661
|
onAction: handleFormattingAction
|
|
518
662
|
})
|
|
519
663
|
]
|
|
520
664
|
}) : /*#__PURE__*/ jsx(StickyNoteMarkdown, {
|
|
521
665
|
ref: markdownRef,
|
|
522
666
|
...scrollCaptureProps,
|
|
523
|
-
children:
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
667
|
+
children: /*#__PURE__*/ jsx(StickyNoteMediaMarkdownProvider, {
|
|
668
|
+
value: mediaMarkdownOptions,
|
|
669
|
+
children: localContent ? /*#__PURE__*/ jsx(react_markdown, {
|
|
670
|
+
remarkPlugins: [
|
|
671
|
+
remark_gfm,
|
|
672
|
+
remark_breaks
|
|
673
|
+
],
|
|
674
|
+
components: markdownComponents,
|
|
675
|
+
children: preserveNewlines(localContent)
|
|
676
|
+
}) : renderPlaceholderOnSelect && selected && /*#__PURE__*/ jsx(react_markdown, {
|
|
677
|
+
remarkPlugins: [
|
|
678
|
+
remark_gfm,
|
|
679
|
+
remark_breaks
|
|
680
|
+
],
|
|
681
|
+
components: markdownComponents,
|
|
682
|
+
children: placeholder
|
|
683
|
+
})
|
|
537
684
|
})
|
|
538
685
|
})
|
|
539
686
|
]
|
|
@@ -595,6 +742,11 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
|
|
|
595
742
|
})
|
|
596
743
|
})
|
|
597
744
|
]
|
|
745
|
+
}),
|
|
746
|
+
enableMediaEmbedding && mediaDialog && /*#__PURE__*/ jsx(StickyNoteMediaDialog, {
|
|
747
|
+
initialMedia: mediaDialog.token?.media,
|
|
748
|
+
onCancel: cancelMediaDialog,
|
|
749
|
+
onSubmit: submitMediaDialog
|
|
598
750
|
})
|
|
599
751
|
]
|
|
600
752
|
});
|
|
@@ -12,6 +12,10 @@ export interface StickyNoteData extends Record<string, unknown> {
|
|
|
12
12
|
content?: string;
|
|
13
13
|
autoFocus?: boolean;
|
|
14
14
|
}
|
|
15
|
+
export interface StickyNoteCanvasOptions {
|
|
16
|
+
readonly readOnly?: boolean;
|
|
17
|
+
readonly enableMediaEmbedding?: boolean;
|
|
18
|
+
}
|
|
15
19
|
export declare function withAlpha(hex: string, alpha?: number): string;
|
|
16
20
|
export type TextSelection = {
|
|
17
21
|
value: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StickyNoteNode.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StickyNoteNode/StickyNoteNode.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMvC,eAAO,MAAM,kBAAkB;;;;;;CAMrB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAE9D,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC7D,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAWD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,GAAE,MAA6B,GAAG,MAAM,CAyBnF;AAGD,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,MAAM,WAAW,6BAA6B;IAE5C,SAAS,EAAE,aAAa,CAAC;IAEzB,UAAU,EAAE,eAAe,CAAC;IAE5B,YAAY,IAAI,MAAM,CAAC;IAEvB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IAElC,MAAM,IAAI,IAAI,CAAC;CAChB;AAGD,MAAM,WAAW,0BAA0B;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,OAAO,EAAE,6BAA6B,GAAG,IAAI,CAAC;CACxD;AAGD,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,eAAe,GAAG,YAAY,GAAG,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"StickyNoteNode.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StickyNoteNode/StickyNoteNode.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMvC,eAAO,MAAM,kBAAkB;;;;;;CAMrB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAE9D,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC7D,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAGD,MAAM,WAAW,uBAAuB;IAEtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAE5B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CACzC;AAWD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,GAAE,MAA6B,GAAG,MAAM,CAyBnF;AAGD,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,MAAM,WAAW,6BAA6B;IAE5C,SAAS,EAAE,aAAa,CAAC;IAEzB,UAAU,EAAE,eAAe,CAAC;IAE5B,YAAY,IAAI,MAAM,CAAC;IAEvB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IAElC,MAAM,IAAI,IAAI,CAAC;CAChB;AAGD,MAAM,WAAW,0BAA0B;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,OAAO,EAAE,6BAA6B,GAAG,IAAI,CAAC;CACxD;AAGD,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,eAAe,GAAG,YAAY,GAAG,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLatestRef.d.ts","sourceRoot":"","sources":["../../../src/canvas/hooks/useLatestRef.ts"],"names":[],"mappings":"AAIA,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,gCAMvC"}
|
|
@@ -26,7 +26,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
26
26
|
__webpack_require__.d(__webpack_exports__, {
|
|
27
27
|
messages: ()=>messages
|
|
28
28
|
});
|
|
29
|
-
const messages = JSON.parse(
|
|
29
|
+
const messages = JSON.parse('{"add-node-panel.search-nodes":["Search nodes"],"canvas.property_trigger.always_persist":["Always persist"],"canvas.property_trigger.apply_preset_with_label":["Apply ",["label"]],"canvas.property_trigger.auto_hide":["Auto hide"],"canvas.property_trigger.default_layouts":["Default layouts"],"canvas.property_trigger.delete_preset_with_label":["Delete ",["label"]],"canvas.property_trigger.layout_bottom":["Default — Bottom"],"canvas.property_trigger.layout_right":["Default — Right"],"canvas.property_trigger.layout_split":["Default — Split"],"canvas.property_trigger.no_saved_presets":["No saved presets yet."],"canvas.property_trigger.panel_behavior":["Panel behavior"],"canvas.property_trigger.panel_options":["Panel options"],"canvas.property_trigger.properties":["Properties"],"canvas.property_trigger.rename_preset_with_label":["Rename ",["label"]],"canvas.property_trigger.save_as_preset":["Save as preset"],"canvas.property_trigger.saved_presets":["Saved presets"],"loop-node.add-node":["Add node to loop"],"loop-node.execution-count.click-to-jump":["Click to jump to a specific iteration"],"loop-node.execution-count.click-to-return":["Click to return to individual iteration view"],"loop-node.execution-count.jump-to-failed":["Jump to first failed iteration"],"loop-node.execution-count.jump-to-iteration":["Jump to iteration ",["iterationNumber"]," (failed)"],"loop-node.execution-count.next-iteration":["Next iteration"],"loop-node.execution-count.previous-iteration":["Previous iteration"],"loop-node.execution-count.return-to-individual":["Return to individual iteration view"],"loop-node.execution-count.show-aggregate":["Show aggregate across all iterations"],"loop-node.mode.parallel":["Parallel"],"loop-node.mode.sequential":["Sequential"],"loop-node.title":["Loop"],"stage-node.add-first-task":["Add first task"],"stage-node.add-task":["Add task"],"stage-node.add-task-to-parallel-group-above":["Add task to parallel group above"],"stage-node.add-task-to-parallel-group-below":["Add task to parallel group below"],"stage-node.adhoc-tasks":["Manually triggered tasks"],"stage-node.create-parallel-group-with-task-above":["Create parallel group with task above"],"stage-node.create-parallel-group-with-task-below":["Create parallel group with task below"],"stage-node.delete-task":["Delete task"],"stage-node.event-driven-tasks":["Event-triggered tasks"],"stage-node.move-down":["Move down"],"stage-node.move-up":["Move up"],"stage-node.no-tasks":["No tasks"],"stage-node.parallel":["Parallel"],"stage-node.remove-from-parallel-group":["Remove from parallel group"],"stage-node.remove-group-from-stage":["Remove group from stage"],"stage-node.replace-task":["Replace task"],"stage-node.status.cancelled":["Cancelled"],"stage-node.status.completed":["Completed"],"stage-node.status.failed":["Failed"],"stage-node.status.in-progress":["In progress"],"stage-node.status.not-executed":["Not started"],"stage-node.status.paused":["Paused"],"stage-node.status.terminated":["Terminated"],"stage-node.status.warning":["Warning"],"stage-node.task-badge.ran-n-times":[["count","plural",{"one":["Ran ","#"," time"],"other":["Ran ","#"," times"]}]],"stage-node.task-badge.running-again":["Running again"],"stage-node.ungroup-parallel-tasks":["Ungroup parallel tasks"],"stage-node.untitled-stage":["Untitled stage"],"sticky-note.formatting.bold":["Bold (",["boldShortcut"],")"],"sticky-note.formatting.bullet-list":["Bullet list"],"sticky-note.formatting.italic":["Italic (",["italicShortcut"],")"],"sticky-note.formatting.numbered-list":["Numbered list"],"sticky-note.formatting.strikethrough":["Strikethrough (",["strikethroughShortcut"],")"],"sticky-note.formatting.toolbar":["Text formatting"],"sticky-note.media.dialog.add-title":["Embed image or video"],"sticky-note.media.dialog.alt-help":["Describe the image for people who use screen readers."],"sticky-note.media.dialog.alt-label":["Alternative text"],"sticky-note.media.dialog.cancel":["Cancel"],"sticky-note.media.dialog.description":["Add a public link. Video supports YouTube and direct video files."],"sticky-note.media.dialog.edit-title":["Edit media"],"sticky-note.media.dialog.embed":["Embed media"],"sticky-note.media.dialog.full-width-help":["The image or video spans the available width of the sticky note."],"sticky-note.media.dialog.full-width-label":["Make full width"],"sticky-note.media.dialog.image-option":["Image"],"sticky-note.media.dialog.image-preview":["Image preview"],"sticky-note.media.dialog.image-url-help":["Use a public HTTPS image link."],"sticky-note.media.dialog.image-url-label":["Image URL"],"sticky-note.media.dialog.image-url-placeholder":["https://example.com/image.png"],"sticky-note.media.dialog.invalid-url":["Enter a valid public HTTPS URL"],"sticky-note.media.dialog.invalid-youtube":["Add a valid YouTube video URL"],"sticky-note.media.dialog.preview-unavailable":["We could not load a preview for this URL."],"sticky-note.media.dialog.save":["Save changes"],"sticky-note.media.dialog.type-label":["Media type"],"sticky-note.media.dialog.unsupported-video":["Add a YouTube URL or a direct public video file URL such as MP4"],"sticky-note.media.dialog.video-option":["Video"],"sticky-note.media.dialog.video-preview":["Video preview"],"sticky-note.media.dialog.video-url-help":["Use a YouTube link or a direct public HTTPS video file link."],"sticky-note.media.dialog.video-url-label":["Video URL"],"sticky-note.media.dialog.video-url-placeholder":["https://youtube.com/watch?v=… or https://example.com/video.mp4"],"sticky-note.media.edit":["Edit media"],"sticky-note.media.embed-action":["Embed image or video"],"sticky-note.media.image-unavailable":["Image unavailable"],"sticky-note.media.image-unavailable-label":["Image unavailable"],"sticky-note.media.play-video":["Play video"],"sticky-note.media.unavailable":["Media unavailable"],"sticky-note.media.video-label":["Embedded video"],"sticky-note.media.video-unavailable":["Video playback is unavailable."],"sticky-note.media.youtube-title":["YouTube video"],"sticky-note.toolbar.color":["Color"],"sticky-note.toolbar.delete":["Delete"],"sticky-note.toolbar.edit":["Edit"],"toolbox.search":["Search"]}');
|
|
30
30
|
exports.messages = __webpack_exports__.messages;
|
|
31
31
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
32
32
|
"messages"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/canvas/locales/en.ts"],"names":[],"mappings":"AAAkB,OAAO,KAAI,EAAC,QAAQ,EAAC,MAAI,cAAc,CAAC;AAAA,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/canvas/locales/en.ts"],"names":[],"mappings":"AAAkB,OAAO,KAAI,EAAC,QAAQ,EAAC,MAAI,cAAc,CAAC;AAAA,eAAO,MAAM,QAAQ,EAA89M,QAAQ,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const messages = JSON.parse(
|
|
1
|
+
const messages = JSON.parse('{"add-node-panel.search-nodes":["Search nodes"],"canvas.property_trigger.always_persist":["Always persist"],"canvas.property_trigger.apply_preset_with_label":["Apply ",["label"]],"canvas.property_trigger.auto_hide":["Auto hide"],"canvas.property_trigger.default_layouts":["Default layouts"],"canvas.property_trigger.delete_preset_with_label":["Delete ",["label"]],"canvas.property_trigger.layout_bottom":["Default — Bottom"],"canvas.property_trigger.layout_right":["Default — Right"],"canvas.property_trigger.layout_split":["Default — Split"],"canvas.property_trigger.no_saved_presets":["No saved presets yet."],"canvas.property_trigger.panel_behavior":["Panel behavior"],"canvas.property_trigger.panel_options":["Panel options"],"canvas.property_trigger.properties":["Properties"],"canvas.property_trigger.rename_preset_with_label":["Rename ",["label"]],"canvas.property_trigger.save_as_preset":["Save as preset"],"canvas.property_trigger.saved_presets":["Saved presets"],"loop-node.add-node":["Add node to loop"],"loop-node.execution-count.click-to-jump":["Click to jump to a specific iteration"],"loop-node.execution-count.click-to-return":["Click to return to individual iteration view"],"loop-node.execution-count.jump-to-failed":["Jump to first failed iteration"],"loop-node.execution-count.jump-to-iteration":["Jump to iteration ",["iterationNumber"]," (failed)"],"loop-node.execution-count.next-iteration":["Next iteration"],"loop-node.execution-count.previous-iteration":["Previous iteration"],"loop-node.execution-count.return-to-individual":["Return to individual iteration view"],"loop-node.execution-count.show-aggregate":["Show aggregate across all iterations"],"loop-node.mode.parallel":["Parallel"],"loop-node.mode.sequential":["Sequential"],"loop-node.title":["Loop"],"stage-node.add-first-task":["Add first task"],"stage-node.add-task":["Add task"],"stage-node.add-task-to-parallel-group-above":["Add task to parallel group above"],"stage-node.add-task-to-parallel-group-below":["Add task to parallel group below"],"stage-node.adhoc-tasks":["Manually triggered tasks"],"stage-node.create-parallel-group-with-task-above":["Create parallel group with task above"],"stage-node.create-parallel-group-with-task-below":["Create parallel group with task below"],"stage-node.delete-task":["Delete task"],"stage-node.event-driven-tasks":["Event-triggered tasks"],"stage-node.move-down":["Move down"],"stage-node.move-up":["Move up"],"stage-node.no-tasks":["No tasks"],"stage-node.parallel":["Parallel"],"stage-node.remove-from-parallel-group":["Remove from parallel group"],"stage-node.remove-group-from-stage":["Remove group from stage"],"stage-node.replace-task":["Replace task"],"stage-node.status.cancelled":["Cancelled"],"stage-node.status.completed":["Completed"],"stage-node.status.failed":["Failed"],"stage-node.status.in-progress":["In progress"],"stage-node.status.not-executed":["Not started"],"stage-node.status.paused":["Paused"],"stage-node.status.terminated":["Terminated"],"stage-node.status.warning":["Warning"],"stage-node.task-badge.ran-n-times":[["count","plural",{"one":["Ran ","#"," time"],"other":["Ran ","#"," times"]}]],"stage-node.task-badge.running-again":["Running again"],"stage-node.ungroup-parallel-tasks":["Ungroup parallel tasks"],"stage-node.untitled-stage":["Untitled stage"],"sticky-note.formatting.bold":["Bold (",["boldShortcut"],")"],"sticky-note.formatting.bullet-list":["Bullet list"],"sticky-note.formatting.italic":["Italic (",["italicShortcut"],")"],"sticky-note.formatting.numbered-list":["Numbered list"],"sticky-note.formatting.strikethrough":["Strikethrough (",["strikethroughShortcut"],")"],"sticky-note.formatting.toolbar":["Text formatting"],"sticky-note.media.dialog.add-title":["Embed image or video"],"sticky-note.media.dialog.alt-help":["Describe the image for people who use screen readers."],"sticky-note.media.dialog.alt-label":["Alternative text"],"sticky-note.media.dialog.cancel":["Cancel"],"sticky-note.media.dialog.description":["Add a public link. Video supports YouTube and direct video files."],"sticky-note.media.dialog.edit-title":["Edit media"],"sticky-note.media.dialog.embed":["Embed media"],"sticky-note.media.dialog.full-width-help":["The image or video spans the available width of the sticky note."],"sticky-note.media.dialog.full-width-label":["Make full width"],"sticky-note.media.dialog.image-option":["Image"],"sticky-note.media.dialog.image-preview":["Image preview"],"sticky-note.media.dialog.image-url-help":["Use a public HTTPS image link."],"sticky-note.media.dialog.image-url-label":["Image URL"],"sticky-note.media.dialog.image-url-placeholder":["https://example.com/image.png"],"sticky-note.media.dialog.invalid-url":["Enter a valid public HTTPS URL"],"sticky-note.media.dialog.invalid-youtube":["Add a valid YouTube video URL"],"sticky-note.media.dialog.preview-unavailable":["We could not load a preview for this URL."],"sticky-note.media.dialog.save":["Save changes"],"sticky-note.media.dialog.type-label":["Media type"],"sticky-note.media.dialog.unsupported-video":["Add a YouTube URL or a direct public video file URL such as MP4"],"sticky-note.media.dialog.video-option":["Video"],"sticky-note.media.dialog.video-preview":["Video preview"],"sticky-note.media.dialog.video-url-help":["Use a YouTube link or a direct public HTTPS video file link."],"sticky-note.media.dialog.video-url-label":["Video URL"],"sticky-note.media.dialog.video-url-placeholder":["https://youtube.com/watch?v=… or https://example.com/video.mp4"],"sticky-note.media.edit":["Edit media"],"sticky-note.media.embed-action":["Embed image or video"],"sticky-note.media.image-unavailable":["Image unavailable"],"sticky-note.media.image-unavailable-label":["Image unavailable"],"sticky-note.media.play-video":["Play video"],"sticky-note.media.unavailable":["Media unavailable"],"sticky-note.media.video-label":["Embedded video"],"sticky-note.media.video-unavailable":["Video playback is unavailable."],"sticky-note.media.youtube-title":["YouTube video"],"sticky-note.toolbar.color":["Color"],"sticky-note.toolbar.delete":["Delete"],"sticky-note.toolbar.edit":["Edit"],"toolbox.search":["Search"]}');
|
|
2
2
|
export { messages };
|