@betterportal/framework 10.1.32 → 10.1.34

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 (76) hide show
  1. package/lib/adapters/h3.d.ts +4 -4
  2. package/lib/adapters/h3.d.ts.map +1 -1
  3. package/lib/adapters/h3.js +67 -4
  4. package/lib/adapters/h3.js.map +1 -1
  5. package/lib/cli/bp.d.ts +3 -0
  6. package/lib/cli/bp.d.ts.map +1 -0
  7. package/lib/cli/bp.js +73 -0
  8. package/lib/cli/bp.js.map +1 -0
  9. package/lib/cli/client.d.ts +12 -0
  10. package/lib/cli/client.d.ts.map +1 -0
  11. package/lib/cli/client.js +327 -0
  12. package/lib/cli/client.js.map +1 -0
  13. package/lib/cli/contract.d.ts +6 -0
  14. package/lib/cli/contract.d.ts.map +1 -0
  15. package/lib/cli/contract.js +47 -0
  16. package/lib/cli/contract.js.map +1 -0
  17. package/lib/cli/project.d.ts +36 -0
  18. package/lib/cli/project.d.ts.map +1 -0
  19. package/lib/cli/project.js +69 -0
  20. package/lib/cli/project.js.map +1 -0
  21. package/lib/cli/publish.d.ts +2 -0
  22. package/lib/cli/publish.d.ts.map +1 -0
  23. package/lib/cli/publish.js +47 -0
  24. package/lib/cli/publish.js.map +1 -0
  25. package/lib/codegen/init.js +37 -7
  26. package/lib/codegen/init.js.map +1 -1
  27. package/lib/contracts/common.d.ts +2 -0
  28. package/lib/contracts/common.d.ts.map +1 -1
  29. package/lib/contracts/common.js +2 -1
  30. package/lib/contracts/common.js.map +1 -1
  31. package/lib/contracts/controlPlane.d.ts +26 -1
  32. package/lib/contracts/controlPlane.d.ts.map +1 -1
  33. package/lib/contracts/m2m.d.ts +15 -0
  34. package/lib/contracts/m2m.d.ts.map +1 -1
  35. package/lib/contracts/m2m.js +15 -0
  36. package/lib/contracts/m2m.js.map +1 -1
  37. package/lib/contracts/manifest.d.ts +231 -0
  38. package/lib/contracts/manifest.d.ts.map +1 -1
  39. package/lib/contracts/manifest.js +32 -3
  40. package/lib/contracts/manifest.js.map +1 -1
  41. package/lib/contracts/platformConfig.d.ts +2 -0
  42. package/lib/contracts/platformConfig.d.ts.map +1 -1
  43. package/lib/contracts/platformConfig.js +1 -0
  44. package/lib/contracts/platformConfig.js.map +1 -1
  45. package/lib/contracts/route.d.ts +14 -1
  46. package/lib/contracts/route.d.ts.map +1 -1
  47. package/lib/contracts/route.js +7 -2
  48. package/lib/contracts/route.js.map +1 -1
  49. package/lib/index.d.ts +3 -0
  50. package/lib/index.d.ts.map +1 -1
  51. package/lib/index.js +3 -0
  52. package/lib/index.js.map +1 -1
  53. package/lib/runtime/auth/keypair.d.ts +1 -0
  54. package/lib/runtime/auth/keypair.d.ts.map +1 -1
  55. package/lib/runtime/auth/keypair.js +14 -5
  56. package/lib/runtime/auth/keypair.js.map +1 -1
  57. package/lib/runtime/auth/serviceToken.d.ts +34 -0
  58. package/lib/runtime/auth/serviceToken.d.ts.map +1 -0
  59. package/lib/runtime/auth/serviceToken.js +128 -0
  60. package/lib/runtime/auth/serviceToken.js.map +1 -0
  61. package/lib/runtime/contract.d.ts +4 -0
  62. package/lib/runtime/contract.d.ts.map +1 -0
  63. package/lib/runtime/contract.js +15 -0
  64. package/lib/runtime/contract.js.map +1 -0
  65. package/lib/runtime/llms.d.ts +39 -0
  66. package/lib/runtime/llms.d.ts.map +1 -0
  67. package/lib/runtime/llms.js +174 -0
  68. package/lib/runtime/llms.js.map +1 -0
  69. package/lib/runtime/manifest.d.ts.map +1 -1
  70. package/lib/runtime/manifest.js +3 -1
  71. package/lib/runtime/manifest.js.map +1 -1
  72. package/lib/runtime/registry.d.ts +2 -18
  73. package/lib/runtime/registry.d.ts.map +1 -1
  74. package/lib/runtime/registry.js +5 -2
  75. package/lib/runtime/registry.js.map +1 -1
  76. package/package.json +2 -1
