@xemahq/ui-kernel 0.16.2 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist/lib/biome-host/biome-builders.d.ts.map +1 -1
  2. package/dist/lib/biome-host/biome-builders.js +6 -0
  3. package/dist/lib/biome-host/biome-builders.js.map +1 -1
  4. package/dist/lib/biome-host/create-biome-orval-config.d.ts +2 -0
  5. package/dist/lib/biome-host/create-biome-orval-config.d.ts.map +1 -1
  6. package/dist/lib/biome-host/create-biome-orval-config.js +3 -3
  7. package/dist/lib/biome-host/create-biome-orval-config.js.map +1 -1
  8. package/dist/lib/biome-host/define-web-biome.d.ts +2 -2
  9. package/dist/lib/biome-host/define-web-biome.d.ts.map +1 -1
  10. package/dist/lib/biome-host/define-web-biome.js +7 -0
  11. package/dist/lib/biome-host/define-web-biome.js.map +1 -1
  12. package/dist/lib/biome-host/frontend-biome.d.ts +32 -0
  13. package/dist/lib/biome-host/frontend-biome.d.ts.map +1 -1
  14. package/dist/lib/biome-host/frontend-biome.js +79 -0
  15. package/dist/lib/biome-host/frontend-biome.js.map +1 -1
  16. package/dist/session-kit/decisions/DecisionCard.d.ts.map +1 -1
  17. package/dist/session-kit/decisions/DecisionCard.js +52 -8
  18. package/dist/session-kit/decisions/DecisionCard.js.map +1 -1
  19. package/dist/session-kit/decisions/DecisionsQueue.d.ts.map +1 -1
  20. package/dist/session-kit/decisions/DecisionsQueue.js +14 -7
  21. package/dist/session-kit/decisions/DecisionsQueue.js.map +1 -1
  22. package/dist/session-kit/decisions/decision-model.d.ts +24 -1
  23. package/dist/session-kit/decisions/decision-model.d.ts.map +1 -1
  24. package/dist/session-kit/decisions/decision-model.js +71 -0
  25. package/dist/session-kit/decisions/decision-model.js.map +1 -1
  26. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"biome-builders.d.ts","sourceRoot":"","sources":["../../../src/lib/biome-host/biome-builders.ts"],"names":[],"mappings":"AAUA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,WAAW,EAEZ,MAAM,kBAAkB,CAAC;AAG1B,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,aAAa,CAAA;CAAE,CAAC,CAAC;AAe5E,wBAAgB,SAAS,CACvB,QAAQ,EAAE,mBAAmB,EAC7B,QAAQ,GAAE,SAAgB,GACzB,MAAM,SAAS,CAMjB;AAED,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IAKnC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAEhC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAElC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC;IAElC,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;CACtC;AAoBD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,GAAG,aAAa,CAc9E"}
1
+ {"version":3,"file":"biome-builders.d.ts","sourceRoot":"","sources":["../../../src/lib/biome-host/biome-builders.ts"],"names":[],"mappings":"AAUA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAIf,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,WAAW,EAEZ,MAAM,kBAAkB,CAAC;AAG1B,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,aAAa,CAAA;CAAE,CAAC,CAAC;AAe5E,wBAAgB,SAAS,CACvB,QAAQ,EAAE,mBAAmB,EAC7B,QAAQ,GAAE,SAAgB,GACzB,MAAM,SAAS,CAMjB;AAED,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IAKnC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAEhC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAElC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC;IAElC,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;CACtC;AAoBD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,GAAG,aAAa,CAuB9E"}
@@ -1,4 +1,5 @@
1
1
  import { Suspense, createElement, lazy, } from 'react';
