@npo/player 1.15.0 → 1.15.1
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/js/playeractions/handlers/processsourceconfig.js +2 -0
- package/lib/js/playeractions/handlers/processsourceconfig.js.map +1 -1
- package/lib/js/ui/components/controlbar.js +1 -2
- package/lib/js/ui/components/controlbar.js.map +1 -1
- package/lib/js/ui/components/nativemobile/controlbar.js +1 -2
- package/lib/js/ui/components/nativemobile/controlbar.js.map +1 -1
- package/lib/js/utilities/utilities.d.ts +2 -2
- package/lib/js/utilities/utilities.js +3 -17
- package/lib/js/utilities/utilities.js.map +1 -1
- package/lib/js/utilities/utilities.test.d.ts +1 -0
- package/lib/js/utilities/utilities.test.js +19 -0
- package/lib/js/utilities/utilities.test.js.map +1 -0
- package/lib/package.json +1 -1
- package/lib/src/js/utilities/utilities.d.ts +2 -2
- package/lib/src/js/utilities/utilities.test.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { HttpResponseType } from 'bitmovin-player';
|
|
2
2
|
import { npoCdnProviders } from '../../cdnproviders';
|
|
3
|
+
import { replaceSpecialChars } from '../../utilities/utilities';
|
|
3
4
|
function setDrm(sourceConfig, drm, _streamObject) {
|
|
4
5
|
const npoDrmGateway = 'https://npo-drm-gateway.samgcloud.nepworldwide.nl/authentication?custom_data=';
|
|
5
6
|
switch (drm) {
|
|
@@ -92,6 +93,7 @@ export function processSourceConfig(_sourceConfig = {}, _streamObject, drm = nul
|
|
|
92
93
|
'';
|
|
93
94
|
sourceConfig.poster =
|
|
94
95
|
_sourceConfig.poster ?? _streamObject.metadata.poster ?? '';
|
|
96
|
+
sourceConfig.poster = replaceSpecialChars(sourceConfig.poster);
|
|
95
97
|
sourceConfig.metadata = {
|
|
96
98
|
title: sourceConfig.title,
|
|
97
99
|
description: sourceConfig.description,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processsourceconfig.js","sourceRoot":"","sources":["../../../../../src/js/playeractions/handlers/processsourceconfig.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAyC,MAAM,iBAAiB,CAAA;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"processsourceconfig.js","sourceRoot":"","sources":["../../../../../src/js/playeractions/handlers/processsourceconfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ControlBar, Container, SeekBar, SeekBarLabel, PlaybackToggleButton, VolumeToggleButton, VolumeSlider, Spacer, PictureInPictureToggleButton, AirPlayToggleButton, CastToggleButton, SettingsToggleButton, FullscreenToggleButton } from 'bitmovin-player-ui';
|
|
2
|
-
import { airPlaySupported } from '../../../js/utilities/utilities';
|
|
3
2
|
import { PlayerEvent } from 'bitmovin-player';
|
|
4
3
|
import { createForwardButton, createRewindButton } from './buttons';
|
|
5
4
|
import { createSeekBar } from './seekbar';
|
|
@@ -28,7 +27,7 @@ export function createControlBar(npoplayer, settingsPanel) {
|
|
|
28
27
|
forwardButton,
|
|
29
28
|
new Spacer(),
|
|
30
29
|
...(document.pictureInPictureEnabled && /^((?!chrome|android).)*safari/i.test(navigator.userAgent) ? [new PictureInPictureToggleButton()] : []),
|
|
31
|
-
|
|
30
|
+
new AirPlayToggleButton(),
|
|
32
31
|
chromeCastButton,
|
|
33
32
|
new SettingsToggleButton({ settingsPanel }),
|
|
34
33
|
new FullscreenToggleButton()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controlbar.js","sourceRoot":"","sources":["../../../../../src/js/ui/components/controlbar.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EACV,SAAS,EACT,OAAO,EACP,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,YAAY,EACZ,MAAM,EACN,4BAA4B,EAC5B,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EAEzB,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"controlbar.js","sourceRoot":"","sources":["../../../../../src/js/ui/components/controlbar.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EACV,SAAS,EACT,OAAO,EACP,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,YAAY,EACZ,MAAM,EACN,4BAA4B,EAC5B,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EAEzB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAEzC,MAAM,UAAU,gBAAgB,CAC5B,SAAoB,EACpB,aAA4B;IAE5B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;IAE/B,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC/C,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAEjD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,YAAY,EAAE,EAAE,CAAC,CAAA;IAC1D,SAAS,CAAC,YAAY,CAAC,OAAO,GAAG,OAAO,CAAA;IAExC,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;QAC1C,MAAM,EAAE,IAAI;KACf,CAAC,CAAA;IAEF,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,GAAG,EAAE;QACvC,IAAG,MAAM,CAAC,eAAe,EAAE;YAAE,gBAAgB,CAAC,IAAI,EAAE,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC;QAC9B,UAAU,EAAE;YACR,aAAa,CAAC,SAAS,CAAC;YACxB,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,IAAI,oBAAoB,EAAE;oBAC1B,IAAI,kBAAkB,EAAE;oBACxB,IAAI,YAAY,EAAE;oBAClB,YAAY;oBACZ,aAAa;oBACb,IAAI,MAAM,EAAE;oBACZ,GAAG,CAAC,QAAQ,CAAC,uBAAuB,IAAI,gCAAgC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,4BAA4B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/I,IAAI,mBAAmB,EAAE;oBACzB,gBAAgB;oBAChB,IAAI,oBAAoB,CAAC,EAAE,aAAa,EAAE,CAAC;oBAC3C,IAAI,sBAAsB,EAAE;iBAC/B;gBACD,UAAU,EAAE,CAAC,mBAAmB,CAAC;aACpC,CAAC;SACL;QACD,UAAU,EAAE,CAAC,sBAAsB,CAAC;KACvC,CAAC,CAAA;IAGF,SAAS,CAAC,YAAY,CAAC,UAAU,GAAG,UAAU,CAAA;IAE9C,OAAO,UAAU,CAAA;AACrB,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ControlBar, Container, PlaybackTimeLabel, PlaybackTimeLabelMode, SeekBar, SeekBarLabel, VolumeSlider, Spacer, } from 'bitmovin-player-ui';
|
|
2
2
|
import { createForwardButton, createRewindButton } from '../buttons';
|
|
3
|
-
import { airPlaySupported } from '../../../utilities/utilities';
|
|
4
3
|
import { createAirPlayToggleButton, createCastToggleButton, createFullscreenToggleButton, createPictureInPictureToggleButton, createPlaybackToggleButton, createSettingsButton, createVolumeToggleButton, } from './buttons';
|
|
5
4
|
export function createControlBar(player, settingsPanel) {
|
|
6
5
|
const rewindButton = createRewindButton(player);
|
|
@@ -32,7 +31,7 @@ export function createControlBar(player, settingsPanel) {
|
|
|
32
31
|
forwardButton,
|
|
33
32
|
new Spacer(),
|
|
34
33
|
createPictureInPictureToggleButton(player),
|
|
35
|
-
|
|
34
|
+
createAirPlayToggleButton(),
|
|
36
35
|
createCastToggleButton(),
|
|
37
36
|
createSettingsButton(settingsPanel),
|
|
38
37
|
createFullscreenToggleButton(player)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controlbar.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/controlbar.ts"],"names":[],"mappings":"AACA,OAAO,EACH,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,qBAAqB,EACrB,OAAO,EACP,YAAY,EAEZ,YAAY,EACZ,MAAM,GACT,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,
|
|
1
|
+
{"version":3,"file":"controlbar.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/controlbar.ts"],"names":[],"mappings":"AACA,OAAO,EACH,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,qBAAqB,EACrB,OAAO,EACP,YAAY,EAEZ,YAAY,EACZ,MAAM,GACT,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EACH,yBAAyB,EACzB,sBAAsB,EACtB,4BAA4B,EAC5B,kCAAkC,EAClC,0BAA0B,EAC1B,oBAAoB,EACpB,wBAAwB,GAC3B,MAAM,WAAW,CAAA;AAElB,MAAM,UAAU,gBAAgB,CAC5B,MAAiB,EACjB,aAA4B;IAE5B,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC/C,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAEjD,OAAO,IAAI,UAAU,CAAC;QAClB,UAAU,EAAE;YACR,aAAa;YACb,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,IAAI,iBAAiB,CAAC;wBAClB,aAAa,EAAE,qBAAqB,CAAC,WAAW;wBAChD,kBAAkB,EAAE,IAAI;wBACxB,UAAU,EAAE,CAAC,cAAc,CAAC;qBAC/B,CAAC;oBACF,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,YAAY,EAAE,EAAE,CAAC;oBAC1C,IAAI,iBAAiB,CAAC;wBAClB,aAAa,EAAE,qBAAqB,CAAC,SAAS;wBAC9C,UAAU,EAAE,CAAC,YAAY,CAAC;qBAC7B,CAAC;iBACL;gBACD,UAAU,EAAE,CAAC,gBAAgB,CAAC;aACjC,CAAC;YACF,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,0BAA0B,EAAE;oBAC5B,wBAAwB,CAAC,MAAM,CAAC;oBAChC,IAAI,YAAY,EAAE;oBAClB,YAAY;oBACZ,aAAa;oBACb,IAAI,MAAM,EAAE;oBACZ,kCAAkC,CAAC,MAAM,CAAC;oBAC1C,yBAAyB,EAAE;oBAC3B,sBAAsB,EAAE;oBACxB,oBAAoB,CAAC,aAAa,CAAC;oBACnC,4BAA4B,CAAC,MAAM,CAAC;iBACvC;gBACD,UAAU,EAAE,CAAC,mBAAmB,CAAC;aACpC,CAAC;SACL;KACJ,CAAC,CAAA;AACN,CAAC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { type LocalizableText } from 'bitmovin-player-ui/dist/js/framework/localization/i18n';
|
|
2
2
|
export declare const jwtToBase64: (jwt: string) => string;
|
|
3
|
-
export declare const base64ToObject: (base64: string) => any
|
|
3
|
+
export declare const base64ToObject: (base64: string) => Record<string, any>;
|
|
4
4
|
export declare const noTrailingSlash: (url: string) => string;
|
|
5
5
|
export declare function localize(key: string): LocalizableText;
|
|
6
6
|
export declare function validateStreamLength(duration: string | number | undefined, seconds?: boolean): number;
|
|
7
7
|
export declare function msToSeconds(ms: number): number;
|
|
8
8
|
export declare function validatePrid(prid: string | null): string;
|
|
9
9
|
export declare function getModuleExport(module: unknown): unknown;
|
|
10
|
-
export declare function airPlaySupported(): boolean;
|
|
11
10
|
export declare function isUrl(url: string): boolean;
|
|
12
11
|
export declare function isMediaUrl(url: string): Promise<boolean>;
|
|
12
|
+
export declare function replaceSpecialChars(text: string): string;
|
|
@@ -35,23 +35,6 @@ export function getModuleExport(module) {
|
|
|
35
35
|
}
|
|
36
36
|
return module;
|
|
37
37
|
}
|
|
38
|
-
export function airPlaySupported() {
|
|
39
|
-
let hasAirPlay = false;
|
|
40
|
-
if (window.WebKitPlaybackTargetAvailabilityEvent == null || undefined) {
|
|
41
|
-
return false;
|
|
42
|
-
}
|
|
43
|
-
window.addEventListener('webkitplaybacktargetavailabilitychanged', function (event) {
|
|
44
|
-
switch (event.availability) {
|
|
45
|
-
case "available":
|
|
46
|
-
hasAirPlay = true;
|
|
47
|
-
break;
|
|
48
|
-
case "not-available":
|
|
49
|
-
hasAirPlay = false;
|
|
50
|
-
break;
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
return hasAirPlay;
|
|
54
|
-
}
|
|
55
38
|
export function isUrl(url) {
|
|
56
39
|
return url.startsWith("http://") || url.startsWith("https://");
|
|
57
40
|
}
|
|
@@ -77,4 +60,7 @@ export async function isMediaUrl(url) {
|
|
|
77
60
|
return false;
|
|
78
61
|
}
|
|
79
62
|
}
|
|
63
|
+
export function replaceSpecialChars(text) {
|
|
64
|
+
return text.replace(/['()*]/g, (char) => `%${char.charCodeAt(0).toString(16).toUpperCase()}`);
|
|
65
|
+
}
|
|
80
66
|
//# sourceMappingURL=utilities.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../../../src/js/utilities/utilities.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,IAAI,EAEP,MAAM,wDAAwD,CAAA;AAQ/D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,
|
|
1
|
+
{"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../../../src/js/utilities/utilities.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,IAAI,EAEP,MAAM,wDAAwD,CAAA;AAQ/D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAU,EAAE;IAC/C,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AAC3E,CAAC,CAAA;AAQD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAuB,EAAE;IAClE,OAAO,IAAI,CAAC,KAAK,CACb,kBAAkB,CACd,MAAM;SACD,IAAI,CAAC,MAAM,CAAC;SACZ,KAAK,CAAC,EAAE,CAAC;SACT,GAAG,CAAC,UAAU,CAAC;QACZ,OAAO,CACH,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACxD,CAAA;IACL,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAChB,CACJ,CAAA;AACL,CAAC,CAAA;AAQD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAW,EAAU,EAAE;IACnD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;AACjE,CAAC,CAAA;AAQD,MAAM,UAAU,QAAQ,CAAE,GAAW;IACjC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;AACjC,CAAC;AASD,MAAM,UAAU,oBAAoB,CAAC,QAAqC,EAAE,UAAmB,KAAK;IAChG,IAAI,OAAO,EAAE;QACT,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAA;KAC1B;IACD,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACtE,CAAC;AAQD,MAAM,UAAU,WAAW,CAAE,EAAU;IACnC,OAAO,EAAE,GAAG,IAAI,CAAA;AACpB,CAAC;AAQD,MAAM,UAAU,YAAY,CAAE,IAAmB;IAC7C,OAAO,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AAC1D,CAAC;AASD,MAAM,UAAU,eAAe,CAAC,MAAe;IAC3C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,SAAS,IAAI,MAAM,EAAE;QACtE,OAAO,MAAM,CAAC,OAAO,CAAA;KACxB;IACD,OAAO,MAAM,CAAA;AACjB,CAAC;AAQD,MAAM,UAAU,KAAK,CAAC,GAAW;IAC7B,OAAO,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;AAClE,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAW;IACxC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAA;IAC7B,IAAI;QACA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACrD,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;QAC9D,MAAM,UAAU,GAAG;YACf,QAAQ;YACR,QAAQ;YACR,0BAA0B;YAC1B,iBAAiB;YACjB,uBAAuB;YACvB,+BAA+B;YAC/B,iBAAiB;SACpB,CAAA;QACD,OAAO,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;KACzE;IAAC,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAA;QAC3C,OAAO,KAAK,CAAA;KACf;AACL,CAAC;AAQD,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC5C,OAAO,IAAI,CAAC,OAAO,CACf,SAAS,EACT,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAChE,CAAA;AACL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { replaceSpecialChars } from './utilities';
|
|
2
|
+
describe('replaceSpecialChars', () => {
|
|
3
|
+
it('should replace special characters with their hexadecimal representation', () => {
|
|
4
|
+
const inputText = 'This is a test with ( and * characters.';
|
|
5
|
+
const result = replaceSpecialChars(inputText);
|
|
6
|
+
expect(result).toBe('This is a test with %28 and %2A characters.');
|
|
7
|
+
});
|
|
8
|
+
it('should handle an empty string', () => {
|
|
9
|
+
const inputText = '';
|
|
10
|
+
const result = replaceSpecialChars(inputText);
|
|
11
|
+
expect(result).toBe('');
|
|
12
|
+
});
|
|
13
|
+
it('should handle a string with no special characters', () => {
|
|
14
|
+
const inputText = 'This is a normal string without special characters.';
|
|
15
|
+
const result = replaceSpecialChars(inputText);
|
|
16
|
+
expect(result).toBe(inputText);
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=utilities.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utilities.test.js","sourceRoot":"","sources":["../../../../src/js/utilities/utilities.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QAC/E,MAAM,SAAS,GAAG,yCAAyC,CAAA;QAC3D,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;QAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAA;IACtE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACrC,MAAM,SAAS,GAAG,EAAE,CAAA;QACpB,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;QAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QACzD,MAAM,SAAS,GAAG,qDAAqD,CAAA;QACvE,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAA;QAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
|
package/lib/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { type LocalizableText } from 'bitmovin-player-ui/dist/js/framework/localization/i18n';
|
|
2
2
|
export declare const jwtToBase64: (jwt: string) => string;
|
|
3
|
-
export declare const base64ToObject: (base64: string) => any
|
|
3
|
+
export declare const base64ToObject: (base64: string) => Record<string, any>;
|
|
4
4
|
export declare const noTrailingSlash: (url: string) => string;
|
|
5
5
|
export declare function localize(key: string): LocalizableText;
|
|
6
6
|
export declare function validateStreamLength(duration: string | number | undefined, seconds?: boolean): number;
|
|
7
7
|
export declare function msToSeconds(ms: number): number;
|
|
8
8
|
export declare function validatePrid(prid: string | null): string;
|
|
9
9
|
export declare function getModuleExport(module: unknown): unknown;
|
|
10
|
-
export declare function airPlaySupported(): boolean;
|
|
11
10
|
export declare function isUrl(url: string): boolean;
|
|
12
11
|
export declare function isMediaUrl(url: string): Promise<boolean>;
|
|
12
|
+
export declare function replaceSpecialChars(text: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|