@betterportal/hello-view 10.1.64 → 10.1.65

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 (85) hide show
  1. package/lib/bp-contracts/org.betterportal.hello-view.json +29 -3
  2. package/lib/plugins/service-betterportal-hello-view/.bp-generated/registry.d.ts.map +1 -1
  3. package/lib/plugins/service-betterportal-hello-view/.bp-generated/registry.js +3 -1
  4. package/lib/plugins/service-betterportal-hello-view/.bp-generated/registry.js.map +1 -1
  5. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/GET.d.ts +38 -3
  6. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/GET.d.ts.map +1 -1
  7. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/GET.js +71 -3
  8. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/GET.js.map +1 -1
  9. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/_renderer.bootstrap5/GET.d.ts +1 -1
  10. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/_renderer.bootstrap5/GET.d.ts.map +1 -1
  11. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/index.d.ts +1 -1
  12. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/index.d.ts.map +1 -1
  13. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/index.js +1 -1
  14. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/index.js.map +1 -1
  15. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/GET.d.ts +34 -3
  16. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/GET.d.ts.map +1 -1
  17. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/GET.js +49 -3
  18. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/GET.js.map +1 -1
  19. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/GET.d.ts +1 -1
  20. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/GET.d.ts.map +1 -1
  21. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/index.stream.d.ts +1 -1
  22. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/index.stream.d.ts.map +1 -1
  23. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/index.d.ts +1 -1
  24. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/index.d.ts.map +1 -1
  25. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/index.js +1 -1
  26. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/index.js.map +1 -1
  27. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/GET.d.ts +23 -3
  28. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/GET.d.ts.map +1 -1
  29. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/GET.js +36 -3
  30. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/GET.js.map +1 -1
  31. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/GET.d.ts +1 -1
  32. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/GET.d.ts.map +1 -1
  33. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.clock.GET.d.ts +1 -1
  34. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.clock.GET.d.ts.map +1 -1
  35. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.profile.GET.d.ts +1 -1
  36. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.profile.GET.d.ts.map +1 -1
  37. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-cards.GET.d.ts +1 -1
  38. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-cards.GET.d.ts.map +1 -1
  39. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-data.GET.d.ts +1 -1
  40. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-data.GET.d.ts.map +1 -1
  41. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-elements.GET.d.ts +1 -1
  42. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-elements.GET.d.ts.map +1 -1
  43. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-forms.GET.d.ts +1 -1
  44. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-forms.GET.d.ts.map +1 -1
  45. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-interactive.GET.d.ts +1 -1
  46. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-interactive.GET.d.ts.map +1 -1
  47. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-overlays.GET.d.ts +1 -1
  48. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-overlays.GET.d.ts.map +1 -1
  49. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-patterns.GET.d.ts +1 -1
  50. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-patterns.GET.d.ts.map +1 -1
  51. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.embedded/GET.d.ts +1 -1
  52. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.embedded/GET.d.ts.map +1 -1
  53. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/index.d.ts +1 -1
  54. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/index.d.ts.map +1 -1
  55. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/index.js +1 -1
  56. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/index.js.map +1 -1
  57. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/GET.d.ts +49 -3
  58. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/GET.d.ts.map +1 -1
  59. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/GET.js +93 -3
  60. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/GET.js.map +1 -1
  61. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/_renderer.bootstrap5/GET.d.ts +1 -1
  62. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/_renderer.bootstrap5/GET.d.ts.map +1 -1
  63. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/index.d.ts +1 -1
  64. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/index.d.ts.map +1 -1
  65. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/index.js +1 -1
  66. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/index.js.map +1 -1
  67. package/lib/schemas/service-betterportal-hello-view.json +1 -1
  68. package/lib/schemas/service-betterportal-hello-view.plugin.json +1 -1
  69. package/package.json +5 -5
  70. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/route.impl.d.ts +0 -38
  71. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/route.impl.d.ts.map +0 -1
  72. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/route.impl.js +0 -72
  73. package/lib/plugins/service-betterportal-hello-view/bp-routes/about/route.impl.js.map +0 -1
  74. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/route.impl.d.ts +0 -34
  75. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/route.impl.d.ts.map +0 -1
  76. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/route.impl.js +0 -50
  77. package/lib/plugins/service-betterportal-hello-view/bp-routes/delayed/route.impl.js.map +0 -1
  78. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/route.impl.d.ts +0 -23
  79. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/route.impl.d.ts.map +0 -1
  80. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/route.impl.js +0 -37
  81. package/lib/plugins/service-betterportal-hello-view/bp-routes/hello/route.impl.js.map +0 -1
  82. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/route.impl.d.ts +0 -49
  83. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/route.impl.d.ts.map +0 -1
  84. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/route.impl.js +0 -94
  85. package/lib/plugins/service-betterportal-hello-view/bp-routes/landing/route.impl.js.map +0 -1
