sprint-es 0.0.72 → 0.0.74

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.
@@ -157,7 +157,6 @@ class Sprint {
157
157
  enabled: finalConfig.openapi?.swaggerUi?.enabled ?? false
158
158
  }
159
159
  };
160
- if (this.openapi.generateOnBuild === true) console.log(`[Sprint] ⚠️ openapi.generateOnBuild is enabled but this option makes nothing for now`);
161
160
  this.loadDefaults();
162
161
  this.loadHealthcheck();
163
162
  this.routesLoaded = this.init();
@@ -170,7 +169,13 @@ class Sprint {
170
169
  try {
171
170
  const swaggerUi = await import("swagger-ui-express");
172
171
  const ui = swaggerUi.default;
173
- this.app.get("/swagger", (_, res) => res.redirect("/swagger/"));
172
+ this.app.use("/swagger", (req, res, next) => {
173
+ res.setHeader(
174
+ "Content-Security-Policy",
175
+ "default-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src 'self' data: https:"
176
+ );
177
+ next();
178
+ });
174
179
  this.app.use("/swagger", ui.serve, ui.setup(void 0, {
175
180
  swaggerUrl: "/openapi.json"
176
181
  }));
package/dist/esm/index.js CHANGED
@@ -132,7 +132,6 @@ class Sprint {
132
132
  enabled: finalConfig.openapi?.swaggerUi?.enabled ?? false
133
133
  }
134
134
  };
135
- if (this.openapi.generateOnBuild === true) console.log(`[Sprint] ⚠️ openapi.generateOnBuild is enabled but this option makes nothing for now`);
136
135
  this.loadDefaults();
137
136
  this.loadHealthcheck();
138
137
  this.routesLoaded = this.init();
@@ -145,7 +144,13 @@ class Sprint {
145
144
  try {
146
145
  const swaggerUi = await import("swagger-ui-express");
147
146
  const ui = swaggerUi.default;
148
- this.app.get("/swagger", (_, res) => res.redirect("/swagger/"));
147
+ this.app.use("/swagger", (req, res, next) => {
148
+ res.setHeader(
149
+ "Content-Security-Policy",
150
+ "default-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src 'self' data: https:"
151
+ );
152
+ next();
153
+ });
149
154
  this.app.use("/swagger", ui.serve, ui.setup(void 0, {
150
155
  swaggerUrl: "/openapi.json"
151
156
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"sprint.d.ts","sourceRoot":"","sources":["../../src/sprint.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAA+B,gBAAgB,EAAoB,MAAM,SAAS,CAAC;AACnG,OAAO,OAAO,EAAE,EAAE,WAAW,EAAoD,MAAM,SAAS,CAAC;AAejG,eAAO,MAAM,aAAa,SAAQ,CAAC;AACnC,eAAO,MAAM,YAAY,SAAS,CAAC;AAwCnC,qBAAa,MAAM;IACR,GAAG,EAAE,WAAW,CAAC;IACxB,OAAO,CAAC,IAAI,CAAwD;IACpE,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,eAAe,CAA2B;IAClD,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,OAAO,CAUb;IACF,OAAO,CAAC,gBAAgB,CAIhB;;YAsEM,IAAI;IA8BlB,OAAO,CAAC,YAAY;IAiDpB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;YACW,eAAe;IAgC7B,OAAO,CAAC,eAAe;YAcT,UAAU;YAkFV,YAAY;IAmB1B,OAAO,CAAC,YAAY;IAgCpB,+BAA+B;IAC/B,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,mBAAmB;IA0D3B,OAAO,CAAC,kBAAkB;IAgD1B,OAAO,CAAC,kBAAkB;IAoCnB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAClC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACnC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAClC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACrC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACpC,GAAG,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,gBAAgB,EAAE,YAAY,CAAC,EAAE,OAAO;IAYlF,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI;CA0DzC"}
1
+ {"version":3,"file":"sprint.d.ts","sourceRoot":"","sources":["../../src/sprint.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAA+B,gBAAgB,EAAoB,MAAM,SAAS,CAAC;AACnG,OAAO,OAAO,EAAE,EAAE,WAAW,EAAoD,MAAM,SAAS,CAAC;AAejG,eAAO,MAAM,aAAa,SAAQ,CAAC;AACnC,eAAO,MAAM,YAAY,SAAS,CAAC;AAwCnC,qBAAa,MAAM;IACR,GAAG,EAAE,WAAW,CAAC;IACxB,OAAO,CAAC,IAAI,CAAwD;IACpE,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,eAAe,CAA2B;IAClD,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,OAAO,CAUb;IACF,OAAO,CAAC,gBAAgB,CAIhB;;YA2EM,IAAI;IA8BlB,OAAO,CAAC,YAAY;IAiDpB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;OAEG;YACW,eAAe;IAgC7B,OAAO,CAAC,eAAe;YAcT,UAAU;YAkFV,YAAY;IAmB1B,OAAO,CAAC,YAAY;IAgCpB,+BAA+B;IAC/B,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,mBAAmB;IA0D3B,OAAO,CAAC,kBAAkB;IAgD1B,OAAO,CAAC,kBAAkB;IAoCnB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAClC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACnC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAClC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACrC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACpC,GAAG,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,gBAAgB,EAAE,YAAY,CAAC,EAAE,OAAO;IAYlF,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI;CA0DzC"}
package/package.json CHANGED
@@ -1,122 +1,122 @@
1
1
  {
2
- "name": "sprint-es",
3
- "version": "0.0.72",
4
- "description": "Sprint - Quickly API",
5
- "main": "dist/cjs/index.js",
6
- "module": "dist/esm/index.js",
7
- "types": "dist/types/index.d.ts",
8
- "type": "module",
9
- "bin": "dist/esm/cli.js",
10
- "exports": {
11
- ".": {
12
- "types": "./dist/types/index.d.ts",
13
- "require": "./dist/cjs/index.cjs",
14
- "import": "./dist/esm/index.js"
2
+ "name": "sprint-es",
3
+ "version": "0.0.74",
4
+ "description": "Sprint - Quickly API",
5
+ "main": "dist/cjs/index.js",
6
+ "module": "dist/esm/index.js",
7
+ "types": "dist/types/index.d.ts",
8
+ "type": "module",
9
+ "bin": "dist/esm/cli.js",
10
+ "exports": {
11
+ ".": {
12
+ "types": "./dist/types/index.d.ts",
13
+ "require": "./dist/cjs/index.cjs",
14
+ "import": "./dist/esm/index.js"
15
+ },
16
+ "./logger": {
17
+ "types": "./dist/types/modules/logger/index.d.ts",
18
+ "require": "./dist/cjs/modules/logger/index.cjs",
19
+ "import": "./dist/esm/modules/logger/index.js"
20
+ },
21
+ "./rate-limit": {
22
+ "types": "./dist/types/modules/rate-limit/index.d.ts",
23
+ "require": "./dist/cjs/modules/rate-limit/index.cjs",
24
+ "import": "./dist/esm/modules/rate-limit/index.js"
25
+ },
26
+ "./telemetry": {
27
+ "types": "./dist/types/modules/telemetry/index.d.ts",
28
+ "require": "./dist/cjs/modules/telemetry/index.cjs",
29
+ "import": "./dist/esm/modules/telemetry/index.js"
30
+ },
31
+ "./schemas": {
32
+ "types": "./dist/types/modules/schemas/index.d.ts",
33
+ "require": "./dist/cjs/modules/schemas/index.cjs",
34
+ "import": "./dist/esm/modules/schemas/index.js"
35
+ },
36
+ "./cronjobs": {
37
+ "types": "./dist/types/modules/cronjobs/index.d.ts",
38
+ "require": "./dist/cjs/modules/cronjobs/index.cjs",
39
+ "import": "./dist/esm/modules/cronjobs/index.js"
40
+ },
41
+ "./jwt": {
42
+ "types": "./dist/types/modules/jwt/index.d.ts",
43
+ "require": "./dist/cjs/modules/jwt/index.cjs",
44
+ "import": "./dist/esm/modules/jwt/index.js"
45
+ },
46
+ "./utils": {
47
+ "types": "./dist/types/modules/utils/index.d.ts",
48
+ "require": "./dist/cjs/modules/utils/index.cjs",
49
+ "import": "./dist/esm/modules/utils/index.js"
50
+ }
15
51
  },
16
- "./logger": {
17
- "types": "./dist/types/modules/logger/index.d.ts",
18
- "require": "./dist/cjs/modules/logger/index.cjs",
19
- "import": "./dist/esm/modules/logger/index.js"
52
+ "files": [
53
+ "dist/**/*",
54
+ "README.md",
55
+ "LICENSE"
56
+ ],
57
+ "scripts": {
58
+ "clean": "rimraf dist",
59
+ "build": "vite build && node -e \"const fs=require('fs');const p='dist/esm/cli.js';let c=fs.readFileSync(p,'utf8');if(!c.startsWith('#!')){fs.writeFileSync(p,'#!/usr/bin/env node\\n'+c)}\"",
60
+ "dev": "NODE_ENV=development ts-node src/index.ts",
61
+ "start": "NODE_ENV=production ts-node src/index.ts",
62
+ "prepublishOnly": "npm run build",
63
+ "test": "jest",
64
+ "dev:example": "npm run build && node example/app.js"
20
65
  },
21
- "./rate-limit": {
22
- "types": "./dist/types/modules/rate-limit/index.d.ts",
23
- "require": "./dist/cjs/modules/rate-limit/index.cjs",
24
- "import": "./dist/esm/modules/rate-limit/index.js"
66
+ "repository": {
67
+ "url": "https://github.com/TPEOficial/sprint"
25
68
  },
26
- "./telemetry": {
27
- "types": "./dist/types/modules/telemetry/index.d.ts",
28
- "require": "./dist/cjs/modules/telemetry/index.cjs",
29
- "import": "./dist/esm/modules/telemetry/index.js"
69
+ "keywords": [
70
+ "express",
71
+ "api",
72
+ "sprint",
73
+ "rate-limit"
74
+ ],
75
+ "author": "TPEOficial LLC",
76
+ "license": "Apache-2.0",
77
+ "bugs": {
78
+ "url": "https://github.com/TPEOficial/sprint/issues"
30
79
  },
31
- "./schemas": {
32
- "types": "./dist/types/modules/schemas/index.d.ts",
33
- "require": "./dist/cjs/modules/schemas/index.cjs",
34
- "import": "./dist/esm/modules/schemas/index.js"
80
+ "homepage": "https://dymo.tpeoficial.com",
81
+ "dependencies": {
82
+ "axios": "^1.13.2",
83
+ "cors": "^2.8.5",
84
+ "dotenv": "^17.3.1",
85
+ "express": "^5.1.0",
86
+ "morgan": "^1.10.1",
87
+ "node-cron": "^3.0.3",
88
+ "path": "^0.12.7",
89
+ "serve-favicon": "^2.5.1",
90
+ "toolkitify": "^0.0.26",
91
+ "tsx": "^4.19.0",
92
+ "zod": "^3.25.0"
35
93
  },
36
- "./cronjobs": {
37
- "types": "./dist/types/modules/cronjobs/index.d.ts",
38
- "require": "./dist/cjs/modules/cronjobs/index.cjs",
39
- "import": "./dist/esm/modules/cronjobs/index.js"
94
+ "contributors": [
95
+ "TPEOficial (https://github.com/TPEOficial)",
96
+ "FJRG2007 (https://github.com/FJRG2007)"
97
+ ],
98
+ "devDependencies": {
99
+ "@types/cors": "^2.8.19",
100
+ "@types/express": "^5.0.5",
101
+ "@types/jest": "^30.0.0",
102
+ "@types/morgan": "^1.9.10",
103
+ "@types/node": "^22.18.7",
104
+ "@types/node-cron": "^3.0.11",
105
+ "@types/serve-favicon": "^2.5.7",
106
+ "@types/swagger-ui-express": "^4.1.8",
107
+ "jest": "^30.1.3",
108
+ "rimraf": "^6.0.1",
109
+ "ts-jest": "^29.4.4",
110
+ "ts-node": "^10.9.2",
111
+ "typescript": "^5.5.4",
112
+ "vite": "^6.4.1",
113
+ "vite-plugin-dts": "^4.5.4"
40
114
  },
41
- "./jwt": {
42
- "types": "./dist/types/modules/jwt/index.d.ts",
43
- "require": "./dist/cjs/modules/jwt/index.cjs",
44
- "import": "./dist/esm/modules/jwt/index.js"
115
+ "optionalDependencies": {
116
+ "swagger-ui-express": "^5.0.1"
45
117
  },
46
- "./utils": {
47
- "types": "./dist/types/modules/utils/index.d.ts",
48
- "require": "./dist/cjs/modules/utils/index.cjs",
49
- "import": "./dist/esm/modules/utils/index.js"
118
+ "prettier": {
119
+ "tabWidth": 4,
120
+ "useTabs": false
50
121
  }
51
- },
52
- "files": [
53
- "dist/**/*",
54
- "README.md",
55
- "LICENSE"
56
- ],
57
- "scripts": {
58
- "clean": "rimraf dist",
59
- "build": "vite build && node -e \"const fs=require('fs');const p='dist/esm/cli.js';let c=fs.readFileSync(p,'utf8');if(!c.startsWith('#!')){fs.writeFileSync(p,'#!/usr/bin/env node\\n'+c)}\"",
60
- "dev": "NODE_ENV=development ts-node src/index.ts",
61
- "start": "NODE_ENV=production ts-node src/index.ts",
62
- "prepublishOnly": "npm run build",
63
- "test": "jest",
64
- "dev:example": "npm run build && node example/app.js"
65
- },
66
- "repository": {
67
- "url": "https://github.com/TPEOficial/sprint"
68
- },
69
- "keywords": [
70
- "express",
71
- "api",
72
- "sprint",
73
- "rate-limit"
74
- ],
75
- "author": "TPEOficial LLC",
76
- "license": "Apache-2.0",
77
- "bugs": {
78
- "url": "https://github.com/TPEOficial/sprint/issues"
79
- },
80
- "homepage": "https://dymo.tpeoficial.com",
81
- "dependencies": {
82
- "axios": "^1.13.2",
83
- "cors": "^2.8.5",
84
- "dotenv": "^17.3.1",
85
- "express": "^5.1.0",
86
- "morgan": "^1.10.1",
87
- "node-cron": "^3.0.3",
88
- "path": "^0.12.7",
89
- "serve-favicon": "^2.5.1",
90
- "toolkitify": "^0.0.26",
91
- "tsx": "^4.19.0",
92
- "zod": "^3.25.0"
93
- },
94
- "contributors": [
95
- "TPEOficial (https://github.com/TPEOficial)",
96
- "FJRG2007 (https://github.com/FJRG2007)"
97
- ],
98
- "devDependencies": {
99
- "@types/cors": "^2.8.19",
100
- "@types/express": "^5.0.5",
101
- "@types/jest": "^30.0.0",
102
- "@types/morgan": "^1.9.10",
103
- "@types/node": "^22.18.7",
104
- "@types/node-cron": "^3.0.11",
105
- "@types/serve-favicon": "^2.5.7",
106
- "@types/swagger-ui-express": "^4.1.8",
107
- "jest": "^30.1.3",
108
- "rimraf": "^6.0.1",
109
- "ts-jest": "^29.4.4",
110
- "ts-node": "^10.9.2",
111
- "typescript": "^5.5.4",
112
- "vite": "^6.4.1",
113
- "vite-plugin-dts": "^4.5.4"
114
- },
115
- "optionalDependencies": {
116
- "swagger-ui-express": "^5.0.1"
117
- },
118
- "prettier": {
119
- "tabWidth": 4,
120
- "useTabs": false
121
- }
122
122
  }