dynim-react 1.0.4 → 1.0.6

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 +1 @@
1
- {"version":3,"file":"BuilderProvider.d.ts","sourceRoot":"","sources":["../../src/builder/BuilderProvider.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AASf,OAAO,KAAK,EAEV,eAAe,EAGf,QAAQ,EACR,SAAS,EACT,WAAW,EAGX,WAAW,EACZ,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,KAAK,IAAI,CAAC;IACzC,oEAAoE;IACpE,mBAAmB,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IACrD,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IAG3C,gFAAgF;IAChF,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,qDAAqD;IACrD,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/D,8GAA8G;IAC9G,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,oEAAoE;IACpE,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,4CAA4C;IAC5C,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpE,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,0CAA0C;IAC1C,oBAAoB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CACpD;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI,CAAC;IAEzC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,4CAA4C;IAC5C,WAAW,EAAE,WAAW,CAAC;IACzB,+BAA+B;IAC/B,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,gDAAgD;IAChD,SAAS,EAAE,QAAQ,EAAE,CAAC;IAGtB,+CAA+C;IAC/C,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,gEAAgE;IAChE,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,kDAAkD;IAClD,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,wDAAwD;IACxD,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,2CAA2C;IAC3C,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IACxE,qCAAqC;IACrC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9D,wCAAwC;IACxC,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC3E,2CAA2C;IAC3C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,4CAA4C;IAC5C,cAAc,EAAE,OAAO,CAAC;IACxB,iCAAiC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,4BAA4B;IAC5B,YAAY,EAAE,MAAM,IAAI,CAAC;CAC1B;AAID,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;CACzD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,MAAW,EACX,cAAc,GACf,EAAE,oBAAoB,GAAG,GAAG,CAAC,OAAO,CA6apC;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,mBAAmB,CAMhD"}
1
+ {"version":3,"file":"BuilderProvider.d.ts","sourceRoot":"","sources":["../../src/builder/BuilderProvider.tsx"],"names":[],"mappings":"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"}
@@ -30,10 +30,44 @@ export function BuilderProvider({ children, config = {}, onBuilderReady, }) {
30
30
  bundleReady: false,
31
31
  bundleError: undefined,
32
32
  });
