@seatlayer/core 0.87.0 → 0.88.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/{ar-M4J6FMBS.js → ar-4SZT3THP.js} +1 -1
  2. package/dist/{be-7LLBCORG.js → be-6TW5GRGS.js} +1 -1
  3. package/dist/{bg-OSQA2I5V.js → bg-P7K6SESD.js} +1 -1
  4. package/dist/{ca-PDMTUK73.js → ca-E6R73FI4.js} +1 -1
  5. package/dist/chunk-3X2CEDBN.js +1 -0
  6. package/dist/{chunk-CFRNWESM.js → chunk-5BMXWOE7.js} +1 -1
  7. package/dist/{chunk-QTBBVSN6.js → chunk-66Q5LOBH.js} +1 -1
  8. package/dist/core/chart-ops/index.cjs +1 -1
  9. package/dist/core/chart-ops/index.js +1 -1
  10. package/dist/core/inventory/index.cjs +1 -1
  11. package/dist/core/inventory/index.js +1 -1
  12. package/dist/core/layout/index.js +1 -1
  13. package/dist/core/render-assets/index.cjs +1 -1
  14. package/dist/core/render-assets/index.js +1 -1
  15. package/dist/{cs-O56YK3FJ.js → cs-3JAN3UIR.js} +1 -1
  16. package/dist/{cy-MIKYAZZ3.js → cy-4G5GKLQ2.js} +1 -1
  17. package/dist/{da-VUTTWBSM.js → da-7HO2Z7S3.js} +1 -1
  18. package/dist/{de-EOFVEAS6.js → de-NUKO6ZXA.js} +1 -1
  19. package/dist/{el-KEJC46AX.js → el-H55AXK2J.js} +1 -1
  20. package/dist/{es-3YOTG2P7.js → es-QSTKSWCW.js} +1 -1
  21. package/dist/{et-MGD4D2J5.js → et-5PPWOPTR.js} +1 -1
  22. package/dist/{fa-ROAPRPUJ.js → fa-OLG2YL4K.js} +1 -1
  23. package/dist/{fi-UNQJPG3S.js → fi-PAV5SN5D.js} +1 -1
  24. package/dist/{fr-WAXC5IQR.js → fr-UZCQILN3.js} +1 -1
  25. package/dist/{he-7HKZNP4G.js → he-RJCSPJ6G.js} +1 -1
  26. package/dist/{hr-L3PXRPIH.js → hr-PAOMST2Q.js} +1 -1
  27. package/dist/{hu-7GV2Q5RY.js → hu-4Z36Q2UK.js} +1 -1
  28. package/dist/index.cjs +1 -1
  29. package/dist/index.d.cts +16 -3
  30. package/dist/index.d.ts +16 -3
  31. package/dist/index.js +1 -1
  32. package/dist/{it-AENJ74J3.js → it-QQZIYWUZ.js} +1 -1
  33. package/dist/{ja-OA37L5Y4.js → ja-IZR5KSXG.js} +1 -1
  34. package/dist/{ku-NDD6SXXQ.js → ku-VCCWSULB.js} +1 -1
  35. package/dist/localeLoaders-YBKNUI3J.js +1 -0
  36. package/dist/{lt-OKCXRYLH.js → lt-U5AHDGDJ.js} +1 -1
  37. package/dist/{lv-X3KIQS63.js → lv-WY22HKO4.js} +1 -1
  38. package/dist/{nl-EWJH4B2L.js → nl-MNIC4WUI.js} +1 -1
  39. package/dist/{no-DCUBIM6R.js → no-YFUAME7I.js} +1 -1
  40. package/dist/{pl-3BKTQ7PO.js → pl-2ETFV772.js} +1 -1
  41. package/dist/{pt-ZJETW6HS.js → pt-5CQK36EB.js} +1 -1
  42. package/dist/{ro-SLDMZD7M.js → ro-AANRNCTZ.js} +1 -1
  43. package/dist/{ru-G4DJI3BQ.js → ru-CTBOMCZ2.js} +1 -1
  44. package/dist/{sk-E2P5YQEI.js → sk-MJ4GVTMT.js} +1 -1
  45. package/dist/{sl-DDYI225R.js → sl-X7LAO2EK.js} +1 -1
  46. package/dist/{sr-P3TXIOLM.js → sr-J6QX5N7R.js} +1 -1
  47. package/dist/{sv-ZRNFDBAN.js → sv-G5NMSDZW.js} +1 -1
  48. package/dist/{tr-B4MF36GP.js → tr-QQPKF6XB.js} +1 -1
  49. package/dist/{uk-URI7EJV5.js → uk-XY7N2ZWK.js} +1 -1
  50. package/dist/{zh-Hans-77FXIBDN.js → zh-Hans-OEZKZLYA.js} +1 -1
  51. package/dist/{zh-Hant-UPIV62WV.js → zh-Hant-EJGZWB2N.js} +1 -1
  52. package/package.json +1 -1
  53. package/dist/chunk-OLTZIZEM.js +0 -1
  54. package/dist/localeLoaders-GISJKBJ2.js +0 -1
