@37signals/basecamp 0.14.0 → 0.16.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 (96) hide show
  1. package/README.md +1 -1
  2. package/dist/client.d.ts +5 -2
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +4 -2
  5. package/dist/client.js.map +1 -1
  6. package/dist/download.d.ts +3 -1
  7. package/dist/download.d.ts.map +1 -1
  8. package/dist/download.js +87 -23
  9. package/dist/download.js.map +1 -1
  10. package/dist/errors.d.ts +40 -0
  11. package/dist/errors.d.ts.map +1 -1
  12. package/dist/errors.js +132 -15
  13. package/dist/errors.js.map +1 -1
  14. package/dist/generated/metadata.d.ts.map +1 -1
  15. package/dist/generated/metadata.js +115 -1
  16. package/dist/generated/metadata.js.map +1 -1
  17. package/dist/generated/metadata.ts +115 -1
  18. package/dist/generated/openapi-stripped.json +1412 -209
  19. package/dist/generated/path-mapping.d.ts.map +1 -1
  20. package/dist/generated/path-mapping.js +9 -0
  21. package/dist/generated/path-mapping.js.map +1 -1
  22. package/dist/generated/path-mapping.ts +9 -0
  23. package/dist/generated/schema.d.ts +1136 -85
  24. package/dist/generated/services/bubble-ups.d.ts +48 -0
  25. package/dist/generated/services/bubble-ups.d.ts.map +1 -0
  26. package/dist/generated/services/bubble-ups.js +67 -0
  27. package/dist/generated/services/bubble-ups.js.map +1 -0
  28. package/dist/generated/services/bubble-ups.ts +98 -0
  29. package/dist/generated/services/checkins.d.ts +1 -1
  30. package/dist/generated/services/checkins.d.ts.map +1 -1
  31. package/dist/generated/services/checkins.ts +1 -1
  32. package/dist/generated/services/gauges.d.ts +3 -2
  33. package/dist/generated/services/gauges.d.ts.map +1 -1
  34. package/dist/generated/services/gauges.ts +2 -2
  35. package/dist/generated/services/index.d.ts +1 -0
  36. package/dist/generated/services/index.d.ts.map +1 -1
  37. package/dist/generated/services/index.js +1 -0
  38. package/dist/generated/services/index.js.map +1 -1
  39. package/dist/generated/services/index.ts +1 -0
  40. package/dist/generated/services/projects.d.ts +22 -0
  41. package/dist/generated/services/projects.d.ts.map +1 -1
  42. package/dist/generated/services/projects.js +42 -0
  43. package/dist/generated/services/projects.js.map +1 -1
  44. package/dist/generated/services/projects.ts +53 -0
  45. package/dist/generated/services/recordings.d.ts +24 -0
  46. package/dist/generated/services/recordings.d.ts.map +1 -1
  47. package/dist/generated/services/recordings.js +49 -0
  48. package/dist/generated/services/recordings.js.map +1 -1
  49. package/dist/generated/services/recordings.ts +59 -0
  50. package/dist/generated/services/search.d.ts +2 -1
  51. package/dist/generated/services/search.d.ts.map +1 -1
  52. package/dist/generated/services/search.ts +1 -1
  53. package/dist/generated/services/templates.d.ts +46 -0
  54. package/dist/generated/services/templates.d.ts.map +1 -1
  55. package/dist/generated/services/templates.js +70 -0
  56. package/dist/generated/services/templates.js.map +1 -1
  57. package/dist/generated/services/templates.ts +98 -0
  58. package/dist/index.d.ts +3 -2
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +2 -1
  61. package/dist/index.js.map +1 -1
  62. package/dist/oauth/authorization-document.d.ts +18 -11
  63. package/dist/oauth/authorization-document.d.ts.map +1 -1
  64. package/dist/oauth/authorization-document.js +16 -11
  65. package/dist/oauth/authorization-document.js.map +1 -1
  66. package/dist/oauth/device.d.ts.map +1 -1
  67. package/dist/oauth/device.js +9 -71
  68. package/dist/oauth/device.js.map +1 -1
  69. package/dist/oauth/exchange.d.ts.map +1 -1
  70. package/dist/oauth/exchange.js +55 -16
  71. package/dist/oauth/exchange.js.map +1 -1
  72. package/dist/oauth/limits.d.ts +33 -2
  73. package/dist/oauth/limits.d.ts.map +1 -1
  74. package/dist/oauth/limits.js +76 -2
  75. package/dist/oauth/limits.js.map +1 -1
  76. package/dist/retry.d.ts +23 -0
  77. package/dist/retry.d.ts.map +1 -1
  78. package/dist/retry.js +45 -10
  79. package/dist/retry.js.map +1 -1
  80. package/dist/services/base.d.ts +25 -2
  81. package/dist/services/base.d.ts.map +1 -1
  82. package/dist/services/base.js +85 -15
  83. package/dist/services/base.js.map +1 -1
  84. package/package.json +6 -4
  85. package/src/generated/metadata.ts +115 -1
  86. package/src/generated/openapi-stripped.json +1412 -209
  87. package/src/generated/path-mapping.ts +9 -0
  88. package/src/generated/schema.d.ts +1136 -85
  89. package/src/generated/services/bubble-ups.ts +98 -0
  90. package/src/generated/services/checkins.ts +1 -1
  91. package/src/generated/services/gauges.ts +2 -2
  92. package/src/generated/services/index.ts +1 -0
  93. package/src/generated/services/projects.ts +53 -0
  94. package/src/generated/services/recordings.ts +59 -0
  95. package/src/generated/services/search.ts +1 -1
  96. package/src/generated/services/templates.ts +98 -0
