Add SmartServe integration, tagging and improved client reconnect/backoff; update deps and tests
- Add SmartServe integration: new TypedSocket.fromSmartServe(smartServe, typedRouter) with SmartServe connection wrappers and tag compatibility
- Implement server-side tag handlers and storage (__typedsocket_setTag / __typedsocket_removeTag) with payloads stored under internal TAG_PREFIX
- Add client improvements: TypedSocket.createClient(...) with autoReconnect, configurable exponential backoff (initialBackoffMs, maxBackoffMs, maxRetries) and connection status observable (statusSubject)
- Expose client tag API: setTag(name, payload) and removeTag(name) to manage server-side tags
- Server-side APIs for connection discovery: findAllTargetConnections, findTargetConnection, findAllTargetConnectionsByTag, findTargetConnectionByTag
- Plugins and internal tooling updated: replace smartsocket exports with smartdelay and smartpromise; export smartpromise and smartdelay for internal use
- Tests updated to use SmartServe for end-to-end scenarios (server/client message flow, tagging and connection discovery); test script changed to run in verbose mode
- Bumped dependency versions and adjusted peer dependency for @push.rocks/smartserve to >=1.1.0
Remove SmartExpress attachment support from createServer and upgrade smartsocket to ^3.0.0
- Bump dependency @push.rocks/smartsocket from ^2.1.0 to ^3.0.0.
- Remove optional SmartExpress attachment parameter from TypedSocket.createServer and remove the setExternalServer call — createServer now only accepts a TypedRouter and starts its own Smartsocket server.
- Update README: remove the SmartExpress integration section and adjust the API docs to reflect the new createServer(router) signature.
- Adjust TypeScript implementation to match the simplified createServer signature and behavior.
Include pnpm packageManager metadata in package.json
- Added packageManager field to package.json: pnpm@10.18.1+sha512.77a884a165cbba2d8d1c19e3b4880eee6d2fcabd0d879121e282196b80042351d5eb3ca0935fa599da1dc51265cc68816ad2bddd2a2de5ea9fdf92adbec7cd34
- No runtime or API changes — metadata-only change
Add SmartServe integration to TypedSocket, support SmartServe connections and tagging; update dependencies and docs; remove GitLab CI config
- Add TypedSocket.fromSmartServe(smartServe, typedRouter) to bind TypedSocket to an existing SmartServe instance for native WebSocket handling.
- Introduce ISmartServeConnectionWrapper and wrapSmartServePeer to provide tag compatibility between SmartServe (Set<string>) and TypedSocket (id/payload). Tag payloads are stored in peer.data with '__typedsocket_tag__' prefix.
- Server-initiated requests in SmartServe mode use TypedRouter.fireEventInterestMap to correlate requests and responses asynchronously.
- Extend createTypedRequest, findAllTargetConnections, findTargetConnection, findAllTargetConnectionsByTag and findTargetConnectionByTag to support both Smartsocket and SmartServe backends (via wrappers).
- eventSubject: Emit a warning and return a new Subject in SmartServe mode (SmartServe lifecycle/events should be consumed via SmartServe hooks).
- stop(): In SmartServe mode TypedSocket clears internal wrappers but does not stop SmartServe (SmartServe lifecycle is managed externally).
- Add optional peer dependency @push.rocks/smartserve and expose type-only imports in ts/typedsocket.plugins.ts.
- Bump several devDependencies and runtime dependencies to newer versions (tsbuild, tsbundle, tsrun, tstest, smartenv, smartserve, smartjson, smartrx, smartsocket, smartstring, smarturl).
- Update README and readme.hints with SmartServe integration docs and examples.