@rotorsoft/act-pg 0.0.2
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/LICENSE +21 -0
- package/README.md +3 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/PostgresStore.d.ts +50 -0
- package/dist/PostgresStore.d.ts.map +1 -0
- package/dist/PostgresStore.js +208 -0
- package/dist/PostgresStore.js.map +1 -0
- package/dist/config.d.ts +24 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +21 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/seed.d.ts +2 -0
- package/dist/seed.d.ts.map +1 -0
- package/dist/seed.js +46 -0
- package/dist/seed.js.map +1 -0
- package/dist/utils.d.ts +2 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +19 -0
- package/dist/utils.js.map +1 -0
- package/package.json +34 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2021 Roger Torres
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.full.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/helpers/typeAliases.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/helpers/util.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/ZodError.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/locales/en.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/errors.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/helpers/parseUtil.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/helpers/enumUtil.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/helpers/errorUtil.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/helpers/partialUtil.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/standard-schema.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/types.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/external.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/lib/index.d.ts","../../../node_modules/.pnpm/zod@3.24.2/node_modules/zod/index.d.ts","../../act/dist/config.d.ts","../../act/dist/types/schemas.d.ts","../../act/dist/types/action.d.ts","../../act/dist/types/errors.d.ts","../../act/dist/types/reaction.d.ts","../../act/dist/types/ports.d.ts","../../act/dist/types/registry.d.ts","../../act/dist/types/index.d.ts","../../act/dist/act.d.ts","../../act/dist/builder.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/buffer@5.7.1/node_modules/buffer/index.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/file.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/filereader.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/dom-events.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@22.13.5/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/pino-std-serializers@7.0.0/node_modules/pino-std-serializers/index.d.ts","../../../node_modules/.pnpm/sonic-boom@4.2.0/node_modules/sonic-boom/types/index.d.ts","../../../node_modules/.pnpm/pino@9.6.0/node_modules/pino/pino.d.ts","../../act/dist/ports.d.ts","../../act/dist/utils.d.ts","../../act/dist/index.d.ts","../../../node_modules/.pnpm/pg-types@4.0.2/node_modules/pg-types/index.d.ts","../../../node_modules/.pnpm/pg-protocol@1.7.1/node_modules/pg-protocol/dist/messages.d.ts","../../../node_modules/.pnpm/pg-protocol@1.7.1/node_modules/pg-protocol/dist/serializer.d.ts","../../../node_modules/.pnpm/pg-protocol@1.7.1/node_modules/pg-protocol/dist/parser.d.ts","../../../node_modules/.pnpm/pg-protocol@1.7.1/node_modules/pg-protocol/dist/index.d.ts","../../../node_modules/.pnpm/@types+pg@8.11.11/node_modules/@types/pg/index.d.ts","../src/config.ts","../src/seed.ts","../src/utils.ts","../src/PostgresStore.ts","../src/index.ts","../../../node_modules/.pnpm/@vitest+pretty-format@3.0.7/node_modules/@vitest/pretty-format/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@3.0.7/node_modules/@vitest/utils/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@3.0.7/node_modules/@vitest/utils/dist/helpers.d.ts","../../../node_modules/.pnpm/tinyrainbow@2.0.0/node_modules/tinyrainbow/dist/index-8b61d5bc.d.ts","../../../node_modules/.pnpm/tinyrainbow@2.0.0/node_modules/tinyrainbow/dist/node.d.ts","../../../node_modules/.pnpm/@vitest+utils@3.0.7/node_modules/@vitest/utils/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+runner@3.0.7/node_modules/@vitest/runner/dist/tasks-CAp19cBR.d.ts","../../../node_modules/.pnpm/@vitest+utils@3.0.7/node_modules/@vitest/utils/dist/types-6R1G1gkS.d.ts","../../../node_modules/.pnpm/@vitest+utils@3.0.7/node_modules/@vitest/utils/dist/diff.d.ts","../../../node_modules/.pnpm/@vitest+runner@3.0.7/node_modules/@vitest/runner/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@3.0.7/node_modules/@vitest/utils/dist/error.d.ts","../../../node_modules/.pnpm/@vitest+runner@3.0.7/node_modules/@vitest/runner/dist/index.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/environment.d8YfPkTm.d.ts","../../../node_modules/.pnpm/@types+estree@1.0.6/node_modules/@types/estree/index.d.ts","../../../node_modules/.pnpm/rollup@4.34.8/node_modules/rollup/dist/rollup.d.ts","../../../node_modules/.pnpm/rollup@4.34.8/node_modules/rollup/dist/parseAst.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/types/hmrPayload.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/types/customEvent.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/types/hot.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/dist/node/moduleRunnerTransport.d-CXw_Ws6P.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/dist/node/module-runner.d.ts","../../../node_modules/.pnpm/esbuild@0.25.0/node_modules/esbuild/lib/main.d.ts","../../../node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/source-map.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/previous-map.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/input.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/css-syntax-error.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/declaration.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/root.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/warning.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/lazy-result.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/no-work-result.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/processor.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/result.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/document.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/rule.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/node.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/comment.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/container.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/at-rule.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/list.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/postcss.d.ts","../../../node_modules/.pnpm/postcss@8.5.3/node_modules/postcss/lib/postcss.d.mts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/types/internal/lightningcssOptions.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/types/internal/cssPreprocessorOptions.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/types/importGlob.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/types/metadata.d.ts","../../../node_modules/.pnpm/vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite/dist/node/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@3.0.7/node_modules/@vitest/utils/dist/source-map.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@3.0.7/node_modules/@vitest/snapshot/dist/environment-Ddx0EDtY.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@3.0.7/node_modules/@vitest/snapshot/dist/rawSnapshot-DOKg5unn.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@3.0.7/node_modules/@vitest/snapshot/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@3.0.7/node_modules/@vitest/snapshot/dist/environment.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/config.BRtC-JeT.d.ts","../../../node_modules/.pnpm/vite-node@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite-node/dist/trace-mapping.d-DLVdEqOp.d.ts","../../../node_modules/.pnpm/vite-node@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite-node/dist/index-LQxw79Gm.d.ts","../../../node_modules/.pnpm/vite-node@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vite-node/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+runner@3.0.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@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/benchmark.CFFwLv-O.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@3.0.7/node_modules/@vitest/snapshot/dist/manager.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/reporters.QZ837uWx.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/worker.DaAIyCKm.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/worker.B2JXutr8.d.ts","../../../node_modules/.pnpm/@vitest+expect@3.0.7/node_modules/@vitest/expect/dist/chai.d.cts","../../../node_modules/.pnpm/@vitest+spy@3.0.7/node_modules/@vitest/spy/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+expect@3.0.7/node_modules/@vitest/expect/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+expect@3.0.7/node_modules/@vitest/expect/index.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/global.CnI8_G5V.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/vite.vM3UZq1q.d.ts","../../../node_modules/.pnpm/@vitest+mocker@3.0.7_vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0_/node_modules/@vitest/mocker/dist/types-DZOqTgiN.d.ts","../../../node_modules/.pnpm/@vitest+mocker@3.0.7_vite@6.2.0_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0_/node_modules/@vitest/mocker/dist/index.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/mocker.cRtM890J.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/chunks/suite.qtkXWc6R.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/utils.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/overloads.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/branding.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/messages.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/index.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/dist/index.d.ts","../../../node_modules/.pnpm/vitest@3.0.7_@types+node@22.13.5_tsx@4.19.3_yaml@2.7.0/node_modules/vitest/globals.d.ts"],"fileIdsList":[[112,155,211,217,218,219,220],[96,112,155,211],[112,155,218,221],[112,155],[104,112,155],[104,105,112,155],[96,112,155],[97,104,105,106,112,155,209,210],[104,112,155,208],[96,98,112,155],[99,112,155],[98,99,100,101,102,103,112,155],[99,101,112,155],[96,99,101,112,155],[96,104,112,155],[112,152,155],[112,154,155],[155],[112,155,160,190],[112,155,156,161,167,168,175,187,198],[112,155,156,157,167,175],[107,108,109,112,155],[112,155,158,199],[112,155,159,160,168,176],[112,155,160,187,195],[112,155,161,163,167,175],[112,154,155,162],[112,155,163,164],[112,155,167],[112,155,165,167],[112,154,155,167],[112,155,167,168,169,187,198],[112,155,167,168,169,182,187,190],[112,150,155,203],[112,150,155,163,167,170,175,187,198],[112,155,167,168,170,171,175,187,195,198],[112,155,170,172,187,195,198],[110,111,112,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,196,197,198,199,200,201,202,203,204],[112,155,167,173],[112,155,174,198],[112,155,163,167,175,187],[112,155,176],[112,155,177],[112,154,155,178],[112,152,153,154,155,156,157,158,159,160,161,162,163,164,165,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,196,197,198,199,200,201,202,203,204],[112,155,180],[112,155,181],[112,155,167,182,183],[112,155,182,184,199,201],[112,155,167,187,188,189,190],[112,155,187,189],[112,155,187,188],[112,155,190],[112,155,191],[112,152,155,187],[112,155,167,193,194],[112,155,193,194],[112,155,160,175,187,195],[112,155,196],[112,155,175,197],[112,155,170,181,198],[112,155,160,199],[112,155,187,200],[112,155,174,201],[112,155,202],[112,155,160,167,169,178,187,198,201,203],[112,155,187,204],[112,155,167,187,195,205,212,213,216,217],[112,155,227,228,231,287],[112,155,288],[112,155,292],[112,155,228,229,231,232,233],[112,155,228],[112,155,228,229,231],[112,155,228,229],[112,155,271],[112,155,223,271,272],[112,155,223,271],[112,155,223,230],[112,155,224],[112,155,223,224,225,227],[112,155,223],[112,155,296,297],[112,155,296,297,298,299],[112,155,296,298],[112,155,296],[112,155,205,213,214,215],[112,155,205],[112,155,187,205,213],[112,155,170,205],[112,155,167,203,206,207],[112,155,260],[112,155,258,260],[112,155,249,257,258,259,261],[112,155,247],[112,155,250,255,260,263],[112,155,246,263],[112,155,250,251,254,255,256,263],[112,155,250,251,252,254,255,263],[112,155,247,248,249,250,251,255,256,257,259,260,261,263],[112,155,263],[112,155,245,247,248,249,250,251,252,254,255,256,257,258,259,260,261,262],[112,155,245,263],[112,155,250,252,253,255,256,263],[112,155,254,263],[112,155,255,256,260,263],[112,155,248,258],[112,155,237,268,269],[112,155,236,237],[112,155,167,205],[112,155,226],[112,122,126,155,198],[112,122,155,187,198],[112,117,155],[112,119,122,155,195,198],[112,155,175,195],[112,117,155,205],[112,119,122,155,175,198],[112,114,115,118,121,155,167,187,198],[112,122,129,155],[112,114,120,155],[112,122,143,144,155],[112,118,122,155,190,198,205],[112,143,155,205],[112,116,117,155,205],[112,122,155],[112,116,117,118,119,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,144,145,146,147,148,149,155],[112,122,137,155],[112,122,129,130,155],[112,120,122,130,131,155],[112,121,155],[112,114,117,122,155],[112,122,126,130,131,155],[112,126,155],[112,120,122,125,155,198],[112,114,119,122,129,155],[112,155,187],[112,117,122,143,155,203,205],[112,155,276],[112,155,276,277],[112,155,167,168,170,171,172,175,187,195,198,204,205,237,238,239,240,242,243,244,264,265,266,267,268,269],[112,155,239,240,241,242],[112,155,239],[112,155,240],[112,155,237,269],[112,155,234,279,280,290],[112,155,223,231,234,273,274,290],[112,155,223,234,235,273,281,289,290],[112,155,293],[112,155,168,187,223,228,231,234,235,269,270,273,275,278,281,282,286,290,291],[112,155,234,279,280,281,290],[112,155,269,283],[112,155,203,284],[112,155,234,235,273,275,278,290],[112,155,168,187,203,223,228,231,234,235,269,270,273,274,275,278,279,280,281,282,283,284,285,286,287,289,290,291,293,294,295,300],[112,155,301],[95,112,155],[83,84,95,112,155],[85,86,112,155],[83,84,85,87,88,93,112,155],[84,85,112,155],[94,112,155],[85,112,155],[83,84,85,88,89,90,91,92,112,155]],"fileInfos":[{"version":"e41c290ef7dd7dab3493e6cbe5909e0148edf4a8dad0271be08edec368a0f7b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"e12a46ce14b817d4c9e6b2b478956452330bf00c9801b79de46f7a1815b5bd40","impliedFormat":1},{"version":"4fd3f3422b2d2a3dfd5cdd0f387b3a8ec45f006c6ea896a4cb41264c2100bb2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"69e65d976bf166ce4a9e6f6c18f94d2424bf116e90837ace179610dbccad9b42","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"62bb211266ee48b2d0edf0d8d1b191f0c24fc379a82bd4c1692a082c540bc6b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f1e2a172204962276504466a6393426d2ca9c54894b1ad0a6c9dad867a65f876","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"b5ce7a470bc3628408429040c4e3a53a27755022a32fd05e2cb694e7015386c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"bab26767638ab3557de12c900f0b91f710c7dc40ee9793d5a27d32c04f0bf646","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"61d6a2092f48af66dbfb220e31eea8b10bc02b6932d6e529005fd2d7b3281290","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"bde31fd423cd93b0eff97197a3f66df7c93e8c0c335cbeb113b7ff1ac35c23f4","impliedFormat":1},{"version":"d3cfde44f8089768ebb08098c96d01ca260b88bccf238d55eee93f1c620ff5a5","impliedFormat":1},{"version":"b542939a35357458e62f8229c2d7578ae888d63d3ab837395d7bb8a3064c205e","impliedFormat":1},{"version":"3a5af4fba7b27b815bb40f52715aedebaa4b371da3e5a664e7e0798c9b638825","impliedFormat":1},{"version":"8485b6da53ec35637d072e516631d25dae53984500de70a6989058f24354666f","impliedFormat":1},{"version":"ebe80346928736532e4a822154eb77f57ef3389dbe2b3ba4e571366a15448ef2","impliedFormat":1},{"version":"49c632082dc8a916353288d3d8b2dc82b3471794249a381d090d960c8ceac908","impliedFormat":1},{"version":"f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","impliedFormat":1},{"version":"71addb585c2db7b8e53dc1b0bcfa58c6c67c6e4fa2b968942046749d66f82e7e","impliedFormat":1},{"version":"c76b0c5727302341d0bdfa2cc2cee4b19ff185b554edb6e8543f0661d8487116","impliedFormat":1},{"version":"25b3f581e12ede11e5739f57a86e8668fbc0124f6649506def306cad2c59d262","impliedFormat":1},{"version":"e703cfacb9965c4d4155346c65a0091ecded90ea98874ed6b3f36286577c4dde","impliedFormat":1},{"version":"f5ef066942e4f0bd98200aa6a6694b831e73200c9b3ade77ad0aa2409e8fe1b1","impliedFormat":1},{"version":"b9e99cd94f4166a245f5158f7286c05406e2a4c694619bceb7a4f3519d1d768e","impliedFormat":1},{"version":"5568d7c32e5cf5f35e092649f4e5e168c3114c800b1d7545b7ae5e0415704802","impliedFormat":1},"bb695545e7afc876988a81584cbf079dadbabfe83851c84939925aea89b36da0","80bc7ab936abaeffbc0f7d459afdf90dd3e7b65733a43be4322a7b35289190ea","5fa5e5054d520d24acc672ff7476f2f727e8fcc7d4089ed3fe9736cea6af2952","9df84ac083a7244640fb68fc922a10020c479dc109be1810e6dc6b24194ff58d","c562536d88d8ce3fc4f973febc4e7203b88a09f10079ecbacb3510f66d7ba2d6","7776cb87ae4059f78910b9e59f3f5a9a2cd53a98b06bf33ed4d7b125b0f7330e","efd20b1b6afec79414184abd75b410e2ce8520537452af680119ae5aec09a034","a8dd0ec64674674c140786a845094f3cf5e3aced198de5e0ecf2b36e1eb0330a","62f168a5120a228db4107a3ba435bd8f3b27caf799ebacc03126f92cae49a255","300a382a7f0359ebef36e6a3c068d9d452b0d8ce5293067342a09e8722c0b00b",{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"030e350db2525514580ed054f712ffb22d273e6bc7eddc1bb7eda1e0ba5d395e","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"13af9e8fb6757946c48117315866177b95e554d1e773577bb6ca6e40083b6d73","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"d2bc987ae352271d0d615a420dcf98cc886aa16b87fb2b569358c1fe0ca0773d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4f0539c58717cbc8b73acb29f9e992ab5ff20adba5f9b57130691c7f9b186a4d","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"76103716ba397bbb61f9fa9c9090dca59f39f9047cb1352b2179c5d8e7f4e8d0","impliedFormat":1},{"version":"53eac70430b30089a3a1959d8306b0f9cfaf0de75224b68ef25243e0b5ad1ca3","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"115971d64632ea4742b5b115fb64ed04bcaae2c3c342f13d9ba7e3f9ee39c4e7","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"86956cc2eb9dd371d6fab493d326a574afedebf76eef3fa7833b8e0d9b52d6f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"19d5f8d3930e9f99aa2c36258bf95abbe5adf7e889e6181872d1cdba7c9a7dd5","impliedFormat":1},{"version":"e6f5a38687bebe43a4cef426b69d34373ef68be9a6b1538ec0a371e69f309354","impliedFormat":1},{"version":"a6bf63d17324010ca1fbf0389cab83f93389bb0b9a01dc8a346d092f65b3605f","impliedFormat":1},{"version":"e009777bef4b023a999b2e5b9a136ff2cde37dc3f77c744a02840f05b18be8ff","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"88bc59b32d0d5b4e5d9632ac38edea23454057e643684c3c0b94511296f2998c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ff5a53a58e756d2661b73ba60ffe274231a4432d21f7a2d0d9e4f6aa99f4283","impliedFormat":1},{"version":"1e289f30a48126935a5d408a91129a13a59c9b0f8c007a816f9f16ef821e144e","impliedFormat":1},{"version":"2ea254f944dfe131df1264d1fb96e4b1f7d110195b21f1f5dbb68fdd394e5518","impliedFormat":1},{"version":"5135bdd72cc05a8192bd2e92f0914d7fc43ee077d1293dc622a049b7035a0afb","impliedFormat":1},{"version":"4f80de3a11c0d2f1329a72e92c7416b2f7eab14f67e92cac63bb4e8d01c6edc8","impliedFormat":1},{"version":"6d386bc0d7f3afa1d401afc3e00ed6b09205a354a9795196caed937494a713e6","impliedFormat":1},{"version":"b11cb909327c874a4e81bfb390bf0d231e5bf9439052689ab80ba8afa50da17b","affectsGlobalScope":true,"impliedFormat":1},{"version":"23459c1915878a7c1e86e8bdb9c187cddd3aea105b8b1dfce512f093c969bc7e","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"1dc73f8854e5c4506131c4d95b3a6c24d0c80336d3758e95110f4c7b5cb16397","affectsGlobalScope":true,"impliedFormat":1},{"version":"5f6f1d54779d0b9ed152b0516b0958cd34889764c1190434bbf18e7a8bb884cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"c6b4e0a02545304935ecbf7de7a8e056a31bb50939b5b321c9d50a405b5a0bba","impliedFormat":1},{"version":"fab29e6d649aa074a6b91e3bdf2bff484934a46067f6ee97a30fcd9762ae2213","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"e1120271ebbc9952fdc7b2dd3e145560e52e06956345e6fdf91d70ca4886464f","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"f7b1df115dbd1b8522cba4f404a9f4fdcd5169e2137129187ffeee9d287e4fd1","impliedFormat":1},{"version":"b52d379b4939681f3781d1cfd5b2c3cbb35e7e76f2425172e165782f8a08228c","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"745c4240220559bd340c8aeb6e3c5270a709d3565e934dc22a69c304703956bc","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"993985beef40c7d113f6dd8f0ba26eed63028b691fbfeb6a5b63f26408dd2c6d","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef91efa0baea5d0e0f0f27b574a8bc100ce62a6d7e70220a0d58af6acab5e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"282fd2a1268a25345b830497b4b7bf5037a5e04f6a9c44c840cb605e19fea841","impliedFormat":1},{"version":"5360a27d3ebca11b224d7d3e38e3e2c63f8290cb1fcf6c3610401898f8e68bc3","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7d6ff413e198d25639f9f01f16673e7df4e4bd2875a42455afd4ecc02ef156da","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb094bb347d7df3380299eb69836c2c8758626ecf45917577707c03cf816b6f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"f689c4237b70ae6be5f0e4180e8833f34ace40529d1acc0676ab8fb8f70457d7","impliedFormat":1},{"version":"b02784111b3fc9c38590cd4339ff8718f9329a6f4d3fd66e9744a1dcd1d7e191","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"52a8e7e8a1454b6d1b5ad428efae3870ffc56f2c02d923467f2940c454aa9aec","affectsGlobalScope":true,"impliedFormat":1},{"version":"78dc0513cc4f1642906b74dda42146bcbd9df7401717d6e89ea6d72d12ecb539","impliedFormat":1},{"version":"ad90122e1cb599b3bc06a11710eb5489101be678f2920f2322b0ac3e195af78d","impliedFormat":1},{"version":"4fe80f12b1d5189384a219095c2eabadbb389c2d3703aae7c5376dbaa56061df","impliedFormat":1},{"version":"9eb1d2dceae65d1c82fc6be7e9b6b19cf3ca93c364678611107362b6ad4d2d41","impliedFormat":1},{"version":"cf1dc1d2914dd0f9462bc04c394084304dff5196cce7b725029c792e4e622a5b","impliedFormat":1},"a13229a52166dd46b1c191555be13a6e88cf30b74326cef4cbabc86c16a04ce9","c842a6eb936b98c6244b56c5cdbd5de1d02eb5f0775a51bd61d549a1c96903e7","116e67e2d0e195a105a29ba2e36d6b8ee66746f8c1788ae29ccf9d6f56d7e787",{"version":"a589f9f052276a3fc00b75e62f73b93ea568fce3e935b86ed7052945f99d9dc2","impliedFormat":1},{"version":"17230b34bb564a3a2e36f9d3985372ccab4ad1722df2c43f7c5c2b553f68e5db","impliedFormat":1},{"version":"6e5c9272f6b3783be7bdddaf207cccdb8e033be3d14c5beacc03ae9d27d50929","impliedFormat":1},{"version":"9b4f7ff9681448c72abe38ea8eefd7ffe0c3aefe495137f02012a08801373f71","impliedFormat":1},{"version":"0dfe35191a04e8f9dc7caeb9f52f2ee07402736563d12cbccd15fb5f31ac877f","impliedFormat":1},{"version":"c21e3729094ed9ecdcb97724ce5b20625bb9ac3b9146d681cafa97d667c12bb5","impliedFormat":1},{"version":"8b28a8eca2d1ade97008c92cde437497d47eaf4de3acddbdb883d56dd542515e","signature":"bad60de870cc33b38b8001b1e8137a7c35f76dfe537a6ce69a98078e87bf80f1"},{"version":"d86fd3a534db7699c994f439c9235e9053117fa92cd7b755db07cbe795792303","signature":"ce8cdaa98f44cbb71698eae9457cd868cebfecfd8f2665f7bb2cd9e4663bae16"},{"version":"a42930b1b638965fee370235fcfb918208fae64d3ea61a7cb401d363528bc76d","signature":"2749ba74f545749ebd28cc5595998a794738dae9ae804774918246d8f6ec52e4"},{"version":"ed5cdc0cdbafab6355d2cbb5c24862b85b1bca8badbcf9274c9526ce55cb5f13","signature":"084fa73f5824486583e324a6846a94a5698e7ca52bfbe724ad55ccc5aca1d632"},"58b3fd4e39adf141216a5a2e9a99244be828c3993747426bc16a4f99683e531f",{"version":"e50a264056a32b459417ac9f51d31ba73c672e73a6ed82b098192cd432d3d4ad","impliedFormat":99},{"version":"369ba5259e66ca8c7d35e3234f7a2a0863a770fdb8266505747c65cf346a0804","impliedFormat":99},{"version":"64d984f55025daf604f670b7dfd090ea765f2098aee871174ef2ee3e94479098","impliedFormat":99},{"version":"f9b028d3c3891dd817e24d53102132b8f696269309605e6ed4f0db2c113bbd82","impliedFormat":99},{"version":"fb7c8d90e52e2884509166f96f3d591020c7b7977ab473b746954b0c8d100960","impliedFormat":99},{"version":"9651cce552b774dd47aa930bcf57f78595dbfce277d32be829861129c37ba25e","impliedFormat":99},{"version":"7ccbe015bea4da32bd5e69a883c7f4ce50b6ae1c74de3ef57f10f2fefdfc82ea","impliedFormat":99},{"version":"02c8f6aff21cf65dd98a2d08f36be5f1eb859a94c242ec5999ba07510d9d4ed9","impliedFormat":99},{"version":"b57c462049b5a994dea96a0ddf45a9d2e1b807d0755a05be787b6551de3a5d3e","impliedFormat":99},{"version":"59ebc58c2b8286e9bb42d102e5c16b66c56f54d025b7114ec3b116e9b575782c","impliedFormat":99},{"version":"73e973b4a988435ff67545bce945b15974f55a34d5209a605af8a0bf0046dd7c","impliedFormat":99},{"version":"5d0e44deee096e8456c6ac7e701e5e44037f1929a46f5efbb7b844013e6f3054","impliedFormat":99},{"version":"0622a4b34384dda296d3321e63790bcaa5bb76e60ba3f311ce38667c171f7169","impliedFormat":99},{"version":"785b9d575b49124ce01b46f5b9402157c7611e6532effa562ac6aebec0074dfc","impliedFormat":1},{"version":"1caec58c119ec3e32e181256dd8fa6dd12b081aa2399a5fcf4cccc5c6578fab2","affectsGlobalScope":true,"impliedFormat":1},{"version":"a660aa95476042d3fdcc1343cf6bb8fdf24772d31712b1db321c5a4dcc325434","impliedFormat":1},{"version":"02b1133807234b1a7d9bf9b1419ee19444dd8c26b101bc268aa8181591241f1f","impliedFormat":1},{"version":"6222e987b58abfe92597e1273ad7233626285bc2d78409d4a7b113d81a83496b","impliedFormat":1},{"version":"cbe726263ae9a7bf32352380f7e8ab66ee25b3457137e316929269c19e18a2be","impliedFormat":1},{"version":"0a25f947e7937ee5e01a21eb10d49de3b467eba752d3b42ea442e9e773f254ef","impliedFormat":99},{"version":"f11151a83668f94c1e763e39d89c0022ceb74618f1bfcf67596044acbe306094","impliedFormat":99},{"version":"b8caba62c0d2ef625f31cbb4fde09d851251af2551086ccf068611b0a69efd81","affectsGlobalScope":true,"impliedFormat":1},{"version":"402e5c534fb2b85fa771170595db3ac0dd532112c8fa44fc23f233bc6967488b","impliedFormat":1},{"version":"8885cf05f3e2abf117590bbb951dcf6359e3e5ac462af1c901cfd24c6a6472e2","impliedFormat":1},{"version":"33f3718dababfc26dfd9832c150149ea4e934f255130f8c118a59ae69e5ed441","impliedFormat":1},{"version":"e61df3640a38d535fd4bc9f4a53aef17c296b58dc4b6394fd576b808dd2fe5e6","impliedFormat":1},{"version":"459920181700cec8cbdf2a5faca127f3f17fd8dd9d9e577ed3f5f3af5d12a2e4","impliedFormat":1},{"version":"4719c209b9c00b579553859407a7e5dcfaa1c472994bd62aa5dd3cc0757eb077","impliedFormat":1},{"version":"7ec359bbc29b69d4063fe7dad0baaf35f1856f914db16b3f4f6e3e1bca4099fa","impliedFormat":1},{"version":"70790a7f0040993ca66ab8a07a059a0f8256e7bb57d968ae945f696cbff4ac7a","impliedFormat":1},{"version":"d1b9a81e99a0050ca7f2d98d7eedc6cda768f0eb9fa90b602e7107433e64c04c","impliedFormat":1},{"version":"a022503e75d6953d0e82c2c564508a5c7f8556fad5d7f971372d2d40479e4034","impliedFormat":1},{"version":"b215c4f0096f108020f666ffcc1f072c81e9f2f95464e894a5d5f34c5ea2a8b1","impliedFormat":1},{"version":"644491cde678bd462bb922c1d0cfab8f17d626b195ccb7f008612dc31f445d2d","impliedFormat":1},{"version":"dfe54dab1fa4961a6bcfba68c4ca955f8b5bbeb5f2ab3c915aa7adaa2eabc03a","impliedFormat":1},{"version":"1bb61aa2f08ab4506d41dbe16c5f3f5010f014bbf46fa3d715c0cbe3b00f4e1c","impliedFormat":1},{"version":"47865c5e695a382a916b1eedda1b6523145426e48a2eae4647e96b3b5e52024f","impliedFormat":1},{"version":"e42820cd611b15910c204cd133f692dcd602532b39317d4f2a19389b27e6f03d","impliedFormat":1},{"version":"331b8f71bfae1df25d564f5ea9ee65a0d847c4a94baa45925b6f38c55c7039bf","impliedFormat":1},{"version":"2a771d907aebf9391ac1f50e4ad37952943515eeea0dcc7e78aa08f508294668","impliedFormat":1},{"version":"0146fd6262c3fd3da51cb0254bb6b9a4e42931eb2f56329edd4c199cb9aaf804","impliedFormat":1},{"version":"183f480885db5caa5a8acb833c2be04f98056bdcc5fb29e969ff86e07efe57ab","impliedFormat":99},{"version":"4ec16d7a4e366c06a4573d299e15fe6207fc080f41beac5da06f4af33ea9761e","impliedFormat":1},{"version":"7870becb94cbc11d2d01b77c4422589adcba4d8e59f726246d40cd0d129784d8","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f698624bbbb060ece7c0e51b7236520ebada74b747d7523c7df376453ed6fea","impliedFormat":1},{"version":"8f07f2b6514744ac96e51d7cb8518c0f4de319471237ea10cf688b8d0e9d0225","impliedFormat":1},{"version":"08971f8379717d46a8a990ce9a7eed3af3e47e22c3d45c3a046054b7a2fffe7a","impliedFormat":99},{"version":"ce0c4a761774090ecb47021b107d8d9efc6b690c1ed16ec6879f211c13639a5e","impliedFormat":99},{"version":"e01ea380015ed698c3c0e2ccd0db72f3fc3ef1abc4519f122aa1c1a8d419a505","impliedFormat":99},{"version":"c7fde5a6ee862d639bac41c6849b44f7f8c7d959ccaacb6d549ce6a69af281cb","impliedFormat":99},{"version":"f7d64c3a7bb5c0b5c43811309afc1639251a582719ed3fc4afef507dac704d69","impliedFormat":99},{"version":"e3225dc0bec183183509d290f641786245e6652bc3dce755f7ef404060693c35","impliedFormat":99},{"version":"9b0b839bbfa7d4cb31e394c083b3a198b69143b10fcd11d7b77064a485a6c238","impliedFormat":99},{"version":"e6233e1c976265e85aa8ad76c3881febe6264cb06ae3136f0257e1eab4a6cc5a","impliedFormat":99},{"version":"989c2bc4011a6ad3a1b56884f42016096488f42508d85d0d504d031293d5a19f","impliedFormat":99},{"version":"5a42a2f306140fbc74555fd0ceed65539173ba5aad84b73ae52bbbb1378a8426","impliedFormat":99},{"version":"31071c944173aadf3a684a15878e0a60c70f45679a37480801b7c7cb73c2f677","impliedFormat":99},{"version":"69bf2422313487956e4dacf049f30cb91b34968912058d244cb19e4baa24da97","impliedFormat":99},{"version":"65aadb657a741460bdefe6241510546ebbcea42205335668c364c41a75bc22cb","impliedFormat":99},{"version":"38a61c9035359bce6f4183e56080b27bcf6a42c6e7fd2ec1d63c11887f4a2fb8","impliedFormat":99},{"version":"b5e58a9a3f232bfe54012aead8ad25282139f5f2078dda84e1294370fd0cc468","impliedFormat":99},{"version":"f93b65b5ec723e530fff0b378d564008742d43719a64f93a3222ec4117662d33","impliedFormat":99},{"version":"8f51e279763ad35ff8a7bc5055c06234afdb373a3c183baf5c7f7784af77c9c1","impliedFormat":99},{"version":"48c411efce1848d1ed55de41d7deb93cbf7c04080912fd87aa517ed25ef42639","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b946e90aa10b722b2a557ca4038d768c15f1b15c048a45650e20a5d80ba5056","impliedFormat":99},{"version":"50f77391e45d7e48ace79c388f9816edebf27f69909c5705aac909e25638d398","affectsGlobalScope":true,"impliedFormat":99},{"version":"fe2d63fcfdde197391b6b70daf7be8c02a60afa90754a5f4a04bdc367f62793d","impliedFormat":99},{"version":"a5b102c88eb46be4def5c291a78141b70b03b7df482fae7dc669970785b08a9b","affectsGlobalScope":true,"impliedFormat":99},{"version":"ce8c0951f2342077ac2bb0c1721831252917d244cb3617619d1beff4c86f2a4d","impliedFormat":99},{"version":"cbdc781d2429935c9c42acd680f2a53a9f633e8de03290ec6ea818e4f7bff19a","impliedFormat":99},{"version":"9f6d9f5dd710922f82f69abf9a324e28122b5f31ae6f6ce78427716db30a377e","impliedFormat":99},{"version":"ac2414a284bdecfd6ab7b87578744ab056cd04dd574b17853cd76830ef5b72f2","impliedFormat":99},{"version":"6cb1ea843f1bcb7d970f67b93b49f4e04d9aa167bd5a7e9d96b5641ec6708de5","impliedFormat":99},{"version":"2330087dfe056bbfd0f5590a99d1912ce6b4b6a65cca94466cdd142d55503e84","impliedFormat":1},{"version":"72422d0bac4076912385d0c10911b82e4694fc106e2d70added091f88f0824ba","impliedFormat":1},{"version":"da251b82c25bee1d93f9fd80c5a61d945da4f708ca21285541d7aff83ecb8200","impliedFormat":1},{"version":"4c8ca51077f382498f47074cf304d654aba5d362416d4f809dfdd5d4f6b3aaca","impliedFormat":1},{"version":"bcc1a744205fcd40c6c5c5fac042307fac6f9d6055a4f4e9b96f80599b9cd4cc","impliedFormat":1},{"version":"8f75304c9264c51bcae60b7f9570c21c7e9aed5c51833d19bd3e06ae5fc37684","impliedFormat":99},{"version":"381d27c35f5a5bf6c09dd238ec26fef30a03d12ea84589c621ebc208d7dc8378","affectsGlobalScope":true,"impliedFormat":99}],"root":[[218,222]],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":7,"noImplicitAny":true,"outDir":"./","preserveConstEnums":true,"rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":99,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[221,1],[218,2],[222,3],[219,4],[220,4],[105,5],[106,6],[97,7],[211,8],[209,9],[99,10],[100,11],[104,12],[102,13],[101,11],[103,14],[98,7],[210,15],[236,4],[152,16],[153,16],[154,17],[112,18],[155,19],[156,20],[157,21],[107,4],[110,22],[108,4],[109,4],[158,23],[159,24],[160,25],[161,26],[162,27],[163,28],[164,28],[166,29],[165,30],[167,31],[168,32],[169,33],[151,34],[111,4],[170,35],[171,36],[172,37],[205,38],[173,39],[174,40],[175,41],[176,42],[177,43],[178,44],[179,45],[180,46],[181,47],[182,48],[183,48],[184,49],[185,4],[186,4],[187,50],[189,51],[188,52],[190,53],[191,54],[192,55],[193,56],[194,57],[195,58],[196,59],[197,60],[198,61],[199,62],[200,63],[201,64],[202,65],[203,66],[204,67],[217,68],[286,4],[288,69],[289,70],[293,71],[292,4],[223,4],[234,72],[229,73],[232,74],[279,75],[271,4],[274,76],[273,77],[282,77],[272,78],[287,4],[231,79],[233,79],[225,80],[228,81],[270,80],[230,82],[224,4],[113,4],[244,4],[298,83],[300,84],[299,85],[297,86],[296,4],[216,87],[213,88],[215,89],[214,4],[212,4],[206,90],[208,91],[261,92],[259,93],[260,94],[248,95],[249,93],[256,96],[247,97],[252,98],[262,4],[253,99],[258,100],[264,101],[263,102],[246,103],[254,104],[255,105],[250,106],[257,92],[251,107],[238,108],[237,109],[207,110],[245,4],[280,4],[226,4],[227,111],[80,4],[81,4],[15,4],[13,4],[14,4],[19,4],[18,4],[2,4],[20,4],[21,4],[22,4],[23,4],[24,4],[25,4],[26,4],[27,4],[3,4],[28,4],[29,4],[4,4],[30,4],[34,4],[31,4],[32,4],[33,4],[35,4],[36,4],[37,4],[5,4],[38,4],[39,4],[40,4],[41,4],[6,4],[45,4],[42,4],[43,4],[44,4],[46,4],[7,4],[47,4],[52,4],[53,4],[48,4],[49,4],[50,4],[51,4],[8,4],[57,4],[54,4],[55,4],[56,4],[58,4],[9,4],[59,4],[60,4],[61,4],[63,4],[62,4],[64,4],[65,4],[10,4],[66,4],[67,4],[68,4],[11,4],[69,4],[70,4],[71,4],[72,4],[73,4],[1,4],[74,4],[75,4],[12,4],[78,4],[77,4],[82,4],[76,4],[79,4],[17,4],[16,4],[129,112],[139,113],[128,112],[149,114],[120,115],[119,116],[148,88],[142,117],[147,118],[122,119],[136,120],[121,121],[145,122],[117,123],[116,88],[146,124],[118,125],[123,126],[124,4],[127,126],[114,4],[150,127],[140,128],[131,129],[132,130],[134,131],[130,132],[133,133],[143,88],[125,134],[126,135],[135,136],[115,137],[138,128],[137,126],[141,4],[144,138],[277,139],[278,140],[276,4],[269,141],[243,142],[242,143],[240,143],[239,4],[241,144],[267,4],[266,4],[265,4],[268,145],[281,146],[275,147],[235,4],[290,148],[294,149],[283,150],[295,151],[291,152],[285,153],[284,154],[301,155],[302,156],[96,157],[85,158],[87,159],[94,160],[89,4],[90,4],[88,161],[91,157],[83,4],[84,4],[95,162],[86,163],[92,4],[93,164]],"latestChangedDtsFile":"./index.d.ts","version":"5.7.3"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { Committed, EventMeta, Lease, Message, Query, Schemas, Store } from "@rotorsoft/act";
|
|
2
|
+
export declare class PostgresStore implements Store {
|
|
3
|
+
readonly table: string;
|
|
4
|
+
readonly leaseMillis: number;
|
|
5
|
+
private _pool;
|
|
6
|
+
constructor(table: string, leaseMillis?: number);
|
|
7
|
+
dispose(): Promise<void>;
|
|
8
|
+
seed(): Promise<void>;
|
|
9
|
+
drop(): Promise<void>;
|
|
10
|
+
query<E extends Schemas>(callback: (event: Committed<E, keyof E>) => void, query?: Query, withSnaps?: boolean): Promise<number>;
|
|
11
|
+
commit<E extends Schemas>(stream: string, msgs: Message<E, keyof E>[], meta: EventMeta, expectedVersion?: number): Promise<(Message<E, keyof E> & Readonly<{
|
|
12
|
+
id: number;
|
|
13
|
+
stream: string;
|
|
14
|
+
version: number;
|
|
15
|
+
created: Date;
|
|
16
|
+
meta: Readonly<{
|
|
17
|
+
correlation: string;
|
|
18
|
+
causation: {
|
|
19
|
+
action?: (Readonly<{
|
|
20
|
+
stream: string;
|
|
21
|
+
actor: Readonly<{
|
|
22
|
+
id: string;
|
|
23
|
+
name: string;
|
|
24
|
+
}>;
|
|
25
|
+
expectedVersion?: number | undefined;
|
|
26
|
+
}> & {
|
|
27
|
+
name: string;
|
|
28
|
+
}) | undefined;
|
|
29
|
+
event?: {
|
|
30
|
+
id: number;
|
|
31
|
+
name: string;
|
|
32
|
+
stream: string;
|
|
33
|
+
} | undefined;
|
|
34
|
+
};
|
|
35
|
+
}>;
|
|
36
|
+
}>)[]>;
|
|
37
|
+
fetch<E extends Schemas>(limit: number): Promise<{
|
|
38
|
+
streams: string[];
|
|
39
|
+
events: Committed<E, keyof E>[];
|
|
40
|
+
}>;
|
|
41
|
+
lease(leases: Lease[]): Promise<{
|
|
42
|
+
stream: string;
|
|
43
|
+
by: string;
|
|
44
|
+
at: number;
|
|
45
|
+
retry: number;
|
|
46
|
+
block: boolean;
|
|
47
|
+
}[]>;
|
|
48
|
+
ack(leases: Lease[]): Promise<void>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=PostgresStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresStore.d.ts","sourceRoot":"","sources":["../src/PostgresStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,KAAK,EACL,OAAO,EACP,KAAK,EACL,OAAO,EACP,KAAK,EACN,MAAM,gBAAgB,CAAC;AAYxB,qBAAa,aAAc,YAAW,KAAK;IAIvC,QAAQ,CAAC,KAAK,EAAE,MAAM;IACtB,QAAQ,CAAC,WAAW;IAJtB,OAAO,CAAC,KAAK,CAAuB;gBAGzB,KAAK,EAAE,MAAM,EACb,WAAW,SAAS;IAEzB,OAAO;IAIP,IAAI;IAKJ,IAAI;IAKJ,KAAK,CAAC,CAAC,SAAS,OAAO,EAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,IAAI,EAChD,KAAK,CAAC,EAAE,KAAK,EACb,SAAS,UAAQ;IAmEb,MAAM,CAAC,CAAC,SAAS,OAAO,EAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,EAC3B,IAAI,EAAE,SAAS,EACf,eAAe,CAAC,EAAE,MAAM;;;;;;;;sBAsK2vB,CAAC;;;;;;mCAAqM,CAAC;;;;qBAAoH,CAAC;;;;;;;;IA3G3kC,KAAK,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,MAAM;;;;IAqBtC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE;;;;;;;IAwDrB,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE;CA6B1B"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
import { ConcurrencyError, SNAP_EVENT, logger } from "@rotorsoft/act";
|
|
2
|
+
import pg from "pg";
|
|
3
|
+
import { config } from "./config";
|
|
4
|
+
import { seed_store } from "./seed";
|
|
5
|
+
import { dateReviver } from "./utils";
|
|
6
|
+
const { Pool, types } = pg;
|
|
7
|
+
types.setTypeParser(types.builtins.JSONB, (val) => JSON.parse(val, dateReviver));
|
|
8
|
+
export class PostgresStore {
|
|
9
|
+
table;
|
|
10
|
+
leaseMillis;
|
|
11
|
+
_pool = new Pool(config.pg);
|
|
12
|
+
constructor(table, leaseMillis = 30_000) {
|
|
13
|
+
this.table = table;
|
|
14
|
+
this.leaseMillis = leaseMillis;
|
|
15
|
+
}
|
|
16
|
+
async dispose() {
|
|
17
|
+
await this._pool.end();
|
|
18
|
+
}
|
|
19
|
+
async seed() {
|
|
20
|
+
const seed = seed_store(this.table);
|
|
21
|
+
await this._pool.query(seed);
|
|
22
|
+
}
|
|
23
|
+
async drop() {
|
|
24
|
+
await this._pool.query(`DROP TABLE IF EXISTS "${this.table}"`);
|
|
25
|
+
await this._pool.query(`DROP TABLE IF EXISTS "${this.table}_streams"`);
|
|
26
|
+
}
|
|
27
|
+
async query(callback, query, withSnaps = false) {
|
|
28
|
+
const { stream, names, before, after, limit, created_before, created_after, backward, correlation, } = query || {};
|
|
29
|
+
let sql = `SELECT * FROM "${this.table}" WHERE`;
|
|
30
|
+
const values = [];
|
|
31
|
+
if (withSnaps)
|
|
32
|
+
sql = sql.concat(` id>=COALESCE((SELECT id
|
|
33
|
+
FROM "${this.table}"
|
|
34
|
+
WHERE stream='${stream}' AND name='${SNAP_EVENT}'
|
|
35
|
+
ORDER BY id DESC LIMIT 1), 0)
|
|
36
|
+
AND stream='${stream}'`);
|
|
37
|
+
else if (query) {
|
|
38
|
+
if (typeof after !== "undefined") {
|
|
39
|
+
values.push(after);
|
|
40
|
+
sql = sql.concat(" id>$1");
|
|
41
|
+
}
|
|
42
|
+
else
|
|
43
|
+
sql = sql.concat(" id>-1");
|
|
44
|
+
if (stream) {
|
|
45
|
+
values.push(stream);
|
|
46
|
+
sql = sql.concat(` AND stream=$${values.length}`);
|
|
47
|
+
}
|
|
48
|
+
if (names && names.length) {
|
|
49
|
+
values.push(names);
|
|
50
|
+
sql = sql.concat(` AND name = ANY($${values.length})`);
|
|
51
|
+
}
|
|
52
|
+
if (before) {
|
|
53
|
+
values.push(before);
|
|
54
|
+
sql = sql.concat(` AND id<$${values.length}`);
|
|
55
|
+
}
|
|
56
|
+
if (created_after) {
|
|
57
|
+
values.push(created_after.toISOString());
|
|
58
|
+
sql = sql.concat(` AND created>$${values.length}`);
|
|
59
|
+
}
|
|
60
|
+
if (created_before) {
|
|
61
|
+
values.push(created_before.toISOString());
|
|
62
|
+
sql = sql.concat(` AND created<$${values.length}`);
|
|
63
|
+
}
|
|
64
|
+
if (correlation) {
|
|
65
|
+
values.push(correlation);
|
|
66
|
+
sql = sql.concat(` AND meta->>'correlation'=$${values.length}`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
sql = sql.concat(` ORDER BY id ${backward ? "DESC" : "ASC"}`);
|
|
70
|
+
if (limit) {
|
|
71
|
+
values.push(limit);
|
|
72
|
+
sql = sql.concat(` LIMIT $${values.length}`);
|
|
73
|
+
}
|
|
74
|
+
const result = await this._pool.query(sql, values);
|
|
75
|
+
for (const row of result.rows)
|
|
76
|
+
callback(row);
|
|
77
|
+
return result.rowCount ?? 0;
|
|
78
|
+
}
|
|
79
|
+
async commit(stream, msgs, meta, expectedVersion) {
|
|
80
|
+
const client = await this._pool.connect();
|
|
81
|
+
let version = -1;
|
|
82
|
+
try {
|
|
83
|
+
await client.query("BEGIN");
|
|
84
|
+
const last = await client.query(`SELECT version FROM "${this.table}" WHERE stream=$1 ORDER BY version DESC LIMIT 1`, [stream]);
|
|
85
|
+
version = last.rowCount ? last.rows[0].version : -1;
|
|
86
|
+
if (expectedVersion && version !== expectedVersion)
|
|
87
|
+
throw new ConcurrencyError(version, msgs, expectedVersion);
|
|
88
|
+
const committed = await Promise.all(msgs.map(async ({ name, data }) => {
|
|
89
|
+
version++;
|
|
90
|
+
const sql = `
|
|
91
|
+
INSERT INTO "${this.table}"(name, data, stream, version, meta)
|
|
92
|
+
VALUES($1, $2, $3, $4, $5) RETURNING *`;
|
|
93
|
+
const vals = [name, data, stream, version, meta];
|
|
94
|
+
const { rows } = await client.query(sql, vals);
|
|
95
|
+
return rows.at(0);
|
|
96
|
+
}));
|
|
97
|
+
await client
|
|
98
|
+
.query(`
|
|
99
|
+
NOTIFY "${this.table}", '${JSON.stringify({
|
|
100
|
+
operation: "INSERT",
|
|
101
|
+
id: committed[0].name,
|
|
102
|
+
position: committed[0].id,
|
|
103
|
+
})}';
|
|
104
|
+
COMMIT;
|
|
105
|
+
`)
|
|
106
|
+
.catch((error) => {
|
|
107
|
+
logger.error(error);
|
|
108
|
+
throw new ConcurrencyError(version, msgs, expectedVersion || -1);
|
|
109
|
+
});
|
|
110
|
+
return committed;
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
await client.query("ROLLBACK").catch(() => { });
|
|
114
|
+
throw error;
|
|
115
|
+
}
|
|
116
|
+
finally {
|
|
117
|
+
client.release();
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
async fetch(limit) {
|
|
121
|
+
const { rows } = await this._pool.query(`
|
|
122
|
+
SELECT stream, at
|
|
123
|
+
FROM "${this.table}_streams"
|
|
124
|
+
WHERE blocked=false
|
|
125
|
+
ORDER BY at ASC
|
|
126
|
+
LIMIT $1::integer
|
|
127
|
+
`, [limit]);
|
|
128
|
+
const after = rows.length
|
|
129
|
+
? rows.reduce((min, r) => Math.min(min, r.at), Number.MAX_SAFE_INTEGER)
|
|
130
|
+
: -1;
|
|
131
|
+
const events = [];
|
|
132
|
+
await this.query((e) => events.push(e), { after, limit });
|
|
133
|
+
return { streams: rows.map(({ stream }) => stream), events };
|
|
134
|
+
}
|
|
135
|
+
async lease(leases) {
|
|
136
|
+
const { by, at } = leases.at(0);
|
|
137
|
+
const streams = leases.map(({ stream }) => stream);
|
|
138
|
+
const client = await this._pool.connect();
|
|
139
|
+
try {
|
|
140
|
+
await client.query("BEGIN");
|
|
141
|
+
// insert new streams
|
|
142
|
+
await client.query(`
|
|
143
|
+
INSERT INTO "${this.table}_streams" (stream)
|
|
144
|
+
SELECT UNNEST($1::text[])
|
|
145
|
+
ON CONFLICT (stream) DO NOTHING
|
|
146
|
+
`, [streams]);
|
|
147
|
+
// set leases
|
|
148
|
+
const { rows } = await client.query(`
|
|
149
|
+
WITH free AS (
|
|
150
|
+
SELECT * FROM "${this.table}_streams"
|
|
151
|
+
WHERE stream = ANY($1::text[]) AND (leased_by IS NULL OR leased_until <= NOW())
|
|
152
|
+
FOR UPDATE
|
|
153
|
+
)
|
|
154
|
+
UPDATE "${this.table}_streams" U
|
|
155
|
+
SET
|
|
156
|
+
leased_by = $2::uuid,
|
|
157
|
+
leased_at = $3::integer,
|
|
158
|
+
leased_until = NOW() + ($4::integer || ' milliseconds')::interval
|
|
159
|
+
FROM free
|
|
160
|
+
WHERE U.stream = free.stream
|
|
161
|
+
RETURNING U.stream, U.leased_at, U.retry
|
|
162
|
+
`, [streams, by, at, this.leaseMillis]);
|
|
163
|
+
await client.query("COMMIT");
|
|
164
|
+
return rows.map(({ stream, leased_at, retry }) => ({
|
|
165
|
+
stream,
|
|
166
|
+
by,
|
|
167
|
+
at: leased_at,
|
|
168
|
+
retry,
|
|
169
|
+
block: false,
|
|
170
|
+
}));
|
|
171
|
+
}
|
|
172
|
+
catch (error) {
|
|
173
|
+
await client.query("ROLLBACK").catch(() => { });
|
|
174
|
+
throw error;
|
|
175
|
+
}
|
|
176
|
+
finally {
|
|
177
|
+
client.release();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
async ack(leases) {
|
|
181
|
+
const client = await this._pool.connect();
|
|
182
|
+
try {
|
|
183
|
+
await client.query("BEGIN");
|
|
184
|
+
for (const { stream, by, at, retry, block } of leases) {
|
|
185
|
+
await client.query(`UPDATE "${this.table}_streams"
|
|
186
|
+
SET
|
|
187
|
+
at = $3::integer,
|
|
188
|
+
retry = $4::integer,
|
|
189
|
+
blocked = $5::boolean,
|
|
190
|
+
leased_by = NULL,
|
|
191
|
+
leased_at = NULL,
|
|
192
|
+
leased_until = NULL
|
|
193
|
+
WHERE
|
|
194
|
+
stream = $1::text
|
|
195
|
+
AND leased_by = $2::uuid`, [stream, by, at, retry, block]);
|
|
196
|
+
}
|
|
197
|
+
await client.query("COMMIT");
|
|
198
|
+
}
|
|
199
|
+
catch {
|
|
200
|
+
// leased_until fallback
|
|
201
|
+
await client.query("ROLLBACK").catch(() => { });
|
|
202
|
+
}
|
|
203
|
+
finally {
|
|
204
|
+
client.release();
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=PostgresStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresStore.js","sourceRoot":"","sources":["../src/PostgresStore.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare const config: Readonly<{
|
|
2
|
+
pg: {
|
|
3
|
+
host: string;
|
|
4
|
+
user: string;
|
|
5
|
+
password: string;
|
|
6
|
+
database: string;
|
|
7
|
+
port: number;
|
|
8
|
+
};
|
|
9
|
+
} & {
|
|
10
|
+
name: string;
|
|
11
|
+
version: string;
|
|
12
|
+
description: string;
|
|
13
|
+
author: string | {
|
|
14
|
+
name: string;
|
|
15
|
+
email?: string | undefined;
|
|
16
|
+
};
|
|
17
|
+
license: string;
|
|
18
|
+
dependencies: Record<string, string>;
|
|
19
|
+
env: "development" | "test" | "staging" | "production";
|
|
20
|
+
logLevel: "fatal" | "error" | "warn" | "info" | "debug" | "trace";
|
|
21
|
+
logSingleLine: boolean;
|
|
22
|
+
sleepMs: number;
|
|
23
|
+
}>;
|
|
24
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;aAqBstC,CAAC;;;;;;;;EADzuC,CAAC"}
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { extend, config as target } from "@rotorsoft/act";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
const { PG_HOST, PG_USER, PG_PASSWORD, PG_DATABASE, PG_PORT } = process.env;
|
|
4
|
+
export const config = extend({
|
|
5
|
+
pg: {
|
|
6
|
+
host: PG_HOST || "localhost",
|
|
7
|
+
user: PG_USER || "postgres",
|
|
8
|
+
password: PG_PASSWORD || "postgres",
|
|
9
|
+
database: PG_DATABASE || "postgres",
|
|
10
|
+
port: Number.parseInt(PG_PORT || "5432"),
|
|
11
|
+
},
|
|
12
|
+
}, z.object({
|
|
13
|
+
pg: z.object({
|
|
14
|
+
host: z.string().min(1),
|
|
15
|
+
user: z.string().min(1),
|
|
16
|
+
password: z.string().min(1),
|
|
17
|
+
database: z.string().min(1),
|
|
18
|
+
port: z.number().int().min(1000).max(65535),
|
|
19
|
+
}),
|
|
20
|
+
}), target());
|
|
21
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAE5E,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAC1B;IACE,EAAE,EAAE;QACF,IAAI,EAAE,OAAO,IAAI,WAAW;QAC5B,IAAI,EAAE,OAAO,IAAI,UAAU;QAC3B,QAAQ,EAAE,WAAW,IAAI,UAAU;QACnC,QAAQ,EAAE,WAAW,IAAI,UAAU;QACnC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC;KACzC;CACF,EACD,CAAC,CAAC,MAAM,CAAC;IACP,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;KAC5C,CAAC;CACH,CAAC,EACF,MAAM,EAAE,CACT,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC"}
|
package/dist/seed.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seed.d.ts","sourceRoot":"","sources":["../src/seed.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,UAAW,MAAM,KAAG,MA4C1C,CAAC"}
|
package/dist/seed.js
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export const seed_store = (table) => `
|
|
2
|
+
-- events
|
|
3
|
+
CREATE TABLE IF NOT EXISTS public."${table}"
|
|
4
|
+
(
|
|
5
|
+
id serial PRIMARY KEY,
|
|
6
|
+
name varchar(100) COLLATE pg_catalog."default" NOT NULL,
|
|
7
|
+
data jsonb,
|
|
8
|
+
stream varchar(100) COLLATE pg_catalog."default" NOT NULL,
|
|
9
|
+
version int NOT NULL,
|
|
10
|
+
created timestamptz NOT NULL DEFAULT now(),
|
|
11
|
+
meta jsonb
|
|
12
|
+
) TABLESPACE pg_default;
|
|
13
|
+
|
|
14
|
+
CREATE UNIQUE INDEX IF NOT EXISTS "${table}_stream_ix"
|
|
15
|
+
ON public."${table}" USING btree (stream COLLATE pg_catalog."default" ASC, version ASC)
|
|
16
|
+
TABLESPACE pg_default;
|
|
17
|
+
|
|
18
|
+
CREATE INDEX IF NOT EXISTS "${table}_name_ix"
|
|
19
|
+
ON public."${table}" USING btree (name COLLATE pg_catalog."default" ASC)
|
|
20
|
+
TABLESPACE pg_default;
|
|
21
|
+
|
|
22
|
+
CREATE INDEX IF NOT EXISTS "${table}_created_id_ix"
|
|
23
|
+
ON public."${table}" USING btree (created ASC, id ASC)
|
|
24
|
+
TABLESPACE pg_default;
|
|
25
|
+
|
|
26
|
+
CREATE INDEX IF NOT EXISTS "${table}_correlation_ix"
|
|
27
|
+
ON public."${table}" USING btree ((meta ->> 'correlation'::text) COLLATE pg_catalog."default" ASC NULLS LAST)
|
|
28
|
+
TABLESPACE pg_default;
|
|
29
|
+
|
|
30
|
+
-- streams
|
|
31
|
+
CREATE TABLE IF NOT EXISTS public."${table}_streams"
|
|
32
|
+
(
|
|
33
|
+
stream varchar(100) COLLATE pg_catalog."default" PRIMARY KEY,
|
|
34
|
+
at int not null default(-1),
|
|
35
|
+
retry smallint not null default(0),
|
|
36
|
+
blocked boolean not null default(false),
|
|
37
|
+
leased_at int,
|
|
38
|
+
leased_by uuid,
|
|
39
|
+
leased_until timestamptz
|
|
40
|
+
) TABLESPACE pg_default;
|
|
41
|
+
|
|
42
|
+
-- supports order by { blocked, at } when fetching
|
|
43
|
+
CREATE INDEX IF NOT EXISTS "${table}_streams_fetch_ix"
|
|
44
|
+
ON public."${table}_streams" USING btree (blocked, at) TABLESPACE pg_default;
|
|
45
|
+
`;
|
|
46
|
+
//# sourceMappingURL=seed.js.map
|
package/dist/seed.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"seed.js","sourceRoot":"","sources":["../src/seed.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC;;qCAEhB,KAAK;;;;;;;;;;;qCAWL,KAAK;eAC3B,KAAK;;;8BAGU,KAAK;eACpB,KAAK;;;8BAGU,KAAK;eACpB,KAAK;;;8BAGU,KAAK;eACpB,KAAK;;;;qCAIiB,KAAK;;;;;;;;;;;;8BAYZ,KAAK;eACpB,KAAK;CACnB,CAAC"}
|
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,WAAW,QAAS,MAAM,SAAS,MAAM,KAAG,MAAM,GAAG,IASjE,CAAC"}
|
package/dist/utils.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Date reviver when parsing JSON strings with the following formats:
|
|
3
|
+
* - YYYY-MM-DDTHH:MM:SS.sssZ
|
|
4
|
+
* - YYYY-MM-DDTHH:MM:SS.sss+HH:MM
|
|
5
|
+
* - YYYY-MM-DDTHH:MM:SS.sss-HH:MM
|
|
6
|
+
*/
|
|
7
|
+
const ISO_8601 = /^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])(\.\d+)?(Z|[+-][0-2][0-9]:[0-5][0-9])?$/;
|
|
8
|
+
export const dateReviver = (key, value) => {
|
|
9
|
+
if (typeof value === "string" && ISO_8601.test(value)) {
|
|
10
|
+
try {
|
|
11
|
+
return new Date(value);
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return value;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,QAAQ,GACZ,yIAAyI,CAAC;AAC5I,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,KAAa,EAAiB,EAAE;IACvE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,IAAI,CAAC;YACH,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@rotorsoft/act-pg",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "0.0.2",
|
|
5
|
+
"description": "act pg adapters",
|
|
6
|
+
"author": "rotorsoft",
|
|
7
|
+
"license": "MIT",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/rotorsoft/act-root.git",
|
|
11
|
+
"directory": "libs/act-pg"
|
|
12
|
+
},
|
|
13
|
+
"files": [
|
|
14
|
+
"dist"
|
|
15
|
+
],
|
|
16
|
+
"exports": {
|
|
17
|
+
".": {
|
|
18
|
+
"default": "./dist/index.js",
|
|
19
|
+
"devmode": "./src/index.ts"
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"dependencies": {
|
|
23
|
+
"pg": "^8.13.3",
|
|
24
|
+
"zod": "^3.24.2",
|
|
25
|
+
"@rotorsoft/act": "0.0.2"
|
|
26
|
+
},
|
|
27
|
+
"devDependencies": {
|
|
28
|
+
"@types/pg": "^8.11.11"
|
|
29
|
+
},
|
|
30
|
+
"scripts": {
|
|
31
|
+
"clean": "rm -rf dist",
|
|
32
|
+
"build": "npx tsc --build"
|
|
33
|
+
}
|
|
34
|
+
}
|