@decohere/scribe 0.0.1-dev.69 → 0.0.1-dev.70

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.
@@ -24,6 +24,9 @@ class LogAdapter {
24
24
  flush(cb) {
25
25
  cb?.();
26
26
  }
27
+ retire() {
28
+ // Console / no-op adapters have nothing to release.
29
+ }
27
30
  async stop() {
28
31
  await this[Symbol.asyncDispose]();
29
32
  }
@@ -48,4 +51,4 @@ class LogAdapter {
48
51
  }
49
52
  }
50
53
 
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL3NjcmliZS9zY3JpYmUvc3JjL2xvZ2dlci5hZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTG9nZ2VyIH0gZnJvbSBcIi4vbG9nZ2VyLnR5cGUuanNcIjtcbmltcG9ydCB7IExvZ0xldmVscywgdHlwZSBTY3JpYmVPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXMuanNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEVycm9yKGVycjogRXJyb3IpOiBzdHJpbmcge1xuXHRyZXR1cm4gZXJyLnN0YWNrID8/IGVyci5tZXNzYWdlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvZ2dlckFkYXB0ZXIgZXh0ZW5kcyBBc3luY0Rpc3Bvc2FibGUge1xuXHRjb25maWd1cmU8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG9wdGlvbnM6IFNjcmliZU9wdGlvbnM8VCwgQ3VzdG9tT25seT4sXG5cdCk7XG5cdGdldExvZ2dlcjxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0bmFtZTogc3RyaW5nLFxuXHQpOiBMb2dnZXI8VCwgQ3VzdG9tT25seT47XG5cdGZsdXNoKGNiPzogKCkgPT4gdm9pZCk6IHZvaWQ7XG5cdC8qKlxuXHQgKiBEcmFpbiBidWZmZXJlZCBvdXRwdXQgYW5kIHJlbGVhc2UgdW5tYW5hZ2VkIGhhbmRsZXMgKHdvcmtlcnMsIGZkcykuXG5cdCAqIElkZW1wb3RlbnQg4oCUIHNhZmUgdG8gY2FsbCBtb3JlIHRoYW4gb25jZS5cblx0ICovXG5cdHN0b3AoKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExvZ0FkYXB0ZXIgaW1wbGVtZW50cyBMb2dnZXJBZGFwdGVyIHtcblx0cHVibGljIGFic3RyYWN0IGNvbmZpZ3VyZTxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0b3B0aW9uczogU2NyaWJlT3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KTtcblxuXHRwdWJsaWMgYWJzdHJhY3QgZ2V0TG9nZ2VyPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRuYW1lOiBzdHJpbmcsXG5cdCk6IExvZ2dlcjxULCBDdXN0b21Pbmx5PjtcblxuXHRwdWJsaWMgZmx1c2goY2I/OiAoKSA9PiB2b2lkKTogdm9pZCB7XG5cdFx0Y2I/LigpO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIHN0b3AoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0YXdhaXQgdGhpc1tTeW1ib2wuYXN5bmNEaXNwb3NlXSgpO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIFtTeW1ib2wuYXN5bmNEaXNwb3NlXSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHQvLyBDb25zb2xlIC8gbm8tb3AgYWRhcHRlcnMgaGF2ZSBub3RoaW5nIHRvIHJlbGVhc2UuXG5cdH1cblxuXHQvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL25vRXhwbGljaXRBbnk6IEdlbmVyaWMgdXRpbGl0eSBtZXRob2QgbmVlZHMgZmxleGlibGUgdHlwaW5nXG5cdHByb3RlY3RlZCBnZXRMb2dMZXZlbHMob3B0aW9uczogU2NyaWJlT3B0aW9uczxhbnksIGFueT4pOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+IHtcblx0XHRjb25zdCB7IGN1c3RvbU9ubHksIGN1c3RvbUxldmVscyB9ID0gb3B0aW9ucztcblx0XHRpZiAoY3VzdG9tT25seSkge1xuXHRcdFx0cmV0dXJuIGN1c3RvbUxldmVscztcblx0XHR9XG5cdFx0Y29uc3QgbGV2ZWxzID0gdGhpcy5nZXRVbmlxdWVMZXZlbHMoTG9nTGV2ZWxzLCBjdXN0b21MZXZlbHMpO1xuXHRcdHJldHVybiBPYmplY3QuZnJvbUVudHJpZXMobGV2ZWxzKTtcblx0fVxuXG5cdHByb3RlY3RlZCBnZXRVbmlxdWVMZXZlbHMoXG5cdFx0ZGVmYXVsdExldmVsczogUmVjb3JkPHN0cmluZywgbnVtYmVyPixcblx0XHRjdXN0b21MZXZlbHM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4sXG5cdCkge1xuXHRcdGNvbnN0IGRlZmF1bHRFbnRyaWVzID0gT2JqZWN0LmVudHJpZXMoZGVmYXVsdExldmVscyA/PyB7fSk7XG5cdFx0Y29uc3QgY3VzdG9tRW50cmllcyA9IE9iamVjdC5lbnRyaWVzKGN1c3RvbUxldmVscyA/PyB7fSk7XG5cdFx0Y29uc3QgZGVmYXVsdE5vdEluQ3VzdG9tID0gZGVmYXVsdEVudHJpZXMuZmlsdGVyKFxuXHRcdFx0KFtka10pID0+IGN1c3RvbUVudHJpZXMuZmluZEluZGV4KChbY2tdKSA9PiBjayA9PT0gZGspID09PSAtMSxcblx0XHQpO1xuXG5cdFx0Y29uc3QgdW5pcXVlID0gZGVmYXVsdE5vdEluQ3VzdG9tLmNvbmNhdChjdXN0b21FbnRyaWVzKTtcblx0XHRyZXR1cm4gdW5pcXVlO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiTG9nQWRhcHRlciIsImZvcm1hdEVycm9yIiwiZXJyIiwic3RhY2siLCJtZXNzYWdlIiwiZmx1c2giLCJjYiIsInN0b3AiLCJTeW1ib2wiLCJhc3luY0Rpc3Bvc2UiLCJnZXRMb2dMZXZlbHMiLCJvcHRpb25zIiwiY3VzdG9tT25seSIsImN1c3RvbUxldmVscyIsImxldmVscyIsImdldFVuaXF1ZUxldmVscyIsIkxvZ0xldmVscyIsIk9iamVjdCIsImZyb21FbnRyaWVzIiwiZGVmYXVsdExldmVscyIsImRlZmF1bHRFbnRyaWVzIiwiZW50cmllcyIsImN1c3RvbUVudHJpZXMiLCJkZWZhdWx0Tm90SW5DdXN0b20iLCJmaWx0ZXIiLCJkayIsImZpbmRJbmRleCIsImNrIiwidW5pcXVlIiwiY29uY2F0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztRQXNCc0JBO2VBQUFBOztRQW5CTkM7ZUFBQUE7Ozt1QkFGOEI7QUFFdkMsU0FBU0EsWUFBWUMsR0FBVTtJQUNyQyxPQUFPQSxJQUFJQyxLQUFLLElBQUlELElBQUlFLE9BQU87QUFDaEM7QUFpQk8sTUFBZUo7SUFTZEssTUFBTUMsRUFBZSxFQUFRO1FBQ25DQTtJQUNEO0lBRUEsTUFBYUMsT0FBc0I7UUFDbEMsTUFBTSxJQUFJLENBQUNDLE9BQU9DLFlBQVksQ0FBQztJQUNoQztJQUVBLE1BQWEsQ0FBQ0QsT0FBT0MsWUFBWSxDQUFDLEdBQWtCO0lBQ25ELG9EQUFvRDtJQUNyRDtJQUVBLDJGQUEyRjtJQUNqRkMsYUFBYUMsT0FBZ0MsRUFBMEI7UUFDaEYsTUFBTSxFQUFFQyxVQUFVLEVBQUVDLFlBQVksRUFBRSxHQUFHRjtRQUNyQyxJQUFJQyxZQUFZO1lBQ2YsT0FBT0M7UUFDUjtRQUNBLE1BQU1DLFNBQVMsSUFBSSxDQUFDQyxlQUFlLENBQUNDLGdCQUFTLEVBQUVIO1FBQy9DLE9BQU9JLE9BQU9DLFdBQVcsQ0FBQ0o7SUFDM0I7SUFFVUMsZ0JBQ1RJLGFBQXFDLEVBQ3JDTixZQUFvQyxFQUNuQztRQUNELE1BQU1PLGlCQUFpQkgsT0FBT0ksT0FBTyxDQUFDRixpQkFBaUIsQ0FBQztRQUN4RCxNQUFNRyxnQkFBZ0JMLE9BQU9JLE9BQU8sQ0FBQ1IsZ0JBQWdCLENBQUM7UUFDdEQsTUFBTVUscUJBQXFCSCxlQUFlSSxNQUFNLENBQy9DLENBQUMsQ0FBQ0MsR0FBRyxHQUFLSCxjQUFjSSxTQUFTLENBQUMsQ0FBQyxDQUFDQyxHQUFHLEdBQUtBLE9BQU9GLFFBQVEsQ0FBQztRQUc3RCxNQUFNRyxTQUFTTCxtQkFBbUJNLE1BQU0sQ0FBQ1A7UUFDekMsT0FBT007SUFDUjtBQUNEIn0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL3NjcmliZS9zY3JpYmUvc3JjL2xvZ2dlci5hZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTG9nZ2VyIH0gZnJvbSBcIi4vbG9nZ2VyLnR5cGUuanNcIjtcbmltcG9ydCB7IExvZ0xldmVscywgdHlwZSBTY3JpYmVPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXMuanNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEVycm9yKGVycjogRXJyb3IpOiBzdHJpbmcge1xuXHRyZXR1cm4gZXJyLnN0YWNrID8/IGVyci5tZXNzYWdlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvZ2dlckFkYXB0ZXIgZXh0ZW5kcyBBc3luY0Rpc3Bvc2FibGUge1xuXHRjb25maWd1cmU8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG9wdGlvbnM6IFNjcmliZU9wdGlvbnM8VCwgQ3VzdG9tT25seT4sXG5cdCk7XG5cdGdldExvZ2dlcjxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0bmFtZTogc3RyaW5nLFxuXHQpOiBMb2dnZXI8VCwgQ3VzdG9tT25seT47XG5cdGZsdXNoKGNiPzogKCkgPT4gdm9pZCk6IHZvaWQ7XG5cdC8qKlxuXHQgKiBTeW5jaHJvbm91c2x5IHN0b3AgYWNjZXB0aW5nIHdyaXRlcyAoa2lsbCBUaHJlYWRTdHJlYW0gLyBjbG9zZSBmZHMpLlxuXHQgKiBDYWxsIGJlZm9yZSBzd2FwcGluZyBhZGFwdGVycyBzbyBhIGRlYWQgd29ya2VyIGNhbm5vdCBzcGFtIG9uIGZ1cnRoZXIgbG9ncy5cblx0ICogSWRlbXBvdGVudCDigJQgc2FmZSB0byBjYWxsIG1vcmUgdGhhbiBvbmNlLlxuXHQgKi9cblx0cmV0aXJlKCk6IHZvaWQ7XG5cdC8qKlxuXHQgKiBEcmFpbiBidWZmZXJlZCBvdXRwdXQgYW5kIHJlbGVhc2UgdW5tYW5hZ2VkIGhhbmRsZXMgKHdvcmtlcnMsIGZkcykuXG5cdCAqIElkZW1wb3RlbnQg4oCUIHNhZmUgdG8gY2FsbCBtb3JlIHRoYW4gb25jZS5cblx0ICovXG5cdHN0b3AoKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExvZ0FkYXB0ZXIgaW1wbGVtZW50cyBMb2dnZXJBZGFwdGVyIHtcblx0cHVibGljIGFic3RyYWN0IGNvbmZpZ3VyZTxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0b3B0aW9uczogU2NyaWJlT3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KTtcblxuXHRwdWJsaWMgYWJzdHJhY3QgZ2V0TG9nZ2VyPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRuYW1lOiBzdHJpbmcsXG5cdCk6IExvZ2dlcjxULCBDdXN0b21Pbmx5PjtcblxuXHRwdWJsaWMgZmx1c2goY2I/OiAoKSA9PiB2b2lkKTogdm9pZCB7XG5cdFx0Y2I/LigpO1xuXHR9XG5cblx0cHVibGljIHJldGlyZSgpOiB2b2lkIHtcblx0XHQvLyBDb25zb2xlIC8gbm8tb3AgYWRhcHRlcnMgaGF2ZSBub3RoaW5nIHRvIHJlbGVhc2UuXG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRhd2FpdCB0aGlzW1N5bWJvbC5hc3luY0Rpc3Bvc2VdKCk7XG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgW1N5bWJvbC5hc3luY0Rpc3Bvc2VdKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIENvbnNvbGUgLyBuby1vcCBhZGFwdGVycyBoYXZlIG5vdGhpbmcgdG8gcmVsZWFzZS5cblx0fVxuXG5cdC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9FeHBsaWNpdEFueTogR2VuZXJpYyB1dGlsaXR5IG1ldGhvZCBuZWVkcyBmbGV4aWJsZSB0eXBpbmdcblx0cHJvdGVjdGVkIGdldExvZ0xldmVscyhvcHRpb25zOiBTY3JpYmVPcHRpb25zPGFueSwgYW55Pik6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4ge1xuXHRcdGNvbnN0IHsgY3VzdG9tT25seSwgY3VzdG9tTGV2ZWxzIH0gPSBvcHRpb25zO1xuXHRcdGlmIChjdXN0b21Pbmx5KSB7XG5cdFx0XHRyZXR1cm4gY3VzdG9tTGV2ZWxzO1xuXHRcdH1cblx0XHRjb25zdCBsZXZlbHMgPSB0aGlzLmdldFVuaXF1ZUxldmVscyhMb2dMZXZlbHMsIGN1c3RvbUxldmVscyk7XG5cdFx0cmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhsZXZlbHMpO1xuXHR9XG5cblx0cHJvdGVjdGVkIGdldFVuaXF1ZUxldmVscyhcblx0XHRkZWZhdWx0TGV2ZWxzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+LFxuXHRcdGN1c3RvbUxldmVsczogUmVjb3JkPHN0cmluZywgbnVtYmVyPixcblx0KSB7XG5cdFx0Y29uc3QgZGVmYXVsdEVudHJpZXMgPSBPYmplY3QuZW50cmllcyhkZWZhdWx0TGV2ZWxzID8/IHt9KTtcblx0XHRjb25zdCBjdXN0b21FbnRyaWVzID0gT2JqZWN0LmVudHJpZXMoY3VzdG9tTGV2ZWxzID8/IHt9KTtcblx0XHRjb25zdCBkZWZhdWx0Tm90SW5DdXN0b20gPSBkZWZhdWx0RW50cmllcy5maWx0ZXIoXG5cdFx0XHQoW2RrXSkgPT4gY3VzdG9tRW50cmllcy5maW5kSW5kZXgoKFtja10pID0+IGNrID09PSBkaykgPT09IC0xLFxuXHRcdCk7XG5cblx0XHRjb25zdCB1bmlxdWUgPSBkZWZhdWx0Tm90SW5DdXN0b20uY29uY2F0KGN1c3RvbUVudHJpZXMpO1xuXHRcdHJldHVybiB1bmlxdWU7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJMb2dBZGFwdGVyIiwiZm9ybWF0RXJyb3IiLCJlcnIiLCJzdGFjayIsIm1lc3NhZ2UiLCJmbHVzaCIsImNiIiwicmV0aXJlIiwic3RvcCIsIlN5bWJvbCIsImFzeW5jRGlzcG9zZSIsImdldExvZ0xldmVscyIsIm9wdGlvbnMiLCJjdXN0b21Pbmx5IiwiY3VzdG9tTGV2ZWxzIiwibGV2ZWxzIiwiZ2V0VW5pcXVlTGV2ZWxzIiwiTG9nTGV2ZWxzIiwiT2JqZWN0IiwiZnJvbUVudHJpZXMiLCJkZWZhdWx0TGV2ZWxzIiwiZGVmYXVsdEVudHJpZXMiLCJlbnRyaWVzIiwiY3VzdG9tRW50cmllcyIsImRlZmF1bHROb3RJbkN1c3RvbSIsImZpbHRlciIsImRrIiwiZmluZEluZGV4IiwiY2siLCJ1bmlxdWUiLCJjb25jYXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBNEJzQkE7ZUFBQUE7O1FBekJOQztlQUFBQTs7O3VCQUY4QjtBQUV2QyxTQUFTQSxZQUFZQyxHQUFVO0lBQ3JDLE9BQU9BLElBQUlDLEtBQUssSUFBSUQsSUFBSUUsT0FBTztBQUNoQztBQXVCTyxNQUFlSjtJQVNkSyxNQUFNQyxFQUFlLEVBQVE7UUFDbkNBO0lBQ0Q7SUFFT0MsU0FBZTtJQUNyQixvREFBb0Q7SUFDckQ7SUFFQSxNQUFhQyxPQUFzQjtRQUNsQyxNQUFNLElBQUksQ0FBQ0MsT0FBT0MsWUFBWSxDQUFDO0lBQ2hDO0lBRUEsTUFBYSxDQUFDRCxPQUFPQyxZQUFZLENBQUMsR0FBa0I7SUFDbkQsb0RBQW9EO0lBQ3JEO0lBRUEsMkZBQTJGO0lBQ2pGQyxhQUFhQyxPQUFnQyxFQUEwQjtRQUNoRixNQUFNLEVBQUVDLFVBQVUsRUFBRUMsWUFBWSxFQUFFLEdBQUdGO1FBQ3JDLElBQUlDLFlBQVk7WUFDZixPQUFPQztRQUNSO1FBQ0EsTUFBTUMsU0FBUyxJQUFJLENBQUNDLGVBQWUsQ0FBQ0MsZ0JBQVMsRUFBRUg7UUFDL0MsT0FBT0ksT0FBT0MsV0FBVyxDQUFDSjtJQUMzQjtJQUVVQyxnQkFDVEksYUFBcUMsRUFDckNOLFlBQW9DLEVBQ25DO1FBQ0QsTUFBTU8saUJBQWlCSCxPQUFPSSxPQUFPLENBQUNGLGlCQUFpQixDQUFDO1FBQ3hELE1BQU1HLGdCQUFnQkwsT0FBT0ksT0FBTyxDQUFDUixnQkFBZ0IsQ0FBQztRQUN0RCxNQUFNVSxxQkFBcUJILGVBQWVJLE1BQU0sQ0FDL0MsQ0FBQyxDQUFDQyxHQUFHLEdBQUtILGNBQWNJLFNBQVMsQ0FBQyxDQUFDLENBQUNDLEdBQUcsR0FBS0EsT0FBT0YsUUFBUSxDQUFDO1FBRzdELE1BQU1HLFNBQVNMLG1CQUFtQk0sTUFBTSxDQUFDUDtRQUN6QyxPQUFPTTtJQUNSO0FBQ0QifQ==
@@ -20,16 +20,21 @@ class scribe {
20
20
  }