33
- // Initialize visual builder (createBuilder from core)
33
+ // Initialize code client FIRST (before builder, so we can share it)
34
+ useEffect(() => {
35
+ const { apiBase = 'http://localhost:8080', sessionToken, refreshToken, getSession, onCodeMessageUpdate, onCodeMessage, // deprecated
36
+ onCodeEdit, onError, autoApplyStyles = true, } = config;
37
+ codeClientRef.current = createCodeClient({
38
+ apiBase,
39
+ sessionToken,
40
+ refreshToken,
41
+ getSession,
42
+ onMessageUpdate: (message) => {
43
+ // Update local state with the structured message
44
+ setCodeMessage(message);
45
+ // Forward to consumer callback
46
+ onCodeMessageUpdate?.(message);
47
+ },
48
+ onRawEvent: (event) => {
49
+ // Forward raw events for debugging/advanced use
50
+ onCodeMessage?.(event);
51
+ },
52
+ onEdit: (edit) => {
53
+ console.log('[BuilderProvider] Code edit:', edit);
54
+ // Auto-apply style changes if enabled and style applier is available
55
+ if (autoApplyStyles && styleApplierRef.current && hasStyleChanges(edit)) {
56
+ const result = styleApplierRef.current.processEdit(edit);
57
+ console.log('[BuilderProvider] Style changes:', result.changes.length, 'applied:', result.applied);
58
+ }
59
+ onCodeEdit?.(edit);
60
+ },
61
+ onError: (error) => {
62
+ console.error('[BuilderProvider] Code error:', error);
63
+ onError?.(error);
64
+ },
65
+ });
66
+ }, [config]);
67
+ // Initialize visual builder (createBuilder from core) - AFTER codeClient
34
68
  useEffect(() => {
35
69
  const { apiBase = 'http://localhost:8080', pageId = window.location.pathname, logo = 'Builder', contentRoot = document.body, sessionToken, refreshToken, getSession, } = config;
36
- // Create the visual builder instance
70
+ // Create the visual builder instance, sharing our CodeClient
37
71
  builderRef.current = createBuilder({
38
72
  logo,
39
73
  contentRoot,
@@ -42,6 +76,7 @@ export function BuilderProvider({ children, config = {}, onBuilderReady, }) {
42
76
  sessionToken,
43
77
  refreshToken,
44
78
  getSession,
79
+ codeClient: codeClientRef.current ?? undefined,
45
80
  onEnter: () => {
46
81
  console.log('[BuilderProvider] Visual builder entered');
47
82
  setIsBuilderActive(true);
@@ -77,8 +112,10 @@ export function BuilderProvider({ children, config = {}, onBuilderReady, }) {
77
112
  const { previewContainer, inPlacePreview = true, previewTransitionDuration = 300, sessionToken, getSession, onStyleApplied, onBundleLoadStart, onBundleLoadComplete, onError, } = config;
78
113
  // Determine which container to use
79
114
  const container = inPlacePreview ? internalContainer : previewContainer;
115
+ console.log('[BuilderProvider] Bundle manager init:', { inPlacePreview, hasInternalContainer: !!internalContainer, hasPreviewContainer: !!previewContainer });
80
116
  if (!container) {
81
117
  // For inPlacePreview, container may not be ready on first render
118
+ console.log('[BuilderProvider] No container yet, skipping bundle manager init');
82
119
  return;
83
120
  }
84
121
  // Create auth token getter for bundle requests
@@ -122,6 +159,7 @@ export function BuilderProvider({ children, config = {}, onBuilderReady, }) {
122
159
  },
123
160
  });
124
161
  setHasBundleManager(true);
162
+ console.log('[BuilderProvider] Bundle manager created');
125
163
  // Create style applier that targets the bundle manager's container
126
164
  styleApplierRef.current = createStyleApplier({
127
165
  queryElements: (selector) => {
@@ -143,40 +181,6 @@ export function BuilderProvider({ children, config = {}, onBuilderReady, }) {
143
181
  setHasBundleManager(false);
144
182
  };
145
183
  }, [config, internalContainer]);
146
- // Initialize code client for flexcode integration
147
- useEffect(() => {
148
- const { apiBase = 'http://localhost:8080', sessionToken, refreshToken, getSession, onCodeMessageUpdate, onCodeMessage, // deprecated
149
- onCodeEdit, onError, autoApplyStyles = true, } = config;
150
- codeClientRef.current = createCodeClient({
151
- apiBase,
152
- sessionToken,
153
- refreshToken,
154
- getSession,
155
- onMessageUpdate: (message) => {
156
- // Update local state with the structured message
157
- setCodeMessage(message);
158
- // Forward to consumer callback
159
- onCodeMessageUpdate?.(message);
160
- },
161
- onRawEvent: (event) => {
162
- // Forward raw events for debugging/advanced use
163
- onCodeMessage?.(event);
164
- },
165
- onEdit: (edit) => {
166
- console.log('[BuilderProvider] Code edit:', edit);
167
- // Auto-apply style changes if enabled and style applier is available
168
- if (autoApplyStyles && styleApplierRef.current && hasStyleChanges(edit)) {
169
- const result = styleApplierRef.current.processEdit(edit);
170
- console.log('[BuilderProvider] Style changes:', result.changes.length, 'applied:', result.applied);
171
- }
172
- onCodeEdit?.(edit);
173
- },
174
- onError: (error) => {
175
- console.error('[BuilderProvider] Code error:', error);
176
- onError?.(error);
177
- },
178
- });
179
- }, [config]);
180
184
  // Enter builder mode - activates the visual builder UI
181
185
  const enterBuilder = useCallback(() => {
182
186
  if (builderRef.current && !builderRef.current.isActive()) {
@@ -241,6 +245,11 @@ export function BuilderProvider({ children, config = {}, onBuilderReady, }) {
241
245
  // Auto-reload temp bundle when bundle is ready and bundle manager is available
242
246
  // Uses hasBundleManager as dependency so it re-runs when manager initializes
243
247
  useEffect(() => {
248
+ console.log('[BuilderProvider] Auto-load check:', {
249
+ bundleReady: codeMessage.bundleReady,
250
+ projectId: codeMessage.projectId,
251
+ hasBundleManager,
252
+ });
244
253
  if (codeMessage.bundleReady && codeMessage.projectId && hasBundleManager) {
245
254
  console.log('[BuilderProvider] Bundle ready - loading temp bundle:', codeMessage.projectId);
246
255
  loadTempBundle(codeMessage.projectId);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dynim-react",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -13,7 +13,7 @@
13
13
  "dev": "tsc --watch"
14
14
  },
15
15
  "dependencies": {
16
- "dynim-core": "^1.0.1"
16
+ "dynim-core": "^1.0.4"
17
17
  },
18
18
  "peerDependencies": {
19
19
  "react": ">=17.0.0",