@fedify/nestjs 2.1.1 → 2.1.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.
package/dist/index.cjs ADDED
@@ -0,0 +1,110 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ let _nestjs_common = require("@nestjs/common");
3
+ let _fedify_fedify = require("@fedify/fedify");
4
+ let node_buffer = require("node:buffer");
5
+ //#region src/fedify.constants.ts
6
+ const FEDIFY_FEDERATION = "FEDIFY_FEDERATION";
7
+ //#endregion
8
+ //#region \0@oxc-project+runtime@0.122.0/helpers/decorate.js
9
+ function __decorate(decorators, target, key, desc) {
10
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
14
+ }
15
+ //#endregion
16
+ //#region src/fedify.module.ts
17
+ var _FedifyModule;
18
+ let FedifyModule = _FedifyModule = class FedifyModule {
19
+ static forRoot(options) {
20
+ return {
21
+ module: _FedifyModule,
22
+ providers: [{
23
+ provide: FEDIFY_FEDERATION,
24
+ useFactory: () => {
25
+ const federationOptions = { ...options };
26
+ federationOptions.kv = options.kv || new _fedify_fedify.MemoryKvStore();
27
+ return (0, _fedify_fedify.createFederation)(federationOptions);
28
+ }
29
+ }],
30
+ exports: [FEDIFY_FEDERATION],
31
+ global: true
32
+ };
33
+ }
34
+ };
35
+ FedifyModule = _FedifyModule = __decorate([(0, _nestjs_common.Module)({})], FedifyModule);
36
+ //#endregion
37
+ //#region src/fedify.middleware.ts
38
+ function integrateFederation(federation, contextDataFactory) {
39
+ let FedifyIntegrationMiddleware = class FedifyIntegrationMiddleware {
40
+ async use(req, res, next) {
41
+ let notFound = false;
42
+ let notAcceptable = false;
43
+ const contextData = await contextDataFactory(req, res);
44
+ const webRequest = fromERequest(req);
45
+ const response = await federation.fetch(webRequest, {
46
+ contextData,
47
+ onNotFound: () => {
48
+ notFound = true;
49
+ next();
50
+ return new Response("Not found", { status: 404 });
51
+ },
52
+ onNotAcceptable: () => {
53
+ notAcceptable = true;
54
+ next();
55
+ return new Response("Not acceptable", {
56
+ status: 406,
57
+ headers: {
58
+ "Content-Type": "text/plain",
59
+ Vary: "Accept"
60
+ }
61
+ });
62
+ }
63
+ });
64
+ if (notFound || notAcceptable && req.route != null) return;
65
+ await setEResponse(res, response);
66
+ next();
67
+ }
68
+ };
69
+ FedifyIntegrationMiddleware = __decorate([(0, _nestjs_common.Injectable)()], FedifyIntegrationMiddleware);
70
+ return FedifyIntegrationMiddleware;
71
+ }
72
+ function fromERequest(req) {
73
+ const url = `${req.protocol}://${req.host ?? req.header("Host")}${req.url}`;
74
+ const headers = new Headers();
75
+ for (const [key, value] of Object.entries(req.headers)) if (Array.isArray(value)) for (const v of value) headers.append(key, v);
76
+ else if (typeof value === "string") headers.append(key, value);
77
+ return new Request(url, {
78
+ method: req.method,
79
+ headers,
80
+ duplex: "half",
81
+ body: req.method === "GET" || req.method === "HEAD" ? void 0 : req.body && typeof req.body === "object" && !node_buffer.Buffer.isBuffer(req.body) ? JSON.stringify(req.body) : req.body
82
+ });
83
+ }
84
+ function setEResponse(res, response) {
85
+ res.status(response.status);
86
+ response.headers.forEach((value, key) => res.setHeader(key, value));
87
+ if (response.body == null) return Promise.resolve();
88
+ const body = response.body;
89
+ return new Promise((resolve) => {
90
+ const reader = body.getReader();
91
+ reader.read().then(function read({ done, value }) {
92
+ if (done) {
93
+ reader.releaseLock();
94
+ resolve();
95
+ return;
96
+ }
97
+ res.write(node_buffer.Buffer.from(value));
98
+ reader.read().then(read);
99
+ });
100
+ });
101
+ }
102
+ //#endregion
103
+ exports.FEDIFY_FEDERATION = FEDIFY_FEDERATION;
104
+ Object.defineProperty(exports, "FedifyModule", {
105
+ enumerable: true,
106
+ get: function() {
107
+ return FedifyModule;
108
+ }
109
+ });
110
+ exports.integrateFederation = integrateFederation;
@@ -11,7 +11,6 @@ declare const FEDIFY_FEDERATION = "FEDIFY_FEDERATION";
11
11
  //#endregion
