videomail-client 7.0.0 → 8.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/.browserslistrc CHANGED
@@ -1,5 +1,5 @@
1
1
  > 1%
2
2
  last 5 versions
3
3
  Firefox ESR
4
- iOS >= 11
4
+ iOS >= 12
5
5
  android >= 4
package/.eslintrc.js CHANGED
@@ -1,21 +1,13 @@
1
1
  module.exports = {
2
2
  parser: '@babel/eslint-parser',
3
- extends: ['eslint:recommended', 'prettier'],
3
+ extends: ['eslint:recommended', 'plugin:import/recommended', 'prettier'],
4
4
  env: {
5
5
  browser: true,
6
6
  node: true,
7
7
  es6: true
8
8
  },
9
9
  rules: {
10
- 'no-else-return': 1,
11
- 'space-before-function-paren': [
12
- 'error',
13
- {
14
- anonymous: 'ignore',
15
- named: 'ignore',
16
- asyncArrow: 'ignore'
17
- }
18
- ]
19
- },
20
- ignorePatterns: ['node_modules/*']
10
+ // Turns on errors for missing imports which is great
11
+ 'import/no-unresolved': 'error'
12
+ }
21
13
  }
package/.prettierrc.js ADDED
@@ -0,0 +1,13 @@
1
+ //@ts-check
2
+
3
+ // Note: whatever prettier defaults, remove
4
+
5
+ /** @type {import('prettier').Config} */
6
+ const config = {
7
+ "printWidth": 90,
8
+ "semi": false,
9
+ "singleQuote": true,
10
+ "trailingComma": "none"
11
+ };
12
+
13
+ module.exports = config;
package/TODO.md CHANGED
@@ -8,10 +8,10 @@
8
8
  | src/js/wrappers/container.js | 293 | figure out how to fire dom's onload event again
9
9
  | src/js/wrappers/container.js | 294 | or how to run all the scripts over again
10
10
  | src/js/wrappers/optionsWrapper.js | 27 | fix this, it's not really an option
11
- | src/js/wrappers/visuals/recorder.js | 590 | in https://github.com/binarykitchen/videomail-client/issues/142
12
- | src/js/wrappers/visuals/recorder.js | 627 | retry with navigator.getUserMedia_() maybe?
13
- | src/js/wrappers/visuals/recorder.js | 767 | commented out because for some reasons server does
14
- | src/js/wrappers/visuals/recorder.js | 772 | consider removing this later or have it for debug=1 only?
11
+ | src/js/wrappers/visuals/recorder.js | 594 | in https://github.com/binarykitchen/videomail-client/issues/142
12
+ | src/js/wrappers/visuals/recorder.js | 631 | retry with navigator.getUserMedia_() maybe?
13
+ | src/js/wrappers/visuals/recorder.js | 778 | commented out because for some reasons server does
14
+ | src/js/wrappers/visuals/recorder.js | 783 | consider removing this later or have it for debug=1 only?
15
15
  | src/js/wrappers/visuals/userMedia.js | 309 | consider removing that if it's not the case anymore (for better performance)
16
16
  | gulpfile.js | 1 | write this in ES6 once i have figured out how to
17
17
  | gulpfile.js | 58 | fix this, so that it also works when not minified, this
package/audit-ci.json CHANGED
@@ -1,10 +1,5 @@
1
1
  {
2
2
  "high": true,
3
3
  "package-manager": "npm",
4
- "allowlist": [
5
- "GHSA-jf85-cpcp-j695",
6
- "GHSA-xvch-5gv4-984h",
7
- "GHSA-7p7h-4mm5-852v",
8
- "GHSA-ww39-953v-wcq6"
9
- ]
4
+ "allowlist": ["GHSA-xvch-5gv4-984h", "GHSA-7p7h-4mm5-852v", "GHSA-ww39-953v-wcq6", "GHSA-p6mc-m468-83gw"]
10
5
  }
@@ -0,0 +1,38 @@
1
+ const getPresetOptions = (isTest = false, isProduction = false) => {
2
+ if (isTest) return { targets: { node: 'current' } } // for speed
3
+
4
+ return {
5
+ // undefined means parse .browserlistrc by default
6
+ targets: !isProduction ? 'last 2 versions' : undefined
7
+ }
8
+ }
9
+
10
+ const getBabelConfig = (api) => {
11
+ const isDev = api.env('development')
12
+ const isTest = api.env('test')
13
+ const isProduction = api.env('production')
14
+
15
+ api.cache.using(() => isDev || isTest)
16
+
17
+ const presets = [['@babel/preset-env', getPresetOptions(isTest, isProduction)]]
18
+
19
+ const plugins = [
20
+ // Polyfills the runtime needed for async/await, generators, and friends
21
+ // https://babeljs.io/docs/en/babel-plugin-transform-runtime
22
+ !isTest && [
23
+ '@babel/plugin-transform-runtime',
24
+ {
25
+ corejs: false,
26
+ regenerator: true
27
+ }
28
+ ]
29
+ ].filter(Boolean)
30
+
31
+ return {
32
+ presets: presets,
33
+ plugins: plugins,
34
+ compact: isProduction
35
+ }
36
+ }
37
+
38
+ module.exports = getBabelConfig
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "videomail-client",
3
- "version": "7.0.0",
3
+ "version": "8.0.0",
4
4
  "description": "A wicked npm package to record videos directly in the browser, wohooo!",
5
5
  "author": "Michael Heuberger <michael.heuberger@binarykitchen.com>",
