@trebired/frontend 6.9.0 → 6.10.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.
Files changed (50) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/server/index.d.ts +2 -0
  3. package/dist/server/index.d.ts.map +1 -1
  4. package/dist/server/index.js +2 -0
  5. package/dist/server/index.js.map +1 -1
  6. package/dist/server/language.d.ts +19 -2
  7. package/dist/server/language.d.ts.map +1 -1
  8. package/dist/server/language.js +20 -1
  9. package/dist/server/language.js.map +1 -1
  10. package/dist/server/services.d.ts +58 -0
  11. package/dist/server/services.d.ts.map +1 -0
  12. package/dist/server/services.js +92 -0
  13. package/dist/server/services.js.map +1 -0
  14. package/dist/server/sidebar.d.ts +14 -2
  15. package/dist/server/sidebar.d.ts.map +1 -1
  16. package/dist/server/sidebar.js +15 -1
  17. package/dist/server/sidebar.js.map +1 -1
  18. package/dist/server/static.d.ts +33 -0
  19. package/dist/server/static.d.ts.map +1 -0
  20. package/dist/server/static.js +148 -0
  21. package/dist/server/static.js.map +1 -0
  22. package/dist/server/theme.d.ts +20 -2
  23. package/dist/server/theme.d.ts.map +1 -1
  24. package/dist/server/theme.js +21 -1
  25. package/dist/server/theme.js.map +1 -1
  26. package/dist/src/server/index.d.ts +2 -0
  27. package/dist/src/server/index.d.ts.map +1 -1
  28. package/dist/src/server/index.js +2 -0
  29. package/dist/src/server/index.js.map +1 -1
  30. package/dist/src/server/language.d.ts +19 -2
  31. package/dist/src/server/language.d.ts.map +1 -1
  32. package/dist/src/server/language.js +20 -1
  33. package/dist/src/server/language.js.map +1 -1
  34. package/dist/src/server/services.d.ts +58 -0
  35. package/dist/src/server/services.d.ts.map +1 -0
  36. package/dist/src/server/services.js +92 -0
  37. package/dist/src/server/services.js.map +1 -0
  38. package/dist/src/server/sidebar.d.ts +14 -2
  39. package/dist/src/server/sidebar.d.ts.map +1 -1
  40. package/dist/src/server/sidebar.js +15 -1
  41. package/dist/src/server/sidebar.js.map +1 -1
  42. package/dist/src/server/static.d.ts +33 -0
  43. package/dist/src/server/static.d.ts.map +1 -0
  44. package/dist/src/server/static.js +148 -0
  45. package/dist/src/server/static.js.map +1 -0
  46. package/dist/src/server/theme.d.ts +20 -2
  47. package/dist/src/server/theme.d.ts.map +1 -1
  48. package/dist/src/server/theme.js +21 -1
  49. package/dist/src/server/theme.js.map +1 -1
  50. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  All notable package changes are documented here.
4
4
 
5
+ ## 6.10.0
6
+
7
+ - Added bound theme, language, and sidebar server factories so apps configure frontend server state once and use package-owned helpers from that config.
8
+ - Added `attachFrontendServerServices()` for package-owned attachment of frontend security, navigation, locale, SEO, theme, language, sidebar, favicon, icon, Monaco, and static package routes.
9
+ - Added generic static directory and package static route helpers for frontend assets such as Monaco without app-owned Express/static wrapper logic.
10
+
5
11
  ## 6.9.0
6
12
 
7
13
  - Added server helpers for attaching current-navigation locals and the full icon server system.
@@ -14,6 +14,8 @@ export * from "./react/render.d.ts";
14
14
  export * from "./render-mode.js";
15
15
  export * from "./security.js";
16
16
  export * from "./seo.js";
17
+ export * from "./services.js";
17
18
  export * from "./sidebar.js";
19
+ export * from "./static.js";
18
20
  export * from "./theme.js";
19
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -14,6 +14,8 @@ export * from "./react/render.js";
14
14
  export * from "./render-mode.js";
15
15
  export * from "./security.js";
16
16
  export * from "./seo.js";
17
+ export * from "./services.js";
17
18
  export * from "./sidebar.js";
19
+ export * from "./static.js";
18
20
  export * from "./theme.js";
19
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -21,6 +21,22 @@ type LanguageSetHandlerOptions = {
21
21
  path?: string;
22
22
  respond?: (context: LanguageSetContext) => unknown;
23
23
  };
24
+ type LanguageServer = {
25
+ applyToLocals: (req: ServerRequestLike | null | undefined, res: ServerResponseLike | null | undefined) => ReturnType<typeof applyLanguageToLocals>;
26
+ attachMiddleware: (app: unknown) => ReturnType<typeof attachLanguageMiddleware>;
27
+ attachRoutes: (app: unknown, config?: Omit<LanguageSetHandlerOptions, "options">) => ReturnType<typeof attachLanguageRoutes>;
28
+ browserPreferred: (req: ServerRequestLike | null | undefined) => ReturnType<typeof browserPreferredLanguage>;
29
+ current: (req: ServerRequestLike | null | undefined) => ReturnType<typeof currentLanguage>;
30
+ defaultKey: () => ReturnType<typeof defaultLanguage>;
31
+ effective: (req: ServerRequestLike | null | undefined) => ReturnType<typeof effectiveLanguage>;
32
+ isAllowed: (value: unknown) => ReturnType<typeof languageIsAllowed>;
33
+ keys: () => ReturnType<typeof allowedLanguageKeys>;
34
+ match: (value: unknown) => ReturnType<typeof matchAllowedLanguage>;
35
+ options: LanguageServerOptions;
36
+ setCookie: (req: ServerRequestLike | null | undefined, res: ServerResponseLike | null | undefined, lang: unknown) => ReturnType<typeof setLanguageCookie>;
37
+ setLanguage: (req: ServerRequestLike | null | undefined, res: ServerResponseLike | null | undefined, lang: unknown) => ReturnType<typeof setServerLanguage>;
38
+ setHandler: (config?: Omit<LanguageSetHandlerOptions, "options">) => ReturnType<typeof createLanguageSetHandler>;
39
+ };
24
40
  declare function normalizeLanguageToken(value: unknown): string;
