@@ -2,6 +2,9 @@ import { IterableEmbeddedMessageDefaultAction } from './IterableEmbeddedMessageD
22import { IterableEmbeddedMessageElementsButton } from './IterableEmbeddedMessageElementsButton' ;
33import { IterableEmbeddedMessageText } from './IterableEmbeddedMessageText' ;
44
5+ import type { EmbeddedMessageElementsButtonDict } from './IterableEmbeddedMessageElementsButton' ;
6+ import type { EmbeddedMessageTextDict } from './IterableEmbeddedMessageText' ;
7+
58/**
69 * IterableEmbeddedMessageElements represents the elements of an embedded message.
710 */
@@ -24,66 +27,22 @@ export class IterableEmbeddedMessageElements {
2427 /**
2528 * Creates an instance of `IterableEmbeddedMessageElements`.
2629 *
27- * @param title - The title of the embedded message.
28- * @param body - The body of the embedded message.
29- * @param mediaUrl - The url of the embedded message image.
30- * @param mediaUrlCaption - The caption of the embedded message image.
31- * @param defaultAction - The default action of the embedded message.
32- * @param buttons - The buttons of the embedded message.
33- * @param text - The text elements of the embedded message.
34- */
35- constructor (
36- title ?: string ,
37- body ?: string ,
38- mediaUrl ?: string ,
39- mediaUrlCaption ?: string ,
40- defaultAction ?: IterableEmbeddedMessageDefaultAction ,
41- buttons ?: IterableEmbeddedMessageElementsButton [ ] ,
42- text ?: IterableEmbeddedMessageText [ ]
43- ) {
44- this . title = title ;
45- this . body = body ;
46- this . mediaUrl = mediaUrl ;
47- this . mediaUrlCaption = mediaUrlCaption ;
48- this . defaultAction = defaultAction ;
49- this . buttons = buttons ;
50- this . text = text ;
51- }
52-
53- /**
54- * Creates an instance of `IterableEmbeddedMessageElements` from a dictionary object.
55- *
5630 * @param dict - The dictionary object containing the properties to initialize the `IterableEmbeddedMessageElements` instance.
57- * @returns A new instance of `IterableEmbeddedMessageElements` initialized with the provided dictionary properties.
5831 */
59- static fromDict (
60- dict : Partial < EmbeddedMessageElementsDict >
61- ) : IterableEmbeddedMessageElements {
62- const title = dict . title ;
63- const body = dict . body ;
64- const mediaUrl = dict . mediaUrl ;
65- const mediaUrlCaption = dict . mediaUrlCaption ;
66- const defaultAction = dict . defaultAction
32+ constructor ( dict : Partial < EmbeddedMessageElementsDict > ) {
33+ this . title = dict . title ;
34+ this . body = dict . body ;
35+ this . mediaUrl = dict . mediaUrl ;
36+ this . mediaUrlCaption = dict . mediaUrlCaption ;
37+ this . defaultAction = dict . defaultAction
6738 ? IterableEmbeddedMessageDefaultAction . fromDict ( dict . defaultAction )
6839 : undefined ;
6940
70- const buttons = dict . buttons ?. map (
41+ this . buttons = dict . buttons ?. map (
7142 ( button ) => new IterableEmbeddedMessageElementsButton ( button )
7243 ) ;
7344
74- const text = dict . text ?. map (
75- ( text ) => new IterableEmbeddedMessageText ( text )
76- ) ;
77-
78- return new IterableEmbeddedMessageElements (
79- title ,
80- body ,
81- mediaUrl ,
82- mediaUrlCaption ,
83- defaultAction ,
84- buttons ,
85- text
86- ) ;
45+ this . text = dict . text ?. map ( ( text ) => new IterableEmbeddedMessageText ( text ) ) ;
8746 }
8847}
8948
@@ -102,7 +61,7 @@ export interface EmbeddedMessageElementsDict {
10261 /** The default action of the embedded message */
10362 defaultAction ?: IterableEmbeddedMessageDefaultAction ;
10463 /** The buttons of the embedded message */
105- buttons ?: IterableEmbeddedMessageElementsButton [ ] ;
64+ buttons ?: EmbeddedMessageElementsButtonDict [ ] ;
10665 /** The text elements of the embedded message */
107- text ?: IterableEmbeddedMessageText [ ] ;
66+ text ?: EmbeddedMessageTextDict [ ] ;
10867}
0 commit comments