@alpaca-editor/core 1.0.4146 → 1.0.4147

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.
@@ -1,7 +1,8 @@
1
- import { EditorConfiguration } from "./types";
1
+ import { ClientFieldButton, EditorConfiguration } from "./types";
2
2
  import { User } from "../types";
3
3
  export declare const contentItemId = "0DE95AE4-41AB-4D01-9EB0-67441B7C2450";
4
4
  export declare const templatesRootItemId = "3c1715fe-6a13-4fcf-845f-de308ba9741d";
5
5
  export declare const rootItemId = "11111111-1111-1111-1111-111111111111";
6
+ export declare const defaultPictureVariantButtons: ClientFieldButton[];
6
7
  export declare const getConfiguration: () => EditorConfiguration;
7
8
  export declare function configureForUser(configuration: EditorConfiguration, user: User): EditorConfiguration;
@@ -99,6 +99,148 @@ const openTargetActionButton = {
99
99
  id: "open-target-in-content-editor",
100
100
  description: "Opens the target item in the content/page editor",
101
101
  };
102
+ // Picture variant buttons - these will be exported for external packages
103
+ const selectImageButton = {
104
+ label: "Select",
105
+ icon: "pi pi-image",
106
+ showInMenu: false, // Primary action - appears outside menu
107
+ clientAction: async (props) => {
108
+ const { field, editContext, variantName, variantData } = props;
109
+ if (!variantName)
110
+ return;
111
+ const variant = variantData || field.value?.variants?.find((v) => v.name === variantName);
112
+ const selectedImageId = await editContext?.selectMedia({
113
+ selectedIdPath: variant?.idPath || "",
114
+ mode: "images",
115
+ });
116
+ if (selectedImageId) {
117
+ const raw = (() => {
118
+ try {
119
+ return field?.rawValue && field?.rawValue[0] === "{"
120
+ ? JSON.parse(field?.rawValue)
121
+ : { Variants: [] };
122
+ }
123
+ catch (error) {
124
+ console.warn("Failed to parse picture field raw value:", error);
125
+ return { Variants: [] };
126
+ }
127
+ })();
128
+ const selected = raw.Variants?.find((x) => x.Name == variantName);
129
+ if (!selected) {
130
+ if (!raw.Variants)
131
+ raw.Variants = [];
132
+ raw.Variants.push({
133
+ Name: variantName,
134
+ MediaId: selectedImageId,
135
+ });
136
+ }
137
+ else {
138
+ selected.MediaId = selectedImageId;
139
+ }
140
+ editContext.operations.editField({
141
+ field: field.descriptor,
142
+ rawValue: JSON.stringify(raw),
143
+ refresh: "immediate",
144
+ });
145
+ }
146
+ },
147
+ isGenerator: false,
148
+ id: "select-image",
149
+ description: "Select an image from the media library",
150
+ };
151
+ const selectVideoButton = {
152
+ label: "Video",
153
+ icon: "pi pi-video",
154
+ visible: ({ field }) => field.value?.allowVideos ?? false,
155
+ clientAction: async (props) => {
156
+ const { field, editContext, variantName, variantData } = props;
157
+ if (!variantName)
158
+ return;
159
+ const variant = variantData || field.value?.variants?.find((v) => v.name === variantName);
160
+ const selectedVideoId = await editContext?.selectMedia({
161
+ selectedIdPath: variant?.idPath || "",
162
+ mode: "video",
163
+ });
164
+ if (selectedVideoId) {
165
+ const raw = (() => {
166
+ try {
167
+ return field?.rawValue && field?.rawValue[0] === "{"
168
+ ? JSON.parse(field?.rawValue)
169
+ : { Variants: [] };
170
+ }
171
+ catch (error) {
172
+ console.warn("Failed to parse picture field raw value:", error);
173
+ return { Variants: [] };
174
+ }
175
+ })();
176
+ const selected = raw.Variants?.find((x) => x.Name == variantName);
177
+ if (!selected) {
178
+ if (!raw.Variants)
179
+ raw.Variants = [];
180
+ raw.Variants.push({
181
+ Name: variantName,
182
+ VideoId: selectedVideoId,
183
+ });
184
+ }
185
+ else {
186
+ selected.VideoId = selectedVideoId;
187
+ }
188
+ editContext.operations.editField({
189
+ field: field.descriptor,
190
+ rawValue: JSON.stringify(raw),
191
+ refresh: "immediate",
192
+ });
193
+ }
194
+ },
195
+ isGenerator: false,
196
+ id: "select-video",
197
+ description: "Select a video from the media library",
198
+ };
199
+ const resetVariantButton = {
200
+ label: "Reset",
201
+ icon: "pi pi-times",
202
+ visible: ({ rawVariant }) => !!rawVariant,
203
+ clientAction: async (props) => {
204
+ const { field, editContext, variantName } = props;
205
+ if (!variantName)
206
+ return;
207
+ const raw = (() => {
208
+ try {
209
+ return field?.rawValue && field?.rawValue[0] === "{"
210
+ ? JSON.parse(field?.rawValue)
211
+ : { Variants: [] };
212
+ }
213
+ catch (error) {
214
+ console.warn("Failed to parse picture field raw value:", error);
215
+ return { Variants: [] };
216
+ }
217
+ })();
218
+ raw.Variants = raw.Variants.filter((x) => x.Name !== variantName);
219
+ editContext.operations.editField({
220
+ field: field.descriptor,
221
+ rawValue: JSON.stringify(raw),
222
+ refresh: "immediate",
223
+ });
224
+ },
225
+ isGenerator: false,
226
+ id: "reset-variant",
227
+ description: "Reset the variant to default state",
228
+ };
229
+ const cropVariantButton = {
230
+ label: "Crop",
231
+ icon: "pi pi-expand",
232
+ visible: ({ variantData }) => !!variantData?.mediaId,
233
+ componentAction: "open-cropper",
234
+ isGenerator: false,
235
+ id: "crop-variant",
236
+ description: "Crop the image variant",
237
+ };
238
+ export const defaultPictureVariantButtons = [
239
+ selectImageButton,
240
+ selectVideoButton,
241
+ cropVariantButton,
242
+ resetVariantButton,
243
+ ];
102
244
  const pageEditorRightSidebar = {
103
245
  title: "COMPONENT NAVIGATOR & HISTORY",
104
246
  panels: [
@@ -211,6 +353,7 @@ export const getConfiguration = () => {
211
353
  },
212
354
  picture: {
213
355
  editor: PictureFieldEditor,
356
+ variantButtons: defaultPictureVariantButtons,
214
357
  },
215
358
  image: {
216
359
  editor: ImageFieldEditor,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.tsx"],"names":[],"mappings":"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"}
@@ -15,12 +15,25 @@ export type RichTextEditorProfile = {
15
15
  };
16
16
  export type ClientFieldButton = FieldButton & {
17
17
  clientAction?: FieldAction;
18
+ visible?: VisibleFunction;
19
+ componentAction?: string;
20
+ showInMenu?: boolean;
18
21
  };
19
22
  export type FieldAction = ({ editContext, }: FieldActionProps) => Promise<any> | void;
20
23
  export type FieldActionProps = {
21
24
  editContext: EditContextType;
22
25
  field: Field;
23
26
  };
27
+ export type VariantFieldActionProps = FieldActionProps & {
28
+ variantName?: string;
29
+ variantData?: any;
30
+ };
31
+ export type VisibleFunction = (context: {
32
+ field: Field;
33
+ variantName?: string;
34
+ variantData?: any;
35
+ rawVariant?: any;
36
+ }) => boolean;
24
37
  export type FieldContextMenuFactory = (field: Field, editContext: EditContextType) => Promise<MenuItem[]> | MenuItem[];
25
38
  export type RichTextEditorToolbarGroup = {
26
39
  marks: RichTextEditorToolbarItem[];
@@ -186,6 +199,7 @@ export type Device = {
186
199
  export type FieldTypeConfiguration = {
187
200
  editor: React.ComponentType<any>;
188
201
  buttons?: FieldButton[];
202
+ variantButtons?: FieldButton[];
189
203
  custom?: any;
190
204
  contextMenuFactory?: FieldContextMenuFactory;
191
205
  paste?: FieldTypePasteConfig;
@@ -5,10 +5,12 @@ import { PictureCropper } from "./PictureCropper";
5
5
  import { loadFieldButtons } from "./services/editService";
6
6
  import { FieldActionsOverlay, } from "./FieldActionsOverlay";
7
7
  import { ImageEditButton } from "./ImageEditButton";
8
- import { DamSelector } from "@alpaca-editor/sharedien-dam";
8
+ import { MagicEditImageIcon } from "./ui/Icons";
9
+ import { ImagePlus, ExternalLink } from "lucide-react";
9
10
  export function PictureEditor({ field, variantName, style, forwardScrollevents, isPageEditor, onContextMenu, }) {
10
11
  const [showCropper, setShowCropper] = useState(false);
11
12
  const [fieldButtons, setFieldButtons] = useState([]);
13
+ const [variantButtons, setVariantButtons] = useState([]);
12
14
  const fieldActionsOverlay = useRef(null);
13
15
  const editContext = useEditContext();
14
16
  // Load field buttons when component mounts
@@ -26,6 +28,13 @@ export function PictureEditor({ field, variantName, style, forwardScrollevents,
26
28
  };
27
29
  loadButtons();
28
30
  }, [field.descriptor]);
31
+ // Load variant buttons from configuration
32
+ useEffect(() => {
33
+ const fieldTypeConfig = editContext?.configuration?.fieldTypes?.picture;
34
+ if (fieldTypeConfig?.variantButtons) {
35
+ setVariantButtons(fieldTypeConfig.variantButtons);
36
+ }
37
+ }, [editContext?.configuration]);
29
38
  // Field action handlers
30
39
  const handleActionClick = useCallback(async (action) => {
31
40
  editContext?.triggerFieldAction(field.descriptor, action);
@@ -34,6 +43,18 @@ export function PictureEditor({ field, variantName, style, forwardScrollevents,
34
43
  editContext?.triggerFieldAction(field.descriptor, action, parameters);
35
44
  }, [editContext, field.descriptor]);
36
45
  const variant = field.value?.variants?.find((v) => v.name === variantName);
46
+ // Variant button action handler with variant context
47
+ const handleVariantButtonClick = useCallback(async (button) => {
48
+ const clientButton = button;
49
+ if (clientButton.clientAction && editContext) {
50
+ await clientButton.clientAction({
51
+ editContext,
52
+ field,
53
+ variantName,
54
+ variantData: variant,
55
+ });
56
+ }
57
+ }, [editContext, field, variantName, variant]);
37
58
  const raw = (() => {
38
59
  try {
39
60
  return field?.rawValue && field?.rawValue[0] === "{"
@@ -46,147 +67,76 @@ export function PictureEditor({ field, variantName, style, forwardScrollevents,
46
67
  }
47
68
  })();
48
69
  const rawVariant = raw.Variants?.find((x) => x.Name == variantName);
49
- const reset = useCallback(() => {
50
- raw.Variants = raw.Variants.filter((x) => x.Name !== variantName);
51
- editContext.operations.editField({
52
- field: field.descriptor,
53
- rawValue: JSON.stringify(raw),
54
- refresh: "immediate",
55
- });
56
- }, [field, variant]);
57
- const imageSelected = useCallback(async (imageId) => {
58
- const selected = raw.Variants?.find((x) => x.Name == variantName);
59
- if (!selected) {
60
- if (!raw.Variants)
61
- raw.Variants = [];
62
- raw.Variants.push({
63
- Name: variantName,
64
- MediaId: imageId,
70
+ // Filter visible variant buttons
71
+ const visibleVariantButtons = variantButtons.filter((button) => {
72
+ const clientButton = button;
73
+ if (clientButton.visible) {
74
+ return clientButton.visible({
75
+ field,
76
+ variantName,
77
+ variantData: variant,
78
+ rawVariant,
65
79
  });
66
80
  }
67
- else {
68
- selected.MediaId = imageId;
69
- }
70
- editContext.operations.editField({
71
- field: field.descriptor,
72
- rawValue: JSON.stringify(raw),
73
- refresh: "immediate",
74
- });
75
- }, [field, variant]);
76
- const videoSelected = useCallback(async (videoId) => {
77
- const selected = raw.Variants?.find((x) => x.Name == variantName);
78
- if (!selected) {
79
- if (!raw.Variants)
80
- raw.Variants = [];
81
- raw.Variants.push({
82
- Name: variantName,
83
- VideoId: videoId,
84
- });
85
- }
86
- else {
87
- selected.VideoId = videoId;
88
- }
89
- editContext.operations.editField({
90
- field: field.descriptor,
91
- rawValue: JSON.stringify(raw),
92
- refresh: "immediate",
93
- });
94
- }, [field, variant]);
95
- async function selectMedia(mode) {
96
- const selectedImageId = await editContext?.selectMedia({
97
- selectedIdPath: variant?.idPath || "",
98
- mode: mode,
99
- });
100
- if (selectedImageId)
101
- imageSelected(selectedImageId);
102
- }
103
- async function selectVideo() {
104
- const selectedVideoId = await editContext?.selectMedia({
105
- selectedIdPath: variant?.idPath || "",
106
- mode: "video",
107
- });
108
- if (selectedVideoId)
109
- videoSelected(selectedVideoId);
110
- }
111
- async function selectFromDam() {
112
- const data = await editContext?.openDialog(DamSelector, {
113
- language: field.descriptor.item.language
114
- });
115
- if (data?.mediaId || data?.videoId) {
116
- // Create a new variant with the selected DAM asset
117
- const selected = raw.Variants?.find((x) => x.Name == variantName);
118
- if (!selected) {
119
- if (!raw.Variants)
120
- raw.Variants = [];
121
- raw.Variants.push({
122
- Name: variantName,
123
- MediaId: data.mediaId,
124
- VideoId: data.videoId,
125
- });
81
+ return true; // Show by default if no visible function
82
+ });
83
+ // Separate primary actions (outside menu) and menu actions
84
+ const primaryActions = visibleVariantButtons
85
+ .filter((button) => button.showInMenu === false)
86
+ .map((button) => ({
87
+ id: button.id,
88
+ label: button.label,
89
+ icon: button.isGenerator
90
+ ? "pi pi-cog"
91
+ : button.icon && button.icon.trim() !== ""
92
+ ? button.icon
93
+ : "pi pi-bolt",
94
+ onClick: (e) => {
95
+ const clientButton = button;
96
+ // Handle component actions (like crop)
97
+ if (clientButton.componentAction === "open-cropper") {
98
+ setShowCropper(true);
99
+ return;
100
+ }
101
+ if (button.parameters && button.parameters.length > 0) {
102
+ fieldActionsOverlay.current?.show(e, button);
126
103
  }
127
104
  else {
128
- selected.MediaId = data.mediaId;
129
- selected.VideoId = data.videoId;
105
+ handleVariantButtonClick(button);
130
106
  }
131
- editContext.operations.editField({
132
- field: field.descriptor,
133
- rawValue: JSON.stringify(raw),
134
- refresh: "immediate",
135
- });
136
- }
137
- }
138
- const notEmpty = variant?.mediaId;
139
- // Check if DAM selector should be enabled from configuration
140
- const sharedienDamConfig = editContext?.configuration?.extensions?.sharedienDam;
141
- const enableDamSelector = sharedienDamConfig?.enableDamSelector ?? false;
142
- // Build actions for the dropdown menu
143
- const menuActions = [
144
- ...(enableDamSelector
145
- ? [
146
- {
147
- id: "select-dam",
148
- label: "Select from DAM",
149
- icon: "pi pi-external-link",
150
- onClick: () => selectFromDam(),
151
- },
152
- ]
153
- : []),
154
- {
155
- id: "select",
156
- label: "Select",
157
- icon: "pi pi-image",
158
- onClick: () => selectMedia("images"),
159
107
  },
160
- ...(field.value?.allowVideos
161
- ? [
162
- {
163
- id: "video",
164
- label: "Video",
165
- icon: "pi pi-video",
166
- onClick: () => selectVideo(),
167
- },
168
- ]
169
- : []),
170
- ...(notEmpty
171
- ? [
172
- {
173
- id: "crop",
174
- label: "Crop",
175
- icon: "pi pi-expand",
176
- onClick: () => setShowCropper(true),
177
- },
178
- ]
179
- : []),
180
- ...(rawVariant
181
- ? [
182
- {
183
- id: "reset",
184
- label: "Reset",
185
- icon: "pi pi-times",
186
- onClick: () => reset(),
187
- },
188
- ]
189
- : []),
108
+ parameters: button.parameters,
109
+ }));
110
+ // Build actions for the dropdown menu (only buttons with showInMenu !== false)
111
+ const menuActions = [
112
+ // Variant buttons that should appear in menu
113
+ ...visibleVariantButtons
114
+ .filter((button) => button.showInMenu !== false)
115
+ .map((button) => ({
116
+ id: button.id,
117
+ label: button.label,
118
+ icon: button.isGenerator
119
+ ? "pi pi-cog"
120
+ : button.icon && button.icon.trim() !== ""
121
+ ? button.icon
122
+ : "pi pi-bolt",
123
+ onClick: (e) => {
124
+ const clientButton = button;
125
+ // Handle component actions (like crop)
126
+ if (clientButton.componentAction === "open-cropper") {
127
+ setShowCropper(true);
128
+ return;
129
+ }
130
+ if (button.parameters && button.parameters.length > 0) {
131
+ fieldActionsOverlay.current?.show(e, button);
132
+ }
133
+ else {
134
+ handleVariantButtonClick(button);
135
+ }
136
+ },
137
+ parameters: button.parameters,
138
+ })),
139
+ // Field-level buttons from server
190
140
  ...fieldButtons.map((button) => ({
191
141
  id: button.id,
192
142
  label: button.label,
@@ -224,6 +174,24 @@ export function PictureEditor({ field, variantName, style, forwardScrollevents,
224
174
  left: 0,
225
175
  top: e.deltaY,
226
176
  });
227
- }, style: style, "data-testid": "select-media", children: [_jsx(ImageEditButton, { actions: menuActions, compact: true, defaultActionId: enableDamSelector ? "select-dam" : "select" }), showCropper && (_jsx(PictureCropper, { field: field, onClose: () => setShowCropper(false), variantName: variantName })), _jsx(FieldActionsOverlay, { ref: fieldActionsOverlay, generatorButtons: fieldButtons, onActionClick: handleActionClick, onParameterizedActionExecute: handleParameterizedActionExecute, currentOverlay: editContext?.currentOverlay, fieldId: field.id, setCurrentOverlay: editContext?.setCurrentOverlay || (() => { }), hideBackButton: true })] }));
177
+ }, style: style, "data-testid": "select-media", children: [(primaryActions.length > 0 || menuActions.length > 0) && (_jsxs("div", { className: "text-dark border-gray-3 absolute right-2 bottom-2 flex cursor-pointer items-center justify-center overflow-hidden rounded border bg-white text-xs font-medium opacity-70 shadow-lg transition-opacity hover:opacity-85", onClick: (e) => {
178
+ e.stopPropagation();
179
+ }, children: [primaryActions.map((action, index) => {
180
+ // Use appropriate icon for each primary action
181
+ const renderIcon = () => {
182
+ if (action.id === 'select-image') {
183
+ return _jsx(ImagePlus, { strokeWidth: 1, size: 16 });
184
+ }
185
+ else if (action.id === 'select-from-dam') {
186
+ return _jsx(ExternalLink, { strokeWidth: 1, size: 16 });
187
+ }
188
+ // Fallback to configured icon
189
+ return _jsx("i", { className: action.icon });
190
+ };
191
+ return (_jsx("button", { type: "button", className: `hover:bg-gray-5 cursor-pointer px-2 py-1.5 ${index > 0 ? 'border-l border-gray-3' : ''}`, onClick: (e) => {
192
+ e.stopPropagation();
193
+ action.onClick(e);
194
+ }, "data-testid": `primary-action-${action.id}`, children: renderIcon() }, action.id));
195
+ }), menuActions.length > 0 && (_jsx(ImageEditButton, { actions: menuActions, compact: true, defaultActionId: "select", triggerButton: _jsxs("button", { type: "button", className: `hover:bg-gray-5 flex cursor-pointer items-center gap-2 px-2 py-1.5 ${primaryActions.length > 0 ? 'border-l border-gray-3' : ''}`, "data-testid": "menu-toggle-button", children: [_jsx(MagicEditImageIcon, { className: "mr-1" }), " Edit"] }) }))] })), showCropper && (_jsx(PictureCropper, { field: field, onClose: () => setShowCropper(false), variantName: variantName })), _jsx(FieldActionsOverlay, { ref: fieldActionsOverlay, generatorButtons: fieldButtons, onActionClick: handleActionClick, onParameterizedActionExecute: handleParameterizedActionExecute, currentOverlay: editContext?.currentOverlay, fieldId: field.id, setCurrentOverlay: editContext?.setCurrentOverlay || (() => { }), hideBackButton: true })] }));
228
196
  }
229
197
  //# sourceMappingURL=PictureEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PictureEditor.js","sourceRoot":"","sources":["../../src/editor/PictureEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PictureEditor.js","sourceRoot":"","sources":["../../src/editor/PictureEditor.tsx"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,7 +2,7 @@ export * from "./config/types";
2
2
  export * from "./types";
3
3
  export { useEditorSettings, useItemNameValidation, } from "./editor/hooks/useEditorSettings";
4
4
  export { Editor } from "./editor/Editor";
5
- export { configureForUser } from "./config/config";
5
+ export { configureForUser, defaultPictureVariantButtons } from "./config/config";
6
6
  export type { DialogProps } from "./editor/client/editContext";
7
7
  export { useEditContext } from "./editor/client/editContext";
8
8
  export type { LocalizeItemCommand, LocalizeItemCommandContext, LocalizeItemCommandData, } from "./editor/commands/itemCommands";
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@ export * from "./config/types";
2
2
  export * from "./types";
3
3
  export { useEditorSettings, useItemNameValidation, } from "./editor/hooks/useEditorSettings";
4
4
  export { Editor } from "./editor/Editor";
5
- export { configureForUser } from "./config/config";
5
+ export { configureForUser, defaultPictureVariantButtons } from "./config/config";
6
6
  export { useEditContext } from "./editor/client/editContext";
7
7
  export { requestTranslation } from "./editor/services/translationService";
8
8
  export { defaultTranslateAll } from "./editor/commands/localizeItem/LocalizeItemUtils";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAE/B,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGnD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAQ7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AAEvF,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EACL,MAAM,EACN,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAKpE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAE/B,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAGjF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAQ7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AAEvF,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EACL,MAAM,EACN,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAKpE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const version = "1.0.4146";
2
- export declare const buildDate = "2025-10-06 21:39:43";
1
+ export declare const version = "1.0.4147";
2
+ export declare const buildDate = "2025-10-06 22:12:00";
package/dist/revision.js CHANGED
@@ -1,3 +1,3 @@
1
- export const version = "1.0.4146";
2
- export const buildDate = "2025-10-06 21:39:43";
1
+ export const version = "1.0.4147";
2
+ export const buildDate = "2025-10-06 22:12:00";
3
3
  //# sourceMappingURL=revision.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alpaca-editor/core",
3
- "version": "1.0.4146",
3
+ "version": "1.0.4147",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -139,6 +139,7 @@ import {
139
139
  EditControls,
140
140
  UtilityControls,
141
141
  } from "../editor/menubar/toolbar-sections";
142
+ import { PictureRawValue } from "../editor/fieldTypes";
142
143
 
143
144
  export const contentItemId = "0DE95AE4-41AB-4D01-9EB0-67441B7C2450";
144
145
  export const templatesRootItemId = "3c1715fe-6a13-4fcf-845f-de308ba9741d";
@@ -163,6 +164,153 @@ const openTargetActionButton: ClientFieldButton = {
163
164
  description: "Opens the target item in the content/page editor",
164
165
  };
165
166
 
167
+ // Picture variant buttons - these will be exported for external packages
168
+ const selectImageButton: ClientFieldButton = {
169
+ label: "Select",
170
+ icon: "pi pi-image",
171
+ showInMenu: false, // Primary action - appears outside menu
172
+ clientAction: async (props) => {
173
+ const { field, editContext, variantName, variantData } = props as any;
174
+ if (!variantName) return;
175
+
176
+ const variant = variantData || (field.value as any)?.variants?.find((v: any) => v.name === variantName);
177
+ const selectedImageId = await editContext?.selectMedia({
178
+ selectedIdPath: variant?.idPath || "",
179
+ mode: "images",
180
+ });
181
+
182
+ if (selectedImageId) {
183
+ const raw = (() => {
184
+ try {
185
+ return field?.rawValue && field?.rawValue[0] === "{"
186
+ ? (JSON.parse(field?.rawValue) as PictureRawValue)
187
+ : ({ Variants: [] } as PictureRawValue);
188
+ } catch (error) {
189
+ console.warn("Failed to parse picture field raw value:", error);
190
+ return { Variants: [] } as PictureRawValue;
191
+ }
192
+ })();
193
+
194
+ const selected = raw.Variants?.find((x: any) => x.Name == variantName);
195
+ if (!selected) {
196
+ if (!raw.Variants) raw.Variants = [];
197
+ raw.Variants.push({
198
+ Name: variantName,
199
+ MediaId: selectedImageId,
200
+ } as any);
201
+ } else {
202
+ (selected as any).MediaId = selectedImageId;
203
+ }
204
+
205
+ editContext!.operations.editField({
206
+ field: field.descriptor,
207
+ rawValue: JSON.stringify(raw),
208
+ refresh: "immediate",
209
+ });
210
+ }
211
+ },
212
+ isGenerator: false,
213
+ id: "select-image",
214
+ description: "Select an image from the media library",
215
+ };
216
+
217
+ const selectVideoButton: ClientFieldButton = {
218
+ label: "Video",
219
+ icon: "pi pi-video",
220
+ visible: ({ field }) => (field.value as any)?.allowVideos ?? false,
221
+ clientAction: async (props) => {
222
+ const { field, editContext, variantName, variantData } = props as any;
223
+ if (!variantName) return;
224
+
225
+ const variant = variantData || (field.value as any)?.variants?.find((v: any) => v.name === variantName);
226
+ const selectedVideoId = await editContext?.selectMedia({
227
+ selectedIdPath: variant?.idPath || "",
228
+ mode: "video",
229
+ });
230
+
231
+ if (selectedVideoId) {
232
+ const raw = (() => {
233
+ try {
234
+ return field?.rawValue && field?.rawValue[0] === "{"
235
+ ? (JSON.parse(field?.rawValue) as PictureRawValue)
236
+ : ({ Variants: [] } as PictureRawValue);
237
+ } catch (error) {
238
+ console.warn("Failed to parse picture field raw value:", error);
239
+ return { Variants: [] } as PictureRawValue;
240
+ }
241
+ })();
242
+
243
+ const selected = raw.Variants?.find((x: any) => x.Name == variantName);
244
+ if (!selected) {
245
+ if (!raw.Variants) raw.Variants = [];
246
+ raw.Variants.push({
247
+ Name: variantName,
248
+ VideoId: selectedVideoId,
249
+ } as any);
250
+ } else {
251
+ (selected as any).VideoId = selectedVideoId;
252
+ }
253
+
254
+ editContext!.operations.editField({
255
+ field: field.descriptor,
256
+ rawValue: JSON.stringify(raw),
257
+ refresh: "immediate",
258
+ });
259
+ }
260
+ },
261
+ isGenerator: false,
262
+ id: "select-video",
263
+ description: "Select a video from the media library",
264
+ };
265
+
266
+ const resetVariantButton: ClientFieldButton = {
267
+ label: "Reset",
268
+ icon: "pi pi-times",
269
+ visible: ({ rawVariant }) => !!rawVariant,
270
+ clientAction: async (props) => {
271
+ const { field, editContext, variantName } = props as any;
272
+ if (!variantName) return;
273
+
274
+ const raw = (() => {
275
+ try {
276
+ return field?.rawValue && field?.rawValue[0] === "{"
277
+ ? (JSON.parse(field?.rawValue) as PictureRawValue)
278
+ : ({ Variants: [] } as PictureRawValue);
279
+ } catch (error) {
280
+ console.warn("Failed to parse picture field raw value:", error);
281
+ return { Variants: [] } as PictureRawValue;
282
+ }
283
+ })();
284
+
285
+ raw.Variants = raw.Variants.filter((x: any) => x.Name !== variantName);
286
+ editContext!.operations.editField({
287
+ field: field.descriptor,
288
+ rawValue: JSON.stringify(raw),
289
+ refresh: "immediate",
290
+ });
291
+ },
292
+ isGenerator: false,
293
+ id: "reset-variant",
294
+ description: "Reset the variant to default state",
295
+ };
296
+
297
+ const cropVariantButton: ClientFieldButton = {
298
+ label: "Crop",
299
+ icon: "pi pi-expand",
300
+ visible: ({ variantData }) => !!variantData?.mediaId,
301
+ componentAction: "open-cropper",
302
+ isGenerator: false,
303
+ id: "crop-variant",
304
+ description: "Crop the image variant",
305
+ };
306
+
307
+ export const defaultPictureVariantButtons: ClientFieldButton[] = [
308
+ selectImageButton,
309
+ selectVideoButton,
310
+ cropVariantButton,
311
+ resetVariantButton,
312
+ ];
313
+
166
314
  const pageEditorRightSidebar = {
167
315
  title: "COMPONENT NAVIGATOR & HISTORY",
168
316
  panels: [
@@ -285,6 +433,7 @@ export const getConfiguration = (): EditorConfiguration => {
285
433
  },
286
434
  picture: {
287
435
  editor: PictureFieldEditor,
436
+ variantButtons: defaultPictureVariantButtons,
288
437
  },
289
438
  image: {
290
439
  editor: ImageFieldEditor,
@@ -32,6 +32,9 @@ export type RichTextEditorProfile = {
32
32
 
33
33
  export type ClientFieldButton = FieldButton & {
34
34
  clientAction?: FieldAction;
35
+ visible?: VisibleFunction;
36
+ componentAction?: string;
37
+ showInMenu?: boolean; // If false, button appears as primary action outside menu. Default: true
35
38
  };
36
39
 
37
40
  export type FieldAction = ({
@@ -45,6 +48,18 @@ export type FieldActionProps = {
45
48
  field: Field;
46
49
  };
47
50
 
51
+ export type VariantFieldActionProps = FieldActionProps & {
52
+ variantName?: string;
53
+ variantData?: any;
54
+ };
55
+
56
+ export type VisibleFunction = (context: {
57
+ field: Field;
58
+ variantName?: string;
59
+ variantData?: any;
60
+ rawVariant?: any;
61
+ }) => boolean;
62
+
48
63
  export type FieldContextMenuFactory = (
49
64
  field: Field,
50
65
  editContext: EditContextType,
@@ -225,6 +240,7 @@ export type Device = {
225
240
  export type FieldTypeConfiguration = {
226
241
  editor: React.ComponentType<any>;
227
242
  buttons?: FieldButton[];
243
+ variantButtons?: FieldButton[];
228
244
  custom?: any;
229
245
  contextMenuFactory?: FieldContextMenuFactory;
230
246
  paste?: FieldTypePasteConfig;
@@ -2,7 +2,6 @@ import { useCallback, useEffect, useRef, useState } from "react";
2
2
  import { useEditContext } from "./client/editContext";
3
3
  import { PictureCropper } from "./PictureCropper";
4
4
  import { PictureField, PictureRawValue } from "./fieldTypes";
5
- import { MediaSelectorMode } from "./media-selector/MediaSelector";
6
5
  import { loadFieldButtons } from "./services/editService";
7
6
  import { FieldButton } from "./pageModel";
8
7
  import {
@@ -10,7 +9,8 @@ import {
10
9
  FieldActionsOverlayRef,
11
10
  } from "./FieldActionsOverlay";
12
11
  import { ImageEditButton, MenuAction } from "./ImageEditButton";
13
- import { DamSelector, DamImageValue, DamSelectorProps, SharedienDamExtension } from "@alpaca-editor/sharedien-dam";
12
+ import { MagicEditImageIcon } from "./ui/Icons";
13
+ import { ImagePlus, ExternalLink } from "lucide-react";
14
14
 
15
15
  export function PictureEditor({
16
16
  field,
@@ -29,6 +29,7 @@ export function PictureEditor({
29
29
  }) {
30
30
  const [showCropper, setShowCropper] = useState(false);
31
31
  const [fieldButtons, setFieldButtons] = useState<FieldButton[]>([]);
32
+ const [variantButtons, setVariantButtons] = useState<FieldButton[]>([]);
32
33
  const fieldActionsOverlay = useRef<FieldActionsOverlayRef>(null);
33
34
  const editContext = useEditContext();
34
35
 
@@ -47,6 +48,14 @@ export function PictureEditor({
47
48
  loadButtons();
48
49
  }, [field.descriptor]);
49
50
 
51
+ // Load variant buttons from configuration
52
+ useEffect(() => {
53
+ const fieldTypeConfig = editContext?.configuration?.fieldTypes?.picture;
54
+ if (fieldTypeConfig?.variantButtons) {
55
+ setVariantButtons(fieldTypeConfig.variantButtons);
56
+ }
57
+ }, [editContext?.configuration]);
58
+
50
59
  // Field action handlers
51
60
  const handleActionClick = useCallback(
52
61
  async (action: FieldButton): Promise<void> => {
@@ -66,6 +75,22 @@ export function PictureEditor({
66
75
  );
67
76
 
68
77
  const variant = field.value?.variants?.find((v) => v.name === variantName);
78
+
79
+ // Variant button action handler with variant context
80
+ const handleVariantButtonClick = useCallback(
81
+ async (button: FieldButton): Promise<void> => {
82
+ const clientButton = button as any;
83
+ if (clientButton.clientAction && editContext) {
84
+ await clientButton.clientAction({
85
+ editContext,
86
+ field,
87
+ variantName,
88
+ variantData: variant,
89
+ });
90
+ }
91
+ },
92
+ [editContext, field, variantName, variant],
93
+ );
69
94
  const raw = (() => {
70
95
  try {
71
96
  return field?.rawValue && field?.rawValue[0] === "{"
@@ -79,157 +104,78 @@ export function PictureEditor({
79
104
 
80
105
  const rawVariant = raw.Variants?.find((x) => x.Name == variantName);
81
106
 
82
- const reset = useCallback(() => {
83
- raw.Variants = raw.Variants.filter((x) => x.Name !== variantName);
84
- editContext!.operations.editField({
85
- field: field.descriptor,
86
- rawValue: JSON.stringify(raw),
87
- refresh: "immediate",
88
- });
89
- }, [field, variant]);
90
-
91
- const imageSelected = useCallback(
92
- async (imageId: string) => {
93
- const selected = raw.Variants?.find((x) => x.Name == variantName);
94
- if (!selected) {
95
- if (!raw.Variants) raw.Variants = [];
96
- raw.Variants.push({
97
- Name: variantName,
98
- MediaId: imageId,
99
- });
100
- } else {
101
- selected.MediaId = imageId;
102
- }
103
-
104
- editContext!.operations.editField({
105
- field: field.descriptor,
106
- rawValue: JSON.stringify(raw),
107
- refresh: "immediate",
108
- });
109
- },
110
- [field, variant],
111
- );
112
-
113
- const videoSelected = useCallback(
114
- async (videoId: string) => {
115
- const selected = raw.Variants?.find((x) => x.Name == variantName);
116
- if (!selected) {
117
- if (!raw.Variants) raw.Variants = [];
118
- raw.Variants.push({
119
- Name: variantName,
120
- VideoId: videoId,
121
- });
122
- } else {
123
- selected.VideoId = videoId;
124
- }
125
-
126
- editContext!.operations.editField({
127
- field: field.descriptor,
128
- rawValue: JSON.stringify(raw),
129
- refresh: "immediate",
130
- });
131
- },
132
- [field, variant],
133
- );
134
-
135
- async function selectMedia(mode: MediaSelectorMode) {
136
- const selectedImageId = await editContext?.selectMedia({
137
- selectedIdPath: variant?.idPath || "",
138
- mode: mode,
139
- });
140
- if (selectedImageId) imageSelected(selectedImageId);
141
- }
142
-
143
- async function selectVideo() {
144
- const selectedVideoId = await editContext?.selectMedia({
145
- selectedIdPath: variant?.idPath || "",
146
- mode: "video",
147
- });
148
- if (selectedVideoId) videoSelected(selectedVideoId);
149
- }
150
-
151
- async function selectFromDam() {
152
- const data = await editContext?.openDialog<DamImageValue, DamSelectorProps>(DamSelector, {
153
- language: field.descriptor.item.language
154
- });
155
-
156
- if (data?.mediaId || data?.videoId) {
157
- // Create a new variant with the selected DAM asset
158
- const selected = raw.Variants?.find((x) => x.Name == variantName);
159
- if (!selected) {
160
- if (!raw.Variants) raw.Variants = [];
161
- raw.Variants.push({
162
- Name: variantName,
163
- MediaId: data.mediaId,
164
- VideoId: data.videoId,
165
- });
166
- } else {
167
- selected.MediaId = data.mediaId;
168
- selected.VideoId = data.videoId;
169
- }
170
-
171
- editContext!.operations.editField({
172
- field: field.descriptor,
173
- rawValue: JSON.stringify(raw),
174
- refresh: "immediate",
107
+ // Filter visible variant buttons
108
+ const visibleVariantButtons = variantButtons.filter((button) => {
109
+ const clientButton = button as any;
110
+ if (clientButton.visible) {
111
+ return clientButton.visible({
112
+ field,
113
+ variantName,
114
+ variantData: variant,
115
+ rawVariant,
175
116
  });
176
117
  }
177
- }
118
+ return true; // Show by default if no visible function
119
+ });
178
120
 
179
- const notEmpty = variant?.mediaId;
180
-
181
- // Check if DAM selector should be enabled from configuration
182
- const sharedienDamConfig = editContext?.configuration?.extensions?.sharedienDam as SharedienDamExtension;
183
- const enableDamSelector = sharedienDamConfig?.enableDamSelector ?? false;
121
+ // Separate primary actions (outside menu) and menu actions
122
+ const primaryActions = visibleVariantButtons
123
+ .filter((button) => (button as any).showInMenu === false)
124
+ .map((button) => ({
125
+ id: button.id,
126
+ label: button.label,
127
+ icon: button.isGenerator
128
+ ? "pi pi-cog"
129
+ : button.icon && button.icon.trim() !== ""
130
+ ? button.icon
131
+ : "pi pi-bolt",
132
+ onClick: (e?: React.MouseEvent) => {
133
+ const clientButton = button as any;
134
+ // Handle component actions (like crop)
135
+ if (clientButton.componentAction === "open-cropper") {
136
+ setShowCropper(true);
137
+ return;
138
+ }
139
+
140
+ if (button.parameters && button.parameters.length > 0) {
141
+ fieldActionsOverlay.current?.show(e, button);
142
+ } else {
143
+ handleVariantButtonClick(button);
144
+ }
145
+ },
146
+ parameters: button.parameters,
147
+ }));
184
148
 
185
- // Build actions for the dropdown menu
149
+ // Build actions for the dropdown menu (only buttons with showInMenu !== false)
186
150
  const menuActions: MenuAction[] = [
187
- ...(enableDamSelector
188
- ? [
189
- {
190
- id: "select-dam",
191
- label: "Select from DAM",
192
- icon: "pi pi-external-link",
193
- onClick: () => selectFromDam(),
194
- },
195
- ]
196
- : []),
197
- {
198
- id: "select",
199
- label: "Select",
200
- icon: "pi pi-image",
201
- onClick: () => selectMedia("images"),
202
- },
203
- ...(field.value?.allowVideos
204
- ? [
205
- {
206
- id: "video",
207
- label: "Video",
208
- icon: "pi pi-video",
209
- onClick: () => selectVideo(),
210
- },
211
- ]
212
- : []),
213
- ...(notEmpty
214
- ? [
215
- {
216
- id: "crop",
217
- label: "Crop",
218
- icon: "pi pi-expand",
219
- onClick: () => setShowCropper(true),
220
- },
221
- ]
222
- : []),
223
- ...(rawVariant
224
- ? [
225
- {
226
- id: "reset",
227
- label: "Reset",
228
- icon: "pi pi-times",
229
- onClick: () => reset(),
230
- },
231
- ]
232
- : []),
151
+ // Variant buttons that should appear in menu
152
+ ...visibleVariantButtons
153
+ .filter((button) => (button as any).showInMenu !== false)
154
+ .map((button) => ({
155
+ id: button.id,
156
+ label: button.label,
157
+ icon: button.isGenerator
158
+ ? "pi pi-cog"
159
+ : button.icon && button.icon.trim() !== ""
160
+ ? button.icon
161
+ : "pi pi-bolt",
162
+ onClick: (e?: React.MouseEvent) => {
163
+ const clientButton = button as any;
164
+ // Handle component actions (like crop)
165
+ if (clientButton.componentAction === "open-cropper") {
166
+ setShowCropper(true);
167
+ return;
168
+ }
169
+
170
+ if (button.parameters && button.parameters.length > 0) {
171
+ fieldActionsOverlay.current?.show(e, button);
172
+ } else {
173
+ handleVariantButtonClick(button);
174
+ }
175
+ },
176
+ parameters: button.parameters,
177
+ })),
178
+ // Field-level buttons from server
233
179
  ...fieldButtons.map((button) => ({
234
180
  id: button.id,
235
181
  label: button.label,
@@ -278,11 +224,62 @@ export function PictureEditor({
278
224
  style={style}
279
225
  data-testid="select-media"
280
226
  >
281
- <ImageEditButton
282
- actions={menuActions}
283
- compact={true}
284
- defaultActionId={enableDamSelector ? "select-dam" : "select"}
285
- />
227
+ {/* Unified button group with primary actions and menu */}
228
+ {(primaryActions.length > 0 || menuActions.length > 0) && (
229
+ <div
230
+ className="text-dark border-gray-3 absolute right-2 bottom-2 flex cursor-pointer items-center justify-center overflow-hidden rounded border bg-white text-xs font-medium opacity-70 shadow-lg transition-opacity hover:opacity-85"
231
+ onClick={(e) => {
232
+ e.stopPropagation();
233
+ }}
234
+ >
235
+ {/* Primary action buttons */}
236
+ {primaryActions.map((action, index) => {
237
+ // Use appropriate icon for each primary action
238
+ const renderIcon = () => {
239
+ if (action.id === 'select-image') {
240
+ return <ImagePlus strokeWidth={1} size={16} />;
241
+ } else if (action.id === 'select-from-dam') {
242
+ return <ExternalLink strokeWidth={1} size={16} />;
243
+ }
244
+ // Fallback to configured icon
245
+ return <i className={action.icon} />;
246
+ };
247
+
248
+ return (
249
+ <button
250
+ key={action.id}
251
+ type="button"
252
+ className={`hover:bg-gray-5 cursor-pointer px-2 py-1.5 ${index > 0 ? 'border-l border-gray-3' : ''}`}
253
+ onClick={(e) => {
254
+ e.stopPropagation();
255
+ action.onClick(e);
256
+ }}
257
+ data-testid={`primary-action-${action.id}`}
258
+ >
259
+ {renderIcon()}
260
+ </button>
261
+ );
262
+ })}
263
+
264
+ {/* Menu dropdown button */}
265
+ {menuActions.length > 0 && (
266
+ <ImageEditButton
267
+ actions={menuActions}
268
+ compact={true}
269
+ defaultActionId="select"
270
+ triggerButton={
271
+ <button
272
+ type="button"
273
+ className={`hover:bg-gray-5 flex cursor-pointer items-center gap-2 px-2 py-1.5 ${primaryActions.length > 0 ? 'border-l border-gray-3' : ''}`}
274
+ data-testid="menu-toggle-button"
275
+ >
276
+ <MagicEditImageIcon className="mr-1" /> Edit
277
+ </button>
278
+ }
279
+ />
280
+ )}
281
+ </div>
282
+ )}
286
283
 
287
284
  {showCropper && (
288
285
  <PictureCropper
package/src/index.ts CHANGED
@@ -8,7 +8,7 @@ export {
8
8
 
9
9
  export { Editor } from "./editor/Editor";
10
10
 
11
- export { configureForUser } from "./config/config";
11
+ export { configureForUser, defaultPictureVariantButtons } from "./config/config";
12
12
 
13
13
  export type { DialogProps } from "./editor/client/editContext";
14
14
  export { useEditContext } from "./editor/client/editContext";
package/src/revision.ts CHANGED
@@ -1,2 +1,2 @@
1
- export const version = "1.0.4146";
2
- export const buildDate = "2025-10-06 21:39:43";
1
+ export const version = "1.0.4147";
2
+ export const buildDate = "2025-10-06 22:12:00";