pyric 0.0.1 → 0.1.0-alpha.7
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/README.md +52 -1
- package/dist/app/index.d.ts +81 -0
- package/dist/app/index.d.ts.map +1 -0
- package/dist/app/index.js +78 -0
- package/dist/app/index.js.map +1 -0
- package/dist/auth/index.d.ts +346 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +701 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/prod-backend.d.ts +39 -0
- package/dist/auth/prod-backend.d.ts.map +1 -0
- package/dist/auth/prod-backend.js +179 -0
- package/dist/auth/prod-backend.js.map +1 -0
- package/dist/auth/providers.d.ts +107 -0
- package/dist/auth/providers.d.ts.map +1 -0
- package/dist/auth/providers.js +138 -0
- package/dist/auth/providers.js.map +1 -0
- package/dist/auth/sandbox-backend.d.ts +769 -0
- package/dist/auth/sandbox-backend.d.ts.map +1 -0
- package/dist/auth/sandbox-backend.js +1598 -0
- package/dist/auth/sandbox-backend.js.map +1 -0
- package/dist/auth/target.d.ts +40 -0
- package/dist/auth/target.d.ts.map +1 -0
- package/dist/auth/target.js +28 -0
- package/dist/auth/target.js.map +1 -0
- package/dist/auth/types.d.ts +252 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +26 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/database/constraints/atoms.d.ts +29 -0
- package/dist/database/constraints/atoms.d.ts.map +1 -0
- package/dist/database/constraints/atoms.js +43 -0
- package/dist/database/constraints/atoms.js.map +1 -0
- package/dist/database/constraints/compose.d.ts +16 -0
- package/dist/database/constraints/compose.d.ts.map +1 -0
- package/dist/database/constraints/compose.js +15 -0
- package/dist/database/constraints/compose.js.map +1 -0
- package/dist/database/constraints/data.d.ts +30 -0
- package/dist/database/constraints/data.d.ts.map +1 -0
- package/dist/database/constraints/data.js +46 -0
- package/dist/database/constraints/data.js.map +1 -0
- package/dist/database/constraints/document.d.ts +42 -0
- package/dist/database/constraints/document.d.ts.map +1 -0
- package/dist/database/constraints/document.js +86 -0
- package/dist/database/constraints/document.js.map +1 -0
- package/dist/database/constraints/game.d.ts +30 -0
- package/dist/database/constraints/game.d.ts.map +1 -0
- package/dist/database/constraints/game.js +49 -0
- package/dist/database/constraints/game.js.map +1 -0
- package/dist/database/constraints/index.d.ts +12 -0
- package/dist/database/constraints/index.d.ts.map +1 -0
- package/dist/database/constraints/index.js +9 -0
- package/dist/database/constraints/index.js.map +1 -0
- package/dist/database/constraints/policies.d.ts +16 -0
- package/dist/database/constraints/policies.d.ts.map +1 -0
- package/dist/database/constraints/policies.js +17 -0
- package/dist/database/constraints/policies.js.map +1 -0
- package/dist/database/constraints/ruleset.d.ts +5 -0
- package/dist/database/constraints/ruleset.d.ts.map +1 -0
- package/dist/database/constraints/ruleset.js +132 -0
- package/dist/database/constraints/ruleset.js.map +1 -0
- package/dist/database/constraints/schema.d.ts +17 -0
- package/dist/database/constraints/schema.d.ts.map +1 -0
- package/dist/database/constraints/schema.js +74 -0
- package/dist/database/constraints/schema.js.map +1 -0
- package/dist/database/constraints/types.d.ts +22 -0
- package/dist/database/constraints/types.d.ts.map +1 -0
- package/dist/database/constraints/types.js +2 -0
- package/dist/database/constraints/types.js.map +1 -0
- package/dist/database/crawl/handler.d.ts +7 -0
- package/dist/database/crawl/handler.d.ts.map +1 -0
- package/dist/database/crawl/handler.js +91 -0
- package/dist/database/crawl/handler.js.map +1 -0
- package/dist/database/crawl/semaphore.d.ts +9 -0
- package/dist/database/crawl/semaphore.d.ts.map +1 -0
- package/dist/database/crawl/semaphore.js +27 -0
- package/dist/database/crawl/semaphore.js.map +1 -0
- package/dist/database/crawl/spec.d.ts +33 -0
- package/dist/database/crawl/spec.d.ts.map +1 -0
- package/dist/database/crawl/spec.js +12 -0
- package/dist/database/crawl/spec.js.map +1 -0
- package/dist/database/data/handler.d.ts +9 -0
- package/dist/database/data/handler.d.ts.map +1 -0
- package/dist/database/data/handler.js +96 -0
- package/dist/database/data/handler.js.map +1 -0
- package/dist/database/data/spec.d.ts +77 -0
- package/dist/database/data/spec.d.ts.map +1 -0
- package/dist/database/data/spec.js +17 -0
- package/dist/database/data/spec.js.map +1 -0
- package/dist/database/data/validated.d.ts +8 -0
- package/dist/database/data/validated.d.ts.map +1 -0
- package/dist/database/data/validated.js +99 -0
- package/dist/database/data/validated.js.map +1 -0
- package/dist/database/grammar/RtdbExpr.ohm +98 -0
- package/dist/database/grammar/RtdbExpr.ohm.generated.d.ts +2 -0
- package/dist/database/grammar/RtdbExpr.ohm.generated.d.ts.map +1 -0
- package/dist/database/grammar/RtdbExpr.ohm.generated.js +103 -0
- package/dist/database/grammar/RtdbExpr.ohm.generated.js.map +1 -0
- package/dist/database/grammar/RtdbExprParser.d.ts +5 -0
- package/dist/database/grammar/RtdbExprParser.d.ts.map +1 -0
- package/dist/database/grammar/RtdbExprParser.js +53 -0
- package/dist/database/grammar/RtdbExprParser.js.map +1 -0
- package/dist/database/grammar/linter.d.ts +3 -0
- package/dist/database/grammar/linter.d.ts.map +1 -0
- package/dist/database/grammar/linter.js +66 -0
- package/dist/database/grammar/linter.js.map +1 -0
- package/dist/database/grammar/simulator.d.ts +31 -0
- package/dist/database/grammar/simulator.d.ts.map +1 -0
- package/dist/database/grammar/simulator.js +255 -0
- package/dist/database/grammar/simulator.js.map +1 -0
- package/dist/database/grammar/validator.d.ts +3 -0
- package/dist/database/grammar/validator.d.ts.map +1 -0
- package/dist/database/grammar/validator.js +84 -0
- package/dist/database/grammar/validator.js.map +1 -0
- package/dist/database/host.d.ts +50 -0
- package/dist/database/host.d.ts.map +1 -0
- package/dist/database/host.js +41 -0
- package/dist/database/host.js.map +1 -0
- package/dist/database/index.d.ts +40 -0
- package/dist/database/index.d.ts.map +1 -0
- package/dist/database/index.js +47 -0
- package/dist/database/index.js.map +1 -0
- package/dist/database/initialize-from-app.d.ts +28 -0
- package/dist/database/initialize-from-app.d.ts.map +1 -0
- package/dist/database/initialize-from-app.js +23 -0
- package/dist/database/initialize-from-app.js.map +1 -0
- package/dist/database/ir/handler.d.ts +6 -0
- package/dist/database/ir/handler.d.ts.map +1 -0
- package/dist/database/ir/handler.js +52 -0
- package/dist/database/ir/handler.js.map +1 -0
- package/dist/database/ir/spec.d.ts +25 -0
- package/dist/database/ir/spec.d.ts.map +1 -0
- package/dist/database/ir/spec.js +11 -0
- package/dist/database/ir/spec.js.map +1 -0
- package/dist/database/mapper.d.ts +9 -0
- package/dist/database/mapper.d.ts.map +1 -0
- package/dist/database/mapper.js +115 -0
- package/dist/database/mapper.js.map +1 -0
- package/dist/database/modular.d.ts +604 -0
- package/dist/database/modular.d.ts.map +1 -0
- package/dist/database/modular.js +1226 -0
- package/dist/database/modular.js.map +1 -0
- package/dist/database/replay.d.ts +33 -0
- package/dist/database/replay.d.ts.map +1 -0
- package/dist/database/replay.js +124 -0
- package/dist/database/replay.js.map +1 -0
- package/dist/database/resolver.d.ts +4 -0
- package/dist/database/resolver.d.ts.map +1 -0
- package/dist/database/resolver.js +66 -0
- package/dist/database/resolver.js.map +1 -0
- package/dist/database/sandbox/backend.d.ts +403 -0
- package/dist/database/sandbox/backend.d.ts.map +1 -0
- package/dist/database/sandbox/backend.js +1467 -0
- package/dist/database/sandbox/backend.js.map +1 -0
- package/dist/database/sandbox/data-tree.d.ts +123 -0
- package/dist/database/sandbox/data-tree.d.ts.map +1 -0
- package/dist/database/sandbox/data-tree.js +310 -0
- package/dist/database/sandbox/data-tree.js.map +1 -0
- package/dist/database/sandbox/normalize.d.ts +77 -0
- package/dist/database/sandbox/normalize.d.ts.map +1 -0
- package/dist/database/sandbox/normalize.js +165 -0
- package/dist/database/sandbox/normalize.js.map +1 -0
- package/dist/database/sandbox/push-id.d.ts +32 -0
- package/dist/database/sandbox/push-id.d.ts.map +1 -0
- package/dist/database/sandbox/push-id.js +82 -0
- package/dist/database/sandbox/push-id.js.map +1 -0
- package/dist/database/sandbox/query.d.ts +175 -0
- package/dist/database/sandbox/query.d.ts.map +1 -0
- package/dist/database/sandbox/query.js +269 -0
- package/dist/database/sandbox/query.js.map +1 -0
- package/dist/database/sandbox/rules-eval.d.ts +69 -0
- package/dist/database/sandbox/rules-eval.d.ts.map +1 -0
- package/dist/database/sandbox/rules-eval.js +124 -0
- package/dist/database/sandbox/rules-eval.js.map +1 -0
- package/dist/database/sandbox/sentinels.d.ts +71 -0
- package/dist/database/sandbox/sentinels.d.ts.map +1 -0
- package/dist/database/sandbox/sentinels.js +92 -0
- package/dist/database/sandbox/sentinels.js.map +1 -0
- package/dist/database/simulation/handler.d.ts +6 -0
- package/dist/database/simulation/handler.d.ts.map +1 -0
- package/dist/database/simulation/handler.js +236 -0
- package/dist/database/simulation/handler.js.map +1 -0
- package/dist/database/simulation/spec.d.ts +69 -0
- package/dist/database/simulation/spec.d.ts.map +1 -0
- package/dist/database/simulation/spec.js +25 -0
- package/dist/database/simulation/spec.js.map +1 -0
- package/dist/database/tools.d.ts +22 -0
- package/dist/database/tools.d.ts.map +1 -0
- package/dist/database/tools.js +272 -0
- package/dist/database/tools.js.map +1 -0
- package/dist/database/types.d.ts +210 -0
- package/dist/database/types.d.ts.map +1 -0
- package/dist/database/types.js +26 -0
- package/dist/database/types.js.map +1 -0
- package/dist/database/write/handler.d.ts +7 -0
- package/dist/database/write/handler.d.ts.map +1 -0
- package/dist/database/write/handler.js +42 -0
- package/dist/database/write/handler.js.map +1 -0
- package/dist/database/write/spec.d.ts +18 -0
- package/dist/database/write/spec.d.ts.map +1 -0
- package/dist/database/write/spec.js +7 -0
- package/dist/database/write/spec.js.map +1 -0
- package/dist/firestore/index.d.ts +533 -0
- package/dist/firestore/index.d.ts.map +1 -0
- package/dist/firestore/index.js +1536 -0
- package/dist/firestore/index.js.map +1 -0
- package/dist/firestore/tools.d.ts +67 -0
- package/dist/firestore/tools.d.ts.map +1 -0
- package/dist/firestore/tools.js +318 -0
- package/dist/firestore/tools.js.map +1 -0
- package/dist/firestore-values/index.d.ts +63 -0
- package/dist/firestore-values/index.d.ts.map +1 -0
- package/dist/firestore-values/index.js +148 -0
- package/dist/firestore-values/index.js.map +1 -0
- package/dist/project-scope.d.ts +5 -0
- package/dist/project-scope.d.ts.map +1 -0
- package/dist/project-scope.js +2 -0
- package/dist/project-scope.js.map +1 -0
- package/dist/rules/extract.d.ts +28 -0
- package/dist/rules/extract.d.ts.map +1 -0
- package/dist/rules/extract.js +25 -0
- package/dist/rules/extract.js.map +1 -0
- package/dist/rules/generators/assembler.d.ts +19 -0
- package/dist/rules/generators/assembler.d.ts.map +1 -0
- package/dist/rules/generators/assembler.js +292 -0
- package/dist/rules/generators/assembler.js.map +1 -0
- package/dist/rules/generators/expressions.d.ts +52 -0
- package/dist/rules/generators/expressions.d.ts.map +1 -0
- package/dist/rules/generators/expressions.js +117 -0
- package/dist/rules/generators/expressions.js.map +1 -0
- package/dist/rules/generators/grid.d.ts +22 -0
- package/dist/rules/generators/grid.d.ts.map +1 -0
- package/dist/rules/generators/grid.js +52 -0
- package/dist/rules/generators/grid.js.map +1 -0
- package/dist/rules/grammar/FirestoreAST.d.ts +129 -0
- package/dist/rules/grammar/FirestoreAST.d.ts.map +1 -0
- package/dist/rules/grammar/FirestoreAST.js +3 -0
- package/dist/rules/grammar/FirestoreAST.js.map +1 -0
- package/dist/rules/grammar/FirestoreAssembler.d.ts +5 -0
- package/dist/rules/grammar/FirestoreAssembler.d.ts.map +1 -0
- package/dist/rules/grammar/FirestoreAssembler.js +158 -0
- package/dist/rules/grammar/FirestoreAssembler.js.map +1 -0
- package/dist/rules/grammar/FirestoreParser.d.ts +46 -0
- package/dist/rules/grammar/FirestoreParser.d.ts.map +1 -0
- package/dist/rules/grammar/FirestoreParser.js +409 -0
- package/dist/rules/grammar/FirestoreParser.js.map +1 -0
- package/dist/rules/grammar/FirestoreRules.ohm +229 -0
- package/dist/rules/grammar/FirestoreRules.ohm.generated.d.ts +2 -0
- package/dist/rules/grammar/FirestoreRules.ohm.generated.d.ts.map +1 -0
- package/dist/rules/grammar/FirestoreRules.ohm.generated.js +234 -0
- package/dist/rules/grammar/FirestoreRules.ohm.generated.js.map +1 -0
- package/dist/rules/grammar/FirestoreValidator.d.ts +10 -0
- package/dist/rules/grammar/FirestoreValidator.d.ts.map +1 -0
- package/dist/rules/grammar/FirestoreValidator.js +482 -0
- package/dist/rules/grammar/FirestoreValidator.js.map +1 -0
- package/dist/rules/index.d.ts +67 -0
- package/dist/rules/index.d.ts.map +1 -0
- package/dist/rules/index.js +80 -0
- package/dist/rules/index.js.map +1 -0
- package/dist/rules/indexes/extract/annotation-collect.d.ts +42 -0
- package/dist/rules/indexes/extract/annotation-collect.d.ts.map +1 -0
- package/dist/rules/indexes/extract/annotation-collect.js +69 -0
- package/dist/rules/indexes/extract/annotation-collect.js.map +1 -0
- package/dist/rules/indexes/extract/annotations.d.ts +50 -0
- package/dist/rules/indexes/extract/annotations.d.ts.map +1 -0
- package/dist/rules/indexes/extract/annotations.js +144 -0
- package/dist/rules/indexes/extract/annotations.js.map +1 -0
- package/dist/rules/indexes/extract/ast.d.ts +54 -0
- package/dist/rules/indexes/extract/ast.d.ts.map +1 -0
- package/dist/rules/indexes/extract/ast.js +119 -0
- package/dist/rules/indexes/extract/ast.js.map +1 -0
- package/dist/rules/indexes/extract/classify.d.ts +41 -0
- package/dist/rules/indexes/extract/classify.d.ts.map +1 -0
- package/dist/rules/indexes/extract/classify.js +138 -0
- package/dist/rules/indexes/extract/classify.js.map +1 -0
- package/dist/rules/indexes/extract/composite.d.ts +38 -0
- package/dist/rules/indexes/extract/composite.d.ts.map +1 -0
- package/dist/rules/indexes/extract/composite.js +85 -0
- package/dist/rules/indexes/extract/composite.js.map +1 -0
- package/dist/rules/indexes/extract/dataflow.d.ts +45 -0
- package/dist/rules/indexes/extract/dataflow.d.ts.map +1 -0
- package/dist/rules/indexes/extract/dataflow.js +200 -0
- package/dist/rules/indexes/extract/dataflow.js.map +1 -0
- package/dist/rules/indexes/extract/enumerate.d.ts +41 -0
- package/dist/rules/indexes/extract/enumerate.d.ts.map +1 -0
- package/dist/rules/indexes/extract/enumerate.js +163 -0
- package/dist/rules/indexes/extract/enumerate.js.map +1 -0
- package/dist/rules/indexes/extract/extractor.d.ts +3 -0
- package/dist/rules/indexes/extract/extractor.d.ts.map +1 -0
- package/dist/rules/indexes/extract/extractor.js +274 -0
- package/dist/rules/indexes/extract/extractor.js.map +1 -0
- package/dist/rules/indexes/extract/types.d.ts +211 -0
- package/dist/rules/indexes/extract/types.d.ts.map +1 -0
- package/dist/rules/indexes/extract/types.js +14 -0
- package/dist/rules/indexes/extract/types.js.map +1 -0
- package/dist/rules/indexes/extractHandler.d.ts +16 -0
- package/dist/rules/indexes/extractHandler.d.ts.map +1 -0
- package/dist/rules/indexes/extractHandler.js +100 -0
- package/dist/rules/indexes/extractHandler.js.map +1 -0
- package/dist/rules/indexes/extractTool.d.ts +15 -0
- package/dist/rules/indexes/extractTool.d.ts.map +1 -0
- package/dist/rules/indexes/extractTool.js +55 -0
- package/dist/rules/indexes/extractTool.js.map +1 -0
- package/dist/rules/indexes/types.d.ts +71 -0
- package/dist/rules/indexes/types.d.ts.map +1 -0
- package/dist/rules/indexes/types.js +15 -0
- package/dist/rules/indexes/types.js.map +1 -0
- package/dist/rules/inspect/handler.d.ts +6 -0
- package/dist/rules/inspect/handler.d.ts.map +1 -0
- package/dist/rules/inspect/handler.js +144 -0
- package/dist/rules/inspect/handler.js.map +1 -0
- package/dist/rules/inspect/spec.d.ts +37 -0
- package/dist/rules/inspect/spec.d.ts.map +1 -0
- package/dist/rules/inspect/spec.js +2 -0
- package/dist/rules/inspect/spec.js.map +1 -0
- package/dist/rules/inspect/tools.d.ts +21 -0
- package/dist/rules/inspect/tools.d.ts.map +1 -0
- package/dist/rules/inspect/tools.js +21 -0
- package/dist/rules/inspect/tools.js.map +1 -0
- package/dist/rules/linter/ast-utils.d.ts +97 -0
- package/dist/rules/linter/ast-utils.d.ts.map +1 -0
- package/dist/rules/linter/ast-utils.js +491 -0
- package/dist/rules/linter/ast-utils.js.map +1 -0
- package/dist/rules/linter/hallucinations.d.ts +34 -0
- package/dist/rules/linter/hallucinations.d.ts.map +1 -0
- package/dist/rules/linter/hallucinations.js +334 -0
- package/dist/rules/linter/hallucinations.js.map +1 -0
- package/dist/rules/linter/linter.d.ts +84 -0
- package/dist/rules/linter/linter.d.ts.map +1 -0
- package/dist/rules/linter/linter.js +784 -0
- package/dist/rules/linter/linter.js.map +1 -0
- package/dist/rules/modules/resolver-browser.d.ts +41 -0
- package/dist/rules/modules/resolver-browser.d.ts.map +1 -0
- package/dist/rules/modules/resolver-browser.js +63 -0
- package/dist/rules/modules/resolver-browser.js.map +1 -0
- package/dist/rules/modules/resolver-core.d.ts +51 -0
- package/dist/rules/modules/resolver-core.d.ts.map +1 -0
- package/dist/rules/modules/resolver-core.js +338 -0
- package/dist/rules/modules/resolver-core.js.map +1 -0
- package/dist/rules/modules/resolver.d.ts +17 -0
- package/dist/rules/modules/resolver.d.ts.map +1 -0
- package/dist/rules/modules/resolver.js +49 -0
- package/dist/rules/modules/resolver.js.map +1 -0
- package/dist/rules/modules/stdlib/atomic.rules +52 -0
- package/dist/rules/modules/stdlib/atomic.test.json +152 -0
- package/dist/rules/modules/stdlib/auth.rules +7 -0
- package/dist/rules/modules/stdlib/auth.test.json +53 -0
- package/dist/rules/modules/stdlib/content.rules +50 -0
- package/dist/rules/modules/stdlib/content.test.json +238 -0
- package/dist/rules/modules/stdlib/counters.rules +41 -0
- package/dist/rules/modules/stdlib/counters.test.json +254 -0
- package/dist/rules/modules/stdlib/geometry.rules +43 -0
- package/dist/rules/modules/stdlib/geometry.test.json +200 -0
- package/dist/rules/modules/stdlib/joining.rules +49 -0
- package/dist/rules/modules/stdlib/joining.test.json +287 -0
- package/dist/rules/modules/stdlib/lifecycle.rules +51 -0
- package/dist/rules/modules/stdlib/lifecycle.test.json +288 -0
- package/dist/rules/modules/stdlib/lobby.rules +44 -0
- package/dist/rules/modules/stdlib/lobby.test.json +32 -0
- package/dist/rules/modules/stdlib/membership.rules +40 -0
- package/dist/rules/modules/stdlib/membership.test.json +107 -0
- package/dist/rules/modules/stdlib/spaces.rules +46 -0
- package/dist/rules/modules/stdlib/spaces.test.json +392 -0
- package/dist/rules/modules/stdlib/state.rules +28 -0
- package/dist/rules/modules/stdlib/state.test.json +55 -0
- package/dist/rules/modules/stdlib/timing.rules +20 -0
- package/dist/rules/modules/stdlib/timing.test.json +106 -0
- package/dist/rules/modules/stdlib/transitions.rules +34 -0
- package/dist/rules/modules/stdlib/transitions.test.json +86 -0
- package/dist/rules/modules/stdlib/turns.rules +27 -0
- package/dist/rules/modules/stdlib/turns.test.json +64 -0
- package/dist/rules/modules/stdlib/validation.rules +31 -0
- package/dist/rules/modules/stdlib/validation.test.json +184 -0
- package/dist/rules/modules/stdlib-content.d.ts +11 -0
- package/dist/rules/modules/stdlib-content.d.ts.map +1 -0
- package/dist/rules/modules/stdlib-content.js +590 -0
- package/dist/rules/modules/stdlib-content.js.map +1 -0
- package/dist/rules/node.d.ts +17 -0
- package/dist/rules/node.d.ts.map +1 -0
- package/dist/rules/node.js +21 -0
- package/dist/rules/node.js.map +1 -0
- package/dist/rules/rtdb.d.ts +28 -0
- package/dist/rules/rtdb.d.ts.map +1 -0
- package/dist/rules/rtdb.js +15 -0
- package/dist/rules/rtdb.js.map +1 -0
- package/dist/rules/simulator/evaluator.d.ts +179 -0
- package/dist/rules/simulator/evaluator.d.ts.map +1 -0
- package/dist/rules/simulator/evaluator.js +1221 -0
- package/dist/rules/simulator/evaluator.js.map +1 -0
- package/dist/rules/simulator/expression/eval-errors.d.ts +86 -0
- package/dist/rules/simulator/expression/eval-errors.d.ts.map +1 -0
- package/dist/rules/simulator/expression/eval-errors.js +68 -0
- package/dist/rules/simulator/expression/eval-errors.js.map +1 -0
- package/dist/rules/simulator/expression/evaluator.d.ts +43 -0
- package/dist/rules/simulator/expression/evaluator.d.ts.map +1 -0
- package/dist/rules/simulator/expression/evaluator.js +298 -0
- package/dist/rules/simulator/expression/evaluator.js.map +1 -0
- package/dist/rules/simulator/expression/lexer.d.ts +36 -0
- package/dist/rules/simulator/expression/lexer.d.ts.map +1 -0
- package/dist/rules/simulator/expression/lexer.js +318 -0
- package/dist/rules/simulator/expression/lexer.js.map +1 -0
- package/dist/rules/simulator/expression/parser.d.ts +39 -0
- package/dist/rules/simulator/expression/parser.d.ts.map +1 -0
- package/dist/rules/simulator/expression/parser.js +329 -0
- package/dist/rules/simulator/expression/parser.js.map +1 -0
- package/dist/rules/simulator/expression/types.d.ts +137 -0
- package/dist/rules/simulator/expression/types.d.ts.map +1 -0
- package/dist/rules/simulator/expression/types.js +90 -0
- package/dist/rules/simulator/expression/types.js.map +1 -0
- package/dist/rules/simulator/expression/walk-data.d.ts +52 -0
- package/dist/rules/simulator/expression/walk-data.d.ts.map +1 -0
- package/dist/rules/simulator/expression/walk-data.js +167 -0
- package/dist/rules/simulator/expression/walk-data.js.map +1 -0
- package/dist/rules/simulator/firestore-set.d.ts +25 -0
- package/dist/rules/simulator/firestore-set.d.ts.map +1 -0
- package/dist/rules/simulator/firestore-set.js +89 -0
- package/dist/rules/simulator/firestore-set.js.map +1 -0
- package/dist/rules/simulator/handler.d.ts +36 -0
- package/dist/rules/simulator/handler.d.ts.map +1 -0
- package/dist/rules/simulator/handler.js +583 -0
- package/dist/rules/simulator/handler.js.map +1 -0
- package/dist/rules/simulator/mapdiff.d.ts +29 -0
- package/dist/rules/simulator/mapdiff.d.ts.map +1 -0
- package/dist/rules/simulator/mapdiff.js +72 -0
- package/dist/rules/simulator/mapdiff.js.map +1 -0
- package/dist/rules/simulator/project-after-state.d.ts +33 -0
- package/dist/rules/simulator/project-after-state.d.ts.map +1 -0
- package/dist/rules/simulator/project-after-state.js +88 -0
- package/dist/rules/simulator/project-after-state.js.map +1 -0
- package/dist/rules/simulator/query-proof.d.ts +80 -0
- package/dist/rules/simulator/query-proof.d.ts.map +1 -0
- package/dist/rules/simulator/query-proof.js +142 -0
- package/dist/rules/simulator/query-proof.js.map +1 -0
- package/dist/rules/simulator/value-equality.d.ts +8 -0
- package/dist/rules/simulator/value-equality.d.ts.map +1 -0
- package/dist/rules/simulator/value-equality.js +40 -0
- package/dist/rules/simulator/value-equality.js.map +1 -0
- package/dist/rules/simulator/wrappers/base.d.ts +129 -0
- package/dist/rules/simulator/wrappers/base.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/base.js +90 -0
- package/dist/rules/simulator/wrappers/base.js.map +1 -0
- package/dist/rules/simulator/wrappers/bytes.d.ts +45 -0
- package/dist/rules/simulator/wrappers/bytes.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/bytes.js +130 -0
- package/dist/rules/simulator/wrappers/bytes.js.map +1 -0
- package/dist/rules/simulator/wrappers/duration.d.ts +76 -0
- package/dist/rules/simulator/wrappers/duration.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/duration.js +176 -0
- package/dist/rules/simulator/wrappers/duration.js.map +1 -0
- package/dist/rules/simulator/wrappers/float.d.ts +52 -0
- package/dist/rules/simulator/wrappers/float.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/float.js +88 -0
- package/dist/rules/simulator/wrappers/float.js.map +1 -0
- package/dist/rules/simulator/wrappers/latlng.d.ts +40 -0
- package/dist/rules/simulator/wrappers/latlng.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/latlng.js +100 -0
- package/dist/rules/simulator/wrappers/latlng.js.map +1 -0
- package/dist/rules/simulator/wrappers/path.d.ts +75 -0
- package/dist/rules/simulator/wrappers/path.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/path.js +158 -0
- package/dist/rules/simulator/wrappers/path.js.map +1 -0
- package/dist/rules/simulator/wrappers/reference.d.ts +82 -0
- package/dist/rules/simulator/wrappers/reference.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/reference.js +145 -0
- package/dist/rules/simulator/wrappers/reference.js.map +1 -0
- package/dist/rules/simulator/wrappers/timestamp.d.ts +86 -0
- package/dist/rules/simulator/wrappers/timestamp.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/timestamp.js +207 -0
- package/dist/rules/simulator/wrappers/timestamp.js.map +1 -0
- package/dist/rules/simulator/wrappers/vector.d.ts +43 -0
- package/dist/rules/simulator/wrappers/vector.d.ts.map +1 -0
- package/dist/rules/simulator/wrappers/vector.js +80 -0
- package/dist/rules/simulator/wrappers/vector.js.map +1 -0
- package/dist/rules/simulator-tools-impl.d.ts +64 -0
- package/dist/rules/simulator-tools-impl.d.ts.map +1 -0
- package/dist/rules/simulator-tools-impl.js +462 -0
- package/dist/rules/simulator-tools-impl.js.map +1 -0
- package/dist/rules/simulator.d.ts +20 -0
- package/dist/rules/simulator.d.ts.map +1 -0
- package/dist/rules/simulator.js +24 -0
- package/dist/rules/simulator.js.map +1 -0
- package/dist/rules/stdlib-modules.d.ts +73 -0
- package/dist/rules/stdlib-modules.d.ts.map +1 -0
- package/dist/rules/stdlib-modules.js +849 -0
- package/dist/rules/stdlib-modules.js.map +1 -0
- package/dist/rules/stdlib-tools.d.ts +19 -0
- package/dist/rules/stdlib-tools.d.ts.map +1 -0
- package/dist/rules/stdlib-tools.js +164 -0
- package/dist/rules/stdlib-tools.js.map +1 -0
- package/dist/rules/test/handler.d.ts +9 -0
- package/dist/rules/test/handler.d.ts.map +1 -0
- package/dist/rules/test/handler.js +124 -0
- package/dist/rules/test/handler.js.map +1 -0
- package/dist/rules/test/spec.d.ts +517 -0
- package/dist/rules/test/spec.d.ts.map +1 -0
- package/dist/rules/test/spec.js +227 -0
- package/dist/rules/test/spec.js.map +1 -0
- package/dist/rules/tools.d.ts +41 -0
- package/dist/rules/tools.d.ts.map +1 -0
- package/dist/rules/tools.js +124 -0
- package/dist/rules/tools.js.map +1 -0
- package/dist/rules/write/handler.d.ts +6 -0
- package/dist/rules/write/handler.d.ts.map +1 -0
- package/dist/rules/write/handler.js +126 -0
- package/dist/rules/write/handler.js.map +1 -0
- package/dist/rules/write/spec.d.ts +28 -0
- package/dist/rules/write/spec.d.ts.map +1 -0
- package/dist/rules/write/spec.js +2 -0
- package/dist/rules/write/spec.js.map +1 -0
- package/dist/sandbox/admin-compat.d.ts +20 -0
- package/dist/sandbox/admin-compat.d.ts.map +1 -0
- package/dist/sandbox/admin-compat.js +19 -0
- package/dist/sandbox/admin-compat.js.map +1 -0
- package/dist/sandbox/admin-firestore/error-translation.d.ts +86 -0
- package/dist/sandbox/admin-firestore/error-translation.d.ts.map +1 -0
- package/dist/sandbox/admin-firestore/error-translation.js +204 -0
- package/dist/sandbox/admin-firestore/error-translation.js.map +1 -0
- package/dist/sandbox/admin-firestore/index.d.ts +169 -0
- package/dist/sandbox/admin-firestore/index.d.ts.map +1 -0
- package/dist/sandbox/admin-firestore/index.js +456 -0
- package/dist/sandbox/admin-firestore/index.js.map +1 -0
- package/dist/sandbox/admin-firestore/remote.d.ts +97 -0
- package/dist/sandbox/admin-firestore/remote.d.ts.map +1 -0
- package/dist/sandbox/admin-firestore/remote.js +735 -0
- package/dist/sandbox/admin-firestore/remote.js.map +1 -0
- package/dist/sandbox/branches/index.d.ts +141 -0
- package/dist/sandbox/branches/index.d.ts.map +1 -0
- package/dist/sandbox/branches/index.js +327 -0
- package/dist/sandbox/branches/index.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/batch.d.ts +34 -0
- package/dist/sandbox/firestore/admin-compat/batch.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/batch.js +73 -0
- package/dist/sandbox/firestore/admin-compat/batch.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/doc-ref.d.ts +38 -0
- package/dist/sandbox/firestore/admin-compat/doc-ref.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/doc-ref.js +154 -0
- package/dist/sandbox/firestore/admin-compat/doc-ref.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/firestore.d.ts +45 -0
- package/dist/sandbox/firestore/admin-compat/firestore.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/firestore.js +114 -0
- package/dist/sandbox/firestore/admin-compat/firestore.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/index.d.ts +45 -0
- package/dist/sandbox/firestore/admin-compat/index.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/index.js +27 -0
- package/dist/sandbox/firestore/admin-compat/index.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/paths.d.ts +37 -0
- package/dist/sandbox/firestore/admin-compat/paths.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/paths.js +49 -0
- package/dist/sandbox/firestore/admin-compat/paths.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/query.d.ts +261 -0
- package/dist/sandbox/firestore/admin-compat/query.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/query.js +704 -0
- package/dist/sandbox/firestore/admin-compat/query.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/read-translation.d.ts +8 -0
- package/dist/sandbox/firestore/admin-compat/read-translation.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/read-translation.js +59 -0
- package/dist/sandbox/firestore/admin-compat/read-translation.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/snapshots.d.ts +39 -0
- package/dist/sandbox/firestore/admin-compat/snapshots.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/snapshots.js +50 -0
- package/dist/sandbox/firestore/admin-compat/snapshots.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/transaction.d.ts +35 -0
- package/dist/sandbox/firestore/admin-compat/transaction.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/transaction.js +88 -0
- package/dist/sandbox/firestore/admin-compat/transaction.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/types.d.ts +297 -0
- package/dist/sandbox/firestore/admin-compat/types.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/types.js +127 -0
- package/dist/sandbox/firestore/admin-compat/types.js.map +1 -0
- package/dist/sandbox/firestore/admin-compat/value-order.d.ts +49 -0
- package/dist/sandbox/firestore/admin-compat/value-order.d.ts.map +1 -0
- package/dist/sandbox/firestore/admin-compat/value-order.js +172 -0
- package/dist/sandbox/firestore/admin-compat/value-order.js.map +1 -0
- package/dist/sandbox/firestore/auto-id.d.ts +26 -0
- package/dist/sandbox/firestore/auto-id.d.ts.map +1 -0
- package/dist/sandbox/firestore/auto-id.js +36 -0
- package/dist/sandbox/firestore/auto-id.js.map +1 -0
- package/dist/sandbox/firestore/converters/bytes-geopoint.d.ts +48 -0
- package/dist/sandbox/firestore/converters/bytes-geopoint.d.ts.map +1 -0
- package/dist/sandbox/firestore/converters/bytes-geopoint.js +85 -0
- package/dist/sandbox/firestore/converters/bytes-geopoint.js.map +1 -0
- package/dist/sandbox/firestore/converters/fieldvalue.d.ts +69 -0
- package/dist/sandbox/firestore/converters/fieldvalue.d.ts.map +1 -0
- package/dist/sandbox/firestore/converters/fieldvalue.js +166 -0
- package/dist/sandbox/firestore/converters/fieldvalue.js.map +1 -0
- package/dist/sandbox/firestore/converters/reference.d.ts +31 -0
- package/dist/sandbox/firestore/converters/reference.d.ts.map +1 -0
- package/dist/sandbox/firestore/converters/reference.js +51 -0
- package/dist/sandbox/firestore/converters/reference.js.map +1 -0
- package/dist/sandbox/firestore/converters/timestamp.d.ts +32 -0
- package/dist/sandbox/firestore/converters/timestamp.d.ts.map +1 -0
- package/dist/sandbox/firestore/converters/timestamp.js +63 -0
- package/dist/sandbox/firestore/converters/timestamp.js.map +1 -0
- package/dist/sandbox/firestore/converters/user-timestamp.d.ts +46 -0
- package/dist/sandbox/firestore/converters/user-timestamp.d.ts.map +1 -0
- package/dist/sandbox/firestore/converters/user-timestamp.js +65 -0
- package/dist/sandbox/firestore/converters/user-timestamp.js.map +1 -0
- package/dist/sandbox/firestore/converters/vector.d.ts +24 -0
- package/dist/sandbox/firestore/converters/vector.d.ts.map +1 -0
- package/dist/sandbox/firestore/converters/vector.js +53 -0
- package/dist/sandbox/firestore/converters/vector.js.map +1 -0
- package/dist/sandbox/firestore/errors.d.ts +82 -0
- package/dist/sandbox/firestore/errors.d.ts.map +1 -0
- package/dist/sandbox/firestore/errors.js +54 -0
- package/dist/sandbox/firestore/errors.js.map +1 -0
- package/dist/sandbox/firestore/event-log.d.ts +99 -0
- package/dist/sandbox/firestore/event-log.d.ts.map +1 -0
- package/dist/sandbox/firestore/event-log.js +67 -0
- package/dist/sandbox/firestore/event-log.js.map +1 -0
- package/dist/sandbox/firestore/field-merge.d.ts +64 -0
- package/dist/sandbox/firestore/field-merge.d.ts.map +1 -0
- package/dist/sandbox/firestore/field-merge.js +221 -0
- package/dist/sandbox/firestore/field-merge.js.map +1 -0
- package/dist/sandbox/firestore/list-query-proof.d.ts +77 -0
- package/dist/sandbox/firestore/list-query-proof.d.ts.map +1 -0
- package/dist/sandbox/firestore/list-query-proof.js +170 -0
- package/dist/sandbox/firestore/list-query-proof.js.map +1 -0
- package/dist/sandbox/firestore/local-environment.d.ts +806 -0
- package/dist/sandbox/firestore/local-environment.d.ts.map +1 -0
- package/dist/sandbox/firestore/local-environment.js +3028 -0
- package/dist/sandbox/firestore/local-environment.js.map +1 -0
- package/dist/sandbox/firestore/local-state.d.ts +196 -0
- package/dist/sandbox/firestore/local-state.d.ts.map +1 -0
- package/dist/sandbox/firestore/local-state.js +413 -0
- package/dist/sandbox/firestore/local-state.js.map +1 -0
- package/dist/sandbox/firestore/overlay-backing.d.ts +44 -0
- package/dist/sandbox/firestore/overlay-backing.d.ts.map +1 -0
- package/dist/sandbox/firestore/overlay-backing.js +82 -0
- package/dist/sandbox/firestore/overlay-backing.js.map +1 -0
- package/dist/sandbox/firestore/sentinel-capture.d.ts +30 -0
- package/dist/sandbox/firestore/sentinel-capture.d.ts.map +1 -0
- package/dist/sandbox/firestore/sentinel-capture.js +61 -0
- package/dist/sandbox/firestore/sentinel-capture.js.map +1 -0
- package/dist/sandbox/firestore/snapshot-listeners.d.ts +284 -0
- package/dist/sandbox/firestore/snapshot-listeners.d.ts.map +1 -0
- package/dist/sandbox/firestore/snapshot-listeners.js +194 -0
- package/dist/sandbox/firestore/snapshot-listeners.js.map +1 -0
- package/dist/sandbox/firestore/topk.d.ts +12 -0
- package/dist/sandbox/firestore/topk.d.ts.map +1 -0
- package/dist/sandbox/firestore/topk.js +42 -0
- package/dist/sandbox/firestore/topk.js.map +1 -0
- package/dist/sandbox/firestore/transaction-merge.d.ts +55 -0
- package/dist/sandbox/firestore/transaction-merge.d.ts.map +1 -0
- package/dist/sandbox/firestore/transaction-merge.js +107 -0
- package/dist/sandbox/firestore/transaction-merge.js.map +1 -0
- package/dist/sandbox/firestore/transaction-types.d.ts +152 -0
- package/dist/sandbox/firestore/transaction-types.d.ts.map +1 -0
- package/dist/sandbox/firestore/transaction-types.js +10 -0
- package/dist/sandbox/firestore/transaction-types.js.map +1 -0
- package/dist/sandbox/firestore/transaction.d.ts +79 -0
- package/dist/sandbox/firestore/transaction.d.ts.map +1 -0
- package/dist/sandbox/firestore/transaction.js +95 -0
- package/dist/sandbox/firestore/transaction.js.map +1 -0
- package/dist/sandbox/firestore/value-equality.d.ts +2 -0
- package/dist/sandbox/firestore/value-equality.d.ts.map +1 -0
- package/dist/sandbox/firestore/value-equality.js +35 -0
- package/dist/sandbox/firestore/value-equality.js.map +1 -0
- package/dist/sandbox/firestore/value-resolver.d.ts +172 -0
- package/dist/sandbox/firestore/value-resolver.d.ts.map +1 -0
- package/dist/sandbox/firestore/value-resolver.js +221 -0
- package/dist/sandbox/firestore/value-resolver.js.map +1 -0
- package/dist/sandbox/firestore/wire-encoder.d.ts +14 -0
- package/dist/sandbox/firestore/wire-encoder.d.ts.map +1 -0
- package/dist/sandbox/firestore/wire-encoder.js +130 -0
- package/dist/sandbox/firestore/wire-encoder.js.map +1 -0
- package/dist/sandbox/index.d.ts +50 -0
- package/dist/sandbox/index.d.ts.map +1 -0
- package/dist/sandbox/index.js +63 -0
- package/dist/sandbox/index.js.map +1 -0
- package/dist/sandbox/internal/index.d.ts +36 -0
- package/dist/sandbox/internal/index.d.ts.map +1 -0
- package/dist/sandbox/internal/index.js +72 -0
- package/dist/sandbox/internal/index.js.map +1 -0
- package/dist/sandbox/internal/sandbox-impl.d.ts +343 -0
- package/dist/sandbox/internal/sandbox-impl.d.ts.map +1 -0
- package/dist/sandbox/internal/sandbox-impl.js +718 -0
- package/dist/sandbox/internal/sandbox-impl.js.map +1 -0
- package/dist/sandbox/persistence/backends.d.ts +37 -0
- package/dist/sandbox/persistence/backends.d.ts.map +1 -0
- package/dist/sandbox/persistence/backends.js +202 -0
- package/dist/sandbox/persistence/backends.js.map +1 -0
- package/dist/sandbox/persistence/chunk-format.d.ts +58 -0
- package/dist/sandbox/persistence/chunk-format.d.ts.map +1 -0
- package/dist/sandbox/persistence/chunk-format.js +163 -0
- package/dist/sandbox/persistence/chunk-format.js.map +1 -0
- package/dist/sandbox/persistence/controller.d.ts +39 -0
- package/dist/sandbox/persistence/controller.d.ts.map +1 -0
- package/dist/sandbox/persistence/controller.js +605 -0
- package/dist/sandbox/persistence/controller.js.map +1 -0
- package/dist/sandbox/persistence/index.d.ts +13 -0
- package/dist/sandbox/persistence/index.d.ts.map +1 -0
- package/dist/sandbox/persistence/index.js +5 -0
- package/dist/sandbox/persistence/index.js.map +1 -0
- package/dist/sandbox/persistence/serialize.d.ts +53 -0
- package/dist/sandbox/persistence/serialize.d.ts.map +1 -0
- package/dist/sandbox/persistence/serialize.js +98 -0
- package/dist/sandbox/persistence/serialize.js.map +1 -0
- package/dist/sandbox/persistence/types.d.ts +118 -0
- package/dist/sandbox/persistence/types.d.ts.map +1 -0
- package/dist/sandbox/persistence/types.js +15 -0
- package/dist/sandbox/persistence/types.js.map +1 -0
- package/dist/sandbox/remote.d.ts +118 -0
- package/dist/sandbox/remote.d.ts.map +1 -0
- package/dist/sandbox/remote.js +60 -0
- package/dist/sandbox/remote.js.map +1 -0
- package/dist/sandbox/replay/index.d.ts +106 -0
- package/dist/sandbox/replay/index.d.ts.map +1 -0
- package/dist/sandbox/replay/index.js +246 -0
- package/dist/sandbox/replay/index.js.map +1 -0
- package/dist/sandbox/sandbox-context.d.ts +40 -0
- package/dist/sandbox/sandbox-context.d.ts.map +1 -0
- package/dist/sandbox/sandbox-context.js +72 -0
- package/dist/sandbox/sandbox-context.js.map +1 -0
- package/dist/sandbox/tab-sync/index.d.ts +120 -0
- package/dist/sandbox/tab-sync/index.d.ts.map +1 -0
- package/dist/sandbox/tab-sync/index.js +272 -0
- package/dist/sandbox/tab-sync/index.js.map +1 -0
- package/dist/sandbox/types.d.ts +1235 -0
- package/dist/sandbox/types.d.ts.map +1 -0
- package/dist/sandbox/types.js +46 -0
- package/dist/sandbox/types.js.map +1 -0
- package/dist/storage/admin/api.d.ts +206 -0
- package/dist/storage/admin/api.d.ts.map +1 -0
- package/dist/storage/admin/api.js +349 -0
- package/dist/storage/admin/api.js.map +1 -0
- package/dist/storage/admin/handler.d.ts +29 -0
- package/dist/storage/admin/handler.d.ts.map +1 -0
- package/dist/storage/admin/handler.js +82 -0
- package/dist/storage/admin/handler.js.map +1 -0
- package/dist/storage/admin/spec.d.ts +64 -0
- package/dist/storage/admin/spec.d.ts.map +1 -0
- package/dist/storage/admin/spec.js +8 -0
- package/dist/storage/admin/spec.js.map +1 -0
- package/dist/storage/admin/tools.d.ts +23 -0
- package/dist/storage/admin/tools.d.ts.map +1 -0
- package/dist/storage/admin/tools.js +90 -0
- package/dist/storage/admin/tools.js.map +1 -0
- package/dist/storage/download.d.ts +27 -0
- package/dist/storage/download.d.ts.map +1 -0
- package/dist/storage/download.js +136 -0
- package/dist/storage/download.js.map +1 -0
- package/dist/storage/enforce.d.ts +26 -0
- package/dist/storage/enforce.d.ts.map +1 -0
- package/dist/storage/enforce.js +16 -0
- package/dist/storage/enforce.js.map +1 -0
- package/dist/storage/errors.d.ts +46 -0
- package/dist/storage/errors.d.ts.map +1 -0
- package/dist/storage/errors.js +62 -0
- package/dist/storage/errors.js.map +1 -0
- package/dist/storage/index.d.ts +49 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +60 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/internal.d.ts +18 -0
- package/dist/storage/internal.d.ts.map +1 -0
- package/dist/storage/internal.js +18 -0
- package/dist/storage/internal.js.map +1 -0
- package/dist/storage/list.d.ts +17 -0
- package/dist/storage/list.d.ts.map +1 -0
- package/dist/storage/list.js +91 -0
- package/dist/storage/list.js.map +1 -0
- package/dist/storage/metadata.d.ts +86 -0
- package/dist/storage/metadata.d.ts.map +1 -0
- package/dist/storage/metadata.js +167 -0
- package/dist/storage/metadata.js.map +1 -0
- package/dist/storage/persistence.d.ts +134 -0
- package/dist/storage/persistence.d.ts.map +1 -0
- package/dist/storage/persistence.js +132 -0
- package/dist/storage/persistence.js.map +1 -0
- package/dist/storage/reference.d.ts +63 -0
- package/dist/storage/reference.d.ts.map +1 -0
- package/dist/storage/reference.js +156 -0
- package/dist/storage/reference.js.map +1 -0
- package/dist/storage/rules.d.ts +176 -0
- package/dist/storage/rules.d.ts.map +1 -0
- package/dist/storage/rules.js +621 -0
- package/dist/storage/rules.js.map +1 -0
- package/dist/storage/service.d.ts +139 -0
- package/dist/storage/service.d.ts.map +1 -0
- package/dist/storage/service.js +241 -0
- package/dist/storage/service.js.map +1 -0
- package/dist/storage/upload.d.ts +43 -0
- package/dist/storage/upload.d.ts.map +1 -0
- package/dist/storage/upload.js +235 -0
- package/dist/storage/upload.js.map +1 -0
- package/package.json +109 -3
|
@@ -0,0 +1,403 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RTDB sandbox backend — the data-plane that the modular SDK's
|
|
3
|
+
* sandbox / sandbox-live targets dispatch into.
|
|
4
|
+
*
|
|
5
|
+
* Responsibilities:
|
|
6
|
+
* - Hold the in-memory JSON tree (`DataTree`).
|
|
7
|
+
* - Run identity-aware rule checks via `RulesEvaluator`.
|
|
8
|
+
* - Resolve `serverTimestamp()` sentinels at the write boundary.
|
|
9
|
+
* - Mint RTDB-shaped push IDs.
|
|
10
|
+
* - Fan out `onValue` / child listeners on write.
|
|
11
|
+
*
|
|
12
|
+
* One backend instance per `Sandbox` (the modular surface tracks the
|
|
13
|
+
* binding via a WeakMap so the same sandbox produces the same
|
|
14
|
+
* backend). The backend itself is identity-agnostic; the caller passes
|
|
15
|
+
* `AuthState` per op.
|
|
16
|
+
*
|
|
17
|
+
* Rule-evaluation oracle: the `@pyric/rtdb` simulator handler. The
|
|
18
|
+
* backend never reimplements rule semantics — it just packages the
|
|
19
|
+
* input shape the simulator expects.
|
|
20
|
+
*/
|
|
21
|
+
import type { AuthState, Sandbox } from 'pyric/sandbox';
|
|
22
|
+
import { type JsonValue } from './data-tree.js';
|
|
23
|
+
import { type QueryRow, type QuerySpec } from './query.js';
|
|
24
|
+
/**
|
|
25
|
+
* Listener callback shape — fires with the JSON value at the listener's
|
|
26
|
+
* path, on subscribe and after every write that touches the path or any
|
|
27
|
+
* of its descendants.
|
|
28
|
+
*
|
|
29
|
+
* `exists` mirrors `DataSnapshot.exists()`; sandboxed equivalent of the
|
|
30
|
+
* SDK's "absent path → val === null && exists === false".
|
|
31
|
+
*/
|
|
32
|
+
export interface ValueListener {
|
|
33
|
+
id: string;
|
|
34
|
+
auth: AuthState;
|
|
35
|
+
cb: (snap: {
|
|
36
|
+
val: JsonValue;
|
|
37
|
+
exists: boolean;
|
|
38
|
+
key: string | null;
|
|
39
|
+
}) => void;
|
|
40
|
+
path: string;
|
|
41
|
+
/**
|
|
42
|
+
* If set, the listener is on a `query(ref, ...constraints)` rather
|
|
43
|
+
* than a plain ref. The backend evaluates the spec each time the
|
|
44
|
+
* subtree at `path` changes and only fires the callback when the
|
|
45
|
+
* windowed result has actually changed (locked by oracle observation
|
|
46
|
+
* `rtdb-modular-onvalue-with-query.json` — writes outside the window
|
|
47
|
+
* do NOT fire the listener).
|
|
48
|
+
*/
|
|
49
|
+
query?: QuerySpec;
|
|
50
|
+
/**
|
|
51
|
+
* Cached last-fired payload — used by the query path to skip fires
|
|
52
|
+
* when the windowed result hasn't moved. Plain (non-query) listeners
|
|
53
|
+
* ignore this field (they fire on any descendant write).
|
|
54
|
+
*/
|
|
55
|
+
lastWindow?: QueryRow[];
|
|
56
|
+
/**
|
|
57
|
+
* Cached last-fired value for a plain (non-query) listener. RTDB's
|
|
58
|
+
* SyncTree suppresses a value-listener fire when the value at the
|
|
59
|
+
* listener's exact path didn't change (DB-B8) — an ancestor/descendant
|
|
60
|
+
* write that leaves this path's subtree byte-identical does NOT
|
|
61
|
+
* re-fire. We compare the new value against this cache and skip the
|
|
62
|
+
* fire when they're deep-equal. `undefined` means "not yet fired"
|
|
63
|
+
* (the initial fire always sets it, so it's defined thereafter — a
|
|
64
|
+
* last value of `null` is stored as `null`, distinct from `undefined`).
|
|
65
|
+
*/
|
|
66
|
+
lastValue?: JsonValue;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Child-event listener — fires per-child rather than per-subtree.
|
|
70
|
+
* Locked by oracle observations under
|
|
71
|
+
* `scripts/oracle/observations/rtdb-modular-onchild*.json`:
|
|
72
|
+
*
|
|
73
|
+
* - `child_added`: replays existing children on subscribe (one fire
|
|
74
|
+
* per existing key, in insertion / orderByKey order), then fires
|
|
75
|
+
* once per NEW child after subscribe.
|
|
76
|
+
* - `child_changed`: NO initial replay; fires once when an existing
|
|
77
|
+
* child's value changes. Snapshot carries the NEW value.
|
|
78
|
+
* - `child_removed`: NO initial replay; fires once when a child is
|
|
79
|
+
* deleted (via `remove` or `set(null)`). Snapshot carries the
|
|
80
|
+
* PRIOR value (the now-removed child's last value).
|
|
81
|
+
* - `child_moved`: ordered-query only; under a plain ref it never
|
|
82
|
+
* fires (matches the upstream contract — see the matrix M31 +
|
|
83
|
+
* observation `rtdb-modular-onchildmoved-with-orderby.json`).
|
|
84
|
+
*
|
|
85
|
+
* When a listener carries a {@link ChildListener.spec} (i.e. it was
|
|
86
|
+
* registered on a `query(ref, ...)`), the add / change / remove events
|
|
87
|
+
* are computed against the ordered, WINDOWED result (`fanOutQueryChild`):
|
|
88
|
+
* a child entering the window fires `child_added`, one leaving fires
|
|
89
|
+
* `child_removed`, an in-window value change fires `child_changed`.
|
|
90
|
+
* `child_moved` on a query registers but does not fire on reorder — the
|
|
91
|
+
* reorder / `previousChildName` semantics are held pending two new oracle
|
|
92
|
+
* captures (matrix row `rtdb-modular#137`).
|
|
93
|
+
*/
|
|
94
|
+
export interface ChildListener {
|
|
95
|
+
id: string;
|
|
96
|
+
auth: AuthState;
|
|
97
|
+
event: 'child_added' | 'child_changed' | 'child_removed' | 'child_moved';
|
|
98
|
+
path: string;
|
|
99
|
+
cb: (snap: {
|
|
100
|
+
key: string;
|
|
101
|
+
val: JsonValue;
|
|
102
|
+
}) => void;
|
|
103
|
+
/**
|
|
104
|
+
* If set, the listener is on a `query(ref, ...constraints)` rather than
|
|
105
|
+
* a plain ref. Child events are then computed against the ordered,
|
|
106
|
+
* windowed query result instead of the raw child key-set:
|
|
107
|
+
*
|
|
108
|
+
* - a child ENTERING the window emits `child_added`;
|
|
109
|
+
* - a child LEAVING the window emits `child_removed`;
|
|
110
|
+
* - an in-window value change emits `child_changed`.
|
|
111
|
+
*
|
|
112
|
+
* `child_moved` (reorder within the window) is deliberately NOT emitted
|
|
113
|
+
* — the reorder / `previousChildName` semantics are held pending two new
|
|
114
|
+
* oracle captures (matrix row `rtdb-modular#137`). Registering
|
|
115
|
+
* `onChildMoved` on a query must not throw; it simply never fires on
|
|
116
|
+
* reorder.
|
|
117
|
+
*/
|
|
118
|
+
spec?: QuerySpec;
|
|
119
|
+
/**
|
|
120
|
+
* Cached last-fired ordered window for a query child listener. The diff
|
|
121
|
+
* on the next write is computed against this. `undefined` for plain-ref
|
|
122
|
+
* listeners (they diff the raw child key-set instead).
|
|
123
|
+
*/
|
|
124
|
+
lastWindow?: QueryRow[];
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* RtdbBackend — the per-`Sandbox` data plane.
|
|
128
|
+
*/
|
|
129
|
+
export declare class RtdbBackend {
|
|
130
|
+
private readonly tree;
|
|
131
|
+
private readonly rules;
|
|
132
|
+
private readonly valueListeners;
|
|
133
|
+
private readonly childListeners;
|
|
134
|
+
private nextId;
|
|
135
|
+
/**
|
|
136
|
+
* Persistence change-subscribers. The sandbox persistence controller
|
|
137
|
+
* registers one of these (via {@link RtdbBackend.subscribeWrites}) so any
|
|
138
|
+
* tree mutation schedules a debounced flush. RTDB writes emit
|
|
139
|
+
* `kind: 'service_mutation'` events, which are NOT in the controller's
|
|
140
|
+
* `isPersistableEvent` set (`write`/`session_boundary`) — so the sandbox
|
|
141
|
+
* event stream never triggers an RTDB flush. This subscriber channel is
|
|
142
|
+
* the sole flush trigger, mirroring how auth drives its own flushes.
|
|
143
|
+
*/
|
|
144
|
+
private readonly writeSubscribers;
|
|
145
|
+
/**
|
|
146
|
+
* The owning `Sandbox`, when this backend was created through the
|
|
147
|
+
* modular surface's `getDatabase(sandbox)` / `getDatabase(ctx)` path.
|
|
148
|
+
* Held only to emit RTDB write activity onto the unified Studio
|
|
149
|
+
* `onEvent`/`history()` stream (keystone, track T1). Optional because
|
|
150
|
+
* the backend is also constructed bare in unit tests that exercise the
|
|
151
|
+
* data plane directly; in that case emission is simply skipped.
|
|
152
|
+
*/
|
|
153
|
+
private readonly sandbox?;
|
|
154
|
+
constructor(sandbox?: Sandbox);
|
|
155
|
+
/**
|
|
156
|
+
* Emit an RTDB {@link ServiceMutationEvent} onto the sandbox's unified
|
|
157
|
+
* stream. No-op when this backend has no owning sandbox (bare-test
|
|
158
|
+
* construction). Best-effort + isolated — a throw must not fail the
|
|
159
|
+
* write that triggered it.
|
|
160
|
+
*/
|
|
161
|
+
private emitRtdbEvent;
|
|
162
|
+
private nextListenerId;
|
|
163
|
+
private nextGroupId;
|
|
164
|
+
private emitOperation;
|
|
165
|
+
private emitCommit;
|
|
166
|
+
private emitListener;
|
|
167
|
+
setData(seed: Record<string, JsonValue>): void;
|
|
168
|
+
setRules(rulesJson: {
|
|
169
|
+
rules: Record<string, unknown>;
|
|
170
|
+
} | null): void;
|
|
171
|
+
snapshotState(): JsonValue;
|
|
172
|
+
adminGet(path: string): JsonValue;
|
|
173
|
+
adminGetQuery(path: string, spec: QuerySpec): QueryRow[];
|
|
174
|
+
adminSet(path: string, value: JsonValue): void;
|
|
175
|
+
adminUpdate(path: string, patch: Record<string, JsonValue>): void;
|
|
176
|
+
adminRemove(path: string): void;
|
|
177
|
+
get(auth: AuthState, path: string): JsonValue;
|
|
178
|
+
/**
|
|
179
|
+
* `set(path, value)` — full overwrite at the path. `null` deletes the
|
|
180
|
+
* subtree (sandbox match for the RTDB invariant
|
|
181
|
+
* `remove(ref) === set(ref, null)`).
|
|
182
|
+
*/
|
|
183
|
+
set(auth: AuthState, path: string, value: JsonValue): void;
|
|
184
|
+
/** Shared `set`/`remove` write path. `op` selects the emitted event
|
|
185
|
+
* label so a `remove` (which is `set(_, null)`) surfaces as `remove`
|
|
186
|
+
* rather than `set` on the Studio stream. */
|
|
187
|
+
private setInternal;
|
|
188
|
+
remove(auth: AuthState, path: string): void;
|
|
189
|
+
/**
|
|
190
|
+
* `update(path, patch)` — multi-path atomic update when keys are
|
|
191
|
+
* `/`-prefixed and `path === '/'`; otherwise a shallow merge at the
|
|
192
|
+
* named path. Matches `firebase/database`'s discrimination: an
|
|
193
|
+
* `update(rootRef, { '/users/a/x': 1, '/users/b/y': 2 })` fans out
|
|
194
|
+
* to both paths atomically, while `update(usersRef, { name: 'A' })`
|
|
195
|
+
* shallow-merges into `/users`.
|
|
196
|
+
*/
|
|
197
|
+
update(auth: AuthState, path: string, patch: Record<string, JsonValue>): void;
|
|
198
|
+
/**
|
|
199
|
+
* Subscribe to `onValue`. Fires immediately with the current value
|
|
200
|
+
* (or `{ val: null, exists: false }` for an absent path — locked by
|
|
201
|
+
* the prod SDK's behavior), then on every write that touches `path`
|
|
202
|
+
* or any descendant.
|
|
203
|
+
*
|
|
204
|
+
* Returns an unsubscribe.
|
|
205
|
+
*/
|
|
206
|
+
onValue(auth: AuthState, path: string, cb: (snap: {
|
|
207
|
+
val: JsonValue;
|
|
208
|
+
exists: boolean;
|
|
209
|
+
key: string | null;
|
|
210
|
+
}) => void, query?: QuerySpec): () => void;
|
|
211
|
+
/**
|
|
212
|
+
* One-shot `get` against a query — evaluates the constraint chain
|
|
213
|
+
* against the current tree snapshot. Same rules check as plain `get`
|
|
214
|
+
* (the read is at the query's root path; per-child rule evaluation
|
|
215
|
+
* isn't modeled here — RTDB itself rejects queries that span
|
|
216
|
+
* children with mixed read permissions).
|
|
217
|
+
*/
|
|
218
|
+
getQuery(auth: AuthState, path: string, spec: QuerySpec): QueryRow[];
|
|
219
|
+
/** The last segment of `path`, or `null` for root. Mirrors
|
|
220
|
+
* `DataSnapshot.key`. */
|
|
221
|
+
private keyForPath;
|
|
222
|
+
/**
|
|
223
|
+
* Compute the listener payload for `path` against the current tree.
|
|
224
|
+
* `key` is the last segment of the path, or `null` for root —
|
|
225
|
+
* matches `DataSnapshot.key`.
|
|
226
|
+
*/
|
|
227
|
+
private makeSnap;
|
|
228
|
+
/**
|
|
229
|
+
* Fan out `value` listeners after a batch of paths were written.
|
|
230
|
+
* Fires every listener whose path either equals one of the touched
|
|
231
|
+
* paths or is an ancestor/descendant of any (the listener observes
|
|
232
|
+
* the subtree it's watching, so any descendant write triggers).
|
|
233
|
+
*/
|
|
234
|
+
private fanOut;
|
|
235
|
+
/**
|
|
236
|
+
* `runTransaction(path, updateFn, options?)` — RTDB-flavored atomic
|
|
237
|
+
* read-modify-write. The contract mirrors `firebase/database`'s
|
|
238
|
+
* modular `runTransaction`:
|
|
239
|
+
*
|
|
240
|
+
* - Read the current value at `path`.
|
|
241
|
+
* - Call `updateFn(currentValue)`.
|
|
242
|
+
* - `currentValue` is `null` for an absent path (oracle:
|
|
243
|
+
* `rtdb-modular-runtransaction-current-value-arg.json` →
|
|
244
|
+
* `missingArgs[0].isNull === true`).
|
|
245
|
+
* - If `updateFn` returns `undefined` → **abort**: no write happens,
|
|
246
|
+
* resolves `{ committed: false, snapshot }` where the snapshot
|
|
247
|
+
* reflects the pre-transaction value (oracle:
|
|
248
|
+
* `rtdb-modular-runtransaction-abort-undefined.json` → `committed:
|
|
249
|
+
* false, snapVal: null, afterValOnServer: 100`).
|
|
250
|
+
* - If `updateFn` returns any defined value → run the write under
|
|
251
|
+
* the current identity's rules; on allow, commit and resolve
|
|
252
|
+
* `{ committed: true, snapshot }` with the new value. On deny,
|
|
253
|
+
* throw the RTDB-transaction error shape (oracle:
|
|
254
|
+
* `rtdb-modular-runtransaction-on-rules-denied-path.json` →
|
|
255
|
+
* `threw: true, message: 'permission_denied', code: null,
|
|
256
|
+
* constructorName: 'Error'`).
|
|
257
|
+
*
|
|
258
|
+
* Single-client harness → no real concurrency to retry against; the
|
|
259
|
+
* documented "optimistic concurrency with retry" is degenerate here.
|
|
260
|
+
* The sandbox doesn't speculatively call `updateFn` with `null` first
|
|
261
|
+
* for a seeded path (prod does — second invocation with the server
|
|
262
|
+
* value); our contract is the SIMPLEST observable: one invocation
|
|
263
|
+
* with the actual current value.
|
|
264
|
+
*
|
|
265
|
+
* `applyLocally` semantics: when omitted or `true`, the in-flight
|
|
266
|
+
* (post-update-fn, pre-commit) value fans out to listeners as an
|
|
267
|
+
* optimistic fire. With `false`, no listener fire until commit. The
|
|
268
|
+
* difference is invisible in a single-client harness with a
|
|
269
|
+
* synchronous commit path; we still respect the flag so consumers can
|
|
270
|
+
* tune intermediate-fire counts under custom assertions.
|
|
271
|
+
*
|
|
272
|
+
* Returns a payload the modular surface wraps in a `DataSnapshot`
|
|
273
|
+
* shape — the backend stays snapshot-agnostic so the rules engine
|
|
274
|
+
* doesn't need to know about ref objects.
|
|
275
|
+
*/
|
|
276
|
+
runTransaction(auth: AuthState, path: string, updateFn: (current: JsonValue) => JsonValue | undefined, options?: {
|
|
277
|
+
applyLocally?: boolean;
|
|
278
|
+
}): {
|
|
279
|
+
committed: boolean;
|
|
280
|
+
val: JsonValue;
|
|
281
|
+
key: string | null;
|
|
282
|
+
};
|
|
283
|
+
/**
|
|
284
|
+
* Subscribe to a child event at `path`.
|
|
285
|
+
*
|
|
286
|
+
* Semantics (locked by oracle observations under
|
|
287
|
+
* `scripts/oracle/observations/rtdb-modular-onchild*.json`):
|
|
288
|
+
*
|
|
289
|
+
* - `child_added`: replays every existing direct child of `path` on
|
|
290
|
+
* subscribe (one fire per existing key, in current key-iteration
|
|
291
|
+
* order — matches the upstream `orderByKey` default observed in
|
|
292
|
+
* `rtdb-modular-onchildadded-initial-replay`). Subsequent
|
|
293
|
+
* additions fire once each.
|
|
294
|
+
* - `child_changed`: no initial replay. Fires when an existing
|
|
295
|
+
* child's value transitions to a NEW non-null value. Snapshot
|
|
296
|
+
* carries the NEW value.
|
|
297
|
+
* - `child_removed`: no initial replay. Fires when a child is
|
|
298
|
+
* deleted (its value transitions to absent). Snapshot carries
|
|
299
|
+
* the PRIOR (now-removed) value.
|
|
300
|
+
* - `child_moved`: ordered-query only — never fires on a plain
|
|
301
|
+
* ref (matches the upstream contract; Tier 3 will wire ordered
|
|
302
|
+
* queries in).
|
|
303
|
+
*
|
|
304
|
+
* Rules check happens at subscribe time, identical to `onValue`. A
|
|
305
|
+
* denied subscribe throws the plain-`Error` `PERMISSION_DENIED`
|
|
306
|
+
* shape and the listener is never registered.
|
|
307
|
+
*
|
|
308
|
+
* Returns an idempotent unsubscribe.
|
|
309
|
+
*/
|
|
310
|
+
onChild(auth: AuthState, event: ChildListener['event'], path: string, cb: (snap: {
|
|
311
|
+
key: string;
|
|
312
|
+
val: JsonValue;
|
|
313
|
+
}) => void, spec?: QuerySpec): () => void;
|
|
314
|
+
/**
|
|
315
|
+
* `off(refPath, eventType?, callback?)` — unsubscribe variant. Matches
|
|
316
|
+
* the upstream contract (oracle: `rtdb-modular-off-stops-child-fires`):
|
|
317
|
+
*
|
|
318
|
+
* - `off(refPath)` removes ALL listeners (value + child) at the path.
|
|
319
|
+
* - `off(refPath, 'value')` removes only `value` listeners at the path.
|
|
320
|
+
* - `off(refPath, 'child_added')` (or any child event type) removes
|
|
321
|
+
* only that child-event variety at the path.
|
|
322
|
+
* - `off(refPath, eventType, cb)` removes only the matching callback.
|
|
323
|
+
*
|
|
324
|
+
* No-throw on absent listeners — matches the upstream behavior.
|
|
325
|
+
*/
|
|
326
|
+
off(path: string, eventType?: 'value' | ChildListener['event'], callback?: ((snap: unknown) => void) | unknown): void;
|
|
327
|
+
/** Direct children of `path` as `{ key, val }` pairs. Returns [] if
|
|
328
|
+
* the path is absent or its value isn't an object. Key iteration
|
|
329
|
+
* follows `Object.keys` order, which matches `firebase/database`'s
|
|
330
|
+
* `orderByKey` default (insertion order for non-numeric keys). */
|
|
331
|
+
private directChildren;
|
|
332
|
+
/** Snapshot the current direct children of every registered child
|
|
333
|
+
* listener's parent path. Used to capture the "prior" half of the
|
|
334
|
+
* diff before a write applies. */
|
|
335
|
+
private snapshotChildListenerParents;
|
|
336
|
+
/**
|
|
337
|
+
* Fan out child events after a write. `priorByParent` is the snapshot
|
|
338
|
+
* captured by `snapshotChildListenerParents` before the write applied.
|
|
339
|
+
*
|
|
340
|
+
* For each listener, compute the diff between prior and current
|
|
341
|
+
* children, then dispatch:
|
|
342
|
+
* - `child_added` when a key appears that wasn't in prior.
|
|
343
|
+
* - `child_changed` when a key's value transitions.
|
|
344
|
+
* - `child_removed` when a prior key is gone.
|
|
345
|
+
*/
|
|
346
|
+
private fanOutChildren;
|
|
347
|
+
/**
|
|
348
|
+
* Fan out a single QUERY child listener after a write, diffing the
|
|
349
|
+
* ordered window against the listener's last-fired window:
|
|
350
|
+
*
|
|
351
|
+
* - a key that ENTERED the window emits `child_added` (window order);
|
|
352
|
+
* - a key that LEFT the window emits `child_removed` (carrying its
|
|
353
|
+
* prior value);
|
|
354
|
+
* - a key that stayed in-window but changed value emits `child_changed`.
|
|
355
|
+
*
|
|
356
|
+
* `child_moved` (reorder within the window) is deliberately NOT emitted
|
|
357
|
+
* — the reorder / `previousChildName` semantics are held pending fresh
|
|
358
|
+
* oracle captures (matrix row `rtdb-modular#137`). The window is always
|
|
359
|
+
* advanced so a later real add/change/remove diffs correctly.
|
|
360
|
+
*/
|
|
361
|
+
private fanOutQueryChild;
|
|
362
|
+
/** Serialize the whole tree as a plain JSON value for the persistence
|
|
363
|
+
* snapshot. Defensive deep-copy (via `DataTree.snapshot`). */
|
|
364
|
+
exportTree(): JsonValue;
|
|
365
|
+
/**
|
|
366
|
+
* Replace the whole tree with a persisted snapshot, then fire listeners
|
|
367
|
+
* so any live UI (Studio's RTDB tab) converges on the restored data
|
|
368
|
+
* rather than showing a stale/empty view.
|
|
369
|
+
*
|
|
370
|
+
* REPLACE, not merge — the tree becomes EXACTLY the snapshot. On boot /
|
|
371
|
+
* late-registration the tree is empty so this is a pure load; for a
|
|
372
|
+
* runtime `loadSnapshot()` it clobbers divergent state, matching auth's
|
|
373
|
+
* restore policy.
|
|
374
|
+
*
|
|
375
|
+
* Notification: we capture each child-listener parent's prior children
|
|
376
|
+
* BEFORE the swap, then fan out value listeners from the root (every
|
|
377
|
+
* listener re-reads its path) and child listeners against the diff. The
|
|
378
|
+
* value-listener no-op suppression (DB-B8) means a listener whose subtree
|
|
379
|
+
* is byte-identical to the snapshot won't spuriously re-fire.
|
|
380
|
+
*/
|
|
381
|
+
restoreTree(root: JsonValue): void;
|
|
382
|
+
/**
|
|
383
|
+
* Register a persistence change-subscriber. Returns an unsubscribe.
|
|
384
|
+
* Fired (best-effort, isolated) after every committed tree mutation so
|
|
385
|
+
* the controller schedules a debounced flush.
|
|
386
|
+
*/
|
|
387
|
+
subscribeWrites(onChange: () => void): () => void;
|
|
388
|
+
/** Notify persistence subscribers that the tree changed. Best-effort +
|
|
389
|
+
* isolated — a subscriber throw must never break the write. */
|
|
390
|
+
private notifyWrite;
|
|
391
|
+
/** Generate a key without writing (advisory — same key the next
|
|
392
|
+
* `push(path)` would produce). Used by the `ref.push().key`
|
|
393
|
+
* pattern. Each call returns a fresh key. */
|
|
394
|
+
mintKey(): string;
|
|
395
|
+
/** Test helper — count value listeners. */
|
|
396
|
+
listenerCount(): number;
|
|
397
|
+
/** Test helper — count child listeners. */
|
|
398
|
+
childListenerCount(): number;
|
|
399
|
+
}
|
|
400
|
+
export { cloneJson, pathSegments, joinPath } from './data-tree.js';
|
|
401
|
+
export type { JsonValue } from './data-tree.js';
|
|
402
|
+
export type { QuerySpec, QueryRow } from './query.js';
|
|
403
|
+
//# sourceMappingURL=backend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../../src/database/sandbox/backend.ts"],"names":[],"mappings":"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"}
|