videomail-client 9.2.21 → 9.2.23

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.
@@ -0,0 +1,42 @@
1
+ name: Test Runner for videomail-client
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - develop
7
+
8
+ pull_request:
9
+ branches:
10
+ - develop
11
+
12
+ jobs:
13
+ build-test-lint-check:
14
+ name: Build, Test, Prettier, Lint and Check
15
+ runs-on: ubuntu-latest
16
+
17
+ steps:
18
+ - name: Checkout code
19
+ uses: actions/checkout@v4
20
+
21
+ - name: Install Node.js via nvm
22
+ shell: bash --login {0}
23
+ run: |
24
+ nvm install --no-progress
25
+ echo "$(dirname $(nvm which node))" >> $GITHUB_PATH
26
+
27
+ - name: Install npm dependencies
28
+ run: npm ci
29
+
30
+ - name: Build assets
31
+ run: npm run build
32
+
33
+ - name: Run tests
34
+ uses: coactions/setup-xvfb@v1
35
+ with:
36
+ run: npm run test
37
+
38
+ - name: Run prettier
39
+ run: npm run prettier
40
+
41
+ - name: Run linter
42
+ run: npm run lint
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "videomail-client",
3
- "version": "9.2.21",
3
+ "version": "9.2.23",
4
4
  "description": "A wicked npm package to record videos directly in the browser, wohooo!",
