@stemy/backend 2.6.0 → 2.7.2

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.
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
2
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('path'), require('body-parser'), require('jsonwebtoken'), require('tsyringe'), require('routing-controllers'), require('socket-controllers'), require('routing-controllers-openapi'), require('class-transformer/storage'), require('class-validator'), require('class-validator-jsonschema'), require('child_process'), require('crypto'), require('rxjs'), require('rxjs/internal/util/canReportError'), require('fs'), require('mongoose'), require('mongoose/lib/utils'), require('stream'), require('bson'), require('fontkit'), require('file-type'), require('sharp'), require('mongodb'), require('dotenv'), require('node-resque'), require('node-cron'), require('ioredis'), require('socket.io-client'), require('http'), require('express'), require('socket.io'), require('uuid'), require('nodemailer'), require('handlebars'), require('axios'), require('bcrypt'), require('moment')) :
3
3
  typeof define === 'function' && define.amd ? define('@stemy/backend', ['exports', 'path', 'body-parser', 'jsonwebtoken', 'tsyringe', 'routing-controllers', 'socket-controllers', 'routing-controllers-openapi', 'class-transformer/storage', 'class-validator', 'class-validator-jsonschema', 'child_process', 'crypto', 'rxjs', 'rxjs/internal/util/canReportError', 'fs', 'mongoose', 'mongoose/lib/utils', 'stream', 'bson', 'fontkit', 'file-type', 'sharp', 'mongodb', 'dotenv', 'node-resque', 'node-cron', 'ioredis', 'socket.io-client', 'http', 'express', 'socket.io', 'uuid', 'nodemailer', 'handlebars', 'axios', 'bcrypt', 'moment'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.stemy = global.stemy || {}, global.stemy.backend = {}), global.path, global['body-parser'], global.jsonwebtoken, global.tsyringe, global['routing-controllers'], global['socket-controllers'], global['routing-controllers-openapi'], global['class-transformer/storage'], global['class-validator'], global['class-validator-jsonschema'], global.child_process, global.crypto, global.rxjs, global.rxjs['internal/util/canReportError'], global.fs, global.mongoose, global['mongoose-lib-utils'], global.stream, global.bson, global.fontkit, global['file-type'], global.sharp, global.mongodb, global.dotenv, global['node-resque'], global['node-cron'], global.ioredis, global.socket['io-client'], global.http, global.express, global.socket.io, global.uuid, global.nodemailer, global.handlebars, global.axios, global.bcrypt, global.moment));
5
- }(this, (function (exports, path, bodyParser, jsonwebtoken, tsyringe, routingControllers, socketControllers, routingControllersOpenapi, storage, classValidator, classValidatorJsonschema, child_process, crypto, rxjs, canReportError, fs, mongoose, utils, stream, bson, fontKit_, fileType, sharp_, mongodb, dotenv, nodeResque, nodeCron, ioredis, socket_io_client, http, express_, socket_io, uuid, nodemailer, Handlebars, axios, bcrypt, moment) { 'use strict';
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.stemy = global.stemy || {}, global.stemy.backend = {}), global.path, global["body-parser"], global.jsonwebtoken, global.tsyringe, global["routing-controllers"], global["socket-controllers"], global["routing-controllers-openapi"], global["class-transformer/storage"], global["class-validator"], global["class-validator-jsonschema"], global.child_process, global.crypto, global.rxjs, global.rxjs["internal/util/canReportError"], global.fs, global.mongoose, global["mongoose-lib-utils"], global.stream, global.bson, global.fontkit, global["file-type"], global.sharp, global.mongodb, global.dotenv, global["node-resque"], global["node-cron"], global.ioredis, global.socket["io-client"], global.http, global.express, global.socket.io, global.uuid, global.nodemailer, global.handlebars, global.axios, global.bcrypt, global.moment));
5
+ })(this, (function (exports, path, bodyParser, jsonwebtoken, tsyringe, routingControllers, socketControllers, routingControllersOpenapi, storage, classValidator, classValidatorJsonschema, child_process, crypto, rxjs, canReportError, fs, mongoose, utils, stream, bson, fontKit_, fileType, sharp_, mongodb, dotenv, nodeResque, nodeCron, ioredis, socket_io_client, http, express_, socket_io, uuid, nodemailer, Handlebars, axios, bcrypt, moment) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -15,14 +15,12 @@
15
15
  var d = Object.getOwnPropertyDescriptor(e, k);
16
16
  Object.defineProperty(n, k, d.get ? d : {
17
17
  enumerable: true,
18
- get: function () {
19
- return e[k];
20
- }
18
+ get: function () { return e[k]; }
21
19
  });
22
20
  }
23
21
  });