package/dist/index.d.cts CHANGED
@@ -1900,12 +1900,18 @@ interface PickerTransport {
1900
1900
  */
1901
1901
  asset?(key: string, asset: string): Promise<Blob>;
1902
1902
  /** `default` is the status of every seat NOT in `seats`; absent means `free`
1903
- * (an older server names every seat). Never assume it. */
1903
+ * (an older server names every seat). Never assume it.
1904
+ * `fetchedAt` is the CLIENT-CLOCK ms at which the transport received this
1905
+ * answer. It is the snapshot's real age — a bootstrap bundle prewarmed on
1906
+ * hover is handed to the picker tens of seconds after it was read — and the
1907
+ * freshness rules below use it in place of the apply instant. Optional: a
1908
+ * transport that omits it falls back to "now", as every caller did before. */
1904
1909
  objects(key: string): Promise<{
1905
1910
  seats: Record<string, string>;
1906
1911
  default?: string;
1907
1912
  hidden?: string[];
1908
1913
  closed?: string[];
1914
+ fetchedAt?: number;
1909
1915
  }>;
1910
1916
  /** Optional server-resolved ticket offers/prices. `live` bypasses shared cache
1911
1917
  * after a realtime seat frame so quota and fallback prices move together. */
@@ -2851,15 +2857,22 @@ declare class PickerController {
2851
2857
  * `free` would paint a sold-out stadium as fully available, so the default is
2852
2858
  * a parameter rather than a constant.
2853
2859
  */
2854
- /** @internal */ applySeatsMap(seats: Record<string, string>, defaultStatus?: string, source?: SnapshotSource): void;
2860
+ /** @internal */ applySeatsMap(seats: Record<string, string>, defaultStatus?: string, source?: SnapshotSource, fetchedAt?: number): void;
2855
2861
  /**
2856
- * When an authoritative map was last painted, and whether one is recent.
2862
+ * When the authoritative map in the renderer was READ, and whether that is
2863
+ * recent.
2857
2864
  *
2858
2865
  * A socket opening is not news. The boot read and the connect read were
2859
2866
  * landing within half a second of each other on a real event page — two full
2860
2867
  * snapshots of the same venue, the second answering a question nobody asked.
2861
2868
  * Five seconds is comfortably longer than a boot takes and far shorter than
2862
2869
  * any window in which a silent server could leave the map wrong.
2870
+ *
2871
+ * It is the READ instant rather than the apply instant because those stopped
2872
+ * being the same thing: a host may prewarm the bootstrap on hover, and the
2873
+ * bundle that eventually paints can be tens of seconds old. Dating it from
2874
+ * the apply made that map look brand new and skipped the connect re-read,
2875
+ * leaving every seat that changed in between wrong until the next delta.
2863
2876
  */
2864
2877
  private lastSnapshotAt;
2865
2878
  /**
package/dist/index.d.ts CHANGED
@@ -1900,12 +1900,18 @@ interface PickerTransport {
1900
1900
  */
1901
1901
  asset?(key: string, asset: string): Promise<Blob>;
1902
1902
  /** `default` is the status of every seat NOT in `seats`; absent means `free`
1903
- * (an older server names every seat). Never assume it. */
1903
+ * (an older server names every seat). Never assume it.
1904
+ * `fetchedAt` is the CLIENT-CLOCK ms at which the transport received this
1905
+ * answer. It is the snapshot's real age — a bootstrap bundle prewarmed on
1906
+ * hover is handed to the picker tens of seconds after it was read — and the
1907
+ * freshness rules below use it in place of the apply instant. Optional: a
1908
+ * transport that omits it falls back to "now", as every caller did before. */
1904
1909
  objects(key: string): Promise<{
1905
1910
  seats: Record<string, string>;
1906
1911
  default?: string;
1907
1912
  hidden?: string[];
1908
1913
  closed?: string[];
1914
+ fetchedAt?: number;
1909
1915
  }>;
1910
1916
  /** Optional server-resolved ticket offers/prices. `live` bypasses shared cache
1911
1917
  * after a realtime seat frame so quota and fallback prices move together. */
@@ -2851,15 +2857,22 @@ declare class PickerController {
2851
2857
  * `free` would paint a sold-out stadium as fully available, so the default is
2852
2858
  * a parameter rather than a constant.
2853
2859
  */
2854
- /** @internal */ applySeatsMap(seats: Record<string, string>, defaultStatus?: string, source?: SnapshotSource): void;
2860
+ /** @internal */ applySeatsMap(seats: Record<string, string>, defaultStatus?: string, source?: SnapshotSource, fetchedAt?: number): void;
2855
2861
  /**
2856
- * When an authoritative map was last painted, and whether one is recent.
2862
+ * When the authoritative map in the renderer was READ, and whether that is
2863
+ * recent.
2857
2864
  *
2858
2865
  * A socket opening is not news. The boot read and the connect read were
2859
2866
  * landing within half a second of each other on a real event page — two full
2860
2867
  * snapshots of the same venue, the second answering a question nobody asked.
2861
2868
  * Five seconds is comfortably longer than a boot takes and far shorter than
2862
2869
  * any window in which a silent server could leave the map wrong.
2870
+ *
2871
+ * It is the READ instant rather than the apply instant because those stopped
2872
+ * being the same thing: a host may prewarm the bootstrap on hover, and the
2873
+ * bundle that eventually paints can be tens of seconds old. Dating it from
2874
+ * the apply made that map look brand new and skipped the connect re-read,
2875
+ * leaving every seat that changed in between wrong until the next delta.
2863
2876
  */
2864
2877
  private lastSnapshotAt;
2865
2878
  /**