@songfreedom/sse-client 0.1.0 → 0.1.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.
- package/README.md +213 -190
- package/batch.d.ts +13 -11
- package/batch.d.ts.map +1 -1
- package/batch.js.map +1 -1
- package/client.d.ts +70 -60
- package/client.d.ts.map +1 -1
- package/client.js +56 -45
- package/client.js.map +1 -1
- package/errors.d.ts +16 -13
- package/errors.d.ts.map +1 -1
- package/errors.js +20 -9
- package/errors.js.map +1 -1
- package/package.json +3 -4
- package/parser.d.ts +14 -13
- package/parser.d.ts.map +1 -1
- package/parser.js +14 -11
- package/parser.js.map +1 -1
- package/share.d.ts +10 -7
- package/share.d.ts.map +1 -1
- package/share.js +9 -6
- package/share.js.map +1 -1
- package/stream.d.ts +7 -5
- package/stream.d.ts.map +1 -1
- package/stream.js +12 -7
- package/stream.js.map +1 -1
- package/types.d.ts +10 -10
- package/types.d.ts.map +1 -1
- package/vue.d.ts +12 -12
- package/vue.d.ts.map +1 -1
- package/vue.js +4 -3
- package/vue.js.map +1 -1
package/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EACL,uBAAuB,EACvB,eAAe,GAGhB,MAAM,aAAa,CAAC;AAqGrB,MAAM,yBAAyB,GAAG,mBAAmB,CAAC;AACtD,uFAAuF;AACvF,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B;;;;;;;;;;GAUG;AACH,MAAM,OAAO,SAAS;IACH,OAAO,CAAmB;IAC1B,MAAM,CAAY;IAClB,WAAW,CAAqB;IAEzC,KAAK,GAAc,MAAM,CAAC;IAC1B,QAAQ,GAAG,KAAK,CAAC;IACjB,OAAO,GAAG,KAAK,CAAC;IAChB,SAAS,GAAgC,IAAI,CAAC;IAC9C,OAAO,GAAG,CAAC,CAAC;IACZ,gBAAgB,GAAG,EAAE,CAAC;IACtB,gBAAgB,CAAqB;IACrC,YAAY,GAAG,KAAK,CAAC;IACrB,QAAQ,GAAG,KAAK,CAAC;IACjB,SAAS,GAAyC,IAAI,CAAC;IACvD,WAAW,GAAyC,IAAI,CAAC;IACzD,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,iBAAiB,GAA2B,IAAI,CAAC;IACjD,UAAU,GAAyB,IAAI,CAAC;IACxC,YAAY,GAAwB,IAAI,CAAC;IACzC,cAAc,GAAG,KAAK,CAAC;IACvB,kBAAkB,CAAc;IAChC,SAAS,CAAc;IACvB,QAAQ,CAAc;IAEb,eAAe,GAAG,IAAI,GAAG,EAAiC,CAAC;IAC3D,aAAa,GAAG,IAAI,GAAG,EAA6D,CAAC;IACrF,cAAc,GAAG,IAAI,GAAG,EAA+B,CAAC;IACxD,aAAa,GAAG,IAAI,GAAG,EAA8C,CAAC;IACtE,YAAY,GAAG,IAAI,GAAG,EAAgC,CAAC;IACvD,aAAa,GAAG,IAAI,GAAG,EAAsD,CAAC;IAE/F,YAAY,OAAyB;QACnC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC;YAC5B,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,uBAAuB;YAC/D,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;YACjD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAChC,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,IAAI,OAAO,CAAC,SAAS;YAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,QAAQ;YAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,mEAAmE;IACnE,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,uEAAuE;IACvE,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,kEAAkE;IAClE,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,4FAA4F;IAC5F,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9C,CAAC;IAED,qEAAqE;IACrE,KAAK;QACH,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;QACD,+EAA+E;QAC/E,iDAAiD;QACjD,IACE,IAAI,CAAC,OAAO,CAAC,eAAe;YAC5B,OAAO,QAAQ,KAAK,WAAW;YAC/B,QAAQ,CAAC,MAAM,EACf,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE;aAC7B,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACxB,0EAA0E;YAC1E,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kDAAkD;IAClD,KAAK;QACH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAED,+EAA+E;IAC/E,OAAO;QACL,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IASD,EAAE,CAAC,KAAa,EAAE,OAAqD;QACrE,IAAI,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,GAAG,EAAE;YACV,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO;YACT,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IAED,yDAAyD;IACzD,IAAI,CACF,KAAQ,EACR,OAAkD;QAElD,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;YAC3C,GAAG,EAAE,CAAC;YACN,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC;IAED,2DAA2D;IAC3D,SAAS,CAAC,OAAsC;QAC9C,OAAO,SAAS,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,QAAQ,CAAC,OAAoC;QAC3C,OAAO,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAED,OAAO,CAAC,OAAmD;QACzD,OAAO,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,OAAqC;QAC1C,OAAO,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,CAAC,OAA2D;QACjE,OAAO,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,8EAA8E;IAC9E,YAAY;IACZ,8EAA8E;IAE9E,IAAY,cAAc;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;IAC7C,CAAC;IAED,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,MAAM,CAAC;IAC9C,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC;IAC3C,CAAC;IAED,IAAY,WAAW;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC;IAC5C,CAAC;IAED,IAAY,cAAc;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;IAC7C,CAAC;IAEO,KAAK;QACX,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,OAAO;QACnB,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,qEAAqE;gBACrE,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC3B,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YAElE,IAAI,CAAC,iBAAiB,GAAG,IAAI,eAAe,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;YAE7C,IAAI,OAAO,GAAoB,IAAI,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;YAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,OAAO;YACT,CAAC;YACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACtB,SAAS;YACX,CAAC;YAED,uFAAuF;YACvF,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;gBACjB,SAAS;YACX,CAAC;YAED,kEAAkE;YAClE,qDAAqD;YACrD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,OAAO,GAAG,IAAI,QAAQ,CAAC,gCAAgC,EAAE;oBACvD,IAAI,EAAE,WAAW;oBACjB,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACvC,uEAAuE;YACvE,6BAA6B;YAC7B,IAAI,OAAO,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBAChC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;YAElB,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACvD,CAAC;YAED,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,OAAO,IAAI,SAAS;gBAC3B,OAAO;aACR,CAAC,CAAC;YACH,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,IAAI,SAAS,CAAC,CAAC;gBAC7D,OAAO;YACT,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,iFAAiF;IACzE,KAAK,CAAC,QAAQ,CAAC,MAAmB;QACxC,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACtE,MAAM,IAAI,GAAgB;YACxB,MAAM;YACN,OAAO,EAAE,MAAM,IAAI,CAAC,cAAc,EAAE;YACpC,IAAI,EAAE,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;YAC9E,MAAM;YACN,KAAK,EAAE,UAAU;YACjB,WAAW,EAAE,aAAa;SAC3B,CAAC;QAEF,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAEjF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,QAAQ,CAAC,4BAA4B,QAAQ,CAAC,MAAM,EAAE,EAAE;gBAChE,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,SAAS,EAAE,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,iBAAiB,KAAK,KAAK,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/E,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBACvD,sEAAsE;gBACtE,4BAA4B;gBAC5B,MAAM,IAAI,QAAQ,CAChB,oCAAoC,yBAAyB,UAAU,WAAW,IAAI,SAAS,IAAI,EACnG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAChE,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,QAAQ,CAAC,wEAAwE,EAAE;gBAC3F,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAEvC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACzC,iFAAiF;QACjF,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QAEf,IAAI,CAAC;YACH,SAAS,CAAC;gBACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC5C,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM;gBACR,CAAC;gBACD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC1D,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;oBAC3B,mEAAmE;oBACnE,+BAA+B;oBAC/B,MAAM,IAAI,QAAQ,CAAC,kDAAkD,EAAE;wBACrE,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,KAAK;qBACjB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACrC,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC;gBACH,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,CAAC;YAAC,MAAM,CAAC;gBACP,sDAAsD;YACxD,CAAC;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAClD,MAAM,KAAK,GAAG,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACxE,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,MAAM,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YACtD,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,iBAAiB,CAAC,KAAkB;QAC1C,wEAAwE;QACxE,+BAA+B;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAClF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO;QACT,CAAC;QACD,IAAI,IAAI,GAAY,KAAK,CAAC,IAAI,CAAC;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBAC/B,OAAO;YACT,CAAC;QACH,CAAC;QACD,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC;QAC7C,IAAI,EAAE,EAAE,CAAC;YACP,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC7B,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,SAAS,CAAC;QACtC,6EAA6E;QAC7E,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACpD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC;YACZ,EAAE;YACF,KAAK,EAAE,IAAI;YACX,IAAI;YACJ,GAAG,EAAE,KAAK,CAAC,IAAI;YACf,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;SACvB,CAAC,CAAC;IACL,CAAC;IAEO,QAAQ,CAAC,OAAmB;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAEzC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;gBACjC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,GAAG,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7C,IAAI,QAAQ,EAAE,CAAC;gBACb,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC;oBACpC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,IAAI,CAAsB,QAAmC,EAAE,GAAG,IAAO;QAC/E,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEO,QAAQ,CAAsB,OAA6B,EAAE,GAAG,IAAO;QAC7E,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,KAAc;QACvC,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACnC,OAAO;QACT,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,OAAqB;QAC7C,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC9C,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,mGAAmG;IAC3F,SAAS,CAAC,OAAe;QAC/B,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,eAAe,CAAC,CAAC;QACxF,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3F,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,KAAa;QACzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YACD,MAAM,QAAQ,GAAG,GAAG,EAAE;gBACpB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACpE,OAAO,EAAE,CAAC;YACZ,CAAC,EAAE,KAAK,CAAC,CAAC;YACV,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACnF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,kFAAkF;YAClF,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,OAAO;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC;IAEO,SAAS;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;YACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACf,CAAC;IAEO,SAAS;QACf,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAEO,QAAQ,CAAC,IAAe;QAC9B,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,8EAA8E;IAC9E,gCAAgC;IAChC,8EAA8E;IAE9E,wGAAwG;IAChG,aAAa;QACnB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAE3B,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,gBAAgB,KAAK,UAAU,EAAE,CAAC;YACnF,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,GAAG,GAAG,EAAE;gBACnB,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACnD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnD,CAAC;QAED,IACE,IAAI,CAAC,OAAO,CAAC,eAAe;YAC5B,OAAO,QAAQ,KAAK,WAAW;YAC/B,OAAO,QAAQ,CAAC,gBAAgB,KAAK,UAAU,EAC/C,CAAC;YACD,IAAI,CAAC,kBAAkB,GAAG,GAAG,EAAE;gBAC7B,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACpB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACzB,CAAC;qBAAM,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;oBACvC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC,CAAC;YACF,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAEO,eAAe;QACrB,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,mBAAmB,KAAK,UAAU,EAAE,CAAC;YACtF,IAAI,IAAI,CAAC,SAAS;gBAAE,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC1E,IAAI,IAAI,CAAC,QAAQ;gBAAE,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,IAAI,CAAC,kBAAkB,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC/D,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;QACpC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IAC9B,CAAC;IAEO,OAAO,CAAC,MAA4B;QAC1C,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAEO,MAAM;QACZ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAEO,MAAM,CAAC,MAAsB,EAAE,KAAgB;QACrD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC;QAChC,uEAAuE;QACvE,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;CACF;AAED,gGAAgG;AAChG,SAAS,aAAa,CAAC,IAAa;IAClC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,QAAQ,EAAE,CAAC;QACjF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,mDAAmD;AACnD,SAAS,SAAS,CAAI,QAAgB,EAAE,OAAU;IAChD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtB,OAAO,GAAG,EAAE;QACV,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC"}
|
package/errors.d.ts
CHANGED
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* - `http
|
|
4
|
-
* - `network
|
|
5
|
-
* - `heartbeat
|
|
6
|
-
* - `protocol
|
|
7
|
-
* - `aborted
|
|
8
|
-
* - `retry-exhausted
|
|
2
|
+
* Error classification, useful for logging/telemetry and for branching inside a `retry` policy:
|
|
3
|
+
* - `http`: the server responded with a non-2xx status
|
|
4
|
+
* - `network`: transport-level failure (DNS, connection reset, …)
|
|
5
|
+
* - `heartbeat`: no bytes received for `idleTimeout`, the connection looks zombie
|
|
6
|
+
* - `protocol`: the response violates the SSE contract (wrong content-type, buffer overflow)
|
|
7
|
+
* - `aborted`: the attempt was interrupted (hidden page, offline, manual close)
|
|
8
|
+
* - `retry-exhausted`: retries ran out
|
|
9
9
|
*/
|
|
10
10
|
export type SSEErrorKind = "http" | "network" | "heartbeat" | "protocol" | "aborted" | "retry-exhausted";
|
|
11
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* Connection error. Carries a `retryable` flag so callers (and the built-in retry
|
|
13
|
+
* policy) can tell transient failures apart from terminal ones such as 401.
|
|
14
|
+
*/
|
|
12
15
|
export declare class SSEError extends Error {
|
|
13
|
-
/**
|
|
16
|
+
/** Error category. */
|
|
14
17
|
readonly kind: SSEErrorKind;
|
|
15
|
-
/** HTTP
|
|
18
|
+
/** HTTP status code, only set when `kind === "http"`. */
|
|
16
19
|
readonly status?: number;
|
|
17
|
-
/**
|
|
20
|
+
/** Whether the connection may be retried. */
|
|
18
21
|
readonly retryable: boolean;
|
|
19
22
|
constructor(message: string, options?: {
|
|
20
23
|
kind?: SSEErrorKind;
|
|
@@ -23,8 +26,8 @@ export declare class SSEError extends Error {
|
|
|
23
26
|
cause?: unknown;
|
|
24
27
|
});
|
|
25
28
|
}
|
|
26
|
-
/**
|
|
29
|
+
/** Statuses that indicate a temporary server-side problem and are worth retrying. */
|
|
27
30
|
export declare function isRetryableStatus(status: number): boolean;
|
|
28
|
-
/**
|
|
31
|
+
/** Normalize any thrown value into an `SSEError`. */
|
|
29
32
|
export declare function toSSEError(error: unknown): SSEError;
|
|
30
33
|
//# sourceMappingURL=errors.d.ts.map
|
package/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,SAAS,GACT,WAAW,GACX,UAAU,GACV,SAAS,GACT,iBAAiB,CAAC;AAEtB;;;GAGG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,yDAAyD;IACzD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;gBAG1B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,YAAY,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO;CAW/F;AAED,qFAAqF;AACrF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,qDAAqD;AACrD,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAkBnD"}
|
package/errors.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/**
|
|
2
|
+
* Connection error. Carries a `retryable` flag so callers (and the built-in retry
|
|
3
|
+
* policy) can tell transient failures apart from terminal ones such as 401.
|
|
4
|
+
*/
|
|
2
5
|
export class SSEError extends Error {
|
|
3
|
-
/**
|
|
6
|
+
/** Error category. */
|
|
4
7
|
kind;
|
|
5
|
-
/** HTTP
|
|
8
|
+
/** HTTP status code, only set when `kind === "http"`. */
|
|
6
9
|
status;
|
|
7
|
-
/**
|
|
10
|
+
/** Whether the connection may be retried. */
|
|
8
11
|
retryable;
|
|
9
12
|
constructor(message, options = {}) {
|
|
10
13
|
super(message);
|
|
@@ -17,20 +20,28 @@ export class SSEError extends Error {
|
|
|
17
20
|
}
|
|
18
21
|
}
|
|
19
22
|
}
|
|
20
|
-
/**
|
|
23
|
+
/** Statuses that indicate a temporary server-side problem and are worth retrying. */
|
|
21
24
|
export function isRetryableStatus(status) {
|
|
22
25
|
return status === 408 || status === 425 || status === 429 || status >= 500;
|
|
23
26
|
}
|
|
24
|
-
/**
|
|
27
|
+
/** Normalize any thrown value into an `SSEError`. */
|
|
25
28
|
export function toSSEError(error) {
|
|
26
29
|
if (error instanceof SSEError) {
|
|
27
30
|
return error;
|
|
28
31
|
}
|
|
29
32
|
if (error instanceof Error && error.name === "AbortError") {
|
|
30
|
-
return new SSEError("SSE
|
|
33
|
+
return new SSEError("SSE connection aborted", {
|
|
34
|
+
kind: "aborted",
|
|
35
|
+
retryable: false,
|
|
36
|
+
cause: error,
|
|
37
|
+
});
|
|
31
38
|
}
|
|
32
39
|
const message = error instanceof Error ? error.message : String(error);
|
|
33
|
-
//
|
|
34
|
-
return new SSEError(`SSE
|
|
40
|
+
// Transport failures (DNS errors, reset connections) are retryable by default.
|
|
41
|
+
return new SSEError(`SSE connection error: ${message}`, {
|
|
42
|
+
kind: "network",
|
|
43
|
+
retryable: true,
|
|
44
|
+
cause: error,
|
|
45
|
+
});
|
|
35
46
|
}
|
|
36
47
|
//# sourceMappingURL=errors.js.map
|
package/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,sBAAsB;IACb,IAAI,CAAe;IAC5B,yDAAyD;IAChD,MAAM,CAAU;IACzB,6CAA6C;IACpC,SAAS,CAAU;IAE5B,YACE,OAAe,EACf,UAA0F,EAAE;QAE5F,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;QAC3C,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,IAA4B,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AAED,qFAAqF;AACrF,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,IAAI,GAAG,CAAC;AAC7E,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAC1D,OAAO,IAAI,QAAQ,CAAC,wBAAwB,EAAE;YAC5C,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,+EAA+E;IAC/E,OAAO,IAAI,QAAQ,CAAC,yBAAyB,OAAO,EAAE,EAAE;QACtD,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@songfreedom/sse-client",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.1.2",
|
|
4
|
+
"description": "Dependency-free Server-Sent Events client: fetch transport, typed event routing, reconnect with Last-Event-ID resume, idle watchdog and shared connections",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"sse",
|
|
7
7
|
"server-sent-events",
|
|
@@ -15,8 +15,7 @@
|
|
|
15
15
|
"license": "MIT",
|
|
16
16
|
"repository": {
|
|
17
17
|
"type": "git",
|
|
18
|
-
"url": "https://
|
|
19
|
-
"directory": "packages/sse-client"
|
|
18
|
+
"url": "git+https://github.com/hesetiema/simple-sse-client.git"
|
|
20
19
|
},
|
|
21
20
|
"engines": {
|
|
22
21
|
"node": ">=18"
|
package/parser.d.ts
CHANGED
|
@@ -1,34 +1,35 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/** A parsed event, before any payload decoding. */
|
|
2
2
|
export interface ParsedEvent {
|
|
3
|
-
/**
|
|
3
|
+
/** Event id; empty string when the server did not send one. */
|
|
4
4
|
id: string;
|
|
5
|
-
/**
|
|
5
|
+
/** Event name; empty string when the server did not send one (callers default to "message"). */
|
|
6
6
|
event: string;
|
|
7
|
-
/** data
|
|
7
|
+
/** Raw payload text; multi-line `data:` fields are joined with a newline. */
|
|
8
8
|
data: string;
|
|
9
9
|
}
|
|
10
|
-
/**
|
|
10
|
+
/** Default cap for a single message buffer: 1MB. */
|
|
11
11
|
export declare const DEFAULT_MAX_BUFFER_SIZE: number;
|
|
12
12
|
export interface SSEParserOptions {
|
|
13
13
|
onEvent?: (event: ParsedEvent) => void;
|
|
14
|
-
/**
|
|
14
|
+
/** Reconnect delay requested by the server through a `retry:` field, in milliseconds. */
|
|
15
15
|
onRetry?: (delay: number) => void;
|
|
16
|
-
/**
|
|
16
|
+
/** Buffer cap in characters (default 1MB). Once exceeded, parsing stops and `overflowed` flips to true. */
|
|
17
17
|
maxBufferSize?: number;
|
|
18
18
|
}
|
|
19
19
|
export interface SSEParser {
|
|
20
|
-
/**
|
|
20
|
+
/** Feed decoded text. Chunks may split lines or fields arbitrarily; partial input is buffered. */
|
|
21
21
|
feed: (chunk: string) => void;
|
|
22
|
-
/**
|
|
22
|
+
/** Drop any partial line and per-connection `id`/`event` state (called before a reconnect). */
|
|
23
23
|
reset: () => void;
|
|
24
|
-
/**
|
|
24
|
+
/** Whether the buffer cap was hit (server never terminates a line, or a single message is huge). */
|
|
25
25
|
readonly overflowed: boolean;
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* Create an SSE frame parser (a subset of the WHATWG spec).
|
|
29
29
|
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
30
|
+
* Handles the `data` / `event` / `id` / `retry` fields, multi-line payloads,
|
|
31
|
+
* comment lines (`: keep-alive` heartbeats), mixed CRLF/LF, and arbitrarily
|
|
32
|
+
* chunked input.
|
|
32
33
|
*/
|
|
33
34
|
export declare function createSSEParser(options?: SSEParserOptions): SSEParser;
|
|
34
35
|
//# sourceMappingURL=parser.d.ts.map
|
package/parser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,+DAA+D;IAC/D,EAAE,EAAE,MAAM,CAAC;IACX,gGAAgG;IAChG,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,IAAI,EAAE,MAAM,CAAC;CACd;AAED,oDAAoD;AACpD,eAAO,MAAM,uBAAuB,QAAc,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACvC,yFAAyF;IACzF,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,2GAA2G;IAC3G,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,kGAAkG;IAClG,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,+FAA+F;IAC/F,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,oGAAoG;IACpG,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAID;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAgHzE"}
|
package/parser.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/** Default cap for a single message buffer: 1MB. */
|
|
2
2
|
export const DEFAULT_MAX_BUFFER_SIZE = 1024 * 1024;
|
|
3
3
|
const LINE_BREAK = /\r\n|\r|\n/;
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* Create an SSE frame parser (a subset of the WHATWG spec).
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
7
|
+
* Handles the `data` / `event` / `id` / `retry` fields, multi-line payloads,
|
|
8
|
+
* comment lines (`: keep-alive` heartbeats), mixed CRLF/LF, and arbitrarily
|
|
9
|
+
* chunked input.
|
|
9
10
|
*/
|
|
10
11
|
export function createSSEParser(options = {}) {
|
|
11
12
|
const maxBufferSize = options.maxBufferSize ?? DEFAULT_MAX_BUFFER_SIZE;
|
|
@@ -17,7 +18,7 @@ export function createSSEParser(options = {}) {
|
|
|
17
18
|
let overflowed = false;
|
|
18
19
|
const dispatch = () => {
|
|
19
20
|
if (!dataLines.length) {
|
|
20
|
-
//
|
|
21
|
+
// Per spec, an event without `data:` is discarded.
|
|
21
22
|
eventType = "";
|
|
22
23
|
return;
|
|
23
24
|
}
|
|
@@ -31,19 +32,19 @@ export function createSSEParser(options = {}) {
|
|
|
31
32
|
options.onEvent?.(event);
|
|
32
33
|
};
|
|
33
34
|
const handleLine = (line) => {
|
|
34
|
-
//
|
|
35
|
+
// An empty line terminates the current event.
|
|
35
36
|
if (!line) {
|
|
36
37
|
dispatch();
|
|
37
38
|
return;
|
|
38
39
|
}
|
|
39
|
-
//
|
|
40
|
+
// Lines starting with a colon are comments (usually heartbeats); ignore them.
|
|
40
41
|
if (line.startsWith(":")) {
|
|
41
42
|
return;
|
|
42
43
|
}
|
|
43
44
|
const colonIndex = line.indexOf(":");
|
|
44
45
|
const field = colonIndex === -1 ? line : line.slice(0, colonIndex);
|
|
45
46
|
let value = colonIndex === -1 ? "" : line.slice(colonIndex + 1);
|
|
46
|
-
//
|
|
47
|
+
// The spec allows exactly one leading space in the value.
|
|
47
48
|
if (value.startsWith(" ")) {
|
|
48
49
|
value = value.slice(1);
|
|
49
50
|
}
|
|
@@ -76,7 +77,7 @@ export function createSSEParser(options = {}) {
|
|
|
76
77
|
if (!chunk || overflowed) {
|
|
77
78
|
return;
|
|
78
79
|
}
|
|
79
|
-
//
|
|
80
|
+
// Strip a UTF-8 BOM from the first chunk.
|
|
80
81
|
if (isFirstChunk) {
|
|
81
82
|
isFirstChunk = false;
|
|
82
83
|
buffer = chunk.charCodeAt(0) === 0xfeff ? chunk.slice(1) : chunk;
|
|
@@ -89,14 +90,16 @@ export function createSSEParser(options = {}) {
|
|
|
89
90
|
if (!match) {
|
|
90
91
|
break;
|
|
91
92
|
}
|
|
92
|
-
//
|
|
93
|
+
// Wait for the next chunk when the buffer ends with a lone \r, so that
|
|
94
|
+
// a split "\r\n" is not treated as two line breaks.
|
|
93
95
|
if (match[0] === "\r" && match.index === buffer.length - 1) {
|
|
94
96
|
break;
|
|
95
97
|
}
|
|
96
98
|
handleLine(buffer.slice(0, match.index));
|
|
97
99
|
buffer = buffer.slice(match.index + match[0].length);
|
|
98
100
|
}
|
|
99
|
-
//
|
|
101
|
+
// No line break for far too long means the payload is not valid SSE:
|
|
102
|
+
// stop early instead of growing the buffer until the process dies.
|
|
100
103
|
if (!overflowed && buffer.length > maxBufferSize) {
|
|
101
104
|
overflowed = true;
|
|
102
105
|
buffer = "";
|
package/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAUA,
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
package/share.d.ts
CHANGED
|
@@ -1,26 +1,29 @@
|
|
|
1
1
|
import type { SSEClient } from "./client.js";
|
|
2
2
|
import type { SSEEventMap } from "./types.js";
|
|
3
|
-
/**
|
|
3
|
+
/** Handle for a shared connection. */
|
|
4
4
|
export interface SharedSSEHandle<E extends object = SSEEventMap> {
|
|
5
5
|
client: SSEClient<E>;
|
|
6
|
-
/**
|
|
6
|
+
/** Release one reference; the connection closes when the last reference is released. */
|
|
7
7
|
release: () => void;
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* Share a connection by key, using reference counting.
|
|
11
11
|
*
|
|
12
|
-
*
|
|
12
|
+
* When several components consume the same subscription they should not open one
|
|
13
|
+
* connection each: HTTP/1.1 allows only six per origin, so push channels can
|
|
14
|
+
* starve regular requests, and the server would receive duplicate subscriptions.
|
|
13
15
|
*
|
|
14
16
|
* ```ts
|
|
15
17
|
* const { client, release } = acquireSSEClient("alarm", () => new SSEClient({ url, body }));
|
|
16
18
|
* onScopeDispose(release);
|
|
17
19
|
* ```
|
|
18
20
|
*
|
|
19
|
-
*
|
|
21
|
+
* The options of the first caller win; later calls with the same key reuse that
|
|
22
|
+
* connection and ignore their own options.
|
|
20
23
|
*/
|
|
21
24
|
export declare function acquireSSEClient<E extends object = SSEEventMap>(key: string, create: () => SSEClient<E>): SharedSSEHandle<E>;
|
|
22
|
-
/**
|
|
25
|
+
/** Close and drop every shared connection (mainly for tests and teardown). */
|
|
23
26
|
export declare function closeAllSharedSSEClients(): void;
|
|
24
|
-
/**
|
|
27
|
+
/** Number of live shared connections, useful for tests and diagnostics. */
|
|
25
28
|
export declare function getSharedSSEClientCount(): number;
|
|
26
29
|
//# sourceMappingURL=share.d.ts.map
|
package/share.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"share.d.ts","sourceRoot":"","sources":["../src/share.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,
|
|
1
|
+
{"version":3,"file":"share.d.ts","sourceRoot":"","sources":["../src/share.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,sCAAsC;AACtC,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW;IAC7D,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACrB,wFAAwF;IACxF,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AASD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,EAC7D,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,SAAS,CAAC,CAAC,CAAC,GACzB,eAAe,CAAC,CAAC,CAAC,CAepB;AAED,8EAA8E;AAC9E,wBAAgB,wBAAwB,IAAI,IAAI,CAK/C;AAED,2EAA2E;AAC3E,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD"}
|
package/share.js
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
const registry = new Map();
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Share a connection by key, using reference counting.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* When several components consume the same subscription they should not open one
|
|
6
|
+
* connection each: HTTP/1.1 allows only six per origin, so push channels can
|
|
7
|
+
* starve regular requests, and the server would receive duplicate subscriptions.
|
|
6
8
|
*
|
|
7
9
|
* ```ts
|
|
8
10
|
* const { client, release } = acquireSSEClient("alarm", () => new SSEClient({ url, body }));
|
|
9
11
|
* onScopeDispose(release);
|
|
10
12
|
* ```
|
|
11
13
|
*
|
|
12
|
-
*
|
|
14
|
+
* The options of the first caller win; later calls with the same key reuse that
|
|
15
|
+
* connection and ignore their own options.
|
|
13
16
|
*/
|
|
14
17
|
export function acquireSSEClient(key, create) {
|
|
15
18
|
const existing = registry.get(key);
|
|
@@ -27,14 +30,14 @@ export function acquireSSEClient(key, create) {
|
|
|
27
30
|
release: once(() => release(key)),
|
|
28
31
|
};
|
|
29
32
|
}
|
|
30
|
-
/**
|
|
33
|
+
/** Close and drop every shared connection (mainly for tests and teardown). */
|
|
31
34
|
export function closeAllSharedSSEClients() {
|
|
32
35
|
for (const entry of [...registry.values()]) {
|
|
33
36
|
entry.client.close();
|
|
34
37
|
}
|
|
35
38
|
registry.clear();
|
|
36
39
|
}
|
|
37
|
-
/**
|
|
40
|
+
/** Number of live shared connections, useful for tests and diagnostics. */
|
|
38
41
|
export function getSharedSSEClientCount() {
|
|
39
42
|
return registry.size;
|
|
40
43
|
}
|
|
@@ -50,7 +53,7 @@ function release(key) {
|
|
|
50
53
|
registry.delete(key);
|
|
51
54
|
entry.client.close();
|
|
52
55
|
}
|
|
53
|
-
/**
|
|
56
|
+
/** Make `release` idempotent so a double call cannot free someone else's reference. */
|
|
54
57
|
function once(fn) {
|
|
55
58
|
let called = false;
|
|
56
59
|
return () => {
|
package/share.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"share.js","sourceRoot":"","sources":["../src/share.ts"],"names":[],"mappings":"AAeA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;AAEhD
|
|
1
|
+
{"version":3,"file":"share.js","sourceRoot":"","sources":["../src/share.ts"],"names":[],"mappings":"AAeA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;AAEhD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gBAAgB,CAC9B,GAAW,EACX,MAA0B;IAE1B,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC;QACnB,OAAO;YACL,MAAM,EAAE,QAAQ,CAAC,MAAiC;YAClD,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SAClC,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAsC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/E,OAAO;QACL,MAAM;QACN,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,wBAAwB;IACtC,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC3C,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IACD,QAAQ,CAAC,KAAK,EAAE,CAAC;AACnB,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,uBAAuB;IACrC,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,SAAS,OAAO,CAAC,GAAW;IAC1B,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IACD,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC;IAChB,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO;IACT,CAAC;IACD,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;AACvB,CAAC;AAED,uFAAuF;AACvF,SAAS,IAAI,CAAC,EAAc;IAC1B,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,OAAO,GAAG,EAAE;QACV,IAAI,MAAM,EAAE,CAAC;YACX,OAAO;QACT,CAAC;QACD,MAAM,GAAG,IAAI,CAAC;QACd,EAAE,EAAE,CAAC;IACP,CAAC,CAAC;AACJ,CAAC"}
|
package/stream.d.ts
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import type { SSEMessage } from "./types.js";
|
|
2
2
|
export interface SSEMessageStreamOptions<T = unknown> {
|
|
3
|
-
/**
|
|
3
|
+
/** Payload decoder, e.g. `(raw) => JSON.parse(raw)`. */
|
|
4
4
|
parse?: (raw: string) => T;
|
|
5
|
-
/**
|
|
5
|
+
/** Buffer cap in characters for a single message (default 1MB). */
|
|
6
6
|
maxBufferSize?: number;
|
|
7
7
|
}
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* Turn a byte stream into a message stream using Web Streams composition —
|
|
10
|
+
* the same shape as AI SDK's `parseJsonEventStream`.
|
|
10
11
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
12
|
+
* Useful when `SSEClient` is not involved: custom transports, Service Workers,
|
|
13
|
+
* edge runtimes. A parse failure (buffer overflow) errors the stream and the
|
|
14
|
+
* consumer decides whether to retry.
|
|
13
15
|
*
|
|
14
16
|
* ```ts
|
|
15
17
|
* const response = await fetch(url, { headers });
|
package/stream.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,uBAAuB,CAAC,CAAC,GAAG,OAAO;IAClD,
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,uBAAuB,CAAC,CAAC,GAAG,OAAO;IAClD,wDAAwD;IACxD,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,CAAC;IAC3B,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,GAAG,OAAO,EAChD,OAAO,GAAE,uBAAuB,CAAC,CAAC,CAAM,GACvC,eAAe,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CA+C5C"}
|
package/stream.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { SSEError } from "./errors.js";
|
|
2
2
|
import { createSSEParser } from "./parser.js";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Turn a byte stream into a message stream using Web Streams composition —
|
|
5
|
+
* the same shape as AI SDK's `parseJsonEventStream`.
|
|
5
6
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
7
|
+
* Useful when `SSEClient` is not involved: custom transports, Service Workers,
|
|
8
|
+
* edge runtimes. A parse failure (buffer overflow) errors the stream and the
|
|
9
|
+
* consumer decides whether to retry.
|
|
8
10
|
*
|
|
9
11
|
* ```ts
|
|
10
12
|
* const response = await fetch(url, { headers });
|
|
@@ -25,8 +27,8 @@ export function createSSEMessageStream(options = {}) {
|
|
|
25
27
|
data = options.parse(event.data);
|
|
26
28
|
}
|
|
27
29
|
catch (error) {
|
|
28
|
-
//
|
|
29
|
-
console.error("[sse-client] parse
|
|
30
|
+
// Drop only this message; the stream keeps flowing.
|
|
31
|
+
console.error("[sse-client] failed to parse message, skipping it", error);
|
|
30
32
|
return;
|
|
31
33
|
}
|
|
32
34
|
}
|
|
@@ -39,7 +41,7 @@ export function createSSEMessageStream(options = {}) {
|
|
|
39
41
|
});
|
|
40
42
|
},
|
|
41
43
|
onRetry: () => {
|
|
42
|
-
//
|
|
44
|
+
// The plain message stream does not reconnect; `retry:` is handled by SSEClient.
|
|
43
45
|
},
|
|
44
46
|
});
|
|
45
47
|
return new TransformStream({
|
|
@@ -49,7 +51,10 @@ export function createSSEMessageStream(options = {}) {
|
|
|
49
51
|
transform(chunk) {
|
|
50
52
|
parser.feed(decoder.decode(chunk, { stream: true }));
|
|
51
53
|
if (parser.overflowed) {
|
|
52
|
-
throw new SSEError("SSE
|
|
54
|
+
throw new SSEError("SSE buffer size limit exceeded", {
|
|
55
|
+
kind: "protocol",
|
|
56
|
+
retryable: false,
|
|
57
|
+
});
|
|
53
58
|
}
|
|
54
59
|
},
|
|
55
60
|
flush() {
|
package/stream.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAU9C
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAU9C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,sBAAsB,CACpC,UAAsC,EAAE;IAExC,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,UAA2D,CAAC;IAEhE,MAAM,MAAM,GAAG,eAAe,CAAC;QAC7B,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,IAAI,IAAI,GAAY,KAAK,CAAC,IAAI,CAAC;YAC/B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,IAAI,CAAC;oBACH,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,oDAAoD;oBACpD,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAC;oBAC1E,OAAO;gBACT,CAAC;YACH,CAAC;YACD,UAAU,CAAC,OAAO,CAAC;gBACjB,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,SAAS;gBAC/B,IAAI,EAAE,IAAS;gBACf,GAAG,EAAE,KAAK,CAAC,IAAI;gBACf,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;aACvB,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,iFAAiF;QACnF,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,IAAI,eAAe,CAA4B;QACpD,KAAK,CAAC,gBAAgB;YACpB,UAAU,GAAG,gBAAgB,CAAC;QAChC,CAAC;QACD,SAAS,CAAC,KAAK;YACb,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACrD,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,MAAM,IAAI,QAAQ,CAAC,gCAAgC,EAAE;oBACnD,IAAI,EAAE,UAAU;oBAChB,SAAS,EAAE,KAAK;iBACjB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,KAAK;YACH,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAChC,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
package/types.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/** A single Server-Sent Event message. */
|
|
2
2
|
export interface SSEMessage<T = unknown> {
|
|
3
|
-
/**
|
|
3
|
+
/** Event id. Falls back to the previous id when the server omits it, used for Last-Event-ID resume. */
|
|
4
4
|
id: string;
|
|
5
|
-
/**
|
|
5
|
+
/** Event name; defaults to "message" when the server does not send an `event:` field. */
|
|
6
6
|
event: string;
|
|
7
|
-
/**
|
|
7
|
+
/** Parsed payload. Raw string by default, or whatever `parse` returns. */
|
|
8
8
|
data: T;
|
|
9
|
-
/**
|
|
9
|
+
/** Raw `data:` text (multi-line payloads joined with a newline), useful for debugging. */
|
|
10
10
|
raw: string;
|
|
11
|
-
/**
|
|
11
|
+
/** Client-side receive timestamp, handy for staleness checks. */
|
|
12
12
|
receivedAt: number;
|
|
13
13
|
}
|
|
14
|
-
/**
|
|
14
|
+
/** Connection state machine: idle → connecting → open → reconnecting → closed. */
|
|
15
15
|
export type SSEStatus = "idle" | "connecting" | "open" | "reconnecting" | "closed";
|
|
16
|
-
/**
|
|
16
|
+
/** Why the connection ended. */
|
|
17
17
|
export type SSECloseReason = "user" | "end" | "error";
|
|
18
|
-
/**
|
|
18
|
+
/** Event-name → payload map, used to infer handler argument types. */
|
|
19
19
|
export type SSEEventMap = Record<string, unknown>;
|
|
20
|
-
/**
|
|
20
|
+
/** Unsubscribe function returned by every subscription helper. */
|
|
21
21
|
export type Unsubscribe = () => void;
|
|
22
22
|
//# sourceMappingURL=types.d.ts.map
|