@digione/node-custom-api 0.1.4-beta → 0.1.5
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/stream.js +26 -2
package/package.json
CHANGED
package/utils/stream.js
CHANGED
|
@@ -572,6 +572,11 @@ class StreamUtil {
|
|
|
572
572
|
field_data['code']['field_value'] = default_value[field_data['code']['field_target']] || field_data['code']['field_value'];
|
|
573
573
|
}
|
|
574
574
|
}
|
|
575
|
+
else if (item['field_type'] == "map") {
|
|
576
|
+
if (field_data['range'] && field_data['range']['field_target']) {
|
|
577
|
+
field_data['range']['field_value'] = default_value[field_data['range']['field_target']];
|
|
578
|
+
}
|
|
579
|
+
}
|
|
575
580
|
}
|
|
576
581
|
fields.push(Object.assign(Object.assign({}, item), { field_data }));
|
|
577
582
|
}
|
|
@@ -1468,7 +1473,7 @@ class StreamUtil {
|
|
|
1468
1473
|
opt['defaultValue'] = field_data['default_value'];
|
|
1469
1474
|
}
|
|
1470
1475
|
if (changeTable) {
|
|
1471
|
-
let fields = [];
|
|
1476
|
+
let fields = [], range = {};
|
|
1472
1477
|
switch (field['field_type']) {
|
|
1473
1478
|
case (field['is_lang'] == "yes" ? field['field_type'] : ""):
|
|
1474
1479
|
opt['defaultValue'] = undefined;
|
|
@@ -1510,7 +1515,7 @@ class StreamUtil {
|
|
|
1510
1515
|
break;
|
|
1511
1516
|
case "datetime":
|
|
1512
1517
|
fields = [field_slug];
|
|
1513
|
-
|
|
1518
|
+
range = field_data['range'] || {};
|
|
1514
1519
|
if (range['field_target']) {
|
|
1515
1520
|
fields.push(range['field_target']);
|
|
1516
1521
|
}
|
|
@@ -1560,6 +1565,16 @@ class StreamUtil {
|
|
|
1560
1565
|
opt['defaultValue'] = _.isNumber(opt['defaultValue']) ? opt['defaultValue'] : undefined;
|
|
1561
1566
|
yield (0, db_1.addColumn)(`${this.ref}_${table}`, field_slug, Object.assign({ type: sequelize.INTEGER({ length: 11 }) }, opt));
|
|
1562
1567
|
break;
|
|
1568
|
+
case "map":
|
|
1569
|
+
fields = [field_slug];
|
|
1570
|
+
range = field_data['range'] || {};
|
|
1571
|
+
if (range['field_target']) {
|
|
1572
|
+
fields.push(range['field_target']);
|
|
1573
|
+
}
|
|
1574
|
+
for (let field_slug of fields) {
|
|
1575
|
+
yield (0, db_1.addColumn)(`${this.ref}_${table}`, field_slug, Object.assign({ type: sequelize.STRING(20) }, opt));
|
|
1576
|
+
}
|
|
1577
|
+
break;
|
|
1563
1578
|
}
|
|
1564
1579
|
}
|
|
1565
1580
|
}
|
|
@@ -1850,6 +1865,15 @@ class StreamUtil {
|
|
|
1850
1865
|
field = Joi.alternatives(Joi.number(), field);
|
|
1851
1866
|
}
|
|
1852
1867
|
break;
|
|
1868
|
+
case "map":
|
|
1869
|
+
field = Joi.string();
|
|
1870
|
+
if (!is_required)
|
|
1871
|
+
field = field.allow(null, '');
|
|
1872
|
+
if (field_data['range'] && field_data['range']['field_target']) {
|
|
1873
|
+
schema[field_data['range']['field_target']] = field.regex(/^(\+|-)?(?:180(?:(?:\.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:\.[0-9]{1,6})?))$/).messages({ 'string.pattern.base': `${field_slug} invalid format` });
|
|
1874
|
+
}
|
|
1875
|
+
field = field.regex(/^(\+|-)?(?:90(?:(?:\.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:\.[0-9]{1,6})?))$/).messages({ 'string.pattern.base': `${field_slug} invalid format` });
|
|
1876
|
+
break;
|
|
1853
1877
|
}
|
|
1854
1878
|
field = field || Joi.any();
|
|
1855
1879
|
if (is_required)
|