24
22
  }
25
- n['default'] = e;
23
+ n["default"] = e;
26
24
  return Object.freeze(n);
27
25
  }
28
26
 
@@ -415,6 +413,34 @@
415
413
  function isType(value) {
416
414
  return isConstructor(value);
417
415
  }
416
+ function isInterface(obj, interFaceObject) {
417
+ var e_1, _a;
418
+ if (!obj || typeof obj !== "object" || isArray(obj) || !isObject(interFaceObject))
419
+ return false;
420
+ var keys = Object.keys(interFaceObject);
421
+ try {
422
+ for (var keys_1 = __values(keys), keys_1_1 = keys_1.next(); !keys_1_1.done; keys_1_1 = keys_1.next()) {
423
+ var key = keys_1_1.value;
424
+ var type = interFaceObject[key] || "";
425
+ if (type.startsWith("*")) {
426
+ type = type.substr(1);
427
+ if (obj.hasOwnProperty(key) && getType(obj[key]) !== type)
428
+ return false;
429
+ }
430
+ else if (!obj.hasOwnProperty(key) || getType(obj[key]) !== type) {
431
+ return false;
432
+ }
433
+ }
434
+ }
435
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
436
+ finally {
437
+ try {
438
+ if (keys_1_1 && !keys_1_1.done && (_a = keys_1.return)) _a.call(keys_1);
439
+ }
440
+ finally { if (e_1) throw e_1.error; }
441
+ }
442
+ return true;
443
+ }
418
444
  function ucFirst(value) {
419
445
  if (!value)
420
446
  return "";
@@ -531,7 +557,7 @@
531
557
  return shouldUnwind ? pipelines : pipelines.slice(0, 0);
532
558
  }
533
559
  function hydratePopulated(modelType, json) {
534
- var e_1, _a;
560
+ var e_2, _a;
535
561
  var object = modelType.hydrate(json);
536
562
  var _loop_1 = function (path, obj) {
537
563
  var ref = obj.ref, type = obj.type;
@@ -558,12 +584,12 @@
558
584
  _loop_1(path, obj);
559
585
  }
560
586
  }
561
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
587
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
562
588
  finally {
563
589
  try {
564
590
  if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
565
591
  }
566
- finally { if (e_1) throw e_1.error; }
592
+ finally { if (e_2) throw e_2.error; }
567
593
  }
568
594
  return object;
569
595
  }