2
+ import { assertNavCategoryAccessCoherent } from './frontend-biome';
2
3
  export function lazyRoute(importFn, fallback = null) {
3
4
  const Lazy = lazy(importFn);
4
5
  const LazyRoute = () => createElement(Suspense, { fallback }, createElement(Lazy));
@@ -7,6 +8,11 @@ export function lazyRoute(importFn, fallback = null) {
7
8
  }
8
9
  export function defineSinglePageBiome(spec) {
9
10
  const { route } = spec;
11
+ assertNavCategoryAccessCoherent({
12
+ where: `single-page biome '${spec.id}' route '${route.path}'`,
13
+ category: spec.nav.category,
14
+ access: route.access,
15
+ });
10
16
  const contribution = {
11
17
  path: route.path,
12
18
  projectScoped: route.projectScoped,
@@ -1 +1 @@
1
- {"version":3,"file":"biome-builders.js","sourceRoot":"","sources":["../../../src/lib/biome-host/biome-builders.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,QAAQ,EACR,aAAa,EACb,IAAI,GAGL,MAAM,OAAO,CAAC;AAyBf,MAAM,UAAU,SAAS,CACvB,QAA6B,EAC7B,WAAsB,IAAI;IAE1B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,EAAE,CACrB,aAAa,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;IACpC,OAAO,SAAS,CAAC;AACnB,CAAC;AA+CD,MAAM,UAAU,qBAAqB,CAAC,IAAyB;IAC7D,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,YAAY,GAAsB;QACtC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC;QACtD,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;IACF,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;QACpB,MAAM,EAAE,CAAC,YAAY,CAAC;KACvB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"biome-builders.js","sourceRoot":"","sources":["../../../src/lib/biome-host/biome-builders.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,QAAQ,EACR,aAAa,EACb,IAAI,GAGL,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,+BAA+B,EAAE,MAAM,kBAAkB,CAAC;AAyBnE,MAAM,UAAU,SAAS,CACvB,QAA6B,EAC7B,WAAsB,IAAI;IAE1B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,SAAS,GAAG,GAAG,EAAE,CACrB,aAAa,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;IACpC,OAAO,SAAS,CAAC;AACnB,CAAC;AA+CD,MAAM,UAAU,qBAAqB,CAAC,IAAyB;IAC7D,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAKvB,+BAA+B,CAAC;QAC9B,KAAK,EAAE,sBAAsB,IAAI,CAAC,EAAE,YAAY,KAAK,CAAC,IAAI,GAAG;QAC7D,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ;QAC3B,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC,CAAC;IACH,MAAM,YAAY,GAAsB;QACtC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC;QACtD,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;IACF,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;QACpB,MAAM,EAAE,CAAC,YAAY,CAAC;KACvB,CAAC;AACJ,CAAC"}
@@ -3,10 +3,12 @@ export interface BiomeOrvalConfig {
3
3
  readonly baseUrl: string;
4
4
  getAuthToken(): Promise<string>;
5
5
  getHeaders(): Promise<Record<string, string>>;
6
+ getCorrelationId(): string;
6
7
  onUnauthorized(): Promise<void>;
7
8
  }
8
9
  export interface CreateBiomeOrvalConfigOptions {
9
10
  readonly baseUrl: string;
11
+ readonly getCorrelationId?: () => string;
10
12
  }
11
13
  export declare function createBiomeOrvalConfig(bridge: HostBridge, opts: CreateBiomeOrvalConfigOptions): BiomeOrvalConfig;
12
14
  //# sourceMappingURL=create-biome-orval-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-biome-orval-config.d.ts","sourceRoot":"","sources":["../../../src/lib/biome-host/create-biome-orval-config.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAQhD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9C,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,6BAA6B;IAE5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAoCD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,6BAA6B,GAClC,gBAAgB,CAiBlB"}
1
+ {"version":3,"file":"create-biome-orval-config.d.ts","sourceRoot":"","sources":["../../../src/lib/biome-host/create-biome-orval-config.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAQhD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9C,gBAAgB,IAAI,MAAM,CAAC;IAC3B,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,6BAA6B;IAE5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAYzB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,MAAM,CAAC;CAC1C;AAyDD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,6BAA6B,GAClC,gBAAgB,CAuBlB"}
@@ -1,11 +1,11 @@
1
1
  export function createBiomeOrvalConfig(bridge, opts) {
2
+ const mountCorrelationId = crypto.randomUUID();
2
3
  return {
3
4
  baseUrl: opts.baseUrl,
4
5
  getAuthToken: () => bridge.auth.ensureFreshToken(),
6
+ getCorrelationId: opts.getCorrelationId ?? (() => mountCorrelationId),
5
7
  getHeaders: () => {
6
- const headers = {
7
- 'X-Correlation-Id': crypto.randomUUID(),
8
- };
8
+ const headers = {};
9
9
  const orgId = bridge.auth.getOrgId();
10
10
  if (orgId) {
11
11
  headers['X-Xema-Org-Id'] = orgId;
@@ -1 +1 @@
1
- {"version":3,"file":"create-biome-orval-config.js","sourceRoot":"","sources":["../../../src/lib/biome-host/create-biome-orval-config.ts"],"names":[],"mappings":"AAqEA,MAAM,UAAU,sBAAsB,CACpC,MAAkB,EAClB,IAAmC;IAEnC,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;QAClD,UAAU,EAAE,GAAG,EAAE;YACf,MAAM,OAAO,GAA2B;gBACtC,kBAAkB,EAAE,MAAM,CAAC,UAAU,EAAE;aACxC,CAAC;YACF,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,KAAK,EAAE,CAAC;gBAEV,OAAO,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;YACnC,CAAC;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QACD,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE;KACnD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"create-biome-orval-config.js","sourceRoot":"","sources":["../../../src/lib/biome-host/create-biome-orval-config.ts"],"names":[],"mappings":"AAuGA,MAAM,UAAU,sBAAsB,CACpC,MAAkB,EAClB,IAAmC;IAInC,MAAM,kBAAkB,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAC/C,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;QAClD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC;QACrE,UAAU,EAAE,GAAG,EAAE;YACf,MAAM,OAAO,GAA2B,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,KAAK,EAAE,CAAC;gBAEV,OAAO,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;YACnC,CAAC;YAKD,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QACD,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE;KACnD,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { FrontendBiome, FrontendBiomeFactory, PageChrome, RouteAccess, RouteScope } from './frontend-biome';
1
+ import type { FrontendBiome, FrontendBiomeFactory, NavCategory, PageChrome, RouteAccess, RouteScope } from './frontend-biome';
2
2
  import type { ComponentType } from 'react';
3
3
  export interface WebBiomePage {
4
4
  readonly slug: string;
@@ -7,7 +7,7 @@ export interface WebBiomePage {
7
7
  readonly icon?: ComponentType<{
8
8
  className?: string | undefined;
9
9
  }>;
10
- readonly category?: string;
10
+ readonly category?: NavCategory;
11
11
  readonly scope?: RouteScope;
12
12
  readonly access?: RouteAccess;
13
13
  readonly chrome?: PageChrome;
@@ -1 +1 @@
1
- {"version":3,"file":"define-web-biome.d.ts","sourceRoot":"","sources":["../../../src/lib/biome-host/define-web-biome.ts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EAEpB,UAAU,EACV,WAAW,EAEX,UAAU,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,WAAW,YAAY;IAM3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAOtB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAErB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IAMlE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAS3B,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAM5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAK9B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAE7B,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAKlE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IAEpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAEtC,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAE5C,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAExC,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAE1C,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAE5C,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CAC7D;AA+CD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,qBAAqB,GAC7B,oBAAoB,CAiDtB"}
1
+ {"version":3,"file":"define-web-biome.d.ts","sourceRoot":"","sources":["../../../src/lib/biome-host/define-web-biome.ts"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,WAAW,EAEX,UAAU,EACV,WAAW,EAEX,UAAU,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,WAAW,YAAY;IAM3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAOtB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAErB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IAYlE,QAAQ,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC;IAShC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAM5B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAK9B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAE7B,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAKlE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IAEpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAEtC,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAE5C,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAExC,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IAE1C,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAE5C,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CAC7D;AA+CD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,qBAAqB,GAC7B,oBAAoB,CAyDtB"}
@@ -1,4 +1,5 @@
1
1
  import { lazyRoute } from './biome-builders';
2
+ import { assertNavCategoryAccessCoherent } from './frontend-biome';
2
3
  const DEFAULT_PAGE_CHROME = 'host';
3
4
  function assertPageScopeAccessLocked(biomeId, page) {
4
5
  const scope = page.scope ?? 'org';
@@ -20,6 +21,12 @@ function assertPageScopeAccessLocked(biomeId, page) {
20
21
  export function defineWebBiome(options) {
21
22
  for (const page of options.pages) {
22
23
  assertPageScopeAccessLocked(options.id, page);
24
+ assertNavCategoryAccessCoherent({
25
+ where: `web biome '${options.id}' page '${page.slug}'`,
26
+ category: page.category,
27
+ access: page.access,
28
+ navHidden: page.navHidden === true || page.scope === 'public',
29
+ });
23
30
  }
24
31
  return () => {
25
32
  const navItems = [];
@@ -1 +1 @@
1
- {"version":3,"file":"define-web-biome.js","sourceRoot":"","sources":["../../../src/lib/biome-host/define-web-biome.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define-web-biome.js","sourceRoot":"","sources":["../../../src/lib/biome-host/define-web-biome.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,40 @@ export interface NavItemContribution {
10
10
  }>;
11
11
  readonly category?: string;
12
12
  }
13
+ export declare const NAV_CATEGORY_VALUES: readonly ["primary", "build", "connect", "run", "knowledge", "admin", "operations", "account"];
14
+ export type NavCategory = (typeof NAV_CATEGORY_VALUES)[number];
15
+ export declare const NavCategory: {
16
+ readonly Primary: "primary";
17
+ readonly Build: "build";
18
+ readonly Connect: "connect";
19
+ readonly Run: "run";
20
+ readonly Knowledge: "knowledge";
21
+ readonly Admin: "admin";
22
+ readonly Operations: "operations";
23
+ readonly Account: "account";
24
+ };
25
+ export declare function isNavCategory(value: string): value is NavCategory;
13
26
  export declare const ROUTE_ACCESS_VALUES: readonly ["member", "org-admin", "platform-admin", "public"];
14
27
  export type RouteAccess = (typeof ROUTE_ACCESS_VALUES)[number];
28
+ export interface AccessViewer {
29
+ readonly isOrgAdmin: boolean;
30
+ readonly isPlatformAdmin: boolean;
31
+ }
32
+ export declare function satisfiesRouteAccess(access: RouteAccess, viewer: AccessViewer): boolean;
33
+ export declare const NAV_CATEGORY_REQUIRED_ACCESS: {
34
+ readonly admin: "org-admin";
35
+ readonly operations: "platform-admin";
36
+ };
37
+ export type AdministrativeNavCategory = keyof typeof NAV_CATEGORY_REQUIRED_ACCESS;
38
+ export declare function requiredAccessForNavCategory(category: NavCategory): RouteAccess | undefined;
39
+ export declare function navCategoryForRequiredAccess(access: RouteAccess): AdministrativeNavCategory | undefined;
40
+ export interface NavCategoryAccessSubject {
41
+ readonly where: string;
42
+ readonly category?: string | undefined;
43
+ readonly access?: RouteAccess | undefined;
44
+ readonly navHidden?: boolean | undefined;
45
+ }
46
+ export declare function assertNavCategoryAccessCoherent(subject: NavCategoryAccessSubject): void;
15
47
  export declare const ROUTE_SCOPE_VALUES: readonly ["org", "project", "public"];
16
48
  export type RouteScope = (typeof ROUTE_SCOPE_VALUES)[number];
17
49
  export declare const PAGE_CHROME_VALUES: readonly ["host", "none"];
@@ -1 +1 @@
1
- {"version":3,"file":"frontend-biome.d.ts","sourceRoot":"","sources":["../../../src/lib/biome-host/frontend-biome.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAYtD,MAAM,WAAW,mBAAmB;IAElC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAQvB,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IAUlE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAuBD,eAAO,MAAM,mBAAmB,8DAKtB,CAAC;AAGX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAe/D,eAAO,MAAM,kBAAkB,uCAAwC,CAAC;AAGxE,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAiB7D,eAAO,MAAM,kBAAkB,2BAA4B,CAAC;AAG5D,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D,MAAM,WAAW,iBAAiB;IAEhC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,OAAO,EAAE,MAAM,SAAS,CAAC;IASlC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAMhC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAM9B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;CAC9B;AAQD,MAAM,WAAW,iBAAiB;IAEhC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,QAAQ,CAAC,MAAM,EAAE,MAAM,SAAS,CAAC;IAEjC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAUD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAE5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAE5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAQ7B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAOhE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC/C,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAO/C,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAexC,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,0BAA0B,EAAE,CAAC;CAClE;AAYD,MAAM,WAAW,0BAA0B;IAOzC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAQ5B,QAAQ,CAAC,MAAM,EAAE,MAAM,aAAa,CAAC;QAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACpE;AAaD,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,aAAa,CAAC"}
1
+ {"version":3,"file":"frontend-biome.d.ts","sourceRoot":"","sources":["../../../src/lib/biome-host/frontend-biome.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,88 @@
1
+ export const NAV_CATEGORY_VALUES = [
2
+ 'primary',
3
+ 'build',
4
+ 'connect',
5
+ 'run',
6
+ 'knowledge',
7
+ 'admin',
8
+ 'operations',
9
+ 'account',
10
+ ];
11
+ export const NavCategory = {
12
+ Primary: 'primary',
13
+ Build: 'build',
14
+ Connect: 'connect',
15
+ Run: 'run',
16
+ Knowledge: 'knowledge',
17
+ Admin: 'admin',
18
+ Operations: 'operations',
19
+ Account: 'account',
20
+ };
21
+ export function isNavCategory(value) {
22
+ return NAV_CATEGORY_VALUES.includes(value);
23
+ }
1
24
  export const ROUTE_ACCESS_VALUES = [
2
25
  'member',
3
26
  'org-admin',
4
27
  'platform-admin',
5
28
  'public',
6
29
  ];
30
+ export function satisfiesRouteAccess(access, viewer) {
31
+ switch (access) {
32
+ case 'member':
33
+ return true;
34
+ case 'org-admin':
35
+ return viewer.isOrgAdmin;
36
+ case 'platform-admin':
37
+ return viewer.isPlatformAdmin;
38
+ case 'public':
39
+ return true;
40
+ }
41
+ }
42
+ export const NAV_CATEGORY_REQUIRED_ACCESS = {
43
+ admin: 'org-admin',
44
+ operations: 'platform-admin',
45
+ };
46
+ export function requiredAccessForNavCategory(category) {
47
+ return NAV_CATEGORY_REQUIRED_ACCESS[category];
48
+ }
49
+ export function navCategoryForRequiredAccess(access) {
50
+ return Object.keys(NAV_CATEGORY_REQUIRED_ACCESS).find((key) => NAV_CATEGORY_REQUIRED_ACCESS[key] === access);
51
+ }
52
+ export function assertNavCategoryAccessCoherent(subject) {
53
+ const { where, category, access, navHidden } = subject;
54
+ if (category !== undefined && !isNavCategory(category)) {
55
+ throw new Error(`${where}: unknown menu category '${category}'. Valid categories: ` +
56
+ `${NAV_CATEGORY_VALUES.join(', ')}.`);
57
+ }
58
+ if (navHidden === true) {
59
+ return;
60
+ }
61
+ if (category !== undefined) {
62
+ const required = requiredAccessForNavCategory(category);
63
+ if (required !== undefined && access !== required) {
64
+ const got = access === undefined
65
+ ? `no access tier (which defaults to 'member')`
66
+ : `'${access}'`;
67
+ throw new Error(`${where}: category '${category}' requires access: '${required}', but ` +
68
+ `the surface declares ${got}. The '${category}' menu group promises ` +
69
+ `every item under it is ${required} territory; declare ` +
70
+ `access: '${required}', or move it to a category that matches what ` +
71
+ `its API actually enforces.`);
72
+ }
73
+ }
74
+ if (access !== undefined) {
75
+ const expected = navCategoryForRequiredAccess(access);
76
+ if (expected !== undefined && category !== expected) {
77
+ throw new Error(`${where}: access: '${access}' belongs in the '${expected}' menu ` +
78
+ `category, but the surface declares ` +
79
+ `${category === undefined ? 'no category' : `'${category}'`}. An ` +
80
+ `administrative surface filed elsewhere in the menu is one a reader ` +
81
+ `has no reason to expect. Set category: '${expected}', or mark it ` +
82
+ `nav-hidden if it should not appear in the menu at all.`);
83
+ }
84
+ }
85
+ }
7
86
  export const ROUTE_SCOPE_VALUES = ['org', 'project', 'public'];
8
87
  export const PAGE_CHROME_VALUES = ['host', 'none'];
9
88
  //# sourceMappingURL=frontend-biome.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"frontend-biome.js","sourceRoot":"","sources":["../../../src/lib/biome-host/frontend-biome.ts"],"names":[],"mappings":"AA8DA,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,QAAQ;IACR,WAAW;IACX,gBAAgB;IAChB,QAAQ;CACA,CAAC;AAkBX,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC;AAoBxE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAC"}
1
+ {"version":3,"file":"frontend-biome.js","sourceRoot":"","sources":["../../../src/lib/biome-host/frontend-biome.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DecisionCard.d.ts","sourceRoot":"","sources":["../../../src/session-kit/decisions/DecisionCard.tsx"],"names":[],"mappings":"AAgCA,OAAO,EAAqB,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7E,OAAO,EAUL,KAAK,YAAY,EAClB,MAAM,kBAAkB,CAAC;AAK1B,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAEhC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAE1D,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAEhD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAE1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAE1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAaD,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,UAAU,EACV,MAAc,EACd,KAAY,EACZ,IAAI,EACJ,OAAe,GAChB,EAAE,iBAAiB,GAAG,YAAY,CAoVlC"}
1
+ {"version":3,"file":"DecisionCard.d.ts","sourceRoot":"","sources":["../../../src/session-kit/decisions/DecisionCard.tsx"],"names":[],"mappings":"AAgDA,OAAO,EAAqB,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7E,OAAO,EAeL,KAAK,YAAY,EAClB,MAAM,kBAAkB,CAAC;AAK1B,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAEhC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAE1D,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAEhD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAE1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAE1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAaD,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,UAAU,EACV,MAAc,EACd,KAAY,EACZ,IAAI,EACJ,OAAe,GAChB,EAAE,iBAAiB,GAAG,YAAY,CAsclC"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { isSafeDecisionDeepLink } from '@xemahq/kernel-contracts/decision';
3
3
  import { useMemo, useState } from 'react';
4
- import { buildDecisionTrail, decisionToneColor, describeDecisionOptionEffect, describeDecisionOutcome, describeDecisionStatus, formatDecisionTime, hasQuorum, isOptionCommittable, } from './decision-model';
4
+ import { buildDecisionTrail, decisionToneColor, describeDecisionOptionEffect, describeDecisionOutcome, describeDecisionStatus, describeEscalation, describeOptionQuorum, describeReplyPolicy, describeUnanswerable, formatDecisionTime, hasAnyQuorum, isOptionCommittable, opensReplyByDefault, } from './decision-model';
5
5
  import { DecisionReplyForm } from './DecisionReplyForm';
6
6
  import { missingRequiredFields, parseReplySchema } from './reply-schema';
7
7
  function safeHref(value) {
@@ -15,7 +15,11 @@ export function DecisionCard({ decision, onCommit, onRetract, onDefer, onOpenLin
15
15
  const accent = decisionToneColor(presentation.tone);
16
16
  const trail = useMemo(() => buildDecisionTrail(decision), [decision]);
17
17
  const deepLink = safeHref(decision.deepLink);
18
- const [openOptionKey, setOpenOptionKey] = useState(null);
18
+ const escalation = describeEscalation(decision);
19
+ const policySentence = describeReplyPolicy(decision.replyPolicy);
20
+ const unanswerable = describeUnanswerable(decision);
21
+ const [openOptionKey, setOpenOptionKey] = useState(() => decision.options.find((o) => opensReplyByDefault(decision, o))?.key ??
22
+ null);
19
23
  const [replyDrafts, setReplyDrafts] = useState({});
20
24
  const [rawDrafts, setRawDrafts] = useState({});
21
25
  const [notes, setNotes] = useState({});
@@ -79,7 +83,23 @@ export function DecisionCard({ decision, onCommit, onRetract, onDefer, onOpenLin
79
83
  gap: 8,
80
84
  marginBottom: 6,
81
85
  flexWrap: 'wrap',
82
- }, children: [_jsx("span", { className: "cap", style: { color: accent, letterSpacing: '0.1em', fontSize: 10 }, children: presentation.label }), _jsx("span", { className: "mono", style: { fontSize: 10.5, color: 'hsl(var(--ink-4))' }, children: decision.producerService }), _jsx("span", { style: { flex: 1 } }), decision.deadlineAt ? (_jsxs("span", { style: { fontSize: 11, color: 'hsl(var(--ink-3))' }, children: ["by ", formatDecisionTime(decision.deadlineAt)] })) : null] }), _jsx("h3", { className: "serif", style: {
86
+ }, children: [_jsx("span", { className: "cap", style: {
87
+ color: accent,
88
+ letterSpacing: '0.1em',
89
+ fontSize: 10,
90
+ background: 'color-mix(in oklch, currentColor 12%, transparent)',
91
+ border: '1px solid color-mix(in oklch, currentColor 22%, transparent)',
92
+ borderRadius: 999,
93
+ padding: '1px 7px',
94
+ }, children: presentation.label }), escalation ? (_jsx("span", { className: "cap", title: escalation.detail, style: {
95
+ color: 'hsl(var(--warning))',
96
+ letterSpacing: '0.1em',
97
+ fontSize: 10,
98
+ background: 'color-mix(in oklch, currentColor 12%, transparent)',
99
+ border: '1px solid color-mix(in oklch, currentColor 26%, transparent)',
100
+ borderRadius: 999,
101
+ padding: '1px 7px',
102
+ }, children: escalation.label })) : null, _jsx("span", { className: "mono", style: { fontSize: 10.5, color: 'hsl(var(--ink-4))' }, children: decision.producerService }), _jsx("span", { style: { flex: 1 } }), decision.deadlineAt ? (_jsxs("span", { style: { fontSize: 11, color: 'hsl(var(--ink-3))' }, children: ["by ", formatDecisionTime(decision.deadlineAt)] })) : null] }), _jsx("h3", { className: "serif", style: {
83
103
  margin: 0,
84
104
  fontSize: 15,
85
105
  fontWeight: 600,
@@ -89,7 +109,16 @@ export function DecisionCard({ decision, onCommit, onRetract, onDefer, onOpenLin
89
109
  margin: '2px 0 0',
90
110
  fontSize: 12.5,
91
111
  color: 'hsl(var(--ink-3))',
92
- }, children: decision.summary })) : null, slot] }), !compact && decision.facts.length > 0 ? (_jsx("dl", { style: {
112
+ }, children: decision.summary })) : null, slot] }), policySentence !== null ||
113
+ escalation !== null ||
114
+ hasAnyQuorum(decision) ? (_jsxs("div", { style: {
115
+ padding: '8px 14px',
116
+ borderBottom: '1px solid hsl(var(--rule))',
117
+ background: 'hsl(var(--paper) / 0.5)',
118
+ display: 'flex',
119
+ flexDirection: 'column',
120
+ gap: 3,
121
+ }, children: [policySentence !== null ? (_jsx("span", { style: { fontSize: 12, color: 'hsl(var(--ink-2))' }, children: policySentence })) : null, policySentence === null && hasAnyQuorum(decision) ? (_jsx("span", { style: { fontSize: 12, color: 'hsl(var(--ink-2))' }, children: "More than one answer is needed here \u2014 yours joins the others." })) : null, escalation !== null ? (_jsx("span", { style: { fontSize: 12, color: 'hsl(var(--warning))' }, children: escalation.detail })) : null] })) : null, !compact && decision.facts.length > 0 ? (_jsx("dl", { style: {
93
122
  margin: 0,
94
123
  padding: '10px 14px',
95
124
  display: 'grid',
@@ -101,7 +130,12 @@ export function DecisionCard({ decision, onCommit, onRetract, onDefer, onOpenLin
101
130
  }, children: decision.facts.map((fact, i) => {
102
131
  const href = safeHref(fact.href);
103
132
  return (_jsx(FactRow, { label: fact.label, value: fact.value, href: href, onOpenLink: onOpenLink }, `${fact.label}:${i}`));
104
- }) })) : null, deepLink ? (_jsx("div", { style: { padding: '8px 14px 0' }, children: _jsx(LinkAffordance, { href: deepLink, label: "Open where this came from", onOpenLink: onOpenLink }) })) : null, _jsx("div", { style: {
133
+ }) })) : null, deepLink ? (_jsx("div", { style: { padding: '8px 14px 0' }, children: _jsx(LinkAffordance, { href: deepLink, label: "Open where this came from", onOpenLink: onOpenLink }) })) : null, unanswerable !== null ? (_jsx("p", { style: {
134
+ margin: 0,
135
+ padding: '8px 14px 0',
136
+ fontSize: 12,
137
+ color: 'hsl(var(--ink-3))',
138
+ }, children: unanswerable })) : null, _jsx("div", { style: {
105
139
  padding: '10px 14px',
106
140
  display: 'flex',
107
141
  flexDirection: 'column',
@@ -175,6 +209,8 @@ function OptionRow({ decision, option, isBusy, expanded, onToggle, note, onNoteC
175
209
  const parsed = useMemo(() => parseReplySchema(option.replySchema), [option.replySchema]);
176
210
  const committable = isOptionCommittable(decision, option);
177
211
  const settled = decision.settledOptionKey === option.key;
212
+ const quorum = describeOptionQuorum(option);
213
+ const soleReplyOption = opensReplyByDefault(decision, option);
178
214
  return (_jsxs("div", { style: {
179
215
  border: `1px solid ${settled ? 'hsl(var(--success) / 0.35)' : 'hsl(var(--rule))'}`,
180
216
  borderRadius: 9,
@@ -185,11 +221,15 @@ function OptionRow({ decision, option, isBusy, expanded, onToggle, note, onNoteC
185
221
  alignItems: 'flex-start',
186
222
  gap: 10,
187
223
  flexWrap: 'wrap',
188
- }, children: [_jsxs("div", { style: { flex: 1, minWidth: 160 }, children: [_jsx("div", { style: { fontSize: 13, fontWeight: 600, color: 'hsl(var(--ink))' }, children: option.label }), _jsxs("div", { style: { fontSize: 11.5, color: 'hsl(var(--ink-3))' }, children: [describeDecisionOptionEffect(option.effect), hasQuorum(option) ? (_jsxs(_Fragment, { children: [' · ', _jsxs("span", { className: "mono", children: [option.commitCount, "/", option.commitThreshold] }), ' ', "committed"] })) : null] }), option.description ? (_jsx("p", { style: {
224
+ }, children: [_jsxs("div", { style: { flex: 1, minWidth: 160 }, children: [_jsx("div", { style: { fontSize: 13, fontWeight: 600, color: 'hsl(var(--ink))' }, children: option.label }), _jsx("div", { style: { fontSize: 11.5, color: 'hsl(var(--ink-3))' }, children: describeDecisionOptionEffect(option.effect) }), quorum !== null ? (_jsx("div", { className: "mono", style: {
225
+ fontSize: 11,
226
+ color: 'hsl(var(--primary))',
227
+ marginTop: 2,
228
+ }, children: quorum })) : null, option.description ? (_jsx("p", { style: {
189
229
  margin: '3px 0 0',
190
230
  fontSize: 12,
191
231
  color: 'hsl(var(--ink-3))',
192
- }, children: option.description })) : null] }), parsed !== null ? (_jsx("button", { type: "button", onClick: onToggle, "aria-expanded": expanded, style: {
232
+ }, children: option.description })) : null] }), parsed !== null && !soleReplyOption ? (_jsx("button", { type: "button", onClick: onToggle, "aria-expanded": expanded, style: {
193
233
  background: 'transparent',
194
234
  border: '1px solid hsl(var(--rule))',
195
235
  borderRadius: 7,
@@ -213,7 +253,11 @@ function OptionRow({ decision, option, isBusy, expanded, onToggle, note, onNoteC
213
253
  fontWeight: 550,
214
254
  cursor: committable && !isBusy ? 'pointer' : 'not-allowed',
215
255
  opacity: committable && !isBusy ? 1 : 0.6,
216
- }, children: option.committedByYou ? 'Your answer' : option.label })] }), option.executable ? (_jsx(ExecutablePreview, { capabilityRef: option.capabilityRef ?? null, capabilityArguments: option.capabilityArguments ?? null })) : null, parsed !== null && expanded ? (_jsx("div", { style: { marginTop: 9 }, children: _jsx(DecisionReplyForm, { parsed: parsed, value: replyDraft, onChange: onReplyDraftChange, rawText: rawDraft, onRawTextChange: onRawDraftChange, disabled: !committable || isBusy }) })) : null, expanded ? (_jsx("input", { type: "text", value: note, disabled: !committable || isBusy, placeholder: "Add a note (optional)", onChange: (e) => onNoteChange(e.target.value), style: {
256
+ }, children: option.committedByYou
257
+ ? 'Your answer'
258
+ : soleReplyOption
259
+ ? 'Send answer'
260
+ : option.label })] }), option.executable ? (_jsx(ExecutablePreview, { capabilityRef: option.capabilityRef ?? null, capabilityArguments: option.capabilityArguments ?? null })) : null, parsed !== null && expanded ? (_jsx("div", { style: { marginTop: 9 }, children: _jsx(DecisionReplyForm, { parsed: parsed, value: replyDraft, onChange: onReplyDraftChange, rawText: rawDraft, onRawTextChange: onRawDraftChange, disabled: !committable || isBusy }) })) : null, expanded ? (_jsx("input", { type: "text", value: note, disabled: !committable || isBusy, placeholder: "Add a note (optional)", onChange: (e) => onNoteChange(e.target.value), style: {
217
261
  marginTop: 8,
218
262
  width: '100%',
219
263
  boxSizing: 'border-box',
@@ -1 +1 @@
1
- {"version":3,"file":"DecisionCard.js","sourceRoot":"","sources":["../../../src/session-kit/decisions/DecisionCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DecisionCard.js","sourceRoot":"","sources":["../../../src/session-kit/decisions/DecisionCard.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DecisionsQueue.d.ts","sourceRoot":"","sources":["../../../src/session-kit/decisions/DecisionsQueue.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAW,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnE,OAAO,EAAgB,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC1D,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACpE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7C,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAErC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAE7B,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC;IAEhC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IAEjC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,cAAc,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,SAAS,EACT,OAAO,EACP,UAAU,EACV,OAAO,EACP,MAAM,EACN,SAAiB,EACjB,UAAU,EACV,OAAe,EACf,UAAU,EACV,OAAe,EACf,OAAe,GAChB,EAAE,mBAAmB,GAAG,YAAY,CAuFpC"}
1
+ {"version":3,"file":"DecisionsQueue.d.ts","sourceRoot":"","sources":["../../../src/session-kit/decisions/DecisionsQueue.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAW,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnE,OAAO,EAAgB,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC1D,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACpE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7C,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAErC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAE7B,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC;IAEhC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IAEjC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,cAAc,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,SAAS,EACT,OAAO,EACP,UAAU,EACV,OAAO,EACP,MAAM,EACN,SAAiB,EACjB,UAAU,EACV,OAAe,EACf,UAAU,EACV,OAAe,EACf,OAAe,GAChB,EAAE,mBAAmB,GAAG,YAAY,CAgHpC"}
@@ -10,13 +10,20 @@ export function DecisionsQueue({ decisions, onCommit, onRetract, onDefer, onOpen
10
10
  function renderCard(decision) {
11
11
  return (_jsx(DecisionCard, { decision: decision, onCommit: onCommit, ...(onRetract ? { onRetract } : {}), ...(onDefer ? { onDefer } : {}), ...(onOpenLink ? { onOpenLink } : {}), isBusy: busy.has(decision.id), error: errors?.[decision.id] ?? null, compact: compact }, decision.id));
12
12
  }
13
- return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 12 }, children: [groups
14
- ? groups.map(([producer, items]) => (_jsxs("section", { children: [_jsx("h4", { className: "cap", style: {
15
- margin: '0 0 6px',
16
- fontSize: 10,
17
- letterSpacing: '0.1em',
18
- color: 'hsl(var(--ink-4))',
19
- }, children: producer }), _jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: 10 }, children: items.map(renderCard) })] }, producer)))
13
+ return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 22 }, children: [groups
14
+ ? groups.map(([producer, items]) => (_jsxs("section", { children: [_jsxs("div", { style: {
15
+ display: 'flex',
16
+ alignItems: 'baseline',
17
+ gap: 8,
18
+ margin: '0 0 8px',
19
+ paddingBottom: 5,
20
+ borderBottom: '1px solid hsl(var(--rule))',
21
+ }, children: [_jsx("h4", { className: "cap", style: {
22
+ margin: 0,
23
+ fontSize: 10,
24
+ letterSpacing: '0.1em',
25
+ color: 'hsl(var(--ink-3))',
26
+ }, children: producer }), _jsx("span", { className: "mono", style: { fontSize: 10, color: 'hsl(var(--ink-4))' }, children: items.length })] }), _jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: 10 }, children: items.map(renderCard) })] }, producer)))
20
27
  : decisions.map(renderCard), hasMore && onLoadMore ? (_jsx("button", { type: "button", onClick: onLoadMore, disabled: isLoading, style: {
21
28
  alignSelf: 'flex-start',
22
29
  background: 'transparent',
@@ -1 +1 @@
1
- {"version":3,"file":"DecisionsQueue.js","sourceRoot":"","sources":["../../../src/session-kit/decisions/DecisionsQueue.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DecisionsQueue.js","sourceRoot":"","sources":["../../../src/session-kit/decisions/DecisionsQueue.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { DecisionDeadlineEffect, DecisionKind, DecisionOptionEffect, DecisionOutcome, DecisionSettlement, DecisionStatus } from '@xemahq/kernel-contracts/decision';
1
+ import type { AbstainTreatment, DecisionDeadlineEffect, DecisionKind, DecisionOptionEffect, DecisionOutcome, DecisionSettlement, DecisionStatus, ReplyPolicyKind } from '@xemahq/kernel-contracts/decision';
2
2
  export type WireValueOf<E extends string> = `${E}`;
3
3
  export type DecisionStatusValue = WireValueOf<DecisionStatus>;
4
4
  export type DecisionOutcomeValue = WireValueOf<DecisionOutcome>;
@@ -6,6 +6,13 @@ export type DecisionKindValue = WireValueOf<DecisionKind>;
6
6
  export type DecisionOptionEffectValue = WireValueOf<DecisionOptionEffect>;
7
7
  export type DecisionSettlementValue = WireValueOf<DecisionSettlement>;
8
8
  export type DecisionDeadlineEffectValue = WireValueOf<DecisionDeadlineEffect>;
9
+ export type ReplyPolicyKindValue = WireValueOf<ReplyPolicyKind>;
10
+ export type AbstainTreatmentValue = WireValueOf<AbstainTreatment>;
11
+ export interface DecisionReplyPolicyView {
12
+ readonly kind: ReplyPolicyKindValue;
13
+ readonly m?: number;
14
+ readonly abstainTreatment?: AbstainTreatmentValue;
15
+ }
9
16
  export interface DecisionFactView {
10
17
  readonly label: string;
11
18
  readonly value: string;
@@ -50,6 +57,9 @@ export interface DecisionView {
50
57
  readonly deadlineAt?: string | null;
51
58
  readonly deadlineEffect: DecisionDeadlineEffectValue;
52
59
  readonly deferredUntil?: string | null;
60
+ readonly replyPolicy?: DecisionReplyPolicyView | null;
61
+ readonly escalationLevel: number;
62
+ readonly escalationLevelCount: number;
53
63
  readonly options: readonly DecisionOptionView[];
54
64
  readonly commits: readonly DecisionCommitView[];
55
65
  readonly createdAt: string;
@@ -72,6 +82,19 @@ export declare function decisionToneColor(tone: DecisionTone): string;
72
82
  export declare function describeDecisionOutcome(outcome: DecisionOutcomeValue): string;
73
83
  export declare function describeDecisionOptionEffect(effect: DecisionOptionEffectValue): string;
74
84
  export declare function hasQuorum(option: DecisionOptionView): boolean;
85
+ export declare function describeOptionQuorum(option: DecisionOptionView): string | null;
86
+ export declare function hasAnyQuorum(decision: DecisionView): boolean;
87
+ export declare function describeReplyPolicy(policy: DecisionReplyPolicyView | null | undefined): string | null;
88
+ export interface DecisionEscalationView {
89
+ readonly level: number;
90
+ readonly levelCount: number;
91
+ readonly label: string;
92
+ readonly detail: string;
93
+ readonly isFinalLevel: boolean;
94
+ }
95
+ export declare function describeEscalation(decision: DecisionView): DecisionEscalationView | null;
96
+ export declare function describeUnanswerable(decision: DecisionView): string | null;
97
+ export declare function opensReplyByDefault(decision: DecisionView, option: DecisionOptionView): boolean;
75
98
  export declare function isOptionCommittable(decision: DecisionView, option: DecisionOptionView): boolean;
76
99
  export declare function formatDecisionTime(iso: string): string;
77
100
  export interface DecisionTrailEntry {
@@ -1 +1 @@
1
- {"version":3,"file":"decision-model.d.ts","sourceRoot":"","sources":["../../../src/session-kit/decisions/decision-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decision-model.d.ts","sourceRoot":"","sources":["../../../src/session-kit/decisions/decision-model.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,77 @@ export function describeDecisionOptionEffect(effect) {
49
49
  export function hasQuorum(option) {
50
50
  return option.commitThreshold > 1;
51
51
  }
52
+ export function describeOptionQuorum(option) {
53
+ if (!hasQuorum(option)) {
54
+ return null;
55
+ }
56
+ const remaining = option.commitThreshold - option.commitCount;
57
+ if (remaining <= 0) {
58
+ return `${option.commitCount} of ${option.commitThreshold} — the quorum is met`;
59
+ }
60
+ return `${option.commitCount} of ${option.commitThreshold} · ${remaining === 1 ? '1 more answer needed' : `${remaining} more answers needed`}`;
61
+ }
62
+ export function hasAnyQuorum(decision) {
63
+ return decision.options.some(hasQuorum);
64
+ }
65
+ const REPLY_POLICY_SENTENCE = {
66
+ single: () => 'The first answer settles this.',
67
+ any_of: () => 'Any one of the people asked can settle this.',
68
+ all_of: () => 'Everyone asked has to answer before this settles.',
69
+ m_of_n: (policy) => policy.m === undefined
70
+ ?
71
+ 'A quorum of answers is needed before this settles.'
72
+ : `${policy.m} answers are needed before this settles.`,
73
+ };
74
+ export function describeReplyPolicy(policy) {
75
+ if (policy === null || policy === undefined) {
76
+ return null;
77
+ }
78
+ const sentence = REPLY_POLICY_SENTENCE[policy.kind];
79
+ const base = sentence === undefined ? policy.kind : sentence(policy);
80
+ return policy.abstainTreatment === 'reject_implicit'
81
+ ? `${base} An abstention counts against it.`
82
+ : base;
83
+ }
84
+ export function describeEscalation(decision) {
85
+ const { escalationLevel: level, escalationLevelCount: levelCount } = decision;
86
+ if (level <= 0) {
87
+ return null;
88
+ }
89
+ const isFinalLevel = level >= levelCount;
90
+ return {
91
+ level,
92
+ levelCount,
93
+ label: levelCount > 0
94
+ ? `Escalated · step ${level} of ${levelCount}`
95
+ : `Escalated · step ${level}`,
96
+ detail: isFinalLevel
97
+ ? 'An earlier group did not answer in time. This is the last step of the chain — there is nobody left to escalate to.'
98
+ : 'An earlier group did not answer in time, so this was passed to you.',
99
+ isFinalLevel,
100
+ };
101
+ }
102
+ const UNANSWERABLE_REASON = {
103
+ OPEN: 'This is not accepting an answer right now.',
104
+ DEFERRED: 'This is not accepting an answer right now.',
105
+ LAPSED: 'This is not accepting an answer right now.',
106
+ COMMITTED: 'This has been answered. Nothing further is needed from you.',
107
+ EXPIRED: 'The window closed before anyone answered — no judgement was recorded.',
108
+ CLOSED: 'The service that raised this closed it. It no longer needs an answer.',
109
+ };
110
+ export function describeUnanswerable(decision) {
111
+ if (decision.answerable) {
112
+ return null;
113
+ }
114
+ return (UNANSWERABLE_REASON[decision.status] ??
115
+ 'This is not accepting an answer right now.');
116
+ }
117
+ export function opensReplyByDefault(decision, option) {
118
+ return (decision.options.length === 1 &&
119
+ decision.options[0]?.key === option.key &&
120
+ option.replySchema !== null &&
121
+ option.replySchema !== undefined);
122
+ }
52
123
  export function isOptionCommittable(decision, option) {
53
124
  return decision.answerable && !option.committedByYou;
54
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"decision-model.js","sourceRoot":"","sources":["../../../src/session-kit/decisions/decision-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decision-model.js","sourceRoot":"","sources":["../../../src/session-kit/decisions/decision-model.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xemahq/ui-kernel",
3
- "version": "0.16.2",
3
+ "version": "0.18.0",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "description": "Host-framework-agnostic UI kernel for the Xema OS. Defines the SystemBus orchestration contract (capability.invoke, cross-biome intents, command palette, xema:// deeplinks, window manager) AND the biome-host contract surface (FrontendBiome/FrontendBiomeFactory, HostBridge, the singleton biomeRegistry, session contributions) that every frontend biome composes against. No Vite, Next.js, or React-Router — React itself IS allowed as the shared component model (the contracts traffic in ReactNode/ComponentType and a React context). Concrete host adapters (router/auth/toast wiring) live in separate packages that consume this kernel. The SystemBus is pure orchestration: it never authorizes, the backend capability-router enforces all policy.",
@@ -74,7 +74,7 @@
74
74
  "@types/node": "25.2.3",
75
75
  "@types/react": "^18.3.30",
76
76
  "@types/react-dom": "^18.3.7",
77
- "@xemahq/kernel-contracts": "^16.0.0",
77
+ "@xemahq/kernel-contracts": "^19.3.0",
78
78
  "prettier": "3.6.2",
79
79
  "react": "^18.3.1",
80
80
  "react-dom": "^18.3.1",