@brett_lamy/docstream 1.20.1 → 1.22.0

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.
Files changed (43) hide show
  1. package/README.md +5 -0
  2. package/dist/doc-env.d.ts +5 -3
  3. package/dist/doc-env.d.ts.map +1 -1
  4. package/dist/doc-env.js +2 -2
  5. package/dist/doc-env.js.map +1 -1
  6. package/dist/env-keychain.d.ts +49 -0
  7. package/dist/env-keychain.d.ts.map +1 -0
  8. package/dist/env-keychain.js +201 -0
  9. package/dist/env-keychain.js.map +1 -0
  10. package/dist/index.d.ts +2 -0
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +1 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/replay/ReplayDevtools.d.ts +18 -0
  15. package/dist/replay/ReplayDevtools.d.ts.map +1 -0
  16. package/dist/replay/ReplayDevtools.js +137 -0
  17. package/dist/replay/ReplayDevtools.js.map +1 -0
  18. package/dist/replay/ReplayPlayer.d.ts +10 -2
  19. package/dist/replay/ReplayPlayer.d.ts.map +1 -1
  20. package/dist/replay/ReplayPlayer.js +16 -6
  21. package/dist/replay/ReplayPlayer.js.map +1 -1
  22. package/dist/replay/demo/index.d.ts.map +1 -1
  23. package/dist/replay/demo/index.js +15 -4
  24. package/dist/replay/demo/index.js.map +1 -1
  25. package/dist/replay/devtools.d.ts +70 -0
  26. package/dist/replay/devtools.d.ts.map +1 -0
  27. package/dist/replay/devtools.js +201 -0
  28. package/dist/replay/devtools.js.map +1 -0
  29. package/dist/replay/index.d.ts +3 -0
  30. package/dist/replay/index.d.ts.map +1 -1
  31. package/dist/replay/index.js +1 -0
  32. package/dist/replay/index.js.map +1 -1
  33. package/dist/styles.css +547 -0
  34. package/package.json +1 -1
  35. package/src/doc-env.tsx +7 -5
  36. package/src/env-keychain.ts +264 -0
  37. package/src/index.ts +2 -0
  38. package/src/replay/ReplayDevtools.tsx +348 -0
  39. package/src/replay/ReplayPlayer.tsx +36 -6
  40. package/src/replay/demo/index.ts +15 -4
  41. package/src/replay/devtools.ts +251 -0
  42. package/src/replay/index.ts +3 -0
  43. package/src/styles.css +547 -0
package/README.md CHANGED
@@ -202,6 +202,11 @@ when the page loads. It shows a gate, and its module isn't imported, until the v
202
202
  hint beside each variable.
203
203
  - **Without a host:** the gate asks the reader for the values and keeps them in memory for the page.
204
204
 
205
+ For a passkey keychain, use `createEnvKeychain` and `keychainEnvHost`. Values are kept encrypted
206
+ with a key derived from the passkey's PRF output, and the names are readable while locked. A press
207
+ unlocks it with one biometric prompt, signs in (`obtain`) only for what it doesn't hold, saves that,
208
+ and answers with everything it holds, so every example those values cover opens together.
209
+
205
210
  In-page demos read the values with `useDocstreamEnv().values`. Inline demos that run in almost-node,
206
211
  and live code fences, get them as `process.env.NAME` (`injectEnv` writes a module the entry imports
207
212
  first). Values loaded once are shared by every example on the page. `env` can also be passed as a
