@pushwoosh/rpc-gateway-ai-assistant 0.1.217 → 0.1.219

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
@@ -112,6 +112,10 @@ export const data = {
112
112
  "fontFamily": {
113
113
  "type": "string",
114
114
  "optional": true
115
+ },
116
+ "color": {
117
+ "type": "string",
118
+ "optional": true
115
119
  }
116
120
  }
117
121
  },
@@ -285,6 +289,14 @@ export const data = {
285
289
  "translations": {
286
290
  "type": "string",
287
291
  "mapKeyType": "string"
292
+ },
293
+ "fontSize": {
294
+ "type": "number",
295
+ "optional": true
296
+ },
297
+ "fontFamily": {
298
+ "type": "string",
299
+ "optional": true
288
300
  }
289
301
  }
290
302
  },
@@ -534,6 +546,12 @@ export const data = {
534
546
  },
535
547
  "labelFontFamily": {
536
548
  "type": "string"
549
+ },
550
+ "digitFontWeight": {
551
+ "type": "number"
552
+ },
553
+ "labelFontWeight": {
554
+ "type": "number"
537
555
  }
538
556
  }
539
557
  },
@@ -941,7 +959,12 @@ export const data = {
941
959
  "SOCIAL_PLATFORM_INSTAGRAM",
942
960
  "SOCIAL_PLATFORM_LINKEDIN",
943
961
  "SOCIAL_PLATFORM_YOUTUBE",
944
- "SOCIAL_PLATFORM_TIKTOK"
962
+ "SOCIAL_PLATFORM_TIKTOK",
963
+ "SOCIAL_PLATFORM_DISCORD",
964
+ "SOCIAL_PLATFORM_GITHUB",
965
+ "SOCIAL_PLATFORM_TELEGRAM",
966
+ "SOCIAL_PLATFORM_THREADS",
967
+ "SOCIAL_PLATFORM_WHATSAPP"
945
968
  ]
946
969
  },
947
970
  "pushwoosh.aibuilder.v1.AppStorePlatform": {
@@ -960,6 +983,14 @@ export const data = {
960
983
  },
961
984
  "url": {
962
985
  "type": "string"
986
+ },
987
+ "translations": {
988
+ "type": "string",
989
+ "mapKeyType": "string"
990
+ },
991
+ "urlTranslations": {
992
+ "type": "string",
993
+ "mapKeyType": "string"
963
994
  }
964
995
  }
965
996
  },
@@ -1011,6 +1042,54 @@ export const data = {
1011
1042
  "appBadges": {
1012
1043
  "type": "pushwoosh.aibuilder.v1.AppBadge",
1013
1044
  "array": true
1045
+ },
1046
+ "unsubscribeLabelTranslations": {
1047
+ "type": "string",
1048
+ "mapKeyType": "string"
1049
+ },
1050
+ "copyrightTranslations": {
1051
+ "type": "string",
1052
+ "mapKeyType": "string"
1053
+ },
1054
+ "companyNameTranslations": {
1055
+ "type": "string",
1056
+ "mapKeyType": "string"
1057
+ },
1058
+ "addressTranslations": {
1059
+ "type": "string",
1060
+ "mapKeyType": "string"
1061
+ },
1062
+ "logoUrl": {
1063
+ "type": "string",
1064
+ "optional": true
1065
+ },
1066
+ "logoWidth": {
1067
+ "type": "number",
1068
+ "optional": true
1069
+ },
1070
+ "logoLink": {
1071
+ "type": "string",
1072
+ "optional": true
1073
+ }
1074
+ }
1075
+ },
1076
+ "pushwoosh.aibuilder.v1.FooterStyle": {
1077
+ "type": "I",
1078
+ "fields": {
1079
+ "textColor": {
1080
+ "type": "string",
1081
+ "optional": true
1082
+ },
1083
+ "fontSize": {
1084
+ "type": "number",
1085
+ "optional": true
1086
+ },
1087
+ "align": {
1088
+ "type": "pushwoosh.aibuilder.v1.TextAlign"
1089
+ },
1090
+ "underlineLinks": {
1091
+ "type": "boolean",
1092
+ "optional": true
1014
1093
  }
1015
1094
  }
1016
1095
  },
