@pushwoosh/rpc-gateway-ai-assistant 0.1.133 → 0.1.135

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.
package/data.js CHANGED
@@ -813,119 +813,6 @@ export const data = {
813
813
  }
814
814
  }
815
815
  },
816
- "pushwoosh.aigen.v1.AiGenBlockStyles": {
817
- "type": "I",
818
- "fields": {
819
- "backgroundColor": {
820
- "type": "string",
821
- "optional": true
822
- },
823
- "borderColor": {
824
- "type": "string",
825
- "optional": true
826
- },
827
- "borderRadius": {
828
- "type": "number",
829
- "optional": true
830
- }
831
- }
832
- },
833
- "pushwoosh.aigen.v1.AiGenCard": {
834
- "type": "I",
835
- "fields": {
836
- "layout": {
837
- "type": "pushwoosh.aibuilder.v1.CardLayout"
838
- },
839
- "image": {
840
- "type": "pushwoosh.aibuilder.v1.Image",
841
- "optional": true
842
- },
843
- "content": {
844
- "type": "pushwoosh.aibuilder.v1.Content"
845
- },
846
- "imageFit": {
847
- "type": "pushwoosh.aibuilder.v1.CardImageFit"
848
- },
849
- "accentFit": {
850
- "type": "boolean"
851
- }
852
- }
853
- },
854
- "pushwoosh.aigen.v1.AiGenColumn": {
855
- "type": "I",
856
- "fields": {
857
- "image": {
858
- "type": "pushwoosh.aibuilder.v1.Image",
859
- "optional": true
860
- },
861
- "content": {
862
- "type": "pushwoosh.aibuilder.v1.Content"
863
- },
864
- "width": {
865
- "type": "string",
866
- "optional": true
867
- }
868
- }
869
- },
870
- "pushwoosh.aigen.v1.AiGenColumns": {
871
- "type": "I",
872
- "fields": {
873
- "withImages": {
874
- "type": "boolean"
875
- },
876
- "columns": {
877
- "type": "pushwoosh.aigen.v1.AiGenColumn",
878
- "array": true
879
- },
880
- "contentBefore": {
881
- "type": "pushwoosh.aibuilder.v1.Content",
882
- "optional": true
883
- },
884
- "contentAfter": {
885
- "type": "pushwoosh.aibuilder.v1.Content",
886
- "optional": true
887
- }
888
- }
889
- },
890
- "pushwoosh.aigen.v1.AiGenGroup": {
891
- "type": "I",
892
- "fields": {
893
- "direction": {
894
- "type": "pushwoosh.aibuilder.v1.GroupDirection"
895
- }
896
- }
897
- },
898
- "pushwoosh.aigen.v1.AiGenBlock": {
899
- "type": "I",
900
- "fields": {
901
- "card": {
902
- "type": "pushwoosh.aigen.v1.AiGenCard"
903
- },
904
- "columns": {
905
- "type": "pushwoosh.aigen.v1.AiGenColumns"
906
- },
907
- "content": {
908
- "type": "pushwoosh.aibuilder.v1.Content"
909
- },
910
- "group": {
911
- "type": "pushwoosh.aigen.v1.AiGenGroup"
912
- },
913
- "styles": {
914
- "type": "pushwoosh.aigen.v1.AiGenBlockStyles",
915
- "optional": true
916
- }
917
- },
918
- "oneofs": {
919
- "block": {
920
- "oneof": [
921
- "card",
922
- "columns",
923
- "content",
924
- "group"
925
- ]
926
- }
927
- }
928
- },
929
816
  "pushwoosh.aigen.v1.AiGenBlockDelta": {
930
817
  "type": "I",
931
818
  "fields": {
@@ -934,7 +821,7 @@ export const data = {
934
821
  "array": true
935
822
  },
936
823
  "block": {
937
- "type": "pushwoosh.aigen.v1.AiGenBlock"
824
+ "type": "pushwoosh.aibuilder.v1.AiBuilderBlock"
938
825
  }
939
826
  }
940
827
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pushwoosh/rpc-gateway-ai-assistant",
3
- "version": "0.1.133",
3
+ "version": "0.1.135",
4
4
  "description": "AI Assistant api gateway HTTP API Types and Data",
5
5
  "main": "index.js",
6
6
  "module": "index.js",
@@ -2,11 +2,7 @@ import { AiBuilderDocument as pushwoosh_aibuilder_v1_AiBuilderDocument } from '.
2
2
  import { DocumentSettings as pushwoosh_aibuilder_v1_DocumentSettings } from './pushwoosh_aibuilder_v1';
3
3
  import { TextVariantStyle as pushwoosh_aibuilder_v1_TextVariantStyle } from './pushwoosh_aibuilder_v1';
4
4
  import { ColorSchemeItem as pushwoosh_aibuilder_v1_ColorSchemeItem } from './pushwoosh_aibuilder_v1';
5
- import { CardLayout as pushwoosh_aibuilder_v1_CardLayout } from './pushwoosh_aibuilder_v1';
6
- import { Image as pushwoosh_aibuilder_v1_Image } from './pushwoosh_aibuilder_v1';
7
- import { Content as pushwoosh_aibuilder_v1_Content } from './pushwoosh_aibuilder_v1';
8
- import { CardImageFit as pushwoosh_aibuilder_v1_CardImageFit } from './pushwoosh_aibuilder_v1';
9
- import { GroupDirection as pushwoosh_aibuilder_v1_GroupDirection } from './pushwoosh_aibuilder_v1';
5
+ import { AiBuilderBlock as pushwoosh_aibuilder_v1_AiBuilderBlock } from './pushwoosh_aibuilder_v1';
10
6
  /**
11
7
  * AiGenService unifies document create / edit / per-block regeneration and
12
8
  * targeted block insertion into a single streaming RPC. Dispatch rules:
@@ -194,101 +190,26 @@ export type AiGenStructureDiff = {
194
190
  updateTextVariants: Record<string, pushwoosh_aibuilder_v1_TextVariantStyle>;
195
191
  updateColorScheme: Record<string, pushwoosh_aibuilder_v1_ColorSchemeItem>;
196
192
  };
197
- /**
198
- * AiGenBlockStyles is the wire-format subset of BlockStyles the block
199
- * generator can emit. Mirrors the LLM-managed fields of BlockStyles
200
- * (background_color, border_color, border_radius). Client-managed
201
- * fields like border_width are intentionally absent — they belong to
202
- * the editor, not the model, and travel with the document, not with
203
- * the AiGen stream.
204
- *
205
- * All fields are optional and follow BlockStyles presence semantics:
206
- * - String fields (background_color, border_color): "" ≡ unset
207
- * (inherit). The pipeline already normalises empty LLM output to
208
- * unset; this documents that clients also collapse the two states.
209
- * - Numeric fields (border_radius): explicit 0 is distinct from
210
- * unset and preserved.
211
- */
212
- export type AiGenBlockStyles = {
213
- /**
214
- * Empty string "" is treated as unset by clients. The pipeline
215
- * emits unset for empty LLM output.
216
- */
217
- backgroundColor?: string;
218
- /**
219
- * Empty string "" is treated as unset by clients. The pipeline
220
- * emits unset for empty LLM output.
221
- */
222
- borderColor?: string;
223
- /**
224
- * Corner radius in px. Explicit 0 means "sharp corners" and is
225
- * distinct from unset (which means "inherit"). Carried through the
226
- * stream so the client picks up rounded-corner styling — common
227
- * on web popups — without waiting for the next document fetch.
228
- */
229
- borderRadius?: number;
230
- };
231
- export type AiGenCard = {
232
- layout: pushwoosh_aibuilder_v1_CardLayout;
233
- image?: pushwoosh_aibuilder_v1_Image;
234
- content: pushwoosh_aibuilder_v1_Content;
235
- imageFit: pushwoosh_aibuilder_v1_CardImageFit;
236
- accentFit: boolean;
237
- };
238
- export type AiGenColumn = {
239
- image?: pushwoosh_aibuilder_v1_Image;
240
- content: pushwoosh_aibuilder_v1_Content;
241
- width?: string;
242
- };
243
- export type AiGenColumns = {
244
- withImages: boolean;
245
- columns: AiGenColumn[];
246
- contentBefore?: pushwoosh_aibuilder_v1_Content;
247
- contentAfter?: pushwoosh_aibuilder_v1_Content;
248
- };
249
- /**
250
- * AiGenGroup is the wire payload for a "group" container block. The
251
- * block generator is skipped for groups; the planner emits the
252
- * container's structure and the children come as separate block_delta
253
- * events. The direction field on the underlying AiBuilderGroup is
254
- * client-managed and not emitted by the planner — AiGenGroup carries
255
- * it for symmetry with the document model only.
256
- */
257
- export type AiGenGroup = {
258
- direction: pushwoosh_aibuilder_v1_GroupDirection;
259
- };
260
- export type AiGenBlock_block_card = {
261
- type: 'card';
262
- data: AiGenCard;
263
- };
264
- export type AiGenBlock_block_columns = {
265
- type: 'columns';
266
- data: AiGenColumns;
267
- };
268
- export type AiGenBlock_block_content = {
269
- type: 'content';
270
- data: pushwoosh_aibuilder_v1_Content;
271
- };
272
- export type AiGenBlock_block_group = {
273
- type: 'group';
274
- data: AiGenGroup;
275
- };
276
- export type AiGenBlock_block = AiGenBlock_block_card | AiGenBlock_block_columns | AiGenBlock_block_content | AiGenBlock_block_group;
277
- /**
278
- * AiGenBlock is the payload carried by block_delta. The block's own id
279
- * lives in the enclosing event's `block_path`; the payload is id-less.
280
- */
281
- export type AiGenBlock = {
282
- styles?: AiGenBlockStyles;
283
- block: AiGenBlock_block;
284
- };
285
193
  /**
286
194
  * Full block delivered after generation. Images (if any) arrive separately
287
195
  * via image_delta events referencing the same block_path.
196
+ *
197
+ * The payload reuses AiBuilderBlock from the document model directly —
198
+ * the AiGen stream and storage carry the same shape, no wire/document
199
+ * conversion in between. Two wire invariants on `block`:
200
+ * - block.id is always empty. Block id lives in `block_path` (last
201
+ * segment); clients use block_path as the source of truth.
202
+ * - block.parent_id is always empty. Parent linkage is already
203
+ * carried on the AiGenStructureAdd / AiGenStructureBlock entry
204
+ * that introduced this block; clients use that.
205
+ * block.styles carries the LLM-managed subset of BlockStyles
206
+ * (background_color, border_color, border_radius). Client-managed
207
+ * fields like border_width stay unset on the wire — the client owns
208
+ * them end-to-end across edits.
288
209
  */
289
210
  export type AiGenBlockDelta = {
290
211
  blockPath: string[];
291
- block: AiGenBlock;
212
+ block: pushwoosh_aibuilder_v1_AiBuilderBlock;
292
213
  };
293
214
  export type AiGenImageDelta = {
294
215
  blockPath: string[];