@@ -786,7 +812,7 @@
786
812
  return routingControllers.createParamDecorator({
787
813
  required: false,
788
814
  value: function (action) { return __awaiter$u(_this, void 0, void 0, function () {
789
- var req, token, id, query, doc, _a, _b, e_2;
815
+ var req, token, id, query, doc, _a, _b, e_3;
790
816
  return __generator(this, function (_c) {
791
817
  switch (_c.label) {
792
818
  case 0:
@@ -818,8 +844,8 @@
818
844
  _a[_b] = (_c.sent()) || doc;
819
845
  return [2 /*return*/, action.request[paramName]];
820
846
  case 4:
821
- e_2 = _c.sent();
822
- throw new routingControllers.BadRequestError(modelName + " check error: " + (e_2.message || e_2));
847
+ e_3 = _c.sent();
848
+ throw new routingControllers.BadRequestError(modelName + " check error: " + (e_3.message || e_3));
823
849
  case 5:
824
850
  action.request[paramName] = doc;
825
851
  return [2 /*return*/, doc];
@@ -922,7 +948,7 @@
922
948
  var defaultPredicate = function () { return true; };
923
949
  var ɵ0 = defaultPredicate;
924
950
  function copyRecursive(target, source, predicate) {
925
- var e_3, _a;
951
+ var e_4, _a;
926
952
  predicate = predicate || defaultPredicate;
927
953
  if (isPrimitive(source) || isDate(source) || isFunction(source))
928
954
  return source;
@@ -966,12 +992,12 @@
966
992
  target.set(key, !shouldCopy(key, value) ? value : copyRecursive(target.get(key), value, predicate));
967
993
  }
968
994
  }
969
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
995
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
970
996
  finally {
971
997
  try {
972
998
  if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
973
999
  }
974
- finally { if (e_3) throw e_3.error; }
1000
+ finally { if (e_4) throw e_4.error; }
975
1001
  }
976
1002
  }
977
1003
  return target;
@@ -1180,8 +1206,8 @@
1180
1206
  });
1181
1207
  };
1182
1208
  var AssetProcessor_1;
1183
- var sharp$3 = sharp___default['default'];
1184
- var fontKit = fontKit___default['default'];
1209
+ var sharp$3 = sharp___default["default"];
1210
+ var fontKit = fontKit___default["default"];
1185
1211
  var fontTypes = [
1186
1212
  "application/font-woff", "application/font-woff2", "application/x-font-opentype", "application/x-font-truetype", "application/x-font-datafork",
1187
1213
  "font/woff", "font/woff2", "font/otf", "font/ttf", "font/datafork"
@@ -1307,7 +1333,7 @@
1307
1333
  exports.Configuration = /** @class */ (function () {
1308
1334
  function Configuration(params) {
1309
1335
  var _this = this;
1310
- dotenv__default['default'].config();
1336
+ dotenv__default["default"].config();
1311
1337
  this.paramMap = {};
1312
1338
  (params || []).forEach(function (param) { return _this.add(param); });
1313
1339
  }
@@ -1457,7 +1483,13 @@
1457
1483
  step((generator = generator.apply(thisArg, _arguments || [])).next());
1458
1484
  });
1459
1485
  };
1460
- var sharp$2 = sharp___default['default'];
1486
+ var sharp$2 = sharp___default["default"];
1487
+ var cropInterface = {
1488
+ x: "number",
1489
+ y: "number",
1490
+ w: "number",
1491
+ h: "number"
1492
+ };
1461
1493
  var Asset = /** @class */ (function () {
1462
1494
  function Asset(fileId, filename, contentType, metadata, bucket, collection) {
1463
1495
  this.fileId = fileId;
@@ -1467,9 +1499,28 @@
1467
1499
  this.bucket = bucket;
1468
1500
  this.collection = collection;
1469
1501
  }
1470
- Asset.toImage = function (stream, params) {
1502
+ Asset.toCropRegion = function (cropInfo) {
1503
+ var crop = cropInfo;
1504
+ if (isString(cropInfo)) {
1505
+ try {
1506
+ crop = JSON.parse(cropInfo);
1507
+ }
1508
+ catch (e) {
1509
+ return null;
1510
+ }
1511
+ }
1512
+ if (!isInterface(crop, cropInterface))
1513
+ return null;
1514
+ return {
1515
+ width: Math.round(crop.w),
1516
+ height: Math.round(crop.h),
1517
+ top: Math.round(crop.y),
1518
+ left: Math.round(crop.x)
1519
+ };
1520
+ };
1521
+ Asset.toImage = function (stream, meta, params) {
1471
1522
  return __awaiter$r(this, void 0, void 0, function () {
1472
- var buffer, meta, width, height, e_1;
1523
+ var buffer, crop, cropBefore, cropAfter, imgMeta, width, height, e_1;
1473
1524
  return __generator(this, function (_a) {
1474
1525
  switch (_a.label) {
1475
1526
  case 0:
@@ -1485,44 +1536,77 @@
1485
1536
  params.canvasScaleY = isNaN(params.canvasScaleY) ? 1 : params.canvasScaleY;
1486
1537
  params.scaleX = isNaN(params.scaleX) ? 1 : params.scaleX;
1487
1538
  params.scaleY = isNaN(params.scaleY) ? 1 : params.scaleY;
1539
+ params.crop = isBoolean(params.crop) ? params.crop : params.crop == "true";
1488
1540
  _a.label = 2;
1489
1541
  case 2:
1490
- _a.trys.push([2, 10, , 11]);
1542
+ _a.trys.push([2, 16, , 17]);
1543
+ crop = Asset.toCropRegion(meta.crop);
1544
+ cropBefore = Asset.toCropRegion(params.cropBefore || (params.crop ? meta.cropBefore : null));
1545
+ cropAfter = Asset.toCropRegion(params.cropAfter || (params.crop ? meta.cropAfter : null));
1491
1546
  return [4 /*yield*/, sharp$2(buffer).metadata()];
1492
1547
  case 3:
1493
- meta = _a.sent();
1494
- width = meta.width;
1495
- height = meta.height;
1496
- if (!(params.canvasScaleX !== 1 || params.canvasScaleY !== 1)) return [3 /*break*/, 5];
1497
- width = Math.round(width * params.canvasScaleX);
1498
- height = Math.round(height * params.canvasScaleY);
1548
+ imgMeta = _a.sent();
1549
+ width = imgMeta.width;
1550
+ height = imgMeta.height;
1551
+ if (!cropBefore) return [3 /*break*/, 5];
1499
1552
  return [4 /*yield*/, sharp$2(buffer)
1500
- .resize({ width: width, height: height, background: "#00000000", fit: "contain" })
1553
+ .extract(cropBefore)
1501
1554
  .toBuffer()];
1502
1555
  case 4:
1503
1556
  buffer = _a.sent();
1504
- _a.label = 5;
1557
+ width = cropBefore.width;
1558
+ height = cropBefore.height;
1559
+ return [3 /*break*/, 7];
1505
1560
  case 5:
1506
- if (!(params.scaleX !== 1 || params.scaleY !== 1)) return [3 /*break*/, 7];
1507
- width = Math.round(width * params.scaleX);
1508
- height = Math.round(height * params.scaleY);
1561
+ if (!crop) return [3 /*break*/, 7];
1509
1562
  return [4 /*yield*/, sharp$2(buffer)
1510
- .resize({ width: width, height: height, background: "#00000000", fit: "fill" })
1563
+ .extract(crop)
1511
1564
  .toBuffer()];
1512
1565
  case 6:
1513
1566
  buffer = _a.sent();
1567
+ width = crop.width;
1568
+ height = crop.height;
1514
1569
  _a.label = 7;
1515
1570
  case 7:
1516
- if (!(params.rotation !== 0)) return [3 /*break*/, 9];
1517
- return [4 /*yield*/, sharp$2(buffer).rotate(params.rotation).toBuffer()];
1571
+ if (!(params.canvasScaleX !== 1 || params.canvasScaleY !== 1)) return [3 /*break*/, 9];
1572
+ width = Math.round(width * params.canvasScaleX);
1573
+ height = Math.round(height * params.canvasScaleY);
1574
+ return [4 /*yield*/, sharp$2(buffer)
1575
+ .resize({ width: width, height: height, background: "#00000000", fit: "contain" })
1576
+ .toBuffer()];
1518
1577
  case 8:
1519
1578
  buffer = _a.sent();
1520
1579
  _a.label = 9;
1521
- case 9: return [2 /*return*/, bufferToStream(buffer)];
1580
+ case 9:
1581
+ if (!(params.scaleX !== 1 || params.scaleY !== 1)) return [3 /*break*/, 11];
1582
+ width = Math.round(width * params.scaleX);
1583
+ height = Math.round(height * params.scaleY);
1584
+ return [4 /*yield*/, sharp$2(buffer)
1585
+ .resize({ width: width, height: height, background: "#00000000", fit: "fill" })
1586
+ .toBuffer()];
1522
1587
  case 10:
1588
+ buffer = _a.sent();
1589
+ _a.label = 11;
1590
+ case 11:
1591
+ if (!cropAfter) return [3 /*break*/, 13];
1592
+ return [4 /*yield*/, sharp$2(buffer)
1593
+ .extract(cropAfter)
1594
+ .toBuffer()];
1595
+ case 12:
1596
+ buffer = _a.sent();
1597
+ _a.label = 13;
1598
+ case 13:
1599
+ if (!(params.rotation !== 0)) return [3 /*break*/, 15];
1600
+ return [4 /*yield*/, sharp$2(buffer).rotate(params.rotation).toBuffer()];
1601
+ case 14:
1602
+ buffer = _a.sent();
1603
+ _a.label = 15;
1604
+ case 15: return [2 /*return*/, bufferToStream(buffer)];
1605
+ case 16:
1523
1606
  e_1 = _a.sent();
1607
+ console.log("Asset image conversion error", e_1);
1524
1608
  return [2 /*return*/, bufferToStream(buffer)];
1525
- case 11: return [2 /*return*/];
1609
+ case 17: return [2 /*return*/];
1526
1610
  }
1527
1611
  });
1528
1612
  });
@@ -1574,7 +1658,7 @@
1574
1658
  if (params === void 0) { params = null; }
1575
1659
  return __awaiter$r(this, void 0, void 0, function () {
1576
1660
  return __generator(this, function (_a) {
1577
- return [2 /*return*/, Asset.toImage(this.stream, params)];
1661
+ return [2 /*return*/, Asset.toImage(this.stream, this.metadata, params)];
1578
1662
  });
1579
1663
  });
1580
1664
  };
@@ -1586,7 +1670,7 @@
1586
1670
  case 0:
1587
1671
  _b = (_a = Asset).toImage;
1588
1672
  return [4 /*yield*/, this.download(metadata)];
1589
- case 1: return [2 /*return*/, _b.apply(_a, [_c.sent(), params])];
1673
+ case 1: return [2 /*return*/, _b.apply(_a, [_c.sent(), this.metadata, params])];
1590
1674
  }
1591
1675
  });
1592
1676
  });
@@ -1637,10 +1721,11 @@
1637
1721
  };