12
12
  //#region src/fedify.middleware.d.ts
13
13
  type ContextDataFactory<TContextData> = (req: Request, res: Response) => TContextData | Promise<TContextData>;
14
- // from https://github.com/fedify-dev/fedify/blob/main/express/index.ts
15
14
  declare function integrateFederation<TContextData>(federation: Federation<unknown>, contextDataFactory: ContextDataFactory<TContextData>): Type<NestMiddleware>;
16
15
  //#endregion
17
16
  export { ContextDataFactory, FEDIFY_FEDERATION, FedifyModule, integrateFederation };
package/dist/index.d.mts CHANGED
@@ -11,7 +11,6 @@ declare const FEDIFY_FEDERATION = "FEDIFY_FEDERATION";
11
11
  //#endregion
12
12
  //#region src/fedify.middleware.d.ts
13
13
  type ContextDataFactory<TContextData> = (req: Request, res: Response) => TContextData | Promise<TContextData>;
14
- // from https://github.com/fedify-dev/fedify/blob/main/express/index.ts
15
14
  declare function integrateFederation<TContextData>(federation: Federation<unknown>, contextDataFactory: ContextDataFactory<TContextData>): Type<NestMiddleware>;
16
15
  //#endregion
17
16
  export { ContextDataFactory, FEDIFY_FEDERATION, FedifyModule, integrateFederation };
package/dist/index.mjs CHANGED
@@ -1,78 +1,41 @@
1
1
  import { Injectable, Module } from "@nestjs/common";
2
2
  import { MemoryKvStore, createFederation } from "@fedify/fedify";
3
- import { Buffer as Buffer$1 } from "node:buffer";
4
-
5
- //#region rolldown:runtime
6
- var __create = Object.create;
7
- var __defProp = Object.defineProperty;
8
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
9
- var __getOwnPropNames = Object.getOwnPropertyNames;
10
- var __getProtoOf = Object.getPrototypeOf;
11
- var __hasOwnProp = Object.prototype.hasOwnProperty;
12
- var __commonJS = (cb, mod) => function() {
13
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
14
- };
15
- var __copyProps = (to, from, except, desc) => {
16
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
17
- key = keys[i];
18
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
19
- get: ((k) => from[k]).bind(null, key),
20
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
21
- });
22
- }
23
- return to;
24
- };
25
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
- value: mod,
27
- enumerable: true
28
- }) : target, mod));
29
-
30
- //#endregion
3
+ import { Buffer } from "node:buffer";
31
4
  //#region src/fedify.constants.ts
32
5
  const FEDIFY_FEDERATION = "FEDIFY_FEDERATION";
33
-
34
6
  //#endregion
35
- //#region ../../node_modules/.pnpm/@oxc-project+runtime@0.75.0/node_modules/@oxc-project/runtime/src/helpers/decorate.js
36
- var require_decorate = __commonJS({ "../../node_modules/.pnpm/@oxc-project+runtime@0.75.0/node_modules/@oxc-project/runtime/src/helpers/decorate.js"(exports, module) {
37
- function __decorate(decorators, target, key, desc) {
38
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
39
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
40
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
41
- return c > 3 && r && Object.defineProperty(target, key, r), r;
42
- }
43
- module.exports = __decorate, module.exports.__esModule = true, module.exports["default"] = module.exports;
44
- } });
45
-
7
+ //#region \0@oxc-project+runtime@0.122.0/helpers/decorate.js
8
+ function __decorate(decorators, target, key, desc) {
9
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
12
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
13
+ }
46
14
  //#endregion
47
15
  //#region src/fedify.module.ts
48
- var import_decorate$1 = __toESM(require_decorate());
49
16
  var _FedifyModule;
