@dbml/core 11.0.1 → 11.0.2-arch.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/_virtual/_rolldown/runtime.cjs +1 -1
- package/lib/_virtual/_rolldown/runtime.mjs +2 -3
- package/lib/export/DbmlExporter.cjs +1 -1
- package/lib/export/DbmlExporter.mjs +2 -3
- package/lib/export/JsonExporter.mjs +1 -2
- package/lib/export/ModelExporter.cjs +1 -1
- package/lib/export/ModelExporter.mjs +9 -10
- package/lib/export/MysqlExporter.mjs +1 -2
- package/lib/export/OracleExporter.mjs +1 -2
- package/lib/export/PostgresExporter.cjs +8 -8
- package/lib/export/PostgresExporter.mjs +30 -31
- package/lib/export/SqlServerExporter.mjs +1 -2
- package/lib/export/index.cjs +1 -1
- package/lib/export/index.mjs +5 -6
- package/lib/export/utils.mjs +1 -2
- package/lib/import/index.cjs +1 -1
- package/lib/import/index.mjs +10 -11
- package/lib/index.cjs +1 -1
- package/lib/index.mjs +9 -9
- package/lib/model_structure/check.mjs +1 -2
- package/lib/model_structure/config.mjs +1 -2
- package/lib/model_structure/database.cjs +1 -1
- package/lib/model_structure/database.mjs +81 -23
- package/lib/model_structure/dbState.cjs +1 -1
- package/lib/model_structure/dbState.mjs +2 -3
- package/lib/model_structure/dep.cjs +1 -1
- package/lib/model_structure/dep.mjs +6 -7
- package/lib/model_structure/depEdge.cjs +1 -1
- package/lib/model_structure/depEdge.mjs +10 -11
- package/lib/model_structure/element.mjs +1 -2
- package/lib/model_structure/endpoint.cjs +1 -1
- package/lib/model_structure/endpoint.mjs +17 -18
- package/lib/model_structure/enum.cjs +1 -1
- package/lib/model_structure/enum.mjs +8 -9
- package/lib/model_structure/enumValue.mjs +1 -2
- package/lib/model_structure/field.cjs +1 -1
- package/lib/model_structure/field.mjs +5 -6
- package/lib/model_structure/group.cjs +1 -0
- package/lib/model_structure/group.mjs +29 -0
- package/lib/model_structure/indexColumn.mjs +1 -2
- package/lib/model_structure/indexes.mjs +1 -2
- package/lib/model_structure/link.cjs +1 -0
- package/lib/model_structure/link.mjs +27 -0
- package/lib/model_structure/node.cjs +1 -0
- package/lib/model_structure/node.mjs +30 -0
- package/lib/model_structure/ref.mjs +1 -2
- package/lib/model_structure/schema.cjs +1 -1
- package/lib/model_structure/schema.mjs +15 -16
- package/lib/model_structure/stickyNote.mjs +1 -2
- package/lib/model_structure/table.cjs +1 -1
- package/lib/model_structure/table.mjs +28 -29
- package/lib/model_structure/tableGroup.cjs +1 -1
- package/lib/model_structure/tableGroup.mjs +5 -6
- package/lib/model_structure/tablePartial.mjs +1 -2
- package/lib/model_structure/utils.mjs +1 -2
- package/lib/node_modules/antlr4/dist/antlr4.web.mjs +1 -2
- package/lib/node_modules/lodash-es/_DataView.cjs +1 -1
- package/lib/node_modules/lodash-es/_DataView.mjs +4 -5
- package/lib/node_modules/lodash-es/_Hash.mjs +1 -2
- package/lib/node_modules/lodash-es/_ListCache.mjs +1 -2
- package/lib/node_modules/lodash-es/_Map.cjs +1 -1
- package/lib/node_modules/lodash-es/_Map.mjs +4 -5
- package/lib/node_modules/lodash-es/_MapCache.mjs +1 -2
- package/lib/node_modules/lodash-es/_Promise.cjs +1 -1
- package/lib/node_modules/lodash-es/_Promise.mjs +4 -5
- package/lib/node_modules/lodash-es/_Set.cjs +1 -1
- package/lib/node_modules/lodash-es/_Set.mjs +4 -5
- package/lib/node_modules/lodash-es/_SetCache.mjs +1 -2
- package/lib/node_modules/lodash-es/_Stack.mjs +1 -2
- package/lib/node_modules/lodash-es/_Symbol.mjs +1 -2
- package/lib/node_modules/lodash-es/_Uint8Array.mjs +1 -2
- package/lib/node_modules/lodash-es/_WeakMap.cjs +1 -1
- package/lib/node_modules/lodash-es/_WeakMap.mjs +4 -5
- package/lib/node_modules/lodash-es/_arrayAggregator.mjs +1 -2
- package/lib/node_modules/lodash-es/_arrayEach.mjs +1 -2
- package/lib/node_modules/lodash-es/_arrayFilter.mjs +1 -2
- package/lib/node_modules/lodash-es/_arrayLikeKeys.cjs +1 -1
- package/lib/node_modules/lodash-es/_arrayLikeKeys.mjs +9 -10
- package/lib/node_modules/lodash-es/_arrayMap.mjs +1 -2
- package/lib/node_modules/lodash-es/_arrayPush.mjs +1 -2
- package/lib/node_modules/lodash-es/_arrayReduce.mjs +1 -2
- package/lib/node_modules/lodash-es/_arraySome.mjs +1 -2
- package/lib/node_modules/lodash-es/_asciiToArray.mjs +1 -2
- package/lib/node_modules/lodash-es/_assocIndexOf.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseAggregator.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseAssignValue.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseEach.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseFlatten.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseFor.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseForOwn.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseForOwn.mjs +5 -6
- package/lib/node_modules/lodash-es/_baseGet.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseGetAllKeys.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseGetAllKeys.mjs +5 -6
- package/lib/node_modules/lodash-es/_baseGetTag.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseHasIn.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseIsArguments.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseIsEqual.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseIsEqual.mjs +5 -6
- package/lib/node_modules/lodash-es/_baseIsEqualDeep.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseIsEqualDeep.mjs +15 -16
- package/lib/node_modules/lodash-es/_baseIsMatch.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseIsNative.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseIsNative.mjs +6 -7
- package/lib/node_modules/lodash-es/_baseIsTypedArray.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseIsTypedArray.mjs +5 -6
- package/lib/node_modules/lodash-es/_baseIteratee.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseIteratee.mjs +7 -8
- package/lib/node_modules/lodash-es/_baseKeys.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseMatches.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseMatchesProperty.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseMatchesProperty.mjs +10 -11
- package/lib/node_modules/lodash-es/_baseNth.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseProperty.mjs +1 -2
- package/lib/node_modules/lodash-es/_basePropertyDeep.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseReduce.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseSlice.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseTimes.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseToString.cjs +1 -1
- package/lib/node_modules/lodash-es/_baseToString.mjs +7 -8
- package/lib/node_modules/lodash-es/_baseTrim.mjs +1 -2
- package/lib/node_modules/lodash-es/_baseUnary.mjs +1 -2
- package/lib/node_modules/lodash-es/_cacheHas.mjs +1 -2
- package/lib/node_modules/lodash-es/_castFunction.mjs +1 -2
- package/lib/node_modules/lodash-es/_castPath.mjs +1 -2
- package/lib/node_modules/lodash-es/_castSlice.mjs +1 -2
- package/lib/node_modules/lodash-es/_copyArray.mjs +1 -2
- package/lib/node_modules/lodash-es/_coreJsData.mjs +1 -2
- package/lib/node_modules/lodash-es/_createAggregator.cjs +1 -1
- package/lib/node_modules/lodash-es/_createAggregator.mjs +8 -9
- package/lib/node_modules/lodash-es/_createBaseEach.mjs +1 -2
- package/lib/node_modules/lodash-es/_createBaseFor.mjs +1 -2
- package/lib/node_modules/lodash-es/_createCaseFirst.cjs +1 -1
- package/lib/node_modules/lodash-es/_createCaseFirst.mjs +8 -9
- package/lib/node_modules/lodash-es/_defineProperty.mjs +1 -2
- package/lib/node_modules/lodash-es/_equalArrays.mjs +1 -2
- package/lib/node_modules/lodash-es/_equalByTag.cjs +1 -1
- package/lib/node_modules/lodash-es/_equalByTag.mjs +6 -7
- package/lib/node_modules/lodash-es/_equalObjects.mjs +1 -2
- package/lib/node_modules/lodash-es/_freeGlobal.mjs +1 -2
- package/lib/node_modules/lodash-es/_getAllKeys.cjs +1 -1
- package/lib/node_modules/lodash-es/_getAllKeys.mjs +5 -6
- package/lib/node_modules/lodash-es/_getMapData.mjs +1 -2
- package/lib/node_modules/lodash-es/_getMatchData.cjs +1 -1
- package/lib/node_modules/lodash-es/_getMatchData.mjs +6 -7
- package/lib/node_modules/lodash-es/_getNative.mjs +1 -2
- package/lib/node_modules/lodash-es/_getRawTag.mjs +1 -2
- package/lib/node_modules/lodash-es/_getSymbols.mjs +1 -2
- package/lib/node_modules/lodash-es/_getTag.cjs +1 -1
- package/lib/node_modules/lodash-es/_getTag.mjs +12 -13
- package/lib/node_modules/lodash-es/_getValue.mjs +1 -2
- package/lib/node_modules/lodash-es/_hasPath.cjs +1 -1
- package/lib/node_modules/lodash-es/_hasPath.mjs +9 -10
- package/lib/node_modules/lodash-es/_hasUnicode.mjs +1 -2
- package/lib/node_modules/lodash-es/_hashClear.mjs +1 -2
- package/lib/node_modules/lodash-es/_hashDelete.mjs +1 -2
- package/lib/node_modules/lodash-es/_hashGet.mjs +1 -2
- package/lib/node_modules/lodash-es/_hashHas.mjs +1 -2
- package/lib/node_modules/lodash-es/_hashSet.mjs +1 -2
- package/lib/node_modules/lodash-es/_isFlattenable.cjs +1 -1
- package/lib/node_modules/lodash-es/_isFlattenable.mjs +5 -6
- package/lib/node_modules/lodash-es/_isIndex.mjs +1 -2
- package/lib/node_modules/lodash-es/_isKey.cjs +1 -1
- package/lib/node_modules/lodash-es/_isKey.mjs +6 -7
- package/lib/node_modules/lodash-es/_isKeyable.mjs +1 -2
- package/lib/node_modules/lodash-es/_isMasked.mjs +1 -2
- package/lib/node_modules/lodash-es/_isPrototype.mjs +1 -2
- package/lib/node_modules/lodash-es/_isStrictComparable.mjs +1 -2
- package/lib/node_modules/lodash-es/_listCacheClear.mjs +1 -2
- package/lib/node_modules/lodash-es/_listCacheDelete.mjs +1 -2
- package/lib/node_modules/lodash-es/_listCacheGet.mjs +1 -2
- package/lib/node_modules/lodash-es/_listCacheHas.mjs +1 -2
- package/lib/node_modules/lodash-es/_listCacheSet.mjs +1 -2
- package/lib/node_modules/lodash-es/_mapCacheClear.mjs +1 -2
- package/lib/node_modules/lodash-es/_mapCacheDelete.mjs +1 -2
- package/lib/node_modules/lodash-es/_mapCacheGet.mjs +1 -2
- package/lib/node_modules/lodash-es/_mapCacheHas.mjs +1 -2
- package/lib/node_modules/lodash-es/_mapCacheSet.mjs +1 -2
- package/lib/node_modules/lodash-es/_mapToArray.mjs +1 -2
- package/lib/node_modules/lodash-es/_matchesStrictComparable.mjs +1 -2
- package/lib/node_modules/lodash-es/_memoizeCapped.mjs +1 -2
- package/lib/node_modules/lodash-es/_nativeCreate.mjs +1 -2
- package/lib/node_modules/lodash-es/_nativeKeys.mjs +1 -2
- package/lib/node_modules/lodash-es/_nodeUtil.mjs +1 -2
- package/lib/node_modules/lodash-es/_objectToString.mjs +1 -2
- package/lib/node_modules/lodash-es/_overArg.mjs +1 -2
- package/lib/node_modules/lodash-es/_root.mjs +1 -2
- package/lib/node_modules/lodash-es/_setCacheAdd.mjs +1 -2
- package/lib/node_modules/lodash-es/_setCacheHas.mjs +1 -2
- package/lib/node_modules/lodash-es/_setToArray.mjs +1 -2
- package/lib/node_modules/lodash-es/_stackClear.mjs +1 -2
- package/lib/node_modules/lodash-es/_stackDelete.mjs +1 -2
- package/lib/node_modules/lodash-es/_stackGet.mjs +1 -2
- package/lib/node_modules/lodash-es/_stackHas.mjs +1 -2
- package/lib/node_modules/lodash-es/_stackSet.mjs +1 -2
- package/lib/node_modules/lodash-es/_stringToArray.cjs +1 -1
- package/lib/node_modules/lodash-es/_stringToArray.mjs +5 -6
- package/lib/node_modules/lodash-es/_stringToPath.mjs +1 -2
- package/lib/node_modules/lodash-es/_toKey.mjs +1 -2
- package/lib/node_modules/lodash-es/_toSource.mjs +1 -2
- package/lib/node_modules/lodash-es/_trimmedEndIndex.mjs +1 -2
- package/lib/node_modules/lodash-es/_unicodeToArray.mjs +1 -2
- package/lib/node_modules/lodash-es/capitalize.mjs +1 -2
- package/lib/node_modules/lodash-es/concat.cjs +1 -1
- package/lib/node_modules/lodash-es/concat.mjs +7 -8
- package/lib/node_modules/lodash-es/eq.mjs +1 -2
- package/lib/node_modules/lodash-es/first.mjs +1 -1
- package/lib/node_modules/lodash-es/flatten.mjs +1 -2
- package/lib/node_modules/lodash-es/flattenDeep.mjs +1 -2
- package/lib/node_modules/lodash-es/flattenDepth.cjs +1 -1
- package/lib/node_modules/lodash-es/flattenDepth.mjs +5 -6
- package/lib/node_modules/lodash-es/forEach.cjs +1 -1
- package/lib/node_modules/lodash-es/forEach.mjs +7 -8
- package/lib/node_modules/lodash-es/get.mjs +1 -2
- package/lib/node_modules/lodash-es/groupBy.mjs +1 -2
- package/lib/node_modules/lodash-es/hasIn.mjs +1 -2
- package/lib/node_modules/lodash-es/head.mjs +1 -2
- package/lib/node_modules/lodash-es/identity.mjs +1 -2
- package/lib/node_modules/lodash-es/isArguments.cjs +1 -1
- package/lib/node_modules/lodash-es/isArguments.mjs +6 -7
- package/lib/node_modules/lodash-es/isArray.mjs +1 -2
- package/lib/node_modules/lodash-es/isArrayLike.mjs +1 -2
- package/lib/node_modules/lodash-es/isBuffer.mjs +1 -2
- package/lib/node_modules/lodash-es/isEmpty.cjs +1 -1
- package/lib/node_modules/lodash-es/isEmpty.mjs +13 -14
- package/lib/node_modules/lodash-es/isFunction.mjs +1 -2
- package/lib/node_modules/lodash-es/isLength.mjs +1 -2
- package/lib/node_modules/lodash-es/isNil.mjs +1 -2
- package/lib/node_modules/lodash-es/isObject.mjs +1 -2
- package/lib/node_modules/lodash-es/isObjectLike.mjs +1 -2
- package/lib/node_modules/lodash-es/isSymbol.mjs +1 -2
- package/lib/node_modules/lodash-es/isTypedArray.mjs +1 -2
- package/lib/node_modules/lodash-es/keys.cjs +1 -1
- package/lib/node_modules/lodash-es/keys.mjs +6 -7
- package/lib/node_modules/lodash-es/last.mjs +1 -2
- package/lib/node_modules/lodash-es/lodash.cjs +1 -1
- package/lib/node_modules/lodash-es/lodash.mjs +19 -19
- package/lib/node_modules/lodash-es/memoize.mjs +1 -2
- package/lib/node_modules/lodash-es/nth.cjs +1 -1
- package/lib/node_modules/lodash-es/nth.mjs +5 -6
- package/lib/node_modules/lodash-es/property.cjs +1 -1
- package/lib/node_modules/lodash-es/property.mjs +7 -8
- package/lib/node_modules/lodash-es/reduce.cjs +1 -1
- package/lib/node_modules/lodash-es/reduce.mjs +8 -9
- package/lib/node_modules/lodash-es/stubArray.mjs +1 -2
- package/lib/node_modules/lodash-es/stubFalse.mjs +1 -2
- package/lib/node_modules/lodash-es/toFinite.mjs +1 -2
- package/lib/node_modules/lodash-es/toInteger.mjs +1 -2
- package/lib/node_modules/lodash-es/toNumber.cjs +1 -1
- package/lib/node_modules/lodash-es/toNumber.mjs +9 -10
- package/lib/node_modules/lodash-es/toString.mjs +1 -2
- package/lib/node_modules/lodash-es/upperFirst.mjs +1 -2
- package/lib/node_modules/luxon/build/es6/luxon.mjs +1 -2
- package/lib/node_modules/parsimmon/build/parsimmon.umd.min.cjs +1 -1
- package/lib/node_modules/parsimmon/build/parsimmon.umd.min.mjs +3 -4
- package/lib/node_modules/pluralize/pluralize.cjs +1 -1
- package/lib/node_modules/pluralize/pluralize.mjs +3 -4
- package/lib/packages/dbml-core/node_modules/lodash/lodash.cjs +2 -2
- package/lib/packages/dbml-core/node_modules/lodash/lodash.mjs +3 -4
- package/lib/packages/dbml-core/package.json.cjs +1 -1
- package/lib/packages/dbml-core/package.json.mjs +2 -3
- package/lib/parse/ANTLR/ASTGeneration/AST.mjs +1 -2
- package/lib/parse/ANTLR/ASTGeneration/ParserErrorListener.mjs +1 -2
- package/lib/parse/ANTLR/ASTGeneration/SyntaxError.mjs +1 -2
- package/lib/parse/ANTLR/ASTGeneration/constants.mjs +1 -2
- package/lib/parse/ANTLR/ASTGeneration/helpers.mjs +1 -2
- package/lib/parse/ANTLR/ASTGeneration/index.mjs +1 -2
- package/lib/parse/ANTLR/ASTGeneration/mssql/MssqlASTGen.mjs +1 -2
- package/lib/parse/ANTLR/ASTGeneration/mysql/MySQLASTGen.cjs +1 -1
- package/lib/parse/ANTLR/ASTGeneration/mysql/MySQLASTGen.mjs +2 -3
- package/lib/parse/ANTLR/ASTGeneration/oraclesql/OracleSQLASTGen.cjs +1 -1
- package/lib/parse/ANTLR/ASTGeneration/oraclesql/OracleSQLASTGen.mjs +57 -58
- package/lib/parse/ANTLR/ASTGeneration/postgres/PostgresASTGen.cjs +1 -1
- package/lib/parse/ANTLR/ASTGeneration/postgres/PostgresASTGen.mjs +2 -3
- package/lib/parse/ANTLR/ASTGeneration/snowflake/SnowflakeASTGen.mjs +1 -2
- package/lib/parse/ANTLR/parsers/mssql/TSqlLexer.mjs +1 -2
- package/lib/parse/ANTLR/parsers/mssql/TSqlParser.mjs +1 -2
- package/lib/parse/ANTLR/parsers/mssql/TSqlParserVisitor.mjs +1 -2
- package/lib/parse/ANTLR/parsers/mysql/MySqlLexer.mjs +1 -2
- package/lib/parse/ANTLR/parsers/mysql/MySqlLexerBase.mjs +1 -2
- package/lib/parse/ANTLR/parsers/mysql/MySqlParser.mjs +1 -2
- package/lib/parse/ANTLR/parsers/mysql/MySqlParserVisitor.mjs +1 -2
- package/lib/parse/ANTLR/parsers/oraclesql/OracleSqlLexer.mjs +1 -2
- package/lib/parse/ANTLR/parsers/oraclesql/OracleSqlLexerBase.mjs +1 -2
- package/lib/parse/ANTLR/parsers/oraclesql/OracleSqlParser.mjs +1 -2
- package/lib/parse/ANTLR/parsers/oraclesql/OracleSqlParserBase.mjs +1 -2
- package/lib/parse/ANTLR/parsers/oraclesql/OracleSqlParserVisitor.mjs +1 -2
- package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLLexer.mjs +1 -2
- package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLLexerBase.mjs +1 -2
- package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLParser.mjs +1 -2
- package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLParserBase.mjs +1 -2
- package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLParserVisitor.mjs +1 -2
- package/lib/parse/ANTLR/parsers/snowflake/SnowflakeLexer.mjs +1 -2
- package/lib/parse/ANTLR/parsers/snowflake/SnowflakeParser.mjs +1 -2
- package/lib/parse/ANTLR/parsers/snowflake/SnowflakeParserVisitor.mjs +1 -2
- package/lib/parse/Parser.cjs +1 -1
- package/lib/parse/Parser.mjs +37 -38
- package/lib/parse/databaseGenerator.mjs +1 -2
- package/lib/parse/deprecated/dbmlParser.mjs +1 -2
- package/lib/parse/deprecated/mssql/base_parsers.cjs +1 -1
- package/lib/parse/deprecated/mssql/base_parsers.mjs +27 -28
- package/lib/parse/deprecated/mssql/column_definition/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/column_definition/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/column_definition/index.mjs +19 -19
- package/lib/parse/deprecated/mssql/constraint_definition/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/constraint_definition/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/constraint_definition/index.mjs +10 -10
- package/lib/parse/deprecated/mssql/expression.cjs +1 -1
- package/lib/parse/deprecated/mssql/expression.mjs +17 -18
- package/lib/parse/deprecated/mssql/fk_definition/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/fk_definition/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/fk_definition/index.mjs +7 -8
- package/lib/parse/deprecated/mssql/index.mjs +1 -2
- package/lib/parse/deprecated/mssql/index_definition/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/index_definition/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/index_definition/index.mjs +13 -14
- package/lib/parse/deprecated/mssql/keyword_parsers.mjs +1 -2
- package/lib/parse/deprecated/mssql/keyword_utils.mjs +1 -2
- package/lib/parse/deprecated/mssql/statements/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/statements/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/statements/index.mjs +23 -24
- package/lib/parse/deprecated/mssql/statements/statement_types/alter_table/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/statements/statement_types/alter_table/add/actions.mjs +1 -1
- package/lib/parse/deprecated/mssql/statements/statement_types/alter_table/add/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/statements/statement_types/alter_table/add/index.mjs +13 -14
- package/lib/parse/deprecated/mssql/statements/statement_types/alter_table/index.mjs +1 -2
- package/lib/parse/deprecated/mssql/statements/statement_types/comments/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/statements/statement_types/comments/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/statements/statement_types/comments/index.mjs +5 -6
- package/lib/parse/deprecated/mssql/statements/statement_types/create_index/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/statements/statement_types/create_index/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/statements/statement_types/create_index/index.mjs +11 -12
- package/lib/parse/deprecated/mssql/statements/statement_types/create_table/actions.mjs +1 -2
- package/lib/parse/deprecated/mssql/statements/statement_types/create_table/index.cjs +1 -1
- package/lib/parse/deprecated/mssql/statements/statement_types/create_table/index.mjs +11 -12
- package/lib/parse/deprecated/mssql/statements/statement_types/index.mjs +1 -1
- package/lib/parse/deprecated/mssql/utils.cjs +1 -1
- package/lib/parse/deprecated/mssql/utils.mjs +10 -11
- package/lib/parse/deprecated/mssql/whitespaces.mjs +1 -2
- package/lib/parse/deprecated/mssqlParser.mjs +1 -2
- package/lib/parse/deprecated/mysqlParser.mjs +1 -2
- package/lib/parse/deprecated/postgresParser.mjs +1 -2
- package/lib/parse/deprecated/schemarbParser.mjs +1 -2
- package/lib/parse/error.mjs +1 -2
- package/lib/transform/index.cjs +1 -1
- package/lib/transform/index.mjs +10 -7
- package/lib/transform/relations.mjs +1 -2
- package/lib/utils/version.mjs +1 -2
- package/package.json +3 -3
- package/types/index.d.ts +8 -0
- package/types/model_structure/database.d.ts +26 -0
- package/types/model_structure/dbState.d.ts +3 -0
- package/types/model_structure/group.d.ts +41 -0
- package/types/model_structure/link.d.ts +37 -0
- package/types/model_structure/node.d.ts +41 -0
- package/types/transform/index.d.ts +7 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
require("../../../../_virtual/_rolldown/runtime.cjs");const e=require("../../../../node_modules/lodash-es/flatten.cjs"),t=require("../../../../node_modules/lodash-es/last.cjs"),n=require("../../../../node_modules/lodash-es/lodash.cjs"),r=require("../../../../node_modules/antlr4/dist/antlr4.web.cjs"),i=require("../../parsers/oraclesql/OracleSqlParserVisitor.cjs"),a=require("../../parsers/oraclesql/OracleSqlParser.cjs"),o=require("../AST.cjs"),s=require("../constants.cjs"),c=require("../helpers.cjs"),l=require("../../../error.cjs");let u=require("@dbml/parse");n.init_lodash();var d={FIELD:`table_field`,INDEX:`table_index`,FK:`table_fk`,UNIQUE:`table_unique`,PK:`table_pk`,DEFAULT:`table_default`,CHECK:`table_check`},f={NOT_NULL:`col_not_null`,NULLABLE:`col_nullable`,UNIQUE:`col_unique`,PK:`col_pk`,DEFAULT:`col_dbdefault`,INCREMENT:`col_increment`,INLINE_REF:`col_inline_ref`,NOTE:`col_note`,CHECK:`col_check`},p=(e,t,n)=>{let r=t??null;return e.find(e=>(e.schemaName??null)===r&&e.name===n)},m=(e,t)=>e.fields.find(e=>e.name===t),h=e=>({value:e.type===s.CONSTRAINT_TYPE.COLUMN?e.rawValue:e.value,type:e.type===s.CONSTRAINT_TYPE.COLUMN?s.DATA_TYPE.EXPRESSION:e.type}),g=e=>{let t;switch(e.type){case s.CONSTRAINT_TYPE.COLUMN:t=s.CONSTRAINT_TYPE.COLUMN;break;case s.DATA_TYPE.STRING:t=s.CONSTRAINT_TYPE.STRING;break;default:t=s.CONSTRAINT_TYPE.EXPRESSION}return{value:e.value.toString(),type:t}},_=(e,t)=>l.CompilerDiagnostics.create([{message:t,location:{start:{line:e.start.line,column:e.start.column+1},end:{line:e.stop.line,column:e.stop.column+c.getOriginalText(e).length+1}}}]),v=(e,t=`"`)=>e.startsWith(t)?e.slice(1,-1).replaceAll(`${t}${t}`,t):e,y=class extends i.default{constructor(){super(),this.data={schemas:[],tables:[],refs:[],deps:[],enums:[],tableGroups:[],aliases:[],project:{},records:[]}}visitCreate_view(e){let t=e.id_expression?e.id_expression():null;if(!t)return;let n=t.getText().replace(/"/g,``),r=e.schema_name?e.schema_name():null,i=r?r.getText().replace(/"/g,``):void 0,a=c.getOriginalText(e);this.data.tables.push({name:n,schemaName:i,fields:[],indexes:[],checks:[],note:null,headerColor:null,custom:{query:a,kind:`view`}}),b(this,e.select_only_statement(),n,i)}visitCreate_materialized_view(e){let t=(e.getText?e.getText():``).match(/MATERIALIZEDVIEW(?:IFNOTEXISTS)?(?:"([^"]+)"\.)?"?([^("\s]+)"?/i);if(!t)return;let n=t[1]||void 0,r=t[2],i=c.getOriginalText(e);this.data.tables.push({name:r,schemaName:n,fields:[],indexes:[],checks:[],note:null,headerColor:null,custom:{query:i,kind:`materialized_view`,materialized:!0}}),b(this,e.select_only_statement(),r,n)}visitSql_script(e){return e.unit_statement()?.forEach(e=>e.accept(this)),this.data}visitUnit_statement(e){e.create_table()?e.create_table().accept(this):e.comment_on_table()?e.comment_on_table().accept(this):e.comment_on_column()?e.comment_on_column().accept(this):e.alter_table()?e.alter_table().accept(this):e.create_index()?e.create_index().accept(this):e.data_manipulation_language_statements()&&e.data_manipulation_language_statements().accept(this)}visitData_manipulation_language_statements(e){e.insert_statement()&&e.insert_statement().accept(this)}visitCreate_table(t){let n=t.table_name().accept(this),r=t.schema_name()?t.schema_name().accept(this):void 0;if(t.relational_table()){let[i,a,s,c]=t.relational_table().accept(this).reduce((e,t)=>(t.type===d.FIELD?e[0].push(t.value):[d.INDEX,d.UNIQUE,d.PK].includes(t.type)?e[1].push(t.value):t.type===d.FK?e[2].push(t.value):t.type===d.CHECK&&e[3].push(...t.value.checks),e),[[],[],[],[]]);this.data.refs.push(...e.default(i.map(e=>e.inline_refs.map(t=>(t.endpoints[0].tableName=n,t.endpoints[0].schemaName=r,t.endpoints[0].fieldNames=[e.field.name],t))))),this.data.refs.push(...s.map(e=>(e.endpoints[0].tableName=n,e.endpoints[0].schemaName=r,e))),this.data.tables.push(new o.Table({name:n,schemaName:r,fields:i.map(e=>e.field),indexes:a,checks:c}))}}visitRelational_table(e){return e.relational_property()?e.relational_property().map(e=>e.accept(this)):[]}visitRelational_property(e){return e.column_definition()?e.column_definition().accept(this):e.out_of_line_constraint()?e.out_of_line_constraint().accept(this):e.out_of_line_ref_constraint()?e.out_of_line_ref_constraint().accept(this):null}visitColumn_definition(e){let n=t.default(e.column_name().accept(this)),r=e.datatype()?.accept(this)||e.type_name()?.accept(this);if(!r)throw _(e,`Importing a column definition without a type is not supported`);let i=(e.inline_constraint()||[]).map(e=>e.accept(this)).filter(Boolean);if(e.DEFAULT()){let t=e.expression().accept(this);i.push({type:f.DEFAULT,value:{dbdefault:h(t)}})}e.identity_clause()&&i.push({type:f.INCREMENT,value:{increment:!0}});let a={checks:[],inline_refs:[]};i.forEach(e=>{switch(e.type){case f.DEFAULT:a.dbdefault=e.value.dbdefault;break;case f.NOT_NULL:a.not_null=!0;break;case f.NULLABLE:a.not_null=!1;break;case f.PK:a.pk=!0;break;case f.UNIQUE:a.unique=!0;break;case f.CHECK:a.checks.push(...e.value.checks);break;case f.INCREMENT:a.increment=!0;break;case f.FK:a.inline_refs.push(...e.value.inline_refs)}});let s=new o.Field({name:n,type:r,...a});return{type:d.FIELD,value:{field:s,inline_refs:a.inline_refs||[]}}}visitInline_constraint(e){if(e.NULL_()&&e.NOT())return{type:f.NOT_NULL,value:{not_null:!0}};if(e.NULL_())return{type:f.NULLABLE,value:{not_null:!1}};if(e.UNIQUE())return{type:f.UNIQUE,value:{unique:!0}};if(e.PRIMARY())return{type:f.PK,value:{pk:!0}};let t=e.constraint_name()?.accept(this);if(e.references_clause()){let n=e.references_clause().accept(this);return n.name=t,{type:f.FK,value:{inline_refs:[n]}}}if(e.check_constraint()){let n=e.check_constraint();n.isColumn=!0;let r=n.accept(this);return r.value.checks[0].name=t,r}return null}visitOut_of_line_constraint(e){if(e.UNIQUE()){let n=e.column_name().map(e=>({value:t.default(e.accept(this)),type:s.CONSTRAINT_TYPE.COLUMN}));return{type:d.UNIQUE,value:new o.Index({columns:n,unique:!0,name:e.constraint_name()?.accept(this)})}}if(e.PRIMARY()){let n=e.column_name().map(e=>({value:t.default(e.accept(this)),type:s.CONSTRAINT_TYPE.COLUMN}));return{type:d.PK,value:new o.Index({columns:n,pk:!0,name:e.constraint_name()?.accept(this)})}}if(e.foreign_key_clause()){let t=e.foreign_key_clause().accept(this);return t.value.name=e.constraint_name()?.accept(this),t}if(e.condition()){let t=c.getOriginalText(e.condition());return{type:d.CHECK,value:{checks:[{name:e.constraint_name()?.accept(this),expression:t}]}}}return null}visitOut_of_line_ref_constraint(e){let t=e.constraint_name()?.accept(this),n=e.regular_id().map(e=>e.accept(this)),r=e.references_clause().accept(this);return r.endpoints[0].fieldNames=n,t&&(r.name=t),{type:d.FK,value:r}}visitForeign_key_clause(e){let n=e.paren_column_list().accept(this).map(e=>t.default(e)),r=e.references_clause().accept(this);return r.endpoints[0].fieldNames=n,e.on_delete_clause()&&(r.onDelete=e.on_delete_clause().accept(this)),{type:d.FK,value:r}}visitReferences_clause(e){if(!e.paren_column_list())throw _(e.tableview_name(),`Importing a foreign key with implicit referenced columns is not supported`);let n=e.tableview_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=e.paren_column_list().accept(this).map(e=>t.default(e));return new o.Ref({endpoints:[new o.Endpoint({tableName:null,schemaName:null,fieldNames:[],relation:u.CARDINALITY_MANY}),new o.Endpoint({tableName:r,schemaName:i,fieldNames:a,relation:u.CARDINALITY_MAYBE})]})}visitOn_delete_clause(e){return e.CASCADE()?`cascade`:e.SET()&&e.NULL_()?`set null`:null}visitCheck_constraint(e){let t=c.getOriginalText(e.condition());return{type:e.isColumn?f.CHECK:d.CHECK,value:{checks:[{expression:t}]}}}visitColumn_list(e){return e.column_name().map(e=>e.accept(this))}visitTableview_name(e){let t=e.id_expression()?[e.identifier().accept(this)]:[],n=e.id_expression()?e.id_expression().accept(this):e.identifier().accept(this);return[...t,n]}visitSchema_name(e){return e.identifier().accept(this)}visitTable_name(e){return e.identifier().accept(this)}visitColumn_name(e){return[e.identifier().accept(this)].concat(e.id_expression().map(e=>e.accept(this)))}visitIdentifier(e){return v(c.getOriginalText(e))}visitType_name(e){let n=e.id_expression().map(e=>e.accept(this));return{type_name:t.default(n),schemaName:n.length>1?n[n.length-2]:void 0}}visitDatatype(e){return{type_name:v(c.getOriginalText(e))}}visitComment_on_table(e){let n=e.tableview_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=p(this.data.tables,i,r);if(!a)throw _(e.tableview_name(),`Table "${r}" not found`);a.note={value:e.quoted_string().accept(this)}}visitComment_on_column(e){let n=e.column_name().accept(this),r=t.default(n);n.pop();let i=t.default(n);n.pop();let a=t.default(n),o=p(this.data.tables,a,i);if(!o)throw _(e.column_name(),`Table "${i}" not found`);let s=m(o,r);if(!s)throw _(e.column_name(),`Column "${r}" not found in table "${i}"`);s.note={value:e.quoted_string().accept(this)}}visitAlter_table(e){let n=e.tableview_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=p(this.data.tables,i,r);if(!a)throw _(e.tableview_name(),`Table "${r}" not found`);function o(e,t){switch(t.type){case d.FK:case f.FK:t.value.endpoints[0].tableName=r,t.value.endpoints[0].schemaName=i,this.data.refs.push(t.value);break;case d.CHECK:a.checks||=[],a.checks.push(...t.value.checks);break;case f.CHECK:e.checks||(a.checks=[]),e.checks.push(...t.value.checks);break;case f.PK:e.pk=!0,e.unique=void 0;break;case f.UNIQUE:e.unique=!0;break;case d.UNIQUE:case d.INDEX:case d.PK:a.indexes||=[],a.indexes.push(t.value);break;case f.DEFAULT:e.dbdefault=t.value.dbdefault;break;case f.NOT_NULL:e.not_null=!0;break;case f.NULLABLE:e.not_null=!1;break;case f.INCREMENT:e.increment=!0}}(e.constraint_clauses()||e.column_clauses())&&(e.constraint_clauses()?[{column:null,constraints:e.constraint_clauses().accept(this)}]:e.column_clauses().accept(this)).forEach(t=>{let n=t.column===null?null:m(a,t.column);if(t.column!==null&&!n)throw _(e.tableview_name(),`Column "${t.column}" not found on Table "${r}"`);t.constraints.forEach(e=>o.bind(this)(n,e))})}visitColumn_clauses(e){return e.add_modify_drop_column_clauses()?e.add_modify_drop_column_clauses().accept(this):[]}visitAdd_modify_drop_column_clauses(e){let t=[];return e.constraint_clauses()&&t.push({column:null,constraints:e.constraint_clauses().flatMap(e=>e.accept(this))}),e.modify_column_clauses()&&t.push(...e.modify_column_clauses().flatMap(e=>e.accept(this))),t}visitModify_column_clauses(e){return e.modify_col_properties().map(e=>e.accept(this))}visitModify_col_properties(e){let n=[],r=t.default(e.column_name().accept(this));if(e.DEFAULT()){let t=e.expression().accept(this);n.push({type:f.DEFAULT,value:{dbdefault:h(t)}})}else e.inline_constraint()&&n.push(...e.inline_constraint().map(e=>e.accept(this)));return{column:r,constraints:n}}visitConstraint_clauses(e){return e.out_of_line_constraint()?e.out_of_line_constraint().map(e=>e.accept(this)).filter(Boolean):e.out_of_line_ref_constraint()?[e.out_of_line_ref_constraint().accept(this)]:[]}visitCreate_index(e){if(!e.table_index_clause())return;let n=!!e.UNIQUE(),r=!!e.BITMAP(),i=e.index_name().accept(this),{names:a,columns:s}=e.table_index_clause().accept(this),c=t.default(a),l=a.length>1?a[a.length-2]:void 0,u=p(this.data.tables,l,c);if(!u)throw _(e.table_index_clause(),`Table ${c} not found`);u.indexes||=[],u.indexes.push(new o.Index({name:i,columns:s,unique:n,type:r?`bitmap`:void 0}))}visitTable_index_clause(e){return{names:e.tableview_name().accept(this),columns:e.index_expr().map(t=>({...t.accept(this),...e.children[e.children.indexOf(t)+1]?.symbol?.type===a.default.DESC&&{sortOrder:`desc`}}))}}visitConstraint_name(e){return v(c.getOriginalText(e))}visitIndex_name(e){return e.identifier().accept(this)}visitIndex_expr(e){if(e.expression()){let t=g(e.expression().accept(this));return{value:t.value,type:t.type}}return{value:t.default(e.column_name().accept(this)),type:s.CONSTRAINT_TYPE.COLUMN}}visitInsert_statement(e){e.single_table_insert()?e.single_table_insert().accept(this):e.multi_table_insert()&&e.multi_table_insert().accept(this)}visitSingle_table_insert(e){let t=e.insert_into_clause().accept(this),n=e.values_clause().accept(this);if(t&&n){let{tableName:e,schemaName:r,columns:i}=t,{values:a}=n,s=new o.TableRecord({schemaName:r,tableName:e,columns:i,values:a});this.data.records.push(s)}}visitMulti_table_insert(e){if(!e.multi_table_element())return;let t=e.multi_table_element().map(e=>e.accept(this)).filter(Boolean),n=new Map;t.forEach(e=>{let{tableName:t,schemaName:r,columns:i,values:a}=e,o=`${r||``}.${t}.${i.join(`,`)}`;n.has(o)?n.get(o).values.push(...a):n.set(o,{tableName:t,schemaName:r,columns:i,values:a})}),n.forEach(e=>{let t=new o.TableRecord({schemaName:e.schemaName,tableName:e.tableName,columns:e.columns,values:e.values});this.data.records.push(t)})}visitMulti_table_element(e){let t=e.insert_into_clause().accept(this),n=e.values_clause()?.accept(this);if(t&&n){let{tableName:e,schemaName:r,columns:i}=t,{values:a}=n;return{tableName:e,schemaName:r,columns:i,values:a}}return null}visitInsert_into_clause(e){let n=e.general_table_ref().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0;return{tableName:r,schemaName:i,columns:e.paren_column_list()?e.paren_column_list().accept(this).map(e=>t.default(e)):p(this.data.tables,i,r)?.fields.map(e=>e.name)}}visitGeneral_table_ref(e){return e.dml_table_expression_clause().accept(this)}visitDml_table_expression_clause(e){return e.tableview_name()?e.tableview_name().accept(this):[]}visitParen_column_list(e){return e.column_list().accept(this)}visitValues_clause(e){return{values:[e.expressions_().accept(this).map(e=>({value:e.type===s.CONSTRAINT_TYPE.COLUMN?e.rawValue:e.value,type:e.type===s.CONSTRAINT_TYPE.COLUMN?s.DATA_TYPE.EXPRESSION:e.type}))]}}visitExpressions_(e){return e.expression().map(e=>e.accept(this))}visitId_expression(e){return v(c.getOriginalText(e))}visitExpression(e){let t=c.getOriginalText(e);return e.CHAR_STRING()?{type:s.DATA_TYPE.STRING,value:v(t,`'`)}:e.TRUE()?{type:s.DATA_TYPE.BOOLEAN,value:!0}:e.FALSE()?{type:s.DATA_TYPE.BOOLEAN,value:!1}:e.NULL_()?{type:s.DATA_TYPE.BOOLEAN,value:null}:e.APPROXIMATE_NUM_LIT()||e.UNSIGNED_INTEGER()?{type:s.DATA_TYPE.NUMBER,value:parseFloat(t)}:e.column_name()?{type:s.CONSTRAINT_TYPE.COLUMN,rawValue:v(t),value:v(c.getOriginalText(e.column_name()))}:{type:s.CONSTRAINT_TYPE.EXPRESSION,value:t}}visitQuoted_string(e){return v(c.getOriginalText(e),`'`)}visitRegular_id(e){return v(c.getOriginalText(e),`"`)}};function b(e,n,i,o){if(!n)return;let s=new Set,c=(0,u.normalizeQualifiedName)(o??``,i),l=new r.ParseTreeListener;l.enterEveryRule=n=>{if(!(n instanceof a.default.Tableview_nameContext))return;let r=n.accept(e),l=Array.isArray(r)?t.default(r):r,d=Array.isArray(r)&&r.length>1?r[r.length-2]:void 0,f=(0,u.normalizeQualifiedName)(d??``,l);f!==c&&(s.has(f)||p(e.data.tables,d,l)&&(s.add(f),e.data.deps.push({edges:[{upstream:{schemaName:d,tableName:l,fieldNames:[]},downstream:{schemaName:o,tableName:i,fieldNames:[]}}],note:null,custom:{}})))},r.ParseTreeWalker.DEFAULT.walk(l,n)}exports.default=y;
|
|
1
|
+
require("../../../../_virtual/_rolldown/runtime.cjs");const e=require("../../../../node_modules/lodash-es/flatten.cjs"),t=require("../../../../node_modules/lodash-es/last.cjs"),n=require("../../../../node_modules/lodash-es/lodash.cjs"),r=require("../../../../node_modules/antlr4/dist/antlr4.web.cjs"),i=require("../../../error.cjs"),a=require("../../parsers/oraclesql/OracleSqlParserVisitor.cjs"),o=require("../../parsers/oraclesql/OracleSqlParser.cjs"),s=require("../AST.cjs"),c=require("../constants.cjs"),l=require("../helpers.cjs");let u=require("@dbml/parse");n.init_lodash();var d={FIELD:`table_field`,INDEX:`table_index`,FK:`table_fk`,UNIQUE:`table_unique`,PK:`table_pk`,DEFAULT:`table_default`,CHECK:`table_check`},f={NOT_NULL:`col_not_null`,NULLABLE:`col_nullable`,UNIQUE:`col_unique`,PK:`col_pk`,DEFAULT:`col_dbdefault`,INCREMENT:`col_increment`,INLINE_REF:`col_inline_ref`,NOTE:`col_note`,CHECK:`col_check`},p=(e,t,n)=>{let r=t??null;return e.find(e=>(e.schemaName??null)===r&&e.name===n)},m=(e,t)=>e.fields.find(e=>e.name===t),h=e=>({value:e.type===c.CONSTRAINT_TYPE.COLUMN?e.rawValue:e.value,type:e.type===c.CONSTRAINT_TYPE.COLUMN?c.DATA_TYPE.EXPRESSION:e.type}),g=e=>{let t;switch(e.type){case c.CONSTRAINT_TYPE.COLUMN:t=c.CONSTRAINT_TYPE.COLUMN;break;case c.DATA_TYPE.STRING:t=c.CONSTRAINT_TYPE.STRING;break;default:t=c.CONSTRAINT_TYPE.EXPRESSION}return{value:e.value.toString(),type:t}},_=(e,t)=>i.CompilerDiagnostics.create([{message:t,location:{start:{line:e.start.line,column:e.start.column+1},end:{line:e.stop.line,column:e.stop.column+l.getOriginalText(e).length+1}}}]),v=(e,t=`"`)=>e.startsWith(t)?e.slice(1,-1).replaceAll(`${t}${t}`,t):e,y=class extends a.default{constructor(){super(),this.data={schemas:[],tables:[],refs:[],deps:[],enums:[],tableGroups:[],aliases:[],project:{},records:[]}}visitCreate_view(e){let t=e.id_expression?e.id_expression():null;if(!t)return;let n=t.getText().replace(/"/g,``),r=e.schema_name?e.schema_name():null,i=r?r.getText().replace(/"/g,``):void 0,a=l.getOriginalText(e);this.data.tables.push({name:n,schemaName:i,fields:[],indexes:[],checks:[],note:null,headerColor:null,custom:{query:a,kind:`view`}}),b(this,e.select_only_statement(),n,i)}visitCreate_materialized_view(e){let t=(e.getText?e.getText():``).match(/MATERIALIZEDVIEW(?:IFNOTEXISTS)?(?:"([^"]+)"\.)?"?([^("\s]+)"?/i);if(!t)return;let n=t[1]||void 0,r=t[2],i=l.getOriginalText(e);this.data.tables.push({name:r,schemaName:n,fields:[],indexes:[],checks:[],note:null,headerColor:null,custom:{query:i,kind:`materialized_view`,materialized:!0}}),b(this,e.select_only_statement(),r,n)}visitSql_script(e){return e.unit_statement()?.forEach(e=>e.accept(this)),this.data}visitUnit_statement(e){e.create_table()?e.create_table().accept(this):e.comment_on_table()?e.comment_on_table().accept(this):e.comment_on_column()?e.comment_on_column().accept(this):e.alter_table()?e.alter_table().accept(this):e.create_index()?e.create_index().accept(this):e.data_manipulation_language_statements()&&e.data_manipulation_language_statements().accept(this)}visitData_manipulation_language_statements(e){e.insert_statement()&&e.insert_statement().accept(this)}visitCreate_table(t){let n=t.table_name().accept(this),r=t.schema_name()?t.schema_name().accept(this):void 0;if(t.relational_table()){let[i,a,o,c]=t.relational_table().accept(this).reduce((e,t)=>(t.type===d.FIELD?e[0].push(t.value):[d.INDEX,d.UNIQUE,d.PK].includes(t.type)?e[1].push(t.value):t.type===d.FK?e[2].push(t.value):t.type===d.CHECK&&e[3].push(...t.value.checks),e),[[],[],[],[]]);this.data.refs.push(...e.default(i.map(e=>e.inline_refs.map(t=>(t.endpoints[0].tableName=n,t.endpoints[0].schemaName=r,t.endpoints[0].fieldNames=[e.field.name],t))))),this.data.refs.push(...o.map(e=>(e.endpoints[0].tableName=n,e.endpoints[0].schemaName=r,e))),this.data.tables.push(new s.Table({name:n,schemaName:r,fields:i.map(e=>e.field),indexes:a,checks:c}))}}visitRelational_table(e){return e.relational_property()?e.relational_property().map(e=>e.accept(this)):[]}visitRelational_property(e){return e.column_definition()?e.column_definition().accept(this):e.out_of_line_constraint()?e.out_of_line_constraint().accept(this):e.out_of_line_ref_constraint()?e.out_of_line_ref_constraint().accept(this):null}visitColumn_definition(e){let n=t.default(e.column_name().accept(this)),r=e.datatype()?.accept(this)||e.type_name()?.accept(this);if(!r)throw _(e,`Importing a column definition without a type is not supported`);let i=(e.inline_constraint()||[]).map(e=>e.accept(this)).filter(Boolean);if(e.DEFAULT()){let t=e.expression().accept(this);i.push({type:f.DEFAULT,value:{dbdefault:h(t)}})}e.identity_clause()&&i.push({type:f.INCREMENT,value:{increment:!0}});let a={checks:[],inline_refs:[]};i.forEach(e=>{switch(e.type){case f.DEFAULT:a.dbdefault=e.value.dbdefault;break;case f.NOT_NULL:a.not_null=!0;break;case f.NULLABLE:a.not_null=!1;break;case f.PK:a.pk=!0;break;case f.UNIQUE:a.unique=!0;break;case f.CHECK:a.checks.push(...e.value.checks);break;case f.INCREMENT:a.increment=!0;break;case f.FK:a.inline_refs.push(...e.value.inline_refs)}});let o=new s.Field({name:n,type:r,...a});return{type:d.FIELD,value:{field:o,inline_refs:a.inline_refs||[]}}}visitInline_constraint(e){if(e.NULL_()&&e.NOT())return{type:f.NOT_NULL,value:{not_null:!0}};if(e.NULL_())return{type:f.NULLABLE,value:{not_null:!1}};if(e.UNIQUE())return{type:f.UNIQUE,value:{unique:!0}};if(e.PRIMARY())return{type:f.PK,value:{pk:!0}};let t=e.constraint_name()?.accept(this);if(e.references_clause()){let n=e.references_clause().accept(this);return n.name=t,{type:f.FK,value:{inline_refs:[n]}}}if(e.check_constraint()){let n=e.check_constraint();n.isColumn=!0;let r=n.accept(this);return r.value.checks[0].name=t,r}return null}visitOut_of_line_constraint(e){if(e.UNIQUE()){let n=e.column_name().map(e=>({value:t.default(e.accept(this)),type:c.CONSTRAINT_TYPE.COLUMN}));return{type:d.UNIQUE,value:new s.Index({columns:n,unique:!0,name:e.constraint_name()?.accept(this)})}}if(e.PRIMARY()){let n=e.column_name().map(e=>({value:t.default(e.accept(this)),type:c.CONSTRAINT_TYPE.COLUMN}));return{type:d.PK,value:new s.Index({columns:n,pk:!0,name:e.constraint_name()?.accept(this)})}}if(e.foreign_key_clause()){let t=e.foreign_key_clause().accept(this);return t.value.name=e.constraint_name()?.accept(this),t}if(e.condition()){let t=l.getOriginalText(e.condition());return{type:d.CHECK,value:{checks:[{name:e.constraint_name()?.accept(this),expression:t}]}}}return null}visitOut_of_line_ref_constraint(e){let t=e.constraint_name()?.accept(this),n=e.regular_id().map(e=>e.accept(this)),r=e.references_clause().accept(this);return r.endpoints[0].fieldNames=n,t&&(r.name=t),{type:d.FK,value:r}}visitForeign_key_clause(e){let n=e.paren_column_list().accept(this).map(e=>t.default(e)),r=e.references_clause().accept(this);return r.endpoints[0].fieldNames=n,e.on_delete_clause()&&(r.onDelete=e.on_delete_clause().accept(this)),{type:d.FK,value:r}}visitReferences_clause(e){if(!e.paren_column_list())throw _(e.tableview_name(),`Importing a foreign key with implicit referenced columns is not supported`);let n=e.tableview_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=e.paren_column_list().accept(this).map(e=>t.default(e));return new s.Ref({endpoints:[new s.Endpoint({tableName:null,schemaName:null,fieldNames:[],relation:u.CARDINALITY_MANY}),new s.Endpoint({tableName:r,schemaName:i,fieldNames:a,relation:u.CARDINALITY_MAYBE})]})}visitOn_delete_clause(e){return e.CASCADE()?`cascade`:e.SET()&&e.NULL_()?`set null`:null}visitCheck_constraint(e){let t=l.getOriginalText(e.condition());return{type:e.isColumn?f.CHECK:d.CHECK,value:{checks:[{expression:t}]}}}visitColumn_list(e){return e.column_name().map(e=>e.accept(this))}visitTableview_name(e){let t=e.id_expression()?[e.identifier().accept(this)]:[],n=e.id_expression()?e.id_expression().accept(this):e.identifier().accept(this);return[...t,n]}visitSchema_name(e){return e.identifier().accept(this)}visitTable_name(e){return e.identifier().accept(this)}visitColumn_name(e){return[e.identifier().accept(this)].concat(e.id_expression().map(e=>e.accept(this)))}visitIdentifier(e){return v(l.getOriginalText(e))}visitType_name(e){let n=e.id_expression().map(e=>e.accept(this));return{type_name:t.default(n),schemaName:n.length>1?n[n.length-2]:void 0}}visitDatatype(e){return{type_name:v(l.getOriginalText(e))}}visitComment_on_table(e){let n=e.tableview_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=p(this.data.tables,i,r);if(!a)throw _(e.tableview_name(),`Table "${r}" not found`);a.note={value:e.quoted_string().accept(this)}}visitComment_on_column(e){let n=e.column_name().accept(this),r=t.default(n);n.pop();let i=t.default(n);n.pop();let a=t.default(n),o=p(this.data.tables,a,i);if(!o)throw _(e.column_name(),`Table "${i}" not found`);let s=m(o,r);if(!s)throw _(e.column_name(),`Column "${r}" not found in table "${i}"`);s.note={value:e.quoted_string().accept(this)}}visitAlter_table(e){let n=e.tableview_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=p(this.data.tables,i,r);if(!a)throw _(e.tableview_name(),`Table "${r}" not found`);function o(e,t){switch(t.type){case d.FK:case f.FK:t.value.endpoints[0].tableName=r,t.value.endpoints[0].schemaName=i,this.data.refs.push(t.value);break;case d.CHECK:a.checks||=[],a.checks.push(...t.value.checks);break;case f.CHECK:e.checks||(a.checks=[]),e.checks.push(...t.value.checks);break;case f.PK:e.pk=!0,e.unique=void 0;break;case f.UNIQUE:e.unique=!0;break;case d.UNIQUE:case d.INDEX:case d.PK:a.indexes||=[],a.indexes.push(t.value);break;case f.DEFAULT:e.dbdefault=t.value.dbdefault;break;case f.NOT_NULL:e.not_null=!0;break;case f.NULLABLE:e.not_null=!1;break;case f.INCREMENT:e.increment=!0}}(e.constraint_clauses()||e.column_clauses())&&(e.constraint_clauses()?[{column:null,constraints:e.constraint_clauses().accept(this)}]:e.column_clauses().accept(this)).forEach(t=>{let n=t.column===null?null:m(a,t.column);if(t.column!==null&&!n)throw _(e.tableview_name(),`Column "${t.column}" not found on Table "${r}"`);t.constraints.forEach(e=>o.bind(this)(n,e))})}visitColumn_clauses(e){return e.add_modify_drop_column_clauses()?e.add_modify_drop_column_clauses().accept(this):[]}visitAdd_modify_drop_column_clauses(e){let t=[];return e.constraint_clauses()&&t.push({column:null,constraints:e.constraint_clauses().flatMap(e=>e.accept(this))}),e.modify_column_clauses()&&t.push(...e.modify_column_clauses().flatMap(e=>e.accept(this))),t}visitModify_column_clauses(e){return e.modify_col_properties().map(e=>e.accept(this))}visitModify_col_properties(e){let n=[],r=t.default(e.column_name().accept(this));if(e.DEFAULT()){let t=e.expression().accept(this);n.push({type:f.DEFAULT,value:{dbdefault:h(t)}})}else e.inline_constraint()&&n.push(...e.inline_constraint().map(e=>e.accept(this)));return{column:r,constraints:n}}visitConstraint_clauses(e){return e.out_of_line_constraint()?e.out_of_line_constraint().map(e=>e.accept(this)).filter(Boolean):e.out_of_line_ref_constraint()?[e.out_of_line_ref_constraint().accept(this)]:[]}visitCreate_index(e){if(!e.table_index_clause())return;let n=!!e.UNIQUE(),r=!!e.BITMAP(),i=e.index_name().accept(this),{names:a,columns:o}=e.table_index_clause().accept(this),c=t.default(a),l=a.length>1?a[a.length-2]:void 0,u=p(this.data.tables,l,c);if(!u)throw _(e.table_index_clause(),`Table ${c} not found`);u.indexes||=[],u.indexes.push(new s.Index({name:i,columns:o,unique:n,type:r?`bitmap`:void 0}))}visitTable_index_clause(e){return{names:e.tableview_name().accept(this),columns:e.index_expr().map(t=>({...t.accept(this),...e.children[e.children.indexOf(t)+1]?.symbol?.type===o.default.DESC&&{sortOrder:`desc`}}))}}visitConstraint_name(e){return v(l.getOriginalText(e))}visitIndex_name(e){return e.identifier().accept(this)}visitIndex_expr(e){if(e.expression()){let t=g(e.expression().accept(this));return{value:t.value,type:t.type}}return{value:t.default(e.column_name().accept(this)),type:c.CONSTRAINT_TYPE.COLUMN}}visitInsert_statement(e){e.single_table_insert()?e.single_table_insert().accept(this):e.multi_table_insert()&&e.multi_table_insert().accept(this)}visitSingle_table_insert(e){let t=e.insert_into_clause().accept(this),n=e.values_clause().accept(this);if(t&&n){let{tableName:e,schemaName:r,columns:i}=t,{values:a}=n,o=new s.TableRecord({schemaName:r,tableName:e,columns:i,values:a});this.data.records.push(o)}}visitMulti_table_insert(e){if(!e.multi_table_element())return;let t=e.multi_table_element().map(e=>e.accept(this)).filter(Boolean),n=new Map;t.forEach(e=>{let{tableName:t,schemaName:r,columns:i,values:a}=e,o=`${r||``}.${t}.${i.join(`,`)}`;n.has(o)?n.get(o).values.push(...a):n.set(o,{tableName:t,schemaName:r,columns:i,values:a})}),n.forEach(e=>{let t=new s.TableRecord({schemaName:e.schemaName,tableName:e.tableName,columns:e.columns,values:e.values});this.data.records.push(t)})}visitMulti_table_element(e){let t=e.insert_into_clause().accept(this),n=e.values_clause()?.accept(this);if(t&&n){let{tableName:e,schemaName:r,columns:i}=t,{values:a}=n;return{tableName:e,schemaName:r,columns:i,values:a}}return null}visitInsert_into_clause(e){let n=e.general_table_ref().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0;return{tableName:r,schemaName:i,columns:e.paren_column_list()?e.paren_column_list().accept(this).map(e=>t.default(e)):p(this.data.tables,i,r)?.fields.map(e=>e.name)}}visitGeneral_table_ref(e){return e.dml_table_expression_clause().accept(this)}visitDml_table_expression_clause(e){return e.tableview_name()?e.tableview_name().accept(this):[]}visitParen_column_list(e){return e.column_list().accept(this)}visitValues_clause(e){return{values:[e.expressions_().accept(this).map(e=>({value:e.type===c.CONSTRAINT_TYPE.COLUMN?e.rawValue:e.value,type:e.type===c.CONSTRAINT_TYPE.COLUMN?c.DATA_TYPE.EXPRESSION:e.type}))]}}visitExpressions_(e){return e.expression().map(e=>e.accept(this))}visitId_expression(e){return v(l.getOriginalText(e))}visitExpression(e){let t=l.getOriginalText(e);return e.CHAR_STRING()?{type:c.DATA_TYPE.STRING,value:v(t,`'`)}:e.TRUE()?{type:c.DATA_TYPE.BOOLEAN,value:!0}:e.FALSE()?{type:c.DATA_TYPE.BOOLEAN,value:!1}:e.NULL_()?{type:c.DATA_TYPE.BOOLEAN,value:null}:e.APPROXIMATE_NUM_LIT()||e.UNSIGNED_INTEGER()?{type:c.DATA_TYPE.NUMBER,value:parseFloat(t)}:e.column_name()?{type:c.CONSTRAINT_TYPE.COLUMN,rawValue:v(t),value:v(l.getOriginalText(e.column_name()))}:{type:c.CONSTRAINT_TYPE.EXPRESSION,value:t}}visitQuoted_string(e){return v(l.getOriginalText(e),`'`)}visitRegular_id(e){return v(l.getOriginalText(e),`"`)}};function b(e,n,i,a){if(!n)return;let s=new Set,c=(0,u.normalizeQualifiedName)(a??``,i),l=new r.ParseTreeListener;l.enterEveryRule=n=>{if(!(n instanceof o.default.Tableview_nameContext))return;let r=n.accept(e),l=Array.isArray(r)?t.default(r):r,d=Array.isArray(r)&&r.length>1?r[r.length-2]:void 0,f=(0,u.normalizeQualifiedName)(d??``,l);f!==c&&(s.has(f)||p(e.data.tables,d,l)&&(s.add(f),e.data.deps.push({edges:[{upstream:{schemaName:d,tableName:l,fieldNames:[]},downstream:{schemaName:a,tableName:i,fieldNames:[]}}],note:null,custom:{}})))},r.ParseTreeWalker.DEFAULT.walk(l,n)}exports.default=y;
|
|
@@ -2,14 +2,14 @@ import e from "../../../../node_modules/lodash-es/flatten.mjs";
|
|
|
2
2
|
import t from "../../../../node_modules/lodash-es/last.mjs";
|
|
3
3
|
import { init_lodash as n } from "../../../../node_modules/lodash-es/lodash.mjs";
|
|
4
4
|
import { ParseTreeListener as r, ParseTreeWalker as i } from "../../../../node_modules/antlr4/dist/antlr4.web.mjs";
|
|
5
|
-
import a from "
|
|
6
|
-
import o from "../../parsers/oraclesql/
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
5
|
+
import { CompilerDiagnostics as a } from "../../../error.mjs";
|
|
6
|
+
import o from "../../parsers/oraclesql/OracleSqlParserVisitor.mjs";
|
|
7
|
+
import s from "../../parsers/oraclesql/OracleSqlParser.mjs";
|
|
8
|
+
import { Endpoint as c, Field as l, Index as u, Ref as d, Table as f, TableRecord as p } from "../AST.mjs";
|
|
9
|
+
import { CONSTRAINT_TYPE as m, DATA_TYPE as h } from "../constants.mjs";
|
|
10
|
+
import { getOriginalText as g } from "../helpers.mjs";
|
|
11
11
|
import { CARDINALITY_MANY as _, CARDINALITY_MAYBE as v, normalizeQualifiedName as y } from "@dbml/parse";
|
|
12
|
-
|
|
12
|
+
// src/parse/ANTLR/ASTGeneration/oraclesql/OracleSQLASTGen.js
|
|
13
13
|
n();
|
|
14
14
|
var b = {
|
|
15
15
|
FIELD: "table_field",
|
|
@@ -33,24 +33,24 @@ var b = {
|
|
|
33
33
|
let r = t ?? null;
|
|
34
34
|
return e.find((e) => (e.schemaName ?? null) === r && e.name === n);
|
|
35
35
|
}, C = (e, t) => e.fields.find((e) => e.name === t), w = (e) => ({
|
|
36
|
-
value: e.type ===
|
|
37
|
-
type: e.type ===
|
|
36
|
+
value: e.type === m.COLUMN ? e.rawValue : e.value,
|
|
37
|
+
type: e.type === m.COLUMN ? h.EXPRESSION : e.type
|
|
38
38
|
}), T = (e) => {
|
|
39
39
|
let t;
|
|
40
40
|
switch (e.type) {
|
|
41
|
-
case
|
|
42
|
-
t =
|
|
41
|
+
case m.COLUMN:
|
|
42
|
+
t = m.COLUMN;
|
|
43
43
|
break;
|
|
44
|
-
case
|
|
45
|
-
t =
|
|
44
|
+
case h.STRING:
|
|
45
|
+
t = m.STRING;
|
|
46
46
|
break;
|
|
47
|
-
default: t =
|
|
47
|
+
default: t = m.EXPRESSION;
|
|
48
48
|
}
|
|
49
49
|
return {
|
|
50
50
|
value: e.value.toString(),
|
|
51
51
|
type: t
|
|
52
52
|
};
|
|
53
|
-
}, E = (e, t) =>
|
|
53
|
+
}, E = (e, t) => a.create([{
|
|
54
54
|
message: t,
|
|
55
55
|
location: {
|
|
56
56
|
start: {
|
|
@@ -59,10 +59,10 @@ var b = {
|
|
|
59
59
|
},
|
|
60
60
|
end: {
|
|
61
61
|
line: e.stop.line,
|
|
62
|
-
column: e.stop.column +
|
|
62
|
+
column: e.stop.column + g(e).length + 1
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
-
}]), D = (e, t = "\"") => e.startsWith(t) ? e.slice(1, -1).replaceAll(`${t}${t}`, t) : e, O = class extends
|
|
65
|
+
}]), D = (e, t = "\"") => e.startsWith(t) ? e.slice(1, -1).replaceAll(`${t}${t}`, t) : e, O = class extends o {
|
|
66
66
|
constructor() {
|
|
67
67
|
super(), this.data = {
|
|
68
68
|
schemas: [],
|
|
@@ -79,7 +79,7 @@ var b = {
|
|
|
79
79
|
visitCreate_view(e) {
|
|
80
80
|
let t = e.id_expression ? e.id_expression() : null;
|
|
81
81
|
if (!t) return;
|
|
82
|
-
let n = t.getText().replace(/"/g, ""), r = e.schema_name ? e.schema_name() : null, i = r ? r.getText().replace(/"/g, "") : void 0, a =
|
|
82
|
+
let n = t.getText().replace(/"/g, ""), r = e.schema_name ? e.schema_name() : null, i = r ? r.getText().replace(/"/g, "") : void 0, a = g(e);
|
|
83
83
|
this.data.tables.push({
|
|
84
84
|
name: n,
|
|
85
85
|
schemaName: i,
|
|
@@ -97,7 +97,7 @@ var b = {
|
|
|
97
97
|
visitCreate_materialized_view(e) {
|
|
98
98
|
let t = (e.getText ? e.getText() : "").match(/MATERIALIZEDVIEW(?:IFNOTEXISTS)?(?:"([^"]+)"\.)?"?([^("\s]+)"?/i);
|
|
99
99
|
if (!t) return;
|
|
100
|
-
let n = t[1] || void 0, r = t[2], i =
|
|
100
|
+
let n = t[1] || void 0, r = t[2], i = g(e);
|
|
101
101
|
this.data.tables.push({
|
|
102
102
|
name: r,
|
|
103
103
|
schemaName: n,
|
|
@@ -135,7 +135,7 @@ var b = {
|
|
|
135
135
|
[],
|
|
136
136
|
[]
|
|
137
137
|
]);
|
|
138
|
-
this.data.refs.push(...e(i.map((e) => e.inline_refs.map((t) => (t.endpoints[0].tableName = n, t.endpoints[0].schemaName = r, t.endpoints[0].fieldNames = [e.field.name], t))))), this.data.refs.push(...o.map((e) => (e.endpoints[0].tableName = n, e.endpoints[0].schemaName = r, e))), this.data.tables.push(new
|
|
138
|
+
this.data.refs.push(...e(i.map((e) => e.inline_refs.map((t) => (t.endpoints[0].tableName = n, t.endpoints[0].schemaName = r, t.endpoints[0].fieldNames = [e.field.name], t))))), this.data.refs.push(...o.map((e) => (e.endpoints[0].tableName = n, e.endpoints[0].schemaName = r, e))), this.data.tables.push(new f({
|
|
139
139
|
name: n,
|
|
140
140
|
schemaName: r,
|
|
141
141
|
fields: i.map((e) => e.field),
|
|
@@ -195,7 +195,7 @@ var b = {
|
|
|
195
195
|
case x.FK: a.inline_refs.push(...e.value.inline_refs);
|
|
196
196
|
}
|
|
197
197
|
});
|
|
198
|
-
let o = new
|
|
198
|
+
let o = new l({
|
|
199
199
|
name: n,
|
|
200
200
|
type: r,
|
|
201
201
|
...a
|
|
@@ -245,11 +245,11 @@ var b = {
|
|
|
245
245
|
if (e.UNIQUE()) {
|
|
246
246
|
let n = e.column_name().map((e) => ({
|
|
247
247
|
value: t(e.accept(this)),
|
|
248
|
-
type:
|
|
248
|
+
type: m.COLUMN
|
|
249
249
|
}));
|
|
250
250
|
return {
|
|
251
251
|
type: b.UNIQUE,
|
|
252
|
-
value: new
|
|
252
|
+
value: new u({
|
|
253
253
|
columns: n,
|
|
254
254
|
unique: !0,
|
|
255
255
|
name: e.constraint_name()?.accept(this)
|
|
@@ -259,11 +259,11 @@ var b = {
|
|
|
259
259
|
if (e.PRIMARY()) {
|
|
260
260
|
let n = e.column_name().map((e) => ({
|
|
261
261
|
value: t(e.accept(this)),
|
|
262
|
-
type:
|
|
262
|
+
type: m.COLUMN
|
|
263
263
|
}));
|
|
264
264
|
return {
|
|
265
265
|
type: b.PK,
|
|
266
|
-
value: new
|
|
266
|
+
value: new u({
|
|
267
267
|
columns: n,
|
|
268
268
|
pk: !0,
|
|
269
269
|
name: e.constraint_name()?.accept(this)
|
|
@@ -275,7 +275,7 @@ var b = {
|
|
|
275
275
|
return t.value.name = e.constraint_name()?.accept(this), t;
|
|
276
276
|
}
|
|
277
277
|
if (e.condition()) {
|
|
278
|
-
let t =
|
|
278
|
+
let t = g(e.condition());
|
|
279
279
|
return {
|
|
280
280
|
type: b.CHECK,
|
|
281
281
|
value: { checks: [{
|
|
@@ -303,12 +303,12 @@ var b = {
|
|
|
303
303
|
visitReferences_clause(e) {
|
|
304
304
|
if (!e.paren_column_list()) throw E(e.tableview_name(), "Importing a foreign key with implicit referenced columns is not supported");
|
|
305
305
|
let n = e.tableview_name().accept(this), r = t(n), i = n.length > 1 ? n[n.length - 2] : void 0, a = e.paren_column_list().accept(this).map((e) => t(e));
|
|
306
|
-
return new
|
|
306
|
+
return new d({ endpoints: [new c({
|
|
307
307
|
tableName: null,
|
|
308
308
|
schemaName: null,
|
|
309
309
|
fieldNames: [],
|
|
310
310
|
relation: _
|
|
311
|
-
}), new
|
|
311
|
+
}), new c({
|
|
312
312
|
tableName: r,
|
|
313
313
|
schemaName: i,
|
|
314
314
|
fieldNames: a,
|
|
@@ -319,7 +319,7 @@ var b = {
|
|
|
319
319
|
return e.CASCADE() ? "cascade" : e.SET() && e.NULL_() ? "set null" : null;
|
|
320
320
|
}
|
|
321
321
|
visitCheck_constraint(e) {
|
|
322
|
-
let t =
|
|
322
|
+
let t = g(e.condition());
|
|
323
323
|
return {
|
|
324
324
|
type: e.isColumn ? x.CHECK : b.CHECK,
|
|
325
325
|
value: { checks: [{ expression: t }] }
|
|
@@ -342,7 +342,7 @@ var b = {
|
|
|
342
342
|
return [e.identifier().accept(this)].concat(e.id_expression().map((e) => e.accept(this)));
|
|
343
343
|
}
|
|
344
344
|
visitIdentifier(e) {
|
|
345
|
-
return D(
|
|
345
|
+
return D(g(e));
|
|
346
346
|
}
|
|
347
347
|
visitType_name(e) {
|
|
348
348
|
let n = e.id_expression().map((e) => e.accept(this));
|
|
@@ -352,7 +352,7 @@ var b = {
|
|
|
352
352
|
};
|
|
353
353
|
}
|
|
354
354
|
visitDatatype(e) {
|
|
355
|
-
return { type_name: D(
|
|
355
|
+
return { type_name: D(g(e)) };
|
|
356
356
|
}
|
|
357
357
|
visitComment_on_table(e) {
|
|
358
358
|
let n = e.tableview_name().accept(this), r = t(n), i = n.length > 1 ? n[n.length - 2] : void 0, a = S(this.data.tables, i, r);
|
|
@@ -449,9 +449,9 @@ var b = {
|
|
|
449
449
|
}
|
|
450
450
|
visitCreate_index(e) {
|
|
451
451
|
if (!e.table_index_clause()) return;
|
|
452
|
-
let n = !!e.UNIQUE(), r = !!e.BITMAP(), i = e.index_name().accept(this), { names: a, columns: o } = e.table_index_clause().accept(this), s = t(a), c = a.length > 1 ? a[a.length - 2] : void 0,
|
|
453
|
-
if (!
|
|
454
|
-
|
|
452
|
+
let n = !!e.UNIQUE(), r = !!e.BITMAP(), i = e.index_name().accept(this), { names: a, columns: o } = e.table_index_clause().accept(this), s = t(a), c = a.length > 1 ? a[a.length - 2] : void 0, l = S(this.data.tables, c, s);
|
|
453
|
+
if (!l) throw E(e.table_index_clause(), `Table ${s} not found`);
|
|
454
|
+
l.indexes ||= [], l.indexes.push(new u({
|
|
455
455
|
name: i,
|
|
456
456
|
columns: o,
|
|
457
457
|
unique: n,
|
|
@@ -463,12 +463,12 @@ var b = {
|
|
|
463
463
|
names: e.tableview_name().accept(this),
|
|
464
464
|
columns: e.index_expr().map((t) => ({
|
|
465
465
|
...t.accept(this),
|
|
466
|
-
...e.children[e.children.indexOf(t) + 1]?.symbol?.type ===
|
|
466
|
+
...e.children[e.children.indexOf(t) + 1]?.symbol?.type === s.DESC && { sortOrder: "desc" }
|
|
467
467
|
}))
|
|
468
468
|
};
|
|
469
469
|
}
|
|
470
470
|
visitConstraint_name(e) {
|
|
471
|
-
return D(
|
|
471
|
+
return D(g(e));
|
|
472
472
|
}
|
|
473
473
|
visitIndex_name(e) {
|
|
474
474
|
return e.identifier().accept(this);
|
|
@@ -483,7 +483,7 @@ var b = {
|
|
|
483
483
|
}
|
|
484
484
|
return {
|
|
485
485
|
value: t(e.column_name().accept(this)),
|
|
486
|
-
type:
|
|
486
|
+
type: m.COLUMN
|
|
487
487
|
};
|
|
488
488
|
}
|
|
489
489
|
visitInsert_statement(e) {
|
|
@@ -492,7 +492,7 @@ var b = {
|
|
|
492
492
|
visitSingle_table_insert(e) {
|
|
493
493
|
let t = e.insert_into_clause().accept(this), n = e.values_clause().accept(this);
|
|
494
494
|
if (t && n) {
|
|
495
|
-
let { tableName: e, schemaName: r, columns: i } = t, { values: a } = n, o = new
|
|
495
|
+
let { tableName: e, schemaName: r, columns: i } = t, { values: a } = n, o = new p({
|
|
496
496
|
schemaName: r,
|
|
497
497
|
tableName: e,
|
|
498
498
|
columns: i,
|
|
@@ -513,7 +513,7 @@ var b = {
|
|
|
513
513
|
values: a
|
|
514
514
|
});
|
|
515
515
|
}), n.forEach((e) => {
|
|
516
|
-
let t = new
|
|
516
|
+
let t = new p({
|
|
517
517
|
schemaName: e.schemaName,
|
|
518
518
|
tableName: e.tableName,
|
|
519
519
|
columns: e.columns,
|
|
@@ -554,54 +554,54 @@ var b = {
|
|
|
554
554
|
}
|
|
555
555
|
visitValues_clause(e) {
|
|
556
556
|
return { values: [e.expressions_().accept(this).map((e) => ({
|
|
557
|
-
value: e.type ===
|
|
558
|
-
type: e.type ===
|
|
557
|
+
value: e.type === m.COLUMN ? e.rawValue : e.value,
|
|
558
|
+
type: e.type === m.COLUMN ? h.EXPRESSION : e.type
|
|
559
559
|
}))] };
|
|
560
560
|
}
|
|
561
561
|
visitExpressions_(e) {
|
|
562
562
|
return e.expression().map((e) => e.accept(this));
|
|
563
563
|
}
|
|
564
564
|
visitId_expression(e) {
|
|
565
|
-
return D(
|
|
565
|
+
return D(g(e));
|
|
566
566
|
}
|
|
567
567
|
visitExpression(e) {
|
|
568
|
-
let t =
|
|
568
|
+
let t = g(e);
|
|
569
569
|
return e.CHAR_STRING() ? {
|
|
570
|
-
type:
|
|
570
|
+
type: h.STRING,
|
|
571
571
|
value: D(t, "'")
|
|
572
572
|
} : e.TRUE() ? {
|
|
573
|
-
type:
|
|
573
|
+
type: h.BOOLEAN,
|
|
574
574
|
value: !0
|
|
575
575
|
} : e.FALSE() ? {
|
|
576
|
-
type:
|
|
576
|
+
type: h.BOOLEAN,
|
|
577
577
|
value: !1
|
|
578
578
|
} : e.NULL_() ? {
|
|
579
|
-
type:
|
|
579
|
+
type: h.BOOLEAN,
|
|
580
580
|
value: null
|
|
581
581
|
} : e.APPROXIMATE_NUM_LIT() || e.UNSIGNED_INTEGER() ? {
|
|
582
|
-
type:
|
|
582
|
+
type: h.NUMBER,
|
|
583
583
|
value: parseFloat(t)
|
|
584
584
|
} : e.column_name() ? {
|
|
585
|
-
type:
|
|
585
|
+
type: m.COLUMN,
|
|
586
586
|
rawValue: D(t),
|
|
587
|
-
value: D(
|
|
587
|
+
value: D(g(e.column_name()))
|
|
588
588
|
} : {
|
|
589
|
-
type:
|
|
589
|
+
type: m.EXPRESSION,
|
|
590
590
|
value: t
|
|
591
591
|
};
|
|
592
592
|
}
|
|
593
593
|
visitQuoted_string(e) {
|
|
594
|
-
return D(
|
|
594
|
+
return D(g(e), "'");
|
|
595
595
|
}
|
|
596
596
|
visitRegular_id(e) {
|
|
597
|
-
return D(
|
|
597
|
+
return D(g(e), "\"");
|
|
598
598
|
}
|
|
599
599
|
};
|
|
600
|
-
function k(e, n, a,
|
|
600
|
+
function k(e, n, a, o) {
|
|
601
601
|
if (!n) return;
|
|
602
|
-
let c = /* @__PURE__ */ new Set(), l = y(
|
|
602
|
+
let c = /* @__PURE__ */ new Set(), l = y(o ?? "", a), u = new r();
|
|
603
603
|
u.enterEveryRule = (n) => {
|
|
604
|
-
if (!(n instanceof
|
|
604
|
+
if (!(n instanceof s.Tableview_nameContext)) return;
|
|
605
605
|
let r = n.accept(e), i = Array.isArray(r) ? t(r) : r, u = Array.isArray(r) && r.length > 1 ? r[r.length - 2] : void 0, d = y(u ?? "", i);
|
|
606
606
|
d !== l && (c.has(d) || S(e.data.tables, u, i) && (c.add(d), e.data.deps.push({
|
|
607
607
|
edges: [{
|
|
@@ -611,7 +611,7 @@ function k(e, n, a, s) {
|
|
|
611
611
|
fieldNames: []
|
|
612
612
|
},
|
|
613
613
|
downstream: {
|
|
614
|
-
schemaName:
|
|
614
|
+
schemaName: o,
|
|
615
615
|
tableName: a,
|
|
616
616
|
fieldNames: []
|
|
617
617
|
}
|
|
@@ -621,5 +621,4 @@ function k(e, n, a, s) {
|
|
|
621
621
|
})));
|
|
622
622
|
}, i.DEFAULT.walk(u, n);
|
|
623
623
|
}
|
|
624
|
-
//#endregion
|
|
625
624
|
export { O as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
require("../../../../_virtual/_rolldown/runtime.cjs");const e=require("../../../../node_modules/lodash-es/flatten.cjs"),t=require("../../../../node_modules/lodash-es/last.cjs"),n=require("../../../../node_modules/lodash-es/flattenDepth.cjs"),r=require("../../../../node_modules/lodash-es/lodash.cjs");require("../../../../model_structure/config.cjs");const i=require("../../../../node_modules/antlr4/dist/antlr4.web.cjs"),a=require("../../parsers/postgresql/PostgreSQLParserVisitor.cjs"),o=require("../../parsers/postgresql/PostgreSQLParser.cjs"),s=require("../AST.cjs"),c=require("../constants.cjs"),l=require("../helpers.cjs");let u=require("@dbml/parse");r.init_lodash();var d={REF:`ref`},f={TABLE:`table`},p=(e,t,n)=>{let r=t??`public`;return e.find(e=>(e.schemaName??`public`)===r&&e.name===n)},m=e=>e&&e.replaceAll(`''`,`'`),h=class extends a.default{constructor(){super(),this.data={schemas:[],tables:[],refs:[],deps:[],enums:[],tableGroups:[],aliases:[],project:{},records:[]}}visitViewstmt(e){let n=e.qualified_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=l.getOriginalText(e);this.data.tables.push({name:r,schemaName:i,fields:[],indexes:[],checks:[],note:null,headerColor:null,custom:{query:a,kind:`view`}}),g(this,e.selectstmt(),r,i)}visitCreatematviewstmt(e){let n=e.create_mv_target();if(!n)return;let r=n.qualified_name().accept(this),i=t.default(r),a=r.length>1?r[r.length-2]:void 0,o=l.getOriginalText(e);this.data.tables.push({name:i,schemaName:a,fields:[],indexes:[],checks:[],note:null,headerColor:null,custom:{query:o,kind:`materialized_view`,materialized:!0}}),g(this,e.selectstmt(),i,a)}visitRoot(e){return e.stmtblock().accept(this),this.data}visitStmtblock(e){e.stmtmulti().accept(this)}visitStmtmulti(e){e.stmt().map(e=>e.accept(this))}visitStmt(e){if(e.createstmt()){let t=e.createstmt().accept(this);t&&this.data.tables.push(t)}else if(e.indexstmt()){let t=e.indexstmt().accept(this),{tableName:n,schemaName:r}=t.pathName,i=p(this.data.tables,r,n);i&&i.indexes.push(t.index)}else e.altertablestmt()?e.altertablestmt().accept(this):e.commentstmt()?e.commentstmt().accept(this):e.definestmt()?e.definestmt().accept(this):e.insertstmt()&&e.insertstmt().accept(this)}visitCreatestmt(n){let r=n.qualified_name(0).accept(this),i=t.default(r),a=r.length>1?r[r.length-2]:void 0;if(!n.opttableelementlist())return;let[o,l,u,d]=n.opttableelementlist().accept(this).filter(e=>e).reduce((e,t)=>(t.kind===c.TABLE_CONSTRAINT_KIND.FIELD?e[0].push(t.value):t.kind===c.TABLE_CONSTRAINT_KIND.INDEX?e[1].push(t.value):t.kind===c.TABLE_CONSTRAINT_KIND.FK?e[2].push(t.value):t.kind===c.TABLE_CONSTRAINT_KIND.UNIQUE?e[1].push(t.value):t.kind===c.TABLE_CONSTRAINT_KIND.CHECK&&e[3].push(t.value),e),[[],[],[],[]]);return this.data.refs.push(...e.default(o.map(e=>e.inline_refs.map(t=>(t.endpoints[0].tableName=i,t.endpoints[0].schemaName=a,t.endpoints[0].fieldNames=[e.field.name],t))))),this.data.refs.push(...u.map(e=>(e.endpoints[0].tableName=i,e.endpoints[0].schemaName=a,e))),new s.Table({name:i,schemaName:a,fields:o.map(e=>e.field),indexes:l,checks:d})}visitOpttableelementlist(e){return e.tableelementlist()?e.tableelementlist().accept(this):[]}visitTableelementlist(e){return e.tableelement().map(e=>e.accept(this))}visitTableelement(e){if(e.columnDef())return e.columnDef().accept(this);if(e.tableconstraint())return e.tableconstraint().accept(this)}visitTableconstraint(e){let t=e.name()?.accept(this),n=e.constraintelem().accept(this);if(n)return n.value.name=t,n}visitConstraintelem(e){if(e.PRIMARY())return{kind:c.TABLE_CONSTRAINT_KIND.INDEX,value:new s.Index({pk:!0,columns:e.columnlist().accept(this)})};if(e.FOREIGN()){let n=e.qualified_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=e.columnlist().accept(this).map(e=>e.value),o=e.column_list_()?.accept(this)?.map(e=>e.value),s=e.key_actions(),l=s?s.accept(this):{onDelete:null,onUpdate:null};return{kind:c.TABLE_CONSTRAINT_KIND.FK,value:{endpoints:[{tableName:null,schemaName:null,fieldNames:a,relation:u.CARDINALITY_MANY},{tableName:r,schemaName:i,fieldNames:o,relation:u.CARDINALITY_MAYBE}],onDelete:l.onDelete,onUpdate:l.onUpdate}}}if(e.UNIQUE())return{kind:c.TABLE_CONSTRAINT_KIND.UNIQUE,value:new s.Index({unique:!0,columns:e.columnlist().accept(this)})};if(e.CHECK()){let t=l.getOriginalText(e.a_expr());return{kind:c.TABLE_CONSTRAINT_KIND.CHECK,value:{expression:t}}}}visitColumn_list_(e){return e.columnlist().accept(this)}visitColumnlist(e){return e.columnElem().map(e=>e.accept(this))}visitColumnElem(e){return{value:e.colid().accept(this),type:c.CONSTRAINT_TYPE.COLUMN}}visitColumnDef(e){let t=e.colid().accept(this),n=e.typename().accept(this),r=e.colquallist().accept(this),i=new Set([`serial`,`smallserial`,`bigserial`]),a=n.type_name.toLowerCase();return i.has(a)&&(r.increment=!0),{kind:c.TABLE_CONSTRAINT_KIND.FIELD,value:{field:new s.Field({name:t,type:n,...r}),inline_refs:r.inline_refs}}}visitColquallist(e){let t={inline_refs:[],checks:[]};return e.colconstraint().forEach(e=>{let n=e.accept(this);n&&(n.kind===c.COLUMN_CONSTRAINT_KIND.INLINE_REF?t.inline_refs.push(n.value):n.kind===c.COLUMN_CONSTRAINT_KIND.CHECK?t.checks.push(n.value):t[n.kind]=n.value)}),t}visitColconstraint(e){if(e.colconstraintelem())return e.colconstraintelem().accept(this)}visitColconstraintelem(e){if(e.NULL_P()){let t=!1;return e.NOT()&&(t=!0),{kind:c.COLUMN_CONSTRAINT_KIND.NOT_NULL,value:t}}if(e.UNIQUE())return{kind:c.COLUMN_CONSTRAINT_KIND.UNIQUE,value:!0};if(e.PRIMARY())return{kind:c.COLUMN_CONSTRAINT_KIND.PK,value:!0};if(e.DEFAULT())return{kind:c.COLUMN_CONSTRAINT_KIND.DEFAULT,value:e.b_expr().accept(this)};if(e.IDENTITY_P())return{kind:c.COLUMN_CONSTRAINT_KIND.INCREMENT,value:!0};if(e.CHECK()){let t=l.getOriginalText(e.a_expr());return{kind:c.COLUMN_CONSTRAINT_KIND.CHECK,value:{expression:t}}}if(e.REFERENCES()){let n=e.qualified_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=e.column_list_()?.accept(this)?.map(e=>e.value),o=e.key_actions(),s=o?o.accept(this):{onDelete:null,onUpdate:null};return{kind:c.COLUMN_CONSTRAINT_KIND.INLINE_REF,value:{endpoints:[{tableName:null,schemaName:null,fieldNames:null,relation:u.CARDINALITY_MANY},{tableName:r,schemaName:i,fieldNames:a,relation:u.CARDINALITY_MAYBE}],onDelete:s.onDelete,onUpdate:s.onUpdate}}}}visitB_expr(e){return e.c_expr()?e.c_expr().accept(this):{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitC_expr_expr(e){return e.aexprconst()?e.aexprconst().accept(this):e.a_expr()?{value:e.a_expr().getText(),type:c.DATA_TYPE.EXPRESSION}:{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitC_expr_exists(e){return{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitC_expr_case(e){return{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitAexprconst(e){return e.sconst()&&e.getChildCount()===1?{value:e.sconst().accept(this),type:c.DATA_TYPE.STRING}:e.TRUE_P()||e.FALSE_P()||e.NULL_P()?{value:e.getText().toLowerCase(),type:c.DATA_TYPE.BOOLEAN}:e.iconst()?{value:e.iconst().accept(this),type:c.DATA_TYPE.NUMBER}:e.fconst()?{value:e.getText(),type:c.DATA_TYPE.NUMBER}:{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitKey_actions(e){let[t,n]=[null,null];return e.key_update()&&(n=e.key_update().accept(this)),e.key_delete()&&(t=e.key_delete().accept(this)),{onDelete:t,onUpdate:n}}visitKey_update(e){return e.key_action().accept(this)}visitKey_delete(e){return e.key_action().accept(this)}visitKey_action(e){let t=[...Array(e.getChildCount()).keys()].reduce((t,n)=>(t+=`${e.getChild(n).getText()} `,t),``);return t.slice(0,t.length-1)}visitQualified_name(e){let t=[e.colid().accept(this)];return e.indirection()&&t.push(...e.indirection().accept(this)),t}visitColid(e){return e.getChild(0).accept(this)}visitUnreserved_keyword(e){return e.getText()}visitIdentifier(e){if(e.Identifier())return e.Identifier().getText();if(e.QuotedIdentifier()){let t=e.QuotedIdentifier().getText();return t.slice(1,t.length-1)}if(e.UnicodeQuotedIdentifier()){let t=e.UnicodeQuotedIdentifier().getText();return t.slice(1,t.length-1)}return e.getChild(0).getText()}visitCol_name_keyword(e){return e.getChild(0).getText()}visitIndirection(e){return e.indirection_el().map(e=>e.accept(this))}visitIndirection_el(e){if(e.attr_name())return e.attr_name().accept(this)}visitAttr_name(e){return e.colLabel().accept(this)}visitColLabel(e){return e.EXIT()?e.EXIT().getText():e.getChild(0).accept(this)}visitReserved_keyword(e){return e.getText()}visitTypename(e){if(e.simpletypename()){let t=``,n=e.simpletypename().accept(this);return e.opt_array_bounds()&&(t=e.opt_array_bounds().accept(this)),e.ARRAY()&&(t=`[${e.iconst()?e.iconst().accept(this):``}]`),{type_name:n.type+t,schemaName:n.schemaName}}}visitSimpletypename(e){return e.generictype()?e.generictype().accept(this):e.character()?{type:e.character().accept(this),schemaName:null}:e.numeric()?{type:e.numeric().accept(this),schemaName:null}:e.constdatetime()?{type:e.constdatetime().accept(this),schemaName:null}:{type:e.getText(),schemaName:null}}visitConstdatetime(e){return`${e.getChild(0).getText()}${e.iconst()?`(${e.iconst().accept(this)})`:``}`}visitNumeric(e){return e.getText()}visitGenerictype(e){if(e.attrs()){let n=[e.getChild(0).getText(),...e.attrs().accept(this)];return{type:t.default(n),schemaName:n.length>1?n[n.length-2]:void 0}}let n=``;n=e.type_function_name()?e.type_function_name().accept(this):e.getText();let r=e.type_modifiers_();return{type:n+(r?r.getText():``),schemaName:null}}visitCharacter(e){let t=e.character_c().accept(this);return e.getChildCount()>1&&(t+=`(${e.iconst().accept(this)})`),t}visitCharacter_c(e){let t=[...Array(e.getChildCount()).keys()].reduce((t,n)=>(t+=`${e.getChild(n).getText()} `,t),``);return t.slice(0,t.length-1)}visitType_function_name(e){return e.getChild(0).accept(this)}visitType_func_name_keyword(e){return e.getText()}visitOpt_array_bounds(e){return e.getText()}visitIconst(e){return Number(e.getText()).toString()}visitIndexstmt(e){let n=e.relation_expr().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=null;e.index_name_()?a=e.index_name_().accept(this):e.name()&&(a=e.name().accept(this));let o=e.access_method_clause();return{pathName:{tableName:r,schemaName:i},index:new s.Index({name:a,unique:e.unique_()?.accept(this)??!1,type:o?o.accept(this):void 0,columns:e.index_params().accept(this)})}}visitIndex_name_(e){return e.name()?.accept(this)}visitName(e){return e.colid().accept(this)}visitAccess_method_clause(e){if(e.name())return e.name().accept(this)}visitRelation_expr(e){return e.qualified_name().accept(this)}visitIndex_params(e){return e.index_elem().map(e=>e.accept(this)).filter(e=>!!e)}visitIndex_elem(e){let t=e.index_elem_options().asc_desc_()?.DESC()?{sortOrder:`desc`}:{};return e.colid()?{value:e.colid().accept(this),type:c.CONSTRAINT_TYPE.STRING,...t}:{value:e.func_expr_windowless()?.getText()??`(${e.a_expr().getText()})`,type:c.CONSTRAINT_TYPE.EXPRESSION,...t}}visitUnique_(e){return!!e.UNIQUE()}visitAltertablestmt(e){if(e.TABLE()&&e.relation_expr()&&e.alter_table_cmds()){let n=e.relation_expr().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0;return e.alter_table_cmds().accept(this).map(e=>{if(!e)return null;let t=null;switch(e.kind){case c.TABLE_CONSTRAINT_KIND.FK:t=d.REF,e.value.endpoints[0].tableName=r,e.value.endpoints[0].schemaName=i,this.data.refs.push(e.value);break;case c.TABLE_CONSTRAINT_KIND.CHECK:{let t=p(this.data.tables,i,r);if(!t)break;t.checks||=[],t.checks.push(e.value);break}case c.TABLE_CONSTRAINT_KIND.UNIQUE:case c.TABLE_CONSTRAINT_KIND.PK:case c.TABLE_CONSTRAINT_KIND.INDEX:{if(e.value.columns.length===0||!(e.value.pk||e.value.unique))break;t=e.kind;let n=p(this.data.tables,i,r);if(!n)break;if(e.value.columns.length===1&&(e.value.unique||e.value.pk)){let t=e.value.columns[0].value,r=n.fields.find(e=>e.name===t);if(r){r[e.value.unique?`unique`:`pk`]=!0;break}}let a=new s.Index({name:e.value.name,columns:e.value.columns,note:e.value.note,pk:e.value.pk,type:e.value.type,unique:e.value.unique});n.indexes.push(a);break}}return{kind:t,value:e.value}}).filter(e=>e)}}visitAlter_table_cmds(e){return e.alter_table_cmd().map(e=>e.accept(this))}visitAlter_table_cmd(e){if(e.tableconstraint())return e.tableconstraint().accept(this)}visitCommentstmt(e){if(e.object_type_any_name()){let n=e.object_type_any_name().accept(this);if(!n)return;if(n===f.TABLE){let n=e.any_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=p(this.data.tables,i,r);if(!a)return;a.note={value:m(e.comment_text().accept(this))}}}if(e.COLUMN()){let n=e.any_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=n.length>2?n[n.length-3]:void 0,o=p(this.data.tables,a,i).fields.find(e=>e.name===r);if(!o)return;o.note={value:m(e.comment_text().accept(this))}}}visitComment_text(e){return e.NULL_P()?null:e.sconst().accept(this)}visitSconst(e){return e.anysconst().accept(this)}visitAnysconst(e){let t=e.getChild(0).getText();return t.slice(1,t.length-1)}visitObject_type_any_name(e){if(e.TABLE())return f.TABLE}visitAny_name(e){let t=[e.colid().accept(this)];return e.attrs()&&t.push(...e.attrs().accept(this)),t}visitAttrs(e){return e.attr_name().map(e=>e.accept(this))}visitDefinestmt(e){if(e.TYPE_P()&&e.enum_val_list_()){let n=e.any_name(0).accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=e.enum_val_list_().accept(this).map(e=>({name:e}));if(!a)return;let o=new s.Enum({name:r,schemaName:i,values:a});this.data.enums.push(o.toJSON())}}visitEnum_val_list_(e){return e.enum_val_list()?.accept(this)}visitEnum_val_list(e){return e.sconst().map(e=>e.accept(this))}visitInsertstmt(e){let n=e.insert_target().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,{columns:a,values:o}=e.insert_rest().accept(this);if(a.length===0){let e=p(this.data.tables,i,r);e&&e.fields&&(a=e.fields.map(e=>e.name))}let c=new s.TableRecord({schemaName:i,tableName:r,columns:a,values:o});this.data.records.push(c)}visitInsert_target(e){return e.qualified_name().accept(this)}visitInsert_rest(e){return{columns:e.insert_column_list()?e.insert_column_list().accept(this):[],values:(e.selectstmt().accept(this)||[]).filter(e=>Array.isArray(e)).map(e=>e.filter(e=>e).map(({value:e,type:t})=>({value:e,type:t})))}}visitInsert_column_list(e){return e.insert_column_item().map(e=>e.accept(this))}visitInsert_column_item(e){return e.colid().accept(this)}visitSelectstmt(e){return e.select_no_parens()?e.select_no_parens().accept(this):null}visitSelect_no_parens(e){return e.select_clause().accept(this)}visitSelect_clause(e){let t=e.simple_select_intersect();return!t||t.length===0?null:t[0].accept(this)}visitSimple_select_intersect(e){let t=e.simple_select_pramary();return!t||t.length===0?null:t[0].accept(this)}visitSimple_select_pramary(e){return e.values_clause()?e.values_clause().accept(this):null}visitValues_clause(e){return e.expr_list().map(e=>{let t=e.accept(this);return n.default(t,21)})}visitA_expr_collate(e){let[t,n,r={}]=e.a_expr_typecast().accept(this),{value:i,type:a}=t;return{value:i,type:a,...r}}};function g(e,n,r,a){if(!n)return;let s=new Set,c=(0,u.normalizeQualifiedName)(a??`public`,r),l=new i.ParseTreeListener;l.enterEveryRule=n=>{if(!(n instanceof o.default.Relation_exprContext))return;let i=n.accept(e),l=t.default(i),d=i.length>1?i[i.length-2]:void 0,f=(0,u.normalizeQualifiedName)(d??`public`,l);f!==c&&(s.has(f)||p(e.data.tables,d,l)&&(s.add(f),e.data.deps.push({edges:[{upstream:{schemaName:d,tableName:l,fieldNames:[]},downstream:{schemaName:a,tableName:r,fieldNames:[]}}],note:null,custom:{}})))},i.ParseTreeWalker.DEFAULT.walk(l,n)}exports.default=h;
|
|
1
|
+
require("../../../../_virtual/_rolldown/runtime.cjs");const e=require("../../../../node_modules/lodash-es/flatten.cjs"),t=require("../../../../node_modules/lodash-es/last.cjs"),n=require("../../../../node_modules/lodash-es/flattenDepth.cjs"),r=require("../../../../node_modules/lodash-es/lodash.cjs"),i=require("../../../../node_modules/antlr4/dist/antlr4.web.cjs"),a=require("../../parsers/postgresql/PostgreSQLParserVisitor.cjs"),o=require("../../parsers/postgresql/PostgreSQLParser.cjs"),s=require("../AST.cjs"),c=require("../constants.cjs"),l=require("../helpers.cjs");require("../../../../model_structure/config.cjs");let u=require("@dbml/parse");r.init_lodash();var d={REF:`ref`},f={TABLE:`table`},p=(e,t,n)=>{let r=t??`public`;return e.find(e=>(e.schemaName??`public`)===r&&e.name===n)},m=e=>e&&e.replaceAll(`''`,`'`),h=class extends a.default{constructor(){super(),this.data={schemas:[],tables:[],refs:[],deps:[],enums:[],tableGroups:[],aliases:[],project:{},records:[]}}visitViewstmt(e){let n=e.qualified_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=l.getOriginalText(e);this.data.tables.push({name:r,schemaName:i,fields:[],indexes:[],checks:[],note:null,headerColor:null,custom:{query:a,kind:`view`}}),g(this,e.selectstmt(),r,i)}visitCreatematviewstmt(e){let n=e.create_mv_target();if(!n)return;let r=n.qualified_name().accept(this),i=t.default(r),a=r.length>1?r[r.length-2]:void 0,o=l.getOriginalText(e);this.data.tables.push({name:i,schemaName:a,fields:[],indexes:[],checks:[],note:null,headerColor:null,custom:{query:o,kind:`materialized_view`,materialized:!0}}),g(this,e.selectstmt(),i,a)}visitRoot(e){return e.stmtblock().accept(this),this.data}visitStmtblock(e){e.stmtmulti().accept(this)}visitStmtmulti(e){e.stmt().map(e=>e.accept(this))}visitStmt(e){if(e.createstmt()){let t=e.createstmt().accept(this);t&&this.data.tables.push(t)}else if(e.indexstmt()){let t=e.indexstmt().accept(this),{tableName:n,schemaName:r}=t.pathName,i=p(this.data.tables,r,n);i&&i.indexes.push(t.index)}else e.altertablestmt()?e.altertablestmt().accept(this):e.commentstmt()?e.commentstmt().accept(this):e.definestmt()?e.definestmt().accept(this):e.insertstmt()&&e.insertstmt().accept(this)}visitCreatestmt(n){let r=n.qualified_name(0).accept(this),i=t.default(r),a=r.length>1?r[r.length-2]:void 0;if(!n.opttableelementlist())return;let[o,l,u,d]=n.opttableelementlist().accept(this).filter(e=>e).reduce((e,t)=>(t.kind===c.TABLE_CONSTRAINT_KIND.FIELD?e[0].push(t.value):t.kind===c.TABLE_CONSTRAINT_KIND.INDEX?e[1].push(t.value):t.kind===c.TABLE_CONSTRAINT_KIND.FK?e[2].push(t.value):t.kind===c.TABLE_CONSTRAINT_KIND.UNIQUE?e[1].push(t.value):t.kind===c.TABLE_CONSTRAINT_KIND.CHECK&&e[3].push(t.value),e),[[],[],[],[]]);return this.data.refs.push(...e.default(o.map(e=>e.inline_refs.map(t=>(t.endpoints[0].tableName=i,t.endpoints[0].schemaName=a,t.endpoints[0].fieldNames=[e.field.name],t))))),this.data.refs.push(...u.map(e=>(e.endpoints[0].tableName=i,e.endpoints[0].schemaName=a,e))),new s.Table({name:i,schemaName:a,fields:o.map(e=>e.field),indexes:l,checks:d})}visitOpttableelementlist(e){return e.tableelementlist()?e.tableelementlist().accept(this):[]}visitTableelementlist(e){return e.tableelement().map(e=>e.accept(this))}visitTableelement(e){if(e.columnDef())return e.columnDef().accept(this);if(e.tableconstraint())return e.tableconstraint().accept(this)}visitTableconstraint(e){let t=e.name()?.accept(this),n=e.constraintelem().accept(this);if(n)return n.value.name=t,n}visitConstraintelem(e){if(e.PRIMARY())return{kind:c.TABLE_CONSTRAINT_KIND.INDEX,value:new s.Index({pk:!0,columns:e.columnlist().accept(this)})};if(e.FOREIGN()){let n=e.qualified_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=e.columnlist().accept(this).map(e=>e.value),o=e.column_list_()?.accept(this)?.map(e=>e.value),s=e.key_actions(),l=s?s.accept(this):{onDelete:null,onUpdate:null};return{kind:c.TABLE_CONSTRAINT_KIND.FK,value:{endpoints:[{tableName:null,schemaName:null,fieldNames:a,relation:u.CARDINALITY_MANY},{tableName:r,schemaName:i,fieldNames:o,relation:u.CARDINALITY_MAYBE}],onDelete:l.onDelete,onUpdate:l.onUpdate}}}if(e.UNIQUE())return{kind:c.TABLE_CONSTRAINT_KIND.UNIQUE,value:new s.Index({unique:!0,columns:e.columnlist().accept(this)})};if(e.CHECK()){let t=l.getOriginalText(e.a_expr());return{kind:c.TABLE_CONSTRAINT_KIND.CHECK,value:{expression:t}}}}visitColumn_list_(e){return e.columnlist().accept(this)}visitColumnlist(e){return e.columnElem().map(e=>e.accept(this))}visitColumnElem(e){return{value:e.colid().accept(this),type:c.CONSTRAINT_TYPE.COLUMN}}visitColumnDef(e){let t=e.colid().accept(this),n=e.typename().accept(this),r=e.colquallist().accept(this),i=new Set([`serial`,`smallserial`,`bigserial`]),a=n.type_name.toLowerCase();return i.has(a)&&(r.increment=!0),{kind:c.TABLE_CONSTRAINT_KIND.FIELD,value:{field:new s.Field({name:t,type:n,...r}),inline_refs:r.inline_refs}}}visitColquallist(e){let t={inline_refs:[],checks:[]};return e.colconstraint().forEach(e=>{let n=e.accept(this);n&&(n.kind===c.COLUMN_CONSTRAINT_KIND.INLINE_REF?t.inline_refs.push(n.value):n.kind===c.COLUMN_CONSTRAINT_KIND.CHECK?t.checks.push(n.value):t[n.kind]=n.value)}),t}visitColconstraint(e){if(e.colconstraintelem())return e.colconstraintelem().accept(this)}visitColconstraintelem(e){if(e.NULL_P()){let t=!1;return e.NOT()&&(t=!0),{kind:c.COLUMN_CONSTRAINT_KIND.NOT_NULL,value:t}}if(e.UNIQUE())return{kind:c.COLUMN_CONSTRAINT_KIND.UNIQUE,value:!0};if(e.PRIMARY())return{kind:c.COLUMN_CONSTRAINT_KIND.PK,value:!0};if(e.DEFAULT())return{kind:c.COLUMN_CONSTRAINT_KIND.DEFAULT,value:e.b_expr().accept(this)};if(e.IDENTITY_P())return{kind:c.COLUMN_CONSTRAINT_KIND.INCREMENT,value:!0};if(e.CHECK()){let t=l.getOriginalText(e.a_expr());return{kind:c.COLUMN_CONSTRAINT_KIND.CHECK,value:{expression:t}}}if(e.REFERENCES()){let n=e.qualified_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=e.column_list_()?.accept(this)?.map(e=>e.value),o=e.key_actions(),s=o?o.accept(this):{onDelete:null,onUpdate:null};return{kind:c.COLUMN_CONSTRAINT_KIND.INLINE_REF,value:{endpoints:[{tableName:null,schemaName:null,fieldNames:null,relation:u.CARDINALITY_MANY},{tableName:r,schemaName:i,fieldNames:a,relation:u.CARDINALITY_MAYBE}],onDelete:s.onDelete,onUpdate:s.onUpdate}}}}visitB_expr(e){return e.c_expr()?e.c_expr().accept(this):{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitC_expr_expr(e){return e.aexprconst()?e.aexprconst().accept(this):e.a_expr()?{value:e.a_expr().getText(),type:c.DATA_TYPE.EXPRESSION}:{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitC_expr_exists(e){return{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitC_expr_case(e){return{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitAexprconst(e){return e.sconst()&&e.getChildCount()===1?{value:e.sconst().accept(this),type:c.DATA_TYPE.STRING}:e.TRUE_P()||e.FALSE_P()||e.NULL_P()?{value:e.getText().toLowerCase(),type:c.DATA_TYPE.BOOLEAN}:e.iconst()?{value:e.iconst().accept(this),type:c.DATA_TYPE.NUMBER}:e.fconst()?{value:e.getText(),type:c.DATA_TYPE.NUMBER}:{value:e.getText(),type:c.DATA_TYPE.EXPRESSION}}visitKey_actions(e){let[t,n]=[null,null];return e.key_update()&&(n=e.key_update().accept(this)),e.key_delete()&&(t=e.key_delete().accept(this)),{onDelete:t,onUpdate:n}}visitKey_update(e){return e.key_action().accept(this)}visitKey_delete(e){return e.key_action().accept(this)}visitKey_action(e){let t=[...Array(e.getChildCount()).keys()].reduce((t,n)=>(t+=`${e.getChild(n).getText()} `,t),``);return t.slice(0,t.length-1)}visitQualified_name(e){let t=[e.colid().accept(this)];return e.indirection()&&t.push(...e.indirection().accept(this)),t}visitColid(e){return e.getChild(0).accept(this)}visitUnreserved_keyword(e){return e.getText()}visitIdentifier(e){if(e.Identifier())return e.Identifier().getText();if(e.QuotedIdentifier()){let t=e.QuotedIdentifier().getText();return t.slice(1,t.length-1)}if(e.UnicodeQuotedIdentifier()){let t=e.UnicodeQuotedIdentifier().getText();return t.slice(1,t.length-1)}return e.getChild(0).getText()}visitCol_name_keyword(e){return e.getChild(0).getText()}visitIndirection(e){return e.indirection_el().map(e=>e.accept(this))}visitIndirection_el(e){if(e.attr_name())return e.attr_name().accept(this)}visitAttr_name(e){return e.colLabel().accept(this)}visitColLabel(e){return e.EXIT()?e.EXIT().getText():e.getChild(0).accept(this)}visitReserved_keyword(e){return e.getText()}visitTypename(e){if(e.simpletypename()){let t=``,n=e.simpletypename().accept(this);return e.opt_array_bounds()&&(t=e.opt_array_bounds().accept(this)),e.ARRAY()&&(t=`[${e.iconst()?e.iconst().accept(this):``}]`),{type_name:n.type+t,schemaName:n.schemaName}}}visitSimpletypename(e){return e.generictype()?e.generictype().accept(this):e.character()?{type:e.character().accept(this),schemaName:null}:e.numeric()?{type:e.numeric().accept(this),schemaName:null}:e.constdatetime()?{type:e.constdatetime().accept(this),schemaName:null}:{type:e.getText(),schemaName:null}}visitConstdatetime(e){return`${e.getChild(0).getText()}${e.iconst()?`(${e.iconst().accept(this)})`:``}`}visitNumeric(e){return e.getText()}visitGenerictype(e){if(e.attrs()){let n=[e.getChild(0).getText(),...e.attrs().accept(this)];return{type:t.default(n),schemaName:n.length>1?n[n.length-2]:void 0}}let n=``;n=e.type_function_name()?e.type_function_name().accept(this):e.getText();let r=e.type_modifiers_();return{type:n+(r?r.getText():``),schemaName:null}}visitCharacter(e){let t=e.character_c().accept(this);return e.getChildCount()>1&&(t+=`(${e.iconst().accept(this)})`),t}visitCharacter_c(e){let t=[...Array(e.getChildCount()).keys()].reduce((t,n)=>(t+=`${e.getChild(n).getText()} `,t),``);return t.slice(0,t.length-1)}visitType_function_name(e){return e.getChild(0).accept(this)}visitType_func_name_keyword(e){return e.getText()}visitOpt_array_bounds(e){return e.getText()}visitIconst(e){return Number(e.getText()).toString()}visitIndexstmt(e){let n=e.relation_expr().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=null;e.index_name_()?a=e.index_name_().accept(this):e.name()&&(a=e.name().accept(this));let o=e.access_method_clause();return{pathName:{tableName:r,schemaName:i},index:new s.Index({name:a,unique:e.unique_()?.accept(this)??!1,type:o?o.accept(this):void 0,columns:e.index_params().accept(this)})}}visitIndex_name_(e){return e.name()?.accept(this)}visitName(e){return e.colid().accept(this)}visitAccess_method_clause(e){if(e.name())return e.name().accept(this)}visitRelation_expr(e){return e.qualified_name().accept(this)}visitIndex_params(e){return e.index_elem().map(e=>e.accept(this)).filter(e=>!!e)}visitIndex_elem(e){let t=e.index_elem_options().asc_desc_()?.DESC()?{sortOrder:`desc`}:{};return e.colid()?{value:e.colid().accept(this),type:c.CONSTRAINT_TYPE.STRING,...t}:{value:e.func_expr_windowless()?.getText()??`(${e.a_expr().getText()})`,type:c.CONSTRAINT_TYPE.EXPRESSION,...t}}visitUnique_(e){return!!e.UNIQUE()}visitAltertablestmt(e){if(e.TABLE()&&e.relation_expr()&&e.alter_table_cmds()){let n=e.relation_expr().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0;return e.alter_table_cmds().accept(this).map(e=>{if(!e)return null;let t=null;switch(e.kind){case c.TABLE_CONSTRAINT_KIND.FK:t=d.REF,e.value.endpoints[0].tableName=r,e.value.endpoints[0].schemaName=i,this.data.refs.push(e.value);break;case c.TABLE_CONSTRAINT_KIND.CHECK:{let t=p(this.data.tables,i,r);if(!t)break;t.checks||=[],t.checks.push(e.value);break}case c.TABLE_CONSTRAINT_KIND.UNIQUE:case c.TABLE_CONSTRAINT_KIND.PK:case c.TABLE_CONSTRAINT_KIND.INDEX:{if(e.value.columns.length===0||!(e.value.pk||e.value.unique))break;t=e.kind;let n=p(this.data.tables,i,r);if(!n)break;if(e.value.columns.length===1&&(e.value.unique||e.value.pk)){let t=e.value.columns[0].value,r=n.fields.find(e=>e.name===t);if(r){r[e.value.unique?`unique`:`pk`]=!0;break}}let a=new s.Index({name:e.value.name,columns:e.value.columns,note:e.value.note,pk:e.value.pk,type:e.value.type,unique:e.value.unique});n.indexes.push(a);break}}return{kind:t,value:e.value}}).filter(e=>e)}}visitAlter_table_cmds(e){return e.alter_table_cmd().map(e=>e.accept(this))}visitAlter_table_cmd(e){if(e.tableconstraint())return e.tableconstraint().accept(this)}visitCommentstmt(e){if(e.object_type_any_name()){let n=e.object_type_any_name().accept(this);if(!n)return;if(n===f.TABLE){let n=e.any_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=p(this.data.tables,i,r);if(!a)return;a.note={value:m(e.comment_text().accept(this))}}}if(e.COLUMN()){let n=e.any_name().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=n.length>2?n[n.length-3]:void 0,o=p(this.data.tables,a,i).fields.find(e=>e.name===r);if(!o)return;o.note={value:m(e.comment_text().accept(this))}}}visitComment_text(e){return e.NULL_P()?null:e.sconst().accept(this)}visitSconst(e){return e.anysconst().accept(this)}visitAnysconst(e){let t=e.getChild(0).getText();return t.slice(1,t.length-1)}visitObject_type_any_name(e){if(e.TABLE())return f.TABLE}visitAny_name(e){let t=[e.colid().accept(this)];return e.attrs()&&t.push(...e.attrs().accept(this)),t}visitAttrs(e){return e.attr_name().map(e=>e.accept(this))}visitDefinestmt(e){if(e.TYPE_P()&&e.enum_val_list_()){let n=e.any_name(0).accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,a=e.enum_val_list_().accept(this).map(e=>({name:e}));if(!a)return;let o=new s.Enum({name:r,schemaName:i,values:a});this.data.enums.push(o.toJSON())}}visitEnum_val_list_(e){return e.enum_val_list()?.accept(this)}visitEnum_val_list(e){return e.sconst().map(e=>e.accept(this))}visitInsertstmt(e){let n=e.insert_target().accept(this),r=t.default(n),i=n.length>1?n[n.length-2]:void 0,{columns:a,values:o}=e.insert_rest().accept(this);if(a.length===0){let e=p(this.data.tables,i,r);e&&e.fields&&(a=e.fields.map(e=>e.name))}let c=new s.TableRecord({schemaName:i,tableName:r,columns:a,values:o});this.data.records.push(c)}visitInsert_target(e){return e.qualified_name().accept(this)}visitInsert_rest(e){return{columns:e.insert_column_list()?e.insert_column_list().accept(this):[],values:(e.selectstmt().accept(this)||[]).filter(e=>Array.isArray(e)).map(e=>e.filter(e=>e).map(({value:e,type:t})=>({value:e,type:t})))}}visitInsert_column_list(e){return e.insert_column_item().map(e=>e.accept(this))}visitInsert_column_item(e){return e.colid().accept(this)}visitSelectstmt(e){return e.select_no_parens()?e.select_no_parens().accept(this):null}visitSelect_no_parens(e){return e.select_clause().accept(this)}visitSelect_clause(e){let t=e.simple_select_intersect();return!t||t.length===0?null:t[0].accept(this)}visitSimple_select_intersect(e){let t=e.simple_select_pramary();return!t||t.length===0?null:t[0].accept(this)}visitSimple_select_pramary(e){return e.values_clause()?e.values_clause().accept(this):null}visitValues_clause(e){return e.expr_list().map(e=>{let t=e.accept(this);return n.default(t,21)})}visitA_expr_collate(e){let[t,n,r={}]=e.a_expr_typecast().accept(this),{value:i,type:a}=t;return{value:i,type:a,...r}}};function g(e,n,r,a){if(!n)return;let s=new Set,c=(0,u.normalizeQualifiedName)(a??`public`,r),l=new i.ParseTreeListener;l.enterEveryRule=n=>{if(!(n instanceof o.default.Relation_exprContext))return;let i=n.accept(e),l=t.default(i),d=i.length>1?i[i.length-2]:void 0,f=(0,u.normalizeQualifiedName)(d??`public`,l);f!==c&&(s.has(f)||p(e.data.tables,d,l)&&(s.add(f),e.data.deps.push({edges:[{upstream:{schemaName:d,tableName:l,fieldNames:[]},downstream:{schemaName:a,tableName:r,fieldNames:[]}}],note:null,custom:{}})))},i.ParseTreeWalker.DEFAULT.walk(l,n)}exports.default=h;
|
|
@@ -2,15 +2,15 @@ import e from "../../../../node_modules/lodash-es/flatten.mjs";
|
|
|
2
2
|
import t from "../../../../node_modules/lodash-es/last.mjs";
|
|
3
3
|
import n from "../../../../node_modules/lodash-es/flattenDepth.mjs";
|
|
4
4
|
import { init_lodash as r } from "../../../../node_modules/lodash-es/lodash.mjs";
|
|
5
|
-
import "../../../../model_structure/config.mjs";
|
|
6
5
|
import { ParseTreeListener as i, ParseTreeWalker as a } from "../../../../node_modules/antlr4/dist/antlr4.web.mjs";
|
|
7
6
|
import o from "../../parsers/postgresql/PostgreSQLParserVisitor.mjs";
|
|
8
7
|
import s from "../../parsers/postgresql/PostgreSQLParser.mjs";
|
|
9
8
|
import { Enum as c, Field as l, Index as u, Table as d, TableRecord as f } from "../AST.mjs";
|
|
10
9
|
import { COLUMN_CONSTRAINT_KIND as p, CONSTRAINT_TYPE as m, DATA_TYPE as h, TABLE_CONSTRAINT_KIND as g } from "../constants.mjs";
|
|
11
10
|
import { getOriginalText as _ } from "../helpers.mjs";
|
|
11
|
+
import "../../../../model_structure/config.mjs";
|
|
12
12
|
import { CARDINALITY_MANY as v, CARDINALITY_MAYBE as y, normalizeQualifiedName as b } from "@dbml/parse";
|
|
13
|
-
|
|
13
|
+
// src/parse/ANTLR/ASTGeneration/postgres/PostgresASTGen.js
|
|
14
14
|
r();
|
|
15
15
|
var x = { REF: "ref" }, S = { TABLE: "table" }, C = (e, t, n) => {
|
|
16
16
|
let r = t ?? "public";
|
|
@@ -671,5 +671,4 @@ function E(e, n, r, o) {
|
|
|
671
671
|
})));
|
|
672
672
|
}, a.DEFAULT.walk(u, n);
|
|
673
673
|
}
|
|
674
|
-
//#endregion
|
|
675
674
|
export { T as default };
|
|
@@ -7,7 +7,7 @@ import { Enum as a, Field as o, Index as s, Table as c, TableRecord as l } from
|
|
|
7
7
|
import { COLUMN_CONSTRAINT_KIND as u, CONSTRAINT_TYPE as d, TABLE_CONSTRAINT_KIND as f } from "../constants.mjs";
|
|
8
8
|
import { getOriginalText as p } from "../helpers.mjs";
|
|
9
9
|
import { CARDINALITY_MANY as m, CARDINALITY_MAYBE as h } from "@dbml/parse";
|
|
10
|
-
|
|
10
|
+
// src/parse/ANTLR/ASTGeneration/snowflake/SnowflakeASTGen.js
|
|
11
11
|
r();
|
|
12
12
|
var g = "public", _ = (e) => p(e).replace(/''/g, "'").slice(1, -1), v = class extends i {
|
|
13
13
|
constructor() {
|
|
@@ -343,5 +343,4 @@ var g = "public", _ = (e) => p(e).replace(/''/g, "'").slice(1, -1), v = class ex
|
|
|
343
343
|
return e.expr().map((e) => e.accept(this));
|
|
344
344
|
}
|
|
345
345
|
};
|
|
346
|
-
//#endregion
|
|
347
346
|
export { v as default };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import e from "../../../../node_modules/antlr4/dist/antlr4.web.mjs";
|
|
2
|
-
|
|
2
|
+
// src/parse/ANTLR/parsers/mssql/TSqlLexer.js
|
|
3
3
|
var t = new e.atn.ATNDeserializer().deserialize([
|
|
4
4
|
4,
|
|
5
5
|
0,
|
|
@@ -124314,5 +124314,4 @@ var t = new e.atn.ATNDeserializer().deserialize([
|
|
|
124314
124314
|
}
|
|
124315
124315
|
};
|
|
124316
124316
|
r.EOF = e.Token.EOF, r.ABORT = 1, r.ABORT_AFTER_WAIT = 2, r.ABSENT = 3, r.ABSOLUTE = 4, r.ACCELERATED_DATABASE_RECOVERY = 5, r.ACCENT_SENSITIVITY = 6, r.ACCESS = 7, r.ACTION = 8, r.ACTIVATION = 9, r.ACTIVE = 10, r.ADD = 11, r.ADDRESS = 12, r.ADMINISTER = 13, r.AES = 14, r.AES_128 = 15, r.AES_192 = 16, r.AES_256 = 17, r.AFFINITY = 18, r.AFTER = 19, r.AGGREGATE = 20, r.ALGORITHM = 21, r.ALL = 22, r.ALLOWED = 23, r.ALLOW_CONNECTIONS = 24, r.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = 25, r.ALLOW_MULTIPLE_EVENT_LOSS = 26, r.ALLOW_PAGE_LOCKS = 27, r.ALLOW_ROW_LOCKS = 28, r.ALLOW_SINGLE_EVENT_LOSS = 29, r.ALLOW_SNAPSHOT_ISOLATION = 30, r.ALL_CONSTRAINTS = 31, r.ALL_ERRORMSGS = 32, r.ALL_INDEXES = 33, r.ALL_LEVELS = 34, r.ALTER = 35, r.ALWAYS = 36, r.AND = 37, r.ANONYMOUS = 38, r.ANSI_DEFAULTS = 39, r.ANSI_NULLS = 40, r.ANSI_NULL_DEFAULT = 41, r.ANSI_NULL_DFLT_OFF = 42, r.ANSI_NULL_DFLT_ON = 43, r.ANSI_PADDING = 44, r.ANSI_WARNINGS = 45, r.ANY = 46, r.APPEND = 47, r.APPLICATION = 48, r.APPLICATION_LOG = 49, r.APPLOCK_MODE = 50, r.APPLOCK_TEST = 51, r.APPLY = 52, r.APP_NAME = 53, r.ARITHABORT = 54, r.ARITHIGNORE = 55, r.AS = 56, r.ASC = 57, r.ASCII = 58, r.ASSEMBLY = 59, r.ASSEMBLYPROPERTY = 60, r.ASYMMETRIC = 61, r.ASYNCHRONOUS_COMMIT = 62, r.AT_KEYWORD = 63, r.AUDIT = 64, r.AUDIT_GUID = 65, r.AUTHENTICATE = 66, r.AUTHENTICATION = 67, r.AUTHORIZATION = 68, r.AUTO = 69, r.AUTOGROW_ALL_FILES = 70, r.AUTOGROW_SINGLE_FILE = 71, r.AUTOMATED_BACKUP_PREFERENCE = 72, r.AUTOMATIC = 73, r.AUTO_CLEANUP = 74, r.AUTO_CLOSE = 75, r.AUTO_CREATE_STATISTICS = 76, r.AUTO_DROP = 77, r.AUTO_SHRINK = 78, r.AUTO_UPDATE_STATISTICS = 79, r.AUTO_UPDATE_STATISTICS_ASYNC = 80, r.AVAILABILITY = 81, r.AVAILABILITY_MODE = 82, r.AVG = 83, r.BACKSLASH = 84, r.BACKUP = 85, r.BACKUP_CLONEDB = 86, r.BACKUP_PRIORITY = 87, r.BASE64 = 88, r.BEFORE = 89, r.BEGIN = 90, r.BEGIN_DIALOG = 91, r.BETWEEN = 92, r.BIGINT = 93, r.BINARY_CHECKSUM = 94, r.BINARY_KEYWORD = 95, r.BINDING = 96, r.BLOB_STORAGE = 97, r.BLOCK = 98, r.BLOCKERS = 99, r.BLOCKING_HIERARCHY = 100, r.BLOCKSIZE = 101, r.BREAK = 102, r.BROKER = 103, r.BROKER_INSTANCE = 104, r.BROWSE = 105, r.BUFFER = 106, r.BUFFERCOUNT = 107, r.BULK = 108, r.BULK_LOGGED = 109, r.BY = 110, r.CACHE = 111, r.CALLED = 112, r.CALLER = 113, r.CAP_CPU_PERCENT = 114, r.CASCADE = 115, r.CASE = 116, r.CAST = 117, r.CATALOG = 118, r.CATCH = 119, r.CERTENCODED = 120, r.CERTIFICATE = 121, r.CERTPRIVATEKEY = 122, r.CERT_ID = 123, r.CHANGE = 124, r.CHANGES = 125, r.CHANGETABLE = 126, r.CHANGE_RETENTION = 127, r.CHANGE_TRACKING = 128, r.CHAR = 129, r.CHARINDEX = 130, r.CHECK = 131, r.CHECKALLOC = 132, r.CHECKCATALOG = 133, r.CHECKCONSTRAINTS = 134, r.CHECKDB = 135, r.CHECKFILEGROUP = 136, r.CHECKPOINT = 137, r.CHECKSUM = 138, r.CHECKSUM_AGG = 139, r.CHECKTABLE = 140, r.CHECK_EXPIRATION = 141, r.CHECK_POLICY = 142, r.CLASSIFIER_FUNCTION = 143, r.CLEANTABLE = 144, r.CLEANUP = 145, r.CLONEDATABASE = 146, r.CLOSE = 147, r.CLUSTER = 148, r.CLUSTERED = 149, r.COALESCE = 150, r.COLLATE = 151, r.COLLECTION = 152, r.COLUMN = 153, r.COLUMNPROPERTY = 154, r.COLUMNS = 155, r.COLUMNSTORE = 156, r.COLUMNSTORE_ARCHIVE = 157, r.COLUMN_ENCRYPTION_KEY = 158, r.COLUMN_MASTER_KEY = 159, r.COL_LENGTH = 160, r.COL_NAME = 161, r.COMMIT = 162, r.COMMITTED = 163, r.COMPATIBILITY_LEVEL = 164, r.COMPRESS = 165, r.COMPRESSION = 166, r.COMPRESSION_DELAY = 167, r.COMPRESS_ALL_ROW_GROUPS = 168, r.COMPUTE = 169, r.CONCAT = 170, r.CONCAT_NULL_YIELDS_NULL = 171, r.CONCAT_WS = 172, r.CONFIGURATION = 173, r.CONNECT = 174, r.CONNECTION = 175, r.CONNECTIONPROPERTY = 176, r.CONSTRAINT = 177, r.CONTAINMENT = 178, r.CONTAINS = 179, r.CONTAINSTABLE = 180, r.CONTENT = 181, r.CONTEXT = 182, r.CONTEXT_INFO = 183, r.CONTINUE = 184, r.CONTINUE_AFTER_ERROR = 185, r.CONTRACT = 186, r.CONTRACT_NAME = 187, r.CONTROL = 188, r.CONVERSATION = 189, r.CONVERT = 190, r.COOKIE = 191, r.COPY_ONLY = 192, r.COUNT = 193, r.COUNTER = 194, r.COUNT_BIG = 195, r.CPU = 196, r.CREATE = 197, r.CREATE_NEW = 198, r.CREATION_DISPOSITION = 199, r.CREDENTIAL = 200, r.CROSS = 201, r.CRYPTOGRAPHIC = 202, r.CUME_DIST = 203, r.CURRENT = 204, r.CURRENT_DATE = 205, r.CURRENT_REQUEST_ID = 206, r.CURRENT_TIME = 207, r.CURRENT_TIMESTAMP = 208, r.CURRENT_TRANSACTION_ID = 209, r.CURRENT_USER = 210, r.CURSOR = 211, r.CURSOR_CLOSE_ON_COMMIT = 212, r.CURSOR_DEFAULT = 213, r.CURSOR_STATUS = 214, r.CYCLE = 215, r.DATA = 216, r.DATABASE = 217, r.DATABASEPROPERTYEX = 218, r.DATABASE_MIRRORING = 219, r.DATABASE_PRINCIPAL_ID = 220, r.DATALENGTH = 221, r.DATASPACE = 222, r.DATA_COMPRESSION = 223, r.DATA_PURITY = 224, r.DATA_SOURCE = 225, r.DATEADD = 226, r.DATEDIFF = 227, r.DATENAME = 228, r.DATEPART = 229, r.DATE_CORRELATION_OPTIMIZATION = 230, r.DAYS = 231, r.DBCC = 232, r.DBREINDEX = 233, r.DB_CHAINING = 234, r.DB_FAILOVER = 235, r.DB_ID = 236, r.DB_NAME = 237, r.DDL = 238, r.DEALLOCATE = 239, r.DECLARE = 240, r.DECOMPRESS = 241, r.DECRYPTION = 242, r.DEFAULT = 243, r.DEFAULT_DATABASE = 244, r.DEFAULT_DOUBLE_QUOTE = 245, r.DEFAULT_FULLTEXT_LANGUAGE = 246, r.DEFAULT_LANGUAGE = 247, r.DEFAULT_SCHEMA = 248, r.DEFINITION = 249, r.DELAY = 250, r.DELAYED_DURABILITY = 251, r.DELETE = 252, r.DELETED = 253, r.DENSE_RANK = 254, r.DENY = 255, r.DEPENDENTS = 256, r.DES = 257, r.DESC = 258, r.DESCRIPTION = 259, r.DESX = 260, r.DETERMINISTIC = 261, r.DHCP = 262, r.DIAGNOSTICS = 263, r.DIALOG = 264, r.DIFFERENCE = 265, r.DIFFERENTIAL = 266, r.DIRECTORY_NAME = 267, r.DISABLE = 268, r.DISABLED = 269, r.DISABLE_BROKER = 270, r.DISK = 271, r.DISTINCT = 272, r.DISTRIBUTED = 273, r.DISTRIBUTION = 274, r.DOCUMENT = 275, r.DOLLAR_PARTITION = 276, r.DOUBLE = 277, r.DOUBLE_BACK_SLASH = 278, r.DOUBLE_FORWARD_SLASH = 279, r.DROP = 280, r.DROPCLEANBUFFERS = 281, r.DROP_EXISTING = 282, r.DTC_SUPPORT = 283, r.DUMP = 284, r.DYNAMIC = 285, r.ELEMENTS = 286, r.ELSE = 287, r.EMERGENCY = 288, r.EMPTY = 289, r.ENABLE = 290, r.ENABLED = 291, r.ENABLE_BROKER = 292, r.ENCRYPTED = 293, r.ENCRYPTED_VALUE = 294, r.ENCRYPTION = 295, r.ENCRYPTION_TYPE = 296, r.END = 297, r.ENDPOINT = 298, r.ENDPOINT_URL = 299, r.ERRLVL = 300, r.ERROR = 301, r.ERROR_BROKER_CONVERSATIONS = 302, r.ERROR_LINE = 303, r.ERROR_MESSAGE = 304, r.ERROR_NUMBER = 305, r.ERROR_PROCEDURE = 306, r.ERROR_SEVERITY = 307, r.ERROR_STATE = 308, r.ESCAPE = 309, r.ESTIMATEONLY = 310, r.EVENT = 311, r.EVENTDATA = 312, r.EVENT_RETENTION_MODE = 313, r.EXCEPT = 314, r.EXCLUSIVE = 315, r.EXECUTABLE = 316, r.EXECUTABLE_FILE = 317, r.EXECUTE = 318, r.EXIST = 319, r.EXISTS = 320, r.EXIST_SQUARE_BRACKET = 321, r.EXIT = 322, r.EXPAND = 323, r.EXPIREDATE = 324, r.EXPIRY_DATE = 325, r.EXPLICIT = 326, r.EXTENDED_LOGICAL_CHECKS = 327, r.EXTENSION = 328, r.EXTERNAL = 329, r.EXTERNAL_ACCESS = 330, r.FAILOVER = 331, r.FAILOVER_MODE = 332, r.FAILURE = 333, r.FAILURECONDITIONLEVEL = 334, r.FAILURE_CONDITION_LEVEL = 335, r.FAIL_OPERATION = 336, r.FAN_IN = 337, r.FAST = 338, r.FAST_FORWARD = 339, r.FETCH = 340, r.FILE = 341, r.FILEGROUP = 342, r.FILEGROUPPROPERTY = 343, r.FILEGROUP_ID = 344, r.FILEGROUP_NAME = 345, r.FILEGROWTH = 346, r.FILENAME = 347, r.FILEPATH = 348, r.FILEPROPERTY = 349, r.FILEPROPERTYEX = 350, r.FILESTREAM = 351, r.FILESTREAM_ON = 352, r.FILE_ID = 353, r.FILE_IDEX = 354, r.FILE_NAME = 355, r.FILE_SNAPSHOT = 356, r.FILLFACTOR = 357, r.FILTER = 358, r.FIRST = 359, r.FIRST_VALUE = 360, r.FMTONLY = 361, r.FOLLOWING = 362, r.FOR = 363, r.FORCE = 364, r.FORCED = 365, r.FORCEPLAN = 366, r.FORCESCAN = 367, r.FORCESEEK = 368, r.FORCE_FAILOVER_ALLOW_DATA_LOSS = 369, r.FORCE_SERVICE_ALLOW_DATA_LOSS = 370, r.FOREIGN = 371, r.FORMAT = 372, r.FORMATMESSAGE = 373, r.FORWARD_ONLY = 374, r.FREE = 375, r.FREETEXT = 376, r.FREETEXTTABLE = 377, r.FROM = 378, r.FULL = 379, r.FULLSCAN = 380, r.FULLTEXT = 381, r.FULLTEXTCATALOGPROPERTY = 382, r.FULLTEXTSERVICEPROPERTY = 383, r.FUNCTION = 384, r.GB = 385, r.GENERATED = 386, r.GET = 387, r.GETANCESTOR = 388, r.GETANSINULL = 389, r.GETDATE = 390, r.GETDESCENDANT = 391, r.GETLEVEL = 392, r.GETREPARENTEDVALUE = 393, r.GETROOT = 394, r.GETUTCDATE = 395, r.GET_FILESTREAM_TRANSACTION_CONTEXT = 396, r.GLOBAL = 397, r.GO = 398, r.GOTO = 399, r.GOVERNOR = 400, r.GRANT = 401, r.GREATEST = 402, r.GROUP = 403, r.GROUPING = 404, r.GROUPING_ID = 405, r.GROUP_MAX_REQUESTS = 406, r.HADR = 407, r.HASH = 408, r.HASHED = 409, r.HAS_DBACCESS = 410, r.HAS_PERMS_BY_NAME = 411, r.HAVING = 412, r.HEALTHCHECKTIMEOUT = 413, r.HEALTH_CHECK_TIMEOUT = 414, r.HEAP = 415, r.HIDDEN_KEYWORD = 416, r.HIERARCHYID = 417, r.HIGH = 418, r.HOLDLOCK = 419, r.HONOR_BROKER_PRIORITY = 420, r.HOST_ID = 421, r.HOST_NAME = 422, r.HOURS = 423, r.IDENTITY = 424, r.IDENTITYCOL = 425, r.IDENTITY_INSERT = 426, r.IDENTITY_VALUE = 427, r.IDENT_CURRENT = 428, r.IDENT_INCR = 429, r.IDENT_SEED = 430, r.IF = 431, r.IGNORE_CONSTRAINTS = 432, r.IGNORE_DUP_KEY = 433, r.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX = 434, r.IGNORE_REPLICATED_TABLE_CACHE = 435, r.IGNORE_TRIGGERS = 436, r.IIF = 437, r.IMMEDIATE = 438, r.IMPERSONATE = 439, r.IMPLICIT_TRANSACTIONS = 440, r.IMPORTANCE = 441, r.IN = 442, r.INCLUDE = 443, r.INCLUDE_NULL_VALUES = 444, r.INCREMENT = 445, r.INCREMENTAL = 446, r.INDEX = 447, r.INDEXKEY_PROPERTY = 448, r.INDEXPROPERTY = 449, r.INDEX_COL = 450, r.INFINITE = 451, r.INIT = 452, r.INITIATOR = 453, r.INNER = 454, r.INPUT = 455, r.INSENSITIVE = 456, r.INSERT = 457, r.INSERTED = 458, r.INSTEAD = 459, r.INT = 460, r.INTERSECT = 461, r.INTO = 462, r.IO = 463, r.IP = 464, r.IS = 465, r.ISDESCENDANTOF = 466, r.ISJSON = 467, r.ISNULL = 468, r.ISNUMERIC = 469, r.ISOLATION = 470, r.IS_MEMBER = 471, r.IS_ROLEMEMBER = 472, r.IS_SRVROLEMEMBER = 473, r.JOB = 474, r.JOIN = 475, r.JSON = 476, r.JSON_ARRAY = 477, r.JSON_MODIFY = 478, r.JSON_OBJECT = 479, r.JSON_PATH_EXISTS = 480, r.JSON_QUERY = 481, r.JSON_VALUE = 482, r.KB = 483, r.KEEP = 484, r.KEEPDEFAULTS = 485, r.KEEPFIXED = 486, r.KEEPIDENTITY = 487, r.KERBEROS = 488, r.KEY = 489, r.KEYS = 490, r.KEYSET = 491, r.KEY_PATH = 492, r.KEY_SOURCE = 493, r.KEY_STORE_PROVIDER_NAME = 494, r.KILL = 495, r.LAG = 496, r.LANGUAGE = 497, r.LAST = 498, r.LAST_VALUE = 499, r.LEAD = 500, r.LEAST = 501, r.LEFT = 502, r.LEN = 503, r.LEVEL = 504, r.LIBRARY = 505, r.LIFETIME = 506, r.LIKE = 507, r.LINENO = 508, r.LINKED = 509, r.LINUX = 510, r.LIST = 511, r.LISTENER = 512, r.LISTENER_IP = 513, r.LISTENER_PORT = 514, r.LISTENER_URL = 515, r.LOAD = 516, r.LOB_COMPACTION = 517, r.LOCAL = 518, r.LOCAL_SERVICE_NAME = 519, r.LOCATION = 520, r.LOCK = 521, r.LOCK_ESCALATION = 522, r.LOG = 523, r.LOGIN = 524, r.LOGINPROPERTY = 525, r.LOOP = 526, r.LOW = 527, r.LOWER = 528, r.LTRIM = 529, r.MANUAL = 530, r.MARK = 531, r.MASK = 532, r.MASKED = 533, r.MASTER = 534, r.MATCHED = 535, r.MATERIALIZED = 536, r.MAX = 537, r.MAXDOP = 538, r.MAXRECURSION = 539, r.MAXSIZE = 540, r.MAXTRANSFER = 541, r.MAXVALUE = 542, r.MAX_CPU_PERCENT = 543, r.MAX_DISPATCH_LATENCY = 544, r.MAX_DOP = 545, r.MAX_DURATION = 546, r.MAX_EVENT_SIZE = 547, r.MAX_FILES = 548, r.MAX_IOPS_PER_VOLUME = 549, r.MAX_MEMORY = 550, r.MAX_MEMORY_PERCENT = 551, r.MAX_OUTSTANDING_IO_PER_VOLUME = 552, r.MAX_PROCESSES = 553, r.MAX_QUEUE_READERS = 554, r.MAX_ROLLOVER_FILES = 555, r.MAX_SIZE = 556, r.MB = 557, r.MEDIADESCRIPTION = 558, r.MEDIANAME = 559, r.MEDIUM = 560, r.MEMBER = 561, r.MEMORY_OPTIMIZED_DATA = 562, r.MEMORY_PARTITION_MODE = 563, r.MERGE = 564, r.MESSAGE = 565, r.MESSAGE_FORWARDING = 566, r.MESSAGE_FORWARD_SIZE = 567, r.MIN = 568, r.MINUTES = 569, r.MINVALUE = 570, r.MIN_ACTIVE_ROWVERSION = 571, r.MIN_CPU_PERCENT = 572, r.MIN_IOPS_PER_VOLUME = 573, r.MIN_MEMORY_PERCENT = 574, r.MIRROR = 575, r.MIRROR_ADDRESS = 576, r.MIXED_PAGE_ALLOCATION = 577, r.MODE = 578, r.MODIFY = 579, r.MODIFY_SQUARE_BRACKET = 580, r.MOVE = 581, r.MULTI_USER = 582, r.MUST_CHANGE = 583, r.NAME = 584, r.NATIONAL = 585, r.NCHAR = 586, r.NEGOTIATE = 587, r.NESTED_TRIGGERS = 588, r.NEWID = 589, r.NEWNAME = 590, r.NEWSEQUENTIALID = 591, r.NEW_ACCOUNT = 592, r.NEW_BROKER = 593, r.NEW_PASSWORD = 594, r.NEXT = 595, r.NO = 596, r.NOCHECK = 597, r.NOCOUNT = 598, r.NODES = 599, r.NOEXEC = 600, r.NOEXPAND = 601, r.NOFORMAT = 602, r.NOHOLDLOCK = 603, r.NOINDEX = 604, r.NOINIT = 605, r.NOLOCK = 606, r.NONCLUSTERED = 607, r.NONE = 608, r.NON_TRANSACTED_ACCESS = 609, r.NORECOMPUTE = 610, r.NORECOVERY = 611, r.NOREWIND = 612, r.NOSKIP = 613, r.NOT = 614, r.NOTIFICATION = 615, r.NOTIFICATIONS = 616, r.NOUNLOAD = 617, r.NOWAIT = 618, r.NO_CHECKSUM = 619, r.NO_COMPRESSION = 620, r.NO_EVENT_LOSS = 621, r.NO_INFOMSGS = 622, r.NO_QUERYSTORE = 623, r.NO_STATISTICS = 624, r.NO_TRUNCATE = 625, r.NO_WAIT = 626, r.NTILE = 627, r.NTLM = 628, r.NULLIF = 629, r.NULL_ = 630, r.NULL_DOUBLE_QUOTE = 631, r.NUMANODE = 632, r.NUMBER = 633, r.NUMERIC_ROUNDABORT = 634, r.OBJECT = 635, r.OBJECTPROPERTY = 636, r.OBJECTPROPERTYEX = 637, r.OBJECT_DEFINITION = 638, r.OBJECT_ID = 639, r.OBJECT_NAME = 640, r.OBJECT_SCHEMA_NAME = 641, r.OF = 642, r.OFF = 643, r.OFFLINE = 644, r.OFFSET = 645, r.OFFSETS = 646, r.OLD_ACCOUNT = 647, r.OLD_PASSWORD = 648, r.ON = 649, r.ONLINE = 650, r.ONLY = 651, r.ON_FAILURE = 652, r.OPEN = 653, r.OPENDATASOURCE = 654, r.OPENJSON = 655, r.OPENQUERY = 656, r.OPENROWSET = 657, r.OPENXML = 658, r.OPEN_EXISTING = 659, r.OPERATIONS = 660, r.OPTIMISTIC = 661, r.OPTIMIZE = 662, r.OPTIMIZE_FOR_SEQUENTIAL_KEY = 663, r.OPTION = 664, r.OR = 665, r.ORDER = 666, r.ORIGINAL_DB_NAME = 667, r.ORIGINAL_LOGIN = 668, r.OUT = 669, r.OUTER = 670, r.OUTPUT = 671, r.OVER = 672, r.OVERRIDE = 673, r.OWNER = 674, r.OWNERSHIP = 675, r.PAD_INDEX = 676, r.PAGE = 677, r.PAGECOUNT = 678, r.PAGE_VERIFY = 679, r.PAGLOCK = 680, r.PARAMETERIZATION = 681, r.PARAM_NODE = 682, r.PARSE = 683, r.PARSENAME = 684, r.PARSEONLY = 685, r.PARTIAL = 686, r.PARTITION = 687, r.PARTITIONS = 688, r.PARTNER = 689, r.PASSWORD = 690, r.PATH = 691, r.PATINDEX = 692, r.PAUSE = 693, r.PDW_SHOWSPACEUSED = 694, r.PERCENT = 695, r.PERCENTILE_CONT = 696, r.PERCENTILE_DISC = 697, r.PERCENT_RANK = 698, r.PERMISSIONS = 699, r.PERMISSION_SET = 700, r.PERSISTED = 701, r.PERSIST_SAMPLE_PERCENT = 702, r.PER_CPU = 703, r.PER_DB = 704, r.PER_NODE = 705, r.PHYSICAL_ONLY = 706, r.PIVOT = 707, r.PLAN = 708, r.PLATFORM = 709, r.POISON_MESSAGE_HANDLING = 710, r.POLICY = 711, r.POOL = 712, r.PORT = 713, r.PRECEDING = 714, r.PRECISION = 715, r.PREDICATE = 716, r.PRIMARY = 717, r.PRIMARY_ROLE = 718, r.PRINT = 719, r.PRIOR = 720, r.PRIORITY = 721, r.PRIORITY_LEVEL = 722, r.PRIVATE = 723, r.PRIVATE_KEY = 724, r.PRIVILEGES = 725, r.PROC = 726, r.PROCCACHE = 727, r.PROCEDURE = 728, r.PROCEDURE_NAME = 729, r.PROCESS = 730, r.PROFILE = 731, r.PROPERTY = 732, r.PROVIDER = 733, r.PROVIDER_KEY_NAME = 734, r.PUBLIC = 735, r.PWDCOMPARE = 736, r.PWDENCRYPT = 737, r.PYTHON = 738, r.QUERY = 739, r.QUERY_SQUARE_BRACKET = 740, r.QUEUE = 741, r.QUEUE_DELAY = 742, r.QUOTED_IDENTIFIER = 743, r.QUOTENAME = 744, r.R = 745, r.RAISERROR = 746, r.RANDOMIZED = 747, r.RANGE = 748, r.RANK = 749, r.RAW = 750, r.RC2 = 751, r.RC4 = 752, r.RC4_128 = 753, r.READ = 754, r.READCOMMITTED = 755, r.READCOMMITTEDLOCK = 756, r.READONLY = 757, r.READPAST = 758, r.READTEXT = 759, r.READUNCOMMITTED = 760, r.READWRITE = 761, r.READ_COMMITTED_SNAPSHOT = 762, r.READ_ONLY = 763, r.READ_ONLY_ROUTING_LIST = 764, r.READ_WRITE = 765, r.READ_WRITE_FILEGROUPS = 766, r.REBUILD = 767, r.RECEIVE = 768, r.RECOMPILE = 769, r.RECONFIGURE = 770, r.RECOVERY = 771, r.RECURSIVE_TRIGGERS = 772, r.REFERENCES = 773, r.REGENERATE = 774, r.RELATED_CONVERSATION = 775, r.RELATED_CONVERSATION_GROUP = 776, r.RELATIVE = 777, r.REMOTE = 778, r.REMOTE_PROC_TRANSACTIONS = 779, r.REMOTE_SERVICE_NAME = 780, r.REMOVE = 781, r.REORGANIZE = 782, r.REPAIR_ALLOW_DATA_LOSS = 783, r.REPAIR_FAST = 784, r.REPAIR_REBUILD = 785, r.REPEATABLE = 786, r.REPEATABLEREAD = 787, r.REPLACE = 788, r.REPLICA = 789, r.REPLICATE = 790, r.REPLICATION = 791, r.REQUEST_MAX_CPU_TIME_SEC = 792, r.REQUEST_MAX_MEMORY_GRANT_PERCENT = 793, r.REQUEST_MEMORY_GRANT_TIMEOUT_SEC = 794, r.REQUIRED = 795, r.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT = 796, r.RESAMPLE = 797, r.RESERVE_DISK_SPACE = 798, r.RESET = 799, r.RESOURCE = 800, r.RESOURCES = 801, r.RESOURCE_MANAGER_LOCATION = 802, r.RESTART = 803, r.RESTORE = 804, r.RESTRICT = 805, r.RESTRICTED_USER = 806, r.RESUMABLE = 807, r.RESUME = 808, r.RETAINDAYS = 809, r.RETENTION = 810, r.RETURN = 811, r.RETURNS = 812, r.REVERSE = 813, r.REVERT = 814, r.REVOKE = 815, r.REWIND = 816, r.RIGHT = 817, r.ROBUST = 818, r.ROLE = 819, r.ROLLBACK = 820, r.ROOT = 821, r.ROUND_ROBIN = 822, r.ROUTE = 823, r.ROW = 824, r.ROWCOUNT = 825, r.ROWCOUNT_BIG = 826, r.ROWGUID = 827, r.ROWGUIDCOL = 828, r.ROWLOCK = 829, r.ROWS = 830, r.ROW_NUMBER = 831, r.RSA_1024 = 832, r.RSA_2048 = 833, r.RSA_3072 = 834, r.RSA_4096 = 835, r.RSA_512 = 836, r.RTRIM = 837, r.RULE = 838, r.SAFE = 839, r.SAFETY = 840, r.SAMPLE = 841, r.SAVE = 842, r.SCHEDULER = 843, r.SCHEMA = 844, r.SCHEMABINDING = 845, r.SCHEMA_ID = 846, r.SCHEMA_NAME = 847, r.SCHEME = 848, r.SCOPED = 849, r.SCOPE_IDENTITY = 850, r.SCRIPT = 851, r.SCROLL = 852, r.SCROLL_LOCKS = 853, r.SEARCH = 854, r.SECONDARY = 855, r.SECONDARY_ONLY = 856, r.SECONDARY_ROLE = 857, r.SECONDS = 858, r.SECRET = 859, r.SECURABLES = 860, r.SECURITY = 861, r.SECURITYAUDIT = 862, r.SECURITY_LOG = 863, r.SEEDING_MODE = 864, r.SELECT = 865, r.SELF = 866, r.SEMANTICKEYPHRASETABLE = 867, r.SEMANTICSIMILARITYDETAILSTABLE = 868, r.SEMANTICSIMILARITYTABLE = 869, r.SEMI_SENSITIVE = 870, r.SEND = 871, r.SENT = 872, r.SEQUENCE = 873, r.SEQUENCE_NUMBER = 874, r.SERIALIZABLE = 875, r.SERVER = 876, r.SERVERPROPERTY = 877, r.SERVICE = 878, r.SERVICEBROKER = 879, r.SERVICE_BROKER = 880, r.SERVICE_NAME = 881, r.SESSION = 882, r.SESSIONPROPERTY = 883, r.SESSION_CONTEXT = 884, r.SESSION_TIMEOUT = 885, r.SESSION_USER = 886, r.SET = 887, r.SETERROR = 888, r.SETS = 889, r.SETTINGS = 890, r.SETUSER = 891, r.SHARE = 892, r.SHARED = 893, r.SHOWCONTIG = 894, r.SHOWPLAN = 895, r.SHOWPLAN_ALL = 896, r.SHOWPLAN_TEXT = 897, r.SHOWPLAN_XML = 898, r.SHRINKLOG = 899, r.SHUTDOWN = 900, r.SID = 901, r.SIGNATURE = 902, r.SIMPLE = 903, r.SINGLE_USER = 904, r.SIZE = 905, r.SKIP_KEYWORD = 906, r.SMALLINT = 907, r.SNAPSHOT = 908, r.SOFTNUMA = 909, r.SOME = 910, r.SORT_IN_TEMPDB = 911, r.SOUNDEX = 912, r.SOURCE = 913, r.SPACE_KEYWORD = 914, r.SPARSE = 915, r.SPATIAL_WINDOW_MAX_CELLS = 916, r.SPECIFICATION = 917, r.SPLIT = 918, r.SQL = 919, r.SQLDUMPERFLAGS = 920, r.SQLDUMPERPATH = 921, r.SQLDUMPERTIMEOUT = 922, r.SQL_VARIANT_PROPERTY = 923, r.STANDBY = 924, r.START = 925, r.STARTED = 926, r.STARTUP_STATE = 927, r.START_DATE = 928, r.STATE = 929, r.STATIC = 930, r.STATISTICS = 931, r.STATISTICS_INCREMENTAL = 932, r.STATISTICS_NORECOMPUTE = 933, r.STATS = 934, r.STATS_DATE = 935, r.STATS_STREAM = 936, r.STATUS = 937, r.STATUSONLY = 938, r.STDEV = 939, r.STDEVP = 940, r.STOP = 941, r.STOPLIST = 942, r.STOPPED = 943, r.STOP_ON_ERROR = 944, r.STR = 945, r.STRING_AGG = 946, r.STRING_ESCAPE = 947, r.STUFF = 948, r.SUBJECT = 949, r.SUBSCRIBE = 950, r.SUBSCRIPTION = 951, r.SUBSTRING = 952, r.SUM = 953, r.SUPPORTED = 954, r.SUSER_ID = 955, r.SUSER_NAME = 956, r.SUSER_SID = 957, r.SUSER_SNAME = 958, r.SUSPEND = 959, r.SWITCH = 960, r.SYMMETRIC = 961, r.SYNCHRONOUS_COMMIT = 962, r.SYNONYM = 963, r.SYSTEM = 964, r.SYSTEM_USER = 965, r.TABLE = 966, r.TABLERESULTS = 967, r.TABLESAMPLE = 968, r.TABLOCK = 969, r.TABLOCKX = 970, r.TAKE = 971, r.TAPE = 972, r.TARGET = 973, r.TARGET_RECOVERY_TIME = 974, r.TB = 975, r.TCP = 976, r.TEXTIMAGE_ON = 977, r.TEXTSIZE = 978, r.THEN = 979, r.THROW = 980, r.TIES = 981, r.TIME = 982, r.TIMEOUT = 983, r.TIMER = 984, r.TINYINT = 985, r.TO = 986, r.TOP = 987, r.TORN_PAGE_DETECTION = 988, r.TOSTRING = 989, r.TRACE = 990, r.TRACKING = 991, r.TRACK_CAUSALITY = 992, r.TRAN = 993, r.TRANSACTION = 994, r.TRANSACTION_ID = 995, r.TRANSFER = 996, r.TRANSFORM_NOISE_WORDS = 997, r.TRANSLATE = 998, r.TRIGGER = 999, r.TRIM = 1e3, r.TRIPLE_DES = 1001, r.TRIPLE_DES_3KEY = 1002, r.TRUNCATE = 1003, r.TRUSTWORTHY = 1004, r.TRY = 1005, r.TRY_CAST = 1006, r.TSEQUAL = 1007, r.TSQL = 1008, r.TWO_DIGIT_YEAR_CUTOFF = 1009, r.TYPE = 1010, r.TYPEPROPERTY = 1011, r.TYPE_ID = 1012, r.TYPE_NAME = 1013, r.TYPE_WARNING = 1014, r.UNBOUNDED = 1015, r.UNCHECKED = 1016, r.UNCOMMITTED = 1017, r.UNICODE = 1018, r.UNION = 1019, r.UNIQUE = 1020, r.UNKNOWN = 1021, r.UNLIMITED = 1022, r.UNLOCK = 1023, r.UNMASK = 1024, r.UNPIVOT = 1025, r.UNSAFE = 1026, r.UOW = 1027, r.UPDATE = 1028, r.UPDATETEXT = 1029, r.UPDLOCK = 1030, r.UPPER = 1031, r.URL = 1032, r.USE = 1033, r.USED = 1034, r.USER = 1035, r.USER_ID = 1036, r.USER_NAME = 1037, r.USING = 1038, r.VALIDATION = 1039, r.VALID_XML = 1040, r.VALUE = 1041, r.VALUES = 1042, r.VALUE_SQUARE_BRACKET = 1043, r.VAR = 1044, r.VARBINARY_KEYWORD = 1045, r.VARP = 1046, r.VARYING = 1047, r.VERBOSELOGGING = 1048, r.VERIFY_CLONEDB = 1049, r.VERSION = 1050, r.VIEW = 1051, r.VIEWS = 1052, r.VIEW_METADATA = 1053, r.VISIBILITY = 1054, r.WAIT = 1055, r.WAITFOR = 1056, r.WAIT_AT_LOW_PRIORITY = 1057, r.WELL_FORMED_XML = 1058, r.WHEN = 1059, r.WHERE = 1060, r.WHILE = 1061, r.WINDOWS = 1062, r.WITH = 1063, r.WITHIN = 1064, r.WITHOUT = 1065, r.WITHOUT_ARRAY_WRAPPER = 1066, r.WITNESS = 1067, r.WORK = 1068, r.WORKLOAD = 1069, r.WRITETEXT = 1070, r.XACT_ABORT = 1071, r.XACT_STATE = 1072, r.XLOCK = 1073, r.XML = 1074, r.XMLDATA = 1075, r.XMLNAMESPACES = 1076, r.XMLSCHEMA = 1077, r.XML_COMPRESSION = 1078, r.XSINIL = 1079, r.ZONE = 1080, r.ABS = 1081, r.ACOS = 1082, r.ASIN = 1083, r.ATAN = 1084, r.ATN2 = 1085, r.CEILING = 1086, r.COS = 1087, r.COT = 1088, r.DEGREES = 1089, r.EXP = 1090, r.FLOOR = 1091, r.LOG10 = 1092, r.PI = 1093, r.POWER = 1094, r.RADIANS = 1095, r.RAND = 1096, r.ROUND = 1097, r.SIGN = 1098, r.SIN = 1099, r.SQRT = 1100, r.SQUARE = 1101, r.TAN = 1102, r.CURRENT_TIMEZONE = 1103, r.CURRENT_TIMEZONE_ID = 1104, r.DATE_BUCKET = 1105, r.DATEDIFF_BIG = 1106, r.DATEFROMPARTS = 1107, r.DATETIME2FROMPARTS = 1108, r.DATETIMEFROMPARTS = 1109, r.DATETIMEOFFSETFROMPARTS = 1110, r.DATETRUNC = 1111, r.DAY = 1112, r.EOMONTH = 1113, r.ISDATE = 1114, r.MONTH = 1115, r.SMALLDATETIMEFROMPARTS = 1116, r.SWITCHOFFSET = 1117, r.SYSDATETIME = 1118, r.SYSDATETIMEOFFSET = 1119, r.SYSUTCDATETIME = 1120, r.TIMEFROMPARTS = 1121, r.TODATETIMEOFFSET = 1122, r.YEAR = 1123, r.QUARTER = 1124, r.DAYOFYEAR = 1125, r.WEEK = 1126, r.HOUR = 1127, r.MINUTE = 1128, r.SECOND = 1129, r.MILLISECOND = 1130, r.MICROSECOND = 1131, r.NANOSECOND = 1132, r.TZOFFSET = 1133, r.ISO_WEEK = 1134, r.WEEKDAY = 1135, r.YEAR_ABBR = 1136, r.QUARTER_ABBR = 1137, r.MONTH_ABBR = 1138, r.DAYOFYEAR_ABBR = 1139, r.DAY_ABBR = 1140, r.WEEK_ABBR = 1141, r.HOUR_ABBR = 1142, r.MINUTE_ABBR = 1143, r.SECOND_ABBR = 1144, r.MILLISECOND_ABBR = 1145, r.MICROSECOND_ABBR = 1146, r.NANOSECOND_ABBR = 1147, r.TZOFFSET_ABBR = 1148, r.ISO_WEEK_ABBR = 1149, r.WEEKDAY_ABBR = 1150, r.SP_EXECUTESQL = 1151, r.VARCHAR = 1152, r.NVARCHAR = 1153, r.DISK_DRIVE = 1154, r.DOLLAR_ACTION = 1155, r.CURSOR_ROWS = 1156, r.FETCH_STATUS = 1157, r.IPV4_ADDR = 1158, r.SPACE = 1159, r.COMMENT = 1160, r.LINE_COMMENT = 1161, r.DOUBLE_QUOTE_ID = 1162, r.DOUBLE_QUOTE_BLANK = 1163, r.SINGLE_QUOTE = 1164, r.SQUARE_BRACKET_ID = 1165, r.LOCAL_ID = 1166, r.TEMP_ID = 1167, r.DECIMAL = 1168, r.ID = 1169, r.STRING = 1170, r.BINARY = 1171, r.FLOAT = 1172, r.REAL = 1173, r.EQUAL = 1174, r.GREATER = 1175, r.LESS = 1176, r.EXCLAMATION = 1177, r.PLUS_ASSIGN = 1178, r.MINUS_ASSIGN = 1179, r.MULT_ASSIGN = 1180, r.DIV_ASSIGN = 1181, r.MOD_ASSIGN = 1182, r.AND_ASSIGN = 1183, r.XOR_ASSIGN = 1184, r.OR_ASSIGN = 1185, r.DOUBLE_BAR = 1186, r.DOT = 1187, r.UNDERLINE = 1188, r.AT = 1189, r.SHARP = 1190, r.DOLLAR = 1191, r.LR_BRACKET = 1192, r.RR_BRACKET = 1193, r.COMMA = 1194, r.SEMI = 1195, r.COLON = 1196, r.DOUBLE_COLON = 1197, r.STAR = 1198, r.DIVIDE = 1199, r.MODULE = 1200, r.PLUS = 1201, r.MINUS = 1202, r.BIT_NOT = 1203, r.BIT_OR = 1204, r.BIT_AND = 1205, r.BIT_XOR = 1206, r.PLACEHOLDER = 1207;
|
|
124317
|
-
//#endregion
|
|
124318
124317
|
export { r as default };
|