@typed-sql/mysql 2.0.0-rc.1 → 2.1.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +126 -0
- package/README.md +12 -0
- package/dist/packages/mysql/src/bulk.d.ts.map +1 -1
- package/dist/packages/mysql/src/bulk.js +9 -3
- package/dist/packages/mysql/src/bulk.js.map +1 -1
- package/dist/packages/mysql/src/capabilities.d.ts +30 -0
- package/dist/packages/mysql/src/capabilities.d.ts.map +1 -0
- package/dist/packages/mysql/src/capabilities.js +233 -0
- package/dist/packages/mysql/src/capabilities.js.map +1 -0
- package/dist/packages/mysql/src/catalog/generated/26.7.d.ts +4 -0
- package/dist/packages/mysql/src/catalog/generated/26.7.d.ts.map +1 -0
- package/dist/packages/mysql/src/catalog/generated/26.7.js +3 -0
- package/dist/packages/mysql/src/catalog/generated/26.7.js.map +1 -0
- package/dist/packages/mysql/src/catalog/generated/8.4.d.ts +4 -0
- package/dist/packages/mysql/src/catalog/generated/8.4.d.ts.map +1 -0
- package/dist/packages/mysql/src/catalog/generated/8.4.js +3 -0
- package/dist/packages/mysql/src/catalog/generated/8.4.js.map +1 -0
- package/dist/packages/mysql/src/catalog/generated/9.7.d.ts +4 -0
- package/dist/packages/mysql/src/catalog/generated/9.7.d.ts.map +1 -0
- package/dist/packages/mysql/src/catalog/generated/9.7.js +3 -0
- package/dist/packages/mysql/src/catalog/generated/9.7.js.map +1 -0
- package/dist/packages/mysql/src/catalog/index.d.ts +15 -0
- package/dist/packages/mysql/src/catalog/index.d.ts.map +1 -0
- package/dist/packages/mysql/src/catalog/index.js +129 -0
- package/dist/packages/mysql/src/catalog/index.js.map +1 -0
- package/dist/packages/mysql/src/catalog/types.d.ts +50 -0
- package/dist/packages/mysql/src/catalog/types.d.ts.map +1 -0
- package/dist/packages/mysql/src/catalog/types.js +2 -0
- package/dist/packages/mysql/src/catalog/types.js.map +1 -0
- package/dist/packages/mysql/src/index.d.ts +9 -1
- package/dist/packages/mysql/src/index.d.ts.map +1 -1
- package/dist/packages/mysql/src/index.js +37 -15
- package/dist/packages/mysql/src/index.js.map +1 -1
- package/dist/packages/mysql/src/mysql2.d.ts +9 -1
- package/dist/packages/mysql/src/mysql2.d.ts.map +1 -1
- package/dist/packages/mysql/src/mysql2.js +86 -3
- package/dist/packages/mysql/src/mysql2.js.map +1 -1
- package/dist/packages/mysql/src/parser/index.d.ts +8 -0
- package/dist/packages/mysql/src/parser/index.d.ts.map +1 -0
- package/dist/packages/mysql/src/parser/index.js +4 -0
- package/dist/packages/mysql/src/parser/index.js.map +1 -0
- package/dist/packages/mysql/src/parser/parser.d.ts +14 -0
- package/dist/packages/mysql/src/parser/parser.d.ts.map +1 -0
- package/dist/packages/mysql/src/parser/parser.js +1276 -0
- package/dist/packages/mysql/src/parser/parser.js.map +1 -0
- package/dist/packages/mysql/src/parser/tokenizer.d.ts +18 -0
- package/dist/packages/mysql/src/parser/tokenizer.d.ts.map +1 -0
- package/dist/packages/mysql/src/parser/tokenizer.js +385 -0
- package/dist/packages/mysql/src/parser/tokenizer.js.map +1 -0
- package/dist/packages/mysql/src/parser/types.d.ts +313 -0
- package/dist/packages/mysql/src/parser/types.d.ts.map +1 -0
- package/dist/packages/mysql/src/parser/types.js +9 -0
- package/dist/packages/mysql/src/parser/types.js.map +1 -0
- package/dist/packages/mysql/src/parser/walk.d.ts +13 -0
- package/dist/packages/mysql/src/parser/walk.d.ts.map +1 -0
- package/dist/packages/mysql/src/parser/walk.js +190 -0
- package/dist/packages/mysql/src/parser/walk.js.map +1 -0
- package/dist/packages/mysql/src/prepared.d.ts +6 -3
- package/dist/packages/mysql/src/prepared.d.ts.map +1 -1
- package/dist/packages/mysql/src/prepared.js +15 -14
- package/dist/packages/mysql/src/prepared.js.map +1 -1
- package/dist/packages/mysql/src/provider.d.ts +21 -5
- package/dist/packages/mysql/src/provider.d.ts.map +1 -1
- package/dist/packages/mysql/src/provider.js +647 -44
- package/dist/packages/mysql/src/provider.js.map +1 -1
- package/dist/packages/mysql/src/resolver.d.ts +5 -1
- package/dist/packages/mysql/src/resolver.d.ts.map +1 -1
- package/dist/packages/mysql/src/resolver.js +1207 -95
- package/dist/packages/mysql/src/resolver.js.map +1 -1
- package/dist/packages/mysql/src/routing.d.ts.map +1 -1
- package/dist/packages/mysql/src/routing.js +3 -2
- package/dist/packages/mysql/src/routing.js.map +1 -1
- package/dist/packages/mysql/src/runtime.d.ts +33 -0
- package/dist/packages/mysql/src/runtime.d.ts.map +1 -1
- package/dist/packages/mysql/src/runtime.js +166 -12
- package/dist/packages/mysql/src/runtime.js.map +1 -1
- package/dist/packages/mysql/src/semantics.d.ts +1 -1
- package/dist/packages/mysql/src/semantics.d.ts.map +1 -1
- package/dist/packages/mysql/src/semantics.js +27 -3
- package/dist/packages/mysql/src/semantics.js.map +1 -1
- package/dist/packages/mysql/src/support.d.ts +43 -0
- package/dist/packages/mysql/src/support.d.ts.map +1 -0
- package/dist/packages/mysql/src/support.js +102 -0
- package/dist/packages/mysql/src/support.js.map +1 -0
- package/dist/packages/mysql/src/type-policy.d.ts +2 -0
- package/dist/packages/mysql/src/type-policy.d.ts.map +1 -1
- package/dist/packages/mysql/src/type-policy.js +24 -50
- package/dist/packages/mysql/src/type-policy.js.map +1 -1
- package/package.json +8 -5
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const catalog = JSON.parse(`{"coercions":[{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"bigint","target":"decimal"},{"contexts":["explicit","string"],"safety":"lossless","source":"bigint","target":"varchar"},{"contexts":["assignment","comparison","explicit","string"],"safety":"lossless","source":"binary","target":"varbinary"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"boolean","target":"bigint"},{"contexts":["assignment","comparison","explicit","string"],"safety":"lossless","source":"char","target":"varchar"},{"contexts":["assignment","comparison","explicit"],"safety":"lossless","source":"date","target":"datetime"},{"contexts":["explicit","string"],"safety":"lossless","source":"date","target":"varchar"},{"contexts":["assignment","explicit"],"safety":"lossy","source":"datetime","target":"date"},{"contexts":["explicit","string"],"safety":"lossless","source":"datetime","target":"varchar"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossy","source":"decimal","target":"double"},{"contexts":["explicit","string"],"safety":"lossless","source":"decimal","target":"varchar"},{"contexts":["explicit","string"],"safety":"lossy","source":"double","target":"varchar"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"float","target":"double"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"int","target":"bigint"},{"contexts":["comparison","explicit","string"],"safety":"warning","source":"json","target":"varchar"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"mediumint","target":"bigint"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"smallint","target":"bigint"},{"contexts":["arithmetic","comparison","explicit"],"safety":"warning","source":"text","target":"double"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"tinyint","target":"bigint"},{"contexts":["assignment","comparison","explicit","string"],"safety":"lossless","source":"varbinary","target":"blob"},{"contexts":["arithmetic","comparison","explicit"],"safety":"warning","source":"varchar","target":"double"},{"contexts":["assignment","comparison","explicit","string"],"safety":"lossless","source":"varchar","target":"text"}],"collations":[{"binary":true,"characterSet":"ascii","name":"ascii_bin","unicode":false},{"binary":false,"characterSet":"ascii","name":"ascii_general_ci","unicode":false},{"binary":true,"characterSet":"binary","name":"binary","unicode":false},{"binary":true,"characterSet":"latin1","name":"latin1_bin","unicode":false},{"binary":false,"characterSet":"latin1","name":"latin1_swedish_ci","unicode":false},{"binary":true,"characterSet":"utf8mb3","name":"utf8mb3_bin","unicode":true},{"binary":false,"characterSet":"utf8mb3","name":"utf8mb3_general_ci","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_0900_ai_ci","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_0900_as_ci","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_0900_as_cs","unicode":true},{"binary":true,"characterSet":"utf8mb4","name":"utf8mb4_0900_bin","unicode":true},{"binary":true,"characterSet":"utf8mb4","name":"utf8mb4_bin","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_general_ci","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_unicode_ci","unicode":true}],"formatVersion":1,"operators":[{"name":"bitwise","operators":["&","<<",">>","^","|"],"result":"bitwise"},{"name":"comparison","operators":["!=","<","<=","<=>","<>","=",">",">=","IS","IS NOT","LIKE","NOT LIKE"],"result":"boolean"},{"name":"json","operators":["->"],"result":"json"},{"name":"json-text","operators":["->>"],"result":"json-text"},{"name":"logical","operators":["AND","OR","XOR"],"result":"boolean"},{"name":"numeric","operators":["%","*","+","-","/"],"result":"numeric"}],"routines":[{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":0,"name":"bigint-window","nullability":"never","result":"bigint","routines":["DENSE_RANK","NTILE","RANK","ROW_NUMBER"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"bytes","nullability":"arguments","result":"bytes","routines":["FROM_BASE64","RANDOM_BYTES","UNHEX"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":null,"minimumArguments":1,"name":"coalesce","nullability":"arguments","result":"coalesce","routines":["COALESCE"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"coercibility","nullability":"never","result":"coercibility","routines":["COERCIBILITY"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":null,"minimumArguments":1,"name":"concat","nullability":"arguments","result":"concat","routines":["CONCAT"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"count","nullability":"never","result":"count","routines":["COUNT"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":0,"name":"date","nullability":"never","result":"date","routines":["CURDATE","CURRENT_DATE","CURRENT_TIMESTAMP","NOW"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"decimal-aggregate","nullability":"always","result":"decimal-aggregate","routines":["AVG","SUM"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":2,"minimumArguments":0,"name":"double","nullability":"arguments","result":"double","routines":["ABS","ACOS","ASIN","ATAN","ATAN2","CEIL","CEILING","COS","COT","EXP","FLOOR","LN","LOG","LOG10","LOG2","POW","POWER","RAND","ROUND","SIN","SQRT","TAN"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":0,"minimumArguments":0,"name":"double-window","nullability":"never","result":"double","routines":["CUME_DIST","PERCENT_RANK"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"extrema","nullability":"always","result":"extrema","routines":["MAX","MIN"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":2,"minimumArguments":1,"name":"first-argument","nullability":"arguments","result":"first-argument","routines":["ANY_VALUE","IFNULL","NULLIF"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":3,"minimumArguments":1,"name":"integer","nullability":"arguments","result":"integer","routines":["ASCII","BIT_LENGTH","CHARACTER_LENGTH","CHAR_LENGTH","JSON_LENGTH","LENGTH","LOCATE","SIGN"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":null,"minimumArguments":1,"name":"json","nullability":"arguments","result":"json","routines":["JSON_ARRAY","JSON_ARRAYAGG","JSON_EXTRACT","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_VALUE"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":null,"minimumArguments":0,"name":"string","nullability":"arguments","result":"string","routines":["CHARSET","COLLATION","CONCAT_WS","CURRENT_USER","DATABASE","GROUP_CONCAT","LCASE","LOWER","REPLACE","SUBSTR","SUBSTRING","TRIM","UCASE","UPPER","USER","UUID","VERSION"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":3,"minimumArguments":1,"name":"value-window","nullability":"arguments","result":"value-window","routines":["FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE"]}],"series":"8.4","types":[{"aliases":[],"category":"numeric-integer","mapping":"bigint","name":"bigint","signedness":"both"},{"aliases":[],"category":"binary","mapping":"bytes","name":"binary","signedness":"none"},{"aliases":[],"category":"binary","mapping":"bytes","name":"bit","signedness":"none"},{"aliases":["longblob","mediumblob","tinyblob"],"category":"binary","mapping":"bytes","name":"blob","signedness":"none"},{"aliases":["bool"],"category":"boolean","mapping":"boolean","name":"boolean","signedness":"none"},{"aliases":["character"],"category":"string","mapping":"string","name":"char","signedness":"none"},{"aliases":[],"category":"temporal","mapping":"date","name":"date","signedness":"none"},{"aliases":["timestamp"],"category":"temporal","mapping":"date","name":"datetime","signedness":"none"},{"aliases":["dec","fixed","numeric"],"category":"numeric-decimal","mapping":"numeric","name":"decimal","signedness":"both"},{"aliases":["real"],"category":"numeric-approximate","mapping":"number","name":"double","signedness":"both"},{"aliases":[],"category":"collection","mapping":"string","name":"enum","signedness":"none"},{"aliases":[],"category":"numeric-approximate","mapping":"number","name":"float","signedness":"both"},{"aliases":["geometrycollection","linestring","multilinestring","multipoint","multipolygon","point","polygon"],"category":"spatial","mapping":"bytes","name":"geometry","signedness":"none"},{"aliases":["integer"],"category":"numeric-integer","mapping":"number","name":"int","signedness":"both"},{"aliases":[],"category":"json","mapping":"json","name":"json","signedness":"none"},{"aliases":[],"category":"numeric-integer","mapping":"number","name":"mediumint","signedness":"both"},{"aliases":[],"category":"collection","mapping":"string","name":"set","signedness":"none"},{"aliases":[],"category":"numeric-integer","mapping":"number","name":"smallint","signedness":"both"},{"aliases":["longtext","mediumtext","tinytext"],"category":"string","mapping":"string","name":"text","signedness":"none"},{"aliases":[],"category":"temporal","mapping":"string","name":"time","signedness":"none"},{"aliases":[],"category":"numeric-integer","mapping":"number","name":"tinyint","signedness":"both"},{"aliases":[],"category":"binary","mapping":"bytes","name":"varbinary","signedness":"none"},{"aliases":["character varying"],"category":"string","mapping":"string","name":"varchar","signedness":"none"},{"aliases":[],"category":"temporal","mapping":"number","name":"year","signedness":"none"}],"revision":"sha256:50c82ad62bcb90a45c7a8854c1fab535e2a9de97d539b83fd928dcc9360bd174"}`);
|
|
2
|
+
export default catalog;
|
|
3
|
+
//# sourceMappingURL=8.4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"8.4.js","sourceRoot":"","sources":["../../../../../../src/catalog/generated/8.4.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CACxB,gpUAAgpU,CAC7nU,CAAC;AAEtB,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"9.7.d.ts","sourceRoot":"","sources":["../../../../../../src/catalog/generated/9.7.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,QAAA,MAAM,OAAO,EAER,gBAAgB,CAAC;eAEP,OAAO"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const catalog = JSON.parse(`{"coercions":[{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"bigint","target":"decimal"},{"contexts":["explicit","string"],"safety":"lossless","source":"bigint","target":"varchar"},{"contexts":["assignment","comparison","explicit","string"],"safety":"lossless","source":"binary","target":"varbinary"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"boolean","target":"bigint"},{"contexts":["assignment","comparison","explicit","string"],"safety":"lossless","source":"char","target":"varchar"},{"contexts":["assignment","comparison","explicit"],"safety":"lossless","source":"date","target":"datetime"},{"contexts":["explicit","string"],"safety":"lossless","source":"date","target":"varchar"},{"contexts":["assignment","explicit"],"safety":"lossy","source":"datetime","target":"date"},{"contexts":["explicit","string"],"safety":"lossless","source":"datetime","target":"varchar"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossy","source":"decimal","target":"double"},{"contexts":["explicit","string"],"safety":"lossless","source":"decimal","target":"varchar"},{"contexts":["explicit","string"],"safety":"lossy","source":"double","target":"varchar"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"float","target":"double"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"int","target":"bigint"},{"contexts":["comparison","explicit","string"],"safety":"warning","source":"json","target":"varchar"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"mediumint","target":"bigint"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"smallint","target":"bigint"},{"contexts":["arithmetic","comparison","explicit"],"safety":"warning","source":"text","target":"double"},{"contexts":["arithmetic","assignment","comparison","explicit"],"safety":"lossless","source":"tinyint","target":"bigint"},{"contexts":["assignment","comparison","explicit","string"],"safety":"lossless","source":"varbinary","target":"blob"},{"contexts":["arithmetic","comparison","explicit"],"safety":"warning","source":"varchar","target":"double"},{"contexts":["assignment","comparison","explicit","string"],"safety":"lossless","source":"varchar","target":"text"}],"collations":[{"binary":true,"characterSet":"ascii","name":"ascii_bin","unicode":false},{"binary":false,"characterSet":"ascii","name":"ascii_general_ci","unicode":false},{"binary":true,"characterSet":"binary","name":"binary","unicode":false},{"binary":true,"characterSet":"latin1","name":"latin1_bin","unicode":false},{"binary":false,"characterSet":"latin1","name":"latin1_swedish_ci","unicode":false},{"binary":true,"characterSet":"utf8mb3","name":"utf8mb3_bin","unicode":true},{"binary":false,"characterSet":"utf8mb3","name":"utf8mb3_general_ci","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_0900_ai_ci","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_0900_as_ci","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_0900_as_cs","unicode":true},{"binary":true,"characterSet":"utf8mb4","name":"utf8mb4_0900_bin","unicode":true},{"binary":true,"characterSet":"utf8mb4","name":"utf8mb4_bin","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_general_ci","unicode":true},{"binary":false,"characterSet":"utf8mb4","name":"utf8mb4_unicode_ci","unicode":true}],"formatVersion":1,"operators":[{"name":"bitwise","operators":["&","<<",">>","^","|"],"result":"bitwise"},{"name":"comparison","operators":["!=","<","<=","<=>","<>","=",">",">=","IS","IS NOT","LIKE","NOT LIKE"],"result":"boolean"},{"name":"json","operators":["->"],"result":"json"},{"name":"json-text","operators":["->>"],"result":"json-text"},{"name":"logical","operators":["AND","OR","XOR"],"result":"boolean"},{"name":"numeric","operators":["%","*","+","-","/"],"result":"numeric"}],"routines":[{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":0,"name":"bigint-window","nullability":"never","result":"bigint","routines":["DENSE_RANK","NTILE","RANK","ROW_NUMBER"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"bytes","nullability":"arguments","result":"bytes","routines":["FROM_BASE64","RANDOM_BYTES","UNHEX"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":null,"minimumArguments":1,"name":"coalesce","nullability":"arguments","result":"coalesce","routines":["COALESCE"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"coercibility","nullability":"never","result":"coercibility","routines":["COERCIBILITY"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":null,"minimumArguments":1,"name":"concat","nullability":"arguments","result":"concat","routines":["CONCAT"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"count","nullability":"never","result":"count","routines":["COUNT"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":0,"name":"date","nullability":"never","result":"date","routines":["CURDATE","CURRENT_DATE","CURRENT_TIMESTAMP","NOW"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"decimal-aggregate","nullability":"always","result":"decimal-aggregate","routines":["AVG","SUM"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":2,"minimumArguments":0,"name":"double","nullability":"arguments","result":"double","routines":["ABS","ACOS","ASIN","ATAN","ATAN2","CEIL","CEILING","COS","COT","EXP","FLOOR","LN","LOG","LOG10","LOG2","POW","POWER","RAND","ROUND","SIN","SQRT","TAN"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":0,"minimumArguments":0,"name":"double-window","nullability":"never","result":"double","routines":["CUME_DIST","PERCENT_RANK"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"extrema","nullability":"always","result":"extrema","routines":["MAX","MIN"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":2,"minimumArguments":1,"name":"first-argument","nullability":"arguments","result":"first-argument","routines":["ANY_VALUE","IFNULL","NULLIF"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":3,"minimumArguments":1,"name":"integer","nullability":"arguments","result":"integer","routines":["ASCII","BIT_LENGTH","CHARACTER_LENGTH","CHAR_LENGTH","JSON_LENGTH","LENGTH","LOCATE","SIGN"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":null,"minimumArguments":1,"name":"json","nullability":"arguments","result":"json","routines":["JSON_ARRAY","JSON_ARRAYAGG","JSON_EXTRACT","JSON_OBJECT","JSON_OBJECTAGG","JSON_QUERY","JSON_VALUE"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":null,"minimumArguments":0,"name":"string","nullability":"arguments","result":"string","routines":["CHARSET","COLLATION","CONCAT_WS","CURRENT_USER","DATABASE","GROUP_CONCAT","LCASE","LOWER","REPLACE","SUBSTR","SUBSTRING","TRIM","UCASE","UPPER","USER","UUID","VERSION"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":3,"minimumArguments":1,"name":"value-window","nullability":"arguments","result":"value-window","routines":["FIRST_VALUE","LAG","LAST_VALUE","LEAD","NTH_VALUE"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"vector-dimension","nullability":"arguments","result":"integer","routines":["VECTOR_DIM"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"vector-from-string","nullability":"arguments","result":"vector","routines":["STRING_TO_VECTOR","TO_VECTOR"]},{"editions":["commercial","community","enterprise","source"],"maximumArguments":1,"minimumArguments":1,"name":"vector-to-string","nullability":"arguments","result":"string","routines":["FROM_VECTOR","VECTOR_TO_STRING"]}],"series":"9.7","types":[{"aliases":[],"category":"numeric-integer","mapping":"bigint","name":"bigint","signedness":"both"},{"aliases":[],"category":"binary","mapping":"bytes","name":"binary","signedness":"none"},{"aliases":[],"category":"binary","mapping":"bytes","name":"bit","signedness":"none"},{"aliases":["longblob","mediumblob","tinyblob"],"category":"binary","mapping":"bytes","name":"blob","signedness":"none"},{"aliases":["bool"],"category":"boolean","mapping":"boolean","name":"boolean","signedness":"none"},{"aliases":["character"],"category":"string","mapping":"string","name":"char","signedness":"none"},{"aliases":[],"category":"temporal","mapping":"date","name":"date","signedness":"none"},{"aliases":["timestamp"],"category":"temporal","mapping":"date","name":"datetime","signedness":"none"},{"aliases":["dec","fixed","numeric"],"category":"numeric-decimal","mapping":"numeric","name":"decimal","signedness":"both"},{"aliases":["real"],"category":"numeric-approximate","mapping":"number","name":"double","signedness":"both"},{"aliases":[],"category":"collection","mapping":"string","name":"enum","signedness":"none"},{"aliases":[],"category":"numeric-approximate","mapping":"number","name":"float","signedness":"both"},{"aliases":["geometrycollection","linestring","multilinestring","multipoint","multipolygon","point","polygon"],"category":"spatial","mapping":"bytes","name":"geometry","signedness":"none"},{"aliases":["integer"],"category":"numeric-integer","mapping":"number","name":"int","signedness":"both"},{"aliases":[],"category":"json","mapping":"json","name":"json","signedness":"none"},{"aliases":[],"category":"numeric-integer","mapping":"number","name":"mediumint","signedness":"both"},{"aliases":[],"category":"collection","mapping":"string","name":"set","signedness":"none"},{"aliases":[],"category":"numeric-integer","mapping":"number","name":"smallint","signedness":"both"},{"aliases":["longtext","mediumtext","tinytext"],"category":"string","mapping":"string","name":"text","signedness":"none"},{"aliases":[],"category":"temporal","mapping":"string","name":"time","signedness":"none"},{"aliases":[],"category":"numeric-integer","mapping":"number","name":"tinyint","signedness":"both"},{"aliases":[],"category":"binary","mapping":"bytes","name":"varbinary","signedness":"none"},{"aliases":["character varying"],"category":"string","mapping":"string","name":"varchar","signedness":"none"},{"aliases":[],"category":"vector","mapping":"bytes","name":"vector","signedness":"none"},{"aliases":[],"category":"temporal","mapping":"number","name":"year","signedness":"none"}],"revision":"sha256:ac6c29a80f62ea62b506a79004cc5ad6a97cf0053a4b6a9f70e7d8c96a0ad586"}`);
|
|
2
|
+
export default catalog;
|
|
3
|
+
//# sourceMappingURL=9.7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"9.7.js","sourceRoot":"","sources":["../../../../../../src/catalog/generated/9.7.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CACxB,02VAA02V,CACv1V,CAAC;AAEtB,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { SchemaSnapshot } from "@typed-sql/schema";
|
|
2
|
+
import type { MySqlCatalogCoercion, MySqlCatalogCollation, MySqlCatalogOperatorFamily, MySqlCatalogRoutineFamily, MySqlCatalogType, MySqlCoercionContext, MySqlCoreCatalog } from "./types.js";
|
|
3
|
+
export type { MySqlCatalogCoercion, MySqlCatalogCollation, MySqlCatalogOperatorFamily, MySqlCatalogRoutineFamily, MySqlCatalogType, MySqlCatalogTypeMapping, MySqlCoercionContext, MySqlCoercionSafety, MySqlCoreCatalog, MySqlOperatorResultRule, MySqlRoutineResultRule, MySqlTypeCategory, } from "./types.js";
|
|
4
|
+
export declare const MYSQL_CORE_CATALOG_FORMAT_VERSION: 1;
|
|
5
|
+
export declare function normalizeMySqlType(value: string): string;
|
|
6
|
+
export declare function mySqlCoreCatalog(series: string): MySqlCoreCatalog | undefined;
|
|
7
|
+
export declare function mySqlCoreCatalogForSchema(schema: SchemaSnapshot | undefined): MySqlCoreCatalog | undefined;
|
|
8
|
+
export declare function mySqlCatalogType(databaseType: string, schema?: SchemaSnapshot): MySqlCatalogType | undefined;
|
|
9
|
+
export declare function mySqlCatalogCoercion(source: string, target: string, schema?: SchemaSnapshot): MySqlCatalogCoercion | undefined;
|
|
10
|
+
export declare function mySqlCatalogCanCoerce(source: string, target: string, context: MySqlCoercionContext, schema?: SchemaSnapshot): boolean;
|
|
11
|
+
export declare function mySqlCatalogOperator(operator: string, schema?: SchemaSnapshot): MySqlCatalogOperatorFamily | undefined;
|
|
12
|
+
export declare function mySqlCatalogRoutine(routine: string, schema?: SchemaSnapshot): MySqlCatalogRoutineFamily | undefined;
|
|
13
|
+
export declare function mySqlCatalogCollation(collation: string, schema?: SchemaSnapshot): MySqlCatalogCollation | undefined;
|
|
14
|
+
export declare function mySqlCatalogHasRoutineInAnotherSeries(routine: string, schema?: SchemaSnapshot): boolean;
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/catalog/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKxD,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,iCAAiC,EAAG,CAAU,CAAC;AA8E5D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CASxD;AAQD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAE7E;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAG1G;AAQD,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,gBAAgB,GAAG,SAAS,CAG5G;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,cAAc,GACtB,oBAAoB,GAAG,SAAS,CAOlC;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,oBAAoB,EAC7B,MAAM,CAAC,EAAE,cAAc,GACtB,OAAO,CAKT;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,cAAc,GACtB,0BAA0B,GAAG,SAAS,CAGxC;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,yBAAyB,GAAG,SAAS,CAGnH;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,qBAAqB,GAAG,SAAS,CAGnH;AAED,wBAAgB,qCAAqC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAIvG"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { parseMySqlVersion } from "../support.js";
|
|
2
|
+
import catalog84 from "./generated/8.4.js";
|
|
3
|
+
import catalog97 from "./generated/9.7.js";
|
|
4
|
+
import catalog267 from "./generated/26.7.js";
|
|
5
|
+
export const MYSQL_CORE_CATALOG_FORMAT_VERSION = 1;
|
|
6
|
+
function deepFreeze(value, seen = new Set()) {
|
|
7
|
+
if (typeof value !== "object" || value === null || seen.has(value))
|
|
8
|
+
return value;
|
|
9
|
+
seen.add(value);
|
|
10
|
+
for (const child of Object.values(value))
|
|
11
|
+
deepFreeze(child, seen);
|
|
12
|
+
return Object.freeze(value);
|
|
13
|
+
}
|
|
14
|
+
const catalogs = new Map([catalog84, catalog97, catalog267].map((catalog) => [catalog.series, deepFreeze(catalog)]));
|
|
15
|
+
const indexes = new WeakMap();
|
|
16
|
+
function withoutTypeParameters(value) {
|
|
17
|
+
const parts = [];
|
|
18
|
+
let offset = 0;
|
|
19
|
+
while (offset < value.length) {
|
|
20
|
+
const opening = value.indexOf("(", offset);
|
|
21
|
+
if (opening < 0) {
|
|
22
|
+
parts.push(value.slice(offset));
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
const closing = value.indexOf(")", opening + 1);
|
|
26
|
+
if (closing < 0) {
|
|
27
|
+
parts.push(value.slice(offset));
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
parts.push(value.slice(offset, opening));
|
|
31
|
+
offset = closing + 1;
|
|
32
|
+
}
|
|
33
|
+
return parts.join("");
|
|
34
|
+
}
|
|
35
|
+
function collapseWhitespace(value) {
|
|
36
|
+
const characters = [];
|
|
37
|
+
let pendingSpace = false;
|
|
38
|
+
for (const character of value) {
|
|
39
|
+
if (character.trim().length === 0) {
|
|
40
|
+
pendingSpace = characters.length > 0;
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
if (pendingSpace)
|
|
44
|
+
characters.push(" ");
|
|
45
|
+
characters.push(character);
|
|
46
|
+
pendingSpace = false;
|
|
47
|
+
}
|
|
48
|
+
return characters.join("");
|
|
49
|
+
}
|
|
50
|
+
function index(catalog) {
|
|
51
|
+
const cached = indexes.get(catalog);
|
|
52
|
+
if (cached !== undefined)
|
|
53
|
+
return cached;
|
|
54
|
+
const created = {
|
|
55
|
+
types: new Map(catalog.types.flatMap((type) => [type.name, ...type.aliases].map((alias) => [alias, type]))),
|
|
56
|
+
coercions: new Map(catalog.coercions.map((coercion) => [`${coercion.source}>${coercion.target}`, coercion])),
|
|
57
|
+
operators: new Map(catalog.operators.flatMap((family) => family.operators.map((operator) => [operator, family]))),
|
|
58
|
+
routines: new Map(catalog.routines.flatMap((family) => family.routines.map((routine) => [routine, family]))),
|
|
59
|
+
collations: new Map(catalog.collations.map((collation) => [collation.name, collation])),
|
|
60
|
+
};
|
|
61
|
+
indexes.set(catalog, created);
|
|
62
|
+
return created;
|
|
63
|
+
}
|
|
64
|
+
export function normalizeMySqlType(value) {
|
|
65
|
+
let normalized = collapseWhitespace(withoutTypeParameters(value.toLowerCase()));
|
|
66
|
+
for (const modifier of ["signed", "unsigned", "zerofill"]) {
|
|
67
|
+
if (normalized.endsWith(` ${modifier}`)) {
|
|
68
|
+
normalized = normalized.slice(0, -(modifier.length + 1));
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return normalized === "double precision" ? "double" : normalized;
|
|
73
|
+
}
|
|
74
|
+
function seriesForSchema(schema) {
|
|
75
|
+
const evidence = schema?.server?.versionKey ?? schema?.version;
|
|
76
|
+
const version = evidence === undefined ? undefined : parseMySqlVersion(evidence);
|
|
77
|
+
return version === undefined ? undefined : `${version[0]}.${version[1]}`;
|
|
78
|
+
}
|
|
79
|
+
export function mySqlCoreCatalog(series) {
|
|
80
|
+
return catalogs.get(series);
|
|
81
|
+
}
|
|
82
|
+
export function mySqlCoreCatalogForSchema(schema) {
|
|
83
|
+
const series = seriesForSchema(schema);
|
|
84
|
+
return series === undefined ? undefined : mySqlCoreCatalog(series);
|
|
85
|
+
}
|
|
86
|
+
function selected(schema) {
|
|
87
|
+
const evidence = schema?.server?.versionKey ?? schema?.version;
|
|
88
|
+
if (evidence === undefined)
|
|
89
|
+
return catalog84;
|
|
90
|
+
return mySqlCoreCatalogForSchema(schema);
|
|
91
|
+
}
|
|
92
|
+
export function mySqlCatalogType(databaseType, schema) {
|
|
93
|
+
const catalog = selected(schema);
|
|
94
|
+
return catalog === undefined ? undefined : index(catalog).types.get(normalizeMySqlType(databaseType));
|
|
95
|
+
}
|
|
96
|
+
export function mySqlCatalogCoercion(source, target, schema) {
|
|
97
|
+
const catalog = selected(schema);
|
|
98
|
+
if (catalog === undefined)
|
|
99
|
+
return undefined;
|
|
100
|
+
const catalogIndex = index(catalog);
|
|
101
|
+
const sourceType = catalogIndex.types.get(normalizeMySqlType(source))?.name ?? normalizeMySqlType(source);
|
|
102
|
+
const targetType = catalogIndex.types.get(normalizeMySqlType(target))?.name ?? normalizeMySqlType(target);
|
|
103
|
+
return catalogIndex.coercions.get(`${sourceType}>${targetType}`);
|
|
104
|
+
}
|
|
105
|
+
export function mySqlCatalogCanCoerce(source, target, context, schema) {
|
|
106
|
+
const sourceType = mySqlCatalogType(source, schema)?.name ?? normalizeMySqlType(source);
|
|
107
|
+
const targetType = mySqlCatalogType(target, schema)?.name ?? normalizeMySqlType(target);
|
|
108
|
+
if (sourceType === targetType)
|
|
109
|
+
return true;
|
|
110
|
+
return mySqlCatalogCoercion(sourceType, targetType, schema)?.contexts.includes(context) ?? false;
|
|
111
|
+
}
|
|
112
|
+
export function mySqlCatalogOperator(operator, schema) {
|
|
113
|
+
const catalog = selected(schema);
|
|
114
|
+
return catalog === undefined ? undefined : index(catalog).operators.get(operator.toUpperCase());
|
|
115
|
+
}
|
|
116
|
+
export function mySqlCatalogRoutine(routine, schema) {
|
|
117
|
+
const catalog = selected(schema);
|
|
118
|
+
return catalog === undefined ? undefined : index(catalog).routines.get(routine.toUpperCase());
|
|
119
|
+
}
|
|
120
|
+
export function mySqlCatalogCollation(collation, schema) {
|
|
121
|
+
const catalog = selected(schema);
|
|
122
|
+
return catalog === undefined ? undefined : index(catalog).collations.get(collation.toLowerCase());
|
|
123
|
+
}
|
|
124
|
+
export function mySqlCatalogHasRoutineInAnotherSeries(routine, schema) {
|
|
125
|
+
const current = mySqlCoreCatalogForSchema(schema);
|
|
126
|
+
const normalized = routine.toUpperCase();
|
|
127
|
+
return [...catalogs.values()].some((catalog) => catalog !== current && index(catalog).routines.has(normalized));
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/catalog/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
export type MySqlCatalogTypeMapping = "bigint" | "boolean" | "bytes" | "date" | "json" | "number" | "numeric" | "string" | "unknown";
|
|
2
|
+
export type MySqlTypeCategory = "binary" | "boolean" | "collection" | "json" | "numeric-approximate" | "numeric-decimal" | "numeric-integer" | "spatial" | "string" | "temporal" | "vector";
|
|
3
|
+
export type MySqlCoercionContext = "arithmetic" | "assignment" | "comparison" | "explicit" | "string";
|
|
4
|
+
export type MySqlCoercionSafety = "lossless" | "warning" | "lossy";
|
|
5
|
+
export type MySqlOperatorResultRule = "bitwise" | "boolean" | "json" | "json-text" | "numeric";
|
|
6
|
+
export type MySqlRoutineResultRule = "bigint" | "bytes" | "coalesce" | "coercibility" | "collation-name" | "concat" | "count" | "date" | "decimal-aggregate" | "double" | "extrema" | "first-argument" | "integer" | "json" | "string" | "vector" | "value-window";
|
|
7
|
+
export interface MySqlCatalogType {
|
|
8
|
+
readonly name: string;
|
|
9
|
+
readonly aliases: readonly string[];
|
|
10
|
+
readonly mapping: MySqlCatalogTypeMapping;
|
|
11
|
+
readonly category: MySqlTypeCategory;
|
|
12
|
+
readonly signedness: "signed" | "unsigned" | "both" | "none";
|
|
13
|
+
}
|
|
14
|
+
export interface MySqlCatalogCoercion {
|
|
15
|
+
readonly source: string;
|
|
16
|
+
readonly target: string;
|
|
17
|
+
readonly contexts: readonly MySqlCoercionContext[];
|
|
18
|
+
readonly safety: MySqlCoercionSafety;
|
|
19
|
+
}
|
|
20
|
+
export interface MySqlCatalogOperatorFamily {
|
|
21
|
+
readonly name: string;
|
|
22
|
+
readonly operators: readonly string[];
|
|
23
|
+
readonly result: MySqlOperatorResultRule;
|
|
24
|
+
}
|
|
25
|
+
export interface MySqlCatalogRoutineFamily {
|
|
26
|
+
readonly name: string;
|
|
27
|
+
readonly routines: readonly string[];
|
|
28
|
+
readonly result: MySqlRoutineResultRule;
|
|
29
|
+
readonly minimumArguments: number;
|
|
30
|
+
readonly maximumArguments: number | null;
|
|
31
|
+
readonly nullability: "arguments" | "never" | "always";
|
|
32
|
+
readonly editions: readonly ("commercial" | "community" | "enterprise" | "source")[];
|
|
33
|
+
}
|
|
34
|
+
export interface MySqlCatalogCollation {
|
|
35
|
+
readonly name: string;
|
|
36
|
+
readonly characterSet: string;
|
|
37
|
+
readonly unicode: boolean;
|
|
38
|
+
readonly binary: boolean;
|
|
39
|
+
}
|
|
40
|
+
export interface MySqlCoreCatalog {
|
|
41
|
+
readonly formatVersion: 1;
|
|
42
|
+
readonly series: "8.4" | "9.7" | "26.7";
|
|
43
|
+
readonly revision: string;
|
|
44
|
+
readonly types: readonly MySqlCatalogType[];
|
|
45
|
+
readonly coercions: readonly MySqlCatalogCoercion[];
|
|
46
|
+
readonly operators: readonly MySqlCatalogOperatorFamily[];
|
|
47
|
+
readonly routines: readonly MySqlCatalogRoutineFamily[];
|
|
48
|
+
readonly collations: readonly MySqlCatalogCollation[];
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/catalog/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/catalog/types.ts"],"names":[],"mappings":""}
|
|
@@ -3,21 +3,29 @@ import { type SchemaSnapshot } from "@typed-sql/schema";
|
|
|
3
3
|
import { type MySqlTypePolicy } from "./type-policy.js";
|
|
4
4
|
export type { MySqlBulkCapability, MySqlBulkProgress, MySqlBulkResult, MySqlLoadDataOptions, } from "./bulk.js";
|
|
5
5
|
export { mysqlBulk } from "./bulk.js";
|
|
6
|
+
export type { MySqlCoreCatalog } from "./catalog/index.js";
|
|
7
|
+
export { MYSQL_CORE_CATALOG_FORMAT_VERSION, mySqlCoreCatalog } from "./catalog/index.js";
|
|
8
|
+
export { MySqlRuntimeCompatibilityError, MySqlWarningError, MySqlWarningInspectionError } from "./runtime.js";
|
|
6
9
|
export { MYSQL_DIALECT_VERSION } from "./version.js";
|
|
7
10
|
export type MySqlSchemaSnapshot = SchemaSnapshot & {
|
|
8
11
|
readonly dialect: "mysql";
|
|
9
12
|
};
|
|
10
13
|
export interface MySqlDialectOptions {
|
|
11
14
|
readonly typePolicy?: MySqlTypePolicy;
|
|
15
|
+
readonly versionPolicy?: import("./support.js").MySqlVersionPolicy;
|
|
12
16
|
}
|
|
13
17
|
export declare function mysql(options?: MySqlDialectOptions): DialectPlugin<MySqlSchemaSnapshot, MySqlTypePolicy>;
|
|
14
18
|
export { sql } from "@typed-sql/core";
|
|
15
19
|
export type { SchemaSnapshot } from "@typed-sql/schema";
|
|
16
20
|
export { parseSchemaSnapshot } from "@typed-sql/schema";
|
|
17
|
-
export type {
|
|
21
|
+
export type { MySqlServerEdition, MySqlServerEvidenceOptions } from "./capabilities.js";
|
|
22
|
+
export { mySqlServerEvidence, resolveMySqlCapabilities } from "./capabilities.js";
|
|
23
|
+
export type { MySqlIntrospectionCatalog, MySqlIntrospectionDiagnostic, MySqlIntrospectionResult, MySqlQueryable, MySqlSchemaProviderOptions, } from "./provider.js";
|
|
18
24
|
export { introspectMySql, MySqlSchemaProvider, mysqlCatalogQueries } from "./provider.js";
|
|
19
25
|
export type { MySqlQuerySemanticResolverOptions, MySqlRoutedDatabaseOptions } from "./routing.js";
|
|
20
26
|
export { createMySqlQuerySemanticResolver, createMySqlRoutedDatabase, isMySqlRetryableTransactionError, } from "./routing.js";
|
|
27
|
+
export type { MySqlVersionPolicy, MySqlVersionSupport } from "./support.js";
|
|
28
|
+
export { MYSQL_SUPPORT_POLICY, mySqlVersionSupport, parseMySqlVersion } from "./support.js";
|
|
21
29
|
export type { MySqlTypePolicy } from "./type-policy.js";
|
|
22
30
|
export { defaultMySqlTypePolicy, defaultMySqlTypePolicy as typePolicy, isKnownMySqlType, mapMySqlType, } from "./type-policy.js";
|
|
23
31
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,aAAa,EAEnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAU7E,OAAO,EAA0B,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGhF,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,oBAAoB,GACrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,iCAAiC,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACzF,OAAO,EAAE,8BAA8B,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAC9G,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAEjF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,cAAc,EAAE,kBAAkB,CAAC;CACpE;AAkBD,wBAAgB,KAAK,CAAC,OAAO,GAAE,mBAAwB,GAAG,aAAa,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAgE5G;AAED,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AACxF,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAClF,YAAY,EACV,yBAAyB,EACzB,4BAA4B,EAC5B,wBAAwB,EACxB,cAAc,EACd,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC1F,YAAY,EAAE,iCAAiC,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EACL,gCAAgC,EAChC,yBAAyB,EACzB,gCAAgC,GACjC,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC5F,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EACL,sBAAsB,EACtB,sBAAsB,IAAI,UAAU,EACpC,gBAAgB,EAChB,YAAY,GACb,MAAM,kBAAkB,CAAC"}
|
|
@@ -1,22 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { DIALECT_CONTRACT_VERSION, unknownQuerySemantics } from "@typed-sql/core";
|
|
1
|
+
import { applyDialectCapabilityStates, DIALECT_CONTRACT_VERSION, unknownQuerySemantics, } from "@typed-sql/core";
|
|
3
2
|
import { parseSchemaSnapshot } from "@typed-sql/schema";
|
|
3
|
+
import { assertMySqlServerEvidence, MYSQL_CAPABILITIES, resolveMySqlCapabilities, unmodeledMySqlSqlModes, } from "./capabilities.js";
|
|
4
|
+
import { parseStatement, SqlParseError } from "./parser/index.js";
|
|
4
5
|
import { resolveMySqlStatement } from "./resolver.js";
|
|
5
6
|
import { analyzeMySqlSemantics } from "./semantics.js";
|
|
6
7
|
import { defaultMySqlTypePolicy } from "./type-policy.js";
|
|
7
8
|
import { MYSQL_DIALECT_VERSION } from "./version.js";
|
|
8
9
|
export { mysqlBulk } from "./bulk.js";
|
|
10
|
+
export { MYSQL_CORE_CATALOG_FORMAT_VERSION, mySqlCoreCatalog } from "./catalog/index.js";
|
|
11
|
+
export { MySqlRuntimeCompatibilityError, MySqlWarningError, MySqlWarningInspectionError } from "./runtime.js";
|
|
9
12
|
export { MYSQL_DIALECT_VERSION } from "./version.js";
|
|
10
|
-
const capabilities = Object.freeze({
|
|
11
|
-
aggregateFilter: false,
|
|
12
|
-
arrays: false,
|
|
13
|
-
distinctOn: false,
|
|
14
|
-
fullJoins: false,
|
|
15
|
-
lockingReads: true,
|
|
16
|
-
recursiveCtes: false,
|
|
17
|
-
returning: false,
|
|
18
|
-
setOperations: false,
|
|
19
|
-
});
|
|
20
13
|
function validateMySqlSnapshot(value) {
|
|
21
14
|
const snapshot = parseSchemaSnapshot(value);
|
|
22
15
|
if (snapshot.dialect !== "mysql")
|
|
@@ -24,16 +17,23 @@ function validateMySqlSnapshot(value) {
|
|
|
24
17
|
if (snapshot.dialectVersion !== undefined && snapshot.dialectVersion !== MYSQL_DIALECT_VERSION) {
|
|
25
18
|
throw new TypeError(`@typed-sql/mysql grammar ${MYSQL_DIALECT_VERSION} cannot use snapshot dialectVersion ${snapshot.dialectVersion}`);
|
|
26
19
|
}
|
|
20
|
+
if (snapshot.server !== undefined && snapshot.server.product !== "mysql") {
|
|
21
|
+
throw new TypeError(`@typed-sql/mysql cannot use ${snapshot.server.product} server evidence`);
|
|
22
|
+
}
|
|
23
|
+
if (snapshot.server !== undefined)
|
|
24
|
+
assertMySqlServerEvidence(snapshot.server);
|
|
27
25
|
return snapshot;
|
|
28
26
|
}
|
|
29
27
|
export function mysql(options = {}) {
|
|
30
28
|
const defaultTypePolicy = options.typePolicy ?? defaultMySqlTypePolicy;
|
|
29
|
+
const versionPolicy = options.versionPolicy ?? "stable";
|
|
31
30
|
return Object.freeze({
|
|
32
31
|
contractVersion: DIALECT_CONTRACT_VERSION,
|
|
33
32
|
id: "mysql",
|
|
34
33
|
grammarVersion: MYSQL_DIALECT_VERSION,
|
|
35
34
|
sqlModule: "@typed-sql/mysql",
|
|
36
|
-
capabilities,
|
|
35
|
+
capabilities: MYSQL_CAPABILITIES,
|
|
36
|
+
resolveCapabilities: (snapshot) => resolveMySqlCapabilities(snapshot, versionPolicy),
|
|
37
37
|
defaultTypePolicy,
|
|
38
38
|
placeholder(index) {
|
|
39
39
|
if (!Number.isInteger(index) || index < 1)
|
|
@@ -45,14 +45,34 @@ export function mysql(options = {}) {
|
|
|
45
45
|
},
|
|
46
46
|
analyze(sql, snapshot, policy = defaultTypePolicy) {
|
|
47
47
|
try {
|
|
48
|
-
const
|
|
48
|
+
const sqlMode = snapshot.server?.settings.sqlMode;
|
|
49
|
+
const unmodeledModes = typeof sqlMode === "string" ? unmodeledMySqlSqlModes(sqlMode) : [];
|
|
50
|
+
if (unmodeledModes.length > 0) {
|
|
51
|
+
const range = { start: 0, end: sql.length, line: 1, column: 1 };
|
|
52
|
+
return {
|
|
53
|
+
columns: [],
|
|
54
|
+
parameters: [],
|
|
55
|
+
diagnostics: [
|
|
56
|
+
{
|
|
57
|
+
code: "TSQ407",
|
|
58
|
+
message: `Exact MySQL analysis does not cover these sql_mode values: ${unmodeledModes.join(", ")}.`,
|
|
59
|
+
severity: "error",
|
|
60
|
+
range,
|
|
61
|
+
suggestion: "Use a modeled SQL mode or remove the query from exact static analysis.",
|
|
62
|
+
},
|
|
63
|
+
],
|
|
64
|
+
semantics: unknownQuerySemantics(range, "The recorded MySQL SQL mode is not modeled."),
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
const statement = parseStatement(sql, { ...(typeof sqlMode === "string" ? { sqlMode } : {}) });
|
|
49
68
|
const resolved = resolveMySqlStatement(statement, snapshot, { typePolicy: policy });
|
|
50
|
-
|
|
69
|
+
const analysis = {
|
|
51
70
|
...resolved,
|
|
52
71
|
semantics: resolved.diagnostics.some(({ severity }) => severity === "error")
|
|
53
72
|
? unknownQuerySemantics(statement.range, "MySQL semantic analysis reported an error.")
|
|
54
73
|
: analyzeMySqlSemantics(statement, snapshot),
|
|
55
74
|
};
|
|
75
|
+
return applyDialectCapabilityStates(analysis, resolveMySqlCapabilities(snapshot, versionPolicy), statement.range);
|
|
56
76
|
}
|
|
57
77
|
catch (error) {
|
|
58
78
|
if (!(error instanceof SqlParseError))
|
|
@@ -70,7 +90,9 @@ export function mysql(options = {}) {
|
|
|
70
90
|
}
|
|
71
91
|
export { sql } from "@typed-sql/core";
|
|
72
92
|
export { parseSchemaSnapshot } from "@typed-sql/schema";
|
|
93
|
+
export { mySqlServerEvidence, resolveMySqlCapabilities } from "./capabilities.js";
|
|
73
94
|
export { introspectMySql, MySqlSchemaProvider, mysqlCatalogQueries } from "./provider.js";
|
|
74
95
|
export { createMySqlQuerySemanticResolver, createMySqlRoutedDatabase, isMySqlRetryableTransactionError, } from "./routing.js";
|
|
96
|
+
export { MYSQL_SUPPORT_POLICY, mySqlVersionSupport, parseMySqlVersion } from "./support.js";
|
|
75
97
|
export { defaultMySqlTypePolicy, defaultMySqlTypePolicy as typePolicy, isKnownMySqlType, mapMySqlType, } from "./type-policy.js";
|
|
76
98
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,12 +6,20 @@ import { type MySqlDatabase, type MySqlPoolLike } from "./runtime.js";
|
|
|
6
6
|
import { type MySqlTypePolicy } from "./type-policy.js";
|
|
7
7
|
export interface MySql2Options {
|
|
8
8
|
readonly connectionUri: string | (() => string | Promise<string>);
|
|
9
|
-
readonly poolConfig?: Omit<PoolOptions, "uri" | "supportBigNumbers" | "bigNumberStrings" | "decimalNumbers" | "dateStrings" | "jsonStrings" | "typeCast" | "rowsAsArray">;
|
|
9
|
+
readonly poolConfig?: Omit<PoolOptions, "uri" | "supportBigNumbers" | "bigNumberStrings" | "decimalNumbers" | "dateStrings" | "jsonStrings" | "typeCast" | "rowsAsArray" | "maxPreparedStatements" | "multipleStatements">;
|
|
10
10
|
readonly typePolicy?: MySqlTypePolicy;
|
|
11
11
|
readonly decimal?: (value: string) => unknown;
|
|
12
12
|
/** Test or host-injected loader. Applications normally leave this unset. */
|
|
13
13
|
readonly driverImporter?: () => Promise<typeof import("mysql2/promise")>;
|
|
14
14
|
readonly observer?: DatabaseObserver;
|
|
15
|
+
readonly compatibilitySnapshot?: MySqlSchemaSnapshot & {
|
|
16
|
+
readonly formatVersion: 2;
|
|
17
|
+
};
|
|
18
|
+
readonly decoderPlanCacheCapacity?: number;
|
|
19
|
+
readonly preparedStatementLimit?: number;
|
|
20
|
+
readonly preparedCardinalityVariantLimit?: number;
|
|
21
|
+
readonly onWarning?: import("./runtime.js").MySqlDatabaseOptions["onWarning"];
|
|
22
|
+
readonly rejectWarnings?: boolean;
|
|
15
23
|
}
|
|
16
24
|
export interface MySql2SchemaProviderOptions {
|
|
17
25
|
readonly connectionUri?: string | (() => string | Promise<string>);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mysql2.d.ts","sourceRoot":"","sources":["../../../../src/mysql2.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"mysql2.d.ts","sourceRoot":"","sources":["../../../../src/mysql2.ts"],"names":[],"mappings":"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"}
|