6
6
  "contributors": [
@@ -20,20 +20,21 @@
20
20
  "main": "prototype/js/videomail-client.js",
21
21
  "scripts": {
22
22
  "build": "gulp build",
23
+ "clean": "rm -rf node_modules && rm -rf package-lock.json",
23
24
  "test": "gulp test",
24
25
  "watch": "NODE_NO_HTTP2=1 gulp watch",
25
26
  "audit": "npx audit-ci --config audit-ci.json",
26
27
  "patch": "./env/dev/release.sh --importance=patch",
27
28
  "minor": "./env/dev/release.sh --importance=minor",
28
29
  "major": "./env/dev/release.sh --importance=major",
29
- "lint": "eslint --color --ext .js ./src ./test ./gulpfile.js",
30
- "lint-fix": "npm --silent run lint -- --fix; exit 0",
30
+ "lint": "eslint --color ./src ./test ./gulpfile.js",
31
+ "lint:fix": "npm --silent run lint -- --fix",
31
32
  "prettier": "prettier --check ./src ./test gulpfile.js",
32
- "prettier-fix": "prettier --write ./src ./test gulpfile.js"
33
+ "prettier:fix": "prettier --write ./src ./test gulpfile.js"
33
34
  },
34
35
  "engines": {
35
- "node": ">=18.12.1",
36
- "npm": ">=8.19.2"
36
+ "node": ">=20.5.1",
37
+ "npm": ">=9.8.0"
37
38
  },
38
39
  "keywords": [
39
40
  "webcam",
@@ -44,29 +45,15 @@
44
45
  "audio",
45
46
  "recorder"
46
47
  ],
47
- "babel": {
48
- "presets": [
49
- [
50
- "@babel/env",
51
- {
52
- "useBuiltIns": "usage",
53
- "corejs": 3
54
- }
55
- ]
56
- ],
57
- "plugins": [
58
- "@babel/transform-runtime"
59
- ]
60
- },
61
48
  "dependencies": {
62
- "@babel/runtime": "7.23.2",
49
+ "@babel/core": "7.23.9",
63
50
  "add-eventlistener-with-options": "1.25.5",
64
51
  "animitter": "3.0.0",
65
52
  "audio-sample": "3.0.1",
66
53
  "canvas-to-buffer": "3.0.1",
67
54
  "classlist.js": "1.1.20150312",
68
55
  "contains": "0.1.1",
69
- "core-js": "3.33.2",
56
+ "core-js": "3.36.0",
70
57
  "create-error": "0.3.1",
71
58
  "deepmerge": "4.3.1",
72
59
  "defined": "1.0.1",
@@ -91,25 +78,24 @@
91
78
  "websocket-stream": "5.5.2"
92
79
  },
93
80
  "devDependencies": {
94
- "@babel/core": "7.23.3",
95
- "@babel/eslint-parser": "7.23.3",
96
- "@babel/plugin-transform-runtime": "7.23.3",
97
- "@babel/preset-env": "7.23.3",
81
+ "@babel/eslint-parser": "7.23.10",
82
+ "@babel/plugin-transform-runtime": "7.23.9",
83
+ "@babel/preset-env": "7.23.9",
98
84
  "audit-ci": "6.6.1",
99
- "autoprefixer": "10.4.16",
85
+ "autoprefixer": "10.4.17",
100
86
  "babelify": "10.0.0",
101
87
  "body-parser": "1.20.2",
102
88
  "browserify": "17.0.0",
103
89
  "connect-send-json": "1.0.0",
104
- "cssnano": "6.0.1",
90
+ "cssnano": "6.0.3",
105
91
  "del": "6.1.1",
106
- "eslint": "8.54.0",
107
- "eslint-config-prettier": "8.8.0",
108
- "eslint-plugin-import": "2.29.0",
92
+ "eslint": "8.56.0",
93
+ "eslint-config-prettier": "9.1.0",
94
+ "eslint-plugin-import": "2.29.1",
109
95
  "eslint-plugin-node": "11.1.0",
110
96
  "eslint-plugin-promise": "6.1.1",
111
97
  "fancy-log": "2.0.0",
112
- "glob": "8.0.3",
98
+ "glob": "10.3.10",
113
99
  "gulp": "4.0.2",
114
100
  "gulp-bump": "3.2.0",
115
101
  "gulp-bytediff": "1.0.0",
@@ -120,20 +106,20 @@
120
106
  "gulp-inject-string": "1.1.2",
121
107
  "gulp-load-plugins": "2.0.8",
122
108
  "gulp-plumber": "1.2.1",
123
- "gulp-postcss": "9.0.1",
109
+ "gulp-postcss": "10.0.0",
124
110
  "gulp-rename": "2.0.0",
125
111
  "gulp-sourcemaps": "3.0.0",
126
- "gulp-stylus": "2.7.1",
112
+ "gulp-stylus": "3.0.1",
127
113
  "gulp-terser": "2.1.0",
128
114
  "gulp-todo": "7.1.1",
129
115
  "minimist": "1.2.8",
130
116
  "nib": "1.2.0",
131
- "postcss": "8.4.31",
132
- "prettier": "2.8.8",
117
+ "postcss": "8.4.35",
118
+ "prettier": "3.2.5",
133
119
  "router": "1.3.8",
134
- "tape": "5.7.2",
120
+ "tape": "5.7.5",
135
121
  "tape-catch": "1.0.6",
136
- "tape-run": "10.0.0",
122
+ "tape-run": "11.0.0",
137
123
  "vinyl-buffer": "1.0.1",
138
124
  "vinyl-source-stream": "2.0.0",
139
125
  "watchify": "4.0.0"