@yogiswara/honcho-editor-ui 2.5.2 → 2.5.4

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.
@@ -118,19 +118,27 @@ export function useHonchoEditorBulk(controller, eventID, firebaseUid) {
118
118
  const loadImages = useCallback(async (pageNum) => {
119
119
  setIsLoading(true);
120
120
  try {
121
- const res = await controller.getImageList(firebaseUid, eventID, pageNum);
122
- const newImages = res.gallery || [];
123
- setImageCollection(prev => [...prev, ...newImages]);
124
- setPage(pageNum);
125
- setHasMore(newImages.length > 0);
121
+ const response = await controller.getImageList(firebaseUid, eventID, pageNum);
122
+ batchActions.syncAdjustment(response.gallery.map(mapToImageAdjustmentConfig));
123
+ // append instead of replacing
124
+ setImageCollection(prev => [...prev, ...response.gallery]);
125
+ // track page & "more" status
126
+ setPage(response.current_page);
127
+ if (!response.next_page || response.gallery.length === 0) {
128
+ setHasMore(false);
129
+ }
130
+ else {
131
+ setHasMore(true);
132
+ }
126
133
  }
127
134
  catch (err) {
128
- console.error("Failed to load images:", err);
135
+ console.error("Failed to fetch image list:", err);
136
+ setError("Could not load images.");
129
137
  }
130
138
  finally {
131
139
  setIsLoading(false);
132
140
  }
133
- }, [controller, firebaseUid, eventID]);
141
+ }, [controller, firebaseUid, eventID, batchActions]);
134
142
  const loadMoreImages = useCallback(() => {
135
143
  if (!isLoading && hasMore) {
136
144
  loadImages(page + 1);
@@ -141,7 +149,7 @@ export function useHonchoEditorBulk(controller, eventID, firebaseUid) {
141
149
  if (eventID && firebaseUid) {
142
150
  setIsLoading(true);
143
151
  setError(null);
144
- controller.getImageList(firebaseUid, eventID, 1)
152
+ controller.getImageList(firebaseUid, eventID, page + 1)
145
153
  .then(response => {
146
154
  // TODO need do pagination for this one
147
155
  batchActions.syncAdjustment(response.gallery.map(mapToImageAdjustmentConfig));
@@ -158,9 +166,12 @@ export function useHonchoEditorBulk(controller, eventID, firebaseUid) {
158
166
  }
159
167
  }, [eventID, firebaseUid, controller]);
160
168
  useEffect(() => {
161
- setImageCollection([]);
162
- console.log("Image collection FROM USEHONCHOBULK: : ", imageCollection);
163
- }, [loadImages]);
169
+ if (eventID && firebaseUid) {
170
+ setImageCollection([]); // reset when event changes
171
+ setPage(1);
172
+ loadImages(1);
173
+ }
174
+ }, [eventID, firebaseUid, loadImages]);
164
175
  return {
165
176
  imageData,
166
177
  isLoading,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yogiswara/honcho-editor-ui",
3
- "version": "2.5.2",
3
+ "version": "2.5.4",
4
4
  "description": "A complete UI component library for the Honcho photo editor.",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",