@bgord/bun 1.23.12 → 1.24.1
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/dist/atomic-file-writer-collecting.adapter.d.ts +8 -0
- package/dist/atomic-file-writer-collecting.adapter.d.ts.map +1 -0
- package/dist/atomic-file-writer-collecting.adapter.js +7 -0
- package/dist/atomic-file-writer-collecting.adapter.js.map +1 -0
- package/dist/atomic-file-writer-noop.adapter.d.ts +7 -0
- package/dist/atomic-file-writer-noop.adapter.d.ts.map +1 -0
- package/dist/atomic-file-writer-noop.adapter.js +4 -0
- package/dist/atomic-file-writer-noop.adapter.js.map +1 -0
- package/dist/atomic-file-writer.adapter.d.ts +19 -0
- package/dist/atomic-file-writer.adapter.d.ts.map +1 -0
- package/dist/atomic-file-writer.adapter.js +18 -0
- package/dist/atomic-file-writer.adapter.js.map +1 -0
- package/dist/atomic-file-writer.port.d.ts +6 -0
- package/dist/atomic-file-writer.port.d.ts.map +1 -0
- package/dist/atomic-file-writer.port.js +2 -0
- package/dist/atomic-file-writer.port.js.map +1 -0
- package/dist/encryption-aes-gcm.adapter.d.ts +2 -2
- package/dist/encryption-aes-gcm.adapter.d.ts.map +1 -1
- package/dist/encryption-aes-gcm.adapter.js +2 -2
- package/dist/encryption-aes-gcm.adapter.js.map +1 -1
- package/dist/event-sourced-repository.adapter.d.ts +27 -0
- package/dist/event-sourced-repository.adapter.d.ts.map +1 -0
- package/dist/event-sourced-repository.adapter.js +16 -0
- package/dist/event-sourced-repository.adapter.js.map +1 -0
- package/dist/event-stream-accept.service.d.ts +4 -0
- package/dist/event-stream-accept.service.d.ts.map +1 -0
- package/dist/event-stream-accept.service.js +11 -0
- package/dist/event-stream-accept.service.js.map +1 -0
- package/dist/gzip.adapter.d.ts +2 -2
- package/dist/gzip.adapter.d.ts.map +1 -1
- package/dist/gzip.adapter.js +1 -1
- package/dist/gzip.adapter.js.map +1 -1
- package/dist/healthcheck.handler.d.ts +4 -2
- package/dist/healthcheck.handler.d.ts.map +1 -1
- package/dist/healthcheck.handler.js +4 -11
- package/dist/healthcheck.handler.js.map +1 -1
- package/dist/http-exception-errors.js +2 -2
- package/dist/http-exception-errors.js.map +1 -1
- package/dist/http-logger-hono.middleware.d.ts +1 -0
- package/dist/http-logger-hono.middleware.d.ts.map +1 -1
- package/dist/http-logger-hono.middleware.js +10 -6
- package/dist/http-logger-hono.middleware.js.map +1 -1
- package/dist/http-logger.middleware.d.ts.map +1 -1
- package/dist/http-logger.middleware.js +4 -6
- package/dist/http-logger.middleware.js.map +1 -1
- package/dist/image-blur.adapter.d.ts +2 -6
- package/dist/image-blur.adapter.d.ts.map +1 -1
- package/dist/image-blur.adapter.js +1 -4
- package/dist/image-blur.adapter.js.map +1 -1
- package/dist/image-compressor.adapter.d.ts +2 -6
- package/dist/image-compressor.adapter.d.ts.map +1 -1
- package/dist/image-compressor.adapter.js +1 -4
- package/dist/image-compressor.adapter.js.map +1 -1
- package/dist/image-exif-clear.adapter.d.ts +2 -6
- package/dist/image-exif-clear.adapter.d.ts.map +1 -1
- package/dist/image-exif-clear.adapter.js +1 -3
- package/dist/image-exif-clear.adapter.js.map +1 -1
- package/dist/image-formatter.adapter.d.ts +2 -6
- package/dist/image-formatter.adapter.d.ts.map +1 -1
- package/dist/image-formatter.adapter.js +1 -3
- package/dist/image-formatter.adapter.js.map +1 -1
- package/dist/image-grayscale.adapter.d.ts +2 -6
- package/dist/image-grayscale.adapter.d.ts.map +1 -1
- package/dist/image-grayscale.adapter.js +1 -4
- package/dist/image-grayscale.adapter.js.map +1 -1
- package/dist/image-processor.adapter.d.ts +2 -6
- package/dist/image-processor.adapter.d.ts.map +1 -1
- package/dist/image-processor.adapter.js +1 -3
- package/dist/image-processor.adapter.js.map +1 -1
- package/dist/image-resizer.adapter.d.ts +2 -6
- package/dist/image-resizer.adapter.d.ts.map +1 -1
- package/dist/image-resizer.adapter.js +1 -4
- package/dist/image-resizer.adapter.js.map +1 -1
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -1
- package/dist/job-pruner-sqlite.adapter.d.ts.map +1 -1
- package/dist/job-pruner-sqlite.adapter.js +2 -1
- package/dist/job-pruner-sqlite.adapter.js.map +1 -1
- package/dist/job-queue-stats-provider-sqlite.adapter.js +4 -4
- package/dist/job-queue-stats-provider-sqlite.adapter.js.map +1 -1
- package/dist/job-recoverer-collecting.adapter.d.ts +7 -0
- package/dist/job-recoverer-collecting.adapter.d.ts.map +1 -0
- package/dist/job-recoverer-collecting.adapter.js +10 -0
- package/dist/job-recoverer-collecting.adapter.js.map +1 -0
- package/dist/job-recoverer-noop.adapter.d.ts +6 -0
- package/dist/job-recoverer-noop.adapter.d.ts.map +1 -0
- package/dist/job-recoverer-noop.adapter.js +7 -0
- package/dist/job-recoverer-noop.adapter.js.map +1 -0
- package/dist/job-recoverer-sqlite.adapter.d.ts +13 -0
- package/dist/job-recoverer-sqlite.adapter.d.ts.map +1 -0
- package/dist/job-recoverer-sqlite.adapter.js +14 -0
- package/dist/job-recoverer-sqlite.adapter.js.map +1 -0
- package/dist/job-recoverer.port.d.ts +5 -0
- package/dist/job-recoverer.port.d.ts.map +1 -0
- package/dist/job-recoverer.port.js +2 -0
- package/dist/job-recoverer.port.js.map +1 -0
- package/dist/memory-consumption.service.d.ts +1 -2
- package/dist/memory-consumption.service.d.ts.map +1 -1
- package/dist/memory-consumption.service.js.map +1 -1
- package/dist/message-bus-strict.adapter.d.ts +19 -0
- package/dist/message-bus-strict.adapter.d.ts.map +1 -0
- package/dist/message-bus-strict.adapter.js +24 -0
- package/dist/message-bus-strict.adapter.js.map +1 -0
- package/dist/path-matcher.service.d.ts +6 -0
- package/dist/path-matcher.service.d.ts.map +1 -0
- package/dist/path-matcher.service.js +13 -0
- package/dist/path-matcher.service.js.map +1 -0
- package/dist/remote-file-storage-disk.adapter.d.ts +2 -6
- package/dist/remote-file-storage-disk.adapter.d.ts.map +1 -1
- package/dist/remote-file-storage-disk.adapter.js +1 -9
- package/dist/remote-file-storage-disk.adapter.js.map +1 -1
- package/dist/request-context-hono.adapter.d.ts +1 -1
- package/dist/request-context-hono.adapter.d.ts.map +1 -1
- package/dist/request-context-hono.adapter.js +3 -3
- package/dist/request-context-hono.adapter.js.map +1 -1
- package/dist/request-context.port.d.ts +4 -0
- package/dist/request-context.port.d.ts.map +1 -1
- package/dist/request-context.port.js +4 -1
- package/dist/request-context.port.js.map +1 -1
- package/dist/runtime-stats-provider-noop.adapter.d.ts +5 -0
- package/dist/runtime-stats-provider-noop.adapter.d.ts.map +1 -0
- package/dist/runtime-stats-provider-noop.adapter.js +14 -0
- package/dist/runtime-stats-provider-noop.adapter.js.map +1 -0
- package/dist/runtime-stats-provider-system.adapter.d.ts +12 -0
- package/dist/runtime-stats-provider-system.adapter.d.ts.map +1 -0
- package/dist/runtime-stats-provider-system.adapter.js +21 -0
- package/dist/runtime-stats-provider-system.adapter.js.map +1 -0
- package/dist/runtime-stats-provider.port.d.ts +18 -0
- package/dist/runtime-stats-provider.port.d.ts.map +1 -0
- package/dist/runtime-stats-provider.port.js +2 -0
- package/dist/runtime-stats-provider.port.js.map +1 -0
- package/dist/security-rule-violation-threshold.strategy.js +1 -1
- package/dist/security-rule-violation-threshold.strategy.js.map +1 -1
- package/dist/setup-hono.service.js +1 -1
- package/dist/setup-hono.service.js.map +1 -1
- package/dist/shield-auth-hono.strategy.d.ts.map +1 -1
- package/dist/shield-auth-hono.strategy.js +4 -3
- package/dist/shield-auth-hono.strategy.js.map +1 -1
- package/dist/shield-auth.strategy.d.ts +1 -5
- package/dist/shield-auth.strategy.d.ts.map +1 -1
- package/dist/shield-auth.strategy.js +3 -6
- package/dist/shield-auth.strategy.js.map +1 -1
- package/dist/shield-maintenance.strategy.d.ts.map +1 -1
- package/dist/shield-maintenance.strategy.js +2 -5
- package/dist/shield-maintenance.strategy.js.map +1 -1
- package/dist/temporary-file-absolute.adapter.d.ts +2 -6
- package/dist/temporary-file-absolute.adapter.d.ts.map +1 -1
- package/dist/temporary-file-absolute.adapter.js +1 -9
- package/dist/temporary-file-absolute.adapter.js.map +1 -1
- package/dist/timing.middleware.d.ts +0 -1
- package/dist/timing.middleware.d.ts.map +1 -1
- package/dist/timing.middleware.js +2 -9
- package/dist/timing.middleware.js.map +1 -1
- package/package.json +5 -5
- package/readme.md +15 -0
- package/src/atomic-file-writer-collecting.adapter.ts +14 -0
- package/src/atomic-file-writer-noop.adapter.ts +10 -0
- package/src/atomic-file-writer.adapter.ts +34 -0
- package/src/atomic-file-writer.port.ts +6 -0
- package/src/encryption-aes-gcm.adapter.ts +4 -4
- package/src/event-sourced-repository.adapter.ts +48 -0
- package/src/event-stream-accept.service.ts +10 -0
- package/src/gzip.adapter.ts +3 -3
- package/src/healthcheck.handler.ts +8 -11
- package/src/http-exception-errors.ts +2 -2
- package/src/http-logger-hono.middleware.ts +12 -6
- package/src/http-logger.middleware.ts +4 -7
- package/src/image-blur.adapter.ts +3 -13
- package/src/image-compressor.adapter.ts +3 -12
- package/src/image-exif-clear.adapter.ts +3 -11
- package/src/image-formatter.adapter.ts +3 -12
- package/src/image-grayscale.adapter.ts +3 -13
- package/src/image-processor.adapter.ts +3 -11
- package/src/image-resizer.adapter.ts +3 -12
- package/src/index.ts +13 -0
- package/src/job-pruner-sqlite.adapter.ts +2 -1
- package/src/job-queue-stats-provider-sqlite.adapter.ts +4 -4
- package/src/job-recoverer-collecting.adapter.ts +14 -0
- package/src/job-recoverer-noop.adapter.ts +8 -0
- package/src/job-recoverer-sqlite.adapter.ts +20 -0
- package/src/job-recoverer.port.ts +5 -0
- package/src/memory-consumption.service.ts +4 -1
- package/src/message-bus-strict.adapter.ts +33 -0
- package/src/path-matcher.service.ts +14 -0
- package/src/remote-file-storage-disk.adapter.ts +3 -17
- package/src/request-context-hono.adapter.ts +3 -4
- package/src/request-context.port.ts +5 -0
- package/src/runtime-stats-provider-noop.adapter.ts +16 -0
- package/src/runtime-stats-provider-system.adapter.ts +24 -0
- package/src/runtime-stats-provider.port.ts +16 -0
- package/src/security-rule-violation-threshold.strategy.ts +2 -2
- package/src/setup-hono.service.ts +1 -1
- package/src/shield-auth-hono.strategy.ts +4 -3
- package/src/shield-auth.strategy.ts +3 -8
- package/src/shield-maintenance.strategy.ts +2 -6
- package/src/temporary-file-absolute.adapter.ts +3 -18
- package/src/timing.middleware.ts +2 -10
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as tools from "@bgord/tools";
|
|
2
|
+
import type { JobRecovererPort } from "./job-recoverer.port";
|
|
3
|
+
export declare class JobRecovererCollectingAdapter implements JobRecovererPort {
|
|
4
|
+
readonly recovered: Array<tools.IntegerNonNegativeType>;
|
|
5
|
+
recover(): Promise<tools.IntegerNonNegativeType>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=job-recoverer-collecting.adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-recoverer-collecting.adapter.d.ts","sourceRoot":"","sources":["../src/job-recoverer-collecting.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,qBAAa,6BAA8B,YAAW,gBAAgB;IACpE,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAM;IAEvD,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAMrD;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as tools from "@bgord/tools";
|
|
2
|
+
export class JobRecovererCollectingAdapter {
|
|
3
|
+
recovered = [];
|
|
4
|
+
async recover() {
|
|
5
|
+
const count = tools.Int.nonNegative(0);
|
|
6
|
+
this.recovered.push(count);
|
|
7
|
+
return count;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=job-recoverer-collecting.adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-recoverer-collecting.adapter.js","sourceRoot":"","sources":["../src/job-recoverer-collecting.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,OAAO,6BAA6B;IAC/B,SAAS,GAAwC,EAAE,CAAC;IAE7D,KAAK,CAAC,OAAO;QACX,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAEvC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE3B,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as tools from "@bgord/tools";
|
|
2
|
+
import type { JobRecovererPort } from "./job-recoverer.port";
|
|
3
|
+
export declare class JobRecovererNoopAdapter implements JobRecovererPort {
|
|
4
|
+
recover(): Promise<tools.IntegerNonNegativeType>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=job-recoverer-noop.adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-recoverer-noop.adapter.d.ts","sourceRoot":"","sources":["../src/job-recoverer-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,qBAAa,uBAAwB,YAAW,gBAAgB;IACxD,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAErD;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-recoverer-noop.adapter.js","sourceRoot":"","sources":["../src/job-recoverer-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,OAAO,uBAAuB;IAClC,KAAK,CAAC,OAAO;QACX,OAAO,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Database } from "bun:sqlite";
|
|
2
|
+
import * as tools from "@bgord/tools";
|
|
3
|
+
import type { JobRecovererPort } from "./job-recoverer.port";
|
|
4
|
+
type Dependencies = {
|
|
5
|
+
db: Database;
|
|
6
|
+
};
|
|
7
|
+
export declare class JobRecovererSqliteAdapter implements JobRecovererPort {
|
|
8
|
+
private readonly deps;
|
|
9
|
+
constructor(deps: Dependencies);
|
|
10
|
+
recover(): Promise<tools.IntegerNonNegativeType>;
|
|
11
|
+
}
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=job-recoverer-sqlite.adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-recoverer-sqlite.adapter.d.ts","sourceRoot":"","sources":["../src/job-recoverer-sqlite.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG7D,KAAK,YAAY,GAAG;IAAE,EAAE,EAAE,QAAQ,CAAA;CAAE,CAAC;AAGrC,qBAAa,yBAA0B,YAAW,gBAAgB;IACpD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,YAAY,EAAI;IAE7C,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAMrD;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as tools from "@bgord/tools";
|
|
2
|
+
import { JobStatusEnum } from "./job-status.vo";
|
|
3
|
+
// Single-process only: at boot, every claimed job was left behind by a dead process.
|
|
4
|
+
export class JobRecovererSqliteAdapter {
|
|
5
|
+
deps;
|
|
6
|
+
constructor(deps) {
|
|
7
|
+
this.deps = deps;
|
|
8
|
+
}
|
|
9
|
+
async recover() {
|
|
10
|
+
const result = this.deps.db.run(`UPDATE jobs SET status = '${JobStatusEnum.pending}' WHERE status = '${JobStatusEnum.claimed}'`);
|
|
11
|
+
return tools.Int.nonNegative(result.changes);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=job-recoverer-sqlite.adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-recoverer-sqlite.adapter.js","sourceRoot":"","sources":["../src/job-recoverer-sqlite.adapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,qFAAqF;AACrF,MAAM,OAAO,yBAAyB;IACP,IAAI;IAAjC,YAA6B,IAAkB;oBAAlB,IAAI;IAAiB,CAAC;IAEnD,KAAK,CAAC,OAAO;QACX,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAC7B,6BAA6B,aAAa,CAAC,OAAO,qBAAqB,aAAa,CAAC,OAAO,GAAG,CAChG,CAAC;QAEF,OAAO,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-recoverer.port.d.ts","sourceRoot":"","sources":["../src/job-recoverer.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,gBAAgB;IAC/B,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;CAClD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job-recoverer.port.js","sourceRoot":"","sources":["../src/job-recoverer.port.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as tools from "@bgord/tools";
|
|
2
|
-
type MemoryConsumptionSnapshotType = {
|
|
2
|
+
export type MemoryConsumptionSnapshotType = {
|
|
3
3
|
total: tools.Size;
|
|
4
4
|
heap: {
|
|
5
5
|
used: tools.Size;
|
|
@@ -9,5 +9,4 @@ type MemoryConsumptionSnapshotType = {
|
|
|
9
9
|
export declare class MemoryConsumption {
|
|
10
10
|
static snapshot(): MemoryConsumptionSnapshotType;
|
|
11
11
|
}
|
|
12
|
-
export {};
|
|
13
12
|
//# sourceMappingURL=memory-consumption.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-consumption.service.d.ts","sourceRoot":"","sources":["../src/memory-consumption.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,
|
|
1
|
+
{"version":3,"file":"memory-consumption.service.d.ts","sourceRoot":"","sources":["../src/memory-consumption.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC;IAClB,IAAI,EAAE;QAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAA;KAAE,CAAC;CAC/C,CAAC;AAMF,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,IAAI,6BAA6B,CAO/C;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-consumption.service.js","sourceRoot":"","sources":["../src/memory-consumption.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"memory-consumption.service.js","sourceRoot":"","sources":["../src/memory-consumption.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAOtC,8DAA8D;AAC9D,2DAA2D;AAC3D,+EAA+E;AAE/E,MAAM,OAAO,iBAAiB;IAC5B,MAAM,CAAC,QAAQ;QACb,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAE3D,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YAChC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;SACvF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Message, ToMessageMap } from "./message.types";
|
|
2
|
+
import type { MessageBusPort } from "./message-bus.port";
|
|
3
|
+
export declare const MessageBusStrictAdapterError: {
|
|
4
|
+
NoHandler: string;
|
|
5
|
+
DuplicateHandler: string;
|
|
6
|
+
};
|
|
7
|
+
type Dependencies<Messages extends Message> = {
|
|
8
|
+
inner: MessageBusPort<Messages>;
|
|
9
|
+
};
|
|
10
|
+
export declare class MessageBusStrictAdapter<Messages extends Message> implements MessageBusPort<Messages> {
|
|
11
|
+
private readonly deps;
|
|
12
|
+
private readonly registered;
|
|
13
|
+
constructor(deps: Dependencies<Messages>);
|
|
14
|
+
emit<M extends Messages>(message: M): Promise<void>;
|
|
15
|
+
on<MessageName extends keyof ToMessageMap<Messages>>(name: MessageName, handler: (message: ToMessageMap<Messages>[MessageName]) => void | Promise<void>): void;
|
|
16
|
+
}
|
|
17
|
+
export declare const CommandBusStrictAdapter: typeof MessageBusStrictAdapter;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=message-bus-strict.adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-bus-strict.adapter.d.ts","sourceRoot":"","sources":["../src/message-bus-strict.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,eAAO,MAAM,4BAA4B;IACvC,SAAS;IACT,gBAAgB;CACjB,CAAC;AAEF,KAAK,YAAY,CAAC,QAAQ,SAAS,OAAO,IAAI;IAAE,KAAK,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAA;CAAE,CAAC;AAElF,qBAAa,uBAAuB,CAAC,QAAQ,SAAS,OAAO,CAAE,YAAW,cAAc,CAAC,QAAQ,CAAC;IAGpF,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0B;IAErD,YAA6B,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAI;IAEvD,IAAI,CAAC,CAAC,SAAS,QAAQ,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAIxD;IAED,EAAE,CAAC,WAAW,SAAS,MAAM,YAAY,CAAC,QAAQ,CAAC,EACjD,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC9E,IAAI,CAKN;CACF;AAED,eAAO,MAAM,uBAAuB,gCAA0B,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export const MessageBusStrictAdapterError = {
|
|
2
|
+
NoHandler: "message.bus.strict.adapter.no.handler",
|
|
3
|
+
DuplicateHandler: "message.bus.strict.adapter.duplicate.handler",
|
|
4
|
+
};
|
|
5
|
+
export class MessageBusStrictAdapter {
|
|
6
|
+
deps;
|
|
7
|
+
registered = new Set();
|
|
8
|
+
constructor(deps) {
|
|
9
|
+
this.deps = deps;
|
|
10
|
+
}
|
|
11
|
+
async emit(message) {
|
|
12
|
+
if (!this.registered.has(message.name))
|
|
13
|
+
throw new Error(MessageBusStrictAdapterError.NoHandler);
|
|
14
|
+
await this.deps.inner.emit(message);
|
|
15
|
+
}
|
|
16
|
+
on(name, handler) {
|
|
17
|
+
if (this.registered.has(name))
|
|
18
|
+
throw new Error(MessageBusStrictAdapterError.DuplicateHandler);
|
|
19
|
+
this.registered.add(name);
|
|
20
|
+
this.deps.inner.on(name, handler);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export const CommandBusStrictAdapter = MessageBusStrictAdapter;
|
|
24
|
+
//# sourceMappingURL=message-bus-strict.adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-bus-strict.adapter.js","sourceRoot":"","sources":["../src/message-bus-strict.adapter.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,SAAS,EAAE,uCAAuC;IAClD,gBAAgB,EAAE,8CAA8C;CACjE,CAAC;AAIF,MAAM,OAAO,uBAAuB;IAGL,IAAI;IAFhB,UAAU,GAAG,IAAI,GAAG,EAAe,CAAC;IAErD,YAA6B,IAA4B;oBAA5B,IAAI;IAA2B,CAAC;IAE7D,KAAK,CAAC,IAAI,CAAqB,OAAU;QACvC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC;QAEhG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,EAAE,CACA,IAAiB,EACjB,OAA+E;QAE/E,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,gBAAgB,CAAC,CAAC;QAE9F,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC;CACF;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-matcher.service.d.ts","sourceRoot":"","sources":["../src/path-matcher.service.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,UAAU,CAAC;AAElD,qBAAa,WAAW;IACtB,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvF;IAED,OAAO,CAAC,MAAM,CAAC,WAAW;CAM3B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export class PathMatcher {
|
|
2
|
+
static matches(rules, path) {
|
|
3
|
+
return rules?.some((rule) => PathMatcher.matchesRule(rule, path)) ?? false;
|
|
4
|
+
}
|
|
5
|
+
static matchesRule(rule, path) {
|
|
6
|
+
if (rule instanceof URLPattern)
|
|
7
|
+
return rule.test({ pathname: path });
|
|
8
|
+
if (path === rule)
|
|
9
|
+
return true;
|
|
10
|
+
return path.startsWith(rule.endsWith("/") ? rule : `${rule}/`);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=path-matcher.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-matcher.service.js","sourceRoot":"","sources":["../src/path-matcher.service.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,WAAW;IACtB,MAAM,CAAC,OAAO,CAAC,KAAiD,EAAE,IAAY;QAC5E,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;IAC7E,CAAC;IAEO,MAAM,CAAC,WAAW,CAAC,IAAqB,EAAE,IAAY;QAC5D,IAAI,IAAI,YAAY,UAAU;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAE/B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;IACjE,CAAC;CACF"}
|
|
@@ -1,20 +1,16 @@
|
|
|
1
1
|
import * as tools from "@bgord/tools";
|
|
2
|
+
import type { AtomicFileWriterPort } from "./atomic-file-writer.port";
|
|
2
3
|
import type { DirectoryEnsurerPort } from "./directory-ensurer.port";
|
|
3
4
|
import type { FileCleanerPort } from "./file-cleaner.port";
|
|
4
|
-
import type { FileCopierPort } from "./file-copier.port";
|
|
5
5
|
import type { FileInspectionPort } from "./file-inspection.port";
|
|
6
|
-
import type { FileRenamerPort } from "./file-renamer.port";
|
|
7
6
|
import type { HashFilePort } from "./hash-file.port";
|
|
8
|
-
import type { NonceProviderPort } from "./nonce-provider.port";
|
|
9
7
|
import type { RemoteFileStoragePort, RemoteHeadResult, RemotePutFromPathInput, RemotePutFromPathResult } from "./remote-file-storage.port";
|
|
10
8
|
type Dependencies = {
|
|
9
|
+
AtomicFileWriter: AtomicFileWriterPort;
|
|
11
10
|
HashFile: HashFilePort;
|
|
12
11
|
FileInspection: FileInspectionPort;
|
|
13
12
|
FileCleaner: FileCleanerPort;
|
|
14
|
-
FileRenamer: FileRenamerPort;
|
|
15
|
-
FileCopier: FileCopierPort;
|
|
16
13
|
DirectoryEnsurer: DirectoryEnsurerPort;
|
|
17
|
-
NonceProvider: NonceProviderPort;
|
|
18
14
|
};
|
|
19
15
|
type Config = {
|
|
20
16
|
root: tools.DirectoryPathAbsoluteType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-file-storage-disk.adapter.d.ts","sourceRoot":"","sources":["../src/remote-file-storage-disk.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"remote-file-storage-disk.adapter.d.ts","sourceRoot":"","sources":["../src/remote-file-storage-disk.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AAEpC,KAAK,YAAY,GAAG;IAClB,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,QAAQ,EAAE,YAAY,CAAC;IACvB,cAAc,EAAE,kBAAkB,CAAC;IACnC,WAAW,EAAE,eAAe,CAAC;IAC7B,gBAAgB,EAAE,oBAAoB,CAAC;CACxC,CAAC;AAEF,KAAK,MAAM,GAAG;IAAE,IAAI,EAAE,KAAK,CAAC,yBAAyB,CAAA;CAAE,CAAC;AAExD,qBAAa,4BAA6B,YAAW,qBAAqB;IAEtE,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFvB,YACmB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,YAAY,EACjC;IAEJ,OAAO,CAAC,4BAA4B;IAY9B,WAAW,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAOjF;IAEK,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAQ9D;IAEK,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAMxE;IAEK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAInE;IAED,IAAI,IAAI,IAAI,KAAK,CAAC,yBAAyB,CAE1C;CACF"}
|
|
@@ -19,16 +19,8 @@ export class RemoteFileStorageDiskAdapter {
|
|
|
19
19
|
}
|
|
20
20
|
async putFromPath(input) {
|
|
21
21
|
const final = this.resolveKeyToAbsoluteFilePath(input.key);
|
|
22
|
-
const temporary = final.withFilename(final.getFilename().withSuffix(`-part-${this.deps.NonceProvider.generate()}`));
|
|
23
22
|
await this.deps.DirectoryEnsurer.ensure(final.getDirectory());
|
|
24
|
-
await this.deps.
|
|
25
|
-
try {
|
|
26
|
-
await this.deps.FileRenamer.rename(temporary, final);
|
|
27
|
-
}
|
|
28
|
-
catch (error) {
|
|
29
|
-
await this.deps.FileCleaner.delete(temporary);
|
|
30
|
-
throw error;
|
|
31
|
-
}
|
|
23
|
+
await this.deps.AtomicFileWriter.write(final, Bun.file(input.path.get()));
|
|
32
24
|
return this.deps.HashFile.hash(final);
|
|
33
25
|
}
|
|
34
26
|
async head(key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-file-storage-disk.adapter.js","sourceRoot":"","sources":["../src/remote-file-storage-disk.adapter.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"remote-file-storage-disk.adapter.js","sourceRoot":"","sources":["../src/remote-file-storage-disk.adapter.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAuB7B,MAAM,OAAO,4BAA4B;IAEpB,MAAM;IACN,IAAI;IAFvB,YACmB,MAAc,EACd,IAAkB;sBADlB,MAAM;oBACN,IAAI;IACpB,CAAC;IAEI,4BAA4B,CAAC,GAAwB;QAC3D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAY,CAAC,CAAC;QAElE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAEhG,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC9D,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAE3F,OAAO,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAA6B;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE3D,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;QAC9D,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAE1E,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAwB;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC;YACH,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAwB;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAEhE,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAwB;QACnC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC,CAAC;QAE3E,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Context } from "hono";
|
|
2
|
-
import type
|
|
2
|
+
import { type RequestContext } from "./request-context.port";
|
|
3
3
|
export declare class RequestContextHonoAdapter implements RequestContext {
|
|
4
4
|
readonly request: RequestContext["request"];
|
|
5
5
|
readonly identity: RequestContext["identity"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context-hono.adapter.d.ts","sourceRoot":"","sources":["../src/request-context-hono.adapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"request-context-hono.adapter.d.ts","sourceRoot":"","sources":["../src/request-context-hono.adapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC,OAAO,EAAE,KAAK,cAAc,EAAwB,MAAM,wBAAwB,CAAC;AAEnF,qBAAa,yBAA0B,YAAW,cAAc;IAC9D,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IAElD,YAAY,OAAO,EAAE,OAAO,EAkE3B;CACF"}
|
|
@@ -3,7 +3,7 @@ import * as tools from "@bgord/tools";
|
|
|
3
3
|
import { getConnInfo } from "hono/bun";
|
|
4
4
|
import { getCookie } from "hono/cookie";
|
|
5
5
|
import { HTTPException } from "hono/http-exception";
|
|
6
|
-
import {
|
|
6
|
+
import { RequestIdentityError } from "./request-context.port";
|
|
7
7
|
export class RequestContextHonoAdapter {
|
|
8
8
|
request;
|
|
9
9
|
identity;
|
|
@@ -55,9 +55,9 @@ export class RequestContextHonoAdapter {
|
|
|
55
55
|
authenticatedUserId: () => {
|
|
56
56
|
const user = context.get("user");
|
|
57
57
|
if (user === undefined)
|
|
58
|
-
throw new Error(
|
|
58
|
+
throw new Error(RequestIdentityError.NotAttached);
|
|
59
59
|
if (user === null)
|
|
60
|
-
throw new HTTPException(401, { message:
|
|
60
|
+
throw new HTTPException(401, { message: RequestIdentityError.Rejected });
|
|
61
61
|
return user.id;
|
|
62
62
|
},
|
|
63
63
|
ip: () => context.req.header("x-real-ip") ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context-hono.adapter.js","sourceRoot":"","sources":["../src/request-context-hono.adapter.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"request-context-hono.adapter.js","sourceRoot":"","sources":["../src/request-context-hono.adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import type * as tools from "@bgord/tools";
|
|
2
2
|
import type { UUIDType } from "./uuid.vo";
|
|
3
|
+
export declare const RequestIdentityError: {
|
|
4
|
+
Rejected: string;
|
|
5
|
+
NotAttached: string;
|
|
6
|
+
};
|
|
3
7
|
export interface RequestContext {
|
|
4
8
|
readonly request: {
|
|
5
9
|
readonly path: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.port.d.ts","sourceRoot":"","sources":["../src/request-context.port.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"request-context.port.d.ts","sourceRoot":"","sources":["../src/request-context.port.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.port.js","sourceRoot":"","sources":["../src/request-context.port.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"request-context.port.js","sourceRoot":"","sources":["../src/request-context.port.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,QAAQ,EAAE,sBAAsB;IAChC,WAAW,EAAE,0BAA0B;CACxC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { RuntimeStatsProviderPort, RuntimeStatsSnapshot } from "./runtime-stats-provider.port";
|
|
2
|
+
export declare class RuntimeStatsProviderNoopAdapter implements RuntimeStatsProviderPort {
|
|
3
|
+
getStats(): RuntimeStatsSnapshot;
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=runtime-stats-provider-noop.adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-stats-provider-noop.adapter.d.ts","sourceRoot":"","sources":["../src/runtime-stats-provider-noop.adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAEpG,qBAAa,+BAAgC,YAAW,wBAAwB;IAC9E,QAAQ,IAAI,oBAAoB,CAU/B;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as tools from "@bgord/tools";
|
|
2
|
+
export class RuntimeStatsProviderNoopAdapter {
|
|
3
|
+
getStats() {
|
|
4
|
+
const zero = tools.Duration.Ms(0);
|
|
5
|
+
const empty = tools.Size.fromBytes(0);
|
|
6
|
+
return {
|
|
7
|
+
uptime: { duration: zero, formatted: "0 seconds ago" },
|
|
8
|
+
memory: { total: empty, heap: { used: empty, total: empty } },
|
|
9
|
+
eventLoop: { lag: { p50: zero, p95: zero, p99: zero }, utilization: 0 },
|
|
10
|
+
inFlight: tools.Int.of(0),
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=runtime-stats-provider-noop.adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-stats-provider-noop.adapter.js","sourceRoot":"","sources":["../src/runtime-stats-provider-noop.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,MAAM,OAAO,+BAA+B;IAC1C,QAAQ;QACN,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAEtC,OAAO;YACL,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE;YACtD,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC7D,SAAS,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE;YACvE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;SAC1B,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ClockPort } from "./clock.port";
|
|
2
|
+
import type { RuntimeStatsProviderPort, RuntimeStatsSnapshot } from "./runtime-stats-provider.port";
|
|
3
|
+
type Dependencies = {
|
|
4
|
+
Clock: ClockPort;
|
|
5
|
+
};
|
|
6
|
+
export declare class RuntimeStatsProviderSystemAdapter implements RuntimeStatsProviderPort {
|
|
7
|
+
private readonly deps;
|
|
8
|
+
constructor(deps: Dependencies);
|
|
9
|
+
getStats(): RuntimeStatsSnapshot;
|
|
10
|
+
}
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=runtime-stats-provider-system.adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-stats-provider-system.adapter.d.ts","sourceRoot":"","sources":["../src/runtime-stats-provider-system.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9C,OAAO,KAAK,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAGpG,KAAK,YAAY,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEzC,qBAAa,iCAAkC,YAAW,wBAAwB;IACpE,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,YAAY,EAE9C;IAED,QAAQ,IAAI,oBAAoB,CAO/B;CACF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { EventLoopLag } from "./event-loop-lag.service";
|
|
2
|
+
import { EventLoopUtilization } from "./event-loop-utilization.service";
|
|
3
|
+
import { InFlightRequestsTracker } from "./in-flight-requests-tracker.service";
|
|
4
|
+
import { MemoryConsumption } from "./memory-consumption.service";
|
|
5
|
+
import { Uptime } from "./uptime.service";
|
|
6
|
+
export class RuntimeStatsProviderSystemAdapter {
|
|
7
|
+
deps;
|
|
8
|
+
constructor(deps) {
|
|
9
|
+
this.deps = deps;
|
|
10
|
+
EventLoopLag.start();
|
|
11
|
+
}
|
|
12
|
+
getStats() {
|
|
13
|
+
return {
|
|
14
|
+
uptime: Uptime.get(this.deps.Clock),
|
|
15
|
+
memory: MemoryConsumption.snapshot(),
|
|
16
|
+
eventLoop: { lag: EventLoopLag.snapshot(), utilization: EventLoopUtilization.snapshot() },
|
|
17
|
+
inFlight: InFlightRequestsTracker.get(),
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=runtime-stats-provider-system.adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-stats-provider-system.adapter.js","sourceRoot":"","sources":["../src/runtime-stats-provider-system.adapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAI1C,MAAM,OAAO,iCAAiC;IACf,IAAI;IAAjC,YAA6B,IAAkB;oBAAlB,IAAI;QAC/B,YAAY,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED,QAAQ;QACN,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACnC,MAAM,EAAE,iBAAiB,CAAC,QAAQ,EAAE;YACpC,SAAS,EAAE,EAAE,GAAG,EAAE,YAAY,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,oBAAoB,CAAC,QAAQ,EAAE,EAAE;YACzF,QAAQ,EAAE,uBAAuB,CAAC,GAAG,EAAE;SACxC,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type * as tools from "@bgord/tools";
|
|
2
|
+
import type { EventLoopLagSnapshotType } from "./event-loop-lag.service";
|
|
3
|
+
import type { EventLoopUtilizationSnapshot } from "./event-loop-utilization.service";
|
|
4
|
+
import type { MemoryConsumptionSnapshotType } from "./memory-consumption.service";
|
|
5
|
+
import type { UptimeResultType } from "./uptime.service";
|
|
6
|
+
export type RuntimeStatsSnapshot = {
|
|
7
|
+
uptime: UptimeResultType;
|
|
8
|
+
memory: MemoryConsumptionSnapshotType;
|
|
9
|
+
eventLoop: {
|
|
10
|
+
lag: EventLoopLagSnapshotType;
|
|
11
|
+
utilization: EventLoopUtilizationSnapshot;
|
|
12
|
+
};
|
|
13
|
+
inFlight: tools.IntegerType;
|
|
14
|
+
};
|
|
15
|
+
export interface RuntimeStatsProviderPort {
|
|
16
|
+
getStats(): RuntimeStatsSnapshot;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=runtime-stats-provider.port.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-stats-provider.port.d.ts","sourceRoot":"","sources":["../src/runtime-stats-provider.port.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,6BAA6B,CAAC;IACtC,SAAS,EAAE;QAAE,GAAG,EAAE,wBAAwB,CAAC;QAAC,WAAW,EAAE,4BAA4B,CAAA;KAAE,CAAC;IACxF,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,IAAI,oBAAoB,CAAC;CAClC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-stats-provider.port.js","sourceRoot":"","sources":["../src/runtime-stats-provider.port.ts"],"names":[],"mappings":""}
|
|
@@ -16,10 +16,10 @@ export class SecurityRuleViolationThresholdStrategy {
|
|
|
16
16
|
}
|
|
17
17
|
// Best-effort increment, occasional lost increments are acceptable for concurrent requests.
|
|
18
18
|
async isViolated(context) {
|
|
19
|
-
const subject = await this.resolver.resolve(context);
|
|
20
19
|
const violated = await this.rule.isViolated(context);
|
|
21
20
|
if (!violated)
|
|
22
21
|
return false;
|
|
22
|
+
const subject = await this.resolver.resolve(context);
|
|
23
23
|
try {
|
|
24
24
|
const cached = await this.deps.CacheRepository.get(subject.hex);
|
|
25
25
|
const count = typeof cached === "number" ? cached : 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security-rule-violation-threshold.strategy.js","sourceRoot":"","sources":["../src/security-rule-violation-threshold.strategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAK7B,OAAO,EAAE,gBAAgB,EAA6B,MAAM,yBAAyB,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAS/E,MAAM,OAAO,sCAAsC;IAI9B,IAAI;IACJ,MAAM;IACN,IAAI;IALN,QAAQ,CAAyB;IAElD,YACmB,IAA0B,EAC1B,MAAc,EACd,IAAkB;oBAFlB,IAAI;sBACJ,MAAM;oBACN,IAAI;QAErB,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAsB,CACxC,CAAC,IAAI,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EACrE,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,UAAU,CAAC,OAAuB;QACtC,MAAM,
|
|
1
|
+
{"version":3,"file":"security-rule-violation-threshold.strategy.js","sourceRoot":"","sources":["../src/security-rule-violation-threshold.strategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAK7B,OAAO,EAAE,gBAAgB,EAA6B,MAAM,yBAAyB,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAS/E,MAAM,OAAO,sCAAsC;IAI9B,IAAI;IACJ,MAAM;IACN,IAAI;IALN,QAAQ,CAAyB;IAElD,YACmB,IAA0B,EAC1B,MAAc,EACd,IAAkB;oBAFlB,IAAI;sBACJ,MAAM;oBACN,IAAI;QAErB,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAsB,CACxC,CAAC,IAAI,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EACrE,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,UAAU,CAAC,OAAuB;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAE5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAChE,MAAM,KAAK,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAE9C,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAEvD,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS;gBAAE,OAAO,IAAI,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,IAAI,IAAI;QACN,OAAO,CAAC,CAAC,KAAK,CAAC,gBAAgB,EAAE,uBAAuB,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACrG,CAAC;CACF"}
|
|
@@ -17,9 +17,9 @@ export class SetupHono {
|
|
|
17
17
|
// - Express: limit in express.json()
|
|
18
18
|
static essentials(config, deps) {
|
|
19
19
|
return [
|
|
20
|
+
new CorrelationHonoMiddleware(deps).handle(),
|
|
20
21
|
new ShieldMaintenanceHonoStrategy(config.maintenanceMode).handle(),
|
|
21
22
|
new TrailingSlashHonoMiddleware().handle(),
|
|
22
|
-
new CorrelationHonoMiddleware(deps).handle(),
|
|
23
23
|
new TimingHonoMiddleware(deps).handle(),
|
|
24
24
|
new ApiVersionHonoMiddleware(deps).handle(),
|
|
25
25
|
new ShieldCsrfHonoStrategy(config.csrf).handle(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-hono.service.js","sourceRoot":"","sources":["../src/setup-hono.service.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAIzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAG1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAGzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAIrF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAmB/E,MAAM,OAAO,SAAS;IACpB,mDAAmD;IACnD,2CAA2C;IAC3C,qCAAqC;IACrC,MAAM,CAAC,UAAU,CACf,MAAiB,EACjB,IAAkB;QAElB,OAAO;YACL,IAAI,
|
|
1
|
+
{"version":3,"file":"setup-hono.service.js","sourceRoot":"","sources":["../src/setup-hono.service.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAIzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAG1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAGzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAIrF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAmB/E,MAAM,OAAO,SAAS;IACpB,mDAAmD;IACnD,2CAA2C;IAC3C,qCAAqC;IACrC,MAAM,CAAC,UAAU,CACf,MAAiB,EACjB,IAAkB;QAElB,OAAO;YACL,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;YAC5C,IAAI,6BAA6B,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,EAAE;YAClE,IAAI,2BAA2B,EAAE,CAAC,MAAM,EAAE;YAC1C,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;YACvC,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;YAC3C,IAAI,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;YAChD,aAAa,CAAC;gBACZ,cAAc,EAAE,aAAa;gBAC7B,mBAAmB,EAAE,SAAS;gBAC9B,mBAAmB,EAAE,KAAK;gBAC1B,gBAAgB,EAAE,IAAI;gBACtB,6BAA6B,EAAE,KAAK;gBACpC,yBAAyB,EAAE,KAAK;gBAChC,uBAAuB,EAAE,KAAK;gBAC9B,yBAAyB,EAAE,KAAK;gBAChC,kBAAkB,EAAE,KAAK;gBACzB,aAAa,EAAE,KAAK;aACrB,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC7E,WAAW,EAAE,KAAK;gBAClB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO;gBAC1C,GAAG,MAAM,CAAC,IAAI;aACf,CAAC;YACF,IAAI,8BAA8B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;YACxD,IAAI,4BAA4B,EAAE,CAAC,MAAM,EAAE;YAC3C,IAAI,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE;SAC/D,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shield-auth-hono.strategy.d.ts","sourceRoot":"","sources":["../src/shield-auth-hono.strategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"shield-auth-hono.strategy.d.ts","sourceRoot":"","sources":["../src/shield-auth-hono.strategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAKxE,KAAK,YAAY,CAAC,IAAI,EAAE,OAAO,IAAI;IAAE,iBAAiB,EAAE,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC;AAE/F,qBAAa,sBAAsB,CAAC,IAAI,EAAE,OAAO;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAE7D,YAAY,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,EAE5C;IAED,MAAM,iDAOH;IAEH,MAAM,iDAKH;IAEH,OAAO,iDAKJ;CACJ"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createMiddleware } from "hono/factory";
|
|
2
2
|
import { HTTPException } from "hono/http-exception";
|
|
3
|
+
import { RequestIdentityError } from "./request-context.port";
|
|
3
4
|
import { RequestContextHonoAdapter } from "./request-context-hono.adapter";
|
|
4
|
-
import { ShieldAuthStrategy
|
|
5
|
+
import { ShieldAuthStrategy } from "./shield-auth.strategy";
|
|
5
6
|
export class ShieldAuthHonoStrategy {
|
|
6
7
|
strategy;
|
|
7
8
|
constructor(deps) {
|
|
@@ -18,13 +19,13 @@ export class ShieldAuthHonoStrategy {
|
|
|
18
19
|
const user = c.get("user");
|
|
19
20
|
if (this.strategy.verify(user))
|
|
20
21
|
return next();
|
|
21
|
-
throw new HTTPException(401, { message:
|
|
22
|
+
throw new HTTPException(401, { message: RequestIdentityError.Rejected });
|
|
22
23
|
});
|
|
23
24
|
reverse = createMiddleware(async (c, next) => {
|
|
24
25
|
const user = c.get("user");
|
|
25
26
|
if (this.strategy.reverse(user))
|
|
26
27
|
return next();
|
|
27
|
-
throw new HTTPException(403, { message:
|
|
28
|
+
throw new HTTPException(403, { message: RequestIdentityError.Rejected });
|
|
28
29
|
});
|
|
29
30
|
}
|
|
30
31
|
//# sourceMappingURL=shield-auth-hono.strategy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shield-auth-hono.strategy.js","sourceRoot":"","sources":["../src/shield-auth-hono.strategy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"shield-auth-hono.strategy.js","sourceRoot":"","sources":["../src/shield-auth-hono.strategy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAI5D,MAAM,OAAO,sBAAsB;IAChB,QAAQ,CAAoC;IAE7D,YAAY,IAAiC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACnE,MAAM,OAAO,GAAG,IAAI,yBAAyB,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEjD,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACnE,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,EAAE,CAAC;QAC9C,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,CAAe,EAAE,IAAe,EAAE,EAAE;QACpE,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE3B,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,EAAE,CAAC;QAC/C,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;CACJ"}
|