@bgord/bun 0.6.0 → 0.8.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/dist/basic-auth.d.ts +14 -0
- package/dist/basic-auth.d.ts.map +1 -0
- package/dist/basic-auth.js +13 -0
- package/dist/basic-auth.js.map +1 -0
- package/dist/correlation-id.d.ts.map +1 -1
- package/dist/decorators.d.ts +4 -0
- package/dist/decorators.d.ts.map +1 -0
- package/dist/decorators.js +62 -0
- package/dist/decorators.js.map +1 -0
- package/dist/encryption.d.ts +8 -3
- package/dist/encryption.d.ts.map +1 -0
- package/dist/encryption.js +37 -0
- package/dist/encryption.js.map +1 -0
- package/dist/env-validator.d.ts +21 -0
- package/dist/env-validator.d.ts.map +1 -0
- package/dist/env-validator.js +28 -0
- package/dist/env-validator.js.map +1 -0
- package/dist/event-handler.d.ts +8 -0
- package/dist/event-handler.d.ts.map +1 -0
- package/dist/event-handler.js +21 -0
- package/dist/event-handler.js.map +1 -0
- package/dist/event-logger.d.ts +8 -0
- package/dist/event-logger.d.ts.map +1 -0
- package/dist/event-logger.js +19 -0
- package/dist/event-logger.js.map +1 -0
- package/dist/event.d.ts +7 -46
- package/dist/event.d.ts.map +1 -0
- package/dist/event.js +23 -0
- package/dist/event.js.map +1 -0
- package/dist/file-location.d.ts +10 -9
- package/dist/file-location.d.ts.map +1 -0
- package/dist/file-location.js +46 -0
- package/dist/file-location.js.map +1 -0
- package/dist/gzip.d.ts +1 -0
- package/dist/gzip.d.ts.map +1 -0
- package/dist/gzip.js +18 -0
- package/dist/gzip.js.map +1 -0
- package/dist/hcaptcha-shield.d.ts +12 -13
- package/dist/hcaptcha-shield.d.ts.map +1 -0
- package/dist/hcaptcha-shield.js +34 -0
- package/dist/hcaptcha-shield.js.map +1 -0
- package/dist/healthcheck.d.ts +5 -5
- package/dist/healthcheck.d.ts.map +1 -1
- package/dist/healthcheck.js +5 -5
- package/dist/healthcheck.js.map +1 -1
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js.map +1 -1
- package/dist/image-compressor.d.ts +9 -4
- package/dist/image-compressor.d.ts.map +1 -0
- package/dist/image-compressor.js +13 -0
- package/dist/image-compressor.js.map +1 -0
- package/dist/image-exif.d.ts +10 -9
- package/dist/image-exif.d.ts.map +1 -0
- package/dist/image-exif.js +21 -0
- package/dist/image-exif.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -1
- package/dist/jobs.d.ts.map +1 -1
- package/dist/jobs.js.map +1 -1
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js.map +1 -1
- package/dist/mailer.d.ts +13 -0
- package/dist/mailer.d.ts.map +1 -1
- package/dist/mailer.js +6 -0
- package/dist/mailer.js.map +1 -1
- package/dist/node-env.vo.d.ts.map +1 -1
- package/dist/node-env.vo.js.map +1 -1
- package/dist/open-graph.d.ts +31 -12
- package/dist/open-graph.d.ts.map +1 -0
- package/dist/open-graph.js +172 -0
- package/dist/open-graph.js.map +1 -0
- package/dist/passwords.d.ts.map +1 -1
- package/dist/passwords.js.map +1 -1
- package/dist/path.d.ts.map +1 -1
- package/dist/policy.service.d.ts +12 -0
- package/dist/policy.service.d.ts.map +1 -0
- package/dist/policy.service.js +14 -0
- package/dist/policy.service.js.map +1 -0
- package/dist/port.d.ts.map +1 -1
- package/dist/prerequisites/binary.d.ts +5 -5
- package/dist/prerequisites/binary.d.ts.map +1 -1
- package/dist/prerequisites/binary.js +4 -4
- package/dist/prerequisites/binary.js.map +1 -1
- package/dist/prerequisites/bun.d.ts +5 -5
- package/dist/prerequisites/bun.d.ts.map +1 -1
- package/dist/prerequisites/bun.js +5 -3
- package/dist/prerequisites/bun.js.map +1 -1
- package/dist/prerequisites/dependency-vulnerabilities.d.ts +13 -0
- package/dist/prerequisites/dependency-vulnerabilities.d.ts.map +1 -0
- package/dist/prerequisites/dependency-vulnerabilities.js +30 -0
- package/dist/prerequisites/dependency-vulnerabilities.js.map +1 -0
- package/dist/prerequisites/external-api.d.ts +14 -0
- package/dist/prerequisites/external-api.d.ts.map +1 -0
- package/dist/prerequisites/external-api.js +21 -0
- package/dist/prerequisites/external-api.js.map +1 -0
- package/dist/prerequisites/index.d.ts +2 -0
- package/dist/prerequisites/index.d.ts.map +1 -1
- package/dist/prerequisites/index.js +2 -0
- package/dist/prerequisites/index.js.map +1 -1
- package/dist/prerequisites/jobs.d.ts +5 -5
- package/dist/prerequisites/jobs.d.ts.map +1 -1
- package/dist/prerequisites/jobs.js +4 -4
- package/dist/prerequisites/jobs.js.map +1 -1
- package/dist/prerequisites/log-file.d.ts +5 -5
- package/dist/prerequisites/log-file.d.ts.map +1 -1
- package/dist/prerequisites/log-file.js +4 -4
- package/dist/prerequisites/log-file.js.map +1 -1
- package/dist/prerequisites/mailer.d.ts +5 -5
- package/dist/prerequisites/mailer.d.ts.map +1 -1
- package/dist/prerequisites/mailer.js +4 -4
- package/dist/prerequisites/mailer.js.map +1 -1
- package/dist/prerequisites/memory.d.ts +5 -5
- package/dist/prerequisites/memory.d.ts.map +1 -1
- package/dist/prerequisites/memory.js +4 -4
- package/dist/prerequisites/memory.js.map +1 -1
- package/dist/prerequisites/node.d.ts +5 -5
- package/dist/prerequisites/node.d.ts.map +1 -1
- package/dist/prerequisites/node.js +4 -4
- package/dist/prerequisites/node.js.map +1 -1
- package/dist/prerequisites/outside-connectivity.d.ts +5 -5
- package/dist/prerequisites/outside-connectivity.d.ts.map +1 -1
- package/dist/prerequisites/outside-connectivity.js +4 -4
- package/dist/prerequisites/outside-connectivity.js.map +1 -1
- package/dist/prerequisites/path.d.ts +5 -5
- package/dist/prerequisites/path.d.ts.map +1 -1
- package/dist/prerequisites/path.js +4 -4
- package/dist/prerequisites/path.js.map +1 -1
- package/dist/prerequisites/port.d.ts +5 -5
- package/dist/prerequisites/port.d.ts.map +1 -1
- package/dist/prerequisites/port.js +6 -6
- package/dist/prerequisites/port.js.map +1 -1
- package/dist/prerequisites/ram.d.ts +5 -5
- package/dist/prerequisites/ram.d.ts.map +1 -1
- package/dist/prerequisites/ram.js +4 -4
- package/dist/prerequisites/ram.js.map +1 -1
- package/dist/prerequisites/self.d.ts +5 -5
- package/dist/prerequisites/self.d.ts.map +1 -1
- package/dist/prerequisites/self.js +4 -4
- package/dist/prerequisites/self.js.map +1 -1
- package/dist/prerequisites/space.d.ts +5 -5
- package/dist/prerequisites/space.d.ts.map +1 -1
- package/dist/prerequisites/space.js +4 -4
- package/dist/prerequisites/space.js.map +1 -1
- package/dist/prerequisites/ssl-certificate-expiry.d.ts +5 -5
- package/dist/prerequisites/ssl-certificate-expiry.d.ts.map +1 -1
- package/dist/prerequisites/ssl-certificate-expiry.js +5 -5
- package/dist/prerequisites/ssl-certificate-expiry.js.map +1 -1
- package/dist/prerequisites/timezone-utc.d.ts +7 -5
- package/dist/prerequisites/timezone-utc.d.ts.map +1 -1
- package/dist/prerequisites/timezone-utc.js +6 -5
- package/dist/prerequisites/timezone-utc.js.map +1 -1
- package/dist/prerequisites/translations.d.ts +8 -8
- package/dist/prerequisites/translations.d.ts.map +1 -1
- package/dist/prerequisites/translations.js +8 -8
- package/dist/prerequisites/translations.js.map +1 -1
- package/dist/prerequisites.d.ts +2 -0
- package/dist/prerequisites.d.ts.map +1 -1
- package/dist/prerequisites.js +2 -0
- package/dist/prerequisites.js.map +1 -1
- package/dist/recaptcha-shield.d.ts +13 -5
- package/dist/recaptcha-shield.d.ts.map +1 -0
- package/dist/recaptcha-shield.js +50 -0
- package/dist/recaptcha-shield.js.map +1 -0
- package/dist/setup.js +1 -1
- package/dist/setup.js.map +1 -1
- package/dist/simulated-error.d.ts +2 -2
- package/dist/simulated-error.d.ts.map +1 -0
- package/dist/simulated-error.js +7 -0
- package/dist/simulated-error.js.map +1 -0
- package/dist/sitemap.d.ts +19 -27
- package/dist/sitemap.d.ts.map +1 -0
- package/dist/sitemap.js +57 -0
- package/dist/sitemap.js.map +1 -0
- package/dist/slower.d.ts +3 -6
- package/dist/slower.d.ts.map +1 -0
- package/dist/slower.js +8 -0
- package/dist/slower.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/url-wo-trailing-slash.d.ts +4 -0
- package/dist/url-wo-trailing-slash.d.ts.map +1 -0
- package/dist/url-wo-trailing-slash.js +9 -0
- package/dist/url-wo-trailing-slash.js.map +1 -0
- package/dist/uuid.d.ts.map +1 -1
- package/package.json +5 -2
- package/src/basic-auth.ts +26 -0
- package/src/correlation-id.ts +1 -0
- package/src/decorators.ts +78 -0
- package/src/encryption.ts +60 -0
- package/src/env-validator.ts +43 -0
- package/src/event-handler.ts +20 -0
- package/src/event-logger.ts +24 -0
- package/src/event.ts +29 -0
- package/src/file-location.ts +70 -0
- package/src/gzip.ts +23 -0
- package/src/hcaptcha-shield.ts +57 -0
- package/src/healthcheck.ts +9 -14
- package/src/i18n.ts +4 -0
- package/src/image-compressor.ts +26 -0
- package/src/image-exif.ts +38 -0
- package/src/index.ts +19 -0
- package/src/jobs.ts +1 -0
- package/src/logger.ts +6 -0
- package/src/mailer.ts +25 -0
- package/src/node-env.vo.ts +1 -0
- package/src/open-graph.ts +259 -0
- package/src/passwords.ts +1 -0
- package/src/path.ts +1 -0
- package/src/policy.service.ts +25 -0
- package/src/port.ts +1 -0
- package/src/prerequisites/binary.ts +6 -10
- package/src/prerequisites/bun.ts +7 -10
- package/src/prerequisites/dependency-vulnerabilities.ts +54 -0
- package/src/prerequisites/external-api.ts +27 -0
- package/src/prerequisites/index.ts +2 -0
- package/src/prerequisites/jobs.ts +6 -12
- package/src/prerequisites/log-file.ts +6 -11
- package/src/prerequisites/mailer.ts +6 -11
- package/src/prerequisites/memory.ts +7 -12
- package/src/prerequisites/node.ts +6 -11
- package/src/prerequisites/outside-connectivity.ts +6 -11
- package/src/prerequisites/path.ts +6 -11
- package/src/prerequisites/port.ts +8 -14
- package/src/prerequisites/ram.ts +6 -11
- package/src/prerequisites/self.ts +6 -11
- package/src/prerequisites/space.ts +6 -11
- package/src/prerequisites/ssl-certificate-expiry.ts +7 -12
- package/src/prerequisites/timezone-utc.ts +9 -12
- package/src/prerequisites/translations.ts +14 -19
- package/src/prerequisites.ts +2 -0
- package/src/recaptcha-shield.ts +76 -0
- package/src/setup.ts +1 -1
- package/src/simulated-error.ts +8 -0
- package/src/sitemap.ts +98 -0
- package/src/slower.ts +10 -0
- package/src/url-wo-trailing-slash.ts +11 -0
- package/src/uuid.ts +1 -0
package/src/sitemap.ts
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
|
|
3
|
+
import { PathType } from "./path";
|
|
4
|
+
import { UrlWithoutTrailingSlashType } from "./url-wo-trailing-slash";
|
|
5
|
+
|
|
6
|
+
export const SitemapLoc = z.string().min(1);
|
|
7
|
+
|
|
8
|
+
export type SitemapLocType = z.infer<typeof SitemapLoc>;
|
|
9
|
+
|
|
10
|
+
export const SitemapLastmod = z
|
|
11
|
+
.string()
|
|
12
|
+
.refine(
|
|
13
|
+
(value) => {
|
|
14
|
+
const [year, month, day] = value.split("-");
|
|
15
|
+
|
|
16
|
+
return (
|
|
17
|
+
Number.isInteger(Number(year)) && Number.isInteger(Number(month)) && Number.isInteger(Number(day))
|
|
18
|
+
);
|
|
19
|
+
},
|
|
20
|
+
{ message: "sitemap.lastmod.invalid" },
|
|
21
|
+
)
|
|
22
|
+
.optional();
|
|
23
|
+
|
|
24
|
+
export type SitemapLastmodType = z.infer<typeof SitemapLastmod>;
|
|
25
|
+
|
|
26
|
+
export const SitemapChangefreq = z
|
|
27
|
+
.union([
|
|
28
|
+
z.literal("always"),
|
|
29
|
+
z.literal("hourly"),
|
|
30
|
+
z.literal("daily"),
|
|
31
|
+
z.literal("weekly"),
|
|
32
|
+
z.literal("monthly"),
|
|
33
|
+
z.literal("yearly"),
|
|
34
|
+
z.literal("never"),
|
|
35
|
+
])
|
|
36
|
+
.optional();
|
|
37
|
+
|
|
38
|
+
export type SitemapChangefreqType = z.infer<typeof SitemapChangefreq>;
|
|
39
|
+
|
|
40
|
+
export const SitemapPriority = z.number().min(0).max(1).default(0.5);
|
|
41
|
+
|
|
42
|
+
export type SitemapPriorityType = z.infer<typeof SitemapPriority>;
|
|
43
|
+
|
|
44
|
+
export const SitemapEntry = z.object({
|
|
45
|
+
loc: SitemapLoc,
|
|
46
|
+
lastmod: SitemapLastmod,
|
|
47
|
+
changefreq: SitemapChangefreq,
|
|
48
|
+
priority: SitemapPriority,
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
export type SitemapEntryType = z.infer<typeof SitemapEntry>;
|
|
52
|
+
|
|
53
|
+
export type SitemapConfigType = {
|
|
54
|
+
path?: PathType;
|
|
55
|
+
entries: SitemapEntryType[];
|
|
56
|
+
BASE_URL: UrlWithoutTrailingSlashType;
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
export class Sitemap {
|
|
60
|
+
static DEFAULT_PATH = "static/sitemap.xml";
|
|
61
|
+
|
|
62
|
+
static generate(config: SitemapConfigType) {
|
|
63
|
+
let sitemap = `<?xml version="1.0" encoding="UTF-8"?>\n`;
|
|
64
|
+
sitemap += `<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">\n`;
|
|
65
|
+
|
|
66
|
+
for (const entry of config.entries) {
|
|
67
|
+
{
|
|
68
|
+
let output = "<url>\n";
|
|
69
|
+
output += `\t<loc>${config.BASE_URL}${entry.loc}</loc>\n`;
|
|
70
|
+
|
|
71
|
+
if (entry.lastmod) {
|
|
72
|
+
output += `\t<lastmod>${entry.lastmod}</lastmod>\n`;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
if (entry.changefreq) {
|
|
76
|
+
output += `\t<changefreq>${entry.changefreq}</changefreq>\n`;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
output += `\t<priority>${entry.priority}</priority>\n`;
|
|
80
|
+
|
|
81
|
+
output += "</url>\n";
|
|
82
|
+
|
|
83
|
+
sitemap += output;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
sitemap += "</urlset>";
|
|
88
|
+
|
|
89
|
+
return sitemap;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
static async save(config: SitemapConfigType) {
|
|
93
|
+
const output = config.path ?? Sitemap.DEFAULT_PATH;
|
|
94
|
+
const content = Sitemap.generate(config);
|
|
95
|
+
|
|
96
|
+
return Bun.file(output).write(content);
|
|
97
|
+
}
|
|
98
|
+
}
|
package/src/slower.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
|
|
3
|
+
export const UrlWithoutTrailingSlash = z
|
|
4
|
+
.url()
|
|
5
|
+
.trim()
|
|
6
|
+
.min(1)
|
|
7
|
+
.refine((value) => !value.endsWith("/"), {
|
|
8
|
+
message: "url_cannot_end_with_trailing_slash",
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
export type UrlWithoutTrailingSlashType = z.infer<typeof UrlWithoutTrailingSlash>;
|