package/dist/doc-env.d.ts CHANGED
@@ -4,11 +4,13 @@ export type DocstreamEnvValues = Readonly<Record<string, string>>;
4
4
  export interface DocstreamEnvHost {
5
5
  /**
6
6
  * Resolves with the values it could get (unlocking a keychain or signing in as needed). Names it
7
- * leaves out stay missing and the example stays gated; a rejection is shown on the gate.
7
+ * leaves out stay missing and the example stays gated; a rejection is shown on the gate. It may
8
+ * resolve with more than it was asked for — everything an unlocked keychain holds, say — and every
9
+ * example those values cover opens too.
8
10
  */
9
11
  request: (names: readonly string[]) => Promise<Record<string, string>>;
10
- /** The gate's button, e.g. "Load from Keychain". Default "Load Variables". */
11
- label?: string;
12
+ /** The gate's button, e.g. "Load from Keychain", or one for the names this gate needs. Default "Load Variables". */
13
+ label?: string | ((names: readonly string[]) => string);
12
14
  /** A short line about one variable, e.g. "Sign in with GitHub" — shown beside its name. */
13
15
  describe?: (name: string) => string | undefined;
14
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"doc-env.d.ts","sourceRoot":"","sources":["../src/doc-env.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAqF,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEzH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;AAEjE,4EAA4E;AAC5E,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACtE,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;CAChD;AAED,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;IAC3B,kEAAkE;IAClE,MAAM,EAAE,kBAAkB,CAAA;IAC1B,sFAAsF;IACtF,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAClE,IAAI,CAAC,EAAE,gBAAgB,CAAA;IACvB,2DAA2D;IAC3D,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAA;CAClD;AAOD,8FAA8F;AAC9F,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED,+FAA+F;AAC/F,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,EAAE,CAI5F;AAED,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAI9F;AAED,MAAM,WAAW,yBAAyB;IACxC,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5B,IAAI,CAAC,EAAE,gBAAgB,CAAA;IACvB,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,QAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,yBAAyB,+BA2BhG;AAED,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAYxD,uEAAuE;;IAEvE,0CAA0C;;IAE1C,6EAA6E;;IAE7E,qDAAqD;;EAGxD;AAED,gEAAgE;AAChE,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,+BAgErF"}
1
+ {"version":3,"file":"doc-env.d.ts","sourceRoot":"","sources":["../src/doc-env.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAqF,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEzH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;AAEjE,4EAA4E;AAC5E,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACtE,oHAAoH;IACpH,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,MAAM,CAAC,CAAA;IACvD,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;CAChD;AAED,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;IAC3B,kEAAkE;IAClE,MAAM,EAAE,kBAAkB,CAAA;IAC1B,sFAAsF;IACtF,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAClE,IAAI,CAAC,EAAE,gBAAgB,CAAA;IACvB,2DAA2D;IAC3D,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAA;CAClD;AAOD,8FAA8F;AAC9F,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED,+FAA+F;AAC/F,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,EAAE,CAI5F;AAED,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAI9F;AAED,MAAM,WAAW,yBAAyB;IACxC,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5B,IAAI,CAAC,EAAE,gBAAgB,CAAA;IACvB,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,QAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,yBAAyB,+BA2BhG;AAED,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAYxD,uEAAuE;;IAEvE,0CAA0C;;IAE1C,6EAA6E;;IAE7E,qDAAqD;;EAGxD;AAED,gEAAgE;AAChE,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,+BAgErF"}
package/dist/doc-env.js CHANGED
@@ -56,7 +56,7 @@ export function DocstreamEnvProvider({ declared = [], host, children }) {
56
56
  if (!missing.length || !effectiveHost)
57
57
  return valuesRef.current;
58
58
  const got = await effectiveHost.request(missing);
59
- const kept = Object.fromEntries(Object.entries(got).filter(([k, v]) => missing.includes(k) && typeof v === "string"));
59
+ const kept = Object.fromEntries(Object.entries(got).filter(([, v]) => typeof v === "string"));
60
60
  setOwn((v) => ({ ...v, ...kept }));
61
61
  return { ...valuesRef.current, ...kept };
62
62
  }, [effectiveHost]);
@@ -118,6 +118,6 @@ export function EnvGate({ names, title }) {
118
118
  else
119
119
  setError("Fill in every variable to run the example.");
120
120
  };
121
- return (_jsxs("div", { className: "docs-env-gate", role: "group", "aria-label": `${title ?? "Example"} needs environment variables`, "data-docstream-env-gate": "", children: [_jsxs("div", { className: "docs-env-gate-head", children: [_jsx("span", { className: "docs-env-gate-icon", "aria-hidden": "true", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("circle", { cx: "7.5", cy: "15.5", r: "5.5" }), _jsx("path", { d: "m21 2-9.6 9.6" }), _jsx("path", { d: "m15.5 7.5 3 3L22 7l-3-3" })] }) }), _jsxs("span", { children: ["This example needs ", names.length === 1 ? "a variable" : `${names.length} variables`, " before it runs."] })] }), host ? (_jsxs(_Fragment, { children: [_jsx("ul", { className: "docs-env-gate-list", children: names.map((n) => (_jsxs("li", { children: [_jsx("code", { children: n }), host.describe?.(n) ? _jsx("span", { children: host.describe(n) }) : null] }, n))) }), _jsx("button", { type: "button", className: "docs-env-gate-button", onClick: () => void load(), disabled: busy, children: busy ? "Waiting…" : host.label ?? "Load Variables" })] })) : (_jsxs("form", { className: "docs-env-gate-form", onSubmit: submit, children: [names.map((n) => (_jsxs("label", { children: [_jsx("code", { children: n }), _jsx("input", { type: "password", autoComplete: "off", spellCheck: false, value: typed[n] ?? "", onChange: (e) => setTyped((t) => ({ ...t, [n]: e.target.value })) })] }, n))), _jsx("button", { type: "submit", className: "docs-env-gate-button", children: "Run Example" }), _jsx("span", { className: "docs-env-gate-note", children: "Kept in memory for this page only." })] })), error ? _jsx("p", { className: "docs-env-gate-error", role: "alert", children: error }) : null] }));
121
+ return (_jsxs("div", { className: "docs-env-gate", role: "group", "aria-label": `${title ?? "Example"} needs environment variables`, "data-docstream-env-gate": "", children: [_jsxs("div", { className: "docs-env-gate-head", children: [_jsx("span", { className: "docs-env-gate-icon", "aria-hidden": "true", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("circle", { cx: "7.5", cy: "15.5", r: "5.5" }), _jsx("path", { d: "m21 2-9.6 9.6" }), _jsx("path", { d: "m15.5 7.5 3 3L22 7l-3-3" })] }) }), _jsxs("span", { children: ["This example needs ", names.length === 1 ? "a variable" : `${names.length} variables`, " before it runs."] })] }), host ? (_jsxs(_Fragment, { children: [_jsx("ul", { className: "docs-env-gate-list", children: names.map((n) => (_jsxs("li", { children: [_jsx("code", { children: n }), host.describe?.(n) ? _jsx("span", { children: host.describe(n) }) : null] }, n))) }), _jsx("button", { type: "button", className: "docs-env-gate-button", onClick: () => void load(), disabled: busy, children: busy ? "Waiting…" : (typeof host.label === "function" ? host.label(names) : host.label) ?? "Load Variables" })] })) : (_jsxs("form", { className: "docs-env-gate-form", onSubmit: submit, children: [names.map((n) => (_jsxs("label", { children: [_jsx("code", { children: n }), _jsx("input", { type: "password", autoComplete: "off", spellCheck: false, value: typed[n] ?? "", onChange: (e) => setTyped((t) => ({ ...t, [n]: e.target.value })) })] }, n))), _jsx("button", { type: "submit", className: "docs-env-gate-button", children: "Run Example" }), _jsx("span", { className: "docs-env-gate-note", children: "Kept in memory for this page only." })] })), error ? _jsx("p", { className: "docs-env-gate-error", role: "alert", children: error }) : null] }));
122
122
  }
