@atscript/db-mysql 0.1.104 → 0.1.105
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/dist/index.cjs +0 -2
- package/dist/index.d.cts +1 -2
- package/dist/index.d.mts +1 -2
- package/dist/index.mjs +1 -2
- package/dist/plugin.cjs +93 -2
- package/dist/plugin.d.cts +5 -1
- package/dist/plugin.d.mts +5 -1
- package/dist/plugin.mjs +92 -1
- package/package.json +8 -8
- package/dist/index-BLQr6loH.d.cts +0 -6
- package/dist/index-BLQr6loH.d.mts +0 -6
- package/dist/plugin-AzwuXV59.cjs +0 -98
- package/dist/plugin-CPJY5K_I.mjs +0 -93
package/dist/index.cjs
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_plugin = require("./plugin-AzwuXV59.cjs");
|
|
3
2
|
let _atscript_db = require("@atscript/db");
|
|
4
3
|
let _atscript_db_sql_tools = require("@atscript/db-sql-tools");
|
|
5
4
|
//#region src/sql-builder.ts
|
|
@@ -1194,6 +1193,5 @@ function createAdapter(uri, options) {
|
|
|
1194
1193
|
//#endregion
|
|
1195
1194
|
exports.Mysql2Driver = Mysql2Driver;
|
|
1196
1195
|
exports.MysqlAdapter = MysqlAdapter;
|
|
1197
|
-
exports.MysqlPlugin = require_plugin.MysqlPlugin;
|
|
1198
1196
|
exports.buildWhere = buildWhere;
|
|
1199
1197
|
exports.createAdapter = createAdapter;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { t as MysqlPlugin } from "./index-BLQr6loH.cjs";
|
|
2
1
|
import { BaseDbAdapter, DbQuery, DbSpace, FilterExpr, TColumnDiff, TDbDefaultFn, TDbDeleteResult, TDbFieldMeta, TDbInsertManyResult, TDbInsertResult, TDbUpdateResult, TExistingColumn, TExistingTableOption, TFieldOps, TSearchIndexInfo, TSyncColumnResult, TTableOptionDiff, TValueFormatterPair } from "@atscript/db";
|
|
3
2
|
import { TMetadataMap } from "@atscript/typescript/utils";
|
|
4
3
|
import { FilterExpr as FilterExpr$1 } from "@uniqu/core";
|
|
@@ -268,4 +267,4 @@ declare function buildWhere(filter: FilterExpr$1): TSqlFragment$1;
|
|
|
268
267
|
*/
|
|
269
268
|
declare function createAdapter(uri: string, options?: Record<string, unknown>): DbSpace;
|
|
270
269
|
//#endregion
|
|
271
|
-
export { Mysql2Driver, MysqlAdapter,
|
|
270
|
+
export { Mysql2Driver, MysqlAdapter, type TMysqlConnection, type TMysqlDriver, type TMysqlRunResult, type TSqlFragment, buildWhere, createAdapter };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { t as MysqlPlugin } from "./index-BLQr6loH.mjs";
|
|
2
1
|
import { BaseDbAdapter, DbQuery, DbSpace, FilterExpr, TColumnDiff, TDbDefaultFn, TDbDeleteResult, TDbFieldMeta, TDbInsertManyResult, TDbInsertResult, TDbUpdateResult, TExistingColumn, TExistingTableOption, TFieldOps, TSearchIndexInfo, TSyncColumnResult, TTableOptionDiff, TValueFormatterPair } from "@atscript/db";
|
|
3
2
|
import { TSqlFragment, TSqlFragment as TSqlFragment$1 } from "@atscript/db-sql-tools";
|
|
4
3
|
import { TMetadataMap } from "@atscript/typescript/utils";
|
|
@@ -268,4 +267,4 @@ declare function buildWhere(filter: FilterExpr$1): TSqlFragment$1;
|
|
|
268
267
|
*/
|
|
269
268
|
declare function createAdapter(uri: string, options?: Record<string, unknown>): DbSpace;
|
|
270
269
|
//#endregion
|
|
271
|
-
export { Mysql2Driver, MysqlAdapter,
|
|
270
|
+
export { Mysql2Driver, MysqlAdapter, type TMysqlConnection, type TMysqlDriver, type TMysqlRunResult, type TSqlFragment, buildWhere, createAdapter };
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { t as MysqlPlugin } from "./plugin-CPJY5K_I.mjs";
|
|
2
1
|
import { AtscriptDbView, BaseDbAdapter, DbError, DbSpace } from "@atscript/db";
|
|
3
2
|
import { buildAggregateCount, buildAggregateSelect, buildCreateView, buildDelete, buildInsert, buildSelect, buildUpdate, buildWhere as buildWhere$1, defaultValueForType, defaultValueToSqlLiteral, parseRegexString, refActionToSql, toSqlValue } from "@atscript/db-sql-tools";
|
|
4
3
|
//#region src/sql-builder.ts
|
|
@@ -1191,4 +1190,4 @@ function createAdapter(uri, options) {
|
|
|
1191
1190
|
return new DbSpace(() => new MysqlAdapter(driver));
|
|
1192
1191
|
}
|
|
1193
1192
|
//#endregion
|
|
1194
|
-
export { Mysql2Driver, MysqlAdapter,
|
|
1193
|
+
export { Mysql2Driver, MysqlAdapter, buildWhere, createAdapter };
|
package/dist/plugin.cjs
CHANGED
|
@@ -1,3 +1,94 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
let _atscript_core = require("@atscript/core");
|
|
3
|
+
//#region src/plugin/annotations.ts
|
|
4
|
+
/**
|
|
5
|
+
* MySQL-specific annotations.
|
|
6
|
+
*
|
|
7
|
+
* Merged into the global config under `{ db: { mysql: ... } }` so they
|
|
8
|
+
* live alongside core's `@db.table`, `@db.index.*`, etc.
|
|
9
|
+
*
|
|
10
|
+
* These annotations opt-in to MySQL-specific behavior. Files using only
|
|
11
|
+
* portable `@db.*` annotations remain adapter-agnostic.
|
|
12
|
+
*/
|
|
13
|
+
const annotations = {
|
|
14
|
+
engine: new _atscript_core.AnnotationSpec({
|
|
15
|
+
description: "Specifies the MySQL storage engine.\n\n**Default:** `\"InnoDB\"`\n\n```atscript\n@db.mysql.engine \"MyISAM\"\nexport interface Logs { ... }\n```",
|
|
16
|
+
nodeType: ["interface"],
|
|
17
|
+
multiple: false,
|
|
18
|
+
argument: {
|
|
19
|
+
name: "engine",
|
|
20
|
+
type: "string",
|
|
21
|
+
values: [
|
|
22
|
+
"InnoDB",
|
|
23
|
+
"MyISAM",
|
|
24
|
+
"MEMORY",
|
|
25
|
+
"CSV",
|
|
26
|
+
"ARCHIVE"
|
|
27
|
+
],
|
|
28
|
+
description: "MySQL storage engine name."
|
|
29
|
+
}
|
|
30
|
+
}),
|
|
31
|
+
charset: new _atscript_core.AnnotationSpec({
|
|
32
|
+
description: "Specifies the character set for the table or column.\n\n**Default:** `\"utf8mb4\"`\n\n```atscript\n@db.mysql.charset \"latin1\"\nexport interface Legacy { ... }\n```",
|
|
33
|
+
nodeType: ["interface", "prop"],
|
|
34
|
+
multiple: false,
|
|
35
|
+
argument: {
|
|
36
|
+
name: "charset",
|
|
37
|
+
type: "string",
|
|
38
|
+
values: [
|
|
39
|
+
"utf8mb4",
|
|
40
|
+
"utf8",
|
|
41
|
+
"latin1",
|
|
42
|
+
"ascii",
|
|
43
|
+
"binary"
|
|
44
|
+
],
|
|
45
|
+
description: "MySQL character set name."
|
|
46
|
+
}
|
|
47
|
+
}),
|
|
48
|
+
collate: new _atscript_core.AnnotationSpec({
|
|
49
|
+
description: "Specifies a native MySQL collation (overrides portable `@db.column.collate`).\n\n```atscript\n@db.mysql.collate \"utf8mb4_turkish_ci\"\nname: string\n```",
|
|
50
|
+
nodeType: ["interface", "prop"],
|
|
51
|
+
multiple: false,
|
|
52
|
+
argument: {
|
|
53
|
+
name: "collation",
|
|
54
|
+
type: "string",
|
|
55
|
+
description: "Native MySQL collation name (e.g., \"utf8mb4_turkish_ci\")."
|
|
56
|
+
}
|
|
57
|
+
}),
|
|
58
|
+
unsigned: new _atscript_core.AnnotationSpec({
|
|
59
|
+
description: "Adds the UNSIGNED modifier to an integer column.\n\n```atscript\n@db.mysql.unsigned\nage: number.int\n```",
|
|
60
|
+
nodeType: ["prop"],
|
|
61
|
+
multiple: false
|
|
62
|
+
}),
|
|
63
|
+
type: new _atscript_core.AnnotationSpec({
|
|
64
|
+
description: "Overrides the native MySQL column type.\n\n```atscript\n@db.mysql.type \"MEDIUMTEXT\"\nbio: string\n```",
|
|
65
|
+
nodeType: ["prop"],
|
|
66
|
+
multiple: false,
|
|
67
|
+
argument: {
|
|
68
|
+
name: "type",
|
|
69
|
+
type: "string",
|
|
70
|
+
description: "Native MySQL column type (e.g., \"MEDIUMTEXT\", \"TINYTEXT\")."
|
|
71
|
+
}
|
|
72
|
+
}),
|
|
73
|
+
onUpdate: new _atscript_core.AnnotationSpec({
|
|
74
|
+
description: "Sets the MySQL ON UPDATE clause for a column.\n\n```atscript\n@db.mysql.onUpdate \"CURRENT_TIMESTAMP\"\nupdatedAt: number.timestamp\n```",
|
|
75
|
+
nodeType: ["prop"],
|
|
76
|
+
multiple: false,
|
|
77
|
+
argument: {
|
|
78
|
+
name: "expression",
|
|
79
|
+
type: "string",
|
|
80
|
+
values: ["CURRENT_TIMESTAMP"],
|
|
81
|
+
description: "Expression to evaluate on row update."
|
|
82
|
+
}
|
|
83
|
+
})
|
|
84
|
+
};
|
|
85
|
+
//#endregion
|
|
86
|
+
//#region src/plugin/index.ts
|
|
87
|
+
const MysqlPlugin = () => ({
|
|
88
|
+
name: "mysql",
|
|
89
|
+
config() {
|
|
90
|
+
return { annotations: { db: { mysql: annotations } } };
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
//#endregion
|
|
94
|
+
exports.MysqlPlugin = MysqlPlugin;
|
package/dist/plugin.d.cts
CHANGED
package/dist/plugin.d.mts
CHANGED
package/dist/plugin.mjs
CHANGED
|
@@ -1,2 +1,93 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AnnotationSpec } from "@atscript/core";
|
|
2
|
+
//#region src/plugin/annotations.ts
|
|
3
|
+
/**
|
|
4
|
+
* MySQL-specific annotations.
|
|
5
|
+
*
|
|
6
|
+
* Merged into the global config under `{ db: { mysql: ... } }` so they
|
|
7
|
+
* live alongside core's `@db.table`, `@db.index.*`, etc.
|
|
8
|
+
*
|
|
9
|
+
* These annotations opt-in to MySQL-specific behavior. Files using only
|
|
10
|
+
* portable `@db.*` annotations remain adapter-agnostic.
|
|
11
|
+
*/
|
|
12
|
+
const annotations = {
|
|
13
|
+
engine: new AnnotationSpec({
|
|
14
|
+
description: "Specifies the MySQL storage engine.\n\n**Default:** `\"InnoDB\"`\n\n```atscript\n@db.mysql.engine \"MyISAM\"\nexport interface Logs { ... }\n```",
|
|
15
|
+
nodeType: ["interface"],
|
|
16
|
+
multiple: false,
|
|
17
|
+
argument: {
|
|
18
|
+
name: "engine",
|
|
19
|
+
type: "string",
|
|
20
|
+
values: [
|
|
21
|
+
"InnoDB",
|
|
22
|
+
"MyISAM",
|
|
23
|
+
"MEMORY",
|
|
24
|
+
"CSV",
|
|
25
|
+
"ARCHIVE"
|
|
26
|
+
],
|
|
27
|
+
description: "MySQL storage engine name."
|
|
28
|
+
}
|
|
29
|
+
}),
|
|
30
|
+
charset: new AnnotationSpec({
|
|
31
|
+
description: "Specifies the character set for the table or column.\n\n**Default:** `\"utf8mb4\"`\n\n```atscript\n@db.mysql.charset \"latin1\"\nexport interface Legacy { ... }\n```",
|
|
32
|
+
nodeType: ["interface", "prop"],
|
|
33
|
+
multiple: false,
|
|
34
|
+
argument: {
|
|
35
|
+
name: "charset",
|
|
36
|
+
type: "string",
|
|
37
|
+
values: [
|
|
38
|
+
"utf8mb4",
|
|
39
|
+
"utf8",
|
|
40
|
+
"latin1",
|
|
41
|
+
"ascii",
|
|
42
|
+
"binary"
|
|
43
|
+
],
|
|
44
|
+
description: "MySQL character set name."
|
|
45
|
+
}
|
|
46
|
+
}),
|
|
47
|
+
collate: new AnnotationSpec({
|
|
48
|
+
description: "Specifies a native MySQL collation (overrides portable `@db.column.collate`).\n\n```atscript\n@db.mysql.collate \"utf8mb4_turkish_ci\"\nname: string\n```",
|
|
49
|
+
nodeType: ["interface", "prop"],
|
|
50
|
+
multiple: false,
|
|
51
|
+
argument: {
|
|
52
|
+
name: "collation",
|
|
53
|
+
type: "string",
|
|
54
|
+
description: "Native MySQL collation name (e.g., \"utf8mb4_turkish_ci\")."
|
|
55
|
+
}
|
|
56
|
+
}),
|
|
57
|
+
unsigned: new AnnotationSpec({
|
|
58
|
+
description: "Adds the UNSIGNED modifier to an integer column.\n\n```atscript\n@db.mysql.unsigned\nage: number.int\n```",
|
|
59
|
+
nodeType: ["prop"],
|
|
60
|
+
multiple: false
|
|
61
|
+
}),
|
|
62
|
+
type: new AnnotationSpec({
|
|
63
|
+
description: "Overrides the native MySQL column type.\n\n```atscript\n@db.mysql.type \"MEDIUMTEXT\"\nbio: string\n```",
|
|
64
|
+
nodeType: ["prop"],
|
|
65
|
+
multiple: false,
|
|
66
|
+
argument: {
|
|
67
|
+
name: "type",
|
|
68
|
+
type: "string",
|
|
69
|
+
description: "Native MySQL column type (e.g., \"MEDIUMTEXT\", \"TINYTEXT\")."
|
|
70
|
+
}
|
|
71
|
+
}),
|
|
72
|
+
onUpdate: new AnnotationSpec({
|
|
73
|
+
description: "Sets the MySQL ON UPDATE clause for a column.\n\n```atscript\n@db.mysql.onUpdate \"CURRENT_TIMESTAMP\"\nupdatedAt: number.timestamp\n```",
|
|
74
|
+
nodeType: ["prop"],
|
|
75
|
+
multiple: false,
|
|
76
|
+
argument: {
|
|
77
|
+
name: "expression",
|
|
78
|
+
type: "string",
|
|
79
|
+
values: ["CURRENT_TIMESTAMP"],
|
|
80
|
+
description: "Expression to evaluate on row update."
|
|
81
|
+
}
|
|
82
|
+
})
|
|
83
|
+
};
|
|
84
|
+
//#endregion
|
|
85
|
+
//#region src/plugin/index.ts
|
|
86
|
+
const MysqlPlugin = () => ({
|
|
87
|
+
name: "mysql",
|
|
88
|
+
config() {
|
|
89
|
+
return { annotations: { db: { mysql: annotations } } };
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
//#endregion
|
|
2
93
|
export { MysqlPlugin };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atscript/db-mysql",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.105",
|
|
4
4
|
"description": "MySQL adapter for @atscript/db with mysql2 driver support.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"atscript",
|
|
@@ -41,19 +41,19 @@
|
|
|
41
41
|
"access": "public"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
|
-
"@atscript/core": "^0.1.
|
|
45
|
-
"@atscript/typescript": "^0.1.
|
|
44
|
+
"@atscript/core": "^0.1.76",
|
|
45
|
+
"@atscript/typescript": "^0.1.76",
|
|
46
46
|
"@uniqu/core": "^0.1.6",
|
|
47
47
|
"mysql2": "^3.11.0",
|
|
48
|
-
"unplugin-atscript": "^0.1.
|
|
48
|
+
"unplugin-atscript": "^0.1.76"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"@atscript/core": "^0.1.
|
|
52
|
-
"@atscript/typescript": "^0.1.
|
|
51
|
+
"@atscript/core": "^0.1.76",
|
|
52
|
+
"@atscript/typescript": "^0.1.76",
|
|
53
53
|
"@uniqu/core": "^0.1.6",
|
|
54
54
|
"mysql2": ">=3.0.0",
|
|
55
|
-
"@atscript/db": "^0.1.
|
|
56
|
-
"@atscript/db-sql-tools": "^0.1.
|
|
55
|
+
"@atscript/db": "^0.1.105",
|
|
56
|
+
"@atscript/db-sql-tools": "^0.1.105"
|
|
57
57
|
},
|
|
58
58
|
"peerDependenciesMeta": {
|
|
59
59
|
"mysql2": {
|
package/dist/plugin-AzwuXV59.cjs
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
let _atscript_core = require("@atscript/core");
|
|
2
|
-
//#region src/plugin/annotations.ts
|
|
3
|
-
/**
|
|
4
|
-
* MySQL-specific annotations.
|
|
5
|
-
*
|
|
6
|
-
* Merged into the global config under `{ db: { mysql: ... } }` so they
|
|
7
|
-
* live alongside core's `@db.table`, `@db.index.*`, etc.
|
|
8
|
-
*
|
|
9
|
-
* These annotations opt-in to MySQL-specific behavior. Files using only
|
|
10
|
-
* portable `@db.*` annotations remain adapter-agnostic.
|
|
11
|
-
*/
|
|
12
|
-
const annotations = {
|
|
13
|
-
engine: new _atscript_core.AnnotationSpec({
|
|
14
|
-
description: "Specifies the MySQL storage engine.\n\n**Default:** `\"InnoDB\"`\n\n```atscript\n@db.mysql.engine \"MyISAM\"\nexport interface Logs { ... }\n```",
|
|
15
|
-
nodeType: ["interface"],
|
|
16
|
-
multiple: false,
|
|
17
|
-
argument: {
|
|
18
|
-
name: "engine",
|
|
19
|
-
type: "string",
|
|
20
|
-
values: [
|
|
21
|
-
"InnoDB",
|
|
22
|
-
"MyISAM",
|
|
23
|
-
"MEMORY",
|
|
24
|
-
"CSV",
|
|
25
|
-
"ARCHIVE"
|
|
26
|
-
],
|
|
27
|
-
description: "MySQL storage engine name."
|
|
28
|
-
}
|
|
29
|
-
}),
|
|
30
|
-
charset: new _atscript_core.AnnotationSpec({
|
|
31
|
-
description: "Specifies the character set for the table or column.\n\n**Default:** `\"utf8mb4\"`\n\n```atscript\n@db.mysql.charset \"latin1\"\nexport interface Legacy { ... }\n```",
|
|
32
|
-
nodeType: ["interface", "prop"],
|
|
33
|
-
multiple: false,
|
|
34
|
-
argument: {
|
|
35
|
-
name: "charset",
|
|
36
|
-
type: "string",
|
|
37
|
-
values: [
|
|
38
|
-
"utf8mb4",
|
|
39
|
-
"utf8",
|
|
40
|
-
"latin1",
|
|
41
|
-
"ascii",
|
|
42
|
-
"binary"
|
|
43
|
-
],
|
|
44
|
-
description: "MySQL character set name."
|
|
45
|
-
}
|
|
46
|
-
}),
|
|
47
|
-
collate: new _atscript_core.AnnotationSpec({
|
|
48
|
-
description: "Specifies a native MySQL collation (overrides portable `@db.column.collate`).\n\n```atscript\n@db.mysql.collate \"utf8mb4_turkish_ci\"\nname: string\n```",
|
|
49
|
-
nodeType: ["interface", "prop"],
|
|
50
|
-
multiple: false,
|
|
51
|
-
argument: {
|
|
52
|
-
name: "collation",
|
|
53
|
-
type: "string",
|
|
54
|
-
description: "Native MySQL collation name (e.g., \"utf8mb4_turkish_ci\")."
|
|
55
|
-
}
|
|
56
|
-
}),
|
|
57
|
-
unsigned: new _atscript_core.AnnotationSpec({
|
|
58
|
-
description: "Adds the UNSIGNED modifier to an integer column.\n\n```atscript\n@db.mysql.unsigned\nage: number.int\n```",
|
|
59
|
-
nodeType: ["prop"],
|
|
60
|
-
multiple: false
|
|
61
|
-
}),
|
|
62
|
-
type: new _atscript_core.AnnotationSpec({
|
|
63
|
-
description: "Overrides the native MySQL column type.\n\n```atscript\n@db.mysql.type \"MEDIUMTEXT\"\nbio: string\n```",
|
|
64
|
-
nodeType: ["prop"],
|
|
65
|
-
multiple: false,
|
|
66
|
-
argument: {
|
|
67
|
-
name: "type",
|
|
68
|
-
type: "string",
|
|
69
|
-
description: "Native MySQL column type (e.g., \"MEDIUMTEXT\", \"TINYTEXT\")."
|
|
70
|
-
}
|
|
71
|
-
}),
|
|
72
|
-
onUpdate: new _atscript_core.AnnotationSpec({
|
|
73
|
-
description: "Sets the MySQL ON UPDATE clause for a column.\n\n```atscript\n@db.mysql.onUpdate \"CURRENT_TIMESTAMP\"\nupdatedAt: number.timestamp\n```",
|
|
74
|
-
nodeType: ["prop"],
|
|
75
|
-
multiple: false,
|
|
76
|
-
argument: {
|
|
77
|
-
name: "expression",
|
|
78
|
-
type: "string",
|
|
79
|
-
values: ["CURRENT_TIMESTAMP"],
|
|
80
|
-
description: "Expression to evaluate on row update."
|
|
81
|
-
}
|
|
82
|
-
})
|
|
83
|
-
};
|
|
84
|
-
//#endregion
|
|
85
|
-
//#region src/plugin/index.ts
|
|
86
|
-
const MysqlPlugin = () => ({
|
|
87
|
-
name: "mysql",
|
|
88
|
-
config() {
|
|
89
|
-
return { annotations: { db: { mysql: annotations } } };
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
//#endregion
|
|
93
|
-
Object.defineProperty(exports, "MysqlPlugin", {
|
|
94
|
-
enumerable: true,
|
|
95
|
-
get: function() {
|
|
96
|
-
return MysqlPlugin;
|
|
97
|
-
}
|
|
98
|
-
});
|
package/dist/plugin-CPJY5K_I.mjs
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { AnnotationSpec } from "@atscript/core";
|
|
2
|
-
//#region src/plugin/annotations.ts
|
|
3
|
-
/**
|
|
4
|
-
* MySQL-specific annotations.
|
|
5
|
-
*
|
|
6
|
-
* Merged into the global config under `{ db: { mysql: ... } }` so they
|
|
7
|
-
* live alongside core's `@db.table`, `@db.index.*`, etc.
|
|
8
|
-
*
|
|
9
|
-
* These annotations opt-in to MySQL-specific behavior. Files using only
|
|
10
|
-
* portable `@db.*` annotations remain adapter-agnostic.
|
|
11
|
-
*/
|
|
12
|
-
const annotations = {
|
|
13
|
-
engine: new AnnotationSpec({
|
|
14
|
-
description: "Specifies the MySQL storage engine.\n\n**Default:** `\"InnoDB\"`\n\n```atscript\n@db.mysql.engine \"MyISAM\"\nexport interface Logs { ... }\n```",
|
|
15
|
-
nodeType: ["interface"],
|
|
16
|
-
multiple: false,
|
|
17
|
-
argument: {
|
|
18
|
-
name: "engine",
|
|
19
|
-
type: "string",
|
|
20
|
-
values: [
|
|
21
|
-
"InnoDB",
|
|
22
|
-
"MyISAM",
|
|
23
|
-
"MEMORY",
|
|
24
|
-
"CSV",
|
|
25
|
-
"ARCHIVE"
|
|
26
|
-
],
|
|
27
|
-
description: "MySQL storage engine name."
|
|
28
|
-
}
|
|
29
|
-
}),
|
|
30
|
-
charset: new AnnotationSpec({
|
|
31
|
-
description: "Specifies the character set for the table or column.\n\n**Default:** `\"utf8mb4\"`\n\n```atscript\n@db.mysql.charset \"latin1\"\nexport interface Legacy { ... }\n```",
|
|
32
|
-
nodeType: ["interface", "prop"],
|
|
33
|
-
multiple: false,
|
|
34
|
-
argument: {
|
|
35
|
-
name: "charset",
|
|
36
|
-
type: "string",
|
|
37
|
-
values: [
|
|
38
|
-
"utf8mb4",
|
|
39
|
-
"utf8",
|
|
40
|
-
"latin1",
|
|
41
|
-
"ascii",
|
|
42
|
-
"binary"
|
|
43
|
-
],
|
|
44
|
-
description: "MySQL character set name."
|
|
45
|
-
}
|
|
46
|
-
}),
|
|
47
|
-
collate: new AnnotationSpec({
|
|
48
|
-
description: "Specifies a native MySQL collation (overrides portable `@db.column.collate`).\n\n```atscript\n@db.mysql.collate \"utf8mb4_turkish_ci\"\nname: string\n```",
|
|
49
|
-
nodeType: ["interface", "prop"],
|
|
50
|
-
multiple: false,
|
|
51
|
-
argument: {
|
|
52
|
-
name: "collation",
|
|
53
|
-
type: "string",
|
|
54
|
-
description: "Native MySQL collation name (e.g., \"utf8mb4_turkish_ci\")."
|
|
55
|
-
}
|
|
56
|
-
}),
|
|
57
|
-
unsigned: new AnnotationSpec({
|
|
58
|
-
description: "Adds the UNSIGNED modifier to an integer column.\n\n```atscript\n@db.mysql.unsigned\nage: number.int\n```",
|
|
59
|
-
nodeType: ["prop"],
|
|
60
|
-
multiple: false
|
|
61
|
-
}),
|
|
62
|
-
type: new AnnotationSpec({
|
|
63
|
-
description: "Overrides the native MySQL column type.\n\n```atscript\n@db.mysql.type \"MEDIUMTEXT\"\nbio: string\n```",
|
|
64
|
-
nodeType: ["prop"],
|
|
65
|
-
multiple: false,
|
|
66
|
-
argument: {
|
|
67
|
-
name: "type",
|
|
68
|
-
type: "string",
|
|
69
|
-
description: "Native MySQL column type (e.g., \"MEDIUMTEXT\", \"TINYTEXT\")."
|
|
70
|
-
}
|
|
71
|
-
}),
|
|
72
|
-
onUpdate: new AnnotationSpec({
|
|
73
|
-
description: "Sets the MySQL ON UPDATE clause for a column.\n\n```atscript\n@db.mysql.onUpdate \"CURRENT_TIMESTAMP\"\nupdatedAt: number.timestamp\n```",
|
|
74
|
-
nodeType: ["prop"],
|
|
75
|
-
multiple: false,
|
|
76
|
-
argument: {
|
|
77
|
-
name: "expression",
|
|
78
|
-
type: "string",
|
|
79
|
-
values: ["CURRENT_TIMESTAMP"],
|
|
80
|
-
description: "Expression to evaluate on row update."
|
|
81
|
-
}
|
|
82
|
-
})
|
|
83
|
-
};
|
|
84
|
-
//#endregion
|
|
85
|
-
//#region src/plugin/index.ts
|
|
86
|
-
const MysqlPlugin = () => ({
|
|
87
|
-
name: "mysql",
|
|
88
|
-
config() {
|
|
89
|
-
return { annotations: { db: { mysql: annotations } } };
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
//#endregion
|
|
93
|
-
export { MysqlPlugin as t };
|