@twilio/mcs-client 1.0.0-rc.5 → 1.0.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/builds/browser.js +1344 -523
- package/builds/browser.js.map +1 -1
- package/builds/lib.d.ts +57 -3
- package/builds/lib.js +1319 -523
- package/builds/lib.js.map +1 -1
- package/builds/twilio-mcs-client.js +10382 -1817
- package/builds/twilio-mcs-client.min.js +1 -44
- package/dist/_virtual/rng-browser.js +34 -0
- package/dist/_virtual/rng-browser.js.map +1 -0
- package/dist/cancellable-promise.js +98 -0
- package/dist/cancellable-promise.js.map +1 -0
- package/dist/client.js +7 -7
- package/dist/client.js.map +1 -1
- package/dist/index.js +2 -5
- package/dist/index.js.map +1 -1
- package/dist/logger.js +6 -2
- package/dist/logger.js.map +1 -1
- package/dist/media.js +16 -2
- package/dist/media.js.map +1 -1
- package/dist/node_modules/tslib/tslib.es6.js.map +1 -1
- package/dist/node_modules/uuid/index.js +44 -0
- package/dist/node_modules/uuid/index.js.map +1 -0
- package/dist/node_modules/uuid/lib/bytesToUuid.js +60 -0
- package/dist/node_modules/uuid/lib/bytesToUuid.js.map +1 -0
- package/dist/node_modules/uuid/lib/rng-browser.js +65 -0
- package/dist/node_modules/uuid/lib/rng-browser.js.map +1 -0
- package/dist/node_modules/uuid/v1.js +146 -0
- package/dist/node_modules/uuid/v1.js.map +1 -0
- package/dist/node_modules/uuid/v4.js +66 -0
- package/dist/node_modules/uuid/v4.js.map +1 -0
- package/dist/packages/mcs-client/package.json.js +1 -1
- package/dist/services/network.js +4 -4
- package/dist/services/network.js.map +1 -1
- package/dist/services/transport.js +3 -4
- package/dist/services/transport.js.map +1 -1
- package/package.json +12 -14
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/*
|
|
2
|
+
@license
|
|
3
|
+
Copyright (c) 2018, Twilio, Inc.
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
7
|
+
copyright notice and this permission notice appear in all copies.
|
|
8
|
+
|
|
9
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
10
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
11
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
|
12
|
+
SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
13
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
|
|
14
|
+
OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
|
15
|
+
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
16
|
+
|
|
17
|
+
*/
|
|
18
|
+
'use strict';
|
|
19
|
+
|
|
20
|
+
var global =
|
|
21
|
+
typeof global !== "undefined"
|
|
22
|
+
? global
|
|
23
|
+
: typeof self !== "undefined"
|
|
24
|
+
? self
|
|
25
|
+
: typeof window !== "undefined"
|
|
26
|
+
? window
|
|
27
|
+
: {};
|
|
28
|
+
|
|
29
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
30
|
+
|
|
31
|
+
require('./lib/rng-browser.js');
|
|
32
|
+
var bytesToUuid$1 = require('./lib/bytesToUuid.js');
|
|
33
|
+
var rngBrowser = require('../../_virtual/rng-browser.js');
|
|
34
|
+
|
|
35
|
+
var rng = rngBrowser.rngBrowser.exports;
|
|
36
|
+
var bytesToUuid = bytesToUuid$1["default"];
|
|
37
|
+
|
|
38
|
+
// **`v1()` - Generate time-based UUID**
|
|
39
|
+
//
|
|
40
|
+
// Inspired by https://github.com/LiosK/UUID.js
|
|
41
|
+
// and http://docs.python.org/library/uuid.html
|
|
42
|
+
|
|
43
|
+
var _nodeId;
|
|
44
|
+
var _clockseq;
|
|
45
|
+
|
|
46
|
+
// Previous uuid creation time
|
|
47
|
+
var _lastMSecs = 0;
|
|
48
|
+
var _lastNSecs = 0;
|
|
49
|
+
|
|
50
|
+
// See https://github.com/uuidjs/uuid for API details
|
|
51
|
+
function v1(options, buf, offset) {
|
|
52
|
+
var i = buf && offset || 0;
|
|
53
|
+
var b = buf || [];
|
|
54
|
+
|
|
55
|
+
options = options || {};
|
|
56
|
+
var node = options.node || _nodeId;
|
|
57
|
+
var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;
|
|
58
|
+
|
|
59
|
+
// node and clockseq need to be initialized to random values if they're not
|
|
60
|
+
// specified. We do this lazily to minimize issues related to insufficient
|
|
61
|
+
// system entropy. See #189
|
|
62
|
+
if (node == null || clockseq == null) {
|
|
63
|
+
var seedBytes = rng();
|
|
64
|
+
if (node == null) {
|
|
65
|
+
// Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)
|
|
66
|
+
node = _nodeId = [
|
|
67
|
+
seedBytes[0] | 0x01,
|
|
68
|
+
seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]
|
|
69
|
+
];
|
|
70
|
+
}
|
|
71
|
+
if (clockseq == null) {
|
|
72
|
+
// Per 4.2.2, randomize (14 bit) clockseq
|
|
73
|
+
clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// UUID timestamps are 100 nano-second units since the Gregorian epoch,
|
|
78
|
+
// (1582-10-15 00:00). JSNumbers aren't precise enough for this, so
|
|
79
|
+
// time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'
|
|
80
|
+
// (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.
|
|
81
|
+
var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime();
|
|
82
|
+
|
|
83
|
+
// Per 4.2.1.2, use count of uuid's generated during the current clock
|
|
84
|
+
// cycle to simulate higher resolution clock
|
|
85
|
+
var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1;
|
|
86
|
+
|
|
87
|
+
// Time since last uuid creation (in msecs)
|
|
88
|
+
var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000;
|
|
89
|
+
|
|
90
|
+
// Per 4.2.1.2, Bump clockseq on clock regression
|
|
91
|
+
if (dt < 0 && options.clockseq === undefined) {
|
|
92
|
+
clockseq = clockseq + 1 & 0x3fff;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
// Reset nsecs if clock regresses (new clockseq) or we've moved onto a new
|
|
96
|
+
// time interval
|
|
97
|
+
if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {
|
|
98
|
+
nsecs = 0;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// Per 4.2.1.2 Throw error if too many uuids are requested
|
|
102
|
+
if (nsecs >= 10000) {
|
|
103
|
+
throw new Error('uuid.v1(): Can\'t create more than 10M uuids/sec');
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
_lastMSecs = msecs;
|
|
107
|
+
_lastNSecs = nsecs;
|
|
108
|
+
_clockseq = clockseq;
|
|
109
|
+
|
|
110
|
+
// Per 4.1.4 - Convert from unix epoch to Gregorian epoch
|
|
111
|
+
msecs += 12219292800000;
|
|
112
|
+
|
|
113
|
+
// `time_low`
|
|
114
|
+
var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;
|
|
115
|
+
b[i++] = tl >>> 24 & 0xff;
|
|
116
|
+
b[i++] = tl >>> 16 & 0xff;
|
|
117
|
+
b[i++] = tl >>> 8 & 0xff;
|
|
118
|
+
b[i++] = tl & 0xff;
|
|
119
|
+
|
|
120
|
+
// `time_mid`
|
|
121
|
+
var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff;
|
|
122
|
+
b[i++] = tmh >>> 8 & 0xff;
|
|
123
|
+
b[i++] = tmh & 0xff;
|
|
124
|
+
|
|
125
|
+
// `time_high_and_version`
|
|
126
|
+
b[i++] = tmh >>> 24 & 0xf | 0x10; // include version
|
|
127
|
+
b[i++] = tmh >>> 16 & 0xff;
|
|
128
|
+
|
|
129
|
+
// `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)
|
|
130
|
+
b[i++] = clockseq >>> 8 | 0x80;
|
|
131
|
+
|
|
132
|
+
// `clock_seq_low`
|
|
133
|
+
b[i++] = clockseq & 0xff;
|
|
134
|
+
|
|
135
|
+
// `node`
|
|
136
|
+
for (var n = 0; n < 6; ++n) {
|
|
137
|
+
b[i + n] = node[n];
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
return buf ? buf : bytesToUuid(b);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
var v1_1 = v1;
|
|
144
|
+
|
|
145
|
+
exports["default"] = v1_1;
|
|
146
|
+
//# sourceMappingURL=v1.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v1.js","sources":["../../../../../node_modules/uuid/v1.js"],"sourcesContent":["var rng = require('./lib/rng');\nvar bytesToUuid = require('./lib/bytesToUuid');\n\n// **`v1()` - Generate time-based UUID**\n//\n// Inspired by https://github.com/LiosK/UUID.js\n// and http://docs.python.org/library/uuid.html\n\nvar _nodeId;\nvar _clockseq;\n\n// Previous uuid creation time\nvar _lastMSecs = 0;\nvar _lastNSecs = 0;\n\n// See https://github.com/uuidjs/uuid for API details\nfunction v1(options, buf, offset) {\n var i = buf && offset || 0;\n var b = buf || [];\n\n options = options || {};\n var node = options.node || _nodeId;\n var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;\n\n // node and clockseq need to be initialized to random values if they're not\n // specified. We do this lazily to minimize issues related to insufficient\n // system entropy. See #189\n if (node == null || clockseq == null) {\n var seedBytes = rng();\n if (node == null) {\n // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)\n node = _nodeId = [\n seedBytes[0] | 0x01,\n seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]\n ];\n }\n if (clockseq == null) {\n // Per 4.2.2, randomize (14 bit) clockseq\n clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;\n }\n }\n\n // UUID timestamps are 100 nano-second units since the Gregorian epoch,\n // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so\n // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'\n // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.\n var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime();\n\n // Per 4.2.1.2, use count of uuid's generated during the current clock\n // cycle to simulate higher resolution clock\n var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1;\n\n // Time since last uuid creation (in msecs)\n var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000;\n\n // Per 4.2.1.2, Bump clockseq on clock regression\n if (dt < 0 && options.clockseq === undefined) {\n clockseq = clockseq + 1 & 0x3fff;\n }\n\n // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new\n // time interval\n if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {\n nsecs = 0;\n }\n\n // Per 4.2.1.2 Throw error if too many uuids are requested\n if (nsecs >= 10000) {\n throw new Error('uuid.v1(): Can\\'t create more than 10M uuids/sec');\n }\n\n _lastMSecs = msecs;\n _lastNSecs = nsecs;\n _clockseq = clockseq;\n\n // Per 4.1.4 - Convert from unix epoch to Gregorian epoch\n msecs += 12219292800000;\n\n // `time_low`\n var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;\n b[i++] = tl >>> 24 & 0xff;\n b[i++] = tl >>> 16 & 0xff;\n b[i++] = tl >>> 8 & 0xff;\n b[i++] = tl & 0xff;\n\n // `time_mid`\n var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff;\n b[i++] = tmh >>> 8 & 0xff;\n b[i++] = tmh & 0xff;\n\n // `time_high_and_version`\n b[i++] = tmh >>> 24 & 0xf | 0x10; // include version\n b[i++] = tmh >>> 16 & 0xff;\n\n // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)\n b[i++] = clockseq >>> 8 | 0x80;\n\n // `clock_seq_low`\n b[i++] = clockseq & 0xff;\n\n // `node`\n for (var n = 0; n < 6; ++n) {\n b[i + n] = node[n];\n }\n\n return buf ? buf : bytesToUuid(b);\n}\n\nmodule.exports = v1;\n"],"names":["require$$0","require$$1"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAI,GAAG,GAAGA,6BAAoB,CAAC;AAC/B,IAAI,WAAW,GAAGC,wBAA4B,CAAC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,OAAO,CAAC;AACZ,IAAI,SAAS,CAAC;AACd;AACA;AACA,IAAI,UAAU,GAAG,CAAC,CAAC;AACnB,IAAI,UAAU,GAAG,CAAC,CAAC;AACnB;AACA;AACA,SAAS,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE;AAClC,EAAE,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,IAAI,CAAC,CAAC;AAC7B,EAAE,IAAI,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC;AACpB;AACA,EAAE,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;AAC1B,EAAE,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC;AACrC,EAAE,IAAI,QAAQ,GAAG,OAAO,CAAC,QAAQ,KAAK,SAAS,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;AAC/E;AACA;AACA;AACA;AACA,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,EAAE;AACxC,IAAI,IAAI,SAAS,GAAG,GAAG,EAAE,CAAC;AAC1B,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE;AACtB;AACA,MAAM,IAAI,GAAG,OAAO,GAAG;AACvB,QAAQ,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI;AAC3B,QAAQ,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;AAC5E,OAAO,CAAC;AACR,KAAK;AACL,IAAI,IAAI,QAAQ,IAAI,IAAI,EAAE;AAC1B;AACA,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;AACzE,KAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,EAAE,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;AACjF;AACA;AACA;AACA,EAAE,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,GAAG,OAAO,CAAC,KAAK,GAAG,UAAU,GAAG,CAAC,CAAC;AAC3E;AACA;AACA,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,GAAG,UAAU,IAAI,CAAC,KAAK,GAAG,UAAU,EAAE,KAAK,CAAC;AAC7D;AACA;AACA,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;AAChD,IAAI,QAAQ,GAAG,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC;AACrC,GAAG;AACH;AACA;AACA;AACA,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,KAAK,GAAG,UAAU,KAAK,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;AACrE,IAAI,KAAK,GAAG,CAAC,CAAC;AACd,GAAG;AACH;AACA;AACA,EAAE,IAAI,KAAK,IAAI,KAAK,EAAE;AACtB,IAAI,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACxE,GAAG;AACH;AACA,EAAE,UAAU,GAAG,KAAK,CAAC;AACrB,EAAE,UAAU,GAAG,KAAK,CAAC;AACrB,EAAE,SAAS,GAAG,QAAQ,CAAC;AACvB;AACA;AACA,EAAE,KAAK,IAAI,cAAc,CAAC;AAC1B;AACA;AACA,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,GAAG,SAAS,IAAI,KAAK,GAAG,KAAK,IAAI,WAAW,CAAC;AAC/D,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;AAC5B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;AAC5B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC;AAC3B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AACrB;AACA;AACA,EAAE,IAAI,GAAG,GAAG,CAAC,KAAK,GAAG,WAAW,GAAG,KAAK,IAAI,SAAS,CAAC;AACtD,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC;AAC5B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC;AACtB;AACA;AACA,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC;AACnC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC;AAC7B;AACA;AACA,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,KAAK,CAAC,GAAG,IAAI,CAAC;AACjC;AACA;AACA,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,GAAG,IAAI,CAAC;AAC3B;AACA;AACA,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;AAC9B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACvB,GAAG;AACH;AACA,EAAE,OAAO,GAAG,GAAG,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC;AACD;AACA,IAAA,IAAc,GAAG;;;;"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/*
|
|
2
|
+
@license
|
|
3
|
+
Copyright (c) 2018, Twilio, Inc.
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
7
|
+
copyright notice and this permission notice appear in all copies.
|
|
8
|
+
|
|
9
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
10
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
11
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
|
12
|
+
SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
13
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
|
|
14
|
+
OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
|
15
|
+
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
16
|
+
|
|
17
|
+
*/
|
|
18
|
+
'use strict';
|
|
19
|
+
|
|
20
|
+
var global =
|
|
21
|
+
typeof global !== "undefined"
|
|
22
|
+
? global
|
|
23
|
+
: typeof self !== "undefined"
|
|
24
|
+
? self
|
|
25
|
+
: typeof window !== "undefined"
|
|
26
|
+
? window
|
|
27
|
+
: {};
|
|
28
|
+
|
|
29
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
30
|
+
|
|
31
|
+
require('./lib/rng-browser.js');
|
|
32
|
+
var bytesToUuid$1 = require('./lib/bytesToUuid.js');
|
|
33
|
+
var rngBrowser = require('../../_virtual/rng-browser.js');
|
|
34
|
+
|
|
35
|
+
var rng = rngBrowser.rngBrowser.exports;
|
|
36
|
+
var bytesToUuid = bytesToUuid$1["default"];
|
|
37
|
+
|
|
38
|
+
function v4(options, buf, offset) {
|
|
39
|
+
var i = buf && offset || 0;
|
|
40
|
+
|
|
41
|
+
if (typeof(options) == 'string') {
|
|
42
|
+
buf = options === 'binary' ? new Array(16) : null;
|
|
43
|
+
options = null;
|
|
44
|
+
}
|
|
45
|
+
options = options || {};
|
|
46
|
+
|
|
47
|
+
var rnds = options.random || (options.rng || rng)();
|
|
48
|
+
|
|
49
|
+
// Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
|
50
|
+
rnds[6] = (rnds[6] & 0x0f) | 0x40;
|
|
51
|
+
rnds[8] = (rnds[8] & 0x3f) | 0x80;
|
|
52
|
+
|
|
53
|
+
// Copy bytes to buffer, if provided
|
|
54
|
+
if (buf) {
|
|
55
|
+
for (var ii = 0; ii < 16; ++ii) {
|
|
56
|
+
buf[i + ii] = rnds[ii];
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return buf || bytesToUuid(rnds);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
var v4_1 = v4;
|
|
64
|
+
|
|
65
|
+
exports["default"] = v4_1;
|
|
66
|
+
//# sourceMappingURL=v4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v4.js","sources":["../../../../../node_modules/uuid/v4.js"],"sourcesContent":["var rng = require('./lib/rng');\nvar bytesToUuid = require('./lib/bytesToUuid');\n\nfunction v4(options, buf, offset) {\n var i = buf && offset || 0;\n\n if (typeof(options) == 'string') {\n buf = options === 'binary' ? new Array(16) : null;\n options = null;\n }\n options = options || {};\n\n var rnds = options.random || (options.rng || rng)();\n\n // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n\n // Copy bytes to buffer, if provided\n if (buf) {\n for (var ii = 0; ii < 16; ++ii) {\n buf[i + ii] = rnds[ii];\n }\n }\n\n return buf || bytesToUuid(rnds);\n}\n\nmodule.exports = v4;\n"],"names":["require$$0","require$$1"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAI,GAAG,GAAGA,6BAAoB,CAAC;AAC/B,IAAI,WAAW,GAAGC,wBAA4B,CAAC;AAC/C;AACA,SAAS,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE;AAClC,EAAE,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,IAAI,CAAC,CAAC;AAC7B;AACA,EAAE,IAAI,OAAO,OAAO,CAAC,IAAI,QAAQ,EAAE;AACnC,IAAI,GAAG,GAAG,OAAO,KAAK,QAAQ,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;AACtD,IAAI,OAAO,GAAG,IAAI,CAAC;AACnB,GAAG;AACH,EAAE,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;AAC1B;AACA,EAAE,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC;AACtD;AACA;AACA,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC;AACpC,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC;AACpC;AACA;AACA,EAAE,IAAI,GAAG,EAAE;AACX,IAAI,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE;AACpC,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;AAC7B,KAAK;AACL,GAAG;AACH;AACA,EAAE,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC;AACD;AACA,IAAA,IAAc,GAAG;;;;"}
|
package/dist/services/network.js
CHANGED
|
@@ -31,7 +31,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
31
31
|
var operationRetrier = require('@twilio/operation-retrier');
|
|
32
32
|
var logger = require('../logger.js');
|
|
33
33
|
var configuration = require('../configuration.js');
|
|
34
|
-
var
|
|
34
|
+
var cancellablePromise = require('../cancellable-promise.js');
|
|
35
35
|
|
|
36
36
|
const log = logger.Logger.scope("Network");
|
|
37
37
|
class Network {
|
|
@@ -47,7 +47,7 @@ class Network {
|
|
|
47
47
|
return ((_b = (_a = this.config.retryWhenThrottledOverride) !== null && _a !== void 0 ? _a : configuration.Configuration.retryWhenThrottledDefault) !== null && _b !== void 0 ? _b : false);
|
|
48
48
|
}
|
|
49
49
|
executeWithRetry(request, retryWhenThrottled) {
|
|
50
|
-
return new
|
|
50
|
+
return new cancellablePromise.CancellablePromise(async (resolve, reject, onCancel) => {
|
|
51
51
|
const retrier = new operationRetrier.Retrier(this.backoffConfig());
|
|
52
52
|
const codesToRetryOn = [502, 503, 504];
|
|
53
53
|
if (retryWhenThrottled) {
|
|
@@ -93,7 +93,7 @@ class Network {
|
|
|
93
93
|
});
|
|
94
94
|
}
|
|
95
95
|
get(url) {
|
|
96
|
-
return new
|
|
96
|
+
return new cancellablePromise.CancellablePromise(async (resolve, reject, onCancel) => {
|
|
97
97
|
const headers = { "X-Twilio-Token": this.config.token };
|
|
98
98
|
const request = this.executeWithRetry(() => this.transport.get(url, headers), this.retryWhenThrottled());
|
|
99
99
|
log.trace("sending GET request to ", url, " headers ", headers);
|
|
@@ -126,7 +126,7 @@ class Network {
|
|
|
126
126
|
if (filename) {
|
|
127
127
|
fullUrl.searchParams.append("Filename", filename);
|
|
128
128
|
}
|
|
129
|
-
return new
|
|
129
|
+
return new cancellablePromise.CancellablePromise(async (resolve, reject, onCancel) => {
|
|
130
130
|
const request = this.transport.post(fullUrl.href, headers, media);
|
|
131
131
|
onCancel(() => request.cancel());
|
|
132
132
|
log.trace(`sending POST request to ${url} with headers ${headers}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.js","sources":["../../src/services/network.ts"],"sourcesContent":["import { Retrier } from \"@twilio/operation-retrier\";\nimport { Logger } from \"../logger\";\nimport { Configuration } from \"../configuration\";\nimport { Transport } from \"./transport\";\nimport { MediaCategory } from \"../media\";\nimport { CancellablePromise } from \"
|
|
1
|
+
{"version":3,"file":"network.js","sources":["../../src/services/network.ts"],"sourcesContent":["import { Retrier } from \"@twilio/operation-retrier\";\nimport { Logger } from \"../logger\";\nimport { Configuration } from \"../configuration\";\nimport { Transport } from \"./transport\";\nimport { MediaCategory } from \"../media\";\nimport { CancellablePromise } from \"../cancellable-promise\";\n\nconst log = Logger.scope(\"Network\");\n\nclass Network {\n private readonly config: Configuration;\n private readonly transport: Transport;\n\n constructor(config: Configuration, transport: Transport) {\n this.config = config;\n this.transport = transport;\n }\n\n private backoffConfig() {\n return Object.assign(\n Configuration.backoffConfigDefault,\n this.config.backoffConfigOverride\n );\n }\n\n private retryWhenThrottled(): boolean {\n return (\n this.config.retryWhenThrottledOverride ??\n Configuration.retryWhenThrottledDefault ??\n false\n );\n }\n\n private executeWithRetry(\n request,\n retryWhenThrottled: boolean\n ): CancellablePromise<any> {\n return new CancellablePromise(async (resolve, reject, onCancel) => {\n const retrier = new Retrier(this.backoffConfig());\n\n const codesToRetryOn = [502, 503, 504];\n if (retryWhenThrottled) {\n codesToRetryOn.push(429);\n }\n\n onCancel(() => {\n retrier.cancel();\n retrier.removeAllListeners();\n });\n\n retrier.on(\"attempt\", async () => {\n try {\n const requestPromise = request();\n\n onCancel(() => {\n requestPromise.cancel();\n retrier.cancel();\n retrier.removeAllListeners();\n });\n\n const result = await requestPromise;\n retrier.succeeded(result);\n } catch (err) {\n if (codesToRetryOn.indexOf(err.status) > -1) {\n retrier.failed(err);\n } else if (err.message === \"Twilsock disconnected\") {\n // Ugly hack. We must make a proper exceptions for twilsock\n retrier.failed(err);\n } else {\n // Fatal error\n retrier.removeAllListeners();\n retrier.cancel();\n reject(err);\n }\n }\n });\n\n retrier.on(\"succeeded\", (result) => {\n resolve(result);\n });\n retrier.on(\"cancelled\", (err) => reject(err));\n retrier.on(\"failed\", (err) => reject(err));\n\n retrier.start();\n });\n }\n\n public get(url: string): CancellablePromise<any> {\n return new CancellablePromise(async (resolve, reject, onCancel) => {\n const headers = { \"X-Twilio-Token\": this.config.token };\n const request = this.executeWithRetry(\n () => this.transport.get(url, headers),\n this.retryWhenThrottled()\n );\n log.trace(\"sending GET request to \", url, \" headers \", headers);\n\n onCancel(() => request.cancel());\n\n try {\n const response = await request;\n log.trace(\"response\", response);\n resolve(response);\n } catch (err) {\n log.debug(`get() error ${err}`);\n reject(err);\n }\n });\n }\n\n public post(\n url: string,\n category: MediaCategory | null,\n media: string | Buffer | Blob | FormData | Record<string, unknown>,\n contentType?: string,\n filename?: string\n ): CancellablePromise<any> {\n const headers = {\n \"X-Twilio-Token\": this.config.token,\n };\n\n if (\n (typeof FormData === \"undefined\" || !(media instanceof FormData)) &&\n contentType\n ) {\n Object.assign(headers, {\n \"Content-Type\": contentType,\n });\n }\n\n const fullUrl = new URL(url);\n if (category) {\n fullUrl.searchParams.append(\"Category\", category);\n }\n if (filename) {\n fullUrl.searchParams.append(\"Filename\", filename);\n }\n\n return new CancellablePromise(async (resolve, reject, onCancel) => {\n const request = this.transport.post(fullUrl.href, headers, media);\n\n onCancel(() => request.cancel());\n\n log.trace(`sending POST request to ${url} with headers ${headers}`);\n let response;\n try {\n response = await request;\n } catch (err) {\n // If global[\"XMLHttpRequest\"] is undefined, it means that the code is\n // not being executed in the browser.\n if (\n global[\"XMLHttpRequest\"] === undefined &&\n media instanceof FormData\n ) {\n reject(\n new TypeError(\n \"Posting FormData supported only with browser engine's FormData\"\n )\n );\n return;\n }\n log.debug(`post() error ${err}`);\n reject(err);\n return;\n }\n log.trace(\"response\", response);\n resolve(response);\n });\n }\n}\n\nexport { Network };\n"],"names":["Logger","Configuration","CancellablePromise","Retrier"],"mappings":"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"}
|
|
@@ -29,11 +29,10 @@ var global =
|
|
|
29
29
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
30
30
|
|
|
31
31
|
var transporterror = require('./transporterror.js');
|
|
32
|
-
var
|
|
32
|
+
var cancellablePromise = require('../cancellable-promise.js');
|
|
33
33
|
|
|
34
|
-
const XHR =
|
|
35
34
|
// eslint-disable-next-line
|
|
36
|
-
global["XMLHttpRequest"] || {};
|
|
35
|
+
const XHR = global["XMLHttpRequest"] || {};
|
|
37
36
|
function parseResponseHeaders(headerString) {
|
|
38
37
|
if (!headerString) {
|
|
39
38
|
return {};
|
|
@@ -66,7 +65,7 @@ function extractBody(xhr) {
|
|
|
66
65
|
*/
|
|
67
66
|
class Transport {
|
|
68
67
|
static request(method, url, headers, body) {
|
|
69
|
-
return new
|
|
68
|
+
return new cancellablePromise.CancellablePromise((resolve, reject, onCancel) => {
|
|
70
69
|
const xhr = new XHR();
|
|
71
70
|
let isCancelled = false;
|
|
72
71
|
onCancel(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sources":["../../src/services/transport.ts"],"sourcesContent":["import { TransportError } from \"./transporterror\";\nimport { CancellablePromise } from \"
|
|
1
|
+
{"version":3,"file":"transport.js","sources":["../../src/services/transport.ts"],"sourcesContent":["import { TransportError } from \"./transporterror\";\nimport { CancellablePromise } from \"../cancellable-promise\";\n\n// eslint-disable-next-line\nconst XHR = global[\"XMLHttpRequest\"] || require(\"xmlhttprequest\").XMLHttpRequest;\n\ntype Headers = { [id: string]: string };\n\nfunction parseResponseHeaders(headerString: string): Headers {\n if (!headerString) {\n return {};\n }\n\n return headerString\n .split(\"\\u000d\\u000a\")\n .map((el) => el.split(\"\\u003a\\u0020\"))\n .filter((el) => el.length === 2 && el[1].length > 0)\n .reduce((prev, curr) => {\n prev[curr[0]] = curr[1];\n return prev;\n }, {});\n}\n\nfunction extractBody(xhr) {\n const contentType = xhr.getResponseHeader(\"Content-Type\");\n if (\n !contentType ||\n contentType.indexOf(\"application/json\") !== 0 ||\n xhr.responseText.length === 0\n ) {\n return xhr.responseText;\n }\n\n try {\n return JSON.parse(xhr.responseText);\n } catch (e) {\n return xhr.responseText;\n }\n}\n\nfunction adaptHttpResponse(response: Response) {\n try {\n response.body = JSON.parse(response.body);\n } catch (e) {} // eslint-disable-line no-empty\n return response;\n}\n\ninterface Response {\n status: any;\n headers: Headers;\n body: any;\n}\n\n/**\n * Provides generic network interface\n */\nclass Transport {\n private static request(\n method: string,\n url: string,\n headers: Headers,\n body?\n ): CancellablePromise<Response> {\n return new CancellablePromise<Response>((resolve, reject, onCancel) => {\n const xhr = new XHR();\n let isCancelled = false;\n\n onCancel(() => {\n xhr.abort();\n isCancelled = true;\n });\n\n xhr.open(method, url, true);\n\n xhr.onreadystatechange = function onreadystatechange() {\n if (xhr.readyState !== 4 || isCancelled) {\n return;\n }\n\n const responseHeaders = parseResponseHeaders(\n xhr.getAllResponseHeaders()\n );\n const body = extractBody(xhr);\n\n if (200 <= xhr.status && xhr.status < 300) {\n resolve({ status: xhr.status, headers: responseHeaders, body });\n } else {\n const status = xhr.statusText ?? \"NONE\";\n let bodyRepresentation;\n if (typeof body === \"string\") {\n if (body && body.split(\"\\n\", 2).length === 1)\n bodyRepresentation = body;\n else {\n // TODO: RTDSDK-3716: investigate why body is HTML string\n const errorInfo = body\n .replace(/<.*?>/g, \"\")\n .split(/\\r\\n/g)\n .filter((str) => str.length)[0]\n ?.split(\" \");\n bodyRepresentation =\n errorInfo?.length > 2 ? errorInfo?.slice(1).join(\" \") : \"\";\n }\n } else {\n bodyRepresentation = JSON.stringify(body);\n }\n const message = `${xhr.status}: [${status}] ${bodyRepresentation}`;\n reject(\n new TransportError(\n message,\n xhr.status,\n body,\n status,\n responseHeaders\n )\n );\n }\n };\n\n for (const headerName in headers) {\n xhr.setRequestHeader(headerName, headers[headerName]);\n if (\n headerName === \"Content-Type\" &&\n headers[headerName] === \"application/json\"\n ) {\n body = JSON.stringify(body);\n }\n }\n\n xhr.send(body);\n });\n }\n\n /**\n * Make a GET request by given URL\n */\n public get(url: string, headers: Headers): CancellablePromise<Response> {\n return Transport.request(\"GET\", url, headers);\n }\n\n /**\n * Make a POST request by given URL\n */\n public post(\n url: string,\n headers: Headers,\n body?\n ): CancellablePromise<Response> {\n return Transport.request(\"POST\", url, headers, body);\n }\n}\n\nexport { Headers, Response, Transport };\n"],"names":["CancellablePromise","TransportError"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@twilio/mcs-client",
|
|
3
|
-
"version": "1.0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Twilio Media Content Service client library",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Twilio",
|
|
@@ -34,12 +34,10 @@
|
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@babel/runtime": "^7.17.0",
|
|
37
|
-
"@twilio/declarative-type-validator": "
|
|
38
|
-
"@twilio/operation-retrier": "
|
|
39
|
-
"@twilio/shared": "~1.0.0-rc.5",
|
|
37
|
+
"@twilio/declarative-type-validator": "^1.0.0",
|
|
38
|
+
"@twilio/operation-retrier": "^5.0.0",
|
|
40
39
|
"core-js": "^3.17.3",
|
|
41
40
|
"loglevel": "^1.8.0",
|
|
42
|
-
"nanoid": "^3.3.4",
|
|
43
41
|
"xmlhttprequest": "^1.8.0"
|
|
44
42
|
},
|
|
45
43
|
"devDependencies": {
|
|
@@ -52,23 +50,22 @@
|
|
|
52
50
|
"@rollup/plugin-node-resolve": "^13.2.1",
|
|
53
51
|
"@rollup/plugin-replace": "^3.0.0",
|
|
54
52
|
"@types/express": "^4.17.7",
|
|
55
|
-
"@types/jest": "^29.
|
|
53
|
+
"@types/jest": "^29.0.0",
|
|
56
54
|
"@types/node": "^12.7.4",
|
|
57
55
|
"@types/qs": "6.9.4",
|
|
58
56
|
"@typescript-eslint/eslint-plugin": "^5.51.0",
|
|
59
57
|
"@typescript-eslint/parser": "^5.51.0",
|
|
60
58
|
"async": "^3.1.0",
|
|
61
59
|
"async-test-tools": "^1.0.7",
|
|
62
|
-
"browserslist": "^4
|
|
60
|
+
"browserslist": "^4",
|
|
63
61
|
"cheerio": "^1.0.0-rc.2",
|
|
64
|
-
"dotenv": "^
|
|
62
|
+
"dotenv": "^10.0.0",
|
|
65
63
|
"eslint": "^7.27.0",
|
|
66
64
|
"eslint-config-prettier": "^8.3.0",
|
|
67
65
|
"eslint-plugin-prettier": "^3.4.0",
|
|
68
66
|
"express": "^4.17.1",
|
|
69
67
|
"ink-docstrap": "^1.3.2",
|
|
70
|
-
"
|
|
71
|
-
"jest": "^29.5.0",
|
|
68
|
+
"jest": "^29.0.0",
|
|
72
69
|
"jsdoc": "~3.5.5",
|
|
73
70
|
"jsdoc-strip-async-await": "^0.1.0",
|
|
74
71
|
"ngrok": "^3.2.5",
|
|
@@ -76,17 +73,18 @@
|
|
|
76
73
|
"rollup": "^2.70.2",
|
|
77
74
|
"rollup-plugin-polyfill-node": "^0.9.0",
|
|
78
75
|
"rollup-plugin-terser": "^7.0.2",
|
|
79
|
-
"rollup-plugin-ts": "^
|
|
80
|
-
"ts-jest": "^29.0.
|
|
76
|
+
"rollup-plugin-ts": "^2.0.7",
|
|
77
|
+
"ts-jest": "^29.0.0",
|
|
81
78
|
"ts-node": "^8.3.0",
|
|
82
79
|
"tslib": "^2.4.0",
|
|
83
80
|
"twilio": "^3.55.0",
|
|
84
|
-
"typescript": "^4.
|
|
81
|
+
"typescript": "^4.3.2"
|
|
85
82
|
},
|
|
86
83
|
"engines": {
|
|
87
|
-
"node": ">=
|
|
84
|
+
"node": ">=20"
|
|
88
85
|
},
|
|
89
86
|
"browserslist": [
|
|
87
|
+
"IE 11",
|
|
90
88
|
"last 3 Chrome versions",
|
|
91
89
|
"last 3 Firefox versions",
|
|
92
90
|
"last 3 Safari versions",
|