123
123
  //# sourceMappingURL=doc-env.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doc-env.js","sourceRoot":"","sources":["../src/doc-env.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doc-env.js","sourceRoot":"","sources":["../src/doc-env.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import type { DocstreamEnvHost } from "./doc-env.js";
2
+ export type EnvKeychainStatus = "unsupported" | "empty" | "locked" | "unlocked";
3
+ export interface EnvKeychain {
4
+ readonly status: EnvKeychainStatus;
5
+ /** The variables it holds (readable while locked). */
6
+ readonly names: readonly string[];
7
+ /** Creates the passkey (a biometric prompt; may ask twice on authenticators that only return PRF on sign-in). */
8
+ enroll(): Promise<void>;
9
+ /** A biometric prompt; then `values` can be read. */
10
+ unlock(): Promise<void>;
11
+ lock(): void;
12
+ /** Everything it holds. Unlocked only. */
13
+ values(): Promise<Record<string, string>>;
14
+ /** Adds or replaces values. Unlocked only. */
15
+ set(values: Record<string, string>): Promise<void>;
16
+ /** Forgets one variable, or (no argument) everything including the passkey's record. */
17
+ reset(name?: string): Promise<void>;
18
+ subscribe(listener: () => void): () => void;
19
+ }
20
+ export interface EnvKeychainOptions {
21
+ /** Names the keychain in storage; different ids are different keychains. */
22
+ id: string;
23
+ /** Shown by the passkey prompt. */
24
+ rpName: string;
25
+ /** Account name the passkey is listed under. Default "Environment variables". */
26
+ userName?: string;
27
+ /** Default `localStorage`. */
28
+ storage?: Pick<Storage, "getItem" | "setItem" | "removeItem">;
29
+ }
30
+ export declare function createEnvKeychain(options: EnvKeychainOptions): EnvKeychain;
31
+ export interface KeychainEnvHostOptions {
32
+ /** Gets values the keychain doesn't hold — a sign-in, a prompt. Resolve with what you got; it is saved. */
33
+ obtain?: (names: readonly string[]) => Promise<Record<string, string>>;
34
+ /** The gate's button when a sign-in is needed. Default "Sign In". */
35
+ signInLabel?: string | ((names: readonly string[]) => string);
36
+ /** The gate's button when the keychain already holds everything the example needs. Default "Unlock with Passkey". */
37
+ unlockLabel?: string;
38
+ /** A hint beside a variable the keychain doesn't hold. */
39
+ describe?: (name: string) => string | undefined;
40
+ }
41
+ /**
42
+ * A `DocstreamEnvHost` over a keychain. Pressing a gate's button:
43
+ * 1. creates the keychain (first time; a passkey prompt) or unlocks it (a biometric prompt);
44
+ * 2. asks `obtain` for the variables it doesn't hold, and saves them;
45
+ * 3. answers with everything the keychain holds, so every example those values cover opens.
46
+ * Without passkey support (or if the reader declines) values are kept for the page only.
47
+ */
48
+ export declare function keychainEnvHost(keychain: EnvKeychain, options?: KeychainEnvHostOptions): DocstreamEnvHost;
49
+ //# sourceMappingURL=env-keychain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-keychain.d.ts","sourceRoot":"","sources":["../src/env-keychain.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAEjD,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAA;AAE/E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAA;IAClC,sDAAsD;IACtD,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;IACjC,iHAAiH;IACjH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACvB,qDAAqD;IACrD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACvB,IAAI,IAAI,IAAI,CAAA;IACZ,0CAA0C;IAC1C,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACzC,8CAA8C;IAC9C,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,wFAAwF;IACxF,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACnC,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAA;CAC5C;AAED,MAAM,WAAW,kBAAkB;IACjC,4EAA4E;IAC5E,EAAE,EAAE,MAAM,CAAA;IACV,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,8BAA8B;IAC9B,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC,CAAA;CAC9D;AA4CD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAgI1E;AAED,MAAM,WAAW,sBAAsB;IACrC,2GAA2G;IAC3G,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACtE,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,MAAM,CAAC,CAAA;IAC7D,qHAAqH;IACrH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;CAChD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,GAAE,sBAA2B,GAAG,gBAAgB,CAuB7G"}
@@ -0,0 +1,201 @@
1
+ const b64 = (bytes) => {
2
+ const u = bytes instanceof Uint8Array ? bytes : new Uint8Array(bytes);
3
+ let s = "";
4
+ for (const b of u)
5
+ s += String.fromCharCode(b);
6
+ return btoa(s).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
7
+ };
8
+ const unb64 = (text) => {
9
+ const s = atob(text.replace(/-/g, "+").replace(/_/g, "/") + "===".slice((text.length + 3) % 4));
10
+ return Uint8Array.from(s, (c) => c.charCodeAt(0));
11
+ };
12
+ const random = (n) => crypto.getRandomValues(new Uint8Array(n));
13
+ const prfFirst = (credential) => {
14
+ const first = credential.getClientExtensionResults().prf?.results?.first;
15
+ if (!first)
16
+ return null;
17
+ const view = ArrayBuffer.isView(first) ? new Uint8Array(first.buffer, first.byteOffset, first.byteLength) : new Uint8Array(first);
18
+ const copy = new Uint8Array(view.byteLength);
19
+ copy.set(view);
20
+ return copy;
21
+ };
22
+ async function aesKey(prf) {
23
+ const base = await crypto.subtle.importKey("raw", prf, "HKDF", false, ["deriveKey"]);
24
+ return crypto.subtle.deriveKey({ name: "HKDF", hash: "SHA-256", salt: new Uint8Array(0), info: new TextEncoder().encode("docstream env keychain v1") }, base, { name: "AES-GCM", length: 256 }, false, ["encrypt", "decrypt"]);
25
+ }
26
+ export function createEnvKeychain(options) {
27
+ const key = `docstream-env-keychain:${options.id}`;
28
+ const storage = options.storage ?? (typeof localStorage !== "undefined" ? localStorage : null);
29
+ const listeners = new Set();
30
+ let aes = null;
31
+ let cache = null;
32
+ const read = () => {
33
+ try {
34
+ const raw = storage?.getItem(key);
35
+ const s = raw ? JSON.parse(raw) : null;
36
+ return s?.v === 1 && typeof s.credentialId === "string" && typeof s.salt === "string" ? { ...s, names: Array.isArray(s.names) ? s.names : [] } : null;
37
+ }
38
+ catch {
39
+ return null;
40
+ }
41
+ };
42
+ const write = (s) => {
43
+ if (s)
44
+ storage?.setItem(key, JSON.stringify(s));
45
+ else
46
+ storage?.removeItem(key);
47
+ listeners.forEach((l) => l());
48
+ };
49
+ const supported = () => typeof window !== "undefined" && window.isSecureContext && typeof PublicKeyCredential !== "undefined" && !!navigator.credentials && !!storage && !!crypto?.subtle;
50
+ /** A sign-in with the stored passkey, returning its PRF output. */
51
+ async function assert(stored) {
52
+ const credential = (await navigator.credentials.get({
53
+ publicKey: {
54
+ challenge: random(32),
55
+ allowCredentials: [{ type: "public-key", id: unb64(stored.credentialId) }],
56
+ userVerification: "required",
57
+ extensions: { prf: { eval: { first: unb64(stored.salt) } } },
58
+ },
59
+ }));
60
+ const first = credential && prfFirst(credential);
61
+ if (!first)
62
+ throw new Error("This passkey can't unlock the keychain (no PRF support).");
63
+ return first;
64
+ }
65
+ async function seal(values, stored) {
66
+ const iv = random(12);
67
+ const data = await crypto.subtle.encrypt({ name: "AES-GCM", iv }, aes, new TextEncoder().encode(JSON.stringify(values)));
68
+ cache = { ...values };
69
+ write({ ...stored, names: Object.keys(values).sort(), iv: b64(iv), data: b64(data) });
70
+ }
71
+ const keychain = {
72
+ get status() {
73
+ if (!supported())
74
+ return "unsupported";
75
+ if (!read())
76
+ return "empty";
77
+ return aes ? "unlocked" : "locked";
78
+ },
79
+ get names() {
80
+ return read()?.names ?? [];
81
+ },
82
+ async enroll() {
83
+ if (!supported())
84
+ throw new Error("This browser can't keep a passkey keychain.");
85
+ const salt = random(32);
86
+ const created = (await navigator.credentials.create({
87
+ publicKey: {
88
+ rp: { name: options.rpName },
89
+ user: { id: random(16), name: options.userName ?? "Environment variables", displayName: options.userName ?? "Environment variables" },
90
+ challenge: random(32),
91
+ pubKeyCredParams: [{ type: "public-key", alg: -7 }, { type: "public-key", alg: -257 }],
92
+ authenticatorSelection: { residentKey: "preferred", userVerification: "required" },
93
+ extensions: { prf: { eval: { first: salt } } },
94
+ },
95
+ }));
96
+ if (!created)
97
+ throw new Error("No passkey was created.");
98
+ const ext = created.getClientExtensionResults().prf;
99
+ if (!ext?.enabled && !ext?.results?.first)
100
+ throw new Error("This passkey can't encrypt (no PRF support). Try another passkey provider.");
101
+ const stored = { v: 1, credentialId: b64(created.rawId), salt: b64(salt), names: [] };
102
+ // Some authenticators only evaluate PRF on sign-in: then this asks once more.
103
+ aes = await aesKey(prfFirst(created) ?? (await assert(stored)));
104
+ await seal({}, stored);
105
+ },
106
+ async unlock() {
107
+ const stored = read();
108
+ if (!stored)
109
+ throw new Error("There is no keychain yet.");
110
+ if (aes)
111
+ return;
112
+ aes = await aesKey(await assert(stored));
113
+ cache = null;
114
+ listeners.forEach((l) => l());
115
+ },
116
+ lock() {
117
+ aes = null;
118
+ cache = null;
119
+ listeners.forEach((l) => l());
120
+ },
121
+ async values() {
122
+ if (!aes)
123
+ throw new Error("The keychain is locked.");
124
+ if (cache)
125
+ return { ...cache };
126
+ const stored = read();
127
+ if (!stored?.data || !stored.iv)
128
+ return (cache = {});
129
+ try {
130
+ const plain = await crypto.subtle.decrypt({ name: "AES-GCM", iv: unb64(stored.iv) }, aes, unb64(stored.data));
131
+ cache = JSON.parse(new TextDecoder().decode(plain));
132
+ }
133
+ catch {
134
+ aes = null;
135
+ throw new Error("That passkey doesn't open this keychain.");
136
+ }
137
+ return { ...cache };
138
+ },
139
+ async set(values) {
140
+ const stored = read();
141
+ if (!stored || !aes)
142
+ throw new Error("The keychain is locked.");
143
+ await seal({ ...(await keychain.values()), ...values }, stored);
144
+ },
145
+ async reset(name) {
146
+ if (name === undefined) {
147
+ aes = null;
148
+ cache = null;
149
+ write(null);
150
+ return;
151
+ }
152
+ const stored = read();
153
+ if (!stored)
154
+ return;
155
+ if (aes) {
156
+ const { [name]: _, ...rest } = await keychain.values();
157
+ await seal(rest, stored);
158
+ }
159
+ else
160
+ write({ ...stored, names: stored.names.filter((n) => n !== name) });
161
+ },
162
+ subscribe(listener) {
163
+ listeners.add(listener);
164
+ return () => listeners.delete(listener);
165
+ },
166
+ };
167
+ return keychain;
168
+ }
169
+ /**
170
+ * A `DocstreamEnvHost` over a keychain. Pressing a gate's button:
171
+ * 1. creates the keychain (first time; a passkey prompt) or unlocks it (a biometric prompt);
172
+ * 2. asks `obtain` for the variables it doesn't hold, and saves them;
173
+ * 3. answers with everything the keychain holds, so every example those values cover opens.
174
+ * Without passkey support (or if the reader declines) values are kept for the page only.
175
+ */
176
+ export function keychainEnvHost(keychain, options = {}) {
177
+ const held = (names) => names.every((n) => keychain.names.includes(n));
178
+ return {
179
+ label: (names) => held(names) ? options.unlockLabel ?? "Unlock with Passkey"
180
+ : typeof options.signInLabel === "function" ? options.signInLabel(names) : options.signInLabel ?? "Sign In",
181
+ describe: (name) => (keychain.names.includes(name) ? "In your keychain" : options.describe?.(name)),
182
+ async request(names) {
183
+ // The press's user activation is still live here: spend it on the passkey prompt first.
184
+ let usable = keychain.status === "unlocked";
185
+ if (keychain.status === "locked") {
186
+ await keychain.unlock();
187
+ usable = true;
188
+ }
189
+ else if (keychain.status === "empty") {
190
+ usable = await keychain.enroll().then(() => true, () => false);
191
+ }
192
+ const saved = usable ? await keychain.values() : {};
193
+ const missing = names.filter((n) => saved[n] === undefined);
194
+ const got = missing.length && options.obtain ? await options.obtain(missing) : {};
195
+ if (usable && Object.keys(got).length)
196
+ await keychain.set(got);
197
+ return { ...saved, ...got };
198
+ },
199
+ };
200
+ }
201
+ //# sourceMappingURL=env-keychain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-keychain.js","sourceRoot":"","sources":["../src/env-keychain.ts"],"names":[],"mappings":"AA2DA,MAAM,GAAG,GAAG,CAAC,KAA+B,EAAE,EAAE;IAC9C,MAAM,CAAC,GAAG,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;IACrE,IAAI,CAAC,GAAG,EAAE,CAAA;IACV,KAAK,MAAM,CAAC,IAAI,CAAC;QAAE,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC9C,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAC3E,CAAC,CAAA;AACD,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE;IAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC/F,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;AACnD,CAAC,CAAA;AACD,MAAM,MAAM,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;AAGvE,MAAM,QAAQ,GAAG,CAAC,UAA+B,EAAkC,EAAE;IACnF,MAAM,KAAK,GAAI,UAAU,CAAC,yBAAyB,EAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAA;IACxF,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IACvB,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;IACjI,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC5C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACd,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,KAAK,UAAU,MAAM,CAAC,GAA4B;IAChD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;IACpF,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAC5B,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,EAAE,EACvH,IAAI,EACJ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,EAChC,KAAK,EACL,CAAC,SAAS,EAAE,SAAS,CAAC,CACvB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,MAAM,GAAG,GAAG,0BAA0B,OAAO,CAAC,EAAE,EAAE,CAAA;IAClD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC9F,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;IACvC,IAAI,GAAG,GAAqB,IAAI,CAAA;IAChC,IAAI,KAAK,GAAkC,IAAI,CAAA;IAE/C,MAAM,IAAI,GAAG,GAAkB,EAAE;QAC/B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;YACjC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC,CAAC,CAAC,IAAI,CAAA;YAClD,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QACvJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,CAAC,CAAgB,EAAE,EAAE;QACjC,IAAI,CAAC;YAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;;YAC1C,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAA;QAC7B,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;IAC/B,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,GAAG,EAAE,CACrB,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,eAAe,IAAI,OAAO,mBAAmB,KAAK,WAAW,IAAI,CAAC,CAAC,SAAS,CAAC,WAAW,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAA;IAEnK,mEAAmE;IACnE,KAAK,UAAU,MAAM,CAAC,MAAc;QAClC,MAAM,UAAU,GAAG,CAAC,MAAM,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC;YAClD,SAAS,EAAE;gBACT,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;gBACrB,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC1E,gBAAgB,EAAE,UAAU;gBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAA0C;aACrG;SACF,CAAC,CAA+B,CAAA;QACjC,MAAM,KAAK,GAAG,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAA;QAChD,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;QACvF,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,UAAU,IAAI,CAAC,MAA8B,EAAE,MAAc;QAChE,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAA;QACrB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,GAAI,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACzH,KAAK,GAAG,EAAE,GAAG,MAAM,EAAE,CAAA;QACrB,KAAK,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACvF,CAAC;IAED,MAAM,QAAQ,GAAgB;QAC5B,IAAI,MAAM;YACR,IAAI,CAAC,SAAS,EAAE;gBAAE,OAAO,aAAa,CAAA;YACtC,IAAI,CAAC,IAAI,EAAE;gBAAE,OAAO,OAAO,CAAA;YAC3B,OAAO,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAA;QACpC,CAAC;QACD,IAAI,KAAK;YACP,OAAO,IAAI,EAAE,EAAE,KAAK,IAAI,EAAE,CAAA;QAC5B,CAAC;QACD,KAAK,CAAC,MAAM;YACV,IAAI,CAAC,SAAS,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;YAChF,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAA;YACvB,MAAM,OAAO,GAAG,CAAC,MAAM,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC;gBAClD,SAAS,EAAE;oBACT,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE;oBAC5B,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,IAAI,uBAAuB,EAAE,WAAW,EAAE,OAAO,CAAC,QAAQ,IAAI,uBAAuB,EAAE;oBACrI,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;oBACrB,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;oBACtF,sBAAsB,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE;oBAClF,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAA0C;iBACvF;aACF,CAAC,CAA+B,CAAA;YACjC,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;YACxD,MAAM,GAAG,GAAI,OAAO,CAAC,yBAAyB,EAAiB,CAAC,GAAG,CAAA;YACnE,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAA;YACxI,MAAM,MAAM,GAAW,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;YAC7F,8EAA8E;YAC9E,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAC/D,MAAM,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QACxB,CAAC;QACD,KAAK,CAAC,MAAM;YACV,MAAM,MAAM,GAAG,IAAI,EAAE,CAAA;YACrB,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;YACzD,IAAI,GAAG;gBAAE,OAAM;YACf,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;YACxC,KAAK,GAAG,IAAI,CAAA;YACZ,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC/B,CAAC;QACD,IAAI;YACF,GAAG,GAAG,IAAI,CAAA;YACV,KAAK,GAAG,IAAI,CAAA;YACZ,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC/B,CAAC;QACD,KAAK,CAAC,MAAM;YACV,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;YACpD,IAAI,KAAK;gBAAE,OAAO,EAAE,GAAG,KAAK,EAAE,CAAA;YAC9B,MAAM,MAAM,GAAG,IAAI,EAAE,CAAA;YACrB,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;YACpD,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;gBAC7G,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAA2B,CAAA;YAC/E,CAAC;YAAC,MAAM,CAAC;gBACP,GAAG,GAAG,IAAI,CAAA;gBACV,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;YAC7D,CAAC;YACD,OAAO,EAAE,GAAG,KAAK,EAAE,CAAA;QACrB,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,MAAM;YACd,MAAM,MAAM,GAAG,IAAI,EAAE,CAAA;YACrB,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;YAC/D,MAAM,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,MAAM,CAAC,CAAA;QACjE,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,IAAI;YACd,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,GAAG,GAAG,IAAI,CAAA;gBACV,KAAK,GAAG,IAAI,CAAA;gBACZ,KAAK,CAAC,IAAI,CAAC,CAAA;gBACX,OAAM;YACR,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,EAAE,CAAA;YACrB,IAAI,CAAC,MAAM;gBAAE,OAAM;YACnB,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAA;gBACtD,MAAM,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC1B,CAAC;;gBAAM,KAAK,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,CAAA;QAC5E,CAAC;QACD,SAAS,CAAC,QAAQ;YAChB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACvB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACzC,CAAC;KACF,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAaD;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,QAAqB,EAAE,UAAkC,EAAE;IACzF,MAAM,IAAI,GAAG,CAAC,KAAwB,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IACzF,OAAO;QACL,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,IAAI,qBAAqB;YACxD,CAAC,CAAC,OAAO,OAAO,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,IAAI,SAAS;QAC/G,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;QACnG,KAAK,CAAC,OAAO,CAAC,KAAK;YACjB,wFAAwF;YACxF,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAA;YAC3C,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAA;gBACvB,MAAM,GAAG,IAAI,CAAA;YACf,CAAC;iBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBACvC,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;YAChE,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YACnD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAA;YAC3D,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACjF,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM;gBAAE,MAAM,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAC9D,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,GAAG,EAAE,CAAA;QAC7B,CAAC;KACF,CAAA;AACH,CAAC"}
package/dist/index.d.ts CHANGED
@@ -6,6 +6,8 @@ export type { TaskCheckboxProps, TaskStateChangeHandler } from "./docs/TaskCheck
6
6
  export { TASK_STATES, getTaskState, taskMarker, taskStateFromMarker } from "./gitbook/tasks.js";
