@measured/puck 0.18.0-canary.e2139f5 → 0.18.0-canary.f1dec0e

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/index.js CHANGED
@@ -3588,9 +3588,20 @@ var useContentWithPreview = (content, zoneCompound) => {
3588
3588
  };
3589
3589
  }
3590
3590
  );
3591
+ const {
3592
+ state: {
3593
+ ui: { isDragging }
3594
+ }
3595
+ } = useAppContext();
3591
3596
  const [contentWithPreview, setContentWithPreview] = (0, import_react27.useState)(content);
3597
+ const [localPreview, setLocalPreview] = (0, import_react27.useState)(
3598
+ preview
3599
+ );
3592
3600
  const updateContent = useRenderedCallback(
3593
- (content2, preview2) => {
3601
+ (content2, preview2, isDragging2) => {
3602
+ if (isDragging2 && !previewExists) {
3603
+ return;
3604
+ }
3594
3605
  if (preview2) {
3595
3606
  if (preview2.type === "insert") {
3596
3607
  setContentWithPreview(
@@ -3620,13 +3631,14 @@ var useContentWithPreview = (content, zoneCompound) => {
3620
3631
  previewExists ? content2.filter((item) => item.props.id !== draggedItemId) : content2
3621
3632
  );
3622
3633
  }
3634
+ setLocalPreview(preview2);
3623
3635
  },
3624
3636
  [draggedItemId, previewExists]
3625
3637
  );
3626
3638
  (0, import_react27.useEffect)(() => {
3627
- updateContent(content, preview);
3628
- }, [content, preview]);
3629
- return contentWithPreview;
3639
+ updateContent(content, preview, isDragging);
3640
+ }, [content, preview, isDragging]);
3641
+ return [contentWithPreview, localPreview];
3630
3642
  };
3631
3643
 
3632
3644
  // components/DropZone/lib/use-drag-axis.ts
@@ -3706,8 +3718,7 @@ var DropZoneEdit = (0, import_react29.forwardRef)(
3706
3718
  isDeepestZone,
3707
3719
  inNextDeepestArea,
3708
3720
  draggedComponentType,
3709
- userIsDragging,
3710
- preview
3721
+ userIsDragging
3711
3722
  } = useContextStore(ZoneStoreContext, (s) => {
3712
3723
  var _a, _b, _c;
3713
3724
  return {
@@ -3715,8 +3726,7 @@ var DropZoneEdit = (0, import_react29.forwardRef)(
3715
3726
  inNextDeepestArea: s.nextAreaDepthIndex[areaId || ""],
3716
3727
  draggedItemId: (_b = s.draggedItem) == null ? void 0 : _b.id,
3717
3728
  draggedComponentType: (_c = s.draggedItem) == null ? void 0 : _c.data.componentType,
3718
- userIsDragging: !!s.draggedItem,
3719
- preview: s.previewIndex[zoneCompound]
3729
+ userIsDragging: !!s.draggedItem
3720
3730
  };
3721
3731
  });
3722
3732
  const { itemSelector } = appContext2.state.ui;
@@ -3782,7 +3792,10 @@ var DropZoneEdit = (0, import_react29.forwardRef)(
3782
3792
  if (isEnabled) {
3783
3793
  isEnabled = acceptsTarget(draggedComponentType);
3784
3794
  }
3785
- const contentWithPreview = useContentWithPreview(content, zoneCompound);
3795
+ const [contentWithPreview, preview] = useContentWithPreview(
3796
+ content,
3797
+ zoneCompound
3798
+ );
3786
3799
  const isDropEnabled = isEnabled && (preview ? contentWithPreview.length === 1 : contentWithPreview.length === 0);
3787
3800
  const droppableConfig = {
3788
3801
  id: zoneCompound,
package/dist/index.mjs CHANGED
@@ -3431,9 +3431,20 @@ var useContentWithPreview = (content, zoneCompound) => {
3431
3431
  };
3432
3432
  }
3433
3433
  );
3434
+ const {
3435
+ state: {
3436
+ ui: { isDragging }
3437
+ }
3438
+ } = useAppContext();
3434
3439
  const [contentWithPreview, setContentWithPreview] = useState15(content);
3440
+ const [localPreview, setLocalPreview] = useState15(
3441
+ preview
3442
+ );
3435
3443
  const updateContent = useRenderedCallback(
3436
- (content2, preview2) => {
3444
+ (content2, preview2, isDragging2) => {
3445
+ if (isDragging2 && !previewExists) {
3446
+ return;
3447
+ }
3437
3448
  if (preview2) {
3438
3449
  if (preview2.type === "insert") {
3439
3450
  setContentWithPreview(
@@ -3463,13 +3474,14 @@ var useContentWithPreview = (content, zoneCompound) => {
3463
3474
  previewExists ? content2.filter((item) => item.props.id !== draggedItemId) : content2
3464
3475
  );
3465
3476
  }
3477
+ setLocalPreview(preview2);
3466
3478
  },
3467
3479
  [draggedItemId, previewExists]
3468
3480
  );
3469
3481
  useEffect12(() => {
3470
- updateContent(content, preview);
3471
- }, [content, preview]);
3472
- return contentWithPreview;
3482
+ updateContent(content, preview, isDragging);
3483
+ }, [content, preview, isDragging]);
3484
+ return [contentWithPreview, localPreview];
3473
3485
  };
3474
3486
 
3475
3487
  // components/DropZone/lib/use-drag-axis.ts
@@ -3549,8 +3561,7 @@ var DropZoneEdit = forwardRef3(
3549
3561
  isDeepestZone,
3550
3562
  inNextDeepestArea,
3551
3563
  draggedComponentType,
3552
- userIsDragging,
3553
- preview
3564
+ userIsDragging
3554
3565
  } = useContextStore(ZoneStoreContext, (s) => {
3555
3566
  var _a, _b, _c;
3556
3567
  return {
@@ -3558,8 +3569,7 @@ var DropZoneEdit = forwardRef3(
3558
3569
  inNextDeepestArea: s.nextAreaDepthIndex[areaId || ""],
3559
3570
  draggedItemId: (_b = s.draggedItem) == null ? void 0 : _b.id,
3560
3571
  draggedComponentType: (_c = s.draggedItem) == null ? void 0 : _c.data.componentType,
3561
- userIsDragging: !!s.draggedItem,
3562
- preview: s.previewIndex[zoneCompound]
3572
+ userIsDragging: !!s.draggedItem
3563
3573
  };
3564
3574
  });
3565
3575
  const { itemSelector } = appContext2.state.ui;
@@ -3625,7 +3635,10 @@ var DropZoneEdit = forwardRef3(
3625
3635
  if (isEnabled) {
3626
3636
  isEnabled = acceptsTarget(draggedComponentType);
3627
3637
  }
3628
- const contentWithPreview = useContentWithPreview(content, zoneCompound);
3638
+ const [contentWithPreview, preview] = useContentWithPreview(
3639
+ content,
3640
+ zoneCompound
3641
+ );
3629
3642
  const isDropEnabled = isEnabled && (preview ? contentWithPreview.length === 1 : contentWithPreview.length === 0);
3630
3643
  const droppableConfig = {
3631
3644
  id: zoneCompound,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@measured/puck",
3
- "version": "0.18.0-canary.e2139f5",
3
+ "version": "0.18.0-canary.f1dec0e",
4
4
  "author": "Measured Corporation Ltd <hello@measured.co>",
5
5
  "repository": "measuredco/puck",
6
6
  "bugs": "https://github.com/measuredco/puck/issues",