@miguelmorales13/nestkit 0.1.1 → 0.4.0
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/README.md +305 -1
- package/dist/auth/auth-user.entity.d.ts +8 -0
- package/dist/auth/auth-user.port.d.ts +16 -0
- package/dist/auth/auth.controller.d.ts +25 -0
- package/dist/auth/auth.dto.d.ts +13 -0
- package/dist/auth/auth.service.d.ts +24 -0
- package/dist/auth/authenticated-user.d.ts +7 -0
- package/dist/auth/current-tenant.decorator.d.ts +2 -0
- package/dist/auth/current-user.decorator.d.ts +1 -0
- package/dist/auth/hash.util.d.ts +2 -0
- package/dist/auth/index.cjs +265 -0
- package/dist/auth/index.d.ts +16 -0
- package/dist/auth/index.js +265 -0
- package/dist/auth/jwt-auth.guard.d.ts +5 -0
- package/dist/auth/require-tenant.guard.d.ts +9 -0
- package/dist/auth/roles.decorator.d.ts +3 -0
- package/dist/auth/roles.guard.d.ts +11 -0
- package/dist/auth/token.service.d.ts +7 -0
- package/dist/bootstrap/index.cjs +4 -3
- package/dist/bootstrap/index.js +3 -2
- package/dist/{chunk-AUA4X3RE.cjs → chunk-54ZXIB5T.cjs} +3 -3
- package/dist/{chunk-EQXYK6AL.js → chunk-7I2Y7V52.js} +5 -13
- package/dist/chunk-7SOM7EZP.cjs +1 -0
- package/dist/{chunk-VPS5CLHT.js → chunk-AOCF5QCZ.js} +3 -3
- package/dist/chunk-DQYAIQQ5.js +0 -0
- package/dist/{chunk-AR3EKJBR.cjs → chunk-FDNGAYTZ.cjs} +6 -6
- package/dist/{chunk-4IDLJMQA.cjs → chunk-J7TURDAL.cjs} +6 -14
- package/dist/{chunk-HGJX2GPE.js → chunk-ORWJ7LES.js} +1 -1
- package/dist/chunk-R7BVS6CI.cjs +13 -0
- package/dist/chunk-YFYHLYHN.js +13 -0
- package/dist/email/nodemailer/index.cjs +40 -0
- package/dist/email/nodemailer/index.d.ts +1 -0
- package/dist/email/nodemailer/index.js +40 -0
- package/dist/email/nodemailer/nodemailer.module.d.ts +4 -0
- package/dist/email/resend/index.cjs +31 -0
- package/dist/email/resend/index.d.ts +1 -0
- package/dist/email/resend/index.js +31 -0
- package/dist/email/resend/resend.module.d.ts +4 -0
- package/dist/errors/index.cjs +7 -4
- package/dist/errors/index.js +6 -3
- package/dist/index.cjs +17 -14
- package/dist/index.js +20 -17
- package/dist/media/index.cjs +127 -0
- package/dist/media/index.d.ts +5 -0
- package/dist/media/index.js +127 -0
- package/dist/media/media.controller.d.ts +44 -0
- package/dist/media/media.module.d.ts +7 -0
- package/dist/media/media.options.d.ts +13 -0
- package/dist/media/media.service.d.ts +29 -0
- package/dist/meta/index.cjs +164 -0
- package/dist/meta/index.d.ts +3 -0
- package/dist/meta/index.js +164 -0
- package/dist/meta/meta.module.d.ts +16 -0
- package/dist/meta/meta.service.d.ts +81 -0
- package/dist/stripe/index.cjs +78 -0
- package/dist/stripe/index.d.ts +3 -0
- package/dist/stripe/index.js +78 -0
- package/dist/stripe/stripe-webhook.controller.d.ts +20 -0
- package/dist/stripe/stripe.module.d.ts +4 -0
- package/dist/telegram/index.cjs +31 -0
- package/dist/telegram/index.d.ts +1 -0
- package/dist/telegram/index.js +31 -0
- package/dist/telegram/telegram.module.d.ts +8 -0
- package/dist/whatsapp/index.cjs +68 -0
- package/dist/whatsapp/index.d.ts +3 -0
- package/dist/whatsapp/index.js +68 -0
- package/dist/whatsapp/whatsapp-client.d.ts +21 -0
- package/dist/whatsapp/whatsapp.module.d.ts +4 -0
- package/package.json +84 -10
|
File without changes
|
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkR7BVS6CIcjs = require('./chunk-R7BVS6CI.cjs');
|
|
4
4
|
|
|
5
5
|
// src/errors/common.exceptions.ts
|
|
6
6
|
var _common = require('@nestjs/common');
|
|
7
|
-
var NotFoundAppException = class extends
|
|
7
|
+
var NotFoundAppException = class extends _chunkR7BVS6CIcjs.AppException {
|
|
8
8
|
constructor(message = "Resource not found", details, code = "NOT_FOUND") {
|
|
9
9
|
super(code, message, _common.HttpStatus.NOT_FOUND, details);
|
|
10
10
|
}
|
|
11
11
|
};
|
|
12
|
-
var ConflictAppException = class extends
|
|
12
|
+
var ConflictAppException = class extends _chunkR7BVS6CIcjs.AppException {
|
|
13
13
|
constructor(message = "Conflict", details, code = "CONFLICT") {
|
|
14
14
|
super(code, message, _common.HttpStatus.CONFLICT, details);
|
|
15
15
|
}
|
|
16
16
|
};
|
|
17
|
-
var ValidationAppException = class extends
|
|
17
|
+
var ValidationAppException = class extends _chunkR7BVS6CIcjs.AppException {
|
|
18
18
|
constructor(message = "Validation failed", details, code = "VALIDATION_ERROR") {
|
|
19
19
|
super(code, message, _common.HttpStatus.BAD_REQUEST, details);
|
|
20
20
|
}
|
|
21
21
|
};
|
|
22
|
-
var UnauthorizedAppException = class extends
|
|
22
|
+
var UnauthorizedAppException = class extends _chunkR7BVS6CIcjs.AppException {
|
|
23
23
|
constructor(message = "Unauthorized", details, code = "UNAUTHORIZED") {
|
|
24
24
|
super(code, message, _common.HttpStatus.UNAUTHORIZED, details);
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
|
-
var ForbiddenAppException = class extends
|
|
27
|
+
var ForbiddenAppException = class extends _chunkR7BVS6CIcjs.AppException {
|
|
28
28
|
constructor(message = "Forbidden", details, code = "FORBIDDEN") {
|
|
29
29
|
super(code, message, _common.HttpStatus.FORBIDDEN, details);
|
|
30
30
|
}
|
|
@@ -3,25 +3,18 @@
|
|
|
3
3
|
var _chunkZA56XBCKcjs = require('./chunk-ZA56XBCK.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkR7BVS6CIcjs = require('./chunk-R7BVS6CI.cjs');
|
|
7
7
|
|
|
8
|
-
// src/errors/app.exception.ts
|
|
9
|
-
var _common = require('@nestjs/common');
|
|
10
|
-
var AppException = class extends _common.HttpException {
|
|
11
|
-
constructor(code, message, status, details) {
|
|
12
|
-
super({ code, message, details }, status);
|
|
13
|
-
this.code = code;
|
|
14
|
-
this.details = details;
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
8
|
|
|
18
|
-
|
|
9
|
+
var _chunk2REOCMUDcjs = require('./chunk-2REOCMUD.cjs');
|
|
19
10
|
|
|
11
|
+
// src/errors/global-exception.filter.ts
|
|
20
12
|
|
|
21
13
|
|
|
22
14
|
|
|
23
15
|
|
|
24
16
|
|
|
17
|
+
var _common = require('@nestjs/common');
|
|
25
18
|
var GlobalExceptionFilter = class {
|
|
26
19
|
constructor() {
|
|
27
20
|
this.logger = new (0, _common.Logger)(GlobalExceptionFilter.name);
|
|
@@ -46,7 +39,7 @@ var GlobalExceptionFilter = class {
|
|
|
46
39
|
response.status(resolved.status).send(body);
|
|
47
40
|
}
|
|
48
41
|
resolve(exception) {
|
|
49
|
-
if (exception instanceof AppException) {
|
|
42
|
+
if (exception instanceof _chunkR7BVS6CIcjs.AppException) {
|
|
50
43
|
return {
|
|
51
44
|
status: exception.getStatus(),
|
|
52
45
|
code: exception.code,
|
|
@@ -77,5 +70,4 @@ GlobalExceptionFilter = exports.GlobalExceptionFilter = _chunk2REOCMUDcjs.__deco
|
|
|
77
70
|
|
|
78
71
|
|
|
79
72
|
|
|
80
|
-
|
|
81
|
-
exports.AppException = AppException; exports.GlobalExceptionFilter = GlobalExceptionFilter;
|
|
73
|
+
exports.GlobalExceptionFilter = GlobalExceptionFilter;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/errors/app.exception.ts
|
|
2
|
+
var _common = require('@nestjs/common');
|
|
3
|
+
var AppException = class extends _common.HttpException {
|
|
4
|
+
constructor(code, message, status, details) {
|
|
5
|
+
super({ code, message, details }, status);
|
|
6
|
+
this.code = code;
|
|
7
|
+
this.details = details;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
exports.AppException = AppException;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// src/errors/app.exception.ts
|
|
2
|
+
import { HttpException } from "@nestjs/common";
|
|
3
|
+
var AppException = class extends HttpException {
|
|
4
|
+
constructor(code, message, status, details) {
|
|
5
|
+
super({ code, message, details }, status);
|
|
6
|
+
this.code = code;
|
|
7
|
+
this.details = details;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export {
|
|
12
|
+
AppException
|
|
13
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
|
+
|
|
3
|
+
var _chunk2REOCMUDcjs = require('../../chunk-2REOCMUD.cjs');
|
|
4
|
+
|
|
5
|
+
// src/email/nodemailer/nodemailer.module.ts
|
|
6
|
+
var _common = require('@nestjs/common');
|
|
7
|
+
var _nodemailer = require('nodemailer'); var _nodemailer2 = _interopRequireDefault(_nodemailer);
|
|
8
|
+
var NODEMAILER_TRANSPORT = /* @__PURE__ */ Symbol("NODEMAILER_TRANSPORT");
|
|
9
|
+
function requireEnv(name) {
|
|
10
|
+
const value = process.env[name];
|
|
11
|
+
if (!value) {
|
|
12
|
+
throw new Error(`NodemailerModule: ${name} environment variable is not set`);
|
|
13
|
+
}
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
var NodemailerModule = class {
|
|
17
|
+
};
|
|
18
|
+
NodemailerModule = exports.NodemailerModule = _chunk2REOCMUDcjs.__decorateClass.call(void 0, [
|
|
19
|
+
_common.Module.call(void 0, {
|
|
20
|
+
providers: [
|
|
21
|
+
{
|
|
22
|
+
provide: NODEMAILER_TRANSPORT,
|
|
23
|
+
useFactory: () => _nodemailer2.default.createTransport({
|
|
24
|
+
host: requireEnv("SMTP_HOST"),
|
|
25
|
+
port: Number(requireEnv("SMTP_PORT")),
|
|
26
|
+
secure: process.env.SMTP_SECURE === "true",
|
|
27
|
+
auth: {
|
|
28
|
+
user: requireEnv("SMTP_USER"),
|
|
29
|
+
pass: requireEnv("SMTP_PASSWORD")
|
|
30
|
+
}
|
|
31
|
+
})
|
|
32
|
+
}
|
|
33
|
+
],
|
|
34
|
+
exports: [NODEMAILER_TRANSPORT]
|
|
35
|
+
})
|
|
36
|
+
], NodemailerModule);
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
exports.NODEMAILER_TRANSPORT = NODEMAILER_TRANSPORT; exports.NodemailerModule = NodemailerModule;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { NodemailerModule, NODEMAILER_TRANSPORT } from './nodemailer.module.js';
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__decorateClass
|
|
3
|
+
} from "../../chunk-4MGIQFAJ.js";
|
|
4
|
+
|
|
5
|
+
// src/email/nodemailer/nodemailer.module.ts
|
|
6
|
+
import { Module } from "@nestjs/common";
|
|
7
|
+
import nodemailer from "nodemailer";
|
|
8
|
+
var NODEMAILER_TRANSPORT = /* @__PURE__ */ Symbol("NODEMAILER_TRANSPORT");
|
|
9
|
+
function requireEnv(name) {
|
|
10
|
+
const value = process.env[name];
|
|
11
|
+
if (!value) {
|
|
12
|
+
throw new Error(`NodemailerModule: ${name} environment variable is not set`);
|
|
13
|
+
}
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
var NodemailerModule = class {
|
|
17
|
+
};
|
|
18
|
+
NodemailerModule = __decorateClass([
|
|
19
|
+
Module({
|
|
20
|
+
providers: [
|
|
21
|
+
{
|
|
22
|
+
provide: NODEMAILER_TRANSPORT,
|
|
23
|
+
useFactory: () => nodemailer.createTransport({
|
|
24
|
+
host: requireEnv("SMTP_HOST"),
|
|
25
|
+
port: Number(requireEnv("SMTP_PORT")),
|
|
26
|
+
secure: process.env.SMTP_SECURE === "true",
|
|
27
|
+
auth: {
|
|
28
|
+
user: requireEnv("SMTP_USER"),
|
|
29
|
+
pass: requireEnv("SMTP_PASSWORD")
|
|
30
|
+
}
|
|
31
|
+
})
|
|
32
|
+
}
|
|
33
|
+
],
|
|
34
|
+
exports: [NODEMAILER_TRANSPORT]
|
|
35
|
+
})
|
|
36
|
+
], NodemailerModule);
|
|
37
|
+
export {
|
|
38
|
+
NODEMAILER_TRANSPORT,
|
|
39
|
+
NodemailerModule
|
|
40
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
var _chunk2REOCMUDcjs = require('../../chunk-2REOCMUD.cjs');
|
|
4
|
+
|
|
5
|
+
// src/email/resend/resend.module.ts
|
|
6
|
+
var _common = require('@nestjs/common');
|
|
7
|
+
var _resend = require('resend');
|
|
8
|
+
var RESEND_CLIENT = /* @__PURE__ */ Symbol("RESEND_CLIENT");
|
|
9
|
+
var ResendModule = class {
|
|
10
|
+
};
|
|
11
|
+
ResendModule = exports.ResendModule = _chunk2REOCMUDcjs.__decorateClass.call(void 0, [
|
|
12
|
+
_common.Module.call(void 0, {
|
|
13
|
+
providers: [
|
|
14
|
+
{
|
|
15
|
+
provide: RESEND_CLIENT,
|
|
16
|
+
useFactory: () => {
|
|
17
|
+
const apiKey = process.env.RESEND_API_KEY;
|
|
18
|
+
if (!apiKey) {
|
|
19
|
+
throw new Error("ResendModule: RESEND_API_KEY environment variable is not set");
|
|
20
|
+
}
|
|
21
|
+
return new (0, _resend.Resend)(apiKey);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
],
|
|
25
|
+
exports: [RESEND_CLIENT]
|
|
26
|
+
})
|
|
27
|
+
], ResendModule);
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
exports.RESEND_CLIENT = RESEND_CLIENT; exports.ResendModule = ResendModule;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ResendModule, RESEND_CLIENT } from './resend.module.js';
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__decorateClass
|
|
3
|
+
} from "../../chunk-4MGIQFAJ.js";
|
|
4
|
+
|
|
5
|
+
// src/email/resend/resend.module.ts
|
|
6
|
+
import { Module } from "@nestjs/common";
|
|
7
|
+
import { Resend } from "resend";
|
|
8
|
+
var RESEND_CLIENT = /* @__PURE__ */ Symbol("RESEND_CLIENT");
|
|
9
|
+
var ResendModule = class {
|
|
10
|
+
};
|
|
11
|
+
ResendModule = __decorateClass([
|
|
12
|
+
Module({
|
|
13
|
+
providers: [
|
|
14
|
+
{
|
|
15
|
+
provide: RESEND_CLIENT,
|
|
16
|
+
useFactory: () => {
|
|
17
|
+
const apiKey = process.env.RESEND_API_KEY;
|
|
18
|
+
if (!apiKey) {
|
|
19
|
+
throw new Error("ResendModule: RESEND_API_KEY environment variable is not set");
|
|
20
|
+
}
|
|
21
|
+
return new Resend(apiKey);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
],
|
|
25
|
+
exports: [RESEND_CLIENT]
|
|
26
|
+
})
|
|
27
|
+
], ResendModule);
|
|
28
|
+
export {
|
|
29
|
+
RESEND_CLIENT,
|
|
30
|
+
ResendModule
|
|
31
|
+
};
|
package/dist/errors/index.cjs
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-7SOM7EZP.cjs');
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var _chunkAR3EKJBRcjs = require('../chunk-AR3EKJBR.cjs');
|
|
8
7
|
|
|
8
|
+
var _chunkFDNGAYTZcjs = require('../chunk-FDNGAYTZ.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _chunkJ7TURDALcjs = require('../chunk-J7TURDAL.cjs');
|
|
12
12
|
require('../chunk-ZA56XBCK.cjs');
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
var _chunkR7BVS6CIcjs = require('../chunk-R7BVS6CI.cjs');
|
|
13
16
|
require('../chunk-2REOCMUD.cjs');
|
|
14
17
|
|
|
15
18
|
|
|
@@ -19,4 +22,4 @@ require('../chunk-2REOCMUD.cjs');
|
|
|
19
22
|
|
|
20
23
|
|
|
21
24
|
|
|
22
|
-
exports.AppException =
|
|
25
|
+
exports.AppException = _chunkR7BVS6CIcjs.AppException; exports.ConflictAppException = _chunkFDNGAYTZcjs.ConflictAppException; exports.ForbiddenAppException = _chunkFDNGAYTZcjs.ForbiddenAppException; exports.GlobalExceptionFilter = _chunkJ7TURDALcjs.GlobalExceptionFilter; exports.NotFoundAppException = _chunkFDNGAYTZcjs.NotFoundAppException; exports.UnauthorizedAppException = _chunkFDNGAYTZcjs.UnauthorizedAppException; exports.ValidationAppException = _chunkFDNGAYTZcjs.ValidationAppException;
|
package/dist/errors/index.js
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
|
+
import "../chunk-DQYAIQQ5.js";
|
|
1
2
|
import {
|
|
2
3
|
ConflictAppException,
|
|
3
4
|
ForbiddenAppException,
|
|
4
5
|
NotFoundAppException,
|
|
5
6
|
UnauthorizedAppException,
|
|
6
7
|
ValidationAppException
|
|
7
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-ORWJ7LES.js";
|
|
8
9
|
import {
|
|
9
|
-
AppException,
|
|
10
10
|
GlobalExceptionFilter
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-7I2Y7V52.js";
|
|
12
12
|
import "../chunk-EBO6UKHL.js";
|
|
13
|
+
import {
|
|
14
|
+
AppException
|
|
15
|
+
} from "../chunk-YFYHLYHN.js";
|
|
13
16
|
import "../chunk-4MGIQFAJ.js";
|
|
14
17
|
export {
|
|
15
18
|
AppException,
|
package/dist/index.cjs
CHANGED
|
@@ -1,51 +1,54 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
3
2
|
|
|
4
3
|
|
|
5
4
|
|
|
6
5
|
var _chunkRF75KC63cjs = require('./chunk-RF75KC63.cjs');
|
|
6
|
+
require('./chunk-MR2IFCZE.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
var
|
|
12
|
-
|
|
11
|
+
var _chunkV2M75FN3cjs = require('./chunk-V2M75FN3.cjs');
|
|
12
|
+
require('./chunk-KVBQBT3D.cjs');
|
|
13
13
|
|
|
14
|
-
var _chunkAUA4X3REcjs = require('./chunk-AUA4X3RE.cjs');
|
|
15
14
|
|
|
16
15
|
|
|
17
16
|
|
|
18
|
-
var
|
|
17
|
+
var _chunkSPTDXUEDcjs = require('./chunk-SPTDXUED.cjs');
|
|
19
18
|
|
|
20
19
|
|
|
20
|
+
var _chunk54ZXIB5Tcjs = require('./chunk-54ZXIB5T.cjs');
|
|
21
21
|
|
|
22
22
|
|
|
23
|
+
var _chunkTJHRABMLcjs = require('./chunk-TJHRABML.cjs');
|
|
23
24
|
|
|
24
25
|
|
|
25
|
-
var _chunkAR3EKJBRcjs = require('./chunk-AR3EKJBR.cjs');
|
|
26
26
|
|
|
27
|
+
var _chunk3CLYZC3Tcjs = require('./chunk-3CLYZC3T.cjs');
|
|
28
|
+
require('./chunk-7SOM7EZP.cjs');
|
|
27
29
|
|
|
28
30
|
|
|
29
|
-
var _chunk4IDLJMQAcjs = require('./chunk-4IDLJMQA.cjs');
|
|
30
31
|
|
|
31
32
|
|
|
32
|
-
var _chunkQS2W5XCQcjs = require('./chunk-QS2W5XCQ.cjs');
|
|
33
|
-
require('./chunk-MR2IFCZE.cjs');
|
|
34
33
|
|
|
35
34
|
|
|
36
|
-
var
|
|
35
|
+
var _chunkFDNGAYTZcjs = require('./chunk-FDNGAYTZ.cjs');
|
|
37
36
|
|
|
38
37
|
|
|
38
|
+
var _chunkJ7TURDALcjs = require('./chunk-J7TURDAL.cjs');
|
|
39
39
|
|
|
40
40
|
|
|
41
|
-
var
|
|
41
|
+
var _chunkZA56XBCKcjs = require('./chunk-ZA56XBCK.cjs');
|
|
42
42
|
|
|
43
43
|
|
|
44
|
-
var
|
|
44
|
+
var _chunkR7BVS6CIcjs = require('./chunk-R7BVS6CI.cjs');
|
|
45
45
|
|
|
46
46
|
|
|
47
47
|
|
|
48
48
|
var _chunkM3EL5O6Tcjs = require('./chunk-M3EL5O6T.cjs');
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
var _chunkQS2W5XCQcjs = require('./chunk-QS2W5XCQ.cjs');
|
|
49
52
|
require('./chunk-2REOCMUD.cjs');
|
|
50
53
|
|
|
51
54
|
|
|
@@ -72,4 +75,4 @@ require('./chunk-2REOCMUD.cjs');
|
|
|
72
75
|
|
|
73
76
|
|
|
74
77
|
|
|
75
|
-
exports.AppException =
|
|
78
|
+
exports.AppException = _chunkR7BVS6CIcjs.AppException; exports.BaseCrudService = _chunk3CLYZC3Tcjs.BaseCrudService; exports.BaseResponseDto = _chunkQS2W5XCQcjs.BaseResponseDto; exports.ConflictAppException = _chunkFDNGAYTZcjs.ConflictAppException; exports.ForbiddenAppException = _chunkFDNGAYTZcjs.ForbiddenAppException; exports.GlobalExceptionFilter = _chunkJ7TURDALcjs.GlobalExceptionFilter; exports.I18nModule = _chunkM3EL5O6Tcjs.I18nModule; exports.NotFoundAppException = _chunkFDNGAYTZcjs.NotFoundAppException; exports.PG_POOL = _chunkRF75KC63cjs.PG_POOL; exports.PgModule = _chunkRF75KC63cjs.PgModule; exports.REQUEST_ID_HEADER = _chunkV2M75FN3cjs.REQUEST_ID_HEADER; exports.RequestContext = _chunkZA56XBCKcjs.RequestContext; exports.RequestIdMiddleware = _chunkV2M75FN3cjs.RequestIdMiddleware; exports.ResponseInterceptor = _chunkTJHRABMLcjs.ResponseInterceptor; exports.SUPABASE_ANON_CLIENT = _chunkSPTDXUEDcjs.SUPABASE_ANON_CLIENT; exports.SUPABASE_SERVICE_ROLE_CLIENT = _chunkSPTDXUEDcjs.SUPABASE_SERVICE_ROLE_CLIENT; exports.SupabaseModule = _chunkSPTDXUEDcjs.SupabaseModule; exports.TrackingModule = _chunkV2M75FN3cjs.TrackingModule; exports.UnauthorizedAppException = _chunkFDNGAYTZcjs.UnauthorizedAppException; exports.ValidationAppException = _chunkFDNGAYTZcjs.ValidationAppException; exports.applyNestKitDefaults = _chunk54ZXIB5Tcjs.applyNestKitDefaults; exports.createCrudController = _chunk3CLYZC3Tcjs.createCrudController; exports.translateOr = _chunkM3EL5O6Tcjs.translateOr; exports.withTenantScope = _chunkRF75KC63cjs.withTenantScope;
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
import "./chunk-EPVKCBPT.js";
|
|
2
1
|
import {
|
|
3
2
|
PG_POOL,
|
|
4
3
|
PgModule,
|
|
5
4
|
withTenantScope
|
|
6
5
|
} from "./chunk-VKOPDDCC.js";
|
|
6
|
+
import "./chunk-NAK4WDKS.js";
|
|
7
|
+
import {
|
|
8
|
+
REQUEST_ID_HEADER,
|
|
9
|
+
RequestIdMiddleware,
|
|
10
|
+
TrackingModule
|
|
11
|
+
} from "./chunk-EYURGACO.js";
|
|
12
|
+
import "./chunk-EPVKCBPT.js";
|
|
7
13
|
import {
|
|
8
14
|
SUPABASE_ANON_CLIENT,
|
|
9
15
|
SUPABASE_SERVICE_ROLE_CLIENT,
|
|
@@ -11,41 +17,38 @@ import {
|
|
|
11
17
|
} from "./chunk-PA24P76K.js";
|
|
12
18
|
import {
|
|
13
19
|
applyNestKitDefaults
|
|
14
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-AOCF5QCZ.js";
|
|
21
|
+
import {
|
|
22
|
+
ResponseInterceptor
|
|
23
|
+
} from "./chunk-KDAA6GFF.js";
|
|
15
24
|
import {
|
|
16
25
|
BaseCrudService,
|
|
17
26
|
createCrudController
|
|
18
27
|
} from "./chunk-JOVBJDJ2.js";
|
|
28
|
+
import "./chunk-DQYAIQQ5.js";
|
|
19
29
|
import {
|
|
20
30
|
ConflictAppException,
|
|
21
31
|
ForbiddenAppException,
|
|
22
32
|
NotFoundAppException,
|
|
23
33
|
UnauthorizedAppException,
|
|
24
34
|
ValidationAppException
|
|
25
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-ORWJ7LES.js";
|
|
26
36
|
import {
|
|
27
|
-
AppException,
|
|
28
37
|
GlobalExceptionFilter
|
|
29
|
-
} from "./chunk-
|
|
30
|
-
import {
|
|
31
|
-
BaseResponseDto
|
|
32
|
-
} from "./chunk-XX2HPTRU.js";
|
|
33
|
-
import "./chunk-NAK4WDKS.js";
|
|
34
|
-
import {
|
|
35
|
-
ResponseInterceptor
|
|
36
|
-
} from "./chunk-KDAA6GFF.js";
|
|
37
|
-
import {
|
|
38
|
-
REQUEST_ID_HEADER,
|
|
39
|
-
RequestIdMiddleware,
|
|
40
|
-
TrackingModule
|
|
41
|
-
} from "./chunk-EYURGACO.js";
|
|
38
|
+
} from "./chunk-7I2Y7V52.js";
|
|
42
39
|
import {
|
|
43
40
|
RequestContext
|
|
44
41
|
} from "./chunk-EBO6UKHL.js";
|
|
42
|
+
import {
|
|
43
|
+
AppException
|
|
44
|
+
} from "./chunk-YFYHLYHN.js";
|
|
45
45
|
import {
|
|
46
46
|
I18nModule,
|
|
47
47
|
translateOr
|
|
48
48
|
} from "./chunk-IYUUYCP5.js";
|
|
49
|
+
import {
|
|
50
|
+
BaseResponseDto
|
|
51
|
+
} from "./chunk-XX2HPTRU.js";
|
|
49
52
|
import "./chunk-4MGIQFAJ.js";
|
|
50
53
|
export {
|
|
51
54
|
AppException,
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunk2REOCMUDcjs = require('../chunk-2REOCMUD.cjs');
|
|
5
|
+
|
|
6
|
+
// src/media/media.module.ts
|
|
7
|
+
var _common = require('@nestjs/common');
|
|
8
|
+
|
|
9
|
+
// src/media/media.controller.ts
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
// src/media/media.service.ts
|
|
24
|
+
|
|
25
|
+
var _crypto = require('crypto');
|
|
26
|
+
var MediaService = class {
|
|
27
|
+
constructor(ttlMs) {
|
|
28
|
+
this.ttlMs = ttlMs;
|
|
29
|
+
this.logger = new (0, _common.Logger)(MediaService.name);
|
|
30
|
+
this.store = /* @__PURE__ */ new Map();
|
|
31
|
+
}
|
|
32
|
+
store_(data, contentType) {
|
|
33
|
+
return this.put(data, contentType);
|
|
34
|
+
}
|
|
35
|
+
put(data, contentType) {
|
|
36
|
+
this.sweep();
|
|
37
|
+
const id = _crypto.randomUUID.call(void 0, ).replace(/-/g, "");
|
|
38
|
+
this.store.set(id, { data, contentType, expiresAt: Date.now() + this.ttlMs });
|
|
39
|
+
this.logger.log(`Stored ${id} (${(data.length / 1024).toFixed(0)} KB)`);
|
|
40
|
+
return id;
|
|
41
|
+
}
|
|
42
|
+
get(id) {
|
|
43
|
+
const found = this.store.get(id);
|
|
44
|
+
if (!found) return void 0;
|
|
45
|
+
if (Date.now() > found.expiresAt) {
|
|
46
|
+
this.store.delete(id);
|
|
47
|
+
return void 0;
|
|
48
|
+
}
|
|
49
|
+
return found;
|
|
50
|
+
}
|
|
51
|
+
/** Swept on write, which is the only moment the map can have grown. */
|
|
52
|
+
sweep() {
|
|
53
|
+
const now = Date.now();
|
|
54
|
+
for (const [id, entry] of this.store) {
|
|
55
|
+
if (now > entry.expiresAt) this.store.delete(id);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
MediaService = exports.MediaService = _chunk2REOCMUDcjs.__decorateClass.call(void 0, [
|
|
60
|
+
_common.Injectable.call(void 0, )
|
|
61
|
+
], MediaService);
|
|
62
|
+
|
|
63
|
+
// src/media/media.options.ts
|
|
64
|
+
var MEDIA_OPTIONS = /* @__PURE__ */ Symbol("MEDIA_OPTIONS");
|
|
65
|
+
|
|
66
|
+
// src/media/media.controller.ts
|
|
67
|
+
var MediaController = class {
|
|
68
|
+
constructor(media, options) {
|
|
69
|
+
this.media = media;
|
|
70
|
+
this.options = options;
|
|
71
|
+
}
|
|
72
|
+
upload(request, secret) {
|
|
73
|
+
if (!this.options.uploadSecret) {
|
|
74
|
+
throw new (0, _common.UnauthorizedException)("Media uploads are not configured.");
|
|
75
|
+
}
|
|
76
|
+
if (secret !== this.options.uploadSecret) {
|
|
77
|
+
throw new (0, _common.UnauthorizedException)("Invalid secret.");
|
|
78
|
+
}
|
|
79
|
+
const data = request.body;
|
|
80
|
+
if (!_optionalChain([data, 'optionalAccess', _ => _.length])) throw new (0, _common.UnauthorizedException)("Empty body.");
|
|
81
|
+
const id = this.media.put(Buffer.from(data), _nullishCoalesce(request.headers["content-type"], () => ( "image/png")));
|
|
82
|
+
return { url: `${this.options.publicUrl}/media/${id}` };
|
|
83
|
+
}
|
|
84
|
+
serve(id, reply) {
|
|
85
|
+
const found = this.media.get(id);
|
|
86
|
+
if (!found) throw new (0, _common.NotFoundException)("That file is no longer available.");
|
|
87
|
+
reply.header("content-type", found.contentType).header("cache-control", "no-store").send(found.data);
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
_chunk2REOCMUDcjs.__decorateClass.call(void 0, [
|
|
91
|
+
_common.Post.call(void 0, "media"),
|
|
92
|
+
_chunk2REOCMUDcjs.__decorateParam.call(void 0, 0, _common.Req.call(void 0, )),
|
|
93
|
+
_chunk2REOCMUDcjs.__decorateParam.call(void 0, 1, _common.Headers.call(void 0, "x-media-secret"))
|
|
94
|
+
], MediaController.prototype, "upload", 1);
|
|
95
|
+
_chunk2REOCMUDcjs.__decorateClass.call(void 0, [
|
|
96
|
+
_common.Get.call(void 0, "media/:id"),
|
|
97
|
+
_chunk2REOCMUDcjs.__decorateParam.call(void 0, 0, _common.Param.call(void 0, "id")),
|
|
98
|
+
_chunk2REOCMUDcjs.__decorateParam.call(void 0, 1, _common.Res.call(void 0, ))
|
|
99
|
+
], MediaController.prototype, "serve", 1);
|
|
100
|
+
MediaController = _chunk2REOCMUDcjs.__decorateClass.call(void 0, [
|
|
101
|
+
_common.Controller.call(void 0, ),
|
|
102
|
+
_chunk2REOCMUDcjs.__decorateParam.call(void 0, 1, _common.Inject.call(void 0, MEDIA_OPTIONS))
|
|
103
|
+
], MediaController);
|
|
104
|
+
|
|
105
|
+
// src/media/media.module.ts
|
|
106
|
+
var ONE_HOUR = 60 * 60 * 1e3;
|
|
107
|
+
var MediaModule = class {
|
|
108
|
+
static forRoot(options) {
|
|
109
|
+
return {
|
|
110
|
+
module: MediaModule,
|
|
111
|
+
controllers: [MediaController],
|
|
112
|
+
providers: [
|
|
113
|
+
{ provide: MEDIA_OPTIONS, useValue: options },
|
|
114
|
+
{ provide: MediaService, useFactory: () => new MediaService(_nullishCoalesce(options.ttlMs, () => ( ONE_HOUR))) }
|
|
115
|
+
],
|
|
116
|
+
exports: [MediaService]
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
MediaModule = exports.MediaModule = _chunk2REOCMUDcjs.__decorateClass.call(void 0, [
|
|
121
|
+
_common.Module.call(void 0, {})
|
|
122
|
+
], MediaModule);
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
exports.MEDIA_OPTIONS = MEDIA_OPTIONS; exports.MediaModule = MediaModule; exports.MediaService = MediaService;
|