编译选项

This commit is contained in:
Xu Chang 2022-08-18 19:58:28 +08:00
parent 6128aaa84d
commit 917266e29d
7 changed files with 71 additions and 189 deletions

View File

@ -1,48 +1,10 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.MySqlConnector = void 0;
var mysql2_1 = __importDefault(require("mysql2"));
var tslib_1 = require("tslib");
var mysql2_1 = tslib_1.__importDefault(require("mysql2"));
var uuid_1 = require("uuid");
var assert_1 = __importDefault(require("assert"));
var assert_1 = tslib_1.__importDefault(require("assert"));
var MySqlConnector = /** @class */ (function () {
function MySqlConnector(configuration) {
this.configuration = configuration;
@ -93,10 +55,10 @@ var MySqlConnector = /** @class */ (function () {
});
};
MySqlConnector.prototype.exec = function (sql, txn) {
return __awaiter(this, void 0, void 0, function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var connection_1;
var _this = this;
return __generator(this, function (_a) {
return tslib_1.__generator(this, function (_a) {
if (process.env.NODE_ENV === 'development') {
console.log(sql);
}

View File

@ -1,65 +1,12 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.MysqlStore = void 0;
var tslib_1 = require("tslib");
var CascadeStore_1 = require("oak-domain/lib/store/CascadeStore");
var connector_1 = require("./connector");
var translator_1 = require("./translator");
var lodash_1 = require("lodash");
var assert_1 = __importDefault(require("assert"));
var assert_1 = tslib_1.__importDefault(require("assert"));
var relation_1 = require("oak-domain/lib/store/relation");
function convertGeoTextToObject(geoText) {
if (geoText.startsWith('POINT')) {
@ -74,7 +21,7 @@ function convertGeoTextToObject(geoText) {
}
}
var MysqlStore = /** @class */ (function (_super) {
__extends(MysqlStore, _super);
tslib_1.__extends(MysqlStore, _super);
function MysqlStore(storageSchema, configuration) {
var _this = _super.call(this, storageSchema) || this;
_this.connector = new connector_1.MySqlConnector(configuration);
@ -207,9 +154,9 @@ var MysqlStore = /** @class */ (function (_super) {
return formSingleRow(result);
};
MysqlStore.prototype.selectAbjointRow = function (entity, selection, context, option) {
return __awaiter(this, void 0, void 0, function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var sql, result;
return __generator(this, function (_a) {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0:
sql = this.translator.translateSelect(entity, selection, option);
@ -222,9 +169,9 @@ var MysqlStore = /** @class */ (function (_super) {
});
};
MysqlStore.prototype.updateAbjointRow = function (entity, operation, context, option) {
return __awaiter(this, void 0, void 0, function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var _a, translator, connector, action, txn, _b, data, sql, sql, sql;
return __generator(this, function (_c) {
return tslib_1.__generator(this, function (_c) {
switch (_c.label) {
case 0:
_a = this, translator = _a.translator, connector = _a.connector;
@ -285,9 +232,9 @@ var MysqlStore = /** @class */ (function (_super) {
});
};
MysqlStore.prototype.operate = function (entity, operation, context, params) {
return __awaiter(this, void 0, void 0, function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var action;
return __generator(this, function (_a) {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0:
action = operation.action;
@ -299,9 +246,9 @@ var MysqlStore = /** @class */ (function (_super) {
});
};
MysqlStore.prototype.select = function (entity, selection, context, option) {
return __awaiter(this, void 0, void 0, function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var result;
return __generator(this, function (_a) {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.cascadeSelect(entity, selection, context, option)];
case 1:
@ -314,9 +261,9 @@ var MysqlStore = /** @class */ (function (_super) {
});
};
MysqlStore.prototype.count = function (entity, selection, context, option) {
return __awaiter(this, void 0, void 0, function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var sql, result;
return __generator(this, function (_a) {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0:
sql = this.translator.translateCount(entity, selection, option);
@ -329,9 +276,9 @@ var MysqlStore = /** @class */ (function (_super) {
});
};
MysqlStore.prototype.begin = function (option) {
return __awaiter(this, void 0, void 0, function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var txn;
return __generator(this, function (_a) {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.connector.startTransaction(option)];
case 1:
@ -342,8 +289,8 @@ var MysqlStore = /** @class */ (function (_super) {
});
};
MysqlStore.prototype.commit = function (txnId) {
return __awaiter(this, void 0, void 0, function () {
return __generator(this, function (_a) {
return tslib_1.__awaiter(this, void 0, void 0, function () {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.connector.commitTransaction(txnId)];
case 1:
@ -354,8 +301,8 @@ var MysqlStore = /** @class */ (function (_super) {
});
};
MysqlStore.prototype.rollback = function (txnId) {
return __awaiter(this, void 0, void 0, function () {
return __generator(this, function (_a) {
return tslib_1.__awaiter(this, void 0, void 0, function () {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.connector.rollbackTransaction(txnId)];
case 1:
@ -372,9 +319,9 @@ var MysqlStore = /** @class */ (function (_super) {
this.connector.disconnect();
};
MysqlStore.prototype.initialize = function (dropIfExists) {
return __awaiter(this, void 0, void 0, function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var schema, _a, _b, _i, entity, sqls, _c, sqls_1, sql;
return __generator(this, function (_d) {
return tslib_1.__generator(this, function (_d) {
switch (_d.label) {
case 0:
schema = this.getSchema();

View File

@ -1,25 +1,8 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.MySqlTranslator = void 0;
var assert_1 = __importDefault(require("assert"));
var tslib_1 = require("tslib");
var assert_1 = tslib_1.__importDefault(require("assert"));
var util_1 = require("util");
var lodash_1 = require("lodash");
var luxon_1 = require("luxon");
@ -89,7 +72,7 @@ function transformGeoData(data) {
}
}
var MySqlTranslator = /** @class */ (function (_super) {
__extends(MySqlTranslator, _super);
tslib_1.__extends(MySqlTranslator, _super);
function MySqlTranslator(schema) {
var _this = _super.call(this, schema) || this;
_this.maxAliasLength = 63;

View File

@ -1,17 +1,4 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
__exportStar(require("./MySQL/store"), exports);
var tslib_1 = require("tslib");
tslib_1.__exportStar(require("./MySQL/store"), exports);

View File

@ -1,10 +1,8 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.SqlTranslator = void 0;
var assert_1 = __importDefault(require("assert"));
var tslib_1 = require("tslib");
var assert_1 = tslib_1.__importDefault(require("assert"));
var lodash_1 = require("lodash");
var luxon_1 = require("luxon");
var types_1 = require("oak-domain/lib/types");

View File

@ -1,34 +1,38 @@
{
"name": "oak-db",
"version": "1.0.0",
"description": "oak-db",
"main": "src/index.ts",
"author": {
"name": "XuChang"
},
"scripts": {
"test": "mocha",
"make:test:domain": "ts-node script/makeTestDomain.ts",
"build": "tsc"
},
"dependencies": {
"lodash": "^4.17.21",
"luxon": "^2.4.0",
"mysql": "^2.18.1",
"mysql2": "^2.3.3",
"oak-domain": "file:../oak-domain",
"uuid": "^8.3.2"
},
"license": "ISC",
"devDependencies": {
"@types/lodash": "^4.14.182",
"@types/luxon": "^2.3.2",
"@types/mocha": "^9.1.1",
"@types/node": "^17.0.42",
"@types/uuid": "^8.3.4",
"mocha": "^10.0.0",
"oak-general-business": "file:../oak-general-business",
"ts-node": "^10.8.1",
"typescript": "^4.7.3"
}
}
"name": "oak-db",
"version": "1.0.1",
"description": "oak-db",
"main": "src/index.ts",
"author": {
"name": "XuChang"
},
"files": [
"lib/**/*"
],
"scripts": {
"test": "mocha",
"make:test:domain": "ts-node script/makeTestDomain.ts",
"build": "tsc"
},
"dependencies": {
"lodash": "^4.17.21",
"luxon": "^2.4.0",
"mysql": "^2.18.1",
"mysql2": "^2.3.3",
"oak-domain": "file:../oak-domain",
"uuid": "^8.3.2"
},
"license": "ISC",
"devDependencies": {
"@types/lodash": "^4.14.182",
"@types/luxon": "^2.3.2",
"@types/mocha": "^9.1.1",
"@types/node": "^17.0.42",
"@types/uuid": "^8.3.4",
"mocha": "^10.0.0",
"oak-general-business": "file:../oak-general-business",
"ts-node": "~10.9.1",
"tslib": "^2.4.0",
"typescript": "~4.7.4"
}
}

View File

@ -9,6 +9,7 @@
"experimentalDecorators": true,
"strict": true,
"skipLibCheck": true,
"importHelpers": true,
"lib": [
"ES2020",
"DOM"