7
7
  export { DocstreamEnvProvider, EnvGate, envNamesFromProperties, useDocstreamEnv, useEnvGate, usedEnvNames } from "./doc-env.js";
8
8
  export type { DocstreamEnv, DocstreamEnvHost, DocstreamEnvProviderProps, DocstreamEnvValues } from "./doc-env.js";
9
+ export { createEnvKeychain, keychainEnvHost } from "./env-keychain.js";
10
+ export type { EnvKeychain, EnvKeychainOptions, EnvKeychainStatus, KeychainEnvHostOptions } from "./env-keychain.js";
9
11
  export { DocumentProperties } from "./docs/DocumentProperties.js";
10
12
  export type { DocumentPropertiesProps } from "./docs/DocumentProperties.js";
11
13
  export { readDocumentProperties, removeDocumentProperty, setDocumentProperty } from "./gitbook/properties.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,6 +5,7 @@ export { DocsRenderer, MarkdownContent, MathFormula, documentEnv } from "./docs/
5
5
  export { TaskCheckbox, TASK_STATE_ICONS } from "./docs/TaskCheckbox.js";
6
6
  export { TASK_STATES, getTaskState, taskMarker, taskStateFromMarker } from "./gitbook/tasks.js";
7
7
  export { DocstreamEnvProvider, EnvGate, envNamesFromProperties, useDocstreamEnv, useEnvGate, usedEnvNames } from "./doc-env.js";
