pino-sse 1.0.2 → 1.0.3

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/package.json CHANGED
@@ -1,12 +1,14 @@
1
1
  {
2
2
  "name": "pino-sse",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "Pino transport for server side events",
5
5
  "license": "MIT",
6
6
  "author": "Jimmy Lew",
7
7
  "main": "./dist/psse.mjs",
8
8
  "scripts": {
9
- "lint": "eslint"
9
+ "build": "tsdown",
10
+ "lint": "eslint",
11
+ "prepack": "pnpm build"
10
12
  },
11
13
  "bin": {
12
14
  "pino-sse": "./psse.ts"
package/dist/psse.mjs DELETED
@@ -1,3 +0,0 @@
1
- import e from"pino-abstract-transport";import{v4 as t}from"uuid";import{App as n}from"uWebSockets.js";import{cors as r}from"uws-cors";async function i(i={port:3333}){let a=r(n()),o={};return a.get(`/`,e=>{let n=t();e.cork(()=>{e.writeHeader(`Content-Type`,`text/event-stream`),e.writeHeader(`Connection`,`keep-alive`),e.writeHeader(`Cache-Control`,`no-cache`)}),e.writeStatus(`200 OK`),o[n]=e,e.onAborted(()=>{delete o[n]})}),a.listen(i.port,()=>{}),e(async e=>{for await(let n of e){n.log_id=t();let e=JSON.stringify(n);for(let t of Object.values(o))t.cork(()=>t.write(`data: ${e}\n\n`))}},{async close(e){for(let e of Object.values(o))e.cork(()=>e.write(`event: close
2
- `)),e.close();a.close()},parseLine(e){return JSON.parse(e)}})}export{i as default};
3
- //# sourceMappingURL=psse.mjs.map
package/dist/psse.mjs.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"psse.mjs","names":["connections: Record<string, HttpResponse>","uuid"],"sources":["../psse.ts"],"sourcesContent":["import build from 'pino-abstract-transport'\nimport { v4 as uuid } from 'uuid'\nimport { App } from 'uWebSockets.js'\nimport type { HttpResponse } from 'uWebSockets.js'\nimport {cors} from 'uws-cors'\n\ninterface SSETransportOptions {\n port: number\n}\n\nexport default async function (opts: SSETransportOptions = {port: 3333}) {\n const app = cors(App())\n const connections: Record<string, HttpResponse> = {}\n\n app.get(\"/\", (conn) => {\n const conn_id = uuid()\n conn.cork(() => {\n conn.writeHeader('Content-Type', 'text/event-stream')\n conn.writeHeader('Connection', 'keep-alive')\n conn.writeHeader('Cache-Control', 'no-cache')\n })\n conn.writeStatus('200 OK')\n\n connections[conn_id] = conn\n\n conn.onAborted(() => {\n delete connections[conn_id]\n })\n\n })\n app.listen(opts.port, () => {})\n\n\n return build(async (stream) => {\n for await (const obj of stream) {\n obj[\"log_id\"] = uuid()\n const log = JSON.stringify(obj)\n for (const conn of Object.values(connections)) {\n conn.cork(() => conn.write(`data: ${log}\\n\\n`))\n }\n }\n }, {\n async close(_) {\n for (const conn of Object.values(connections)) {\n conn.cork(() => conn.write('event: close\\n'))\n conn.close()\n }\n app.close()\n },\n parseLine(line) {\n return JSON.parse(line)\n },\n })\n}\n"],"mappings":"sIAUA,eAAA,EAA+B,EAA4B,CAAC,KAAM,KAAK,CAAE,CACvE,IAAM,EAAM,EAAK,GAAK,CAAC,CACjBA,EAA4C,EAAE,CAqBpD,OAnBA,EAAI,IAAI,IAAM,GAAS,CACrB,IAAM,EAAUC,GAAM,CACtB,EAAK,SAAW,CACd,EAAK,YAAY,eAAgB,oBAAoB,CACrD,EAAK,YAAY,aAAc,aAAa,CAC5C,EAAK,YAAY,gBAAiB,WAAW,EAC7C,CACF,EAAK,YAAY,SAAS,CAE1B,EAAY,GAAW,EAEvB,EAAK,cAAgB,CACnB,OAAO,EAAY,IACnB,EAEF,CACF,EAAI,OAAO,EAAK,SAAY,GAAG,CAGxB,EAAM,KAAO,IAAW,CAC7B,UAAW,IAAM,KAAO,EAAQ,CAC9B,EAAI,OAAYA,GAAM,CACtB,IAAM,EAAM,KAAK,UAAU,EAAI,CAC/B,IAAK,IAAM,KAAQ,OAAO,OAAO,EAAY,CAC3C,EAAK,SAAW,EAAK,MAAM,SAAS,EAAI,MAAM,CAAC,GAGlD,CACD,MAAM,MAAM,EAAG,CACb,IAAK,IAAM,KAAQ,OAAO,OAAO,EAAY,CAC3C,EAAK,SAAW,EAAK,MAAM;EAAiB,CAAC,CAC7C,EAAK,OAAO,CAEd,EAAI,OAAO,EAEb,UAAU,EAAM,CACd,OAAO,KAAK,MAAM,EAAK,EAE1B,CAAC"}