@fixback/expo 0.8.3 → 0.9.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.
- package/README.md +5 -7
- package/dist/FeedbackModal.d.ts +7 -2
- package/dist/FeedbackModal.js +30 -3
- package/dist/FeedbackModal.js.map +1 -1
- package/dist/FixbackProvider.js +5 -1
- package/dist/FixbackProvider.js.map +1 -1
- package/dist/adapters.js +5 -4
- package/dist/adapters.js.map +1 -1
- package/dist/breadcrumbs.d.ts +15 -51
- package/dist/breadcrumbs.js +22 -169
- package/dist/breadcrumbs.js.map +1 -1
- package/dist/client-boot.d.ts +40 -0
- package/dist/client-boot.js +269 -0
- package/dist/client-boot.js.map +1 -0
- package/dist/client-connect.d.ts +33 -0
- package/dist/client-connect.js +306 -0
- package/dist/client-connect.js.map +1 -0
- package/dist/client-replay.d.ts +31 -0
- package/dist/client-replay.js +165 -0
- package/dist/client-replay.js.map +1 -0
- package/dist/client-state.d.ts +131 -0
- package/dist/client-state.js +158 -0
- package/dist/client-state.js.map +1 -0
- package/dist/client.d.ts +10 -245
- package/dist/client.js +80 -787
- package/dist/client.js.map +1 -1
- package/dist/error-capture.js +6 -26
- package/dist/error-capture.js.map +1 -1
- package/dist/identity.d.ts +0 -2
- package/dist/identity.js +0 -3
- package/dist/identity.js.map +1 -1
- package/dist/options.d.ts +263 -0
- package/dist/options.js +12 -0
- package/dist/options.js.map +1 -0
- package/dist/report.d.ts +13 -12
- package/dist/report.js +19 -38
- package/dist/report.js.map +1 -1
- package/dist/submit.d.ts +10 -37
- package/dist/submit.js +14 -64
- package/dist/submit.js.map +1 -1
- package/dist/tokens.d.ts +8 -3
- package/dist/tokens.js +12 -6
- package/dist/tokens.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +4 -3
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/error-capture.js
CHANGED
|
@@ -75,7 +75,10 @@ function installErrorCapture(config) {
|
|
|
75
75
|
const sdkVersion = config.sdkVersion ?? version_1.EXPO_SDK_VERSION;
|
|
76
76
|
const submitReportFn = config.deps?.submitReport ?? submit_1.submitReport;
|
|
77
77
|
const readEnvironment = config.environment ?? (() => ({}));
|
|
78
|
-
/**
|
|
78
|
+
/**
|
|
79
|
+
* Build the `source: error` content for one report: the screen's URL, the device
|
|
80
|
+
* environment and (on a rich report) Trace, projected with the error by the shared core.
|
|
81
|
+
*/
|
|
79
82
|
function buildContent(report) {
|
|
80
83
|
let environment;
|
|
81
84
|
try {
|
|
@@ -84,34 +87,11 @@ function installErrorCapture(config) {
|
|
|
84
87
|
catch {
|
|
85
88
|
environment = (0, report_1.collectEnvironment)({}, sdkVersion, config.release);
|
|
86
89
|
}
|
|
87
|
-
|
|
88
|
-
// Issue `bug` deterministically.
|
|
89
|
-
const base = (0, report_1.assembleContent)({
|
|
90
|
+
return (0, sdk_core_1.autoReportContent)(report, (0, report_1.assembleContent)({
|
|
90
91
|
url: config.currentUrl?.(),
|
|
91
92
|
environment,
|
|
92
93
|
trace: report.rich ? config.buffer?.snapshot() : undefined,
|
|
93
|
-
});
|
|
94
|
-
return {
|
|
95
|
-
...base,
|
|
96
|
-
source: "error",
|
|
97
|
-
errorSignature: report.fingerprint,
|
|
98
|
-
// The readable error name + message (ADR 2026-09-17) — carried like the
|
|
99
|
-
// signature so titling/analysis has the headline even with no Trace. A `null`
|
|
100
|
-
// message is dropped; the scrub choke point redacts PII from both.
|
|
101
|
-
errorName: report.errorName,
|
|
102
|
-
...(report.errorMessage ? { errorMessage: report.errorMessage } : {}),
|
|
103
|
-
occurrences: report.occurrences,
|
|
104
|
-
// The structured frames (#117) ride with the rich first report only — a
|
|
105
|
-
// flush is a light count update, like the trace.
|
|
106
|
-
...(report.rich && report.frames.length > 0 ? { errorFrames: report.frames } : {}),
|
|
107
|
-
// A light flush ships no Trace, so the Correlation ids of the requests behind the
|
|
108
|
-
// repeats it counts ride on their own (#539) — the server records them on the
|
|
109
|
-
// flush's Occurrence, so a folded error still joins the server errors behind it.
|
|
110
|
-
// A rich report's Trace already carries every one.
|
|
111
|
-
...(!report.rich && report.leadUpCorrelationIds.length > 0
|
|
112
|
-
? { leadUpCorrelationIds: [...report.leadUpCorrelationIds] }
|
|
113
|
-
: {}),
|
|
114
|
-
};
|
|
94
|
+
}));
|
|
115
95
|
}
|
|
116
96
|
const core = (0, sdk_core_1.createAutoCapture)({
|
|
117
97
|
extract: extractGlobalError,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-capture.js","sourceRoot":"","sources":["../src/error-capture.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;;;
|
|
1
|
+
{"version":3,"file":"error-capture.js","sourceRoot":"","sources":["../src/error-capture.ts"],"names":[],"mappings":"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"}
|
package/dist/identity.d.ts
CHANGED
|
@@ -10,8 +10,6 @@
|
|
|
10
10
|
* Persistence is best-effort: if storage is unavailable or failing, we fall back to
|
|
11
11
|
* an ephemeral id rather than throw — the SDK must never disturb the host app.
|
|
12
12
|
*/
|
|
13
|
-
import { ANONYMOUS_ID_STORAGE_KEY, generateAnonymousId } from "@fixback/sdk-core";
|
|
14
|
-
export { ANONYMOUS_ID_STORAGE_KEY, generateAnonymousId };
|
|
15
13
|
/** The async storage slice the SDK uses — AsyncStorage-shaped, injectable. */
|
|
16
14
|
export interface StorageLike {
|
|
17
15
|
getItem(key: string): Promise<string | null>;
|
package/dist/identity.js
CHANGED
|
@@ -12,11 +12,8 @@
|
|
|
12
12
|
* an ephemeral id rather than throw — the SDK must never disturb the host app.
|
|
13
13
|
*/
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.generateAnonymousId = exports.ANONYMOUS_ID_STORAGE_KEY = void 0;
|
|
16
15
|
exports.ensureAnonymousId = ensureAnonymousId;
|
|
17
16
|
const sdk_core_1 = require("@fixback/sdk-core");
|
|
18
|
-
Object.defineProperty(exports, "ANONYMOUS_ID_STORAGE_KEY", { enumerable: true, get: function () { return sdk_core_1.ANONYMOUS_ID_STORAGE_KEY; } });
|
|
19
|
-
Object.defineProperty(exports, "generateAnonymousId", { enumerable: true, get: function () { return sdk_core_1.generateAnonymousId; } });
|
|
20
17
|
/**
|
|
21
18
|
* Return this device's anonymous id, creating and persisting one on first use.
|
|
22
19
|
* Any storage failure — absent module, quota, corrupted value — yields an
|
package/dist/identity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAeH,8CAcC;AA3BD,gDAAkF;AAQlF;;;;GAIG;AACI,KAAK,UAAU,iBAAiB,CACrC,OAAuC;IAEvC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAA,8BAAmB,GAAE,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,mCAAwB,CAAC,CAAC;QACjE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,QAAQ,CAAC;QACzE,MAAM,EAAE,GAAG,IAAA,8BAAmB,GAAE,CAAC;QACjC,MAAM,OAAO,CAAC,OAAO,CAAC,mCAAwB,EAAE,EAAE,CAAC,CAAC;QACpD,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACP,uEAAuE;QACvE,OAAO,IAAA,8BAAmB,GAAE,CAAC;IAC/B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The public shapes of the headless client: what `FixbackProvider` /
|
|
3
|
+
* `createFixbackClient` accept (`FixbackOptions`), the platform seams they run on
|
|
4
|
+
* (`FixbackAdapters`), and the client itself (`FixbackClient`) with what it hands out.
|
|
5
|
+
*
|
|
6
|
+
* They live apart from the client's machinery (#661). `./client` re-exports every name
|
|
7
|
+
* here, so the package's public surface, and every import of them from `./client`, is
|
|
8
|
+
* unchanged.
|
|
9
|
+
*/
|
|
10
|
+
import type { BootAnswer, CaptureToggles, CommonCaptureInitOptions, FetchLike, IdentityInputs, MaintenanceNotice, ReporterIdentity } from "@fixback/sdk-core";
|
|
11
|
+
import type { ConsoleLike, XhrConstructor } from "./breadcrumbs";
|
|
12
|
+
import type { DismissBrowser, LinkingLike, OpenAuthSession, OpenBrowser } from "./connect";
|
|
13
|
+
import type { AppStateLike, ErrorUtilsLike } from "./error-capture";
|
|
14
|
+
import type { FormDataFactory } from "./http";
|
|
15
|
+
import type { StorageLike } from "./identity";
|
|
16
|
+
import type { EnvironmentInputs } from "./report";
|
|
17
|
+
import type { MobileReplayOptions } from "./replay";
|
|
18
|
+
import type { ReplayEncodeDeps } from "./replay-encode";
|
|
19
|
+
import type { SecureStorageLike } from "./reporter-session-store";
|
|
20
|
+
import type { ResolvedShakeConfig, ShakeOptions } from "./shake";
|
|
21
|
+
import type { ScreenshotFile, SubmitResult } from "./submit";
|
|
22
|
+
/**
|
|
23
|
+
* Everything `FixbackProvider` / `createFixbackClient` accepts: the shared init
|
|
24
|
+
* vocabulary (`apiUrl`, `release`, `enabled`, `scrub`, `beforeSend`,
|
|
25
|
+
* `beforeBreadcrumb`, `capture`) plus what only a React Native app has. There is no
|
|
26
|
+
* `environment`: the `key` belongs to one Environment, and the server resolves the
|
|
27
|
+
* Environment and its Gate from it (ADR 2026-09-24).
|
|
28
|
+
*/
|
|
29
|
+
export interface FixbackOptions extends CommonCaptureInitOptions, IdentityInputs {
|
|
30
|
+
/** The Project's publishable key. Required. */
|
|
31
|
+
readonly key: string;
|
|
32
|
+
/**
|
|
33
|
+
* The origin this app reports as, sent as the `Origin` header on every request
|
|
34
|
+
* (spec 0004 §A). **Optional** since ADR-0041: a native app attaches no `Origin`
|
|
35
|
+
* of its own, and ingest no longer demands one — a value the client invents proves
|
|
36
|
+
* nothing about who is calling, so requiring it only cost a setup step. Omit it and
|
|
37
|
+
* the app reports with no origin at all.
|
|
38
|
+
*
|
|
39
|
+
* Set one when you *want* mobile reports to carry an origin — it names the report's
|
|
40
|
+
* `url` as `<origin>/<screen>` and gives the queue something to filter by. Then it
|
|
41
|
+
* must be an `https://` origin allowlisted on the Project (convention: the app's
|
|
42
|
+
* reverse-DNS id as host, `https://com.acme.myapp`, or the product's web origin),
|
|
43
|
+
* because an origin that *is* presented is still checked.
|
|
44
|
+
*/
|
|
45
|
+
readonly origin?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Where the platform's connect page returns after a Connect **this app starts** —
|
|
48
|
+
* a scheme (`myapp://fixback-connect`) or universal link the app handles, declared
|
|
49
|
+
* once here and passed to the in-app auth session (ADR-0066; ticket #251). Its
|
|
50
|
+
* origin must be allowlisted on the Project (the server validates the return URL).
|
|
51
|
+
* Without it, `signIn` stays a no-op — a report still files anonymously where the
|
|
52
|
+
* Gate allows.
|
|
53
|
+
*
|
|
54
|
+
* It is **not** needed for an **invite**: that Connect is minted against the app
|
|
55
|
+
* link the Project allowlists and arrives as a deep link, which the SDK redeems
|
|
56
|
+
* whether or not this option is set (ADR-0046). Set it when you want to offer
|
|
57
|
+
* sign-in from inside the app; when it is set it also narrows which inbound links
|
|
58
|
+
* the SDK will read a code off.
|
|
59
|
+
*/
|
|
60
|
+
readonly returnUrl?: string;
|
|
61
|
+
/**
|
|
62
|
+
* Automatic error capture — the SDK files uncaught JS errors as `source: error`
|
|
63
|
+
* Feedback with no prompt (spec 0004 §E, ADR-0011). Defaults to `true`; set
|
|
64
|
+
* `false` for the per-project toggle that turns it off. It is gated by boot's
|
|
65
|
+
* `canSubmit` either way, so an auto-error is never filed where a manual report
|
|
66
|
+
* would be refused.
|
|
67
|
+
*/
|
|
68
|
+
readonly autoCapture?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Per-stream capture toggles; unset streams follow the boot answer — **except
|
|
71
|
+
* `replay`**, which is off on mobile until this app asks for it (ADR-0044). A mobile
|
|
72
|
+
* replay is an unmasked recording of the device screen, so updating the SDK must
|
|
73
|
+
* never start one: set `capture: { replay: true }` (or pass a {@link replay} tuning
|
|
74
|
+
* object) to opt in, and the Project's own replay toggle still has the final say.
|
|
75
|
+
*/
|
|
76
|
+
readonly capture?: CaptureToggles;
|
|
77
|
+
/**
|
|
78
|
+
* Mobile session-replay tuning (ADR-0044) — cadence, encoded size, frame quality.
|
|
79
|
+
* Passing it **also opts in**, exactly as `capture: { replay: true }` does; set
|
|
80
|
+
* `capture: { replay: false }` to tune without recording.
|
|
81
|
+
*
|
|
82
|
+
* The window is a buffered 30–60 s of device frames at 1 fps, encoded to one MP4 at
|
|
83
|
+
* report time. It is **not masked**: everything the app drew is in it, which is why
|
|
84
|
+
* it is off by default and why the Project must enable replay too.
|
|
85
|
+
*/
|
|
86
|
+
readonly replay?: MobileReplayOptions;
|
|
87
|
+
/** Capture a screenshot when the composer opens. Defaults to `true`. */
|
|
88
|
+
readonly screenshots?: boolean;
|
|
89
|
+
/** Shake gesture tuning / off switch. */
|
|
90
|
+
readonly shake?: ShakeOptions;
|
|
91
|
+
/**
|
|
92
|
+
* The origins of **your own APIs** that should receive the **Correlation id** — a
|
|
93
|
+
* list of origins (`scheme://host[:port]`, e.g. `["https://api.example.com"]`).
|
|
94
|
+
*
|
|
95
|
+
* For a request to a listed origin the SDK sends a freshly minted W3C `traceparent`
|
|
96
|
+
* header and records its trace id on the request's network entry; `@fixback/node` on
|
|
97
|
+
* that backend adopts the same id for any error the request causes, so the app's
|
|
98
|
+
* Issue and the server Issue show one id. An app has no "same origin" to default to,
|
|
99
|
+
* so **nothing is sent unless its origin is listed** — a third-party API never sees a
|
|
100
|
+
* header it did not ask for. No wildcards and no paths: an entry that is not a bare
|
|
101
|
+
* origin is ignored with a warning. `fetch` is covered too — on React Native it runs
|
|
102
|
+
* on `XMLHttpRequest`, which is what the SDK instruments — and nothing is sent while
|
|
103
|
+
* network capture is off.
|
|
104
|
+
*/
|
|
105
|
+
readonly propagateTo?: readonly string[];
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* The platform touchpoints, as injectable seams. `createNativeAdapters()`
|
|
109
|
+
* builds the real React Native set; tests pass fakes.
|
|
110
|
+
*/
|
|
111
|
+
export interface FixbackAdapters {
|
|
112
|
+
/** Anonymous-id persistence (AsyncStorage). Absent ⇒ ephemeral ids. */
|
|
113
|
+
readonly storage?: StorageLike | null;
|
|
114
|
+
/**
|
|
115
|
+
* Secure persistence for the Reporter session token after a Connect (SecureStore).
|
|
116
|
+
* Absent ⇒ no persisted session (Connect still works for this launch).
|
|
117
|
+
*/
|
|
118
|
+
readonly secureStore?: SecureStorageLike | null;
|
|
119
|
+
/**
|
|
120
|
+
* Opens the platform's connect page in an in-app auth session and resolves when it
|
|
121
|
+
* returns via the app's `returnUrl` (`expo-web-browser`). Absent ⇒ `signIn` is a
|
|
122
|
+
* no-op.
|
|
123
|
+
*/
|
|
124
|
+
readonly openAuthSession?: OpenAuthSession | null;
|
|
125
|
+
/**
|
|
126
|
+
* Opens a URL in a plain in-app browser (`expo-web-browser`'s `openBrowserAsync`) —
|
|
127
|
+
* the **second** Connect door, for an app that declared no `returnUrl` (ADR-0052).
|
|
128
|
+
* There is no return for an auth session to recognise, so the connect page mints
|
|
129
|
+
* against the app links the Project lists and redirects to one; the code then
|
|
130
|
+
* arrives on `linking`, exactly as a claimed Invite's does. Absent ⇒ `signIn` falls
|
|
131
|
+
* back to the auth-session door alone.
|
|
132
|
+
*/
|
|
133
|
+
readonly openBrowser?: OpenBrowser | null;
|
|
134
|
+
/**
|
|
135
|
+
* Closes the in-app browser this app opened (`expo-web-browser`'s `dismissBrowser`),
|
|
136
|
+
* called once the deep link has landed so the person is returned to the app rather
|
|
137
|
+
* than to the page they have finished with. Best-effort; absent ⇒ the browser is
|
|
138
|
+
* left for the OS (and the person) to dismiss.
|
|
139
|
+
*/
|
|
140
|
+
readonly dismissBrowser?: DismissBrowser | null;
|
|
141
|
+
/**
|
|
142
|
+
* Reads the deep link the app was opened with, and reports later ones — React
|
|
143
|
+
* Native's `Linking`. It is how a Connect that started *outside* the app finishes
|
|
144
|
+
* inside it: an invite email lands on the Fixback claim page, the claim redirects to
|
|
145
|
+
* the app link the Project allowlists with a one-time code, and the app is launched
|
|
146
|
+
* from the outside with no auth session in flight (ADR-0046). Absent ⇒ an inbound
|
|
147
|
+
* Connect link is ignored and `signIn` remains the only way in — which on a gated
|
|
148
|
+
* Project means an invited tester can never be recognised.
|
|
149
|
+
*/
|
|
150
|
+
readonly linking?: LinkingLike | null;
|
|
151
|
+
/** Reads the device environment (window size, OS description). */
|
|
152
|
+
readonly environment?: () => EnvironmentInputs;
|
|
153
|
+
/** Captures the current screen as a file reference; `null` on failure. */
|
|
154
|
+
readonly captureScreenshot?: () => Promise<ScreenshotFile | null>;
|
|
155
|
+
/** Releases a captured screenshot's tmpfile (best-effort, repeat-safe). */
|
|
156
|
+
readonly releaseScreenshot?: (uri: string) => void;
|
|
157
|
+
/**
|
|
158
|
+
* Rasterises the screen to a replay frame file and resolves its URI (ADR-0044);
|
|
159
|
+
* `null` on failure. Absent ⇒ no replay, whatever the Project and init asked for.
|
|
160
|
+
*/
|
|
161
|
+
readonly captureReplayFrame?: (quality: number) => Promise<string | null>;
|
|
162
|
+
/** Deletes a replay frame's (or encoded window's) file — best-effort, repeat-safe. */
|
|
163
|
+
readonly releaseReplayFrame?: (uri: string) => void;
|
|
164
|
+
/**
|
|
165
|
+
* Encodes a window of frame files into one H.264/MP4
|
|
166
|
+
* (`@fixback/expo-replay-encoder`). Absent — which is what `createNativeAdapters`
|
|
167
|
+
* passes in a build with no native encoder linked, such as Expo Go — means nothing
|
|
168
|
+
* is recorded, and resolving `null` means the report ships without replay.
|
|
169
|
+
*/
|
|
170
|
+
readonly encodeReplaySegment?: ReplayEncodeDeps["encodeSegment"];
|
|
171
|
+
/** The `console` to wrap for the trace. `null` ⇒ skip. */
|
|
172
|
+
readonly consoleObj?: ConsoleLike | null;
|
|
173
|
+
/** The `XMLHttpRequest` to patch for the trace. `null` ⇒ skip. */
|
|
174
|
+
readonly xhr?: XhrConstructor | null;
|
|
175
|
+
/** The `ErrorUtils` seam for automatic error capture. `null` ⇒ skip. */
|
|
176
|
+
readonly errorUtils?: ErrorUtilsLike | null;
|
|
177
|
+
/** The `AppState` seam for occurrence flushes. */
|
|
178
|
+
readonly appState?: AppStateLike | null;
|
|
179
|
+
/**
|
|
180
|
+
* Whether the app is in the foreground. Replay capture pauses when it is not —
|
|
181
|
+
* a backgrounded app has nothing worth rasterising, and Android keeps JS timers
|
|
182
|
+
* running. Absent ⇒ capture never pauses.
|
|
183
|
+
*/
|
|
184
|
+
readonly isAppActive?: () => boolean;
|
|
185
|
+
/** The transport seams. */
|
|
186
|
+
readonly fetch?: FetchLike;
|
|
187
|
+
readonly formData?: FormDataFactory;
|
|
188
|
+
/** A development-only warning sink (silent in production builds). */
|
|
189
|
+
readonly warn?: (message: string) => void;
|
|
190
|
+
/** Clock source, injectable for tests. */
|
|
191
|
+
readonly now?: () => number;
|
|
192
|
+
}
|
|
193
|
+
/** The client's lifecycle state. */
|
|
194
|
+
export type FixbackStatus = "idle" | "starting" | "ready" | "disabled";
|
|
195
|
+
/** What a `present` listener receives — the composer's opening context. */
|
|
196
|
+
export interface ComposerContext {
|
|
197
|
+
readonly screenshot: ScreenshotFile | null;
|
|
198
|
+
}
|
|
199
|
+
/** What the composer hands back when the Reporter sends. */
|
|
200
|
+
export interface ComposerDraft {
|
|
201
|
+
readonly comment?: string;
|
|
202
|
+
/** The screenshot to attach (the presented one, unless removed). */
|
|
203
|
+
readonly screenshot?: ScreenshotFile | null;
|
|
204
|
+
}
|
|
205
|
+
/** The headless client `FixbackProvider` drives. */
|
|
206
|
+
export interface FixbackClient {
|
|
207
|
+
/** Boot and arm capture. Idempotent; never throws. */
|
|
208
|
+
start(): Promise<void>;
|
|
209
|
+
getStatus(): FixbackStatus;
|
|
210
|
+
/** The boot answer, once one arrived (for display; trust stays server-side). */
|
|
211
|
+
getBoot(): BootAnswer | null;
|
|
212
|
+
/** Whether a submission would be accepted right now. */
|
|
213
|
+
canSubmit(): boolean;
|
|
214
|
+
/** Subscribe to status changes. Returns an unsubscribe. */
|
|
215
|
+
onStatus(listener: (status: FixbackStatus) => void): () => void;
|
|
216
|
+
/**
|
|
217
|
+
* Open the composer: capture a screenshot (unless disabled) and notify
|
|
218
|
+
* `onPresent` listeners. A no-op while the client cannot submit.
|
|
219
|
+
*/
|
|
220
|
+
present(): Promise<void>;
|
|
221
|
+
/** Subscribe to composer-open requests. Returns an unsubscribe. */
|
|
222
|
+
onPresent(listener: (context: ComposerContext) => void): () => void;
|
|
223
|
+
/**
|
|
224
|
+
* Record a screen change: a `navigation` trace crumb, and the screen the
|
|
225
|
+
* next report's `url` names (spec 0004 §D).
|
|
226
|
+
*/
|
|
227
|
+
trackScreen(name: string): void;
|
|
228
|
+
/** Assemble, scrub, and submit a manual report. Never throws. */
|
|
229
|
+
submit(draft: ComposerDraft): Promise<SubmitResult>;
|
|
230
|
+
/** Release a captured screenshot's tmpfile (best-effort, repeat-safe). */
|
|
231
|
+
discardScreenshot(screenshot: ScreenshotFile | null | undefined): void;
|
|
232
|
+
/**
|
|
233
|
+
* Drop the replay window frozen when the composer opened — call it when the Reporter
|
|
234
|
+
* dismisses the composer, so the buffered frames stop being retained (ADR-0044).
|
|
235
|
+
* A no-op when replay is off. Safe to call repeatedly.
|
|
236
|
+
*/
|
|
237
|
+
discardReplay(): void;
|
|
238
|
+
/** The resolved shake tuning for the provider to arm. */
|
|
239
|
+
shakeConfig(): ResolvedShakeConfig;
|
|
240
|
+
/**
|
|
241
|
+
* Start a **Connect** (ADR-0066): open the platform's connect page in an in-app auth
|
|
242
|
+
* session, bind the signed-in Account to this app as a Reporter session (stored in
|
|
243
|
+
* SecureStore), and re-boot — so a gated Project's shake gesture arms once the Account
|
|
244
|
+
* is eligible. Resolves to the resulting identity. Never throws.
|
|
245
|
+
*/
|
|
246
|
+
signIn(): Promise<ReporterIdentity>;
|
|
247
|
+
/** Clear the Reporter session — revoke it server-side, forget the token, re-boot. */
|
|
248
|
+
signOut(): Promise<void>;
|
|
249
|
+
/** The current Reporter identity — anonymous, or a connected Account with its tier. */
|
|
250
|
+
identity(): ReporterIdentity;
|
|
251
|
+
/** Subscribe to identity changes (boot, sign in, sign out). Returns an unsubscribe. */
|
|
252
|
+
onIdentity(listener: (identity: ReporterIdentity) => void): () => void;
|
|
253
|
+
/**
|
|
254
|
+
* **Maintenance mode**'s notice while Fixback is down for maintenance (the maintenance-mode
|
|
255
|
+
* ADR), else `null`. While it shows, the composer opens onto it with Send off; the client asks
|
|
256
|
+
* boot again every minute and clears it once maintenance ends.
|
|
257
|
+
*/
|
|
258
|
+
maintenance(): MaintenanceNotice | null;
|
|
259
|
+
/** Subscribe to maintenance mode's notice coming and going. Returns an unsubscribe. */
|
|
260
|
+
onMaintenance(listener: (notice: MaintenanceNotice | null) => void): () => void;
|
|
261
|
+
/** Tear down every hook. Safe to call repeatedly. */
|
|
262
|
+
destroy(): void;
|
|
263
|
+
}
|
package/dist/options.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* The public shapes of the headless client: what `FixbackProvider` /
|
|
4
|
+
* `createFixbackClient` accept (`FixbackOptions`), the platform seams they run on
|
|
5
|
+
* (`FixbackAdapters`), and the client itself (`FixbackClient`) with what it hands out.
|
|
6
|
+
*
|
|
7
|
+
* They live apart from the client's machinery (#661). `./client` re-exports every name
|
|
8
|
+
* here, so the package's public surface, and every import of them from `./client`, is
|
|
9
|
+
* unchanged.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
//# sourceMappingURL=options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG"}
|
package/dist/report.d.ts
CHANGED
|
@@ -5,15 +5,16 @@
|
|
|
5
5
|
* The wire shapes themselves — `ReportContent`, `CaptureEnvironment`,
|
|
6
6
|
* `FeedbackSource` — live in `@fixback/sdk-core` (ADR-0028), so the mobile SDK
|
|
7
7
|
* speaks the *same* contract as the browser and backend rather than a vendored
|
|
8
|
-
* subset of it
|
|
9
|
-
*
|
|
10
|
-
*
|
|
8
|
+
* subset of it — and so are the rules that drop an empty piece
|
|
9
|
+
* (`assembleReportContent`, `captureEnvironmentOf`). This module re-exports the shapes
|
|
10
|
+
* for the SDK's public surface and holds only the mobile reading: the app window and
|
|
11
|
+
* the platform the adapter read off the device.
|
|
11
12
|
*
|
|
12
13
|
* The mobile slice carries no `annotation` (element picking and drawing are web-only
|
|
13
14
|
* today, spec 0004 §G); every content field is optional on the server, so the
|
|
14
15
|
* payload simply omits it.
|
|
15
16
|
*/
|
|
16
|
-
import type
|
|
17
|
+
import { type Breadcrumb, type CaptureEnvironment, type FeedbackSource, type ReportContent } from "@fixback/sdk-core";
|
|
17
18
|
export type { CaptureEnvironment, FeedbackSource, ReportContent };
|
|
18
19
|
/** What the composer hands to {@link assembleContent} when the Reporter sends. */
|
|
19
20
|
export interface ReportDraft {
|
|
@@ -31,10 +32,10 @@ export interface EnvironmentInputs {
|
|
|
31
32
|
readonly os?: string;
|
|
32
33
|
}
|
|
33
34
|
/**
|
|
34
|
-
* Build the capture environment from what the adapter read off the device
|
|
35
|
-
* dimension is recorded only when it is a positive number (the
|
|
36
|
-
* `0` via `int().positive()`); the `browser` field — the server's
|
|
37
|
-
* client string — carries a `react-native <os>` description.
|
|
35
|
+
* Build the capture environment from what the adapter read off the device, by the
|
|
36
|
+
* shared core's rules: a dimension is recorded only when it is a positive number (the
|
|
37
|
+
* server rejects `0` via `int().positive()`); the `browser` field — the server's
|
|
38
|
+
* free-form client string — carries a `react-native <os>` description.
|
|
38
39
|
*
|
|
39
40
|
* The **Release** (#117, ADR-0024) is stamped here too, already validated by the
|
|
40
41
|
* client (`normaliseRelease`). Without it a mobile build's captured frames cannot
|
|
@@ -43,9 +44,9 @@ export interface EnvironmentInputs {
|
|
|
43
44
|
*/
|
|
44
45
|
export declare function collectEnvironment(inputs: EnvironmentInputs, sdkVersion: string, release?: string): CaptureEnvironment;
|
|
45
46
|
/**
|
|
46
|
-
* Assemble the ingest content from what the Reporter composed
|
|
47
|
-
* are dropped rather than sent as blanks
|
|
48
|
-
* empty environment is simply omitted, so the payload carries only what
|
|
49
|
-
* actually provided (mirroring the server's all-optional content).
|
|
47
|
+
* Assemble the ingest content from what the Reporter composed, by the shared core's
|
|
48
|
+
* rules: empty pieces are dropped rather than sent as blanks — a whitespace-only
|
|
49
|
+
* comment or an empty environment is simply omitted, so the payload carries only what
|
|
50
|
+
* was actually provided (mirroring the server's all-optional content).
|
|
50
51
|
*/
|
|
51
52
|
export declare function assembleContent(draft: ReportDraft): ReportContent;
|
package/dist/report.js
CHANGED
|
@@ -6,9 +6,10 @@
|
|
|
6
6
|
* The wire shapes themselves — `ReportContent`, `CaptureEnvironment`,
|
|
7
7
|
* `FeedbackSource` — live in `@fixback/sdk-core` (ADR-0028), so the mobile SDK
|
|
8
8
|
* speaks the *same* contract as the browser and backend rather than a vendored
|
|
9
|
-
* subset of it
|
|
10
|
-
*
|
|
11
|
-
*
|
|
9
|
+
* subset of it — and so are the rules that drop an empty piece
|
|
10
|
+
* (`assembleReportContent`, `captureEnvironmentOf`). This module re-exports the shapes
|
|
11
|
+
* for the SDK's public surface and holds only the mobile reading: the app window and
|
|
12
|
+
* the platform the adapter read off the device.
|
|
12
13
|
*
|
|
13
14
|
* The mobile slice carries no `annotation` (element picking and drawing are web-only
|
|
14
15
|
* today, spec 0004 §G); every content field is optional on the server, so the
|
|
@@ -17,11 +18,12 @@
|
|
|
17
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
19
|
exports.collectEnvironment = collectEnvironment;
|
|
19
20
|
exports.assembleContent = assembleContent;
|
|
21
|
+
const sdk_core_1 = require("@fixback/sdk-core");
|
|
20
22
|
/**
|
|
21
|
-
* Build the capture environment from what the adapter read off the device
|
|
22
|
-
* dimension is recorded only when it is a positive number (the
|
|
23
|
-
* `0` via `int().positive()`); the `browser` field — the server's
|
|
24
|
-
* client string — carries a `react-native <os>` description.
|
|
23
|
+
* Build the capture environment from what the adapter read off the device, by the
|
|
24
|
+
* shared core's rules: a dimension is recorded only when it is a positive number (the
|
|
25
|
+
* server rejects `0` via `int().positive()`); the `browser` field — the server's
|
|
26
|
+
* free-form client string — carries a `react-native <os>` description.
|
|
25
27
|
*
|
|
26
28
|
* The **Release** (#117, ADR-0024) is stamped here too, already validated by the
|
|
27
29
|
* client (`normaliseRelease`). Without it a mobile build's captured frames cannot
|
|
@@ -29,44 +31,23 @@ exports.assembleContent = assembleContent;
|
|
|
29
31
|
* build, so symbolication would silently do nothing.
|
|
30
32
|
*/
|
|
31
33
|
function collectEnvironment(inputs, sdkVersion, release) {
|
|
32
|
-
const env = {};
|
|
33
|
-
const width = inputs.windowWidth;
|
|
34
|
-
if (typeof width === "number" && width > 0)
|
|
35
|
-
env.viewportWidth = Math.round(width);
|
|
36
|
-
const height = inputs.windowHeight;
|
|
37
|
-
if (typeof height === "number" && height > 0) {
|
|
38
|
-
env.viewportHeight = Math.round(height);
|
|
39
|
-
}
|
|
40
34
|
const os = typeof inputs.os === "string" ? inputs.os.trim() : "";
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
return env;
|
|
35
|
+
return (0, sdk_core_1.captureEnvironmentOf)({
|
|
36
|
+
width: inputs.windowWidth,
|
|
37
|
+
height: inputs.windowHeight,
|
|
38
|
+
browser: os ? `react-native ${os}` : "react-native",
|
|
39
|
+
}, sdkVersion, release);
|
|
47
40
|
}
|
|
48
41
|
// The self-provided reporter display name / email are gone (ADR-0066): a Reporter is an
|
|
49
42
|
// Account, so a name and email come from the signed-in `user`. The Expo Connect flow
|
|
50
43
|
// that supplies the Account lands in ticket #251.
|
|
51
44
|
/**
|
|
52
|
-
* Assemble the ingest content from what the Reporter composed
|
|
53
|
-
* are dropped rather than sent as blanks
|
|
54
|
-
* empty environment is simply omitted, so the payload carries only what
|
|
55
|
-
* actually provided (mirroring the server's all-optional content).
|
|
45
|
+
* Assemble the ingest content from what the Reporter composed, by the shared core's
|
|
46
|
+
* rules: empty pieces are dropped rather than sent as blanks — a whitespace-only
|
|
47
|
+
* comment or an empty environment is simply omitted, so the payload carries only what
|
|
48
|
+
* was actually provided (mirroring the server's all-optional content).
|
|
56
49
|
*/
|
|
57
50
|
function assembleContent(draft) {
|
|
58
|
-
|
|
59
|
-
const comment = draft.comment?.trim();
|
|
60
|
-
if (comment)
|
|
61
|
-
content.comment = comment;
|
|
62
|
-
if (draft.url)
|
|
63
|
-
content.url = draft.url;
|
|
64
|
-
if (draft.environment && Object.keys(draft.environment).length > 0) {
|
|
65
|
-
content.environment = draft.environment;
|
|
66
|
-
}
|
|
67
|
-
// Only a non-empty trace rides along — an empty buffer is simply omitted.
|
|
68
|
-
if (draft.trace && draft.trace.length > 0)
|
|
69
|
-
content.trace = draft.trace;
|
|
70
|
-
return content;
|
|
51
|
+
return (0, sdk_core_1.assembleReportContent)(draft);
|
|
71
52
|
}
|
|
72
53
|
//# sourceMappingURL=report.js.map
|
package/dist/report.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.js","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"report.js","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;AA6CH,gDAeC;AAWD,0CAEC;AAvED,gDAO2B;AAyB3B;;;;;;;;;;GAUG;AACH,SAAgB,kBAAkB,CAChC,MAAyB,EACzB,UAAkB,EAClB,OAAgB;IAEhB,MAAM,EAAE,GAAG,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,IAAA,+BAAoB,EACzB;QACE,KAAK,EAAE,MAAM,CAAC,WAAW;QACzB,MAAM,EAAE,MAAM,CAAC,YAAY;QAC3B,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc;KACpD,EACD,UAAU,EACV,OAAO,CACR,CAAC;AACJ,CAAC;AACD,wFAAwF;AACxF,qFAAqF;AACrF,kDAAkD;AAElD;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,KAAkB;IAChD,OAAO,IAAA,gCAAqB,EAAC,KAAK,CAAC,CAAC;AACtC,CAAC"}
|