@buoy-gg/core 2.1.6 → 2.1.9
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/lib/commonjs/floatingMenu/FloatingDevTools.js +26 -4
- package/lib/commonjs/floatingMenu/autoDiscoverPresets.js +15 -0
- package/lib/module/floatingMenu/FloatingDevTools.js +27 -5
- package/lib/module/floatingMenu/autoDiscoverPresets.js +15 -0
- package/lib/typescript/commonjs/floatingMenu/FloatingDevTools.d.ts +31 -1
- package/lib/typescript/commonjs/floatingMenu/FloatingDevTools.d.ts.map +1 -1
- package/lib/typescript/commonjs/floatingMenu/autoDiscoverPresets.d.ts.map +1 -1
- package/lib/typescript/module/floatingMenu/FloatingDevTools.d.ts +31 -1
- package/lib/typescript/module/floatingMenu/FloatingDevTools.d.ts.map +1 -1
- package/lib/typescript/module/floatingMenu/autoDiscoverPresets.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -110,8 +110,12 @@ const FloatingDevTools = ({
|
|
|
110
110
|
defaultFloatingTools,
|
|
111
111
|
defaultDialTools,
|
|
112
112
|
requireLicense = false,
|
|
113
|
+
licenseKey: licenseKeyProp,
|
|
114
|
+
zustandStores,
|
|
115
|
+
environment,
|
|
113
116
|
...props
|
|
114
117
|
}) => {
|
|
118
|
+
const resolvedEnvironment = environment ?? (0, _sharedUi.normalizeEnvironment)(process.env.NODE_ENV ?? "dev");
|
|
115
119
|
// Check Pro status for production gating
|
|
116
120
|
const isPro = (0, _license.useIsPro)();
|
|
117
121
|
|
|
@@ -122,10 +126,14 @@ const FloatingDevTools = ({
|
|
|
122
126
|
} = (0, _license.useLicense)();
|
|
123
127
|
const [showLicenseModal, setShowLicenseModal] = (0, _react.useState)(false);
|
|
124
128
|
|
|
125
|
-
// Initialize license manager on mount
|
|
129
|
+
// Initialize license manager on mount, and set/clear license key when prop changes
|
|
126
130
|
(0, _react.useEffect)(() => {
|
|
127
|
-
|
|
128
|
-
|
|
131
|
+
if (licenseKeyProp && licenseKeyProp.trim() !== "") {
|
|
132
|
+
_license.LicenseManager.initialize().then(() => _license.LicenseManager.setLicenseKey(licenseKeyProp)).catch(() => {});
|
|
133
|
+
} else {
|
|
134
|
+
_license.LicenseManager.initialize();
|
|
135
|
+
}
|
|
136
|
+
}, [licenseKeyProp]);
|
|
129
137
|
|
|
130
138
|
// Show license modal if requireLicense is enabled and no valid license
|
|
131
139
|
(0, _react.useEffect)(() => {
|
|
@@ -136,6 +144,19 @@ const FloatingDevTools = ({
|
|
|
136
144
|
}
|
|
137
145
|
}, [requireLicense, isInitialized, licenseKey]);
|
|
138
146
|
|
|
147
|
+
// Register zustand stores once on mount if provided
|
|
148
|
+
(0, _react.useEffect)(() => {
|
|
149
|
+
if (!zustandStores) return;
|
|
150
|
+
try {
|
|
151
|
+
const {
|
|
152
|
+
watchStores
|
|
153
|
+
} = require("@buoy-gg/zustand");
|
|
154
|
+
return watchStores(zustandStores);
|
|
155
|
+
} catch {
|
|
156
|
+
// @buoy-gg/zustand not installed
|
|
157
|
+
}
|
|
158
|
+
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
159
|
+
|
|
139
160
|
// Normalize dial tools configuration (truncates to max 6 with warning if needed)
|
|
140
161
|
const normalizedDialTools = (0, _react.useMemo)(() => {
|
|
141
162
|
if (defaultDialTools) {
|
|
@@ -278,7 +299,8 @@ const FloatingDevTools = ({
|
|
|
278
299
|
getToolIcon: getToolIcon,
|
|
279
300
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_FloatingMenu.FloatingMenu, {
|
|
280
301
|
...props,
|
|
281
|
-
apps: finalApps
|
|
302
|
+
apps: finalApps,
|
|
303
|
+
environment: resolvedEnvironment
|
|
282
304
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_AppHost.AppOverlay, {})]
|
|
283
305
|
})
|
|
284
306
|
}), children, DebugBordersOverlay && /*#__PURE__*/(0, _jsxRuntime.jsx)(DebugBordersOverlay, {}), HighlightUpdatesOverlay && /*#__PURE__*/(0, _jsxRuntime.jsx)(HighlightUpdatesOverlay, {}), RouteTracker && /*#__PURE__*/(0, _jsxRuntime.jsx)(RouteTracker, {})]
|
|
@@ -195,6 +195,21 @@ function autoDiscoverPresets() {
|
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
},
|
|
198
|
+
// Zustand DevTools
|
|
199
|
+
{
|
|
200
|
+
name: "@buoy-gg/zustand",
|
|
201
|
+
loader: () => {
|
|
202
|
+
try {
|
|
203
|
+
// @ts-ignore - Dynamic import that may not exist
|
|
204
|
+
const {
|
|
205
|
+
zustandToolPreset
|
|
206
|
+
} = require("@buoy-gg/zustand");
|
|
207
|
+
return zustandToolPreset;
|
|
208
|
+
} catch {
|
|
209
|
+
return null;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
},
|
|
198
213
|
// Events Timeline
|
|
199
214
|
{
|
|
200
215
|
name: "@buoy-gg/events",
|
|
@@ -7,7 +7,7 @@ import { FloatingMenu } from "./FloatingMenu.js";
|
|
|
7
7
|
import { AppOverlay } from "./AppHost.js";
|
|
8
8
|
import { autoDiscoverPresets, autoDiscoverPresetsWithCustom } from "./autoDiscoverPresets.js";
|
|
9
9
|
import { DevToolsVisibilityProvider } from "./DevToolsVisibilityContext.js";
|
|
10
|
-
import { HintsProvider, LicenseEntryModal } from "@buoy-gg/shared-ui";
|
|
10
|
+
import { HintsProvider, LicenseEntryModal, normalizeEnvironment } from "@buoy-gg/shared-ui";
|
|
11
11
|
import { MinimizedToolsProvider } from "./MinimizedToolsContext.js";
|
|
12
12
|
import { validateDialConfig } from "./defaultConfig.js";
|
|
13
13
|
import { DefaultConfigProvider } from "./DefaultConfigContext.js";
|
|
@@ -106,8 +106,12 @@ export const FloatingDevTools = ({
|
|
|
106
106
|
defaultFloatingTools,
|
|
107
107
|
defaultDialTools,
|
|
108
108
|
requireLicense = false,
|
|
109
|
+
licenseKey: licenseKeyProp,
|
|
110
|
+
zustandStores,
|
|
111
|
+
environment,
|
|
109
112
|
...props
|
|
110
113
|
}) => {
|
|
114
|
+
const resolvedEnvironment = environment ?? normalizeEnvironment(process.env.NODE_ENV ?? "dev");
|
|
111
115
|
// Check Pro status for production gating
|
|
112
116
|
const isPro = useIsPro();
|
|
113
117
|
|
|
@@ -118,10 +122,14 @@ export const FloatingDevTools = ({
|
|
|
118
122
|
} = useLicense();
|
|
119
123
|
const [showLicenseModal, setShowLicenseModal] = useState(false);
|
|
120
124
|
|
|
121
|
-
// Initialize license manager on mount
|
|
125
|
+
// Initialize license manager on mount, and set/clear license key when prop changes
|
|
122
126
|
useEffect(() => {
|
|
123
|
-
|
|
124
|
-
|
|
127
|
+
if (licenseKeyProp && licenseKeyProp.trim() !== "") {
|
|
128
|
+
LicenseManager.initialize().then(() => LicenseManager.setLicenseKey(licenseKeyProp)).catch(() => {});
|
|
129
|
+
} else {
|
|
130
|
+
LicenseManager.initialize();
|
|
131
|
+
}
|
|
132
|
+
}, [licenseKeyProp]);
|
|
125
133
|
|
|
126
134
|
// Show license modal if requireLicense is enabled and no valid license
|
|
127
135
|
useEffect(() => {
|
|
@@ -132,6 +140,19 @@ export const FloatingDevTools = ({
|
|
|
132
140
|
}
|
|
133
141
|
}, [requireLicense, isInitialized, licenseKey]);
|
|
134
142
|
|
|
143
|
+
// Register zustand stores once on mount if provided
|
|
144
|
+
useEffect(() => {
|
|
145
|
+
if (!zustandStores) return;
|
|
146
|
+
try {
|
|
147
|
+
const {
|
|
148
|
+
watchStores
|
|
149
|
+
} = require("@buoy-gg/zustand");
|
|
150
|
+
return watchStores(zustandStores);
|
|
151
|
+
} catch {
|
|
152
|
+
// @buoy-gg/zustand not installed
|
|
153
|
+
}
|
|
154
|
+
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
155
|
+
|
|
135
156
|
// Normalize dial tools configuration (truncates to max 6 with warning if needed)
|
|
136
157
|
const normalizedDialTools = useMemo(() => {
|
|
137
158
|
if (defaultDialTools) {
|
|
@@ -274,7 +295,8 @@ export const FloatingDevTools = ({
|
|
|
274
295
|
getToolIcon: getToolIcon,
|
|
275
296
|
children: [/*#__PURE__*/_jsx(FloatingMenu, {
|
|
276
297
|
...props,
|
|
277
|
-
apps: finalApps
|
|
298
|
+
apps: finalApps,
|
|
299
|
+
environment: resolvedEnvironment
|
|
278
300
|
}), /*#__PURE__*/_jsx(AppOverlay, {})]
|
|
279
301
|
})
|
|
280
302
|
}), children, DebugBordersOverlay && /*#__PURE__*/_jsx(DebugBordersOverlay, {}), HighlightUpdatesOverlay && /*#__PURE__*/_jsx(HighlightUpdatesOverlay, {}), RouteTracker && /*#__PURE__*/_jsx(RouteTracker, {})]
|
|
@@ -190,6 +190,21 @@ export function autoDiscoverPresets() {
|
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
192
|
},
|
|
193
|
+
// Zustand DevTools
|
|
194
|
+
{
|
|
195
|
+
name: "@buoy-gg/zustand",
|
|
196
|
+
loader: () => {
|
|
197
|
+
try {
|
|
198
|
+
// @ts-ignore - Dynamic import that may not exist
|
|
199
|
+
const {
|
|
200
|
+
zustandToolPreset
|
|
201
|
+
} = require("@buoy-gg/zustand");
|
|
202
|
+
return zustandToolPreset;
|
|
203
|
+
} catch {
|
|
204
|
+
return null;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
},
|
|
193
208
|
// Events Timeline
|
|
194
209
|
{
|
|
195
210
|
name: "@buoy-gg/events",
|
|
@@ -199,6 +199,36 @@ export interface FloatingDevToolsProps extends Omit<FloatingMenuProps, "apps"> {
|
|
|
199
199
|
* ```
|
|
200
200
|
*/
|
|
201
201
|
requireLicense?: boolean;
|
|
202
|
+
/**
|
|
203
|
+
* Your Buoy Pro license key.
|
|
204
|
+
* Pass this instead of calling `Buoy.init({ licenseKey })` separately.
|
|
205
|
+
*
|
|
206
|
+
* @example
|
|
207
|
+
* ```tsx
|
|
208
|
+
* <FloatingDevTools licenseKey="YOUR_LICENSE_KEY" />
|
|
209
|
+
* ```
|
|
210
|
+
*/
|
|
211
|
+
licenseKey?: string;
|
|
212
|
+
/**
|
|
213
|
+
* Zustand stores to watch for state changes.
|
|
214
|
+
* Pass your store hooks here instead of calling watchStores() separately —
|
|
215
|
+
* no extra isDev check needed since BuoyDevTools handles that itself.
|
|
216
|
+
*
|
|
217
|
+
* Define the stores object at module scope (or with useMemo) to avoid
|
|
218
|
+
* unnecessary re-subscriptions on re-render.
|
|
219
|
+
*
|
|
220
|
+
* @example
|
|
221
|
+
* ```tsx
|
|
222
|
+
* // _layout.tsx or App.tsx
|
|
223
|
+
* import { useCounterStore } from './stores/counter';
|
|
224
|
+
* import { useAuthStore } from './stores/auth';
|
|
225
|
+
*
|
|
226
|
+
* const stores = { counterStore: useCounterStore, authStore: useAuthStore };
|
|
227
|
+
*
|
|
228
|
+
* <FloatingDevTools zustandStores={stores} />
|
|
229
|
+
* ```
|
|
230
|
+
*/
|
|
231
|
+
zustandStores?: Record<string, any>;
|
|
202
232
|
}
|
|
203
233
|
/**
|
|
204
234
|
* Unified floating development tools component with automatic preset discovery.
|
|
@@ -254,5 +284,5 @@ export interface FloatingDevToolsProps extends Omit<FloatingMenuProps, "apps"> {
|
|
|
254
284
|
*
|
|
255
285
|
* @param props - FloatingDevTools props
|
|
256
286
|
*/
|
|
257
|
-
export declare const FloatingDevTools: ({ apps, requiredEnvVars, requiredStorageKeys, children, disableHints, defaultFloatingTools, defaultDialTools, requireLicense, ...props }: FloatingDevToolsProps) => React.JSX.Element | null;
|
|
287
|
+
export declare const FloatingDevTools: ({ apps, requiredEnvVars, requiredStorageKeys, children, disableHints, defaultFloatingTools, defaultDialTools, requireLicense, licenseKey: licenseKeyProp, zustandStores, environment, ...props }: FloatingDevToolsProps) => React.JSX.Element | null;
|
|
258
288
|
//# sourceMappingURL=FloatingDevTools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingDevTools.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/FloatingDevTools.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAGpF,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAMtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAC;AAIzB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,KAAK,CAAC;IACV,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEN;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC5E;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC;IAEtB;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IAEjC;;;;;;;;;;;;OAYG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAEzC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;;;;;;;;;;OAaG;IACH,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;IAE7C;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAErC;;;;;;;;;;;;;;;;OAgBG;IACH,qBAAqB,CAAC,EAAE,OAAO,oBAAoB,EAAE,WAAW,EAAE,CAAC;IAEnE;;;;;;;;;;;;;OAaG;IACH,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,oBAAoB,EAAE,WAAW,KAAK,IAAI,CAAC;IAEtF;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"FloatingDevTools.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/FloatingDevTools.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAGpF,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAMtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAC;AAIzB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,KAAK,CAAC;IACV,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEN;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC5E;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC;IAEtB;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IAEjC;;;;;;;;;;;;OAYG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAEzC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;;;;;;;;;;OAaG;IACH,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;IAE7C;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAErC;;;;;;;;;;;;;;;;OAgBG;IACH,qBAAqB,CAAC,EAAE,OAAO,oBAAoB,EAAE,WAAW,EAAE,CAAC;IAEnE;;;;;;;;;;;;;OAaG;IACH,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,oBAAoB,EAAE,WAAW,KAAK,IAAI,CAAC;IAEtF;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;;;;;;;;;;;;;OAkBG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,eAAO,MAAM,gBAAgB,GAAI,kMAa9B,qBAAqB,6BAgMvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoDiscoverPresets.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/autoDiscoverPresets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,mBAAmB,IAAI,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"autoDiscoverPresets.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/autoDiscoverPresets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,mBAAmB,IAAI,YAAY,EAAE,CAiLpD;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,YAAY,EAAE,GAC1B,YAAY,EAAE,CAahB"}
|
|
@@ -199,6 +199,36 @@ export interface FloatingDevToolsProps extends Omit<FloatingMenuProps, "apps"> {
|
|
|
199
199
|
* ```
|
|
200
200
|
*/
|
|
201
201
|
requireLicense?: boolean;
|
|
202
|
+
/**
|
|
203
|
+
* Your Buoy Pro license key.
|
|
204
|
+
* Pass this instead of calling `Buoy.init({ licenseKey })` separately.
|
|
205
|
+
*
|
|
206
|
+
* @example
|
|
207
|
+
* ```tsx
|
|
208
|
+
* <FloatingDevTools licenseKey="YOUR_LICENSE_KEY" />
|
|
209
|
+
* ```
|
|
210
|
+
*/
|
|
211
|
+
licenseKey?: string;
|
|
212
|
+
/**
|
|
213
|
+
* Zustand stores to watch for state changes.
|
|
214
|
+
* Pass your store hooks here instead of calling watchStores() separately —
|
|
215
|
+
* no extra isDev check needed since BuoyDevTools handles that itself.
|
|
216
|
+
*
|
|
217
|
+
* Define the stores object at module scope (or with useMemo) to avoid
|
|
218
|
+
* unnecessary re-subscriptions on re-render.
|
|
219
|
+
*
|
|
220
|
+
* @example
|
|
221
|
+
* ```tsx
|
|
222
|
+
* // _layout.tsx or App.tsx
|
|
223
|
+
* import { useCounterStore } from './stores/counter';
|
|
224
|
+
* import { useAuthStore } from './stores/auth';
|
|
225
|
+
*
|
|
226
|
+
* const stores = { counterStore: useCounterStore, authStore: useAuthStore };
|
|
227
|
+
*
|
|
228
|
+
* <FloatingDevTools zustandStores={stores} />
|
|
229
|
+
* ```
|
|
230
|
+
*/
|
|
231
|
+
zustandStores?: Record<string, any>;
|
|
202
232
|
}
|
|
203
233
|
/**
|
|
204
234
|
* Unified floating development tools component with automatic preset discovery.
|
|
@@ -254,5 +284,5 @@ export interface FloatingDevToolsProps extends Omit<FloatingMenuProps, "apps"> {
|
|
|
254
284
|
*
|
|
255
285
|
* @param props - FloatingDevTools props
|
|
256
286
|
*/
|
|
257
|
-
export declare const FloatingDevTools: ({ apps, requiredEnvVars, requiredStorageKeys, children, disableHints, defaultFloatingTools, defaultDialTools, requireLicense, ...props }: FloatingDevToolsProps) => React.JSX.Element | null;
|
|
287
|
+
export declare const FloatingDevTools: ({ apps, requiredEnvVars, requiredStorageKeys, children, disableHints, defaultFloatingTools, defaultDialTools, requireLicense, licenseKey: licenseKeyProp, zustandStores, environment, ...props }: FloatingDevToolsProps) => React.JSX.Element | null;
|
|
258
288
|
//# sourceMappingURL=FloatingDevTools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingDevTools.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/FloatingDevTools.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAGpF,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAMtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAC;AAIzB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,KAAK,CAAC;IACV,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEN;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC5E;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC;IAEtB;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IAEjC;;;;;;;;;;;;OAYG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAEzC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;;;;;;;;;;OAaG;IACH,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;IAE7C;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAErC;;;;;;;;;;;;;;;;OAgBG;IACH,qBAAqB,CAAC,EAAE,OAAO,oBAAoB,EAAE,WAAW,EAAE,CAAC;IAEnE;;;;;;;;;;;;;OAaG;IACH,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,oBAAoB,EAAE,WAAW,KAAK,IAAI,CAAC;IAEtF;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"FloatingDevTools.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/FloatingDevTools.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAGpF,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAMtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAC;AAIzB;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACD;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,KAAK,CAAC;IACV,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEN;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAC5E;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC;IAEtB;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IAEjC;;;;;;;;;;;;OAYG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAEzC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;;;;;;;;;;OAaG;IACH,oBAAoB,CAAC,EAAE,qBAAqB,CAAC;IAE7C;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAErC;;;;;;;;;;;;;;;;OAgBG;IACH,qBAAqB,CAAC,EAAE,OAAO,oBAAoB,EAAE,WAAW,EAAE,CAAC;IAEnE;;;;;;;;;;;;;OAaG;IACH,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,oBAAoB,EAAE,WAAW,KAAK,IAAI,CAAC;IAEtF;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;;;;;;;;;;;;;;OAkBG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,eAAO,MAAM,gBAAgB,GAAI,kMAa9B,qBAAqB,6BAgMvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoDiscoverPresets.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/autoDiscoverPresets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,mBAAmB,IAAI,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"autoDiscoverPresets.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/autoDiscoverPresets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,mBAAmB,IAAI,YAAY,EAAE,CAiLpD;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,YAAY,EAAE,GAC1B,YAAY,EAAE,CAahB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@buoy-gg/core",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.9",
|
|
4
4
|
"description": "Floating dev tools launcher and AppHost",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"module": "lib/module/index.js",
|
|
@@ -22,10 +22,10 @@
|
|
|
22
22
|
],
|
|
23
23
|
"sideEffects": false,
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@buoy-gg/shared-ui": "2.1.
|
|
26
|
-
"@buoy-gg/license": "2.1.
|
|
27
|
-
"@buoy-gg/floating-tools-core": "2.1.
|
|
28
|
-
"@buoy-gg/floating-tools-react": "2.1.
|
|
25
|
+
"@buoy-gg/shared-ui": "2.1.9",
|
|
26
|
+
"@buoy-gg/license": "2.1.9",
|
|
27
|
+
"@buoy-gg/floating-tools-core": "2.1.9",
|
|
28
|
+
"@buoy-gg/floating-tools-react": "2.1.9"
|
|
29
29
|
},
|
|
30
30
|
"peerDependencies": {
|
|
31
31
|
"react": "*",
|