@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
@@ -23,7 +23,7 @@ function run() {
23
23
  const packageDir = path.dirname(packageJsonPath);
24
24
  const raw = JSON.parse(fs.readFileSync(packageJsonPath, "utf-8"));
25
25
  let modified = false;
26
- // Add bp-codegen script if missing
26
+ // Add BP scripts if missing
27
27
  if (!raw.scripts)
28
28
  raw.scripts = {};
29
29
  if (!raw.scripts["bp-codegen"]) {
@@ -31,19 +31,49 @@ function run() {
31
31
  console.log("[bp-init] Added 'bp-codegen' script.");
32
32
  modified = true;
33
33
  }
34
+ for (const [name, command] of Object.entries({
35
+ "bp:gen": "bp run gen",
36
+ "bp:types": "bp run types",
37
+ "bp:contract": "bp run contract",
38
+ "publish:bp": "bp publish"
39
+ })) {
40
+ if (!raw.scripts[name]) {
41
+ raw.scripts[name] = command;
42
+ console.log(`[bp-init] Added '${name}' script.`);
43
+ modified = true;
44
+ }
45
+ }
34
46
  // Detect BSB vs non-BSB
35
47
  const isBsb = raw.bsb !== undefined;
36
48
  if (isBsb) {
37
- // Add afterSchemas hook
49
+ if (raw.scripts.prebuild === "bp-codegen" || raw.scripts.prebuild === "npm run bp-codegen") {
50
+ delete raw.scripts.prebuild;
51
+ console.log("[bp-init] Removed duplicate legacy BSB prebuild hook.");
52
+ modified = true;
53
+ }
54
+ // Route generation and dependency types must exist before TypeScript compilation.
38
55
  if (!raw.bsb.hooks)
39
56
  raw.bsb.hooks = {};
40
- if (!raw.bsb.hooks.afterSchemas) {
41
- raw.bsb.hooks.afterSchemas = "bp-codegen";
42
- console.log("[bp-init] Added BSB afterSchemas hook for bp-codegen.");
57
+ const afterSchemas = Array.isArray(raw.bsb.hooks.afterSchemas)
58
+ ? raw.bsb.hooks.afterSchemas
59
+ : raw.bsb.hooks.afterSchemas ? [raw.bsb.hooks.afterSchemas] : [];
60
+ const normalizedAfterSchemas = afterSchemas.map((hook) => hook === "bp-codegen" ? "bp:gen" : hook);
61
+ for (const hook of ["bp:gen", "bp:types"]) {
62
+ if (!normalizedAfterSchemas.includes(hook))
63
+ normalizedAfterSchemas.push(hook);
64
+ }
65
+ if (JSON.stringify(normalizedAfterSchemas) !== JSON.stringify(afterSchemas)) {
66
+ raw.bsb.hooks.afterSchemas = normalizedAfterSchemas;
67
+ console.log("[bp-init] Added BSB generation/type hooks.");
43
68
  modified = true;
44
69
  }
45
- else {
46
- console.log("[bp-init] BSB afterSchemas hook already configured.");
70
+ const afterBuild = Array.isArray(raw.bsb.hooks.afterBuild)
71
+ ? raw.bsb.hooks.afterBuild
72
+ : raw.bsb.hooks.afterBuild ? [raw.bsb.hooks.afterBuild] : [];
73
+ if (!afterBuild.includes("bp:contract")) {
74
+ raw.bsb.hooks.afterBuild = [...afterBuild, "bp:contract"];
75
+ console.log("[bp-init] Added BSB contract hook.");
76
+ modified = true;
47
77
  }
48
78
  }
49
79
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/codegen/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/codegen/init.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ export declare const UuidV7Schema: av.StringSchema;
10
10
  export type UuidV7 = Infer<typeof UuidV7Schema>;
11
11
  export declare const PluginIdSchema: av.StringSchema;
12
12
  export type PluginId = Infer<typeof PluginIdSchema>;
13
+ export declare const SemverSchema: av.StringSchema;
14
+ export type Semver = Infer<typeof SemverSchema>;
13
15
  export declare const DeploymentModeSchema: av.EnumSchema<readonly ["bp-hosted", "customer-hosted", "third-party-saas", "self-hosted", "saas-managed"]>;
14
16
  export type DeploymentMode = Infer<typeof DeploymentModeSchema>;
15
17
  export declare const ConfigScopeSchema: av.EnumSchema<readonly ["tenant", "app"]>;
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/contracts/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC,eAAO,MAAM,gBAAgB,8EAA0E,CAAC;AACxG,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAExD,eAAO,MAAM,gBAAgB,uDAAmD,CAAC;AACjF,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAExD,eAAO,MAAM,oBAAoB,6FAAyF,CAAC;AAC3H,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEhE,eAAO,MAAM,YAAY,iBAA+F,CAAC;AACzH,MAAM,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAEhD,eAAO,MAAM,cAAc,iBAA4D,CAAC;AACxF,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEpD,eAAO,MAAM,oBAAoB,6GAMtB,CAAC;AACZ,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB,2CAAuC,CAAC;AACtE,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE1D,eAAO,MAAM,sBAAsB,2DAAuD,CAAC;AAC3F,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEpE,eAAO,MAAM,qBAAqB,mDAA+C,CAAC;AAClF,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAElE,eAAO,MAAM,mBAAmB,sDAAkD,CAAC;AACnF,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/contracts/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC,eAAO,MAAM,gBAAgB,8EAA0E,CAAC;AACxG,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAExD,eAAO,MAAM,gBAAgB,uDAAmD,CAAC;AACjF,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAExD,eAAO,MAAM,oBAAoB,6FAAyF,CAAC;AAC3H,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEhE,eAAO,MAAM,YAAY,iBAA+F,CAAC;AACzH,MAAM,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAEhD,eAAO,MAAM,cAAc,iBAE1B,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEpD,eAAO,MAAM,YAAY,iBAExB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAEhD,eAAO,MAAM,oBAAoB,6GAMtB,CAAC;AACZ,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB,2CAAuC,CAAC;AACtE,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE1D,eAAO,MAAM,sBAAsB,2DAAuD,CAAC;AAC3F,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEpE,eAAO,MAAM,qBAAqB,mDAA+C,CAAC;AAClF,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAElE,eAAO,MAAM,mBAAmB,sDAAkD,CAAC;AACnF,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -3,7 +3,8 @@ export const HttpMethodSchema = av.enum_(["GET", "POST", "PUT", "PATCH", "DELETE
3
3
  export const RenderModeSchema = av.enum_(["page", "fragment", "embed"]);
4
4
  export const PluginCategorySchema = av.enum_(["framework", "auth", "theme", "service", "utility", "integration"]);
5
5
  export const UuidV7Schema = av.string().pattern("^[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$");
6
- export const PluginIdSchema = av.string().pattern("^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$");
6
+ export const PluginIdSchema = av.string().pattern("^[a-z](?:[a-z0-9-]*[a-z0-9])?(?:\\.[a-z0-9](?:[a-z0-9-]*[a-z0-9])?){2,}$");
7
+ export const SemverSchema = av.string().pattern("^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)(?:-[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*)?(?:\\+[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*)?$");
7
8
  export const DeploymentModeSchema = av.enum_([
8
9
  "bp-hosted",
9
10
  "customer-hosted",
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/contracts/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC,CAAC;AAGxG,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAU,CAAC,CAAC;AAGjF,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAU,CAAC,CAAC;AAG3H,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,uEAAuE,CAAC,CAAC;AAGzH,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;AAGxF,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC,KAAK,CAAC;IAC3C,WAAW;IACX,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;IACb,cAAc;CACN,CAAC,CAAC;AAGZ,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAU,CAAC,CAAC;AAGtE,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC,CAAC;AAG3F,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC,CAAC;AAGlF,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,eAAe,CAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/contracts/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC,CAAC;AAGxG,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAU,CAAC,CAAC;AAGjF,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAU,CAAC,CAAC;AAG3H,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,uEAAuE,CAAC,CAAC;AAGzH,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,OAAO,CAC/C,0EAA0E,CAC3E,CAAC;AAGF,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,OAAO,CAC7C,yIAAyI,CAC1I,CAAC;AAGF,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC,KAAK,CAAC;IAC3C,WAAW;IACX,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;IACb,cAAc;CACN,CAAC,CAAC;AAGZ,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAU,CAAC,CAAC;AAGtE,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC,CAAC;AAG3F,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC,CAAC;AAGlF,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,eAAe,CAAU,CAAC,CAAC"}
@@ -1,5 +1,9 @@
1
- import type { BetterPortalApp, BetterPortalConfig, BetterPortalTenant, TenantServiceRegistration, PlatformService, SharedServiceDefinition } from "./platformConfig.js";
1
+ import type { BetterPortalApp, BetterPortalConfig, BetterPortalTenant, M2MBinding, M2MGrant, TenantServiceRegistration, PlatformService, SharedServiceDefinition } from "./platformConfig.js";
2
2
  export interface ScopedServiceConfig {
3
+ /** The installed service identity authenticated by the control-plane API key. */
4
+ readonly serviceIdentity?: ScopedServiceIdentity;
5
+ /** Last-known-good S2S policy relevant to this service, filtered by the control plane. */
6
+ readonly m2m?: ScopedM2MConfig;
3
7
  readonly configManagement?: {
4
8
  readonly adminTenantId?: string;
5
9
  readonly managementAppId?: string;
@@ -15,6 +19,26 @@ export interface ScopedServiceConfig {
15
19
  readonly configApps?: ReadonlyArray<ScopedConfigApp>;
16
20
  readonly apps: ReadonlyArray<ScopedApp>;
17
21
  }
22
+ export interface ScopedServiceIdentity {
23
+ readonly id: string;
24
+ readonly publicKeyPem?: string;
25
+ readonly keyId?: string;
26
+ }
27
+ export interface ScopedM2MService {
28
+ /** Concrete tenant/app service id used by a binding and JWT iss/aud. */
29
+ readonly id: string;
30
+ readonly serviceId?: string;
31
+ readonly hostname: string;
32
+ readonly publicKeyPem?: string;
33
+ readonly keyId?: string;
34
+ }
35
+ export interface ScopedM2MConfig {
36
+ /** All concrete ids that resolve to this running service (including shared activations). */
37
+ readonly localServiceIds: ReadonlyArray<string>;
38
+ readonly services: ReadonlyArray<ScopedM2MService>;
39
+ readonly bindings: ReadonlyArray<M2MBinding>;
40
+ readonly grants: ReadonlyArray<M2MGrant>;
41
+ }
18
42
  export interface ScopedTenant {
19
43
  readonly id: string;
20
44
  readonly slug: string;
@@ -66,6 +90,7 @@ export interface PlatformConfigStore {
66
90
  service: TenantServiceRegistration | PlatformService | SharedServiceDefinition;
67
91
  } | null>;
68
92
  getScopedConfig(serviceId: string, scope: "tenant" | "platform", tenantId?: string): Promise<ScopedServiceConfig>;
93
+ registerServicePublicKey(serviceId: string, scope: "tenant" | "platform", tenantId: string | undefined, publicKeyPem: string, keyId: string): Promise<"registered" | "matched" | "mismatch" | "not-found">;
69
94
  invalidate(): void;
70
95
  onChange(listener: () => void): () => void;
71
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"controlPlane.d.ts","sourceRoot":"","sources":["../../src/contracts/controlPlane.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controlPlane.d.ts","sourceRoot":"","sources":["../../src/contracts/controlPlane.ts"],"names":[],"mappings":"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"}
@@ -24,4 +24,19 @@ export declare const M2MRequestDescriptorSchema: av.ObjectSchema<{
24
24
  optional: av.BoolSchema;
25
25
  }>;
26
26
  export type M2MRequestDescriptor = Infer<typeof M2MRequestDescriptorSchema>;
27
+ /** Short-lived proof that one installed service instance is calling another. */
28
+ export declare const ServiceTokenClaimsSchema: av.ObjectSchema<{
29
+ iss: av.StringSchema;
30
+ sub: av.StringSchema;
31
+ aud: av.StringSchema;
32
+ tenantId: av.StringSchema;
33
+ appId: av.StringSchema;
34
+ bindingId: av.StringSchema;
35
+ iat: av.IntSchema;
36
+ nbf: av.OptionalSchema<av.IntSchema>;
37
+ exp: av.IntSchema;
38
+ jti: av.StringSchema;
39
+ tokenType: av.LiteralSchema<"service">;
40
+ }>;
41
+ export type ServiceTokenClaims = Infer<typeof ServiceTokenClaimsSchema>;
27
42
  //# sourceMappingURL=m2m.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"m2m.d.ts","sourceRoot":"","sources":["../../src/contracts/m2m.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC,eAAO,MAAM,eAAe,8EAA0E,CAAC;AAEvG,eAAO,MAAM,2BAA2B;;;;;;;;;EASZ,CAAC;AAC7B,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAE9E,eAAO,MAAM,0BAA0B;;;;;;;;;;EAUX,CAAC;AAC7B,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
1
+ {"version":3,"file":"m2m.d.ts","sourceRoot":"","sources":["../../src/contracts/m2m.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,eAAO,MAAM,eAAe,8EAA0E,CAAC;AAEvG,eAAO,MAAM,2BAA2B;;;;;;;;;EASZ,CAAC;AAC7B,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAE9E,eAAO,MAAM,0BAA0B;;;;;;;;;;EAUX,CAAC;AAC7B,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE5E,gFAAgF;AAChF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAYT,CAAC;AAC7B,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import * as av from "anyvali";
2
+ import { UuidV7Schema } from "./common.js";
2
3
  export const M2MMethodSchema = av.enum_(["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]);
3
4
  export const ApiContractDescriptorSchema = av.object({
4
5
  id: av.string().minLength(1),
@@ -21,4 +22,18 @@ export const M2MRequestDescriptorSchema = av.object({
21
22
  permissions: av.array(av.string().minLength(1)).default([]),
22
23
  optional: av.bool().default(false)
23
24
  }, { unknownKeys: "strip" });
25
+ /** Short-lived proof that one installed service instance is calling another. */
26
+ export const ServiceTokenClaimsSchema = av.object({
27
+ iss: UuidV7Schema,
28
+ sub: UuidV7Schema,
29
+ aud: UuidV7Schema,
30
+ tenantId: UuidV7Schema,
31
+ appId: UuidV7Schema,
32
+ bindingId: UuidV7Schema,
33
+ iat: av.int().min(0),
34
+ nbf: av.optional(av.int().min(0)),
35
+ exp: av.int().min(1),
36
+ jti: av.string().minLength(1),
37
+ tokenType: av.literal("service")
38
+ }, { unknownKeys: "strip" });
24
39
  //# sourceMappingURL=m2m.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"m2m.js","sourceRoot":"","sources":["../../src/contracts/m2m.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC,CAAC;AAEvG,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,CAAC,MAAM,CAAC;IACnD,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/B,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACrC,OAAO,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACjC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,YAAY,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5D,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAC5D,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;AAG7B,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC,MAAM,CAAC;IAClD,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5B,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/B,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACrC,UAAU,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACpC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC9C,oBAAoB,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACpE,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9C,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3D,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACnC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"m2m.js","sourceRoot":"","sources":["../../src/contracts/m2m.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,18 @@ export declare const WebhookEventDescriptorSchema: av.ObjectSchema<{
16
16
  payloadSchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
17
17
  }>;
18
18
  export type WebhookEventDescriptor = Infer<typeof WebhookEventDescriptorSchema>;
19
+ export declare const DeveloperResourceSchema: av.ObjectSchema<{
20
+ id: av.StringSchema;
21
+ kind: av.EnumSchema<readonly ["guide", "template", "skill", "example"]>;
22
+ title: av.StringSchema;
23
+ description: av.OptionalSchema<av.StringSchema>;
24
+ mediaType: av.StringSchema;
25
+ language: av.OptionalSchema<av.StringSchema>;
26
+ content: av.StringSchema;
27
+ }>;
28
+ export type DeveloperResource = Infer<typeof DeveloperResourceSchema>;
19
29
  export declare const PluginManifestSchema: av.ObjectSchema<{
30
+ protocolVersion: av.LiteralSchema<1>;
20
31
  pluginId: av.StringSchema;
21
32
  title: av.StringSchema;
22
33
  description: av.StringSchema;
@@ -181,9 +192,229 @@ export declare const PluginManifestSchema: av.ObjectSchema<{
181
192
  permissions: av.ArraySchema<av.StringSchema>;
182
193
  optional: av.BoolSchema;
183
194
  }>>;
195
+ developerResources: av.ArraySchema<av.ObjectSchema<{
196
+ id: av.StringSchema;
197
+ kind: av.EnumSchema<readonly ["guide", "template", "skill", "example"]>;
198
+ title: av.StringSchema;
199
+ description: av.OptionalSchema<av.StringSchema>;
200
+ mediaType: av.StringSchema;
201
+ language: av.OptionalSchema<av.StringSchema>;
202
+ content: av.StringSchema;
203
+ }>>;
184
204
  cacheHints: av.ObjectSchema<{
185
205
  metadataTtlSeconds: av.IntSchema;
186
206
  }>;
187
207
  }>;
188
208
  export type PluginManifest = Infer<typeof PluginManifestSchema>;
209
+ export declare const BpSchemaRouteSchema: av.ObjectSchema<{
210
+ viewId: av.StringSchema;
211
+ path: av.StringSchema;
212
+ methods: av.ArraySchema<av.EnumSchema<readonly ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]>>;
213
+ paramNames: av.ArraySchema<av.StringSchema>;
214
+ themes: av.ArraySchema<av.StringSchema>;
215
+ hasFragments: av.BoolSchema;
216
+ fragments: av.ArraySchema<av.ObjectSchema<{
217
+ fragmentLocation: av.StringSchema;
218
+ fragmentId: av.StringSchema;
219
+ themes: av.ArraySchema<av.StringSchema>;
220
+ }>>;
221
+ components: av.ArraySchema<av.StringSchema>;
222
+ }>;
223
+ export type BpSchemaRoute = Infer<typeof BpSchemaRouteSchema>;
224
+ export declare const BpSchemaOutputSchema: av.ObjectSchema<{
225
+ manifest: av.ObjectSchema<{
226
+ protocolVersion: av.LiteralSchema<1>;
227
+ pluginId: av.StringSchema;
228
+ title: av.StringSchema;
229
+ description: av.StringSchema;
230
+ version: av.StringSchema;
231
+ category: av.EnumSchema<readonly ["framework", "auth", "theme", "service", "utility", "integration"]>;
232
+ deploymentModes: av.ArraySchema<av.EnumSchema<readonly ["bp-hosted", "customer-hosted", "third-party-saas", "self-hosted", "saas-managed"]>>;
233
+ capabilities: av.ArraySchema<av.StringSchema>;
234
+ supportedThemes: av.ArraySchema<av.StringSchema>;
235
+ supportedRenderModes: av.ArraySchema<av.EnumSchema<readonly ["page", "fragment", "embed"]>>;
236
+ views: av.ArraySchema<av.ObjectSchema<{
237
+ viewId: av.StringSchema;
238
+ title: av.StringSchema;
239
+ description: av.StringSchema;
240
+ path: av.StringSchema;
241
+ methods: av.ArraySchema<av.EnumSchema<readonly ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]>>;
242
+ paramsSchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
243
+ querySchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
244
+ headersSchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
245
+ bodySchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
246
+ jsonResponseSchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
247
+ metadataResponseSchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
248
+ renderable: av.BoolSchema;
249
+ raw: av.OptionalSchema<av.BoolSchema>;
250
+ streaming: av.OptionalSchema<av.ObjectSchema<{
251
+ itemSchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
252
+ summarySchema: av.OptionalSchema<av.BaseSchema<unknown, import("./json.js").JsonObject>>;
253
+ }>>;
254
+ html: av.ObjectSchema<{
255
+ themeRenderers: av.RecordSchema<av.ObjectSchema<{
256
+ defaultRenderer: av.StringSchema;
257
+ renderModes: av.ArraySchema<av.EnumSchema<readonly ["page", "fragment", "embed"]>>;
258
+ slots: av.ArraySchema<av.StringSchema>;
259
+ renderers: av.ArraySchema<av.ObjectSchema<{
260
+ id: av.StringSchema;
261
+ title: av.StringSchema;
262
+ slotId: av.StringSchema;
263
+ renderModes: av.ArraySchema<av.EnumSchema<readonly ["page", "fragment", "embed"]>>;
264
+ }>>;
265
+ }>>;
266
+ }>;
267
+ auth: av.ObjectSchema<{
268
+ required: av.BoolSchema;
269
+ permissions: av.ArraySchema<av.ObjectSchema<{
270
+ serviceId: av.StringSchema;
271
+ viewId: av.StringSchema;
272
+ permissions: av.ArraySchema<av.EnumSchema<readonly ["read", "create", "update", "delete"]>>;
273
+ }>>;
274
+ }>;
275
+ role: av.OptionalSchema<av.StringSchema>;
276
+ dependencies: av.ArraySchema<av.StringSchema>;
277
+ chrome: av.OptionalSchema<av.IntersectionSchema<[av.ObjectSchema<{
278
+ hideMenu: av.OptionalSchema<av.BoolSchema>;
279
+ hideHeader: av.OptionalSchema<av.BoolSchema>;
280
+ hideFooter: av.OptionalSchema<av.BoolSchema>;
281
+ fullScreen: av.OptionalSchema<av.BoolSchema>;
282
+ }>, av.RecordSchema<av.UnionSchema<[av.StringSchema, av.NumberSchema, av.BoolSchema]>>]>>;
283
+ apiContracts: av.ArraySchema<av.ObjectSchema<{
284
+ id: av.StringSchema;
285
+ title: av.StringSchema;
286
+ description: av.OptionalSchema<av.StringSchema>;
287
+ version: av.StringSchema;
288
+ viewId: av.StringSchema;
289
+ methods: av.ArraySchema<av.EnumSchema<readonly ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]>>;
290
+ capabilities: av.ArraySchema<av.StringSchema>;
291
+ permissions: av.ArraySchema<av.StringSchema>;
292
+ }>>;
293
+ demoScenarios: av.ArraySchema<av.ObjectSchema<{
294
+ id: av.StringSchema;
295
+ title: av.StringSchema;
296
+ description: av.OptionalSchema<av.StringSchema>;
297
+ match: av.OptionalSchema<av.ObjectSchema<{
298
+ query: av.OptionalSchema<av.RecordSchema<av.AnySchema>>;
299
+ params: av.OptionalSchema<av.RecordSchema<av.AnySchema>>;
300
+ headers: av.OptionalSchema<av.RecordSchema<av.StringSchema>>;
301
+ request: av.OptionalSchema<av.RecordSchema<av.AnySchema>>;
302
+ }>>;
303
+ response: av.BaseSchema<unknown, import("./json.js").JsonValue>;
304
+ }>>;
305
+ cacheHints: av.ObjectSchema<{
306
+ ttlSeconds: av.IntSchema;
307
+ varyBy: av.ArraySchema<av.StringSchema>;
308
+ }>;
309
+ }>>;
310
+ configSchemas: av.ArraySchema<av.ObjectSchema<{
311
+ id: av.StringSchema;
312
+ title: av.StringSchema;
313
+ description: av.StringSchema;
314
+ scope: av.EnumSchema<readonly ["tenant", "app"]>;
315
+ jsonSchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
316
+ groups: av.OptionalSchema<av.ArraySchema<av.ObjectSchema<{
317
+ id: av.StringSchema;
318
+ title: av.StringSchema;
319
+ description: av.OptionalSchema<av.StringSchema>;
320
+ order: av.OptionalSchema<av.IntSchema>;
321
+ optional: av.OptionalSchema<av.BoolSchema>;
322
+ }>>>;
323
+ fields: av.ArraySchema<av.ObjectSchema<{
324
+ key: av.StringSchema;
325
+ title: av.StringSchema;
326
+ description: av.StringSchema;
327
+ scope: av.EnumSchema<readonly ["tenant", "app"]>;
328
+ visibility: av.EnumSchema<readonly ["public", "protected", "secret"]>;
329
+ ownership: av.EnumSchema<readonly ["bp", "plugin", "mixed"]>;
330
+ sourceOfTruth: av.EnumSchema<readonly ["bp", "plugin", "external"]>;
331
+ groupId: av.OptionalSchema<av.StringSchema>;
332
+ order: av.OptionalSchema<av.IntSchema>;
333
+ defaultValue: av.OptionalSchema<av.BaseSchema<unknown, import("./json.js").JsonValue>>;
334
+ ui: av.OptionalSchema<av.ObjectSchema<{
335
+ control: av.OptionalSchema<av.EnumSchema<readonly ["text", "textarea", "password", "number", "checkbox", "select", "multiselect", "color", "date", "time", "datetime-local", "url", "email"]>>;
336
+ placeholder: av.OptionalSchema<av.StringSchema>;
337
+ options: av.OptionalSchema<av.ArraySchema<av.ObjectSchema<{
338
+ value: av.StringSchema;
339
+ label: av.StringSchema;
340
+ }>>>;
341
+ optionsSource: av.OptionalSchema<av.EnumSchema<readonly ["app.routes"]>>;
342
+ min: av.OptionalSchema<av.UnionSchema<[av.NumberSchema, av.StringSchema]>>;
343
+ max: av.OptionalSchema<av.UnionSchema<[av.NumberSchema, av.StringSchema]>>;
344
+ step: av.OptionalSchema<av.NumberSchema>;
345
+ rows: av.OptionalSchema<av.IntSchema>;
346
+ }>>;
347
+ required: av.BoolSchema;
348
+ }>>;
349
+ }>>;
350
+ permissions: av.ArraySchema<av.ObjectSchema<{
351
+ id: av.StringSchema;
352
+ title: av.StringSchema;
353
+ description: av.StringSchema;
354
+ defaultRoles: av.ArraySchema<av.StringSchema>;
355
+ }>>;
356
+ adminApis: av.ArraySchema<av.ObjectSchema<{
357
+ id: av.StringSchema;
358
+ title: av.StringSchema;
359
+ description: av.StringSchema;
360
+ path: av.StringSchema;
361
+ methods: av.ArraySchema<av.EnumSchema<readonly ["GET", "POST", "PUT", "PATCH", "DELETE"]>>;
362
+ supportsCustomUi: av.BoolSchema;
363
+ }>>;
364
+ webhooks: av.ArraySchema<av.ObjectSchema<{
365
+ id: av.StringSchema;
366
+ title: av.StringSchema;
367
+ description: av.OptionalSchema<av.StringSchema>;
368
+ payloadSchema: av.BaseSchema<unknown, import("./json.js").JsonObject>;
369
+ }>>;
370
+ apiContracts: av.ArraySchema<av.ObjectSchema<{
371
+ id: av.StringSchema;
372
+ title: av.StringSchema;
373
+ description: av.OptionalSchema<av.StringSchema>;
374
+ version: av.StringSchema;
375
+ viewId: av.StringSchema;
376
+ methods: av.ArraySchema<av.EnumSchema<readonly ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]>>;
377
+ capabilities: av.ArraySchema<av.StringSchema>;
378
+ permissions: av.ArraySchema<av.StringSchema>;
379
+ }>>;
380
+ m2mRequests: av.ArraySchema<av.ObjectSchema<{
381
+ id: av.StringSchema;
382
+ title: av.StringSchema;
383
+ description: av.OptionalSchema<av.StringSchema>;
384
+ contractId: av.StringSchema;
385
+ version: av.OptionalSchema<av.StringSchema>;
386
+ requiredCapabilities: av.ArraySchema<av.StringSchema>;
387
+ methods: av.ArraySchema<av.EnumSchema<readonly ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]>>;
388
+ permissions: av.ArraySchema<av.StringSchema>;
389
+ optional: av.BoolSchema;
390
+ }>>;
391
+ developerResources: av.ArraySchema<av.ObjectSchema<{
392
+ id: av.StringSchema;
393
+ kind: av.EnumSchema<readonly ["guide", "template", "skill", "example"]>;
394
+ title: av.StringSchema;
395
+ description: av.OptionalSchema<av.StringSchema>;
396
+ mediaType: av.StringSchema;
397
+ language: av.OptionalSchema<av.StringSchema>;
398
+ content: av.StringSchema;
399
+ }>>;
400
+ cacheHints: av.ObjectSchema<{
401
+ metadataTtlSeconds: av.IntSchema;
402
+ }>;
403
+ }>;
404
+ routes: av.ArraySchema<av.ObjectSchema<{
405
+ viewId: av.StringSchema;
406
+ path: av.StringSchema;
407
+ methods: av.ArraySchema<av.EnumSchema<readonly ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]>>;
408
+ paramNames: av.ArraySchema<av.StringSchema>;
409
+ themes: av.ArraySchema<av.StringSchema>;
410
+ hasFragments: av.BoolSchema;
411
+ fragments: av.ArraySchema<av.ObjectSchema<{
412
+ fragmentLocation: av.StringSchema;
413
+ fragmentId: av.StringSchema;
414
+ themes: av.ArraySchema<av.StringSchema>;
415
+ }>>;
416
+ components: av.ArraySchema<av.StringSchema>;
417
+ }>>;
418
+ }>;
419
+ export type BpSchemaOutput = Infer<typeof BpSchemaOutputSchema>;
189
420
  //# sourceMappingURL=manifest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/contracts/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AASrC,eAAO,MAAM,wBAAwB;;;;;;;EAOT,CAAC;AAC7B,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAExE,eAAO,MAAM,4BAA4B;;;;;EAKb,CAAC;AAC7B,MAAM,MAAM,sBAAsB,GAAG,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAEhF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBL,CAAC;AAC7B,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/contracts/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAgBrC,eAAO,MAAM,wBAAwB;;;;;;;EAOT,CAAC;AAC7B,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAExE,eAAO,MAAM,4BAA4B;;;;;EAKb,CAAC;AAC7B,MAAM,MAAM,sBAAsB,GAAG,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAEhF,eAAO,MAAM,uBAAuB;;;;;;;;EAQR,CAAC;AAC7B,MAAM,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAEtE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBL,CAAC;AAC7B,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEhE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;EAaJ,CAAC;AAC7B,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGL,CAAC;AAC7B,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import * as av from "anyvali";
2
2
  import { ConfigSchemaDescriptorSchema } from "./config.js";
3
- import { DeploymentModeSchema, PluginCategorySchema, RenderModeSchema } from "./common.js";
3
+ import { DeploymentModeSchema, HttpMethodSchema, PluginCategorySchema, PluginIdSchema, RenderModeSchema, SemverSchema } from "./common.js";
4
4
  import { JsonObjectSchema } from "./json.js";
5
5
  import { ApiContractDescriptorSchema, M2MRequestDescriptorSchema } from "./m2m.js";
6
6
  import { ViewMetadataSchema, ViewPermissionDefinitionSchema } from "./view.js";
@@ -19,11 +19,21 @@ export const WebhookEventDescriptorSchema = av.object({
19
19
  description: av.optional(av.string()),
20
20
  payloadSchema: JsonObjectSchema
21
21
  }, { unknownKeys: "strip" });
22
+ export const DeveloperResourceSchema = av.object({
23
+ id: av.string().pattern("^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$"),
24
+ kind: av.enum_(["guide", "template", "skill", "example"]),
25
+ title: av.string().minLength(1),
26
+ description: av.optional(av.string()),
27
+ mediaType: av.string().minLength(1).maxLength(128).pattern("^[^\\r\\n]+$"),
28
+ language: av.optional(av.string().minLength(1)),
29
+ content: av.string().minLength(1).maxLength(512 * 1024)
30
+ }, { unknownKeys: "strip" });
22
31
  export const PluginManifestSchema = av.object({
23
- pluginId: av.string().minLength(1),
32
+ protocolVersion: av.literal(1),
33
+ pluginId: PluginIdSchema,
24
34
  title: av.string().minLength(1),
25
35
  description: av.string().minLength(1),
26
- version: av.string().minLength(1),
36
+ version: SemverSchema,
27
37
  category: PluginCategorySchema,
28
38
  deploymentModes: av.array(DeploymentModeSchema).minItems(1),
29
39
  capabilities: av.array(av.string().minLength(1)).default([]),
@@ -36,8 +46,27 @@ export const PluginManifestSchema = av.object({
36
46
  webhooks: av.array(WebhookEventDescriptorSchema).default([]),
37
47
  apiContracts: av.array(ApiContractDescriptorSchema).default([]),
38
48
  m2mRequests: av.array(M2MRequestDescriptorSchema).default([]),
49
+ developerResources: av.array(DeveloperResourceSchema).default([]),
39
50
  cacheHints: av.object({
40
51
  metadataTtlSeconds: av.int().min(0).default(1800)
41
52
  }, { unknownKeys: "strip" }).default({ metadataTtlSeconds: 1800 })
42
53
  }, { unknownKeys: "strip" });
54
+ export const BpSchemaRouteSchema = av.object({
55
+ viewId: av.string().minLength(1),
56
+ path: av.string().minLength(1),
57
+ methods: av.array(HttpMethodSchema).minItems(1),
58
+ paramNames: av.array(av.string().minLength(1)).default([]),
59
+ themes: av.array(av.string().minLength(1)).default([]),
60
+ hasFragments: av.bool().default(false),
61
+ fragments: av.array(av.object({
62
+ fragmentLocation: av.string().minLength(1),
63
+ fragmentId: av.string().minLength(1),
64
+ themes: av.array(av.string().minLength(1)).default([])
65
+ }, { unknownKeys: "strip" })).default([]),
66
+ components: av.array(av.string().minLength(1)).default([])
67
+ }, { unknownKeys: "strip" });
68
+ export const BpSchemaOutputSchema = av.object({
69
+ manifest: PluginManifestSchema,
70
+ routes: av.array(BpSchemaRouteSchema).default([])
71
+ }, { unknownKeys: "strip" });
43
72
  //# sourceMappingURL=manifest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/contracts/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/contracts/manifest.ts"],"names":[],"mappings":"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"}
@@ -421,6 +421,7 @@ export declare const ServiceManifestCacheEntrySchema: av.ObjectSchema<{
421
421
  }>>;
422
422
  m2mRequests: av.ArraySchema<av.AnySchema>;
423
423
  apiContracts: av.ArraySchema<av.AnySchema>;
424
+ developerResources: av.ArraySchema<av.AnySchema>;
424
425
  viewIndex: av.RecordSchema<av.ObjectSchema<{
425
426
  viewId: av.StringSchema;
426
427
  path: av.StringSchema;
@@ -683,6 +684,7 @@ export declare const BetterPortalConfigSchema: av.ObjectSchema<{
683
684
  }>>;
684
685
  m2mRequests: av.ArraySchema<av.AnySchema>;
685
686
  apiContracts: av.ArraySchema<av.AnySchema>;
687
+ developerResources: av.ArraySchema<av.AnySchema>;
686
688
  viewIndex: av.RecordSchema<av.ObjectSchema<{
687
689
  viewId: av.StringSchema;
688
690
  path: av.StringSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"platformConfig.d.ts","sourceRoot":"","sources":["../../src/contracts/platformConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platformConfig.d.ts","sourceRoot":"","sources":["../../src/contracts/platformConfig.ts"],"names":[],"mappings":"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"}