Skip to content

Commit 3fb29d3

Browse files
committed
perf(dimensions): avoid recalculation of dimensions for each services
1 parent 5682121 commit 3fb29d3

5 files changed

Lines changed: 63 additions & 15 deletions

File tree

dist/embed.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/embed.js

Lines changed: 10 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/embed.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/js/modules/utils.es6

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,13 +117,13 @@ export function getDimensions(options) {
117117
if (options.videoHeight && options.videoWidth) {
118118
return dimensions;
119119
} else if (options.videoHeight) {
120-
dimensions.width = ((options.videoHeight) / 3) * 4;
120+
options.videoWidth = dimensions.width = ((options.videoHeight) / 3) * 4;
121121
return dimensions;
122122
} else if (options.videoWidth) {
123-
dimensions.height = ((dimensions.width) / 4) * 3;
123+
options.videoHeight = dimensions.height = ((dimensions.width) / 4) * 3;
124124
return dimensions;
125125
} else {
126-
[dimensions.width, dimensions.height] = [800, 600];
126+
[options.videoWidth, options.videoHeight] = [dimensions.width, dimensions.height] = [800, 600];
127127
return dimensions;
128128
}
129129
}

test/bundle.test.js

Lines changed: 48 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,44 @@ var babelHelpers_typeof = typeof Symbol === "function" && typeof Symbol.iterator
66
return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj;
77
};
88

9+
var babelHelpers_slicedToArray = function () {
10+
function sliceIterator(arr, i) {
11+
var _arr = [];
12+
var _n = true;
13+
var _d = false;
14+
var _e = undefined;
15+
16+
try {
17+
for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
18+
_arr.push(_s.value);
19+
20+
if (i && _arr.length === i) break;
21+
}
22+
} catch (err) {
23+
_d = true;
24+
_e = err;
25+
} finally {
26+
try {
27+
if (!_n && _i["return"]) _i["return"]();
28+
} finally {
29+
if (_d) throw _e;
30+
}
31+
}
32+
33+
return _arr;
34+
}
35+
36+
return function (arr, i) {
37+
if (Array.isArray(arr)) {
38+
return arr;
39+
} else if (Symbol.iterator in Object(arr)) {
40+
return sliceIterator(arr, i);
41+
} else {
42+
throw new TypeError("Invalid attempt to destructure non-iterable instance");
43+
}
44+
};
45+
}();
46+
947
/**
1048
* Trucates the string and adds ellipsis at the end.
1149
* @param string The string to be truncated
@@ -123,15 +161,20 @@ function getDimensions(options) {
123161
if (options.videoHeight && options.videoWidth) {
124162
return dimensions;
125163
} else if (options.videoHeight) {
126-
dimensions.width = options.videoHeight / 3 * 4;
164+
options.videoWidth = dimensions.width = options.videoHeight / 3 * 4;
127165
return dimensions;
128166
} else if (options.videoWidth) {
129-
dimensions.height = dimensions.width / 4 * 3;
167+
options.videoHeight = dimensions.height = dimensions.width / 4 * 3;
130168
return dimensions;
131169
} else {
132-
var _ref = [800, 600];
133-
dimensions.width = _ref[0];
134-
dimensions.height = _ref[1];
170+
var _ref3;
171+
172+
var _ref = (_ref3 = [800, 600], dimensions.width = _ref3[0], dimensions.height = _ref3[1], _ref3);
173+
174+
var _ref2 = babelHelpers_slicedToArray(_ref, 2);
175+
176+
options.videoWidth = _ref2[0];
177+
options.videoHeight = _ref2[1];
135178

136179
return dimensions;
137180
}

0 commit comments

Comments
 (0)