5
5
  "keywords": [
6
6
  "webcam",
@@ -54,7 +54,7 @@
54
54
  "defined": "1.0.1",
55
55
  "despot": "2.0.0",
56
56
  "document-visibility": "1.0.1",
57
- "filesize": "10.1.4",
57
+ "filesize": "10.1.6",
58
58
  "format-util": "1.0.5",
59
59
  "get-form-data": "3.0.0",
60
60
  "hidden": "1.1.1",
@@ -86,7 +86,7 @@
86
86
  "del": "6.1.1",
87
87
  "eslint": "8.57.0",
88
88
  "eslint-config-prettier": "9.1.0",
89
- "eslint-plugin-import": "2.29.1",
89
+ "eslint-plugin-import": "2.30.0",
90
90
  "eslint-plugin-node": "11.1.0",
91
91
  "eslint-plugin-promise": "6.2.0",
92
92
  "fancy-log": "2.0.0",
@@ -108,7 +108,7 @@
108
108
  "gulp-terser": "2.1.0",
109
109
  "minimist": "1.2.8",
110
110
  "nib": "1.2.0",
111
- "postcss": "8.4.43",
111
+ "postcss": "8.4.45",
112
112
  "prettier": "3.3.3",
113
113
  "prettier-plugin-curly": "0.2.2",
114
114
  "prettier-plugin-organize-imports": "4.0.0",
@@ -4732,7 +4732,7 @@ function replaceGetterValues (replacer) {
4732
4732
  *
4733
4733
  * @copyright 2024 Jason Mulligan <jason.mulligan@avoidwork.com>
4734
4734
  * @license BSD-3-Clause
4735
- * @version 10.1.4
4735
+ * @version 10.1.6
4736
4736
  */
4737
4737
  'use strict';
4738
4738
 
@@ -4900,9 +4900,10 @@ function filesize (arg, {
4900
4900
  result[0] = result[0].toString().replace(PERIOD, separator);
4901
4901
  }
4902
4902
 
4903
- if (pad && Number.isInteger(result[0]) === false && round > 0) {
4904
- const x = separator || PERIOD,
4905
- tmp = result[0].toString().split(x),
4903
+ if (pad && round > 0) {
4904
+ const i = result[0].toString(),
4905
+ x = separator || ((i.match(/(\D)/g) || []).pop() || PERIOD),
4906
+ tmp = i.toString().split(x),
4906
4907
  s = tmp[1] || EMPTY,
4907
4908
  l = s.length,
4908
4909
  n = round - l;
@@ -17267,7 +17268,7 @@ function wrappy (fn, cb) {
17267
17268
  },{}],116:[function(_dereq_,module,exports){
17268
17269
  module.exports={
17269
17270
  "name": "videomail-client",
17270
- "version": "9.2.21",
17271
+ "version": "9.2.23",
17271
17272
  "description": "A wicked npm package to record videos directly in the browser, wohooo!",
17272
17273
  "keywords": [
17273
17274
  "webcam",
@@ -17321,7 +17322,7 @@ module.exports={
17321
17322
  "defined": "1.0.1",
17322
17323
  "despot": "2.0.0",
17323
17324
  "document-visibility": "1.0.1",
17324
- "filesize": "10.1.4",
17325
+ "filesize": "10.1.6",
17325
17326
  "format-util": "1.0.5",
17326
17327
  "get-form-data": "3.0.0",
17327
17328
  "hidden": "1.1.1",
@@ -17353,7 +17354,7 @@ module.exports={
17353
17354
  "del": "6.1.1",
17354
17355
  "eslint": "8.57.0",
17355
17356
  "eslint-config-prettier": "9.1.0",
17356
- "eslint-plugin-import": "2.29.1",
17357
+ "eslint-plugin-import": "2.30.0",
17357
17358
  "eslint-plugin-node": "11.1.0",
17358
17359
  "eslint-plugin-promise": "6.2.0",
17359
17360
  "fancy-log": "2.0.0",
@@ -17375,7 +17376,7 @@ module.exports={
17375
17376
  "gulp-terser": "2.1.0",
17376
17377
  "minimist": "1.2.8",
17377
17378
  "nib": "1.2.0",
17378
- "postcss": "8.4.43",
17379
+ "postcss": "8.4.45",
17379
17380
  "prettier": "3.3.3",
17380
17381
  "prettier-plugin-curly": "0.2.2",
17381
17382
  "prettier-plugin-organize-imports": "4.0.0",
@@ -19145,7 +19146,7 @@ VideomailError.create = function (err, explanation, options, parameters) {
19145
19146
  }
19146
19147
  if (err) {
19147
19148
  if (typeof err === "string") {
19148
- message = "".concat(err, " (default)");
19149
+ message = err;
19149
19150
  } else {
19150
19151
  if (err.message) {
19151
19152
  message = pretty(err.message) + " (pretty)";
@@ -22281,14 +22282,15 @@ var Recorder = function Recorder(visuals, replay) {
22281
22282
 
22282
22283
  stream.on("close", function (err) {
22283
22284
  debug("".concat(PIPE_SYMBOL, "Stream has closed"));
22284
- connecting = connected = false;
22285
22285
  if (err) {
22286
+ connecting = connected = false;
22286
22287
  self.emit(_events.default.ERROR, err || "Unhandled websocket error");
22287
22288
  } else {
22288
- self.emit(_events.default.DISCONNECTED);
22289
-
22290
- // prevents from https://github.com/binarykitchen/videomail.io/issues/297 happening
22291
- cancelAnimationFrame();
22289
+ // COMMENTED OUT TEMPORARILY, PROBABLY OLD CODE TOO
22290
+ // UPON CLOSE IT SHOULD TRY TO RECONNECT INSTEAD OF DISCONNECT.
22291
+ // self.emit(Events.DISCONNECTED);
22292
+ // // prevents from https://github.com/binarykitchen/videomail.io/issues/297 happening
22293
+ // cancelAnimationFrame();
22292
22294
  }
22293
22295
  });
22294
22296
  stream.on("connect", function () {
@@ -22316,29 +22318,44 @@ var Recorder = function Recorder(visuals, replay) {
22316
22318
  });
22317
22319
  stream.on("error", function (err) {
22318
22320
  debug("".concat(PIPE_SYMBOL, "Stream *error* event emitted: ").concat(err.message));
22319
- connecting = connected = false;
22320
- var videomailError;
22321
- if (browser.isIOS()) {
22322
- /*
22323
- * setting custom text since that err object isn't really an error
22324
- * on iPhones when locked, and unlocked, this err is actually
22325
- * an event object with stuff we can't use at all (an external bug)
22326
- */
22327
- videomailError = _videomailError.default.create(err, "iPhones cannot maintain a live connection for too long. Original error message is: ".concat(err.toString()), options);
22328
22321
 
22329
- /*
22330
- * Changed to the above temporarily for better investigations
22331
- * videomailError = VideomailError.create(
22332
- * 'Sorry, connection has timed out',
22333
- * 'iPhones cannot maintain a live connection for too long,
22334
- * options
22335
- * )
22336
- */
22337
- } else {
22338
- // or else it could be a poor wifi connection...
22339
- videomailError = _videomailError.default.create("Data exchange interrupted", "Please check your network connection and reload", options);
22340
- }
22341
- self.emit(_events.default.ERROR, videomailError);
22322
+ // OLD CODE, COMMENTED OUT TEMPORARILY FOR INVESTIGATIONS
22323
+ // IT SHOULD RECONNECT INSTEAD OF CLOSING THE CONNECTION
22324
+
22325
+ // connecting = connected = false;
22326
+
22327
+ // let videomailError;
22328
+
22329
+ // if (browser.isIOS()) {
22330
+ // /*
22331
+ // * setting custom text since that err object isn't really an error
22332
+ // * on iPhones when locked, and unlocked, this err is actually
22333
+ // * an event object with stuff we can't use at all (an external bug)
22334
+ // */
22335
+ // videomailError = VideomailError.create(
22336
+ // err,
22337
+ // `iPhones cannot maintain a live connection for too long. Original error message is: ${err.toString()}`,
22338
+ // options,
22339
+ // );
22340
+
22341
+ // /*
22342
+ // * Changed to the above temporarily for better investigations
22343
+ // * videomailError = VideomailError.create(
22344
+ // * 'Sorry, connection has timed out',
22345
+ // * 'iPhones cannot maintain a live connection for too long,
22346
+ // * options
22347
+ // * )
22348
+ // */
22349
+ // } else {
22350
+ // // or else it could be a poor wifi connection...
22351
+ // videomailError = VideomailError.create(
22352
+ // "Data exchange interrupted",
22353
+ // "Please check your network connection and reload",
22354
+ // options,
22355
+ // );
22356
+ // }
22357
+
22358
+ // self.emit(Events.ERROR, videomailError);
22342
22359
  });
22343
22360
 
22344
22361
  // just experimental