@digione/node-custom-api 0.1.9-beta10 → 0.1.9-beta12
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/package.json +1 -1
- package/utils/db.js +5 -5
- package/utils/file.js +3 -0
- package/utils/helper.d.ts +3 -0
- package/utils/helper.js +14 -3
- package/utils/stream.js +2 -0
package/package.json
CHANGED
package/utils/db.js
CHANGED
|
@@ -32,12 +32,12 @@ const getWhereVal = (smth) => {
|
|
|
32
32
|
return [key, value].join(` ${smth.comparator} `);
|
|
33
33
|
};
|
|
34
34
|
const genWhere = (where = {}, { as = "", delimiter = ".", prefix = true, bracket = false } = {}) => {
|
|
35
|
-
|
|
35
|
+
let keyPrefix = as ? "`" + as + "`" + delimiter : as;
|
|
36
36
|
let symbolKeys = Object.getOwnPropertySymbols(where);
|
|
37
37
|
let rawWhere = (Object.keys(where).concat(symbolKeys)).reduce((result, key) => {
|
|
38
38
|
let value = where[key];
|
|
39
39
|
if (typeof value !== 'undefined') {
|
|
40
|
-
key = typeof (
|
|
40
|
+
key = typeof (key) == "string" ? keyPrefix + "`" + key + "`" : key;
|
|
41
41
|
if (typeof (value) == "string") {
|
|
42
42
|
value = SqlString.escape(value);
|
|
43
43
|
}
|
|
@@ -48,7 +48,7 @@ const genWhere = (where = {}, { as = "", delimiter = ".", prefix = true, bracket
|
|
|
48
48
|
result = `${result}( ${op}) AND `;
|
|
49
49
|
}
|
|
50
50
|
else {
|
|
51
|
-
result = result +
|
|
51
|
+
result = result + key + ` IN (${value.map(i => "'" + i + "'").join(',')}) AND `;
|
|
52
52
|
}
|
|
53
53
|
return result;
|
|
54
54
|
}
|
|
@@ -62,10 +62,10 @@ const genWhere = (where = {}, { as = "", delimiter = ".", prefix = true, bracket
|
|
|
62
62
|
return result;
|
|
63
63
|
}
|
|
64
64
|
else if (typeof value == "object" && value['val']) {
|
|
65
|
-
result = result +
|
|
65
|
+
result = result + key + `=${value['val']} AND `;
|
|
66
66
|
return result;
|
|
67
67
|
}
|
|
68
|
-
result = result +
|
|
68
|
+
result = result + key + "=" + value + " AND ";
|
|
69
69
|
}
|
|
70
70
|
return result;
|
|
71
71
|
}, "");
|
package/utils/file.js
CHANGED
|
@@ -133,6 +133,7 @@ class FileUtil {
|
|
|
133
133
|
let reqs = [], results = [];
|
|
134
134
|
for (let file of files) {
|
|
135
135
|
let extension = mime.extension(file.mimetype);
|
|
136
|
+
extension = extension ? extension : String(file.mimetype).split('/')[1];
|
|
136
137
|
let input = {
|
|
137
138
|
Bucket: this.bucket,
|
|
138
139
|
Key: this.ref + "/" + (0, helper_1.getDateTime)().format('X') + '.' + (0, helper_1.getSlug)(32) + '.' + extension,
|
|
@@ -406,6 +407,7 @@ class FileUtil {
|
|
|
406
407
|
let folder = yield this.createFolder(slug, { parent_id, root, name });
|
|
407
408
|
for (let file of req.files) {
|
|
408
409
|
let extension = mime.extension(file.mimetype);
|
|
410
|
+
extension = extension ? extension : String(file.mimetype).split('/')[1];
|
|
409
411
|
let input = {
|
|
410
412
|
Bucket: this.bucket,
|
|
411
413
|
Key: this.ref + "/" + (0, helper_1.getDateTime)().format('X') + '.' + (0, helper_1.getSlug)(32) + '.' + extension,
|
|
@@ -579,6 +581,7 @@ class FileUtil {
|
|
|
579
581
|
path = (index < 0) ? protocol + path : path;
|
|
580
582
|
}
|
|
581
583
|
let extension = mime.extension(reqs[key].mimetype);
|
|
584
|
+
extension = extension ? extension : String(reqs[key].mimetype).split('/')[1];
|
|
582
585
|
let item = Object.assign(Object.assign({}, input), { folder_id,
|
|
583
586
|
user_id,
|
|
584
587
|
organ_id,
|
package/utils/helper.d.ts
CHANGED
|
@@ -50,6 +50,9 @@ export declare const removeHyphen: (str: string, replace?: string, { encode, rep
|
|
|
50
50
|
export declare const getMobileNumber: (str: string, { prefix }?: {
|
|
51
51
|
prefix?: string;
|
|
52
52
|
}) => string;
|
|
53
|
+
export declare const formatMobileNumber: (str: string, { prefix }?: {
|
|
54
|
+
prefix?: string;
|
|
55
|
+
}) => string;
|
|
53
56
|
export declare const removeSpace: (str: string, replace?: string) => string;
|
|
54
57
|
export declare const removeAt: (str: string, replace?: string) => string;
|
|
55
58
|
export declare const isNumber: (val: any, { negative }?: {
|
package/utils/helper.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.convertCurrency = exports.xorMerge = exports.xorDecode = exports.xorEncode = exports.getInstanceNumber = exports.getDomain = exports.getParent = exports.replaceColon = exports.stripHtml = exports.slugifyField = exports.slugify = exports.convertToBigEndian = exports.expandTree = exports.buildTree = exports.treeToArray = exports.randomRef = exports.multiExecArray = exports.isBase64 = exports.isNumber = exports.removeAt = exports.removeSpace = exports.getMobileNumber = exports.removeHyphen = exports.signToken = exports.getTokenDataFromTokenBySecret = exports.getUUID32 = exports.getUUID = exports.sleep = exports.getValueByLang = exports.getValueFunctionLang = exports.getValueFunctionFile = exports.getDateTime = exports.getTimestampMysql = exports.getDateMysql = exports.getSlug = exports.getENV = exports.Joi_date = exports.getDaysBetweenDates = exports.getDateFromString = exports.getDateRangeFormat = void 0;
|
|
3
|
+
exports.convertCurrency = exports.xorMerge = exports.xorDecode = exports.xorEncode = exports.getInstanceNumber = exports.getDomain = exports.getParent = exports.replaceColon = exports.stripHtml = exports.slugifyField = exports.slugify = exports.convertToBigEndian = exports.expandTree = exports.buildTree = exports.treeToArray = exports.randomRef = exports.multiExecArray = exports.isBase64 = exports.isNumber = exports.removeAt = exports.removeSpace = exports.formatMobileNumber = exports.getMobileNumber = exports.removeHyphen = exports.signToken = exports.getTokenDataFromTokenBySecret = exports.getUUID32 = exports.getUUID = exports.sleep = exports.getValueByLang = exports.getValueFunctionLang = exports.getValueFunctionFile = exports.getDateTime = exports.getTimestampMysql = exports.getDateMysql = exports.getSlug = exports.getENV = exports.Joi_date = exports.getDaysBetweenDates = exports.getDateFromString = exports.getDateRangeFormat = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const crypto = require("crypto");
|
|
6
6
|
const dotenv = require("dotenv");
|
|
@@ -154,14 +154,25 @@ exports.removeHyphen = removeHyphen;
|
|
|
154
154
|
const getMobileNumber = (str, { prefix = "+66" } = {}) => {
|
|
155
155
|
if (str) {
|
|
156
156
|
str = str.replace(/_/g, "").replace(/-/g, "").replace(/ /g, "");
|
|
157
|
-
if (str.indexOf("+") == -1 && str.length == 10) {
|
|
158
|
-
str
|
|
157
|
+
if (str.indexOf("+") == -1 && (str.length == 10 || str.length == 9)) {
|
|
158
|
+
if (str.length == 10 && str[0] == "0")
|
|
159
|
+
str = str.substr(1);
|
|
159
160
|
str = prefix + str;
|
|
160
161
|
}
|
|
161
162
|
}
|
|
162
163
|
return str;
|
|
163
164
|
};
|
|
164
165
|
exports.getMobileNumber = getMobileNumber;
|
|
166
|
+
const formatMobileNumber = (str, { prefix = "+66" } = {}) => {
|
|
167
|
+
if (str) {
|
|
168
|
+
str = str.replace(/_/g, "").replace(/-/g, "").replace(/ /g, "").replace(prefix, "");
|
|
169
|
+
if (str.length == 9) {
|
|
170
|
+
str = "0" + str;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return str;
|
|
174
|
+
};
|
|
175
|
+
exports.formatMobileNumber = formatMobileNumber;
|
|
165
176
|
const removeSpace = (str, replace = "") => {
|
|
166
177
|
return str ? str.replace(/ /g, replace) : "";
|
|
167
178
|
};
|
package/utils/stream.js
CHANGED
|
@@ -1925,11 +1925,13 @@ class StreamUtil {
|
|
|
1925
1925
|
allow_type = new RegExp(/^(image.*)$/).test(file[field_slug]['mimetype']);
|
|
1926
1926
|
if (!allow_type) {
|
|
1927
1927
|
input[field_slug] = mime.extension(file[field_slug]['mimetype']);
|
|
1928
|
+
input[field_slug] = input[field_slug] ? input[field_slug] : String(file[field_slug]['mimetype']).split('/')[1];
|
|
1928
1929
|
field = Joi.string().valid('image/*');
|
|
1929
1930
|
}
|
|
1930
1931
|
}
|
|
1931
1932
|
if (!allow_type && field_data['allowed_types']) {
|
|
1932
1933
|
let extension = String(mime.extension(file[field_slug]['mimetype']));
|
|
1934
|
+
extension = extension ? extension : String(file[field_slug]['mimetype']).split('/')[1];
|
|
1933
1935
|
if (!new RegExp(`^(${field_data['allowed_types']})$`).test(extension)) {
|
|
1934
1936
|
input[field_slug] = extension;
|
|
1935
1937
|
field = Joi.string().valid(...(field_data['allowed_types'].split('|') || []));
|