@@ -1047,6 +1126,10 @@ export const data = {
1047
1126
  "showUnsubscribe": {
1048
1127
  "type": "boolean",
1049
1128
  "optional": true
1129
+ },
1130
+ "footerStyle": {
1131
+ "type": "pushwoosh.aibuilder.v1.FooterStyle",
1132
+ "optional": true
1050
1133
  }
1051
1134
  }
1052
1135
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pushwoosh/rpc-gateway-ai-assistant",
3
- "version": "0.1.217",
3
+ "version": "0.1.219",
4
4
  "description": "AI Assistant api gateway HTTP API Types and Data",
5
5
  "main": "index.js",
6
6
  "module": "index.js",
@@ -150,6 +150,18 @@ export type TextVariantStyle = {
150
150
  * - Client-managed: the LLM never selects fonts.
151
151
  */
152
152
  fontFamily?: string;
153
+ /**
154
+ * Colour for text rendered with this variant (e.g. one colour for
155
+ * headings, another for body copy).
156
+ *
157
+ * Wire contract:
158
+ * - #RGB or #RRGGBB hex.
159
+ * - Unset (or empty string) = inherit. Cascade: TextBlock.color →
160
+ * this field → DocumentSettings.text_color → renderer default.
161
+ * - Client-managed: the LLM picks per-item colours via TextBlock.color;
162
+ * variant colours are user preferences, round-tripped verbatim.
163
+ */
164
+ color?: string;
153
165
  };