50
- let FedifyModule = _FedifyModule = class FedifyModule$1 {
17
+ let FedifyModule = _FedifyModule = class FedifyModule {
51
18
  static forRoot(options) {
52
- const providers = [{
53
- provide: FEDIFY_FEDERATION,
54
- useFactory: () => {
55
- const federationOptions = { ...options };
56
- federationOptions.kv = options.kv || new MemoryKvStore();
57
- const federation = createFederation(federationOptions);
58
- return federation;
59
- }
60
- }];
61
19
  return {
62
20
  module: _FedifyModule,
63
- providers,
21
+ providers: [{
22
+ provide: FEDIFY_FEDERATION,
23
+ useFactory: () => {
24
+ const federationOptions = { ...options };
25
+ federationOptions.kv = options.kv || new MemoryKvStore();
26
+ return createFederation(federationOptions);
27
+ }
28
+ }],
64
29
  exports: [FEDIFY_FEDERATION],
65
30
  global: true
66
31
  };
67
32
  }
68
33
  };
69
- FedifyModule = _FedifyModule = (0, import_decorate$1.default)([Module({})], FedifyModule);
70
-
34
+ FedifyModule = _FedifyModule = __decorate([Module({})], FedifyModule);
71
35
  //#endregion
72
36
  //#region src/fedify.middleware.ts
73
- var import_decorate = __toESM(require_decorate());
74
37
  function integrateFederation(federation, contextDataFactory) {
75
- let FedifyIntegrationMiddleware = class FedifyIntegrationMiddleware$1 {
38
+ let FedifyIntegrationMiddleware = class FedifyIntegrationMiddleware {
76
39
  async use(req, res, next) {
77
40
  let notFound = false;
78
41
  let notAcceptable = false;
@@ -102,7 +65,7 @@ function integrateFederation(federation, contextDataFactory) {
102
65
  next();
103
66
  }
104
67
  };
105
- FedifyIntegrationMiddleware = (0, import_decorate.default)([Injectable()], FedifyIntegrationMiddleware);
68
+ FedifyIntegrationMiddleware = __decorate([Injectable()], FedifyIntegrationMiddleware);
106
69
  return FedifyIntegrationMiddleware;
107
70
  }
108
71
  function fromERequest(req) {
@@ -114,7 +77,7 @@ function fromERequest(req) {
114
77
  method: req.method,
115
78
  headers,
116
79
  duplex: "half",
117
- body: req.method === "GET" || req.method === "HEAD" ? void 0 : req.body && typeof req.body === "object" && !Buffer$1.isBuffer(req.body) ? JSON.stringify(req.body) : req.body
80
+ body: req.method === "GET" || req.method === "HEAD" ? void 0 : req.body && typeof req.body === "object" && !Buffer.isBuffer(req.body) ? JSON.stringify(req.body) : req.body
118
81
  });
119
82
  }
120
83
  function setEResponse(res, response) {
@@ -130,11 +93,10 @@ function setEResponse(res, response) {
130
93
  resolve();
131
94
  return;
132
95
  }
133
- res.write(Buffer$1.from(value));
96
+ res.write(Buffer.from(value));
134
97
  reader.read().then(read);
135
98
  });
136
99
  });
137
100
  }
138
-
139
101
  //#endregion
140
- export { FEDIFY_FEDERATION, FedifyModule, integrateFederation };
102
+ export { FEDIFY_FEDERATION, FedifyModule, integrateFederation };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fedify/nestjs",
3
- "version": "2.1.1",
3
+ "version": "2.1.2",
4
4
  "description": "Integrate Fedify with Nest.js",
