hotstaq 0.9.1 → 0.9.2

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.
@@ -111,6 +111,31 @@ export interface IHotValidReturn {
111
111
  */
112
112
  value?: any;
113
113
  }
114
+ /**
115
+ * Options for `HotStaq.installFetchInterceptors`. All fields are optional —
116
+ * the bare-minimum install (with no options) just gives you the per-nav
117
+ * AbortController, which is the universally-useful piece. The 401 hook is
118
+ * opinionated session-out UX and is left to each app to wire up.
119
+ */
120
+ export interface IHotFetchInterceptorOptions {
121
+ /**
122
+ * Request URLs that should bypass both the per-nav AbortController and
123
+ * the 401 hook. A request is skipped if its URL starts with any string
124
+ * here. Use this for endpoints that must survive SPA navigation (the
125
+ * canonical case is OIDC's `/token` — silent token refresh shouldn't
126
+ * die just because the user clicked a sidebar link mid-flight).
127
+ */
128
+ skipUrls?: string[];
129
+ /**
130
+ * Called when an authenticated `fetch(...)` returns a 401 response.
131
+ * The handler runs after the response resolves; the response itself is
132
+ * still returned to the original caller, so existing error-handling
133
+ * paths in app code keep working. Use this to clear local credentials
134
+ * and surface "your session expired" UX. Skipped for URLs in
135
+ * `skipUrls` (those 401s are the responsibility of the refresh path).
136
+ */
137
+ on401?: (response: Response, request: RequestInfo, init: RequestInit) => void;
138
+ }
114
139
  export interface ParsedInterface {
115
140
  type: string;
116
141
  typeName?: string;
@@ -252,6 +277,33 @@ export declare class HotStaq implements IHotStaq {
252
277
  * Event fired after SPA navigation completes.
253
278
  */
254
279
  static onAfterNavigate: (path: string) => void | Promise<void>;
280
+ /**
281
+ * If true (the default), `enableSPA` automatically wires up fetch
282
+ * interceptors that abort the previous page's pending requests when
283
+ * the user navigates between SPA routes. Set this to false BEFORE the
284
+ * `<hotstaq>` element runs (e.g. in a <script> earlier in <head>) to
285
+ * opt out — useful if your frontend already wraps `window.fetch` and
286
+ * doesn't want HotStaq to compose with it.
287
+ */
288
+ static autoInstallFetchInterceptors: boolean;
289
+ /**
290
+ * The current page's AbortController. Aborted on every SPA navigation
291
+ * so previous-page fetches die before the new page's requests go out.
292
+ * `installFetchInterceptors` populates this.
293
+ */
294
+ static navAbort: AbortController;
295
+ /**
296
+ * Internal: tracks whether `installFetchInterceptors` has wrapped
297
+ * `window.fetch` and `onBeforeNavigate`. Exposed for tests; do not
298
+ * toggle from app code.
299
+ */
300
+ protected static fetchInterceptorsInstalled: boolean;
301
+ /**
302
+ * Internal: most recent options passed to `installFetchInterceptors`,
303
+ * read by the wrapped fetch on every call so apps can update
304
+ * `skipUrls` / `on401` after install without re-wrapping.
305
+ */
306
+ protected static fetchInterceptorOptions: IHotFetchInterceptorOptions;
255
307
  /**
256
308
  * Errors to execute when something goes wrong.
257
309
  */
@@ -658,6 +710,35 @@ export declare class HotStaq implements IHotStaq {
658
710
  * @param processor The HotStaq processor instance to use for processing pages.
659
711
  */
660
712
  static enableSPA(target: string, processor?: HotStaq): void;
713
+ /**
714
+ * Install fetch interceptors for SPA-mode frontends. Two pieces:
715
+ *
716
+ * (a) Per-navigation `AbortController`. Every `window.fetch(...)`
717
+ * that doesn't already pass its own `signal` gets attached to
718
+ * `HotStaq.navAbort.signal`. On every SPA navigation the
719
+ * controller is aborted and replaced, so the previous page's
720
+ * in-flight requests die cleanly before the new page makes its
721
+ * own. Without this, rapid clicks accumulate abandoned fetches
722
+ * that occupy the browser's 6-per-origin connection cap and
723
+ * block subsequent page loads.
724
+ *
725
+ * (b) Optional 401 hook. If `options.on401` is provided, any 401
726
+ * response from a non-skipped URL invokes the hook so the app
727
+ * can clear local credentials and surface "session expired"
728
+ * UX. The response is still returned to the original caller —
729
+ * the hook is purely additive.
730
+ *
731
+ * Idempotent: re-calling updates `skipUrls` / `on401` in place
732
+ * without re-wrapping `window.fetch` or `onBeforeNavigate`. Called
733
+ * automatically by `enableSPA` when
734
+ * `HotStaq.autoInstallFetchInterceptors === true` (the default); set
735
+ * that flag to `false` before the `<hotstaq>` element processes if
736
+ * your app needs to manage fetch wrapping itself.
737
+ *
738
+ * @param options Skip-list and 401 hook. May be re-passed later to
739
+ * update either field.
740
+ */
741
+ static installFetchInterceptors(options?: IHotFetchInterceptorOptions): void;
661
742
  /**
662
743
  * Prefetch all .hott files from the routerManager in the background.
663
744
  * This preloads route content into the processor's file cache so that
@@ -1 +1 @@
1
- {"version":3,"file":"HotStaq.d.ts","sourceRoot":"","sources":["../../src/HotStaq.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HotStaq.d.ts","sourceRoot":"","sources":["../../src/HotStaq.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAe,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,aAAa,EAAO,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAIlD,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACzG,OAAO,EAAuB,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAO3E;;GAEG;AACH,MAAM,WAAW,eAAe;IAE/B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,CAAC;IACX;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAE5C;;;OAGG;IACH,eAAe,CAAC,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;KAAE,CAAC;IAClD;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,KAAK,eAAe,CAAC,GAChK,CAAC,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AAEzI,MAAM,MAAM,0BAA0B,GAAG;IAAE,CAAC,YAAY,EAAE,MAAM,GAAG,uBAAuB,GAAG,CAAC,MAAM,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC;CAAE,CAAC;AAEzI,oBAAY,kBAAkB;IAE7B;;OAEG;IACH,MAAM,IAAA;IACN;;OAEG;IACH,MAAM,IAAA;IACN;;OAEG;IACH,MAAM,IAAA;CACN;AAED,MAAM,WAAW,eAAe;IAE/B;;OAEG;IACH,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC;CACZ;AAED;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAE3C;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;CAC9E;AAED,MAAM,WAAW,eAAe;IAE/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,CAAC;IACpD,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IAExB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACpC;;OAEG;IACH,OAAO,CAAC,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IACxC;;;;OAIG;IACH,UAAU,CAAC,EAAE;QACZ,CAAC,OAAO,EAAE,MAAM,GAAG;YACjB,aAAa,EAAE,CAAC,KAAM,IAAI,EAAE,aAAa,GAAG,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,CAAC;YACpF,SAAS,EAAE,OAAO,CAAC;YACnB,GAAG,EAAE,MAAM,CAAA;SACX,CAAA;KACD,CAAC;IACH;;OAEG;IACH,KAAK,CAAC,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACpC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,OAAQ,YAAW,QAAQ;IAEvC;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,CAAW;IACjC;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,OAAO,CAAS;IAC9B;;OAEG;IACH,MAAM,CAAC,iBAAiB,EAAE,OAAO,CAAS;IAC1C;;OAEG;IACH,MAAM,CAAC,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAQ;IACrD;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAQ;IACzD;;;;OAIG;IACH,SAAS,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAQ;IAC/D;;OAEG;IACH,MAAM,CAAC,mBAAmB,EAAE,OAAO,CAAQ;IAC3C;;;;;OAKG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,CAAQ;IAChC;;;OAGG;IACH,MAAM,CAAC,aAAa,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG;YAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,YAAY,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,CAAC;SAAE,CAAA;KAAE,CAAM;IAC1H;;OAEG;IACH,MAAM,CAAC,eAAe,EAAE,MAAM,EAAE,CAAM;IACtC;;OAEG;IACH,MAAM,CAAC,YAAY,EAAE,OAAO,CAAQ;IACpC;;OAEG;IACH,MAAM,CAAC,UAAU,EAAE,OAAO,CAAS;IACnC;;;OAGG;IACH,MAAM,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAQ;IAC7E;;OAEG;IACH,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAQ;IACtE;;;;;;;OAOG;IACH,MAAM,CAAC,4BAA4B,EAAE,OAAO,CAAQ;IACpD;;;;OAIG;IACH,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAQ;IACxC;;;;OAIG;IACH,SAAS,CAAC,MAAM,CAAC,0BAA0B,EAAE,OAAO,CAAS;IAC7D;;;;OAIG;IACH,SAAS,CAAC,MAAM,CAAC,uBAAuB,EAAE,2BAA2B,CAAM;IAC3E;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG;YAAE,aAAa,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;SAAE,CAAC;KAAE,CAAM;IACvG;;;OAGG;IACH,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EACvF,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAQ;IACzE;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,0BAA0B,CAAC;KAAE,CAAM;IAC3F;;;OAGG;IACH,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EACxF,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAQ;IACzE;;OAEG;IACH,IAAI,EAAE,aAAa,CAAC;IACpB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,KAAK,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACnC;;OAEG;IACH,OAAO,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;IACvC;;;;OAIG;IACH,UAAU,EAAE;QACX,CAAC,OAAO,EAAE,MAAM,GAAG;YACjB,aAAa,EAAE,CAAC,KAAM,IAAI,EAAE,aAAa,GAAG,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,CAAC;YACpF,SAAS,EAAE,OAAO,CAAC;YACnB,GAAG,EAAE,MAAM,CAAA;SACX,CAAA;KACD,CAAC;IACH;;OAEG;IACH,KAAK,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACnC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,UAAU,EAAE,GAAG,CAAC;IAChB;;OAEG;IACH,OAAO,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC;gBAE1B,IAAI,GAAE,QAAa;IA8FhC;;OAEG;IACH,MAAM,CAAC,aAAa,CAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE,mBAAmB,GAAE,MAAa,GAAG,OAAO;IAuDlJ;;OAEG;IACH,MAAM,CAAC,eAAe,IAAK,IAAI;IAwa/B;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,GAAG,0BAA0B,GAAG,IAAI;IAKvG;;OAEG;IACH,MAAM,CAAC,YAAY,CAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IA0C5C;;OAEG;IACH,MAAM,CAAC,YAAY,CAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAK1C;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,CAAC,EAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAuBlC;;;;OAIG;IACH,MAAM,CAAC,kCAAkC,CAAC,MAAM,EAAE,eAAe,GAAG,0BAA0B;IAsE9F;;;;;OAKG;WACU,iCAAiC,CAAE,aAAa,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;KAAE,EACvF,WAAW,GAAE,OAAc,EAC3B,OAAO,GAAE,4BAAmC,GAC1C,OAAO,CAAC,0BAA0B,CAAC;IA8CvC;;OAEG;WACU,QAAQ,CAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,GAAE,OAAc,EACzI,cAAc,GAAE,OAAc,EAAE,OAAO,GAAE,iBAA4C,GAAG,OAAO,CAAC,GAAG,CAAC;IAcrG;;;;;OAKG;WACU,aAAa,CAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAC5F,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,GAAE,OAAc,EAC1E,cAAc,GAAE,OAAc,EAAE,OAAO,GAAE,iBAA4C,GAAG,OAAO,CAAC,GAAG,CAAC;WAcxF,eAAe,CAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAC9F,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,GAAE,iBAA4C,GAAG,OAAO,CAAC,GAAG,CAAC;IAchH;;;;;OAKG;WACU,oBAAoB,CAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EACnG,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,GAAE,iBAA4C,GAAG,OAAO,CAAC,GAAG,CAAC;IAc1I;;OAEG;IACH,MAAM,CAAC,cAAc,CAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,GAAE,OAAc,EAAE,cAAc,GAAE,OAAc,GAAG,GAAG;IA4BtH;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAc,EAAE,cAAc,GAAE,OAAc,GAAG,GAAG;IAarJ;;;OAGG;IACH,MAAM,CAAC,qBAAqB,CAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,GAAG,GAAG;IAgBtF;;;;;OAKG;IACH,MAAM,CAAC,0BAA0B,CAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG;IAarH;;;;OAIG;IACH,MAAM,CAAC,YAAY,CAAE,KAAK,EAAE,GAAG,GAAG,OAAO;IAQzC;;OAEG;IACH,MAAM,CAAC,YAAY,CAAE,OAAO,EAAE,MAAM;IAuBpC;;OAEG;WACU,IAAI,CAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1D;;OAEG;IACH,OAAO,CAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAK7B;;OAEG;IACH,OAAO,CAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAKnC;;OAEG;IACH,SAAS,CAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI;IAKjD;;OAEG;IACH,SAAS,CAAE,IAAI,EAAE,MAAM,GAAG,SAAS;IAKnC;;OAEG;IACH,OAAO,CAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAa7B;;OAEG;IACH,OAAO,CAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc,GAAG,OAAO;IAsBxD;;;;;;;OAOG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG;IAkBhE;;OAEG;IACH,YAAY,CAAE,aAAa,EAAE,CAAC,KAAK,IAAI,EAAE,aAAa,GAAG,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,EAAE,GAAG,GAAE,MAAa,EACnH,cAAc,GAAE,wBAAoC,GAAG,IAAI;IAgB5D;;OAEG;IACH,MAAM,CAAC,OAAO,CAAE,GAAG,EAAE,MAAM,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;KAAE;IA4B1E;;OAEG;IACH,MAAM,CAAC,aAAa,CAAE,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,EAAE;IA+CnH;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAE,WAAW,EAAE,MAAM,EAAE,cAAc,GAAE,OAAe,GAAG,OAAO;IAuBvF;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAOvE;;;;OAIG;IACH,MAAM,CAAC,gCAAgC,CAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IA0DnE;;;;;OAKG;IACH,MAAM,CAAC,gCAAgC,CAAE,KAAK,EAAE,uBAAuB,GAAG,GAAG;IA0C7E;;;;OAIG;IACH,MAAM,CAAC,sBAAsB,CAAE,IAAI,EAAE,cAAc,GAAG,MAAM;IAmB5D;;;;OAIG;IACH,MAAM,CAAC,sBAAsB,CAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG;IA+BvE;;OAEG;IACG,cAAc,CAAE,MAAM,GAAE,SAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqL9D;;;OAGG;IACG,WAAW,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+C/C;;OAEG;IACG,WAAW,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB/C;;;OAGG;IACG,YAAY,CAAE,KAAK,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG;YAAE,GAAG,CAAC,EAAE,MAAM,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAC;SAAE,CAAA;KAAE,EACpG,mBAAmB,GAAE,OAAe,EAAE,cAAc,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAuEtF;;OAEG;IACG,eAAe,CAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,MAAW,EAAE,GAAG,GAAE,MAAa,EAC5E,SAAS,GAAE,MAA8B,EAAE,QAAQ,GAAE,OAAc,EACnE,IAAI,GAAE,GAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IA0TpC;;;;;;OAMG;IACG,mBAAmB,CAAE,UAAU,EAAE,GAAG,EAAE,SAAS,GAAE,MAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAerG;;OAEG;IACH,SAAS,CAAE,MAAM,EAAE,SAAS,GAAG,IAAI;IAKnC;;OAEG;IACH,iBAAiB,IAAK,MAAM,EAAE;IAiB9B;;OAEG;IACH,iBAAiB,IAAK,MAAM,EAAE;IAiB9B;;OAEG;IACH,mBAAmB,CAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAwC1C;;OAEG;IACH,gBAAgB,CAAE,IAAI,EAAE,MAAM,GAAG,YAAY;IAW7C;;;;;OAKG;IACG,YAAY,CAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvE;;;;OAIG;IACG,kBAAkB,CAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB5D;;;;OAIG;IACG,kBAAkB,CAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5D;;OAEG;IACG,OAAO,CAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,GAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAQnE;;OAEG;WACU,gBAAgB,CAAE,aAAa,EAAE,MAAM,EAAE,IAAI,GAAE,MAAsB,EAAE,IAAI,GAAE,GAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBtH;;OAEG;WACU,UAAU,CAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBnE;;OAEG;WACU,cAAc,CAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBvE;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAK1D;;;OAGG;WACU,SAAS,CAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0EtD;;;;;;;;OAQG;WACU,UAAU,CAAE,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAiOhF;;;;OAIG;IACH,MAAM,CAAC,cAAc,IAAK,IAAI;IAwB9B;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,OAAc,GAAG,IAAI;IAuFlE;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,MAAM,CAAC,wBAAwB,CAAE,OAAO,GAAE,2BAAgC,GAAG,IAAI;IAmFjF;;;;OAIG;IACH,MAAM,CAAC,cAAc,IAAK,IAAI;IAyB9B;;;;;OAKG;WACU,cAAc,IAAK,OAAO,CAAC,IAAI,CAAC;IAS7C;;OAEG;IACH,MAAM,CAAC,YAAY,CAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe;IAoBjE;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAE,SAAS,EAAE,OAAO,GAAG,MAAM;IAgFtD;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAE,SAAS,EAAE,MAAM,IAAI,GAAG,IAAI;IAQjD;;;OAGG;WACU,UAAU,CAAE,GAAG,EAAE,MAAM,GAAG,eAAe,EAAE,IAAI,GAAE,MAAa,EAC1E,SAAS,GAAE,OAAc,EAAE,IAAI,GAAE,GAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAgF/D;;;OAGG;WACU,cAAc,CAAE,OAAO,EAAE,MAAM,GAAG,eAAe,EAAE,IAAI,GAAE,MAAa,EACjF,SAAS,GAAE,OAAc,EAAE,IAAI,GAAE,GAAU,GAAG,OAAO,CAAC,OAAO,CAAC;CAuEhE"}
@@ -2054,6 +2054,15 @@ class HotStaq {
2054
2054
  HotStaq.spaProcessor = processor;
2055
2055
  // Restore SPA data from window backup if class properties were reset.
2056
2056
  HotStaq.restoreSpaData();
2057
+ // Wire up the per-nav AbortController unless the app opted out.
2058
+ // Without this, rapid SPA clicks leave each old page's fetches
2059
+ // running against an already-swapped target, and saturate the
2060
+ // browser's per-origin connection cap so the new page's requests
2061
+ // queue indefinitely behind abandoned ones. Apps can re-call
2062
+ // installFetchInterceptors later with `on401` / `skipUrls` to
2063
+ // layer in session-out UX without re-wrapping fetch.
2064
+ if (HotStaq.autoInstallFetchInterceptors === true)
2065
+ HotStaq.installFetchInterceptors();
2057
2066
  // Set up link interception.
2058
2067
  document.addEventListener("click", (e) => {
2059
2068
  // Find the closest <a> ancestor.
@@ -2100,6 +2109,94 @@ class HotStaq {
2100
2109
  // Prefetch all route .hott files in the background for instant SPA navigation.
2101
2110
  HotStaq.prefetchRoutes();
2102
2111
  }
2112
+ /**
2113
+ * Install fetch interceptors for SPA-mode frontends. Two pieces:
2114
+ *
2115
+ * (a) Per-navigation `AbortController`. Every `window.fetch(...)`
2116
+ * that doesn't already pass its own `signal` gets attached to
2117
+ * `HotStaq.navAbort.signal`. On every SPA navigation the
2118
+ * controller is aborted and replaced, so the previous page's
2119
+ * in-flight requests die cleanly before the new page makes its
2120
+ * own. Without this, rapid clicks accumulate abandoned fetches
2121
+ * that occupy the browser's 6-per-origin connection cap and
2122
+ * block subsequent page loads.
2123
+ *
2124
+ * (b) Optional 401 hook. If `options.on401` is provided, any 401
2125
+ * response from a non-skipped URL invokes the hook so the app
2126
+ * can clear local credentials and surface "session expired"
2127
+ * UX. The response is still returned to the original caller —
2128
+ * the hook is purely additive.
2129
+ *
2130
+ * Idempotent: re-calling updates `skipUrls` / `on401` in place
2131
+ * without re-wrapping `window.fetch` or `onBeforeNavigate`. Called
2132
+ * automatically by `enableSPA` when
2133
+ * `HotStaq.autoInstallFetchInterceptors === true` (the default); set
2134
+ * that flag to `false` before the `<hotstaq>` element processes if
2135
+ * your app needs to manage fetch wrapping itself.
2136
+ *
2137
+ * @param options Skip-list and 401 hook. May be re-passed later to
2138
+ * update either field.
2139
+ */
2140
+ static installFetchInterceptors(options = {}) {
2141
+ // Merge so multiple callers can each contribute (e.g. one app
2142
+ // adds a skipUrl, another wires up on401).
2143
+ HotStaq.fetchInterceptorOptions = Object.assign(Object.assign(Object.assign({}, HotStaq.fetchInterceptorOptions), options), { skipUrls: [
2144
+ ...((HotStaq.fetchInterceptorOptions || {}).skipUrls || []),
2145
+ ...(options.skipUrls || [])
2146
+ ] });
2147
+ if (HotStaq.fetchInterceptorsInstalled === true)
2148
+ return;
2149
+ HotStaq.fetchInterceptorsInstalled = true;
2150
+ if (typeof window === "undefined" || typeof window.fetch !== "function")
2151
+ return;
2152
+ HotStaq.navAbort = new AbortController();
2153
+ const origFetch = window.fetch.bind(window);
2154
+ window.fetch = function (input, init) {
2155
+ const opts = HotStaq.fetchInterceptorOptions || {};
2156
+ const url = (typeof input === "string")
2157
+ ? input
2158
+ : ((input && input.url) || "");
2159
+ let isSkipUrl = false;
2160
+ const skipUrls = opts.skipUrls || [];
2161
+ for (let iIdx = 0; iIdx < skipUrls.length; iIdx++) {
2162
+ if (url.indexOf(skipUrls[iIdx]) === 0) {
2163
+ isSkipUrl = true;
2164
+ break;
2165
+ }
2166
+ }
2167
+ let finalInit = init;
2168
+ // (a) Attach the per-nav signal when the caller didn't supply one.
2169
+ if (!isSkipUrl) {
2170
+ finalInit = init || {};
2171
+ if (finalInit.signal == null)
2172
+ finalInit = Object.assign({}, finalInit, { signal: HotStaq.navAbort.signal });
2173
+ }
2174
+ return origFetch(input, finalInit).then((resp) => {
2175
+ // (b) 401 hook.
2176
+ if (resp.status === 401 && !isSkipUrl && typeof opts.on401 === "function") {
2177
+ try {
2178
+ opts.on401(resp, input, finalInit);
2179
+ }
2180
+ catch (ex) { /* don't let app errors break the response chain */ }
2181
+ }
2182
+ return (resp);
2183
+ });
2184
+ };
2185
+ // Wrap onBeforeNavigate so the previous page's pending fetches
2186
+ // die before the new page renders. Compose with any existing
2187
+ // hook the app may have set — we don't own that global.
2188
+ const prevHook = HotStaq.onBeforeNavigate;
2189
+ HotStaq.onBeforeNavigate = (path) => {
2190
+ try {
2191
+ HotStaq.navAbort.abort();
2192
+ }
2193
+ catch (ex) { /* nothing in flight */ }
2194
+ HotStaq.navAbort = new AbortController();
2195
+ if (typeof prevHook === "function")
2196
+ return (prevHook(path));
2197
+ return (true);
2198
+ };
2199
+ }
2103
2200
  /**
2104
2201
  * Prefetch all .hott files from the routerManager in the background.
2105
2202
  * This preloads route content into the processor's file cache so that
@@ -2362,7 +2459,7 @@ exports.HotStaq = HotStaq;
2362
2459
  /**
2363
2460
  * The current version of HotStaq.
2364
2461
  */
2365
- HotStaq.version = "0.9.1";
2462
+ HotStaq.version = "0.9.2";
2366
2463
  /**
2367
2464
  * Indicates if this is a web build.
2368
2465
  */
@@ -2424,6 +2521,33 @@ HotStaq.onBeforeNavigate = null;
2424
2521
  * Event fired after SPA navigation completes.
2425
2522
  */
2426
2523
  HotStaq.onAfterNavigate = null;
2524
+ /**
2525
+ * If true (the default), `enableSPA` automatically wires up fetch
2526
+ * interceptors that abort the previous page's pending requests when
2527
+ * the user navigates between SPA routes. Set this to false BEFORE the
2528
+ * `<hotstaq>` element runs (e.g. in a <script> earlier in <head>) to
2529
+ * opt out — useful if your frontend already wraps `window.fetch` and
2530
+ * doesn't want HotStaq to compose with it.
2531
+ */
2532
+ HotStaq.autoInstallFetchInterceptors = true;
2533
+ /**
2534
+ * The current page's AbortController. Aborted on every SPA navigation
2535
+ * so previous-page fetches die before the new page's requests go out.
2536
+ * `installFetchInterceptors` populates this.
2537
+ */
2538
+ HotStaq.navAbort = null;
2539
+ /**
2540
+ * Internal: tracks whether `installFetchInterceptors` has wrapped
2541
+ * `window.fetch` and `onBeforeNavigate`. Exposed for tests; do not
2542
+ * toggle from app code.
2543
+ */
2544
+ HotStaq.fetchInterceptorsInstalled = false;
2545
+ /**
2546
+ * Internal: most recent options passed to `installFetchInterceptors`,
2547
+ * read by the wrapped fetch on every call so apps can update
2548
+ * `skipUrls` / `on401` after install without re-wrapping.
2549
+ */
2550
+ HotStaq.fetchInterceptorOptions = {};
2427
2551
  /**
2428
2552
  * Errors to execute when something goes wrong.
2429
2553
  */