@@ -242,6 +242,7 @@ export const ServiceManifestCacheEntrySchema = av.object({
242
242
  authProvider: av.optional(AuthProviderRuntimeMetadataSchema),
243
243
  m2mRequests: av.array(av.any()).default([]),
244
244
  apiContracts: av.array(av.any()).default([]),
245
+ developerResources: av.array(av.any()).default([]),
245
246
  viewIndex: av.record(av.object({
246
247
  viewId: NonEmptyStringSchema,
247
248
  path: NonEmptyStringSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"platformConfig.js","sourceRoot":"","sources":["../../src/contracts/platformConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platformConfig.js","sourceRoot":"","sources":["../../src/contracts/platformConfig.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import * as av from "anyvali";
2
2
  import type { Infer } from "anyvali";
3
- import type { HttpMethod } from "./common.js";
3
+ import { type HttpMethod } from "./common.js";
4
4
  import type { JsonValue } from "./json.js";
5
5
  import type { BetterPortalObservability } from "./observability.js";
6
6
  import type { BetterPortalApp, BetterPortalTenant } from "./platformConfig.js";
7
7
  import { type JwtClaims } from "./auth.js";
8
+ import type { ServiceTokenClaims } from "./m2m.js";
8
9
  /**
9
10
  * Route-level (API-layer) auth requirement. Replaces ViewAuthRequirement at the API tier.
10
11
  * Routes declare this to opt into framework-enforced authentication and authorization.
@@ -29,11 +30,21 @@ export interface JwtVerifier {
29
30
  appId: string;
30
31
  }): Promise<JwtClaims>;
31
32
  }
33
+ export interface ServiceTokenVerifier {
34
+ verify(token: string, context: {
35
+ tenantId: string;
36
+ appId: string;
37
+ viewId: string;
38
+ method: HttpMethod;
39
+ requiredPermissions: ReadonlyArray<string>;
40
+ }): Promise<ServiceTokenClaims>;
41
+ }
32
42
  /**
33
43
  * Validated user claims attached to the handler context when auth succeeds.
34
44
  * Either fully populated or `undefined` - never partial.
35
45
  */
36
46
  export type ValidatedUserClaims = JwtClaims;
47
+ export type ValidatedServiceClaims = ServiceTokenClaims;
37
48
  /**
38
49
  * BP-managed header API on the handler context. Headers set here are emitted as
39
50
  * BP-SetHeader / BP-RemoveHeader response headers and stored by the client BP shim.
@@ -106,6 +117,8 @@ export interface RouteHandlerContext<TParams = Record<string, string>, TQuery =
106
117
  readonly obs?: BetterPortalObservability;
107
118
  /** Validated user claims when auth resolver succeeds. `undefined` for anonymous or invalid token. */
108
119
  readonly user?: ValidatedUserClaims;
120
+ /** Validated installed-service caller. Never populated from a user JWT. */
121
+ readonly serviceCaller?: ValidatedServiceClaims;
109
122
  /** Resolved tenant for this request. Handlers are not invoked without it. */
110
123
  readonly tenant: BetterPortalTenant;
111
124
  /** Resolved app for this request. Handlers are not invoked without it. */
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/contracts/route.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/contracts/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAiC,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnD;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;;EAOT,CAAC;AAC7B,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAExE;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;CACzF;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAC7B,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,UAAU,CAAC;QACnB,mBAAmB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;KAC5C,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAC5C,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,CAAC;AAExD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACrE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,wDAAwD;IACxD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,8FAA8F;IAC9F,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,0FAA0F;IAC1F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gGAAgG;IAChG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE9C,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC;IACtC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,eAAe;IAC9B,gGAAgG;IAChG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IACrE,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB,CAClC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,OAAO,GAAG,OAAO,EACjB,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAExC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,yBAAyB,CAAC;IACzC,qGAAqG;IACrG,QAAQ,CAAC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IACpC,2EAA2E;IAC3E,QAAQ,CAAC,aAAa,CAAC,EAAE,sBAAsB,CAAC;IAChD,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,0EAA0E;IAC1E,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;IAC9B,8FAA8F;IAC9F,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACjC,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,uFAAuF;IACvF,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC;IAClC,gFAAgF;IAChF,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC,uDAAuD;IACvD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,oFAAoF;IACpF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,KAAK,MAAM,GAAG,IAAI,CAAC;IACjF;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,KAAK,MAAM,GAAG,IAAI,CAAC;IACnF,mEAAmE;IACnE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxG,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,YAAY,KAAK,QAAQ,CAAC;IAC7E,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,mBAAmB,KAAK,QAAQ,CAAC;CACnF;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,CACtB,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,SAAS,GAAG,OAAO,EACnB,OAAO,GAAG,OAAO,EACjB,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACtC,CAAC,GAAG,EAAE,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAE/H,MAAM,MAAM,eAAe,CACzB,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,OAAO,GAAG,OAAO,EACjB,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACtC,CAAC,CAAC,GAAG,EAAE,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG;IAC/H,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC;CAC/B,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C;AAID,eAAO,MAAM,uBAAuB;;;;;EAKR,CAAC;AAE7B;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,SAAS,GAAG,OAAO;IAC/C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;EAMH,CAAC;AAC7B,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAIpE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,GAAG,CAAC,EAAE,yBAAyB,CAAC;CAC1C;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAClB,CAAC,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,GAC1D,CAAC,CAAC,GAAG,EAAE,iBAAiB,KAAK,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import * as av from "anyvali";
2
- import { AppAuthPermissionGrantSchema } from "./auth.js";
2
+ import { PluginIdSchema } from "./common.js";
3
+ import { AppAuthPermissionActionSchema } from "./auth.js";
3
4
  /**
4
5
  * Route-level (API-layer) auth requirement. Replaces ViewAuthRequirement at the API tier.
5
6
  * Routes declare this to opt into framework-enforced authentication and authorization.
@@ -7,7 +8,11 @@ import { AppAuthPermissionGrantSchema } from "./auth.js";
7
8
  */
8
9
  export const ApiAuthRequirementSchema = av.object({
9
10
  required: av.bool().default(false),
10
- permissions: av.array(AppAuthPermissionGrantSchema).default([])
11
+ permissions: av.array(av.object({
12
+ serviceId: PluginIdSchema,
13
+ viewId: av.string().minLength(1),
14
+ permissions: av.array(AppAuthPermissionActionSchema).minItems(1)
15
+ }, { unknownKeys: "strip" })).default([])
11
16
  }, { unknownKeys: "strip" });
12
17
  const NonEmptyStringSchema = av.string().minLength(1);
13
18
  export const DemoScenarioMatchSchema = av.object({
@@ -1 +1 @@
1
- {"version":3,"file":"route.js","sourceRoot":"","sources":["../../src/contracts/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAM9B,OAAO,EAAE,4BAA4B,EAAkB,MAAM,WAAW,CAAC;AAEzE;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC,MAAM,CAAC;IAChD,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClC,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAChE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;AA8K7B,MAAM,oBAAoB,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACvC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACxC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;CAC1C,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;AAc7B,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,oBAAoB;IACxB,KAAK,EAAE,oBAAoB;IAC3B,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACrC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC3C,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE;CACnB,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../../src/contracts/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAmB,MAAM,aAAa,CAAC;AAI9D,OAAO,EAAE,6BAA6B,EAAkB,MAAM,WAAW,CAAC;AAG1E;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC,MAAM,CAAC;IAChD,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClC,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;QAC9B,SAAS,EAAE,cAAc;QACzB,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAChC,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;KACjE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAC1C,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;AA2L7B,MAAM,oBAAoB,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACvC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACxC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;CAC1C,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;AAc7B,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,oBAAoB;IACxB,KAAK,EAAE,oBAAoB;IAC3B,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACrC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC3C,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE;CACnB,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC"}
package/lib/index.d.ts CHANGED
@@ -16,8 +16,10 @@ export * from "./controlPlane/store.js";
16
16
  export * from "./controlPlane/sync.js";
17
17
  export * from "./controlPlane/types.js";
18
18
  export * from "./runtime/configProvider.js";
19
+ export * from "./runtime/contract.js";
19
20
  export * from "./runtime/h3.js";
20
21
  export * from "./runtime/jsonSchema.js";
22
+ export * from "./runtime/llms.js";
21
23
  export * from "./runtime/http.js";
22
24
  export * from "./runtime/manifest.js";
23
25
  export * from "./runtime/media.js";
@@ -33,6 +35,7 @@ export * from "./runtime/auth/envelope.js";
33
35
  export * from "./runtime/auth/issuer.js";
34
36
  export * from "./runtime/auth/jwks.js";
35
37
  export * from "./runtime/auth/keypair.js";
38
+ export * from "./runtime/auth/serviceToken.js";
36
39
  export * from "./runtime/auth/tokens.js";
37
40
  export * from "./runtime/auth/verifier.js";
38
41
  export * from "./contracts/controlPlane.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
package/lib/index.js CHANGED
@@ -16,8 +16,10 @@ export * from "./controlPlane/store.js";
16
16
  export * from "./controlPlane/sync.js";
17
17
  export * from "./controlPlane/types.js";
18
18
  export * from "./runtime/configProvider.js";
19
+ export * from "./runtime/contract.js";
19
20
  export * from "./runtime/h3.js";
20
21
  export * from "./runtime/jsonSchema.js";
22
+ export * from "./runtime/llms.js";
21
23
  export * from "./runtime/http.js";
22
24
  export * from "./runtime/manifest.js";
23
25
  export * from "./runtime/media.js";
@@ -33,6 +35,7 @@ export * from "./runtime/auth/envelope.js";
33
35
  export * from "./runtime/auth/issuer.js";
34
36
  export * from "./runtime/auth/jwks.js";
35
37
  export * from "./runtime/auth/keypair.js";
38
+ export * from "./runtime/auth/serviceToken.js";
36
39
  export * from "./runtime/auth/tokens.js";
37
40
  export * from "./runtime/auth/verifier.js";
38
41
  export * from "./contracts/controlPlane.js";
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
@@ -18,4 +18,5 @@ export interface JwkRsaPublic {
18
18
  e: string;
19
19
  }
20
20
  export declare function publicKeyToJwk(publicKeyPem: string, kid: string): JwkRsaPublic;
21
+ export declare function deriveKeyId(publicKeyPem: string): string;
21
22
  //# sourceMappingURL=keypair.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keypair.d.ts","sourceRoot":"","sources":["../../../src/runtime/auth/keypair.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CACpC;AAED,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,UAAU,CAUhF;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,UAAU,CAcxG;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,KAAK,CAAC;IACX,GAAG,EAAE,KAAK,CAAC;IACX,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAc9E"}
1
+ {"version":3,"file":"keypair.d.ts","sourceRoot":"","sources":["../../../src/runtime/auth/keypair.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CACpC;AAED,wBAAgB,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,UAAU,CAUhF;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,UAAU,CAqBxG;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,KAAK,CAAC;IACX,GAAG,EAAE,KAAK,CAAC;IACX,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAc9E;AAED,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAKxD"}
@@ -1,5 +1,5 @@
1
- import { generateKeyPairSync, createPublicKey } from "node:crypto";
2
- import { readFileSync, writeFileSync, existsSync, mkdirSync } from "node:fs";
1
+ import { generateKeyPairSync, createPublicKey, randomBytes } from "node:crypto";
2
+ import { readFileSync, writeFileSync, existsSync, mkdirSync, renameSync, unlinkSync } from "node:fs";
3
3
  import { dirname } from "node:path";
4
4
  export function generateKeyPair(options = {}) {
5
5
  const modulusLength = options.modulusLength ?? 2048;
@@ -8,7 +8,7 @@ export function generateKeyPair(options = {}) {
8
8
  publicKeyEncoding: { type: "spki", format: "pem" },
9
9
  privateKeyEncoding: { type: "pkcs8", format: "pem" }
10
10
  });
11
- const kid = options.kid ?? deriveKid(publicKey);
11
+ const kid = options.kid ?? deriveKeyId(publicKey);
12
12
  return { privateKeyPem: privateKey, publicKeyPem: publicKey, kid };
13
13
  }
14
14
  export function loadOrGenerateKeyPair(filePath, options = {}) {
@@ -22,7 +22,16 @@ export function loadOrGenerateKeyPair(filePath, options = {}) {
22
22
  }
23
23
  const pair = generateKeyPair(options);
24
24
  mkdirSync(dirname(filePath), { recursive: true });
25
- writeFileSync(filePath, JSON.stringify(pair, null, 2), { mode: 0o600 });
25
+ const temporaryPath = filePath + "." + randomBytes(8).toString("hex") + ".tmp";
26
+ try {
27
+ writeFileSync(temporaryPath, JSON.stringify(pair, null, 2), { mode: 0o600, flag: "wx" });
28
+ renameSync(temporaryPath, filePath);
29
+ }
30
+ catch (error) {
31
+ if (existsSync(temporaryPath))
32
+ unlinkSync(temporaryPath);
33
+ throw error;
34
+ }
26
35
  return pair;
27
36
  }
28
37
  export function publicKeyToJwk(publicKeyPem, kid) {
@@ -40,7 +49,7 @@ export function publicKeyToJwk(publicKeyPem, kid) {
40
49
  e: jwk.e
41
50
  };
42
51
  }
43
- function deriveKid(publicKeyPem) {
52
+ export function deriveKeyId(publicKeyPem) {
44
53
  const keyObject = createPublicKey(publicKeyPem);
45
54
  const jwk = keyObject.export({ format: "jwk" });
46
55
  if (!jwk.n)
@@ -1 +1 @@
1
- {"version":3,"file":"keypair.js","sourceRoot":"","sources":["../../../src/runtime/auth/keypair.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keypair.js","sourceRoot":"","sources":["../../../src/runtime/auth/keypair.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { HttpMethod } from "../../contracts/common.js";
2
+ import { type ServiceTokenClaims } from "../../contracts/m2m.js";
3
+ import type { ScopedM2MConfig } from "../../contracts/controlPlane.js";
4
+ import type { RsaKeyPair } from "./keypair.js";
5
+ export interface SignServiceTokenOptions {
6
+ readonly keyPair: RsaKeyPair;
7
+ readonly sourceServiceId: string;
8
+ readonly targetServiceId: string;
9
+ readonly tenantId: string;
10
+ readonly appId: string;
11
+ readonly bindingId: string;
12
+ readonly expiresInSeconds?: number;
13
+ }
14
+ export interface AuthorizeServiceTokenOptions {
15
+ readonly policy: ScopedM2MConfig;
16
+ readonly tenantId: string;
17
+ readonly appId: string;
18
+ readonly viewId: string;
19
+ readonly method: HttpMethod;
20
+ readonly requiredPermissions?: ReadonlyArray<string>;
21
+ readonly clockToleranceSeconds?: number;
22
+ }
23
+ export interface AuthorizedServiceCaller {
24
+ readonly claims: ServiceTokenClaims;
25
+ readonly permissions: ReadonlyArray<string>;
26
+ }
27
+ export declare class ServiceTokenAuthorizationError extends Error {
28
+ readonly status: 401 | 403;
29
+ constructor(message: string, status: 401 | 403);
30
+ }
31
+ export declare function signServiceToken(options: SignServiceTokenOptions): string;
32
+ export declare function isServiceToken(token: string): boolean;
33
+ export declare function authorizeServiceToken(token: string, options: AuthorizeServiceTokenOptions): Promise<AuthorizedServiceCaller>;
34
+ //# sourceMappingURL=serviceToken.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serviceToken.d.ts","sourceRoot":"","sources":["../../../src/runtime/auth/serviceToken.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAQ/C,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACrD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CACzC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC7C;AAED,qBAAa,8BAA+B,SAAQ,KAAK;IAC1B,QAAQ,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG;gBAA3C,OAAO,EAAE,MAAM,EAAW,MAAM,EAAE,GAAG,GAAG,GAAG;CAIxD;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,MAAM,CAwBzE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAMrD;AAED,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,uBAAuB,CAAC,CAuDlC"}
@@ -0,0 +1,128 @@
1
+ import jwt from "jsonwebtoken";
2
+ import { ServiceTokenClaimsSchema } from "../../contracts/m2m.js";
3
+ import { uuidv7 } from "../uuid.js";
4
+ const ALGORITHM = "RS256";
5
+ const TOKEN_TYP = "BP-S2S-JWT";
6
+ const MAX_LIFETIME_SECONDS = 60;
7
+ const KID_PATTERN = /^[A-Za-z0-9_-]{1,256}$/;
8
+ export class ServiceTokenAuthorizationError extends Error {
9
+ status;
10
+ constructor(message, status) {
11
+ super(message);
12
+ this.status = status;
13
+ this.name = "ServiceTokenAuthorizationError";
14
+ }
15
+ }
16
+ export function signServiceToken(options) {
17
+ const lifetime = options.expiresInSeconds ?? MAX_LIFETIME_SECONDS;
18
+ if (!Number.isInteger(lifetime) || lifetime < 1 || lifetime > MAX_LIFETIME_SECONDS) {
19
+ throw new ServiceTokenAuthorizationError("Service token lifetime must be between 1 and " + MAX_LIFETIME_SECONDS + " seconds", 401);
20
+ }
21
+ const now = Math.floor(Date.now() / 1000);
22
+ const claims = ServiceTokenClaimsSchema.parse({
23
+ iss: options.sourceServiceId,
24
+ sub: options.sourceServiceId,
25
+ aud: options.targetServiceId,
26
+ tenantId: options.tenantId,
27
+ appId: options.appId,
28
+ bindingId: options.bindingId,
29
+ iat: now,
30
+ nbf: now,
31
+ exp: now + lifetime,
32
+ jti: uuidv7(),
33
+ tokenType: "service"
34
+ });
35
+ return jwt.sign(claims, options.keyPair.privateKeyPem, {
36
+ algorithm: ALGORITHM,
37
+ keyid: options.keyPair.kid,
38
+ header: { alg: ALGORITHM, typ: TOKEN_TYP, kid: options.keyPair.kid }
39
+ });
40
+ }
41
+ export function isServiceToken(token) {
42
+ try {
43
+ return readHeader(token).typ === TOKEN_TYP;
44
+ }
45
+ catch {
46
+ return false;
47
+ }
48
+ }
49
+ export async function authorizeServiceToken(token, options) {
50
+ const header = readHeader(token);
51
+ if (header.alg !== ALGORITHM || header.typ !== TOKEN_TYP || typeof header.kid !== "string" || !KID_PATTERN.test(header.kid)) {
52
+ throw new ServiceTokenAuthorizationError("Invalid service token header", 401);
53
+ }
54
+ if ("jku" in header || "x5u" in header)
55
+ throw new ServiceTokenAuthorizationError("Service token contains an untrusted key reference", 401);
56
+ const untrusted = readPayload(token);
57
+ const sourceServiceId = typeof untrusted.iss === "string" ? untrusted.iss : "";
58
+ const source = options.policy.services.find((service) => service.id === sourceServiceId && service.keyId === header.kid && typeof service.publicKeyPem === "string");
59
+ if (!source?.publicKeyPem)
60
+ throw new ServiceTokenAuthorizationError("Service signing key is not trusted", 401);
61
+ let verified;
62
+ try {
63
+ verified = jwt.verify(token, source.publicKeyPem, {
64
+ algorithms: [ALGORITHM],
65
+ clockTolerance: options.clockToleranceSeconds ?? 5
66
+ });
67
+ }
68
+ catch (error) {
69
+ throw new ServiceTokenAuthorizationError("Service token verification failed: " + error.message, 401);
70
+ }
71
+ const claims = ServiceTokenClaimsSchema.parse(verified);
72
+ if (claims.sub !== claims.iss)
73
+ throw new ServiceTokenAuthorizationError("Service token subject does not match issuer", 401);
74
+ if (claims.exp - claims.iat > MAX_LIFETIME_SECONDS)
75
+ throw new ServiceTokenAuthorizationError("Service token lifetime exceeds the maximum", 401);
76
+ if (!options.policy.localServiceIds.includes(claims.aud))
77
+ throw new ServiceTokenAuthorizationError("Service token targets another service", 401);
78
+ if (claims.tenantId !== options.tenantId || claims.appId !== options.appId) {
79
+ throw new ServiceTokenAuthorizationError("Service token is bound to another tenant/app", 401);
80
+ }
81
+ const binding = options.policy.bindings.find((candidate) => candidate.enabled
82
+ && candidate.id === claims.bindingId
83
+ && candidate.sourceServiceId === claims.iss
84
+ && candidate.targetServiceId === claims.aud
85
+ && candidate.tenantId === claims.tenantId
86
+ && (!candidate.appId || candidate.appId === claims.appId)
87
+ && candidate.targetViewId === options.viewId);
88
+ if (!binding)
89
+ throw new ServiceTokenAuthorizationError("Service binding is unavailable", 403);
90
+ const grant = options.policy.grants.find((candidate) => candidate.enabled
91
+ && candidate.bindingId === binding.id
92
+ && candidate.tenantId === claims.tenantId
93
+ && (!candidate.appId || candidate.appId === claims.appId)
94
+ && candidate.methods.includes(options.method));
95
+ if (!grant)
96
+ throw new ServiceTokenAuthorizationError("Service grant is unavailable", 403);
97
+ const required = options.requiredPermissions ?? [];
98
+ if (!required.every((permission) => grant.permissions.includes(permission))) {
99
+ throw new ServiceTokenAuthorizationError("Service grant has insufficient permissions", 403);
100
+ }
101
+ return { claims, permissions: grant.permissions };
102
+ }
103
+ function readHeader(token) {
104
+ const parts = token.split(".");
105
+ if (parts.length !== 3)
106
+ throw new Error("Service token must have three parts");
107
+ return readJsonPart(parts[0], "header");
108
+ }
109
+ function readPayload(token) {
110
+ const parts = token.split(".");
111
+ if (parts.length !== 3)
112
+ throw new Error("Service token must have three parts");
113
+ return readJsonPart(parts[1], "payload");
114
+ }
115
+ function readJsonPart(value, label) {
116
+ let parsed;
117
+ try {
118
+ parsed = JSON.parse(Buffer.from(value, "base64url").toString("utf8"));
119
+ }
120
+ catch {
121
+ throw new Error("Service token " + label + " is invalid");
122
+ }
123
+ if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
124
+ throw new Error("Service token " + label + " is not an object");
125
+ }
126
+ return parsed;
127
+ }
128
+ //# sourceMappingURL=serviceToken.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serviceToken.js","sourceRoot":"","sources":["../../../src/runtime/auth/serviceToken.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { BpSchemaOutput } from "../contracts/manifest.js";
2
+ export declare function canonicalJson(value: unknown): string;
3
+ export declare function contractDigest(contract: BpSchemaOutput): string;
4
+ //# sourceMappingURL=contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/runtime/contract.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAOpD;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAE/D"}
@@ -0,0 +1,15 @@
1
+ import { createHash } from "node:crypto";
2
+ export function canonicalJson(value) {
3
+ if (value === null || typeof value !== "object")
4
+ return JSON.stringify(value);
5
+ if (Array.isArray(value))
6
+ return `[${value.map(canonicalJson).join(",")}]`;
7
+ return `{${Object.entries(value)
8
+ .sort(([a], [b]) => a.localeCompare(b))
9
+ .map(([key, entry]) => `${JSON.stringify(key)}:${canonicalJson(entry)}`)
10
+ .join(",")}}`;
11
+ }
12
+ export function contractDigest(contract) {
13
+ return `sha256:${createHash("sha256").update(canonicalJson(contract)).digest("hex")}`;
14
+ }
15
+ //# sourceMappingURL=contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/runtime/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IAC3E,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;SACxD,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;SACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,QAAwB;IACrD,OAAO,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACxF,CAAC"}
@@ -0,0 +1,39 @@
1
+ import type { DeveloperResource } from "../contracts/manifest.js";
2
+ import type { JsonValue } from "../contracts/json.js";
3
+ import type { BetterPortalConfig, BetterPortalRouteMount } from "../contracts/platformConfig.js";
4
+ import { type BetterPortalHeaderTrustOptions, type HeaderMap } from "./http.js";
5
+ export interface ThemeLlmsContext {
6
+ tenant: {
7
+ id: string;
8
+ title: string;
9
+ };
10
+ app: {
11
+ id: string;
12
+ title: string;
13
+ url: string;
14
+ routes: ReadonlyArray<BetterPortalRouteMount>;
15
+ };
16
+ services: ReadonlyArray<{
17
+ id: string;
18
+ pluginId: string;
19
+ title: string;
20
+ url: string;
21
+ }>;
22
+ configManagerUrl?: string;
23
+ catalogUrl?: string;
24
+ apiGuideUrl?: string;
25
+ management: {
26
+ appUrl?: string;
27
+ appId?: string;
28
+ tenantId?: string;
29
+ discoveryUrl?: string;
30
+ currentUrl?: string;
31
+ };
32
+ }
33
+ export declare function resolveThemeLlmsContext(config: BetterPortalConfig, headers: HeaderMap, tenantUrl: string, headerTrust?: BetterPortalHeaderTrustOptions): ThemeLlmsContext | null;
34
+ export declare function buildThemeAiManifest(context: ThemeLlmsContext, resources: ReadonlyArray<DeveloperResource>, traceId?: string): JsonValue;
35
+ export declare function renderThemeLlmsIndex(context: ThemeLlmsContext): string;
36
+ export declare function renderThemeLlmsApi(context: ThemeLlmsContext): string;
37
+ export declare function renderThemeLlmsDev(context: ThemeLlmsContext): string;
38
+ export declare function renderThemeLlmsUi(context: ThemeLlmsContext, resources: ReadonlyArray<DeveloperResource>): string;
39
+ //# sourceMappingURL=llms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llms.d.ts","sourceRoot":"","sources":["../../src/runtime/llms.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAEjG,OAAO,EAAwB,KAAK,8BAA8B,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAItG,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,GAAG,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAA;KAAE,CAAC;IAC/F,QAAQ,EAAE,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE;QACV,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAYD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,SAAS,EAClB,SAAS,EAAE,MAAM,EACjB,WAAW,GAAE,8BAAmC,GAC/C,gBAAgB,GAAG,IAAI,CAsCzB;AASD,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,SAAS,EAAE,aAAa,CAAC,iBAAiB,CAAC,EAC3C,OAAO,CAAC,EAAE,MAAM,GACf,SAAS,CA4BX;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CA+BtE;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAkCpE;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAiBpE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAiBhH"}