@microsoft/teams.api 2.0.5 → 2.0.6-preview.1
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/dist/activities/event/meeting-end.d.mts +10 -10
- package/dist/activities/event/meeting-end.d.ts +10 -10
- package/dist/activities/event/meeting-participant-leave.d.mts +2 -2
- package/dist/activities/event/meeting-participant-leave.d.ts +2 -2
- package/dist/activities/event/meeting-start.d.mts +10 -10
- package/dist/activities/event/meeting-start.d.ts +10 -10
- package/dist/activities/index.d.mts +2 -2
- package/dist/activities/index.d.ts +2 -2
- package/dist/activities/invoke/index.d.mts +2 -2
- package/dist/activities/invoke/index.d.ts +2 -2
- package/dist/activities/invoke/message-extension/fetch-task.d.mts +2 -2
- package/dist/activities/invoke/message-extension/fetch-task.d.ts +2 -2
- package/dist/activities/invoke/message-extension/index.d.mts +2 -2
- package/dist/activities/invoke/message-extension/index.d.ts +2 -2
- package/dist/activities/invoke/message-extension/submit-action.d.mts +2 -2
- package/dist/activities/invoke/message-extension/submit-action.d.ts +2 -2
- package/dist/activities/message/index.d.mts +2 -2
- package/dist/activities/message/index.d.ts +2 -2
- package/dist/activities/message/message.d.mts +1 -1
- package/dist/activities/message/message.d.ts +1 -1
- package/dist/activities/message/message.js +19 -0
- package/dist/activities/message/message.js.map +1 -1
- package/dist/activities/message/message.mjs +19 -0
- package/dist/activities/message/message.mjs.map +1 -1
- package/dist/activities/utils/index.d.mts +2 -2
- package/dist/activities/utils/index.d.ts +2 -2
- package/dist/activities/utils/strip-mentions-text.d.mts +1 -1
- package/dist/activities/utils/strip-mentions-text.d.ts +1 -1
- package/dist/activities/utils/to-activity-params.d.mts +2 -2
- package/dist/activities/utils/to-activity-params.d.ts +2 -2
- package/dist/{activity-DwOj5ZL-.d.ts → activity-BXTVWTDe.d.ts} +4 -1
- package/dist/{activity-C34R0rny.d.mts → activity-DJwv7Dt6.d.mts} +4 -1
- package/dist/clients/conversation/activity.d.mts +2 -2
- package/dist/clients/conversation/activity.d.ts +2 -2
- package/dist/clients/conversation/activity.js +20 -0
- package/dist/clients/conversation/activity.js.map +1 -1
- package/dist/clients/conversation/activity.mjs +20 -0
- package/dist/clients/conversation/activity.mjs.map +1 -1
- package/dist/clients/conversation/index.d.mts +5 -2
- package/dist/clients/conversation/index.d.ts +5 -2
- package/dist/clients/conversation/index.js +4 -1
- package/dist/clients/conversation/index.js.map +1 -1
- package/dist/clients/conversation/index.mjs +4 -1
- package/dist/clients/conversation/index.mjs.map +1 -1
- package/dist/clients/index.d.mts +2 -2
- package/dist/clients/index.d.ts +2 -2
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/{message-BM7D0_tg.d.mts → message-C7JDFGmD.d.mts} +17 -0
- package/dist/{message-BKfEV_tV.d.ts → message-DyL99RbG.d.ts} +17 -0
- package/dist/models/activity-like.d.mts +2 -2
- package/dist/models/activity-like.d.ts +2 -2
- package/dist/models/index.d.mts +2 -2
- package/dist/models/index.d.ts +2 -2
- package/dist/models/invoke-response.d.mts +2 -2
- package/dist/models/invoke-response.d.ts +2 -2
- package/dist/models/messaging-extension/index.d.mts +2 -2
- package/dist/models/messaging-extension/index.d.ts +2 -2
- package/dist/models/messaging-extension/messaging-extension-action-response.d.mts +2 -2
- package/dist/models/messaging-extension/messaging-extension-action-response.d.ts +2 -2
- package/dist/models/messaging-extension/messaging-extension-action.d.mts +2 -2
- package/dist/models/messaging-extension/messaging-extension-action.d.ts +2 -2
- package/dist/models/messaging-extension/messaging-extension-response.d.mts +2 -2
- package/dist/models/messaging-extension/messaging-extension-response.d.ts +2 -2
- package/dist/models/messaging-extension/messaging-extension-result.d.mts +2 -2
- package/dist/models/messaging-extension/messaging-extension-result.d.ts +2 -2
- package/package.json +5 -5
|
@@ -35,25 +35,25 @@ interface IMeetingEndEventActivity extends IActivity<'event'> {
|
|
|
35
35
|
*/
|
|
36
36
|
value: {
|
|
37
37
|
/**
|
|
38
|
-
* @member {string} [
|
|
38
|
+
* @member {string} [Id] The meeting's Id, encoded as a BASE64 string.
|
|
39
39
|
*/
|
|
40
|
-
|
|
40
|
+
Id: string;
|
|
41
41
|
/**
|
|
42
|
-
* @member {string} [
|
|
42
|
+
* @member {string} [MeetingType] The meeting's type.
|
|
43
43
|
*/
|
|
44
|
-
|
|
44
|
+
MeetingType: string;
|
|
45
45
|
/**
|
|
46
|
-
* @member {string} [
|
|
46
|
+
* @member {string} [JoinUrl] The URL used to join the meeting.
|
|
47
47
|
*/
|
|
48
|
-
|
|
48
|
+
JoinUrl: string;
|
|
49
49
|
/**
|
|
50
|
-
* @member {string} [
|
|
50
|
+
* @member {string} [Title] The title of the meeting.
|
|
51
51
|
*/
|
|
52
|
-
|
|
52
|
+
Title: string;
|
|
53
53
|
/**
|
|
54
|
-
* @member {Date} [
|
|
54
|
+
* @member {Date} [EndTime] Timestamp for meeting end, in UTC.
|
|
55
55
|
*/
|
|
56
|
-
|
|
56
|
+
EndTime: Date;
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
59
|
|
|
@@ -35,25 +35,25 @@ interface IMeetingEndEventActivity extends IActivity<'event'> {
|
|
|
35
35
|
*/
|
|
36
36
|
value: {
|
|
37
37
|
/**
|
|
38
|
-
* @member {string} [
|
|
38
|
+
* @member {string} [Id] The meeting's Id, encoded as a BASE64 string.
|
|
39
39
|
*/
|
|
40
|
-
|
|
40
|
+
Id: string;
|
|
41
41
|
/**
|
|
42
|
-
* @member {string} [
|
|
42
|
+
* @member {string} [MeetingType] The meeting's type.
|
|
43
43
|
*/
|
|
44
|
-
|
|
44
|
+
MeetingType: string;
|
|
45
45
|
/**
|
|
46
|
-
* @member {string} [
|
|
46
|
+
* @member {string} [JoinUrl] The URL used to join the meeting.
|
|
47
47
|
*/
|
|
48
|
-
|
|
48
|
+
JoinUrl: string;
|
|
49
49
|
/**
|
|
50
|
-
* @member {string} [
|
|
50
|
+
* @member {string} [Title] The title of the meeting.
|
|
51
51
|
*/
|
|
52
|
-
|
|
52
|
+
Title: string;
|
|
53
53
|
/**
|
|
54
|
-
* @member {Date} [
|
|
54
|
+
* @member {Date} [EndTime] Timestamp for meeting end, in UTC.
|
|
55
55
|
*/
|
|
56
|
-
|
|
56
|
+
EndTime: Date;
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
59
|
|
|
@@ -35,25 +35,25 @@ interface IMeetingStartEventActivity extends IActivity<'event'> {
|
|
|
35
35
|
*/
|
|
36
36
|
value: {
|
|
37
37
|
/**
|
|
38
|
-
* @member {string} [
|
|
38
|
+
* @member {string} [Id] The meeting's Id, encoded as a BASE64 string.
|
|
39
39
|
*/
|
|
40
|
-
|
|
40
|
+
Id: string;
|
|
41
41
|
/**
|
|
42
|
-
* @member {string} [
|
|
42
|
+
* @member {string} [MeetingType] The meeting's type.
|
|
43
43
|
*/
|
|
44
|
-
|
|
44
|
+
MeetingType: string;
|
|
45
45
|
/**
|
|
46
|
-
* @member {string} [
|
|
46
|
+
* @member {string} [JoinUrl] The URL used to join the meeting.
|
|
47
47
|
*/
|
|
48
|
-
|
|
48
|
+
JoinUrl: string;
|
|
49
49
|
/**
|
|
50
|
-
* @member {string} [
|
|
50
|
+
* @member {string} [Title] The title of the meeting.
|
|
51
51
|
*/
|
|
52
|
-
|
|
52
|
+
Title: string;
|
|
53
53
|
/**
|
|
54
|
-
* @member {Date} [
|
|
54
|
+
* @member {Date} [StartTime] Timestamp for meeting start, in UTC.
|
|
55
55
|
*/
|
|
56
|
-
|
|
56
|
+
StartTime: Date;
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
59
|
|
|
@@ -35,25 +35,25 @@ interface IMeetingStartEventActivity extends IActivity<'event'> {
|
|
|
35
35
|
*/
|
|
36
36
|
value: {
|
|
37
37
|
/**
|
|
38
|
-
* @member {string} [
|
|
38
|
+
* @member {string} [Id] The meeting's Id, encoded as a BASE64 string.
|
|
39
39
|
*/
|
|
40
|
-
|
|
40
|
+
Id: string;
|
|
41
41
|
/**
|
|
42
|
-
* @member {string} [
|
|
42
|
+
* @member {string} [MeetingType] The meeting's type.
|
|
43
43
|
*/
|
|
44
|
-
|
|
44
|
+
MeetingType: string;
|
|
45
45
|
/**
|
|
46
|
-
* @member {string} [
|
|
46
|
+
* @member {string} [JoinUrl] The URL used to join the meeting.
|
|
47
47
|
*/
|
|
48
|
-
|
|
48
|
+
JoinUrl: string;
|
|
49
49
|
/**
|
|
50
|
-
* @member {string} [
|
|
50
|
+
* @member {string} [Title] The title of the meeting.
|
|
51
51
|
*/
|
|
52
|
-
|
|
52
|
+
Title: string;
|
|
53
53
|
/**
|
|
54
|
-
* @member {Date} [
|
|
54
|
+
* @member {Date} [StartTime] Timestamp for meeting start, in UTC.
|
|
55
55
|
*/
|
|
56
|
-
|
|
56
|
+
StartTime: Date;
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
59
|
|
|
@@ -3,11 +3,11 @@ export { ConversationActivity } from './conversation/index.mjs';
|
|
|
3
3
|
export { EventActivity } from './event/index.mjs';
|
|
4
4
|
export { IHandoffActivity } from './handoff.mjs';
|
|
5
5
|
export { InstallUpdateActivity } from './install-update/index.mjs';
|
|
6
|
-
export { b as Activity, d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, I as InvokeActivity, c as MessageExtensionInvokeActivity, t as toActivityParams } from '../activity-
|
|
6
|
+
export { b as Activity, d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, I as InvokeActivity, c as MessageExtensionInvokeActivity, t as toActivityParams } from '../activity-DJwv7Dt6.mjs';
|
|
7
7
|
export { $MessageActivity } from './message/index.mjs';
|
|
8
8
|
export { ITraceActivity } from './trace.mjs';
|
|
9
9
|
export { ITypingActivity, TypingActivity } from './typing.mjs';
|
|
10
|
-
export { A as AddMentionOptions, I as IMessageActivity, M as MessageActivity, S as StripMentionsTextOptions, s as stripMentionsText } from '../message-
|
|
10
|
+
export { A as AddMentionOptions, I as IMessageActivity, M as MessageActivity, S as StripMentionsTextOptions, s as stripMentionsText } from '../message-C7JDFGmD.mjs';
|
|
11
11
|
export { Activity as $Activity, IActivity } from './activity.mjs';
|
|
12
12
|
export { IMessageDeleteActivity, MessageDeleteActivity } from './message/message-delete.mjs';
|
|
13
13
|
export { IMessageUpdateActivity, MessageUpdateActivity } from './message/message-update.mjs';
|
|
@@ -3,11 +3,11 @@ export { ConversationActivity } from './conversation/index.js';
|
|
|
3
3
|
export { EventActivity } from './event/index.js';
|
|
4
4
|
export { IHandoffActivity } from './handoff.js';
|
|
5
5
|
export { InstallUpdateActivity } from './install-update/index.js';
|
|
6
|
-
export { b as Activity, d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, I as InvokeActivity, c as MessageExtensionInvokeActivity, t as toActivityParams } from '../activity-
|
|
6
|
+
export { b as Activity, d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, I as InvokeActivity, c as MessageExtensionInvokeActivity, t as toActivityParams } from '../activity-BXTVWTDe.js';
|
|
7
7
|
export { $MessageActivity } from './message/index.js';
|
|
8
8
|
export { ITraceActivity } from './trace.js';
|
|
9
9
|
export { ITypingActivity, TypingActivity } from './typing.js';
|
|
10
|
-
export { A as AddMentionOptions, I as IMessageActivity, M as MessageActivity, S as StripMentionsTextOptions, s as stripMentionsText } from '../message-
|
|
10
|
+
export { A as AddMentionOptions, I as IMessageActivity, M as MessageActivity, S as StripMentionsTextOptions, s as stripMentionsText } from '../message-DyL99RbG.js';
|
|
11
11
|
export { Activity as $Activity, IActivity } from './activity.js';
|
|
12
12
|
export { IMessageDeleteActivity, MessageDeleteActivity } from './message/message-delete.js';
|
|
13
13
|
export { IMessageUpdateActivity, MessageUpdateActivity } from './message/message-update.js';
|
|
@@ -4,7 +4,7 @@ export { IExecuteActionInvokeActivity } from './execute-action.mjs';
|
|
|
4
4
|
export { IFileConsentInvokeActivity } from './file-consent.mjs';
|
|
5
5
|
export { IHandoffActionInvokeActivity } from './handoff-action.mjs';
|
|
6
6
|
export { MessageInvokeActivity } from './message/index.mjs';
|
|
7
|
-
export { d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, I as InvokeActivity, c as MessageExtensionInvokeActivity } from '../../activity-
|
|
7
|
+
export { d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, I as InvokeActivity, c as MessageExtensionInvokeActivity } from '../../activity-DJwv7Dt6.mjs';
|
|
8
8
|
export { SignInInvokeActivity } from './sign-in/index.mjs';
|
|
9
9
|
export { TabInvokeActivity } from './tab/index.mjs';
|
|
10
10
|
export { TaskInvokeActivity } from './task/index.mjs';
|
|
@@ -60,7 +60,7 @@ import '../../models/o365/o365-connector-card-action-query.mjs';
|
|
|
60
60
|
import '../../models/file/file-consent-card.mjs';
|
|
61
61
|
import '../../models/action.mjs';
|
|
62
62
|
import '../../models/file/file-upload-info.mjs';
|
|
63
|
-
import '../../message-
|
|
63
|
+
import '../../message-C7JDFGmD.mjs';
|
|
64
64
|
import '../../models/input-hint.mjs';
|
|
65
65
|
import '../../models/text-format.mjs';
|
|
66
66
|
import '../../models/attachment/attachment.mjs';
|
|
@@ -4,7 +4,7 @@ export { IExecuteActionInvokeActivity } from './execute-action.js';
|
|
|
4
4
|
export { IFileConsentInvokeActivity } from './file-consent.js';
|
|
5
5
|
export { IHandoffActionInvokeActivity } from './handoff-action.js';
|
|
6
6
|
export { MessageInvokeActivity } from './message/index.js';
|
|
7
|
-
export { d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, I as InvokeActivity, c as MessageExtensionInvokeActivity } from '../../activity-
|
|
7
|
+
export { d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, I as InvokeActivity, c as MessageExtensionInvokeActivity } from '../../activity-BXTVWTDe.js';
|
|
8
8
|
export { SignInInvokeActivity } from './sign-in/index.js';
|
|
9
9
|
export { TabInvokeActivity } from './tab/index.js';
|
|
10
10
|
export { TaskInvokeActivity } from './task/index.js';
|
|
@@ -60,7 +60,7 @@ import '../../models/o365/o365-connector-card-action-query.js';
|
|
|
60
60
|
import '../../models/file/file-consent-card.js';
|
|
61
61
|
import '../../models/action.js';
|
|
62
62
|
import '../../models/file/file-upload-info.js';
|
|
63
|
-
import '../../message-
|
|
63
|
+
import '../../message-DyL99RbG.js';
|
|
64
64
|
import '../../models/input-hint.js';
|
|
65
65
|
import '../../models/text-format.js';
|
|
66
66
|
import '../../models/attachment/attachment.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '../../../models/conversation/conversation-reference.mjs';
|
|
2
2
|
import '../../activity.mjs';
|
|
3
|
-
export { d as IMessageExtensionFetchTaskInvokeActivity } from '../../../activity-
|
|
3
|
+
export { d as IMessageExtensionFetchTaskInvokeActivity } from '../../../activity-DJwv7Dt6.mjs';
|
|
4
4
|
import '../../../models/account.mjs';
|
|
5
5
|
import '../../../models/membership-source.mjs';
|
|
6
6
|
import '../../../models/membership-source-types.mjs';
|
|
@@ -25,7 +25,7 @@ import '../../../models/channel-data/on-behalf-of.mjs';
|
|
|
25
25
|
import '../../../models/channel-data/settings.mjs';
|
|
26
26
|
import '../../../models/channel-data/team-info.mjs';
|
|
27
27
|
import '../../../models/channel-data/tenant-info.mjs';
|
|
28
|
-
import '../../../message-
|
|
28
|
+
import '../../../message-C7JDFGmD.mjs';
|
|
29
29
|
import '../../../models/input-hint.mjs';
|
|
30
30
|
import '../../../models/text-format.mjs';
|
|
31
31
|
import '../../../models/attachment/attachment.mjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '../../../models/conversation/conversation-reference.js';
|
|
2
2
|
import '../../activity.js';
|
|
3
|
-
export { d as IMessageExtensionFetchTaskInvokeActivity } from '../../../activity-
|
|
3
|
+
export { d as IMessageExtensionFetchTaskInvokeActivity } from '../../../activity-BXTVWTDe.js';
|
|
4
4
|
import '../../../models/account.js';
|
|
5
5
|
import '../../../models/membership-source.js';
|
|
6
6
|
import '../../../models/membership-source-types.js';
|
|
@@ -25,7 +25,7 @@ import '../../../models/channel-data/on-behalf-of.js';
|
|
|
25
25
|
import '../../../models/channel-data/settings.js';
|
|
26
26
|
import '../../../models/channel-data/team-info.js';
|
|
27
27
|
import '../../../models/channel-data/tenant-info.js';
|
|
28
|
-
import '../../../message-
|
|
28
|
+
import '../../../message-DyL99RbG.js';
|
|
29
29
|
import '../../../models/input-hint.js';
|
|
30
30
|
import '../../../models/text-format.js';
|
|
31
31
|
import '../../../models/attachment/attachment.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { IMessageExtensionAnonQueryLinkInvokeActivity } from './anon-query-link.mjs';
|
|
2
2
|
export { IMessageExtensionCardButtonClickedInvokeActivity } from './card-button-clicked.mjs';
|
|
3
|
-
export { d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, c as MessageExtensionInvokeActivity } from '../../../activity-
|
|
3
|
+
export { d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, c as MessageExtensionInvokeActivity } from '../../../activity-DJwv7Dt6.mjs';
|
|
4
4
|
export { IMessageExtensionQueryInvokeActivity } from './query.mjs';
|
|
5
5
|
export { IMessageExtensionQueryLinkInvokeActivity } from './query-link.mjs';
|
|
6
6
|
export { IMessageExtensionQuerySettingUrlInvokeActivity } from './query-setting-url.mjs';
|
|
@@ -33,7 +33,7 @@ import '../../../models/channel-data/on-behalf-of.mjs';
|
|
|
33
33
|
import '../../../models/channel-data/settings.mjs';
|
|
34
34
|
import '../../../models/channel-data/team-info.mjs';
|
|
35
35
|
import '../../../models/channel-data/tenant-info.mjs';
|
|
36
|
-
import '../../../message-
|
|
36
|
+
import '../../../message-C7JDFGmD.mjs';
|
|
37
37
|
import '../../../models/input-hint.mjs';
|
|
38
38
|
import '../../../models/text-format.mjs';
|
|
39
39
|
import '../../../models/attachment/attachment.mjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { IMessageExtensionAnonQueryLinkInvokeActivity } from './anon-query-link.js';
|
|
2
2
|
export { IMessageExtensionCardButtonClickedInvokeActivity } from './card-button-clicked.js';
|
|
3
|
-
export { d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, c as MessageExtensionInvokeActivity } from '../../../activity-
|
|
3
|
+
export { d as IMessageExtensionFetchTaskInvokeActivity, e as IMessageExtensionSubmitActionInvokeActivity, c as MessageExtensionInvokeActivity } from '../../../activity-BXTVWTDe.js';
|
|
4
4
|
export { IMessageExtensionQueryInvokeActivity } from './query.js';
|
|
5
5
|
export { IMessageExtensionQueryLinkInvokeActivity } from './query-link.js';
|
|
6
6
|
export { IMessageExtensionQuerySettingUrlInvokeActivity } from './query-setting-url.js';
|
|
@@ -33,7 +33,7 @@ import '../../../models/channel-data/on-behalf-of.js';
|
|
|
33
33
|
import '../../../models/channel-data/settings.js';
|
|
34
34
|
import '../../../models/channel-data/team-info.js';
|
|
35
35
|
import '../../../models/channel-data/tenant-info.js';
|
|
36
|
-
import '../../../message-
|
|
36
|
+
import '../../../message-DyL99RbG.js';
|
|
37
37
|
import '../../../models/input-hint.js';
|
|
38
38
|
import '../../../models/text-format.js';
|
|
39
39
|
import '../../../models/attachment/attachment.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '../../../models/conversation/conversation-reference.mjs';
|
|
2
2
|
import '../../activity.mjs';
|
|
3
|
-
export { e as IMessageExtensionSubmitActionInvokeActivity } from '../../../activity-
|
|
3
|
+
export { e as IMessageExtensionSubmitActionInvokeActivity } from '../../../activity-DJwv7Dt6.mjs';
|
|
4
4
|
import '../../../models/account.mjs';
|
|
5
5
|
import '../../../models/membership-source.mjs';
|
|
6
6
|
import '../../../models/membership-source-types.mjs';
|
|
@@ -25,7 +25,7 @@ import '../../../models/channel-data/on-behalf-of.mjs';
|
|
|
25
25
|
import '../../../models/channel-data/settings.mjs';
|
|
26
26
|
import '../../../models/channel-data/team-info.mjs';
|
|
27
27
|
import '../../../models/channel-data/tenant-info.mjs';
|
|
28
|
-
import '../../../message-
|
|
28
|
+
import '../../../message-C7JDFGmD.mjs';
|
|
29
29
|
import '../../../models/input-hint.mjs';
|
|
30
30
|
import '../../../models/text-format.mjs';
|
|
31
31
|
import '../../../models/attachment/attachment.mjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '../../../models/conversation/conversation-reference.js';
|
|
2
2
|
import '../../activity.js';
|
|
3
|
-
export { e as IMessageExtensionSubmitActionInvokeActivity } from '../../../activity-
|
|
3
|
+
export { e as IMessageExtensionSubmitActionInvokeActivity } from '../../../activity-BXTVWTDe.js';
|
|
4
4
|
import '../../../models/account.js';
|
|
5
5
|
import '../../../models/membership-source.js';
|
|
6
6
|
import '../../../models/membership-source-types.js';
|
|
@@ -25,7 +25,7 @@ import '../../../models/channel-data/on-behalf-of.js';
|
|
|
25
25
|
import '../../../models/channel-data/settings.js';
|
|
26
26
|
import '../../../models/channel-data/team-info.js';
|
|
27
27
|
import '../../../models/channel-data/tenant-info.js';
|
|
28
|
-
import '../../../message-
|
|
28
|
+
import '../../../message-DyL99RbG.js';
|
|
29
29
|
import '../../../models/input-hint.js';
|
|
30
30
|
import '../../../models/text-format.js';
|
|
31
31
|
import '../../../models/attachment/attachment.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { I as IMessageActivity } from '../../message-
|
|
2
|
-
export { A as AddMentionOptions, M as MessageActivity } from '../../message-
|
|
1
|
+
import { I as IMessageActivity } from '../../message-C7JDFGmD.mjs';
|
|
2
|
+
export { A as AddMentionOptions, M as MessageActivity } from '../../message-C7JDFGmD.mjs';
|
|
3
3
|
import { IMessageDeleteActivity } from './message-delete.mjs';
|
|
4
4
|
export { MessageDeleteActivity } from './message-delete.mjs';
|
|
5
5
|
import { IMessageReactionActivity } from './message-reaction.mjs';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { I as IMessageActivity } from '../../message-
|
|
2
|
-
export { A as AddMentionOptions, M as MessageActivity } from '../../message-
|
|
1
|
+
import { I as IMessageActivity } from '../../message-DyL99RbG.js';
|
|
2
|
+
export { A as AddMentionOptions, M as MessageActivity } from '../../message-DyL99RbG.js';
|
|
3
3
|
import { IMessageDeleteActivity } from './message-delete.js';
|
|
4
4
|
export { MessageDeleteActivity } from './message-delete.js';
|
|
5
5
|
import { IMessageReactionActivity } from './message-reaction.js';
|
|
@@ -9,7 +9,7 @@ import '../../models/suggested-actions.mjs';
|
|
|
9
9
|
import '../../models/importance.mjs';
|
|
10
10
|
import '../../models/delivery-mode.mjs';
|
|
11
11
|
import '../activity.mjs';
|
|
12
|
-
export { A as AddMentionOptions, I as IMessageActivity, M as MessageActivity } from '../../message-
|
|
12
|
+
export { A as AddMentionOptions, I as IMessageActivity, M as MessageActivity } from '../../message-C7JDFGmD.mjs';
|
|
13
13
|
import '../../models/membership-source.mjs';
|
|
14
14
|
import '../../models/membership-source-types.mjs';
|
|
15
15
|
import '../../models/membership-types.mjs';
|
|
@@ -9,7 +9,7 @@ import '../../models/suggested-actions.js';
|
|
|
9
9
|
import '../../models/importance.js';
|
|
10
10
|
import '../../models/delivery-mode.js';
|
|
11
11
|
import '../activity.js';
|
|
12
|
-
export { A as AddMentionOptions, I as IMessageActivity, M as MessageActivity } from '../../message-
|
|
12
|
+
export { A as AddMentionOptions, I as IMessageActivity, M as MessageActivity } from '../../message-DyL99RbG.js';
|
|
13
13
|
import '../../models/membership-source.js';
|
|
14
14
|
import '../../models/membership-source-types.js';
|
|
15
15
|
import '../../models/membership-types.js';
|
|
@@ -58,6 +58,10 @@ class MessageActivity extends activity.Activity {
|
|
|
58
58
|
* A value that is associated with the activity.
|
|
59
59
|
*/
|
|
60
60
|
value;
|
|
61
|
+
/**
|
|
62
|
+
* Indicates if this is a targeted message visible only to a specific recipient.
|
|
63
|
+
*/
|
|
64
|
+
isTargeted;
|
|
61
65
|
constructor(text = "", value = {}) {
|
|
62
66
|
super({
|
|
63
67
|
...value,
|
|
@@ -243,6 +247,21 @@ class MessageActivity extends activity.Activity {
|
|
|
243
247
|
streamType: "final"
|
|
244
248
|
});
|
|
245
249
|
}
|
|
250
|
+
/**
|
|
251
|
+
* Mark this message as a targeted message visible only to a specific recipient.
|
|
252
|
+
* @param recipientOrFlag - If `true`, the recipient will be inferred from the incoming activity context.
|
|
253
|
+
* If a string, it specifies the explicit recipient ID.
|
|
254
|
+
* @returns this instance for chaining
|
|
255
|
+
* @remarks When using `true`, this must be sent within an activity context (not proactively).
|
|
256
|
+
* For proactive sends, you must provide an explicit recipient ID.
|
|
257
|
+
*/
|
|
258
|
+
withTargetedRecipient(recipientOrFlag) {
|
|
259
|
+
this.isTargeted = true;
|
|
260
|
+
if (typeof recipientOrFlag === "string") {
|
|
261
|
+
this.recipient = { id: recipientOrFlag, name: "", role: "user" };
|
|
262
|
+
}
|
|
263
|
+
return this;
|
|
264
|
+
}
|
|
246
265
|
}
|
|
247
266
|
|
|
248
267
|
exports.MessageActivity = MessageActivity;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/activities/message/message.ts"],"names":["Activity","cardAttachment","stripMentionsText"],"mappings":"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","file":"message.js","sourcesContent":["import {\n Account,\n Attachment,\n AttachmentLayout,\n cardAttachment,\n CardAttachmentType,\n CardAttachmentTypes,\n DeliveryMode,\n Importance,\n InputHint,\n MentionEntity,\n SuggestedActions,\n TextFormat,\n} from '../../models';\nimport { Activity, IActivity } from '../activity';\nimport { stripMentionsText, StripMentionsTextOptions } from '../utils';\n\nexport interface IMessageActivity extends IActivity<'message'> {\n /**\n * The text content of the message.\n */\n text: string;\n\n /**\n * The text to speak.\n */\n speak?: string;\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n inputHint?: InputHint;\n\n /**\n * The text to display if the channel cannot render cards.\n */\n summary?: string;\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n textFormat?: TextFormat;\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n attachmentLayout?: AttachmentLayout;\n\n /**\n * Attachments\n */\n attachments?: Attachment[];\n\n /**\n * The suggested actions for the activity.\n */\n suggestedActions?: SuggestedActions;\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n importance?: Importance;\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n deliveryMode?: DeliveryMode;\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n expiration?: Date;\n\n /**\n * A value that is associated with the activity.\n */\n value?: any;\n\n /**\n * remove \"\\<at>...\\</at>\" text from an activity\n */\n stripMentionsText(options?: StripMentionsTextOptions): IMessageActivity;\n\n /**\n * is the recipient account mentioned\n */\n isRecipientMentioned(): boolean;\n\n /**\n * get a mention by the account id if exists\n */\n getAccountMention(accountId: string): MentionEntity | undefined;\n}\n\nexport class MessageActivity extends Activity<'message'> implements IMessageActivity {\n /**\n * The text content of the message.\n */\n text!: string;\n\n /**\n * The text to speak.\n */\n speak?: string;\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n inputHint?: InputHint;\n\n /**\n * The text to display if the channel cannot render cards.\n */\n summary?: string;\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n textFormat?: TextFormat;\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n attachmentLayout?: AttachmentLayout;\n\n /**\n * Attachments\n */\n attachments?: Attachment[];\n\n /**\n * The suggested actions for the activity.\n */\n suggestedActions?: SuggestedActions;\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n importance?: Importance;\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n deliveryMode?: DeliveryMode;\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n expiration?: Date;\n\n /**\n * A value that is associated with the activity.\n */\n value?: any;\n\n constructor(text: string = '', value: Omit<Partial<IMessageActivity>, 'type'> = {}) {\n super({\n ...value,\n type: 'message',\n });\n\n Object.assign(this, { text, ...value });\n }\n\n /**\n * initialize from interface\n */\n static from(activity: IMessageActivity) {\n return new MessageActivity(activity.text, activity);\n }\n\n /**\n * convert to interface\n */\n toInterface(): IMessageActivity {\n return Object.assign(\n {\n stripMentionsText: this.stripMentionsText.bind(this),\n isRecipientMentioned: this.isRecipientMentioned.bind(this),\n getAccountMention: this.getAccountMention.bind(this),\n },\n this\n );\n }\n\n /**\n * copy to a new instance\n */\n clone(options: Omit<Partial<IMessageActivity>, 'type'> = {}) {\n return new MessageActivity(this.text, {\n ...this.toInterface(),\n ...options,\n });\n }\n\n /**\n * The text content of the message.\n */\n withText(value: string) {\n this.text = value;\n return this;\n }\n\n /**\n * The text to speak.\n */\n withSpeak(value: string) {\n this.speak = value;\n return this;\n }\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n withInputHint(value: InputHint) {\n this.inputHint = value;\n return this;\n }\n\n /**\n * The text to display if the channel cannot render cards.\n */\n withSummary(value: string) {\n this.summary = value;\n return this;\n }\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n withTextFormat(value: TextFormat) {\n this.textFormat = value;\n return this;\n }\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n withAttachmentLayout(value: AttachmentLayout) {\n this.attachmentLayout = value;\n return this;\n }\n\n /**\n * The suggested actions for the activity.\n */\n withSuggestedActions(value: SuggestedActions) {\n this.suggestedActions = value;\n return this;\n }\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n withImportance(value: Importance) {\n this.importance = value;\n return this;\n }\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n withDeliveryMode(value: DeliveryMode) {\n this.deliveryMode = value;\n return this;\n }\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n withExpiration(value: Date) {\n this.expiration = value;\n return this;\n }\n\n /**\n * Append text\n */\n addText(text: string) {\n this.text += text;\n return this;\n }\n\n /**\n * Attachments\n */\n addAttachments(...value: Attachment[]) {\n if (!this.attachments) {\n this.attachments = [];\n }\n\n this.attachments.push(...value);\n return this;\n }\n\n /**\n * `@mention` an account\n * @param account the account to mention\n * @param options options to customize the mention\n */\n addMention(account: Account, options: AddMentionOptions = {}) {\n const text = options.text || account.name;\n const addText = options.addText ?? true;\n\n if (addText) {\n this.addText(`<at>${text}</at>`);\n }\n\n return this.addEntity({\n type: 'mention',\n mentioned: account,\n text: `<at>${text}</at>`,\n });\n }\n\n /**\n * Add a card attachment\n */\n addCard<T extends CardAttachmentType>(type: T, content: CardAttachmentTypes[T]['content']) {\n return this.addAttachments(cardAttachment(type, content));\n }\n\n /**\n * remove \"\\<at>...\\</at>\" text from an activity\n */\n stripMentionsText(options: StripMentionsTextOptions = {}) {\n this.text = stripMentionsText(this, options);\n return this;\n }\n\n /**\n * is the recipient account mentioned\n */\n isRecipientMentioned() {\n return (this.entities || [])\n .filter((e) => e.type === 'mention')\n .some((e) => e.mentioned.id === this.recipient.id);\n }\n\n /**\n * get a mention by the account id if exists\n */\n getAccountMention(accountId: string) {\n return (this.entities || [])\n .filter((e) => e.type === 'mention')\n .find((e) => e.mentioned.id === accountId);\n }\n\n /**\n * Add stream info, making\n * this a final stream message\n */\n addStreamFinal() {\n if (!this.channelData) {\n this.channelData = {};\n }\n\n this.channelData.streamId = this.id;\n this.channelData.streamType = 'final';\n\n return this.addEntity({\n type: 'streaminfo',\n streamId: this.id,\n streamType: 'final',\n });\n }\n}\n\n/**\n * options for adding a mention\n * to an activity\n */\nexport type AddMentionOptions = {\n /**\n * if `true`, append the mention `text` to the `activity.text`\n * @default true\n */\n readonly addText?: boolean;\n\n /**\n * the `text` to use for the mention\n *\n * @default `account.name`\n * @remark\n * this text should not include `<at>` or `</at>`\n */\n readonly text?: string;\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/activities/message/message.ts"],"names":["Activity","cardAttachment","stripMentionsText"],"mappings":"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","file":"message.js","sourcesContent":["import {\n Account,\n Attachment,\n AttachmentLayout,\n cardAttachment,\n CardAttachmentType,\n CardAttachmentTypes,\n DeliveryMode,\n Importance,\n InputHint,\n MentionEntity,\n SuggestedActions,\n TextFormat,\n} from '../../models';\nimport { Activity, IActivity } from '../activity';\nimport { stripMentionsText, StripMentionsTextOptions } from '../utils';\n\nexport interface IMessageActivity extends IActivity<'message'> {\n /**\n * The text content of the message.\n */\n text: string;\n\n /**\n * The text to speak.\n */\n speak?: string;\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n inputHint?: InputHint;\n\n /**\n * The text to display if the channel cannot render cards.\n */\n summary?: string;\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n textFormat?: TextFormat;\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n attachmentLayout?: AttachmentLayout;\n\n /**\n * Attachments\n */\n attachments?: Attachment[];\n\n /**\n * The suggested actions for the activity.\n */\n suggestedActions?: SuggestedActions;\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n importance?: Importance;\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n deliveryMode?: DeliveryMode;\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n expiration?: Date;\n\n /**\n * A value that is associated with the activity.\n */\n value?: any;\n\n /**\n * Indicates if this is a targeted message visible only to a specific recipient.\n */\n isTargeted?: boolean;\n\n /**\n * remove \"\\<at>...\\</at>\" text from an activity\n */\n stripMentionsText(options?: StripMentionsTextOptions): IMessageActivity;\n\n /**\n * is the recipient account mentioned\n */\n isRecipientMentioned(): boolean;\n\n /**\n * get a mention by the account id if exists\n */\n getAccountMention(accountId: string): MentionEntity | undefined;\n}\n\nexport class MessageActivity extends Activity<'message'> implements IMessageActivity {\n /**\n * The text content of the message.\n */\n text!: string;\n\n /**\n * The text to speak.\n */\n speak?: string;\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n inputHint?: InputHint;\n\n /**\n * The text to display if the channel cannot render cards.\n */\n summary?: string;\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n textFormat?: TextFormat;\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n attachmentLayout?: AttachmentLayout;\n\n /**\n * Attachments\n */\n attachments?: Attachment[];\n\n /**\n * The suggested actions for the activity.\n */\n suggestedActions?: SuggestedActions;\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n importance?: Importance;\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n deliveryMode?: DeliveryMode;\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n expiration?: Date;\n\n /**\n * A value that is associated with the activity.\n */\n value?: any;\n\n /**\n * Indicates if this is a targeted message visible only to a specific recipient.\n */\n isTargeted?: boolean;\n\n constructor(text: string = '', value: Omit<Partial<IMessageActivity>, 'type'> = {}) {\n super({\n ...value,\n type: 'message',\n });\n\n Object.assign(this, { text, ...value });\n }\n\n /**\n * initialize from interface\n */\n static from(activity: IMessageActivity) {\n return new MessageActivity(activity.text, activity);\n }\n\n /**\n * convert to interface\n */\n toInterface(): IMessageActivity {\n return Object.assign(\n {\n stripMentionsText: this.stripMentionsText.bind(this),\n isRecipientMentioned: this.isRecipientMentioned.bind(this),\n getAccountMention: this.getAccountMention.bind(this),\n },\n this\n );\n }\n\n /**\n * copy to a new instance\n */\n clone(options: Omit<Partial<IMessageActivity>, 'type'> = {}) {\n return new MessageActivity(this.text, {\n ...this.toInterface(),\n ...options,\n });\n }\n\n /**\n * The text content of the message.\n */\n withText(value: string) {\n this.text = value;\n return this;\n }\n\n /**\n * The text to speak.\n */\n withSpeak(value: string) {\n this.speak = value;\n return this;\n }\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n withInputHint(value: InputHint) {\n this.inputHint = value;\n return this;\n }\n\n /**\n * The text to display if the channel cannot render cards.\n */\n withSummary(value: string) {\n this.summary = value;\n return this;\n }\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n withTextFormat(value: TextFormat) {\n this.textFormat = value;\n return this;\n }\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n withAttachmentLayout(value: AttachmentLayout) {\n this.attachmentLayout = value;\n return this;\n }\n\n /**\n * The suggested actions for the activity.\n */\n withSuggestedActions(value: SuggestedActions) {\n this.suggestedActions = value;\n return this;\n }\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n withImportance(value: Importance) {\n this.importance = value;\n return this;\n }\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n withDeliveryMode(value: DeliveryMode) {\n this.deliveryMode = value;\n return this;\n }\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n withExpiration(value: Date) {\n this.expiration = value;\n return this;\n }\n\n /**\n * Append text\n */\n addText(text: string) {\n this.text += text;\n return this;\n }\n\n /**\n * Attachments\n */\n addAttachments(...value: Attachment[]) {\n if (!this.attachments) {\n this.attachments = [];\n }\n\n this.attachments.push(...value);\n return this;\n }\n\n /**\n * `@mention` an account\n * @param account the account to mention\n * @param options options to customize the mention\n */\n addMention(account: Account, options: AddMentionOptions = {}) {\n const text = options.text || account.name;\n const addText = options.addText ?? true;\n\n if (addText) {\n this.addText(`<at>${text}</at>`);\n }\n\n return this.addEntity({\n type: 'mention',\n mentioned: account,\n text: `<at>${text}</at>`,\n });\n }\n\n /**\n * Add a card attachment\n */\n addCard<T extends CardAttachmentType>(type: T, content: CardAttachmentTypes[T]['content']) {\n return this.addAttachments(cardAttachment(type, content));\n }\n\n /**\n * remove \"\\<at>...\\</at>\" text from an activity\n */\n stripMentionsText(options: StripMentionsTextOptions = {}) {\n this.text = stripMentionsText(this, options);\n return this;\n }\n\n /**\n * is the recipient account mentioned\n */\n isRecipientMentioned() {\n return (this.entities || [])\n .filter((e) => e.type === 'mention')\n .some((e) => e.mentioned.id === this.recipient.id);\n }\n\n /**\n * get a mention by the account id if exists\n */\n getAccountMention(accountId: string) {\n return (this.entities || [])\n .filter((e) => e.type === 'mention')\n .find((e) => e.mentioned.id === accountId);\n }\n\n /**\n * Add stream info, making\n * this a final stream message\n */\n addStreamFinal() {\n if (!this.channelData) {\n this.channelData = {};\n }\n\n this.channelData.streamId = this.id;\n this.channelData.streamType = 'final';\n\n return this.addEntity({\n type: 'streaminfo',\n streamId: this.id,\n streamType: 'final',\n });\n }\n\n /**\n * Mark this message as a targeted message visible only to a specific recipient.\n * @param recipientOrFlag - If `true`, the recipient will be inferred from the incoming activity context.\n * If a string, it specifies the explicit recipient ID.\n * @returns this instance for chaining\n * @remarks When using `true`, this must be sent within an activity context (not proactively).\n * For proactive sends, you must provide an explicit recipient ID.\n */\n withTargetedRecipient(recipientOrFlag: true | string) {\n this.isTargeted = true;\n if (typeof recipientOrFlag === 'string') {\n this.recipient = { id: recipientOrFlag, name: '', role: 'user' };\n }\n return this;\n }\n}\n\n/**\n * options for adding a mention\n * to an activity\n */\nexport type AddMentionOptions = {\n /**\n * if `true`, append the mention `text` to the `activity.text`\n * @default true\n */\n readonly addText?: boolean;\n\n /**\n * the `text` to use for the mention\n *\n * @default `account.name`\n * @remark\n * this text should not include `<at>` or `</at>`\n */\n readonly text?: string;\n};\n"]}
|
|
@@ -56,6 +56,10 @@ class MessageActivity extends Activity {
|
|
|
56
56
|
* A value that is associated with the activity.
|
|
57
57
|
*/
|
|
58
58
|
value;
|
|
59
|
+
/**
|
|
60
|
+
* Indicates if this is a targeted message visible only to a specific recipient.
|
|
61
|
+
*/
|
|
62
|
+
isTargeted;
|
|
59
63
|
constructor(text = "", value = {}) {
|
|
60
64
|
super({
|
|
61
65
|
...value,
|
|
@@ -241,6 +245,21 @@ class MessageActivity extends Activity {
|
|
|
241
245
|
streamType: "final"
|
|
242
246
|
});
|
|
243
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* Mark this message as a targeted message visible only to a specific recipient.
|
|
250
|
+
* @param recipientOrFlag - If `true`, the recipient will be inferred from the incoming activity context.
|
|
251
|
+
* If a string, it specifies the explicit recipient ID.
|
|
252
|
+
* @returns this instance for chaining
|
|
253
|
+
* @remarks When using `true`, this must be sent within an activity context (not proactively).
|
|
254
|
+
* For proactive sends, you must provide an explicit recipient ID.
|
|
255
|
+
*/
|
|
256
|
+
withTargetedRecipient(recipientOrFlag) {
|
|
257
|
+
this.isTargeted = true;
|
|
258
|
+
if (typeof recipientOrFlag === "string") {
|
|
259
|
+
this.recipient = { id: recipientOrFlag, name: "", role: "user" };
|
|
260
|
+
}
|
|
261
|
+
return this;
|
|
262
|
+
}
|
|
244
263
|
}
|
|
245
264
|
|
|
246
265
|
export { MessageActivity };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/activities/message/message.ts"],"names":[],"mappings":"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","file":"message.mjs","sourcesContent":["import {\n Account,\n Attachment,\n AttachmentLayout,\n cardAttachment,\n CardAttachmentType,\n CardAttachmentTypes,\n DeliveryMode,\n Importance,\n InputHint,\n MentionEntity,\n SuggestedActions,\n TextFormat,\n} from '../../models';\nimport { Activity, IActivity } from '../activity';\nimport { stripMentionsText, StripMentionsTextOptions } from '../utils';\n\nexport interface IMessageActivity extends IActivity<'message'> {\n /**\n * The text content of the message.\n */\n text: string;\n\n /**\n * The text to speak.\n */\n speak?: string;\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n inputHint?: InputHint;\n\n /**\n * The text to display if the channel cannot render cards.\n */\n summary?: string;\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n textFormat?: TextFormat;\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n attachmentLayout?: AttachmentLayout;\n\n /**\n * Attachments\n */\n attachments?: Attachment[];\n\n /**\n * The suggested actions for the activity.\n */\n suggestedActions?: SuggestedActions;\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n importance?: Importance;\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n deliveryMode?: DeliveryMode;\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n expiration?: Date;\n\n /**\n * A value that is associated with the activity.\n */\n value?: any;\n\n /**\n * remove \"\\<at>...\\</at>\" text from an activity\n */\n stripMentionsText(options?: StripMentionsTextOptions): IMessageActivity;\n\n /**\n * is the recipient account mentioned\n */\n isRecipientMentioned(): boolean;\n\n /**\n * get a mention by the account id if exists\n */\n getAccountMention(accountId: string): MentionEntity | undefined;\n}\n\nexport class MessageActivity extends Activity<'message'> implements IMessageActivity {\n /**\n * The text content of the message.\n */\n text!: string;\n\n /**\n * The text to speak.\n */\n speak?: string;\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n inputHint?: InputHint;\n\n /**\n * The text to display if the channel cannot render cards.\n */\n summary?: string;\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n textFormat?: TextFormat;\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n attachmentLayout?: AttachmentLayout;\n\n /**\n * Attachments\n */\n attachments?: Attachment[];\n\n /**\n * The suggested actions for the activity.\n */\n suggestedActions?: SuggestedActions;\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n importance?: Importance;\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n deliveryMode?: DeliveryMode;\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n expiration?: Date;\n\n /**\n * A value that is associated with the activity.\n */\n value?: any;\n\n constructor(text: string = '', value: Omit<Partial<IMessageActivity>, 'type'> = {}) {\n super({\n ...value,\n type: 'message',\n });\n\n Object.assign(this, { text, ...value });\n }\n\n /**\n * initialize from interface\n */\n static from(activity: IMessageActivity) {\n return new MessageActivity(activity.text, activity);\n }\n\n /**\n * convert to interface\n */\n toInterface(): IMessageActivity {\n return Object.assign(\n {\n stripMentionsText: this.stripMentionsText.bind(this),\n isRecipientMentioned: this.isRecipientMentioned.bind(this),\n getAccountMention: this.getAccountMention.bind(this),\n },\n this\n );\n }\n\n /**\n * copy to a new instance\n */\n clone(options: Omit<Partial<IMessageActivity>, 'type'> = {}) {\n return new MessageActivity(this.text, {\n ...this.toInterface(),\n ...options,\n });\n }\n\n /**\n * The text content of the message.\n */\n withText(value: string) {\n this.text = value;\n return this;\n }\n\n /**\n * The text to speak.\n */\n withSpeak(value: string) {\n this.speak = value;\n return this;\n }\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n withInputHint(value: InputHint) {\n this.inputHint = value;\n return this;\n }\n\n /**\n * The text to display if the channel cannot render cards.\n */\n withSummary(value: string) {\n this.summary = value;\n return this;\n }\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n withTextFormat(value: TextFormat) {\n this.textFormat = value;\n return this;\n }\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n withAttachmentLayout(value: AttachmentLayout) {\n this.attachmentLayout = value;\n return this;\n }\n\n /**\n * The suggested actions for the activity.\n */\n withSuggestedActions(value: SuggestedActions) {\n this.suggestedActions = value;\n return this;\n }\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n withImportance(value: Importance) {\n this.importance = value;\n return this;\n }\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n withDeliveryMode(value: DeliveryMode) {\n this.deliveryMode = value;\n return this;\n }\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n withExpiration(value: Date) {\n this.expiration = value;\n return this;\n }\n\n /**\n * Append text\n */\n addText(text: string) {\n this.text += text;\n return this;\n }\n\n /**\n * Attachments\n */\n addAttachments(...value: Attachment[]) {\n if (!this.attachments) {\n this.attachments = [];\n }\n\n this.attachments.push(...value);\n return this;\n }\n\n /**\n * `@mention` an account\n * @param account the account to mention\n * @param options options to customize the mention\n */\n addMention(account: Account, options: AddMentionOptions = {}) {\n const text = options.text || account.name;\n const addText = options.addText ?? true;\n\n if (addText) {\n this.addText(`<at>${text}</at>`);\n }\n\n return this.addEntity({\n type: 'mention',\n mentioned: account,\n text: `<at>${text}</at>`,\n });\n }\n\n /**\n * Add a card attachment\n */\n addCard<T extends CardAttachmentType>(type: T, content: CardAttachmentTypes[T]['content']) {\n return this.addAttachments(cardAttachment(type, content));\n }\n\n /**\n * remove \"\\<at>...\\</at>\" text from an activity\n */\n stripMentionsText(options: StripMentionsTextOptions = {}) {\n this.text = stripMentionsText(this, options);\n return this;\n }\n\n /**\n * is the recipient account mentioned\n */\n isRecipientMentioned() {\n return (this.entities || [])\n .filter((e) => e.type === 'mention')\n .some((e) => e.mentioned.id === this.recipient.id);\n }\n\n /**\n * get a mention by the account id if exists\n */\n getAccountMention(accountId: string) {\n return (this.entities || [])\n .filter((e) => e.type === 'mention')\n .find((e) => e.mentioned.id === accountId);\n }\n\n /**\n * Add stream info, making\n * this a final stream message\n */\n addStreamFinal() {\n if (!this.channelData) {\n this.channelData = {};\n }\n\n this.channelData.streamId = this.id;\n this.channelData.streamType = 'final';\n\n return this.addEntity({\n type: 'streaminfo',\n streamId: this.id,\n streamType: 'final',\n });\n }\n}\n\n/**\n * options for adding a mention\n * to an activity\n */\nexport type AddMentionOptions = {\n /**\n * if `true`, append the mention `text` to the `activity.text`\n * @default true\n */\n readonly addText?: boolean;\n\n /**\n * the `text` to use for the mention\n *\n * @default `account.name`\n * @remark\n * this text should not include `<at>` or `</at>`\n */\n readonly text?: string;\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/activities/message/message.ts"],"names":[],"mappings":"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","file":"message.mjs","sourcesContent":["import {\n Account,\n Attachment,\n AttachmentLayout,\n cardAttachment,\n CardAttachmentType,\n CardAttachmentTypes,\n DeliveryMode,\n Importance,\n InputHint,\n MentionEntity,\n SuggestedActions,\n TextFormat,\n} from '../../models';\nimport { Activity, IActivity } from '../activity';\nimport { stripMentionsText, StripMentionsTextOptions } from '../utils';\n\nexport interface IMessageActivity extends IActivity<'message'> {\n /**\n * The text content of the message.\n */\n text: string;\n\n /**\n * The text to speak.\n */\n speak?: string;\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n inputHint?: InputHint;\n\n /**\n * The text to display if the channel cannot render cards.\n */\n summary?: string;\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n textFormat?: TextFormat;\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n attachmentLayout?: AttachmentLayout;\n\n /**\n * Attachments\n */\n attachments?: Attachment[];\n\n /**\n * The suggested actions for the activity.\n */\n suggestedActions?: SuggestedActions;\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n importance?: Importance;\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n deliveryMode?: DeliveryMode;\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n expiration?: Date;\n\n /**\n * A value that is associated with the activity.\n */\n value?: any;\n\n /**\n * Indicates if this is a targeted message visible only to a specific recipient.\n */\n isTargeted?: boolean;\n\n /**\n * remove \"\\<at>...\\</at>\" text from an activity\n */\n stripMentionsText(options?: StripMentionsTextOptions): IMessageActivity;\n\n /**\n * is the recipient account mentioned\n */\n isRecipientMentioned(): boolean;\n\n /**\n * get a mention by the account id if exists\n */\n getAccountMention(accountId: string): MentionEntity | undefined;\n}\n\nexport class MessageActivity extends Activity<'message'> implements IMessageActivity {\n /**\n * The text content of the message.\n */\n text!: string;\n\n /**\n * The text to speak.\n */\n speak?: string;\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n inputHint?: InputHint;\n\n /**\n * The text to display if the channel cannot render cards.\n */\n summary?: string;\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n textFormat?: TextFormat;\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n attachmentLayout?: AttachmentLayout;\n\n /**\n * Attachments\n */\n attachments?: Attachment[];\n\n /**\n * The suggested actions for the activity.\n */\n suggestedActions?: SuggestedActions;\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n importance?: Importance;\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n deliveryMode?: DeliveryMode;\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n expiration?: Date;\n\n /**\n * A value that is associated with the activity.\n */\n value?: any;\n\n /**\n * Indicates if this is a targeted message visible only to a specific recipient.\n */\n isTargeted?: boolean;\n\n constructor(text: string = '', value: Omit<Partial<IMessageActivity>, 'type'> = {}) {\n super({\n ...value,\n type: 'message',\n });\n\n Object.assign(this, { text, ...value });\n }\n\n /**\n * initialize from interface\n */\n static from(activity: IMessageActivity) {\n return new MessageActivity(activity.text, activity);\n }\n\n /**\n * convert to interface\n */\n toInterface(): IMessageActivity {\n return Object.assign(\n {\n stripMentionsText: this.stripMentionsText.bind(this),\n isRecipientMentioned: this.isRecipientMentioned.bind(this),\n getAccountMention: this.getAccountMention.bind(this),\n },\n this\n );\n }\n\n /**\n * copy to a new instance\n */\n clone(options: Omit<Partial<IMessageActivity>, 'type'> = {}) {\n return new MessageActivity(this.text, {\n ...this.toInterface(),\n ...options,\n });\n }\n\n /**\n * The text content of the message.\n */\n withText(value: string) {\n this.text = value;\n return this;\n }\n\n /**\n * The text to speak.\n */\n withSpeak(value: string) {\n this.speak = value;\n return this;\n }\n\n /**\n * Indicates whether your bot is accepting,\n * expecting, or ignoring user input after the message is delivered to the client. Possible\n * values include: 'acceptingInput', 'ignoringInput', 'expectingInput'\n */\n withInputHint(value: InputHint) {\n this.inputHint = value;\n return this;\n }\n\n /**\n * The text to display if the channel cannot render cards.\n */\n withSummary(value: string) {\n this.summary = value;\n return this;\n }\n\n /**\n * Format of text fields Default:markdown. Possible values include: 'markdown', 'plain', 'xml'\n */\n withTextFormat(value: TextFormat) {\n this.textFormat = value;\n return this;\n }\n\n /**\n * The layout hint for multiple attachments. Default: list. Possible values include: 'list',\n * 'carousel'\n */\n withAttachmentLayout(value: AttachmentLayout) {\n this.attachmentLayout = value;\n return this;\n }\n\n /**\n * The suggested actions for the activity.\n */\n withSuggestedActions(value: SuggestedActions) {\n this.suggestedActions = value;\n return this;\n }\n\n /**\n * The importance of the activity. Possible values include: 'low', 'normal', 'high'\n */\n withImportance(value: Importance) {\n this.importance = value;\n return this;\n }\n\n /**\n * A delivery hint to signal to the recipient alternate delivery paths for the activity.\n * The default delivery mode is \"default\". Possible values include: 'normal', 'notification'\n */\n withDeliveryMode(value: DeliveryMode) {\n this.deliveryMode = value;\n return this;\n }\n\n /**\n * The time at which the activity should be considered to be \"expired\" and should not be\n * presented to the recipient.\n */\n withExpiration(value: Date) {\n this.expiration = value;\n return this;\n }\n\n /**\n * Append text\n */\n addText(text: string) {\n this.text += text;\n return this;\n }\n\n /**\n * Attachments\n */\n addAttachments(...value: Attachment[]) {\n if (!this.attachments) {\n this.attachments = [];\n }\n\n this.attachments.push(...value);\n return this;\n }\n\n /**\n * `@mention` an account\n * @param account the account to mention\n * @param options options to customize the mention\n */\n addMention(account: Account, options: AddMentionOptions = {}) {\n const text = options.text || account.name;\n const addText = options.addText ?? true;\n\n if (addText) {\n this.addText(`<at>${text}</at>`);\n }\n\n return this.addEntity({\n type: 'mention',\n mentioned: account,\n text: `<at>${text}</at>`,\n });\n }\n\n /**\n * Add a card attachment\n */\n addCard<T extends CardAttachmentType>(type: T, content: CardAttachmentTypes[T]['content']) {\n return this.addAttachments(cardAttachment(type, content));\n }\n\n /**\n * remove \"\\<at>...\\</at>\" text from an activity\n */\n stripMentionsText(options: StripMentionsTextOptions = {}) {\n this.text = stripMentionsText(this, options);\n return this;\n }\n\n /**\n * is the recipient account mentioned\n */\n isRecipientMentioned() {\n return (this.entities || [])\n .filter((e) => e.type === 'mention')\n .some((e) => e.mentioned.id === this.recipient.id);\n }\n\n /**\n * get a mention by the account id if exists\n */\n getAccountMention(accountId: string) {\n return (this.entities || [])\n .filter((e) => e.type === 'mention')\n .find((e) => e.mentioned.id === accountId);\n }\n\n /**\n * Add stream info, making\n * this a final stream message\n */\n addStreamFinal() {\n if (!this.channelData) {\n this.channelData = {};\n }\n\n this.channelData.streamId = this.id;\n this.channelData.streamType = 'final';\n\n return this.addEntity({\n type: 'streaminfo',\n streamId: this.id,\n streamType: 'final',\n });\n }\n\n /**\n * Mark this message as a targeted message visible only to a specific recipient.\n * @param recipientOrFlag - If `true`, the recipient will be inferred from the incoming activity context.\n * If a string, it specifies the explicit recipient ID.\n * @returns this instance for chaining\n * @remarks When using `true`, this must be sent within an activity context (not proactively).\n * For proactive sends, you must provide an explicit recipient ID.\n */\n withTargetedRecipient(recipientOrFlag: true | string) {\n this.isTargeted = true;\n if (typeof recipientOrFlag === 'string') {\n this.recipient = { id: recipientOrFlag, name: '', role: 'user' };\n }\n return this;\n }\n}\n\n/**\n * options for adding a mention\n * to an activity\n */\nexport type AddMentionOptions = {\n /**\n * if `true`, append the mention `text` to the `activity.text`\n * @default true\n */\n readonly addText?: boolean;\n\n /**\n * the `text` to use for the mention\n *\n * @default `account.name`\n * @remark\n * this text should not include `<at>` or `</at>`\n */\n readonly text?: string;\n};\n"]}
|