{"version":3,"sources":["jsdelivr-header.js","/npm/@miniflare/queues@2.14.4/dist/src/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,IAAI,SAAW,OAAO,OAClB,UAAY,OAAO,eACnB,iBAAmB,OAAO,yBAC1B,kBAAoB,OAAO,oBAC3B,aAAe,OAAO,eACtB,aAAe,OAAO,UAAU,eAChC,eAAkB,GAAW,UAAU,EAAQ,aAAc,CAAE,OAAO,IACtE,SAAW,CAAC,EAAQ,KAEtB,IAAK,IAAI,KADT,eAAe,GACE,EACf,UAAU,EAAQ,EAAM,CAAE,IAAK,EAAI,GAAO,YAAY,GAAO,EAE7D,WAAa,CAAC,EAAQ,EAAS,KACjC,GAAI,GAA8B,iBAAZ,GAA2C,mBAAZ,EACnD,IAAK,IAAI,KAAO,kBAAkB,GAC3B,aAAa,KAAK,EAAQ,IAAgB,YAAR,GACrC,UAAU,EAAQ,EAAK,CAAE,IAAK,IAAM,EAAQ,GAAM,aAAc,EAAO,iBAAiB,EAAS,KAAS,EAAK,aAErH,OAAO,CAAM,EAEX,WAAc,GACT,WAAW,eAAe,UAAqB,MAAX,EAAkB,SAAS,aAAa,IAAY,CAAC,EAAG,UAAW,GAAW,EAAQ,YAAc,YAAa,EAAU,CAAE,IAAK,IAAM,EAAQ,QAAS,YAAY,GAAS,CAAE,MAAO,EAAS,YAAY,KAAU,GAE/P,gBAAkB,CAAC,EAAY,EAAQ,EAAK,KAE9C,IADA,IACoC,EADhC,EAAS,EAAO,OAAI,EAAS,EAAO,iBAAiB,EAAQ,GAAO,EAC/D,EAAI,EAAW,OAAS,EAAc,GAAK,EAAG,KACjD,EAAY,EAAW,MACzB,GAAU,EAAO,EAAU,EAAQ,EAAK,GAAU,EAAU,KAAY,GAG5E,OAFI,GAAQ,GACV,UAAU,EAAQ,EAAK,GAClB,CAAM,EAIf,SAAS,QAAS,CAChB,mBAAoB,IAAM,mBAC1B,gBAAiB,IAAM,gBACvB,gBAAiB,IAAM,gBACvB,QAAS,IAAM,QACf,aAAc,IAAM,aACpB,YAAa,IAAM,YACnB,WAAY,IAAM,WAClB,aAAc,IAAM,aACpB,YAAa,IAAM,YACnB,kBAAmB,IAAM,oBAI3B,IAAI,cAAgB,WAAW,QAAQ,sBACnC,mBAAqB,EACrB,gBAAkB,IAClB,gBAAkB,EAClB,aAAe,cAAc,cAAc,OAC7C,cACA,eACA,GACA,WAAA,CAAY,EAAK,GACf,MAAM,GACN,KAAK,cAAc,IACf,GAAS,eAAe,QAAU,GAAS,gBAAgB,SAC7D,EAAI,IAAI,KAAK,yEAEf,MAAK,GAAc,KAAK,gBAAkB,IAAI,KAAK,IACjD,IAAI,EAQJ,OANE,EADmB,iBAAV,EACF,CACL,UAAW,GAGN,EAEF,CACL,UAAW,EAAK,UAChB,aAAc,EAAK,cAAgB,mBACnC,UAAW,EAAK,WAAa,gBAC7B,WAAY,EAAK,YAAc,gBAC/B,gBAAiB,EAAK,gBACtB,WAAY,KAAK,IAAI,qBACtB,GAEL,CACA,WAAM,CAAM,GACV,MAAM,EAAW,CAAC,EAClB,IAAK,MAAM,KAAW,KAAK,eAAiB,GAC1C,EAAS,EAAQ,MAAQ,KAAK,IAAI,YAAY,iBAAiB,EAAQ,WAGzE,MAAO,CAAE,WAAU,sBADW,MAAK,EAAW,OAAS,EAEzD,CACA,YAAA,GACE,IAAK,MAAM,KAAY,MAAK,EAAY,CACtC,MAAM,EAAQ,KAAK,IAAI,YAAY,iBAAiB,EAAS,WAC7D,KAAK,IAAI,YAAY,YAAY,EAAO,EAC1C,CACF,GAEF,gBAAgB,EACd,EAAI,cAAc,QAAQ,CACxB,KAAM,cAAc,WAAW,OAC/B,KAAM,QACN,MAAO,IACP,YAAa,iBACb,QAAS,iBACT,WAAY,aACZ,SAAW,GAAa,EAAS,KAAK,GAAM,EAAE,OAAM,KAAK,MACzD,YAAc,GAAY,EAAQ,KAAI,EAAE,EAAG,MAClC,CAAE,KAAM,EAAG,UAAW,MAE/B,aAAe,GAAmB,EAAe,QAAQ,WAAW,KAAK,IAChE,CAAE,KAAM,EAAE,QAAS,UAAW,EAAE,aAG1C,aAAa,UAAW,gBAAiB,GAC5C,gBAAgB,EACd,EAAI,cAAc,QAAQ,CACxB,KAAM,cAAc,WAAW,MAC/B,KAAM,kBACN,YAAa,kBACb,QAAS,kBACT,SAAW,GAAc,EAAU,KAAK,GAAM,EAAE,YAAW,KAAK,MAChE,aAAe,GAAmB,EAAe,QAAQ,WAAW,KAAK,IACvE,MAAM,EAAS,CAAE,UAAW,EAAK,OAajC,OAZI,EAAK,aACP,EAAO,aAAe,EAAK,YAEzB,EAAK,gBACP,EAAO,UAAY,IAAM,EAAK,eAE5B,EAAK,kBACP,EAAO,WAAa,EAAK,iBAEvB,EAAK,oBACP,EAAO,gBAAkB,EAAK,mBAEzB,CAAM,OAGhB,aAAa,UAAW,iBAAkB,GAG7C,IA8CI,UA9CA,eAAiB,WAAW,QAAQ,sBACpC,WAAa,cAAc,eAAe,iBAE1C,iBAAmB,OAAO,oBAC1B,iBAAmB,OAAO,oBAC1B,mBAAqB,OAAO,sBAC5B,QAAU,MACZ,WAAA,CAAY,EAAI,EAAW,EAAM,GAC/B,KAAK,GAAK,EACV,KAAK,UAAY,EACjB,KAAK,MAAQ,WAAW,iBAAmB,eAAe,qBAAqB,GAC/E,MAAK,EAAO,EACZ,MAAK,GAAgB,EACrB,MAAK,EAAkB,CACzB,CACA,KACA,GACA,GACA,GACA,KAAA,GACE,MAAK,GAAgB,CACvB,CACA,CAAC,oBACC,MAAK,GAAgB,EACrB,MAAK,GACP,CACA,CAAC,oBACC,OAAO,MAAK,CACd,CACA,CAAC,sBACC,OAAO,MAAK,CACd,GAEE,aAAe,MACjB,MACA,SACA,WAAA,CAAY,EAAO,GACjB,KAAK,MAAQ,EACb,KAAK,SAAW,CAClB,CACA,QAAA,GACE,IAAK,MAAM,KAAO,KAAK,SACrB,EAAI,OAER,IAGF,SAAU,GACR,EAAW,EAAiB,KAAI,GAAK,OACrC,EAAW,EAAoB,QAAI,GAAK,UACxC,EAAW,EAAsB,UAAI,GAAK,WAC3C,CAJD,CAIG,YAAc,UAAY,CAAC,IAC9B,IAAI,kBAAoB,OAAO,qBAC3B,YAAc,MAChB,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,WAAA,CAAY,EAAQ,EAAW,GAC7B,MAAK,EAAU,EACf,MAAK,EAAa,EAClB,MAAK,EAAO,EACZ,MAAK,EAAY,GACjB,MAAK,EAAkB,EACvB,MAAK,EAAgB,CACvB,CACA,UAAM,CAAK,EAAM,GACf,MAAK,EAAS,EAAM,EACtB,CACA,eAAM,CAAU,GACd,IAAK,MAAM,KAAO,EAChB,MAAK,EAAS,EAAI,KAAM,EAE5B,CACA,CAAC,eAAe,cAAc,GAC5B,QAAiB,IAAb,EAIF,OAHA,aAAa,MAAK,GAClB,MAAK,EAAgB,OACrB,MAAK,OAAY,GAGnB,GAAI,MAAK,EACP,MAAM,IAAI,WAAW,4BAEvB,MAAK,EAAY,EACb,MAAK,EAAU,QACjB,MAAK,GAET,CACA,CAAC,eAAe,gBACd,OAAO,MAAK,GAAa,IAC3B,CACA,EAAA,CAAS,EAAM,GACb,MAAM,EAAM,IAAI,QAAQ,GAAG,MAAK,KAAc,MAAK,IAAmB,IAAI,KAAQ,EAAM,MAAK,GAC7F,MAAK,EAAU,KAAK,GACpB,MAAK,IACD,MAAK,GACP,MAAK,GAET,CACA,EAAA,GACE,IAAK,MAAK,EACR,OAEF,GAA2B,IAAvB,MAAK,EACP,OAEF,GAA2B,IAAvB,MAAK,EAAqB,CAC5B,GAAI,MAAK,EAAU,OAAS,MAAK,GAAW,aAC1C,OAEF,aAAa,MAAK,GAClB,MAAK,OAAW,CAClB,CACA,MAAM,EAAe,MAAK,EAAU,OAAS,MAAK,EAAU,aAAe,EAAI,EAC/E,MAAK,EAAgB,EACrB,MAAM,EAAyB,IAAjB,EAAqB,MAAK,GAAW,UAAY,EAC/D,MAAK,EAAW,YAAW,KACzB,MAAK,IACD,MAAK,GACP,MAAK,GACP,GACC,EACL,CACA,OAAM,GACJ,IAAK,MAAK,EACR,OAEF,MAAM,EAAc,MAAK,EAAU,WAAa,EAC1C,EAAsB,MAAK,EAAU,gBACrC,EAAO,MAAK,EAAU,MAAM,EAAG,MAAK,EAAU,cAC9C,EAAQ,IAAI,aAAa,MAAK,EAAY,GAChD,MAAK,EAAY,MAAK,EAAU,MAAM,EAAK,QAC3C,UACQ,MAAK,GAAW,WAAW,GACnC,CAAE,MAAO,GACP,MAAK,GAAM,OAAM,EAAI,eAAe,aAAa,GAAG,MAAK,aAAuB,IAChF,EAAM,UACR,CACA,MAAK,EAAgB,EACrB,MAAK,OAAW,EAChB,MAAM,EAAU,GACV,EAAQ,GAsBd,GArBA,EAAM,SAAS,SAAS,IACjB,EAAI,sBAGT,EAAI,oBACA,EAAI,sBAAwB,GAC9B,MAAK,GAAM,MAAM,qBAAqB,EAAI,UAC1C,EAAQ,KAAK,IACJ,GACT,MAAK,GAAM,KAAK,mBAAmB,EAAI,6BAA6B,SACpE,EAAM,KAAK,IAEX,MAAK,GAAM,KAAK,oBAAoB,EAAI,aAAa,sBACvD,IAEE,EAAQ,QACV,MAAK,EAAU,QAAQ,GAErB,MAAK,EAAU,OAAS,GAC1B,MAAK,IAEH,EAAqB,CACvB,MAAM,EAAkB,MAAK,EAAQ,iBAAiB,GACtD,EAAM,SAAS,IACb,EAAgB,KAAK,EAAI,KAAK,GAElC,CACF,CACA,CAAC,mBAAmB,GAClB,MAAK,EAAiB,CACxB,GAEE,YAAc,MAChB,GACA,GACA,WAAA,CAAY,GACV,MAAK,EAAU,IAAI,IACnB,MAAK,EAAO,CACd,CACA,gBAAA,CAAiB,GACf,IAAI,EAAQ,MAAK,EAAQ,IAAI,GAI7B,YAHc,IAAV,GACF,MAAK,EAAQ,IAAI,EAAM,EAAQ,IAAI,YAAY,KAAM,EAAM,MAAK,IAE3D,CACT,CACA,cAAA,GACE,IAAK,MAAM,KAAS,MAAK,EAAQ,SAC/B,EAAM,eAAe,eACzB,CACA,WAAA,CAAY,EAAO,GACjB,EAAM,eAAe,cAAc,EACrC","file":"/npm/@miniflare/queues@2.14.4/dist/src/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/@miniflare/queues@2.14.4/dist/src/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","var __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __markAsModule = (target) => __defProp(target, \"__esModule\", { value: true });\nvar __export = (target, all) => {\n  __markAsModule(target);\n  for (var name in all)\n    __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __reExport = (target, module2, desc) => {\n  if (module2 && typeof module2 === \"object\" || typeof module2 === \"function\") {\n    for (let key of __getOwnPropNames(module2))\n      if (!__hasOwnProp.call(target, key) && key !== \"default\")\n        __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });\n  }\n  return target;\n};\nvar __toModule = (module2) => {\n  return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, \"default\", module2 && module2.__esModule && \"default\" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);\n};\nvar __decorateClass = (decorators, target, key, kind) => {\n  var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;\n  for (var i = decorators.length - 1, decorator; i >= 0; i--)\n    if (decorator = decorators[i])\n      result = (kind ? decorator(target, key, result) : decorator(result)) || result;\n  if (kind && result)\n    __defProp(target, key, result);\n  return result;\n};\n\n// packages/queues/src/index.ts\n__export(exports, {\n  DEFAULT_BATCH_SIZE: () => DEFAULT_BATCH_SIZE,\n  DEFAULT_RETRIES: () => DEFAULT_RETRIES,\n  DEFAULT_WAIT_MS: () => DEFAULT_WAIT_MS,\n  Message: () => Message,\n  MessageBatch: () => MessageBatch,\n  QueueBroker: () => QueueBroker,\n  QueueError: () => QueueError,\n  QueuesPlugin: () => QueuesPlugin,\n  WorkerQueue: () => WorkerQueue,\n  kSetFlushCallback: () => kSetFlushCallback\n});\n\n// packages/queues/src/plugin.ts\nvar import_shared = __toModule(require(\"@miniflare/shared\"));\nvar DEFAULT_BATCH_SIZE = 5;\nvar DEFAULT_WAIT_MS = 1e3;\nvar DEFAULT_RETRIES = 2;\nvar QueuesPlugin = class extends import_shared.Plugin {\n  queueBindings;\n  queueConsumers;\n  #consumers;\n  constructor(ctx, options) {\n    super(ctx);\n    this.assignOptions(options);\n    if (options?.queueBindings?.length || options?.queueConsumers?.length) {\n      ctx.log.warn(\"Queues are experimental. There may be breaking changes in the future.\");\n    }\n    this.#consumers = (this.queueConsumers ?? []).map((entry) => {\n      let opts;\n      if (typeof entry === \"string\") {\n        opts = {\n          queueName: entry\n        };\n      } else {\n        opts = entry;\n      }\n      return {\n        queueName: opts.queueName,\n        maxBatchSize: opts.maxBatchSize ?? DEFAULT_BATCH_SIZE,\n        maxWaitMs: opts.maxWaitMs ?? DEFAULT_WAIT_MS,\n        maxRetries: opts.maxRetries ?? DEFAULT_RETRIES,\n        deadLetterQueue: opts.deadLetterQueue,\n        dispatcher: this.ctx.queueEventDispatcher\n      };\n    });\n  }\n  async setup(_storageFactory) {\n    const bindings = {};\n    for (const binding of this.queueBindings ?? []) {\n      bindings[binding.name] = this.ctx.queueBroker.getOrCreateQueue(binding.queueName);\n    }\n    const requiresModuleExports = this.#consumers.length > 0;\n    return { bindings, requiresModuleExports };\n  }\n  beforeReload() {\n    for (const consumer of this.#consumers) {\n      const queue = this.ctx.queueBroker.getOrCreateQueue(consumer.queueName);\n      this.ctx.queueBroker.setConsumer(queue, consumer);\n    }\n  }\n};\n__decorateClass([\n  (0, import_shared.Option)({\n    type: import_shared.OptionType.OBJECT,\n    name: \"queue\",\n    alias: \"q\",\n    description: \"Queue Bindings\",\n    logName: \"Queue Bindings\",\n    typeFormat: \"NAME=QUEUE\",\n    logValue: (bindings) => bindings.map((b) => b.name).join(\", \"),\n    fromEntries: (entries) => entries.map(([k, v]) => {\n      return { name: k, queueName: v };\n    }),\n    fromWrangler: (wranglerConfig) => wranglerConfig.queues?.producers?.map((b) => {\n      return { name: b.binding, queueName: b.queue };\n    })\n  })\n], QueuesPlugin.prototype, \"queueBindings\", 2);\n__decorateClass([\n  (0, import_shared.Option)({\n    type: import_shared.OptionType.ARRAY,\n    name: \"queue-consumers\",\n    description: \"Queue Consumers\",\n    logName: \"Queue Consumers\",\n    logValue: (consumers) => consumers.map((b) => b.queueName).join(\", \"),\n    fromWrangler: (wranglerConfig) => wranglerConfig.queues?.consumers?.map((opts) => {\n      const result = { queueName: opts.queue };\n      if (opts.batch_size) {\n        result.maxBatchSize = opts.batch_size;\n      }\n      if (opts.batch_timeout) {\n        result.maxWaitMs = 1e3 * opts.batch_timeout;\n      }\n      if (opts.message_retries) {\n        result.maxRetries = opts.message_retries;\n      }\n      if (opts.dead_letter_queue) {\n        result.deadLetterQueue = opts.dead_letter_queue;\n      }\n      return result;\n    })\n  })\n], QueuesPlugin.prototype, \"queueConsumers\", 2);\n\n// packages/queues/src/broker.ts\nvar import_shared2 = __toModule(require(\"@miniflare/shared\"));\nvar QueueError = class extends import_shared2.MiniflareError {\n};\nvar kGetPendingRetry = Symbol(\"kGetPendingRetry\");\nvar kPrepareForRetry = Symbol(\"kPrepareForRetry\");\nvar kGetFailedAttempts = Symbol(\"kGetFailedAttempts\");\nvar Message = class {\n  constructor(id, timestamp, body, log) {\n    this.id = id;\n    this.timestamp = timestamp;\n    this.body = (globalThis.structuredClone ?? import_shared2.structuredCloneImpl)(body);\n    this.#log = log;\n    this.#pendingRetry = false;\n    this.#failedAttempts = 0;\n  }\n  body;\n  #log;\n  #pendingRetry;\n  #failedAttempts;\n  retry() {\n    this.#pendingRetry = true;\n  }\n  [kPrepareForRetry]() {\n    this.#pendingRetry = false;\n    this.#failedAttempts++;\n  }\n  [kGetPendingRetry]() {\n    return this.#pendingRetry;\n  }\n  [kGetFailedAttempts]() {\n    return this.#failedAttempts;\n  }\n};\nvar MessageBatch = class {\n  queue;\n  messages;\n  constructor(queue, messages) {\n    this.queue = queue;\n    this.messages = messages;\n  }\n  retryAll() {\n    for (const msg of this.messages) {\n      msg.retry();\n    }\n  }\n};\nvar FlushType;\n(function(FlushType2) {\n  FlushType2[FlushType2[\"NONE\"] = 0] = \"NONE\";\n  FlushType2[FlushType2[\"DELAYED\"] = 1] = \"DELAYED\";\n  FlushType2[FlushType2[\"IMMEDIATE\"] = 2] = \"IMMEDIATE\";\n})(FlushType || (FlushType = {}));\nvar kSetFlushCallback = Symbol(\"kSetFlushCallback\");\nvar WorkerQueue = class {\n  #broker;\n  #queueName;\n  #log;\n  #consumer;\n  #messages;\n  #messageCounter;\n  #pendingFlush;\n  #timeout;\n  #flushCallback;\n  constructor(broker, queueName, log) {\n    this.#broker = broker;\n    this.#queueName = queueName;\n    this.#log = log;\n    this.#messages = [];\n    this.#messageCounter = 0;\n    this.#pendingFlush = 0;\n  }\n  async send(body, options) {\n    this.#enqueue(body, options);\n  }\n  async sendBatch(batch) {\n    for (const req of batch) {\n      this.#enqueue(req.body, req);\n    }\n  }\n  [import_shared2.kSetConsumer](consumer) {\n    if (consumer === void 0) {\n      clearTimeout(this.#timeout);\n      this.#pendingFlush = 0;\n      this.#consumer = void 0;\n      return;\n    }\n    if (this.#consumer) {\n      throw new QueueError(\"ERR_CONSUMER_ALREADY_SET\");\n    }\n    this.#consumer = consumer;\n    if (this.#messages.length) {\n      this.#ensurePendingFlush();\n    }\n  }\n  [import_shared2.kGetConsumer]() {\n    return this.#consumer ?? null;\n  }\n  #enqueue(body, _options) {\n    const msg = new Message(`${this.#queueName}-${this.#messageCounter}`, new Date(), body, this.#log);\n    this.#messages.push(msg);\n    this.#messageCounter++;\n    if (this.#consumer) {\n      this.#ensurePendingFlush();\n    }\n  }\n  #ensurePendingFlush() {\n    if (!this.#consumer) {\n      return;\n    }\n    if (this.#pendingFlush === 2) {\n      return;\n    }\n    if (this.#pendingFlush === 1) {\n      if (this.#messages.length < this.#consumer?.maxBatchSize) {\n        return;\n      }\n      clearTimeout(this.#timeout);\n      this.#timeout = void 0;\n    }\n    const newFlushType = this.#messages.length < this.#consumer.maxBatchSize ? 1 : 2;\n    this.#pendingFlush = newFlushType;\n    const delay = newFlushType === 1 ? this.#consumer?.maxWaitMs : 0;\n    this.#timeout = setTimeout(() => {\n      this.#flush();\n      if (this.#flushCallback) {\n        this.#flushCallback();\n      }\n    }, delay);\n  }\n  async #flush() {\n    if (!this.#consumer) {\n      return;\n    }\n    const maxAttempts = this.#consumer.maxRetries + 1;\n    const deadLetterQueueName = this.#consumer.deadLetterQueue;\n    const msgs = this.#messages.slice(0, this.#consumer.maxBatchSize);\n    const batch = new MessageBatch(this.#queueName, msgs);\n    this.#messages = this.#messages.slice(msgs.length);\n    try {\n      await this.#consumer?.dispatcher(batch);\n    } catch (err) {\n      this.#log?.error((0, import_shared2.prefixError)(`${this.#queueName} Consumer`, err));\n      batch.retryAll();\n    }\n    this.#pendingFlush = 0;\n    this.#timeout = void 0;\n    const toRetry = [];\n    const toDLQ = [];\n    batch.messages.forEach((msg) => {\n      if (!msg[kGetPendingRetry]()) {\n        return;\n      }\n      msg[kPrepareForRetry]();\n      if (msg[kGetFailedAttempts]() < maxAttempts) {\n        this.#log?.debug(`Retrying message \"${msg.id}\"...`);\n        toRetry.push(msg);\n      } else if (deadLetterQueueName) {\n        this.#log?.warn(`Moving message \"${msg.id}\" to dead letter queue \"${deadLetterQueueName}\"...`);\n        toDLQ.push(msg);\n      } else {\n        this.#log?.warn(`Dropped message \"${msg.id}\" after ${maxAttempts} failed attempts!`);\n      }\n    });\n    if (toRetry.length) {\n      this.#messages.push(...toRetry);\n    }\n    if (this.#messages.length > 0) {\n      this.#ensurePendingFlush();\n    }\n    if (deadLetterQueueName) {\n      const deadLetterQueue = this.#broker.getOrCreateQueue(deadLetterQueueName);\n      toDLQ.forEach((msg) => {\n        deadLetterQueue.send(msg.body);\n      });\n    }\n  }\n  [kSetFlushCallback](callback) {\n    this.#flushCallback = callback;\n  }\n};\nvar QueueBroker = class {\n  #queues;\n  #log;\n  constructor(log) {\n    this.#queues = new Map();\n    this.#log = log;\n  }\n  getOrCreateQueue(name) {\n    let queue = this.#queues.get(name);\n    if (queue === void 0) {\n      this.#queues.set(name, queue = new WorkerQueue(this, name, this.#log));\n    }\n    return queue;\n  }\n  resetConsumers() {\n    for (const queue of this.#queues.values())\n      queue[import_shared2.kSetConsumer]();\n  }\n  setConsumer(queue, consumer) {\n    queue[import_shared2.kSetConsumer](consumer);\n  }\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n  DEFAULT_BATCH_SIZE,\n  DEFAULT_RETRIES,\n  DEFAULT_WAIT_MS,\n  Message,\n  MessageBatch,\n  QueueBroker,\n  QueueError,\n  QueuesPlugin,\n  WorkerQueue,\n  kSetFlushCallback\n});\n\n"]}