25
41
  declare function allowedLanguageKeys(options?: LanguageServerOptions): string[];
26
42
  declare function matchAllowedLanguage(value: unknown, options?: LanguageServerOptions): string;
@@ -46,6 +62,7 @@ declare function createLanguageSetHandler(config?: LanguageSetHandlerOptions): (
46
62
  declare function createLanguageMiddleware(options?: LanguageServerOptions): (req: ServerRequestLike, res: ServerResponseLike, next: () => unknown) => unknown;
47
63
  declare function attachLanguageMiddleware(app: unknown, options?: LanguageServerOptions): void;
48
64
  declare function attachLanguageRoutes(app: unknown, config?: LanguageSetHandlerOptions): void;
49
- export { DEFAULT_LANGUAGE_COOKIE_NAME, DEFAULT_LANGUAGE_KEYS, allowedLanguageKeys, applyLanguageToLocals, attachLanguageMiddleware, attachLanguageRoutes, browserPreferredLanguage, createLanguageMiddleware, createLanguageSetHandler, currentLanguage, defaultLanguage, effectiveLanguage, languageCookieName, languageIsAllowed, languageSetPayload, matchAllowedLanguage, normalizeLanguageToken, setLanguageCookie, setServerLanguage, setServerLanguage as setLanguage, };
50
- export type { LanguageServerOptions, LanguageSetContext, LanguageSetHandlerOptions };
65
+ declare function createLanguageServer(options?: LanguageServerOptions): LanguageServer;
66
+ export { DEFAULT_LANGUAGE_COOKIE_NAME, DEFAULT_LANGUAGE_KEYS, allowedLanguageKeys, applyLanguageToLocals, attachLanguageMiddleware, attachLanguageRoutes, browserPreferredLanguage, createLanguageMiddleware, createLanguageServer, createLanguageSetHandler, currentLanguage, defaultLanguage, effectiveLanguage, languageCookieName, languageIsAllowed, languageSetPayload, matchAllowedLanguage, normalizeLanguageToken, setLanguageCookie, setServerLanguage, setServerLanguage as setLanguage, };
67
+ export type { LanguageServer, LanguageServerOptions, LanguageSetContext, LanguageSetHandlerOptions, };
51
68
  //# sourceMappingURL=language.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"language.d.ts","sourceRoot":"","sources":["../../../src/server/language.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"language.d.ts","sourceRoot":"","sources":["../../../src/server/language.ts"],"names":[],"mappings":"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"}
@@ -143,5 +143,24 @@ function attachLanguageRoutes(app, config = {}) {
143
143
  app.post(config.path || "/ui/lang/set", createLanguageSetHandler(config));
144
144
  }
145
145
  }
146
- export { DEFAULT_LANGUAGE_COOKIE_NAME, DEFAULT_LANGUAGE_KEYS, allowedLanguageKeys, applyLanguageToLocals, attachLanguageMiddleware, attachLanguageRoutes, browserPreferredLanguage, createLanguageMiddleware, createLanguageSetHandler, currentLanguage, defaultLanguage, effectiveLanguage, languageCookieName, languageIsAllowed, languageSetPayload, matchAllowedLanguage, normalizeLanguageToken, setLanguageCookie, setServerLanguage, setServerLanguage as setLanguage, };
146
+ function createLanguageServer(options = {}) {
147
+ const serverOptions = { ...options };
148
+ return {
149
+ applyToLocals: (req, res) => applyLanguageToLocals(req, res, serverOptions),
150
+ attachMiddleware: (app) => attachLanguageMiddleware(app, serverOptions),
151
+ attachRoutes: (app, config = {}) => attachLanguageRoutes(app, { ...config, options: serverOptions }),
152
+ browserPreferred: (req) => browserPreferredLanguage(req, serverOptions),
153
+ current: (req) => currentLanguage(req, serverOptions),
154
+ defaultKey: () => defaultLanguage(serverOptions),
155
+ effective: (req) => effectiveLanguage(req, serverOptions),
156
+ isAllowed: (value) => languageIsAllowed(value, serverOptions),
157
+ keys: () => allowedLanguageKeys(serverOptions),
158
+ match: (value) => matchAllowedLanguage(value, serverOptions),
159
+ options: serverOptions,
160
+ setCookie: (req, res, lang) => setLanguageCookie(req, res, lang, serverOptions),
161
+ setHandler: (config = {}) => createLanguageSetHandler({ ...config, options: serverOptions }),
162
+ setLanguage: (req, res, lang) => setServerLanguage(req, res, lang, serverOptions),
163
+ };
164
+ }
165
+ export { DEFAULT_LANGUAGE_COOKIE_NAME, DEFAULT_LANGUAGE_KEYS, allowedLanguageKeys, applyLanguageToLocals, attachLanguageMiddleware, attachLanguageRoutes, browserPreferredLanguage, createLanguageMiddleware, createLanguageServer, createLanguageSetHandler, currentLanguage, defaultLanguage, effectiveLanguage, languageCookieName, languageIsAllowed, languageSetPayload, matchAllowedLanguage, normalizeLanguageToken, setLanguageCookie, setServerLanguage, setServerLanguage as setLanguage, };
147
166
  //# sourceMappingURL=language.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"language.js","sourceRoot":"","sources":["../../../src/server/language.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"language.js","sourceRoot":"","sources":["../../../src/server/language.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import { type AttachIconServerOptions, type IconServerAttachment } from "../icons/server/attachment.d.ts";