5
5
  "keywords": [
6
6
  "Fedify",
@@ -49,13 +49,13 @@
49
49
  "peerDependencies": {
50
50
  "@nestjs/common": "^11.0.1",
51
51
  "express": "^4.0.0 || ^5.0.0",
52
- "@fedify/fedify": "^2.1.1"
52
+ "@fedify/fedify": "^2.1.2"
53
53
  },
54
54
  "devDependencies": {
55
55
  "@types/express": "^4.0.0",
56
56
  "@types/node": "^22.17.0",
57
- "tsdown": "^0.12.9",
58
- "typescript": "^5.9.3"
57
+ "tsdown": "^0.21.6",
58
+ "typescript": "^5.9.2"
59
59
  },
60
60
  "scripts": {
61
61
  "build:self": "tsdown",
package/dist/index.js DELETED
@@ -1,147 +0,0 @@
1
- //#region rolldown:runtime
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __commonJS = (cb, mod) => function() {
9
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
13
- key = keys[i];
14
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
15
- get: ((k) => from[k]).bind(null, key),
16
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
- });
18
- }
19
- return to;
20
- };
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
22
- value: mod,
23
- enumerable: true
24
- }) : target, mod));
25
-
26
- //#endregion
27
- const __nestjs_common = __toESM(require("@nestjs/common"));
28
- const __fedify_fedify = __toESM(require("@fedify/fedify"));
29
- const node_buffer = __toESM(require("node:buffer"));
30
-
31
- //#region src/fedify.constants.ts
32
- const FEDIFY_FEDERATION = "FEDIFY_FEDERATION";
33
-
34
- //#endregion
35
- //#region ../../node_modules/.pnpm/@oxc-project+runtime@0.75.0/node_modules/@oxc-project/runtime/src/helpers/decorate.js
36
- var require_decorate = __commonJS({ "../../node_modules/.pnpm/@oxc-project+runtime@0.75.0/node_modules/@oxc-project/runtime/src/helpers/decorate.js"(exports, module) {
37
- function __decorate(decorators, target, key, desc) {
38
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
39
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
40
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
41
- return c > 3 && r && Object.defineProperty(target, key, r), r;
42
- }
43
- module.exports = __decorate, module.exports.__esModule = true, module.exports["default"] = module.exports;
44
- } });
45
-
46
- //#endregion
47
- //#region src/fedify.module.ts
48
- var import_decorate$1 = __toESM(require_decorate());
49
- var _FedifyModule;
50
- let FedifyModule = _FedifyModule = class FedifyModule$1 {
51
- static forRoot(options) {
52
- const providers = [{
53
- provide: FEDIFY_FEDERATION,
54
- useFactory: () => {
55
- const federationOptions = { ...options };
56
- federationOptions.kv = options.kv || new __fedify_fedify.MemoryKvStore();
57
- const federation = (0, __fedify_fedify.createFederation)(federationOptions);
58
- return federation;
59
- }
60
- }];
61
- return {
62
- module: _FedifyModule,
63
- providers,
64
- exports: [FEDIFY_FEDERATION],
65
- global: true
66
- };
67
- }
68
- };
69
- FedifyModule = _FedifyModule = (0, import_decorate$1.default)([(0, __nestjs_common.Module)({})], FedifyModule);
70
-
71
- //#endregion
72
- //#region src/fedify.middleware.ts
73
- var import_decorate = __toESM(require_decorate());
74
- function integrateFederation(federation, contextDataFactory) {
75
- let FedifyIntegrationMiddleware = class FedifyIntegrationMiddleware$1 {
76
- async use(req, res, next) {
77
- let notFound = false;
78
- let notAcceptable = false;
79
- const contextData = await contextDataFactory(req, res);
80
- const webRequest = fromERequest(req);
81
- const response = await federation.fetch(webRequest, {
82
- contextData,
83
- onNotFound: () => {
84
- notFound = true;
85
- next();
86
- return new Response("Not found", { status: 404 });
87
- },
88
- onNotAcceptable: () => {
89
- notAcceptable = true;
90
- next();
91
- return new Response("Not acceptable", {
92
- status: 406,
93
- headers: {
94
- "Content-Type": "text/plain",
95
- Vary: "Accept"
96
- }
97
- });
98
- }
99
- });
100
- if (notFound || notAcceptable && req.route != null) return;
101
- await setEResponse(res, response);
102
- next();
103
- }
104
- };
105
- FedifyIntegrationMiddleware = (0, import_decorate.default)([(0, __nestjs_common.Injectable)()], FedifyIntegrationMiddleware);
106
- return FedifyIntegrationMiddleware;
107
- }
108
- function fromERequest(req) {
109
- const url = `${req.protocol}://${req.host ?? req.header("Host")}${req.url}`;
110
- const headers = new Headers();
111
- for (const [key, value] of Object.entries(req.headers)) if (Array.isArray(value)) for (const v of value) headers.append(key, v);
112
- else if (typeof value === "string") headers.append(key, value);
113
- return new Request(url, {
114
- method: req.method,
115
- headers,
116
- duplex: "half",
117
- body: req.method === "GET" || req.method === "HEAD" ? void 0 : req.body && typeof req.body === "object" && !node_buffer.Buffer.isBuffer(req.body) ? JSON.stringify(req.body) : req.body
118
- });
119
- }
120
- function setEResponse(res, response) {
121
- res.status(response.status);
122
- response.headers.forEach((value, key) => res.setHeader(key, value));
123
- if (response.body == null) return Promise.resolve();
124
- const body = response.body;
125
- return new Promise((resolve) => {
126
- const reader = body.getReader();
127
- reader.read().then(function read({ done, value }) {
128
- if (done) {
129
- reader.releaseLock();
130
- resolve();
131
- return;
132
- }
133
- res.write(node_buffer.Buffer.from(value));
134
- reader.read().then(read);
135
- });
136
- });
137
- }
138
-
139
- //#endregion
140
- exports.FEDIFY_FEDERATION = FEDIFY_FEDERATION;
141
- Object.defineProperty(exports, 'FedifyModule', {
142
- enumerable: true,
143
- get: function () {
144
- return FedifyModule;
145
- }
146
- });
147
- exports.integrateFederation = integrateFederation;