@alpaca-editor/core 1.0.3985 → 1.0.3986

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.
@@ -32,6 +32,12 @@ export function FrameMenu({ component, compareView, pageViewContext, }) {
32
32
  setComponentRect(componentRect);
33
33
  };
34
34
  const updatePositionThrottled = useThrottledCallback(updatePosition, 30);
35
+ // Cleanup effect to prevent memory leaks and state updates after unmount
36
+ useEffect(() => {
37
+ return () => {
38
+ updatePositionThrottled.cancel?.();
39
+ };
40
+ }, []);
35
41
  // Effect to handle changes in the observed element
36
42
  useEffect(() => {
37
43
  if (component) {
@@ -65,17 +71,23 @@ export function FrameMenu({ component, compareView, pageViewContext, }) {
65
71
  componentRect.elements.forEach((componentElement) => {
66
72
  resizeObserverRef.current.observe(componentElement);
67
73
  });
74
+ // Store references for cleanup
75
+ const scrollContainerRef = scrollContainer;
76
+ const iframeWindowRef = iframe.contentWindow;
77
+ return () => {
78
+ if (mutationObserverRef.current) {
79
+ mutationObserverRef.current.disconnect();
80
+ mutationObserverRef.current = null;
81
+ }
82
+ if (resizeObserverRef.current) {
83
+ resizeObserverRef.current.disconnect();
84
+ resizeObserverRef.current = null;
85
+ }
86
+ // Clean up scroll event listeners
87
+ scrollContainerRef?.removeEventListener("scroll", updatePositionThrottled);
88
+ iframeWindowRef?.removeEventListener("scroll", updatePositionThrottled);
89
+ };
68
90
  }
69
- return () => {
70
- if (mutationObserverRef.current) {
71
- mutationObserverRef.current.disconnect();
72
- mutationObserverRef.current = null;
73
- }
74
- if (resizeObserverRef.current) {
75
- resizeObserverRef.current.disconnect();
76
- resizeObserverRef.current = null;
77
- }
78
- };
79
91
  }, [component]);
80
92
  // Effect to measure header width and compare with componentRect
81
93
  useEffect(() => {
@@ -93,9 +105,10 @@ export function FrameMenu({ component, compareView, pageViewContext, }) {
93
105
  };
94
106
  }, [componentRect]);
95
107
  useEffect(() => {
96
- setTimeout(() => {
108
+ const timeoutId = setTimeout(() => {
97
109
  updatePosition();
98
110
  }, 100);
111
+ return () => clearTimeout(timeoutId);
99
112
  }, [
100
113
  pageViewContext?.scroll,
101
114
  pageViewContext?.viewport,
@@ -1 +1 @@
1
- {"version":3,"file":"FrameMenu.js","sourceRoot":"","sources":["../../../src/editor/page-editor-chrome/FrameMenu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FrameMenu.js","sourceRoot":"","sources":["../../../src/editor/page-editor-chrome/FrameMenu.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from "react";
3
- import { getAllComponentInstances, } from "../componentTreeHelper";
3
+ import { getAllComponentInstances } from "../componentTreeHelper";
4
4
  import { useEditContext } from "../client/editContext";
5
5
  import { FrameMenu } from "./FrameMenu";
6
6
  export function FrameMenus({ compareView, pageViewContext, }) {
@@ -17,6 +17,6 @@ export function FrameMenus({ compareView, pageViewContext, }) {
17
17
  : [];
18
18
  setComponents(comps);
19
19
  }, [selection, pageViewContext.page]);
20
- return (_jsxs(_Fragment, { children: [components.map((c) => (_jsx(FrameMenu, { component: c, compareView: compareView, pageViewContext: pageViewContext }, c.id))), " "] }));
20
+ return (_jsxs(_Fragment, { children: [components.map((c, index) => (_jsx(FrameMenu, { component: c, compareView: compareView, pageViewContext: pageViewContext }, c.id + index))), " "] }));
21
21
  }
22
22
  //# sourceMappingURL=FrameMenus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FrameMenus.js","sourceRoot":"","sources":["../../../src/editor/page-editor-chrome/FrameMenus.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAEL,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAc,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,UAAU,UAAU,CAAC,EACzB,WAAW,EACX,eAAe,GAIhB;IACC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,WAAW,EAAE,SAAS,CAAC;IAEzC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAc,EAAE,CAAC,CAAC;IAE9D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,eAAe,CAAC,IAAI;YAAE,OAAO;QAElC,MAAM,KAAK,GAAgB,SAAS;YAClC,CAAC,CAAC,SAAS;iBACN,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,wBAAwB,CAAC,EAAE,EAAE,eAAe,CAAC,IAAK,CAAC,CAAC;iBACpE,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;YAC/D,CAAC,CAAC,EAAE,CAAC;QAEP,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IAEtC,OAAO,CACL,8BACG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACrB,KAAC,SAAS,IAER,SAAS,EAAE,CAAC,EACZ,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,eAAe,IAH3B,CAAC,CAAC,EAAE,CAIT,CACH,CAAC,EAAE,GAAG,IACN,CACJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"FrameMenus.js","sourceRoot":"","sources":["../../../src/editor/page-editor-chrome/FrameMenus.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,UAAU,UAAU,CAAC,EACzB,WAAW,EACX,eAAe,GAIhB;IACC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,WAAW,EAAE,SAAS,CAAC;IAEzC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAc,EAAE,CAAC,CAAC;IAE9D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,eAAe,CAAC,IAAI;YAAE,OAAO;QAElC,MAAM,KAAK,GAAgB,SAAS;YAClC,CAAC,CAAC,SAAS;iBACN,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,wBAAwB,CAAC,EAAE,EAAE,eAAe,CAAC,IAAK,CAAC,CAAC;iBACpE,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;YAC/D,CAAC,CAAC,EAAE,CAAC;QAEP,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IAEtC,OAAO,CACL,8BACG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAC5B,KAAC,SAAS,IAER,SAAS,EAAE,CAAC,EACZ,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,eAAe,IAH3B,CAAC,CAAC,EAAE,GAAG,KAAK,CAIjB,CACH,CAAC,EAAE,GAAG,IACN,CACJ,CAAC;AACJ,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const version = "1.0.3985";
2
- export declare const buildDate = "2025-07-08 10:43:42";
1
+ export declare const version = "1.0.3986";
2
+ export declare const buildDate = "2025-07-08 12:50:51";
package/dist/revision.js CHANGED
@@ -1,3 +1,3 @@
1
- export const version = "1.0.3985";
2
- export const buildDate = "2025-07-08 10:43:42";
1
+ export const version = "1.0.3986";
2
+ export const buildDate = "2025-07-08 12:50:51";
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.3985",
3
+ "version": "1.0.3986",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -1,6 +1,6 @@
1
1
  import { useEffect, useRef, useState } from "react";
2
2
 
3
- import { EditButton, useEditContext, EditorMode } from "../client/editContext";
3
+ import { EditButton, useEditContext } from "../client/editContext";
4
4
  import { Rect, findComponentRect } from "../utils";
5
5
  import { useThrottledCallback } from "use-debounce";
6
6
  import { Component } from "../pageModel";
@@ -29,6 +29,7 @@ export function FrameMenu({
29
29
  const resizeObserverRef = useRef<ResizeObserver | null>(null);
30
30
  const mutationObserverRef = useRef<MutationObserver | null>(null);
31
31
  const headerRef = useRef<HTMLDivElement>(null);
32
+
32
33
  const [commands, setCommands] = useState<ComponentCommand[]>([]);
33
34
 
34
35
  const [componentRect, setComponentRect] = useState<Rect>();
@@ -58,6 +59,13 @@ export function FrameMenu({
58
59
 
59
60
  const updatePositionThrottled = useThrottledCallback(updatePosition, 30);
60
61
 
62
+ // Cleanup effect to prevent memory leaks and state updates after unmount
63
+ useEffect(() => {
64
+ return () => {
65
+ updatePositionThrottled.cancel?.();
66
+ };
67
+ }, []);
68
+
61
69
  // Effect to handle changes in the observed element
62
70
  useEffect(() => {
63
71
  if (component) {
@@ -98,18 +106,28 @@ export function FrameMenu({
98
106
  componentRect.elements.forEach((componentElement) => {
99
107
  resizeObserverRef.current!.observe(componentElement);
100
108
  });
101
- }
102
109
 
103
- return () => {
104
- if (mutationObserverRef.current) {
105
- mutationObserverRef.current.disconnect();
106
- mutationObserverRef.current = null;
107
- }
108
- if (resizeObserverRef.current) {
109
- resizeObserverRef.current.disconnect();
110
- resizeObserverRef.current = null;
111
- }
112
- };
110
+ // Store references for cleanup
111
+ const scrollContainerRef = scrollContainer;
112
+ const iframeWindowRef = iframe.contentWindow;
113
+
114
+ return () => {
115
+ if (mutationObserverRef.current) {
116
+ mutationObserverRef.current.disconnect();
117
+ mutationObserverRef.current = null;
118
+ }
119
+ if (resizeObserverRef.current) {
120
+ resizeObserverRef.current.disconnect();
121
+ resizeObserverRef.current = null;
122
+ }
123
+ // Clean up scroll event listeners
124
+ scrollContainerRef?.removeEventListener(
125
+ "scroll",
126
+ updatePositionThrottled,
127
+ );
128
+ iframeWindowRef?.removeEventListener("scroll", updatePositionThrottled);
129
+ };
130
+ }
113
131
  }, [component]);
114
132
 
115
133
  // Effect to measure header width and compare with componentRect
@@ -119,6 +137,7 @@ export function FrameMenu({
119
137
  const headerResizeObserver = new ResizeObserver((entries) => {
120
138
  for (const entry of entries) {
121
139
  const headerWidth = entry.contentRect.width;
140
+
122
141
  setIsHeaderWiderThanComponent(headerWidth > componentRect.width);
123
142
  }
124
143
  });
@@ -131,9 +150,11 @@ export function FrameMenu({
131
150
  }, [componentRect]);
132
151
 
133
152
  useEffect(() => {
134
- setTimeout(() => {
153
+ const timeoutId = setTimeout(() => {
135
154
  updatePosition();
136
155
  }, 100);
156
+
157
+ return () => clearTimeout(timeoutId);
137
158
  }, [
138
159
  pageViewContext?.scroll,
139
160
  pageViewContext?.viewport,
@@ -1,9 +1,6 @@
1
1
  import { useEffect, useState } from "react";
2
- import {
3
- findComponent,
4
- getAllComponentInstances,
5
- } from "../componentTreeHelper";
6
- import { useEditContext, EditorMode } from "../client/editContext";
2
+ import { getAllComponentInstances } from "../componentTreeHelper";
3
+ import { useEditContext } from "../client/editContext";
7
4
  import { PageViewContext } from "../page-viewer/pageViewContext";
8
5
  import { FrameMenu } from "./FrameMenu";
9
6
  import { Component } from "../pageModel";
@@ -34,9 +31,9 @@ export function FrameMenus({
34
31
 
35
32
  return (
36
33
  <>
37
- {components.map((c) => (
34
+ {components.map((c, index) => (
38
35
  <FrameMenu
39
- key={c.id}
36
+ key={c.id + index}
40
37
  component={c}
41
38
  compareView={compareView}
42
39
  pageViewContext={pageViewContext}
package/src/revision.ts CHANGED
@@ -1,2 +1,2 @@
1
- export const version = "1.0.3985";
2
- export const buildDate = "2025-07-08 10:43:42";
1
+ export const version = "1.0.3986";
2
+ export const buildDate = "2025-07-08 12:50:51";