2
+ import { type LanguageServerOptions, type LanguageSetHandlerOptions } from "./language.js";
3
+ import { type LocaleMiddlewareOptions } from "./locale.js";
4
+ import { type NavigationMiddlewareOptions } from "./navigation.js";
5
+ import { type SecurityMiddlewareOptions } from "./security.js";
6
+ import { type SeoMiddlewareOptions } from "./seo.js";
7
+ import { type SidebarServerOptions, type SidebarToggleHandlerOptions } from "./sidebar.js";
8
+ import { type PackageStaticRouteOptions, type StaticRouteAttachment } from "./static.js";
9
+ import { type ThemeServerOptions, type ThemeToggleHandlerOptions } from "./theme.js";
10
+ import { type ThemedFaviconOptions } from "./favicon.js";
11
+ type OptionalService<T> = false | true | T | undefined;
12
+ type FrontendThemeServiceOptions = ThemeToggleHandlerOptions & {
13
+ middleware?: boolean;
14
+ options?: ThemeServerOptions;
15
+ routes?: boolean;
16
+ };
17
+ type FrontendLanguageServiceOptions = LanguageSetHandlerOptions & {
18
+ middleware?: boolean;
19
+ options?: LanguageServerOptions;
20
+ routes?: boolean;
21
+ };
22
+ type FrontendSidebarServiceOptions = SidebarToggleHandlerOptions & {
23
+ options?: SidebarServerOptions;
24
+ routes?: boolean;
25
+ };
26
+ type FrontendServerServicesOptions = {
27
+ favicon?: false | ThemedFaviconOptions;
28
+ icons?: false | AttachIconServerOptions;
29
+ language?: OptionalService<FrontendLanguageServiceOptions>;
30
+ locale?: OptionalService<LocaleMiddlewareOptions>;
31
+ monaco?: OptionalService<Partial<PackageStaticRouteOptions>>;
32
+ navigation?: OptionalService<NavigationMiddlewareOptions>;
33
+ security?: OptionalService<SecurityMiddlewareOptions>;
34
+ seo?: OptionalService<SeoMiddlewareOptions>;
35
+ sidebar?: OptionalService<FrontendSidebarServiceOptions>;
36
+ statics?: false | PackageStaticRouteOptions | readonly PackageStaticRouteOptions[];
37
+ theme?: OptionalService<FrontendThemeServiceOptions>;
38
+ };
39
+ type FrontendServerServicesAttachment = {
40
+ favicon?: true;
41
+ icons?: IconServerAttachment;
42
+ language?: true;
43
+ locale?: true;
44
+ monaco?: StaticRouteAttachment;
45
+ navigation?: true;
46
+ security?: true;
47
+ seo?: true;
48
+ sidebar?: true;
49
+ statics?: StaticRouteAttachment[];
50
+ theme?: true;
51
+ };
52
+ declare function attachThemeService(app: unknown, input: OptionalService<FrontendThemeServiceOptions>): boolean;
53
+ declare function attachLanguageService(app: unknown, input: OptionalService<FrontendLanguageServiceOptions>): boolean;
54
+ declare function attachSidebarService(app: unknown, input: OptionalService<FrontendSidebarServiceOptions>): boolean;
55
+ declare function attachFrontendServerServices(app: unknown, options?: FrontendServerServicesOptions): FrontendServerServicesAttachment;
56
+ export { attachFrontendServerServices, attachLanguageService, attachSidebarService, attachThemeService, };
57
+ export type { FrontendLanguageServiceOptions, FrontendServerServicesAttachment, FrontendServerServicesOptions, FrontendSidebarServiceOptions, FrontendThemeServiceOptions, };
58
+ //# sourceMappingURL=services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/server/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AACvB,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC/B,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,UAAU,CAAC;AAClB,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EACjC,MAAM,cAAc,CAAC;AACtB,OAAO,EAGL,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC/B,MAAM,YAAY,CAAC;AACpB,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AAEtB,KAAK,eAAe,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC;AAEvD,KAAK,2BAA2B,GAChC,yBAAyB,GAAE;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,8BAA8B,GACnC,yBAAyB,GAAE;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,6BAA6B,GAClC,2BAA2B,GAAE;IAC3B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,6BAA6B,GAAG;IACnC,OAAO,CAAC,EAAE,KAAK,GAAG,oBAAoB,CAAC;IACvC,KAAK,CAAC,EAAE,KAAK,GAAG,uBAAuB,CAAC;IACxC,QAAQ,CAAC,EAAE,eAAe,CAAC,8BAA8B,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,eAAe,CAAC,uBAAuB,CAAC,CAAC;IAClD,MAAM,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAC7D,UAAU,CAAC,EAAE,eAAe,CAAC,2BAA2B,CAAC,CAAC;IAC1D,QAAQ,CAAC,EAAE,eAAe,CAAC,yBAAyB,CAAC,CAAC;IACtD,GAAG,CAAC,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,eAAe,CAAC,6BAA6B,CAAC,CAAC;IACzD,OAAO,CAAC,EAAE,KAAK,GAAG,yBAAyB,GAAG,SAAS,yBAAyB,EAAE,CAAC;IACnF,KAAK,CAAC,EAAE,eAAe,CAAC,2BAA2B,CAAC,CAAC;CACtD,CAAC;AAKF,KAAK,gCAAgC,GAAG;IACtC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,IAAI,CAAC;CACd,CAAC;AAUF,iBAAS,kBAAkB,CACzB,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,eAAe,CAAC,2BAA2B,CAAC,WAOpD;AAED,iBAAS,qBAAqB,CAC5B,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,eAAe,CAAC,8BAA8B,CAAC,WAOvD;AAED,iBAAS,oBAAoB,CAC3B,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,eAAe,CAAC,6BAA6B,CAAC,WAMtD;AAaD,iBAAS,4BAA4B,CACnC,GAAG,EAAE,OAAO,EACZ,OAAO,GAAE,6BAAkC,GAC1C,gCAAgC,CAsClC;AAED,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,GACnB,CAAC;AACF,YAAY,EACV,8BAA8B,EAC9B,gCAAgC,EAChC,6BAA6B,EAC7B,6BAA6B,EAC7B,2BAA2B,GAC5B,CAAC"}
@@ -0,0 +1,92 @@
1
+ import { attachIconServer, } from "../icons/server/attachment.js";
2
+ import { attachLanguageMiddleware, attachLanguageRoutes, } from "./language.js";
3
+ import { attachLocaleMiddleware, } from "./locale.js";
4
+ import { attachNavigationMiddleware, } from "./navigation.js";
5
+ import { attachSecurityMiddleware, } from "./security.js";
6
+ import { attachSeoMiddleware, } from "./seo.js";
7
+ import { attachSidebarRoutes, } from "./sidebar.js";
8
+ import { attachMonacoStaticRoute, attachPackageStaticRoute, } from "./static.js";
9
+ import { attachThemeMiddleware, attachThemeRoutes, } from "./theme.js";
10
+ import { attachThemedFaviconRoutes, } from "./favicon.js";
11
+ function serviceEnabled(service) {
12
+ return service !== false && service != null;
13
+ }
14
+ function serviceConfig(service) {
15
+ return (service === true ? {} : service || {});
16
+ }
17
+ function attachThemeService(app, input) {
18
+ if (!serviceEnabled(input))
19
+ return false;
20
+ const config = serviceConfig(input);
21
+ if (config.middleware !== false)
22
+ attachThemeMiddleware(app, config.options || {});
23
+ if (config.routes !== false)
24
+ attachThemeRoutes(app, config);
25
+ return true;
26
+ }
27
+ function attachLanguageService(app, input) {
28
+ if (!serviceEnabled(input))
29
+ return false;
30
+ const config = serviceConfig(input);
31
+ if (config.middleware !== false)
32
+ attachLanguageMiddleware(app, config.options || {});
33
+ if (config.routes !== false)
34
+ attachLanguageRoutes(app, config);
35
+ return true;
36
+ }
37
+ function attachSidebarService(app, input) {
38
+ if (!serviceEnabled(input))
39
+ return false;
40
+ const config = serviceConfig(input);
41
+ if (config.routes !== false)
42
+ attachSidebarRoutes(app, config);
43
+ return true;
44
+ }
45
+ function isStaticRouteArray(input) {
46
+ return Array.isArray(input);
47
+ }
48
+ function staticRouteList(input) {
49
+ if (input === false || input == null)
50
+ return [];
51
+ return isStaticRouteArray(input) ? [...input] : [input];
52
+ }
53
+ function attachFrontendServerServices(app, options = {}) {
54
+ const attached = {};
55
+ if (serviceEnabled(options.security)) {
56
+ attachSecurityMiddleware(app, serviceConfig(options.security));
57
+ attached.security = true;
58
+ }
59
+ if (serviceEnabled(options.navigation)) {
60
+ attachNavigationMiddleware(app, serviceConfig(options.navigation));
61
+ attached.navigation = true;
62
+ }
63
+ if (serviceEnabled(options.locale)) {
64
+ attachLocaleMiddleware(app, serviceConfig(options.locale));
65
+ attached.locale = true;
66
+ }
67
+ if (serviceEnabled(options.seo)) {
68
+ attachSeoMiddleware(app, serviceConfig(options.seo));
69
+ attached.seo = true;
70
+ }
71
+ if (attachThemeService(app, options.theme))
72
+ attached.theme = true;
73
+ if (attachLanguageService(app, options.language))
74
+ attached.language = true;
75
+ if (attachSidebarService(app, options.sidebar))
76
+ attached.sidebar = true;
77
+ if (options.favicon) {
78
+ attachThemedFaviconRoutes(app, options.favicon);
79
+ attached.favicon = true;
80
+ }
81
+ if (options.icons)
82
+ attached.icons = attachIconServer(app, options.icons);
83
+ if (serviceEnabled(options.monaco)) {
84
+ attached.monaco = attachMonacoStaticRoute(app, serviceConfig(options.monaco));
85
+ }
86
+ const staticAttachments = staticRouteList(options.statics).map((routeOptions) => attachPackageStaticRoute(app, routeOptions));
87
+ if (staticAttachments.length)
88
+ attached.statics = staticAttachments;
89
+ return attached;
90
+ }
91
+ export { attachFrontendServerServices, attachLanguageService, attachSidebarService, attachThemeService, };
92
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/server/services.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,17 @@ type SidebarToggleHandlerOptions = {
24
24
  path?: string;
25
25
  respond?: (context: SidebarToggleContext) => unknown;
26
26
  };
