ponder 0.9.4-debug.1 → 0.9.5-debug.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/CHANGELOG.md +2201 -0
- package/dist/esm/bin/commands/codegen.js +37 -0
- package/dist/esm/bin/commands/codegen.js.map +1 -0
- package/dist/esm/bin/commands/dev.js +242 -0
- package/dist/esm/bin/commands/dev.js.map +1 -0
- package/dist/esm/bin/commands/list.js +103 -0
- package/dist/esm/bin/commands/list.js.map +1 -0
- package/dist/esm/bin/commands/serve.js +123 -0
- package/dist/esm/bin/commands/serve.js.map +1 -0
- package/dist/esm/bin/commands/start.js +136 -0
- package/dist/esm/bin/commands/start.js.map +1 -0
- package/dist/esm/bin/ponder.js +118 -0
- package/dist/esm/bin/ponder.js.map +1 -0
- package/dist/esm/bin/utils/codegen.js +26 -0
- package/dist/esm/bin/utils/codegen.js.map +1 -0
- package/dist/esm/bin/utils/exit.js +69 -0
- package/dist/esm/bin/utils/exit.js.map +1 -0
- package/dist/esm/bin/utils/run.js +247 -0
- package/dist/esm/bin/utils/run.js.map +1 -0
- package/dist/esm/bin/utils/runServer.js +8 -0
- package/dist/esm/bin/utils/runServer.js.map +1 -0
- package/dist/esm/build/configAndIndexingFunctions.js +654 -0
- package/dist/esm/build/configAndIndexingFunctions.js.map +1 -0
- package/dist/esm/build/factory.js +43 -0
- package/dist/esm/build/factory.js.map +1 -0
- package/dist/esm/build/index.js +431 -0
- package/dist/esm/build/index.js.map +1 -0
- package/dist/esm/build/plugin.js +43 -0
- package/dist/esm/build/plugin.js.map +1 -0
- package/dist/esm/build/pre.js +112 -0
- package/dist/esm/build/pre.js.map +1 -0
- package/dist/esm/build/schema.js +89 -0
- package/dist/esm/build/schema.js.map +1 -0
- package/dist/esm/build/stacktrace.js +137 -0
- package/dist/esm/build/stacktrace.js.map +1 -0
- package/dist/esm/client/index.js +124 -0
- package/dist/esm/client/index.js.map +1 -0
- package/dist/esm/client/validate.js +1151 -0
- package/dist/esm/client/validate.js.map +1 -0
- package/dist/esm/config/address.js +2 -0
- package/dist/esm/config/address.js.map +1 -0
- package/dist/esm/config/eventFilter.js +2 -0
- package/dist/esm/config/eventFilter.js.map +1 -0
- package/dist/esm/config/index.js +2 -0
- package/dist/esm/config/index.js.map +1 -0
- package/dist/esm/config/networks.js +120 -0
- package/dist/esm/config/networks.js.map +1 -0
- package/dist/esm/config/utilityTypes.js +2 -0
- package/dist/esm/config/utilityTypes.js.map +1 -0
- package/dist/esm/database/index.js +914 -0
- package/dist/esm/database/index.js.map +1 -0
- package/dist/esm/drizzle/bigint.js +36 -0
- package/dist/esm/drizzle/bigint.js.map +1 -0
- package/dist/esm/drizzle/hex.js +38 -0
- package/dist/esm/drizzle/hex.js.map +1 -0
- package/dist/esm/drizzle/index.js +43 -0
- package/dist/esm/drizzle/index.js.map +1 -0
- package/dist/esm/drizzle/kit/index.js +658 -0
- package/dist/esm/drizzle/kit/index.js.map +1 -0
- package/dist/esm/drizzle/onchain.js +102 -0
- package/dist/esm/drizzle/onchain.js.map +1 -0
- package/dist/esm/graphql/index.js +704 -0
- package/dist/esm/graphql/index.js.map +1 -0
- package/dist/esm/graphql/json.js +42 -0
- package/dist/esm/graphql/json.js.map +1 -0
- package/dist/esm/graphql/middleware.js +80 -0
- package/dist/esm/graphql/middleware.js.map +1 -0
- package/dist/esm/index.js +9 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/indexing/addStackTrace.js +54 -0
- package/dist/esm/indexing/addStackTrace.js.map +1 -0
- package/dist/esm/indexing/index.js +10 -0
- package/dist/esm/indexing/index.js.map +1 -0
- package/dist/esm/indexing/ponderActions.js +60 -0
- package/dist/esm/indexing/ponderActions.js.map +1 -0
- package/dist/esm/indexing/service.js +312 -0
- package/dist/esm/indexing/service.js.map +1 -0
- package/dist/esm/indexing-store/historical.js +591 -0
- package/dist/esm/indexing-store/historical.js.map +1 -0
- package/dist/esm/indexing-store/index.js +19 -0
- package/dist/esm/indexing-store/index.js.map +1 -0
- package/dist/esm/indexing-store/metadata.js +46 -0
- package/dist/esm/indexing-store/metadata.js.map +1 -0
- package/dist/esm/indexing-store/realtime.js +295 -0
- package/dist/esm/indexing-store/realtime.js.map +1 -0
- package/dist/esm/internal/common.js +2 -0
- package/dist/esm/internal/common.js.map +1 -0
- package/dist/esm/internal/errors.js +175 -0
- package/dist/esm/internal/errors.js.map +1 -0
- package/dist/esm/internal/logger.js +96 -0
- package/dist/esm/internal/logger.js.map +1 -0
- package/dist/esm/internal/metrics.js +569 -0
- package/dist/esm/internal/metrics.js.map +1 -0
- package/dist/esm/internal/options.js +69 -0
- package/dist/esm/internal/options.js.map +1 -0
- package/dist/esm/internal/shutdown.js +18 -0
- package/dist/esm/internal/shutdown.js.map +1 -0
- package/dist/esm/internal/telemetry.js +199 -0
- package/dist/esm/internal/telemetry.js.map +1 -0
- package/dist/esm/internal/types.js +2 -0
- package/dist/esm/internal/types.js.map +1 -0
- package/dist/esm/server/error.js +55 -0
- package/dist/esm/server/error.js.map +1 -0
- package/dist/esm/server/index.js +107 -0
- package/dist/esm/server/index.js.map +1 -0
- package/dist/esm/sync/abi.js +67 -0
- package/dist/esm/sync/abi.js.map +1 -0
- package/dist/esm/sync/events.js +607 -0
- package/dist/esm/sync/events.js.map +1 -0
- package/dist/esm/sync/filter.js +356 -0
- package/dist/esm/sync/filter.js.map +1 -0
- package/dist/esm/sync/fragments.js +300 -0
- package/dist/esm/sync/fragments.js.map +1 -0
- package/dist/esm/sync/index.js +1001 -0
- package/dist/esm/sync/index.js.map +1 -0
- package/dist/esm/sync/transport.js +94 -0
- package/dist/esm/sync/transport.js.map +1 -0
- package/dist/esm/sync-historical/index.js +590 -0
- package/dist/esm/sync-historical/index.js.map +1 -0
- package/dist/esm/sync-realtime/bloom.js +75 -0
- package/dist/esm/sync-realtime/bloom.js.map +1 -0
- package/dist/esm/sync-realtime/index.js +794 -0
- package/dist/esm/sync-realtime/index.js.map +1 -0
- package/dist/esm/sync-store/encoding.js +157 -0
- package/dist/esm/sync-store/encoding.js.map +1 -0
- package/dist/esm/sync-store/index.js +727 -0
- package/dist/esm/sync-store/index.js.map +1 -0
- package/dist/esm/sync-store/migrations.js +1186 -0
- package/dist/esm/sync-store/migrations.js.map +1 -0
- package/dist/esm/types/db.js +2 -0
- package/dist/esm/types/db.js.map +1 -0
- package/dist/esm/types/eth.js +2 -0
- package/dist/esm/types/eth.js.map +1 -0
- package/dist/esm/types/sync.js +2 -0
- package/dist/esm/types/sync.js.map +1 -0
- package/dist/esm/types/utils.js +2 -0
- package/dist/esm/types/utils.js.map +1 -0
- package/dist/esm/types/virtual.js +2 -0
- package/dist/esm/types/virtual.js.map +1 -0
- package/dist/esm/ui/ProgressBar.js +11 -0
- package/dist/esm/ui/ProgressBar.js.map +1 -0
- package/dist/esm/ui/Table.js +50 -0
- package/dist/esm/ui/Table.js.map +1 -0
- package/dist/esm/ui/app.js +113 -0
- package/dist/esm/ui/app.js.map +1 -0
- package/dist/esm/ui/graphiql.html.js +59 -0
- package/dist/esm/ui/graphiql.html.js.map +1 -0
- package/dist/esm/ui/index.js +21 -0
- package/dist/esm/ui/index.js.map +1 -0
- package/dist/esm/utils/bigint.js +37 -0
- package/dist/esm/utils/bigint.js.map +1 -0
- package/dist/esm/utils/chains.js +3 -0
- package/dist/esm/utils/chains.js.map +1 -0
- package/dist/esm/utils/checkpoint.js +114 -0
- package/dist/esm/utils/checkpoint.js.map +1 -0
- package/dist/esm/utils/chunk.js +8 -0
- package/dist/esm/utils/chunk.js.map +1 -0
- package/dist/esm/utils/date.js +27 -0
- package/dist/esm/utils/date.js.map +1 -0
- package/dist/esm/utils/debug.js +2 -0
- package/dist/esm/utils/debug.js.map +1 -0
- package/dist/esm/utils/dedupe.js +33 -0
- package/dist/esm/utils/dedupe.js.map +1 -0
- package/dist/esm/utils/duplicates.js +19 -0
- package/dist/esm/utils/duplicates.js.map +1 -0
- package/dist/esm/utils/estimate.js +6 -0
- package/dist/esm/utils/estimate.js.map +1 -0
- package/dist/esm/utils/extend.js +28 -0
- package/dist/esm/utils/extend.js.map +1 -0
- package/dist/esm/utils/format.js +20 -0
- package/dist/esm/utils/format.js.map +1 -0
- package/dist/esm/utils/generators.js +77 -0
- package/dist/esm/utils/generators.js.map +1 -0
- package/dist/esm/utils/hash.js +11 -0
- package/dist/esm/utils/hash.js.map +1 -0
- package/dist/esm/utils/interval.js +171 -0
- package/dist/esm/utils/interval.js.map +1 -0
- package/dist/esm/utils/lowercase.js +7 -0
- package/dist/esm/utils/lowercase.js.map +1 -0
- package/dist/esm/utils/mutex.js +25 -0
- package/dist/esm/utils/mutex.js.map +1 -0
- package/dist/esm/utils/never.js +4 -0
- package/dist/esm/utils/never.js.map +1 -0
- package/dist/esm/utils/offset.js +73 -0
- package/dist/esm/utils/offset.js.map +1 -0
- package/dist/esm/utils/order.js +18 -0
- package/dist/esm/utils/order.js.map +1 -0
- package/dist/esm/utils/partition.js +37 -0
- package/dist/esm/utils/partition.js.map +1 -0
- package/dist/esm/utils/pg.js +126 -0
- package/dist/esm/utils/pg.js.map +1 -0
- package/dist/esm/utils/pglite.js +80 -0
- package/dist/esm/utils/pglite.js.map +1 -0
- package/dist/esm/utils/port.js +30 -0
- package/dist/esm/utils/port.js.map +1 -0
- package/dist/esm/utils/print.js +23 -0
- package/dist/esm/utils/print.js.map +1 -0
- package/dist/esm/utils/promiseWithResolvers.js +13 -0
- package/dist/esm/utils/promiseWithResolvers.js.map +1 -0
- package/dist/esm/utils/queue.js +145 -0
- package/dist/esm/utils/queue.js.map +1 -0
- package/dist/esm/utils/range.js +8 -0
- package/dist/esm/utils/range.js.map +1 -0
- package/dist/esm/utils/requestQueue.js +127 -0
- package/dist/esm/utils/requestQueue.js.map +1 -0
- package/dist/esm/utils/result.js +10 -0
- package/dist/esm/utils/result.js.map +1 -0
- package/dist/esm/utils/rpc.js +202 -0
- package/dist/esm/utils/rpc.js.map +1 -0
- package/dist/esm/utils/serialize.js +23 -0
- package/dist/esm/utils/serialize.js.map +1 -0
- package/dist/esm/utils/timer.js +17 -0
- package/dist/esm/utils/timer.js.map +1 -0
- package/dist/esm/utils/wait.js +8 -0
- package/dist/esm/utils/wait.js.map +1 -0
- package/dist/esm/utils/zipper.js +67 -0
- package/dist/esm/utils/zipper.js.map +1 -0
- package/dist/types/bin/commands/codegen.d.ts +5 -0
- package/dist/types/bin/commands/codegen.d.ts.map +1 -0
- package/dist/types/bin/commands/dev.d.ts +5 -0
- package/dist/types/bin/commands/dev.d.ts.map +1 -0
- package/dist/types/bin/commands/list.d.ts +5 -0
- package/dist/types/bin/commands/list.d.ts.map +1 -0
- package/dist/types/bin/commands/serve.d.ts +5 -0
- package/dist/types/bin/commands/serve.d.ts.map +1 -0
- package/dist/types/bin/commands/start.d.ts +5 -0
- package/dist/types/bin/commands/start.d.ts.map +1 -0
- package/dist/{bin → types/bin}/ponder.d.ts +5 -6
- package/dist/types/bin/ponder.d.ts.map +1 -0
- package/dist/types/bin/utils/codegen.d.ts +6 -0
- package/dist/types/bin/utils/codegen.d.ts.map +1 -0
- package/dist/types/bin/utils/exit.d.ts +9 -0
- package/dist/types/bin/utils/exit.d.ts.map +1 -0
- package/dist/types/bin/utils/run.d.ts +14 -0
- package/dist/types/bin/utils/run.d.ts.map +1 -0
- package/dist/types/bin/utils/runServer.d.ts +12 -0
- package/dist/types/bin/utils/runServer.d.ts.map +1 -0
- package/dist/types/build/configAndIndexingFunctions.d.ts +37 -0
- package/dist/types/build/configAndIndexingFunctions.d.ts.map +1 -0
- package/dist/types/build/factory.d.ts +10 -0
- package/dist/types/build/factory.d.ts.map +1 -0
- package/dist/types/build/index.d.ts +70 -0
- package/dist/types/build/index.d.ts.map +1 -0
- package/dist/types/build/plugin.d.ts +4 -0
- package/dist/types/build/plugin.d.ts.map +1 -0
- package/dist/types/build/pre.d.ts +35 -0
- package/dist/types/build/pre.d.ts.map +1 -0
- package/dist/types/build/schema.d.ts +18 -0
- package/dist/types/build/schema.d.ts.map +1 -0
- package/dist/types/build/stacktrace.d.ts +13 -0
- package/dist/types/build/stacktrace.d.ts.map +1 -0
- package/dist/types/client/index.d.ts +27 -0
- package/dist/types/client/index.d.ts.map +1 -0
- package/dist/types/client/validate.d.ts +2 -0
- package/dist/types/client/validate.d.ts.map +1 -0
- package/dist/types/config/address.d.ts +14 -0
- package/dist/types/config/address.d.ts.map +1 -0
- package/dist/types/config/eventFilter.d.ts +18 -0
- package/dist/types/config/eventFilter.d.ts.map +1 -0
- package/dist/types/config/index.d.ts +143 -0
- package/dist/types/config/index.d.ts.map +1 -0
- package/dist/types/config/networks.d.ts +30 -0
- package/dist/types/config/networks.d.ts.map +1 -0
- package/dist/types/config/utilityTypes.d.ts +43 -0
- package/dist/types/config/utilityTypes.d.ts.map +1 -0
- package/dist/types/database/index.d.ts +91 -0
- package/dist/types/database/index.d.ts.map +1 -0
- package/dist/types/drizzle/bigint.d.ts +25 -0
- package/dist/types/drizzle/bigint.d.ts.map +1 -0
- package/dist/types/drizzle/hex.d.ts +25 -0
- package/dist/types/drizzle/hex.d.ts.map +1 -0
- package/dist/types/drizzle/index.d.ts +14 -0
- package/dist/types/drizzle/index.d.ts.map +1 -0
- package/dist/types/drizzle/kit/index.d.ts +49 -0
- package/dist/types/drizzle/kit/index.d.ts.map +1 -0
- package/dist/{drizzle → types/drizzle}/onchain.d.ts +49 -96
- package/dist/types/drizzle/onchain.d.ts.map +1 -0
- package/dist/types/graphql/index.d.ts +14 -0
- package/dist/types/graphql/index.d.ts.map +1 -0
- package/dist/types/graphql/json.d.ts +3 -0
- package/dist/types/graphql/json.d.ts.map +1 -0
- package/dist/types/graphql/middleware.d.ts +29 -0
- package/dist/types/graphql/middleware.d.ts.map +1 -0
- package/dist/types/index.d.ts +18 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/indexing/addStackTrace.d.ts +3 -0
- package/dist/types/indexing/addStackTrace.d.ts.map +1 -0
- package/dist/types/indexing/index.d.ts +575 -0
- package/dist/types/indexing/index.d.ts.map +1 -0
- package/dist/types/indexing/ponderActions.d.ts +47 -0
- package/dist/types/indexing/ponderActions.d.ts.map +1 -0
- package/dist/types/indexing/service.d.ts +73 -0
- package/dist/types/indexing/service.d.ts.map +1 -0
- package/dist/types/indexing-store/historical.d.ts +19 -0
- package/dist/types/indexing-store/historical.d.ts.map +1 -0
- package/dist/types/indexing-store/index.d.ts +10 -0
- package/dist/types/indexing-store/index.d.ts.map +1 -0
- package/dist/types/indexing-store/metadata.d.ts +10 -0
- package/dist/types/indexing-store/metadata.d.ts.map +1 -0
- package/dist/types/indexing-store/realtime.d.ts +10 -0
- package/dist/types/indexing-store/realtime.d.ts.map +1 -0
- package/dist/types/internal/common.d.ts +13 -0
- package/dist/types/internal/common.d.ts.map +1 -0
- package/dist/types/internal/errors.d.ts +55 -0
- package/dist/types/internal/errors.d.ts.map +1 -0
- package/dist/types/internal/logger.d.ts +26 -0
- package/dist/types/internal/logger.d.ts.map +1 -0
- package/dist/types/internal/metrics.d.ts +77 -0
- package/dist/types/internal/metrics.d.ts.map +1 -0
- package/dist/types/internal/options.d.ts +59 -0
- package/dist/types/internal/options.d.ts.map +1 -0
- package/dist/types/internal/shutdown.d.ts +8 -0
- package/dist/types/internal/shutdown.d.ts.map +1 -0
- package/dist/types/internal/telemetry.d.ts +43 -0
- package/dist/types/internal/telemetry.d.ts.map +1 -0
- package/dist/types/internal/types.d.ts +328 -0
- package/dist/types/internal/types.d.ts.map +1 -0
- package/dist/types/server/error.d.ts +5 -0
- package/dist/types/server/error.d.ts.map +1 -0
- package/dist/types/server/index.d.ts +13 -0
- package/dist/types/server/index.d.ts.map +1 -0
- package/dist/types/sync/abi.d.ts +54 -0
- package/dist/types/sync/abi.d.ts.map +1 -0
- package/dist/types/sync/events.d.ts +24 -0
- package/dist/types/sync/events.d.ts.map +1 -0
- package/dist/types/sync/filter.d.ts +71 -0
- package/dist/types/sync/filter.d.ts.map +1 -0
- package/dist/types/sync/fragments.d.ts +21 -0
- package/dist/types/sync/fragments.d.ts.map +1 -0
- package/dist/types/sync/index.d.ts +112 -0
- package/dist/types/sync/index.d.ts.map +1 -0
- package/dist/types/sync/transport.d.ts +8 -0
- package/dist/types/sync/transport.d.ts.map +1 -0
- package/dist/types/sync-historical/index.d.ts +28 -0
- package/dist/types/sync-historical/index.d.ts.map +1 -0
- package/dist/types/sync-realtime/bloom.d.ts +19 -0
- package/dist/types/sync-realtime/bloom.d.ts.map +1 -0
- package/dist/types/sync-realtime/index.d.ts +48 -0
- package/dist/types/sync-realtime/index.d.ts.map +1 -0
- package/dist/types/sync-store/encoding.d.ts +151 -0
- package/dist/types/sync-store/encoding.d.ts.map +1 -0
- package/dist/types/sync-store/index.d.ts +104 -0
- package/dist/types/sync-store/index.d.ts.map +1 -0
- package/dist/types/sync-store/migrations.d.ts +13 -0
- package/dist/types/sync-store/migrations.d.ts.map +1 -0
- package/dist/types/types/db.d.ts +213 -0
- package/dist/types/types/db.d.ts.map +1 -0
- package/dist/types/types/eth.d.ts +196 -0
- package/dist/types/types/eth.d.ts.map +1 -0
- package/dist/types/types/sync.d.ts +15 -0
- package/dist/types/types/sync.d.ts.map +1 -0
- package/dist/types/types/utils.d.ts +22 -0
- package/dist/types/types/utils.d.ts.map +1 -0
- package/dist/types/types/virtual.d.ts +95 -0
- package/dist/types/types/virtual.d.ts.map +1 -0
- package/dist/types/ui/ProgressBar.d.ts +7 -0
- package/dist/types/ui/ProgressBar.d.ts.map +1 -0
- package/dist/types/ui/Table.d.ts +24 -0
- package/dist/types/ui/Table.d.ts.map +1 -0
- package/dist/types/ui/app.d.ts +14 -0
- package/dist/types/ui/app.d.ts.map +1 -0
- package/dist/types/ui/graphiql.html.d.ts +2 -0
- package/dist/types/ui/graphiql.html.d.ts.map +1 -0
- package/dist/types/ui/index.d.ts +5 -0
- package/dist/types/ui/index.d.ts.map +1 -0
- package/dist/types/utils/bigint.d.ts +15 -0
- package/dist/types/utils/bigint.d.ts.map +1 -0
- package/dist/types/utils/chains.d.ts +3 -0
- package/dist/types/utils/chains.d.ts.map +1 -0
- package/dist/types/utils/checkpoint.d.ts +40 -0
- package/dist/types/utils/checkpoint.d.ts.map +1 -0
- package/dist/types/utils/chunk.d.ts +2 -0
- package/dist/types/utils/chunk.d.ts.map +1 -0
- package/dist/types/utils/date.d.ts +7 -0
- package/dist/types/utils/date.d.ts.map +1 -0
- package/dist/types/utils/debug.d.ts +105 -0
- package/dist/types/utils/debug.d.ts.map +1 -0
- package/dist/types/utils/dedupe.d.ts +20 -0
- package/dist/types/utils/dedupe.d.ts.map +1 -0
- package/dist/types/utils/duplicates.d.ts +7 -0
- package/dist/types/utils/duplicates.d.ts.map +1 -0
- package/dist/types/utils/estimate.d.ts +11 -0
- package/dist/types/utils/estimate.d.ts.map +1 -0
- package/dist/types/utils/extend.d.ts +13 -0
- package/dist/types/utils/extend.d.ts.map +1 -0
- package/dist/types/utils/format.d.ts +3 -0
- package/dist/types/utils/format.d.ts.map +1 -0
- package/dist/types/utils/generators.d.ts +23 -0
- package/dist/types/utils/generators.d.ts.map +1 -0
- package/dist/types/utils/hash.d.ts +11 -0
- package/dist/types/utils/hash.d.ts.map +1 -0
- package/dist/types/utils/interval.d.ts +53 -0
- package/dist/types/utils/interval.d.ts.map +1 -0
- package/dist/types/utils/lowercase.d.ts +5 -0
- package/dist/types/utils/lowercase.d.ts.map +1 -0
- package/dist/types/utils/mutex.d.ts +8 -0
- package/dist/types/utils/mutex.d.ts.map +1 -0
- package/dist/types/utils/never.d.ts +2 -0
- package/dist/types/utils/never.d.ts.map +1 -0
- package/dist/types/utils/offset.d.ts +3 -0
- package/dist/types/utils/offset.d.ts.map +1 -0
- package/dist/types/utils/order.d.ts +2 -0
- package/dist/types/utils/order.d.ts.map +1 -0
- package/dist/types/utils/partition.d.ts +22 -0
- package/dist/types/utils/partition.d.ts.map +1 -0
- package/dist/types/utils/pg.d.ts +5 -0
- package/dist/types/utils/pg.d.ts.map +1 -0
- package/dist/types/utils/pglite.d.ts +25 -0
- package/dist/types/utils/pglite.d.ts.map +1 -0
- package/dist/types/utils/port.d.ts +5 -0
- package/dist/types/utils/port.d.ts.map +1 -0
- package/dist/types/utils/print.d.ts +2 -0
- package/dist/types/utils/print.d.ts.map +1 -0
- package/dist/types/utils/promiseWithResolvers.d.ts +10 -0
- package/dist/types/utils/promiseWithResolvers.d.ts.map +1 -0
- package/dist/types/utils/queue.d.ts +33 -0
- package/dist/types/utils/queue.d.ts.map +1 -0
- package/dist/types/utils/range.d.ts +8 -0
- package/dist/types/utils/range.d.ts.map +1 -0
- package/dist/types/utils/requestQueue.d.ts +21 -0
- package/dist/types/utils/requestQueue.d.ts.map +1 -0
- package/dist/types/utils/result.d.ts +17 -0
- package/dist/types/utils/result.d.ts.map +1 -0
- package/dist/types/utils/rpc.d.ts +57 -0
- package/dist/types/utils/rpc.d.ts.map +1 -0
- package/dist/types/utils/serialize.d.ts +19 -0
- package/dist/types/utils/serialize.d.ts.map +1 -0
- package/dist/types/utils/timer.d.ts +11 -0
- package/dist/types/utils/timer.d.ts.map +1 -0
- package/dist/types/utils/wait.d.ts +6 -0
- package/dist/types/utils/wait.d.ts.map +1 -0
- package/dist/types/utils/zipper.d.ts +36 -0
- package/dist/types/utils/zipper.d.ts.map +1 -0
- package/package.json +17 -21
- package/src/bin/commands/dev.ts +1 -1
- package/src/bin/ponder.ts +1 -1
- package/src/bin/utils/run.ts +7 -18
- package/src/build/configAndIndexingFunctions.ts +1 -1
- package/src/build/factory.ts +1 -1
- package/src/build/index.ts +0 -2
- package/src/client/index.ts +1 -1
- package/src/graphql/index.ts +1 -1
- package/src/indexing-store/historical.ts +1 -1
- package/src/indexing-store/realtime.ts +1 -1
- package/src/internal/telemetry.ts +1 -1
- package/src/sync/fragments.ts +1 -1
- package/src/sync/index.ts +60 -20
- package/src/sync-historical/index.ts +26 -26
- package/src/sync-realtime/index.ts +1 -1
- package/src/utils/dedupe.ts +40 -0
- package/src/utils/generators.ts +1 -1
- package/src/utils/mutex.ts +1 -1
- package/src/utils/promiseWithResolvers.ts +20 -0
- package/src/utils/queue.ts +250 -0
- package/src/utils/requestQueue.ts +1 -1
- package/dist/bin/ponder.js +0 -11243
- package/dist/bin/ponder.js.map +0 -1
- package/dist/chunk-6AOFLZJ4.js +0 -1692
- package/dist/chunk-6AOFLZJ4.js.map +0 -1
- package/dist/chunk-DZFRP3KH.js +0 -70
- package/dist/chunk-DZFRP3KH.js.map +0 -1
- package/dist/chunk-K2TLRLX3.js +0 -163
- package/dist/chunk-K2TLRLX3.js.map +0 -1
- package/dist/chunk-MJKRYIBO.js +0 -190
- package/dist/chunk-MJKRYIBO.js.map +0 -1
- package/dist/db-in86nyw7.d.ts +0 -625
- package/dist/drizzle/onchain.js +0 -19
- package/dist/drizzle/onchain.js.map +0 -1
- package/dist/experimental_unsafe_stores.d.ts +0 -375
- package/dist/experimental_unsafe_stores.js +0 -11
- package/dist/experimental_unsafe_stores.js.map +0 -1
- package/dist/index.d.ts +0 -404
- package/dist/index.js +0 -2219
- package/dist/index.js.map +0 -1
- package/dist/utils-ceNucOJb.d.ts +0 -14
- package/src/experimental_unsafe_stores.ts +0 -4
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import type { Common } from '../internal/common.js';
|
|
2
|
+
import type { Event, Filter, IndexingBuild, Network, RawEvent, Seconds, Source, Status } from '../internal/types.js';
|
|
3
|
+
import { type HistoricalSync } from '../sync-historical/index.js';
|
|
4
|
+
import { type RealtimeSyncEvent } from '../sync-realtime/index.js';
|
|
5
|
+
import type { SyncStore } from '../sync-store/index.js';
|
|
6
|
+
import type { LightBlock, SyncBlock } from '../types/sync.js';
|
|
7
|
+
import { type Checkpoint } from '../utils/checkpoint.js';
|
|
8
|
+
import type { RequestQueue } from '../utils/requestQueue.js';
|
|
9
|
+
export type Sync = {
|
|
10
|
+
getEvents(): AsyncGenerator<Event[]>;
|
|
11
|
+
startRealtime(): Promise<void>;
|
|
12
|
+
getStatus(): Status;
|
|
13
|
+
seconds: Seconds;
|
|
14
|
+
getFinalizedCheckpoint(): string;
|
|
15
|
+
};
|
|
16
|
+
export type RealtimeEvent = {
|
|
17
|
+
type: "block";
|
|
18
|
+
checkpoint: string;
|
|
19
|
+
status: Status;
|
|
20
|
+
events: Event[];
|
|
21
|
+
network: Network;
|
|
22
|
+
} | {
|
|
23
|
+
type: "reorg";
|
|
24
|
+
checkpoint: string;
|
|
25
|
+
network: Network;
|
|
26
|
+
} | {
|
|
27
|
+
type: "finalize";
|
|
28
|
+
checkpoint: string;
|
|
29
|
+
network: Network;
|
|
30
|
+
};
|
|
31
|
+
export type SyncProgress = {
|
|
32
|
+
start: SyncBlock | LightBlock;
|
|
33
|
+
end: SyncBlock | LightBlock | undefined;
|
|
34
|
+
current: SyncBlock | LightBlock | undefined;
|
|
35
|
+
finalized: SyncBlock | LightBlock;
|
|
36
|
+
};
|
|
37
|
+
export declare const syncBlockToLightBlock: ({ hash, parentHash, number, timestamp, }: SyncBlock) => LightBlock;
|
|
38
|
+
/** Convert `block` to a `Checkpoint`. */
|
|
39
|
+
export declare const blockToCheckpoint: (block: LightBlock | SyncBlock, chainId: number, rounding: "up" | "down") => Checkpoint;
|
|
40
|
+
export declare const splitEvents: (events: Event[]) => {
|
|
41
|
+
checkpoint: string;
|
|
42
|
+
events: Event[];
|
|
43
|
+
}[];
|
|
44
|
+
/** Returns the checkpoint for a given block tag. */
|
|
45
|
+
export declare const getChainCheckpoint: ({ syncProgress, network, tag, }: {
|
|
46
|
+
syncProgress: SyncProgress;
|
|
47
|
+
network: Network;
|
|
48
|
+
tag: "start" | "current" | "finalized" | "end";
|
|
49
|
+
}) => string | undefined;
|
|
50
|
+
export declare const createSync: (params: {
|
|
51
|
+
common: Common;
|
|
52
|
+
indexingBuild: Pick<IndexingBuild, "sources" | "networks">;
|
|
53
|
+
requestQueues: RequestQueue[];
|
|
54
|
+
syncStore: SyncStore;
|
|
55
|
+
onRealtimeEvent(event: RealtimeEvent): Promise<void>;
|
|
56
|
+
onFatalError(error: Error): void;
|
|
57
|
+
initialCheckpoint: string;
|
|
58
|
+
ordering: "omnichain" | "multichain";
|
|
59
|
+
}) => Promise<Sync>;
|
|
60
|
+
export declare const getPerChainOnRealtimeSyncEvent: ({ common, network, sources, syncStore, syncProgress, }: {
|
|
61
|
+
common: Common;
|
|
62
|
+
network: Network;
|
|
63
|
+
sources: Source[];
|
|
64
|
+
syncStore: SyncStore;
|
|
65
|
+
syncProgress: SyncProgress;
|
|
66
|
+
}) => (event: RealtimeSyncEvent) => Promise<RealtimeSyncEvent>;
|
|
67
|
+
export declare function getLocalEventGenerator(params: {
|
|
68
|
+
common: Common;
|
|
69
|
+
network: Network;
|
|
70
|
+
syncStore: SyncStore;
|
|
71
|
+
sources: Source[];
|
|
72
|
+
localSyncGenerator: AsyncGenerator<string>;
|
|
73
|
+
from: string;
|
|
74
|
+
to: string;
|
|
75
|
+
limit: number;
|
|
76
|
+
}): AsyncGenerator<{
|
|
77
|
+
events: RawEvent[];
|
|
78
|
+
checkpoint: string;
|
|
79
|
+
}>;
|
|
80
|
+
export declare function getLocalSyncGenerator({ common, network, syncProgress, historicalSync, }: {
|
|
81
|
+
common: Common;
|
|
82
|
+
network: Network;
|
|
83
|
+
syncProgress: SyncProgress;
|
|
84
|
+
historicalSync: HistoricalSync;
|
|
85
|
+
}): AsyncGenerator<string>;
|
|
86
|
+
export declare const getLocalSyncProgress: ({ common, sources, network, requestQueue, intervalsCache, }: {
|
|
87
|
+
common: Common;
|
|
88
|
+
sources: Source[];
|
|
89
|
+
network: Network;
|
|
90
|
+
requestQueue: RequestQueue;
|
|
91
|
+
intervalsCache: HistoricalSync["intervalsCache"];
|
|
92
|
+
}) => Promise<SyncProgress>;
|
|
93
|
+
/** Returns the closest-to-tip block that has been synced for all `sources`. */
|
|
94
|
+
export declare const getCachedBlock: ({ filters, intervalsCache, }: {
|
|
95
|
+
filters: Filter[];
|
|
96
|
+
intervalsCache: HistoricalSync["intervalsCache"];
|
|
97
|
+
}) => number | undefined;
|
|
98
|
+
/**
|
|
99
|
+
* Merges multiple event generators into a single generator while preserving
|
|
100
|
+
* the order of events.
|
|
101
|
+
*
|
|
102
|
+
* @param generators - Generators to merge.
|
|
103
|
+
* @returns A single generator that yields events from all generators.
|
|
104
|
+
*/
|
|
105
|
+
export declare function mergeAsyncGeneratorsWithEventOrder(generators: AsyncGenerator<{
|
|
106
|
+
events: Event[];
|
|
107
|
+
checkpoint: string;
|
|
108
|
+
}>[]): AsyncGenerator<{
|
|
109
|
+
events: Event[];
|
|
110
|
+
checkpoint: string;
|
|
111
|
+
}>;
|
|
112
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sync/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { SyncStore } from '../sync-store/index.js';
|
|
2
|
+
import type { RequestQueue } from '../utils/requestQueue.js';
|
|
3
|
+
import type { Transport } from "viem";
|
|
4
|
+
export declare const cachedTransport: ({ requestQueue, syncStore, }: {
|
|
5
|
+
requestQueue: RequestQueue;
|
|
6
|
+
syncStore: SyncStore;
|
|
7
|
+
}) => Transport;
|
|
8
|
+
//# sourceMappingURL=transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/sync/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAO,SAAS,EAAE,MAAM,MAAM,CAAC;AA+B3C,eAAO,MAAM,eAAe;kBAIZ,YAAY;eACf,SAAS;MAClB,SAqEH,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Common } from '../internal/common.js';
|
|
2
|
+
import type { Filter, Fragment, Network, Source } from '../internal/types.js';
|
|
3
|
+
import type { SyncStore } from '../sync-store/index.js';
|
|
4
|
+
import type { SyncBlock } from '../types/sync.js';
|
|
5
|
+
import { type Interval } from '../utils/interval.js';
|
|
6
|
+
import type { RequestQueue } from '../utils/requestQueue.js';
|
|
7
|
+
export type HistoricalSync = {
|
|
8
|
+
intervalsCache: Map<Filter, {
|
|
9
|
+
fragment: Fragment;
|
|
10
|
+
intervals: Interval[];
|
|
11
|
+
}[]>;
|
|
12
|
+
/**
|
|
13
|
+
* Extract raw data for `interval` and return the closest-to-tip block
|
|
14
|
+
* that is synced.
|
|
15
|
+
*/
|
|
16
|
+
sync(interval: Interval): Promise<SyncBlock | undefined>;
|
|
17
|
+
};
|
|
18
|
+
type CreateHistoricalSyncParameters = {
|
|
19
|
+
common: Common;
|
|
20
|
+
sources: Source[];
|
|
21
|
+
syncStore: SyncStore;
|
|
22
|
+
network: Network;
|
|
23
|
+
requestQueue: RequestQueue;
|
|
24
|
+
onFatalError: (error: Error) => void;
|
|
25
|
+
};
|
|
26
|
+
export declare const createHistoricalSync: (args: CreateHistoricalSyncParameters) => Promise<HistoricalSync>;
|
|
27
|
+
export {};
|
|
28
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sync-historical/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAGV,MAAM,EAEN,QAAQ,EAGR,OAAO,EACP,MAAM,EAIP,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AASvD,OAAO,KAAK,EACV,SAAS,EAIV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,QAAQ,EAKd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAmB5D,MAAM,MAAM,cAAc,GAAG;IAC3B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,SAAS,EAAE,QAAQ,EAAE,CAAA;KAAE,EAAE,CAAC,CAAC;IAC7E;;;OAGG;IACH,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;CAC1D,CAAC;AAEF,KAAK,8BAA8B,GAAG;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACtC,CAAC;AAEF,eAAO,MAAM,oBAAoB,SACzB,8BAA8B,KACnC,QAAQ,cAAc,CA0xBxB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { LogFilter } from '../internal/types.js';
|
|
2
|
+
import type { SyncBlock } from '../types/sync.js';
|
|
3
|
+
import { type Hex } from "viem";
|
|
4
|
+
export declare const zeroLogsBloom = "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
|
|
5
|
+
export declare const isInBloom: (_bloom: Hex, input: Hex) => boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Return true if `filter` is in `bloom`.
|
|
8
|
+
*
|
|
9
|
+
* A filter with an address of type `LogFactory` is matched
|
|
10
|
+
* if the address filter is matched (new child contract) or the log
|
|
11
|
+
* filter is matched (log on child contract).
|
|
12
|
+
*
|
|
13
|
+
* Note: False positives are possible.
|
|
14
|
+
*/
|
|
15
|
+
export declare function isFilterInBloom({ block, filter, }: {
|
|
16
|
+
block: Pick<SyncBlock, "number" | "logsBloom">;
|
|
17
|
+
filter: LogFilter;
|
|
18
|
+
}): boolean;
|
|
19
|
+
//# sourceMappingURL=bloom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bloom.d.ts","sourceRoot":"","sources":["../../../src/sync-realtime/bloom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,KAAK,GAAG,EAAsC,MAAM,MAAM,CAAC;AAEpE,eAAO,MAAM,aAAa,ugBAC4e,CAAC;AAIvgB,eAAO,MAAM,SAAS,WAAY,GAAG,SAAS,GAAG,KAAG,OAenD,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,MAAM,GACP,EAAE;IACD,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC;IAC/C,MAAM,EAAE,SAAS,CAAC;CACnB,GAAG,OAAO,CAuDV"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { Common } from '../internal/common.js';
|
|
2
|
+
import type { Factory, Network, Source } from '../internal/types.js';
|
|
3
|
+
import { type SyncProgress } from '../sync/index.js';
|
|
4
|
+
import type { LightBlock, SyncBlock, SyncLog, SyncTrace, SyncTransaction, SyncTransactionReceipt } from '../types/sync.js';
|
|
5
|
+
import type { Queue } from '../utils/queue.js';
|
|
6
|
+
import type { RequestQueue } from '../utils/requestQueue.js';
|
|
7
|
+
import { type Address } from "viem";
|
|
8
|
+
export type RealtimeSync = {
|
|
9
|
+
start(args: {
|
|
10
|
+
syncProgress: Pick<SyncProgress, "finalized">;
|
|
11
|
+
initialChildAddresses: Map<Factory, Set<Address>>;
|
|
12
|
+
}): Promise<Queue<void, BlockWithEventData>>;
|
|
13
|
+
unfinalizedBlocks: LightBlock[];
|
|
14
|
+
finalizedChildAddresses: Map<Factory, Set<Address>>;
|
|
15
|
+
unfinalizedChildAddresses: Map<Factory, Set<Address>>;
|
|
16
|
+
kill: () => void;
|
|
17
|
+
};
|
|
18
|
+
type CreateRealtimeSyncParameters = {
|
|
19
|
+
common: Common;
|
|
20
|
+
network: Network;
|
|
21
|
+
requestQueue: RequestQueue;
|
|
22
|
+
sources: Source[];
|
|
23
|
+
onEvent: (event: RealtimeSyncEvent) => Promise<void>;
|
|
24
|
+
onFatalError: (error: Error) => void;
|
|
25
|
+
};
|
|
26
|
+
export type BlockWithEventData = {
|
|
27
|
+
block: SyncBlock;
|
|
28
|
+
logs: SyncLog[];
|
|
29
|
+
factoryLogs: SyncLog[];
|
|
30
|
+
traces: SyncTrace[];
|
|
31
|
+
transactions: SyncTransaction[];
|
|
32
|
+
transactionReceipts: SyncTransactionReceipt[];
|
|
33
|
+
};
|
|
34
|
+
export type RealtimeSyncEvent = ({
|
|
35
|
+
type: "block";
|
|
36
|
+
hasMatchedFilter: boolean;
|
|
37
|
+
endClock?: () => number;
|
|
38
|
+
} & BlockWithEventData) | {
|
|
39
|
+
type: "finalize";
|
|
40
|
+
block: LightBlock;
|
|
41
|
+
} | {
|
|
42
|
+
type: "reorg";
|
|
43
|
+
block: LightBlock;
|
|
44
|
+
reorgedBlocks: LightBlock[];
|
|
45
|
+
};
|
|
46
|
+
export declare const createRealtimeSync: (args: CreateRealtimeSyncParameters) => RealtimeSync;
|
|
47
|
+
export {};
|
|
48
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sync-realtime/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAEV,OAAO,EAGP,OAAO,EACP,MAAM,EAIP,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EAAE,KAAK,YAAY,EAAyB,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EACT,eAAe,EACf,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAW5D,OAAO,EAAE,KAAK,OAAO,EAAoC,MAAM,MAAM,CAAC;AAGtE,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,CAAC,IAAI,EAAE;QACV,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAC9C,qBAAqB,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC7C,iBAAiB,EAAE,UAAU,EAAE,CAAC;IAChC,uBAAuB,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACpD,yBAAyB,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACtD,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,YAAY,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,WAAW,EAAE,OAAO,EAAE,CAAC;IACvB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,mBAAmB,EAAE,sBAAsB,EAAE,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB,CAAC;IACC,IAAI,EAAE,OAAO,CAAC;IACd,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;CACzB,GAAG,kBAAkB,CAAC,GACvB;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;CACnB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,UAAU,CAAC;IAClB,aAAa,EAAE,UAAU,EAAE,CAAC;CAC7B,CAAC;AAON,eAAO,MAAM,kBAAkB,SACvB,4BAA4B,KACjC,YAi/BF,CAAC"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import type { FragmentId } from '../internal/types.js';
|
|
2
|
+
import type { SyncBlock, SyncLog, SyncTrace, SyncTransaction, SyncTransactionReceipt } from '../types/sync.js';
|
|
3
|
+
import type { ColumnType, Insertable } from "kysely";
|
|
4
|
+
import type { Address, Hash, Hex } from "viem";
|
|
5
|
+
type BlocksTable = {
|
|
6
|
+
hash: Hash;
|
|
7
|
+
chainId: number;
|
|
8
|
+
checkpoint: string;
|
|
9
|
+
number: ColumnType<string, string | bigint, string | bigint>;
|
|
10
|
+
timestamp: ColumnType<string, string | bigint, string | bigint>;
|
|
11
|
+
baseFeePerGas: ColumnType<string, string | bigint, string | bigint> | null;
|
|
12
|
+
difficulty: ColumnType<string, string | bigint, string | bigint>;
|
|
13
|
+
extraData: Hex;
|
|
14
|
+
gasLimit: ColumnType<string, string | bigint, string | bigint>;
|
|
15
|
+
gasUsed: ColumnType<string, string | bigint, string | bigint>;
|
|
16
|
+
logsBloom: Hex;
|
|
17
|
+
miner: Address;
|
|
18
|
+
mixHash: Hash | null;
|
|
19
|
+
nonce: Hex | null;
|
|
20
|
+
parentHash: Hash;
|
|
21
|
+
receiptsRoot: Hex;
|
|
22
|
+
sha3Uncles: Hash | null;
|
|
23
|
+
size: ColumnType<string, string | bigint, string | bigint>;
|
|
24
|
+
stateRoot: Hash;
|
|
25
|
+
totalDifficulty: ColumnType<string, string | bigint, string | bigint> | null;
|
|
26
|
+
transactionsRoot: Hash;
|
|
27
|
+
};
|
|
28
|
+
export declare const encodeBlock: ({ block, chainId, }: {
|
|
29
|
+
block: SyncBlock;
|
|
30
|
+
chainId: number;
|
|
31
|
+
}) => Insertable<BlocksTable>;
|
|
32
|
+
type LogsTable = {
|
|
33
|
+
id: string;
|
|
34
|
+
chainId: number;
|
|
35
|
+
checkpoint: string | null;
|
|
36
|
+
blockHash: Hash;
|
|
37
|
+
blockNumber: ColumnType<string, string | bigint, string | bigint>;
|
|
38
|
+
logIndex: number;
|
|
39
|
+
transactionHash: Hash;
|
|
40
|
+
transactionIndex: number;
|
|
41
|
+
address: Address;
|
|
42
|
+
topic0: Hex | null;
|
|
43
|
+
topic1: Hex | null;
|
|
44
|
+
topic2: Hex | null;
|
|
45
|
+
topic3: Hex | null;
|
|
46
|
+
data: Hex;
|
|
47
|
+
};
|
|
48
|
+
export declare const encodeLog: ({ log, block, chainId, }: {
|
|
49
|
+
log: SyncLog;
|
|
50
|
+
block?: SyncBlock | undefined;
|
|
51
|
+
chainId: number;
|
|
52
|
+
}) => Insertable<LogsTable>;
|
|
53
|
+
type TransactionsTable = {
|
|
54
|
+
hash: Hash;
|
|
55
|
+
chainId: number;
|
|
56
|
+
/** `checkpoint` will be null for transactions inserted before 0.8. This is to avoid a very slow migration. */
|
|
57
|
+
checkpoint: string | null;
|
|
58
|
+
blockHash: Hash;
|
|
59
|
+
blockNumber: ColumnType<string, string | bigint, string | bigint>;
|
|
60
|
+
from: Address;
|
|
61
|
+
gas: ColumnType<string, string | bigint, string | bigint>;
|
|
62
|
+
input: Hex;
|
|
63
|
+
nonce: number;
|
|
64
|
+
r: Hex | null;
|
|
65
|
+
s: Hex | null;
|
|
66
|
+
to: Address | null;
|
|
67
|
+
transactionIndex: number;
|
|
68
|
+
v: ColumnType<string, string | bigint, string | bigint> | null;
|
|
69
|
+
value: ColumnType<string, string | bigint, string | bigint>;
|
|
70
|
+
type: Hex;
|
|
71
|
+
gasPrice: ColumnType<string, string | bigint, string | bigint> | null;
|
|
72
|
+
maxFeePerGas: ColumnType<string, string | bigint, string | bigint> | null;
|
|
73
|
+
maxPriorityFeePerGas: ColumnType<string, string | bigint, string | bigint> | null;
|
|
74
|
+
accessList: string | null;
|
|
75
|
+
};
|
|
76
|
+
export declare const encodeTransaction: ({ transaction, block, chainId, }: {
|
|
77
|
+
transaction: SyncTransaction;
|
|
78
|
+
block: Pick<SyncBlock, "timestamp">;
|
|
79
|
+
chainId: number;
|
|
80
|
+
}) => Insertable<TransactionsTable>;
|
|
81
|
+
type TransactionReceiptsTable = {
|
|
82
|
+
transactionHash: Hash;
|
|
83
|
+
chainId: number;
|
|
84
|
+
blockHash: Hash;
|
|
85
|
+
blockNumber: ColumnType<string, string | bigint, string | bigint>;
|
|
86
|
+
contractAddress: Address | null;
|
|
87
|
+
cumulativeGasUsed: ColumnType<string, string | bigint, string | bigint>;
|
|
88
|
+
effectiveGasPrice: ColumnType<string, string | bigint, string | bigint>;
|
|
89
|
+
from: Address;
|
|
90
|
+
gasUsed: ColumnType<string, string | bigint, string | bigint>;
|
|
91
|
+
logsBloom: Hex;
|
|
92
|
+
status: Hex;
|
|
93
|
+
to: Address | null;
|
|
94
|
+
transactionIndex: number;
|
|
95
|
+
type: Hex;
|
|
96
|
+
};
|
|
97
|
+
export declare const encodeTransactionReceipt: ({ transactionReceipt, chainId, }: {
|
|
98
|
+
transactionReceipt: SyncTransactionReceipt;
|
|
99
|
+
chainId: number;
|
|
100
|
+
}) => Insertable<TransactionReceiptsTable>;
|
|
101
|
+
type TracesTable = {
|
|
102
|
+
id: string;
|
|
103
|
+
chainId: number;
|
|
104
|
+
checkpoint: string;
|
|
105
|
+
type: string;
|
|
106
|
+
transactionHash: Hex;
|
|
107
|
+
blockHash: Hex;
|
|
108
|
+
blockNumber: ColumnType<string, string | bigint, string | bigint>;
|
|
109
|
+
from: Address;
|
|
110
|
+
to: Address | null;
|
|
111
|
+
gas: ColumnType<string, string | bigint, string | bigint>;
|
|
112
|
+
gasUsed: ColumnType<string, string | bigint, string | bigint>;
|
|
113
|
+
input: Hex;
|
|
114
|
+
functionSelector: Hex;
|
|
115
|
+
output: Hex | null;
|
|
116
|
+
error: string | null;
|
|
117
|
+
revertReason: string | null;
|
|
118
|
+
value: ColumnType<string | null, string | bigint | null, string | bigint | null>;
|
|
119
|
+
index: number;
|
|
120
|
+
subcalls: number;
|
|
121
|
+
isReverted: number;
|
|
122
|
+
};
|
|
123
|
+
export declare function encodeTrace({ trace, block, transaction, chainId, }: {
|
|
124
|
+
trace: Omit<SyncTrace["trace"], "calls" | "logs">;
|
|
125
|
+
block: Pick<SyncBlock, "hash" | "number" | "timestamp">;
|
|
126
|
+
transaction: Pick<SyncTransaction, "hash" | "transactionIndex">;
|
|
127
|
+
chainId: number;
|
|
128
|
+
}): Insertable<TracesTable>;
|
|
129
|
+
type RpcRequestResultsTable = {
|
|
130
|
+
request: string;
|
|
131
|
+
request_hash: ColumnType<string, undefined>;
|
|
132
|
+
chain_id: number;
|
|
133
|
+
block_number: ColumnType<string | undefined, string | bigint | undefined, string | bigint | undefined>;
|
|
134
|
+
result: string;
|
|
135
|
+
};
|
|
136
|
+
type IntervalTable = {
|
|
137
|
+
fragment_id: FragmentId;
|
|
138
|
+
chain_id: number;
|
|
139
|
+
blocks: string;
|
|
140
|
+
};
|
|
141
|
+
export type PonderSyncSchema = {
|
|
142
|
+
blocks: BlocksTable;
|
|
143
|
+
logs: LogsTable;
|
|
144
|
+
transactions: TransactionsTable;
|
|
145
|
+
transactionReceipts: TransactionReceiptsTable;
|
|
146
|
+
traces: TracesTable;
|
|
147
|
+
rpc_request_results: RpcRequestResultsTable;
|
|
148
|
+
intervals: IntervalTable;
|
|
149
|
+
};
|
|
150
|
+
export {};
|
|
151
|
+
//# sourceMappingURL=encoding.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../../src/sync-store/encoding.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import type { Database } from '../database/index.js';
|
|
2
|
+
import type { Common } from '../internal/common.js';
|
|
3
|
+
import type { Factory, Filter, FilterWithoutBlocks, Fragment, RawEvent } from '../internal/types.js';
|
|
4
|
+
import type { LightBlock, SyncBlock, SyncLog, SyncTrace, SyncTransaction, SyncTransactionReceipt } from '../types/sync.js';
|
|
5
|
+
import type { Interval } from '../utils/interval.js';
|
|
6
|
+
import { type Address, type Hash } from "viem";
|
|
7
|
+
export type SyncStore = {
|
|
8
|
+
insertIntervals(args: {
|
|
9
|
+
intervals: {
|
|
10
|
+
filter: FilterWithoutBlocks;
|
|
11
|
+
interval: Interval;
|
|
12
|
+
}[];
|
|
13
|
+
chainId: number;
|
|
14
|
+
}): Promise<void>;
|
|
15
|
+
getIntervals(args: {
|
|
16
|
+
filters: Filter[];
|
|
17
|
+
}): Promise<Map<Filter, {
|
|
18
|
+
fragment: Fragment;
|
|
19
|
+
intervals: Interval[];
|
|
20
|
+
}[]>>;
|
|
21
|
+
getChildAddresses(args: {
|
|
22
|
+
filter: Factory;
|
|
23
|
+
limit?: number;
|
|
24
|
+
}): Promise<Address[]>;
|
|
25
|
+
filterChildAddresses(args: {
|
|
26
|
+
filter: Factory;
|
|
27
|
+
addresses: Address[];
|
|
28
|
+
}): Promise<Set<Address>>;
|
|
29
|
+
insertLogs(args: {
|
|
30
|
+
logs: {
|
|
31
|
+
log: SyncLog;
|
|
32
|
+
block?: SyncBlock;
|
|
33
|
+
}[];
|
|
34
|
+
shouldUpdateCheckpoint: boolean;
|
|
35
|
+
chainId: number;
|
|
36
|
+
}): Promise<void>;
|
|
37
|
+
insertBlocks(args: {
|
|
38
|
+
blocks: SyncBlock[];
|
|
39
|
+
chainId: number;
|
|
40
|
+
}): Promise<void>;
|
|
41
|
+
/** Return true if the block receipt is present in the database. */
|
|
42
|
+
hasBlock(args: {
|
|
43
|
+
hash: Hash;
|
|
44
|
+
}): Promise<boolean>;
|
|
45
|
+
insertTransactions(args: {
|
|
46
|
+
transactions: {
|
|
47
|
+
transaction: SyncTransaction;
|
|
48
|
+
block: SyncBlock;
|
|
49
|
+
}[];
|
|
50
|
+
chainId: number;
|
|
51
|
+
}): Promise<void>;
|
|
52
|
+
/** Return true if the transaction is present in the database. */
|
|
53
|
+
hasTransaction(args: {
|
|
54
|
+
hash: Hash;
|
|
55
|
+
}): Promise<boolean>;
|
|
56
|
+
insertTransactionReceipts(args: {
|
|
57
|
+
transactionReceipts: SyncTransactionReceipt[];
|
|
58
|
+
chainId: number;
|
|
59
|
+
}): Promise<void>;
|
|
60
|
+
/** Return true if the transaction receipt is present in the database. */
|
|
61
|
+
hasTransactionReceipt(args: {
|
|
62
|
+
hash: Hash;
|
|
63
|
+
}): Promise<boolean>;
|
|
64
|
+
insertTraces(args: {
|
|
65
|
+
traces: {
|
|
66
|
+
trace: SyncTrace;
|
|
67
|
+
block: SyncBlock;
|
|
68
|
+
transaction: SyncTransaction;
|
|
69
|
+
}[];
|
|
70
|
+
chainId: number;
|
|
71
|
+
}): Promise<void>;
|
|
72
|
+
/** Returns an ordered list of events based on the `filters` and pagination arguments. */
|
|
73
|
+
getEvents(args: {
|
|
74
|
+
filters: Filter[];
|
|
75
|
+
from: string;
|
|
76
|
+
to: string;
|
|
77
|
+
limit?: number;
|
|
78
|
+
}): Promise<{
|
|
79
|
+
events: RawEvent[];
|
|
80
|
+
cursor: string;
|
|
81
|
+
}>;
|
|
82
|
+
insertRpcRequestResult(args: {
|
|
83
|
+
request: string;
|
|
84
|
+
chainId: number;
|
|
85
|
+
blockNumber: bigint | undefined;
|
|
86
|
+
result: string;
|
|
87
|
+
}): Promise<void>;
|
|
88
|
+
getRpcRequestResult(args: {
|
|
89
|
+
request: string;
|
|
90
|
+
chainId: number;
|
|
91
|
+
}): Promise<string | undefined>;
|
|
92
|
+
pruneRpcRequestResult(args: {
|
|
93
|
+
blocks: Pick<LightBlock, "number">[];
|
|
94
|
+
chainId: number;
|
|
95
|
+
}): Promise<void>;
|
|
96
|
+
pruneByChain(args: {
|
|
97
|
+
chainId: number;
|
|
98
|
+
}): Promise<void>;
|
|
99
|
+
};
|
|
100
|
+
export declare const createSyncStore: ({ common, database, }: {
|
|
101
|
+
common: Common;
|
|
102
|
+
database: Database;
|
|
103
|
+
}) => SyncStore;
|
|
104
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sync-store/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAEV,OAAO,EACP,MAAM,EACN,mBAAmB,EACnB,QAAQ,EAIR,QAAQ,EAIT,MAAM,qBAAqB,CAAC;AAO7B,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EACT,OAAO,EACP,SAAS,EACT,eAAe,EACf,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,IAAI,EAKV,MAAM,MAAM,CAAC;AAUd,MAAM,MAAM,SAAS,GAAG;IACtB,eAAe,CAAC,IAAI,EAAE;QACpB,SAAS,EAAE;YACT,MAAM,EAAE,mBAAmB,CAAC;YAC5B,QAAQ,EAAE,QAAQ,CAAC;SACpB,EAAE,CAAC;QACJ,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,YAAY,CAAC,IAAI,EAAE;QACjB,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,SAAS,EAAE,QAAQ,EAAE,CAAA;KAAE,EAAE,CAAC,CAAC,CAAC;IAC1E,iBAAiB,CAAC,IAAI,EAAE;QACtB,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACvB,oBAAoB,CAAC,IAAI,EAAE;QACzB,MAAM,EAAE,OAAO,CAAC;QAChB,SAAS,EAAE,OAAO,EAAE,CAAC;KACtB,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1B,UAAU,CAAC,IAAI,EAAE;QACf,IAAI,EAAE;YAAE,GAAG,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,SAAS,CAAA;SAAE,EAAE,CAAC;QAC5C,sBAAsB,EAAE,OAAO,CAAC;QAChC,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,YAAY,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,kBAAkB,CAAC,IAAI,EAAE;QACvB,YAAY,EAAE;YAAE,WAAW,EAAE,eAAe,CAAC;YAAC,KAAK,EAAE,SAAS,CAAA;SAAE,EAAE,CAAC;QACnE,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,iEAAiE;IACjE,cAAc,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,yBAAyB,CAAC,IAAI,EAAE;QAC9B,mBAAmB,EAAE,sBAAsB,EAAE,CAAC;QAC9C,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,yEAAyE;IACzE,qBAAqB,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,YAAY,CAAC,IAAI,EAAE;QACjB,MAAM,EAAE;YACN,KAAK,EAAE,SAAS,CAAC;YACjB,KAAK,EAAE,SAAS,CAAC;YACjB,WAAW,EAAE,eAAe,CAAC;SAC9B,EAAE,CAAC;QACJ,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,yFAAyF;IACzF,SAAS,CAAC,IAAI,EAAE;QACd,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,sBAAsB,CAAC,IAAI,EAAE;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;QAChC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,mBAAmB,CAAC,IAAI,EAAE;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChC,qBAAqB,CAAC,IAAI,EAAE;QAC1B,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,YAAY,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD,CAAC;AAmCF,eAAO,MAAM,eAAe;YAIlB,MAAM;cACJ,QAAQ;MAChB,SAuvBF,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Common } from '../internal/common.js';
|
|
2
|
+
import type { Kysely, Migration, MigrationProvider } from "kysely";
|
|
3
|
+
declare class StaticMigrationProvider implements MigrationProvider {
|
|
4
|
+
getMigrations(): Promise<Record<string, Migration>>;
|
|
5
|
+
}
|
|
6
|
+
export declare const migrationProvider: StaticMigrationProvider;
|
|
7
|
+
export declare function moveLegacyTables({ common, db, newSchemaName, }: {
|
|
8
|
+
common: Common;
|
|
9
|
+
db: Kysely<any>;
|
|
10
|
+
newSchemaName: string;
|
|
11
|
+
}): Promise<void>;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=migrations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/sync-store/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AA6vCnE,cAAM,uBAAwB,YAAW,iBAAiB;IAClD,aAAa;CAGpB;AAED,eAAO,MAAM,iBAAiB,yBAAgC,CAAC;AAE/D,wBAAsB,gBAAgB,CAAC,EACrC,MAAM,EACN,EAAE,EACF,aAAa,GACd,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB,iBA8EA"}
|