canvu-react 0.4.72 → 0.4.73
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/react.cjs +10 -3
- package/dist/react.cjs.map +1 -1
- package/dist/react.d.cts +22 -2
- package/dist/react.d.ts +22 -2
- package/dist/react.js +10 -3
- package/dist/react.js.map +1 -1
- package/package.json +1 -1
package/dist/react.d.cts
CHANGED
|
@@ -205,6 +205,10 @@ type ImagesMenuCollapsedButtonRenderProps = {
|
|
|
205
205
|
*/
|
|
206
206
|
buttonProps: ImagesMenuCollapsedButtonProps;
|
|
207
207
|
};
|
|
208
|
+
/**
|
|
209
|
+
* Built-in action ids available in each row of {@link ImagesMenu}.
|
|
210
|
+
*/
|
|
211
|
+
type ImagesMenuActionId = "duplicate" | "rotate" | "delete";
|
|
208
212
|
type ImagesMenuProps = {
|
|
209
213
|
items: readonly VectorSceneItem[];
|
|
210
214
|
onItemsChange: (items: VectorSceneItem[]) => void;
|
|
@@ -214,6 +218,22 @@ type ImagesMenuProps = {
|
|
|
214
218
|
*/
|
|
215
219
|
onFocusItem?: (item: VectorSceneItem) => void;
|
|
216
220
|
labels?: ImagesMenuLabels;
|
|
221
|
+
/**
|
|
222
|
+
* Built-in row actions to omit from the managed images menu UI.
|
|
223
|
+
*
|
|
224
|
+
* Use this when an app needs to keep the managed image behavior available in
|
|
225
|
+
* code while preventing specific actions from being shown to users.
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```tsx
|
|
229
|
+
* <ImagesMenu
|
|
230
|
+
* items={items}
|
|
231
|
+
* onItemsChange={setItems}
|
|
232
|
+
* hiddenActions={["duplicate"]}
|
|
233
|
+
* />
|
|
234
|
+
* ```
|
|
235
|
+
*/
|
|
236
|
+
hiddenActions?: readonly ImagesMenuActionId[];
|
|
217
237
|
/**
|
|
218
238
|
* Whether the menu starts expanded. Defaults to `false` (collapsed), showing
|
|
219
239
|
* only the floating toggle button until the user opens it.
|
|
@@ -269,7 +289,7 @@ type ImagesMenuProps = {
|
|
|
269
289
|
* drag-to-reorder actions. Managed images are also `locked`, so they do not
|
|
270
290
|
* respond to direct canvas interaction.
|
|
271
291
|
*/
|
|
272
|
-
declare function ImagesMenu({ items, onItemsChange, onFocusItem, labels, defaultOpen, collapsedButtonClassName, collapsedButtonStyle, renderCollapsedButton, }: ImagesMenuProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | react.ReactPortal | react.ReactElement<unknown, string | react.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
|
|
292
|
+
declare function ImagesMenu({ items, onItemsChange, onFocusItem, labels, hiddenActions, defaultOpen, collapsedButtonClassName, collapsedButtonStyle, renderCollapsedButton, }: ImagesMenuProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | react.ReactPortal | react.ReactElement<unknown, string | react.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
|
|
273
293
|
|
|
274
294
|
type NavMenuMinimapProps = {
|
|
275
295
|
className?: string;
|
|
@@ -825,4 +845,4 @@ type VectorToolbarWithStatics = ((props: VectorToolbarProps) => ReactElement) &
|
|
|
825
845
|
*/
|
|
826
846
|
declare const VectorToolbar: VectorToolbarWithStatics;
|
|
827
847
|
|
|
828
|
-
export { BoardComponentPosition, CanvasPlugin, CanvuAfterInteractionHook, CanvuBeforeInteractionHook, type CreateLocalStoragePersistenceAdapterOptions, type CreateToolPluginOptions, CustomShapePlacementOptions, DEFAULT_OVERFLOW_TOOL_IDS, DEFAULT_VECTOR_CANVAS_STORAGE_KEY, DEFAULT_VECTOR_TOOLS, IconArchitecturalCloud, IconArrow, IconDraw, IconEllipse, IconHand, IconImage, IconLaser, IconLine, IconRect, IconSelect, IconText, ImagesMenu, type ImagesMenuCollapsedButtonProps, type ImagesMenuCollapsedButtonRenderProps, type ImagesMenuLabels, type ImagesMenuProps, type IngestAssetFileError, type IngestAssetFilesToSceneItemsOptions, type IngestAssetFilesToSceneItemsResult, type IngestedAssetItemContext, NavMenu, type NavMenuMinimapProps, type NavMenuProps, type NavMenuUndoRedoProps, type NavMenuZoomControlsProps, type UseVectorCanvasDocumentOptions, type UseVectorCanvasDocumentResult, VectorCanvas, VectorCanvasBody, VectorCanvasHeader, VectorCanvasMain, VectorCanvasPersistenceAdapter, VectorCanvasRemoteAdapter, VectorCanvasRoot, type VectorCanvasSlotProps, type VectorCanvasSpaceProps, VectorCanvasToolbar, type VectorCanvasToolbarProps, VectorCanvasViewportSurface, VectorSelectionInspector, VectorToolDefinition, VectorToolbar, type VectorToolbarOverflowProps, type VectorToolbarProps, type VectorToolbarRenderContext, type VectorToolbarToolLockProps, type VectorToolbarToolProps, VectorViewportAssetKind, VectorViewportAssetStore, createIndexedDbPersistenceAdapter, createLocalStoragePersistenceAdapter, createNoopPersistenceAdapter, createToolPlugin, cursorForVectorToolId, ingestAssetFilesToSceneItems, useVectorCanvasDocument };
|
|
848
|
+
export { BoardComponentPosition, CanvasPlugin, CanvuAfterInteractionHook, CanvuBeforeInteractionHook, type CreateLocalStoragePersistenceAdapterOptions, type CreateToolPluginOptions, CustomShapePlacementOptions, DEFAULT_OVERFLOW_TOOL_IDS, DEFAULT_VECTOR_CANVAS_STORAGE_KEY, DEFAULT_VECTOR_TOOLS, IconArchitecturalCloud, IconArrow, IconDraw, IconEllipse, IconHand, IconImage, IconLaser, IconLine, IconRect, IconSelect, IconText, ImagesMenu, type ImagesMenuActionId, type ImagesMenuCollapsedButtonProps, type ImagesMenuCollapsedButtonRenderProps, type ImagesMenuLabels, type ImagesMenuProps, type IngestAssetFileError, type IngestAssetFilesToSceneItemsOptions, type IngestAssetFilesToSceneItemsResult, type IngestedAssetItemContext, NavMenu, type NavMenuMinimapProps, type NavMenuProps, type NavMenuUndoRedoProps, type NavMenuZoomControlsProps, type UseVectorCanvasDocumentOptions, type UseVectorCanvasDocumentResult, VectorCanvas, VectorCanvasBody, VectorCanvasHeader, VectorCanvasMain, VectorCanvasPersistenceAdapter, VectorCanvasRemoteAdapter, VectorCanvasRoot, type VectorCanvasSlotProps, type VectorCanvasSpaceProps, VectorCanvasToolbar, type VectorCanvasToolbarProps, VectorCanvasViewportSurface, VectorSelectionInspector, VectorToolDefinition, VectorToolbar, type VectorToolbarOverflowProps, type VectorToolbarProps, type VectorToolbarRenderContext, type VectorToolbarToolLockProps, type VectorToolbarToolProps, VectorViewportAssetKind, VectorViewportAssetStore, createIndexedDbPersistenceAdapter, createLocalStoragePersistenceAdapter, createNoopPersistenceAdapter, createToolPlugin, cursorForVectorToolId, ingestAssetFilesToSceneItems, useVectorCanvasDocument };
|
package/dist/react.d.ts
CHANGED
|
@@ -205,6 +205,10 @@ type ImagesMenuCollapsedButtonRenderProps = {
|
|
|
205
205
|
*/
|
|
206
206
|
buttonProps: ImagesMenuCollapsedButtonProps;
|
|
207
207
|
};
|
|
208
|
+
/**
|
|
209
|
+
* Built-in action ids available in each row of {@link ImagesMenu}.
|
|
210
|
+
*/
|
|
211
|
+
type ImagesMenuActionId = "duplicate" | "rotate" | "delete";
|
|
208
212
|
type ImagesMenuProps = {
|
|
209
213
|
items: readonly VectorSceneItem[];
|
|
210
214
|
onItemsChange: (items: VectorSceneItem[]) => void;
|
|
@@ -214,6 +218,22 @@ type ImagesMenuProps = {
|
|
|
214
218
|
*/
|
|
215
219
|
onFocusItem?: (item: VectorSceneItem) => void;
|
|
216
220
|
labels?: ImagesMenuLabels;
|
|
221
|
+
/**
|
|
222
|
+
* Built-in row actions to omit from the managed images menu UI.
|
|
223
|
+
*
|
|
224
|
+
* Use this when an app needs to keep the managed image behavior available in
|
|
225
|
+
* code while preventing specific actions from being shown to users.
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```tsx
|
|
229
|
+
* <ImagesMenu
|
|
230
|
+
* items={items}
|
|
231
|
+
* onItemsChange={setItems}
|
|
232
|
+
* hiddenActions={["duplicate"]}
|
|
233
|
+
* />
|
|
234
|
+
* ```
|
|
235
|
+
*/
|
|
236
|
+
hiddenActions?: readonly ImagesMenuActionId[];
|
|
217
237
|
/**
|
|
218
238
|
* Whether the menu starts expanded. Defaults to `false` (collapsed), showing
|
|
219
239
|
* only the floating toggle button until the user opens it.
|
|
@@ -269,7 +289,7 @@ type ImagesMenuProps = {
|
|
|
269
289
|
* drag-to-reorder actions. Managed images are also `locked`, so they do not
|
|
270
290
|
* respond to direct canvas interaction.
|
|
271
291
|
*/
|
|
272
|
-
declare function ImagesMenu({ items, onItemsChange, onFocusItem, labels, defaultOpen, collapsedButtonClassName, collapsedButtonStyle, renderCollapsedButton, }: ImagesMenuProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | react.ReactPortal | react.ReactElement<unknown, string | react.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
|
|
292
|
+
declare function ImagesMenu({ items, onItemsChange, onFocusItem, labels, hiddenActions, defaultOpen, collapsedButtonClassName, collapsedButtonStyle, renderCollapsedButton, }: ImagesMenuProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | react.ReactPortal | react.ReactElement<unknown, string | react.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
|
|
273
293
|
|
|
274
294
|
type NavMenuMinimapProps = {
|
|
275
295
|
className?: string;
|
|
@@ -825,4 +845,4 @@ type VectorToolbarWithStatics = ((props: VectorToolbarProps) => ReactElement) &
|
|
|
825
845
|
*/
|
|
826
846
|
declare const VectorToolbar: VectorToolbarWithStatics;
|
|
827
847
|
|
|
828
|
-
export { BoardComponentPosition, CanvasPlugin, CanvuAfterInteractionHook, CanvuBeforeInteractionHook, type CreateLocalStoragePersistenceAdapterOptions, type CreateToolPluginOptions, CustomShapePlacementOptions, DEFAULT_OVERFLOW_TOOL_IDS, DEFAULT_VECTOR_CANVAS_STORAGE_KEY, DEFAULT_VECTOR_TOOLS, IconArchitecturalCloud, IconArrow, IconDraw, IconEllipse, IconHand, IconImage, IconLaser, IconLine, IconRect, IconSelect, IconText, ImagesMenu, type ImagesMenuCollapsedButtonProps, type ImagesMenuCollapsedButtonRenderProps, type ImagesMenuLabels, type ImagesMenuProps, type IngestAssetFileError, type IngestAssetFilesToSceneItemsOptions, type IngestAssetFilesToSceneItemsResult, type IngestedAssetItemContext, NavMenu, type NavMenuMinimapProps, type NavMenuProps, type NavMenuUndoRedoProps, type NavMenuZoomControlsProps, type UseVectorCanvasDocumentOptions, type UseVectorCanvasDocumentResult, VectorCanvas, VectorCanvasBody, VectorCanvasHeader, VectorCanvasMain, VectorCanvasPersistenceAdapter, VectorCanvasRemoteAdapter, VectorCanvasRoot, type VectorCanvasSlotProps, type VectorCanvasSpaceProps, VectorCanvasToolbar, type VectorCanvasToolbarProps, VectorCanvasViewportSurface, VectorSelectionInspector, VectorToolDefinition, VectorToolbar, type VectorToolbarOverflowProps, type VectorToolbarProps, type VectorToolbarRenderContext, type VectorToolbarToolLockProps, type VectorToolbarToolProps, VectorViewportAssetKind, VectorViewportAssetStore, createIndexedDbPersistenceAdapter, createLocalStoragePersistenceAdapter, createNoopPersistenceAdapter, createToolPlugin, cursorForVectorToolId, ingestAssetFilesToSceneItems, useVectorCanvasDocument };
|
|
848
|
+
export { BoardComponentPosition, CanvasPlugin, CanvuAfterInteractionHook, CanvuBeforeInteractionHook, type CreateLocalStoragePersistenceAdapterOptions, type CreateToolPluginOptions, CustomShapePlacementOptions, DEFAULT_OVERFLOW_TOOL_IDS, DEFAULT_VECTOR_CANVAS_STORAGE_KEY, DEFAULT_VECTOR_TOOLS, IconArchitecturalCloud, IconArrow, IconDraw, IconEllipse, IconHand, IconImage, IconLaser, IconLine, IconRect, IconSelect, IconText, ImagesMenu, type ImagesMenuActionId, type ImagesMenuCollapsedButtonProps, type ImagesMenuCollapsedButtonRenderProps, type ImagesMenuLabels, type ImagesMenuProps, type IngestAssetFileError, type IngestAssetFilesToSceneItemsOptions, type IngestAssetFilesToSceneItemsResult, type IngestedAssetItemContext, NavMenu, type NavMenuMinimapProps, type NavMenuProps, type NavMenuUndoRedoProps, type NavMenuZoomControlsProps, type UseVectorCanvasDocumentOptions, type UseVectorCanvasDocumentResult, VectorCanvas, VectorCanvasBody, VectorCanvasHeader, VectorCanvasMain, VectorCanvasPersistenceAdapter, VectorCanvasRemoteAdapter, VectorCanvasRoot, type VectorCanvasSlotProps, type VectorCanvasSpaceProps, VectorCanvasToolbar, type VectorCanvasToolbarProps, VectorCanvasViewportSurface, VectorSelectionInspector, VectorToolDefinition, VectorToolbar, type VectorToolbarOverflowProps, type VectorToolbarProps, type VectorToolbarRenderContext, type VectorToolbarToolLockProps, type VectorToolbarToolProps, VectorViewportAssetKind, VectorViewportAssetStore, createIndexedDbPersistenceAdapter, createLocalStoragePersistenceAdapter, createNoopPersistenceAdapter, createToolPlugin, cursorForVectorToolId, ingestAssetFilesToSceneItems, useVectorCanvasDocument };
|
package/dist/react.js
CHANGED
|
@@ -2253,6 +2253,7 @@ function ImagesMenu({
|
|
|
2253
2253
|
onItemsChange,
|
|
2254
2254
|
onFocusItem,
|
|
2255
2255
|
labels,
|
|
2256
|
+
hiddenActions,
|
|
2256
2257
|
defaultOpen = false,
|
|
2257
2258
|
collapsedButtonClassName,
|
|
2258
2259
|
collapsedButtonStyle,
|
|
@@ -2268,6 +2269,10 @@ function ImagesMenu({
|
|
|
2268
2269
|
useEffect(() => {
|
|
2269
2270
|
ensureOpenKeyframe();
|
|
2270
2271
|
}, []);
|
|
2272
|
+
const hiddenActionSet = useMemo(
|
|
2273
|
+
() => new Set(hiddenActions ?? []),
|
|
2274
|
+
[hiddenActions]
|
|
2275
|
+
);
|
|
2271
2276
|
if (managed.length === 0) {
|
|
2272
2277
|
return null;
|
|
2273
2278
|
}
|
|
@@ -2342,6 +2347,7 @@ function ImagesMenu({
|
|
|
2342
2347
|
{
|
|
2343
2348
|
item,
|
|
2344
2349
|
labels: resolvedLabels,
|
|
2350
|
+
hiddenActionSet,
|
|
2345
2351
|
onFocus: onFocusItem ? () => onFocusItem(item) : void 0,
|
|
2346
2352
|
onCopy: () => onItemsChange(copyManagedImage(items, item.id)),
|
|
2347
2353
|
onRotate: () => onItemsChange(rotateManagedImage(items, item.id)),
|
|
@@ -2358,6 +2364,7 @@ function ImagesMenu({
|
|
|
2358
2364
|
function ImagesMenuRow({
|
|
2359
2365
|
item,
|
|
2360
2366
|
labels,
|
|
2367
|
+
hiddenActionSet,
|
|
2361
2368
|
onFocus,
|
|
2362
2369
|
onCopy,
|
|
2363
2370
|
onRotate,
|
|
@@ -2397,9 +2404,9 @@ function ImagesMenuRow({
|
|
|
2397
2404
|
),
|
|
2398
2405
|
/* @__PURE__ */ jsx(FocusTarget, { label: labels.focus, onFocus, children: /* @__PURE__ */ jsx("div", { style: thumbBoxStyle, children: src ? /* @__PURE__ */ jsx("img", { src, alt: "", style: thumbImgStyle, draggable: false }) : null }) }),
|
|
2399
2406
|
/* @__PURE__ */ jsxs("div", { style: actionsColumnStyle, children: [
|
|
2400
|
-
/* @__PURE__ */ jsx(ImagesMenuAction, { label: labels.duplicate, onClick: onCopy, children: /* @__PURE__ */ jsx(CopyPlus, { size: 18 }) }),
|
|
2401
|
-
/* @__PURE__ */ jsx(ImagesMenuAction, { label: labels.rotate, onClick: onRotate, children: /* @__PURE__ */ jsx(RotateCw, { size: 18 }) }),
|
|
2402
|
-
/* @__PURE__ */ jsx(ImagesMenuAction, { label: labels.delete, onClick: onDelete, danger: true, children: /* @__PURE__ */ jsx(Trash2, { size: 18 }) })
|
|
2407
|
+
!hiddenActionSet.has("duplicate") ? /* @__PURE__ */ jsx(ImagesMenuAction, { label: labels.duplicate, onClick: onCopy, children: /* @__PURE__ */ jsx(CopyPlus, { size: 18 }) }) : null,
|
|
2408
|
+
!hiddenActionSet.has("rotate") ? /* @__PURE__ */ jsx(ImagesMenuAction, { label: labels.rotate, onClick: onRotate, children: /* @__PURE__ */ jsx(RotateCw, { size: 18 }) }) : null,
|
|
2409
|
+
!hiddenActionSet.has("delete") ? /* @__PURE__ */ jsx(ImagesMenuAction, { label: labels.delete, onClick: onDelete, danger: true, children: /* @__PURE__ */ jsx(Trash2, { size: 18 }) }) : null
|
|
2403
2410
|
] })
|
|
2404
2411
|
] });
|
|
2405
2412
|
}
|