21
21
  static configure(configOptions) {
22
22
  const previous = scribe.instance;
23
+ // Sync: stop writes into the old ThreadStream before a new worker starts.
24
+ previous.retire();
23
25
  scribe.instance = new scribe();
24
26
  const factory = scribe.instance.configure(configOptions);
25
- // Fire-and-forget: Flux/App.stop should have drained already; this covers
26
- // reconfigure without an intervening stop (e.g. top-level withPino reload).
27
+ // Async drain of the retired adapter (flush / end). Flux/App.stop may
28
+ // have already done this; reconfigure without stop still needs it.
27
29
  void previous.stop();
28
30
  return factory;
29
31
  }
30
32
  static flush(cb) {
31
33
  scribe.instance.loggerProvider.flush(cb);
32
34
  }
35
+ /** Synchronously stop accepting writes on the active adapter. */ static retire() {
36
+ scribe.instance.retire();
37
+ }
33
38
  /** Drain the active adapter and release workers / destinations. */ static async stop() {
34
39
  await scribe.instance.stop();
35
40
  }
@@ -42,6 +47,9 @@ class scribe {
42
47
  configure(configOptions) {
43
48
  const { adapter, options } = configOptions;
44
49
  const previous = this.loggerProvider;
50
+ if (previous !== adapter) {
51
+ previous.retire();
52
+ }
45
53
  this.loggerProvider = adapter;
46
54
  const defaultsAndOptions = this.mergeDefaults(options);
47
55
  adapter.configure(defaultsAndOptions);
@@ -50,6 +58,9 @@ class scribe {
50
58
  }
51
59
  return (name)=>adapter.getLogger(name);
52
60
  }
61
+ retire() {
62
+ this.loggerProvider.retire();
63
+ }
53
64
  async stop() {
54
65
  await this.loggerProvider.stop();
55
66
  }
@@ -90,4 +101,4 @@ class scribe {
90
101
  }
91
102
  }
