@buoy-gg/core 7.0.32 → 7.0.34
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 +24 -1
- package/lib/commonjs/floatingMenu/autoDiscoverPresets.js +21 -5
- package/lib/commonjs/floatingMenu/autoExternalSync.js +32 -17
- package/lib/commonjs/floatingMenu/deviceIdentity.js +173 -0
- package/lib/commonjs/floatingMenu/dial/DialDevTools.js +5 -46
- package/lib/commonjs/floatingMenu/dial/DialIcon.js +2 -46
- package/lib/commonjs/version.js +1 -1
- package/lib/module/floatingMenu/FloatingDevTools.js +24 -1
- package/lib/module/floatingMenu/autoDiscoverPresets.js +21 -5
- package/lib/module/floatingMenu/autoExternalSync.js +32 -17
- package/lib/module/floatingMenu/deviceIdentity.js +163 -0
- package/lib/module/floatingMenu/dial/DialDevTools.js +6 -47
- package/lib/module/floatingMenu/dial/DialIcon.js +2 -46
- package/lib/module/version.js +1 -1
- package/lib/typescript/commonjs/floatingMenu/FloatingDevTools.d.ts +38 -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/commonjs/floatingMenu/autoExternalSync.d.ts +12 -2
- package/lib/typescript/commonjs/floatingMenu/autoExternalSync.d.ts.map +1 -1
- package/lib/typescript/commonjs/floatingMenu/defaultConfig.d.ts +1 -1
- package/lib/typescript/commonjs/floatingMenu/defaultConfig.d.ts.map +1 -1
- package/lib/typescript/commonjs/floatingMenu/deviceIdentity.d.ts +66 -0
- package/lib/typescript/commonjs/floatingMenu/deviceIdentity.d.ts.map +1 -0
- package/lib/typescript/commonjs/floatingMenu/dial/DialDevTools.d.ts +0 -7
- package/lib/typescript/commonjs/floatingMenu/dial/DialDevTools.d.ts.map +1 -1
- package/lib/typescript/commonjs/floatingMenu/dial/DialIcon.d.ts.map +1 -1
- package/lib/typescript/commonjs/version.d.ts +1 -1
- package/lib/typescript/module/floatingMenu/FloatingDevTools.d.ts +38 -1
- package/lib/typescript/module/floatingMenu/FloatingDevTools.d.ts.map +1 -1
- package/lib/typescript/module/floatingMenu/autoDiscoverPresets.d.ts.map +1 -1
- package/lib/typescript/module/floatingMenu/autoExternalSync.d.ts +12 -2
- package/lib/typescript/module/floatingMenu/autoExternalSync.d.ts.map +1 -1
- package/lib/typescript/module/floatingMenu/defaultConfig.d.ts +1 -1
- package/lib/typescript/module/floatingMenu/defaultConfig.d.ts.map +1 -1
- package/lib/typescript/module/floatingMenu/deviceIdentity.d.ts +66 -0
- package/lib/typescript/module/floatingMenu/deviceIdentity.d.ts.map +1 -0
- package/lib/typescript/module/floatingMenu/dial/DialDevTools.d.ts +0 -7
- package/lib/typescript/module/floatingMenu/dial/DialDevTools.d.ts.map +1 -1
- package/lib/typescript/module/floatingMenu/dial/DialIcon.d.ts.map +1 -1
- package/lib/typescript/module/version.d.ts +1 -1
- package/package.json +5 -5
- package/lib/commonjs/floatingMenu/allToolsRegistry.js +0 -159
- package/lib/module/floatingMenu/allToolsRegistry.js +0 -155
- package/lib/typescript/commonjs/floatingMenu/allToolsRegistry.d.ts +0 -42
- package/lib/typescript/commonjs/floatingMenu/allToolsRegistry.d.ts.map +0 -1
- package/lib/typescript/module/floatingMenu/allToolsRegistry.d.ts +0 -42
- package/lib/typescript/module/floatingMenu/allToolsRegistry.d.ts.map +0 -1
|
@@ -19,13 +19,6 @@ export type IconType = {
|
|
|
19
19
|
}) => ReactNode;
|
|
20
20
|
color: string;
|
|
21
21
|
onPress: () => void;
|
|
22
|
-
/**
|
|
23
|
-
* True for tools that React Buoy offers but the current app has not installed.
|
|
24
|
-
* Unavailable items render like a normal item (real icon + real name at full
|
|
25
|
-
* styling) plus a small muted "Unavailable" caption, and are non-interactive
|
|
26
|
-
* (tapping does nothing and keeps the dial open).
|
|
27
|
-
*/
|
|
28
|
-
unavailable?: boolean;
|
|
29
22
|
};
|
|
30
23
|
interface DialDevToolsProps {
|
|
31
24
|
onClose?: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialDevTools.d.ts","sourceRoot":"","sources":["../../../../../src/floatingMenu/dial/DialDevTools.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,SAAS,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DialDevTools.d.ts","sourceRoot":"","sources":["../../../../../src/floatingMenu/dial/DialDevTools.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,SAAS,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAmC5E,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAkClB,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;IAChB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;QAAC,OAAO,CAAC,EAAE,mBAAmB,CAAA;KAAE,KAAK,SAAS,CAAC;IAC/H,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAWF,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAmqB9C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialIcon.d.ts","sourceRoot":"","sources":["../../../../../src/floatingMenu/dial/DialIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,EAAE,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAML,QAAQ,EACT,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA+C1C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC;IAC9B,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"DialIcon.d.ts","sourceRoot":"","sources":["../../../../../src/floatingMenu/dial/DialIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,EAAE,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAML,QAAQ,EACT,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA+C1C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC;IAC9B,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,KAAK,CA0M9B,CAAC"}
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
* Drift is prevented by a test that fails when this disagrees with
|
|
10
10
|
* package.json, so a version bump that forgets this file cannot ship.
|
|
11
11
|
*/
|
|
12
|
-
export declare const SDK_VERSION = "7.0.
|
|
12
|
+
export declare const SDK_VERSION = "7.0.34";
|
|
13
13
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -39,6 +39,25 @@ export interface StorageKeyConfig {
|
|
|
39
39
|
description?: string;
|
|
40
40
|
storageType: "async" | "secure" | "mmkv";
|
|
41
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Ask Buoy's config, mirrored structurally so core never depends on the
|
|
44
|
+
* optional `@buoy-gg/ask-buoy` package (it is required lazily, like every other
|
|
45
|
+
* tool). The object is handed to `createAskBuoyTool` untouched, so any field
|
|
46
|
+
* that package accepts passes through — the index signature is the seam.
|
|
47
|
+
*/
|
|
48
|
+
export interface FloatingAskBuoyConfig {
|
|
49
|
+
/** Your company's own LLM gateway. Buoy never proxies or holds a key. */
|
|
50
|
+
endpoint: string;
|
|
51
|
+
/** Model id passed through to the endpoint. */
|
|
52
|
+
model: string;
|
|
53
|
+
/** Which request/response shape the endpoint speaks. @default "anthropic" */
|
|
54
|
+
protocol?: "anthropic" | "openai";
|
|
55
|
+
/** Resolved fresh per request — the app's own short-lived session token. */
|
|
56
|
+
headers?: () => Record<string, string> | Promise<Record<string, string>>;
|
|
57
|
+
/** DEV ONLY — compiled into the bundle in plaintext. Use `headers` + a gateway. */
|
|
58
|
+
apiKey?: string;
|
|
59
|
+
[key: string]: unknown;
|
|
60
|
+
}
|
|
42
61
|
/**
|
|
43
62
|
* Props for FloatingDevTools component.
|
|
44
63
|
*
|
|
@@ -101,6 +120,24 @@ export interface FloatingDevToolsProps extends Omit<FloatingMenuProps, "apps"> {
|
|
|
101
120
|
* ```
|
|
102
121
|
*/
|
|
103
122
|
requiredStorageKeys?: StorageKeyConfig[];
|
|
123
|
+
/**
|
|
124
|
+
* Wire Ask Buoy (the in-app AI chat) to your team's AI endpoint — the
|
|
125
|
+
* documented one-prop setup. Requires `@buoy-gg/ask-buoy` to be installed;
|
|
126
|
+
* the config is exactly what `createAskBuoyTool` takes and passes through
|
|
127
|
+
* untouched.
|
|
128
|
+
*
|
|
129
|
+
* @example
|
|
130
|
+
* ```tsx
|
|
131
|
+
* <FloatingDevTools
|
|
132
|
+
* askBuoy={{
|
|
133
|
+
* endpoint: "https://ai.acme.com/v1/messages",
|
|
134
|
+
* model: "claude-sonnet-4-5",
|
|
135
|
+
* headers: async () => ({ Authorization: `Bearer ${await auth.getToken()}` }),
|
|
136
|
+
* }}
|
|
137
|
+
* />
|
|
138
|
+
* ```
|
|
139
|
+
*/
|
|
140
|
+
askBuoy?: FloatingAskBuoyConfig;
|
|
104
141
|
/**
|
|
105
142
|
* Optional children to render within the DevToolsVisibilityProvider context.
|
|
106
143
|
* Useful for tools that need to react to DevTools visibility (like DebugBordersStandaloneOverlay).
|
|
@@ -331,5 +368,5 @@ export interface FloatingDevToolsProps extends Omit<FloatingMenuProps, "apps"> {
|
|
|
331
368
|
*
|
|
332
369
|
* @param props - FloatingDevTools props
|
|
333
370
|
*/
|
|
334
|
-
export declare const FloatingDevTools: ({ apps, requiredEnvVars, requiredStorageKeys, children, disableHints, defaultFloatingTools, defaultDialTools, requireLicense, licenseKey: licenseKeyProp, zustandStores, environment, externalSync, headless, ...props }: FloatingDevToolsProps) => React.JSX.Element | null;
|
|
371
|
+
export declare const FloatingDevTools: ({ apps, requiredEnvVars, requiredStorageKeys, askBuoy, children, disableHints, defaultFloatingTools, defaultDialTools, requireLicense, licenseKey: licenseKeyProp, zustandStores, environment, externalSync, headless, ...props }: FloatingDevToolsProps) => React.JSX.Element | null;
|
|
335
372
|
//# 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;AAOtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAQ5C,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAIL,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAM5B;;;;;;;;;;;;;;;;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;IAEpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAE7C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,eAAO,MAAM,gBAAgB,GAAI,
|
|
1
|
+
{"version":3,"file":"FloatingDevTools.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/FloatingDevTools.tsx"],"names":[],"mappings":"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"}
|
|
@@ -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;AAG5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;AAG5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,mBAAmB,IAAI,YAAY,EAAE,CA4UpD;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,YAAY,EAAE,GAC1B,YAAY,EAAE,CAahB"}
|
|
@@ -12,9 +12,19 @@ export interface ExternalSyncOptions {
|
|
|
12
12
|
* broker on another machine.
|
|
13
13
|
*/
|
|
14
14
|
socketURL?: string;
|
|
15
|
-
/**
|
|
15
|
+
/**
|
|
16
|
+
* Shown in the desktop device list.
|
|
17
|
+
* @default "<app name> (<hardware> · <last 4 of the id>)"
|
|
18
|
+
*/
|
|
16
19
|
deviceName?: string;
|
|
17
|
-
/**
|
|
20
|
+
/**
|
|
21
|
+
* Stable device identity across restarts. Leave unset: the default is
|
|
22
|
+
* `<app-slug>-<platform>-<per-install id>`, minted once and persisted, so
|
|
23
|
+
* every device running this build is its own entry in Buoy Desktop and
|
|
24
|
+
* `list_devices`. If you do pin one, it MUST be unique per device — two
|
|
25
|
+
* devices sharing an id look like one device to the broker, and actions
|
|
26
|
+
* land on whichever connected last.
|
|
27
|
+
*/
|
|
18
28
|
deviceId?: string;
|
|
19
29
|
/**
|
|
20
30
|
* Allow this build to dial the broker when `__DEV__` is false (a release /
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoExternalSync.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/autoExternalSync.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"autoExternalSync.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/autoExternalSync.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AA6JjD,iFAAiF;AACjF,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED,MAAM,WAAW,mBAAmB;IAClC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;OAiBG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAkBD,UAAU,qBAAqB;IAC7B,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,6EAA6E;IAC7E,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IACjC,8EAA8E;IAC9E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;;OAIG;IACH,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;CAC7B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,eAAe,EACf,UAAU,GACX,EAAE,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAS/C;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,eAAe,EACf,UAAU,GACX,EAAE,mBAAmB,QAYrB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,OAAO,EACP,eAAe,EACf,KAAK,EACL,IAAI,EACJ,UAAU,EACV,UAAU,GACX,EAAE,qBAAqB,QA2DvB"}
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
* All known tool IDs that can appear in the floating menu or dial menu.
|
|
20
20
|
* This is a union type of all auto-discovered tool IDs.
|
|
21
21
|
*/
|
|
22
|
-
export type BuiltInToolId = 'env' | 'network' | 'storage' | 'query' | 'query-wifi-toggle' | 'route-events' | 'debug-borders' | 'highlight-updates' | 'highlight-updates-modal' | 'redux' | 'zustand' | 'jotai' | 'events' | 'time-machine' | 'scenarios' | '
|
|
22
|
+
export type BuiltInToolId = 'env' | 'network' | 'storage' | 'query' | 'query-wifi-toggle' | 'route-events' | 'debug-borders' | 'highlight-updates' | 'highlight-updates-modal' | 'redux' | 'zustand' | 'jotai' | 'events' | 'time-machine' | 'scenarios' | 'ask-buoy' | 'image-overlay' | 'perf-monitor' | 'perf-monitor-modal';
|
|
23
23
|
/**
|
|
24
24
|
* Special floating-only tool IDs that only appear in the floating bubble row.
|
|
25
25
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultConfig.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/defaultConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB,KAAK,GACL,SAAS,GACT,SAAS,GACT,OAAO,GACP,mBAAmB,GACnB,cAAc,GACd,eAAe,GACf,mBAAmB,GACnB,yBAAyB,GACzB,OAAO,GACP,SAAS,GACT,OAAO,GACP,QAAQ,GACR,cAAc,GACd,WAAW,GACX,
|
|
1
|
+
{"version":3,"file":"defaultConfig.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/defaultConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB,KAAK,GACL,SAAS,GACT,SAAS,GACT,OAAO,GACP,mBAAmB,GACnB,cAAc,GACd,eAAe,GACf,mBAAmB,GACnB,yBAAyB,GACzB,OAAO,GACP,SAAS,GACT,OAAO,GACP,QAAQ,GACR,cAAc,GACd,WAAW,GACX,UAAU,GACV,eAAe,GACf,cAAc,GACd,oBAAoB,CAAC;AAEzB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAE/C;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,kBAAkB,CAAC;AAEhE;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,aAAa,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC;;;;;;;;GAQG;AACH,MAAM,MAAM,qBAAqB,GAAG,cAAc,EAAE,CAAC;AAErD;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,EAAE,CAAC;AAE7C;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,iBAAiB,CAW9E;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mBAAmB,CACjC,CAAC,SAAS,cAAc,EAAE,EAC1B,CAAC,SAAS,UAAU,EAAE,EACtB,MAAM,EAAE;IACR,QAAQ,CAAC,EAAE,CAAC,CAAC;IACb,IAAI,CAAC,EAAE,CAAC,CAAC;CACV,GAAG;IACF,QAAQ,EAAE,CAAC,GAAG,SAAS,CAAC;IACxB,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC;CACrB,CAUA;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,cAAc,CAcjE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,UAAU,CAazD;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,EAC9C,GAAG,EAAE,CAAC,EAAE,EACR,cAAc,EAAE,CAAC,EAAE,GAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASzB"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
export interface DeviceIdentity {
|
|
2
|
+
deviceName: string;
|
|
3
|
+
deviceId: string;
|
|
4
|
+
}
|
|
5
|
+
/** Minimal getItem/setItem surface, so storage can be injected in tests. */
|
|
6
|
+
export interface IdentityStore {
|
|
7
|
+
getItem(key: string): Promise<string | null> | string | null;
|
|
8
|
+
setItem(key: string, value: string): Promise<void> | void;
|
|
9
|
+
}
|
|
10
|
+
export declare const INSTALL_ID_LENGTH = 8;
|
|
11
|
+
/** 8 lowercase hex chars — short enough to read, random enough for a LAN. */
|
|
12
|
+
export declare function generateInstallId(): string;
|
|
13
|
+
export interface BuildIdentityInput {
|
|
14
|
+
/** Expo config name; null for bare RN. */
|
|
15
|
+
appName: string | null;
|
|
16
|
+
/** expo-constants `deviceName`; null when unavailable. */
|
|
17
|
+
hardwareName?: string | null;
|
|
18
|
+
platform: string;
|
|
19
|
+
/** The persisted per-install tail. */
|
|
20
|
+
installId: string;
|
|
21
|
+
/** An explicit `externalSync.deviceId` — used verbatim, no tail in the name. */
|
|
22
|
+
deviceId?: string;
|
|
23
|
+
}
|
|
24
|
+
/** Pure: turns the inputs into the id/name pair the broker sees. */
|
|
25
|
+
export declare function buildDeviceIdentity({ appName, hardwareName, platform, installId, deviceId, }: BuildIdentityInput): DeviceIdentity;
|
|
26
|
+
export interface LoadInstallIdOptions {
|
|
27
|
+
platform?: string;
|
|
28
|
+
/** Storage override (tests). Defaults to sessionStorage on web, persistentStorage elsewhere. */
|
|
29
|
+
store?: IdentityStore | null;
|
|
30
|
+
mint?: () => string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The persisted per-install tail: read it, or mint and store it on the first
|
|
34
|
+
* dial. Storage failures degrade to a fresh in-memory id rather than blocking
|
|
35
|
+
* the socket — a per-launch id still beats the old colliding one.
|
|
36
|
+
*/
|
|
37
|
+
export declare function loadInstallId({ platform, store, mint, }?: LoadInstallIdOptions): Promise<string>;
|
|
38
|
+
/**
|
|
39
|
+
* Process-wide memo so every mount (and every Fast Refresh of the component
|
|
40
|
+
* that calls it) shares one storage round-trip and one id.
|
|
41
|
+
*/
|
|
42
|
+
export declare function getInstallId(): Promise<string>;
|
|
43
|
+
/** Tests only. */
|
|
44
|
+
export declare function resetInstallIdForTests(): void;
|
|
45
|
+
export interface DeviceIdentityOptions {
|
|
46
|
+
deviceId?: string;
|
|
47
|
+
deviceName?: string;
|
|
48
|
+
}
|
|
49
|
+
export interface DeviceIdentityEnvironment {
|
|
50
|
+
/** Expo config name; null for bare RN. */
|
|
51
|
+
appName: string | null;
|
|
52
|
+
/** expo-constants `deviceName`; null when unavailable. */
|
|
53
|
+
hardwareName: string | null;
|
|
54
|
+
platform?: string;
|
|
55
|
+
/** The install-id loader (tests inject one; production uses the memo). */
|
|
56
|
+
loadId?: () => Promise<string>;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* The identity to dial with. Null until the per-install id is read from
|
|
60
|
+
* storage (one round-trip on first mount; memoized process-wide after) —
|
|
61
|
+
* both sync hooks no-op on a null id, so the socket simply dials a beat
|
|
62
|
+
* later. An explicit `deviceId` skips the read entirely; an explicit
|
|
63
|
+
* `deviceName` is used verbatim.
|
|
64
|
+
*/
|
|
65
|
+
export declare function useDeviceIdentity(options: DeviceIdentityOptions | undefined, env: DeviceIdentityEnvironment): DeviceIdentity | null;
|
|
66
|
+
//# sourceMappingURL=deviceIdentity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deviceIdentity.d.ts","sourceRoot":"","sources":["../../../../src/floatingMenu/deviceIdentity.ts"],"names":[],"mappings":"AAmCA,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,4EAA4E;AAC5E,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;IAC7D,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,6EAA6E;AAC7E,wBAAgB,iBAAiB,IAAI,MAAM,CAM1C;AASD,MAAM,WAAW,kBAAkB;IACjC,0CAA0C;IAC1C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,oEAAoE;AACpE,wBAAgB,mBAAmB,CAAC,EAClC,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,GAAG,cAAc,CAcrC;AAYD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gGAAgG;IAChG,KAAK,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,EAClC,QAAsB,EACtB,KAAK,EACL,IAAwB,GACzB,GAAE,oBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAkB7C;AAID;;;GAGG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAG9C;AAED,kBAAkB;AAClB,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,0CAA0C;IAC1C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,0DAA0D;IAC1D,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CAChC;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,qBAAqB,GAAG,SAAS,EAC1C,GAAG,EAAE,yBAAyB,GAC7B,cAAc,GAAG,IAAI,CA4BvB"}
|
|
@@ -19,13 +19,6 @@ export type IconType = {
|
|
|
19
19
|
}) => ReactNode;
|
|
20
20
|
color: string;
|
|
21
21
|
onPress: () => void;
|
|
22
|
-
/**
|
|
23
|
-
* True for tools that React Buoy offers but the current app has not installed.
|
|
24
|
-
* Unavailable items render like a normal item (real icon + real name at full
|
|
25
|
-
* styling) plus a small muted "Unavailable" caption, and are non-interactive
|
|
26
|
-
* (tapping does nothing and keeps the dial open).
|
|
27
|
-
*/
|
|
28
|
-
unavailable?: boolean;
|
|
29
22
|
};
|
|
30
23
|
interface DialDevToolsProps {
|
|
31
24
|
onClose?: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialDevTools.d.ts","sourceRoot":"","sources":["../../../../../src/floatingMenu/dial/DialDevTools.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,SAAS,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DialDevTools.d.ts","sourceRoot":"","sources":["../../../../../src/floatingMenu/dial/DialDevTools.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,SAAS,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAmC5E,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAkClB,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;IAChB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;QAAC,OAAO,CAAC,EAAE,mBAAmB,CAAA;KAAE,KAAK,SAAS,CAAC;IAC/H,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAWF,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAmqB9C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialIcon.d.ts","sourceRoot":"","sources":["../../../../../src/floatingMenu/dial/DialIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,EAAE,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAML,QAAQ,EACT,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA+C1C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC;IAC9B,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"DialIcon.d.ts","sourceRoot":"","sources":["../../../../../src/floatingMenu/dial/DialIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,EAAE,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAML,QAAQ,EACT,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA+C1C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC;IAC9B,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,KAAK,CA0M9B,CAAC"}
|
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
* Drift is prevented by a test that fails when this disagrees with
|
|
10
10
|
* package.json, so a version bump that forgets this file cannot ship.
|
|
11
11
|
*/
|
|
12
|
-
export declare const SDK_VERSION = "7.0.
|
|
12
|
+
export declare const SDK_VERSION = "7.0.34";
|
|
13
13
|
//# sourceMappingURL=version.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@buoy-gg/core",
|
|
3
|
-
"version": "7.0.
|
|
3
|
+
"version": "7.0.34",
|
|
4
4
|
"description": "Buoy devtools for React Native — a floating in-app dev menu; every tool streams live to your phone, desktop, and AI agent.",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"module": "lib/module/index.js",
|
|
@@ -37,10 +37,10 @@
|
|
|
37
37
|
],
|
|
38
38
|
"sideEffects": false,
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@buoy-gg/
|
|
41
|
-
"@buoy-gg/
|
|
42
|
-
"@buoy-gg/floating-tools-core": "^7.0.
|
|
43
|
-
"@buoy-gg/floating-tools-react": "^7.0.
|
|
40
|
+
"@buoy-gg/license": "^7.0.34",
|
|
41
|
+
"@buoy-gg/shared-ui": "^7.0.34",
|
|
42
|
+
"@buoy-gg/floating-tools-core": "^7.0.34",
|
|
43
|
+
"@buoy-gg/floating-tools-react": "^7.0.34"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
46
|
"react": "*",
|
|
@@ -1,159 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.ALL_TOOLS_REGISTRY = void 0;
|
|
7
|
-
var _react = _interopRequireDefault(require("react"));
|
|
8
|
-
var _floatingToolsCore = require("@buoy-gg/floating-tools-core");
|
|
9
|
-
var _sharedUi = require("@buoy-gg/shared-ui");
|
|
10
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
-
/**
|
|
13
|
-
* Canonical registry of ALL dial-eligible tools React Buoy offers on mobile.
|
|
14
|
-
*
|
|
15
|
-
* This is the single source of truth used to compute which tools are
|
|
16
|
-
* "unavailable" (offered but not installed in the current app). It lives
|
|
17
|
-
* inside the floating-menu package so nothing outside needs to be imported.
|
|
18
|
-
*
|
|
19
|
-
* Rules for this file:
|
|
20
|
-
* - Only import from REQUIRED dependencies (@buoy-gg/floating-tools-core,
|
|
21
|
-
* @buoy-gg/shared-ui, react-native) so the icons are always resolvable,
|
|
22
|
-
* even when the optional tool packages are not installed.
|
|
23
|
-
* - Only include tools whose preset slot is NOT "row" (row-only tools never
|
|
24
|
-
* appear in the dial and have no "unavailable" state to show).
|
|
25
|
-
* - Keep the order intentional: this order is the fallback when no usage
|
|
26
|
-
* data exists for new/unavailable tools.
|
|
27
|
-
*/
|
|
28
|
-
|
|
29
|
-
// ─── Icons for tools whose packages are optional ─────────────────────────────
|
|
30
|
-
// Zustand and Jotai may not be installed, so their icons cannot be imported
|
|
31
|
-
// from those packages. They no longer need vendoring: the artwork is authored
|
|
32
|
-
// in shared/icons/*.json and generated into @buoy-gg/floating-tools-core, which
|
|
33
|
-
// IS a required dependency. Unavailable items therefore render the ACTUAL tool
|
|
34
|
-
// icon (just dimmed by DialIcon), and it can no longer drift from the real one.
|
|
35
|
-
|
|
36
|
-
// ─── Registry entry type ──────────────────────────────────────────────────────
|
|
37
|
-
|
|
38
|
-
// ─── Canonical catalog ────────────────────────────────────────────────────────
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Full list of every dial-eligible tool React Buoy offers on mobile.
|
|
42
|
-
*
|
|
43
|
-
* Available (installed) tools are shown normally in the dial.
|
|
44
|
-
* Unavailable (not installed) tools are appended at the end of the dial and look
|
|
45
|
-
* like a normal item (real icon + real name) with a small muted "Unavailable"
|
|
46
|
-
* caption added; they are non-interactive.
|
|
47
|
-
*
|
|
48
|
-
* To add a new tool to Buoy:
|
|
49
|
-
* 1. Add its preset to autoDiscoverPresets.ts
|
|
50
|
-
* 2. Add an entry here so it appears in the "unavailable" section for apps
|
|
51
|
-
* that haven't installed it yet.
|
|
52
|
-
*/
|
|
53
|
-
const ALL_TOOLS_REGISTRY = exports.ALL_TOOLS_REGISTRY = [{
|
|
54
|
-
id: "env",
|
|
55
|
-
name: "ENV",
|
|
56
|
-
color: _floatingToolsCore.ENV_ICON_COLOR,
|
|
57
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.EnvIcon, {
|
|
58
|
-
size: size
|
|
59
|
-
})
|
|
60
|
-
}, {
|
|
61
|
-
id: "network",
|
|
62
|
-
name: "NETWORK",
|
|
63
|
-
color: _floatingToolsCore.NETWORK_ICON_COLOR,
|
|
64
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.NetworkIcon, {
|
|
65
|
-
size: size
|
|
66
|
-
})
|
|
67
|
-
}, {
|
|
68
|
-
id: "storage",
|
|
69
|
-
name: "STORAGE",
|
|
70
|
-
color: _floatingToolsCore.STORAGE_ICON_COLOR,
|
|
71
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.StorageIcon, {
|
|
72
|
-
size: size
|
|
73
|
-
})
|
|
74
|
-
}, {
|
|
75
|
-
id: "query",
|
|
76
|
-
name: "QUERY",
|
|
77
|
-
color: _floatingToolsCore.QUERY_ICON_COLOR,
|
|
78
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.QueryIcon, {
|
|
79
|
-
size: size
|
|
80
|
-
})
|
|
81
|
-
}, {
|
|
82
|
-
id: "route-events",
|
|
83
|
-
name: "ROUTES",
|
|
84
|
-
color: _floatingToolsCore.ROUTES_ICON_COLOR,
|
|
85
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.RoutesIcon, {
|
|
86
|
-
size: size
|
|
87
|
-
})
|
|
88
|
-
}, {
|
|
89
|
-
id: "highlight-updates-modal",
|
|
90
|
-
name: "HIGHLIGHT",
|
|
91
|
-
color: _floatingToolsCore.HIGHLIGHTER_ICON_COLOR,
|
|
92
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.HighlighterIcon, {
|
|
93
|
-
size: size
|
|
94
|
-
})
|
|
95
|
-
}, {
|
|
96
|
-
id: "redux",
|
|
97
|
-
name: "REDUX",
|
|
98
|
-
color: _floatingToolsCore.REDUX_ICON_COLOR,
|
|
99
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.ReduxIcon, {
|
|
100
|
-
size: size
|
|
101
|
-
})
|
|
102
|
-
}, {
|
|
103
|
-
id: "zustand",
|
|
104
|
-
name: "ZUSTAND",
|
|
105
|
-
color: _floatingToolsCore.ZUSTAND_ICON_COLOR,
|
|
106
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.ZustandIcon, {
|
|
107
|
-
size: size
|
|
108
|
-
})
|
|
109
|
-
}, {
|
|
110
|
-
id: "events",
|
|
111
|
-
name: "EVENTS",
|
|
112
|
-
color: _floatingToolsCore.EVENTS_ICON_COLOR,
|
|
113
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.EventsIcon, {
|
|
114
|
-
size: size
|
|
115
|
-
})
|
|
116
|
-
}, {
|
|
117
|
-
id: "time-machine",
|
|
118
|
-
name: "TIME MACHINE",
|
|
119
|
-
color: _floatingToolsCore.TIME_MACHINE_ICON_COLOR,
|
|
120
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.TimeMachineIcon, {
|
|
121
|
-
size: size
|
|
122
|
-
})
|
|
123
|
-
}, {
|
|
124
|
-
id: "scenarios",
|
|
125
|
-
name: "SCENARIOS",
|
|
126
|
-
color: _floatingToolsCore.SCENARIOS_ICON_COLOR,
|
|
127
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.ScenariosIcon, {
|
|
128
|
-
size: size
|
|
129
|
-
})
|
|
130
|
-
}, {
|
|
131
|
-
id: "copilot",
|
|
132
|
-
name: "ASK BUOY",
|
|
133
|
-
color: _floatingToolsCore.COPILOT_ICON_COLOR,
|
|
134
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.CopilotIcon, {
|
|
135
|
-
size: size
|
|
136
|
-
})
|
|
137
|
-
}, {
|
|
138
|
-
id: "jotai",
|
|
139
|
-
name: "JOTAI",
|
|
140
|
-
color: _floatingToolsCore.JOTAI_ICON_COLOR,
|
|
141
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.JotaiIcon, {
|
|
142
|
-
size: size
|
|
143
|
-
})
|
|
144
|
-
}, {
|
|
145
|
-
id: "image-overlay",
|
|
146
|
-
name: "IMG",
|
|
147
|
-
color: _floatingToolsCore.IMAGE_OVERLAY_ICON_COLOR,
|
|
148
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.ImageOverlayIcon, {
|
|
149
|
-
size: size,
|
|
150
|
-
color: _floatingToolsCore.IMAGE_OVERLAY_ICON_COLOR
|
|
151
|
-
})
|
|
152
|
-
}, {
|
|
153
|
-
id: "perf-monitor-modal",
|
|
154
|
-
name: "BENCH",
|
|
155
|
-
color: _floatingToolsCore.BENCHMARK_ICON_COLOR,
|
|
156
|
-
renderIcon: size => /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.BenchmarkIcon, {
|
|
157
|
-
size: size
|
|
158
|
-
})
|
|
159
|
-
}];
|
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Canonical registry of ALL dial-eligible tools React Buoy offers on mobile.
|
|
5
|
-
*
|
|
6
|
-
* This is the single source of truth used to compute which tools are
|
|
7
|
-
* "unavailable" (offered but not installed in the current app). It lives
|
|
8
|
-
* inside the floating-menu package so nothing outside needs to be imported.
|
|
9
|
-
*
|
|
10
|
-
* Rules for this file:
|
|
11
|
-
* - Only import from REQUIRED dependencies (@buoy-gg/floating-tools-core,
|
|
12
|
-
* @buoy-gg/shared-ui, react-native) so the icons are always resolvable,
|
|
13
|
-
* even when the optional tool packages are not installed.
|
|
14
|
-
* - Only include tools whose preset slot is NOT "row" (row-only tools never
|
|
15
|
-
* appear in the dial and have no "unavailable" state to show).
|
|
16
|
-
* - Keep the order intentional: this order is the fallback when no usage
|
|
17
|
-
* data exists for new/unavailable tools.
|
|
18
|
-
*/
|
|
19
|
-
|
|
20
|
-
import React from "react";
|
|
21
|
-
import { EnvIcon, ENV_ICON_COLOR, NetworkIcon, NETWORK_ICON_COLOR, StorageIcon, STORAGE_ICON_COLOR, QueryIcon, QUERY_ICON_COLOR, RoutesIcon, ROUTES_ICON_COLOR, HighlighterIcon, HIGHLIGHTER_ICON_COLOR, ReduxIcon, REDUX_ICON_COLOR, EventsIcon, EVENTS_ICON_COLOR, BenchmarkIcon, BENCHMARK_ICON_COLOR } from "@buoy-gg/floating-tools-core";
|
|
22
|
-
import { ImageOverlayIcon } from "@buoy-gg/shared-ui";
|
|
23
|
-
|
|
24
|
-
// ─── Icons for tools whose packages are optional ─────────────────────────────
|
|
25
|
-
// Zustand and Jotai may not be installed, so their icons cannot be imported
|
|
26
|
-
// from those packages. They no longer need vendoring: the artwork is authored
|
|
27
|
-
// in shared/icons/*.json and generated into @buoy-gg/floating-tools-core, which
|
|
28
|
-
// IS a required dependency. Unavailable items therefore render the ACTUAL tool
|
|
29
|
-
// icon (just dimmed by DialIcon), and it can no longer drift from the real one.
|
|
30
|
-
import { ZustandIcon, ZUSTAND_ICON_COLOR, JotaiIcon, JOTAI_ICON_COLOR, IMAGE_OVERLAY_ICON_COLOR, TimeMachineIcon, TIME_MACHINE_ICON_COLOR, ScenariosIcon, CopilotIcon, COPILOT_ICON_COLOR, SCENARIOS_ICON_COLOR } from "@buoy-gg/floating-tools-core";
|
|
31
|
-
|
|
32
|
-
// ─── Registry entry type ──────────────────────────────────────────────────────
|
|
33
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
34
|
-
// ─── Canonical catalog ────────────────────────────────────────────────────────
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* Full list of every dial-eligible tool React Buoy offers on mobile.
|
|
38
|
-
*
|
|
39
|
-
* Available (installed) tools are shown normally in the dial.
|
|
40
|
-
* Unavailable (not installed) tools are appended at the end of the dial and look
|
|
41
|
-
* like a normal item (real icon + real name) with a small muted "Unavailable"
|
|
42
|
-
* caption added; they are non-interactive.
|
|
43
|
-
*
|
|
44
|
-
* To add a new tool to Buoy:
|
|
45
|
-
* 1. Add its preset to autoDiscoverPresets.ts
|
|
46
|
-
* 2. Add an entry here so it appears in the "unavailable" section for apps
|
|
47
|
-
* that haven't installed it yet.
|
|
48
|
-
*/
|
|
49
|
-
export const ALL_TOOLS_REGISTRY = [{
|
|
50
|
-
id: "env",
|
|
51
|
-
name: "ENV",
|
|
52
|
-
color: ENV_ICON_COLOR,
|
|
53
|
-
renderIcon: size => /*#__PURE__*/_jsx(EnvIcon, {
|
|
54
|
-
size: size
|
|
55
|
-
})
|
|
56
|
-
}, {
|
|
57
|
-
id: "network",
|
|
58
|
-
name: "NETWORK",
|
|
59
|
-
color: NETWORK_ICON_COLOR,
|
|
60
|
-
renderIcon: size => /*#__PURE__*/_jsx(NetworkIcon, {
|
|
61
|
-
size: size
|
|
62
|
-
})
|
|
63
|
-
}, {
|
|
64
|
-
id: "storage",
|
|
65
|
-
name: "STORAGE",
|
|
66
|
-
color: STORAGE_ICON_COLOR,
|
|
67
|
-
renderIcon: size => /*#__PURE__*/_jsx(StorageIcon, {
|
|
68
|
-
size: size
|
|
69
|
-
})
|
|
70
|
-
}, {
|
|
71
|
-
id: "query",
|
|
72
|
-
name: "QUERY",
|
|
73
|
-
color: QUERY_ICON_COLOR,
|
|
74
|
-
renderIcon: size => /*#__PURE__*/_jsx(QueryIcon, {
|
|
75
|
-
size: size
|
|
76
|
-
})
|
|
77
|
-
}, {
|
|
78
|
-
id: "route-events",
|
|
79
|
-
name: "ROUTES",
|
|
80
|
-
color: ROUTES_ICON_COLOR,
|
|
81
|
-
renderIcon: size => /*#__PURE__*/_jsx(RoutesIcon, {
|
|
82
|
-
size: size
|
|
83
|
-
})
|
|
84
|
-
}, {
|
|
85
|
-
id: "highlight-updates-modal",
|
|
86
|
-
name: "HIGHLIGHT",
|
|
87
|
-
color: HIGHLIGHTER_ICON_COLOR,
|
|
88
|
-
renderIcon: size => /*#__PURE__*/_jsx(HighlighterIcon, {
|
|
89
|
-
size: size
|
|
90
|
-
})
|
|
91
|
-
}, {
|
|
92
|
-
id: "redux",
|
|
93
|
-
name: "REDUX",
|
|
94
|
-
color: REDUX_ICON_COLOR,
|
|
95
|
-
renderIcon: size => /*#__PURE__*/_jsx(ReduxIcon, {
|
|
96
|
-
size: size
|
|
97
|
-
})
|
|
98
|
-
}, {
|
|
99
|
-
id: "zustand",
|
|
100
|
-
name: "ZUSTAND",
|
|
101
|
-
color: ZUSTAND_ICON_COLOR,
|
|
102
|
-
renderIcon: size => /*#__PURE__*/_jsx(ZustandIcon, {
|
|
103
|
-
size: size
|
|
104
|
-
})
|
|
105
|
-
}, {
|
|
106
|
-
id: "events",
|
|
107
|
-
name: "EVENTS",
|
|
108
|
-
color: EVENTS_ICON_COLOR,
|
|
109
|
-
renderIcon: size => /*#__PURE__*/_jsx(EventsIcon, {
|
|
110
|
-
size: size
|
|
111
|
-
})
|
|
112
|
-
}, {
|
|
113
|
-
id: "time-machine",
|
|
114
|
-
name: "TIME MACHINE",
|
|
115
|
-
color: TIME_MACHINE_ICON_COLOR,
|
|
116
|
-
renderIcon: size => /*#__PURE__*/_jsx(TimeMachineIcon, {
|
|
117
|
-
size: size
|
|
118
|
-
})
|
|
119
|
-
}, {
|
|
120
|
-
id: "scenarios",
|
|
121
|
-
name: "SCENARIOS",
|
|
122
|
-
color: SCENARIOS_ICON_COLOR,
|
|
123
|
-
renderIcon: size => /*#__PURE__*/_jsx(ScenariosIcon, {
|
|
124
|
-
size: size
|
|
125
|
-
})
|
|
126
|
-
}, {
|
|
127
|
-
id: "copilot",
|
|
128
|
-
name: "ASK BUOY",
|
|
129
|
-
color: COPILOT_ICON_COLOR,
|
|
130
|
-
renderIcon: size => /*#__PURE__*/_jsx(CopilotIcon, {
|
|
131
|
-
size: size
|
|
132
|
-
})
|
|
133
|
-
}, {
|
|
134
|
-
id: "jotai",
|
|
135
|
-
name: "JOTAI",
|
|
136
|
-
color: JOTAI_ICON_COLOR,
|
|
137
|
-
renderIcon: size => /*#__PURE__*/_jsx(JotaiIcon, {
|
|
138
|
-
size: size
|
|
139
|
-
})
|
|
140
|
-
}, {
|
|
141
|
-
id: "image-overlay",
|
|
142
|
-
name: "IMG",
|
|
143
|
-
color: IMAGE_OVERLAY_ICON_COLOR,
|
|
144
|
-
renderIcon: size => /*#__PURE__*/_jsx(ImageOverlayIcon, {
|
|
145
|
-
size: size,
|
|
146
|
-
color: IMAGE_OVERLAY_ICON_COLOR
|
|
147
|
-
})
|
|
148
|
-
}, {
|
|
149
|
-
id: "perf-monitor-modal",
|
|
150
|
-
name: "BENCH",
|
|
151
|
-
color: BENCHMARK_ICON_COLOR,
|
|
152
|
-
renderIcon: size => /*#__PURE__*/_jsx(BenchmarkIcon, {
|
|
153
|
-
size: size
|
|
154
|
-
})
|
|
155
|
-
}];
|