@nonoun/native-ai 1.0.19 → 1.0.23

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.
@@ -1 +1 @@
1
- {"version":3,"file":"a2ui-element.d.ts","sourceRoot":"","sources":["../../src/a2ui/a2ui-element.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,aAAa,EAA+C,MAAM,mBAAmB,CAAC;AAa/F,OAAO,8BAA8B,CAAC;AAqFtC,qBAAa,KAAM,SAAQ,aAAa;;IACtC,MAAM,CAAC,kBAAkB,WAAc;IAyDvC,IAAI,MAAM,IAAI,MAAM,CAA+B;IACnD,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAKrB;IAID,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IASpF,OAAO,IAAI,IAAI;IACf,IAAI,IAAI,IAAI;IACZ,QAAQ,IAAI,IAAI;IAChB,KAAK,IAAI,IAAI;IAIb,KAAK,IAAI,IAAI;IAwJb,QAAQ,IAAI,IAAI;CAu3CjB"}
1
+ {"version":3,"file":"a2ui-element.d.ts","sourceRoot":"","sources":["../../src/a2ui/a2ui-element.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,aAAa,EAA+C,MAAM,mBAAmB,CAAC;AAa/F,OAAO,8BAA8B,CAAC;AAqFtC,qBAAa,KAAM,SAAQ,aAAa;;IACtC,MAAM,CAAC,kBAAkB,WAAc;IAyDvC,IAAI,MAAM,IAAI,MAAM,CAA+B;IACnD,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAKrB;IAID,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IASpF,OAAO,IAAI,IAAI;IACf,IAAI,IAAI,IAAI;IACZ,QAAQ,IAAI,IAAI;IAChB,KAAK,IAAI,IAAI;IAIb,KAAK,IAAI,IAAI;IAwJb,QAAQ,IAAI,IAAI;CAq3CjB"}
@@ -1,5 +1,5 @@
1
- export { A2UIAdapter, createA2UIAdapter, SurfaceManager, createSurfaceManager, resolveJsonPointer, setJsonPointer, a2uiToUINode, uiNodeToA2UI, conversionToPlan, resolveNativeTag, resolveA2UIType, COMPONENT_MAP, getSupportedTypes, textVariantTag, textFieldInputType, dateTimeInputType, isDataBinding, isCreateSurface, isUpdateComponents, isUpdateDataModel, isDeleteSurface, isCatalogRequest, isCatalogResponse, isActionMessage, isErrorMessage, parseServerMessage, WebSocketTransport, SSETransport, createWebSocketTransport, createSSETransport, } from './protocol/index.ts';
2
- export type { A2UIAdapterOptions, SurfaceState, ConversionResult, DataBindingEntry, ToUINodeOptions, ToA2UIOptions, ComponentMapping, ChildStrategy, A2UIProtocolVersion, A2UIServerMessage, A2UICreateSurface, A2UIUpdateComponents, A2UIUpdateDataModel, A2UIDeleteSurface, A2UICatalogRequest, A2UICatalogResponse, A2UIClientMessage, A2UIActionMessage, A2UIErrorMessage, A2UIComponent, A2UIComponentAction, A2UIDataBinding, A2UIStandardType, TransportState, TransportEvents, WebSocketTransportOptions, SSETransportOptions, } from './protocol/index.ts';
1
+ export { A2UIAdapter, createA2UIAdapter, SurfaceManager, createSurfaceManager, resolveJsonPointer, setJsonPointer, a2uiToUINode, uiNodeToA2UI, conversionToPlan, ComponentRegistry, defaultRegistry, resolveNativeTag, resolveA2UIType, COMPONENT_MAP, getSupportedTypes, getComponentCategory, getCompatibleTypes, textVariantTag, textFieldInputType, dateTimeInputType, CompositionRegistry, defaultCompositionRegistry, COMPOSITION_MAP, resolveComponent, isDataBinding, isCreateSurface, isUpdateComponents, isUpdateDataModel, isDeleteSurface, isCatalogRequest, isCatalogResponse, isActionMessage, isErrorMessage, parseServerMessage, WebSocketTransport, SSETransport, createWebSocketTransport, createSSETransport, } from './protocol/index.ts';
2
+ export type { A2UIAdapterOptions, SurfaceState, ConversionResult, DataBindingEntry, ToUINodeOptions, ToA2UIOptions, ComponentMapping, ChildStrategy, RegistrySnapshot, EventSpec, PropertySpec, MethodSpec, CompositionSpec, CompositionTemplate, TemplateNode, PropDelegation, StateProjection, EventBubble, CompositionGap, A2UIProtocolVersion, A2UIServerMessage, A2UICreateSurface, A2UIUpdateComponents, A2UIUpdateDataModel, A2UIDeleteSurface, A2UICatalogRequest, A2UICatalogResponse, A2UIClientMessage, A2UIActionMessage, A2UIErrorMessage, A2UIComponent, A2UIComponentAction, A2UIDataBinding, A2UIStandardType, TransportState, TransportEvents, WebSocketTransportOptions, SSETransportOptions, } from './protocol/index.ts';
3
3
  export type { A2UIKernelBridge, UINode, UIPlan, PatchOp, UIPatch, PlanResult, CommandSource, Command, CommandFilter, CommandHandler, } from './protocol/kernel-bridge.ts';
4
4
  export { installA2UI } from './install.ts';
5
5
  export { NA2UI } from './a2ui-element.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/a2ui/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EAAE,iBAAiB,EAC9B,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,cAAc,EACxE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAC5C,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,EAC1H,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EACrE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EACpD,eAAe,EAAE,cAAc,EAAE,kBAAkB,EACnD,kBAAkB,EAAE,YAAY,EAAE,wBAAwB,EAAE,kBAAkB,GAC/E,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,kBAAkB,EAAE,YAAY,EAChC,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAClE,gBAAgB,EAAE,aAAa,EAC/B,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,oBAAoB,EAC/E,mBAAmB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,mBAAmB,EAC/E,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EACtD,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,gBAAgB,EACrE,cAAc,EAAE,eAAe,EAAE,yBAAyB,EAAE,mBAAmB,GAChF,MAAM,qBAAqB,CAAC;AAG7B,YAAY,EACV,gBAAgB,EAChB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAC5C,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,GACtD,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG1C,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/a2ui/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EAAE,iBAAiB,EAC9B,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,cAAc,EACxE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAC5C,iBAAiB,EAAE,eAAe,EAClC,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,EACpK,mBAAmB,EAAE,0BAA0B,EAAE,eAAe,EAAE,gBAAgB,EAClF,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EACrE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EACpD,eAAe,EAAE,cAAc,EAAE,kBAAkB,EACnD,kBAAkB,EAAE,YAAY,EAAE,wBAAwB,EAAE,kBAAkB,GAC/E,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,kBAAkB,EAAE,YAAY,EAChC,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAClE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EACtF,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAChH,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,oBAAoB,EAC/E,mBAAmB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,mBAAmB,EAC/E,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EACtD,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,gBAAgB,EACrE,cAAc,EAAE,eAAe,EAAE,yBAAyB,EAAE,mBAAmB,GAChF,MAAM,qBAAqB,CAAC;AAG7B,YAAY,EACV,gBAAgB,EAChB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAC5C,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,GACtD,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG1C,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -10,6 +10,23 @@
10
10
  */
11
11
  import type { Signal } from '@nonoun/native-ui';
12
12
  export type ChildStrategy = 'children' | 'textContent' | 'slot-label' | 'none';
13
+ export interface EventSpec {
14
+ readonly event: string;
15
+ readonly detail?: Readonly<Record<string, string>>;
16
+ readonly description: string;
17
+ }
18
+ export interface PropertySpec {
19
+ readonly attr: string;
20
+ readonly type: string;
21
+ readonly reactive?: boolean;
22
+ readonly note?: string;
23
+ }
24
+ export interface MethodSpec {
25
+ readonly name: string;
26
+ readonly params?: Readonly<Record<string, string>>;
27
+ readonly returns?: string;
28
+ readonly description: string;
29
+ }
13
30
  export interface ComponentMapping {
14
31
  readonly a2uiType: string;
15
32
  readonly nativeTag: string;
@@ -21,6 +38,12 @@ export interface ComponentMapping {
21
38
  readonly variantMap?: Readonly<Record<string, string>>;
22
39
  /** The native-ui event name that maps to A2UI action */
23
40
  readonly actionEvent?: string;
41
+ /** Full event surface — supersedes actionEvent when present. */
42
+ readonly events?: readonly EventSpec[];
43
+ /** Full property surface — supersedes propertyMap when present. */
44
+ readonly properties?: readonly PropertySpec[];
45
+ /** Imperative methods on the rendered element. */
46
+ readonly methods?: readonly MethodSpec[];
24
47
  }
25
48
  export interface RegistrySnapshot {
26
49
  readonly mappings: ComponentMapping[];
@@ -1 +1 @@
1
- {"version":3,"file":"a2ui-component-map.d.ts","sourceRoot":"","sources":["../../../src/a2ui/protocol/a2ui-component-map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"a2ui-component-map.d.ts","sourceRoot":"","sources":["../../../src/a2ui/protocol/a2ui-component-map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAIhD,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,aAAa,GAAG,YAAY,GAAG,MAAM,CAAC;AAI/E,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAID,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9D,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxD,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,wDAAwD;IACxD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,gEAAgE;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;IACvC,mEAAmE;IACnE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC9C,kDAAkD;IAClD,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CAC1C;AAID,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7C;AAID,qBAAa,iBAAiB;;gBAMhB,QAAQ,EAAE,SAAS,gBAAgB,EAAE,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAYhG,IAAI,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,CAA0B;IAIvD,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAC/C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAC1B,IAAI,IAAI,IAAI,MAAM,CAA+B;IACjD,IAAI,IAAI,gBAAgB,CAAC,MAAM,CAAC;IAChC,MAAM,IAAI,gBAAgB,CAAC,gBAAgB,CAAC;IAC5C,OAAO,IAAI,gBAAgB,CAAC,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACvD,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,IAAI,GAAG,IAAI;IAGxG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAIjE,GAAG,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAO,GAAG,IAAI;IAKnD,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC,GAAG,IAAI;IASlF,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQ9B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAOrD,MAAM,IAAI,gBAAgB;IAO1B,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,iBAAiB;IAI1D,KAAK,IAAI,iBAAiB;IAM1B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAI3D,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI;IAiC1F,iBAAiB,IAAI,SAAS,MAAM,EAAE;IAItC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAI9C,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE;CAsBxD;AAqhBD,eAAO,MAAM,eAAe,mBAA8D,CAAC;AAE3F,kDAAkD;AAClD,eAAO,MAAM,aAAa,EAAE,iBAAmC,CAAC;AAIhE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAE1E;AAED,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC5C,MAAM,GAAG,IAAI,CAEf;AAED,wBAAgB,iBAAiB,IAAI,SAAS,MAAM,EAAE,CAErD;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAEtE;AAeD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAGvD;AAID;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,OAAO,GACnB,MAAM,CAIR;AAWD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAG3D"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * A2UI Composition Map
3
+ *
4
+ * Bridge between abstract A2UI schema types and native-ui primitives.
5
+ * Sits above the Component Map — while the Component Map handles 1:1
6
+ * mappings (A2UI type → native tag), the Composition Map handles
7
+ * complex types that require assembling multiple primitives into a
8
+ * coordinated template with prop delegation, state projection,
9
+ * and event bubbling.
10
+ *
11
+ * The `CompositionRegistry` class provides a mutable registry with
12
+ * change tracking via a signal. The default singleton
13
+ * (`defaultCompositionRegistry`) preserves backward compatibility.
14
+ */
15
+ import type { Signal } from '@nonoun/native-ui';
16
+ import type { ComponentMapping, ComponentRegistry } from './a2ui-component-map.ts';
17
+ export interface TemplateNode {
18
+ readonly role: string;
19
+ readonly primitiveType: string;
20
+ readonly staticProps?: Readonly<Record<string, unknown>>;
21
+ readonly children?: readonly TemplateNode[];
22
+ readonly repeatFrom?: string;
23
+ }
24
+ export type CompositionTemplate = TemplateNode;
25
+ export interface PropDelegation {
26
+ readonly from: string;
27
+ readonly toRole: string;
28
+ readonly toProp: string;
29
+ readonly transform?: 'direct' | 'variantMap' | 'boolean' | 'count' | 'template';
30
+ readonly templateString?: string;
31
+ }
32
+ export interface StateProjection {
33
+ readonly compositeState: string;
34
+ readonly childStates: Readonly<Record<string, string | Readonly<Record<string, unknown>>>>;
35
+ readonly description?: string;
36
+ }
37
+ export interface EventBubble {
38
+ readonly fromRole: string;
39
+ readonly fromEvent: string;
40
+ readonly toAction: string;
41
+ readonly payloadStrategy?: 'passthrough' | 'index' | 'merge';
42
+ readonly mergePayload?: Readonly<Record<string, string>>;
43
+ }
44
+ export interface CompositionGap {
45
+ readonly need: string;
46
+ readonly impact: string;
47
+ readonly workaround?: string;
48
+ }
49
+ export interface CompositionSpec {
50
+ readonly a2uiType: string;
51
+ readonly description: string;
52
+ readonly mappingStatus: 'none' | 'partial';
53
+ readonly template: CompositionTemplate;
54
+ readonly propDelegation: readonly PropDelegation[];
55
+ readonly stateProjection: readonly StateProjection[];
56
+ readonly eventBubbling: readonly EventBubble[];
57
+ readonly requiredStates: readonly string[];
58
+ readonly gaps?: readonly CompositionGap[];
59
+ }
60
+ export declare class CompositionRegistry {
61
+ #private;
62
+ constructor(specs: readonly CompositionSpec[]);
63
+ get version(): Signal<number>;
64
+ get(type: string): CompositionSpec | undefined;
65
+ has(type: string): boolean;
66
+ get size(): number;
67
+ keys(): IterableIterator<string>;
68
+ values(): IterableIterator<CompositionSpec>;
69
+ add(spec: CompositionSpec): void;
70
+ remove(a2uiType: string): void;
71
+ resolveStrategy(a2uiType: string, componentRegistry: ComponentRegistry): 'direct' | 'composition' | 'unknown';
72
+ toJSON(): {
73
+ compositions: CompositionSpec[];
74
+ };
75
+ static fromJSON(data: {
76
+ compositions: CompositionSpec[];
77
+ }): CompositionRegistry;
78
+ getAllGaps(): Array<{
79
+ a2uiType: string;
80
+ gap: CompositionGap;
81
+ }>;
82
+ coverageReport(componentRegistry: ComponentRegistry, allSchemaTypes: readonly string[]): {
83
+ direct: string[];
84
+ composed: string[];
85
+ unresolved: string[];
86
+ gapCount: number;
87
+ };
88
+ }
89
+ export declare function resolveComponent(a2uiType: string, compositionRegistry: CompositionRegistry, componentRegistry: ComponentRegistry): {
90
+ strategy: 'direct';
91
+ mapping: ComponentMapping;
92
+ } | {
93
+ strategy: 'composition';
94
+ spec: CompositionSpec;
95
+ } | {
96
+ strategy: 'unknown';
97
+ type: string;
98
+ };
99
+ export declare const defaultCompositionRegistry: CompositionRegistry;
100
+ export declare const COMPOSITION_MAP: CompositionRegistry;
101
+ //# sourceMappingURL=a2ui-composition-map.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2ui-composition-map.d.ts","sourceRoot":"","sources":["../../../src/a2ui/protocol/a2ui-composition-map.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,9 @@ export type { SurfaceState } from './a2ui-surface.ts';
5
5
  export { a2uiToUINode, uiNodeToA2UI, conversionToPlan } from './a2ui-converter.ts';
6
6
  export type { ConversionResult, DataBindingEntry, ToUINodeOptions, ToA2UIOptions } from './a2ui-converter.ts';
7
7
  export { ComponentRegistry, defaultRegistry, resolveNativeTag, resolveA2UIType, COMPONENT_MAP, getSupportedTypes, getComponentCategory, getCompatibleTypes, textVariantTag, textFieldInputType, dateTimeInputType } from './a2ui-component-map.ts';
8
- export type { ComponentMapping, ChildStrategy, RegistrySnapshot } from './a2ui-component-map.ts';
8
+ export type { ComponentMapping, ChildStrategy, RegistrySnapshot, EventSpec, PropertySpec, MethodSpec } from './a2ui-component-map.ts';
9
+ export { CompositionRegistry, defaultCompositionRegistry, COMPOSITION_MAP, resolveComponent } from './a2ui-composition-map.ts';
10
+ export type { CompositionSpec, CompositionTemplate, TemplateNode, PropDelegation, StateProjection, EventBubble, CompositionGap } from './a2ui-composition-map.ts';
9
11
  export { isDataBinding, isCreateSurface, isUpdateComponents, isUpdateDataModel, isDeleteSurface, isCatalogRequest, isCatalogResponse, isActionMessage, isErrorMessage, parseServerMessage, } from './a2ui-types.ts';
10
12
  export type { A2UIProtocolVersion, A2UIServerMessage, A2UICreateSurface, A2UIUpdateComponents, A2UIUpdateDataModel, A2UIDeleteSurface, A2UICatalogRequest, A2UICatalogResponse, A2UIClientMessage, A2UIActionMessage, A2UIErrorMessage, A2UIComponent, A2UIComponentAction, A2UIDataBinding, A2UIStandardType, } from './a2ui-types.ts';
11
13
  export { WebSocketTransport, SSETransport, createWebSocketTransport, createSSETransport } from './a2ui-transport.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/a2ui/protocol/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC7G,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACnF,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACnP,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACjG,OAAO,EACL,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACrH,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/a2ui/protocol/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC7G,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACnF,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACnP,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACtI,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC/H,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAClK,OAAO,EACL,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACrH,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/a2ui/session/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAM/D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAID,qBAAa,QAAQ;;gBAGP,OAAO,EAAE,SAAS,aAAa,EAAE;IAM7C,2BAA2B;IAC3B,IAAI,OAAO,IAAI,SAAS,aAAa,EAAE,CAEtC;IAED,oDAAoD;IACpD,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI9B,sCAAsC;IACtC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIhD;;OAEG;IACH,UAAU,IAAI,MAAM;IAapB;;;;OAIG;IACH,gBAAgB,CACd,UAAU,EAAE,SAAS,aAAa,EAAE,EACpC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,GAC/C,aAAa,EAAE;CAsBnB;AAaD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,GAAE,MAAM,GAAG,WAAyB,GAAG,QAAQ,CAO5F"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/a2ui/session/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAM/D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAID,qBAAa,QAAQ;;gBAGP,OAAO,EAAE,SAAS,aAAa,EAAE;IAM7C,2BAA2B;IAC3B,IAAI,OAAO,IAAI,SAAS,aAAa,EAAE,CAEtC;IAED,oDAAoD;IACpD,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI9B,sCAAsC;IACtC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIhD;;OAEG;IACH,UAAU,IAAI,MAAM;IAapB;;;;OAIG;IACH,gBAAgB,CACd,UAAU,EAAE,SAAS,aAAa,EAAE,EACpC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,GAC/C,aAAa,EAAE;CAsBnB;AAiBD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,GAAE,MAAM,GAAG,WAAyB,GAAG,QAAQ,CAO5F"}
@@ -29,4 +29,7 @@ export declare class NChatInput extends NativeElement {
29
29
  setup(): void;
30
30
  teardown(): void;
31
31
  }
32
+ /** Advanced multi-zone variant — same behavior, distinct tag for CSS targeting. */
33
+ export declare class NChatInputAdvanced extends NChatInput {
34
+ }
32
35
  //# sourceMappingURL=chat-input-element.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-input-element.d.ts","sourceRoot":"","sources":["../../src/chat/chat-input-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,mBAAmB,CAAC;AAGhF;;;;;;;;;;;GAWG;AACH,qBAAa,UAAW,SAAQ,aAAa;;IAC3C,MAAM,CAAC,kBAAkB,WAAiC;;IAe1D,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,EAEpB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,QAAQ,CAAC,GAAG,EAAE,OAAO,EAGxB;IAED,IAAI,IAAI,IAAI,OAAO,CAElB;IAED,IAAI,IAAI,CAAC,GAAG,EAAE,OAAO,EAGpB;IAED,mCAAmC;IACnC,aAAa,IAAI,IAAI;IAKrB,kCAAkC;IAClC,YAAY,IAAI,IAAI;IAOpB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAkBpF,KAAK,IAAI,IAAI;IA+Cb,QAAQ,IAAI,IAAI;CAkHjB"}
1
+ {"version":3,"file":"chat-input-element.d.ts","sourceRoot":"","sources":["../../src/chat/chat-input-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,mBAAmB,CAAC;AAGhF;;;;;;;;;;;GAWG;AACH,qBAAa,UAAW,SAAQ,aAAa;;IAC3C,MAAM,CAAC,kBAAkB,WAAiC;;IAe1D,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,MAAM,EAEpB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,QAAQ,CAAC,GAAG,EAAE,OAAO,EAGxB;IAED,IAAI,IAAI,IAAI,OAAO,CAElB;IAED,IAAI,IAAI,CAAC,GAAG,EAAE,OAAO,EAGpB;IAED,mCAAmC;IACnC,aAAa,IAAI,IAAI;IAKrB,kCAAkC;IAClC,YAAY,IAAI,IAAI;IAOpB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAkBpF,KAAK,IAAI,IAAI;IA+Cb,QAAQ,IAAI,IAAI;CAsHjB;AAED,mFAAmF;AACnF,qBAAa,kBAAmB,SAAQ,UAAU;CAAG"}
@@ -1,4 +1,4 @@
1
- export { NChatInput } from './chat-input-element.ts';
1
+ export { NChatInput, NChatInputAdvanced } from './chat-input-element.ts';
2
2
  export { NChatPanel } from './chat-panel-element.ts';
3
3
  export type { AutoFocusPolicy, ChatPanelOpenOptions, FocusComposerOptions, ModelOption } from './chat-panel-element.ts';
4
4
  export { NChatFeed } from './feed/index.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGxH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EACL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAGnF,YAAY,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACzE,YAAY,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AACnF,YAAY,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAGpG,YAAY,EACV,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGxH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EACL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAGnF,YAAY,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACzE,YAAY,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AACnF,YAAY,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAGpG,YAAY,EACV,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"chat-input-structured-element.d.ts","sourceRoot":"","sources":["../../../src/chat/message/chat-input-structured-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,mBAAmB,CAAC;AAEhF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,SAAQ,aAAa;;IACrD,MAAM,CAAC,kBAAkB,WAA2D;;IAiBpF,IAAI,QAAQ,IAAI,MAAM,CAAiC;IACvD,IAAI,QAAQ,CAAC,GAAG,EAAE,MAAM,EAGvB;IAED,IAAI,OAAO,IAAI,gBAAgB,EAAE,CAAgC;IACjE,IAAI,OAAO,CAAC,GAAG,EAAE,gBAAgB,EAAE,EAGlC;IAED,IAAI,UAAU,IAAI,gBAAgB,EAAE,CAGnC;IAED,IAAI,QAAQ,IAAI,OAAO,CAAiC;IACxD,IAAI,QAAQ,CAAC,GAAG,EAAE,OAAO,EAGxB;IAID,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAiBpF,KAAK,IAAI,IAAI;IAkCb,QAAQ,IAAI,IAAI;CA6HjB"}
1
+ {"version":3,"file":"chat-input-structured-element.d.ts","sourceRoot":"","sources":["../../../src/chat/message/chat-input-structured-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,mBAAmB,CAAC;AAEhF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAqB,SAAQ,aAAa;;IACrD,MAAM,CAAC,kBAAkB,WAA2D;;IAiBpF,IAAI,QAAQ,IAAI,MAAM,CAAiC;IACvD,IAAI,QAAQ,CAAC,GAAG,EAAE,MAAM,EAGvB;IAED,IAAI,OAAO,IAAI,gBAAgB,EAAE,CAAgC;IACjE,IAAI,OAAO,CAAC,GAAG,EAAE,gBAAgB,EAAE,EAGlC;IAED,IAAI,UAAU,IAAI,gBAAgB,EAAE,CAGnC;IAED,IAAI,QAAQ,IAAI,OAAO,CAAiC;IACxD,IAAI,QAAQ,CAAC,GAAG,EAAE,OAAO,EAGxB;IAID,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAiBpF,KAAK,IAAI,IAAI;IAkCb,QAAQ,IAAI,IAAI;CA4HjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"chat-message-seed-element.d.ts","sourceRoot":"","sources":["../../../src/chat/message/chat-message-seed-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,mBAAmB,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,gBAAiB,SAAQ,aAAa;;IACjD,MAAM,CAAC,kBAAkB,WAA2B;;IAapD,IAAI,OAAO,IAAI,UAAU,EAAE,CAAgC;IAC3D,IAAI,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,EAG5B;IAED,IAAI,QAAQ,IAAI,OAAO,CAAiC;IACxD,IAAI,QAAQ,CAAC,GAAG,EAAE,OAAO,EAGxB;IAID,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAgBpF,KAAK,IAAI,IAAI;IA0Cb,QAAQ,IAAI,IAAI;CAsBjB"}
1
+ {"version":3,"file":"chat-message-seed-element.d.ts","sourceRoot":"","sources":["../../../src/chat/message/chat-message-seed-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,mBAAmB,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,gBAAiB,SAAQ,aAAa;;IACjD,MAAM,CAAC,kBAAkB,WAA2B;;IAapD,IAAI,OAAO,IAAI,UAAU,EAAE,CAAgC;IAC3D,IAAI,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,EAG5B;IAED,IAAI,QAAQ,IAAI,OAAO,CAAiC;IACxD,IAAI,QAAQ,CAAC,GAAG,EAAE,OAAO,EAGxB;IAID,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAgBpF,KAAK,IAAI,IAAI;IAyCb,QAAQ,IAAI,IAAI;CAsBjB"}
@@ -1,4 +1,4 @@
1
- import { NChatInput } from './chat-input-element.ts';
1
+ import { NChatInput, NChatInputAdvanced } from './chat-input-element.ts';
2
2
  import { NChatPanel } from './chat-panel-element.ts';
3
3
  import { NChatFeed } from './feed/chat-feed-element.ts';
4
4
  import { NChatAvatar } from './avatar/chat-avatar-element.ts';
@@ -9,5 +9,5 @@ import { NChatMessageActivity } from './message/chat-message-activity-element.ts
9
9
  import { NChatMessageSeed } from './message/chat-message-seed-element.ts';
10
10
  import { NChatMessageGenUI } from './message/chat-message-genui-element.ts';
11
11
  import { NChatInputStructured } from './message/chat-input-structured-element.ts';
12
- export { NChatInput, NChatPanel, NChatFeed, NChatAvatar, NChatMessage, NChatMessages, NChatMessageText, NChatMessageActivity, NChatMessageSeed, NChatMessageGenUI, NChatInputStructured, };
12
+ export { NChatInput, NChatInputAdvanced, NChatPanel, NChatFeed, NChatAvatar, NChatMessage, NChatMessages, NChatMessageText, NChatMessageActivity, NChatMessageSeed, NChatMessageGenUI, NChatInputStructured, };
13
13
  //# sourceMappingURL=register.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/chat/register.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAmDlF,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,GACrB,CAAC"}
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/chat/register.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAiElF,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,GACrB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from './a2ui/index.ts';
2
- export { NChatInput, NChatPanel, NChatFeed, NChatAvatar, NChatMessage, NChatMessages, NChatMessageText, NChatMessageActivity, NChatMessageSeed, NChatMessageGenUI, NChatInputStructured, ACTION_REGISTRY, ROLE_DEFAULTS, renderMarkdown, renderInline, sanitizeHtml, parseSSE, parseNDJSON, parseJSON, detectFormat, createChatStream, createChatTransport, classifyStreamEnd, classifyHttpError, backoffDelay, CHAT_EVENTS, SAFE_FIELDS, SENSITIVE_FIELDS, scrubPII, createDefaultRedactor, TelemetryEmitter, } from './chat/index.ts';
2
+ export { NChatInput, NChatInputAdvanced, NChatPanel, NChatFeed, NChatAvatar, NChatMessage, NChatMessages, NChatMessageText, NChatMessageActivity, NChatMessageSeed, NChatMessageGenUI, NChatInputStructured, ACTION_REGISTRY, ROLE_DEFAULTS, renderMarkdown, renderInline, sanitizeHtml, parseSSE, parseNDJSON, parseJSON, detectFormat, createChatStream, createChatTransport, classifyStreamEnd, classifyHttpError, backoffDelay, CHAT_EVENTS, SAFE_FIELDS, SENSITIVE_FIELDS, scrubPII, createDefaultRedactor, TelemetryEmitter, } from './chat/index.ts';
3
3
  export type { AutoFocusPolicy, ChatPanelOpenOptions, FocusComposerOptions, ModelOption, ChatMessageActionDef, SeedOption, StructuredOption, GenUINode, ChatStreamChunk, StreamFormat, ChatTransportOptions, ChatStreamEvent, ChatTransport, TransportStatus, TransportStateCallback, RetryOptions, StreamEndReason, TelemetryCorrelation, TelemetryTiming, TelemetryRetry, TelemetryLevel, TelemetryEvent, TelemetryRedactor, } from './chat/index.ts';
4
4
  export type { TransportState as ChatTransportState } from './chat/index.ts';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAIhC,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EAAE,aAAa,EAC9B,cAAc,EAAE,YAAY,EAAE,YAAY,EAC1C,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAC9C,gBAAgB,EAAE,mBAAmB,EACrC,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAClD,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAC1C,QAAQ,EAAE,qBAAqB,EAAE,gBAAgB,GAClD,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,WAAW,EACxE,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,eAAe,EAAE,YAAY,EAAE,oBAAoB,EAAE,eAAe,EACpE,aAAa,EAAE,eAAe,EAAE,sBAAsB,EACtD,YAAY,EAAE,eAAe,EAC7B,oBAAoB,EAAE,eAAe,EAAE,cAAc,EACrD,cAAc,EAAE,cAAc,EAAE,iBAAiB,GAClD,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,cAAc,IAAI,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAIhC,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EAAE,aAAa,EAC9B,cAAc,EAAE,YAAY,EAAE,YAAY,EAC1C,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAC9C,gBAAgB,EAAE,mBAAmB,EACrC,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAClD,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAC1C,QAAQ,EAAE,qBAAqB,EAAE,gBAAgB,GAClD,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,WAAW,EACxE,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,eAAe,EAAE,YAAY,EAAE,oBAAoB,EAAE,eAAe,EACpE,aAAa,EAAE,eAAe,EAAE,sBAAsB,EACtD,YAAY,EAAE,eAAe,EAC7B,oBAAoB,EAAE,eAAe,EAAE,cAAc,EACrD,cAAc,EAAE,cAAc,EAAE,iBAAiB,GAClD,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,cAAc,IAAI,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -595,10 +595,12 @@
595
595
  --n-chat-message-gap: calc(var(--n-space) * 2);
596
596
 
597
597
  /* Bubbles */
598
- --n-chat-bubble-user: var(--n-button);
599
- --n-chat-bubble-user-color: white;
600
- --n-chat-bubble-assistant: var(--n-card);
598
+ --n-chat-bubble-user: var(--n-surface-accent);
599
+ --n-chat-bubble-user-color: var(--n-surface-ink-accent);
600
+ --n-chat-bubble-user-border: transparent;
601
+ --n-chat-bubble-assistant: transparent;
601
602
  --n-chat-bubble-assistant-color: var(--n-ink);
603
+ --n-chat-bubble-assistant-border: var(--n-border-muted);
602
604
  --n-chat-bubble-radius: var(--n-radius);
603
605
  --n-chat-bubble-radius-avatar-side: var(--n-chat-bubble-radius);
604
606
  --n-chat-bubble-radius-far-side: var(--n-chat-bubble-radius);
@@ -686,7 +688,7 @@
686
688
 
687
689
  :where(native-chat-panel) > :where(n-header) {
688
690
  background: var(--n-chat-panel-header-background);
689
- border-bottom: 1px solid var(--n-chat-panel-header-border);
691
+ border-block-end: 1px solid var(--n-chat-panel-header-border);
690
692
  }
691
693
 
692
694
  :where(native-chat-panel) > :where(n-header) :where([slot="label"]) {
@@ -706,7 +708,7 @@
706
708
 
707
709
  :where(native-chat-panel) > :where(n-footer) {
708
710
  background: var(--n-chat-panel-footer-background);
709
- border-top: 1px solid var(--n-chat-panel-footer-border);
711
+ border-block-start: 1px solid var(--n-chat-panel-footer-border);
710
712
  }
711
713
 
712
714
  /* ── Model picker ── */
@@ -811,6 +813,8 @@
811
813
  align-self: end;
812
814
  }
813
815
 
816
+ /* Assistant avatar: use default avatar tokens (bubble is transparent) */
817
+
814
818
  /* Context area: col 2, row 1 — metadata above messages */
815
819
  :where(n-chat-messages) > :where(.n-chat-context) {
816
820
  grid-column: 2;
@@ -859,6 +863,8 @@
859
863
 
860
864
  [data-role="user"]:where(n-chat-messages) > :where(n-chat-avatar) {
861
865
  grid-column: 2;
866
+ background: var(--n-chat-bubble-user);
867
+ color: var(--n-chat-bubble-user-color);
862
868
  }
863
869
 
864
870
  [data-role="user"]:where(n-chat-messages) > :where(.n-chat-context),
@@ -917,6 +923,7 @@
917
923
  display: flex;
918
924
  flex-direction: column;
919
925
  gap: var(--n-space);
926
+ min-width: 0;
920
927
  overflow: hidden;
921
928
 
922
929
  /* Asymmetric radius: assistant = avatar on left */
@@ -928,6 +935,7 @@
928
935
 
929
936
  background: var(--n-chat-bubble-assistant);
930
937
  color: var(--n-chat-bubble-assistant-color);
938
+ border: 1px solid var(--n-chat-bubble-assistant-border);
931
939
 
932
940
  word-wrap: break-word;
933
941
  overflow-wrap: break-word;
@@ -943,6 +951,7 @@
943
951
 
944
952
  background: var(--n-chat-bubble-user);
945
953
  color: var(--n-chat-bubble-user-color);
954
+ border-color: var(--n-chat-bubble-user-border);
946
955
  }
947
956
 
948
957
  /* Streaming status */
@@ -957,7 +966,7 @@
957
966
 
958
967
  /* Partial status — stream ended without explicit completion */
959
968
  [status="partial"]:where(n-chat-message) {
960
- border-bottom: 2px dashed var(--n-border-muted);
969
+ border-block-end: 2px dashed var(--n-border-muted);
961
970
  }
962
971
 
963
972
  /* Typing status — waiting for first stream chunk */
@@ -1053,6 +1062,7 @@
1053
1062
  display: flex;
1054
1063
  flex-direction: column;
1055
1064
  gap: var(--n-chat-prose-gap);
1065
+ min-width: 0;
1056
1066
  }
1057
1067
 
1058
1068
  /* Universal block margin reset — flexbox gap handles spacing,
@@ -1127,7 +1137,7 @@
1127
1137
 
1128
1138
  :where(n-chat-message-text) :where(hr) {
1129
1139
  border: none;
1130
- border-top: 1px solid var(--n-border-muted);
1140
+ border-block-start: 1px solid var(--n-border-muted);
1131
1141
  }
1132
1142
 
1133
1143
  :where(n-chat-message-text[hidden]) { display: none; }
@@ -1140,6 +1150,7 @@
1140
1150
  display: flex;
1141
1151
  flex-direction: column;
1142
1152
  gap: var(--n-space);
1153
+ min-width: 0;
1143
1154
  color: var(--n-chat-activity-color);
1144
1155
  font-size: var(--n-font-size-sm);
1145
1156
  padding-block: var(--n-space);
@@ -1263,6 +1274,7 @@
1263
1274
  display: flex;
1264
1275
  flex-direction: column;
1265
1276
  gap: var(--n-space);
1277
+ min-width: 0;
1266
1278
  }
1267
1279
 
1268
1280
  :where(n-chat-message-genui) :where(.n-chat-genui-error) {
@@ -1289,6 +1301,7 @@
1289
1301
  display: flex;
1290
1302
  flex-direction: column;
1291
1303
  gap: var(--n-chat-structured-gap);
1304
+ min-width: 0;
1292
1305
  padding-block: var(--n-chat-structured-padding);
1293
1306
  padding-inline: var(--n-chat-structured-padding);
1294
1307
  --n-background: var(--n-card);
@@ -1330,6 +1343,7 @@
1330
1343
  flex: 1 1 0%;
1331
1344
  flex-direction: column;
1332
1345
  min-width: 0;
1346
+ min-height: var(--n-size);
1333
1347
  }
1334
1348
 
1335
1349
  /* Compact: single row */
@@ -1338,6 +1352,12 @@
1338
1352
  align-items: center;
1339
1353
  }
1340
1354
 
1355
+ /* Textarea fills available space in both column and compact row */
1356
+ :where(n-chat-input) > :where(n-textarea) {
1357
+ flex: 1 1 auto;
1358
+ min-height: 4.5em;
1359
+ }
1360
+
1341
1361
  /* Textarea inside input — fully transparent, no padding */
1342
1362
  :where(n-chat-input) > :where(n-textarea) {
1343
1363
  --n-background: transparent;
@@ -1354,12 +1374,6 @@
1354
1374
  resize: none;
1355
1375
  }
1356
1376
 
1357
- :where(n-chat-input) > :where(n-textarea):not(:state(empty)),
1358
- :where(n-chat-input) > :where(n-textarea):not(:state(empty)):hover {
1359
- background: transparent;
1360
- border-color: transparent;
1361
- }
1362
-
1363
1377
  :where(n-chat-input) > :where(n-textarea):focus {
1364
1378
  border-color: transparent;
1365
1379
  outline: none;
@@ -1370,6 +1384,7 @@
1370
1384
  :where(n-chat-input-attachments) {
1371
1385
  display: flex;
1372
1386
  flex-wrap: wrap;
1387
+ flex-shrink: 0;
1373
1388
  gap: calc(var(--n-space) * 2);
1374
1389
  }
1375
1390
 
@@ -1377,14 +1392,144 @@
1377
1392
 
1378
1393
  :where(n-chat-input-actions) {
1379
1394
  display: flex;
1395
+ flex-shrink: 0;
1380
1396
  align-items: center;
1381
1397
  justify-content: flex-end;
1382
1398
  gap: calc(var(--n-space) * 2);
1383
1399
  min-width: 0;
1384
1400
  }
1385
1401
 
1386
- [compact]:where(n-chat-input) > :where(n-chat-input-actions) {
1402
+
1403
+ /* ── n-chat-input-header ──
1404
+ Header bar above the textarea: model/agent indicators left,
1405
+ settings/activity right. Used in advanced multi-row layout. */
1406
+
1407
+ :where(n-chat-input-header) {
1408
+ display: grid;
1409
+ grid-template-columns: 1fr auto;
1410
+ align-items: center;
1411
+ gap: calc(var(--n-space) * 2);
1412
+ flex-shrink: 0;
1413
+ min-width: 0;
1414
+ }
1415
+
1416
+ :where(n-chat-input-header) > :where(nav) {
1417
+ display: flex;
1418
+ align-items: center;
1419
+ gap: calc(var(--n-space) * 2);
1420
+ min-width: 0;
1421
+ overflow: hidden;
1422
+ }
1423
+
1424
+ :where(n-chat-input-header) > :where(aside) {
1425
+ display: flex;
1426
+ align-items: center;
1427
+ gap: calc(var(--n-space) * 2);
1428
+ }
1429
+
1430
+ /* ── n-chat-input-chips ──
1431
+ Suggestion chips below the actions row. Wraps on overflow. */
1432
+
1433
+ :where(n-chat-input-chips) {
1434
+ display: flex;
1435
+ flex-wrap: wrap;
1436
+ align-items: center;
1437
+ flex-shrink: 0;
1438
+ gap: calc(var(--n-space) * 1.5);
1439
+ padding-block-end: calc(var(--n-space) * 1.5);
1440
+ min-width: 0;
1441
+ }
1442
+
1443
+ /* Chip buttons: outlined pill style, intrinsic width */
1444
+ :where(n-chat-input-chips) > :where(n-button) {
1387
1445
  flex: none;
1446
+ width: auto;
1447
+ border: 1px solid var(--n-border-rest);
1448
+ }
1449
+
1450
+ /* ══════════════════════════════════════════════════
1451
+ n-chat-input-advanced — multi-zone rich composer
1452
+ ══════════════════════════════════════════════════
1453
+
1454
+ 3 zones: header-bar (above), prompt-container (bordered), suggestion-chips (below).
1455
+ The prompt container holds textarea + improve button + toolbar.
1456
+
1457
+ HTML shape:
1458
+ <n-chat-input-advanced>
1459
+ <n-chat-input-header> … </n-chat-input-header>
1460
+ <n-chat-input-prompt>
1461
+ <n-textarea …></n-textarea>
1462
+ <n-button data-role="improve">✦</n-button>
1463
+ <n-toolbar variant="plain"> … </n-toolbar>
1464
+ </n-chat-input-prompt>
1465
+ <n-chat-input-chips> … </n-chat-input-chips>
1466
+ </n-chat-input-advanced>
1467
+ */
1468
+
1469
+ :where(n-chat-input-advanced):not(:defined) { visibility: hidden; }
1470
+
1471
+ :where(n-chat-input-advanced) {
1472
+ display: flex;
1473
+ flex: 1 1 0%;
1474
+ flex-direction: column;
1475
+ gap: calc(var(--n-space) * 2);
1476
+ min-width: 0;
1477
+ min-height: var(--n-size);
1478
+ }
1479
+
1480
+ /* ── Prompt container ──
1481
+ Bordered area containing textarea, improve button, and actions.
1482
+ Provides the nested rounded rect visible in the reference design. */
1483
+
1484
+ :where(n-chat-input-prompt) {
1485
+ position: relative;
1486
+ display: flex;
1487
+ flex-direction: column;
1488
+ flex: 1 1 auto;
1489
+ min-height: 0;
1490
+ border: 1px solid var(--n-border-rest);
1491
+ border-radius: var(--n-radius);
1492
+ transition: border-color var(--n-duration) var(--n-easing);
1493
+ }
1494
+
1495
+ /* Textarea inside prompt container — transparent, no chrome */
1496
+ :where(n-chat-input-prompt) > :where(n-textarea) {
1497
+ flex: 1 1 auto;
1498
+ min-height: 4.5em;
1499
+
1500
+ --n-background: transparent;
1501
+ --n-background-hover: transparent;
1502
+ --n-border-color: transparent;
1503
+ --n-border-color-hover: transparent;
1504
+
1505
+ padding-block: calc(var(--n-space) * 2);
1506
+ padding-inline: calc(var(--n-space) * 3);
1507
+ border: none;
1508
+ border-radius: 0;
1509
+ resize: none;
1510
+ }
1511
+
1512
+ :where(n-chat-input-prompt) > :where(n-textarea):focus {
1513
+ border-color: transparent;
1514
+ outline: none;
1515
+ }
1516
+
1517
+ /* Focus ring on prompt container when textarea is focused */
1518
+ :where(n-chat-input-prompt):has(:where(n-textarea):focus) {
1519
+ border-color: var(--n-focus-ring);
1520
+ }
1521
+
1522
+ /* Prompt-improvement button: pinned top-right inside the bordered area */
1523
+ :where(n-chat-input-prompt) > :where(n-button[data-role="improve"]) {
1524
+ position: absolute;
1525
+ inset-block-start: calc(var(--n-space) * 1.5);
1526
+ inset-inline-end: calc(var(--n-space) * 1.5);
1527
+ }
1528
+
1529
+ /* Toolbar inside prompt container — sits below textarea */
1530
+ :where(n-chat-input-prompt) > :where(n-toolbar) {
1531
+ padding-inline: calc(var(--n-space) * 2);
1532
+ padding-block-end: calc(var(--n-space) * 1.5);
1388
1533
  }
1389
1534
 
1390
1535
  }