@@ -23,7 +23,7 @@
23
23
  * | `accounts[].product` / `app_href` | present | absent |
24
24
  * | `accounts[].resource` | absent | present (RFC 8707 indicator) |
25
25
  * | `scope` | absent | present, BC3-issued tokens only |
26
- * | `expires_at` | ISO-8601 string | integer epoch **seconds** |
26
+ * | `expires_at` | ISO-8601 string | ISO-8601 string (integer epoch **seconds** before bc3 #12646; still accepted) |
27
27
  *
28
28
  * Every field either issuer omits is typed optional here. The union is modelled
29
29
  * rather than either shape alone, because a consumer reaches a BC5 issuer just by
@@ -33,21 +33,26 @@
33
33
  * @see spec/api-gaps/bc5-authorization-document-shape.md
34
34
  */
35
35
  /**
36
- * Parses `expires_at` from either issuer's spelling.
36
+ * Parses `expires_at` from any spelling either issuer has ever used.
37
37
  *
38
- * Launchpad sends an ISO-8601 string; bc3 sends `@token.expires_at.to_i`, an
39
- * integer epoch **seconds**. The distinction is the whole point of branching on
40
- * `typeof`: `new Date(2085213356)` treats the number as *milliseconds* and yields
41
- * a date in 1970 — a wrong answer rather than an exception, which then reads as
42
- * an expired credential rather than a schema mismatch.
38
+ * Both issuers send an ISO-8601 string today; bc3 sent `@token.expires_at.to_i`
39
+ * — integer epoch **seconds** — before bc3 #12646 converged it, and the integer
40
+ * spelling stays accepted (recorded documents, older deploys). The `typeof`
41
+ * branch matters because `new Date(2085213356)` treats the number as
42
+ * *milliseconds* and yields a date in 1970 — a wrong answer rather than an
43
+ * exception, which then reads as an expired credential rather than a schema
44
+ * mismatch.
43
45
  *
44
- * bc3 renders `.to_i`, so a nil expiry arrives as `0`, never `null`. A `0`, a
45
- * `null` and an absent field are all "no expiry known" and produce an Invalid
46
- * Date, which is what a `Date`-typed field can say about the absence.
46
+ * A `0`, a `null` and an absent field are all "no expiry known" and produce an
47
+ * Invalid Date, which is what a `Date`-typed field can say about absence. No
48
+ * production issuer emits any of the three — bc3 tokens validate presence and
49
+ * are always set at mint — so the `0` handling is defensive, guarding the
50
+ * RFC 7591 collision where `0` means "never expires".
47
51
  */
48
52
  export function parseExpiresAt(value) {
49
53
  if (typeof value === "number") {
50
- // Epoch seconds, not milliseconds. `0` is bc3's rendering of a nil expiry.
54
+ // Epoch seconds, not milliseconds. `0` is the defensive no-expiry sentinel
55
+ // (RFC 7591 gives 0 the meaning "never expires"); no issuer emits it.
51
56
  return value === 0 ? new Date(NaN) : new Date(value * 1000);
52
57
  }
53
58
  if (typeof value === "string" && value !== "") {
@@ -1 +1 @@
1
- {"version":3,"file":"authorization-document.js","sourceRoot":"","sources":["../../src/oauth/authorization-document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authorization-document.js","sourceRoot":"","sources":["../../src/oauth/authorization-document.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/oauth/device.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAIzD,OAAO,EAAE,0BAA0B,EAAE,CAAC;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAwC,MAAM,YAAY,CAAC;AAExG,yDAAyD;AACzD,eAAO,MAAM,sBAAsB,iDAAiD,CAAC;AAwDrF,6EAA6E;AAC7E,MAAM,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,cAC0C,CAAC;AAEtE;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK3E;AAcD;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,wDAAwD;IACxD,2BAA2B,EAAE,MAAM,CAAC;IACpC,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,mBAAmB,CAAC,CA+H9B;AA+ED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kEAAkE;IAClE,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CA8MxF;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAoBpE;AAoQD,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAIzD"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/oauth/device.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,EAAE,0BAA0B,EAAkD,MAAM,aAAa,CAAC;AAIzG,OAAO,EAAE,0BAA0B,EAAE,CAAC;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAwC,MAAM,YAAY,CAAC;AAExG,yDAAyD;AACzD,eAAO,MAAM,sBAAsB,iDAAiD,CAAC;AAuCrF,6EAA6E;AAC7E,MAAM,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,cAC0C,CAAC;AAEtE;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK3E;AAcD;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,wDAAwD;IACxD,2BAA2B,EAAE,MAAM,CAAC;IACpC,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,mBAAmB,CAAC,CA+H9B;AA+ED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kEAAkE;IAClE,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CA8MxF;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAoBpE;AAmND,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAIzD"}
@@ -9,7 +9,7 @@ import { BasecampError, truncateErrorMessage } from "../errors.js";
9
9
  import { requireSecureEndpoint } from "../security.js";
10
10
  import { readBodyBounded } from "./discovery.js";
11
11
  import { DeviceFlowError } from "./device-errors.js";
12
- import { MAX_TOKEN_LIFETIME_SECONDS } from "./limits.js";
12
+ import { MAX_TOKEN_LIFETIME_SECONDS, abortError, raceAbort, resolveRequestTimeoutMs } from "./limits.js";
13
13
  // Re-exported for existing importers; the declaration lives in limits.ts so
14
14
  // non-device consumers need not pull this module.
15
15
  export { MAX_TOKEN_LIFETIME_SECONDS };
@@ -29,30 +29,14 @@ const MAX_DEVICE_SECONDS = 2_147_483;
29
29
  /** Default per-request timeout (ms) for every device-flow HTTP round-trip. */
30
30
  const DEFAULT_DEVICE_TIMEOUT_MS = 30_000;
31
31
  /**
32
- * Ceiling (ms) for a caller-supplied per-request timeout: the shared 3600 s
33
- * bound (Go's maxDeviceRequestTimeout, Python's _MAX_DEVICE_REQUEST_TIMEOUT,
34
- * Ruby's Fetcher::MAX_REQUEST_TIMEOUT). A large finite value — up to the
35
- * ~24.8-day MAX_DEVICE_SECONDS timer bound this previously allowed — would
36
- * hold a stalled request open for weeks, defeating the bounded-request
37
- * guarantee.
38
- */
39
- const MAX_DEVICE_REQUEST_TIMEOUT_MS = 3600 * 1000;
40
- /**
41
- * Coerce a caller-supplied request timeout (ms) to a finite, positive, timer-safe
42
- * value no greater than the shared ceiling. `setTimeout` silently coerces a
43
- * non-finite delay (NaN/Infinity) or one beyond its 32-bit range to ~1 ms — an
44
- * immediate abort that would masquerade as a `DeviceFlowError("transport")`
45
- * (and, in the poll loop, as repeated timeout backoffs). Fall back to the
46
- * default instead, mirroring how the other SDKs normalize an invalid device
47
- * timeout.
32
+ * Coerce a caller-supplied request timeout to the shared clamp
33
+ * (`resolveRequestTimeoutMs`, limits.ts), falling back to the device flow's
34
+ * own 30 s default — an invalid value would otherwise become an immediate
35
+ * abort masquerading as a `DeviceFlowError("transport")` (and, in the poll
36
+ * loop, as repeated timeout backoffs).
48
37
  */
49
38
  function resolveDeviceTimeoutMs(timeoutMs) {
50
- if (!Number.isFinite(timeoutMs) || timeoutMs <= 0 || timeoutMs > MAX_DEVICE_REQUEST_TIMEOUT_MS) {
51
- return DEFAULT_DEVICE_TIMEOUT_MS;
52
- }
53
- // Whole milliseconds, at least 1: timers truncate fractional delays toward
54
- // 0, so 0.5 would become an immediate abort.
55
- return Math.max(1, Math.floor(timeoutMs));
39
+ return resolveRequestTimeoutMs(timeoutMs, DEFAULT_DEVICE_TIMEOUT_MS);
56
40
  }
57
41
  /** slow_down bumps the interval by this many seconds, sustained (RFC 8628 §3.5). */
58
42
  const SLOW_DOWN_INCREMENT_SECONDS = 5;
@@ -655,54 +639,8 @@ async function postDeviceToken(tokenEndpoint, body, customFetch, timeoutMs, sign
655
639
  signal?.removeEventListener("abort", onAbort);
656
640
  }
657
641
  }
658
- // A plain Error tagged "AbortError" rather than `new DOMException(...)`:
659
- // DOMException is not guaranteed in every JS runtime that can run this SDK
660
- // (referencing it there throws ReferenceError). isAbort() matches on
661
- // `name === "AbortError"`, so cancellation stays runtime-agnostic.
662
- function abortError() {
663
- const err = new Error("Aborted");
664
- err.name = "AbortError";
665
- return err;
666
- }
667
- /**
668
- * Races `run` against `signal`: rejects with AbortError the moment the signal
669
- * fires, even if the underlying promise NEVER settles. A cooperative fetch
670
- * already rejects on abort — this enforces the same contract on a custom fetch
671
- * that ignores its AbortSignal, so a late 200 cannot hand back a result and a
672
- * never-settling fetch cannot hold the public call past its timeout. An
673
- * already-aborted signal rejects without invoking `run`. A late settlement is
674
- * discarded (settling an already-settled promise is a no-op), and its
675
- * rejection path stays handled — no unhandled rejection escapes.
676
- */
677
- function raceAbort(signal, run) {
678
- return new Promise((resolve, reject) => {
679
- const onAbort = () => reject(abortError());
680
- if (signal.aborted) {
681
- onAbort();
682
- return;
683
- }
684
- signal.addEventListener("abort", onAbort, { once: true });
685
- // Microtask wrapper: a user-provided seam (custom fetch/sleepFn) can
686
- // throw SYNCHRONOUSLY despite the TS type — without this, that throw
687
- // would escape before the handlers attach and strand the listener.
688
- Promise.resolve()
689
- .then(() => {
690
- // The abort can win between entry and this microtask (the outer
691
- // promise has already rejected) — never invoke the seam post-abort;
692
- // an AbortSignal-ignoring fetch would still send the POST.
693
- if (signal.aborted)
694
- throw abortError();
695
- return run();
696
- })
697
- .then((value) => {
698
- signal.removeEventListener("abort", onAbort);
699
- resolve(value);
700
- }, (err) => {
701
- signal.removeEventListener("abort", onAbort);
702
- reject(err);
703
- });
704
- });
705
- }
642
+ // abortError and raceAbort live in limits.ts (shared with the token-exchange
643
+ // path); the poll loop and sleep below use them unchanged.
706
644
  function sleep(ms, signal) {
707
645
  return new Promise((resolve, reject) => {
708
646
  if (signal?.aborted) {
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/oauth/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/oauth/device.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"exchange.d.ts","sourceRoot":"","sources":["../../src/oauth/exchange.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,UAAU,EAGX,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,UAAU,CAAC,CAsCrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,UAAU,CAAC,CAiCrB;AA+RD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,SAAK,GAAG,OAAO,CAQ7E"}
1
+ {"version":3,"file":"exchange.d.ts","sourceRoot":"","sources":["../../src/oauth/exchange.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,UAAU,EAGX,MAAM,YAAY,CAAC;AAapB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,UAAU,CAAC,CAsCrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,UAAU,CAAC,CAiCrB;AAyUD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,SAAK,GAAG,OAAO,CAQ7E"}
@@ -4,9 +4,18 @@
4
4
  * Handles authorization code exchange and token refresh operations.
5
5
  * Supports both standard OAuth 2.0 and Basecamp's Launchpad legacy format.
6
6
  */
7
- import { MAX_TOKEN_LIFETIME_SECONDS } from "./limits.js";
7
+ import { MAX_TOKEN_LIFETIME_SECONDS, raceAbort, resolveRequestTimeoutMs } from "./limits.js";
8
8
  import { BasecampError } from "../errors.js";
9
9
  import { isLocalhost } from "../security.js";
10
+ /** Default per-request timeout (ms) for a token exchange/refresh round trip. */
11
+ const DEFAULT_TOKEN_TIMEOUT_MS = 30_000;
12
+ /**
13
+ * The redirects the token endpoint is refused (SPEC §16 "Token-Endpoint
14
+ * Transport Policy") — the same set the signed download hop refuses (§14).
15
+ * 304 is not in the set: it is a cache validator, not a redirect-with-
16
+ * Location, and falls through to the generic non-ok handling below.
17
+ */
18
+ const REDIRECT_STATUSES = [301, 302, 303, 307, 308];
10
19
  /**
11
20
  * Exchanges an authorization code for access and refresh tokens.
12
21
  *
@@ -221,24 +230,54 @@ async function readResponseWithByteLimit(response, maxBytes, httpStatus) {
221
230
  */
222
231
  async function doTokenRequest(tokenEndpoint, body, options) {
223
232
  requireHTTPS(tokenEndpoint, "token endpoint");
224
- const { fetch: customFetch = globalThis.fetch, timeoutMs = 30000 } = options;
225
- // Create abort controller for timeout
233
+ const { fetch: customFetch = globalThis.fetch, timeoutMs = DEFAULT_TOKEN_TIMEOUT_MS } = options;
234
+ // Create abort controller for timeout. The clamp closes the unbounded
235
+ // hole an unvalidated timeoutMs left open: NaN/Infinity made setTimeout
236
+ // fire at ~1 ms (an instant abort masquerading as a network failure), and
237
+ // an oversized finite value could hold a stalled request open for weeks.
226
238
  const controller = new AbortController();
227
- const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
239
+ const timeoutId = setTimeout(() => controller.abort(), resolveRequestTimeoutMs(timeoutMs, DEFAULT_TOKEN_TIMEOUT_MS));
228
240
  try {
229
- const response = await customFetch(tokenEndpoint, {
230
- method: "POST",
231
- headers: {
232
- "Content-Type": "application/x-www-form-urlencoded",
233
- Accept: "application/json",
234
- },
235
- body: body.toString(),
236
- signal: controller.signal,
241
+ // The whole round trip runs INSIDE a race against the controller's
242
+ // signal, like the device flow's POSTs: a cooperative fetch rejects on
243
+ // abort anyway, but a custom fetch that ignores its AbortSignal must not
244
+ // hold the exchange past its timeout — the race rejects the moment the
245
+ // timeout fires, and a late settlement is discarded.
246
+ const { response, responseText } = await raceAbort(controller.signal, async () => {
247
+ const raced = await customFetch(tokenEndpoint, {
248
+ method: "POST",
249
+ headers: {
250
+ "Content-Type": "application/x-www-form-urlencoded",
251
+ Accept: "application/json",
252
+ },
253
+ body: body.toString(),
254
+ signal: controller.signal,
255
+ // Never chase an attacker-influenced Location: the token endpoint may
256
+ // come from discovered metadata, and a followed 307/308 would re-POST
257
+ // the credentials wherever it points (SPEC §16).
258
+ redirect: "manual",
259
+ });
260
+ // A browser fetch answers redirect: "manual" with an opaqueredirect —
261
+ // type "opaqueredirect", status 0, no headers — rather than the 3xx
262
+ // Node hands back, so the status table below cannot see it. Refuse it
263
+ // by type; the real status is hidden, so the error carries none.
264
+ if (raced.type === "opaqueredirect") {
265
+ void raced.body?.cancel().catch(() => { });
266
+ throw new BasecampError("api_error", "redirect on the token endpoint is not followed (status hidden by the browser's opaque redirect)");
267
+ }
268
+ // A suppressed redirect is refused by status BEFORE any body read, so a
269
+ // 3xx whose body stalls forever cannot degrade into a timeout. Release
270
+ // the unread stream (non-blocking) so refusals don't retain sockets.
271
+ if (REDIRECT_STATUSES.includes(raced.status)) {
272
+ void raced.body?.cancel().catch(() => { });
273
+ throw new BasecampError("api_error", `redirect ${raced.status} on the token endpoint is not followed`, { httpStatus: raced.status });
274
+ }
275
+ const MAX_TOKEN_RESPONSE_BYTES = 1 * 1024 * 1024; // 1 MB
276
+ // Use streaming reader with true byte-level limit enforcement.
277
+ // This handles cases where Content-Length is absent or inaccurate.
278
+ const racedText = await readResponseWithByteLimit(raced, MAX_TOKEN_RESPONSE_BYTES, raced.status);
279
+ return { response: raced, responseText: racedText };
237
280
  });
238
- const MAX_TOKEN_RESPONSE_BYTES = 1 * 1024 * 1024; // 1 MB
239
- // Use streaming reader with true byte-level limit enforcement.
240
- // This handles cases where Content-Length is absent or inaccurate.
241
- const responseText = await readResponseWithByteLimit(response, MAX_TOKEN_RESPONSE_BYTES, response.status);
242
281
  let data;
243
282
  try {
244
283
  data = JSON.parse(responseText);
@@ -1 +1 @@
1
- {"version":3,"file":"exchange.js","sourceRoot":"","sources":["../../src/oauth/exchange.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAmB7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAwB,EACxB,UAAwB,EAAE;IAE1B,2BAA2B;IAC3B,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3B,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,4BAA4B,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,gCAAgC,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtB,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC;IACjE,CAAC;IAED,qBAAqB;IACrB,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;IAEnC,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC5B,+CAA+C;QAC/C,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,qBAAqB;QACrB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAExC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,cAAc,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAuB,EACvB,UAAwB,EAAE;IAE1B,2BAA2B;IAC3B,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3B,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,4BAA4B,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1B,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,2BAA2B,CAAC,CAAC;IACrE,CAAC;IAED,qBAAqB;IACrB,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;IAEnC,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC5B,+CAA+C;QAC/C,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC9B,CAAC;SAAM,CAAC;QACN,qBAAqB;QACrB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAEhD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,cAAc,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,GAAW,EAAE,KAAa;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,GAAG,KAAK,oBAAoB,GAAG,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,aAAa;YAAE,MAAM,GAAG,CAAC;QAC5C,MAAM,IAAI,aAAa,CAAC,YAAY,EAAE,WAAW,KAAK,KAAK,GAAG,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,MAAqB;IAC/C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpC,mDAAmD;IACnD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACzD,sEAAsE;IACtE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,yBAAyB,CACtC,QAAkB,EAClB,QAAgB,EAChB,UAAkB;IAElB,yEAAyE;IACzE,MAAM,kBAAkB,GAAG,kBAAkB,CAC3C,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CACvC,CAAC;IAEF,oDAAoD;IACpD,IAAI,kBAAkB,KAAK,IAAI,IAAI,kBAAkB,GAAG,QAAQ,EAAE,CAAC;QACjE,MAAM,IAAI,aAAa,CACrB,WAAW,EACX,6CAA6C,kBAAkB,eAAe,QAAQ,GAAG,EACzF,EAAE,UAAU,EAAE,CACf,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,wFAAwF;QACxF,yDAAyD;QACzD,IAAI,kBAAkB,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,aAAa,CACrB,WAAW,EACX,6FAA6F,EAC7F,EAAE,UAAU,EAAE,CACf,CAAC;QACJ,CAAC;QACD,2DAA2D;QAC3D,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,4BAA4B;IAC5B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI;gBAAE,MAAM;YAEhB,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;YAC3B,IAAI,UAAU,GAAG,QAAQ,EAAE,CAAC;gBAC1B,MAAM,CAAC,MAAM,EAAE,CAAC;gBAChB,MAAM,IAAI,aAAa,CACrB,WAAW,EACX,6BAA6B,UAAU,gBAAgB,QAAQ,GAAG,EAClE,EAAE,UAAU,EAAE,CACf,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,yBAAyB;IACzB,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IACzB,CAAC;IAED,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAC3B,aAAqB,EACrB,IAAqB,EACrB,OAAqB;IAErB,YAAY,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;IAE9C,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAE7E,sCAAsC;IACtC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IAElE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE;YAChD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,mCAAmC;gBACnD,MAAM,EAAE,kBAAkB;aAC3B;YACD,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;YACrB,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;QAEH,MAAM,wBAAwB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO;QAEzD,+DAA+D;QAC/D,mEAAmE;QACnE,MAAM,YAAY,GAAG,MAAM,yBAAyB,CAClD,QAAQ,EACR,wBAAwB,EACxB,QAAQ,CAAC,MAAM,CAChB,CAAC;QAEF,IAAI,IAA2C,CAAC;QAEhD,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,oEAAoE;YACpE,oEAAoE;YACpE,mEAAmE;YACnE,gEAAgE;YAChE,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,gCAAgC,EAAE;gBACrE,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,sEAAsE;QACtE,oEAAoE;QACpE,oEAAoE;QACpE,iEAAiE;QACjE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACrE,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,qCAAqC,EAAE;gBAC1E,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,2BAA2B;QAC3B,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,IAA0B,CAAC;YAC7C,uEAAuE;YACvE,mEAAmE;YACnE,gDAAgD;YAChD,MAAM,UAAU,GACd,CAAC,OAAO,SAAS,CAAC,iBAAiB,KAAK,QAAQ,IAAI,SAAS,CAAC,iBAAiB,CAAC;gBAChF,CAAC,OAAO,SAAS,CAAC,KAAK,KAAK,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC;gBACxD,sBAAsB,CAAC;YACzB,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;YAExF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;gBACnE,MAAM,IAAI,aAAa,CAAC,eAAe,EAAE,OAAO,EAAE;oBAChD,UAAU,EAAE,QAAQ,CAAC,MAAM;oBAC3B,IAAI,EAAE,mEAAmE;iBAC1E,CAAC,CAAC;YACL,CAAC;YAED,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE;gBAC5C,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,4BAA4B;QAC5B,MAAM,SAAS,GAAG,IAAwB,CAAC;QAE3C,uEAAuE;QACvE,uEAAuE;QACvE,8CAA8C;QAC9C,IAAI,OAAO,SAAS,CAAC,YAAY,KAAK,QAAQ,IAAI,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,CAAC;YAChF,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,mDAAmD,EAAE;gBACxF,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,yEAAyE;QACzE,kEAAkE;QAClE,qEAAqE;QACrE,IAAI,SAAS,CAAC,UAAU,IAAI,IAAI,IAAI,CAAC,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ,IAAI,SAAS,CAAC,UAAU,KAAK,EAAE,CAAC,EAAE,CAAC;YAC9G,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,mEAAmE,EAAE;gBACxG,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,kEAAkE;QAClE,sEAAsE;QACtE,uEAAuE;QACvE,0CAA0C;QAC1C,IAAI,SAAS,CAAC,aAAa,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACnF,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,+CAA+C,EAAE;gBACpF,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACnE,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,uCAAuC,EAAE;gBAC5E,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,IACE,SAAS,CAAC,UAAU,IAAI,IAAI;YAC5B,CAAC,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ;gBACvC,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC;gBACvC,SAAS,CAAC,UAAU,IAAI,CAAC;gBACzB,SAAS,CAAC,UAAU,GAAG,0BAA0B,CAAC,EACpD,CAAC;YACD,MAAM,IAAI,aAAa,CACrB,WAAW,EACX,oFAAoF,0BAA0B,UAAU,EACxH,EAAE,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,CAChC,CAAC;QACJ,CAAC;QAED,sEAAsE;QACtE,mEAAmE;QACnE,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,IAAI,CAAC,OAAO,SAAS,CAAC,QAAQ,KAAK,QAAQ,IAAI,SAAS,CAAC,QAAQ,KAAK,EAAE,CAAC,EAAE,CAAC;YACxG,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,iEAAiE,EAAE;gBACtG,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,WAAW,EAAE,SAAS,CAAC,YAAY;YACnC,kEAAkE;YAClE,sEAAsE;YACtE,YAAY,EAAE,SAAS,CAAC,aAAa,IAAI,SAAS;YAClD,SAAS,EAAE,SAAS,CAAC,UAAU,IAAI,QAAQ;YAC3C,SAAS,EAAE,SAAS,CAAC,UAAU;YAC/B,SAAS,EAAE,SAAS,CAAC,UAAU;gBAC7B,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC;gBACpD,CAAC,CAAC,SAAS;YACb,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,SAAS;YACnC,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,SAAS;SAC1C,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,aAAa,EAAE,CAAC;YACjC,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;YACzB,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC9B,MAAM,IAAI,aAAa,CAAC,SAAS,EAAE,yBAAyB,EAAE;oBAC5D,KAAK,EAAE,GAAG;oBACV,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,IAAI,aAAa,CAAC,SAAS,EAAE,yBAAyB,GAAG,CAAC,OAAO,EAAE,EAAE;gBACzE,KAAK,EAAE,GAAG;gBACV,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,aAAa,CAAC,SAAS,EAAE,yCAAyC,EAAE;YAC5E,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,cAAc,CAAC,KAAiB,EAAE,aAAa,GAAG,EAAE;IAClE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,0CAA0C;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC;IACtC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"exchange.js","sourceRoot":"","sources":["../../src/oauth/exchange.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  /**
2
- * Shared OAuth limits (SPEC §16), split out so the token-exchange path can
3
- * import them without pulling the whole device-flow module.
2
+ * Shared OAuth request primitives (SPEC §16), split out so the token-exchange
3
+ * path can import them without pulling the whole device-flow module: the
4
+ * token-lifetime ceiling, the per-request timeout resolver, and the abort
5
+ * race that bounds a round trip even when a custom fetch ignores its
6
+ * AbortSignal.
4
7
  */
5
8
  /**
6
9
  * Upper bound (seconds) for an OAuth token's `expires_in`: 2_147_483_647 s
@@ -12,4 +15,32 @@
12
15
  * across all five SDKs.
13
16
  */
14
17
  export declare const MAX_TOKEN_LIFETIME_SECONDS = 2147483647;
18
+ /**
19
+ * Ceiling (ms) for a caller-supplied per-request timeout: the shared 3600 s
20
+ * bound (Go's maxDeviceRequestTimeout, Python's _MAX_DEVICE_REQUEST_TIMEOUT,
21
+ * Ruby's Fetcher::MAX_REQUEST_TIMEOUT). A large finite value would hold a
22
+ * stalled request open for weeks, defeating the bounded-request guarantee.
23
+ */
24
+ export declare const MAX_REQUEST_TIMEOUT_MS: number;
25
+ /**
26
+ * Coerce a caller-supplied request timeout (ms) to a finite, positive,
27
+ * timer-safe value no greater than the shared ceiling. `setTimeout` silently
28
+ * coerces a non-finite delay (NaN/Infinity) or one beyond its 32-bit range to
29
+ * ~1 ms — an immediate abort that would masquerade as a transport failure.
30
+ * Fall back to the operation's own default instead, mirroring how the other
31
+ * SDKs normalize an invalid OAuth request timeout.
32
+ */
33
+ export declare function resolveRequestTimeoutMs(timeoutMs: number, defaultMs: number): number;
34
+ export declare function abortError(): Error;
35
+ /**
36
+ * Races `run` against `signal`: rejects with AbortError the moment the signal
37
+ * fires, even if the underlying promise NEVER settles. A cooperative fetch
38
+ * already rejects on abort — this enforces the same contract on a custom fetch
39
+ * that ignores its AbortSignal, so a late 200 cannot hand back a result and a
40
+ * never-settling fetch cannot hold the public call past its timeout. An
41
+ * already-aborted signal rejects without invoking `run`. A late settlement is
42
+ * discarded (settling an already-settled promise is a no-op), and its
43
+ * rejection path stays handled — no unhandled rejection escapes.
44
+ */
45
+ export declare function raceAbort<T>(signal: AbortSignal, run: () => Promise<T>): Promise<T>;
15
46
  //# sourceMappingURL=limits.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"limits.d.ts","sourceRoot":"","sources":["../../src/oauth/limits.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,aAAgB,CAAC"}
1
+ {"version":3,"file":"limits.d.ts","sourceRoot":"","sources":["../../src/oauth/limits.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,aAAgB,CAAC;AAExD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,QAAc,CAAC;AAElD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAOpF;AAMD,wBAAgB,UAAU,IAAI,KAAK,CAIlC;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA8BnF"}
@@ -1,6 +1,9 @@
1
1
  /**
2
- * Shared OAuth limits (SPEC §16), split out so the token-exchange path can
3
- * import them without pulling the whole device-flow module.
2
+ * Shared OAuth request primitives (SPEC §16), split out so the token-exchange
3
+ * path can import them without pulling the whole device-flow module: the
4
+ * token-lifetime ceiling, the per-request timeout resolver, and the abort
5
+ * race that bounds a round trip even when a custom fetch ignores its
6
+ * AbortSignal.
4
7
  */
5
8
  /**
6
9
  * Upper bound (seconds) for an OAuth token's `expires_in`: 2_147_483_647 s
@@ -12,4 +15,75 @@
12
15
  * across all five SDKs.
13
16
  */
14
17
  export const MAX_TOKEN_LIFETIME_SECONDS = 2_147_483_647;
18
+ /**
19
+ * Ceiling (ms) for a caller-supplied per-request timeout: the shared 3600 s
20
+ * bound (Go's maxDeviceRequestTimeout, Python's _MAX_DEVICE_REQUEST_TIMEOUT,
21
+ * Ruby's Fetcher::MAX_REQUEST_TIMEOUT). A large finite value would hold a
22
+ * stalled request open for weeks, defeating the bounded-request guarantee.
23
+ */
24
+ export const MAX_REQUEST_TIMEOUT_MS = 3600 * 1000;
25
+ /**
26
+ * Coerce a caller-supplied request timeout (ms) to a finite, positive,
27
+ * timer-safe value no greater than the shared ceiling. `setTimeout` silently
28
+ * coerces a non-finite delay (NaN/Infinity) or one beyond its 32-bit range to
29
+ * ~1 ms — an immediate abort that would masquerade as a transport failure.
30
+ * Fall back to the operation's own default instead, mirroring how the other
31
+ * SDKs normalize an invalid OAuth request timeout.
32
+ */
33
+ export function resolveRequestTimeoutMs(timeoutMs, defaultMs) {
34
+ if (!Number.isFinite(timeoutMs) || timeoutMs <= 0 || timeoutMs > MAX_REQUEST_TIMEOUT_MS) {
35
+ return defaultMs;
36
+ }
37
+ // Whole milliseconds, at least 1: timers truncate fractional delays toward
38
+ // 0, so 0.5 would become an immediate abort.
39
+ return Math.max(1, Math.floor(timeoutMs));
40
+ }
41
+ // A plain Error tagged "AbortError" rather than `new DOMException(...)`:
42
+ // DOMException is not guaranteed in every JS runtime that can run this SDK
43
+ // (referencing it there throws ReferenceError). isAbort() matches on
44
+ // `name === "AbortError"`, so cancellation stays runtime-agnostic.
45
+ export function abortError() {
46
+ const err = new Error("Aborted");
47
+ err.name = "AbortError";
48
+ return err;
49
+ }
50
+ /**
51
+ * Races `run` against `signal`: rejects with AbortError the moment the signal
52
+ * fires, even if the underlying promise NEVER settles. A cooperative fetch
53
+ * already rejects on abort — this enforces the same contract on a custom fetch
54
+ * that ignores its AbortSignal, so a late 200 cannot hand back a result and a
55
+ * never-settling fetch cannot hold the public call past its timeout. An
56
+ * already-aborted signal rejects without invoking `run`. A late settlement is
57
+ * discarded (settling an already-settled promise is a no-op), and its
58
+ * rejection path stays handled — no unhandled rejection escapes.
59
+ */
60
+ export function raceAbort(signal, run) {
61
+ return new Promise((resolve, reject) => {
62
+ const onAbort = () => reject(abortError());
63
+ if (signal.aborted) {
64
+ onAbort();
65
+ return;
66
+ }
67
+ signal.addEventListener("abort", onAbort, { once: true });
68
+ // Microtask wrapper: a user-provided seam (custom fetch/sleepFn) can
69
+ // throw SYNCHRONOUSLY despite the TS type — without this, that throw
70
+ // would escape before the handlers attach and strand the listener.
71
+ Promise.resolve()
72
+ .then(() => {
73
+ // The abort can win between entry and this microtask (the outer
74
+ // promise has already rejected) — never invoke the seam post-abort;
75
+ // an AbortSignal-ignoring fetch would still send the POST.
76
+ if (signal.aborted)
77
+ throw abortError();
78
+ return run();
79
+ })
80
+ .then((value) => {
81
+ signal.removeEventListener("abort", onAbort);
82
+ resolve(value);
83
+ }, (err) => {
84
+ signal.removeEventListener("abort", onAbort);
85
+ reject(err);
86
+ });
87
+ });
88
+ }
15
89
  //# sourceMappingURL=limits.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"limits.js","sourceRoot":"","sources":["../../src/oauth/limits.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"limits.js","sourceRoot":"","sources":["../../src/oauth/limits.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,aAAa,CAAC;AAExD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,GAAG,IAAI,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAiB,EAAE,SAAiB;IAC1E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,IAAI,SAAS,GAAG,sBAAsB,EAAE,CAAC;QACxF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,2EAA2E;IAC3E,6CAA6C;IAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,yEAAyE;AACzE,2EAA2E;AAC3E,qEAAqE;AACrE,mEAAmE;AACnE,MAAM,UAAU,UAAU;IACxB,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;IACjC,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC;IACxB,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAI,MAAmB,EAAE,GAAqB;IACrE,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,qEAAqE;QACrE,qEAAqE;QACrE,mEAAmE;QACnE,OAAO,CAAC,OAAO,EAAE;aACd,IAAI,CAAC,GAAG,EAAE;YACT,gEAAgE;YAChE,oEAAoE;YACpE,2DAA2D;YAC3D,IAAI,MAAM,CAAC,OAAO;gBAAE,MAAM,UAAU,EAAE,CAAC;YACvC,OAAO,GAAG,EAAE,CAAC;QACf,CAAC,CAAC;aACD,IAAI,CACH,CAAC,KAAK,EAAE,EAAE;YACR,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;YACN,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CACF,CAAC;IACN,CAAC,CAAC,CAAC;AACL,CAAC"}
package/dist/retry.d.ts CHANGED
@@ -25,6 +25,29 @@ export declare const NO_RETRY_CONFIG: RetryConfig;
25
25
  * `MAX_JITTER_MS`.
26
26
  */
27
27
  export declare const MAX_BACKOFF_DELAY_MS = 30000;
28
+ /**
29
+ * Converts server-directed `Retry-After` seconds into a delay a timer will
30
+ * actually serve.
31
+ *
32
+ * `Retry-After` is exempt from the backoff ceiling above (SPEC §7) — it is the
33
+ * server's instruction, not our computation — but it is not exempt from the
34
+ * platform. Above the 32-bit bound `setTimeout` does not sleep longer, it
35
+ * sleeps 1ms, so an unclamped `Retry-After: 2147484` (a hair over 24.85 days)
36
+ * or any HTTP-date more than that far out becomes a tight retry loop against a
37
+ * server that asked for a month — the exact failure the ceiling exists to
38
+ * prevent, arriving through the one value exempt from it.
39
+ *
40
+ * Clamping rather than falling back to backoff follows `oauth/device.ts`:
41
+ * waiting the longest the platform can schedule honours the throttle, where a
42
+ * ~1s backoff would defeat it.
43
+ *
44
+ * This lives HERE, at the scheduling boundary, and not in the parser. The
45
+ * parser's result is also the public `BasecampError.retryAfter`, and clamping
46
+ * there reported a server's 3000000 to callers as 2147483 — the SDK
47
+ * understating what it was told. Parsing and scheduling are different questions
48
+ * and only one of them has a timer.
49
+ */
50
+ export declare function timerSafeDelayMs(retryAfterSeconds: number): number;
28
51
  /**
29
52
  * Lifecycle seams the retry loop emits through. The loop begins EVERY attempt
30
53
  * and finalizes the attempts it abandons (before the backoff sleep); the
@@ -1 +1 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,aAAa,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC/C,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,+EAA+E;AAC/E,eAAO,MAAM,oBAAoB,EAAE,WAKlC,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,eAAe,EAAE,WAK7B,CAAC;AAIF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,QAAS,CAAC;AAE3C;;;;;;;GAOG;AACH,MAAM,WAAW,SAAS;IACxB,qEAAqE;IACrE,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D,kFAAkF;IAClF,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACtE;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC/B,QAAQ,CAAC,MAAM,EAAE,OAAO;gBAAf,MAAM,EAAE,OAAO;CAIrC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,EACnD,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,SAAS,EACf,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAC1B,OAAO,CAAC,QAAQ,CAAC,CAqFnB;AAwCD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,EAC/B,OAAO,EAAE,MAAM,GACd,MAAM,CAyBR;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAMlF;AAED;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBrE"}
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,aAAa,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC/C,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,+EAA+E;AAC/E,eAAO,MAAM,oBAAoB,EAAE,WAKlC,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,eAAe,EAAE,WAK7B,CAAC;AAIF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,QAAS,CAAC;AAU3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,SAAS;IACxB,qEAAqE;IACrE,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D,kFAAkF;IAClF,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACtE;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC/B,QAAQ,CAAC,MAAM,EAAE,OAAO;gBAAf,MAAM,EAAE,OAAO;CAIrC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,EACnD,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,SAAS,EACf,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAC1B,OAAO,CAAC,QAAQ,CAAC,CAwFnB;AAwCD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,EAC/B,OAAO,EAAE,MAAM,GACd,MAAM,CAyBR;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAMlF;AAED;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBrE"}