canvu-react 0.4.29 → 0.4.31

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 CHANGED
@@ -2205,7 +2205,7 @@ var defaultLabels = {
2205
2205
  title: "Images",
2206
2206
  dragHandle: "Drag to reorder",
2207
2207
  focus: "Focus on canvas",
2208
- copy: "Copy",
2208
+ duplicate: "Duplicate",
2209
2209
  rotate: "Rotate",
2210
2210
  delete: "Delete",
2211
2211
  collapse: "Collapse images menu",
@@ -2215,7 +2215,8 @@ function ImagesMenu({
2215
2215
  items,
2216
2216
  onItemsChange,
2217
2217
  onFocusItem,
2218
- labels
2218
+ labels,
2219
+ defaultOpen = false
2219
2220
  }) {
2220
2221
  const managed = react.useMemo(() => items.filter(isManagedImage), [items]);
2221
2222
  const sensors = core.useSensors(
@@ -2223,14 +2224,18 @@ function ImagesMenu({
2223
2224
  activationConstraint: { distance: 4 }
2224
2225
  })
2225
2226
  );
2226
- const [collapsed, setCollapsed] = react.useState(false);
2227
+ const [collapsed, setCollapsed] = react.useState(!defaultOpen);
2227
2228
  react.useEffect(() => {
2228
2229
  ensureOpenKeyframe();
2229
2230
  }, []);
2230
2231
  if (managed.length === 0) {
2231
2232
  return null;
2232
2233
  }
2233
- const resolvedLabels = { ...defaultLabels, ...labels };
2234
+ const resolvedLabels = {
2235
+ ...defaultLabels,
2236
+ ...labels,
2237
+ duplicate: labels?.duplicate ?? labels?.copy ?? defaultLabels.duplicate
2238
+ };
2234
2239
  if (collapsed) {
2235
2240
  return /* @__PURE__ */ jsxRuntime.jsx(
2236
2241
  "button",
@@ -2344,7 +2349,7 @@ function ImagesMenuRow({
2344
2349
  ),
2345
2350
  /* @__PURE__ */ jsxRuntime.jsx(FocusTarget, { label: labels.focus, onFocus, children: /* @__PURE__ */ jsxRuntime.jsx("div", { style: thumbBoxStyle, children: src ? /* @__PURE__ */ jsxRuntime.jsx("img", { src, alt: "", style: thumbImgStyle, draggable: false }) : null }) }),
2346
2351
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: actionsColumnStyle, children: [
2347
- /* @__PURE__ */ jsxRuntime.jsx(ImagesMenuAction, { label: labels.copy, onClick: onCopy, children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Copy, { size: 18 }) }),
2352
+ /* @__PURE__ */ jsxRuntime.jsx(ImagesMenuAction, { label: labels.duplicate, onClick: onCopy, children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CopyPlus, { size: 18 }) }),
2348
2353
  /* @__PURE__ */ jsxRuntime.jsx(ImagesMenuAction, { label: labels.rotate, onClick: onRotate, children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.RotateCw, { size: 18 }) }),
2349
2354
  /* @__PURE__ */ jsxRuntime.jsx(ImagesMenuAction, { label: labels.delete, onClick: onDelete, danger: true, children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Trash2, { size: 18 }) })
2350
2355
  ] })