27
+ type SidebarServer = {
28
+ attachRoutes: (app: unknown, config?: Omit<SidebarToggleHandlerOptions, "options">) => ReturnType<typeof attachSidebarRoutes>;
29
+ cookieName: (side: unknown) => ReturnType<typeof sidebarCookieName>;
30
+ currentMinimized: (req: ServerRequestLike | null | undefined, side: unknown) => ReturnType<typeof currentSidebarMinimized>;
31
+ normalizeMinimized: (value: unknown) => ReturnType<typeof normalizeMinimized>;
32
+ normalizeSide: (value: unknown) => ReturnType<typeof normalizeSidebarSide>;
33
+ options: SidebarServerOptions;
34
+ setCookie: (req: ServerRequestLike | null | undefined, res: ServerResponseLike | null | undefined, side: unknown, minimized: unknown) => ReturnType<typeof setSidebarMinimizedCookie>;
35
+ setMinimized: (req: ServerRequestLike | null | undefined, res: ServerResponseLike | null | undefined, side: unknown, minimized: unknown) => ReturnType<typeof setServerSidebarMinimized>;
36
+ toggleHandler: (config?: Omit<SidebarToggleHandlerOptions, "options">) => ReturnType<typeof createSidebarToggleHandler>;
37
+ };
27
38
  declare function normalizeSidebarSide(value: unknown, options?: SidebarServerOptions): string;
