@twilio/conversations 2.5.0-rc.8 → 2.6.0-rc.0
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/README.md +2 -2
- package/builds/browser.esm.js +10713 -0
- package/builds/browser.esm.js.map +1 -0
- package/builds/browser.js +241 -81
- package/builds/browser.js.map +1 -1
- package/builds/lib.d.ts +10 -9
- package/builds/lib.esm.d.ts +3166 -0
- package/builds/lib.esm.js +10712 -0
- package/builds/lib.js +250 -81
- package/builds/lib.js.map +1 -1
- package/builds/twilio-conversations.js +11231 -11244
- package/builds/twilio-conversations.min.js +1 -1
- package/dist/aggregated-delivery-receipt.js +3 -5
- package/dist/aggregated-delivery-receipt.js.map +1 -1
- package/dist/channel-metadata-client.js +7 -9
- package/dist/channel-metadata-client.js.map +1 -1
- package/dist/client.js +201 -166
- package/dist/client.js.map +1 -1
- package/dist/command-executor.js +8 -8
- package/dist/command-executor.js.map +1 -1
- package/dist/configuration.js +12 -9
- package/dist/configuration.js.map +1 -1
- package/dist/content-client.js +11 -8
- package/dist/content-client.js.map +1 -1
- package/dist/content-template.js +3 -5
- package/dist/content-template.js.map +1 -1
- package/dist/conversation.js +130 -96
- package/dist/conversation.js.map +1 -1
- package/dist/data/conversations.js +36 -43
- package/dist/data/conversations.js.map +1 -1
- package/dist/data/messages.js +23 -21
- package/dist/data/messages.js.map +1 -1
- package/dist/data/participants.js +27 -24
- package/dist/data/participants.js.map +1 -1
- package/dist/data/users.js +15 -13
- package/dist/data/users.js.map +1 -1
- package/dist/detailed-delivery-receipt.js +3 -5
- package/dist/detailed-delivery-receipt.js.map +1 -1
- package/dist/index.js +17 -49
- package/dist/index.js.map +1 -1
- package/dist/interfaces/notification-types.js +1 -5
- package/dist/interfaces/notification-types.js.map +1 -1
- package/dist/interfaces/rules.js +13 -10
- package/dist/interfaces/rules.js.map +1 -1
- package/dist/logger.js +25 -26
- package/dist/logger.js.map +1 -1
- package/dist/media.js +11 -8
- package/dist/media.js.map +1 -1
- package/dist/message-builder.js +48 -40
- package/dist/message-builder.js.map +1 -1
- package/dist/message-recipients-client.js +11 -13
- package/dist/message-recipients-client.js.map +1 -1
- package/dist/message.js +96 -83
- package/dist/message.js.map +1 -1
- package/dist/node_modules/quick-lru/index.js +1 -5
- package/dist/node_modules/quick-lru/index.js.map +1 -1
- package/dist/node_modules/tslib/tslib.es6.js +1 -7
- package/dist/node_modules/tslib/tslib.es6.js.map +1 -1
- package/dist/packages/conversations/package.json.js +2 -6
- package/dist/packages/conversations/package.json.js.map +1 -1
- package/dist/participant.js +40 -31
- package/dist/participant.js.map +1 -1
- package/dist/push-notification.js +5 -4
- package/dist/push-notification.js.map +1 -1
- package/dist/rest-paginator.js +9 -8
- package/dist/rest-paginator.js.map +1 -1
- package/dist/services/network.js +3 -7
- package/dist/services/network.js.map +1 -1
- package/dist/services/typing-indicator.js +11 -8
- package/dist/services/typing-indicator.js.map +1 -1
- package/dist/unsent-message.js +9 -8
- package/dist/unsent-message.js.map +1 -1
- package/dist/user.js +27 -24
- package/dist/user.js.map +1 -1
- package/dist/util/deferred.js +6 -4
- package/dist/util/deferred.js.map +1 -1
- package/dist/util/index.js +1 -9
- package/dist/util/index.js.map +1 -1
- package/docs/classes/Client.html +2 -2
- package/docs/index.html +3 -3
- package/docs/modules.html +2 -2
- package/package.json +10 -10
package/dist/data/users.js
CHANGED
@@ -126,8 +126,6 @@ This software includes platform.js under the following license.
|
|
126
126
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
127
127
|
|
128
128
|
*/
|
129
|
-
'use strict';
|
130
|
-
|
131
129
|
var global =
|
132
130
|
typeof global !== "undefined"
|
133
131
|
? global
|
@@ -137,16 +135,14 @@ var global =
|
|
137
135
|
? window
|
138
136
|
: {};
|
139
137
|
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
var index = require('../util/index.js');
|
144
|
-
var replayEventEmitter = require('@twilio/replay-event-emitter');
|
138
|
+
import { User } from '../user.js';
|
139
|
+
import { UriBuilder } from '../util/index.js';
|
140
|
+
import { ReplayEventEmitter } from '@twilio/replay-event-emitter';
|
145
141
|
|
146
142
|
/**
|
147
143
|
* Container for known users
|
148
144
|
*/
|
149
|
-
class Users extends
|
145
|
+
class Users extends ReplayEventEmitter {
|
150
146
|
constructor(myself, configuration, services) {
|
151
147
|
super();
|
152
148
|
this.configuration = configuration;
|
@@ -201,12 +197,12 @@ class Users extends replayEventEmitter.ReplayEventEmitter {
|
|
201
197
|
if (identity == this.myself.identity) {
|
202
198
|
return this.myself;
|
203
199
|
}
|
204
|
-
const user
|
205
|
-
if (user
|
206
|
-
return user
|
200
|
+
const user = this.subscribedUsers.get(identity);
|
201
|
+
if (user) {
|
202
|
+
return user;
|
207
203
|
}
|
208
204
|
entityName !== null && entityName !== void 0 ? entityName : (entityName = await this.getSyncUniqueName(identity));
|
209
|
-
const newUser = new
|
205
|
+
const newUser = new User(identity, entityName, this.configuration, this.services);
|
210
206
|
newUser.on("updated", (args) => this.emit("userUpdated", args));
|
211
207
|
newUser.on("userSubscribed", () => this.handleSubscribeUser(newUser));
|
212
208
|
newUser.on("userUnsubscribed", () => this.handleUnsubscribeUser(newUser));
|
@@ -227,7 +223,7 @@ class Users extends replayEventEmitter.ReplayEventEmitter {
|
|
227
223
|
*/
|
228
224
|
async getSyncUniqueName(identity) {
|
229
225
|
var _a, _b;
|
230
|
-
const url = new
|
226
|
+
const url = new UriBuilder(this.configuration.links.users)
|
231
227
|
.path(identity)
|
232
228
|
.build();
|
233
229
|
const response = await this.services.network.get(url);
|
@@ -235,5 +231,11 @@ class Users extends replayEventEmitter.ReplayEventEmitter {
|
|
235
231
|
}
|
236
232
|
}
|
237
233
|
|
234
|
+
export { Users };
|
235
|
+
//# sourceMappingURL=users.js.map
|
236
|
+
nfo_map) !== null && _b !== void 0 ? _b : "";
|
237
|
+
}
|
238
|
+
}
|
239
|
+
|
238
240
|
exports.Users = Users;
|
239
241
|
//# sourceMappingURL=users.js.map
|
package/dist/data/users.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"users.js","sources":["../../src/data/users.ts"],"sourcesContent":["import { User, UserUpdatedEventArgs, UserUpdateReason } from \"../user\";\nimport { Network } from \"../services/network\";\nimport { SyncClient } from \"twilio-sync\";\nimport { UriBuilder } from \"../util\";\nimport { Configuration } from \"../configuration\";\nimport { CommandExecutor } from \"../command-executor\";\nimport { ReplayEventEmitter } from \"@twilio/replay-event-emitter\";\nimport { UserResponse } from \"../interfaces/commands/user\";\n\ntype UsersEvents = {\n userUpdated: (data: {\n user: User;\n updateReasons: UserUpdateReason[];\n }) => void;\n userSubscribed: (user: User) => void;\n userUnsubscribed: (user: User) => void;\n};\n\nexport interface UsersServices {\n network: Network;\n syncClient: SyncClient;\n commandExecutor: CommandExecutor;\n}\n\n/**\n * Container for known users\n */\nclass Users extends ReplayEventEmitter<UsersEvents> {\n private readonly configuration: Configuration;\n private readonly services: UsersServices;\n\n private subscribedUsers: Map<string, User>;\n private fifoStack: string[];\n public readonly myself: User;\n\n constructor(\n myself: User,\n configuration: Configuration,\n services: UsersServices\n ) {\n super();\n\n this.configuration = configuration;\n this.services = services;\n\n this.fifoStack = [];\n this.myself = myself;\n this.myself.on(\"updated\", (args: UserUpdatedEventArgs) =>\n this.emit(\"userUpdated\", args)\n );\n this.myself.on(\"userSubscribed\", () =>\n this.emit(\"userSubscribed\", this.myself)\n );\n this.myself.on(\"userUnsubscribed\", () => {\n this.emit(\"userUnsubscribed\", this.myself);\n this.myself._ensureFetched();\n });\n\n this.subscribedUsers = new Map<string, User>();\n }\n\n private handleUnsubscribeUser(user: User): void {\n if (this.subscribedUsers.has(user.identity)) {\n this.subscribedUsers.delete(user.identity);\n }\n let foundItemIndex = 0;\n const foundItem = this.fifoStack.find((item, index) => {\n if (item == user.identity) {\n foundItemIndex = index;\n return true;\n }\n return false;\n });\n if (foundItem) {\n this.fifoStack.splice(foundItemIndex, 1);\n }\n this.emit(\"userUnsubscribed\", user);\n }\n\n private handleSubscribeUser(user: User): void {\n if (this.subscribedUsers.has(user.identity)) {\n return;\n }\n if (this.fifoStack.length >= this.configuration.userInfosToSubscribe) {\n const item = this.fifoStack.shift() as string;\n this.subscribedUsers?.get(item)?.unsubscribe();\n }\n this.fifoStack.push(user.identity);\n this.subscribedUsers.set(user.identity, user);\n this.emit(\"userSubscribed\", user);\n }\n\n /**\n * Gets user, if it's in subscribed list - then return the user object from it,\n * if not - then subscribes and adds user to the FIFO stack\n * @returns {Promise<User>} Fully initialized user\n */\n async getUser(identity: string, entityName?: string): Promise<User> {\n await this.myself._ensureFetched();\n\n if (identity == this.myself.identity) {\n return this.myself;\n }\n\n const user = this.subscribedUsers.get(identity);\n\n if (user) {\n return user;\n }\n\n entityName ??= await this.getSyncUniqueName(identity);\n\n const newUser = new User(\n identity,\n entityName,\n this.configuration,\n this.services\n );\n\n newUser.on(\"updated\", (args: UserUpdatedEventArgs) =>\n this.emit(\"userUpdated\", args)\n );\n newUser.on(\"userSubscribed\", () => this.handleSubscribeUser(newUser));\n newUser.on(\"userUnsubscribed\", () => this.handleUnsubscribeUser(newUser));\n await newUser._ensureFetched();\n\n return newUser;\n }\n\n /**\n * @returns {Promise<Array<User>>} returns list of subscribed User objects {@see User}\n */\n async getSubscribedUsers(): Promise<Array<User>> {\n await this.myself._ensureFetched();\n\n const users = [this.myself];\n this.subscribedUsers.forEach((user) => users.push(user));\n\n return users;\n }\n\n /**\n * @returns {Promise<string>} User's sync unique name\n */\n private async getSyncUniqueName(identity: string): Promise<string> {\n const url = new UriBuilder(this.configuration.links.users)\n .path(identity)\n .build();\n const response = await this.services.network.get<UserResponse>(url);\n return response.body?.sync_objects.user_info_map ?? \"\";\n }\n}\n\nexport { Users };\n"],"names":[
|
1
|
+
{"version":3,"file":"users.js","sources":["../../src/data/users.ts"],"sourcesContent":["import { User, UserUpdatedEventArgs, UserUpdateReason } from \"../user\";\nimport { Network } from \"../services/network\";\nimport { SyncClient } from \"twilio-sync\";\nimport { UriBuilder } from \"../util\";\nimport { Configuration } from \"../configuration\";\nimport { CommandExecutor } from \"../command-executor\";\nimport { ReplayEventEmitter } from \"@twilio/replay-event-emitter\";\nimport { UserResponse } from \"../interfaces/commands/user\";\n\ntype UsersEvents = {\n userUpdated: (data: {\n user: User;\n updateReasons: UserUpdateReason[];\n }) => void;\n userSubscribed: (user: User) => void;\n userUnsubscribed: (user: User) => void;\n};\n\nexport interface UsersServices {\n network: Network;\n syncClient: SyncClient;\n commandExecutor: CommandExecutor;\n}\n\n/**\n * Container for known users\n */\nclass Users extends ReplayEventEmitter<UsersEvents> {\n private readonly configuration: Configuration;\n private readonly services: UsersServices;\n\n private subscribedUsers: Map<string, User>;\n private fifoStack: string[];\n public readonly myself: User;\n\n constructor(\n myself: User,\n configuration: Configuration,\n services: UsersServices\n ) {\n super();\n\n this.configuration = configuration;\n this.services = services;\n\n this.fifoStack = [];\n this.myself = myself;\n this.myself.on(\"updated\", (args: UserUpdatedEventArgs) =>\n this.emit(\"userUpdated\", args)\n );\n this.myself.on(\"userSubscribed\", () =>\n this.emit(\"userSubscribed\", this.myself)\n );\n this.myself.on(\"userUnsubscribed\", () => {\n this.emit(\"userUnsubscribed\", this.myself);\n this.myself._ensureFetched();\n });\n\n this.subscribedUsers = new Map<string, User>();\n }\n\n private handleUnsubscribeUser(user: User): void {\n if (this.subscribedUsers.has(user.identity)) {\n this.subscribedUsers.delete(user.identity);\n }\n let foundItemIndex = 0;\n const foundItem = this.fifoStack.find((item, index) => {\n if (item == user.identity) {\n foundItemIndex = index;\n return true;\n }\n return false;\n });\n if (foundItem) {\n this.fifoStack.splice(foundItemIndex, 1);\n }\n this.emit(\"userUnsubscribed\", user);\n }\n\n private handleSubscribeUser(user: User): void {\n if (this.subscribedUsers.has(user.identity)) {\n return;\n }\n if (this.fifoStack.length >= this.configuration.userInfosToSubscribe) {\n const item = this.fifoStack.shift() as string;\n this.subscribedUsers?.get(item)?.unsubscribe();\n }\n this.fifoStack.push(user.identity);\n this.subscribedUsers.set(user.identity, user);\n this.emit(\"userSubscribed\", user);\n }\n\n /**\n * Gets user, if it's in subscribed list - then return the user object from it,\n * if not - then subscribes and adds user to the FIFO stack\n * @returns {Promise<User>} Fully initialized user\n */\n async getUser(identity: string, entityName?: string): Promise<User> {\n await this.myself._ensureFetched();\n\n if (identity == this.myself.identity) {\n return this.myself;\n }\n\n const user = this.subscribedUsers.get(identity);\n\n if (user) {\n return user;\n }\n\n entityName ??= await this.getSyncUniqueName(identity);\n\n const newUser = new User(\n identity,\n entityName,\n this.configuration,\n this.services\n );\n\n newUser.on(\"updated\", (args: UserUpdatedEventArgs) =>\n this.emit(\"userUpdated\", args)\n );\n newUser.on(\"userSubscribed\", () => this.handleSubscribeUser(newUser));\n newUser.on(\"userUnsubscribed\", () => this.handleUnsubscribeUser(newUser));\n await newUser._ensureFetched();\n\n return newUser;\n }\n\n /**\n * @returns {Promise<Array<User>>} returns list of subscribed User objects {@see User}\n */\n async getSubscribedUsers(): Promise<Array<User>> {\n await this.myself._ensureFetched();\n\n const users = [this.myself];\n this.subscribedUsers.forEach((user) => users.push(user));\n\n return users;\n }\n\n /**\n * @returns {Promise<string>} User's sync unique name\n */\n private async getSyncUniqueName(identity: string): Promise<string> {\n const url = new UriBuilder(this.configuration.links.users)\n .path(identity)\n .build();\n const response = await this.services.network.get<UserResponse>(url);\n return response.body?.sync_objects.user_info_map ?? \"\";\n }\n}\n\nexport { Users };\n"],"names":[],"mappings":"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"}A,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,EAAE,CAAC;KACxD;AACF;;;;"}
|
@@ -126,8 +126,6 @@ This software includes platform.js under the following license.
|
|
126
126
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
127
127
|
|
128
128
|
*/
|
129
|
-
'use strict';
|
130
|
-
|
131
129
|
var global =
|
132
130
|
typeof global !== "undefined"
|
133
131
|
? global
|
@@ -137,8 +135,6 @@ var global =
|
|
137
135
|
? window
|
138
136
|
: {};
|
139
137
|
|
140
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
141
|
-
|
142
138
|
/**
|
143
139
|
* Represents a delivery receipt of a message.
|
144
140
|
*/
|
@@ -159,5 +155,7 @@ class DetailedDeliveryReceipt {
|
|
159
155
|
}
|
160
156
|
}
|
161
157
|
|
162
|
-
|
158
|
+
export { DetailedDeliveryReceipt };
|
159
|
+
//# sourceMappingURL=detailed-delivery-receipt.js.map
|
160
|
+
ailedDeliveryReceipt = DetailedDeliveryReceipt;
|
163
161
|
//# sourceMappingURL=detailed-delivery-receipt.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"detailed-delivery-receipt.js","sources":["../src/detailed-delivery-receipt.ts"],"sourcesContent":["/**\n * Message delivery status.\n */\ntype DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"failed\"\n | \"read\"\n | \"undelivered\"\n | \"queued\";\n\ninterface DetailedDeliveryReceiptDescriptor {\n sid: string;\n message_sid: string;\n conversation_sid: string;\n channel_message_sid: string;\n participant_sid: string;\n status: DeliveryStatus;\n error_code: string | null;\n date_created: string;\n date_updated: string;\n}\n\n/**\n * Represents a delivery receipt of a message.\n */\nclass DetailedDeliveryReceipt {\n /**\n * Unique identifier for the delivery receipt.\n */\n sid: string;\n\n /**\n * Unique identifier for the message in the conversation.\n */\n messageSid: string;\n\n /**\n * Unique identifier for the conversation.\n */\n conversationSid: string;\n\n /**\n * Unique identifier for the `‘channel’` message (e.g., `WAxx` for WhatsApp, `SMxx` for SMS).\n */\n channelMessageSid: string;\n\n /**\n * Unique identifier for the participant.\n */\n participantSid: string;\n\n /**\n * Status of the message delivery.\n */\n status: DeliveryStatus;\n\n /**\n * Numeric error code mapped from Status callback code. Information about the error codes can be found\n * [here](https://www.twilio.com/docs/sms/api/message-resource#delivery-related-errors).\n */\n errorCode: string | 0;\n\n /**\n * Date this delivery receipt was created on.\n */\n dateCreated: string;\n\n /**\n * Date this delivery receipt was last updated on.\n */\n dateUpdated: string;\n\n /**\n * @internal\n */\n constructor(descriptor: DetailedDeliveryReceiptDescriptor) {\n this.sid = descriptor.sid;\n this.messageSid = descriptor.message_sid;\n this.conversationSid = descriptor.conversation_sid;\n this.channelMessageSid = descriptor.channel_message_sid;\n this.participantSid = descriptor.participant_sid;\n this.status = descriptor.status || \"queued\";\n this.errorCode = descriptor.error_code || 0;\n this.dateCreated = descriptor.date_created;\n this.dateUpdated = descriptor.date_updated;\n }\n}\n\nexport {\n DetailedDeliveryReceipt,\n DetailedDeliveryReceiptDescriptor,\n DeliveryStatus,\n};\n"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"detailed-delivery-receipt.js","sources":["../src/detailed-delivery-receipt.ts"],"sourcesContent":["/**\n * Message delivery status.\n */\ntype DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"failed\"\n | \"read\"\n | \"undelivered\"\n | \"queued\";\n\ninterface DetailedDeliveryReceiptDescriptor {\n sid: string;\n message_sid: string;\n conversation_sid: string;\n channel_message_sid: string;\n participant_sid: string;\n status: DeliveryStatus;\n error_code: string | null;\n date_created: string;\n date_updated: string;\n}\n\n/**\n * Represents a delivery receipt of a message.\n */\nclass DetailedDeliveryReceipt {\n /**\n * Unique identifier for the delivery receipt.\n */\n sid: string;\n\n /**\n * Unique identifier for the message in the conversation.\n */\n messageSid: string;\n\n /**\n * Unique identifier for the conversation.\n */\n conversationSid: string;\n\n /**\n * Unique identifier for the `‘channel’` message (e.g., `WAxx` for WhatsApp, `SMxx` for SMS).\n */\n channelMessageSid: string;\n\n /**\n * Unique identifier for the participant.\n */\n participantSid: string;\n\n /**\n * Status of the message delivery.\n */\n status: DeliveryStatus;\n\n /**\n * Numeric error code mapped from Status callback code. Information about the error codes can be found\n * [here](https://www.twilio.com/docs/sms/api/message-resource#delivery-related-errors).\n */\n errorCode: string | 0;\n\n /**\n * Date this delivery receipt was created on.\n */\n dateCreated: string;\n\n /**\n * Date this delivery receipt was last updated on.\n */\n dateUpdated: string;\n\n /**\n * @internal\n */\n constructor(descriptor: DetailedDeliveryReceiptDescriptor) {\n this.sid = descriptor.sid;\n this.messageSid = descriptor.message_sid;\n this.conversationSid = descriptor.conversation_sid;\n this.channelMessageSid = descriptor.channel_message_sid;\n this.participantSid = descriptor.participant_sid;\n this.status = descriptor.status || \"queued\";\n this.errorCode = descriptor.error_code || 0;\n this.dateCreated = descriptor.date_created;\n this.dateUpdated = descriptor.date_updated;\n }\n}\n\nexport {\n DetailedDeliveryReceipt,\n DetailedDeliveryReceiptDescriptor,\n DeliveryStatus,\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBA;;AAEG;AACH,MAAM,uBAAuB,CAAA;AA+C3B;;AAEG;AACH,IAAA,WAAA,CAAY,UAA6C,EAAA;AACvD,QAAA,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC;AACzC,QAAA,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,gBAAgB,CAAC;AACnD,QAAA,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,mBAAmB,CAAC;AACxD,QAAA,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,eAAe,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,IAAI,QAAQ,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,UAAU,IAAI,CAAC,CAAC;AAC5C,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC;AAC3C,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC;KAC5C;AACF;;;;"};;"}
|
package/dist/index.js
CHANGED
@@ -126,8 +126,6 @@ This software includes platform.js under the following license.
|
|
126
126
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
127
127
|
|
128
128
|
*/
|
129
|
-
'use strict';
|
130
|
-
|
131
129
|
var global =
|
132
130
|
typeof global !== "undefined"
|
133
131
|
? global
|
@@ -137,51 +135,21 @@ var global =
|
|
137
135
|
? window
|
138
136
|
: {};
|
139
137
|
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
var channelMetadataClient = require('./channel-metadata-client.js');
|
158
|
-
var messageRecipientsClient = require('./message-recipients-client.js');
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
Object.defineProperty(exports, 'Client', {
|
163
|
-
enumerable: true,
|
164
|
-
get: function () { return client.Client; }
|
165
|
-
});
|
166
|
-
Object.defineProperty(exports, 'CancellablePromise', {
|
167
|
-
enumerable: true,
|
168
|
-
get: function () { return mcsClient.CancellablePromise; }
|
169
|
-
});
|
170
|
-
exports.Conversation = conversation.Conversation;
|
171
|
-
exports.Participant = participant.Participant;
|
172
|
-
exports.Message = message.Message;
|
173
|
-
exports.Media = media.Media;
|
174
|
-
exports.AggregatedDeliveryReceipt = aggregatedDeliveryReceipt.AggregatedDeliveryReceipt;
|
175
|
-
exports.DetailedDeliveryReceipt = detailedDeliveryReceipt.DetailedDeliveryReceipt;
|
176
|
-
exports.RestPaginator = restPaginator.RestPaginator;
|
177
|
-
exports.MessageBuilder = messageBuilder.MessageBuilder;
|
178
|
-
exports.UnsentMessage = unsentMessage.UnsentMessage;
|
179
|
-
exports.User = user.User;
|
180
|
-
exports.PushNotification = pushNotification.PushNotification;
|
181
|
-
exports.NotificationTypes = notificationTypes.NotificationTypes;
|
182
|
-
exports.ContentTemplate = contentTemplate.ContentTemplate;
|
183
|
-
exports.ContentTemplateVariable = contentTemplate.ContentTemplateVariable;
|
184
|
-
exports.ChannelMetadata = channelMetadataClient.ChannelMetadata;
|
185
|
-
exports.EmailRecipientDescriptor = messageRecipientsClient.EmailRecipientDescriptor;
|
186
|
-
exports.UnknownRecipientDescriptor = messageRecipientsClient.UnknownRecipientDescriptor;
|
138
|
+
export { Client } from './client.js';
|
139
|
+
export { CancellablePromise } from '@twilio/mcs-client';
|
140
|
+
export { Conversation } from './conversation.js';
|
141
|
+
export { Participant } from './participant.js';
|
142
|
+
export { Message } from './message.js';
|
143
|
+
export { Media } from './media.js';
|
144
|
+
export { AggregatedDeliveryReceipt } from './aggregated-delivery-receipt.js';
|
145
|
+
export { DetailedDeliveryReceipt } from './detailed-delivery-receipt.js';
|
146
|
+
export { RestPaginator } from './rest-paginator.js';
|
147
|
+
export { MessageBuilder } from './message-builder.js';
|
148
|
+
export { UnsentMessage } from './unsent-message.js';
|
149
|
+
export { User } from './user.js';
|
150
|
+
export { PushNotification } from './push-notification.js';
|
151
|
+
export { NotificationTypes } from './interfaces/notification-types.js';
|
152
|
+
export { ContentTemplate, ContentTemplateVariable } from './content-template.js';
|
153
|
+
export { ChannelMetadata } from './channel-metadata-client.js';
|
154
|
+
export { EmailRecipientDescriptor, UnknownRecipientDescriptor } from './message-recipients-client.js';
|
187
155
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -126,8 +126,6 @@ This software includes platform.js under the following license.
|
|
126
126
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
127
127
|
|
128
128
|
*/
|
129
|
-
'use strict';
|
130
|
-
|
131
129
|
var global =
|
132
130
|
typeof global !== "undefined"
|
133
131
|
? global
|
@@ -137,8 +135,6 @@ var global =
|
|
137
135
|
? window
|
138
136
|
: {};
|
139
137
|
|
140
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
141
|
-
|
142
138
|
class NotificationTypes {
|
143
139
|
}
|
144
140
|
NotificationTypes.TYPING_INDICATOR = "twilio.ipmsg.typing_indicator";
|
@@ -148,5 +144,5 @@ NotificationTypes.ADDED_TO_CONVERSATION = "twilio.conversations.added_to_convers
|
|
148
144
|
NotificationTypes.REMOVED_FROM_CONVERSATION = "twilio.conversations.removed_from_conversation";
|
149
145
|
NotificationTypes.CONSUMPTION_UPDATE = "twilio.channel.consumption_update";
|
150
146
|
|
151
|
-
|
147
|
+
export { NotificationTypes };
|
152
148
|
//# sourceMappingURL=notification-types.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"notification-types.js","sources":["../../src/interfaces/notification-types.ts"],"sourcesContent":["class NotificationTypes {\n static readonly TYPING_INDICATOR = \"twilio.ipmsg.typing_indicator\";\n static readonly NEW_MESSAGE = \"twilio.conversations.new_message\";\n static readonly ADDED_TO_CONVERSATION =\n \"twilio.conversations.added_to_conversation\";\n // static readonly INVITED_TO_CHANNEL = 'twilio.channel.invited_to_channel';\n static readonly REMOVED_FROM_CONVERSATION =\n \"twilio.conversations.removed_from_conversation\";\n static readonly CONSUMPTION_UPDATE = \"twilio.channel.consumption_update\";\n}\n\nexport { NotificationTypes };\n"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"notification-types.js","sources":["../../src/interfaces/notification-types.ts"],"sourcesContent":["class NotificationTypes {\n static readonly TYPING_INDICATOR = \"twilio.ipmsg.typing_indicator\";\n static readonly NEW_MESSAGE = \"twilio.conversations.new_message\";\n static readonly ADDED_TO_CONVERSATION =\n \"twilio.conversations.added_to_conversation\";\n // static readonly INVITED_TO_CHANNEL = 'twilio.channel.invited_to_channel';\n static readonly REMOVED_FROM_CONVERSATION =\n \"twilio.conversations.removed_from_conversation\";\n static readonly CONSUMPTION_UPDATE = \"twilio.channel.consumption_update\";\n}\n\nexport { NotificationTypes };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,iBAAiB,CAAA;;AACL,iBAAgB,CAAA,gBAAA,GAAG,+BAA+B,CAAC;AACnD,iBAAW,CAAA,WAAA,GAAG,kCAAkC,CAAC;AACjD,iBAAqB,CAAA,qBAAA,GACnC,4CAA4C,CAAC;AAC/C;AACgB,iBAAyB,CAAA,yBAAA,GACvC,gDAAgD,CAAC;AACnC,iBAAkB,CAAA,kBAAA,GAAG,mCAAmC;;;;"}
|
package/dist/interfaces/rules.js
CHANGED
@@ -126,8 +126,6 @@ This software includes platform.js under the following license.
|
|
126
126
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
127
127
|
|
128
128
|
*/
|
129
|
-
'use strict';
|
130
|
-
|
131
129
|
var global =
|
132
130
|
typeof global !== "undefined"
|
133
131
|
? global
|
@@ -137,29 +135,34 @@ var global =
|
|
137
135
|
? window
|
138
136
|
: {};
|
139
137
|
|
140
|
-
|
141
|
-
|
142
|
-
var declarativeTypeValidator = require('@twilio/declarative-type-validator');
|
138
|
+
import { custom, objectSchema, literal } from '@twilio/declarative-type-validator';
|
143
139
|
|
144
|
-
const json =
|
140
|
+
const json = custom((value) => [
|
145
141
|
["string", "number", "boolean", "object"].includes(typeof value),
|
146
142
|
"a JSON type",
|
147
143
|
]);
|
148
|
-
const optionalJson =
|
144
|
+
const optionalJson = custom((value) => [
|
149
145
|
["undefined", "string", "number", "boolean", "object"].includes(typeof value),
|
150
146
|
"an optional JSON type",
|
151
147
|
]);
|
152
|
-
const sendMediaOptions =
|
153
|
-
contentType: [
|
148
|
+
const sendMediaOptions = objectSchema("send media options", {
|
149
|
+
contentType: [literal(null), "string"],
|
154
150
|
filename: ["string", "undefined"],
|
155
151
|
media: [
|
156
|
-
|
152
|
+
literal("null"),
|
157
153
|
"string",
|
158
154
|
...(typeof Buffer === "function" ? [Buffer] : []),
|
159
155
|
...(typeof Blob === "function" ? [Blob] : []),
|
160
156
|
],
|
161
157
|
});
|
162
158
|
|
159
|
+
export { json, optionalJson, sendMediaOptions };
|
160
|
+
//# sourceMappingURL=rules.js.map
|
161
|
+
(typeof Buffer === "function" ? [Buffer] : []),
|
162
|
+
...(typeof Blob === "function" ? [Blob] : []),
|
163
|
+
],
|
164
|
+
});
|
165
|
+
|
163
166
|
exports.json = json;
|
164
167
|
exports.optionalJson = optionalJson;
|
165
168
|
exports.sendMediaOptions = sendMediaOptions;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"rules.js","sources":["../../src/interfaces/rules.ts"],"sourcesContent":["import {\n custom,\n literal,\n objectSchema,\n} from \"@twilio/declarative-type-validator\";\n\nexport const json = custom((value) => [\n [\"string\", \"number\", \"boolean\", \"object\"].includes(typeof value),\n \"a JSON type\",\n]);\n\nexport const optionalJson = custom((value) => [\n [\"undefined\", \"string\", \"number\", \"boolean\", \"object\"].includes(typeof value),\n \"an optional JSON type\",\n]);\n\nexport const sendMediaOptions = objectSchema(\"send media options\", {\n contentType: [literal(null), \"string\"],\n filename: [\"string\", \"undefined\"],\n media: [\n literal(\"null\"),\n \"string\",\n ...(typeof Buffer === \"function\" ? [Buffer] : []),\n ...(typeof Blob === \"function\" ? [Blob] : []),\n ],\n});\n"],"names":[
|
1
|
+
{"version":3,"file":"rules.js","sources":["../../src/interfaces/rules.ts"],"sourcesContent":["import {\n custom,\n literal,\n objectSchema,\n} from \"@twilio/declarative-type-validator\";\n\nexport const json = custom((value) => [\n [\"string\", \"number\", \"boolean\", \"object\"].includes(typeof value),\n \"a JSON type\",\n]);\n\nexport const optionalJson = custom((value) => [\n [\"undefined\", \"string\", \"number\", \"boolean\", \"object\"].includes(typeof value),\n \"an optional JSON type\",\n]);\n\nexport const sendMediaOptions = objectSchema(\"send media options\", {\n contentType: [literal(null), \"string\"],\n filename: [\"string\", \"undefined\"],\n media: [\n literal(\"null\"),\n \"string\",\n ...(typeof Buffer === \"function\" ? [Buffer] : []),\n ...(typeof Blob === \"function\" ? [Blob] : []),\n ],\n});\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMa,MAAA,IAAI,GAAG,MAAM,CAAC,CAAC,KAAK,KAAK;AACpC,IAAA,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,KAAK,CAAC;IAChE,aAAa;AACd,CAAA,EAAE;AAEU,MAAA,YAAY,GAAG,MAAM,CAAC,CAAC,KAAK,KAAK;AAC5C,IAAA,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,KAAK,CAAC;IAC7E,uBAAuB;AACxB,CAAA,EAAE;AAEU,MAAA,gBAAgB,GAAG,YAAY,CAAC,oBAAoB,EAAE;IACjE,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;AACtC,IAAA,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;AACjC,IAAA,KAAK,EAAE;QACL,OAAO,CAAC,MAAM,CAAC;QACf,QAAQ;AACR,QAAA,IAAI,OAAO,MAAM,KAAK,UAAU,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;AACjD,QAAA,IAAI,OAAO,IAAI,KAAK,UAAU,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;AAC9C,KAAA;AACF,CAAA;;;;"},CAAC,GAAG,EAAE,CAAC;AAC9C,KAAA;AACF,CAAA;;;;;;"}
|
package/dist/logger.js
CHANGED
@@ -126,8 +126,6 @@ This software includes platform.js under the following license.
|
|
126
126
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
127
127
|
|
128
128
|
*/
|
129
|
-
'use strict';
|
130
|
-
|
131
129
|
var global =
|
132
130
|
typeof global !== "undefined"
|
133
131
|
? global
|
@@ -137,34 +135,12 @@ var global =
|
|
137
135
|
? window
|
138
136
|
: {};
|
139
137
|
|
140
|
-
|
141
|
-
|
142
|
-
var loglevelLog = require('loglevel');
|
143
|
-
|
144
|
-
function _interopNamespace(e) {
|
145
|
-
if (e && e.__esModule) return e;
|
146
|
-
var n = Object.create(null);
|
147
|
-
if (e) {
|
148
|
-
Object.keys(e).forEach(function (k) {
|
149
|
-
if (k !== 'default') {
|
150
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
151
|
-
Object.defineProperty(n, k, d.get ? d : {
|
152
|
-
enumerable: true,
|
153
|
-
get: function () { return e[k]; }
|
154
|
-
});
|
155
|
-
}
|
156
|
-
});
|
157
|
-
}
|
158
|
-
n["default"] = e;
|
159
|
-
return Object.freeze(n);
|
160
|
-
}
|
161
|
-
|
162
|
-
var loglevelLog__namespace = /*#__PURE__*/_interopNamespace(loglevelLog);
|
138
|
+
import * as loglevelLog from 'loglevel';
|
163
139
|
|
164
140
|
function prepareLine(prefix, args) {
|
165
141
|
return [`${new Date().toISOString()} Conversations ${prefix}:`].concat(Array.from(args));
|
166
142
|
}
|
167
|
-
const log =
|
143
|
+
const log = loglevelLog.getLogger("twilio-conversations"); // twilio-conversations is used by Flex SDK. Please DO NOT change
|
168
144
|
class Logger {
|
169
145
|
constructor(prefix) {
|
170
146
|
this.prefix = "";
|
@@ -218,5 +194,28 @@ class Logger {
|
|
218
194
|
}
|
219
195
|
}
|
220
196
|
|
197
|
+
export { Logger };
|
198
|
+
//# sourceMappingURL=logger.js.map
|
199
|
+
reLine(this.prefix + "E", args));
|
200
|
+
}
|
201
|
+
static trace(...args) {
|
202
|
+
if (log.getLevel() == log.levels.TRACE) {
|
203
|
+
log.debug.apply(null, prepareLine("T", args));
|
204
|
+
}
|
205
|
+
}
|
206
|
+
static debug(...args) {
|
207
|
+
log.debug.apply(null, prepareLine("D", args));
|
208
|
+
}
|
209
|
+
static info(...args) {
|
210
|
+
log.info.apply(null, prepareLine("I", args));
|
211
|
+
}
|
212
|
+
static warn(...args) {
|
213
|
+
log.warn.apply(null, prepareLine("W", args));
|
214
|
+
}
|
215
|
+
static error(...args) {
|
216
|
+
log.error.apply(null, prepareLine("E", args));
|
217
|
+
}
|
218
|
+
}
|
219
|
+
|
221
220
|
exports.Logger = Logger;
|
222
221
|
//# sourceMappingURL=logger.js.map
|
package/dist/logger.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"logger.js","sources":["../src/logger.ts"],"sourcesContent":["import * as loglevelLog from \"loglevel\";\nimport { LogLevelDesc } from \"loglevel\";\n\nfunction prepareLine(prefix, args) {\n return [`${new Date().toISOString()} Conversations ${prefix}:`].concat(\n Array.from(args)\n );\n}\n\nconst log: loglevelLog.Logger = loglevelLog.getLogger(\"twilio-conversations\"); // twilio-conversations is used by Flex SDK. Please DO NOT change\n\nclass Logger {\n private prefix = \"\";\n\n private constructor(prefix: string) {\n this.prefix =\n prefix !== null && prefix !== undefined && prefix.length > 0\n ? prefix + \" \"\n : \"\";\n }\n\n static scope(prefix: string): Logger {\n return new Logger(prefix);\n }\n\n setLevel(level: LogLevelDesc) {\n log.setLevel(level);\n }\n\n static setLevel(level: LogLevelDesc) {\n log.setLevel(level);\n }\n\n trace(...args) {\n if (log.getLevel() == log.levels.TRACE) {\n log.debug.apply(null, prepareLine(this.prefix + \"T\", args));\n }\n }\n\n debug(...args) {\n log.debug.apply(null, prepareLine(this.prefix + \"D\", args));\n }\n\n info(...args) {\n log.info.apply(null, prepareLine(this.prefix + \"I\", args));\n }\n\n warn(...args) {\n log.warn.apply(null, prepareLine(this.prefix + \"W\", args));\n }\n\n error(...args) {\n log.error.apply(null, prepareLine(this.prefix + \"E\", args));\n }\n\n static trace(...args) {\n if (log.getLevel() == log.levels.TRACE) {\n log.debug.apply(null, prepareLine(\"T\", args));\n }\n }\n\n static debug(...args) {\n log.debug.apply(null, prepareLine(\"D\", args));\n }\n\n static info(...args) {\n log.info.apply(null, prepareLine(\"I\", args));\n }\n\n static warn(...args) {\n log.warn.apply(null, prepareLine(\"W\", args));\n }\n\n static error(...args) {\n log.error.apply(null, prepareLine(\"E\", args));\n }\n}\n\nexport { Logger };\n"],"names":[
|
1
|
+
{"version":3,"file":"logger.js","sources":["../src/logger.ts"],"sourcesContent":["import * as loglevelLog from \"loglevel\";\nimport { LogLevelDesc } from \"loglevel\";\n\nfunction prepareLine(prefix, args) {\n return [`${new Date().toISOString()} Conversations ${prefix}:`].concat(\n Array.from(args)\n );\n}\n\nconst log: loglevelLog.Logger = loglevelLog.getLogger(\"twilio-conversations\"); // twilio-conversations is used by Flex SDK. Please DO NOT change\n\nclass Logger {\n private prefix = \"\";\n\n private constructor(prefix: string) {\n this.prefix =\n prefix !== null && prefix !== undefined && prefix.length > 0\n ? prefix + \" \"\n : \"\";\n }\n\n static scope(prefix: string): Logger {\n return new Logger(prefix);\n }\n\n setLevel(level: LogLevelDesc) {\n log.setLevel(level);\n }\n\n static setLevel(level: LogLevelDesc) {\n log.setLevel(level);\n }\n\n trace(...args) {\n if (log.getLevel() == log.levels.TRACE) {\n log.debug.apply(null, prepareLine(this.prefix + \"T\", args));\n }\n }\n\n debug(...args) {\n log.debug.apply(null, prepareLine(this.prefix + \"D\", args));\n }\n\n info(...args) {\n log.info.apply(null, prepareLine(this.prefix + \"I\", args));\n }\n\n warn(...args) {\n log.warn.apply(null, prepareLine(this.prefix + \"W\", args));\n }\n\n error(...args) {\n log.error.apply(null, prepareLine(this.prefix + \"E\", args));\n }\n\n static trace(...args) {\n if (log.getLevel() == log.levels.TRACE) {\n log.debug.apply(null, prepareLine(\"T\", args));\n }\n }\n\n static debug(...args) {\n log.debug.apply(null, prepareLine(\"D\", args));\n }\n\n static info(...args) {\n log.info.apply(null, prepareLine(\"I\", args));\n }\n\n static warn(...args) {\n log.warn.apply(null, prepareLine(\"W\", args));\n }\n\n static error(...args) {\n log.error.apply(null, prepareLine(\"E\", args));\n }\n}\n\nexport { Logger };\n"],"names":[],"mappings":"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"}AE,IAAI,CAAC,CAAC,CAAC;KAC/C;AACF;;;;"}
|
package/dist/media.js
CHANGED
@@ -126,8 +126,6 @@ This software includes platform.js under the following license.
|
|
126
126
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
127
127
|
|
128
128
|
*/
|
129
|
-
'use strict';
|
130
|
-
|
131
129
|
var global =
|
132
130
|
typeof global !== "undefined"
|
133
131
|
? global
|
@@ -137,9 +135,7 @@ var global =
|
|
137
135
|
? window
|
138
136
|
: {};
|
139
137
|
|
140
|
-
|
141
|
-
|
142
|
-
var mcsClient = require('@twilio/mcs-client');
|
138
|
+
import { McsMedia, CancellablePromise } from '@twilio/mcs-client';
|
143
139
|
|
144
140
|
/**
|
145
141
|
* Represents a media information for a message in a conversation.
|
@@ -152,7 +148,7 @@ class Media {
|
|
152
148
|
var _a;
|
153
149
|
this.mcsMedia = null;
|
154
150
|
this.services = services;
|
155
|
-
if (data instanceof
|
151
|
+
if (data instanceof McsMedia) {
|
156
152
|
this.mcsMedia = data;
|
157
153
|
}
|
158
154
|
this.state = {
|
@@ -201,7 +197,7 @@ class Media {
|
|
201
197
|
* Each call to this function produces a new temporary URL.
|
202
198
|
*/
|
203
199
|
getContentTemporaryUrl() {
|
204
|
-
return new
|
200
|
+
return new CancellablePromise(async (resolve, reject, onCancel) => {
|
205
201
|
var _a;
|
206
202
|
const fetchMediaRequest = this.mcsMedia
|
207
203
|
? undefined
|
@@ -228,7 +224,7 @@ class Media {
|
|
228
224
|
});
|
229
225
|
}
|
230
226
|
_fetchMcsMedia() {
|
231
|
-
return new
|
227
|
+
return new CancellablePromise(async (resolve, reject, onCancel) => {
|
232
228
|
if (this.services.mcsClient === null) {
|
233
229
|
reject(new Error("Media Content Service is unavailable"));
|
234
230
|
}
|
@@ -252,5 +248,12 @@ class Media {
|
|
252
248
|
}
|
253
249
|
}
|
254
250
|
|
251
|
+
export { Media };
|
252
|
+
//# sourceMappingURL=media.js.map
|
253
|
+
|
254
|
+
return this.state;
|
255
|
+
}
|
256
|
+
}
|
257
|
+
|
255
258
|
exports.Media = Media;
|
256
259
|
//# sourceMappingURL=media.js.map
|
package/dist/media.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"media.js","sources":["../src/media.ts"],"sourcesContent":["import {\n McsClient,\n McsMedia,\n McsMediaCategory,\n McsMediaState,\n CancellablePromise,\n} from \"@twilio/mcs-client\";\n\n/**\n * Category of media. Possible values are as follows:\n * * `'media'`\n * * `'body'`\n * * `'history'`\n */\ntype MediaCategory = McsMediaCategory;\n\ninterface MediaServices {\n mcsClient: McsClient;\n}\n\n/**\n * Represents a media information for a message in a conversation.\n */\nclass Media {\n private state: McsMediaState;\n private services: MediaServices;\n private mcsMedia: McsMedia | null = null;\n\n /**\n * @internal\n */\n constructor(data: McsMediaState | McsMedia, services: MediaServices) {\n this.services = services;\n\n if (data instanceof McsMedia) {\n this.mcsMedia = data as McsMedia;\n }\n\n this.state = {\n sid: data.sid,\n category: data.category,\n filename: data.filename ?? null,\n contentType: data.contentType,\n size: data.size,\n };\n }\n\n /**\n * Server-assigned unique identifier for the media.\n */\n public get sid(): string {\n return this.state.sid;\n }\n\n /**\n * File name. Null if absent.\n */\n public get filename(): string | null {\n return this.state.filename;\n }\n\n /**\n * Content type of the media.\n */\n public get contentType(): string {\n return this.state.contentType;\n }\n\n /**\n * Size of the media in bytes.\n */\n public get size(): number {\n return this.state.size;\n }\n\n /**\n * Media category, can be one of the {@link MediaCategory} values.\n */\n public get category(): MediaCategory {\n return this.state.category;\n }\n\n /**\n * Returns the direct content URL for the media.\n *\n * This URL is impermanent, it will expire in several minutes and cannot be cached.\n * If the URL becomes expired, you need to request a new one.\n * Each call to this function produces a new temporary URL.\n */\n public getContentTemporaryUrl(): CancellablePromise<string | null> {\n return new CancellablePromise(async (resolve, reject, onCancel) => {\n const fetchMediaRequest = this.mcsMedia\n ? undefined\n : this._fetchMcsMedia();\n let contentUrlRequest = this.mcsMedia?.getContentUrl();\n\n onCancel(() => {\n if (fetchMediaRequest) {\n fetchMediaRequest.cancel();\n }\n if (contentUrlRequest) {\n contentUrlRequest.cancel();\n }\n });\n\n try {\n if (!contentUrlRequest) {\n const mcsMedia = await fetchMediaRequest;\n contentUrlRequest = mcsMedia?.getContentUrl();\n }\n resolve(contentUrlRequest ? await contentUrlRequest : null);\n } catch (e) {\n reject(e);\n }\n });\n }\n\n private _fetchMcsMedia(): CancellablePromise<McsMedia> {\n return new CancellablePromise(async (resolve, reject, onCancel) => {\n if (this.services.mcsClient === null) {\n reject(new Error(\"Media Content Service is unavailable\"));\n }\n\n const request = this.services.mcsClient.get(this.state.sid);\n onCancel(() => request.cancel());\n\n try {\n this.mcsMedia = await request;\n this.state = this.mcsMedia._state();\n resolve(this.mcsMedia);\n } catch (e) {\n reject(e);\n }\n });\n }\n\n /**\n * @internal\n */\n _state(): McsMediaState {\n return this.state;\n }\n}\n\nexport { Media, MediaServices, MediaCategory };\n"],"names":[
|
1
|
+
{"version":3,"file":"media.js","sources":["../src/media.ts"],"sourcesContent":["import {\n McsClient,\n McsMedia,\n McsMediaCategory,\n McsMediaState,\n CancellablePromise,\n} from \"@twilio/mcs-client\";\n\n/**\n * Category of media. Possible values are as follows:\n * * `'media'`\n * * `'body'`\n * * `'history'`\n */\ntype MediaCategory = McsMediaCategory;\n\ninterface MediaServices {\n mcsClient: McsClient;\n}\n\n/**\n * Represents a media information for a message in a conversation.\n */\nclass Media {\n private state: McsMediaState;\n private services: MediaServices;\n private mcsMedia: McsMedia | null = null;\n\n /**\n * @internal\n */\n constructor(data: McsMediaState | McsMedia, services: MediaServices) {\n this.services = services;\n\n if (data instanceof McsMedia) {\n this.mcsMedia = data as McsMedia;\n }\n\n this.state = {\n sid: data.sid,\n category: data.category,\n filename: data.filename ?? null,\n contentType: data.contentType,\n size: data.size,\n };\n }\n\n /**\n * Server-assigned unique identifier for the media.\n */\n public get sid(): string {\n return this.state.sid;\n }\n\n /**\n * File name. Null if absent.\n */\n public get filename(): string | null {\n return this.state.filename;\n }\n\n /**\n * Content type of the media.\n */\n public get contentType(): string {\n return this.state.contentType;\n }\n\n /**\n * Size of the media in bytes.\n */\n public get size(): number {\n return this.state.size;\n }\n\n /**\n * Media category, can be one of the {@link MediaCategory} values.\n */\n public get category(): MediaCategory {\n return this.state.category;\n }\n\n /**\n * Returns the direct content URL for the media.\n *\n * This URL is impermanent, it will expire in several minutes and cannot be cached.\n * If the URL becomes expired, you need to request a new one.\n * Each call to this function produces a new temporary URL.\n */\n public getContentTemporaryUrl(): CancellablePromise<string | null> {\n return new CancellablePromise(async (resolve, reject, onCancel) => {\n const fetchMediaRequest = this.mcsMedia\n ? undefined\n : this._fetchMcsMedia();\n let contentUrlRequest = this.mcsMedia?.getContentUrl();\n\n onCancel(() => {\n if (fetchMediaRequest) {\n fetchMediaRequest.cancel();\n }\n if (contentUrlRequest) {\n contentUrlRequest.cancel();\n }\n });\n\n try {\n if (!contentUrlRequest) {\n const mcsMedia = await fetchMediaRequest;\n contentUrlRequest = mcsMedia?.getContentUrl();\n }\n resolve(contentUrlRequest ? await contentUrlRequest : null);\n } catch (e) {\n reject(e);\n }\n });\n }\n\n private _fetchMcsMedia(): CancellablePromise<McsMedia> {\n return new CancellablePromise(async (resolve, reject, onCancel) => {\n if (this.services.mcsClient === null) {\n reject(new Error(\"Media Content Service is unavailable\"));\n }\n\n const request = this.services.mcsClient.get(this.state.sid);\n onCancel(() => request.cancel());\n\n try {\n this.mcsMedia = await request;\n this.state = this.mcsMedia._state();\n resolve(this.mcsMedia);\n } catch (e) {\n reject(e);\n }\n });\n }\n\n /**\n * @internal\n */\n _state(): McsMediaState {\n return this.state;\n }\n}\n\nexport { Media, MediaServices, MediaCategory };\n"],"names":[],"mappings":"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"}AO,IAAI,CAAC,KAAK,CAAC;KACnB;AACF;;;;"}
|