@eluvio/elv-player-js 2.0.45 → 2.0.46

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/lib/ui/Common.js CHANGED
@@ -191,11 +191,17 @@ export const ImageUrl = async ({player, pathOrUrl="", width}) => {
191
191
  };
192
192
 
193
193
  // Merge defaults with provided parameters. Any parameters not specified in defaults will be ignored.
194
- export const MergeParameters = (defaults, parameters) => {
194
+ export const MergeParameters = (defaults, parameters, depth=1) => {
195
+ if(depth > 10) {
196
+ return {};
197
+ }
198
+
195
199
  let merged = {};
196
200
  Object.keys(defaults).forEach(key => {
197
- if(typeof defaults[key] === "object" && !Array.isArray(defaults[key])) {
198
- merged[key] = MergeParameters(defaults[key], (parameters || {})[key]);
201
+ if(key === "client") {
202
+ merged.client = defaults.client;
203
+ } else if(typeof defaults[key] === "object" && !Array.isArray(defaults[key])) {
204
+ merged[key] = MergeParameters(defaults[key], (parameters || {})[key], depth+1);
199
205
  } else {
200
206
  const value = (parameters || {})[key];
201
207
  merged[key] = typeof value !== "undefined" ? value : defaults[key];
@@ -308,13 +308,16 @@ const PlayerUI = ({
308
308
 
309
309
  const PlayerWrapper = ({parameters, ...args}) => {
310
310
  const [playerKey, setPlayerKey] = useState(Math.random());
311
- const [additionalParameters, setAdditionalParameters] = useState({});
311
+ const [additionalParameters, setAdditionalParameters] = useState();
312
312
 
313
313
  return (
314
314
  <PlayerUI
315
315
  {...args}
316
316
  SetAdditionalParameters={setAdditionalParameters}
317
- parameters={MergeParameters(parameters, additionalParameters)}
317
+ parameters={
318
+ !additionalParameters ? parameters :
319
+ MergeParameters(parameters, additionalParameters)
320
+ }
318
321
  key={`player-${playerKey}`}
319
322
  Reset={() => setPlayerKey(Math.random())}
320
323
  />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eluvio/elv-player-js",
3
- "version": "2.0.45",
3
+ "version": "2.0.46",
4
4
  "description": "![Eluvio Logo](lib/static/images/Logo.png \"Eluvio Logo\")",
5
5
  "main": "dist/elv-player-js.es.js",
6
6
  "license": "MIT",