92
103
 
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL3NjcmliZS9zY3JpYmUvc3JjL2xvZ2dlci5mYWN0b3J5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnNvbGVBZGFwdGVyIH0gZnJvbSBcIi4vY29uc29sZS5hZGFwdGVyLmpzXCI7XG5pbXBvcnQgeyByZXNvbHZlTG9nTGV2ZWwgfSBmcm9tIFwiLi9lbnYuanNcIjtcbmltcG9ydCB7IExvZ2dpbmdDb25maWd1cmF0aW9uRXJyb3IgfSBmcm9tIFwiLi9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgTG9nZ2VyQWRhcHRlciB9IGZyb20gXCIuL2xvZ2dlci5hZGFwdGVyLmpzXCI7XG5pbXBvcnQgdHlwZSB7IExvZ2dlciB9IGZyb20gXCIuL2xvZ2dlci50eXBlLmpzXCI7XG5pbXBvcnQgeyBEZWZhdWx0TG9nTGV2ZWwsIERlZmF1bHRSZWRhY3Rpb25zLCB0eXBlIFNjcmliZU9wdGlvbnMgfSBmcm9tIFwiLi90eXBlcy5qc1wiO1xuXG50eXBlIExvZ2dlckZhY3RvcnlPcHRpb25zPFxuXHRUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsXG5cdEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZSxcbj4gPSB7XG5cdG9wdGlvbnM/OiBTY3JpYmVPcHRpb25zPFQsIEN1c3RvbU9ubHk+O1xuXHRhZGFwdGVyOiBMb2dnZXJBZGFwdGVyO1xufTtcblxuZXhwb3J0IGNsYXNzIHNjcmliZSBpbXBsZW1lbnRzIEFzeW5jRGlzcG9zYWJsZSB7XG5cdHByaXZhdGUgbG9nZ2VyUHJvdmlkZXI6IExvZ2dlckFkYXB0ZXI7XG5cdHByaXZhdGUgc3RhdGljIGluc3RhbmNlOiBzY3JpYmUgPSBuZXcgc2NyaWJlKCk7XG5cblx0cHVibGljIHN0YXRpYyBsb2dnZXI8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG5hbWU/OiBzdHJpbmcsXG5cdFx0Y3VzdG9tTGV2ZWxzPzoge1xuXHRcdFx0W2xldmVsIGluIFRdOiBudW1iZXI7XG5cdFx0fSxcblx0KTogTG9nZ2VyPFQsIEN1c3RvbU9ubHk+IHtcblx0XHRyZXR1cm4gc2NyaWJlLmluc3RhbmNlLmdldExvZ2dlcjxULCBDdXN0b21Pbmx5PihuYW1lLCBjdXN0b21MZXZlbHMpIGFzIExvZ2dlcjxcblx0XHRcdFQsXG5cdFx0XHRDdXN0b21Pbmx5XG5cdFx0Pjtcblx0fVxuXG5cdHB1YmxpYyBzdGF0aWMgY29uZmlndXJlPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRjb25maWdPcHRpb25zOiBMb2dnZXJGYWN0b3J5T3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KSB7XG5cdFx0Y29uc3QgcHJldmlvdXMgPSBzY3JpYmUuaW5zdGFuY2U7XG5cdFx0c2NyaWJlLmluc3RhbmNlID0gbmV3IHNjcmliZSgpO1xuXHRcdGNvbnN0IGZhY3RvcnkgPSBzY3JpYmUuaW5zdGFuY2UuY29uZmlndXJlPFQsIEN1c3RvbU9ubHk+KGNvbmZpZ09wdGlvbnMpO1xuXHRcdC8vIEZpcmUtYW5kLWZvcmdldDogRmx1eC9BcHAuc3RvcCBzaG91bGQgaGF2ZSBkcmFpbmVkIGFscmVhZHk7IHRoaXMgY292ZXJzXG5cdFx0Ly8gcmVjb25maWd1cmUgd2l0aG91dCBhbiBpbnRlcnZlbmluZyBzdG9wIChlLmcuIHRvcC1sZXZlbCB3aXRoUGlubyByZWxvYWQpLlxuXHRcdHZvaWQgcHJldmlvdXMuc3RvcCgpO1xuXHRcdHJldHVybiBmYWN0b3J5O1xuXHR9XG5cblx0cHVibGljIHN0YXRpYyBmbHVzaChjYj86ICgpID0+IHZvaWQpOiB2b2lkIHtcblx0XHRzY3JpYmUuaW5zdGFuY2UubG9nZ2VyUHJvdmlkZXIuZmx1c2goY2IpO1xuXHR9XG5cblx0LyoqIERyYWluIHRoZSBhY3RpdmUgYWRhcHRlciBhbmQgcmVsZWFzZSB3b3JrZXJzIC8gZGVzdGluYXRpb25zLiAqL1xuXHRwdWJsaWMgc3RhdGljIGFzeW5jIHN0b3AoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0YXdhaXQgc2NyaWJlLmluc3RhbmNlLnN0b3AoKTtcblx0fVxuXG5cdHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcblx0XHQvLyBJbml0aWFsaXplIHdpdGggZGVmYXVsdCBjb25zb2xlIGFkYXB0ZXJcblx0XHR0aGlzLmxvZ2dlclByb3ZpZGVyID0gbmV3IENvbnNvbGVBZGFwdGVyKCk7XG5cdFx0Y29uc3QgZGVmYXVsdE9wdGlvbnMgPSB0aGlzLm1lcmdlRGVmYXVsdHMoKTtcblx0XHR0aGlzLmxvZ2dlclByb3ZpZGVyLmNvbmZpZ3VyZShkZWZhdWx0T3B0aW9ucyk7XG5cdH1cblxuXHRwdWJsaWMgY29uZmlndXJlPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRjb25maWdPcHRpb25zOiBMb2dnZXJGYWN0b3J5T3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KTogKG5hbWU/OiBzdHJpbmcpID0+IExvZ2dlcjxULCBDdXN0b21Pbmx5PiB7XG5cdFx0Y29uc3QgeyBhZGFwdGVyLCBvcHRpb25zIH0gPSBjb25maWdPcHRpb25zO1xuXHRcdGNvbnN0IHByZXZpb3VzID0gdGhpcy5sb2dnZXJQcm92aWRlcjtcblx0XHR0aGlzLmxvZ2dlclByb3ZpZGVyID0gYWRhcHRlcjtcblx0XHRjb25zdCBkZWZhdWx0c0FuZE9wdGlvbnMgPSB0aGlzLm1lcmdlRGVmYXVsdHM8VCwgQ3VzdG9tT25seT4ob3B0aW9ucyk7XG5cdFx0YWRhcHRlci5jb25maWd1cmUoZGVmYXVsdHNBbmRPcHRpb25zKTtcblx0XHRpZiAocHJldmlvdXMgIT09IGFkYXB0ZXIpIHtcblx0XHRcdHZvaWQgcHJldmlvdXMuc3RvcCgpO1xuXHRcdH1cblx0XHRyZXR1cm4gKG5hbWU/OiBzdHJpbmcpID0+IGFkYXB0ZXIuZ2V0TG9nZ2VyKG5hbWUpIGFzIExvZ2dlcjxULCBDdXN0b21Pbmx5Pjtcblx0fVxuXG5cdHB1YmxpYyBhc3luYyBzdG9wKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGF3YWl0IHRoaXMubG9nZ2VyUHJvdmlkZXIuc3RvcCgpO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIFtTeW1ib2wuYXN5bmNEaXNwb3NlXSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRhd2FpdCB0aGlzLnN0b3AoKTtcblx0fVxuXG5cdHB1YmxpYyBnZXRMb2dnZXI8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG5hbWU/OiBzdHJpbmcsXG5cdFx0Y3VzdG9tTGV2ZWxzPzoge1xuXHRcdFx0W2xldmVsIGluIFRdOiBudW1iZXI7XG5cdFx0fSxcblx0KTogTG9nZ2VyPFQsIEN1c3RvbU9ubHk+IHtcblx0XHQvLyBJZiBjdXN0b20gbGV2ZWxzIGFyZSBwcm92aWRlZCwgd2UgbmVlZCB0byByZWNvbmZpZ3VyZSB0aGUgYWRhcHRlclxuXHRcdGlmIChjdXN0b21MZXZlbHMpIHtcblx0XHRcdGNvbnN0IGN1cnJlbnRPcHRpb25zID0gdGhpcy5tZXJnZURlZmF1bHRzKHsgY3VzdG9tTGV2ZWxzIH0pO1xuXHRcdFx0dGhpcy5sb2dnZXJQcm92aWRlci5jb25maWd1cmUoY3VycmVudE9wdGlvbnMpO1xuXHRcdH1cblxuXHRcdGNvbnN0IGxvZ2dlciA9IHRoaXMubG9nZ2VyUHJvdmlkZXIuZ2V0TG9nZ2VyKG5hbWUpIGFzIExvZ2dlcjxULCBDdXN0b21Pbmx5Pjtcblx0XHR0aGlzLnN1cHBvcnRzTGV2ZWxzKGN1c3RvbUxldmVscywgbG9nZ2VyKTtcblx0XHRyZXR1cm4gbG9nZ2VyO1xuXHR9XG5cblx0cHJpdmF0ZSBzdXBwb3J0c0xldmVsczxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlID0gdW5kZWZpbmVkPihcblx0XHRjdXN0b21MZXZlbHM6IHtcblx0XHRcdFtsZXZlbCBpbiBUXTogbnVtYmVyO1xuXHRcdH0sXG5cdFx0bG9nZ2VyOiBMb2dnZXI8VCwgQ3VzdG9tT25seT4sXG5cdCkge1xuXHRcdGlmICghY3VzdG9tTGV2ZWxzKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Y29uc3QgbWlzc2luZ0xldmVsID0gT2JqZWN0LmVudHJpZXMoY3VzdG9tTGV2ZWxzKS5maW5kKFxuXHRcdFx0KGtleSkgPT4gIWxvZ2dlci5sb2dMZXZlbHNba2V5LmF0KDApLnRvU3RyaW5nKCldLFxuXHRcdCk7XG5cblx0XHRpZiAobWlzc2luZ0xldmVsICE9IG51bGwpIHtcblx0XHRcdHRocm93IG5ldyBMb2dnaW5nQ29uZmlndXJhdGlvbkVycm9yKFxuXHRcdFx0XHRgQ3VycmVudCBsb2dnZXIgd2FzIG5vdCBjb25maWd1cmVkIGZvciBjdXN0b20gbGV2ZWwgJHttaXNzaW5nTGV2ZWx9LCB2YWxpZCBsZXZlbHMgYXJlOiAke0pTT04uc3RyaW5naWZ5KGxvZ2dlci5sb2dMZXZlbHMpfWAsXG5cdFx0XHQpO1xuXHRcdH1cblx0XHRyZXR1cm4geyBtaXNzaW5nTGV2ZWwgfTtcblx0fVxuXG5cdHByaXZhdGUgbWVyZ2VEZWZhdWx0czxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0b3B0aW9ucz86IFNjcmliZU9wdGlvbnM8VCwgQ3VzdG9tT25seT4sXG5cdCk6IFNjcmliZU9wdGlvbnM8VCwgQ3VzdG9tT25seT4ge1xuXHRcdGNvbnN0IGxvZ0xldmVsID0gcmVzb2x2ZUxvZ0xldmVsKG9wdGlvbnM/LmxvZ0xldmVsKSA/PyBEZWZhdWx0TG9nTGV2ZWw7XG5cdFx0cmV0dXJuIHsgbG9nTGV2ZWwsIHJlZGFjdGlvbnM6IERlZmF1bHRSZWRhY3Rpb25zLCAuLi5vcHRpb25zIH07XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJzY3JpYmUiLCJsb2dnZXJQcm92aWRlciIsImluc3RhbmNlIiwibG9nZ2VyIiwibmFtZSIsImN1c3RvbUxldmVscyIsImdldExvZ2dlciIsImNvbmZpZ3VyZSIsImNvbmZpZ09wdGlvbnMiLCJwcmV2aW91cyIsImZhY3RvcnkiLCJzdG9wIiwiZmx1c2giLCJjYiIsIkNvbnNvbGVBZGFwdGVyIiwiZGVmYXVsdE9wdGlvbnMiLCJtZXJnZURlZmF1bHRzIiwiYWRhcHRlciIsIm9wdGlvbnMiLCJkZWZhdWx0c0FuZE9wdGlvbnMiLCJTeW1ib2wiLCJhc3luY0Rpc3Bvc2UiLCJjdXJyZW50T3B0aW9ucyIsInN1cHBvcnRzTGV2ZWxzIiwibWlzc2luZ0xldmVsIiwiT2JqZWN0IiwiZW50cmllcyIsImZpbmQiLCJrZXkiLCJsb2dMZXZlbHMiLCJhdCIsInRvU3RyaW5nIiwiTG9nZ2luZ0NvbmZpZ3VyYXRpb25FcnJvciIsIkpTT04iLCJzdHJpbmdpZnkiLCJsb2dMZXZlbCIsInJlc29sdmVMb2dMZXZlbCIsIkRlZmF1bHRMb2dMZXZlbCIsInJlZGFjdGlvbnMiLCJEZWZhdWx0UmVkYWN0aW9ucyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFlYUE7OztlQUFBQTs7O2dDQWZrQjtxQkFDQzt3QkFDVTt1QkFHNkI7QUFVaEUsTUFBTUE7SUFDSkMsZUFBOEI7SUFDdEMsT0FBZUMsV0FBbUIsSUFBSUYsU0FBUztJQUUvQyxPQUFjRyxPQUNiQyxJQUFhLEVBQ2JDLFlBRUMsRUFDdUI7UUFDeEIsT0FBT0wsT0FBT0UsUUFBUSxDQUFDSSxTQUFTLENBQWdCRixNQUFNQztJQUl2RDtJQUVBLE9BQWNFLFVBQ2JDLGFBQWtELEVBQ2pEO1FBQ0QsTUFBTUMsV0FBV1QsT0FBT0UsUUFBUTtRQUNoQ0YsT0FBT0UsUUFBUSxHQUFHLElBQUlGO1FBQ3RCLE1BQU1VLFVBQVVWLE9BQU9FLFFBQVEsQ0FBQ0ssU0FBUyxDQUFnQkM7UUFDekQsMEVBQTBFO1FBQzFFLDRFQUE0RTtRQUM1RSxLQUFLQyxTQUFTRSxJQUFJO1FBQ2xCLE9BQU9EO0lBQ1I7SUFFQSxPQUFjRSxNQUFNQyxFQUFlLEVBQVE7UUFDMUNiLE9BQU9FLFFBQVEsQ0FBQ0QsY0FBYyxDQUFDVyxLQUFLLENBQUNDO0lBQ3RDO0lBRUEsaUVBQWlFLEdBQ2pFLGFBQW9CRixPQUFzQjtRQUN6QyxNQUFNWCxPQUFPRSxRQUFRLENBQUNTLElBQUk7SUFDM0I7SUFFQSxhQUFxQjtRQUNwQiwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDVixjQUFjLEdBQUcsSUFBSWEsOEJBQWM7UUFDeEMsTUFBTUMsaUJBQWlCLElBQUksQ0FBQ0MsYUFBYTtRQUN6QyxJQUFJLENBQUNmLGNBQWMsQ0FBQ00sU0FBUyxDQUFDUTtJQUMvQjtJQUVPUixVQUNOQyxhQUFrRCxFQUNQO1FBQzNDLE1BQU0sRUFBRVMsT0FBTyxFQUFFQyxPQUFPLEVBQUUsR0FBR1Y7UUFDN0IsTUFBTUMsV0FBVyxJQUFJLENBQUNSLGNBQWM7UUFDcEMsSUFBSSxDQUFDQSxjQUFjLEdBQUdnQjtRQUN0QixNQUFNRSxxQkFBcUIsSUFBSSxDQUFDSCxhQUFhLENBQWdCRTtRQUM3REQsUUFBUVYsU0FBUyxDQUFDWTtRQUNsQixJQUFJVixhQUFhUSxTQUFTO1lBQ3pCLEtBQUtSLFNBQVNFLElBQUk7UUFDbkI7UUFDQSxPQUFPLENBQUNQLE9BQWtCYSxRQUFRWCxTQUFTLENBQUNGO0lBQzdDO0lBRUEsTUFBYU8sT0FBc0I7UUFDbEMsTUFBTSxJQUFJLENBQUNWLGNBQWMsQ0FBQ1UsSUFBSTtJQUMvQjtJQUVBLE1BQWEsQ0FBQ1MsT0FBT0MsWUFBWSxDQUFDLEdBQWtCO1FBQ25ELE1BQU0sSUFBSSxDQUFDVixJQUFJO0lBQ2hCO0lBRU9MLFVBQ05GLElBQWEsRUFDYkMsWUFFQyxFQUN1QjtRQUN4QixvRUFBb0U7UUFDcEUsSUFBSUEsY0FBYztZQUNqQixNQUFNaUIsaUJBQWlCLElBQUksQ0FBQ04sYUFBYSxDQUFDO2dCQUFFWDtZQUFhO1lBQ3pELElBQUksQ0FBQ0osY0FBYyxDQUFDTSxTQUFTLENBQUNlO1FBQy9CO1FBRUEsTUFBTW5CLFNBQVMsSUFBSSxDQUFDRixjQUFjLENBQUNLLFNBQVMsQ0FBQ0Y7UUFDN0MsSUFBSSxDQUFDbUIsY0FBYyxDQUFDbEIsY0FBY0Y7UUFDbEMsT0FBT0E7SUFDUjtJQUVRb0IsZUFDUGxCLFlBRUMsRUFDREYsTUFBNkIsRUFDNUI7UUFDRCxJQUFJLENBQUNFLGNBQWM7WUFDbEI7UUFDRDtRQUVBLE1BQU1tQixlQUFlQyxPQUFPQyxPQUFPLENBQUNyQixjQUFjc0IsSUFBSSxDQUNyRCxDQUFDQyxNQUFRLENBQUN6QixPQUFPMEIsU0FBUyxDQUFDRCxJQUFJRSxFQUFFLENBQUMsR0FBR0MsUUFBUSxHQUFHO1FBR2pELElBQUlQLGdCQUFnQixNQUFNO1lBQ3pCLE1BQU0sSUFBSVEsaUNBQXlCLENBQ2xDLENBQUMsbURBQW1ELEVBQUVSLGFBQWEsb0JBQW9CLEVBQUVTLEtBQUtDLFNBQVMsQ0FBQy9CLE9BQU8wQixTQUFTLEdBQUc7UUFFN0g7UUFDQSxPQUFPO1lBQUVMO1FBQWE7SUFDdkI7SUFFUVIsY0FDUEUsT0FBc0MsRUFDUDtRQUMvQixNQUFNaUIsV0FBV0MsSUFBQUEsb0JBQWUsRUFBQ2xCLFNBQVNpQixhQUFhRSxzQkFBZTtRQUN0RSxPQUFPO1lBQUVGO1lBQVVHLFlBQVlDLHdCQUFpQjtZQUFFLEdBQUdyQixPQUFPO1FBQUM7SUFDOUQ7QUFDRCJ9
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL3NjcmliZS9zY3JpYmUvc3JjL2xvZ2dlci5mYWN0b3J5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnNvbGVBZGFwdGVyIH0gZnJvbSBcIi4vY29uc29sZS5hZGFwdGVyLmpzXCI7XG5pbXBvcnQgeyByZXNvbHZlTG9nTGV2ZWwgfSBmcm9tIFwiLi9lbnYuanNcIjtcbmltcG9ydCB7IExvZ2dpbmdDb25maWd1cmF0aW9uRXJyb3IgfSBmcm9tIFwiLi9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgTG9nZ2VyQWRhcHRlciB9IGZyb20gXCIuL2xvZ2dlci5hZGFwdGVyLmpzXCI7XG5pbXBvcnQgdHlwZSB7IExvZ2dlciB9IGZyb20gXCIuL2xvZ2dlci50eXBlLmpzXCI7XG5pbXBvcnQgeyBEZWZhdWx0TG9nTGV2ZWwsIERlZmF1bHRSZWRhY3Rpb25zLCB0eXBlIFNjcmliZU9wdGlvbnMgfSBmcm9tIFwiLi90eXBlcy5qc1wiO1xuXG50eXBlIExvZ2dlckZhY3RvcnlPcHRpb25zPFxuXHRUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsXG5cdEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZSxcbj4gPSB7XG5cdG9wdGlvbnM/OiBTY3JpYmVPcHRpb25zPFQsIEN1c3RvbU9ubHk+O1xuXHRhZGFwdGVyOiBMb2dnZXJBZGFwdGVyO1xufTtcblxuZXhwb3J0IGNsYXNzIHNjcmliZSBpbXBsZW1lbnRzIEFzeW5jRGlzcG9zYWJsZSB7XG5cdHByaXZhdGUgbG9nZ2VyUHJvdmlkZXI6IExvZ2dlckFkYXB0ZXI7XG5cdHByaXZhdGUgc3RhdGljIGluc3RhbmNlOiBzY3JpYmUgPSBuZXcgc2NyaWJlKCk7XG5cblx0cHVibGljIHN0YXRpYyBsb2dnZXI8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG5hbWU/OiBzdHJpbmcsXG5cdFx0Y3VzdG9tTGV2ZWxzPzoge1xuXHRcdFx0W2xldmVsIGluIFRdOiBudW1iZXI7XG5cdFx0fSxcblx0KTogTG9nZ2VyPFQsIEN1c3RvbU9ubHk+IHtcblx0XHRyZXR1cm4gc2NyaWJlLmluc3RhbmNlLmdldExvZ2dlcjxULCBDdXN0b21Pbmx5PihuYW1lLCBjdXN0b21MZXZlbHMpIGFzIExvZ2dlcjxcblx0XHRcdFQsXG5cdFx0XHRDdXN0b21Pbmx5XG5cdFx0Pjtcblx0fVxuXG5cdHB1YmxpYyBzdGF0aWMgY29uZmlndXJlPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRjb25maWdPcHRpb25zOiBMb2dnZXJGYWN0b3J5T3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KSB7XG5cdFx0Y29uc3QgcHJldmlvdXMgPSBzY3JpYmUuaW5zdGFuY2U7XG5cdFx0Ly8gU3luYzogc3RvcCB3cml0ZXMgaW50byB0aGUgb2xkIFRocmVhZFN0cmVhbSBiZWZvcmUgYSBuZXcgd29ya2VyIHN0YXJ0cy5cblx0XHRwcmV2aW91cy5yZXRpcmUoKTtcblx0XHRzY3JpYmUuaW5zdGFuY2UgPSBuZXcgc2NyaWJlKCk7XG5cdFx0Y29uc3QgZmFjdG9yeSA9IHNjcmliZS5pbnN0YW5jZS5jb25maWd1cmU8VCwgQ3VzdG9tT25seT4oY29uZmlnT3B0aW9ucyk7XG5cdFx0Ly8gQXN5bmMgZHJhaW4gb2YgdGhlIHJldGlyZWQgYWRhcHRlciAoZmx1c2ggLyBlbmQpLiBGbHV4L0FwcC5zdG9wIG1heVxuXHRcdC8vIGhhdmUgYWxyZWFkeSBkb25lIHRoaXM7IHJlY29uZmlndXJlIHdpdGhvdXQgc3RvcCBzdGlsbCBuZWVkcyBpdC5cblx0XHR2b2lkIHByZXZpb3VzLnN0b3AoKTtcblx0XHRyZXR1cm4gZmFjdG9yeTtcblx0fVxuXG5cdHB1YmxpYyBzdGF0aWMgZmx1c2goY2I/OiAoKSA9PiB2b2lkKTogdm9pZCB7XG5cdFx0c2NyaWJlLmluc3RhbmNlLmxvZ2dlclByb3ZpZGVyLmZsdXNoKGNiKTtcblx0fVxuXG5cdC8qKiBTeW5jaHJvbm91c2x5IHN0b3AgYWNjZXB0aW5nIHdyaXRlcyBvbiB0aGUgYWN0aXZlIGFkYXB0ZXIuICovXG5cdHB1YmxpYyBzdGF0aWMgcmV0aXJlKCk6IHZvaWQge1xuXHRcdHNjcmliZS5pbnN0YW5jZS5yZXRpcmUoKTtcblx0fVxuXG5cdC8qKiBEcmFpbiB0aGUgYWN0aXZlIGFkYXB0ZXIgYW5kIHJlbGVhc2Ugd29ya2VycyAvIGRlc3RpbmF0aW9ucy4gKi9cblx0cHVibGljIHN0YXRpYyBhc3luYyBzdG9wKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGF3YWl0IHNjcmliZS5pbnN0YW5jZS5zdG9wKCk7XG5cdH1cblxuXHRwdWJsaWMgY29uc3RydWN0b3IoKSB7XG5cdFx0Ly8gSW5pdGlhbGl6ZSB3aXRoIGRlZmF1bHQgY29uc29sZSBhZGFwdGVyXG5cdFx0dGhpcy5sb2dnZXJQcm92aWRlciA9IG5ldyBDb25zb2xlQWRhcHRlcigpO1xuXHRcdGNvbnN0IGRlZmF1bHRPcHRpb25zID0gdGhpcy5tZXJnZURlZmF1bHRzKCk7XG5cdFx0dGhpcy5sb2dnZXJQcm92aWRlci5jb25maWd1cmUoZGVmYXVsdE9wdGlvbnMpO1xuXHR9XG5cblx0cHVibGljIGNvbmZpZ3VyZTxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0Y29uZmlnT3B0aW9uczogTG9nZ2VyRmFjdG9yeU9wdGlvbnM8VCwgQ3VzdG9tT25seT4sXG5cdCk6IChuYW1lPzogc3RyaW5nKSA9PiBMb2dnZXI8VCwgQ3VzdG9tT25seT4ge1xuXHRcdGNvbnN0IHsgYWRhcHRlciwgb3B0aW9ucyB9ID0gY29uZmlnT3B0aW9ucztcblx0XHRjb25zdCBwcmV2aW91cyA9IHRoaXMubG9nZ2VyUHJvdmlkZXI7XG5cdFx0aWYgKHByZXZpb3VzICE9PSBhZGFwdGVyKSB7XG5cdFx0XHRwcmV2aW91cy5yZXRpcmUoKTtcblx0XHR9XG5cdFx0dGhpcy5sb2dnZXJQcm92aWRlciA9IGFkYXB0ZXI7XG5cdFx0Y29uc3QgZGVmYXVsdHNBbmRPcHRpb25zID0gdGhpcy5tZXJnZURlZmF1bHRzPFQsIEN1c3RvbU9ubHk+KG9wdGlvbnMpO1xuXHRcdGFkYXB0ZXIuY29uZmlndXJlKGRlZmF1bHRzQW5kT3B0aW9ucyk7XG5cdFx0aWYgKHByZXZpb3VzICE9PSBhZGFwdGVyKSB7XG5cdFx0XHR2b2lkIHByZXZpb3VzLnN0b3AoKTtcblx0XHR9XG5cdFx0cmV0dXJuIChuYW1lPzogc3RyaW5nKSA9PiBhZGFwdGVyLmdldExvZ2dlcihuYW1lKSBhcyBMb2dnZXI8VCwgQ3VzdG9tT25seT47XG5cdH1cblxuXHRwdWJsaWMgcmV0aXJlKCk6IHZvaWQge1xuXHRcdHRoaXMubG9nZ2VyUHJvdmlkZXIucmV0aXJlKCk7XG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRhd2FpdCB0aGlzLmxvZ2dlclByb3ZpZGVyLnN0b3AoKTtcblx0fVxuXG5cdHB1YmxpYyBhc3luYyBbU3ltYm9sLmFzeW5jRGlzcG9zZV0oKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0YXdhaXQgdGhpcy5zdG9wKCk7XG5cdH1cblxuXHRwdWJsaWMgZ2V0TG9nZ2VyPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRuYW1lPzogc3RyaW5nLFxuXHRcdGN1c3RvbUxldmVscz86IHtcblx0XHRcdFtsZXZlbCBpbiBUXTogbnVtYmVyO1xuXHRcdH0sXG5cdCk6IExvZ2dlcjxULCBDdXN0b21Pbmx5PiB7XG5cdFx0Ly8gSWYgY3VzdG9tIGxldmVscyBhcmUgcHJvdmlkZWQsIHdlIG5lZWQgdG8gcmVjb25maWd1cmUgdGhlIGFkYXB0ZXJcblx0XHRpZiAoY3VzdG9tTGV2ZWxzKSB7XG5cdFx0XHRjb25zdCBjdXJyZW50T3B0aW9ucyA9IHRoaXMubWVyZ2VEZWZhdWx0cyh7IGN1c3RvbUxldmVscyB9KTtcblx0XHRcdHRoaXMubG9nZ2VyUHJvdmlkZXIuY29uZmlndXJlKGN1cnJlbnRPcHRpb25zKTtcblx0XHR9XG5cblx0XHRjb25zdCBsb2dnZXIgPSB0aGlzLmxvZ2dlclByb3ZpZGVyLmdldExvZ2dlcihuYW1lKSBhcyBMb2dnZXI8VCwgQ3VzdG9tT25seT47XG5cdFx0dGhpcy5zdXBwb3J0c0xldmVscyhjdXN0b21MZXZlbHMsIGxvZ2dlcik7XG5cdFx0cmV0dXJuIGxvZ2dlcjtcblx0fVxuXG5cdHByaXZhdGUgc3VwcG9ydHNMZXZlbHM8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSA9IHVuZGVmaW5lZD4oXG5cdFx0Y3VzdG9tTGV2ZWxzOiB7XG5cdFx0XHRbbGV2ZWwgaW4gVF06IG51bWJlcjtcblx0XHR9LFxuXHRcdGxvZ2dlcjogTG9nZ2VyPFQsIEN1c3RvbU9ubHk+LFxuXHQpIHtcblx0XHRpZiAoIWN1c3RvbUxldmVscykge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdGNvbnN0IG1pc3NpbmdMZXZlbCA9IE9iamVjdC5lbnRyaWVzKGN1c3RvbUxldmVscykuZmluZChcblx0XHRcdChrZXkpID0+ICFsb2dnZXIubG9nTGV2ZWxzW2tleS5hdCgwKS50b1N0cmluZygpXSxcblx0XHQpO1xuXG5cdFx0aWYgKG1pc3NpbmdMZXZlbCAhPSBudWxsKSB7XG5cdFx0XHR0aHJvdyBuZXcgTG9nZ2luZ0NvbmZpZ3VyYXRpb25FcnJvcihcblx0XHRcdFx0YEN1cnJlbnQgbG9nZ2VyIHdhcyBub3QgY29uZmlndXJlZCBmb3IgY3VzdG9tIGxldmVsICR7bWlzc2luZ0xldmVsfSwgdmFsaWQgbGV2ZWxzIGFyZTogJHtKU09OLnN0cmluZ2lmeShsb2dnZXIubG9nTGV2ZWxzKX1gLFxuXHRcdFx0KTtcblx0XHR9XG5cdFx0cmV0dXJuIHsgbWlzc2luZ0xldmVsIH07XG5cdH1cblxuXHRwcml2YXRlIG1lcmdlRGVmYXVsdHM8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG9wdGlvbnM/OiBTY3JpYmVPcHRpb25zPFQsIEN1c3RvbU9ubHk+LFxuXHQpOiBTY3JpYmVPcHRpb25zPFQsIEN1c3RvbU9ubHk+IHtcblx0XHRjb25zdCBsb2dMZXZlbCA9IHJlc29sdmVMb2dMZXZlbChvcHRpb25zPy5sb2dMZXZlbCkgPz8gRGVmYXVsdExvZ0xldmVsO1xuXHRcdHJldHVybiB7IGxvZ0xldmVsLCByZWRhY3Rpb25zOiBEZWZhdWx0UmVkYWN0aW9ucywgLi4ub3B0aW9ucyB9O1xuXHR9XG59XG4iXSwibmFtZXMiOlsic2NyaWJlIiwibG9nZ2VyUHJvdmlkZXIiLCJpbnN0YW5jZSIsImxvZ2dlciIsIm5hbWUiLCJjdXN0b21MZXZlbHMiLCJnZXRMb2dnZXIiLCJjb25maWd1cmUiLCJjb25maWdPcHRpb25zIiwicHJldmlvdXMiLCJyZXRpcmUiLCJmYWN0b3J5Iiwic3RvcCIsImZsdXNoIiwiY2IiLCJDb25zb2xlQWRhcHRlciIsImRlZmF1bHRPcHRpb25zIiwibWVyZ2VEZWZhdWx0cyIsImFkYXB0ZXIiLCJvcHRpb25zIiwiZGVmYXVsdHNBbmRPcHRpb25zIiwiU3ltYm9sIiwiYXN5bmNEaXNwb3NlIiwiY3VycmVudE9wdGlvbnMiLCJzdXBwb3J0c0xldmVscyIsIm1pc3NpbmdMZXZlbCIsIk9iamVjdCIsImVudHJpZXMiLCJmaW5kIiwia2V5IiwibG9nTGV2ZWxzIiwiYXQiLCJ0b1N0cmluZyIsIkxvZ2dpbmdDb25maWd1cmF0aW9uRXJyb3IiLCJKU09OIiwic3RyaW5naWZ5IiwibG9nTGV2ZWwiLCJyZXNvbHZlTG9nTGV2ZWwiLCJEZWZhdWx0TG9nTGV2ZWwiLCJyZWRhY3Rpb25zIiwiRGVmYXVsdFJlZGFjdGlvbnMiXSwibWFwcGluZ3MiOiI7Ozs7K0JBZWFBOzs7ZUFBQUE7OztnQ0Fma0I7cUJBQ0M7d0JBQ1U7dUJBRzZCO0FBVWhFLE1BQU1BO0lBQ0pDLGVBQThCO0lBQ3RDLE9BQWVDLFdBQW1CLElBQUlGLFNBQVM7SUFFL0MsT0FBY0csT0FDYkMsSUFBYSxFQUNiQyxZQUVDLEVBQ3VCO1FBQ3hCLE9BQU9MLE9BQU9FLFFBQVEsQ0FBQ0ksU0FBUyxDQUFnQkYsTUFBTUM7SUFJdkQ7SUFFQSxPQUFjRSxVQUNiQyxhQUFrRCxFQUNqRDtRQUNELE1BQU1DLFdBQVdULE9BQU9FLFFBQVE7UUFDaEMsMEVBQTBFO1FBQzFFTyxTQUFTQyxNQUFNO1FBQ2ZWLE9BQU9FLFFBQVEsR0FBRyxJQUFJRjtRQUN0QixNQUFNVyxVQUFVWCxPQUFPRSxRQUFRLENBQUNLLFNBQVMsQ0FBZ0JDO1FBQ3pELHNFQUFzRTtRQUN0RSxtRUFBbUU7UUFDbkUsS0FBS0MsU0FBU0csSUFBSTtRQUNsQixPQUFPRDtJQUNSO0lBRUEsT0FBY0UsTUFBTUMsRUFBZSxFQUFRO1FBQzFDZCxPQUFPRSxRQUFRLENBQUNELGNBQWMsQ0FBQ1ksS0FBSyxDQUFDQztJQUN0QztJQUVBLCtEQUErRCxHQUMvRCxPQUFjSixTQUFlO1FBQzVCVixPQUFPRSxRQUFRLENBQUNRLE1BQU07SUFDdkI7SUFFQSxpRUFBaUUsR0FDakUsYUFBb0JFLE9BQXNCO1FBQ3pDLE1BQU1aLE9BQU9FLFFBQVEsQ0FBQ1UsSUFBSTtJQUMzQjtJQUVBLGFBQXFCO1FBQ3BCLDBDQUEwQztRQUMxQyxJQUFJLENBQUNYLGNBQWMsR0FBRyxJQUFJYyw4QkFBYztRQUN4QyxNQUFNQyxpQkFBaUIsSUFBSSxDQUFDQyxhQUFhO1FBQ3pDLElBQUksQ0FBQ2hCLGNBQWMsQ0FBQ00sU0FBUyxDQUFDUztJQUMvQjtJQUVPVCxVQUNOQyxhQUFrRCxFQUNQO1FBQzNDLE1BQU0sRUFBRVUsT0FBTyxFQUFFQyxPQUFPLEVBQUUsR0FBR1g7UUFDN0IsTUFBTUMsV0FBVyxJQUFJLENBQUNSLGNBQWM7UUFDcEMsSUFBSVEsYUFBYVMsU0FBUztZQUN6QlQsU0FBU0MsTUFBTTtRQUNoQjtRQUNBLElBQUksQ0FBQ1QsY0FBYyxHQUFHaUI7UUFDdEIsTUFBTUUscUJBQXFCLElBQUksQ0FBQ0gsYUFBYSxDQUFnQkU7UUFDN0RELFFBQVFYLFNBQVMsQ0FBQ2E7UUFDbEIsSUFBSVgsYUFBYVMsU0FBUztZQUN6QixLQUFLVCxTQUFTRyxJQUFJO1FBQ25CO1FBQ0EsT0FBTyxDQUFDUixPQUFrQmMsUUFBUVosU0FBUyxDQUFDRjtJQUM3QztJQUVPTSxTQUFlO1FBQ3JCLElBQUksQ0FBQ1QsY0FBYyxDQUFDUyxNQUFNO0lBQzNCO0lBRUEsTUFBYUUsT0FBc0I7UUFDbEMsTUFBTSxJQUFJLENBQUNYLGNBQWMsQ0FBQ1csSUFBSTtJQUMvQjtJQUVBLE1BQWEsQ0FBQ1MsT0FBT0MsWUFBWSxDQUFDLEdBQWtCO1FBQ25ELE1BQU0sSUFBSSxDQUFDVixJQUFJO0lBQ2hCO0lBRU9OLFVBQ05GLElBQWEsRUFDYkMsWUFFQyxFQUN1QjtRQUN4QixvRUFBb0U7UUFDcEUsSUFBSUEsY0FBYztZQUNqQixNQUFNa0IsaUJBQWlCLElBQUksQ0FBQ04sYUFBYSxDQUFDO2dCQUFFWjtZQUFhO1lBQ3pELElBQUksQ0FBQ0osY0FBYyxDQUFDTSxTQUFTLENBQUNnQjtRQUMvQjtRQUVBLE1BQU1wQixTQUFTLElBQUksQ0FBQ0YsY0FBYyxDQUFDSyxTQUFTLENBQUNGO1FBQzdDLElBQUksQ0FBQ29CLGNBQWMsQ0FBQ25CLGNBQWNGO1FBQ2xDLE9BQU9BO0lBQ1I7SUFFUXFCLGVBQ1BuQixZQUVDLEVBQ0RGLE1BQTZCLEVBQzVCO1FBQ0QsSUFBSSxDQUFDRSxjQUFjO1lBQ2xCO1FBQ0Q7UUFFQSxNQUFNb0IsZUFBZUMsT0FBT0MsT0FBTyxDQUFDdEIsY0FBY3VCLElBQUksQ0FDckQsQ0FBQ0MsTUFBUSxDQUFDMUIsT0FBTzJCLFNBQVMsQ0FBQ0QsSUFBSUUsRUFBRSxDQUFDLEdBQUdDLFFBQVEsR0FBRztRQUdqRCxJQUFJUCxnQkFBZ0IsTUFBTTtZQUN6QixNQUFNLElBQUlRLGlDQUF5QixDQUNsQyxDQUFDLG1EQUFtRCxFQUFFUixhQUFhLG9CQUFvQixFQUFFUyxLQUFLQyxTQUFTLENBQUNoQyxPQUFPMkIsU0FBUyxHQUFHO1FBRTdIO1FBQ0EsT0FBTztZQUFFTDtRQUFhO0lBQ3ZCO0lBRVFSLGNBQ1BFLE9BQXNDLEVBQ1A7UUFDL0IsTUFBTWlCLFdBQVdDLElBQUFBLG9CQUFlLEVBQUNsQixTQUFTaUIsYUFBYUUsc0JBQWU7UUFDdEUsT0FBTztZQUFFRjtZQUFVRyxZQUFZQyx3QkFBaUI7WUFBRSxHQUFHckIsT0FBTztRQUFDO0lBQzlEO0FBQ0QifQ==
@@ -6,6 +6,9 @@ export class LogAdapter {
6
6
  flush(cb) {
7
7
  cb?.();
8
8
  }
9
+ retire() {
10
+ // Console / no-op adapters have nothing to release.
11
+ }
9
12
  async stop() {
10
13
  await this[Symbol.asyncDispose]();
11
14
  }
@@ -30,4 +33,4 @@ export class LogAdapter {
30
33
  }
31
34
  }
