@promakeai/inspector-hook 1.4.4 → 1.5.1

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":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5E,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,sBAAsB,EAEtB,kBAAkB,EAenB,MAAM,4BAA4B,CAAC;AAuJpC,wBAAgB,YAAY,CAC1B,SAAS,EAAE,SAAS,CAAC,iBAAiB,CAAC,EACvC,SAAS,CAAC,EAAE,kBAAkB,EAC9B,MAAM,CAAC,EAAE,eAAe,EACxB,KAAK,CAAC,EAAE,cAAc,EACtB,aAAa,CAAC,EAAE,sBAAsB,GACrC,kBAAkB,CA6gBpB;AAGD,YAAY,EACV,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5E,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,sBAAsB,EAEtB,kBAAkB,EAenB,MAAM,4BAA4B,CAAC;AA+JpC,wBAAgB,YAAY,CAC1B,SAAS,EAAE,SAAS,CAAC,iBAAiB,CAAC,EACvC,SAAS,CAAC,EAAE,kBAAkB,EAC9B,MAAM,CAAC,EAAE,eAAe,EACxB,KAAK,CAAC,EAAE,cAAc,EACtB,aAAa,CAAC,EAAE,sBAAsB,GACrC,kBAAkB,CAmlBpB;AAGD,YAAY,EACV,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -110,6 +110,15 @@ export function useInspector(iframeRef, callbacks, labels, theme, initialConfig)
110
110
  show: show,
111
111
  });
112
112
  }, [sendMessage]);
113
+ /**
114
+ * Show or hide database tab
115
+ */
116
+ const showDatabaseTab = useCallback((show) => {
117
+ sendMessage({
118
+ type: "SHOW_DATABASE_TAB",
119
+ show: show,
120
+ });
121
+ }, [sendMessage]);
113
122
  /**
114
123
  * Show or hide "Built with Promake" badge
115
124
  */
@@ -185,6 +194,16 @@ export function useInspector(iframeRef, callbacks, labels, theme, initialConfig)
185
194
  enabled: enabled,
186
195
  });
187
196
  }, [sendMessage]);
197
+ /**
198
+ * Show/hide multi-instance warning
199
+ * When false, warning is hidden even for multi-instance elements
200
+ */
201
+ const setShowMultipleInstanceWarning = useCallback((show) => {
202
+ sendMessage({
203
+ type: "SET_SHOW_MULTIPLE_INSTANCE_WARNING",
204
+ show: show,
205
+ });
206
+ }, [sendMessage]);
188
207
  /**
189
208
  * Enable/disable ControlBox dragging
190
209
  * When false, drag handle is hidden and dragging is disabled
@@ -267,6 +286,31 @@ export function useInspector(iframeRef, callbacks, labels, theme, initialConfig)
267
286
  break;
268
287
  case "INSPECTOR_CHANGES_SAVED":
269
288
  callbacks?.onChangesSaved?.(messageData.data);
289
+ // Also trigger onDatabaseUpdated if there are database changes
290
+ if (callbacks?.onDatabaseUpdated) {
291
+ const databaseChanges = messageData.data.changes.filter((c) => c.type === "database");
292
+ if (databaseChanges.length > 0) {
293
+ databaseChanges.forEach((change) => {
294
+ if (change.database) {
295
+ // Extract only changed values
296
+ const changedValues = {};
297
+ Object.keys(change.database.current).forEach((key) => {
298
+ const currentVal = change.database.current[key];
299
+ const previousVal = change.database.previous[key];
300
+ if (currentVal !== previousVal) {
301
+ changedValues[key] = currentVal;
302
+ }
303
+ });
304
+ callbacks.onDatabaseUpdated({
305
+ element: change.element,
306
+ changes: changedValues,
307
+ table: change.database.table,
308
+ id: change.database.id,
309
+ });
310
+ }
311
+ });
312
+ }
313
+ }
270
314
  break;
271
315
  case "INSPECTOR_GO_TO_CODE":
272
316
  callbacks?.onGoToCode?.(messageData.data);
@@ -309,6 +353,12 @@ export function useInspector(iframeRef, callbacks, labels, theme, initialConfig)
309
353
  enabled: initialConfig.allowEditForMultipleInstances,
310
354
  });
311
355
  }
356
+ if (initialConfig.showMultipleInstanceWarning !== undefined) {
357
+ sendMessage({
358
+ type: "SET_SHOW_MULTIPLE_INSTANCE_WARNING",
359
+ show: initialConfig.showMultipleInstanceWarning,
360
+ });
361
+ }
312
362
  if (initialConfig.isDraggable !== undefined) {
313
363
  sendMessage({
314
364
  type: "SET_IS_DRAGGABLE",
@@ -358,6 +408,12 @@ export function useInspector(iframeRef, callbacks, labels, theme, initialConfig)
358
408
  show: initialConfig.showImagesTab,
359
409
  });
360
410
  }
411
+ if (initialConfig.showDatabaseTab !== undefined) {
412
+ sendMessage({
413
+ type: "SHOW_DATABASE_TAB",
414
+ show: initialConfig.showDatabaseTab,
415
+ });
416
+ }
361
417
  if (initialConfig.showChildBorders !== undefined) {
362
418
  sendMessage({
363
419
  type: "SET_SHOW_CHILD_BORDERS",
@@ -416,9 +472,11 @@ export function useInspector(iframeRef, callbacks, labels, theme, initialConfig)
416
472
  setLoading,
417
473
  setInspectOnRightClick,
418
474
  setAllowEditForMultipleInstances,
475
+ setShowMultipleInstanceWarning,
419
476
  setIsDraggable,
420
477
  setIsResizable,
421
478
  showImagesTab,
479
+ showDatabaseTab,
422
480
  };
423
481
  }
424
482
  // Export utility functions
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promakeai/inspector-hook",
3
- "version": "1.4.4",
3
+ "version": "1.5.1",
4
4
  "description": "React hook for controlling inspector in parent applications",
5
5
  "author": "Promake",
6
6
  "type": "module",
@@ -45,7 +45,7 @@
45
45
  }
46
46
  },
47
47
  "devDependencies": {
48
- "@promakeai/inspector-types": "1.3.1",
48
+ "@promakeai/inspector-types": "1.5.1",
49
49
  "vitest": "^1.0.0"
50
50
  },
51
51
  "publishConfig": {