8
+ export { createEnvKeychain, keychainEnvHost } from "./env-keychain.js";
8
9
  export { DocumentProperties } from "./docs/DocumentProperties.js";
9
10
  export { readDocumentProperties, removeDocumentProperty, setDocumentProperty } from "./gitbook/properties.js";
10
11
  export { DocPageActions } from "./docs/PageActions.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { ReplayDevtoolsState } from './devtools.js';
2
+ export type ReplayDevtoolsTab = 'console' | 'network';
3
+ /** The two buttons for the top bar (or the controls row): icon, request count and, in red, what failed. */
4
+ export declare function DevtoolsButtons({ state, open, onOpen }: {
5
+ state: ReplayDevtoolsState;
6
+ open: ReplayDevtoolsTab | null;
7
+ onOpen: (tab: ReplayDevtoolsTab) => void;
8
+ }): import("react").JSX.Element;
9
+ /** The panel over the page: Console and Network, cut at the playhead. */
10
+ export declare function DevtoolsPanel({ state, at, tab, onTab, onClose, onSeek }: {
11
+ state: ReplayDevtoolsState;
12
+ at: number;
13
+ tab: ReplayDevtoolsTab;
14
+ onTab: (tab: ReplayDevtoolsTab) => void;
15
+ onClose: () => void;
16
+ onSeek: (ms: number) => void;
17
+ }): import("react").JSX.Element;
18
+ //# sourceMappingURL=ReplayDevtools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReplayDevtools.d.ts","sourceRoot":"","sources":["../../src/replay/ReplayDevtools.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAsB,mBAAmB,EAAiB,MAAM,YAAY,CAAA;AAExF,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,CAAA;AAQrD,2GAA2G;AAC3G,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IACvD,KAAK,EAAE,mBAAmB,CAAC;IAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,CAAA;CACrG,+BAgCA;AAED,yEAAyE;AACzE,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;IACxE,KAAK,EAAE,mBAAmB,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,CAAA;IACvG,OAAO,EAAE,MAAM,IAAI,CAAC;IAAC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAClD,+BA6DA"}