1638
1722
  exports.Assets = /** @class */ (function () {
1639
1723
  function Assets(connector, assetProcessor) {
1724
+ var _a;
1640
1725
  this.connector = connector;
1641
1726
  this.assetProcessor = assetProcessor;
1642
1727
  this.bucket = connector.bucket;
1643
- this.collection = connector.database.collection("assets.files");
1728
+ this.collection = (_a = connector.database) === null || _a === void 0 ? void 0 : _a.collection("assets.files");
1644
1729
  }
1645
1730
  Assets.prototype.write = function (stream, contentType, metadata) {
1646
1731
  if (contentType === void 0) { contentType = null; }
@@ -1648,23 +1733,23 @@
1648
1733
  return __awaiter$q(this, void 0, void 0, function () {
1649
1734
  var extension, fileTypeStream, uploadStream, fileType$1, e_1;
1650
1735
  var _this = this;
1651
- return __generator(this, function (_a) {
1652
- switch (_a.label) {
1736
+ return __generator(this, function (_b) {
1737
+ switch (_b.label) {
1653
1738
  case 0:
1654
1739
  extension = null;
1655
1740
  fileTypeStream = copyStream(stream);
1656
1741
  uploadStream = copyStream(stream);
1657
- _a.label = 1;
1742
+ _b.label = 1;
1658
1743
  case 1:
1659
- _a.trys.push([1, 3, , 4]);
1744
+ _b.trys.push([1, 3, , 4]);
1660
1745
  return [4 /*yield*/, fileType.fromStream(fileTypeStream)];
1661
1746
  case 2:
1662
- fileType$1 = _a.sent();
1747
+ fileType$1 = _b.sent();
1663
1748
  contentType = fileType$1.mime;
1664
1749
  extension = fileType$1.ext;
1665
1750
  return [3 /*break*/, 4];
1666
1751
  case 3:
1667
- e_1 = _a.sent();
1752
+ e_1 = _b.sent();
1668
1753
  if (!contentType) {
1669
1754
  throw "Can't determine content type";
1670
1755
  }
@@ -1703,15 +1788,15 @@
1703
1788
  if (metadata === void 0) { metadata = null; }
1704
1789
  if (contentType === void 0) { contentType = null; }
1705
1790
  return __awaiter$q(this, void 0, void 0, function () {
1706
- return __generator(this, function (_a) {
1707
- switch (_a.label) {
1791
+ return __generator(this, function (_b) {
1792
+ switch (_b.label) {
1708
1793
  case 0: return [4 /*yield*/, exports.AssetProcessor.getMimeType(buffer, contentType)];
1709
1794
  case 1:
1710
- contentType = _a.sent();
1795
+ contentType = _b.sent();
1711
1796
  metadata = metadata || {};
1712
1797
  return [4 /*yield*/, this.assetProcessor.process(buffer, metadata, contentType)];
1713
1798
  case 2:
1714
- buffer = _a.sent();
1799
+ buffer = _b.sent();
1715
1800
  return [2 /*return*/, this.write(bufferToStream(buffer), contentType, metadata)];
1716
1801
  }
1717
1802
  });
@@ -1719,7 +1804,7 @@
1719
1804
  };
1720
1805
  Assets.prototype.read = function (id) {
1721
1806
  return __awaiter$q(this, void 0, void 0, function () {
1722
- return __generator(this, function (_a) {
1807
+ return __generator(this, function (_b) {
1723
1808
  return [2 /*return*/, this.find({ _id: new bson.ObjectId(id) })];
1724
1809
  });
1725
1810
  });
@@ -1727,11 +1812,11 @@
1727
1812
  Assets.prototype.find = function (where) {
1728
1813
  return __awaiter$q(this, void 0, void 0, function () {
1729
1814
  var data;
1730
- return __generator(this, function (_a) {
1731
- switch (_a.label) {
1815
+ return __generator(this, function (_b) {
1816
+ switch (_b.label) {
1732
1817
  case 0: return [4 /*yield*/, this.collection.findOne(where)];
1733
1818
  case 1:
1734
- data = _a.sent();
1819
+ data = _b.sent();
1735
1820
  return [2 /*return*/, !data ? null : new Asset(data._id, data.filename, data.contentType, data.metadata, this.bucket, this.collection)];
1736
1821
  }
1737
1822
  });
@@ -1740,11 +1825,11 @@
1740
1825
  Assets.prototype.unlink = function (id) {
1741
1826
  return __awaiter$q(this, void 0, void 0, function () {
1742
1827
  var asset;
1743
- return __generator(this, function (_a) {
1744
- switch (_a.label) {
1828
+ return __generator(this, function (_b) {
1829
+ switch (_b.label) {
1745
1830
  case 0: return [4 /*yield*/, this.read(id)];
1746
1831
  case 1:
1747
- asset = _a.sent();
1832
+ asset = _b.sent();
1748
1833
  if (!asset)
1749
1834
  return [2 /*return*/, null];
1750
1835
  return [2 /*return*/, asset.unlink()];
@@ -1947,7 +2032,7 @@
1947
2032
  step((generator = generator.apply(thisArg, _arguments || [])).next());
1948
2033
  });
1949
2034
  };
1950
- var IORedis = ioredis__default['default'];
2035
+ var IORedis = ioredis__default["default"];
1951
2036
  exports.JobManager = /** @class */ (function () {
1952
2037
  function JobManager(config, container, jobTypes) {
1953
2038
  var _this = this;
@@ -2559,7 +2644,7 @@
2559
2644
  step((generator = generator.apply(thisArg, _arguments || [])).next());
2560
2645
  });
2561
2646
  };
2562
- var socketIOClient = socket_io_client__default['default'];
2647
+ var socketIOClient = socket_io_client__default["default"];
2563
2648
  exports.Progresses = /** @class */ (function () {
2564
2649
  function Progresses(connector, config) {
2565
2650
  this.connector = connector;
@@ -2859,8 +2944,8 @@
2859
2944
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
2860
2945
  return Reflect.metadata(k, v);
2861
2946
  };
2862
- var express = express___default['default'];
2863
- var socketIO = socket_io__default['default'];
2947
+ var express = express___default["default"];
2948
+ var socketIO = socket_io__default["default"];
2864
2949
  exports.BackendProvider = /** @class */ (function () {
2865
2950
  function BackendProvider() {
2866
2951
  this.express = express();
@@ -3251,7 +3336,7 @@
3251
3336
  step((generator = generator.apply(thisArg, _arguments || [])).next());
3252
3337
  });
3253
3338
  };
3254
- var sharp$1 = sharp___default['default'];
3339
+ var sharp$1 = sharp___default["default"];
3255
3340
  var bigSize = 1500;
3256
3341
  var thumbSize = 250;
3257
3342
  var GalleryImage = /** @class */ (function () {
@@ -3378,7 +3463,7 @@
3378
3463
  step((generator = generator.apply(thisArg, _arguments || [])).next());
3379
3464
  });
3380
3465
  };
3381
- var sharp = sharp___default['default'];
3466
+ var sharp = sharp___default["default"];
3382
3467
  exports.Gallery = /** @class */ (function () {
3383
3468
  function Gallery(config, galleryCache) {
3384
3469
  this.config = config;
@@ -3617,7 +3702,7 @@
3617
3702
  this.cache = {};
3618
3703
  }
3619
3704
  TranslationProvider.prototype.getDictionary = function (language) {
3620
- this.cache[language] = this.cache[language] || axios__default['default'].get(this.config.resolve("translationsTemplate").replace("[lang]", language)).then(function (r) { return r.data; }, function (reason) { return ({
3705
+ this.cache[language] = this.cache[language] || axios__default["default"].get(this.config.resolve("translationsTemplate").replace("[lang]", language)).then(function (r) { return r.data; }, function (reason) { return ({
3621
3706
  message: reason
3622
3707
  }); });
3623
3708
  return this.cache[language];
@@ -4745,9 +4830,9 @@
4745
4830
  function RequestEndedMiddleware() {
4746
4831
  }
4747
4832
  RequestEndedMiddleware.prototype.use = function (request, response, next) {
4748
- request.ended = moment__default['default']();
4833
+ request.ended = moment__default["default"]();
4749
4834
  var diff = request.ended.diff(request.started);
4750
- var duration = moment__default['default'].duration(diff);
4835
+ var duration = moment__default["default"].duration(diff);
4751
4836
  console.log("Request '" + request.id + "' ended at: " + request.ended.format("YYYY-MM-DD HH:mm:ss") + " [" + request.method + "] " + request.url);
4752
4837
  console.log("Request '" + request.id + "' lasted: " + duration.asMilliseconds() + "ms");
4753
4838
  next(null);
@@ -4774,7 +4859,7 @@
4774
4859
  }
4775
4860
  RequestStartedMiddleware.prototype.use = function (request, response, next) {
4776
4861
  request.id = new bson.ObjectId().toHexString();
4777
- request.started = moment__default['default']();
4862
+ request.started = moment__default["default"]();
4778
4863
  console.log("Request '" + request.id + "' started at: " + request.started.format("YYYY-MM-DD HH:mm:ss") + " [" + request.method + "] " + request.url);
4779
4864
  next(null);
4780
4865
  };
@@ -5176,7 +5261,7 @@
5176
5261
  console.log(browserFolder, fs.existsSync(browserFolder));
5177
5262
  if (fs.existsSync(browserFolder)) {
5178
5263
  console.log("public_html exists. setting up static files serving...");
5179
- app.use(express_['static'](browserFolder, {
5264
+ app.use(express_["static"](browserFolder, {
5180
5265
  maxAge: "1y"
5181
5266
  }));
5182
5267
  }
@@ -5636,6 +5721,7 @@
5636
5721
  exports.isDate = isDate;
5637
5722
  exports.isDefined = isDefined;
5638
5723
  exports.isFunction = isFunction;
5724
+ exports.isInterface = isInterface;
5639
5725
  exports.isNullOrUndefined = isNullOrUndefined;
5640
5726
  exports.isObject = isObject;
5641
5727
  exports.isPrimitive = isPrimitive;
@@ -5668,5 +5754,5 @@
5668
5754
 
5669
5755
  Object.defineProperty(exports, '__esModule', { value: true });
5670
5756
 
5671
- })));
5757
+ }));
5672
5758
  //# sourceMappingURL=stemy-backend.umd.js.map