32
35
 
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL3NjcmliZS9zY3JpYmUvc3JjL2xvZ2dlci5hZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTG9nZ2VyIH0gZnJvbSBcIi4vbG9nZ2VyLnR5cGUuanNcIjtcbmltcG9ydCB7IExvZ0xldmVscywgdHlwZSBTY3JpYmVPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXMuanNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEVycm9yKGVycjogRXJyb3IpOiBzdHJpbmcge1xuXHRyZXR1cm4gZXJyLnN0YWNrID8/IGVyci5tZXNzYWdlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvZ2dlckFkYXB0ZXIgZXh0ZW5kcyBBc3luY0Rpc3Bvc2FibGUge1xuXHRjb25maWd1cmU8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG9wdGlvbnM6IFNjcmliZU9wdGlvbnM8VCwgQ3VzdG9tT25seT4sXG5cdCk7XG5cdGdldExvZ2dlcjxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0bmFtZTogc3RyaW5nLFxuXHQpOiBMb2dnZXI8VCwgQ3VzdG9tT25seT47XG5cdGZsdXNoKGNiPzogKCkgPT4gdm9pZCk6IHZvaWQ7XG5cdC8qKlxuXHQgKiBEcmFpbiBidWZmZXJlZCBvdXRwdXQgYW5kIHJlbGVhc2UgdW5tYW5hZ2VkIGhhbmRsZXMgKHdvcmtlcnMsIGZkcykuXG5cdCAqIElkZW1wb3RlbnQg4oCUIHNhZmUgdG8gY2FsbCBtb3JlIHRoYW4gb25jZS5cblx0ICovXG5cdHN0b3AoKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExvZ0FkYXB0ZXIgaW1wbGVtZW50cyBMb2dnZXJBZGFwdGVyIHtcblx0cHVibGljIGFic3RyYWN0IGNvbmZpZ3VyZTxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0b3B0aW9uczogU2NyaWJlT3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KTtcblxuXHRwdWJsaWMgYWJzdHJhY3QgZ2V0TG9nZ2VyPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRuYW1lOiBzdHJpbmcsXG5cdCk6IExvZ2dlcjxULCBDdXN0b21Pbmx5PjtcblxuXHRwdWJsaWMgZmx1c2goY2I/OiAoKSA9PiB2b2lkKTogdm9pZCB7XG5cdFx0Y2I/LigpO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIHN0b3AoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0YXdhaXQgdGhpc1tTeW1ib2wuYXN5bmNEaXNwb3NlXSgpO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIFtTeW1ib2wuYXN5bmNEaXNwb3NlXSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHQvLyBDb25zb2xlIC8gbm8tb3AgYWRhcHRlcnMgaGF2ZSBub3RoaW5nIHRvIHJlbGVhc2UuXG5cdH1cblxuXHQvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL25vRXhwbGljaXRBbnk6IEdlbmVyaWMgdXRpbGl0eSBtZXRob2QgbmVlZHMgZmxleGlibGUgdHlwaW5nXG5cdHByb3RlY3RlZCBnZXRMb2dMZXZlbHMob3B0aW9uczogU2NyaWJlT3B0aW9uczxhbnksIGFueT4pOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+IHtcblx0XHRjb25zdCB7IGN1c3RvbU9ubHksIGN1c3RvbUxldmVscyB9ID0gb3B0aW9ucztcblx0XHRpZiAoY3VzdG9tT25seSkge1xuXHRcdFx0cmV0dXJuIGN1c3RvbUxldmVscztcblx0XHR9XG5cdFx0Y29uc3QgbGV2ZWxzID0gdGhpcy5nZXRVbmlxdWVMZXZlbHMoTG9nTGV2ZWxzLCBjdXN0b21MZXZlbHMpO1xuXHRcdHJldHVybiBPYmplY3QuZnJvbUVudHJpZXMobGV2ZWxzKTtcblx0fVxuXG5cdHByb3RlY3RlZCBnZXRVbmlxdWVMZXZlbHMoXG5cdFx0ZGVmYXVsdExldmVsczogUmVjb3JkPHN0cmluZywgbnVtYmVyPixcblx0XHRjdXN0b21MZXZlbHM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4sXG5cdCkge1xuXHRcdGNvbnN0IGRlZmF1bHRFbnRyaWVzID0gT2JqZWN0LmVudHJpZXMoZGVmYXVsdExldmVscyA/PyB7fSk7XG5cdFx0Y29uc3QgY3VzdG9tRW50cmllcyA9IE9iamVjdC5lbnRyaWVzKGN1c3RvbUxldmVscyA/PyB7fSk7XG5cdFx0Y29uc3QgZGVmYXVsdE5vdEluQ3VzdG9tID0gZGVmYXVsdEVudHJpZXMuZmlsdGVyKFxuXHRcdFx0KFtka10pID0+IGN1c3RvbUVudHJpZXMuZmluZEluZGV4KChbY2tdKSA9PiBjayA9PT0gZGspID09PSAtMSxcblx0XHQpO1xuXG5cdFx0Y29uc3QgdW5pcXVlID0gZGVmYXVsdE5vdEluQ3VzdG9tLmNvbmNhdChjdXN0b21FbnRyaWVzKTtcblx0XHRyZXR1cm4gdW5pcXVlO1xuXHR9XG59XG4iXSwibmFtZXMiOlsiTG9nTGV2ZWxzIiwiZm9ybWF0RXJyb3IiLCJlcnIiLCJzdGFjayIsIm1lc3NhZ2UiLCJMb2dBZGFwdGVyIiwiZmx1c2giLCJjYiIsInN0b3AiLCJTeW1ib2wiLCJhc3luY0Rpc3Bvc2UiLCJnZXRMb2dMZXZlbHMiLCJvcHRpb25zIiwiY3VzdG9tT25seSIsImN1c3RvbUxldmVscyIsImxldmVscyIsImdldFVuaXF1ZUxldmVscyIsIk9iamVjdCIsImZyb21FbnRyaWVzIiwiZGVmYXVsdExldmVscyIsImRlZmF1bHRFbnRyaWVzIiwiZW50cmllcyIsImN1c3RvbUVudHJpZXMiLCJkZWZhdWx0Tm90SW5DdXN0b20iLCJmaWx0ZXIiLCJkayIsImZpbmRJbmRleCIsImNrIiwidW5pcXVlIiwiY29uY2F0Il0sIm1hcHBpbmdzIjoiQUFDQSxTQUFTQSxTQUFTLFFBQTRCLGFBQWE7QUFFM0QsT0FBTyxTQUFTQyxZQUFZQyxHQUFVO0lBQ3JDLE9BQU9BLElBQUlDLEtBQUssSUFBSUQsSUFBSUUsT0FBTztBQUNoQztBQWlCQSxPQUFPLE1BQWVDO0lBU2RDLE1BQU1DLEVBQWUsRUFBUTtRQUNuQ0E7SUFDRDtJQUVBLE1BQWFDLE9BQXNCO1FBQ2xDLE1BQU0sSUFBSSxDQUFDQyxPQUFPQyxZQUFZLENBQUM7SUFDaEM7SUFFQSxNQUFhLENBQUNELE9BQU9DLFlBQVksQ0FBQyxHQUFrQjtJQUNuRCxvREFBb0Q7SUFDckQ7SUFFQSwyRkFBMkY7SUFDakZDLGFBQWFDLE9BQWdDLEVBQTBCO1FBQ2hGLE1BQU0sRUFBRUMsVUFBVSxFQUFFQyxZQUFZLEVBQUUsR0FBR0Y7UUFDckMsSUFBSUMsWUFBWTtZQUNmLE9BQU9DO1FBQ1I7UUFDQSxNQUFNQyxTQUFTLElBQUksQ0FBQ0MsZUFBZSxDQUFDaEIsV0FBV2M7UUFDL0MsT0FBT0csT0FBT0MsV0FBVyxDQUFDSDtJQUMzQjtJQUVVQyxnQkFDVEcsYUFBcUMsRUFDckNMLFlBQW9DLEVBQ25DO1FBQ0QsTUFBTU0saUJBQWlCSCxPQUFPSSxPQUFPLENBQUNGLGlCQUFpQixDQUFDO1FBQ3hELE1BQU1HLGdCQUFnQkwsT0FBT0ksT0FBTyxDQUFDUCxnQkFBZ0IsQ0FBQztRQUN0RCxNQUFNUyxxQkFBcUJILGVBQWVJLE1BQU0sQ0FDL0MsQ0FBQyxDQUFDQyxHQUFHLEdBQUtILGNBQWNJLFNBQVMsQ0FBQyxDQUFDLENBQUNDLEdBQUcsR0FBS0EsT0FBT0YsUUFBUSxDQUFDO1FBRzdELE1BQU1HLFNBQVNMLG1CQUFtQk0sTUFBTSxDQUFDUDtRQUN6QyxPQUFPTTtJQUNSO0FBQ0QifQ==
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL3NjcmliZS9zY3JpYmUvc3JjL2xvZ2dlci5hZGFwdGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTG9nZ2VyIH0gZnJvbSBcIi4vbG9nZ2VyLnR5cGUuanNcIjtcbmltcG9ydCB7IExvZ0xldmVscywgdHlwZSBTY3JpYmVPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXMuanNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEVycm9yKGVycjogRXJyb3IpOiBzdHJpbmcge1xuXHRyZXR1cm4gZXJyLnN0YWNrID8/IGVyci5tZXNzYWdlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvZ2dlckFkYXB0ZXIgZXh0ZW5kcyBBc3luY0Rpc3Bvc2FibGUge1xuXHRjb25maWd1cmU8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG9wdGlvbnM6IFNjcmliZU9wdGlvbnM8VCwgQ3VzdG9tT25seT4sXG5cdCk7XG5cdGdldExvZ2dlcjxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0bmFtZTogc3RyaW5nLFxuXHQpOiBMb2dnZXI8VCwgQ3VzdG9tT25seT47XG5cdGZsdXNoKGNiPzogKCkgPT4gdm9pZCk6IHZvaWQ7XG5cdC8qKlxuXHQgKiBTeW5jaHJvbm91c2x5IHN0b3AgYWNjZXB0aW5nIHdyaXRlcyAoa2lsbCBUaHJlYWRTdHJlYW0gLyBjbG9zZSBmZHMpLlxuXHQgKiBDYWxsIGJlZm9yZSBzd2FwcGluZyBhZGFwdGVycyBzbyBhIGRlYWQgd29ya2VyIGNhbm5vdCBzcGFtIG9uIGZ1cnRoZXIgbG9ncy5cblx0ICogSWRlbXBvdGVudCDigJQgc2FmZSB0byBjYWxsIG1vcmUgdGhhbiBvbmNlLlxuXHQgKi9cblx0cmV0aXJlKCk6IHZvaWQ7XG5cdC8qKlxuXHQgKiBEcmFpbiBidWZmZXJlZCBvdXRwdXQgYW5kIHJlbGVhc2UgdW5tYW5hZ2VkIGhhbmRsZXMgKHdvcmtlcnMsIGZkcykuXG5cdCAqIElkZW1wb3RlbnQg4oCUIHNhZmUgdG8gY2FsbCBtb3JlIHRoYW4gb25jZS5cblx0ICovXG5cdHN0b3AoKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExvZ0FkYXB0ZXIgaW1wbGVtZW50cyBMb2dnZXJBZGFwdGVyIHtcblx0cHVibGljIGFic3RyYWN0IGNvbmZpZ3VyZTxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0b3B0aW9uczogU2NyaWJlT3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KTtcblxuXHRwdWJsaWMgYWJzdHJhY3QgZ2V0TG9nZ2VyPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRuYW1lOiBzdHJpbmcsXG5cdCk6IExvZ2dlcjxULCBDdXN0b21Pbmx5PjtcblxuXHRwdWJsaWMgZmx1c2goY2I/OiAoKSA9PiB2b2lkKTogdm9pZCB7XG5cdFx0Y2I/LigpO1xuXHR9XG5cblx0cHVibGljIHJldGlyZSgpOiB2b2lkIHtcblx0XHQvLyBDb25zb2xlIC8gbm8tb3AgYWRhcHRlcnMgaGF2ZSBub3RoaW5nIHRvIHJlbGVhc2UuXG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRhd2FpdCB0aGlzW1N5bWJvbC5hc3luY0Rpc3Bvc2VdKCk7XG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgW1N5bWJvbC5hc3luY0Rpc3Bvc2VdKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdC8vIENvbnNvbGUgLyBuby1vcCBhZGFwdGVycyBoYXZlIG5vdGhpbmcgdG8gcmVsZWFzZS5cblx0fVxuXG5cdC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9FeHBsaWNpdEFueTogR2VuZXJpYyB1dGlsaXR5IG1ldGhvZCBuZWVkcyBmbGV4aWJsZSB0eXBpbmdcblx0cHJvdGVjdGVkIGdldExvZ0xldmVscyhvcHRpb25zOiBTY3JpYmVPcHRpb25zPGFueSwgYW55Pik6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4ge1xuXHRcdGNvbnN0IHsgY3VzdG9tT25seSwgY3VzdG9tTGV2ZWxzIH0gPSBvcHRpb25zO1xuXHRcdGlmIChjdXN0b21Pbmx5KSB7XG5cdFx0XHRyZXR1cm4gY3VzdG9tTGV2ZWxzO1xuXHRcdH1cblx0XHRjb25zdCBsZXZlbHMgPSB0aGlzLmdldFVuaXF1ZUxldmVscyhMb2dMZXZlbHMsIGN1c3RvbUxldmVscyk7XG5cdFx0cmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhsZXZlbHMpO1xuXHR9XG5cblx0cHJvdGVjdGVkIGdldFVuaXF1ZUxldmVscyhcblx0XHRkZWZhdWx0TGV2ZWxzOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+LFxuXHRcdGN1c3RvbUxldmVsczogUmVjb3JkPHN0cmluZywgbnVtYmVyPixcblx0KSB7XG5cdFx0Y29uc3QgZGVmYXVsdEVudHJpZXMgPSBPYmplY3QuZW50cmllcyhkZWZhdWx0TGV2ZWxzID8/IHt9KTtcblx0XHRjb25zdCBjdXN0b21FbnRyaWVzID0gT2JqZWN0LmVudHJpZXMoY3VzdG9tTGV2ZWxzID8/IHt9KTtcblx0XHRjb25zdCBkZWZhdWx0Tm90SW5DdXN0b20gPSBkZWZhdWx0RW50cmllcy5maWx0ZXIoXG5cdFx0XHQoW2RrXSkgPT4gY3VzdG9tRW50cmllcy5maW5kSW5kZXgoKFtja10pID0+IGNrID09PSBkaykgPT09IC0xLFxuXHRcdCk7XG5cblx0XHRjb25zdCB1bmlxdWUgPSBkZWZhdWx0Tm90SW5DdXN0b20uY29uY2F0KGN1c3RvbUVudHJpZXMpO1xuXHRcdHJldHVybiB1bmlxdWU7XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJMb2dMZXZlbHMiLCJmb3JtYXRFcnJvciIsImVyciIsInN0YWNrIiwibWVzc2FnZSIsIkxvZ0FkYXB0ZXIiLCJmbHVzaCIsImNiIiwicmV0aXJlIiwic3RvcCIsIlN5bWJvbCIsImFzeW5jRGlzcG9zZSIsImdldExvZ0xldmVscyIsIm9wdGlvbnMiLCJjdXN0b21Pbmx5IiwiY3VzdG9tTGV2ZWxzIiwibGV2ZWxzIiwiZ2V0VW5pcXVlTGV2ZWxzIiwiT2JqZWN0IiwiZnJvbUVudHJpZXMiLCJkZWZhdWx0TGV2ZWxzIiwiZGVmYXVsdEVudHJpZXMiLCJlbnRyaWVzIiwiY3VzdG9tRW50cmllcyIsImRlZmF1bHROb3RJbkN1c3RvbSIsImZpbHRlciIsImRrIiwiZmluZEluZGV4IiwiY2siLCJ1bmlxdWUiLCJjb25jYXQiXSwibWFwcGluZ3MiOiJBQUNBLFNBQVNBLFNBQVMsUUFBNEIsYUFBYTtBQUUzRCxPQUFPLFNBQVNDLFlBQVlDLEdBQVU7SUFDckMsT0FBT0EsSUFBSUMsS0FBSyxJQUFJRCxJQUFJRSxPQUFPO0FBQ2hDO0FBdUJBLE9BQU8sTUFBZUM7SUFTZEMsTUFBTUMsRUFBZSxFQUFRO1FBQ25DQTtJQUNEO0lBRU9DLFNBQWU7SUFDckIsb0RBQW9EO0lBQ3JEO0lBRUEsTUFBYUMsT0FBc0I7UUFDbEMsTUFBTSxJQUFJLENBQUNDLE9BQU9DLFlBQVksQ0FBQztJQUNoQztJQUVBLE1BQWEsQ0FBQ0QsT0FBT0MsWUFBWSxDQUFDLEdBQWtCO0lBQ25ELG9EQUFvRDtJQUNyRDtJQUVBLDJGQUEyRjtJQUNqRkMsYUFBYUMsT0FBZ0MsRUFBMEI7UUFDaEYsTUFBTSxFQUFFQyxVQUFVLEVBQUVDLFlBQVksRUFBRSxHQUFHRjtRQUNyQyxJQUFJQyxZQUFZO1lBQ2YsT0FBT0M7UUFDUjtRQUNBLE1BQU1DLFNBQVMsSUFBSSxDQUFDQyxlQUFlLENBQUNqQixXQUFXZTtRQUMvQyxPQUFPRyxPQUFPQyxXQUFXLENBQUNIO0lBQzNCO0lBRVVDLGdCQUNURyxhQUFxQyxFQUNyQ0wsWUFBb0MsRUFDbkM7UUFDRCxNQUFNTSxpQkFBaUJILE9BQU9JLE9BQU8sQ0FBQ0YsaUJBQWlCLENBQUM7UUFDeEQsTUFBTUcsZ0JBQWdCTCxPQUFPSSxPQUFPLENBQUNQLGdCQUFnQixDQUFDO1FBQ3RELE1BQU1TLHFCQUFxQkgsZUFBZUksTUFBTSxDQUMvQyxDQUFDLENBQUNDLEdBQUcsR0FBS0gsY0FBY0ksU0FBUyxDQUFDLENBQUMsQ0FBQ0MsR0FBRyxHQUFLQSxPQUFPRixRQUFRLENBQUM7UUFHN0QsTUFBTUcsU0FBU0wsbUJBQW1CTSxNQUFNLENBQUNQO1FBQ3pDLE9BQU9NO0lBQ1I7QUFDRCJ9
@@ -10,16 +10,21 @@ export class scribe {
10
10
  }