154
166
  export type ColorSchemeItem = {
155
167
  color: string;
@@ -307,6 +319,19 @@ export type TextBlock = {
307
319
  * writes only `text`; translations are round-tripped verbatim.
308
320
  */
309
321
  translations: Record<string, string>;
322
+ /**
323
+ * Per-item font-size override in px. Unset (or 0) = inherit the variant's
324
+ * font_size. Client-managed: typography stays user-owned; the LLM sizes
325
+ * text by picking a variant. NOTE: like translations, this is lost when
326
+ * the LLM regenerates the block (items are rewritten wholesale).
327
+ */
328
+ fontSize?: number;
329
+ /**
330
+ * Per-item font-family override. CSS font-family syntax (see
331
+ * DocumentSettings.font_family). Unset (or empty string) = inherit the
332
+ * variant's font_family → DocumentSettings.font_family. Client-managed.
333
+ */
334
+ fontFamily?: string;
310
335
  };
311
336
  export type ButtonActionHref = {
312
337
  url: string;
@@ -466,6 +491,13 @@ export type Timer = {
466
491
  */
467
492
  digitFontFamily: string;
468
493
  labelFontFamily: string;
494
+ /**
495
+ * CSS numeric font weights. The GIF renderer maps >=600 to Open Sans
496
+ * Bold, anything else to Regular (only those two faces are embedded).
497
+ * 0 keeps the historical defaults: digits bold (700), labels regular (400).
498
+ */
499
+ digitFontWeight: number;
500
+ labelFontWeight: number;
469
501
  };
470
502
  /**
471
503
  * An Unlayer HTML widget. The markup is deliberately kept verbatim: unlike
@@ -786,11 +818,17 @@ export type Meta = {
786
818
  export type EmailType =
787
819
  /** treated as MARKETING (safe default) */
788
820
  'EMAIL_TYPE_UNSPECIFIED' | 'EMAIL_TYPE_MARKETING' | 'EMAIL_TYPE_TRANSACTIONAL';
789
- export type SocialPlatform = 'SOCIAL_PLATFORM_UNSPECIFIED' | 'SOCIAL_PLATFORM_FACEBOOK' | 'SOCIAL_PLATFORM_X' | 'SOCIAL_PLATFORM_INSTAGRAM' | 'SOCIAL_PLATFORM_LINKEDIN' | 'SOCIAL_PLATFORM_YOUTUBE' | 'SOCIAL_PLATFORM_TIKTOK';
821
+ export type SocialPlatform = 'SOCIAL_PLATFORM_UNSPECIFIED' | 'SOCIAL_PLATFORM_FACEBOOK' | 'SOCIAL_PLATFORM_X' | 'SOCIAL_PLATFORM_INSTAGRAM' | 'SOCIAL_PLATFORM_LINKEDIN' | 'SOCIAL_PLATFORM_YOUTUBE' | 'SOCIAL_PLATFORM_TIKTOK'
822
+ /** The hosted icon set (pushwoosh.com/social-icons) already covers these. */
823
+ | 'SOCIAL_PLATFORM_DISCORD' | 'SOCIAL_PLATFORM_GITHUB' | 'SOCIAL_PLATFORM_TELEGRAM' | 'SOCIAL_PLATFORM_THREADS' | 'SOCIAL_PLATFORM_WHATSAPP';
790
824
  export type AppStorePlatform = 'APP_STORE_PLATFORM_UNSPECIFIED' | 'APP_STORE_PLATFORM_APP_STORE' | 'APP_STORE_PLATFORM_GOOGLE_PLAY';
791
825
  export type NavLink = {
792
826
  label: string;
793
827
  url: string;
828
+ /** Per-language overrides of `label`; same contract as MenuItem.translations. */
829
+ translations: Record<string, string>;
830
+ /** Per-language overrides of `url` (e.g. locale-specific Privacy Policy). */
831
+ urlTranslations: Record<string, string>;
794
832
  };
795
833
  export type SocialLink = {
796
834
  platform: SocialPlatform;
@@ -809,6 +847,43 @@ export type FooterContent = {
809
847
  links: NavLink[];
810
848
  social: SocialLink[];
811
849
  appBadges: AppBadge[];
850
+ /**
851
+ * Per-language overrides; same contract as EmailSettings.subject_translations.
852
+ * URLs (links/social/badges) are the only fields shared across languages.
853
+ */
854
+ unsubscribeLabelTranslations: Record<string, string>;
855
+ copyrightTranslations: Record<string, string>;
856
+ companyNameTranslations: Record<string, string>;
857
+ addressTranslations: Record<string, string>;
858
+ /**
859
+ * Brand logo shown at the top of the footer. Absolute image URL (email
860
+ * clients need hosted raster assets); empty = no logo.
861
+ */
862
+ logoUrl?: string;
863
+ /** Rendered logo width in px; 0/unset = the renderer default. */
864
+ logoWidth?: number;
865
+ /** Click-through URL for the logo; empty = plain image. */
866
+ logoLink?: string;
867
+ };
868
+ /**
869
+ * Per-template footer presentation. Deliberately separate from
870
+ * FooterContent: FooterContent is reusable brand DATA (mirrored by the
871
+ * account-level EmailFooter in rpc-v2), while these are render
872
+ * preferences of one template. Client-managed; unset fields keep the
873
+ * renderer defaults (muted gray, 12px, centered, underlined links).
874
+ */
875
+ export type FooterStyle = {
876
+ /** #RGB/#RRGGBB hex; empty = renderer default (#8A94A6). */
877
+ textColor?: string;
878
+ /** px; 0/unset = renderer default (12). */
879
+ fontSize?: number;
880
+ /** UNSPECIFIED = renderer default (center). */
881
+ align: TextAlign;
882
+ /**
883
+ * Underline the footer's text links (nav links, unsubscribe, web-version).
884
+ * Optional so absent keeps the client default (underlined).
885
+ */
886
+ underlineLinks?: boolean;
812
887
  };
813
888
  /**
814
889
  * EmailSettings holds the email-only document-level fields produced by
@@ -846,6 +921,11 @@ export type EmailSettings = {
846
921
  * marketing email. Optional so absent keeps the client default (on).
847
922
  */
848
923
  showUnsubscribe?: boolean;
924
+ /**
925
+ * Footer presentation overrides for this template. Absent = renderer
926
+ * defaults. Client-managed.
927
+ */
928
+ footerStyle?: FooterStyle;
849
929
  };
850
930
  /**
851
931
  * PopupAnimation chooses how a web-popup enters / exits the