28
39
  declare function sidebarCookieName(side: unknown, options?: SidebarServerOptions): string;
29
40
  declare function normalizeMinimized(value: unknown): boolean;
@@ -50,6 +61,7 @@ declare function sidebarTogglePayload(state: {
50
61
  };
51
62
  declare function createSidebarToggleHandler(config?: SidebarToggleHandlerOptions): (req: ServerRequestLike, res: ServerResponseLike, next?: (error: unknown) => unknown) => Promise<unknown>;
52
63
  declare function attachSidebarRoutes(app: unknown, config?: SidebarToggleHandlerOptions): void;
53
- export { DEFAULT_SIDEBAR_COOKIE_PREFIX, DEFAULT_SIDEBAR_COOKIE_SUFFIX, DEFAULT_SIDEBAR_SIDES, attachSidebarRoutes, createSidebarToggleHandler, currentSidebarMinimized, normalizeMinimized, normalizeSidebarSide, setServerSidebarMinimized, setServerSidebarMinimized as setSidebarMinimized, setSidebarMinimizedCookie, sidebarCookieName, sidebarTogglePayload, };
54
- export type { SidebarServerOptions, SidebarToggleContext, SidebarToggleHandlerOptions };
64
+ declare function createSidebarServer(options?: SidebarServerOptions): SidebarServer;
65
+ export { DEFAULT_SIDEBAR_COOKIE_PREFIX, DEFAULT_SIDEBAR_COOKIE_SUFFIX, DEFAULT_SIDEBAR_SIDES, attachSidebarRoutes, createSidebarToggleHandler, createSidebarServer, currentSidebarMinimized, normalizeMinimized, normalizeSidebarSide, setServerSidebarMinimized, setServerSidebarMinimized as setSidebarMinimized, setSidebarMinimizedCookie, sidebarCookieName, sidebarTogglePayload, };
66
+ export type { SidebarServer, SidebarServerOptions, SidebarToggleContext, SidebarToggleHandlerOptions, };
55
67
  //# sourceMappingURL=sidebar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../src/server/sidebar.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACxB,MAAM,WAAW,CAAC;AAEnB,QAAA,MAAM,6BAA6B,aAAa,CAAC;AACjD,QAAA,MAAM,6BAA6B,eAAe,CAAC;AACnD,QAAA,MAAM,qBAAqB,mBAAmC,CAAC;AAE/D,KAAK,oBAAoB,GAAG;IAC1B,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,GAAG,EAAE,iBAAiB,CAAC;IACvB,GAAG,EAAE,kBAAkB,CAAC;IACxB,KAAK,EAAE;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C,CAAC;AAEF,KAAK,2BAA2B,GAAG;IACjC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC;CACtD,CAAC;AAEF,iBAAS,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,oBAAyB,UAM/E;AAED,iBAAS,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,GAAE,oBAAyB,UAI3E;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,OAAO,WAQzC;AAED,iBAAS,uBAAuB,CAC9B,GAAG,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,EACzC,IAAI,EAAE,OAAO,EACb,OAAO,GAAE,oBAAyB,WAKnC;AAED,iBAAS,yBAAyB,CAChC,GAAG,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,EACzC,GAAG,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,EAC1C,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,OAAO,EAClB,OAAO,GAAE,oBAAyB,WAoBnC;AAED,iBAAS,yBAAyB,CAChC,GAAG,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,EACzC,GAAG,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,EAC1C,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,OAAO,EAClB,OAAO,GAAE,oBAAyB;;;EAYnC;AAED,iBAAS,oBAAoB,CAAC,KAAK,EAAE;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;;;;;;;uBAAvB,OAAO;kBAAQ,MAAM;;;EAWtE;AAED,iBAAS,0BAA0B,CAAC,MAAM,GAAE,2BAAgC,IAExE,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,OAAO,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,sBAmBrC;AAED,iBAAS,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,2BAAgC,QAOlF;AAED,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,uBAAuB,EACvB,kBAAkB,EAClB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,IAAI,mBAAmB,EAChD,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,GACrB,CAAC;AACF,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,CAAC"}
1
+ {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../src/server/sidebar.ts"],"names":[],"mappings":"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"}
@@ -104,5 +104,19 @@ function attachSidebarRoutes(app, config = {}) {
104
104
  app.post(config.path || "/ui/sidebar/toggle", createSidebarToggleHandler(config));
105
105
  }
106
106
  }
107
- export { DEFAULT_SIDEBAR_COOKIE_PREFIX, DEFAULT_SIDEBAR_COOKIE_SUFFIX, DEFAULT_SIDEBAR_SIDES, attachSidebarRoutes, createSidebarToggleHandler, currentSidebarMinimized, normalizeMinimized, normalizeSidebarSide, setServerSidebarMinimized, setServerSidebarMinimized as setSidebarMinimized, setSidebarMinimizedCookie, sidebarCookieName, sidebarTogglePayload, };
107
+ function createSidebarServer(options = {}) {
108
+ const serverOptions = { ...options };
109
+ return {
110
+ attachRoutes: (app, config = {}) => attachSidebarRoutes(app, { ...config, options: serverOptions }),
111
+ cookieName: (side) => sidebarCookieName(side, serverOptions),
112
+ currentMinimized: (req, side) => currentSidebarMinimized(req, side, serverOptions),
113
+ normalizeMinimized,
114
+ normalizeSide: (value) => normalizeSidebarSide(value, serverOptions),
115
+ options: serverOptions,
116
+ setCookie: (req, res, side, minimized) => setSidebarMinimizedCookie(req, res, side, minimized, serverOptions),
117
+ setMinimized: (req, res, side, minimized) => setServerSidebarMinimized(req, res, side, minimized, serverOptions),
118
+ toggleHandler: (config = {}) => createSidebarToggleHandler({ ...config, options: serverOptions }),
119
+ };
120
+ }
121
+ export { DEFAULT_SIDEBAR_COOKIE_PREFIX, DEFAULT_SIDEBAR_COOKIE_SUFFIX, DEFAULT_SIDEBAR_SIDES, attachSidebarRoutes, createSidebarToggleHandler, createSidebarServer, currentSidebarMinimized, normalizeMinimized, normalizeSidebarSide, setServerSidebarMinimized, setServerSidebarMinimized as setSidebarMinimized, setSidebarMinimizedCookie, sidebarCookieName, sidebarTogglePayload, };
108
122
  //# sourceMappingURL=sidebar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","sourceRoot":"","sources":["../../../src/server/sidebar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.js","sourceRoot":"","sources":["../../../src/server/sidebar.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,GAIT,MAAM,WAAW,CAAC;AAEnB,MAAM,6BAA6B,GAAG,UAAU,CAAC;AACjD,MAAM,6BAA6B,GAAG,YAAY,CAAC;AACnD,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAsD/D,SAAS,oBAAoB,CAAC,KAAc,EAAE,UAAgC,EAAE;IAC9E,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;SAC9C,IAAI,EAAE;SACN,WAAW,EAAE,CAAC;IACf,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC;IAC9D,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAa,EAAE,UAAgC,EAAE;IAC1E,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3D,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;IAC/B,OAAO,GAAG,OAAO,CAAC,YAAY,IAAI,6BAA6B,GAAG,cAAc,GAAG,OAAO,CAAC,YAAY,IAAI,6BAA6B,EAAE,CAAC;AAC7I,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAChE,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IAClE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;SAC9C,IAAI,EAAE;SACN,WAAW,EAAE,CAAC;IACf,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACpE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,uBAAuB,CAC9B,GAAyC,EACzC,IAAa,EACb,UAAgC,EAAE;IAElC,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAC9B,OAAO,kBAAkB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,yBAAyB,CAChC,GAAyC,EACzC,GAA0C,EAC1C,IAAa,EACb,SAAkB,EAClB,UAAgC,EAAE;IAElC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IAC3D,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC9D,IAAI,CAAC,cAAc,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IACjD,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG;QACX,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC;QAC3C,IAAI,EAAE,GAAG;QACT,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;KACjC,CAAC;IACF,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,yBAAyB,CAChC,GAAyC,EACzC,GAA0C,EAC1C,IAAa,EACb,SAAkB,EAClB,UAAgC,EAAE;IAElC,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3D,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC3D,MAAM,IAAI,GAAG,yBAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACrF,MAAM,UAAU,GAAG,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,IAAI;YAAE,OAAO,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC;;YAC/B,OAAO,OAAO,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AACnD,CAAC;AAED,SAAS,oBAAoB,CAAC,KAA2C;IACvE,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;IAC9D,OAAO;QACL,UAAU;QACV,OAAO,EAAE;YACP,EAAE,EAAE,IAAI;YACR,WAAW,EAAE,UAAU;YACvB,OAAO,EAAE,UAAU;YACnB,IAAI,EAAE,KAAK;SACZ;KACF,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,SAAsC,EAAE;IAC1E,OAAO,KAAK,UAAU,oBAAoB,CACxC,GAAsB,EACtB,GAAuB,EACvB,IAAkC;QAElC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,yBAAyB,CACrC,GAAG,EACH,GAAG,EACH,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,EACd,MAAM,CAAC,OAAO,IAAI,EAAE,CACrB,CAAC;YACF,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAI,MAAM,CAAC,OAAO;gBAAE,OAAO,MAAM,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YACpF,OAAO,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,IAAI,KAAK,UAAU;gBAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;YACnD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAY,EAAE,SAAsC,EAAE;IACjF,IAAI,GAAG,IAAI,OAAQ,GAA0B,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACjE,GAA6D,CAAC,IAAI,CACjE,MAAM,CAAC,IAAI,IAAI,oBAAoB,EACnC,0BAA0B,CAAC,MAAM,CAAC,CACnC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,UAAgC,EAAE;IAC7D,MAAM,aAAa,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IACrC,OAAO;QACL,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,EAAE,CACnC,mBAAmB,CAAC,GAAG,EAAE,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;QAC/D,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,aAAa,CAAC;QAC5D,gBAAgB,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAChC,uBAAuB,CAAC,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC;QACjD,kBAAkB;QAClB,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,aAAa,CAAC;QACpE,OAAO,EAAE,aAAa;QACtB,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CACzC,yBAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,CAAC;QACnE,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAC5C,yBAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,CAAC;QACnE,aAAa,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE,CAC/B,0BAA0B,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,IAAI,mBAAmB,EAChD,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,GACrB,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { type ServerRequestLike, type ServerResponseLike } from "./http.js";
2
+ type StaticDirectoryOptions = {
3
+ cacheControl?: string;
4
+ etag?: boolean;
5
+ immutable?: boolean;
6
+ maxAgeSeconds?: number;
7
+ noSniff?: boolean;
8
+ stripPrefix?: string;
9
+ };
10
+ type PackageStaticRouteOptions = StaticDirectoryOptions & {
11
+ packageName: string;
12
+ packageSubpath?: string;
13
+ resolve?: (specifier: string) => string;
14
+ route?: string;
15
+ };
16
+ type StaticRouteAttachment = {
17
+ attached: boolean;
18
+ reason: string;
19
+ root: string;
20
+ route: string;
21
+ };
22
+ declare function staticCacheControl(options?: StaticDirectoryOptions): string;
23
+ declare function staticContentType(filePath: string): string;
24
+ declare function resolveStaticFile(rootInput: unknown, requestPathInput: unknown): string;
25
+ declare function sendStaticFile(res: ServerResponseLike, filePath: string, options?: StaticDirectoryOptions): unknown;
26
+ declare function createStaticDirectoryMiddleware(rootAbs: unknown, options?: StaticDirectoryOptions): (req: ServerRequestLike, res: ServerResponseLike, next?: () => unknown) => unknown;
27
+ declare function attachStaticDirectory(appInput: unknown, routeInput: unknown, rootAbs: unknown, options?: StaticDirectoryOptions): StaticRouteAttachment;
28
+ declare function resolvePackageDirectory(options: PackageStaticRouteOptions): string;
29
+ declare function attachPackageStaticRoute(app: unknown, options: PackageStaticRouteOptions): StaticRouteAttachment;
30
+ declare function attachMonacoStaticRoute(app: unknown, options?: Partial<PackageStaticRouteOptions>): StaticRouteAttachment;
31
+ export { attachMonacoStaticRoute, attachPackageStaticRoute, attachStaticDirectory, createStaticDirectoryMiddleware, resolvePackageDirectory, resolveStaticFile, sendStaticFile, staticCacheControl, staticContentType, };
32
+ export type { PackageStaticRouteOptions, StaticDirectoryOptions, StaticRouteAttachment, };
33
+ //# sourceMappingURL=static.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static.d.ts","sourceRoot":"","sources":["../../../src/server/static.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACxB,MAAM,WAAW,CAAC;AAEnB,KAAK,sBAAsB,GAAG;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,KAAK,yBAAyB,GAAG,sBAAsB,GAAE;IACvD,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AA+CF,iBAAS,kBAAkB,CAAC,OAAO,GAAE,sBAA2B,UAO/D;AAED,iBAAS,iBAAiB,CAAC,QAAQ,EAAE,MAAM,UAG1C;AAED,iBAAS,iBAAiB,CAAC,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,UASvE;AAED,iBAAS,cAAc,CACrB,GAAG,EAAE,kBAAkB,EACvB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,sBAA2B,WAYrC;AAED,iBAAS,+BAA+B,CACtC,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,sBAA2B,IAGlC,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,OAAO,MAAM,OAAO,aAMvB;AAED,iBAAS,qBAAqB,CAC5B,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,OAAO,EACnB,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,sBAA2B,GACnC,qBAAqB,CAYvB;AAcD,iBAAS,uBAAuB,CAAC,OAAO,EAAE,yBAAyB,UAalE;AAED,iBAAS,wBAAwB,CAC/B,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,yBAAyB,GACjC,qBAAqB,CAQvB;AAED,iBAAS,uBAAuB,CAC9B,GAAG,EAAE,OAAO,EACZ,OAAO,GAAE,OAAO,CAAC,yBAAyB,CAAM,yBASjD;AAED,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,+BAA+B,EAC/B,uBAAuB,EACvB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,GAClB,CAAC;AACF,YAAY,EACV,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,GACtB,CAAC"}
@@ -0,0 +1,148 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+ import { serverString, setResponseHeader, } from "./http.js";
5
+ const STATIC_MIME_TYPES = Object.freeze({
6
+ ".css": "text/css; charset=utf-8",
7
+ ".gif": "image/gif",
8
+ ".html": "text/html; charset=utf-8",
9
+ ".ico": "image/x-icon",
10
+ ".js": "text/javascript; charset=utf-8",
11
+ ".json": "application/json; charset=utf-8",
12
+ ".map": "application/json; charset=utf-8",
13
+ ".png": "image/png",
14
+ ".svg": "image/svg+xml; charset=utf-8",
15
+ ".txt": "text/plain; charset=utf-8",
16
+ ".wasm": "application/wasm",
17
+ ".woff": "font/woff",
18
+ ".woff2": "font/woff2",
19
+ });
20
+ function staticRoute(value, fallback = "/") {
21
+ const route = serverString(value).trim() || fallback;
22
+ return route.startsWith("/") ? route : `/${route}`;
23
+ }
24
+ function stripRoutePrefix(pathname, prefixInput) {
25
+ const prefix = staticRoute(prefixInput, "");
26
+ if (!prefix || prefix === "/")
27
+ return pathname;
28
+ if (pathname === prefix)
29
+ return "/";
30
+ return pathname.startsWith(`${prefix}/`) ? pathname.slice(prefix.length) : pathname;
31
+ }
32
+ function requestStaticPath(req, options = {}) {
33
+ const raw = serverString(req.url ||
34
+ req.path ||
35
+ req.originalUrl ||
36
+ "/");
37
+ const withoutQuery = raw.split("?")[0] || "/";
38
+ const decoded = decodeURIComponent(withoutQuery);
39
+ const pathname = decoded.startsWith("/") ? decoded : `/${decoded}`;
40
+ return stripRoutePrefix(pathname, options.stripPrefix);
41
+ }
42
+ function staticCacheControl(options = {}) {
43
+ if (options.cacheControl)
44
+ return options.cacheControl;
45
+ const seconds = Number(options.maxAgeSeconds);
46
+ const maxAge = Number.isFinite(seconds) && seconds > 0 ? Math.floor(seconds) : 0;
47
+ return options.immutable
48
+ ? `public, max-age=${maxAge}, immutable`
49
+ : `public, max-age=${maxAge}`;
50
+ }
51
+ function staticContentType(filePath) {
52
+ return STATIC_MIME_TYPES[path.extname(filePath).toLowerCase()] ||
53
+ "application/octet-stream";
54
+ }
55
+ function resolveStaticFile(rootInput, requestPathInput) {
56
+ const root = path.resolve(serverString(rootInput));
57
+ const clean = serverString(requestPathInput)
58
+ .replace(/^\/+/, "")
59
+ .replace(/\\/g, "/");
60
+ const filePath = path.resolve(root, clean || "index.html");
61
+ if (filePath !== root && !filePath.startsWith(`${root}${path.sep}`))
62
+ return "";
63
+ if (!fs.existsSync(filePath) || !fs.statSync(filePath).isFile())
64
+ return "";
65
+ return filePath;
66
+ }
67
+ function sendStaticFile(res, filePath, options = {}) {
68
+ const body = fs.readFileSync(filePath);
69
+ setResponseHeader(res, "Cache-Control", staticCacheControl(options));
70
+ setResponseHeader(res, "Content-Type", staticContentType(filePath));
71
+ setResponseHeader(res, "Content-Length", String(body.byteLength));
72
+ if (options.etag === false)
73
+ setResponseHeader(res, "ETag", "");
74
+ if (options.noSniff !== false)
75
+ setResponseHeader(res, "X-Content-Type-Options", "nosniff");
76
+ if (res && typeof res.status === "function")
77
+ res.status(200);
78
+ if (res && typeof res.send === "function")
79
+ return res.send(body);
80
+ if (res && typeof res.end === "function")
81
+ return res.end(body);
82
+ return body;
83
+ }
84
+ function createStaticDirectoryMiddleware(rootAbs, options = {}) {
85
+ return function staticDirectoryMiddleware(req, res, next) {
86
+ const filePath = resolveStaticFile(rootAbs, requestStaticPath(req, options));
87
+ if (!filePath)
88
+ return typeof next === "function" ? next() : undefined;
89
+ return sendStaticFile(res, filePath, options);
90
+ };
91
+ }
92
+ function attachStaticDirectory(appInput, routeInput, rootAbs, options = {}) {
93
+ const app = appInput;
94
+ const route = staticRoute(routeInput);
95
+ const root = path.resolve(serverString(rootAbs));
96
+ if (!root || !fs.existsSync(root) || !fs.statSync(root).isDirectory()) {
97
+ return { attached: false, reason: "directory-not-found", root, route };
98
+ }
99
+ if (!app || typeof app.use !== "function") {
100
+ return { attached: false, reason: "app-use-unavailable", root, route };
101
+ }
102
+ app.use(route, createStaticDirectoryMiddleware(root, options));
103
+ return { attached: true, reason: "attached", root, route };
104
+ }
105
+ function defaultPackageResolver(specifier) {
106
+ const resolver = import.meta.resolve;
107
+ return typeof resolver === "function" ? resolver(specifier) : "";
108
+ }
109
+ function safePackageSubpath(value) {
110
+ return serverString(value)
111
+ .split(/[\\/]+/u)
112
+ .map((segment) => segment.trim())
113
+ .filter((segment) => segment && segment !== "." && segment !== "..");
114
+ }
115
+ function resolvePackageDirectory(options) {
116
+ const packageName = serverString(options.packageName).trim();
117
+ if (!packageName)
118
+ return "";
119
+ const resolver = options.resolve || defaultPackageResolver;
120
+ const packageJson = resolver(`${packageName}/package.json`);
121
+ const packageJsonPath = packageJson.startsWith("file:")
122
+ ? fileURLToPath(packageJson)
123
+ : packageJson;
124
+ if (!packageJsonPath)
125
+ return "";
126
+ return path.join(path.dirname(packageJsonPath), ...safePackageSubpath(options.packageSubpath));
127
+ }
128
+ function attachPackageStaticRoute(app, options) {
129
+ const route = staticRoute(options.route, `/${options.packageName}`);
130
+ const root = resolvePackageDirectory(options);
131
+ if (!root)
132
+ return { attached: false, reason: "package-not-resolved", root, route };
133
+ return attachStaticDirectory(app, route, root, {
134
+ ...options,
135
+ stripPrefix: options.stripPrefix || route,
136
+ });
137
+ }
138
+ function attachMonacoStaticRoute(app, options = {}) {
139
+ return attachPackageStaticRoute(app, {
140
+ cacheControl: "public, max-age=86400",
141
+ packageName: "monaco-editor",
142
+ packageSubpath: "min",
143
+ route: "/monaco",
144
+ ...options,
145
+ });
146
+ }
147
+ export { attachMonacoStaticRoute, attachPackageStaticRoute, attachStaticDirectory, createStaticDirectoryMiddleware, resolvePackageDirectory, resolveStaticFile, sendStaticFile, staticCacheControl, staticContentType, };
148
+ //# sourceMappingURL=static.js.map