@playkit-js/prevent-seek 1.0.2 → 1.0.3-canary.0-c2aa1e1
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.
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("KalturaPlayer",[],t):"object"==typeof exports?exports.KalturaPlayer=t():(e.KalturaPlayer=e.KalturaPlayer||{},e.KalturaPlayer.plugins=e.KalturaPlayer.plugins||{},e.KalturaPlayer.plugins.preventSeek=t())}(self,(
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("KalturaPlayer",[],t):"object"==typeof exports?exports.KalturaPlayer=t():(e.KalturaPlayer=e.KalturaPlayer||{},e.KalturaPlayer.plugins=e.KalturaPlayer.plugins||{},e.KalturaPlayer.plugins.preventSeek=t())}(self,()=>(()=>{"use strict";const e=KalturaPlayer;function t(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function n(e){var t=function(e){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==r(t)?t:t+""}function o(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,n(o.key),o)}}function i(e,t,r){return t&&o(e.prototype,t),r&&o(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function u(e,t){if(t&&("object"==r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function a(e){return a=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},a(e)}function l(e,t){return l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},l(e,t)}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&l(e,t)}function c(e,t,r){return(t=n(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(f=function(){return!!e})()}var p=function(){function e(r,n){var o,i,l,s;return t(this,e),i=this,l=a(l=e),(o=u(i,f()?Reflect.construct(l,[],a(i).constructor):l.apply(i,s)))._shouldPreventSeek=r,o._player=n,o}return s(e,KalturaPlayer.core.BaseMiddleware),i(e,[{key:"setCurrentTime",value:function(e,t){!this._player.isLive()&&this._shouldPreventSeek(e)||this.callNext(t)}}])}();function y(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(y=function(){return!!e})()}var v=e.ui.reducers.seekbar.actions,d="disablePictureInPicture",m=function(r){function n(e,r,o){var i,l,s,f;return t(this,n),l=this,f=[e,r,o],s=a(s=n),c(i=u(l,y()?Reflect.construct(s,f||[],a(l).constructor):s.apply(l,f)),"_maxCurrentSeekTime",0),c(i,"_restoreControls",[]),c(i,"_isPreventSeekFwdActive",function(){var e=i.player.sources.metadata,t=e.PreventFwdSeek,r=e.BanSeek;return i.config.preventSeekForward||"true"===t||"true"===r}),c(i,"_isPreventSeekActive",function(){var e=i.player.sources.metadata.PreventSeek;return i.config.preventSeek||"true"===e}),c(i,"_shouldPreventSeek",function(e){return i._isPreventSeekActive()||i._shouldPreventSeekFwd(e)}),c(i,"_shouldPreventSeekFwd",function(e){return i._isPreventSeekFwdActive()&&e>i._maxCurrentSeekTime}),i}return s(n,r),i(n,[{key:"getMiddlewareImpl",value:function(){return new p(this._shouldPreventSeek,this.player)}},{key:"loadMedia",value:function(){var t=this;if(!this.player.isLive()){var r=this._isPreventSeekFwdActive(),n=this._isPreventSeekActive();(r||n)&&(this.player.ui.store.dispatch(v.updatePreventSeek(!0)),this._removeSeekControl(e.ui.Components.Forward.displayName||"Forward"),n?this._removeSeekControl(e.ui.Components.Rewind.displayName||"Rewind"):this.eventManager.listen(this.player,this.player.Event.Core.TIME_UPDATE,function(){"number"==typeof t.player.currentTime&&t._maxCurrentSeekTime<t.player.currentTime&&(t._maxCurrentSeekTime=t.player.currentTime)}),this.player.ready().then(function(){var e;null===(e=t._getVideoElement())||void 0===e||e.setAttribute(d,"true")}))}}},{key:"_removeSeekControl",value:function(t){this._restoreControls.push(this.player.ui.addComponent({label:t,presets:[e.ui.ReservedPresetNames.Playback],area:e.ui.ReservedPresetAreas.BottomBarLeftControls,replaceComponent:t,get:e.ui.components.Remove}))}},{key:"_restoreSeekControls",value:function(){this._restoreControls.forEach(function(e){return e()})}},{key:"_getVideoElement",value:function(){return this.player.getVideoElement()}},{key:"reset",value:function(){var e,t;this._maxCurrentSeekTime=0,this.eventManager.removeAll(),this._restoreSeekControls(),this._restoreControls=[],this.player.ui.store.dispatch(v.updatePreventSeek(!1)),"true"===(null===(e=this._getVideoElement())||void 0===e?void 0:e.getAttribute(d))&&(null===(t=this._getVideoElement())||void 0===t||t.removeAttribute(d))}}],[{key:"isValid",value:function(){return!0}}])}(e.BasePlugin);return c(m,"defaultConfig",{preventSeekForward:!1,preventSeek:!1}),(0,e.registerPlugin)("preventSeek",m),{}})());
|
|
2
2
|
//# sourceMappingURL=playkit-prevent-seek.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playkit-prevent-seek.js","mappings":"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","sources":["webpack://KalturaPlayer.plugins.preventSeek/webpack/universalModuleDefinition","webpack://KalturaPlayer.plugins.preventSeek/webpack/bootstrap","webpack://KalturaPlayer.plugins.preventSeek/webpack/runtime/make namespace object","webpack://KalturaPlayer.plugins.preventSeek/external root \"KalturaPlayer\"","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://KalturaPlayer.plugins.preventSeek/./src/prevent-seek-middleware.ts","webpack://KalturaPlayer.plugins.preventSeek/external root \"KalturaPlayer.core\"","webpack://KalturaPlayer.plugins.preventSeek/./src/prevent-seek.ts","webpack://KalturaPlayer.plugins.preventSeek/./src/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"KalturaPlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"KalturaPlayer\"] = factory();\n\telse\n\t\troot[\"KalturaPlayer\"] = root[\"KalturaPlayer\"] || {}, root[\"KalturaPlayer\"][\"plugins\"] = root[\"KalturaPlayer\"][\"plugins\"] || {}, root[\"KalturaPlayer\"][\"plugins\"][\"preventSeek\"] = factory();\n})(self, () => {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = KalturaPlayer;","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import { BaseMiddleware } from '@playkit-js/playkit-js';\nimport { KalturaPlayer } from '@playkit-js/kaltura-player-js';\n\nexport class PreventSeekMiddleware extends BaseMiddleware {\n constructor(\n private _shouldPreventSeek: (seekTo: number) => boolean,\n private _player: KalturaPlayer\n ) {\n super();\n }\n\n public setCurrentTime(seekTo: number, next: () => void): void {\n if (!this._player.isLive() && this._shouldPreventSeek(seekTo)) {\n return;\n }\n this.callNext(next);\n }\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = KalturaPlayer.core;","import { BasePlugin, KalturaPlayer, ui } from '@playkit-js/kaltura-player-js';\nimport { PreventSeekConfig } from './types';\nimport { PreventSeekMiddleware } from './prevent-seek-middleware';\n\nconst { actions } = ui.reducers.seekbar;\n\nexport const pluginName = 'preventSeek';\n\nconst DISABLE_PIP_ATTRIBUTE = 'disablePictureInPicture';\n\nexport class PreventSeek extends BasePlugin {\n private _maxCurrentSeekTime: number = 0;\n public static defaultConfig: PreventSeekConfig = {\n preventSeekForward: false,\n preventSeek: false\n };\n private _restoreControls: (() => void)[] = [];\n\n public static isValid(): boolean {\n return true;\n }\n\n constructor(name: string, player: KalturaPlayer, config: PreventSeekConfig) {\n super(name, player, config);\n }\n\n public getMiddlewareImpl(): PreventSeekMiddleware {\n return new PreventSeekMiddleware(this._shouldPreventSeek, this.player);\n }\n\n public loadMedia(): void {\n if (this.player.isLive()) {\n return;\n }\n const isPreventSeekFwdActive = this._isPreventSeekFwdActive();\n const isPreventSeekActive = this._isPreventSeekActive();\n\n if (isPreventSeekFwdActive || isPreventSeekActive) {\n this.player.ui.store.dispatch(actions.updatePreventSeek(true));\n this._removeSeekControl(ui.Components.Forward.displayName || 'Forward');\n if (isPreventSeekActive) {\n this._removeSeekControl(ui.Components.Rewind.displayName || 'Rewind');\n } else {\n this.eventManager.listen(this.player, this.player.Event.Core.TIME_UPDATE, () => {\n if (typeof this.player.currentTime === 'number' && this._maxCurrentSeekTime < this.player.currentTime) {\n this._maxCurrentSeekTime = this.player.currentTime as number; // Update max current seek time\n }\n });\n }\n // when prevent seek feature is active, disable native pip\n this.player.ready().then(() => {\n this._getVideoElement()?.setAttribute(DISABLE_PIP_ATTRIBUTE, 'true');\n });\n }\n }\n\n private _removeSeekControl(componentName: string): void {\n this._restoreControls.push(\n this.player.ui.addComponent({\n label: componentName,\n presets: [ui.ReservedPresetNames.Playback],\n area: ui.ReservedPresetAreas.BottomBarLeftControls,\n replaceComponent: componentName,\n get: ui.components.Remove\n })\n );\n }\n\n private _isPreventSeekFwdActive = (): boolean => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { PreventFwdSeek, BanSeek } = this.player.sources.metadata;\n return this.config.preventSeekForward || PreventFwdSeek === 'true' || BanSeek === 'true';\n };\n\n private _isPreventSeekActive = (): boolean => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { PreventSeek } = this.player.sources.metadata;\n return this.config.preventSeek || PreventSeek === 'true';\n };\n\n private _shouldPreventSeek = (seekTo: number): boolean => {\n return this._isPreventSeekActive() || this._shouldPreventSeekFwd(seekTo);\n };\n\n private _shouldPreventSeekFwd = (seekTo: number): boolean => {\n return this._isPreventSeekFwdActive() && seekTo > this._maxCurrentSeekTime;\n };\n\n private _restoreSeekControls(): void {\n this._restoreControls.forEach((restoreSeekControl) => restoreSeekControl());\n }\n\n private _getVideoElement(): HTMLVideoElement | undefined {\n return this.player.getVideoElement();\n }\n\n public reset(): void {\n this._maxCurrentSeekTime = 0;\n this.eventManager.removeAll();\n this._restoreSeekControls();\n this._restoreControls = [];\n this.player.ui.store.dispatch(actions.updatePreventSeek(false));\n if (this._getVideoElement()?.getAttribute(DISABLE_PIP_ATTRIBUTE) === 'true') {\n this._getVideoElement()?.removeAttribute(DISABLE_PIP_ATTRIBUTE);\n }\n }\n}\n","import { registerPlugin } from '@playkit-js/kaltura-player-js';\nimport { pluginName, PreventSeek } from './prevent-seek';\n\nregisterPlugin(pluginName, PreventSeek);\n\nexport * from './types';\n"],"names":["root","factory","exports","module","define","amd","self","Symbol","toStringTag","Object","defineProperty","value","KalturaPlayer","_classCallCheck","instance","Constructor","TypeError","_typeof","o","iterator","constructor","prototype","toPropertyKey","t","i","r","e","toPrimitive","call","String","_defineProperties","target","props","length","descriptor","enumerable","configurable","writable","key","_createClass","protoProps","staticProps","_assertThisInitialized","ReferenceError","_possibleConstructorReturn","_getPrototypeOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_setPrototypeOf","p","_inherits","subClass","superClass","create","_defineProperty","obj","PreventSeekMiddleware","_BaseMiddleware","_shouldPreventSeek","_player","_this","_callSuper","core","BaseMiddleware","seekTo","next","this","isLive","callNext","actions","ui","reducers","seekbar","DISABLE_PIP_ATTRIBUTE","PreventSeek","_BasePlugin","name","player","config","_this$player$sources$","sources","metadata","PreventFwdSeek","BanSeek","preventSeekForward","preventSeek","_isPreventSeekActive","_shouldPreventSeekFwd","_isPreventSeekFwdActive","_maxCurrentSeekTime","_this2","isPreventSeekFwdActive","isPreventSeekActive","store","dispatch","updatePreventSeek","_removeSeekControl","Components","Forward","displayName","Rewind","eventManager","listen","Event","Core","TIME_UPDATE","currentTime","ready","then","_this2$_getVideoEleme","_getVideoElement","setAttribute","componentName","_restoreControls","push","addComponent","label","presets","ReservedPresetNames","Playback","area","ReservedPresetAreas","BottomBarLeftControls","replaceComponent","get","components","Remove","forEach","restoreSeekControl","getVideoElement","_this$_getVideoElemen","_this$_getVideoElemen2","removeAll","_restoreSeekControls","getAttribute","removeAttribute","BasePlugin","registerPlugin"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"playkit-prevent-seek.js","mappings":"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","sources":["webpack://KalturaPlayer.plugins.preventSeek/webpack/universalModuleDefinition","webpack://KalturaPlayer.plugins.preventSeek/external root \"KalturaPlayer\"","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://KalturaPlayer.plugins.preventSeek/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://KalturaPlayer.plugins.preventSeek/./src/prevent-seek-middleware.ts","webpack://KalturaPlayer.plugins.preventSeek/external root \"KalturaPlayer.core\"","webpack://KalturaPlayer.plugins.preventSeek/./src/prevent-seek.ts","webpack://KalturaPlayer.plugins.preventSeek/./src/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"KalturaPlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"KalturaPlayer\"] = factory();\n\telse\n\t\troot[\"KalturaPlayer\"] = root[\"KalturaPlayer\"] || {}, root[\"KalturaPlayer\"][\"plugins\"] = root[\"KalturaPlayer\"][\"plugins\"] || {}, root[\"KalturaPlayer\"][\"plugins\"][\"preventSeek\"] = factory();\n})(self, () => {\nreturn ","const __WEBPACK_NAMESPACE_OBJECT__ = KalturaPlayer;","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", {\n writable: !1\n }), e;\n}\nexport { _createClass as default };","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nfunction _possibleConstructorReturn(t, e) {\n if (e && (\"object\" == _typeof(e) || \"function\" == typeof e)) return e;\n if (void 0 !== e) throw new TypeError(\"Derived constructors may only return object or undefined\");\n return assertThisInitialized(t);\n}\nexport { _possibleConstructorReturn as default };","function _assertThisInitialized(e) {\n if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return e;\n}\nexport { _assertThisInitialized as default };","function _getPrototypeOf(t) {\n return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) {\n return t.__proto__ || Object.getPrototypeOf(t);\n }, _getPrototypeOf(t);\n}\nexport { _getPrototypeOf as default };","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inherits(t, e) {\n if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function\");\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n writable: !0,\n configurable: !0\n }\n }), Object.defineProperty(t, \"prototype\", {\n writable: !1\n }), e && setPrototypeOf(t, e);\n}\nexport { _inherits as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import { BaseMiddleware } from '@playkit-js/playkit-js';\nimport { KalturaPlayer } from '@playkit-js/kaltura-player-js';\n\nexport class PreventSeekMiddleware extends BaseMiddleware {\n constructor(\n private _shouldPreventSeek: (seekTo: number) => boolean,\n private _player: KalturaPlayer\n ) {\n super();\n }\n\n public setCurrentTime(seekTo: number, next: () => void): void {\n if (!this._player.isLive() && this._shouldPreventSeek(seekTo)) {\n return;\n }\n this.callNext(next);\n }\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = KalturaPlayer.core;","import { BasePlugin, KalturaPlayer, ui } from '@playkit-js/kaltura-player-js';\nimport { PreventSeekConfig } from './types';\nimport { PreventSeekMiddleware } from './prevent-seek-middleware';\n\nconst { actions } = ui.reducers.seekbar;\n\nexport const pluginName = 'preventSeek';\n\nconst DISABLE_PIP_ATTRIBUTE = 'disablePictureInPicture';\n\nexport class PreventSeek extends BasePlugin {\n private _maxCurrentSeekTime: number = 0;\n public static defaultConfig: PreventSeekConfig = {\n preventSeekForward: false,\n preventSeek: false\n };\n private _restoreControls: (() => void)[] = [];\n\n public static isValid(): boolean {\n return true;\n }\n\n constructor(name: string, player: KalturaPlayer, config: PreventSeekConfig) {\n super(name, player, config);\n }\n\n public getMiddlewareImpl(): PreventSeekMiddleware {\n return new PreventSeekMiddleware(this._shouldPreventSeek, this.player);\n }\n\n public loadMedia(): void {\n if (this.player.isLive()) {\n return;\n }\n const isPreventSeekFwdActive = this._isPreventSeekFwdActive();\n const isPreventSeekActive = this._isPreventSeekActive();\n\n if (isPreventSeekFwdActive || isPreventSeekActive) {\n this.player.ui.store.dispatch(actions.updatePreventSeek(true));\n this._removeSeekControl(ui.Components.Forward.displayName || 'Forward');\n if (isPreventSeekActive) {\n this._removeSeekControl(ui.Components.Rewind.displayName || 'Rewind');\n } else {\n this.eventManager.listen(this.player, this.player.Event.Core.TIME_UPDATE, () => {\n if (typeof this.player.currentTime === 'number' && this._maxCurrentSeekTime < this.player.currentTime) {\n this._maxCurrentSeekTime = this.player.currentTime as number; // Update max current seek time\n }\n });\n }\n // when prevent seek feature is active, disable native pip\n this.player.ready().then(() => {\n this._getVideoElement()?.setAttribute(DISABLE_PIP_ATTRIBUTE, 'true');\n });\n }\n }\n\n private _removeSeekControl(componentName: string): void {\n this._restoreControls.push(\n this.player.ui.addComponent({\n label: componentName,\n presets: [ui.ReservedPresetNames.Playback],\n area: ui.ReservedPresetAreas.BottomBarLeftControls,\n replaceComponent: componentName,\n get: ui.components.Remove\n })\n );\n }\n\n private _isPreventSeekFwdActive = (): boolean => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { PreventFwdSeek, BanSeek } = this.player.sources.metadata;\n return this.config.preventSeekForward || PreventFwdSeek === 'true' || BanSeek === 'true';\n };\n\n private _isPreventSeekActive = (): boolean => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { PreventSeek } = this.player.sources.metadata;\n return this.config.preventSeek || PreventSeek === 'true';\n };\n\n private _shouldPreventSeek = (seekTo: number): boolean => {\n return this._isPreventSeekActive() || this._shouldPreventSeekFwd(seekTo);\n };\n\n private _shouldPreventSeekFwd = (seekTo: number): boolean => {\n return this._isPreventSeekFwdActive() && seekTo > this._maxCurrentSeekTime;\n };\n\n private _restoreSeekControls(): void {\n this._restoreControls.forEach((restoreSeekControl) => restoreSeekControl());\n }\n\n private _getVideoElement(): HTMLVideoElement | undefined {\n return this.player.getVideoElement();\n }\n\n public reset(): void {\n this._maxCurrentSeekTime = 0;\n this.eventManager.removeAll();\n this._restoreSeekControls();\n this._restoreControls = [];\n this.player.ui.store.dispatch(actions.updatePreventSeek(false));\n if (this._getVideoElement()?.getAttribute(DISABLE_PIP_ATTRIBUTE) === 'true') {\n this._getVideoElement()?.removeAttribute(DISABLE_PIP_ATTRIBUTE);\n }\n }\n}\n","import { registerPlugin } from '@playkit-js/kaltura-player-js';\nimport { pluginName, PreventSeek } from './prevent-seek';\n\nregisterPlugin(pluginName, PreventSeek);\n\nexport * from './types';\n"],"names":["root","factory","exports","module","define","amd","self","KalturaPlayer","_classCallCheck","a","n","TypeError","_typeof","o","Symbol","iterator","constructor","prototype","toPropertyKey","t","i","e","toPrimitive","call","r","String","_defineProperties","length","enumerable","configurable","writable","Object","defineProperty","key","_createClass","_possibleConstructorReturn","ReferenceError","_getPrototypeOf","setPrototypeOf","getPrototypeOf","bind","__proto__","_setPrototypeOf","_inherits","create","value","_defineProperty","PreventSeekMiddleware","_shouldPreventSeek","_player","_this","core","BaseMiddleware","seekTo","next","this","isLive","callNext","actions","ui","reducers","seekbar","DISABLE_PIP_ATTRIBUTE","PreventSeek","_BasePlugin","name","player","config","_this$player$sources$","sources","metadata","PreventFwdSeek","BanSeek","preventSeekForward","preventSeek","_isPreventSeekActive","_shouldPreventSeekFwd","_isPreventSeekFwdActive","_maxCurrentSeekTime","_this2","isPreventSeekFwdActive","isPreventSeekActive","store","dispatch","updatePreventSeek","_removeSeekControl","Components","Forward","displayName","Rewind","eventManager","listen","Event","Core","TIME_UPDATE","currentTime","ready","then","_this2$_getVideoEleme","_getVideoElement","setAttribute","componentName","_restoreControls","push","addComponent","label","presets","ReservedPresetNames","Playback","area","ReservedPresetAreas","BottomBarLeftControls","replaceComponent","get","components","Remove","forEach","restoreSeekControl","getVideoElement","_this$_getVideoElemen","_this$_getVideoElemen2","removeAll","_restoreSeekControls","getAttribute","removeAttribute","BasePlugin","registerPlugin"],"ignoreList":[],"sourceRoot":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@playkit-js/prevent-seek",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3-canary.0-c2aa1e1",
|
|
4
4
|
"description": "Prevent seek functionality plugin for Kaltura Player",
|
|
5
5
|
"main": "dist/playkit-prevent-seek.js",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -24,61 +24,60 @@
|
|
|
24
24
|
"serve": "webpack serve --open --mode development",
|
|
25
25
|
"watch": "webpack --mode development --watch",
|
|
26
26
|
"build:prod": "webpack --mode production",
|
|
27
|
-
"build": "
|
|
27
|
+
"build": "npm run build:prod && npm run build:types",
|
|
28
28
|
"build:types": "tsc --build tsconfig-lib.json && mkdir -p lib && api-extractor run --local",
|
|
29
29
|
"type-check": "tsc --noEmit",
|
|
30
|
-
"type-check:watch": "
|
|
30
|
+
"type-check:watch": "npm run type-check --watch",
|
|
31
31
|
"lint": "eslint src/ --ext .js --ext .ts",
|
|
32
|
-
"lint:fix": "
|
|
32
|
+
"lint:fix": "npm run lint --fix",
|
|
33
33
|
"prettier": "prettier --write .",
|
|
34
|
-
"clean": "rimraf ./dist",
|
|
34
|
+
"clean": "npx rimraf ./dist",
|
|
35
35
|
"prebuild": "npm run clean",
|
|
36
36
|
"precommit": "npm run build:prod && npm run type-check && npm run lint",
|
|
37
37
|
"pushTaggedRelease": "git push --follow-tags --no-verify origin master",
|
|
38
38
|
"release": "standard-version",
|
|
39
39
|
"cy:open": "cypress open",
|
|
40
|
-
"cy:run": "
|
|
40
|
+
"cy:run": "npm run cy:run:chrome && npm run cy:run:firefox && npm run cy:run:edge && npm run cy:run:safari",
|
|
41
41
|
"cy:run:chrome": "cypress run --browser chrome --config video=false",
|
|
42
42
|
"cy:run:firefox": "cypress run --browser firefox --config video=false",
|
|
43
43
|
"cy:run:edge": "cypress run --browser edge --config video=false",
|
|
44
44
|
"cy:run:safari": "cypress run --browser webkit --config video=false",
|
|
45
|
-
"test:prepare": "
|
|
46
|
-
"test:watch": "
|
|
47
|
-
"test": "
|
|
45
|
+
"test:prepare": "npm run build && copyfiles -f ./dist/playkit-prevent-seek.js ./cypress/public",
|
|
46
|
+
"test:watch": "npm run test:prepare && npm run cy:open",
|
|
47
|
+
"test": "npm run test:prepare && npm run cy:run"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
|
-
"@babel/core": "^7.
|
|
51
|
-
"@babel/plugin-proposal-decorators": "^7.
|
|
52
|
-
"@babel/plugin-transform-react-jsx": "^7.
|
|
53
|
-
"@babel/plugin-transform-runtime": "^7.
|
|
54
|
-
"@babel/preset-env": "^7.
|
|
55
|
-
"@babel/preset-typescript": "^7.
|
|
56
|
-
"@babel/runtime": "^7.
|
|
50
|
+
"@babel/core": "^7.26.0",
|
|
51
|
+
"@babel/plugin-proposal-decorators": "^7.25.9",
|
|
52
|
+
"@babel/plugin-transform-react-jsx": "^7.25.9",
|
|
53
|
+
"@babel/plugin-transform-runtime": "^7.25.9",
|
|
54
|
+
"@babel/preset-env": "^7.26.0",
|
|
55
|
+
"@babel/preset-typescript": "^7.26.0",
|
|
56
|
+
"@babel/runtime": "^7.26.0",
|
|
57
57
|
"@microsoft/api-extractor": "^7.39.1",
|
|
58
58
|
"@playkit-js/browserslist-config": "1.0.8",
|
|
59
59
|
"@playkit-js/kaltura-player-js": "3.17.12-canary.0-8dc610d",
|
|
60
60
|
"@types/preact-i18n": "1.2.0",
|
|
61
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
62
|
-
"@typescript-eslint/parser": "^
|
|
61
|
+
"@typescript-eslint/eslint-plugin": "^8.17.0",
|
|
62
|
+
"@typescript-eslint/parser": "^8.17.0",
|
|
63
63
|
"babel-loader": "^9.1.3",
|
|
64
64
|
"copyfiles": "^2.4.1",
|
|
65
65
|
"css-loader": "^6.9.0",
|
|
66
|
-
"cypress": "
|
|
67
|
-
"eslint": "^
|
|
68
|
-
"eslint-config-preact": "^1.3.0",
|
|
66
|
+
"cypress": "15.8.2",
|
|
67
|
+
"eslint": "^9.17.0",
|
|
69
68
|
"eslint-config-prettier": "^9.1.0",
|
|
70
69
|
"eslint-plugin-prettier": "^5.1.3",
|
|
71
70
|
"playwright-webkit": "^1.41.2",
|
|
72
71
|
"prettier": "^3.2.2",
|
|
73
|
-
"sass": "^1.
|
|
72
|
+
"sass": "^1.83.0",
|
|
74
73
|
"sass-loader": "^13.3.3",
|
|
75
74
|
"standard-version": "^9.5.0",
|
|
76
75
|
"style-loader": "^3.3.4",
|
|
77
76
|
"typescript": "^5.3.3",
|
|
78
77
|
"typescript-plugin-css-modules": "^5.0.2",
|
|
79
|
-
"webpack": "^5.
|
|
78
|
+
"webpack": "^5.97.1",
|
|
80
79
|
"webpack-cli": "^5.1.4",
|
|
81
|
-
"webpack-dev-server": "^
|
|
80
|
+
"webpack-dev-server": "^5.2.2"
|
|
82
81
|
},
|
|
83
82
|
"peerDependencies": {
|
|
84
83
|
"@playkit-js/kaltura-player-js": "^3.17.9-canary.0-0c8731f",
|