11
11
  static configure(configOptions) {
12
12
  const previous = scribe.instance;
13
+ // Sync: stop writes into the old ThreadStream before a new worker starts.
14
+ previous.retire();
13
15
  scribe.instance = new scribe();
14
16
  const factory = scribe.instance.configure(configOptions);
15
- // Fire-and-forget: Flux/App.stop should have drained already; this covers
16
- // reconfigure without an intervening stop (e.g. top-level withPino reload).
17
+ // Async drain of the retired adapter (flush / end). Flux/App.stop may
18
+ // have already done this; reconfigure without stop still needs it.
17
19
  void previous.stop();
18
20
  return factory;
19
21
  }
20
22
  static flush(cb) {
21
23
  scribe.instance.loggerProvider.flush(cb);
22
24
  }
25
+ /** Synchronously stop accepting writes on the active adapter. */ static retire() {
26
+ scribe.instance.retire();
27
+ }
23
28
  /** Drain the active adapter and release workers / destinations. */ static async stop() {
24
29
  await scribe.instance.stop();
25
30
  }
@@ -32,6 +37,9 @@ export class scribe {
32
37
  configure(configOptions) {
33
38
  const { adapter, options } = configOptions;
34
39
  const previous = this.loggerProvider;
40
+ if (previous !== adapter) {
41
+ previous.retire();
42
+ }
35
43
  this.loggerProvider = adapter;
36
44
  const defaultsAndOptions = this.mergeDefaults(options);
37
45
  adapter.configure(defaultsAndOptions);
@@ -40,6 +48,9 @@ export class scribe {
40
48
  }
41
49
  return (name)=>adapter.getLogger(name);
42
50
  }
51
+ retire() {
52
+ this.loggerProvider.retire();
53
+ }
43
54
  async stop() {
44
55
  await this.loggerProvider.stop();
45
56
  }
@@ -80,4 +91,4 @@ export class scribe {
80
91
  }
81
92
  }
