@entity-access/entity-access 1.0.6 → 1.0.8
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/.github/workflows/npm-publish.yml +2 -10
- package/dist/TestRunner.d.ts +2 -0
- package/dist/TestRunner.d.ts.map +1 -0
- package/dist/TestRunner.js +2 -0
- package/dist/TestRunner.js.map +1 -0
- package/dist/common/EntityAccessError.d.ts +5 -0
- package/dist/common/EntityAccessError.d.ts.map +1 -0
- package/dist/common/EntityAccessError.js +9 -0
- package/dist/common/EntityAccessError.js.map +1 -0
- package/dist/common/IDisposable.d.ts +13 -0
- package/dist/common/IDisposable.d.ts.map +1 -0
- package/dist/common/IDisposable.js +9 -0
- package/dist/common/IDisposable.js.map +1 -0
- package/dist/common/ImmutableObject.d.ts +5 -0
- package/dist/common/ImmutableObject.d.ts.map +1 -0
- package/dist/common/ImmutableObject.js +49 -0
- package/dist/common/ImmutableObject.js.map +1 -0
- package/dist/common/Logger.d.ts +18 -0
- package/dist/common/Logger.d.ts.map +1 -0
- package/dist/common/Logger.js +60 -0
- package/dist/common/Logger.js.map +1 -0
- package/dist/common/TypeInfo.d.ts +4 -0
- package/dist/common/TypeInfo.d.ts.map +1 -0
- package/dist/common/TypeInfo.js +4 -0
- package/dist/common/TypeInfo.js.map +1 -0
- package/dist/common/cache/InstanceCache.d.ts +2 -0
- package/dist/common/cache/InstanceCache.d.ts.map +1 -0
- package/dist/common/cache/InstanceCache.js +13 -0
- package/dist/common/cache/InstanceCache.js.map +1 -0
- package/dist/common/cache/TimedCache.d.ts +10 -0
- package/dist/common/cache/TimedCache.d.ts.map +1 -0
- package/dist/common/cache/TimedCache.js +67 -0
- package/dist/common/cache/TimedCache.js.map +1 -0
- package/dist/common/symbols/symbols.d.ts +3 -0
- package/dist/common/symbols/symbols.d.ts.map +1 -0
- package/dist/common/symbols/symbols.js +3 -0
- package/dist/common/symbols/symbols.js.map +1 -0
- package/dist/common/usingAsync.d.ts +13 -0
- package/dist/common/usingAsync.d.ts.map +1 -0
- package/dist/common/usingAsync.js +44 -0
- package/dist/common/usingAsync.js.map +1 -0
- package/dist/compiler/ISqlHelpers.d.ts +10 -0
- package/dist/compiler/ISqlHelpers.d.ts.map +1 -0
- package/dist/compiler/ISqlHelpers.js +17 -0
- package/dist/compiler/ISqlHelpers.js.map +1 -0
- package/dist/compiler/QueryCompiler.d.ts +36 -0
- package/dist/compiler/QueryCompiler.d.ts.map +1 -0
- package/dist/compiler/QueryCompiler.js +65 -0
- package/dist/compiler/QueryCompiler.js.map +1 -0
- package/dist/compiler/postgres/PostgreSqlMethodTransformer.d.ts +4 -0
- package/dist/compiler/postgres/PostgreSqlMethodTransformer.d.ts.map +1 -0
- package/dist/compiler/postgres/PostgreSqlMethodTransformer.js +103 -0
- package/dist/compiler/postgres/PostgreSqlMethodTransformer.js.map +1 -0
- package/dist/compiler/sql-server/SqlServerSqlMethodTransformer.d.ts +4 -0
- package/dist/compiler/sql-server/SqlServerSqlMethodTransformer.d.ts.map +1 -0
- package/dist/compiler/sql-server/SqlServerSqlMethodTransformer.js +103 -0
- package/dist/compiler/sql-server/SqlServerSqlMethodTransformer.js.map +1 -0
- package/dist/decorators/Column.d.ts +4 -0
- package/dist/decorators/Column.d.ts.map +1 -0
- package/dist/decorators/Column.js +39 -0
- package/dist/decorators/Column.js.map +1 -0
- package/dist/decorators/ForeignKey.d.ts +9 -0
- package/dist/decorators/ForeignKey.d.ts.map +1 -0
- package/dist/decorators/ForeignKey.js +18 -0
- package/dist/decorators/ForeignKey.js.map +1 -0
- package/dist/decorators/IClassOf.d.ts +3 -0
- package/dist/decorators/IClassOf.d.ts.map +1 -0
- package/dist/decorators/IClassOf.js +2 -0
- package/dist/decorators/IClassOf.js.map +1 -0
- package/dist/decorators/IColumn.d.ts +49 -0
- package/dist/decorators/IColumn.d.ts.map +1 -0
- package/dist/decorators/IColumn.js +2 -0
- package/dist/decorators/IColumn.js.map +1 -0
- package/dist/decorators/ISqlType.d.ts +58 -0
- package/dist/decorators/ISqlType.d.ts.map +1 -0
- package/dist/decorators/ISqlType.js +2 -0
- package/dist/decorators/ISqlType.js.map +1 -0
- package/dist/decorators/SchemaRegistry.d.ts +6 -0
- package/dist/decorators/SchemaRegistry.d.ts.map +1 -0
- package/dist/decorators/SchemaRegistry.js +15 -0
- package/dist/decorators/SchemaRegistry.js.map +1 -0
- package/dist/decorators/Table.d.ts +6 -0
- package/dist/decorators/Table.d.ts.map +1 -0
- package/dist/decorators/Table.js +11 -0
- package/dist/decorators/Table.js.map +1 -0
- package/dist/decorators/parser/NameParser.d.ts +4 -0
- package/dist/decorators/parser/NameParser.d.ts.map +1 -0
- package/dist/decorators/parser/NameParser.js +14 -0
- package/dist/decorators/parser/NameParser.js.map +1 -0
- package/dist/di/di.d.ts +41 -0
- package/dist/di/di.d.ts.map +1 -0
- package/dist/di/di.js +174 -0
- package/dist/di/di.js.map +1 -0
- package/dist/drivers/base/BaseDriver.d.ts +60 -0
- package/dist/drivers/base/BaseDriver.d.ts.map +1 -0
- package/dist/drivers/base/BaseDriver.js +97 -0
- package/dist/drivers/base/BaseDriver.js.map +1 -0
- package/dist/drivers/postgres/PostgreSqlDriver.d.ts +35 -0
- package/dist/drivers/postgres/PostgreSqlDriver.d.ts.map +1 -0
- package/dist/drivers/postgres/PostgreSqlDriver.js +152 -0
- package/dist/drivers/postgres/PostgreSqlDriver.js.map +1 -0
- package/dist/drivers/sql-server/ExpressionToSqlServer.d.ts +10 -0
- package/dist/drivers/sql-server/ExpressionToSqlServer.d.ts.map +1 -0
- package/dist/drivers/sql-server/ExpressionToSqlServer.js +87 -0
- package/dist/drivers/sql-server/ExpressionToSqlServer.js.map +1 -0
- package/dist/drivers/sql-server/SqlServerDriver.d.ts +21 -0
- package/dist/drivers/sql-server/SqlServerDriver.d.ts.map +1 -0
- package/dist/drivers/sql-server/SqlServerDriver.js +179 -0
- package/dist/drivers/sql-server/SqlServerDriver.js.map +1 -0
- package/dist/drivers/sql-server/SqlServerLiteral.d.ts +5 -0
- package/dist/drivers/sql-server/SqlServerLiteral.d.ts.map +1 -0
- package/dist/drivers/sql-server/SqlServerLiteral.js +10 -0
- package/dist/drivers/sql-server/SqlServerLiteral.js.map +1 -0
- package/dist/drivers/sql-server/SqlServerQueryCompiler.d.ts +5 -0
- package/dist/drivers/sql-server/SqlServerQueryCompiler.d.ts.map +1 -0
- package/dist/drivers/sql-server/SqlServerQueryCompiler.js +17 -0
- package/dist/drivers/sql-server/SqlServerQueryCompiler.js.map +1 -0
- package/dist/entity-query/EntityType.d.ts +56 -0
- package/dist/entity-query/EntityType.d.ts.map +1 -0
- package/dist/entity-query/EntityType.js +145 -0
- package/dist/entity-query/EntityType.js.map +1 -0
- package/dist/migrations/Migrations.d.ts +7 -0
- package/dist/migrations/Migrations.d.ts.map +1 -0
- package/dist/migrations/Migrations.js +10 -0
- package/dist/migrations/Migrations.js.map +1 -0
- package/dist/migrations/postgres/PostgresAutomaticMigrations.d.ts +12 -0
- package/dist/migrations/postgres/PostgresAutomaticMigrations.d.ts.map +1 -0
- package/dist/migrations/postgres/PostgresAutomaticMigrations.js +68 -0
- package/dist/migrations/postgres/PostgresAutomaticMigrations.js.map +1 -0
- package/dist/migrations/postgres/PostgresMigrations.d.ts +7 -0
- package/dist/migrations/postgres/PostgresMigrations.d.ts.map +1 -0
- package/dist/migrations/postgres/PostgresMigrations.js +53 -0
- package/dist/migrations/postgres/PostgresMigrations.js.map +1 -0
- package/dist/migrations/sql-server/SqlServerAutomaticMigrations.d.ts +12 -0
- package/dist/migrations/sql-server/SqlServerAutomaticMigrations.d.ts.map +1 -0
- package/dist/migrations/sql-server/SqlServerAutomaticMigrations.js +74 -0
- package/dist/migrations/sql-server/SqlServerAutomaticMigrations.js.map +1 -0
- package/dist/migrations/sql-server/SqlServerMigrations.d.ts +7 -0
- package/dist/migrations/sql-server/SqlServerMigrations.d.ts.map +1 -0
- package/dist/migrations/sql-server/SqlServerMigrations.js +57 -0
- package/dist/migrations/sql-server/SqlServerMigrations.js.map +1 -0
- package/dist/model/EntityContext.d.ts +28 -0
- package/dist/model/EntityContext.d.ts.map +1 -0
- package/dist/model/EntityContext.js +181 -0
- package/dist/model/EntityContext.js.map +1 -0
- package/dist/model/EntityModel.d.ts +10 -0
- package/dist/model/EntityModel.d.ts.map +1 -0
- package/dist/model/EntityModel.js +19 -0
- package/dist/model/EntityModel.js.map +1 -0
- package/dist/model/EntityQuery.d.ts +37 -0
- package/dist/model/EntityQuery.d.ts.map +1 -0
- package/dist/model/EntityQuery.js +183 -0
- package/dist/model/EntityQuery.js.map +1 -0
- package/dist/model/EntitySource.d.ts +27 -0
- package/dist/model/EntitySource.d.ts.map +1 -0
- package/dist/model/EntitySource.js +74 -0
- package/dist/model/EntitySource.js.map +1 -0
- package/dist/model/IFilterWithParameter.d.ts +32 -0
- package/dist/model/IFilterWithParameter.d.ts.map +1 -0
- package/dist/model/IFilterWithParameter.js +2 -0
- package/dist/model/IFilterWithParameter.js.map +1 -0
- package/dist/model/SourceExpression.d.ts +23 -0
- package/dist/model/SourceExpression.d.ts.map +1 -0
- package/dist/model/SourceExpression.js +109 -0
- package/dist/model/SourceExpression.js.map +1 -0
- package/dist/model/changes/ChangeEntry.d.ts +32 -0
- package/dist/model/changes/ChangeEntry.d.ts.map +1 -0
- package/dist/model/changes/ChangeEntry.js +136 -0
- package/dist/model/changes/ChangeEntry.js.map +1 -0
- package/dist/model/changes/ChangeSet.d.ts +23 -0
- package/dist/model/changes/ChangeSet.d.ts.map +1 -0
- package/dist/model/changes/ChangeSet.js +79 -0
- package/dist/model/changes/ChangeSet.js.map +1 -0
- package/dist/model/events/ContextEvents.d.ts +8 -0
- package/dist/model/events/ContextEvents.d.ts.map +1 -0
- package/dist/model/events/ContextEvents.js +18 -0
- package/dist/model/events/ContextEvents.js.map +1 -0
- package/dist/model/events/EntityEvents.d.ts +34 -0
- package/dist/model/events/EntityEvents.d.ts.map +1 -0
- package/dist/model/events/EntityEvents.js +67 -0
- package/dist/model/events/EntityEvents.js.map +1 -0
- package/dist/model/identity/IdentityService.d.ts +7 -0
- package/dist/model/identity/IdentityService.d.ts.map +1 -0
- package/dist/model/identity/IdentityService.js +25 -0
- package/dist/model/identity/IdentityService.js.map +1 -0
- package/dist/model/identity/RelationMapper.d.ts +11 -0
- package/dist/model/identity/RelationMapper.d.ts.map +1 -0
- package/dist/model/identity/RelationMapper.js +61 -0
- package/dist/model/identity/RelationMapper.js.map +1 -0
- package/dist/model/symbols.d.ts +2 -0
- package/dist/model/symbols.d.ts.map +1 -0
- package/dist/model/symbols.js +2 -0
- package/dist/model/symbols.js.map +1 -0
- package/dist/model/verification/VerificationSession.d.ts +20 -0
- package/dist/model/verification/VerificationSession.d.ts.map +1 -0
- package/dist/model/verification/VerificationSession.js +145 -0
- package/dist/model/verification/VerificationSession.js.map +1 -0
- package/dist/query/Query.d.ts +29 -0
- package/dist/query/Query.d.ts.map +1 -0
- package/dist/query/Query.js +132 -0
- package/dist/query/Query.js.map +1 -0
- package/dist/query/ast/DebugStringVisitor.d.ts +36 -0
- package/dist/query/ast/DebugStringVisitor.d.ts.map +1 -0
- package/dist/query/ast/DebugStringVisitor.js +143 -0
- package/dist/query/ast/DebugStringVisitor.js.map +1 -0
- package/dist/query/ast/ExpressionToSql.d.ts +58 -0
- package/dist/query/ast/ExpressionToSql.d.ts.map +1 -0
- package/dist/query/ast/ExpressionToSql.js +410 -0
- package/dist/query/ast/ExpressionToSql.js.map +1 -0
- package/dist/query/ast/Expressions.d.ts +212 -0
- package/dist/query/ast/Expressions.d.ts.map +1 -0
- package/dist/query/ast/Expressions.js +289 -0
- package/dist/query/ast/Expressions.js.map +1 -0
- package/dist/query/ast/IStringTransformer.d.ts +17 -0
- package/dist/query/ast/IStringTransformer.d.ts.map +1 -0
- package/dist/query/ast/IStringTransformer.js +79 -0
- package/dist/query/ast/IStringTransformer.js.map +1 -0
- package/dist/query/ast/ParameterScope.d.ts +25 -0
- package/dist/query/ast/ParameterScope.d.ts.map +1 -0
- package/dist/query/ast/ParameterScope.js +71 -0
- package/dist/query/ast/ParameterScope.js.map +1 -0
- package/dist/query/ast/ReplaceParameter.d.ts +5 -0
- package/dist/query/ast/ReplaceParameter.d.ts.map +1 -0
- package/dist/query/ast/ReplaceParameter.js +37 -0
- package/dist/query/ast/ReplaceParameter.js.map +1 -0
- package/dist/query/ast/SqlLiteral.d.ts +4 -0
- package/dist/query/ast/SqlLiteral.d.ts.map +1 -0
- package/dist/query/ast/SqlLiteral.js +24 -0
- package/dist/query/ast/SqlLiteral.js.map +1 -0
- package/dist/query/ast/Types.d.ts +2 -0
- package/dist/query/ast/Types.d.ts.map +1 -0
- package/dist/query/ast/Types.js +2 -0
- package/dist/query/ast/Types.js.map +1 -0
- package/dist/query/ast/Visitor.d.ts +35 -0
- package/dist/query/ast/Visitor.d.ts.map +1 -0
- package/dist/query/ast/Visitor.js +161 -0
- package/dist/query/ast/Visitor.js.map +1 -0
- package/dist/query/expander/QueryExpander.d.ts +11 -0
- package/dist/query/expander/QueryExpander.d.ts.map +1 -0
- package/dist/query/expander/QueryExpander.js +103 -0
- package/dist/query/expander/QueryExpander.js.map +1 -0
- package/dist/query/parser/ArrowToExpression.d.ts +35 -0
- package/dist/query/parser/ArrowToExpression.d.ts.map +1 -0
- package/dist/query/parser/ArrowToExpression.js +237 -0
- package/dist/query/parser/ArrowToExpression.js.map +1 -0
- package/dist/query/parser/BabelVisitor.d.ts +23 -0
- package/dist/query/parser/BabelVisitor.d.ts.map +1 -0
- package/dist/query/parser/BabelVisitor.js +53 -0
- package/dist/query/parser/BabelVisitor.js.map +1 -0
- package/dist/query/parser/NotSupportedError.d.ts +4 -0
- package/dist/query/parser/NotSupportedError.d.ts.map +1 -0
- package/dist/query/parser/NotSupportedError.js +6 -0
- package/dist/query/parser/NotSupportedError.js.map +1 -0
- package/dist/query/parser/Restructure.d.ts +11 -0
- package/dist/query/parser/Restructure.d.ts.map +1 -0
- package/dist/query/parser/Restructure.js +54 -0
- package/dist/query/parser/Restructure.js.map +1 -0
- package/dist/query/parser/TransformVisitor.d.ts +23 -0
- package/dist/query/parser/TransformVisitor.d.ts.map +1 -0
- package/dist/query/parser/TransformVisitor.js +70 -0
- package/dist/query/parser/TransformVisitor.js.map +1 -0
- package/dist/sql/ISql.d.ts +37 -0
- package/dist/sql/ISql.d.ts.map +1 -0
- package/dist/sql/ISql.js +2 -0
- package/dist/sql/ISql.js.map +1 -0
- package/dist/sql/Sql.d.ts +4 -0
- package/dist/sql/Sql.d.ts.map +1 -0
- package/dist/sql/Sql.js +3 -0
- package/dist/sql/Sql.js.map +1 -0
- package/dist/tests/TestConfig.d.ts +6 -0
- package/dist/tests/TestConfig.d.ts.map +1 -0
- package/dist/tests/TestConfig.js +5 -0
- package/dist/tests/TestConfig.js.map +1 -0
- package/dist/tests/db-tests/tests/select-items.d.ts +3 -0
- package/dist/tests/db-tests/tests/select-items.d.ts.map +1 -0
- package/dist/tests/db-tests/tests/select-items.js +30 -0
- package/dist/tests/db-tests/tests/select-items.js.map +1 -0
- package/dist/tests/db-tests/tests/update-items.d.ts +3 -0
- package/dist/tests/db-tests/tests/update-items.d.ts.map +1 -0
- package/dist/tests/db-tests/tests/update-items.js +11 -0
- package/dist/tests/db-tests/tests/update-items.js.map +1 -0
- package/dist/tests/drivers/postgres/connection-test.d.ts +3 -0
- package/dist/tests/drivers/postgres/connection-test.d.ts.map +1 -0
- package/dist/tests/drivers/postgres/connection-test.js +20 -0
- package/dist/tests/drivers/postgres/connection-test.js.map +1 -0
- package/dist/tests/drivers/sql-server/sql-server-test.d.ts +2 -0
- package/dist/tests/drivers/sql-server/sql-server-test.d.ts.map +1 -0
- package/dist/tests/drivers/sql-server/sql-server-test.js +6 -0
- package/dist/tests/drivers/sql-server/sql-server-test.js.map +1 -0
- package/dist/tests/expressions/left-joins/child-joins.d.ts +2 -0
- package/dist/tests/expressions/left-joins/child-joins.d.ts.map +1 -0
- package/dist/tests/expressions/left-joins/child-joins.js +77 -0
- package/dist/tests/expressions/left-joins/child-joins.js.map +1 -0
- package/dist/tests/expressions/sanitize/sanitize-test.d.ts +2 -0
- package/dist/tests/expressions/sanitize/sanitize-test.d.ts.map +1 -0
- package/dist/tests/expressions/sanitize/sanitize-test.js +8 -0
- package/dist/tests/expressions/sanitize/sanitize-test.js.map +1 -0
- package/dist/tests/expressions/select/select.d.ts +2 -0
- package/dist/tests/expressions/select/select.d.ts.map +1 -0
- package/dist/tests/expressions/select/select.js +11 -0
- package/dist/tests/expressions/select/select.js.map +1 -0
- package/dist/tests/expressions/simple/parse-arrow.d.ts +2 -0
- package/dist/tests/expressions/simple/parse-arrow.d.ts.map +1 -0
- package/dist/tests/expressions/simple/parse-arrow.js +30 -0
- package/dist/tests/expressions/simple/parse-arrow.js.map +1 -0
- package/dist/tests/expressions/trimInternal.d.ts +3 -0
- package/dist/tests/expressions/trimInternal.d.ts.map +1 -0
- package/dist/tests/expressions/trimInternal.js +22 -0
- package/dist/tests/expressions/trimInternal.js.map +1 -0
- package/dist/tests/model/ShoppingContext.d.ts +67 -0
- package/dist/tests/model/ShoppingContext.d.ts.map +1 -0
- package/dist/tests/model/ShoppingContext.js +264 -0
- package/dist/tests/model/ShoppingContext.js.map +1 -0
- package/dist/tests/model/createContext.d.ts +5 -0
- package/dist/tests/model/createContext.d.ts.map +1 -0
- package/dist/tests/model/createContext.js +307 -0
- package/dist/tests/model/createContext.js.map +1 -0
- package/dist/tests/query/combine.d.ts +2 -0
- package/dist/tests/query/combine.d.ts.map +1 -0
- package/dist/tests/query/combine.js +20 -0
- package/dist/tests/query/combine.js.map +1 -0
- package/dist/tests/security/ShoppingContextEvents.d.ts +5 -0
- package/dist/tests/security/ShoppingContextEvents.d.ts.map +1 -0
- package/dist/tests/security/ShoppingContextEvents.js +17 -0
- package/dist/tests/security/ShoppingContextEvents.js.map +1 -0
- package/dist/tests/security/events/OrderEvents.d.ts +17 -0
- package/dist/tests/security/events/OrderEvents.d.ts.map +1 -0
- package/dist/tests/security/events/OrderEvents.js +72 -0
- package/dist/tests/security/events/OrderEvents.js.map +1 -0
- package/dist/tests/security/events/ProductEvents.d.ts +20 -0
- package/dist/tests/security/events/ProductEvents.d.ts.map +1 -0
- package/dist/tests/security/events/ProductEvents.js +83 -0
- package/dist/tests/security/events/ProductEvents.js.map +1 -0
- package/dist/tests/security/events/UserEvents.d.ts +10 -0
- package/dist/tests/security/events/UserEvents.d.ts.map +1 -0
- package/dist/tests/security/events/UserEvents.js +35 -0
- package/dist/tests/security/events/UserEvents.js.map +1 -0
- package/dist/tests/security/events/UserInfo.d.ts +5 -0
- package/dist/tests/security/events/UserInfo.d.ts.map +1 -0
- package/dist/tests/security/events/UserInfo.js +15 -0
- package/dist/tests/security/events/UserInfo.js.map +1 -0
- package/dist/tests/security/tests/include-items.d.ts +3 -0
- package/dist/tests/security/tests/include-items.d.ts.map +1 -0
- package/dist/tests/security/tests/include-items.js +14 -0
- package/dist/tests/security/tests/include-items.js.map +1 -0
- package/dist/tests/security/tests/place-order.d.ts +3 -0
- package/dist/tests/security/tests/place-order.d.ts.map +1 -0
- package/dist/tests/security/tests/place-order.js +86 -0
- package/dist/tests/security/tests/place-order.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +3 -2
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
export class BabelVisitor {
|
|
2
|
+
visit(node) {
|
|
3
|
+
// const node = nodeAny as bpe.Expression;
|
|
4
|
+
switch (node.type) {
|
|
5
|
+
case "BinaryExpression":
|
|
6
|
+
return this.visitBinaryExpression(node);
|
|
7
|
+
case "LogicalExpression":
|
|
8
|
+
return this.visitLogicalExpression(node);
|
|
9
|
+
case "CallExpression":
|
|
10
|
+
return this.visitCallExpression(node);
|
|
11
|
+
case "ArrowFunctionExpression":
|
|
12
|
+
return this.visitArrowFunctionExpression(node);
|
|
13
|
+
case "ConditionalExpression":
|
|
14
|
+
return this.visitConditionalExpression(node);
|
|
15
|
+
case "NullLiteral":
|
|
16
|
+
return this.visitNullLiteral(node);
|
|
17
|
+
case "StringLiteral":
|
|
18
|
+
return this.visitStringLiteral(node);
|
|
19
|
+
case "BigIntLiteral":
|
|
20
|
+
return this.visitBigIntLiteral(node);
|
|
21
|
+
case "BooleanLiteral":
|
|
22
|
+
return this.visitBooleanLiteral(node);
|
|
23
|
+
case "DecimalLiteral":
|
|
24
|
+
return this.visitDecimalLiteral(node);
|
|
25
|
+
case "NumericLiteral":
|
|
26
|
+
return this.visitNumericLiteral(node);
|
|
27
|
+
case "TemplateLiteral":
|
|
28
|
+
return this.visitTemplateLiteral(node);
|
|
29
|
+
case "Identifier":
|
|
30
|
+
return this.visitIdentifier(node);
|
|
31
|
+
case "MemberExpression":
|
|
32
|
+
return this.visitMemberExpression(node);
|
|
33
|
+
case "ObjectExpression":
|
|
34
|
+
return this.visitObjectExpression(node);
|
|
35
|
+
case "ObjectProperty":
|
|
36
|
+
return this.visitObjectProperty(node);
|
|
37
|
+
case "TemplateElement":
|
|
38
|
+
return this.visitTemplateElement(node);
|
|
39
|
+
case "ArrayExpression":
|
|
40
|
+
return this.visitArrayExpression(node);
|
|
41
|
+
case "RegExpLiteral":
|
|
42
|
+
default:
|
|
43
|
+
throw new Error(`Translation from ${node.type} not supported`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
visitArrayExpression(node) {
|
|
47
|
+
throw new Error("Method not implemented.");
|
|
48
|
+
}
|
|
49
|
+
visitObjectProperty(node) {
|
|
50
|
+
throw new Error("Method not implemented.");
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=BabelVisitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BabelVisitor.js","sourceRoot":"","sources":["../../../src/query/parser/BabelVisitor.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,YAAY;IAC9B,KAAK,CAAC,IAA+B;QACjC,0CAA0C;QAC1C,QAAQ,IAAI,CAAC,IAAI,EAAE;YACf,KAAK,kBAAkB;gBACnB,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC5C,KAAK,mBAAmB;gBACpB,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC7C,KAAK,gBAAgB;gBACjB,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,yBAAyB;gBAC1B,OAAO,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;YACnD,KAAK,uBAAuB;gBACxB,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;YACjD,KAAK,aAAa;gBACd,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACvC,KAAK,eAAe;gBAChB,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACzC,KAAK,eAAe;gBAChB,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACzC,KAAK,gBAAgB;gBACjB,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,gBAAgB;gBACjB,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,gBAAgB;gBACjB,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,iBAAiB;gBAClB,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC3C,KAAK,YAAY;gBACb,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACtC,KAAK,kBAAkB;gBACnB,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC5C,KAAK,kBAAkB;gBACnB,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC5C,KAAK,gBAAgB;gBACjB,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,iBAAiB;gBAClB,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC3C,KAAK,iBAAiB;gBAClB,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC3C,KAAK,eAAe,CAAC;YACrB;gBACI,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,gBAAgB,CAAC,CAAC;SACtE;IACL,CAAC;IACD,oBAAoB,CAAC,IAAyB;QAC1C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED,mBAAmB,CAAC,IAAwB;QACxC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;CAmBJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NotSupportedError.d.ts","sourceRoot":"","sources":["../../../src/query/parser/NotSupportedError.ts"],"names":[],"mappings":"AAAA,qBAAa,iBAAkB,SAAQ,KAAK;gBAC5B,OAAO,CAAC,EAAE,MAAM;CAG/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NotSupportedError.js","sourceRoot":"","sources":["../../../src/query/parser/NotSupportedError.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACxC,YAAY,OAAgB;QACxB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,gBAAgB,CAAA,CAAC,CAAC,eAAe,CAAC,CAAC;IACjE,CAAC;CACJ"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as bpe from "@babel/types";
|
|
2
|
+
import TransformVisitor from "./TransformVisitor.js";
|
|
3
|
+
export default class Restructure extends TransformVisitor {
|
|
4
|
+
private map;
|
|
5
|
+
visitTemplateElement(node: bpe.TemplateElement): bpe.Node;
|
|
6
|
+
visitArrowFunctionExpression(node: bpe.ArrowFunctionExpression): bpe.Node;
|
|
7
|
+
visitIdentifier(node: bpe.Identifier): bpe.Node;
|
|
8
|
+
toIdentifier(x: bpe.Identifier | bpe.Pattern | bpe.RestElement): bpe.Identifier;
|
|
9
|
+
convertPattern(parentExp: bpe.Expression, x: bpe.ObjectPattern): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=Restructure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Restructure.d.ts","sourceRoot":"","sources":["../../../src/query/parser/Restructure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AAGpC,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,gBAAgB;IAErD,OAAO,CAAC,GAAG,CAAoC;IAE/C,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,IAAI;IAIzD,4BAA4B,CAAC,IAAI,EAAE,GAAG,CAAC,uBAAuB,GAAG,GAAG,CAAC,IAAI;IAWzE,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI;IAI/C,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,UAAU;IAgB/E,cAAc,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,EAAE,GAAG,CAAC,aAAa;CAqBjE"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as bpe from "@babel/types";
|
|
2
|
+
import { NotSupportedError } from "./NotSupportedError.js";
|
|
3
|
+
import TransformVisitor from "./TransformVisitor.js";
|
|
4
|
+
export default class Restructure extends TransformVisitor {
|
|
5
|
+
map = new Map();
|
|
6
|
+
visitTemplateElement(node) {
|
|
7
|
+
return node;
|
|
8
|
+
}
|
|
9
|
+
visitArrowFunctionExpression(node) {
|
|
10
|
+
// we need to restructure identifiers from destructure
|
|
11
|
+
node.params = node.params.map((x) => this.toIdentifier(x));
|
|
12
|
+
node.body = this.visit(node.body);
|
|
13
|
+
return node;
|
|
14
|
+
}
|
|
15
|
+
visitIdentifier(node) {
|
|
16
|
+
return this.map.get(node.name) ?? node;
|
|
17
|
+
}
|
|
18
|
+
toIdentifier(x) {
|
|
19
|
+
switch (x.type) {
|
|
20
|
+
case "Identifier":
|
|
21
|
+
return x;
|
|
22
|
+
case "ObjectPattern":
|
|
23
|
+
const id = `x${this.map.size + 1}`;
|
|
24
|
+
const idExp = bpe.identifier(id);
|
|
25
|
+
this.convertPattern(idExp, x);
|
|
26
|
+
return idExp;
|
|
27
|
+
case "ArrayPattern":
|
|
28
|
+
case "AssignmentPattern":
|
|
29
|
+
case "RestElement":
|
|
30
|
+
throw new NotSupportedError();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
convertPattern(parentExp, x) {
|
|
34
|
+
for (const iterator of x.properties) {
|
|
35
|
+
switch (iterator.type) {
|
|
36
|
+
case "RestElement":
|
|
37
|
+
throw new NotSupportedError();
|
|
38
|
+
case "ObjectProperty":
|
|
39
|
+
switch (iterator.key.type) {
|
|
40
|
+
case "Identifier":
|
|
41
|
+
const childExp = bpe.memberExpression(parentExp, iterator.key);
|
|
42
|
+
this.map.set(iterator.key.name, childExp);
|
|
43
|
+
switch (iterator.value.type) {
|
|
44
|
+
case "ObjectPattern":
|
|
45
|
+
this.convertPattern(childExp, iterator.value);
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
break;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=Restructure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Restructure.js","sourceRoot":"","sources":["../../../src/query/parser/Restructure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,gBAAgB;IAE7C,GAAG,GAA0B,IAAI,GAAG,EAAE,CAAC;IAE/C,oBAAoB,CAAC,IAAyB;QAC1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,4BAA4B,CAAC,IAAiC;QAE1D,sDAAsD;QAEtD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAmB,CAAC;QAEpD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,IAAoB;QAChC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED,YAAY,CAAC,CAAiD;QAC1D,QAAO,CAAC,CAAC,IAAI,EAAE;YACX,KAAK,YAAY;gBACb,OAAO,CAAC,CAAC;YACb,KAAK,eAAe;gBAChB,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBACjC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC9B,OAAO,KAAK,CAAC;YACjB,KAAK,cAAc,CAAC;YACpB,KAAK,mBAAmB,CAAC;YACzB,KAAK,aAAa;gBACd,MAAM,IAAI,iBAAiB,EAAE,CAAC;SACrC;IACL,CAAC;IAED,cAAc,CAAC,SAAyB,EAAE,CAAoB;QAC1D,KAAK,MAAM,QAAQ,IAAI,CAAC,CAAC,UAAU,EAAE;YACjC,QAAO,QAAQ,CAAC,IAAI,EAAE;gBAClB,KAAK,aAAa;oBACd,MAAM,IAAI,iBAAiB,EAAE,CAAC;gBAClC,KAAK,gBAAgB;oBACjB,QAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAC;wBACrB,KAAK,YAAY;4BACb,MAAM,QAAQ,GAAG,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;4BAC/D,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;4BAC1C,QAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE;gCACxB,KAAK,eAAe;oCAChB,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;oCAC9C,MAAM;6BACb;4BACL,MAAM;qBACT;aACR;SACJ;IACL,CAAC;CAEJ"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as bpe from "@babel/types";
|
|
2
|
+
import { BabelVisitor } from "./BabelVisitor.js";
|
|
3
|
+
export default class TransformVisitor extends BabelVisitor<bpe.Node> {
|
|
4
|
+
transform<T>(n: T): any;
|
|
5
|
+
visitTemplateElement(node: bpe.TemplateElement): bpe.Node;
|
|
6
|
+
visitObjectExpression(node: bpe.ObjectExpression): bpe.Node;
|
|
7
|
+
visitMemberExpression(node: bpe.MemberExpression): bpe.Node;
|
|
8
|
+
visitLogicalExpression(node: bpe.LogicalExpression): bpe.Node;
|
|
9
|
+
visitIdentifier(node: bpe.Identifier): bpe.Node;
|
|
10
|
+
visitTemplateLiteral(node: bpe.TemplateLiteral): bpe.Node;
|
|
11
|
+
visitNumericLiteral(node: bpe.NumericLiteral): bpe.Node;
|
|
12
|
+
visitDecimalLiteral(node: bpe.DecimalLiteral): bpe.Node;
|
|
13
|
+
visitBooleanLiteral(node: bpe.BooleanLiteral): bpe.Node;
|
|
14
|
+
visitBigIntLiteral(node: bpe.BigIntLiteral): bpe.Node;
|
|
15
|
+
visitStringLiteral(node: bpe.StringLiteral): bpe.Node;
|
|
16
|
+
visitNullLiteral(node: bpe.NullLiteral): bpe.Node;
|
|
17
|
+
visitConditionalExpression(node: bpe.ConditionalExpression): bpe.Node;
|
|
18
|
+
visitArrowFunctionExpression(node: bpe.ArrowFunctionExpression): bpe.Node;
|
|
19
|
+
visitCallExpression(node: bpe.CallExpression): bpe.Node;
|
|
20
|
+
visitBinaryExpression(node: bpe.BinaryExpression): bpe.Node;
|
|
21
|
+
visitObjectProperty(node: bpe.ObjectProperty): bpe.Node;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=TransformVisitor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransformVisitor.d.ts","sourceRoot":"","sources":["../../../src/query/parser/TransformVisitor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;IAEhE,SAAS,CAAC,CAAC,EAAE,CAAC,EAAC,CAAC;IAUhB,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,IAAI;IAIzD,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,gBAAgB,GAAG,GAAG,CAAC,IAAI;IAK3D,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,gBAAgB,GAAG,GAAG,CAAC,IAAI;IAG3D,sBAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,iBAAiB,GAAG,GAAG,CAAC,IAAI;IAG7D,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI;IAG/C,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,IAAI;IAGzD,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI;IAGvD,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI;IAGvD,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI;IAGvD,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,IAAI;IAGrD,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,IAAI;IAGrD,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,IAAI;IAGjD,0BAA0B,CAAC,IAAI,EAAE,GAAG,CAAC,qBAAqB,GAAG,GAAG,CAAC,IAAI;IAMrE,4BAA4B,CAAC,IAAI,EAAE,GAAG,CAAC,uBAAuB,GAAG,GAAG,CAAC,IAAI;IAGzE,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI;IAGvD,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,gBAAgB,GAAG,GAAG,CAAC,IAAI;IAI3D,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI;CAY1D"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import * as bpe from "@babel/types";
|
|
2
|
+
import { BabelVisitor } from "./BabelVisitor.js";
|
|
3
|
+
export default class TransformVisitor extends BabelVisitor {
|
|
4
|
+
transform(n) {
|
|
5
|
+
if (!n) {
|
|
6
|
+
return n;
|
|
7
|
+
}
|
|
8
|
+
if (Array.isArray(n)) {
|
|
9
|
+
return n.map((x) => this.transform(x));
|
|
10
|
+
}
|
|
11
|
+
return this.visit(n);
|
|
12
|
+
}
|
|
13
|
+
visitTemplateElement(node) {
|
|
14
|
+
return node;
|
|
15
|
+
}
|
|
16
|
+
visitObjectExpression(node) {
|
|
17
|
+
return bpe.objectExpression(this.transform(node.properties));
|
|
18
|
+
}
|
|
19
|
+
visitMemberExpression(node) {
|
|
20
|
+
return bpe.memberExpression(this.transform(node.object), this.transform(node.property), node.computed, node.optional);
|
|
21
|
+
}
|
|
22
|
+
visitLogicalExpression(node) {
|
|
23
|
+
return bpe.logicalExpression(node.operator, this.transform(node.left), this.transform(node.right));
|
|
24
|
+
}
|
|
25
|
+
visitIdentifier(node) {
|
|
26
|
+
return node;
|
|
27
|
+
}
|
|
28
|
+
visitTemplateLiteral(node) {
|
|
29
|
+
return bpe.templateLiteral(this.transform(node.quasis), this.transform(node.expressions));
|
|
30
|
+
}
|
|
31
|
+
visitNumericLiteral(node) {
|
|
32
|
+
return node;
|
|
33
|
+
}
|
|
34
|
+
visitDecimalLiteral(node) {
|
|
35
|
+
return node;
|
|
36
|
+
}
|
|
37
|
+
visitBooleanLiteral(node) {
|
|
38
|
+
return node;
|
|
39
|
+
}
|
|
40
|
+
visitBigIntLiteral(node) {
|
|
41
|
+
return node;
|
|
42
|
+
}
|
|
43
|
+
visitStringLiteral(node) {
|
|
44
|
+
return node;
|
|
45
|
+
}
|
|
46
|
+
visitNullLiteral(node) {
|
|
47
|
+
return node;
|
|
48
|
+
}
|
|
49
|
+
visitConditionalExpression(node) {
|
|
50
|
+
return bpe.conditionalExpression(this.transform(node.test), this.transform(node.consequent), this.transform(node.alternate));
|
|
51
|
+
}
|
|
52
|
+
visitArrowFunctionExpression(node) {
|
|
53
|
+
return bpe.arrowFunctionExpression(this.transform(node.params), this.transform(node.body), node.async);
|
|
54
|
+
}
|
|
55
|
+
visitCallExpression(node) {
|
|
56
|
+
return bpe.callExpression(this.transform(node.callee), this.transform(node.arguments));
|
|
57
|
+
}
|
|
58
|
+
visitBinaryExpression(node) {
|
|
59
|
+
return bpe.binaryExpression(node.operator, this.transform(node.left), this.transform(node.right));
|
|
60
|
+
}
|
|
61
|
+
visitObjectProperty(node) {
|
|
62
|
+
let key = node.key;
|
|
63
|
+
if (node.key.type !== "Identifier") {
|
|
64
|
+
key = this.transform(key);
|
|
65
|
+
}
|
|
66
|
+
const value = this.transform(node.value);
|
|
67
|
+
return bpe.objectProperty(key, value, node.computed, node.shorthand, node.decorators);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=TransformVisitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransformVisitor.js","sourceRoot":"","sources":["../../../src/query/parser/TransformVisitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface ISql {
|
|
2
|
+
in<T>(a: T, array: T[]): boolean;
|
|
3
|
+
cast: {
|
|
4
|
+
asNumber(a: any): number;
|
|
5
|
+
asInteger(a: any): number;
|
|
6
|
+
asBigInt(a: any): number;
|
|
7
|
+
asText(a: any): string;
|
|
8
|
+
asDate(a: any): Date;
|
|
9
|
+
asDateTime(a: any): Date;
|
|
10
|
+
asDecimal(a: any): number;
|
|
11
|
+
};
|
|
12
|
+
text: {
|
|
13
|
+
concat(...fragments: string[]): string;
|
|
14
|
+
like(text: string, test: string): boolean;
|
|
15
|
+
iLike(text: string, test: string): boolean;
|
|
16
|
+
left(text: string, length: number): string;
|
|
17
|
+
right(text: string, length: number): string;
|
|
18
|
+
startsWith(text: string, test: string): boolean;
|
|
19
|
+
endsWith(text: string, test: string): boolean;
|
|
20
|
+
indexOf(text: string, test: string): number;
|
|
21
|
+
};
|
|
22
|
+
date: {
|
|
23
|
+
yearOf(d: Date): number;
|
|
24
|
+
monthOf(d: Date): number;
|
|
25
|
+
dayOf(d: Date): number;
|
|
26
|
+
minuteOf(d: Date): number;
|
|
27
|
+
hourOf(d: Date): number;
|
|
28
|
+
secondOf(d: Date): number;
|
|
29
|
+
addYears(d: Date, n: number): Date;
|
|
30
|
+
addMonths(d: Date, n: number): Date;
|
|
31
|
+
addDays(d: Date, n: number): Date;
|
|
32
|
+
addHours(d: Date, n: number): Date;
|
|
33
|
+
addMinutes(d: Date, n: number): Date;
|
|
34
|
+
addSeconds(d: Date, n: number): Date;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=ISql.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ISql.d.ts","sourceRoot":"","sources":["../../src/sql/ISql.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IAEjB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC;IAEjC,IAAI,EAAE;QACF,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;QACzB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;QAC1B,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;QACzB,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;QACvB,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;QACrB,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;QACzB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;KAC7B,CAAA;IAED,IAAI,EAAE;QACF,MAAM,CAAC,GAAI,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAC1C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAC3C,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;QAC3C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;QAC5C,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAC9C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;KAC/C,CAAC;IAEF,IAAI,EAAE;QACF,MAAM,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QACxB,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QACzB,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QACvB,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QAC1B,MAAM,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QACxB,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;QAC1B,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACnC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACnC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACrC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACxC,CAAA;CAEJ"}
|
package/dist/sql/ISql.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ISql.js","sourceRoot":"","sources":["../../src/sql/ISql.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sql.d.ts","sourceRoot":"","sources":["../../src/sql/Sql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,QAAA,MAAM,GAAG,EAAE,IAAa,CAAC;AACzB,eAAe,GAAG,CAAC"}
|
package/dist/sql/Sql.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sql.js","sourceRoot":"","sources":["../../src/sql/Sql.ts"],"names":[],"mappings":"AAEA,MAAM,GAAG,GAAS,KAAK,CAAC,CAAC;AACzB,eAAe,GAAG,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestConfig.d.ts","sourceRoot":"","sources":["../../src/tests/TestConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,qBAAa,UAAU;IACnB,EAAE,EAAC,OAAO,CAAC;IACX,MAAM,EAAE,UAAU,CAAC;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestConfig.js","sourceRoot":"","sources":["../../src/tests/TestConfig.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,UAAU;IACnB,EAAE,CAAS;IACX,MAAM,CAAa;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select-items.d.ts","sourceRoot":"","sources":["../../../../src/tests/db-tests/tests/select-items.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,yBAA8B,IAAI,EAAE,UAAU,iBA4C7C"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import assert from "assert";
|
|
2
|
+
import { createContext, headPhoneCategory } from "../../model/createContext.js";
|
|
3
|
+
export default async function () {
|
|
4
|
+
if (!this.db) {
|
|
5
|
+
return;
|
|
6
|
+
}
|
|
7
|
+
const context = await createContext(this.driver);
|
|
8
|
+
const headphone = await context.products.where({ name: "Jabber Head Phones" }, (p) => (x) => x.name === p.name).first();
|
|
9
|
+
assert.notEqual(null, headphone);
|
|
10
|
+
const products = await context.products.where({}, (p) => (x) => x.productID > 0)
|
|
11
|
+
.offset(2)
|
|
12
|
+
.limit(5)
|
|
13
|
+
.orderBy({}, (p) => (x) => x.name)
|
|
14
|
+
.toArray();
|
|
15
|
+
assert.equal(5, products.length);
|
|
16
|
+
const sorted = [...products].sort((a, b) => a.name.localeCompare(b.name));
|
|
17
|
+
assert.equal(products.join(","), sorted.join(","));
|
|
18
|
+
// count all headphones...
|
|
19
|
+
let allHeadphones = await context.productCategories.where({ headPhoneCategory }, (p) => (x) => x.category.categoryID === p.headPhoneCategory).count();
|
|
20
|
+
assert.equal(6, allHeadphones);
|
|
21
|
+
allHeadphones = await context.products.where({ headPhoneCategory }, (p) => (x) => x.categories.some((pc) => pc.categoryID === p.headPhoneCategory)).count();
|
|
22
|
+
assert.equal(6, allHeadphones);
|
|
23
|
+
const first = await context.productCategories.where({ headPhoneCategory }, (p) => (x) => x.category.categoryID === p.headPhoneCategory).first();
|
|
24
|
+
// delete first one...
|
|
25
|
+
context.products.delete(first);
|
|
26
|
+
await context.saveChanges();
|
|
27
|
+
allHeadphones = await context.products.where({ headPhoneCategory }, (p) => (x) => x.categories.some((pc) => pc.categoryID === p.headPhoneCategory)).count();
|
|
28
|
+
assert.equal(5, allHeadphones);
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=select-items.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select-items.js","sourceRoot":"","sources":["../../../../src/tests/db-tests/tests/select-items.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-items.d.ts","sourceRoot":"","sources":["../../../../src/tests/db-tests/tests/update-items.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,yBAA8B,IAAI,EAAE,UAAU,iBAa7C"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createContext } from "../../model/createContext.js";
|
|
2
|
+
export default async function () {
|
|
3
|
+
if (!this.db) {
|
|
4
|
+
return;
|
|
5
|
+
}
|
|
6
|
+
const context = await createContext(this.driver);
|
|
7
|
+
const first = await context.products.all().first();
|
|
8
|
+
first.name = "First product";
|
|
9
|
+
await context.saveChanges();
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=update-items.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-items.js","sourceRoot":"","sources":["../../../../src/tests/db-tests/tests/update-items.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,CAAC,OAAO,CAAC,KAAK;IAEhB,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;QACV,OAAO;KACV;IAED,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEjD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;IAEnD,KAAK,CAAC,IAAI,GAAG,eAAe,CAAC;IAE7B,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;AAChC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection-test.d.ts","sourceRoot":"","sources":["../../../../src/tests/drivers/postgres/connection-test.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,yBAA+B,IAAI,EAAE,UAAU,iBAuB9C"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export default async function () {
|
|
2
|
+
if (!this.db) {
|
|
3
|
+
return;
|
|
4
|
+
}
|
|
5
|
+
const connection = this.driver;
|
|
6
|
+
await connection.ensureDatabase();
|
|
7
|
+
// create table...
|
|
8
|
+
await connection.executeQuery(`SELECT 1;`);
|
|
9
|
+
// select items...
|
|
10
|
+
const items = await connection.executeReader(`SELECT * FROM (VALUES (1, 1), (1, 1)) as V(ID, Value)`);
|
|
11
|
+
try {
|
|
12
|
+
for await (const iterator of items.next(100)) {
|
|
13
|
+
console.log(iterator);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
finally {
|
|
17
|
+
await items.dispose();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=connection-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection-test.js","sourceRoot":"","sources":["../../../../src/tests/drivers/postgres/connection-test.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,CAAC,KAAK;IAEhB,IAAG,CAAC,IAAI,CAAC,EAAE,EAAE;QACT,OAAO;KACV;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;IAE/B,MAAM,UAAU,CAAC,cAAc,EAAE,CAAC;IAClC,kBAAkB;IAClB,MAAM,UAAU,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAE3C,kBAAkB;IAClB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,uDAAuD,CAAC,CAAC;IAEtG,IAAI;QACA,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC1C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SACzB;KACJ;YAAS;QACN,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;KACzB;AAEL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-server-test.d.ts","sourceRoot":"","sources":["../../../../src/tests/drivers/sql-server/sql-server-test.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,mBAIb"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-server-test.js","sourceRoot":"","sources":["../../../../src/tests/drivers/sql-server/sql-server-test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AAEnF,MAAM,CAAC,OAAO;IAEV,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,gBAAgB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAE,CAAC;AAErE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"child-joins.d.ts","sourceRoot":"","sources":["../../../../src/tests/expressions/left-joins/child-joins.ts"],"names":[],"mappings":"AAkEA,MAAM,CAAC,OAAO,mBAwBb"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { ShoppingContext } from "../../model/ShoppingContext.js";
|
|
2
|
+
import { assertSqlMatch } from "../trimInternal.js";
|
|
3
|
+
import PostgreSqlDriver from "../../../drivers/postgres/PostgreSqlDriver.js";
|
|
4
|
+
const sql1 = `SELECT
|
|
5
|
+
"p1"."productID",
|
|
6
|
+
"p1"."name",
|
|
7
|
+
"p1"."ownerID",
|
|
8
|
+
"p1"."status"
|
|
9
|
+
FROM "Products" AS "p1"
|
|
10
|
+
WHERE EXISTS (SELECT
|
|
11
|
+
1
|
|
12
|
+
FROM "OrderItems" AS "o"
|
|
13
|
+
WHERE ("p1"."productID" = "o"."productID") AND ("o"."productID" = $1))`;
|
|
14
|
+
const sql2 = `SELECT
|
|
15
|
+
"p1"."productID",
|
|
16
|
+
"p1"."name",
|
|
17
|
+
"p1"."ownerID",
|
|
18
|
+
"p1"."status"
|
|
19
|
+
FROM "Products" AS "p1"
|
|
20
|
+
WHERE EXISTS (SELECT
|
|
21
|
+
1
|
|
22
|
+
FROM "OrderItems" AS "o"
|
|
23
|
+
WHERE ("p1"."productID" = "o"."productID") AND ("o"."productID" = $1)) AND EXISTS (SELECT
|
|
24
|
+
1
|
|
25
|
+
FROM "OrderItems" AS "o1"
|
|
26
|
+
WHERE ("p1"."productID" = "o1"."productID") AND ("o1"."amount" > $2))`;
|
|
27
|
+
const sql3 = `SELECT
|
|
28
|
+
"p1"."productID",
|
|
29
|
+
"p1"."name",
|
|
30
|
+
"p1"."ownerID",
|
|
31
|
+
"p1"."status"
|
|
32
|
+
FROM "Products" AS "p1"
|
|
33
|
+
WHERE EXISTS (SELECT
|
|
34
|
+
1
|
|
35
|
+
FROM "OrderItems" AS "o"
|
|
36
|
+
WHERE ("p1"."productID" = "o"."productID") AND ("o"."productID" = $1)) AND EXISTS (SELECT
|
|
37
|
+
1
|
|
38
|
+
FROM "OrderItems" AS "o1"
|
|
39
|
+
INNER JOIN "Orders" AS "o2" ON "o1"."orderID" = "o2"."orderID"
|
|
40
|
+
WHERE ("p1"."productID" = "o1"."productID") AND ("o2"."orderDate" > $2))`;
|
|
41
|
+
const productJoin = `SELECT
|
|
42
|
+
"p1"."productID",
|
|
43
|
+
"p1"."name",
|
|
44
|
+
"p1"."ownerID",
|
|
45
|
+
"p1"."status"
|
|
46
|
+
FROM "Products" AS "p1"
|
|
47
|
+
LEFT JOIN "Users" AS "u" ON "p1"."ownerID" = "u"."userID"
|
|
48
|
+
WHERE "u"."dateCreated" > $1`;
|
|
49
|
+
const join2 = `SELECT
|
|
50
|
+
"o1"."orderItemID",
|
|
51
|
+
"o1"."orderID",
|
|
52
|
+
"o1"."productID",
|
|
53
|
+
"o1"."priceID",
|
|
54
|
+
"o1"."amount"
|
|
55
|
+
FROM "OrderItems" AS "o1"
|
|
56
|
+
INNER JOIN "Products" AS "p" ON "o1"."productID" = "p"."productID"
|
|
57
|
+
WHERE ("o1"."productID" = $1) OR ("p"."ownerID" = $2)`;
|
|
58
|
+
export default function () {
|
|
59
|
+
const context = new ShoppingContext(new PostgreSqlDriver({}));
|
|
60
|
+
let query = context.products.where({ productID: 1 }, (p) => (x) => x.orderItems.some((o) => o.productID === p.productID));
|
|
61
|
+
let r = query.toQuery();
|
|
62
|
+
assertSqlMatch(sql1, r.text);
|
|
63
|
+
const old = query;
|
|
64
|
+
query = query.where({ amount: 200 }, (p) => (x) => x.orderItems.some((o) => o.amount > p.amount));
|
|
65
|
+
r = query.toQuery();
|
|
66
|
+
assertSqlMatch(sql2, r.text);
|
|
67
|
+
query = old.where({ date: new Date() }, (p) => (x) => x.orderItems.some((o) => o.order.orderDate > p.date));
|
|
68
|
+
r = query.toQuery();
|
|
69
|
+
assertSqlMatch(sql3, r.text);
|
|
70
|
+
query = context.products.where({ date: new Date() }, (p) => (x) => x.owner.dateCreated > p.date);
|
|
71
|
+
r = query.toQuery();
|
|
72
|
+
assertSqlMatch(productJoin, r.text);
|
|
73
|
+
const q = context.orderItems.where({ o: 1, owner: 1 }, (p) => (x) => x.productID === p.o || x.product.ownerID === p.owner);
|
|
74
|
+
r = q.toQuery();
|
|
75
|
+
assertSqlMatch(join2, r.text);
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=child-joins.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"child-joins.js","sourceRoot":"","sources":["../../../../src/tests/expressions/left-joins/child-joins.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sanitize-test.d.ts","sourceRoot":"","sources":["../../../../src/tests/expressions/sanitize/sanitize-test.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,mBAWb"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import assert from "assert";
|
|
2
|
+
import QueryCompiler from "../../../compiler/QueryCompiler.js";
|
|
3
|
+
export default function () {
|
|
4
|
+
const compiler = QueryCompiler.instance;
|
|
5
|
+
const name = "Akash";
|
|
6
|
+
assert.throws(() => compiler.execute({ name }, (p) => (x) => pg_kill(9)));
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=sanitize-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sanitize-test.js","sourceRoot":"","sources":["../../../../src/tests/expressions/sanitize/sanitize-test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,aAAa,MAAM,oCAAoC,CAAC;AAI/D,MAAM,CAAC,OAAO;IAEV,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;IAExC,MAAM,IAAI,GAAG,OAAO,CAAC;IAErB,MAAM,CAAC,MAAM,CAAC,GAAE,EAAE,CACd,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CACvD,CAAC;AAGN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../src/tests/expressions/select/select.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,mBAeb"}
|