@rotorsoft/act-ops 0.1.0 → 0.2.1

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/dist/.tsbuildinfo CHANGED
@@ -1 +1 @@
1
- {"fileNames":["../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2025.float16.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.full.d.ts","../src/idempotency/min-safe-ttl.ts","../src/idempotency/port.ts","../src/idempotency/in-memory.ts","../src/idempotency/index.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/blob.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/console.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/crypto.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/encoding.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/utility.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/client-stats.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/round-robin-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/h2c-client.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-call-history.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/snapshot-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/socks5-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/cache-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/importmeta.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/messaging.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/performance.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/streams.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/timers.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/url.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/inspector/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/path/posix.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/path/win32.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/quic.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream/iter.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/test/reporters.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/util/types.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/zlib/iter.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/@vitest+pretty-format@4.1.7/node_modules/@vitest/pretty-format/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.7/node_modules/@vitest/utils/dist/display.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.7/node_modules/@vitest/utils/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.7/node_modules/@vitest/utils/dist/helpers.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.7/node_modules/@vitest/utils/dist/timers.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.7/node_modules/@vitest/utils/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.7/node_modules/@vitest/utils/dist/types.d-BCElaP-c.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.7/node_modules/@vitest/utils/dist/diff.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.7/node_modules/@vitest/runner/dist/tasks.d-DEYaIMIu.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.7/node_modules/@vitest/runner/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/traces.d.D2T_R8rx.d.ts","../../../node_modules/.pnpm/vite@8.0.14_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.3_yaml@2.9.0/node_modules/vite/types/hmrPayload.d.ts","../../../node_modules/.pnpm/vite@8.0.14_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.3_yaml@2.9.0/node_modules/vite/dist/node/chunks/moduleRunnerTransport.d.ts","../../../node_modules/.pnpm/vite@8.0.14_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.3_yaml@2.9.0/node_modules/vite/types/customEvent.d.ts","../../../node_modules/.pnpm/vite@8.0.14_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.3_yaml@2.9.0/node_modules/vite/types/hot.d.ts","../../../node_modules/.pnpm/vite@8.0.14_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.3_yaml@2.9.0/node_modules/vite/dist/node/module-runner.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.7/node_modules/@vitest/snapshot/dist/environment.d-DOJxxZV9.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.7/node_modules/@vitest/snapshot/dist/rawSnapshot.d-D_X3-62x.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.7/node_modules/@vitest/snapshot/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/config.d.A1h_Y6Jt.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/environment.d.CrsxCzP1.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/rpc.d.B_8sPU0w.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/worker.d.ZpHpO4yb.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/browser.d.BcoexmFG.d.ts","../../../node_modules/.pnpm/@vitest+spy@4.1.7/node_modules/@vitest/spy/optional-types.d.ts","../../../node_modules/.pnpm/@vitest+spy@4.1.7/node_modules/@vitest/spy/dist/index.d.ts","../../../node_modules/.pnpm/tinyrainbow@3.1.0/node_modules/tinyrainbow/dist/index.d.ts","../../../node_modules/.pnpm/@standard-schema+spec@1.1.0/node_modules/@standard-schema/spec/dist/index.d.ts","../../../node_modules/.pnpm/@types+deep-eql@4.0.2/node_modules/@types/deep-eql/index.d.ts","../../../node_modules/.pnpm/assertion-error@2.0.1/node_modules/assertion-error/index.d.ts","../../../node_modules/.pnpm/@types+chai@5.2.3/node_modules/@types/chai/index.d.ts","../../../node_modules/.pnpm/@vitest+expect@4.1.7/node_modules/@vitest/expect/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.7/node_modules/@vitest/runner/dist/utils.d.ts","../../../node_modules/.pnpm/tinybench@2.9.0/node_modules/tinybench/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/benchmark.d.DAaHLpsq.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/global.d.DVsSRdQ5.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/optional-runtime-types.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.7_vite@8.0.14_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.3_yaml@2.9.0_/node_modules/@vitest/mocker/dist/types.d-BjI5eAwu.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.7_vite@8.0.14_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.3_yaml@2.9.0_/node_modules/@vitest/mocker/dist/index.d-B41z0AuW.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.7_vite@8.0.14_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.3_yaml@2.9.0_/node_modules/@vitest/mocker/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/suite.d.udJtyAgw.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/chunks/evaluatedModules.d.BxJ5omdx.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/runners.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/utils.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/overloads.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/branding.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/messages.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.7_@types+node@25.9.1_@vitest+coverage-v8@4.1.7_vite@8.0.14_@types+node@25.9._80d5839fc632fdcd9de039dffc6761e7/node_modules/vitest/globals.d.ts"],"fileIdsList":[[66,67,72,136,144,148,151,153,154,155,167],[66,67,68,72,136,144,148,151,153,154,155,167],[72,136,144,148,151,153,154,155,167],[72,136,144,148,151,153,154,155,167,223,224],[72,133,134,136,144,148,151,153,154,155,167],[72,135,136,144,148,151,153,154,155,167],[136,144,148,151,153,154,155,167],[72,136,144,148,151,153,154,155,167,176],[72,136,137,142,144,147,148,151,153,154,155,157,167,172,185],[72,136,137,138,144,147,148,151,153,154,155,167],[72,136,139,144,148,151,153,154,155,167,186],[72,136,140,141,144,148,151,153,154,155,158,167],[72,136,141,144,148,151,153,154,155,167,172,182],[72,136,142,144,147,148,151,153,154,155,157,167],[72,135,136,143,144,148,151,153,154,155,167],[72,136,144,145,148,151,153,154,155,167],[72,136,144,146,147,148,151,153,154,155,167],[72,135,136,144,147,148,151,153,154,155,167],[72,136,144,147,148,149,151,153,154,155,167,172,185],[72,136,144,147,148,149,151,153,154,155,167,172,174,176],[72,123,136,144,147,148,150,151,153,154,155,157,167,172,185],[72,136,144,147,148,150,151,153,154,155,157,167,172,182,185],[72,136,144,148,150,151,152,153,154,155,167,172,182,185],[70,71,72,73,74,75,76,77,78,79,80,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[72,136,144,147,148,151,153,154,155,167],[72,136,144,148,151,153,155,167],[72,136,144,148,151,153,154,155,156,167,185],[72,136,144,147,148,151,153,154,155,157,167,172],[72,136,144,148,151,153,154,155,158,167],[72,136,144,148,151,153,154,155,159,167],[72,136,144,147,148,151,153,154,155,162,167],[72,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192],[72,136,144,148,151,153,154,155,164,167],[72,136,144,148,151,153,154,155,165,167],[72,136,141,144,148,151,153,154,155,157,167,176],[72,136,144,147,148,151,153,154,155,167,168],[72,136,144,148,151,153,154,155,167,169,186,189],[72,136,144,147,148,151,153,154,155,167,172,175,176],[72,136,144,148,151,153,154,155,167,173,176],[72,136,144,148,151,153,154,155,167,174],[72,136,144,148,151,153,154,155,167,176,186],[72,136,144,148,151,153,154,155,167,177],[72,133,136,144,148,151,153,154,155,167,172,179,185],[72,136,144,148,151,153,154,155,167,172,178],[72,136,144,147,148,151,153,154,155,167,180,181],[72,136,144,148,151,153,154,155,167,180,181],[72,136,141,144,148,151,153,154,155,157,167,172,182],[72,136,144,148,151,153,154,155,167,183],[72,136,144,148,151,153,154,155,157,167,184],[72,136,144,148,150,151,153,154,155,165,167,185],[72,136,144,148,151,153,154,155,167,186,187],[72,136,141,144,148,151,153,154,155,167,187],[72,136,144,148,151,153,154,155,167,172,188],[72,136,144,148,151,153,154,155,156,167,189],[72,136,144,148,151,153,154,155,167,190],[72,136,139,144,148,151,153,154,155,167],[72,136,141,144,148,151,153,154,155,167],[72,136,144,148,151,153,154,155,167,186],[72,123,136,144,148,151,153,154,155,167],[72,136,144,148,151,153,154,155,167,185],[72,136,144,148,151,153,154,155,167,191],[72,136,144,148,151,153,154,155,162,167],[72,136,144,148,151,153,154,155,167,181],[72,123,136,144,147,148,149,151,153,154,155,162,167,172,176,185,188,189,191],[72,136,144,148,151,153,154,155,167,172,192],[72,136,144,148,151,153,154,155,167,174,193],[72,136,144,148,151,153,154,155,167,196,202,220,221,222,225],[72,136,144,148,151,153,154,155,167,232],[72,136,144,148,151,153,154,155,167,232,233],[72,136,144,148,151,153,154,155,167,200,202,203],[72,136,144,148,151,153,154,155,167,200,202],[72,136,144,148,151,153,154,155,167,200],[72,136,144,148,151,153,154,155,167,195,200,211,212],[72,136,144,148,151,153,154,155,167,195,200,211],[72,136,144,148,151,153,154,155,167,219],[72,136,144,148,151,153,154,155,167,195,201],[72,136,144,148,151,153,154,155,167,195],[72,136,144,148,151,153,154,155,167,197],[72,136,144,148,151,153,154,155,167,195,196,197,198,199],[72,136,144,148,151,153,154,155,167,238,239],[72,136,144,148,151,153,154,155,167,238,239,240,241],[72,136,144,148,151,153,154,155,167,238,240],[72,136,144,148,151,153,154,155,167,238],[72,87,90,93,94,136,144,148,151,153,154,155,167,185],[72,90,136,144,148,151,153,154,155,167,172,185],[72,90,94,136,144,148,151,153,154,155,167,185],[72,136,144,148,151,153,154,155,167,172],[72,84,136,144,148,151,153,154,155,167],[72,88,136,144,148,151,153,154,155,167],[72,86,87,90,136,144,148,151,153,154,155,167,185],[72,136,144,148,151,153,154,155,157,167,182],[72,136,144,148,151,153,154,155,167,194],[72,84,136,144,148,151,153,154,155,167,194],[72,86,90,136,144,148,151,153,154,155,157,167,185],[72,81,82,83,85,89,136,144,147,148,151,153,154,155,167,172,185],[72,90,99,107,136,144,148,151,153,154,155,167],[72,82,88,136,144,148,151,153,154,155,167],[72,90,117,118,136,144,148,151,153,154,155,167],[72,82,85,90,136,144,148,151,153,154,155,167,176,185,194],[72,90,136,144,148,151,153,154,155,167],[72,86,90,136,144,148,151,153,154,155,167,185],[72,81,136,144,148,151,153,154,155,167],[72,84,85,86,88,89,90,91,92,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,118,119,120,121,122,136,144,148,151,153,154,155,167],[72,90,110,113,136,144,148,151,153,154,155,167],[72,90,99,100,101,136,144,148,151,153,154,155,167],[72,88,90,100,102,136,144,148,151,153,154,155,167],[72,89,136,144,148,151,153,154,155,167],[72,82,84,90,136,144,148,151,153,154,155,167],[72,90,94,100,102,136,144,148,151,153,154,155,167],[72,94,136,144,148,151,153,154,155,167],[72,88,90,93,136,144,148,151,153,154,155,167,185],[72,82,86,90,99,136,144,148,151,153,154,155,167],[72,90,110,136,144,148,151,153,154,155,167],[72,102,136,144,148,151,153,154,155,167],[72,82,86,90,94,136,144,148,151,153,154,155,167],[72,84,90,117,136,144,148,151,153,154,155,167,176,191,194],[72,136,144,148,151,153,154,155,167,206],[72,136,144,148,151,153,154,155,167,206,207,208,209],[72,136,144,148,151,153,154,155,167,208],[72,136,144,148,151,153,154,155,167,204,227,228,230],[72,136,144,148,151,153,154,155,167,204,205,217,230],[72,136,144,148,151,153,154,155,167,195,202,204,205,213,230],[72,136,144,148,151,153,154,155,167,210],[72,136,144,148,151,153,154,155,167,195,204,205,213,226,229,230],[72,136,144,148,151,153,154,155,167,204,205,210,213,230],[72,136,144,148,151,153,154,155,167,204,227,228,229,230],[72,136,144,148,151,153,154,155,167,204,210,214,215,216,230],[72,136,144,148,151,153,154,155,167,195,200,202,204,205,210,213,214,215,216,217,218,220,226,227,228,229,230,231,234,235,236,237,242],[72,136,144,148,151,153,154,155,167,195,202,204,205,213,214,227,228,229,230,235],[72,136,144,148,151,153,154,155,167,243]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","impliedFormat":1},{"version":"d6b1eba8496bdd0eed6fc8a685768fe01b2da4a0388b5fe7df558290bffcf32f","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"2a2de5b9459b3fc44decd9ce6100b72f1b002ef523126c1d3d8b2a4a63d74d78","affectsGlobalScope":true,"impliedFormat":1},{"version":"f13f4b465c99041e912db5c44129a94588e1aafee35a50eab51044833f50b4ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","affectsGlobalScope":true,"impliedFormat":1},{"version":"f128dae7c44d8f35ee42e0a437000a57c9f06cc04f8b4fb42eebf44954d53dc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ecb8e347cb6b2a8927c09b86263663289418df375f5e68e11a0ae683776978f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"01a30f9e8582b369075c0808df71121e6855cb06fd8d3d39511d9ebb66405205","impliedFormat":1},{"version":"b46a75de449d307dbb4fbeb52cada176d092377489ff8fee064e7d523a4f5edf","signature":"c1fd36502ba4ba795867599039a526f9d6f2d8ee4c4eb7a6415add6328f36965","impliedFormat":99},{"version":"94f0fe7b5d334d6bb93ab88c1aeb6275782b75f3d8031071bdf7688ceff0b1e2","signature":"a9f7f2a340ef8d7b5982af1776cf0ac233504d970272ffd48b4b2e7d81b3d907","impliedFormat":99},{"version":"f34fcd685b918fd7e9d306aae9f7d94efac2bd41c323b0cf8a98ddd3f1a08906","signature":"66afb5ec408f758e329718dad7bdfcebe480c6249f6c2883676a39f0f8ffb0c6","impliedFormat":99},{"version":"1dda96b4029f6e7615ee44b40145588dd6f98a4cfa6943a0ac4f504cf9b5e1d8","signature":"c650bc675cf9a7ef004e2aac9a62ac241445c93ad529044491b7a095c1b522e9","impliedFormat":99},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"0ccdaa19852d25ecd84eec365c3bfa16e7859cadecf6e9ca6d0dbbbee439743f","affectsGlobalScope":true,"impliedFormat":1},{"version":"cc2110f7decca6bfb9392e30421cfa1436479e4a6756e8fec6cbc22625d4f881","affectsGlobalScope":true,"impliedFormat":1},{"version":"096116f8fedc1765d5bd6ef360c257b4a9048e5415054b3bf3c41b07f8951b0b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5e01375c9e124a83b52ee4b3244ed1a4d214a6cfb54ac73e164a823a4a7860a","affectsGlobalScope":true,"impliedFormat":1},{"version":"f90ae2bbce1505e67f2f6502392e318f5714bae82d2d969185c4a6cecc8af2fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b58e207b93a8f1c88bbf2a95ddc686ac83962b13830fe8ad3f404ffc7051fb4","affectsGlobalScope":true,"impliedFormat":1},{"version":"1fefabcb2b06736a66d2904074d56268753654805e829989a46a0161cd8412c5","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"c18a99f01eb788d849ad032b31cafd49de0b19e083fe775370834c5675d7df8e","affectsGlobalScope":true,"impliedFormat":1},{"version":"5247874c2a23b9a62d178ae84f2db6a1d54e6c9a2e7e057e178cc5eea13757fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"156a859e21ef3244d13afeeba4e49760a6afa035c149dda52f0c45ea8903b338","impliedFormat":1},{"version":"10ec5e82144dfac6f04fa5d1d6c11763b3e4dbbac6d99101427219ab3e2ae887","impliedFormat":1},{"version":"615754924717c0b1e293e083b83503c0a872717ad5aa60ed7f1a699eb1b4ea5c","impliedFormat":1},{"version":"14e9acf826baba0ef4b5665704084896e7bcc06f65a9ab13af7e93d27d6b7069","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"21adf13435b9b748529c8cedf80f884e5130b9684188120a686cd2b26a2059c7","impliedFormat":1},{"version":"eec76bf6b9346f3f95fa402621b889489e96930e72295b0369022f332e9b4a6a","impliedFormat":1},{"version":"0ecd58f413f9bc3b7d4383eae31b0c8fc576985cd7404d6f99f8c643543ade74","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"9c32412007b5662fd34a8eb04292fb5314ec370d7016d1c2fb8aa193c807fe22","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"4d327f7d72ad0918275cea3eee49a6a8dc8114ae1d5b7f3f5d0774de75f7439a","impliedFormat":1},{"version":"6ebe8ebb8659aaa9d1acbf3710d7dae3e923e97610238b9511c25dc39023a166","impliedFormat":1},{"version":"e85d7f8068f6a26710bff0cc8c0fc5e47f71089c3780fbede05857331d2ddec9","impliedFormat":1},{"version":"7befaf0e76b5671be1d47b77fcc65f2b0aad91cc26529df1904f4a7c46d216e9","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"d33ce35e3f9cfcc1d94eca415bdd3bde94d5b153ffdd33e6c4455c029986c630","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"8aee8b6d4f9f62cf3776cda1305fb18763e2aade7e13cea5bbe699112df85214","impliedFormat":1},{"version":"98498b101803bb3dde9f76a56e65c14b75db1cc8bec5f4db72be541570f74fc5","impliedFormat":1},{"version":"4dc59f6e1dbf3d5f66660fceabe6c174d3261b37b696ae1854f0dbaf255fc753","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"436d7b4543b340b0f3eef4310d524242e41369b9652aa9c70428767c4dcac455","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"12950411eeab8563b349cb7959543d92d8d02c289ed893d78499a19becb5a8cc","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"114f493b30f364255290472111b5a4791d5902c308645670cd0401429cbc6930","impliedFormat":1},{"version":"c3f5289820990ab66b70c7fb5b63cb674001009ff84b13de40619619a9c8175f","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3275d55fac10b799c9546804126239baf020d220136163f763b55a74e50e750","affectsGlobalScope":true,"impliedFormat":1},{"version":"fa68a0a3b7cb32c00e39ee3cd31f8f15b80cac97dce51b6ee7fc14a1e8deb30b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c36e755bced82df7fb6ce8169265d0a7bb046ab4e2cb6d0da0cb72b22033e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"7a93de4ff8a63bafe62ba86b89af1df0ccb5e40bb85b0c67d6bbcfdcf96bf3d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"90e85f9bc549dfe2b5749b45fe734144e96cd5d04b38eae244028794e142a77e","affectsGlobalScope":true,"impliedFormat":1},{"version":"e0a5deeb610b2a50a6350bd23df6490036a1773a8a71d70f2f9549ab009e67ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"d2ae155afe8a01cc0ae612d99117cf8ef16692ba7c4366590156fdec1bcf2d8c","impliedFormat":1},{"version":"3f5e5d9be35913db9fea42a63f3df0b7e3c8703b97670a2125587b4dbbd56d7c","impliedFormat":1},{"version":"c8b8968311ec4e5e97b7b5fb8a65efaba455db9bdcfd7fff7fb15f6e317bfba0","impliedFormat":1},{"version":"57c23df0b5f7a8e26363a3849b0bc7763f6b241207157c8e40089d1df4116f35","affectsGlobalScope":true,"impliedFormat":1},{"version":"3b8bc0c17b54081b0878673989216229e575d67a10874e84566a21025a2461ee","impliedFormat":1},{"version":"5b0db5a58b73498792a29bfebc333438e61906fef75da898b410e24e52229e6f","impliedFormat":1},{"version":"dbe055b2b29a7bab2c1ca8f259436306adb43f469dca7e639a02cd3695d3f621","impliedFormat":1},{"version":"1678b04557dca52feab73cc67610918a7f5e25bfdba3e7fa081acd625d93106d","impliedFormat":1},{"version":"aecbf1d9e6a18dab7d92ef8a89a1444b47e1eb6134cb2bb776a26d55ff58c29a","impliedFormat":1},{"version":"2ea729503db9793f2691162fec3dd1118cab62e96d025f8eeb376d43ec293395","impliedFormat":1},{"version":"9ec87fea42b92894b0f209931a880789d43c3397d09dd99c631ae40a2f7071d1","impliedFormat":1},{"version":"c68e88cdfadfb6c8ba5fc38e58a3a166b0beae77b1f05b7d921150a32a5ffb8d","impliedFormat":1},{"version":"2bc7aa4fba46df0bd495425a7c8201437a7d465f83854fac859df2d67f664df3","impliedFormat":1},{"version":"41d17e1ad9a002feb11c8cdd2777e5bbc0cdb1e3f595d237e4dded0b6949983b","impliedFormat":1},{"version":"1fede9296beac11ce8e6b425396a1791f64341f2be85deebb6286faf6e16306e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce697b6a251d9cad53998c7fd3098072df883b525ec45d83530e434dc6d80dc6","impliedFormat":1},{"version":"719412f054e6ecc35489462c9a21bab0323d173a7d04e55b0ace4b5d86fbeb07","impliedFormat":1},{"version":"0eb5d0cbf09de5d34542b977fd6a933bb2e0817bffe8e1a541b2f1ad1b9af1ff","impliedFormat":1},{"version":"fac3e88881b35d3a757ed891ac912b2674792c25e2a1a74e1f5fbc72d19a9792","impliedFormat":1},{"version":"2c2bdaa1d8ead9f68628d6d9d250e46ee8e81aa4898b4769a36956ae15e060fe","impliedFormat":1},{"version":"c32c840c62d8bd7aeb3147aa6754cd2d922b990a6b6634530cb2ebdce5adc8e9","impliedFormat":1},{"version":"5ff4433a2deae4f85ab1377e90a7554ce6b47ae51c69a84ca30a6e22fae85834","impliedFormat":1},{"version":"82b91e4e42e6c41bc7fc1b6c2dc5eba6a2ba98375eb1f210e6ff6bba2d54177e","impliedFormat":1},{"version":"c1fa52b3d014001e8662fa2669d90ea15373958a288e3b83a3b621733d25292a","affectsGlobalScope":true,"impliedFormat":1},{"version":"cbed824fec91efefc7bbdcb8b43d1a531fdbebd0e2ef19481501ff365a93cb70","impliedFormat":1},{"version":"d0716593b3f2b0451bcf0c24cfa86dec2235c325c89f201934248b7c742715fc","impliedFormat":1},{"version":"ec501101c2a96133a6c695f934c8f6642149cc728571b29cbb7b770984c1088e","impliedFormat":1},{"version":"b214ebcf76c51b115453f69729ee8aa7b7f8eccdae2a922b568a45c2d7ff52f7","impliedFormat":1},{"version":"429c9cdfa7d126255779efd7e6d9057ced2d69c81859bbab32073bad52e9ba76","impliedFormat":1},{"version":"2991bca2cc0f0628a278df2a2ccdb8d6cbcb700f3761abbed62bba137d5b1790","impliedFormat":1},{"version":"5e66972e83eb4dc7123939bf816e6cbd9ad81af5552db1cab84e6bd9c64d2ecc","affectsGlobalScope":true,"impliedFormat":1},{"version":"230763250f20449fa7b3c9273e1967adb0023dc890d4be1553faca658ee65971","impliedFormat":1},{"version":"c3e9078b60cb329d1221f5878e88cecfa3e74460550e605a58fcfb41a66029ff","impliedFormat":1},{"version":"8413d0641f293aed551c7464615b770d34a02dedede889b9591172287d68e773","impliedFormat":1},{"version":"0ea59f7d3e51440baa64f429253759b106cfcbaf51e474cae606e02265b37cf8","impliedFormat":1},{"version":"bc18a1991ba681f03e13285fa1d7b99b03b67ee671b7bc936254467177543890","impliedFormat":1},{"version":"1b241e24f3227d078c06aeda6e050187ad59a4e591f4467abed44d92b084e08d","impliedFormat":1},{"version":"fa94bbf532b7af8f394b95fa310980d6e20bd2d4c871c6a6cb9f70f03750a44b","impliedFormat":1},{"version":"7fde0e1be5c8be204ffbf428abfcf01da2eb0f130e1bc3f539eb7275f4fd1f58","impliedFormat":1},{"version":"e284328553df5f425a5d33d36a0c3fa66b46af9d097cad6f4d2e8696dfdeb0f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"7fa2214bb0d64701bc6f9ce8cde2fd2ff8c571e0b23065fa04a8a5a6beb91511","impliedFormat":1},{"version":"f36b3fbe2be150a9ca140da48593f21e6a8172004f92ddc549b43efec39f3e54","impliedFormat":1},{"version":"f1c93e046fb3d9b7f8249629f4b63dc068dd839b824dd0aa39a5e68476dc9420","impliedFormat":1},{"version":"016b29bf4926b80255a108c53a1451717350059da04fcae64d1075f5e93bbb39","impliedFormat":1},{"version":"841983e39bd4cbb463be385e92fda11057cab368bf27100a801c492f1d86cbaa","impliedFormat":1},{"version":"1c4f139ade4f6ebf45463505f8155173e5d7a5305e50e0aae0a5e712d6ff3b48","impliedFormat":1},{"version":"e16b319e5aca1031168de823c4946ff8e29629c4c8cc0ec0fcfe2a8ab2155043","impliedFormat":1},{"version":"e4156ddb25aa0e3b5303d372f26957b36778f0f6bbd4326359269873295e3058","affectsGlobalScope":true,"impliedFormat":1},{"version":"cc1b433a84cae05ddc5672d4823170af78606ad21ecef60dbc4570190cbf1357","impliedFormat":1},{"version":"9d3821bc75c59577e52643324cec92fc2145642e8d17cf7ee07a3181f21d985d","impliedFormat":1},{"version":"7f78cfb2b343838612c192cb251746e3a7c62ac7675726a47e130d9b213f6580","impliedFormat":1},{"version":"201db9cf1687fab1adf5282fcba861f382b32303dc4f67c89d59655e78a25461","impliedFormat":1},{"version":"2c3c5c0f54055e87640f5d233716fd889f3034fc7911d603b642369b0dbeb2a7","impliedFormat":1},{"version":"0a20eaf2e4b1e3c1e1f87f7bccb0c936375b23b022baeea750519b7c9bc6ce83","impliedFormat":1},{"version":"b484ec11ba00e3a2235562a41898d55372ccabe607986c6fa4f4aba72093749f","impliedFormat":1},{"version":"a16b91b27bd6b706c687c88cbc8a7d4ee98e5ed6043026d6b84bda923c0aed67","impliedFormat":1},{"version":"1c9e5b1a17b1fc9b3711fb36e0690421261ab2880f15b145155b5b2ba2ab6c2d","impliedFormat":1},{"version":"99ab6d0d660ce4d21efb52288a39fd35bb3f556980ec5463b1ae8f304a3bbc85","impliedFormat":1},{"version":"6eeded8c7e352be6e0efb83f4935ec752513c4d22043b52522b90849a49a3a11","impliedFormat":1},{"version":"6c1ad90050ffbb151cacc68e2d06ea1a26a945659391e32651f5d42b86fd7f2c","impliedFormat":1},{"version":"afa1c49f8e559e413d57343339db857d2a8159435cf9cf7d4deb41718fff1b88","impliedFormat":1},{"version":"6953d7597831d0860c7034cf4f0419687d263b6b98a4b32e37ce6d49615c36e2","impliedFormat":1},{"version":"3a582c6e8906f5b094ccf0de6cc6f4f8a54b05a34f52517aba5c9c7f704f6b28","impliedFormat":99},{"version":"0528f6d21f7a02d4092895090d2dd86104bd5a3e79eced96d5a1a7dd90943d17","impliedFormat":99},{"version":"b5ce343886d23392be9c8280e9f24a87f1d7d3667f6672c2fe4aa61fa4ece7d4","impliedFormat":99},{"version":"72ce5b734c05da85c85a6f6dc05823b051d6aa41acaedeeb1d17c72f3b4efa72","impliedFormat":99},{"version":"b0857bb28fd5236ace84280f79a25093f919fd0eff13e47cc26ea03de60a7294","impliedFormat":99},{"version":"5e43e0824f10cd8c48e7a8c5c673638488925a12c31f0f9e0957965c290eb14c","impliedFormat":99},{"version":"ef13c73d6157a32933c612d476c1524dd674cf5b9a88571d7d6a0d147544d529","impliedFormat":99},{"version":"49ab4f1d153a252779958fc87b700743d32b5ffa42addd70ae23ad3f429daa5c","impliedFormat":99},{"version":"53cf4076f42b29b8d411259d168d51b3a0274c42c8814e5b44dfa8803a35d4fc","impliedFormat":99},{"version":"a39461ee1f27cf3e6cfd63d21045713d26d521da55ea4d8efccb705f689e6dbb","impliedFormat":99},{"version":"61bb64660ee150f3ab618340e15cca0a81664801bede7c966ca0eca3a952fe63","impliedFormat":99},{"version":"3b89216a7e38a454985ad17bb2ff85792837dc812f2a89fa5f60ad0a2e216fa7","impliedFormat":99},{"version":"16fe60bb544cfedfd2b5bb2f7d0b3957be7978706d57d9f06edc9c0c8dbdba23","impliedFormat":99},{"version":"de4a612aa8f1704af486f701e21993c786ba7d8cfed55fffa6684026aea2346e","impliedFormat":99},{"version":"4e003c868b0d8f8ad200b96cbc653e18e513fa23e1c19c4fe3cc25d4394efc47","impliedFormat":99},{"version":"8887e70871f697fa42ad7cdf32168db60ec2d6760c173c97973e35377fe5d83b","impliedFormat":99},{"version":"42a12f2faa483c9b48195ed794d22698162274e755f6e07219c2351c4f08d732","impliedFormat":99},{"version":"ec0c42bb0f465e4993f2bc68a6ce9df9a2dcbc7b83e21748f82f1b69561938e3","impliedFormat":99},{"version":"f50ff37a9cbbe74475f426474d9827083c7c2c138a954d28f1690df338f69291","impliedFormat":99},{"version":"61fd6c17235d530c40f543dd7c40afab091d91c1ef890baeed30db6d82b04b28","impliedFormat":99},{"version":"bcbd3becd08b4515225880abea0dbfbbf0d1181ce3af8f18f72f61edbe4febfb","impliedFormat":99},{"version":"091767bc841f937654ed597d49e023ed59850355e746ae1a6f20ab31076ee1fb","impliedFormat":99},{"version":"19c6d6135af59693698d384050b45a8a049493500add442f58e4bd7c8a255ab6","impliedFormat":99},{"version":"6a0dba12d55314638a8c51108b20fe2f68f1364a619d098918bda91c22dec154","impliedFormat":99},{"version":"c76c02846ba7d40b9b3488f0e8d75d02cbdee2f0bc5fcd55dd3bd2e1457646ea","impliedFormat":99},{"version":"4ead13a482c539b77394b2a97e3b877b809eac596390371cea490286f53b996a","impliedFormat":99},{"version":"06db2f8ba1d1dfacf04529cb731081ab23f133f29c7608ebdfbcab356996827c","impliedFormat":99},{"version":"bdd14f07b4eca0b4b5203b85b8dbc4d084c749fa590bee5ea613e1641dcd3b29","impliedFormat":99},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"2eeffcee5c1661ddca53353929558037b8cf305ffb86a803512982f99bcab50d","impliedFormat":99},{"version":"9afb4cb864d297e4092a79ee2871b5d3143ea14153f62ef0bb04ede25f432030","affectsGlobalScope":true,"impliedFormat":99},{"version":"5c935b7fc4ddc1410ea1cd7cd4e35ed106a6e4920dd27a9480a40fd224359dc3","affectsGlobalScope":true,"impliedFormat":99},{"version":"2b39c6cf59088713babbfc3e20ee85f1375d40e66953156fa658346b8346f24f","impliedFormat":99},{"version":"69bf2422313487956e4dacf049f30cb91b34968912058d244cb19e4baa24da97","impliedFormat":99},{"version":"6987dfb4b0c4e02112cc4e548e7a77b3d9ddfeffa8c8a2db13ceac361a4567d9","impliedFormat":99},{"version":"4ffba3c5848b4fe62ee59b754fd5f256ad9656a0db6d37b9a2a8cb40dfc7ac21","impliedFormat":99},{"version":"c76c02846ba7d40b9b3488f0e8d75d02cbdee2f0bc5fcd55dd3bd2e1457646ea","impliedFormat":99},{"version":"5e2ba3d18d78aebbde1f34bde356e41e9c76eeaeaeee56a37036596a9eff4211","impliedFormat":99},{"version":"8280ae8ccc0493b32d1742d585357ab9f0a508ea050af25a5a20d64010d0a5cf","impliedFormat":99},{"version":"7adfd9f9056ecd4ae6c65fde2a98654960c662714c73f048478959d04c09e144","impliedFormat":99},{"version":"32b35cf0dc3a1b1a7118b61c34ce2ad1a29695851679f9ec34e0776f2ece2a69","impliedFormat":99},{"version":"b413fbc6658fe2774f8bf9a15cf4c53e586fc38a2d5256b3b9647da242c14389","impliedFormat":99},{"version":"59e5e964b84fdb2378e9455e4e59405030e4ed2b4c6f891ce395f17796af3cbb","impliedFormat":99},{"version":"c30a41267fc04c6518b17e55dcb2b810f267af4314b0b6d7df1c33a76ce1b330","impliedFormat":1},{"version":"72422d0bac4076912385d0c10911b82e4694fc106e2d70added091f88f0824ba","impliedFormat":1},{"version":"da251b82c25bee1d93f9fd80c5a61d945da4f708ca21285541d7aff83ecb8200","impliedFormat":1},{"version":"64db14db2bf37ac089766fdb3c7e1160fabc10e9929bc2deeede7237e4419fc8","impliedFormat":1},{"version":"98b94085c9f78eba36d3d2314affe973e8994f99864b8708122750788825c771","impliedFormat":1},{"version":"90ba95a763101bb61b8a799731a2ed60b5016b8135c1a2d5186862d4b534d4a1","impliedFormat":99},{"version":"8d7cbeea0454e05a3cdf3370c5df267072c4f1dc6c48a45a9ad750d7890443d7","affectsGlobalScope":true,"impliedFormat":99}],"root":[[66,69]],"options":{"composite":true,"declaration":true,"declarationDir":"./@types","declarationMap":true,"emitDeclarationOnly":true,"erasableSyntaxOnly":true,"esModuleInterop":true,"module":199,"noUncheckedSideEffectImports":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true},"referencedMap":[[68,1],[69,2],[66,3],[67,3],[222,3],[225,4],[223,3],[133,5],[134,5],[135,6],[72,7],[136,8],[137,9],[138,10],[70,3],[139,11],[140,12],[141,13],[142,14],[143,15],[144,16],[145,16],[146,17],[147,18],[148,19],[149,20],[73,3],[71,3],[150,21],[151,22],[152,23],[194,24],[153,25],[154,26],[155,25],[156,27],[157,28],[158,29],[159,30],[160,30],[161,30],[162,31],[163,32],[164,33],[165,34],[166,35],[167,36],[168,36],[169,37],[170,3],[171,3],[172,38],[173,39],[174,40],[175,38],[176,41],[177,42],[178,43],[179,44],[180,45],[181,46],[182,47],[183,48],[184,49],[185,50],[186,51],[187,52],[188,53],[189,54],[190,55],[74,25],[75,3],[76,56],[77,57],[78,3],[79,58],[80,3],[124,59],[125,60],[126,61],[127,61],[128,62],[129,3],[130,8],[131,63],[132,60],[191,64],[192,65],[193,66],[226,67],[233,68],[234,69],[232,3],[195,3],[204,70],[203,71],[227,70],[211,72],[213,73],[212,74],[220,75],[219,3],[202,76],[196,77],[198,78],[200,79],[199,3],[201,77],[197,3],[224,3],[240,80],[242,81],[241,82],[239,83],[238,3],[228,3],[221,3],[63,3],[64,3],[12,3],[10,3],[11,3],[16,3],[15,3],[2,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[23,3],[24,3],[3,3],[25,3],[26,3],[4,3],[27,3],[31,3],[28,3],[29,3],[30,3],[32,3],[33,3],[34,3],[5,3],[35,3],[36,3],[37,3],[38,3],[6,3],[42,3],[39,3],[40,3],[41,3],[43,3],[7,3],[44,3],[49,3],[50,3],[45,3],[46,3],[47,3],[48,3],[8,3],[54,3],[51,3],[52,3],[53,3],[55,3],[9,3],[56,3],[65,3],[57,3],[58,3],[60,3],[59,3],[61,3],[1,3],[62,3],[14,3],[13,3],[99,84],[112,85],[96,86],[113,87],[122,88],[87,89],[88,90],[86,91],[121,92],[116,93],[120,94],[90,95],[109,96],[89,97],[119,98],[84,99],[85,93],[91,100],[92,3],[98,101],[95,100],[82,102],[123,103],[114,104],[102,105],[101,100],[103,106],[106,107],[100,108],[104,109],[117,92],[93,110],[94,111],[107,112],[83,87],[111,113],[110,100],[97,111],[105,114],[108,115],[115,3],[81,3],[118,116],[207,117],[210,118],[208,117],[206,3],[209,119],[229,120],[218,121],[214,122],[215,72],[236,123],[230,124],[216,125],[235,126],[205,3],[217,127],[243,128],[237,129],[244,130],[231,3]],"latestChangedDtsFile":"./@types/idempotency/index.d.ts","version":"6.0.3"}
1
+ {"fileNames":["../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2025.float16.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typescript@6.0.3/node_modules/typescript/lib/lib.es2022.full.d.ts","../src/idempotency/min-safe-ttl.ts","../src/idempotency/port.ts","../src/idempotency/in-memory.ts","../src/idempotency/index.ts","../src/receiver/port.ts","../src/receiver/index.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/blob.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/console.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/crypto.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/encoding.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/utility.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/client-stats.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/round-robin-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/h2c-client.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-call-history.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/snapshot-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/socks5-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/cache-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@7.24.6/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/importmeta.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/messaging.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/performance.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/streams.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/timers.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/web-globals/url.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/inspector/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/path/posix.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/path/win32.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/quic.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream/iter.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/test/reporters.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/util/types.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/zlib/iter.d.ts","../../../node_modules/.pnpm/@types+node@25.9.1/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/@vitest+pretty-format@4.1.8/node_modules/@vitest/pretty-format/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.8/node_modules/@vitest/utils/dist/display.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.8/node_modules/@vitest/utils/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.8/node_modules/@vitest/utils/dist/helpers.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.8/node_modules/@vitest/utils/dist/timers.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.8/node_modules/@vitest/utils/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.8/node_modules/@vitest/utils/dist/types.d-BCElaP-c.d.ts","../../../node_modules/.pnpm/@vitest+utils@4.1.8/node_modules/@vitest/utils/dist/diff.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.8/node_modules/@vitest/runner/dist/tasks.d-DEYaIMIu.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.8/node_modules/@vitest/runner/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/traces.d.D2T_R8rx.d.ts","../../../node_modules/.pnpm/vite@8.0.16_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.4_yaml@2.9.0/node_modules/vite/types/hmrPayload.d.ts","../../../node_modules/.pnpm/vite@8.0.16_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.4_yaml@2.9.0/node_modules/vite/dist/node/chunks/moduleRunnerTransport.d.ts","../../../node_modules/.pnpm/vite@8.0.16_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.4_yaml@2.9.0/node_modules/vite/types/customEvent.d.ts","../../../node_modules/.pnpm/vite@8.0.16_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.4_yaml@2.9.0/node_modules/vite/types/hot.d.ts","../../../node_modules/.pnpm/vite@8.0.16_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.4_yaml@2.9.0/node_modules/vite/dist/node/module-runner.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.8/node_modules/@vitest/snapshot/dist/environment.d-DOJxxZV9.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.8/node_modules/@vitest/snapshot/dist/rawSnapshot.d-D_X3-62x.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@4.1.8/node_modules/@vitest/snapshot/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/config.d.A1h_Y6Jt.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/environment.d.CrsxCzP1.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/rpc.d.B_8sPU0w.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/worker.d.ZpHpO4yb.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/browser.d.BcoexmFG.d.ts","../../../node_modules/.pnpm/@vitest+spy@4.1.8/node_modules/@vitest/spy/optional-types.d.ts","../../../node_modules/.pnpm/@vitest+spy@4.1.8/node_modules/@vitest/spy/dist/index.d.ts","../../../node_modules/.pnpm/tinyrainbow@3.1.0/node_modules/tinyrainbow/dist/index.d.ts","../../../node_modules/.pnpm/@standard-schema+spec@1.1.0/node_modules/@standard-schema/spec/dist/index.d.ts","../../../node_modules/.pnpm/@types+deep-eql@4.0.2/node_modules/@types/deep-eql/index.d.ts","../../../node_modules/.pnpm/assertion-error@2.0.1/node_modules/assertion-error/index.d.ts","../../../node_modules/.pnpm/@types+chai@5.2.3/node_modules/@types/chai/index.d.ts","../../../node_modules/.pnpm/@vitest+expect@4.1.8/node_modules/@vitest/expect/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+runner@4.1.8/node_modules/@vitest/runner/dist/utils.d.ts","../../../node_modules/.pnpm/tinybench@2.9.0/node_modules/tinybench/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/benchmark.d.DAaHLpsq.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/global.d.DVsSRdQ5.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/optional-runtime-types.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.8_vite@8.0.16_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.4_yaml@2.9.0_/node_modules/@vitest/mocker/dist/types.d-BjI5eAwu.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.8_vite@8.0.16_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.4_yaml@2.9.0_/node_modules/@vitest/mocker/dist/index.d-B41z0AuW.d.ts","../../../node_modules/.pnpm/@vitest+mocker@4.1.8_vite@8.0.16_@types+node@25.9.1_esbuild@0.27.2_jiti@2.6.1_terser@5.46.1_tsx@4.22.4_yaml@2.9.0_/node_modules/@vitest/mocker/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/suite.d.udJtyAgw.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/chunks/evaluatedModules.d.BxJ5omdx.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/runners.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/utils.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/overloads.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/branding.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/messages.d.ts","../../../node_modules/.pnpm/expect-type@1.3.0/node_modules/expect-type/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/dist/index.d.ts","../../../node_modules/.pnpm/vitest@4.1.8_@types+node@25.9.1_@vitest+coverage-v8@4.1.8_vite@8.0.16_@types+node@25.9._87965f5280639f5a2754f2fd84ad1804/node_modules/vitest/globals.d.ts"],"fileIdsList":[[66,67,74,138,146,150,153,155,156,157,169],[66,67,68,74,138,146,150,153,155,156,157,169],[74,138,146,150,153,155,156,157,169],[70,74,138,146,150,153,155,156,157,169],[67,74,138,146,150,153,155,156,157,169],[74,138,146,150,153,155,156,157,169,225,226],[74,135,136,138,146,150,153,155,156,157,169],[74,137,138,146,150,153,155,156,157,169],[138,146,150,153,155,156,157,169],[74,138,146,150,153,155,156,157,169,178],[74,138,139,144,146,149,150,153,155,156,157,159,169,174,187],[74,138,139,140,146,149,150,153,155,156,157,169],[74,138,141,146,150,153,155,156,157,169,188],[74,138,142,143,146,150,153,155,156,157,160,169],[74,138,143,146,150,153,155,156,157,169,174,184],[74,138,144,146,149,150,153,155,156,157,159,169],[74,137,138,145,146,150,153,155,156,157,169],[74,138,146,147,150,153,155,156,157,169],[74,138,146,148,149,150,153,155,156,157,169],[74,137,138,146,149,150,153,155,156,157,169],[74,138,146,149,150,151,153,155,156,157,169,174,187],[74,138,146,149,150,151,153,155,156,157,169,174,176,178],[74,125,138,146,149,150,152,153,155,156,157,159,169,174,187],[74,138,146,149,150,152,153,155,156,157,159,169,174,184,187],[74,138,146,150,152,153,154,155,156,157,169,174,184,187],[72,73,74,75,76,77,78,79,80,81,82,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195],[74,138,146,149,150,153,155,156,157,169],[74,138,146,150,153,155,157,169],[74,138,146,150,153,155,156,157,158,169,187],[74,138,146,149,150,153,155,156,157,159,169,174],[74,138,146,150,153,155,156,157,160,169],[74,138,146,150,153,155,156,157,161,169],[74,138,146,149,150,153,155,156,157,164,169],[74,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],[74,138,146,150,153,155,156,157,166,169],[74,138,146,150,153,155,156,157,167,169],[74,138,143,146,150,153,155,156,157,159,169,178],[74,138,146,149,150,153,155,156,157,169,170],[74,138,146,150,153,155,156,157,169,171,188,191],[74,138,146,149,150,153,155,156,157,169,174,177,178],[74,138,146,150,153,155,156,157,169,175,178],[74,138,146,150,153,155,156,157,169,176],[74,138,146,150,153,155,156,157,169,178,188],[74,138,146,150,153,155,156,157,169,179],[74,135,138,146,150,153,155,156,157,169,174,181,187],[74,138,146,150,153,155,156,157,169,174,180],[74,138,146,149,150,153,155,156,157,169,182,183],[74,138,146,150,153,155,156,157,169,182,183],[74,138,143,146,150,153,155,156,157,159,169,174,184],[74,138,146,150,153,155,156,157,169,185],[74,138,146,150,153,155,156,157,159,169,186],[74,138,146,150,152,153,155,156,157,167,169,187],[74,138,146,150,153,155,156,157,169,188,189],[74,138,143,146,150,153,155,156,157,169,189],[74,138,146,150,153,155,156,157,169,174,190],[74,138,146,150,153,155,156,157,158,169,191],[74,138,146,150,153,155,156,157,169,192],[74,138,141,146,150,153,155,156,157,169],[74,138,143,146,150,153,155,156,157,169],[74,138,146,150,153,155,156,157,169,188],[74,125,138,146,150,153,155,156,157,169],[74,138,146,150,153,155,156,157,169,187],[74,138,146,150,153,155,156,157,169,193],[74,138,146,150,153,155,156,157,164,169],[74,138,146,150,153,155,156,157,169,183],[74,125,138,146,149,150,151,153,155,156,157,164,169,174,178,187,190,191,193],[74,138,146,150,153,155,156,157,169,174,194],[74,138,146,150,153,155,156,157,169,176,195],[74,138,146,150,153,155,156,157,169,198,204,222,223,224,227],[74,138,146,150,153,155,156,157,169,234],[74,138,146,150,153,155,156,157,169,234,235],[74,138,146,150,153,155,156,157,169,202,204,205],[74,138,146,150,153,155,156,157,169,202,204],[74,138,146,150,153,155,156,157,169,202],[74,138,146,150,153,155,156,157,169,197,202,213,214],[74,138,146,150,153,155,156,157,169,197,202,213],[74,138,146,150,153,155,156,157,169,221],[74,138,146,150,153,155,156,157,169,197,203],[74,138,146,150,153,155,156,157,169,197],[74,138,146,150,153,155,156,157,169,199],[74,138,146,150,153,155,156,157,169,197,198,199,200,201],[74,138,146,150,153,155,156,157,169,240,241],[74,138,146,150,153,155,156,157,169,240,241,242,243],[74,138,146,150,153,155,156,157,169,240,242],[74,138,146,150,153,155,156,157,169,240],[74,89,92,95,96,138,146,150,153,155,156,157,169,187],[74,92,138,146,150,153,155,156,157,169,174,187],[74,92,96,138,146,150,153,155,156,157,169,187],[74,138,146,150,153,155,156,157,169,174],[74,86,138,146,150,153,155,156,157,169],[74,90,138,146,150,153,155,156,157,169],[74,88,89,92,138,146,150,153,155,156,157,169,187],[74,138,146,150,153,155,156,157,159,169,184],[74,138,146,150,153,155,156,157,169,196],[74,86,138,146,150,153,155,156,157,169,196],[74,88,92,138,146,150,153,155,156,157,159,169,187],[74,83,84,85,87,91,138,146,149,150,153,155,156,157,169,174,187],[74,92,101,109,138,146,150,153,155,156,157,169],[74,84,90,138,146,150,153,155,156,157,169],[74,92,119,120,138,146,150,153,155,156,157,169],[74,84,87,92,138,146,150,153,155,156,157,169,178,187,196],[74,92,138,146,150,153,155,156,157,169],[74,88,92,138,146,150,153,155,156,157,169,187],[74,83,138,146,150,153,155,156,157,169],[74,86,87,88,90,91,92,93,94,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,120,121,122,123,124,138,146,150,153,155,156,157,169],[74,92,112,115,138,146,150,153,155,156,157,169],[74,92,101,102,103,138,146,150,153,155,156,157,169],[74,90,92,102,104,138,146,150,153,155,156,157,169],[74,91,138,146,150,153,155,156,157,169],[74,84,86,92,138,146,150,153,155,156,157,169],[74,92,96,102,104,138,146,150,153,155,156,157,169],[74,96,138,146,150,153,155,156,157,169],[74,90,92,95,138,146,150,153,155,156,157,169,187],[74,84,88,92,101,138,146,150,153,155,156,157,169],[74,92,112,138,146,150,153,155,156,157,169],[74,104,138,146,150,153,155,156,157,169],[74,84,88,92,96,138,146,150,153,155,156,157,169],[74,86,92,119,138,146,150,153,155,156,157,169,178,193,196],[74,138,146,150,153,155,156,157,169,208],[74,138,146,150,153,155,156,157,169,208,209,210,211],[74,138,146,150,153,155,156,157,169,210],[74,138,146,150,153,155,156,157,169,206,229,230,232],[74,138,146,150,153,155,156,157,169,206,207,219,232],[74,138,146,150,153,155,156,157,169,197,204,206,207,215,232],[74,138,146,150,153,155,156,157,169,212],[74,138,146,150,153,155,156,157,169,197,206,207,215,228,231,232],[74,138,146,150,153,155,156,157,169,206,207,212,215,232],[74,138,146,150,153,155,156,157,169,206,229,230,231,232],[74,138,146,150,153,155,156,157,169,206,212,216,217,218,232],[74,138,146,150,153,155,156,157,169,197,202,204,206,207,212,215,216,217,218,219,220,222,228,229,230,231,232,233,236,237,238,239,244],[74,138,146,150,153,155,156,157,169,197,204,206,207,215,216,229,230,231,232,237],[74,138,146,150,153,155,156,157,169,245]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","impliedFormat":1},{"version":"d6b1eba8496bdd0eed6fc8a685768fe01b2da4a0388b5fe7df558290bffcf32f","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"2a2de5b9459b3fc44decd9ce6100b72f1b002ef523126c1d3d8b2a4a63d74d78","affectsGlobalScope":true,"impliedFormat":1},{"version":"f13f4b465c99041e912db5c44129a94588e1aafee35a50eab51044833f50b4ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","affectsGlobalScope":true,"impliedFormat":1},{"version":"f128dae7c44d8f35ee42e0a437000a57c9f06cc04f8b4fb42eebf44954d53dc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ecb8e347cb6b2a8927c09b86263663289418df375f5e68e11a0ae683776978f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"01a30f9e8582b369075c0808df71121e6855cb06fd8d3d39511d9ebb66405205","impliedFormat":1},{"version":"06e3663cd29804acd95d9e181b7c142e4a33516456160e34538711273e377e8b","signature":"d27809bc2381a5a23bc4007cb33a4c0c042b11a2a056803de0764ec1141c16e4","impliedFormat":99},{"version":"94f0fe7b5d334d6bb93ab88c1aeb6275782b75f3d8031071bdf7688ceff0b1e2","signature":"a9f7f2a340ef8d7b5982af1776cf0ac233504d970272ffd48b4b2e7d81b3d907","impliedFormat":99},{"version":"eb930d2482bd384a61337b8d1e5a1d08fde1e0cca7fd525faf05f452fef48d26","signature":"66afb5ec408f758e329718dad7bdfcebe480c6249f6c2883676a39f0f8ffb0c6","impliedFormat":99},{"version":"1dda96b4029f6e7615ee44b40145588dd6f98a4cfa6943a0ac4f504cf9b5e1d8","signature":"c650bc675cf9a7ef004e2aac9a62ac241445c93ad529044491b7a095c1b522e9","impliedFormat":99},{"version":"b9db56126353bc2fd69a9235b60e2278603daeaa0d43821ac00980b01c333679","signature":"7d302ca88c301b0bb2ec4bb2a6e354bf49887cd0743bfbefb68acf098e0b4a43","impliedFormat":99},{"version":"4b42c09f20ea9d0c7aa887436258d109b397e21312c3c92b63d24263afd0c4e1","signature":"5d534f682dabebb325a6dbbf9da9af3ecaf890ddbcf69e6624df052534278236","impliedFormat":99},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"0ccdaa19852d25ecd84eec365c3bfa16e7859cadecf6e9ca6d0dbbbee439743f","affectsGlobalScope":true,"impliedFormat":1},{"version":"cc2110f7decca6bfb9392e30421cfa1436479e4a6756e8fec6cbc22625d4f881","affectsGlobalScope":true,"impliedFormat":1},{"version":"096116f8fedc1765d5bd6ef360c257b4a9048e5415054b3bf3c41b07f8951b0b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5e01375c9e124a83b52ee4b3244ed1a4d214a6cfb54ac73e164a823a4a7860a","affectsGlobalScope":true,"impliedFormat":1},{"version":"f90ae2bbce1505e67f2f6502392e318f5714bae82d2d969185c4a6cecc8af2fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b58e207b93a8f1c88bbf2a95ddc686ac83962b13830fe8ad3f404ffc7051fb4","affectsGlobalScope":true,"impliedFormat":1},{"version":"1fefabcb2b06736a66d2904074d56268753654805e829989a46a0161cd8412c5","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"c18a99f01eb788d849ad032b31cafd49de0b19e083fe775370834c5675d7df8e","affectsGlobalScope":true,"impliedFormat":1},{"version":"5247874c2a23b9a62d178ae84f2db6a1d54e6c9a2e7e057e178cc5eea13757fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"156a859e21ef3244d13afeeba4e49760a6afa035c149dda52f0c45ea8903b338","impliedFormat":1},{"version":"10ec5e82144dfac6f04fa5d1d6c11763b3e4dbbac6d99101427219ab3e2ae887","impliedFormat":1},{"version":"615754924717c0b1e293e083b83503c0a872717ad5aa60ed7f1a699eb1b4ea5c","impliedFormat":1},{"version":"14e9acf826baba0ef4b5665704084896e7bcc06f65a9ab13af7e93d27d6b7069","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"21adf13435b9b748529c8cedf80f884e5130b9684188120a686cd2b26a2059c7","impliedFormat":1},{"version":"eec76bf6b9346f3f95fa402621b889489e96930e72295b0369022f332e9b4a6a","impliedFormat":1},{"version":"0ecd58f413f9bc3b7d4383eae31b0c8fc576985cd7404d6f99f8c643543ade74","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"9c32412007b5662fd34a8eb04292fb5314ec370d7016d1c2fb8aa193c807fe22","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"4d327f7d72ad0918275cea3eee49a6a8dc8114ae1d5b7f3f5d0774de75f7439a","impliedFormat":1},{"version":"6ebe8ebb8659aaa9d1acbf3710d7dae3e923e97610238b9511c25dc39023a166","impliedFormat":1},{"version":"e85d7f8068f6a26710bff0cc8c0fc5e47f71089c3780fbede05857331d2ddec9","impliedFormat":1},{"version":"7befaf0e76b5671be1d47b77fcc65f2b0aad91cc26529df1904f4a7c46d216e9","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"d33ce35e3f9cfcc1d94eca415bdd3bde94d5b153ffdd33e6c4455c029986c630","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"8aee8b6d4f9f62cf3776cda1305fb18763e2aade7e13cea5bbe699112df85214","impliedFormat":1},{"version":"98498b101803bb3dde9f76a56e65c14b75db1cc8bec5f4db72be541570f74fc5","impliedFormat":1},{"version":"4dc59f6e1dbf3d5f66660fceabe6c174d3261b37b696ae1854f0dbaf255fc753","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"436d7b4543b340b0f3eef4310d524242e41369b9652aa9c70428767c4dcac455","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"12950411eeab8563b349cb7959543d92d8d02c289ed893d78499a19becb5a8cc","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"114f493b30f364255290472111b5a4791d5902c308645670cd0401429cbc6930","impliedFormat":1},{"version":"c3f5289820990ab66b70c7fb5b63cb674001009ff84b13de40619619a9c8175f","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3275d55fac10b799c9546804126239baf020d220136163f763b55a74e50e750","affectsGlobalScope":true,"impliedFormat":1},{"version":"fa68a0a3b7cb32c00e39ee3cd31f8f15b80cac97dce51b6ee7fc14a1e8deb30b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"6c36e755bced82df7fb6ce8169265d0a7bb046ab4e2cb6d0da0cb72b22033e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"7a93de4ff8a63bafe62ba86b89af1df0ccb5e40bb85b0c67d6bbcfdcf96bf3d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"90e85f9bc549dfe2b5749b45fe734144e96cd5d04b38eae244028794e142a77e","affectsGlobalScope":true,"impliedFormat":1},{"version":"e0a5deeb610b2a50a6350bd23df6490036a1773a8a71d70f2f9549ab009e67ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"d2ae155afe8a01cc0ae612d99117cf8ef16692ba7c4366590156fdec1bcf2d8c","impliedFormat":1},{"version":"3f5e5d9be35913db9fea42a63f3df0b7e3c8703b97670a2125587b4dbbd56d7c","impliedFormat":1},{"version":"c8b8968311ec4e5e97b7b5fb8a65efaba455db9bdcfd7fff7fb15f6e317bfba0","impliedFormat":1},{"version":"57c23df0b5f7a8e26363a3849b0bc7763f6b241207157c8e40089d1df4116f35","affectsGlobalScope":true,"impliedFormat":1},{"version":"3b8bc0c17b54081b0878673989216229e575d67a10874e84566a21025a2461ee","impliedFormat":1},{"version":"5b0db5a58b73498792a29bfebc333438e61906fef75da898b410e24e52229e6f","impliedFormat":1},{"version":"dbe055b2b29a7bab2c1ca8f259436306adb43f469dca7e639a02cd3695d3f621","impliedFormat":1},{"version":"1678b04557dca52feab73cc67610918a7f5e25bfdba3e7fa081acd625d93106d","impliedFormat":1},{"version":"aecbf1d9e6a18dab7d92ef8a89a1444b47e1eb6134cb2bb776a26d55ff58c29a","impliedFormat":1},{"version":"2ea729503db9793f2691162fec3dd1118cab62e96d025f8eeb376d43ec293395","impliedFormat":1},{"version":"9ec87fea42b92894b0f209931a880789d43c3397d09dd99c631ae40a2f7071d1","impliedFormat":1},{"version":"c68e88cdfadfb6c8ba5fc38e58a3a166b0beae77b1f05b7d921150a32a5ffb8d","impliedFormat":1},{"version":"2bc7aa4fba46df0bd495425a7c8201437a7d465f83854fac859df2d67f664df3","impliedFormat":1},{"version":"41d17e1ad9a002feb11c8cdd2777e5bbc0cdb1e3f595d237e4dded0b6949983b","impliedFormat":1},{"version":"1fede9296beac11ce8e6b425396a1791f64341f2be85deebb6286faf6e16306e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce697b6a251d9cad53998c7fd3098072df883b525ec45d83530e434dc6d80dc6","impliedFormat":1},{"version":"719412f054e6ecc35489462c9a21bab0323d173a7d04e55b0ace4b5d86fbeb07","impliedFormat":1},{"version":"0eb5d0cbf09de5d34542b977fd6a933bb2e0817bffe8e1a541b2f1ad1b9af1ff","impliedFormat":1},{"version":"fac3e88881b35d3a757ed891ac912b2674792c25e2a1a74e1f5fbc72d19a9792","impliedFormat":1},{"version":"2c2bdaa1d8ead9f68628d6d9d250e46ee8e81aa4898b4769a36956ae15e060fe","impliedFormat":1},{"version":"c32c840c62d8bd7aeb3147aa6754cd2d922b990a6b6634530cb2ebdce5adc8e9","impliedFormat":1},{"version":"5ff4433a2deae4f85ab1377e90a7554ce6b47ae51c69a84ca30a6e22fae85834","impliedFormat":1},{"version":"82b91e4e42e6c41bc7fc1b6c2dc5eba6a2ba98375eb1f210e6ff6bba2d54177e","impliedFormat":1},{"version":"c1fa52b3d014001e8662fa2669d90ea15373958a288e3b83a3b621733d25292a","affectsGlobalScope":true,"impliedFormat":1},{"version":"cbed824fec91efefc7bbdcb8b43d1a531fdbebd0e2ef19481501ff365a93cb70","impliedFormat":1},{"version":"d0716593b3f2b0451bcf0c24cfa86dec2235c325c89f201934248b7c742715fc","impliedFormat":1},{"version":"ec501101c2a96133a6c695f934c8f6642149cc728571b29cbb7b770984c1088e","impliedFormat":1},{"version":"b214ebcf76c51b115453f69729ee8aa7b7f8eccdae2a922b568a45c2d7ff52f7","impliedFormat":1},{"version":"429c9cdfa7d126255779efd7e6d9057ced2d69c81859bbab32073bad52e9ba76","impliedFormat":1},{"version":"2991bca2cc0f0628a278df2a2ccdb8d6cbcb700f3761abbed62bba137d5b1790","impliedFormat":1},{"version":"5e66972e83eb4dc7123939bf816e6cbd9ad81af5552db1cab84e6bd9c64d2ecc","affectsGlobalScope":true,"impliedFormat":1},{"version":"230763250f20449fa7b3c9273e1967adb0023dc890d4be1553faca658ee65971","impliedFormat":1},{"version":"c3e9078b60cb329d1221f5878e88cecfa3e74460550e605a58fcfb41a66029ff","impliedFormat":1},{"version":"8413d0641f293aed551c7464615b770d34a02dedede889b9591172287d68e773","impliedFormat":1},{"version":"0ea59f7d3e51440baa64f429253759b106cfcbaf51e474cae606e02265b37cf8","impliedFormat":1},{"version":"bc18a1991ba681f03e13285fa1d7b99b03b67ee671b7bc936254467177543890","impliedFormat":1},{"version":"1b241e24f3227d078c06aeda6e050187ad59a4e591f4467abed44d92b084e08d","impliedFormat":1},{"version":"fa94bbf532b7af8f394b95fa310980d6e20bd2d4c871c6a6cb9f70f03750a44b","impliedFormat":1},{"version":"7fde0e1be5c8be204ffbf428abfcf01da2eb0f130e1bc3f539eb7275f4fd1f58","impliedFormat":1},{"version":"e284328553df5f425a5d33d36a0c3fa66b46af9d097cad6f4d2e8696dfdeb0f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"7fa2214bb0d64701bc6f9ce8cde2fd2ff8c571e0b23065fa04a8a5a6beb91511","impliedFormat":1},{"version":"f36b3fbe2be150a9ca140da48593f21e6a8172004f92ddc549b43efec39f3e54","impliedFormat":1},{"version":"f1c93e046fb3d9b7f8249629f4b63dc068dd839b824dd0aa39a5e68476dc9420","impliedFormat":1},{"version":"016b29bf4926b80255a108c53a1451717350059da04fcae64d1075f5e93bbb39","impliedFormat":1},{"version":"841983e39bd4cbb463be385e92fda11057cab368bf27100a801c492f1d86cbaa","impliedFormat":1},{"version":"1c4f139ade4f6ebf45463505f8155173e5d7a5305e50e0aae0a5e712d6ff3b48","impliedFormat":1},{"version":"e16b319e5aca1031168de823c4946ff8e29629c4c8cc0ec0fcfe2a8ab2155043","impliedFormat":1},{"version":"e4156ddb25aa0e3b5303d372f26957b36778f0f6bbd4326359269873295e3058","affectsGlobalScope":true,"impliedFormat":1},{"version":"cc1b433a84cae05ddc5672d4823170af78606ad21ecef60dbc4570190cbf1357","impliedFormat":1},{"version":"9d3821bc75c59577e52643324cec92fc2145642e8d17cf7ee07a3181f21d985d","impliedFormat":1},{"version":"7f78cfb2b343838612c192cb251746e3a7c62ac7675726a47e130d9b213f6580","impliedFormat":1},{"version":"201db9cf1687fab1adf5282fcba861f382b32303dc4f67c89d59655e78a25461","impliedFormat":1},{"version":"2c3c5c0f54055e87640f5d233716fd889f3034fc7911d603b642369b0dbeb2a7","impliedFormat":1},{"version":"0a20eaf2e4b1e3c1e1f87f7bccb0c936375b23b022baeea750519b7c9bc6ce83","impliedFormat":1},{"version":"b484ec11ba00e3a2235562a41898d55372ccabe607986c6fa4f4aba72093749f","impliedFormat":1},{"version":"a16b91b27bd6b706c687c88cbc8a7d4ee98e5ed6043026d6b84bda923c0aed67","impliedFormat":1},{"version":"1c9e5b1a17b1fc9b3711fb36e0690421261ab2880f15b145155b5b2ba2ab6c2d","impliedFormat":1},{"version":"99ab6d0d660ce4d21efb52288a39fd35bb3f556980ec5463b1ae8f304a3bbc85","impliedFormat":1},{"version":"6eeded8c7e352be6e0efb83f4935ec752513c4d22043b52522b90849a49a3a11","impliedFormat":1},{"version":"6c1ad90050ffbb151cacc68e2d06ea1a26a945659391e32651f5d42b86fd7f2c","impliedFormat":1},{"version":"afa1c49f8e559e413d57343339db857d2a8159435cf9cf7d4deb41718fff1b88","impliedFormat":1},{"version":"6953d7597831d0860c7034cf4f0419687d263b6b98a4b32e37ce6d49615c36e2","impliedFormat":1},{"version":"3a582c6e8906f5b094ccf0de6cc6f4f8a54b05a34f52517aba5c9c7f704f6b28","impliedFormat":99},{"version":"0528f6d21f7a02d4092895090d2dd86104bd5a3e79eced96d5a1a7dd90943d17","impliedFormat":99},{"version":"b5ce343886d23392be9c8280e9f24a87f1d7d3667f6672c2fe4aa61fa4ece7d4","impliedFormat":99},{"version":"72ce5b734c05da85c85a6f6dc05823b051d6aa41acaedeeb1d17c72f3b4efa72","impliedFormat":99},{"version":"b0857bb28fd5236ace84280f79a25093f919fd0eff13e47cc26ea03de60a7294","impliedFormat":99},{"version":"5e43e0824f10cd8c48e7a8c5c673638488925a12c31f0f9e0957965c290eb14c","impliedFormat":99},{"version":"ef13c73d6157a32933c612d476c1524dd674cf5b9a88571d7d6a0d147544d529","impliedFormat":99},{"version":"49ab4f1d153a252779958fc87b700743d32b5ffa42addd70ae23ad3f429daa5c","impliedFormat":99},{"version":"53cf4076f42b29b8d411259d168d51b3a0274c42c8814e5b44dfa8803a35d4fc","impliedFormat":99},{"version":"a39461ee1f27cf3e6cfd63d21045713d26d521da55ea4d8efccb705f689e6dbb","impliedFormat":99},{"version":"61bb64660ee150f3ab618340e15cca0a81664801bede7c966ca0eca3a952fe63","impliedFormat":99},{"version":"3b89216a7e38a454985ad17bb2ff85792837dc812f2a89fa5f60ad0a2e216fa7","impliedFormat":99},{"version":"16fe60bb544cfedfd2b5bb2f7d0b3957be7978706d57d9f06edc9c0c8dbdba23","impliedFormat":99},{"version":"de4a612aa8f1704af486f701e21993c786ba7d8cfed55fffa6684026aea2346e","impliedFormat":99},{"version":"4e003c868b0d8f8ad200b96cbc653e18e513fa23e1c19c4fe3cc25d4394efc47","impliedFormat":99},{"version":"8887e70871f697fa42ad7cdf32168db60ec2d6760c173c97973e35377fe5d83b","impliedFormat":99},{"version":"42a12f2faa483c9b48195ed794d22698162274e755f6e07219c2351c4f08d732","impliedFormat":99},{"version":"ec0c42bb0f465e4993f2bc68a6ce9df9a2dcbc7b83e21748f82f1b69561938e3","impliedFormat":99},{"version":"f50ff37a9cbbe74475f426474d9827083c7c2c138a954d28f1690df338f69291","impliedFormat":99},{"version":"61fd6c17235d530c40f543dd7c40afab091d91c1ef890baeed30db6d82b04b28","impliedFormat":99},{"version":"bcbd3becd08b4515225880abea0dbfbbf0d1181ce3af8f18f72f61edbe4febfb","impliedFormat":99},{"version":"091767bc841f937654ed597d49e023ed59850355e746ae1a6f20ab31076ee1fb","impliedFormat":99},{"version":"19c6d6135af59693698d384050b45a8a049493500add442f58e4bd7c8a255ab6","impliedFormat":99},{"version":"6a0dba12d55314638a8c51108b20fe2f68f1364a619d098918bda91c22dec154","impliedFormat":99},{"version":"c76c02846ba7d40b9b3488f0e8d75d02cbdee2f0bc5fcd55dd3bd2e1457646ea","impliedFormat":99},{"version":"4ead13a482c539b77394b2a97e3b877b809eac596390371cea490286f53b996a","impliedFormat":99},{"version":"06db2f8ba1d1dfacf04529cb731081ab23f133f29c7608ebdfbcab356996827c","impliedFormat":99},{"version":"bdd14f07b4eca0b4b5203b85b8dbc4d084c749fa590bee5ea613e1641dcd3b29","impliedFormat":99},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"2eeffcee5c1661ddca53353929558037b8cf305ffb86a803512982f99bcab50d","impliedFormat":99},{"version":"9afb4cb864d297e4092a79ee2871b5d3143ea14153f62ef0bb04ede25f432030","affectsGlobalScope":true,"impliedFormat":99},{"version":"5c935b7fc4ddc1410ea1cd7cd4e35ed106a6e4920dd27a9480a40fd224359dc3","affectsGlobalScope":true,"impliedFormat":99},{"version":"2b39c6cf59088713babbfc3e20ee85f1375d40e66953156fa658346b8346f24f","impliedFormat":99},{"version":"69bf2422313487956e4dacf049f30cb91b34968912058d244cb19e4baa24da97","impliedFormat":99},{"version":"6987dfb4b0c4e02112cc4e548e7a77b3d9ddfeffa8c8a2db13ceac361a4567d9","impliedFormat":99},{"version":"4ffba3c5848b4fe62ee59b754fd5f256ad9656a0db6d37b9a2a8cb40dfc7ac21","impliedFormat":99},{"version":"c76c02846ba7d40b9b3488f0e8d75d02cbdee2f0bc5fcd55dd3bd2e1457646ea","impliedFormat":99},{"version":"5e2ba3d18d78aebbde1f34bde356e41e9c76eeaeaeee56a37036596a9eff4211","impliedFormat":99},{"version":"8280ae8ccc0493b32d1742d585357ab9f0a508ea050af25a5a20d64010d0a5cf","impliedFormat":99},{"version":"7adfd9f9056ecd4ae6c65fde2a98654960c662714c73f048478959d04c09e144","impliedFormat":99},{"version":"32b35cf0dc3a1b1a7118b61c34ce2ad1a29695851679f9ec34e0776f2ece2a69","impliedFormat":99},{"version":"b413fbc6658fe2774f8bf9a15cf4c53e586fc38a2d5256b3b9647da242c14389","impliedFormat":99},{"version":"59e5e964b84fdb2378e9455e4e59405030e4ed2b4c6f891ce395f17796af3cbb","impliedFormat":99},{"version":"c30a41267fc04c6518b17e55dcb2b810f267af4314b0b6d7df1c33a76ce1b330","impliedFormat":1},{"version":"72422d0bac4076912385d0c10911b82e4694fc106e2d70added091f88f0824ba","impliedFormat":1},{"version":"da251b82c25bee1d93f9fd80c5a61d945da4f708ca21285541d7aff83ecb8200","impliedFormat":1},{"version":"64db14db2bf37ac089766fdb3c7e1160fabc10e9929bc2deeede7237e4419fc8","impliedFormat":1},{"version":"98b94085c9f78eba36d3d2314affe973e8994f99864b8708122750788825c771","impliedFormat":1},{"version":"90ba95a763101bb61b8a799731a2ed60b5016b8135c1a2d5186862d4b534d4a1","impliedFormat":99},{"version":"8d7cbeea0454e05a3cdf3370c5df267072c4f1dc6c48a45a9ad750d7890443d7","affectsGlobalScope":true,"impliedFormat":99}],"root":[[66,71]],"options":{"composite":true,"declaration":true,"declarationDir":"./@types","declarationMap":true,"emitDeclarationOnly":true,"erasableSyntaxOnly":true,"esModuleInterop":true,"module":199,"noUncheckedSideEffectImports":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true},"referencedMap":[[68,1],[69,2],[66,3],[67,3],[71,4],[70,5],[224,3],[227,6],[225,3],[135,7],[136,7],[137,8],[74,9],[138,10],[139,11],[140,12],[72,3],[141,13],[142,14],[143,15],[144,16],[145,17],[146,18],[147,18],[148,19],[149,20],[150,21],[151,22],[75,3],[73,3],[152,23],[153,24],[154,25],[196,26],[155,27],[156,28],[157,27],[158,29],[159,30],[160,31],[161,32],[162,32],[163,32],[164,33],[165,34],[166,35],[167,36],[168,37],[169,38],[170,38],[171,39],[172,3],[173,3],[174,40],[175,41],[176,42],[177,40],[178,43],[179,44],[180,45],[181,46],[182,47],[183,48],[184,49],[185,50],[186,51],[187,52],[188,53],[189,54],[190,55],[191,56],[192,57],[76,27],[77,3],[78,58],[79,59],[80,3],[81,60],[82,3],[126,61],[127,62],[128,63],[129,63],[130,64],[131,3],[132,10],[133,65],[134,62],[193,66],[194,67],[195,68],[228,69],[235,70],[236,71],[234,3],[197,3],[206,72],[205,73],[229,72],[213,74],[215,75],[214,76],[222,77],[221,3],[204,78],[198,79],[200,80],[202,81],[201,3],[203,79],[199,3],[226,3],[242,82],[244,83],[243,84],[241,85],[240,3],[230,3],[223,3],[63,3],[64,3],[12,3],[10,3],[11,3],[16,3],[15,3],[2,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[23,3],[24,3],[3,3],[25,3],[26,3],[4,3],[27,3],[31,3],[28,3],[29,3],[30,3],[32,3],[33,3],[34,3],[5,3],[35,3],[36,3],[37,3],[38,3],[6,3],[42,3],[39,3],[40,3],[41,3],[43,3],[7,3],[44,3],[49,3],[50,3],[45,3],[46,3],[47,3],[48,3],[8,3],[54,3],[51,3],[52,3],[53,3],[55,3],[9,3],[56,3],[65,3],[57,3],[58,3],[60,3],[59,3],[61,3],[1,3],[62,3],[14,3],[13,3],[101,86],[114,87],[98,88],[115,89],[124,90],[89,91],[90,92],[88,93],[123,94],[118,95],[122,96],[92,97],[111,98],[91,99],[121,100],[86,101],[87,95],[93,102],[94,3],[100,103],[97,102],[84,104],[125,105],[116,106],[104,107],[103,102],[105,108],[108,109],[102,110],[106,111],[119,94],[95,112],[96,113],[109,114],[85,89],[113,115],[112,102],[99,113],[107,116],[110,117],[117,3],[83,3],[120,118],[209,119],[212,120],[210,119],[208,3],[211,121],[231,122],[220,123],[216,124],[217,74],[238,125],[232,126],[218,127],[237,128],[207,3],[219,129],[245,130],[239,131],[246,132],[233,3]],"latestChangedDtsFile":"./@types/receiver/index.d.ts","version":"6.0.3"}
@@ -46,9 +46,9 @@ export type RetryProfile = {
46
46
  *
47
47
  * The envelope is:
48
48
  *
49
- * ttl = (backoffSum + (maxRetries + 1) * timeoutMs) * safetyFactor
49
+ * ttl = (backoff_sum + (maxRetries + 1) * timeoutMs) * safetyFactor
50
50
  *
51
- * where `backoffSum` is the sum of per-retry delays from the chosen
51
+ * where `backoff_sum` is the sum of per-retry delays from the chosen
52
52
  * `strategy`, multiplied by 1.5 if `jitter` is enabled (the
53
53
  * worst-case multiplier in `[0.5, 1.5)`). `safetyFactor` defaults
54
54
  * to 4 because operators almost always want headroom over the bare
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * @module act-ops/receiver
4
+ *
5
+ * Generic inbound-receiver port. Transport-agnostic — the same
6
+ * `Receiver` interface fits HTTP webhooks (shipped today), bus
7
+ * consumers (Kafka/SQS/NATS/RabbitMQ — future tickets), CDC streams,
8
+ * WebSocket subscribers, scheduled pollers, and any other "external
9
+ * events arrive into this Act app" pattern.
10
+ *
11
+ * Operators who pick act-ops get the opinionated path: pick a
12
+ * transport adapter (today: `@rotorsoft/act-http/receiver` for HTTP
13
+ * webhooks), register typed handlers fluently with Zod schemas,
14
+ * `.build()` to finalize, then `.listen()` (Node server) or
15
+ * `.fetch(request)` (Lambda / edge).
16
+ *
17
+ * ```ts
18
+ * import { webhookReceiver } from "@rotorsoft/act-http/receiver";
19
+ * import { InMemoryIdempotencyStore } from "@rotorsoft/act-ops/idempotency";
20
+ * import { z } from "zod";
21
+ *
22
+ * const receiver = webhookReceiver({
23
+ * port: 4001,
24
+ * store: new InMemoryIdempotencyStore(),
25
+ * secret: process.env.WEBHOOK_SECRET,
26
+ * })
27
+ * .on("OrderConfirmed", z.object({ orderId: z.string() }), async (event, ctx) => {
28
+ * // event is typed; ctx.key is the dedup key
29
+ * })
30
+ * .build();
31
+ *
32
+ * await receiver.listen();
33
+ * ```
34
+ *
35
+ * Matches Act's builder pattern: the factory returns a
36
+ * {@link ReceiverBuilder} that collects handlers; `.build()`
37
+ * finalizes and produces an immutable {@link Receiver} with only
38
+ * runtime methods. You can't accidentally register a handler on a
39
+ * running receiver — the lifecycle phases are split at the type
40
+ * level.
41
+ *
42
+ * For operators who want fine control — custom path routing, auth
43
+ * middleware composition, non-standard HTTP server lifecycle — the
44
+ * lower-level `webhookMiddleware` factory in
45
+ * `@rotorsoft/act-http/receiver/<framework>` stays available as the
46
+ * escape hatch.
47
+ */
48
+ export type { Receiver, ReceiverBuilder, ReceiverContext, ReceiverOptions, Validator, } from "./port.js";
49
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/receiver/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,YAAY,EACV,QAAQ,EACR,eAAe,EACf,eAAe,EACf,eAAe,EACf,SAAS,GACV,MAAM,WAAW,CAAC"}
@@ -0,0 +1,122 @@
1
+ import type { IdempotencyStore } from "../idempotency/port.js";
2
+ /**
3
+ * Context passed to every handler after the receiver has verified
4
+ * the inbound request (when configured) and claimed the
5
+ * `Idempotency-Key` (or the transport's native message identifier)
6
+ * on the configured store.
7
+ */
8
+ export type ReceiverContext = {
9
+ /** The deduplicated identity of the inbound event. */
10
+ readonly key: string;
11
+ };
12
+ /**
13
+ * Zod-compatible schema shape, typed structurally so this package
14
+ * doesn't import Zod directly. Any `z.object(...)` (or anything with
15
+ * a `parse(input): T` method) satisfies the shape.
16
+ */
17
+ export type Validator<T> = {
18
+ parse(input: unknown): T;
19
+ };
20
+ /**
21
+ * Generic inbound-receiver port — the runtime artifact produced by
22
+ * {@link ReceiverBuilder.build}. Transport-agnostic: the same shape
23
+ * fits HTTP webhooks, message-bus consumers (Kafka/SQS/NATS/Rabbit),
24
+ * CDC streams, WebSocket subscribers, scheduled pollers, and any
25
+ * other "external events arrive into this Act app" pattern.
26
+ *
27
+ * Adapters in `@rotorsoft/act-http/receiver` implement the HTTP
28
+ * flavor today; bus consumers and other transport adapters
29
+ * implement the same port in their own packages without redesigning
30
+ * the contract.
31
+ *
32
+ * Two deployment modes:
33
+ *
34
+ * - **Long-running server** — {@link listen} binds to a port (HTTP),
35
+ * a topic (bus), a path (WebSocket), etc.
36
+ * - **Request-response (Lambda / edge / serverless)** —
37
+ * {@link fetch} handles one request and returns the response.
38
+ * Available on the HTTP adapter; bus consumers and other
39
+ * non-fetch transports throw.
40
+ */
41
+ export type Receiver = {
42
+ /**
43
+ * Bind and start accepting inbound events. Resolves once the
44
+ * transport is ready (server listening, consumer subscribed, etc.).
45
+ */
46
+ listen(): Promise<void>;
47
+ /**
48
+ * Stop gracefully. Resolves when the transport has shut down.
49
+ * No-op if never started.
50
+ */
51
+ close(): Promise<void>;
52
+ /**
53
+ * Handle a single fetch-shaped request. Available on the HTTP
54
+ * adapter for Lambda / Cloudflare Workers / Vercel Edge / Bun /
55
+ * Deno. Bus consumers and other non-fetch transports throw.
56
+ */
57
+ fetch(request: Request): Promise<Response>;
58
+ };
59
+ /**
60
+ * Fluent builder for a {@link Receiver}. Matches Act's builder
61
+ * pattern: factories return a builder, builder methods register
62
+ * configuration, `.build()` finalizes and produces the immutable
63
+ * runtime artifact.
64
+ *
65
+ * The type-level split between builder (`on`, `build`) and receiver
66
+ * (`listen`, `close`, `fetch`) means operators can't accidentally
67
+ * call `.on()` on a running receiver — registration and runtime
68
+ * are different lifecycle phases enforced at compile time.
69
+ */
70
+ export type ReceiverBuilder = {
71
+ /**
72
+ * Register a typed handler for a named event. The receiver
73
+ * validates the inbound body (or the transport's payload shape)
74
+ * with `schema` before calling `handler` — so the handler sees a
75
+ * fully-typed event, never raw bytes. Returns `this` for fluent
76
+ * chaining.
77
+ *
78
+ * For the HTTP adapter, handlers are mounted at `POST /<name>`.
79
+ * Bus adapters dispatch based on a topic-encoded name; the
80
+ * convention is per-transport.
81
+ */
82
+ on<T>(name: string, schema: Validator<T>, handler: (event: T, ctx: ReceiverContext) => Promise<void>): ReceiverBuilder;
83
+ /**
84
+ * Finalize the configuration and produce the runtime
85
+ * {@link Receiver}. After `.build()`, no more handlers can be
86
+ * registered.
87
+ */
88
+ build(): Receiver;
89
+ };
90
+ /**
91
+ * Options for HTTP {@link Receiver} adapters. Transport-specific
92
+ * adapters (bus consumers, WebSocket subscribers) define their own
93
+ * options types — only the {@link Receiver} port and the
94
+ * {@link ReceiverBuilder} contract stay the same across transports.
95
+ */
96
+ export type ReceiverOptions = {
97
+ /**
98
+ * Port to bind when calling {@link Receiver.listen}. Ignored when
99
+ * the receiver is used in fetch-style mode (Lambda / edge).
100
+ */
101
+ readonly port: number;
102
+ /**
103
+ * Idempotency store the receiver claims keys on. Match the
104
+ * sender's retry envelope when sizing.
105
+ * `InMemoryIdempotencyStore` from
106
+ * `@rotorsoft/act-ops/idempotency` is the default single-process
107
+ * choice.
108
+ */
109
+ readonly store: IdempotencyStore;
110
+ /**
111
+ * HMAC-SHA256 shared secret. When set, the HTTP adapter verifies
112
+ * the `X-Webhook-Signature` and `X-Webhook-Timestamp` headers
113
+ * against the raw request body. Pair with `webhook({ secret })`
114
+ * on the sender side. When undefined, signature verification is
115
+ * skipped.
116
+ *
117
+ * Transport-specific adapters interpret this field according to
118
+ * their own authentication model.
119
+ */
120
+ readonly secret?: string;
121
+ };
122
+ //# sourceMappingURL=port.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"port.d.ts","sourceRoot":"","sources":["../../../src/receiver/port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,sDAAsD;IACtD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IACzB,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC;CAC1B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB;;;OAGG;IACH,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB;;;;OAIG;IACH,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC5C,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;;;;;;;OAUG;IACH,EAAE,CAAC,CAAC,EACF,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,GACzD,eAAe,CAAC;IACnB;;;;OAIG;IACH,KAAK,IAAI,QAAQ,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC"}
@@ -28,19 +28,19 @@ module.exports = __toCommonJS(idempotency_exports);
28
28
  // src/idempotency/min-safe-ttl.ts
29
29
  function minSafeTtl(profile) {
30
30
  const safetyFactor = profile.safetyFactor ?? 4;
31
- const backoffSum = sumBackoff(profile.maxRetries, profile.backoff);
32
- const timeoutSum = (profile.maxRetries + 1) * profile.timeoutMs;
33
- return (backoffSum + timeoutSum) * safetyFactor;
31
+ const backoff_sum = sum_backoff(profile.maxRetries, profile.backoff);
32
+ const timeout_sum = (profile.maxRetries + 1) * profile.timeoutMs;
33
+ return (backoff_sum + timeout_sum) * safetyFactor;
34
34
  }
35
- function sumBackoff(maxRetries, backoff) {
35
+ function sum_backoff(maxRetries, backoff) {
36
36
  if (!backoff) return 0;
37
37
  let sum = 0;
38
38
  for (let retry = 0; retry < maxRetries; retry++) {
39
- sum += delayFor(retry, backoff);
39
+ sum += delay_for(retry, backoff);
40
40
  }
41
41
  return backoff.jitter ? sum * 1.5 : sum;
42
42
  }
43
- function delayFor(retry, backoff) {
43
+ function delay_for(retry, backoff) {
44
44
  switch (backoff.strategy) {
45
45
  case "fixed":
46
46
  return backoff.baseMs;
@@ -82,8 +82,8 @@ var InMemoryIdempotencyStore = class {
82
82
  this._seen.clear();
83
83
  }
84
84
  _gc(now) {
85
- for (const [key, expiresAt] of this._seen) {
86
- if (expiresAt > now) break;
85
+ for (const [key, expires_at] of this._seen) {
86
+ if (expires_at > now) break;
87
87
  this._seen.delete(key);
88
88
  }
89
89
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/idempotency/index.ts","../../src/idempotency/min-safe-ttl.ts","../../src/idempotency/in-memory.ts"],"sourcesContent":["/**\n * @packageDocumentation\n * @module act-ops/idempotency\n *\n * Receiver-side idempotency primitives.\n *\n * - {@link IdempotencyStore} — port: atomically claim a key, report\n * whether the caller is processing a fresh request or a duplicate.\n * - {@link InMemoryIdempotencyStore} — bounded LRU + TTL reference\n * implementation. Swap for a durable adapter (Postgres unique\n * index, Redis `SET NX`) in multi-process receivers without\n * changing the call site.\n * - {@link minSafeTtl} — derives the minimum safe dedup window from\n * the sender's retry profile. The math durable adapters and\n * `InMemoryIdempotencyStore`'s `retryProfile` option both call.\n * - {@link RetryProfile} — the sender's retry shape, used as input\n * to `minSafeTtl` and as the `retryProfile` option on the store.\n *\n * Sibling subpaths (e.g. `@rotorsoft/act-ops/poison`,\n * `@rotorsoft/act-ops/retry`) will host future operational primitives\n * as they land. Each subpath is its own ESM/CJS entry — pay for what\n * you import.\n *\n * The package has no runtime or peer dependency on `@rotorsoft/act`,\n * so non-Act receivers (forwarded-bus consumers, framework-agnostic\n * HTTP endpoints) can install `@rotorsoft/act-ops` and honor an\n * `Idempotency-Key` without pulling in the orchestrator.\n */\n\nexport {\n InMemoryIdempotencyStore,\n type InMemoryIdempotencyStoreOptions,\n} from \"./in-memory.js\";\nexport { minSafeTtl, type RetryProfile } from \"./min-safe-ttl.js\";\nexport type { IdempotencyStore } from \"./port.js\";\n","/**\n * @module act-ops/idempotency/min-safe-ttl\n *\n * Internal math for sizing the dedup window of an\n * {@link IdempotencyStore} from a sender's retry profile.\n *\n * **Not re-exported from the package root** by design — the math is\n * an implementation detail of {@link InMemoryIdempotencyStore} (and\n * any future durable adapter). Operators configure dedup windows\n * through the store's `retryProfile` option, not by calling this\n * function directly. Tests import it from this path; external\n * consumers can't reach it.\n */\n\n/**\n * A sender's retry behaviour, described in enough detail to size a\n * receiver-side dedup window correctly. The `backoff` shape is typed\n * inline structurally so it's assignable from `@rotorsoft/act`'s\n * `BackoffOptions` without this package importing the framework\n * (the zero-act-dep load-bearing constraint of `@rotorsoft/act-ops`).\n * A caller holding `act.BackoffOptions` can pass it as `backoff`\n * with no cast — TypeScript treats the two shapes as equivalent.\n *\n * @property maxRetries - Retries after the first attempt fails\n * @property backoff - Optional backoff strategy. When omitted,\n * retries fire back-to-back with only the per-attempt timeout\n * between them\n * @property timeoutMs - Per-attempt timeout (the sender's `fetch`\n * timeout, or the equivalent for whatever transport)\n * @property safetyFactor - Multiplier applied to the bare envelope.\n * Default 4\n */\nexport type RetryProfile = {\n readonly maxRetries: number;\n readonly backoff?: {\n readonly strategy: \"fixed\" | \"linear\" | \"exponential\";\n readonly baseMs: number;\n readonly maxMs?: number;\n readonly jitter?: boolean;\n };\n readonly timeoutMs: number;\n readonly safetyFactor?: number;\n};\n\n/**\n * Minimum safe TTL in milliseconds for a receiver-side\n * {@link IdempotencyStore} window, given the sender's retry profile.\n *\n * The envelope is:\n *\n * ttl = (backoffSum + (maxRetries + 1) * timeoutMs) * safetyFactor\n *\n * where `backoffSum` is the sum of per-retry delays from the chosen\n * `strategy`, multiplied by 1.5 if `jitter` is enabled (the\n * worst-case multiplier in `[0.5, 1.5)`). `safetyFactor` defaults\n * to 4 because operators almost always want headroom over the bare\n * envelope — slow networks, clock skew, and incident-window retries\n * stretch the real-world maximum past the computed one.\n */\nexport function minSafeTtl(profile: RetryProfile): number {\n const safetyFactor = profile.safetyFactor ?? 4;\n const backoffSum = sumBackoff(profile.maxRetries, profile.backoff);\n const timeoutSum = (profile.maxRetries + 1) * profile.timeoutMs;\n return (backoffSum + timeoutSum) * safetyFactor;\n}\n\nfunction sumBackoff(\n maxRetries: number,\n backoff: RetryProfile[\"backoff\"]\n): number {\n if (!backoff) return 0;\n let sum = 0;\n for (let retry = 0; retry < maxRetries; retry++) {\n sum += delayFor(retry, backoff);\n }\n return backoff.jitter ? sum * 1.5 : sum;\n}\n\nfunction delayFor(\n retry: number,\n backoff: NonNullable<RetryProfile[\"backoff\"]>\n): number {\n switch (backoff.strategy) {\n case \"fixed\":\n return backoff.baseMs;\n case \"linear\":\n return backoff.baseMs * (retry + 1);\n case \"exponential\": {\n const raw = backoff.baseMs * 2 ** retry;\n return backoff.maxMs !== undefined ? Math.min(raw, backoff.maxMs) : raw;\n }\n }\n}\n","import { minSafeTtl, type RetryProfile } from \"./min-safe-ttl.js\";\nimport type { IdempotencyStore } from \"./port.js\";\n\n/**\n * Options for {@link InMemoryIdempotencyStore}. Defaults are sized\n * for a single-process receiver paired with a sender using the\n * standard `webhook` backoff envelope (`exponential` up to\n * `maxMs: 30_000`, `maxRetries: 5`).\n *\n * The dedup window is set in one of two ways:\n *\n * - {@link ttlMs} — pass a number directly when you've already\n * computed the window, or just want the 24-hour default that\n * covers any reasonable sender retry envelope.\n * - {@link retryProfile} — pass the sender's retry profile and the\n * store derives the minimum safe window for you. The math\n * (per-retry backoff sums, per-attempt timeouts, jitter\n * worst-case 1.5×, default 4× safety factor) is hidden inside the\n * store — see [external integration](https://rotorsoft.github.io/act-root/docs/guides/external-integration#ttl-sizing)\n * for the math explained.\n *\n * When both are supplied, {@link ttlMs} wins — an explicit number\n * overrides a derived one.\n */\nexport type InMemoryIdempotencyStoreOptions = {\n /** Direct dedup window. Default: 24 hours. */\n ttlMs?: number;\n /** Sender's retry profile — used to derive `ttlMs` when not supplied. */\n retryProfile?: RetryProfile;\n /** Memory bound — oldest entries are evicted past this size. Default: 100,000. */\n maxEntries?: number;\n};\n\n/**\n * Bounded LRU + TTL implementation of {@link IdempotencyStore} for\n * single-process receivers (the wolfdesk demo, integration tests,\n * dev loops). Multi-process receivers should swap for a durable\n * adapter (Postgres unique index, Redis `SET NX`) — the\n * {@link IdempotencyStore} contract stays the same so the call site\n * doesn't change.\n *\n * Map iteration is insertion-ordered, so:\n * - The oldest entry sits at `keys().next().value` (cheapest to evict).\n * - GC walks until the first non-expired entry and stops.\n *\n * `claim` is sync; durable adapters return a `Promise<boolean>` —\n * both satisfy the union return type in the port.\n */\nexport class InMemoryIdempotencyStore implements IdempotencyStore {\n private readonly _seen = new Map<string, number>();\n private readonly _ttl_ms: number;\n private readonly _max_entries: number;\n\n constructor(options?: InMemoryIdempotencyStoreOptions) {\n this._ttl_ms =\n options?.ttlMs ??\n (options?.retryProfile !== undefined\n ? minSafeTtl(options.retryProfile)\n : 24 * 60 * 60 * 1000);\n this._max_entries = options?.maxEntries ?? 100_000;\n }\n\n claim(key: string, now: number = Date.now()): boolean {\n this._gc(now);\n if (this._seen.has(key)) return false;\n this._seen.set(key, now + this._ttl_ms);\n if (this._seen.size > this._max_entries) {\n // Safe by construction: `_seen.size > _max_entries >= 0` implies at\n // least one entry, so `.next().value` resolves to a string key.\n const oldest = this._seen.keys().next().value as string;\n this._seen.delete(oldest);\n }\n return true;\n }\n\n /** Number of entries currently tracked (post-GC at call time). */\n size(now: number = Date.now()): number {\n this._gc(now);\n return this._seen.size;\n }\n\n /** Drop every entry — test hook. */\n clear(): void {\n this._seen.clear();\n }\n\n private _gc(now: number): void {\n for (const [key, expiresAt] of this._seen) {\n if (expiresAt > now) break;\n this._seen.delete(key);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AC2DO,SAAS,WAAW,SAA+B;AACxD,QAAM,eAAe,QAAQ,gBAAgB;AAC7C,QAAM,aAAa,WAAW,QAAQ,YAAY,QAAQ,OAAO;AACjE,QAAM,cAAc,QAAQ,aAAa,KAAK,QAAQ;AACtD,UAAQ,aAAa,cAAc;AACrC;AAEA,SAAS,WACP,YACA,SACQ;AACR,MAAI,CAAC,QAAS,QAAO;AACrB,MAAI,MAAM;AACV,WAAS,QAAQ,GAAG,QAAQ,YAAY,SAAS;AAC/C,WAAO,SAAS,OAAO,OAAO;AAAA,EAChC;AACA,SAAO,QAAQ,SAAS,MAAM,MAAM;AACtC;AAEA,SAAS,SACP,OACA,SACQ;AACR,UAAQ,QAAQ,UAAU;AAAA,IACxB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB,KAAK;AACH,aAAO,QAAQ,UAAU,QAAQ;AAAA,IACnC,KAAK,eAAe;AAClB,YAAM,MAAM,QAAQ,SAAS,KAAK;AAClC,aAAO,QAAQ,UAAU,SAAY,KAAK,IAAI,KAAK,QAAQ,KAAK,IAAI;AAAA,IACtE;AAAA,EACF;AACF;;;AC5CO,IAAM,2BAAN,MAA2D;AAAA,EAC/C,QAAQ,oBAAI,IAAoB;AAAA,EAChC;AAAA,EACA;AAAA,EAEjB,YAAY,SAA2C;AACrD,SAAK,UACH,SAAS,UACR,SAAS,iBAAiB,SACvB,WAAW,QAAQ,YAAY,IAC/B,KAAK,KAAK,KAAK;AACrB,SAAK,eAAe,SAAS,cAAc;AAAA,EAC7C;AAAA,EAEA,MAAM,KAAa,MAAc,KAAK,IAAI,GAAY;AACpD,SAAK,IAAI,GAAG;AACZ,QAAI,KAAK,MAAM,IAAI,GAAG,EAAG,QAAO;AAChC,SAAK,MAAM,IAAI,KAAK,MAAM,KAAK,OAAO;AACtC,QAAI,KAAK,MAAM,OAAO,KAAK,cAAc;AAGvC,YAAM,SAAS,KAAK,MAAM,KAAK,EAAE,KAAK,EAAE;AACxC,WAAK,MAAM,OAAO,MAAM;AAAA,IAC1B;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,KAAK,MAAc,KAAK,IAAI,GAAW;AACrC,SAAK,IAAI,GAAG;AACZ,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA;AAAA,EAGA,QAAc;AACZ,SAAK,MAAM,MAAM;AAAA,EACnB;AAAA,EAEQ,IAAI,KAAmB;AAC7B,eAAW,CAAC,KAAK,SAAS,KAAK,KAAK,OAAO;AACzC,UAAI,YAAY,IAAK;AACrB,WAAK,MAAM,OAAO,GAAG;AAAA,IACvB;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/idempotency/index.ts","../../src/idempotency/min-safe-ttl.ts","../../src/idempotency/in-memory.ts"],"sourcesContent":["/**\n * @packageDocumentation\n * @module act-ops/idempotency\n *\n * Receiver-side idempotency primitives.\n *\n * - {@link IdempotencyStore} — port: atomically claim a key, report\n * whether the caller is processing a fresh request or a duplicate.\n * - {@link InMemoryIdempotencyStore} — bounded LRU + TTL reference\n * implementation. Swap for a durable adapter (Postgres unique\n * index, Redis `SET NX`) in multi-process receivers without\n * changing the call site.\n * - {@link minSafeTtl} — derives the minimum safe dedup window from\n * the sender's retry profile. The math durable adapters and\n * `InMemoryIdempotencyStore`'s `retryProfile` option both call.\n * - {@link RetryProfile} — the sender's retry shape, used as input\n * to `minSafeTtl` and as the `retryProfile` option on the store.\n *\n * Sibling subpaths (e.g. `@rotorsoft/act-ops/poison`,\n * `@rotorsoft/act-ops/retry`) will host future operational primitives\n * as they land. Each subpath is its own ESM/CJS entry — pay for what\n * you import.\n *\n * The package has no runtime or peer dependency on `@rotorsoft/act`,\n * so non-Act receivers (forwarded-bus consumers, framework-agnostic\n * HTTP endpoints) can install `@rotorsoft/act-ops` and honor an\n * `Idempotency-Key` without pulling in the orchestrator.\n */\n\nexport {\n InMemoryIdempotencyStore,\n type InMemoryIdempotencyStoreOptions,\n} from \"./in-memory.js\";\nexport { minSafeTtl, type RetryProfile } from \"./min-safe-ttl.js\";\nexport type { IdempotencyStore } from \"./port.js\";\n","/**\n * @module act-ops/idempotency/min-safe-ttl\n *\n * Internal math for sizing the dedup window of an\n * {@link IdempotencyStore} from a sender's retry profile.\n *\n * **Not re-exported from the package root** by design — the math is\n * an implementation detail of {@link InMemoryIdempotencyStore} (and\n * any future durable adapter). Operators configure dedup windows\n * through the store's `retryProfile` option, not by calling this\n * function directly. Tests import it from this path; external\n * consumers can't reach it.\n */\n\n/**\n * A sender's retry behaviour, described in enough detail to size a\n * receiver-side dedup window correctly. The `backoff` shape is typed\n * inline structurally so it's assignable from `@rotorsoft/act`'s\n * `BackoffOptions` without this package importing the framework\n * (the zero-act-dep load-bearing constraint of `@rotorsoft/act-ops`).\n * A caller holding `act.BackoffOptions` can pass it as `backoff`\n * with no cast — TypeScript treats the two shapes as equivalent.\n *\n * @property maxRetries - Retries after the first attempt fails\n * @property backoff - Optional backoff strategy. When omitted,\n * retries fire back-to-back with only the per-attempt timeout\n * between them\n * @property timeoutMs - Per-attempt timeout (the sender's `fetch`\n * timeout, or the equivalent for whatever transport)\n * @property safetyFactor - Multiplier applied to the bare envelope.\n * Default 4\n */\nexport type RetryProfile = {\n readonly maxRetries: number;\n readonly backoff?: {\n readonly strategy: \"fixed\" | \"linear\" | \"exponential\";\n readonly baseMs: number;\n readonly maxMs?: number;\n readonly jitter?: boolean;\n };\n readonly timeoutMs: number;\n readonly safetyFactor?: number;\n};\n\n/**\n * Minimum safe TTL in milliseconds for a receiver-side\n * {@link IdempotencyStore} window, given the sender's retry profile.\n *\n * The envelope is:\n *\n * ttl = (backoff_sum + (maxRetries + 1) * timeoutMs) * safetyFactor\n *\n * where `backoff_sum` is the sum of per-retry delays from the chosen\n * `strategy`, multiplied by 1.5 if `jitter` is enabled (the\n * worst-case multiplier in `[0.5, 1.5)`). `safetyFactor` defaults\n * to 4 because operators almost always want headroom over the bare\n * envelope — slow networks, clock skew, and incident-window retries\n * stretch the real-world maximum past the computed one.\n */\nexport function minSafeTtl(profile: RetryProfile): number {\n const safetyFactor = profile.safetyFactor ?? 4;\n const backoff_sum = sum_backoff(profile.maxRetries, profile.backoff);\n const timeout_sum = (profile.maxRetries + 1) * profile.timeoutMs;\n return (backoff_sum + timeout_sum) * safetyFactor;\n}\n\nfunction sum_backoff(\n maxRetries: number,\n backoff: RetryProfile[\"backoff\"]\n): number {\n if (!backoff) return 0;\n let sum = 0;\n for (let retry = 0; retry < maxRetries; retry++) {\n sum += delay_for(retry, backoff);\n }\n return backoff.jitter ? sum * 1.5 : sum;\n}\n\nfunction delay_for(\n retry: number,\n backoff: NonNullable<RetryProfile[\"backoff\"]>\n): number {\n switch (backoff.strategy) {\n case \"fixed\":\n return backoff.baseMs;\n case \"linear\":\n return backoff.baseMs * (retry + 1);\n case \"exponential\": {\n const raw = backoff.baseMs * 2 ** retry;\n return backoff.maxMs !== undefined ? Math.min(raw, backoff.maxMs) : raw;\n }\n }\n}\n","import { minSafeTtl, type RetryProfile } from \"./min-safe-ttl.js\";\nimport type { IdempotencyStore } from \"./port.js\";\n\n/**\n * Options for {@link InMemoryIdempotencyStore}. Defaults are sized\n * for a single-process receiver paired with a sender using the\n * standard `webhook` backoff envelope (`exponential` up to\n * `maxMs: 30_000`, `maxRetries: 5`).\n *\n * The dedup window is set in one of two ways:\n *\n * - {@link ttlMs} — pass a number directly when you've already\n * computed the window, or just want the 24-hour default that\n * covers any reasonable sender retry envelope.\n * - {@link retryProfile} — pass the sender's retry profile and the\n * store derives the minimum safe window for you. The math\n * (per-retry backoff sums, per-attempt timeouts, jitter\n * worst-case 1.5×, default 4× safety factor) is hidden inside the\n * store — see [external integration](https://rotorsoft.github.io/act-root/docs/guides/external-integration#ttl-sizing)\n * for the math explained.\n *\n * When both are supplied, {@link ttlMs} wins — an explicit number\n * overrides a derived one.\n */\nexport type InMemoryIdempotencyStoreOptions = {\n /** Direct dedup window. Default: 24 hours. */\n ttlMs?: number;\n /** Sender's retry profile — used to derive `ttlMs` when not supplied. */\n retryProfile?: RetryProfile;\n /** Memory bound — oldest entries are evicted past this size. Default: 100,000. */\n maxEntries?: number;\n};\n\n/**\n * Bounded LRU + TTL implementation of {@link IdempotencyStore} for\n * single-process receivers (the wolfdesk demo, integration tests,\n * dev loops). Multi-process receivers should swap for a durable\n * adapter (Postgres unique index, Redis `SET NX`) — the\n * {@link IdempotencyStore} contract stays the same so the call site\n * doesn't change.\n *\n * Map iteration is insertion-ordered, so:\n * - The oldest entry sits at `keys().next().value` (cheapest to evict).\n * - GC walks until the first non-expired entry and stops.\n *\n * `claim` is sync; durable adapters return a `Promise<boolean>` —\n * both satisfy the union return type in the port.\n */\nexport class InMemoryIdempotencyStore implements IdempotencyStore {\n private readonly _seen = new Map<string, number>();\n private readonly _ttl_ms: number;\n private readonly _max_entries: number;\n\n constructor(options?: InMemoryIdempotencyStoreOptions) {\n this._ttl_ms =\n options?.ttlMs ??\n (options?.retryProfile !== undefined\n ? minSafeTtl(options.retryProfile)\n : 24 * 60 * 60 * 1000);\n this._max_entries = options?.maxEntries ?? 100_000;\n }\n\n claim(key: string, now: number = Date.now()): boolean {\n this._gc(now);\n if (this._seen.has(key)) return false;\n this._seen.set(key, now + this._ttl_ms);\n if (this._seen.size > this._max_entries) {\n // Safe by construction: `_seen.size > _max_entries >= 0` implies at\n // least one entry, so `.next().value` resolves to a string key.\n const oldest = this._seen.keys().next().value as string;\n this._seen.delete(oldest);\n }\n return true;\n }\n\n /** Number of entries currently tracked (post-GC at call time). */\n size(now: number = Date.now()): number {\n this._gc(now);\n return this._seen.size;\n }\n\n /** Drop every entry — test hook. */\n clear(): void {\n this._seen.clear();\n }\n\n private _gc(now: number): void {\n for (const [key, expires_at] of this._seen) {\n if (expires_at > now) break;\n this._seen.delete(key);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AC2DO,SAAS,WAAW,SAA+B;AACxD,QAAM,eAAe,QAAQ,gBAAgB;AAC7C,QAAM,cAAc,YAAY,QAAQ,YAAY,QAAQ,OAAO;AACnE,QAAM,eAAe,QAAQ,aAAa,KAAK,QAAQ;AACvD,UAAQ,cAAc,eAAe;AACvC;AAEA,SAAS,YACP,YACA,SACQ;AACR,MAAI,CAAC,QAAS,QAAO;AACrB,MAAI,MAAM;AACV,WAAS,QAAQ,GAAG,QAAQ,YAAY,SAAS;AAC/C,WAAO,UAAU,OAAO,OAAO;AAAA,EACjC;AACA,SAAO,QAAQ,SAAS,MAAM,MAAM;AACtC;AAEA,SAAS,UACP,OACA,SACQ;AACR,UAAQ,QAAQ,UAAU;AAAA,IACxB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB,KAAK;AACH,aAAO,QAAQ,UAAU,QAAQ;AAAA,IACnC,KAAK,eAAe;AAClB,YAAM,MAAM,QAAQ,SAAS,KAAK;AAClC,aAAO,QAAQ,UAAU,SAAY,KAAK,IAAI,KAAK,QAAQ,KAAK,IAAI;AAAA,IACtE;AAAA,EACF;AACF;;;AC5CO,IAAM,2BAAN,MAA2D;AAAA,EAC/C,QAAQ,oBAAI,IAAoB;AAAA,EAChC;AAAA,EACA;AAAA,EAEjB,YAAY,SAA2C;AACrD,SAAK,UACH,SAAS,UACR,SAAS,iBAAiB,SACvB,WAAW,QAAQ,YAAY,IAC/B,KAAK,KAAK,KAAK;AACrB,SAAK,eAAe,SAAS,cAAc;AAAA,EAC7C;AAAA,EAEA,MAAM,KAAa,MAAc,KAAK,IAAI,GAAY;AACpD,SAAK,IAAI,GAAG;AACZ,QAAI,KAAK,MAAM,IAAI,GAAG,EAAG,QAAO;AAChC,SAAK,MAAM,IAAI,KAAK,MAAM,KAAK,OAAO;AACtC,QAAI,KAAK,MAAM,OAAO,KAAK,cAAc;AAGvC,YAAM,SAAS,KAAK,MAAM,KAAK,EAAE,KAAK,EAAE;AACxC,WAAK,MAAM,OAAO,MAAM;AAAA,IAC1B;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,KAAK,MAAc,KAAK,IAAI,GAAW;AACrC,SAAK,IAAI,GAAG;AACZ,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA;AAAA,EAGA,QAAc;AACZ,SAAK,MAAM,MAAM;AAAA,EACnB;AAAA,EAEQ,IAAI,KAAmB;AAC7B,eAAW,CAAC,KAAK,UAAU,KAAK,KAAK,OAAO;AAC1C,UAAI,aAAa,IAAK;AACtB,WAAK,MAAM,OAAO,GAAG;AAAA,IACvB;AAAA,EACF;AACF;","names":[]}
@@ -1,19 +1,19 @@
1
1
  // src/idempotency/min-safe-ttl.ts
2
2
  function minSafeTtl(profile) {
3
3
  const safetyFactor = profile.safetyFactor ?? 4;
4
- const backoffSum = sumBackoff(profile.maxRetries, profile.backoff);
5
- const timeoutSum = (profile.maxRetries + 1) * profile.timeoutMs;
6
- return (backoffSum + timeoutSum) * safetyFactor;
4
+ const backoff_sum = sum_backoff(profile.maxRetries, profile.backoff);
5
+ const timeout_sum = (profile.maxRetries + 1) * profile.timeoutMs;
6
+ return (backoff_sum + timeout_sum) * safetyFactor;
7
7
  }
8
- function sumBackoff(maxRetries, backoff) {
8
+ function sum_backoff(maxRetries, backoff) {
9
9
  if (!backoff) return 0;
10
10
  let sum = 0;
11
11
  for (let retry = 0; retry < maxRetries; retry++) {
12
- sum += delayFor(retry, backoff);
12
+ sum += delay_for(retry, backoff);
13
13
  }
14
14
  return backoff.jitter ? sum * 1.5 : sum;
15
15
  }
16
- function delayFor(retry, backoff) {
16
+ function delay_for(retry, backoff) {
17
17
  switch (backoff.strategy) {
18
18
  case "fixed":
19
19
  return backoff.baseMs;
@@ -55,8 +55,8 @@ var InMemoryIdempotencyStore = class {
55
55
  this._seen.clear();
56
56
  }
57
57
  _gc(now) {
58
- for (const [key, expiresAt] of this._seen) {
59
- if (expiresAt > now) break;
58
+ for (const [key, expires_at] of this._seen) {
59
+ if (expires_at > now) break;
60
60
  this._seen.delete(key);
61
61
  }
62
62
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/idempotency/min-safe-ttl.ts","../../src/idempotency/in-memory.ts"],"sourcesContent":["/**\n * @module act-ops/idempotency/min-safe-ttl\n *\n * Internal math for sizing the dedup window of an\n * {@link IdempotencyStore} from a sender's retry profile.\n *\n * **Not re-exported from the package root** by design — the math is\n * an implementation detail of {@link InMemoryIdempotencyStore} (and\n * any future durable adapter). Operators configure dedup windows\n * through the store's `retryProfile` option, not by calling this\n * function directly. Tests import it from this path; external\n * consumers can't reach it.\n */\n\n/**\n * A sender's retry behaviour, described in enough detail to size a\n * receiver-side dedup window correctly. The `backoff` shape is typed\n * inline structurally so it's assignable from `@rotorsoft/act`'s\n * `BackoffOptions` without this package importing the framework\n * (the zero-act-dep load-bearing constraint of `@rotorsoft/act-ops`).\n * A caller holding `act.BackoffOptions` can pass it as `backoff`\n * with no cast — TypeScript treats the two shapes as equivalent.\n *\n * @property maxRetries - Retries after the first attempt fails\n * @property backoff - Optional backoff strategy. When omitted,\n * retries fire back-to-back with only the per-attempt timeout\n * between them\n * @property timeoutMs - Per-attempt timeout (the sender's `fetch`\n * timeout, or the equivalent for whatever transport)\n * @property safetyFactor - Multiplier applied to the bare envelope.\n * Default 4\n */\nexport type RetryProfile = {\n readonly maxRetries: number;\n readonly backoff?: {\n readonly strategy: \"fixed\" | \"linear\" | \"exponential\";\n readonly baseMs: number;\n readonly maxMs?: number;\n readonly jitter?: boolean;\n };\n readonly timeoutMs: number;\n readonly safetyFactor?: number;\n};\n\n/**\n * Minimum safe TTL in milliseconds for a receiver-side\n * {@link IdempotencyStore} window, given the sender's retry profile.\n *\n * The envelope is:\n *\n * ttl = (backoffSum + (maxRetries + 1) * timeoutMs) * safetyFactor\n *\n * where `backoffSum` is the sum of per-retry delays from the chosen\n * `strategy`, multiplied by 1.5 if `jitter` is enabled (the\n * worst-case multiplier in `[0.5, 1.5)`). `safetyFactor` defaults\n * to 4 because operators almost always want headroom over the bare\n * envelope — slow networks, clock skew, and incident-window retries\n * stretch the real-world maximum past the computed one.\n */\nexport function minSafeTtl(profile: RetryProfile): number {\n const safetyFactor = profile.safetyFactor ?? 4;\n const backoffSum = sumBackoff(profile.maxRetries, profile.backoff);\n const timeoutSum = (profile.maxRetries + 1) * profile.timeoutMs;\n return (backoffSum + timeoutSum) * safetyFactor;\n}\n\nfunction sumBackoff(\n maxRetries: number,\n backoff: RetryProfile[\"backoff\"]\n): number {\n if (!backoff) return 0;\n let sum = 0;\n for (let retry = 0; retry < maxRetries; retry++) {\n sum += delayFor(retry, backoff);\n }\n return backoff.jitter ? sum * 1.5 : sum;\n}\n\nfunction delayFor(\n retry: number,\n backoff: NonNullable<RetryProfile[\"backoff\"]>\n): number {\n switch (backoff.strategy) {\n case \"fixed\":\n return backoff.baseMs;\n case \"linear\":\n return backoff.baseMs * (retry + 1);\n case \"exponential\": {\n const raw = backoff.baseMs * 2 ** retry;\n return backoff.maxMs !== undefined ? Math.min(raw, backoff.maxMs) : raw;\n }\n }\n}\n","import { minSafeTtl, type RetryProfile } from \"./min-safe-ttl.js\";\nimport type { IdempotencyStore } from \"./port.js\";\n\n/**\n * Options for {@link InMemoryIdempotencyStore}. Defaults are sized\n * for a single-process receiver paired with a sender using the\n * standard `webhook` backoff envelope (`exponential` up to\n * `maxMs: 30_000`, `maxRetries: 5`).\n *\n * The dedup window is set in one of two ways:\n *\n * - {@link ttlMs} — pass a number directly when you've already\n * computed the window, or just want the 24-hour default that\n * covers any reasonable sender retry envelope.\n * - {@link retryProfile} — pass the sender's retry profile and the\n * store derives the minimum safe window for you. The math\n * (per-retry backoff sums, per-attempt timeouts, jitter\n * worst-case 1.5×, default 4× safety factor) is hidden inside the\n * store — see [external integration](https://rotorsoft.github.io/act-root/docs/guides/external-integration#ttl-sizing)\n * for the math explained.\n *\n * When both are supplied, {@link ttlMs} wins — an explicit number\n * overrides a derived one.\n */\nexport type InMemoryIdempotencyStoreOptions = {\n /** Direct dedup window. Default: 24 hours. */\n ttlMs?: number;\n /** Sender's retry profile — used to derive `ttlMs` when not supplied. */\n retryProfile?: RetryProfile;\n /** Memory bound — oldest entries are evicted past this size. Default: 100,000. */\n maxEntries?: number;\n};\n\n/**\n * Bounded LRU + TTL implementation of {@link IdempotencyStore} for\n * single-process receivers (the wolfdesk demo, integration tests,\n * dev loops). Multi-process receivers should swap for a durable\n * adapter (Postgres unique index, Redis `SET NX`) — the\n * {@link IdempotencyStore} contract stays the same so the call site\n * doesn't change.\n *\n * Map iteration is insertion-ordered, so:\n * - The oldest entry sits at `keys().next().value` (cheapest to evict).\n * - GC walks until the first non-expired entry and stops.\n *\n * `claim` is sync; durable adapters return a `Promise<boolean>` —\n * both satisfy the union return type in the port.\n */\nexport class InMemoryIdempotencyStore implements IdempotencyStore {\n private readonly _seen = new Map<string, number>();\n private readonly _ttl_ms: number;\n private readonly _max_entries: number;\n\n constructor(options?: InMemoryIdempotencyStoreOptions) {\n this._ttl_ms =\n options?.ttlMs ??\n (options?.retryProfile !== undefined\n ? minSafeTtl(options.retryProfile)\n : 24 * 60 * 60 * 1000);\n this._max_entries = options?.maxEntries ?? 100_000;\n }\n\n claim(key: string, now: number = Date.now()): boolean {\n this._gc(now);\n if (this._seen.has(key)) return false;\n this._seen.set(key, now + this._ttl_ms);\n if (this._seen.size > this._max_entries) {\n // Safe by construction: `_seen.size > _max_entries >= 0` implies at\n // least one entry, so `.next().value` resolves to a string key.\n const oldest = this._seen.keys().next().value as string;\n this._seen.delete(oldest);\n }\n return true;\n }\n\n /** Number of entries currently tracked (post-GC at call time). */\n size(now: number = Date.now()): number {\n this._gc(now);\n return this._seen.size;\n }\n\n /** Drop every entry — test hook. */\n clear(): void {\n this._seen.clear();\n }\n\n private _gc(now: number): void {\n for (const [key, expiresAt] of this._seen) {\n if (expiresAt > now) break;\n this._seen.delete(key);\n }\n }\n}\n"],"mappings":";AA2DO,SAAS,WAAW,SAA+B;AACxD,QAAM,eAAe,QAAQ,gBAAgB;AAC7C,QAAM,aAAa,WAAW,QAAQ,YAAY,QAAQ,OAAO;AACjE,QAAM,cAAc,QAAQ,aAAa,KAAK,QAAQ;AACtD,UAAQ,aAAa,cAAc;AACrC;AAEA,SAAS,WACP,YACA,SACQ;AACR,MAAI,CAAC,QAAS,QAAO;AACrB,MAAI,MAAM;AACV,WAAS,QAAQ,GAAG,QAAQ,YAAY,SAAS;AAC/C,WAAO,SAAS,OAAO,OAAO;AAAA,EAChC;AACA,SAAO,QAAQ,SAAS,MAAM,MAAM;AACtC;AAEA,SAAS,SACP,OACA,SACQ;AACR,UAAQ,QAAQ,UAAU;AAAA,IACxB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB,KAAK;AACH,aAAO,QAAQ,UAAU,QAAQ;AAAA,IACnC,KAAK,eAAe;AAClB,YAAM,MAAM,QAAQ,SAAS,KAAK;AAClC,aAAO,QAAQ,UAAU,SAAY,KAAK,IAAI,KAAK,QAAQ,KAAK,IAAI;AAAA,IACtE;AAAA,EACF;AACF;;;AC5CO,IAAM,2BAAN,MAA2D;AAAA,EAC/C,QAAQ,oBAAI,IAAoB;AAAA,EAChC;AAAA,EACA;AAAA,EAEjB,YAAY,SAA2C;AACrD,SAAK,UACH,SAAS,UACR,SAAS,iBAAiB,SACvB,WAAW,QAAQ,YAAY,IAC/B,KAAK,KAAK,KAAK;AACrB,SAAK,eAAe,SAAS,cAAc;AAAA,EAC7C;AAAA,EAEA,MAAM,KAAa,MAAc,KAAK,IAAI,GAAY;AACpD,SAAK,IAAI,GAAG;AACZ,QAAI,KAAK,MAAM,IAAI,GAAG,EAAG,QAAO;AAChC,SAAK,MAAM,IAAI,KAAK,MAAM,KAAK,OAAO;AACtC,QAAI,KAAK,MAAM,OAAO,KAAK,cAAc;AAGvC,YAAM,SAAS,KAAK,MAAM,KAAK,EAAE,KAAK,EAAE;AACxC,WAAK,MAAM,OAAO,MAAM;AAAA,IAC1B;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,KAAK,MAAc,KAAK,IAAI,GAAW;AACrC,SAAK,IAAI,GAAG;AACZ,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA;AAAA,EAGA,QAAc;AACZ,SAAK,MAAM,MAAM;AAAA,EACnB;AAAA,EAEQ,IAAI,KAAmB;AAC7B,eAAW,CAAC,KAAK,SAAS,KAAK,KAAK,OAAO;AACzC,UAAI,YAAY,IAAK;AACrB,WAAK,MAAM,OAAO,GAAG;AAAA,IACvB;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/idempotency/min-safe-ttl.ts","../../src/idempotency/in-memory.ts"],"sourcesContent":["/**\n * @module act-ops/idempotency/min-safe-ttl\n *\n * Internal math for sizing the dedup window of an\n * {@link IdempotencyStore} from a sender's retry profile.\n *\n * **Not re-exported from the package root** by design — the math is\n * an implementation detail of {@link InMemoryIdempotencyStore} (and\n * any future durable adapter). Operators configure dedup windows\n * through the store's `retryProfile` option, not by calling this\n * function directly. Tests import it from this path; external\n * consumers can't reach it.\n */\n\n/**\n * A sender's retry behaviour, described in enough detail to size a\n * receiver-side dedup window correctly. The `backoff` shape is typed\n * inline structurally so it's assignable from `@rotorsoft/act`'s\n * `BackoffOptions` without this package importing the framework\n * (the zero-act-dep load-bearing constraint of `@rotorsoft/act-ops`).\n * A caller holding `act.BackoffOptions` can pass it as `backoff`\n * with no cast — TypeScript treats the two shapes as equivalent.\n *\n * @property maxRetries - Retries after the first attempt fails\n * @property backoff - Optional backoff strategy. When omitted,\n * retries fire back-to-back with only the per-attempt timeout\n * between them\n * @property timeoutMs - Per-attempt timeout (the sender's `fetch`\n * timeout, or the equivalent for whatever transport)\n * @property safetyFactor - Multiplier applied to the bare envelope.\n * Default 4\n */\nexport type RetryProfile = {\n readonly maxRetries: number;\n readonly backoff?: {\n readonly strategy: \"fixed\" | \"linear\" | \"exponential\";\n readonly baseMs: number;\n readonly maxMs?: number;\n readonly jitter?: boolean;\n };\n readonly timeoutMs: number;\n readonly safetyFactor?: number;\n};\n\n/**\n * Minimum safe TTL in milliseconds for a receiver-side\n * {@link IdempotencyStore} window, given the sender's retry profile.\n *\n * The envelope is:\n *\n * ttl = (backoff_sum + (maxRetries + 1) * timeoutMs) * safetyFactor\n *\n * where `backoff_sum` is the sum of per-retry delays from the chosen\n * `strategy`, multiplied by 1.5 if `jitter` is enabled (the\n * worst-case multiplier in `[0.5, 1.5)`). `safetyFactor` defaults\n * to 4 because operators almost always want headroom over the bare\n * envelope — slow networks, clock skew, and incident-window retries\n * stretch the real-world maximum past the computed one.\n */\nexport function minSafeTtl(profile: RetryProfile): number {\n const safetyFactor = profile.safetyFactor ?? 4;\n const backoff_sum = sum_backoff(profile.maxRetries, profile.backoff);\n const timeout_sum = (profile.maxRetries + 1) * profile.timeoutMs;\n return (backoff_sum + timeout_sum) * safetyFactor;\n}\n\nfunction sum_backoff(\n maxRetries: number,\n backoff: RetryProfile[\"backoff\"]\n): number {\n if (!backoff) return 0;\n let sum = 0;\n for (let retry = 0; retry < maxRetries; retry++) {\n sum += delay_for(retry, backoff);\n }\n return backoff.jitter ? sum * 1.5 : sum;\n}\n\nfunction delay_for(\n retry: number,\n backoff: NonNullable<RetryProfile[\"backoff\"]>\n): number {\n switch (backoff.strategy) {\n case \"fixed\":\n return backoff.baseMs;\n case \"linear\":\n return backoff.baseMs * (retry + 1);\n case \"exponential\": {\n const raw = backoff.baseMs * 2 ** retry;\n return backoff.maxMs !== undefined ? Math.min(raw, backoff.maxMs) : raw;\n }\n }\n}\n","import { minSafeTtl, type RetryProfile } from \"./min-safe-ttl.js\";\nimport type { IdempotencyStore } from \"./port.js\";\n\n/**\n * Options for {@link InMemoryIdempotencyStore}. Defaults are sized\n * for a single-process receiver paired with a sender using the\n * standard `webhook` backoff envelope (`exponential` up to\n * `maxMs: 30_000`, `maxRetries: 5`).\n *\n * The dedup window is set in one of two ways:\n *\n * - {@link ttlMs} — pass a number directly when you've already\n * computed the window, or just want the 24-hour default that\n * covers any reasonable sender retry envelope.\n * - {@link retryProfile} — pass the sender's retry profile and the\n * store derives the minimum safe window for you. The math\n * (per-retry backoff sums, per-attempt timeouts, jitter\n * worst-case 1.5×, default 4× safety factor) is hidden inside the\n * store — see [external integration](https://rotorsoft.github.io/act-root/docs/guides/external-integration#ttl-sizing)\n * for the math explained.\n *\n * When both are supplied, {@link ttlMs} wins — an explicit number\n * overrides a derived one.\n */\nexport type InMemoryIdempotencyStoreOptions = {\n /** Direct dedup window. Default: 24 hours. */\n ttlMs?: number;\n /** Sender's retry profile — used to derive `ttlMs` when not supplied. */\n retryProfile?: RetryProfile;\n /** Memory bound — oldest entries are evicted past this size. Default: 100,000. */\n maxEntries?: number;\n};\n\n/**\n * Bounded LRU + TTL implementation of {@link IdempotencyStore} for\n * single-process receivers (the wolfdesk demo, integration tests,\n * dev loops). Multi-process receivers should swap for a durable\n * adapter (Postgres unique index, Redis `SET NX`) — the\n * {@link IdempotencyStore} contract stays the same so the call site\n * doesn't change.\n *\n * Map iteration is insertion-ordered, so:\n * - The oldest entry sits at `keys().next().value` (cheapest to evict).\n * - GC walks until the first non-expired entry and stops.\n *\n * `claim` is sync; durable adapters return a `Promise<boolean>` —\n * both satisfy the union return type in the port.\n */\nexport class InMemoryIdempotencyStore implements IdempotencyStore {\n private readonly _seen = new Map<string, number>();\n private readonly _ttl_ms: number;\n private readonly _max_entries: number;\n\n constructor(options?: InMemoryIdempotencyStoreOptions) {\n this._ttl_ms =\n options?.ttlMs ??\n (options?.retryProfile !== undefined\n ? minSafeTtl(options.retryProfile)\n : 24 * 60 * 60 * 1000);\n this._max_entries = options?.maxEntries ?? 100_000;\n }\n\n claim(key: string, now: number = Date.now()): boolean {\n this._gc(now);\n if (this._seen.has(key)) return false;\n this._seen.set(key, now + this._ttl_ms);\n if (this._seen.size > this._max_entries) {\n // Safe by construction: `_seen.size > _max_entries >= 0` implies at\n // least one entry, so `.next().value` resolves to a string key.\n const oldest = this._seen.keys().next().value as string;\n this._seen.delete(oldest);\n }\n return true;\n }\n\n /** Number of entries currently tracked (post-GC at call time). */\n size(now: number = Date.now()): number {\n this._gc(now);\n return this._seen.size;\n }\n\n /** Drop every entry — test hook. */\n clear(): void {\n this._seen.clear();\n }\n\n private _gc(now: number): void {\n for (const [key, expires_at] of this._seen) {\n if (expires_at > now) break;\n this._seen.delete(key);\n }\n }\n}\n"],"mappings":";AA2DO,SAAS,WAAW,SAA+B;AACxD,QAAM,eAAe,QAAQ,gBAAgB;AAC7C,QAAM,cAAc,YAAY,QAAQ,YAAY,QAAQ,OAAO;AACnE,QAAM,eAAe,QAAQ,aAAa,KAAK,QAAQ;AACvD,UAAQ,cAAc,eAAe;AACvC;AAEA,SAAS,YACP,YACA,SACQ;AACR,MAAI,CAAC,QAAS,QAAO;AACrB,MAAI,MAAM;AACV,WAAS,QAAQ,GAAG,QAAQ,YAAY,SAAS;AAC/C,WAAO,UAAU,OAAO,OAAO;AAAA,EACjC;AACA,SAAO,QAAQ,SAAS,MAAM,MAAM;AACtC;AAEA,SAAS,UACP,OACA,SACQ;AACR,UAAQ,QAAQ,UAAU;AAAA,IACxB,KAAK;AACH,aAAO,QAAQ;AAAA,IACjB,KAAK;AACH,aAAO,QAAQ,UAAU,QAAQ;AAAA,IACnC,KAAK,eAAe;AAClB,YAAM,MAAM,QAAQ,SAAS,KAAK;AAClC,aAAO,QAAQ,UAAU,SAAY,KAAK,IAAI,KAAK,QAAQ,KAAK,IAAI;AAAA,IACtE;AAAA,EACF;AACF;;;AC5CO,IAAM,2BAAN,MAA2D;AAAA,EAC/C,QAAQ,oBAAI,IAAoB;AAAA,EAChC;AAAA,EACA;AAAA,EAEjB,YAAY,SAA2C;AACrD,SAAK,UACH,SAAS,UACR,SAAS,iBAAiB,SACvB,WAAW,QAAQ,YAAY,IAC/B,KAAK,KAAK,KAAK;AACrB,SAAK,eAAe,SAAS,cAAc;AAAA,EAC7C;AAAA,EAEA,MAAM,KAAa,MAAc,KAAK,IAAI,GAAY;AACpD,SAAK,IAAI,GAAG;AACZ,QAAI,KAAK,MAAM,IAAI,GAAG,EAAG,QAAO;AAChC,SAAK,MAAM,IAAI,KAAK,MAAM,KAAK,OAAO;AACtC,QAAI,KAAK,MAAM,OAAO,KAAK,cAAc;AAGvC,YAAM,SAAS,KAAK,MAAM,KAAK,EAAE,KAAK,EAAE;AACxC,WAAK,MAAM,OAAO,MAAM;AAAA,IAC1B;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,KAAK,MAAc,KAAK,IAAI,GAAW;AACrC,SAAK,IAAI,GAAG;AACZ,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA;AAAA,EAGA,QAAc;AACZ,SAAK,MAAM,MAAM;AAAA,EACnB;AAAA,EAEQ,IAAI,KAAmB;AAC7B,eAAW,CAAC,KAAK,UAAU,KAAK,KAAK,OAAO;AAC1C,UAAI,aAAa,IAAK;AACtB,WAAK,MAAM,OAAO,GAAG;AAAA,IACvB;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // src/receiver/index.ts
17
+ var receiver_exports = {};
18
+ module.exports = __toCommonJS(receiver_exports);
19
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/receiver/index.ts"],"sourcesContent":["/**\n * @packageDocumentation\n * @module act-ops/receiver\n *\n * Generic inbound-receiver port. Transport-agnostic — the same\n * `Receiver` interface fits HTTP webhooks (shipped today), bus\n * consumers (Kafka/SQS/NATS/RabbitMQ — future tickets), CDC streams,\n * WebSocket subscribers, scheduled pollers, and any other \"external\n * events arrive into this Act app\" pattern.\n *\n * Operators who pick act-ops get the opinionated path: pick a\n * transport adapter (today: `@rotorsoft/act-http/receiver` for HTTP\n * webhooks), register typed handlers fluently with Zod schemas,\n * `.build()` to finalize, then `.listen()` (Node server) or\n * `.fetch(request)` (Lambda / edge).\n *\n * ```ts\n * import { webhookReceiver } from \"@rotorsoft/act-http/receiver\";\n * import { InMemoryIdempotencyStore } from \"@rotorsoft/act-ops/idempotency\";\n * import { z } from \"zod\";\n *\n * const receiver = webhookReceiver({\n * port: 4001,\n * store: new InMemoryIdempotencyStore(),\n * secret: process.env.WEBHOOK_SECRET,\n * })\n * .on(\"OrderConfirmed\", z.object({ orderId: z.string() }), async (event, ctx) => {\n * // event is typed; ctx.key is the dedup key\n * })\n * .build();\n *\n * await receiver.listen();\n * ```\n *\n * Matches Act's builder pattern: the factory returns a\n * {@link ReceiverBuilder} that collects handlers; `.build()`\n * finalizes and produces an immutable {@link Receiver} with only\n * runtime methods. You can't accidentally register a handler on a\n * running receiver — the lifecycle phases are split at the type\n * level.\n *\n * For operators who want fine control — custom path routing, auth\n * middleware composition, non-standard HTTP server lifecycle — the\n * lower-level `webhookMiddleware` factory in\n * `@rotorsoft/act-http/receiver/<framework>` stays available as the\n * escape hatch.\n */\n\nexport type {\n Receiver,\n ReceiverBuilder,\n ReceiverContext,\n ReceiverOptions,\n Validator,\n} from \"./port.js\";\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@rotorsoft/act-ops",
3
3
  "type": "module",
4
- "version": "0.1.0",
4
+ "version": "0.2.1",
5
5
  "description": "Operational primitives for act apps and act-independent receivers — idempotency, retry budgets, poison-message classifiers",
6
6
  "keywords": [
7
7
  "typescript",
@@ -30,11 +30,16 @@
30
30
  "types": "./dist/@types/idempotency/index.d.ts",
31
31
  "import": "./dist/idempotency/index.js",
32
32
  "require": "./dist/idempotency/index.cjs"
33
+ },
34
+ "./receiver": {
35
+ "types": "./dist/@types/receiver/index.d.ts",
36
+ "import": "./dist/receiver/index.js",
37
+ "require": "./dist/receiver/index.cjs"
33
38
  }
34
39
  },
35
40
  "sideEffects": false,
36
41
  "engines": {
37
- "node": ">=22.18.0"
42
+ "node": ">=22.22.3"
38
43
  },
39
44
  "publishConfig": {
40
45
  "access": "public"