82
93
 
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL3NjcmliZS9zY3JpYmUvc3JjL2xvZ2dlci5mYWN0b3J5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnNvbGVBZGFwdGVyIH0gZnJvbSBcIi4vY29uc29sZS5hZGFwdGVyLmpzXCI7XG5pbXBvcnQgeyByZXNvbHZlTG9nTGV2ZWwgfSBmcm9tIFwiLi9lbnYuanNcIjtcbmltcG9ydCB7IExvZ2dpbmdDb25maWd1cmF0aW9uRXJyb3IgfSBmcm9tIFwiLi9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgTG9nZ2VyQWRhcHRlciB9IGZyb20gXCIuL2xvZ2dlci5hZGFwdGVyLmpzXCI7XG5pbXBvcnQgdHlwZSB7IExvZ2dlciB9IGZyb20gXCIuL2xvZ2dlci50eXBlLmpzXCI7XG5pbXBvcnQgeyBEZWZhdWx0TG9nTGV2ZWwsIERlZmF1bHRSZWRhY3Rpb25zLCB0eXBlIFNjcmliZU9wdGlvbnMgfSBmcm9tIFwiLi90eXBlcy5qc1wiO1xuXG50eXBlIExvZ2dlckZhY3RvcnlPcHRpb25zPFxuXHRUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsXG5cdEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZSxcbj4gPSB7XG5cdG9wdGlvbnM/OiBTY3JpYmVPcHRpb25zPFQsIEN1c3RvbU9ubHk+O1xuXHRhZGFwdGVyOiBMb2dnZXJBZGFwdGVyO1xufTtcblxuZXhwb3J0IGNsYXNzIHNjcmliZSBpbXBsZW1lbnRzIEFzeW5jRGlzcG9zYWJsZSB7XG5cdHByaXZhdGUgbG9nZ2VyUHJvdmlkZXI6IExvZ2dlckFkYXB0ZXI7XG5cdHByaXZhdGUgc3RhdGljIGluc3RhbmNlOiBzY3JpYmUgPSBuZXcgc2NyaWJlKCk7XG5cblx0cHVibGljIHN0YXRpYyBsb2dnZXI8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG5hbWU/OiBzdHJpbmcsXG5cdFx0Y3VzdG9tTGV2ZWxzPzoge1xuXHRcdFx0W2xldmVsIGluIFRdOiBudW1iZXI7XG5cdFx0fSxcblx0KTogTG9nZ2VyPFQsIEN1c3RvbU9ubHk+IHtcblx0XHRyZXR1cm4gc2NyaWJlLmluc3RhbmNlLmdldExvZ2dlcjxULCBDdXN0b21Pbmx5PihuYW1lLCBjdXN0b21MZXZlbHMpIGFzIExvZ2dlcjxcblx0XHRcdFQsXG5cdFx0XHRDdXN0b21Pbmx5XG5cdFx0Pjtcblx0fVxuXG5cdHB1YmxpYyBzdGF0aWMgY29uZmlndXJlPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRjb25maWdPcHRpb25zOiBMb2dnZXJGYWN0b3J5T3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KSB7XG5cdFx0Y29uc3QgcHJldmlvdXMgPSBzY3JpYmUuaW5zdGFuY2U7XG5cdFx0c2NyaWJlLmluc3RhbmNlID0gbmV3IHNjcmliZSgpO1xuXHRcdGNvbnN0IGZhY3RvcnkgPSBzY3JpYmUuaW5zdGFuY2UuY29uZmlndXJlPFQsIEN1c3RvbU9ubHk+KGNvbmZpZ09wdGlvbnMpO1xuXHRcdC8vIEZpcmUtYW5kLWZvcmdldDogRmx1eC9BcHAuc3RvcCBzaG91bGQgaGF2ZSBkcmFpbmVkIGFscmVhZHk7IHRoaXMgY292ZXJzXG5cdFx0Ly8gcmVjb25maWd1cmUgd2l0aG91dCBhbiBpbnRlcnZlbmluZyBzdG9wIChlLmcuIHRvcC1sZXZlbCB3aXRoUGlubyByZWxvYWQpLlxuXHRcdHZvaWQgcHJldmlvdXMuc3RvcCgpO1xuXHRcdHJldHVybiBmYWN0b3J5O1xuXHR9XG5cblx0cHVibGljIHN0YXRpYyBmbHVzaChjYj86ICgpID0+IHZvaWQpOiB2b2lkIHtcblx0XHRzY3JpYmUuaW5zdGFuY2UubG9nZ2VyUHJvdmlkZXIuZmx1c2goY2IpO1xuXHR9XG5cblx0LyoqIERyYWluIHRoZSBhY3RpdmUgYWRhcHRlciBhbmQgcmVsZWFzZSB3b3JrZXJzIC8gZGVzdGluYXRpb25zLiAqL1xuXHRwdWJsaWMgc3RhdGljIGFzeW5jIHN0b3AoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0YXdhaXQgc2NyaWJlLmluc3RhbmNlLnN0b3AoKTtcblx0fVxuXG5cdHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcblx0XHQvLyBJbml0aWFsaXplIHdpdGggZGVmYXVsdCBjb25zb2xlIGFkYXB0ZXJcblx0XHR0aGlzLmxvZ2dlclByb3ZpZGVyID0gbmV3IENvbnNvbGVBZGFwdGVyKCk7XG5cdFx0Y29uc3QgZGVmYXVsdE9wdGlvbnMgPSB0aGlzLm1lcmdlRGVmYXVsdHMoKTtcblx0XHR0aGlzLmxvZ2dlclByb3ZpZGVyLmNvbmZpZ3VyZShkZWZhdWx0T3B0aW9ucyk7XG5cdH1cblxuXHRwdWJsaWMgY29uZmlndXJlPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRjb25maWdPcHRpb25zOiBMb2dnZXJGYWN0b3J5T3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KTogKG5hbWU/OiBzdHJpbmcpID0+IExvZ2dlcjxULCBDdXN0b21Pbmx5PiB7XG5cdFx0Y29uc3QgeyBhZGFwdGVyLCBvcHRpb25zIH0gPSBjb25maWdPcHRpb25zO1xuXHRcdGNvbnN0IHByZXZpb3VzID0gdGhpcy5sb2dnZXJQcm92aWRlcjtcblx0XHR0aGlzLmxvZ2dlclByb3ZpZGVyID0gYWRhcHRlcjtcblx0XHRjb25zdCBkZWZhdWx0c0FuZE9wdGlvbnMgPSB0aGlzLm1lcmdlRGVmYXVsdHM8VCwgQ3VzdG9tT25seT4ob3B0aW9ucyk7XG5cdFx0YWRhcHRlci5jb25maWd1cmUoZGVmYXVsdHNBbmRPcHRpb25zKTtcblx0XHRpZiAocHJldmlvdXMgIT09IGFkYXB0ZXIpIHtcblx0XHRcdHZvaWQgcHJldmlvdXMuc3RvcCgpO1xuXHRcdH1cblx0XHRyZXR1cm4gKG5hbWU/OiBzdHJpbmcpID0+IGFkYXB0ZXIuZ2V0TG9nZ2VyKG5hbWUpIGFzIExvZ2dlcjxULCBDdXN0b21Pbmx5Pjtcblx0fVxuXG5cdHB1YmxpYyBhc3luYyBzdG9wKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGF3YWl0IHRoaXMubG9nZ2VyUHJvdmlkZXIuc3RvcCgpO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIFtTeW1ib2wuYXN5bmNEaXNwb3NlXSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRhd2FpdCB0aGlzLnN0b3AoKTtcblx0fVxuXG5cdHB1YmxpYyBnZXRMb2dnZXI8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG5hbWU/OiBzdHJpbmcsXG5cdFx0Y3VzdG9tTGV2ZWxzPzoge1xuXHRcdFx0W2xldmVsIGluIFRdOiBudW1iZXI7XG5cdFx0fSxcblx0KTogTG9nZ2VyPFQsIEN1c3RvbU9ubHk+IHtcblx0XHQvLyBJZiBjdXN0b20gbGV2ZWxzIGFyZSBwcm92aWRlZCwgd2UgbmVlZCB0byByZWNvbmZpZ3VyZSB0aGUgYWRhcHRlclxuXHRcdGlmIChjdXN0b21MZXZlbHMpIHtcblx0XHRcdGNvbnN0IGN1cnJlbnRPcHRpb25zID0gdGhpcy5tZXJnZURlZmF1bHRzKHsgY3VzdG9tTGV2ZWxzIH0pO1xuXHRcdFx0dGhpcy5sb2dnZXJQcm92aWRlci5jb25maWd1cmUoY3VycmVudE9wdGlvbnMpO1xuXHRcdH1cblxuXHRcdGNvbnN0IGxvZ2dlciA9IHRoaXMubG9nZ2VyUHJvdmlkZXIuZ2V0TG9nZ2VyKG5hbWUpIGFzIExvZ2dlcjxULCBDdXN0b21Pbmx5Pjtcblx0XHR0aGlzLnN1cHBvcnRzTGV2ZWxzKGN1c3RvbUxldmVscywgbG9nZ2VyKTtcblx0XHRyZXR1cm4gbG9nZ2VyO1xuXHR9XG5cblx0cHJpdmF0ZSBzdXBwb3J0c0xldmVsczxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlID0gdW5kZWZpbmVkPihcblx0XHRjdXN0b21MZXZlbHM6IHtcblx0XHRcdFtsZXZlbCBpbiBUXTogbnVtYmVyO1xuXHRcdH0sXG5cdFx0bG9nZ2VyOiBMb2dnZXI8VCwgQ3VzdG9tT25seT4sXG5cdCkge1xuXHRcdGlmICghY3VzdG9tTGV2ZWxzKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Y29uc3QgbWlzc2luZ0xldmVsID0gT2JqZWN0LmVudHJpZXMoY3VzdG9tTGV2ZWxzKS5maW5kKFxuXHRcdFx0KGtleSkgPT4gIWxvZ2dlci5sb2dMZXZlbHNba2V5LmF0KDApLnRvU3RyaW5nKCldLFxuXHRcdCk7XG5cblx0XHRpZiAobWlzc2luZ0xldmVsICE9IG51bGwpIHtcblx0XHRcdHRocm93IG5ldyBMb2dnaW5nQ29uZmlndXJhdGlvbkVycm9yKFxuXHRcdFx0XHRgQ3VycmVudCBsb2dnZXIgd2FzIG5vdCBjb25maWd1cmVkIGZvciBjdXN0b20gbGV2ZWwgJHttaXNzaW5nTGV2ZWx9LCB2YWxpZCBsZXZlbHMgYXJlOiAke0pTT04uc3RyaW5naWZ5KGxvZ2dlci5sb2dMZXZlbHMpfWAsXG5cdFx0XHQpO1xuXHRcdH1cblx0XHRyZXR1cm4geyBtaXNzaW5nTGV2ZWwgfTtcblx0fVxuXG5cdHByaXZhdGUgbWVyZ2VEZWZhdWx0czxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0b3B0aW9ucz86IFNjcmliZU9wdGlvbnM8VCwgQ3VzdG9tT25seT4sXG5cdCk6IFNjcmliZU9wdGlvbnM8VCwgQ3VzdG9tT25seT4ge1xuXHRcdGNvbnN0IGxvZ0xldmVsID0gcmVzb2x2ZUxvZ0xldmVsKG9wdGlvbnM/LmxvZ0xldmVsKSA/PyBEZWZhdWx0TG9nTGV2ZWw7XG5cdFx0cmV0dXJuIHsgbG9nTGV2ZWwsIHJlZGFjdGlvbnM6IERlZmF1bHRSZWRhY3Rpb25zLCAuLi5vcHRpb25zIH07XG5cdH1cbn1cbiJdLCJuYW1lcyI6WyJDb25zb2xlQWRhcHRlciIsInJlc29sdmVMb2dMZXZlbCIsIkxvZ2dpbmdDb25maWd1cmF0aW9uRXJyb3IiLCJEZWZhdWx0TG9nTGV2ZWwiLCJEZWZhdWx0UmVkYWN0aW9ucyIsInNjcmliZSIsImxvZ2dlclByb3ZpZGVyIiwiaW5zdGFuY2UiLCJsb2dnZXIiLCJuYW1lIiwiY3VzdG9tTGV2ZWxzIiwiZ2V0TG9nZ2VyIiwiY29uZmlndXJlIiwiY29uZmlnT3B0aW9ucyIsInByZXZpb3VzIiwiZmFjdG9yeSIsInN0b3AiLCJmbHVzaCIsImNiIiwiZGVmYXVsdE9wdGlvbnMiLCJtZXJnZURlZmF1bHRzIiwiYWRhcHRlciIsIm9wdGlvbnMiLCJkZWZhdWx0c0FuZE9wdGlvbnMiLCJTeW1ib2wiLCJhc3luY0Rpc3Bvc2UiLCJjdXJyZW50T3B0aW9ucyIsInN1cHBvcnRzTGV2ZWxzIiwibWlzc2luZ0xldmVsIiwiT2JqZWN0IiwiZW50cmllcyIsImZpbmQiLCJrZXkiLCJsb2dMZXZlbHMiLCJhdCIsInRvU3RyaW5nIiwiSlNPTiIsInN0cmluZ2lmeSIsImxvZ0xldmVsIiwicmVkYWN0aW9ucyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsY0FBYyxRQUFRLHVCQUF1QjtBQUN0RCxTQUFTQyxlQUFlLFFBQVEsV0FBVztBQUMzQyxTQUFTQyx5QkFBeUIsUUFBUSxjQUFjO0FBR3hELFNBQVNDLGVBQWUsRUFBRUMsaUJBQWlCLFFBQTRCLGFBQWE7QUFVcEYsT0FBTyxNQUFNQztJQUNKQyxlQUE4QjtJQUN0QyxPQUFlQyxXQUFtQixJQUFJRixTQUFTO0lBRS9DLE9BQWNHLE9BQ2JDLElBQWEsRUFDYkMsWUFFQyxFQUN1QjtRQUN4QixPQUFPTCxPQUFPRSxRQUFRLENBQUNJLFNBQVMsQ0FBZ0JGLE1BQU1DO0lBSXZEO0lBRUEsT0FBY0UsVUFDYkMsYUFBa0QsRUFDakQ7UUFDRCxNQUFNQyxXQUFXVCxPQUFPRSxRQUFRO1FBQ2hDRixPQUFPRSxRQUFRLEdBQUcsSUFBSUY7UUFDdEIsTUFBTVUsVUFBVVYs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
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RlY29oZXJlL2RlY29oZXJlL3Byb2plY3RzL3NjcmliZS9zY3JpYmUvc3JjL2xvZ2dlci5mYWN0b3J5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnNvbGVBZGFwdGVyIH0gZnJvbSBcIi4vY29uc29sZS5hZGFwdGVyLmpzXCI7XG5pbXBvcnQgeyByZXNvbHZlTG9nTGV2ZWwgfSBmcm9tIFwiLi9lbnYuanNcIjtcbmltcG9ydCB7IExvZ2dpbmdDb25maWd1cmF0aW9uRXJyb3IgfSBmcm9tIFwiLi9lcnJvcnMuanNcIjtcbmltcG9ydCB0eXBlIHsgTG9nZ2VyQWRhcHRlciB9IGZyb20gXCIuL2xvZ2dlci5hZGFwdGVyLmpzXCI7XG5pbXBvcnQgdHlwZSB7IExvZ2dlciB9IGZyb20gXCIuL2xvZ2dlci50eXBlLmpzXCI7XG5pbXBvcnQgeyBEZWZhdWx0TG9nTGV2ZWwsIERlZmF1bHRSZWRhY3Rpb25zLCB0eXBlIFNjcmliZU9wdGlvbnMgfSBmcm9tIFwiLi90eXBlcy5qc1wiO1xuXG50eXBlIExvZ2dlckZhY3RvcnlPcHRpb25zPFxuXHRUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsXG5cdEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZSxcbj4gPSB7XG5cdG9wdGlvbnM/OiBTY3JpYmVPcHRpb25zPFQsIEN1c3RvbU9ubHk+O1xuXHRhZGFwdGVyOiBMb2dnZXJBZGFwdGVyO1xufTtcblxuZXhwb3J0IGNsYXNzIHNjcmliZSBpbXBsZW1lbnRzIEFzeW5jRGlzcG9zYWJsZSB7XG5cdHByaXZhdGUgbG9nZ2VyUHJvdmlkZXI6IExvZ2dlckFkYXB0ZXI7XG5cdHByaXZhdGUgc3RhdGljIGluc3RhbmNlOiBzY3JpYmUgPSBuZXcgc2NyaWJlKCk7XG5cblx0cHVibGljIHN0YXRpYyBsb2dnZXI8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG5hbWU/OiBzdHJpbmcsXG5cdFx0Y3VzdG9tTGV2ZWxzPzoge1xuXHRcdFx0W2xldmVsIGluIFRdOiBudW1iZXI7XG5cdFx0fSxcblx0KTogTG9nZ2VyPFQsIEN1c3RvbU9ubHk+IHtcblx0XHRyZXR1cm4gc2NyaWJlLmluc3RhbmNlLmdldExvZ2dlcjxULCBDdXN0b21Pbmx5PihuYW1lLCBjdXN0b21MZXZlbHMpIGFzIExvZ2dlcjxcblx0XHRcdFQsXG5cdFx0XHRDdXN0b21Pbmx5XG5cdFx0Pjtcblx0fVxuXG5cdHB1YmxpYyBzdGF0aWMgY29uZmlndXJlPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRjb25maWdPcHRpb25zOiBMb2dnZXJGYWN0b3J5T3B0aW9uczxULCBDdXN0b21Pbmx5Pixcblx0KSB7XG5cdFx0Y29uc3QgcHJldmlvdXMgPSBzY3JpYmUuaW5zdGFuY2U7XG5cdFx0Ly8gU3luYzogc3RvcCB3cml0ZXMgaW50byB0aGUgb2xkIFRocmVhZFN0cmVhbSBiZWZvcmUgYSBuZXcgd29ya2VyIHN0YXJ0cy5cblx0XHRwcmV2aW91cy5yZXRpcmUoKTtcblx0XHRzY3JpYmUuaW5zdGFuY2UgPSBuZXcgc2NyaWJlKCk7XG5cdFx0Y29uc3QgZmFjdG9yeSA9IHNjcmliZS5pbnN0YW5jZS5jb25maWd1cmU8VCwgQ3VzdG9tT25seT4oY29uZmlnT3B0aW9ucyk7XG5cdFx0Ly8gQXN5bmMgZHJhaW4gb2YgdGhlIHJldGlyZWQgYWRhcHRlciAoZmx1c2ggLyBlbmQpLiBGbHV4L0FwcC5zdG9wIG1heVxuXHRcdC8vIGhhdmUgYWxyZWFkeSBkb25lIHRoaXM7IHJlY29uZmlndXJlIHdpdGhvdXQgc3RvcCBzdGlsbCBuZWVkcyBpdC5cblx0XHR2b2lkIHByZXZpb3VzLnN0b3AoKTtcblx0XHRyZXR1cm4gZmFjdG9yeTtcblx0fVxuXG5cdHB1YmxpYyBzdGF0aWMgZmx1c2goY2I/OiAoKSA9PiB2b2lkKTogdm9pZCB7XG5cdFx0c2NyaWJlLmluc3RhbmNlLmxvZ2dlclByb3ZpZGVyLmZsdXNoKGNiKTtcblx0fVxuXG5cdC8qKiBTeW5jaHJvbm91c2x5IHN0b3AgYWNjZXB0aW5nIHdyaXRlcyBvbiB0aGUgYWN0aXZlIGFkYXB0ZXIuICovXG5cdHB1YmxpYyBzdGF0aWMgcmV0aXJlKCk6IHZvaWQge1xuXHRcdHNjcmliZS5pbnN0YW5jZS5yZXRpcmUoKTtcblx0fVxuXG5cdC8qKiBEcmFpbiB0aGUgYWN0aXZlIGFkYXB0ZXIgYW5kIHJlbGVhc2Ugd29ya2VycyAvIGRlc3RpbmF0aW9ucy4gKi9cblx0cHVibGljIHN0YXRpYyBhc3luYyBzdG9wKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGF3YWl0IHNjcmliZS5pbnN0YW5jZS5zdG9wKCk7XG5cdH1cblxuXHRwdWJsaWMgY29uc3RydWN0b3IoKSB7XG5cdFx0Ly8gSW5pdGlhbGl6ZSB3aXRoIGRlZmF1bHQgY29uc29sZSBhZGFwdGVyXG5cdFx0dGhpcy5sb2dnZXJQcm92aWRlciA9IG5ldyBDb25zb2xlQWRhcHRlcigpO1xuXHRcdGNvbnN0IGRlZmF1bHRPcHRpb25zID0gdGhpcy5tZXJnZURlZmF1bHRzKCk7XG5cdFx0dGhpcy5sb2dnZXJQcm92aWRlci5jb25maWd1cmUoZGVmYXVsdE9wdGlvbnMpO1xuXHR9XG5cblx0cHVibGljIGNvbmZpZ3VyZTxUIGV4dGVuZHMgc3RyaW5nID0gbmV2ZXIsIEN1c3RvbU9ubHkgZXh0ZW5kcyB0cnVlIHwgZmFsc2UgPSBmYWxzZT4oXG5cdFx0Y29uZmlnT3B0aW9uczogTG9nZ2VyRmFjdG9yeU9wdGlvbnM8VCwgQ3VzdG9tT25seT4sXG5cdCk6IChuYW1lPzogc3RyaW5nKSA9PiBMb2dnZXI8VCwgQ3VzdG9tT25seT4ge1xuXHRcdGNvbnN0IHsgYWRhcHRlciwgb3B0aW9ucyB9ID0gY29uZmlnT3B0aW9ucztcblx0XHRjb25zdCBwcmV2aW91cyA9IHRoaXMubG9nZ2VyUHJvdmlkZXI7XG5cdFx0aWYgKHByZXZpb3VzICE9PSBhZGFwdGVyKSB7XG5cdFx0XHRwcmV2aW91cy5yZXRpcmUoKTtcblx0XHR9XG5cdFx0dGhpcy5sb2dnZXJQcm92aWRlciA9IGFkYXB0ZXI7XG5cdFx0Y29uc3QgZGVmYXVsdHNBbmRPcHRpb25zID0gdGhpcy5tZXJnZURlZmF1bHRzPFQsIEN1c3RvbU9ubHk+KG9wdGlvbnMpO1xuXHRcdGFkYXB0ZXIuY29uZmlndXJlKGRlZmF1bHRzQW5kT3B0aW9ucyk7XG5cdFx0aWYgKHByZXZpb3VzICE9PSBhZGFwdGVyKSB7XG5cdFx0XHR2b2lkIHByZXZpb3VzLnN0b3AoKTtcblx0XHR9XG5cdFx0cmV0dXJuIChuYW1lPzogc3RyaW5nKSA9PiBhZGFwdGVyLmdldExvZ2dlcihuYW1lKSBhcyBMb2dnZXI8VCwgQ3VzdG9tT25seT47XG5cdH1cblxuXHRwdWJsaWMgcmV0aXJlKCk6IHZvaWQge1xuXHRcdHRoaXMubG9nZ2VyUHJvdmlkZXIucmV0aXJlKCk7XG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRhd2FpdCB0aGlzLmxvZ2dlclByb3ZpZGVyLnN0b3AoKTtcblx0fVxuXG5cdHB1YmxpYyBhc3luYyBbU3ltYm9sLmFzeW5jRGlzcG9zZV0oKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0YXdhaXQgdGhpcy5zdG9wKCk7XG5cdH1cblxuXHRwdWJsaWMgZ2V0TG9nZ2VyPFQgZXh0ZW5kcyBzdHJpbmcgPSBuZXZlciwgQ3VzdG9tT25seSBleHRlbmRzIHRydWUgfCBmYWxzZSA9IGZhbHNlPihcblx0XHRuYW1lPzogc3RyaW5nLFxuXHRcdGN1c3RvbUxldmVscz86IHtcblx0XHRcdFtsZXZlbCBpbiBUXTogbnVtYmVyO1xuXHRcdH0sXG5cdCk6IExvZ2dlcjxULCBDdXN0b21Pbmx5PiB7XG5cdFx0Ly8gSWYgY3VzdG9tIGxldmVscyBhcmUgcHJvdmlkZWQsIHdlIG5lZWQgdG8gcmVjb25maWd1cmUgdGhlIGFkYXB0ZXJcblx0XHRpZiAoY3VzdG9tTGV2ZWxzKSB7XG5cdFx0XHRjb25zdCBjdXJyZW50T3B0aW9ucyA9IHRoaXMubWVyZ2VEZWZhdWx0cyh7IGN1c3RvbUxldmVscyB9KTtcblx0XHRcdHRoaXMubG9nZ2VyUHJvdmlkZXIuY29uZmlndXJlKGN1cnJlbnRPcHRpb25zKTtcblx0XHR9XG5cblx0XHRjb25zdCBsb2dnZXIgPSB0aGlzLmxvZ2dlclByb3ZpZGVyLmdldExvZ2dlcihuYW1lKSBhcyBMb2dnZXI8VCwgQ3VzdG9tT25seT47XG5cdFx0dGhpcy5zdXBwb3J0c0xldmVscyhjdXN0b21MZXZlbHMsIGxvZ2dlcik7XG5cdFx0cmV0dXJuIGxvZ2dlcjtcblx0fVxuXG5cdHByaXZhdGUgc3VwcG9ydHNMZXZlbHM8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSA9IHVuZGVmaW5lZD4oXG5cdFx0Y3VzdG9tTGV2ZWxzOiB7XG5cdFx0XHRbbGV2ZWwgaW4gVF06IG51bWJlcjtcblx0XHR9LFxuXHRcdGxvZ2dlcjogTG9nZ2VyPFQsIEN1c3RvbU9ubHk+LFxuXHQpIHtcblx0XHRpZiAoIWN1c3RvbUxldmVscykge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdGNvbnN0IG1pc3NpbmdMZXZlbCA9IE9iamVjdC5lbnRyaWVzKGN1c3RvbUxldmVscykuZmluZChcblx0XHRcdChrZXkpID0+ICFsb2dnZXIubG9nTGV2ZWxzW2tleS5hdCgwKS50b1N0cmluZygpXSxcblx0XHQpO1xuXG5cdFx0aWYgKG1pc3NpbmdMZXZlbCAhPSBudWxsKSB7XG5cdFx0XHR0aHJvdyBuZXcgTG9nZ2luZ0NvbmZpZ3VyYXRpb25FcnJvcihcblx0XHRcdFx0YEN1cnJlbnQgbG9nZ2VyIHdhcyBub3QgY29uZmlndXJlZCBmb3IgY3VzdG9tIGxldmVsICR7bWlzc2luZ0xldmVsfSwgdmFsaWQgbGV2ZWxzIGFyZTogJHtKU09OLnN0cmluZ2lmeShsb2dnZXIubG9nTGV2ZWxzKX1gLFxuXHRcdFx0KTtcblx0XHR9XG5cdFx0cmV0dXJuIHsgbWlzc2luZ0xldmVsIH07XG5cdH1cblxuXHRwcml2YXRlIG1lcmdlRGVmYXVsdHM8VCBleHRlbmRzIHN0cmluZyA9IG5ldmVyLCBDdXN0b21Pbmx5IGV4dGVuZHMgdHJ1ZSB8IGZhbHNlID0gZmFsc2U+KFxuXHRcdG9wdGlvbnM/OiBTY3JpYmVPcHRpb25zPFQsIEN1c3RvbU9ubHk+LFxuXHQpOiBTY3JpYmVPcHRpb25zPFQsIEN1c3RvbU9ubHk+IHtcblx0XHRjb25zdCBsb2dMZXZlbCA9IHJlc29sdmVMb2dMZXZlbChvcHRpb25zPy5sb2dMZXZlbCkgPz8gRGVmYXVsdExvZ0xldmVsO1xuXHRcdHJldHVybiB7IGxvZ0xldmVsLCByZWRhY3Rpb25zOiBEZWZhdWx0UmVkYWN0aW9ucywgLi4ub3B0aW9ucyB9O1xuXHR9XG59XG4iXSwibmFtZXMiOlsiQ29uc29sZUFkYXB0ZXIiLCJyZXNvbHZlTG9nTGV2ZWwiLCJMb2dnaW5nQ29uZmlndXJhdGlvbkVycm9yIiwiRGVmYXVsdExvZ0xldmVsIiwiRGVmYXVsdFJlZGFjdGlvbnMiLCJzY3JpYmUiLCJsb2dnZXJQcm92aWRlciIsImluc3RhbmNlIiwibG9nZ2VyIiwibmFtZSIsImN1c3RvbUxldmVscyIsImdldExvZ2dlciIsImNvbmZpZ3VyZSIsImNvbmZpZ09wdGlvbnMiLCJwcmV2aW91cyIsInJldGlyZSIsImZhY3RvcnkiLCJzdG9wIiwiZmx1c2giLCJjYiIsImRlZmF1bHRPcHRpb25zIiwibWVyZ2VEZWZhdWx0cyIsImFkYXB0ZXIiLCJvcHRpb25zIiwiZGVmYXVsdHNBbmRPcHRpb25zIiwiU3ltYm9sIiwiYXN5bmNEaXNwb3NlIiwiY3VycmVudE9wdGlvbnMiLCJzdXBwb3J0c0xldmVscyIsIm1pc3NpbmdMZXZlbCIsIk9iamVjdCIsImVudHJpZXMiLCJmaW5kIiwia2V5IiwibG9nTGV2ZWxzIiwiYXQiLCJ0b1N0cmluZyIsIkpTT04iLCJzdHJpbmdpZnkiLCJsb2dMZXZlbCIsInJlZGFjdGlvbnMiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLGNBQWMsUUFBUSx1QkFBdUI7QUFDdEQsU0FBU0MsZUFBZSxRQUFRLFdBQVc7QUFDM0MsU0FBU0MseUJBQXlCLFFBQVEsY0FBYztBQUd4RCxTQUFTQyxlQUFlLEVBQUVDLGlCQUFpQixRQUE0QixhQUFhO0FBVXBGLE9BQU8sTUFBTUM7SUFDSkMsZUFBOEI7SUFDdEMsT0FBZUMsV0FBbUIsSUFBSUYsU0FBUztJQUUvQyxPQUFjRyxPQUNiQyxJQUFhLEVBQ2JDLFlBRUMsRUFDdUI7UUFDeEIsT0FBT0wsT0FBT0UsUUFBUSxDQUFDSSxTQUFTLENBQWdCRixNQUFNQztJQUl2RDtJQUVBLE9BQWNFLFVBQ2JDLGFBQWtELEVBQ2pEO1FBQ0QsTUFBTUMsV0FBV1QsT0FBT0UsUUFBUTtRQUNoQywwRUFBMEU7UUFDMUVPLFNBQVNDLE1BQU07UUFDZlYsT0FBT0UsUUFBUSxHQUFHLElBQUlGO1FBQ3RCLE1BQU1XLFVBQVVYLE9BQU9FLFFBQVEsQ0FBQ0ssU0FBUyxDQUFnQkM7UUFDekQsc0VBQXNFO1FBQ3RFLG1FQUFtRTtRQUNuRSxLQUFLQyxTQUFTRyxJQUFJO1FBQ2xCLE9BQU9EO0lBQ1I7SUFFQSxPQUFjRSxNQUFNQyxFQUFlLEVBQVE7UUFDMUNkLE9BQU9FLFFBQVEsQ0FBQ0QsY0FBYyxDQUFDWSxLQUFLLENBQUNDO0lBQ3RDO0lBRUEsK0RBQStELEdBQy9ELE9BQWNKLFNBQWU7UUFDNUJWLE9BQU9FLFFBQVEsQ0FBQ1EsTUFBTTtJQUN2QjtJQUVBLGlFQUFpRSxHQUNqRSxhQUFvQkUsT0FBc0I7UUFDekMsTUFBTVosT0FBT0UsUUFBUSxDQUFDVSxJQUFJO0lBQzNCO0lBRUEsYUFBcUI7UUFDcEIsMENBQTBDO1FBQzFDLElBQUksQ0FBQ1gsY0FBYyxHQUFHLElBQUlOO1FBQzFCLE1BQU1vQixpQkFBaUIsSUFBSSxDQUFDQyxhQUFhO1FBQ3pDLElBQUksQ0FBQ2YsY0FBYyxDQUFDTSxTQUFTLENBQUNRO0lBQy9CO0lBRU9SLFVBQ05DLGFBQWtELEVBQ1A7UUFDM0MsTUFBTSxFQUFFUyxPQUFPLEVBQUVDLE9BQU8sRUFBRSxHQUFHVjtRQUM3QixNQUFNQyxXQUFXLElBQUksQ0FBQ1IsY0FBYztRQUNwQyxJQUFJUSxhQUFhUSxTQUFTO1lBQ3pCUixTQUFTQyxNQUFNO1FBQ2hCO1FBQ0EsSUFBSSxDQUFDVCxjQUFjLEdBQUdnQjtRQUN0QixNQUFNRSxxQkFBcUIsSUFBSSxDQUFDSCxhQUFhLENBQWdCRTtRQUM3REQsUUFBUVYsU0FBUyxDQUFDWTtRQUNsQixJQUFJVixhQUFhUSxTQUFTO1lBQ3pCLEtBQUtSLFNBQVNHLElBQUk7UUFDbkI7UUFDQSxPQUFPLENBQUNSLE9BQWtCYSxRQUFRWCxTQUFTLENBQUNGO0lBQzdDO0lBRU9NLFNBQWU7UUFDckIsSUFBSSxDQUFDVCxjQUFjLENBQUNTLE1BQU07SUFDM0I7SUFFQSxNQUFhRSxPQUFzQjtRQUNsQyxNQUFNLElBQUksQ0FBQ1gsY0FBYyxDQUFDVyxJQUFJO0lBQy9CO0lBRUEsTUFBYSxDQUFDUSxPQUFPQyxZQUFZLENBQUMsR0FBa0I7UUFDbkQsTUFBTSxJQUFJLENBQUNULElBQUk7SUFDaEI7SUFFT04sVUFDTkYsSUFBYSxFQUNiQyxZQUVDLEVBQ3VCO1FBQ3hCLG9FQUFvRTtRQUNwRSxJQUFJQSxjQUFjO1lBQ2pCLE1BQU1pQixpQkFBaUIsSUFBSSxDQUFDTixhQUFhLENBQUM7Z0JBQUVYO1lBQWE7WUFDekQsSUFBSSxDQUFDSixjQUFjLENBQUNNLFNBQVMsQ0FBQ2U7UUFDL0I7UUFFQSxNQUFNbkIsU0FBUyxJQUFJLENBQUNGLGNBQWMsQ0FBQ0ssU0FBUyxDQUFDRjtRQUM3QyxJQUFJLENBQUNtQixjQUFjLENBQUNsQixjQUFjRjtRQUNsQyxPQUFPQTtJQUNSO0lBRVFvQixlQUNQbEIsWUFFQyxFQUNERixNQUE2QixFQUM1QjtRQUNELElBQUksQ0FBQ0UsY0FBYztZQUNsQjtRQUNEO1FBRUEsTUFBTW1CLGVBQWVDLE9BQU9DLE9BQU8sQ0FBQ3JCLGNBQWNzQixJQUFJLENBQ3JELENBQUNDLE1BQVEsQ0FBQ3pCLE9BQU8wQixTQUFTLENBQUNELElBQUlFLEVBQUUsQ0FBQyxHQUFHQyxRQUFRLEdBQUc7UUFHakQsSUFBSVAsZ0JBQWdCLE1BQU07WUFDekIsTUFBTSxJQUFJM0IsMEJBQ1QsQ0FBQyxtREFBbUQsRUFBRTJCLGFBQWEsb0JBQW9CLEVBQUVRLEtBQUtDLFNBQVMsQ0FBQzlCLE9BQU8wQixTQUFTLEdBQUc7UUFFN0g7UUFDQSxPQUFPO1lBQUVMO1FBQWE7SUFDdkI7SUFFUVIsY0FDUEUsT0FBc0MsRUFDUDtRQUMvQixNQUFNZ0IsV0FBV3RDLGdCQUFnQnNCLFNBQVNnQixhQUFhcEM7UUFDdkQsT0FBTztZQUFFb0M7WUFBVUMsWUFBWXBDO1lBQW1CLEdBQUdtQixPQUFPO1FBQUM7SUFDOUQ7QUFDRCJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decohere/scribe",
3
- "version": "0.0.1-dev.69",
3
+ "version": "0.0.1-dev.70",
4
4
  "description": "Structured logging interface with pluggable adapters",