@@ -4,7 +4,7 @@
4
4
  "pluginId": "org.betterportal.hello-view",
5
5
  "title": "BetterPortal Hello View Example",
6
6
  "description": "Example business service showing API-first view negotiation.",
7
- "version": "10.1.64",
7
+ "version": "10.1.65",
8
8
  "category": "service",
9
9
  "deploymentModes": [
10
10
  "self-hosted"
@@ -443,8 +443,30 @@
443
443
  "definitions": {},
444
444
  "extensions": {}
445
445
  },
446
- "headersSchema": {},
447
- "bodySchema": {},
446
+ "headersSchema": {
447
+ "anyvaliVersion": "1.0",
448
+ "schemaVersion": "1.1",
449
+ "root": {
450
+ "kind": "object",
451
+ "properties": {},
452
+ "required": [],
453
+ "unknownKeys": "strip"
454
+ },
455
+ "definitions": {},
456
+ "extensions": {}
457
+ },
458
+ "bodySchema": {
459
+ "anyvaliVersion": "1.0",
460
+ "schemaVersion": "1.1",
461
+ "root": {
462
+ "kind": "object",
463
+ "properties": {},
464
+ "required": [],
465
+ "unknownKeys": "strip"
466
+ },
467
+ "definitions": {},
468
+ "extensions": {}
469
+ },
448
470
  "jsonResponseSchema": {
449
471
  "anyvaliVersion": "1.0",
450
472
  "schemaVersion": "1.1",
@@ -930,6 +952,8 @@
930
952
  {
931
953
  "fragmentLocation": "nav",
932
954
  "fragmentId": "clock",
955
+ "operationId": "hello.view",
956
+ "method": "GET",
933
957
  "renderers": [
934
958
  "bootstrap5"
935
959
  ]
@@ -937,6 +961,8 @@
937
961
  {
938
962
  "fragmentLocation": "nav",
939
963
  "fragmentId": "profile",
964
+ "operationId": "hello.view",
965
+ "method": "GET",
940
966
  "renderers": [
941
967
  "bootstrap5"
942
968
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-hello-view/.bp-generated/registry.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,eAAO,MAAM,QAAQ,EAAE,oBAsGtB,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-hello-view/.bp-generated/registry.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,eAAO,MAAM,QAAQ,EAAE,oBAwGtB,CAAC"}
@@ -81,7 +81,9 @@ export const registry = {
81
81
  schemas: {},
82
82
  methodRoutes: { GET: { method: "GET", operationId: helloGETRoute.operationId, title: helloGETRoute.title, description: helloGETRoute.description, schemas: {
83
83
  response: helloGETRoute.ResponseSchema,
84
- query: helloGETRoute.QuerySchema
84
+ query: helloGETRoute.QuerySchema,
85
+ headers: helloGETRoute.HeadersSchema,
86
+ request: helloGETRoute.RequestSchema
85
87
  }, handler: helloGETRoute.default, auth: helloGETRoute.auth, cacheHints: helloGETRoute.cacheHints, demoScenarios: helloGETRoute.demoScenarios } },
86
88
  handlers: { GET: helloGETRoute.default },
87
89
  title: helloRoute.title,
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-hello-view/.bp-generated/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-hello-view/.bp-generated/registry.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,40 @@
1
1
  export declare const operationId = "about.view";
2
- export { title, description, auth, cacheHints } from "./route.impl.js";
3
- export { ResponseSchema, QuerySchema, HeadersSchema, RequestSchema } from "./route.impl.js";
4
- export { handleGet as default } from "./route.impl.js";
2
+ import * as av from "anyvali";
3
+ import type { Infer } from "anyvali";
4
+ import { type ApiAuthRequirement, type CacheHints } from "@betterportal/framework";
5
+ export declare const QuerySchema: av.ObjectSchema<{}>;
6
+ export declare const HeadersSchema: av.ObjectSchema<{}>;
7
+ export declare const RequestSchema: av.ObjectSchema<{}>;
8
+ export declare const ResponseSchema: av.ObjectSchema<{
9
+ title: av.StringSchema;
10
+ intro: av.StringSchema;
11
+ sections: av.ArraySchema<av.ObjectSchema<{
12
+ title: av.StringSchema;
13
+ text: av.StringSchema;
14
+ }>>;
15
+ principles: av.ArraySchema<av.ObjectSchema<{
16
+ title: av.StringSchema;
17
+ text: av.StringSchema;
18
+ }>>;
19
+ landingHref: av.StringSchema;
20
+ }>;
21
+ export type ResponseData = Infer<typeof ResponseSchema>;
22
+ export declare const title = "About BetterPortal";
23
+ export declare const description = "Overview of BetterPortal architecture and design principles.";
24
+ export declare const auth: ApiAuthRequirement;
25
+ export declare const cacheHints: CacheHints;
26
+ declare const _default: import("@betterportal/framework").RouteHandler<Record<string, string>, {}, {}, {}, {
27
+ title: string;
28
+ intro: string;
29
+ sections: {
30
+ title: string;
31
+ text: string;
32
+ }[];
33
+ principles: {
34
+ title: string;
35
+ text: string;
36
+ }[];
37
+ landingHref: string;
38
+ }, unknown, Record<string, unknown>>;
39
+ export default _default;
5
40
  //# sourceMappingURL=GET.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAEjC,eAAO,MAAM,WAAW,qBAAgB,CAAC;AACzC,eAAO,MAAM,aAAa,qBAAgB,CAAC;AAC3C,eAAO,MAAM,aAAa,qBAAgB,CAAC;AAY3C,eAAO,MAAM,cAAc;;;;;;;;;;;;EAMzB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD,eAAO,MAAM,KAAK,uBAAuB,CAAC;AAC1C,eAAO,MAAM,WAAW,iEAAiE,CAAC;AAE1F,eAAO,MAAM,IAAI,EAAE,kBAGlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAGxB,CAAC;;;;;;;;;;;;;;AAEF,wBA2CE"}
@@ -1,5 +1,73 @@
1
1
  export const operationId = "about.view";
2
- export { title, description, auth, cacheHints } from "./route.impl.js";
3
- export { ResponseSchema, QuerySchema, HeadersSchema, RequestSchema } from "./route.impl.js";
4
- export { handleGet as default } from "./route.impl.js";
2
+ import * as av from "anyvali";
3
+ import { createHandler } from "@betterportal/framework";
4
+ export const QuerySchema = av.object({});
5
+ export const HeadersSchema = av.object({});
6
+ export const RequestSchema = av.object({});
7
+ const SectionSchema = av.object({
8
+ title: av.string().minLength(1),
9
+ text: av.string().minLength(1)
10
+ });
11
+ const PrincipleSchema = av.object({
12
+ title: av.string().minLength(1),
13
+ text: av.string().minLength(1)
14
+ });
15
+ export const ResponseSchema = av.object({
16
+ title: av.string().minLength(1),
17
+ intro: av.string().minLength(1),
18
+ sections: av.array(SectionSchema),
19
+ principles: av.array(PrincipleSchema),
20
+ landingHref: av.string().minLength(1)
21
+ });
22
+ export const title = "About BetterPortal";
23
+ export const description = "Overview of BetterPortal architecture and design principles.";
24
+ export const auth = {
25
+ required: false,
26
+ permissions: []
27
+ };
28
+ export const cacheHints = {
29
+ ttlSeconds: 300,
30
+ varyBy: ["accept", "origin", "referer", ":origin", ":referer"]
31
+ };
32
+ export default createHandler({ response: ResponseSchema, query: QuerySchema, headers: HeadersSchema, request: RequestSchema }, () => ({
33
+ title: "About BetterPortal",
34
+ intro: "BetterPortal is a framework for building tenant-aware portals from independently deployed services. The platform gives services a shared contract without forcing them into a shared process.",
35
+ sections: [
36
+ {
37
+ title: "Control plane",
38
+ text: "The config manager owns platform state, service activation, app routes, shared service bindings, and scoped configuration. Services pull what they need and apply it locally."
39
+ },
40
+ {
41
+ title: "Runtime services",
42
+ text: "A service can expose APIs, views, fragments, streaming endpoints, raw file responses, and service metadata. The same route remains useful to browsers, integrations, and agents."
43
+ },
44
+ {
45
+ title: "Themes",
46
+ text: "Themes render the shell and negotiate content from services. They keep navigation, declared theme fragments, fragment blocks, and chrome behavior outside business services."
47
+ },
48
+ {
49
+ title: "Auth",
50
+ text: "Auth providers plug into the same service model. Apps choose an auth service, while service routes keep their own explicit auth and permission requirements."
51
+ }
52
+ ],
53
+ principles: [
54
+ {
55
+ title: "Typed boundaries",
56
+ text: "Inputs, outputs, scoped config, and metadata are declared as schemas so runtime behavior stays observable and predictable."
57
+ },
58
+ {
59
+ title: "No hidden platform reach",
60
+ text: "Browser-driven setup and pull-based sync avoid assuming the config manager can directly reach every deployed service."
61
+ },
62
+ {
63
+ title: "Local ownership",
64
+ text: "Services own their route behavior and view renderers. The platform decides which routes are mounted for each app."
65
+ },
66
+ {
67
+ title: "Composable operations",
68
+ text: "The same discovery surface supports users, admins, automation systems, and AI agents without separate bespoke integration layers."
69
+ }
70
+ ],
71
+ landingHref: "/landing"
72
+ }));
5
73
  //# sourceMappingURL=GET.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/GET.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/GET.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import type { HtmlRenderable } from "@betterportal/framework";
2
- import type { ResponseData } from "../route.impl.js";
2
+ import type { ResponseData } from "../GET.js";
3
3
  export declare function render(data: ResponseData): HtmlRenderable;
4
4
  //# sourceMappingURL=GET.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AA8BrD,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CAmFzD"}
1
+ {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AA8B9C,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CAmFzD"}
@@ -1,2 +1,2 @@
1
- export { title, description } from "./route.impl.js";
1
+ export { title, description } from "./GET.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -1,2 +1,2 @@
1
- export { title, description } from "./route.impl.js";
1
+ export { title, description } from "./GET.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/about/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -1,5 +1,36 @@
1
1
  export declare const operationId = "delayed.stream";
2
- export { title, description, auth, cacheHints } from "./route.impl.js";
3
- export { QuerySchema, ItemSchema, SummarySchema } from "./route.impl.js";
4
- export { handleGet as default } from "./route.impl.js";
2
+ import * as av from "anyvali";
3
+ import type { Infer } from "anyvali";
4
+ import { type ApiAuthRequirement, type CacheHints } from "@betterportal/framework";
5
+ export declare const QuerySchema: av.ObjectSchema<{
6
+ count: av.StringSchema;
7
+ delayMs: av.StringSchema;
8
+ }>;
9
+ export declare const ItemSchema: av.ObjectSchema<{
10
+ id: av.StringSchema;
11
+ label: av.StringSchema;
12
+ elapsedMs: av.IntSchema;
13
+ }>;
14
+ export type DelayedItem = Infer<typeof ItemSchema>;
15
+ export declare const SummarySchema: av.ObjectSchema<{
16
+ total: av.IntSchema;
17
+ totalMs: av.IntSchema;
18
+ }>;
19
+ export type DelayedSummary = Infer<typeof SummarySchema>;
20
+ export declare const title = "Delayed Stream";
21
+ export declare const description = "Example streaming view: items arrive one by one as a slow data source produces them. JSON buffers, NDJSON streams frames, HTML streams rendered rows over SSE.";
22
+ export declare const auth: ApiAuthRequirement;
23
+ export declare const cacheHints: CacheHints;
24
+ declare const _default: import("@betterportal/framework").BpStreamHandler<{
25
+ id: string;
26
+ label: string;
27
+ elapsedMs: number;
28
+ }, {
29
+ total: number;
30
+ totalMs: number;
31
+ }, Record<string, string>, {
32
+ count: string;
33
+ delayMs: string;
34
+ }, Record<string, string>>;
35
+ export default _default;
5
36
  //# sourceMappingURL=GET.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,mBAAmB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,mBAAmB,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAIjC,eAAO,MAAM,WAAW;;;EAGtB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;EAIrB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnD,eAAO,MAAM,aAAa;;;EAGxB,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAIzD,eAAO,MAAM,KAAK,mBAAmB,CAAC;AACtC,eAAO,MAAM,WAAW,mKAAmK,CAAC;AAE5L,eAAO,MAAM,IAAI,EAAE,kBAGlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAGxB,CAAC;;;;;;;;;;;;AAYF,wBAkBE"}
@@ -1,5 +1,51 @@
1
1
  export const operationId = "delayed.stream";
2
- export { title, description, auth, cacheHints } from "./route.impl.js";
3
- export { QuerySchema, ItemSchema, SummarySchema } from "./route.impl.js";
4
- export { handleGet as default } from "./route.impl.js";
2
+ import * as av from "anyvali";
3
+ import { createStreamHandler } from "@betterportal/framework";
4
+ // -- Schemas (spec/streaming.md - item is the canonical contract) ----
5
+ export const QuerySchema = av.object({
6
+ count: av.string().default("5"),
7
+ delayMs: av.string().default("400")
8
+ });
9
+ export const ItemSchema = av.object({
10
+ id: av.string().minLength(1),
11
+ label: av.string().minLength(1),
12
+ elapsedMs: av.int().min(0)
13
+ });
14
+ export const SummarySchema = av.object({
15
+ total: av.int().min(0),
16
+ totalMs: av.int().min(0)
17
+ });
18
+ // -- Metadata --------------------------------------------------------
19
+ export const title = "Delayed Stream";
20
+ export const description = "Example streaming view: items arrive one by one as a slow data source produces them. JSON buffers, NDJSON streams frames, HTML streams rendered rows over SSE.";
21
+ export const auth = {
22
+ required: false,
23
+ permissions: []
24
+ };
25
+ export const cacheHints = {
26
+ ttlSeconds: 0,
27
+ varyBy: ["accept", "origin"]
28
+ };
29
+ // -- Handler - async generator; the framework drives representation --
30
+ function clampInt(raw, min, max, fallback) {
31
+ const parsed = Number.parseInt(raw, 10);
32
+ if (!Number.isFinite(parsed))
33
+ return fallback;
34
+ return Math.min(max, Math.max(min, parsed));
35
+ }
36
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
37
+ export default createStreamHandler({ item: ItemSchema, summary: SummarySchema, query: QuerySchema }, async function* (ctx) {
38
+ const count = clampInt(ctx.query.count, 1, 25, 5);
39
+ const delayMs = clampInt(ctx.query.delayMs, 0, 2000, 400);
40
+ const startedAt = Date.now();
41
+ for (let i = 1; i <= count; i++) {
42
+ await sleep(delayMs);
43
+ yield {
44
+ id: `item-${i}`,
45
+ label: `Slow record #${i} of ${count}`,
46
+ elapsedMs: Date.now() - startedAt
47
+ };
48
+ }
49
+ return { total: count, totalMs: Date.now() - startedAt };
50
+ });
5
51
  //# sourceMappingURL=GET.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/GET.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/GET.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /** @jsxImportSource jsx-htmx */
2
2
  import type { HtmlRenderable } from "@betterportal/framework";
3
- import type { DelayedItem, DelayedSummary } from "../route.impl.js";
3
+ import type { DelayedItem, DelayedSummary } from "../GET.js";
4
4
  /**
5
5
  * Buffered full-page render (spec/streaming.md section 4.2): the framework runs the
6
6
  * stream to completion and hands the derived { items, summary } shape here.
@@ -1 +1 @@
1
- {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGpE;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,cAAc,CAAA;CAAE,GAAG,cAAc,CAW/F"}
1
+ {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG7D;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,cAAc,CAAA;CAAE,GAAG,cAAc,CAW/F"}
@@ -1,6 +1,6 @@
1
1
  /** @jsxImportSource jsx-htmx */
2
2
  import type { HtmlRenderable, StreamErrorFrame, StreamShellContext } from "@betterportal/framework";
3
- import type { DelayedItem, DelayedSummary } from "../route.impl.js";
3
+ import type { DelayedItem, DelayedSummary } from "../GET.js";
4
4
  /**
5
5
  * Streaming renderers (spec/streaming.md section 4). The shell returns instantly with
6
6
  * SSE wiring; each frame is rendered server-side and swapped in as it arrives.
@@ -1 +1 @@
1
- {"version":3,"file":"index.stream.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/index.stream.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACpG,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEpE;;;GAGG;AAEH,wBAAgB,WAAW,CAAC,GAAG,EAAE,kBAAkB,GAAG,cAAc,CAmBnE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,cAAc,CAO5D;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAMrE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,cAAc,CAMnE"}
1
+ {"version":3,"file":"index.stream.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/_renderer.bootstrap5/index.stream.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACpG,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE7D;;;GAGG;AAEH,wBAAgB,WAAW,CAAC,GAAG,EAAE,kBAAkB,GAAG,cAAc,CAmBnE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,cAAc,CAO5D;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAMrE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,cAAc,CAMnE"}
@@ -1,2 +1,2 @@
1
- export { title, description } from "./route.impl.js";
1
+ export { title, description } from "./GET.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -1,2 +1,2 @@
1
- export { title, description } from "./route.impl.js";
1
+ export { title, description } from "./GET.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/delayed/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -1,5 +1,25 @@
1
1
  export declare const operationId = "hello.view";
2
- export { title, description, auth, cacheHints, demoScenarios } from "./route.impl.js";
3
- export { ResponseSchema, QuerySchema } from "./route.impl.js";
4
- export { handleGet as default } from "./route.impl.js";
2
+ import * as av from "anyvali";
3
+ import type { Infer } from "anyvali";
4
+ import { type DemoScenario, type ApiAuthRequirement, type CacheHints } from "@betterportal/framework";
5
+ export declare const QuerySchema: av.ObjectSchema<{
6
+ name: av.StringSchema;
7
+ }>;
8
+ export declare const HeadersSchema: av.ObjectSchema<{}>;
9
+ export declare const RequestSchema: av.ObjectSchema<{}>;
10
+ export declare const ResponseSchema: av.ObjectSchema<{
11
+ greeting: av.StringSchema;
12
+ }>;
13
+ export type ResponseData = Infer<typeof ResponseSchema>;
14
+ export declare const title = "Hello View";
15
+ export declare const description = "Example BetterPortal view with JSON, HTML, and metadata representations.";
16
+ export declare const auth: ApiAuthRequirement;
17
+ export declare const cacheHints: CacheHints;
18
+ export declare const demoScenarios: DemoScenario<ResponseData>[];
19
+ declare const _default: import("@betterportal/framework").RouteHandler<Record<string, string>, {
20
+ name: string;
21
+ }, Record<string, string>, Record<string, unknown>, {
22
+ greeting: string;
23
+ }, unknown, Record<string, unknown>>;
24
+ export default _default;
5
25
  //# sourceMappingURL=GET.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/GET.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAIjC,eAAO,MAAM,WAAW;;EAEtB,CAAC;AAEH,eAAO,MAAM,aAAa,qBAAgB,CAAC;AAE3C,eAAO,MAAM,aAAa,qBAAgB,CAAC;AAE3C,eAAO,MAAM,cAAc;;EAEzB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAIxD,eAAO,MAAM,KAAK,eAAe,CAAC;AAClC,eAAO,MAAM,WAAW,6EAA6E,CAAC;AAEtG,eAAO,MAAM,IAAI,EAAE,kBAGlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAGxB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,EASrD,CAAC;;;;;;AAIF,wBAKE"}
@@ -1,5 +1,38 @@
1
1
  export const operationId = "hello.view";
2
- export { title, description, auth, cacheHints, demoScenarios } from "./route.impl.js";
3
- export { ResponseSchema, QuerySchema } from "./route.impl.js";
4
- export { handleGet as default } from "./route.impl.js";
2
+ import * as av from "anyvali";
3
+ import { createHandler } from "@betterportal/framework";
4
+ // -- Schemas ---------------------------------------------------------
5
+ export const QuerySchema = av.object({
6
+ name: av.string().minLength(1).default("World")
7
+ });
8
+ export const HeadersSchema = av.object({});
9
+ export const RequestSchema = av.object({});
10
+ export const ResponseSchema = av.object({
11
+ greeting: av.string().minLength(1)
12
+ });
13
+ // -- Metadata --------------------------------------------------------
14
+ export const title = "Hello View";
15
+ export const description = "Example BetterPortal view with JSON, HTML, and metadata representations.";
16
+ export const auth = {
17
+ required: false,
18
+ permissions: []
19
+ };
20
+ export const cacheHints = {
21
+ ttlSeconds: 60,
22
+ varyBy: ["accept", "origin", "referer", ":origin", ":referer"]
23
+ };
24
+ export const demoScenarios = [
25
+ {
26
+ id: "default",
27
+ title: "Default Greeting",
28
+ match: { query: { name: "World" } },
29
+ response: {
30
+ greeting: "Hello, Demo User"
31
+ }
32
+ }
33
+ ];
34
+ // -- Handler ---------------------------------------------------------
35
+ export default createHandler({ response: ResponseSchema, query: QuerySchema }, (ctx) => ({
36
+ greeting: `Hello, ${ctx.query.name}`
37
+ }));
5
38
  //# sourceMappingURL=GET.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/GET.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/GET.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,aAAa,EAId,MAAM,yBAAyB,CAAC;AAEjC,uEAAuE;AAEvE,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;CAChD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC;IACtC,QAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;CACnC,CAAC,CAAC;AAGH,uEAAuE;AAEvE,MAAM,CAAC,MAAM,KAAK,GAAG,YAAY,CAAC;AAClC,MAAM,CAAC,MAAM,WAAW,GAAG,0EAA0E,CAAC;AAEtG,MAAM,CAAC,MAAM,IAAI,GAAuB;IACtC,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAe;IACpC,UAAU,EAAE,EAAE;IACd,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC;CAC/D,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAiC;IACzD;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,kBAAkB;QACzB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACnC,QAAQ,EAAE;YACR,QAAQ,EAAE,kBAAkB;SAC7B;KACF;CACF,CAAC;AAEF,uEAAuE;AAEvE,eAAe,aAAa,CAC1B,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,EAChD,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACR,QAAQ,EAAE,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;CACrC,CAAC,CACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /** @jsxImportSource jsx-htmx */
2
2
  import type { HtmlRenderable } from "@betterportal/framework";
3
- import type { ResponseData } from "../route.impl.js";
3
+ import type { ResponseData } from "../GET.js";
4
4
  export declare function render(data: ResponseData): HtmlRenderable;
5
5
  //# sourceMappingURL=GET.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAkBrD,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CAyGzD"}
1
+ {"version":3,"file":"GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAkB9C,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CAyGzD"}
@@ -1,5 +1,5 @@
1
1
  /** @jsxImportSource jsx-htmx */
2
2
  import type { HtmlRenderable } from "@betterportal/framework";
3
- import type { ResponseData } from "../route.impl.js";
3
+ import type { ResponseData } from "../GET.js";
4
4
  export declare function render(_data: ResponseData): HtmlRenderable;
5
5
  //# sourceMappingURL=_nav.clock.GET.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_nav.clock.GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.clock.GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,wBAAgB,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,CAW1D"}
1
+ {"version":3,"file":"_nav.clock.GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.clock.GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,wBAAgB,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,CAW1D"}
@@ -1,5 +1,5 @@
1
1
  /** @jsxImportSource jsx-htmx */
2
2
  import type { HtmlRenderable } from "@betterportal/framework";
3
- import type { ResponseData } from "../route.impl.js";
3
+ import type { ResponseData } from "../GET.js";
4
4
  export declare function render(data: ResponseData): HtmlRenderable;
5
5
  //# sourceMappingURL=_nav.profile.GET.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_nav.profile.GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.profile.GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAYrD,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CA+BzD"}
1
+ {"version":3,"file":"_nav.profile.GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/_nav.profile.GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAY9C,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CA+BzD"}
@@ -1,5 +1,5 @@
1
1
  /** @jsxImportSource jsx-htmx */
2
2
  import type { HtmlRenderable } from "@betterportal/framework";
3
- import type { ResponseData } from "../route.impl.js";
3
+ import type { ResponseData } from "../GET.js";
4
4
  export declare function render(data: ResponseData): HtmlRenderable;
5
5
  //# sourceMappingURL=showcase-cards.GET.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"showcase-cards.GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-cards.GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CA6GzD"}
1
+ {"version":3,"file":"showcase-cards.GET.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-hello-view/bp-routes/hello/_renderer.bootstrap5/showcase-cards.GET.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAM9C,wBAAgB,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CA6GzD"}
@@ -1,5 +1,5 @@
1
1
  /** @jsxImportSource jsx-htmx */
2
2
  import type { HtmlRenderable, ViewRenderContext } from "@betterportal/framework";
3
- import type { ResponseData } from "../route.impl.js";
3
+ import type { ResponseData } from "../GET.js";
4
4
  export declare function render(data: ResponseData, ctx?: ViewRenderContext): HtmlRenderable;
5
5
  //# sourceMappingURL=showcase-data.GET.d.ts.map