Skip to content

Commit

Permalink
feat(FEC-11399): allow ignoring server config (#480)
Browse files Browse the repository at this point in the history
Add flag to provider configuration to allow ignoring server config.
Related PRs:

- feat(FEC-11399): allow ignoring server config playkit-js-providers#153
- feat(FEC-11399): allow ignoring server config playkit-js-dual-screen#29
Fixes FEC-11399.
  • Loading branch information
SivanA-Kaltura committed Aug 17, 2021
1 parent f0d62b8 commit 707d519
Show file tree
Hide file tree
Showing 15 changed files with 795 additions and 1,182 deletions.
6 changes: 3 additions & 3 deletions dist/kaltura-ovp-player.cjs.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/kaltura-ovp-player.cjs.js.map

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions dist/kaltura-ovp-player.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/kaltura-ovp-player.js.map

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions dist/kaltura-tv-player.cjs.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/kaltura-tv-player.cjs.js.map

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions dist/kaltura-tv-player.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/kaltura-tv-player.js.map

Large diffs are not rendered by default.

1,874 changes: 715 additions & 1,159 deletions docs/api.md

Large diffs are not rendered by default.

5 changes: 3 additions & 2 deletions flow-typed/types/kaltura-player-options.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ declare type KPOptionsObject = {
ui: KPUIOptionsObject,
cast?: {[key: string]: any},
productVersion?: string,
viewability?: KPViewabilityConfigObject
viewability: KPViewabilityConfigObject
};

declare type PartialKPOptionsObject = {
Expand All @@ -34,7 +34,8 @@ declare type PartialKPOptionsObject = {
playlist?: KPPlaylistObject,
dimensions?: PKDimensionsConfig,
ui?: KPUIOptionsObject,
cast?: {[key: string]: any}
cast?: {[key: string]: any},
viewability?: KPViewabilityConfigObject
};

declare type LegacyPartialKPOptionsObject = {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
"@playkit-js/playkit-js-ui": "0.68.0",
"hls.js": "^1.0.7",
"intersection-observer": "^0.12.0",
"playkit-js-providers": "https://github.com/kaltura/playkit-js-providers.git#v2.29.1",
"playkit-js-providers": "https://github.com/kaltura/playkit-js-providers#master",
"proxy-polyfill": "^0.3.0",
"shaka-player": "3.0.13"
},
Expand Down
6 changes: 5 additions & 1 deletion src/common/utils/setup-helpers.js
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,11 @@ function getDefaultOptions(options: PartialKPOptionsObject): KPOptionsObject {
}
};
Utils.Object.mergeDeep(defaultOptions, options);
defaultOptions = Utils.Object.mergeDeep({}, supportLegacyOptions(getServerUIConf()), defaultOptions);

if (!options.provider.ignoreServerConfig) {
defaultOptions = Utils.Object.mergeDeep({}, supportLegacyOptions(getServerUIConf()), defaultOptions);
}

checkNativeHlsSupport(defaultOptions);
checkNativeTextTracksSupport(defaultOptions);
setDefaultAnalyticsPlugin(defaultOptions);
Expand Down
45 changes: 45 additions & 0 deletions test/src/common/utils/setup-helpers.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -374,3 +374,48 @@ describe('plugins config', function () {
defaultOptions.plugins.bumper.playOnMainVideoTag.should.be.false;
});
});

describe('ignoreServerConfig', function () {
it('should use server config if ignoreServerConfig flag is not true', function () {
const serverConfig = {
playback: {
mute: true
}
};
TestUtils.setServerConfig(serverConfig);

const options = {
provider: {
partnerId: 1091
},
playback: {
autoplay: true
}
};

const defaultOptions = SetupHelpers.getDefaultOptions(options);
defaultOptions.playback.mute.should.be.true;
});

it('should not use server config if ignoreServerConfig flag is true', function () {
const serverConfig = {
playback: {
mute: true
}
};
TestUtils.setServerConfig(serverConfig);

const options = {
provider: {
partnerId: 1091,
ignoreServerConfig: true
},
playback: {
autoplay: true
}
};

const defaultOptions = SetupHelpers.getDefaultOptions(options);
defaultOptions.playback.should.not.have.property('mute');
});
});
9 changes: 8 additions & 1 deletion test/src/utils/test-utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -81,4 +81,11 @@ function removeVideoElementsFromTestPage() {
}
}

export {createElement, removeElement, removeVideoElementsFromTestPage, getConfigStructure};
/**
* Sets value of server config
*/
function setServerConfig(value) {
window.__kalturaplayerdata = value;
}

export {createElement, removeElement, removeVideoElementsFromTestPage, getConfigStructure, setServerConfig};
4 changes: 2 additions & 2 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -7707,9 +7707,9 @@ pkginfo@0.x.x:
prompt "^1.0.0"
shelljs "^0.7.8"

"playkit-js-providers@https://github.com/kaltura/playkit-js-providers.git#v2.29.1":
"playkit-js-providers@https://github.com/kaltura/playkit-js-providers#master":
version "2.29.1"
resolved "https://github.com/kaltura/playkit-js-providers.git#dc5bcad796dc813bd6837db51e05ab088387f20b"
resolved "https://github.com/kaltura/playkit-js-providers#eb57643e03d09ff6a398663d17751a15fc6fe636"

please-upgrade-node@^3.2.0:
version "3.2.0"
Expand Down

0 comments on commit 707d519

Please sign in to comment.