5
5
  "keywords": [
6
6
  "typescript",
@@ -5,6 +5,12 @@ export interface LoggerAdapter extends AsyncDisposable {
5
5
  configure<T extends string = never, CustomOnly extends true | false = false>(options: ScribeOptions<T, CustomOnly>): any;
6
6
  getLogger<T extends string = never, CustomOnly extends true | false = false>(name: string): Logger<T, CustomOnly>;
7
7
  flush(cb?: () => void): void;
8
+ /**
9
+ * Synchronously stop accepting writes (kill ThreadStream / close fds).
10
+ * Call before swapping adapters so a dead worker cannot spam on further logs.
11
+ * Idempotent — safe to call more than once.
12
+ */
13
+ retire(): void;
8
14
  /**
9
15
  * Drain buffered output and release unmanaged handles (workers, fds).
10
16
  * Idempotent — safe to call more than once.
@@ -15,6 +21,7 @@ export declare abstract class LogAdapter implements LoggerAdapter {
15
21
  abstract configure<T extends string = never, CustomOnly extends true | false = false>(options: ScribeOptions<T, CustomOnly>): any;
16
22
  abstract getLogger<T extends string = never, CustomOnly extends true | false = false>(name: string): Logger<T, CustomOnly>;
17
23
  flush(cb?: () => void): void;
24
+ retire(): void;
18
25
  stop(): Promise<void>;
19
26
  [Symbol.asyncDispose](): Promise<void>;
20
27
  protected getLogLevels(options: ScribeOptions<any, any>): Record<string, number>;
@@ -13,10 +13,13 @@ export declare class scribe implements AsyncDisposable {
13
13
  }): Logger<T, CustomOnly>;
14
14
  static configure<T extends string = never, CustomOnly extends true | false = false>(configOptions: LoggerFactoryOptions<T, CustomOnly>): (name?: string) => Logger<T, CustomOnly>;
15
15
  static flush(cb?: () => void): void;
16
+ /** Synchronously stop accepting writes on the active adapter. */
17
+ static retire(): void;
16
18
  /** Drain the active adapter and release workers / destinations. */
17
19
  static stop(): Promise<void>;
18
20
  constructor();
19
21
  configure<T extends string = never, CustomOnly extends true | false = false>(configOptions: LoggerFactoryOptions<T, CustomOnly>): (name?: string) => Logger<T, CustomOnly>;
22
+ retire(): void;
20
23
  stop(): Promise<void>;
21
24
  [Symbol.asyncDispose](): Promise<void>;
22
25
  getLogger<T extends string = never, CustomOnly extends true | false = false>(name?: string, customLevels?: {