@norskvideo/norsk-studio-built-ins 1.11.6 → 1.12.0-2025-01-28-397642d6

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.
Files changed (238) hide show
  1. package/README.md +16 -0
  2. package/client/info.js +1402 -782
  3. package/client/output.whep/styles.css +9 -0
  4. package/client/style.css +520 -858
  5. package/lib/info.js +4 -8
  6. package/lib/info.js.map +1 -1
  7. package/lib/input.rtmp/info.js +2 -1
  8. package/lib/input.rtmp/info.js.map +1 -1
  9. package/lib/input.rtmp/runtime.d.ts +24 -5
  10. package/lib/input.rtmp/runtime.js +166 -60
  11. package/lib/input.rtmp/runtime.js.map +1 -1
  12. package/lib/input.rtmp/summary-view.d.ts +3 -5
  13. package/lib/input.rtmp/summary-view.js +26 -6
  14. package/lib/input.rtmp/summary-view.js.map +1 -1
  15. package/lib/input.rtmp/types.d.ts +133 -0
  16. package/lib/input.rtmp/types.js +3 -0
  17. package/lib/input.rtmp/types.js.map +1 -0
  18. package/lib/input.rtmp/types.yaml +99 -0
  19. package/lib/input.silence/info.js +3 -2
  20. package/lib/input.silence/info.js.map +1 -1
  21. package/lib/input.srt-caller/info.js +6 -5
  22. package/lib/input.srt-caller/info.js.map +1 -1
  23. package/lib/input.srt-caller/runtime.d.ts +1 -1
  24. package/lib/input.srt-listener/info.js +14 -6
  25. package/lib/input.srt-listener/info.js.map +1 -1
  26. package/lib/input.srt-listener/runtime.d.ts +42 -6
  27. package/lib/input.srt-listener/runtime.js +237 -57
  28. package/lib/input.srt-listener/runtime.js.map +1 -1
  29. package/lib/input.srt-listener/summary-view.d.ts +3 -5
  30. package/lib/input.srt-listener/summary-view.js +81 -5
  31. package/lib/input.srt-listener/summary-view.js.map +1 -1
  32. package/lib/input.srt-listener/types.d.ts +193 -0
  33. package/lib/input.srt-listener/types.js +3 -0
  34. package/lib/input.srt-listener/types.js.map +1 -0
  35. package/lib/input.srt-listener/types.yaml +145 -0
  36. package/lib/input.udp-ts/info.d.ts +1 -1
  37. package/lib/input.udp-ts/info.js +5 -4
  38. package/lib/input.udp-ts/info.js.map +1 -1
  39. package/lib/input.udp-ts/runtime.d.ts +1 -1
  40. package/lib/input.videoTestCard/info.d.ts +1 -1
  41. package/lib/input.videoTestCard/info.js +14 -4
  42. package/lib/input.videoTestCard/info.js.map +1 -1
  43. package/lib/output.autoCmaf/info.d.ts +2 -2
  44. package/lib/output.autoCmaf/info.js +65 -7
  45. package/lib/output.autoCmaf/info.js.map +1 -1
  46. package/lib/output.autoCmaf/runtime.d.ts +29 -9
  47. package/lib/output.autoCmaf/runtime.js +198 -60
  48. package/lib/output.autoCmaf/runtime.js.map +1 -1
  49. package/lib/output.autoCmaf/summary.js +26 -1
  50. package/lib/output.autoCmaf/summary.js.map +1 -1
  51. package/lib/output.autoCmaf/types.d.ts +101 -0
  52. package/lib/output.autoCmaf/types.js +3 -0
  53. package/lib/output.autoCmaf/types.js.map +1 -0
  54. package/lib/output.autoCmaf/types.yaml +28 -0
  55. package/lib/output.preview/info.js +5 -2
  56. package/lib/output.preview/info.js.map +1 -1
  57. package/lib/output.preview/inline-view.d.ts +2 -4
  58. package/lib/output.preview/inline-view.js +41 -7
  59. package/lib/output.preview/inline-view.js.map +1 -1
  60. package/lib/output.preview/runtime.d.ts +5 -3
  61. package/lib/output.preview/runtime.js +29 -18
  62. package/lib/output.preview/runtime.js.map +1 -1
  63. package/lib/output.rtmp/info.js +1 -0
  64. package/lib/output.rtmp/info.js.map +1 -1
  65. package/lib/output.rtmp/inline-view.js +2 -2
  66. package/lib/output.rtmp/runtime.d.ts +2 -2
  67. package/lib/output.rtmp/runtime.js.map +1 -1
  68. package/lib/output.srt/info.d.ts +2 -2
  69. package/lib/output.srt/info.js +26 -5
  70. package/lib/output.srt/info.js.map +1 -1
  71. package/lib/output.srt/runtime.d.ts +30 -5
  72. package/lib/output.srt/runtime.js +139 -5
  73. package/lib/output.srt/runtime.js.map +1 -1
  74. package/lib/output.srt/types.d.ts +101 -0
  75. package/lib/output.srt/types.js +3 -0
  76. package/lib/output.srt/types.js.map +1 -0
  77. package/lib/output.srt/types.yaml +31 -0
  78. package/lib/output.statistics/info.js +1 -0
  79. package/lib/output.statistics/info.js.map +1 -1
  80. package/lib/output.statistics/inline-view.js +3 -2
  81. package/lib/output.statistics/inline-view.js.map +1 -1
  82. package/lib/output.statistics/runtime.d.ts +1 -1
  83. package/lib/output.statistics/runtime.js.map +1 -1
  84. package/lib/output.udpTs/info.d.ts +1 -1
  85. package/lib/output.udpTs/info.js +4 -3
  86. package/lib/output.udpTs/info.js.map +1 -1
  87. package/lib/output.udpTs/runtime.d.ts +1 -1
  88. package/lib/output.whep/info.d.ts +2 -2
  89. package/lib/output.whep/info.js +50 -1
  90. package/lib/output.whep/info.js.map +1 -1
  91. package/lib/output.whep/inline-view.d.ts +4 -0
  92. package/lib/output.whep/inline-view.js +57 -0
  93. package/lib/output.whep/inline-view.js.map +1 -0
  94. package/lib/output.whep/runtime.d.ts +27 -5
  95. package/lib/output.whep/runtime.js +64 -13
  96. package/lib/output.whep/runtime.js.map +1 -1
  97. package/lib/output.whep/types.d.ts +101 -0
  98. package/lib/output.whep/types.js +3 -0
  99. package/lib/output.whep/types.js.map +1 -0
  100. package/lib/output.whep/types.yaml +30 -0
  101. package/lib/processor.browserOverlay/info.d.ts +2 -2
  102. package/lib/processor.browserOverlay/info.js +56 -2
  103. package/lib/processor.browserOverlay/info.js.map +1 -1
  104. package/lib/processor.browserOverlay/inline-view.d.ts +6 -0
  105. package/lib/processor.browserOverlay/inline-view.js +8 -0
  106. package/lib/processor.browserOverlay/inline-view.js.map +1 -0
  107. package/lib/processor.browserOverlay/runtime.d.ts +40 -6
  108. package/lib/processor.browserOverlay/runtime.js +151 -23
  109. package/lib/processor.browserOverlay/runtime.js.map +1 -1
  110. package/lib/processor.browserOverlay/summary-view.d.ts +4 -0
  111. package/lib/processor.browserOverlay/summary-view.js +27 -0
  112. package/lib/processor.browserOverlay/summary-view.js.map +1 -0
  113. package/lib/processor.browserOverlay/types.d.ts +174 -0
  114. package/lib/processor.browserOverlay/types.js +3 -0
  115. package/lib/processor.browserOverlay/types.js.map +1 -0
  116. package/lib/processor.browserOverlay/types.yaml +65 -0
  117. package/lib/processor.cascadingSwitch/info.js +4 -3
  118. package/lib/processor.cascadingSwitch/info.js.map +1 -1
  119. package/lib/processor.cascadingSwitch/inline-view.js +3 -3
  120. package/lib/processor.cascadingSwitch/runtime.d.ts +1 -1
  121. package/lib/processor.cascadingSwitch/runtime.js +2 -2
  122. package/lib/processor.cascadingSwitch/runtime.js.map +1 -1
  123. package/lib/processor.fixedLadder/codec-editor.js +1 -1
  124. package/lib/processor.fixedLadder/codec-editor.js.map +1 -1
  125. package/lib/processor.fixedLadder/codec-view.js +1 -1
  126. package/lib/processor.fixedLadder/codec-view.js.map +1 -1
  127. package/lib/processor.fixedLadder/info.js +4 -2
  128. package/lib/processor.fixedLadder/info.js.map +1 -1
  129. package/lib/processor.fixedLadder/rung-view.js +1 -1
  130. package/lib/processor.fixedLadder/rung-view.js.map +1 -1
  131. package/lib/processor.onscreenGraphic/image-selection.d.ts +9 -0
  132. package/lib/{processor.dynamicBug/bug-selection.js → processor.onscreenGraphic/image-selection.js} +10 -10
  133. package/lib/processor.onscreenGraphic/image-selection.js.map +1 -0
  134. package/lib/processor.onscreenGraphic/info.d.ts +3 -0
  135. package/lib/{processor.dynamicBug → processor.onscreenGraphic}/info.js +23 -16
  136. package/lib/processor.onscreenGraphic/info.js.map +1 -0
  137. package/lib/processor.onscreenGraphic/runtime.d.ts +91 -0
  138. package/lib/processor.onscreenGraphic/runtime.js +503 -0
  139. package/lib/processor.onscreenGraphic/runtime.js.map +1 -0
  140. package/lib/processor.onscreenGraphic/summary-view.d.ts +4 -0
  141. package/lib/processor.onscreenGraphic/summary-view.js +343 -0
  142. package/lib/processor.onscreenGraphic/summary-view.js.map +1 -0
  143. package/lib/processor.onscreenGraphic/types.d.ts +271 -0
  144. package/lib/processor.onscreenGraphic/types.js +3 -0
  145. package/lib/processor.onscreenGraphic/types.js.map +1 -0
  146. package/lib/processor.onscreenGraphic/types.yaml +211 -0
  147. package/lib/processor.streamKeyOverride/info.d.ts +3 -0
  148. package/lib/processor.streamKeyOverride/info.js +150 -0
  149. package/lib/processor.streamKeyOverride/info.js.map +1 -0
  150. package/lib/processor.streamKeyOverride/runtime.d.ts +54 -0
  151. package/lib/processor.streamKeyOverride/runtime.js +226 -0
  152. package/lib/processor.streamKeyOverride/runtime.js.map +1 -0
  153. package/lib/shared/drm/axinom.d.ts +2 -0
  154. package/lib/shared/drm/axinom.js +120 -0
  155. package/lib/shared/drm/axinom.js.map +1 -0
  156. package/lib/shared/drm/cpix.d.ts +24 -0
  157. package/lib/shared/drm/cpix.js +97 -0
  158. package/lib/shared/drm/cpix.js.map +1 -0
  159. package/lib/shared/drm/ezdrm.d.ts +2 -0
  160. package/lib/shared/drm/ezdrm.js +26 -0
  161. package/lib/shared/drm/ezdrm.js.map +1 -0
  162. package/lib/shared/srt-socket-options.js +6 -6
  163. package/lib/shared/srt-socket-options.js.map +1 -1
  164. package/lib/test/auto-cmaf.js +25 -17
  165. package/lib/test/auto-cmaf.js.map +1 -1
  166. package/lib/test/browser-overlay.js +1 -0
  167. package/lib/test/browser-overlay.js.map +1 -1
  168. package/lib/test/{dynamic-bug.js → onscreen-graphic.js} +139 -106
  169. package/lib/test/onscreen-graphic.js.map +1 -0
  170. package/lib/test/preview.js +3 -3
  171. package/lib/test/preview.js.map +1 -1
  172. package/lib/test/rtmp-input.js +6 -3
  173. package/lib/test/rtmp-input.js.map +1 -1
  174. package/lib/test/srt-input-caller.js +5 -5
  175. package/lib/test/srt-input-caller.js.map +1 -1
  176. package/lib/test/srt-input-listener.js +99 -18
  177. package/lib/test/srt-input-listener.js.map +1 -1
  178. package/lib/test/srt-output.js +2 -2
  179. package/lib/test/srt-output.js.map +1 -1
  180. package/lib/test/udp-output.js +2 -2
  181. package/lib/test/udp-output.js.map +1 -1
  182. package/lib/test/udp-ts-input.js +2 -2
  183. package/lib/test/udp-ts-input.js.map +1 -1
  184. package/lib/test/whep-output.js +8 -2
  185. package/lib/test/whep-output.js.map +1 -1
  186. package/lib/{util.latency → util.stats.latency}/info.js +2 -1
  187. package/lib/util.stats.latency/info.js.map +1 -0
  188. package/lib/util.stats.latency/inline-view.js.map +1 -0
  189. package/lib/{util.latency → util.stats.latency}/runtime.d.ts +1 -1
  190. package/lib/{util.latency → util.stats.latency}/runtime.js +2 -2
  191. package/lib/util.stats.latency/runtime.js.map +1 -0
  192. package/lib/util.stats.latency/source-node-selection.js.map +1 -0
  193. package/package.json +12 -5
  194. package/lib/processor.dynamicBug/bug-selection.d.ts +0 -9
  195. package/lib/processor.dynamicBug/bug-selection.js.map +0 -1
  196. package/lib/processor.dynamicBug/info.d.ts +0 -3
  197. package/lib/processor.dynamicBug/info.js.map +0 -1
  198. package/lib/processor.dynamicBug/runtime.d.ts +0 -64
  199. package/lib/processor.dynamicBug/runtime.js +0 -297
  200. package/lib/processor.dynamicBug/runtime.js.map +0 -1
  201. package/lib/processor.dynamicBug/summary-view.d.ts +0 -4
  202. package/lib/processor.dynamicBug/summary-view.js +0 -60
  203. package/lib/processor.dynamicBug/summary-view.js.map +0 -1
  204. package/lib/processor.whisper-transcribe/info.d.ts +0 -3
  205. package/lib/processor.whisper-transcribe/info.js +0 -43
  206. package/lib/processor.whisper-transcribe/info.js.map +0 -1
  207. package/lib/processor.whisper-transcribe/runtime.d.ts +0 -29
  208. package/lib/processor.whisper-transcribe/runtime.js +0 -83
  209. package/lib/processor.whisper-transcribe/runtime.js.map +0 -1
  210. package/lib/test/dynamic-bug.js.map +0 -1
  211. package/lib/util.latency/info.js.map +0 -1
  212. package/lib/util.latency/inline-view.js.map +0 -1
  213. package/lib/util.latency/runtime.js.map +0 -1
  214. package/lib/util.latency/source-node-selection.js.map +0 -1
  215. package/lib/util.ma35d/info.d.ts +0 -3
  216. package/lib/util.ma35d/info.js +0 -78
  217. package/lib/util.ma35d/info.js.map +0 -1
  218. package/lib/util.ma35d/inline-view.d.ts +0 -6
  219. package/lib/util.ma35d/inline-view.js +0 -76
  220. package/lib/util.ma35d/inline-view.js.map +0 -1
  221. package/lib/util.ma35d/runtime.d.ts +0 -21
  222. package/lib/util.ma35d/runtime.js +0 -49
  223. package/lib/util.ma35d/runtime.js.map +0 -1
  224. package/lib/util.timestamps/info.d.ts +0 -5
  225. package/lib/util.timestamps/info.js +0 -86
  226. package/lib/util.timestamps/info.js.map +0 -1
  227. package/lib/util.timestamps/inline-view.d.ts +0 -6
  228. package/lib/util.timestamps/inline-view.js +0 -94
  229. package/lib/util.timestamps/inline-view.js.map +0 -1
  230. package/lib/util.timestamps/runtime.d.ts +0 -29
  231. package/lib/util.timestamps/runtime.js +0 -40
  232. package/lib/util.timestamps/runtime.js.map +0 -1
  233. /package/lib/test/{dynamic-bug.d.ts → onscreen-graphic.d.ts} +0 -0
  234. /package/lib/{util.latency → util.stats.latency}/info.d.ts +0 -0
  235. /package/lib/{util.latency → util.stats.latency}/inline-view.d.ts +0 -0
  236. /package/lib/{util.latency → util.stats.latency}/inline-view.js +0 -0
  237. /package/lib/{util.latency → util.stats.latency}/source-node-selection.d.ts +0 -0
  238. /package/lib/{util.latency → util.stats.latency}/source-node-selection.js +0 -0
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.axinomInit = axinomInit;
7
+ const cpix_1 = require("./cpix");
8
+ const node_crypto_1 = require("node:crypto");
9
+ const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
10
+ async function axinomInit(config) {
11
+ const tenantId = config?.tenantId;
12
+ const managementKey = config?.managementKey;
13
+ if (!tenantId) {
14
+ throw new Error("Missing Tenant ID for Axinom DRM authentication");
15
+ }
16
+ if (!managementKey) {
17
+ throw new Error("Missing Tenant ID for Axinom DRM authentication");
18
+ }
19
+ const auth = Buffer.from(`${tenantId}:${managementKey}`, "utf-8").toString("base64");
20
+ const encryptionKeyIds = { audio: (0, node_crypto_1.randomUUID)(), video: (0, node_crypto_1.randomUUID)() };
21
+ const endpoint = "https://key-server-management.axprod.net/api/SpekeV2";
22
+ const request = `
23
+ <?xml version="1.0"?>
24
+ <cpix:CPIX contentId="norskStudio" version="2.3" xmlns:cpix="urn:dashif:org:cpix" xmlns:pskc="urn:ietf:params:xml:ns:keyprov:pskc">
25
+ <cpix:ContentKeyList>
26
+ <cpix:ContentKey kid="${encryptionKeyIds.audio}" commonEncryptionScheme="cbcs"/>
27
+ <cpix:ContentKey kid="${encryptionKeyIds.video}" commonEncryptionScheme="cbcs"/>
28
+ </cpix:ContentKeyList>
29
+ <cpix:DRMSystemList>
30
+ <cpix:DRMSystem kid="${encryptionKeyIds.audio}" systemId="94ce86fb-07ff-4f43-adb8-93d2fa968ca2">
31
+ <cpix:HLSSignalingData playlist="media"/>
32
+ <cpix:HLSSignalingData playlist="master"/>
33
+ </cpix:DRMSystem>
34
+ <cpix:DRMSystem kid="${encryptionKeyIds.audio}" systemId="9a04f079-9840-4286-ab92-e65be0885f95">
35
+ <cpix:PSSH/>
36
+ <cpix:ContentProtectionData/>
37
+ <cpix:HLSSignalingData playlist="media"/>
38
+ <cpix:HLSSignalingData playlist="master"/>
39
+ <cpix:SmoothStreamingProtectionHeaderData/>
40
+ </cpix:DRMSystem>
41
+ <cpix:DRMSystem kid="${encryptionKeyIds.audio}" systemId="edef8ba9-79d6-4ace-a3c8-27dcd51d21ed">
42
+ <cpix:PSSH/>
43
+ <cpix:ContentProtectionData/>
44
+ <cpix:HLSSignalingData playlist="media"/>
45
+ <cpix:HLSSignalingData playlist="master"/>
46
+ </cpix:DRMSystem>
47
+ <cpix:DRMSystem kid="${encryptionKeyIds.video}" systemId="94ce86fb-07ff-4f43-adb8-93d2fa968ca2">
48
+ <cpix:HLSSignalingData playlist="media"/>
49
+ <cpix:HLSSignalingData playlist="master"/>
50
+ </cpix:DRMSystem>
51
+ <cpix:DRMSystem kid="${encryptionKeyIds.video}" systemId="9a04f079-9840-4286-ab92-e65be0885f95">
52
+ <cpix:PSSH/>
53
+ <cpix:ContentProtectionData/>
54
+ <cpix:HLSSignalingData playlist="media"/>
55
+ <cpix:HLSSignalingData playlist="master"/>
56
+ <cpix:SmoothStreamingProtectionHeaderData/>
57
+ </cpix:DRMSystem>
58
+ <cpix:DRMSystem kid="${encryptionKeyIds.video}" systemId="edef8ba9-79d6-4ace-a3c8-27dcd51d21ed">
59
+ <cpix:PSSH/>
60
+ <cpix:ContentProtectionData/>
61
+ <cpix:HLSSignalingData playlist="media"/>
62
+ <cpix:HLSSignalingData playlist="master"/>
63
+ </cpix:DRMSystem>
64
+ </cpix:DRMSystemList>
65
+ <cpix:ContentKeyUsageRuleList>
66
+ <cpix:ContentKeyUsageRule kid="${encryptionKeyIds.video}" intendedTrackType="VIDEO">
67
+ <cpix:VideoFilter />
68
+ </cpix:ContentKeyUsageRule>
69
+ <cpix:ContentKeyUsageRule kid="${encryptionKeyIds.audio}" intendedTrackType="AUDIO">
70
+ <cpix:AudioFilter />
71
+ </cpix:ContentKeyUsageRule>
72
+ </cpix:ContentKeyUsageRuleList>
73
+ </cpix:CPIX>
74
+ `.split('\n').map(line => line.substring(4)).join('\n').trim();
75
+ const response_inflight = await fetch(endpoint, {
76
+ method: "POST",
77
+ withCredentials: true,
78
+ credentials: "include",
79
+ headers: {
80
+ "Content-Type": "application/xml",
81
+ "Authorization": "Basic " + auth,
82
+ "X-Speke-Version": "2.0",
83
+ },
84
+ body: request,
85
+ });
86
+ if (!response_inflight.ok) {
87
+ throw new Error(response_inflight.status + " " + response_inflight.headers.get("x-axdrm-errormessage") || "unknown error from Axinom API");
88
+ }
89
+ const response = await response_inflight.text();
90
+ return (0, cpix_1.parseCpix)({ cpix: response, encryptionKeyIds, token: mkToken(config, [encryptionKeyIds.audio, encryptionKeyIds.video]) });
91
+ }
92
+ function mkToken(config, keys) {
93
+ const comKey = config?.comKey;
94
+ const comKeyId = config?.comKeyId;
95
+ if (!comKey || !comKeyId) {
96
+ return;
97
+ }
98
+ const msg = {
99
+ "version": 1,
100
+ "begin_date": "2000-01-01T09:53:22+03:00",
101
+ "expiration_date": "2025-12-31T23:59:40+03:00",
102
+ "com_key_id": comKeyId,
103
+ "message": {
104
+ "type": "entitlement_message",
105
+ "version": 2,
106
+ "license": {
107
+ "duration": 3600
108
+ },
109
+ "content_keys_source": {
110
+ "inline": keys.map(id => ({ id }))
111
+ }
112
+ }
113
+ };
114
+ const communicationKey = Buffer.from(comKey, "base64");
115
+ return jsonwebtoken_1.default.sign(msg, communicationKey, {
116
+ "algorithm": "HS256",
117
+ "noTimestamp": true
118
+ });
119
+ }
120
+ //# sourceMappingURL=axinom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axinom.js","sourceRoot":"","sources":["../../../src/shared/drm/axinom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ type KeyResponse = {
2
+ encryptionKeyId: string;
3
+ encryptionKey: string;
4
+ encryptionPssh: string;
5
+ mediaSignaling: string;
6
+ multivariantSignaling: string;
7
+ dashSignalling: string;
8
+ };
9
+ export type CryptoDetails = {
10
+ audio: KeyResponse;
11
+ video: KeyResponse;
12
+ token?: string;
13
+ };
14
+ export type AVKeyIds = {
15
+ audio: string;
16
+ video: string;
17
+ };
18
+ export type CpixResponse = {
19
+ cpix: string;
20
+ encryptionKeyIds: AVKeyIds;
21
+ token?: string;
22
+ };
23
+ export declare function parseCpix(resp: CpixResponse): CryptoDetails;
24
+ export {};
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseCpix = parseCpix;
4
+ const fast_xml_parser_1 = require("fast-xml-parser");
5
+ function parseCpix(resp) {
6
+ const parsed = new fast_xml_parser_1.XMLParser({ ignoreDeclaration: true, ignorePiTags: true, ignoreAttributes: false }).parse(resp.cpix);
7
+ const cpix = parsed["cpix:CPIX"];
8
+ const result = {};
9
+ for (const key of ["audio", "video"]) {
10
+ const encryptionKeyId = resp.encryptionKeyIds[key];
11
+ let encryptionKey = "";
12
+ const ContentKeys = ensureXmlList(cpix["cpix:ContentKeyList"]["cpix:ContentKey"]);
13
+ for (const ContentKey of ContentKeys) {
14
+ if (ContentKey["@_kid"] !== encryptionKeyId)
15
+ continue;
16
+ const encryptionKeyBase64 = ContentKey["cpix:Data"]["pskc:Secret"]["pskc:PlainValue"];
17
+ encryptionKey = Buffer.from(encryptionKeyBase64, "base64").toString("hex");
18
+ }
19
+ if (!encryptionKey)
20
+ throw new Error(`Could not find encryption key ${encryptionKeyId} in response`);
21
+ const encryptionPsshs = [];
22
+ const mediaSignalings = [];
23
+ const multivariantSignalings = [];
24
+ let contentProtection = "";
25
+ contentProtection +=
26
+ `<ContentProtection xmlns:cenc="urn:mpeg:cenc:2013" cenc:default_KID="${encryptionKeyId}"
27
+ schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc" />`;
28
+ const DRMSystems = ensureXmlList(cpix["cpix:DRMSystemList"]["cpix:DRMSystem"]);
29
+ for (const DRMSystem of DRMSystems) {
30
+ if (DRMSystem["@_kid"] !== encryptionKeyId)
31
+ continue;
32
+ const playlist = (name) => {
33
+ for (const signaling of ensureXmlList(DRMSystem["cpix:HLSSignalingData"])) {
34
+ if (typeof signaling === "string" && name === "media")
35
+ return signaling;
36
+ if (signaling["@_playlist"] === name)
37
+ return ensureXmlText(signaling);
38
+ }
39
+ return "";
40
+ };
41
+ encryptionPsshs.push(DRMSystem["cpix:PSSH"] || "");
42
+ mediaSignalings.push(playlist("media"));
43
+ multivariantSignalings.push(playlist("master"));
44
+ const systemId = DRMSystem["@_systemId"];
45
+ if (typeof systemId === "string") {
46
+ const contentProtectionData = ensureXmlText(DRMSystem["cpix:ContentProtectionData"]);
47
+ contentProtection += `
48
+ <ContentProtection xmlns:cenc="urn:mpeg:cenc:2013" cenc:default_KID="${encryptionKeyId}"
49
+ schemeIdUri="urn:uuid:${systemId}">
50
+ ${un64(contentProtectionData)}
51
+ </ContentProtection>
52
+ `;
53
+ }
54
+ }
55
+ const encryptionPssh = cat64(encryptionPsshs);
56
+ const mediaSignaling = mediaSignalings.map(un64).join("\n");
57
+ const multivariantSignaling = multivariantSignalings.map(un64).join("\n");
58
+ result[key] = {
59
+ encryptionKey,
60
+ encryptionKeyId,
61
+ encryptionPssh,
62
+ mediaSignaling,
63
+ multivariantSignaling,
64
+ dashSignalling: contentProtection,
65
+ };
66
+ }
67
+ if (!result.audio || !result.video) {
68
+ throw new Error("Missing audio and/or video encryption data");
69
+ }
70
+ return { audio: result.audio, video: result.video, token: resp.token };
71
+ function ensureXmlList(nodes) {
72
+ if (Array.isArray(nodes))
73
+ return nodes;
74
+ return [nodes];
75
+ }
76
+ function ensureXmlText(node) {
77
+ if (node === undefined || node === null)
78
+ return "";
79
+ if (typeof node === "string")
80
+ return node;
81
+ if (typeof node === "object" && "#text" in node && typeof node["#text"] === "string")
82
+ return node["#text"];
83
+ return "";
84
+ }
85
+ function cat64(items, sep) {
86
+ let buffers = items.map(s => Buffer.from(s, "base64"));
87
+ if (sep) {
88
+ const sepb = Buffer.from(sep, "utf-8");
89
+ buffers = Array.prototype.concat(...buffers.map(b => [sepb, b])).slice(1);
90
+ }
91
+ return Buffer.concat(buffers).toString("base64");
92
+ }
93
+ function un64(encoded) {
94
+ return Buffer.from(encoded, "base64").toString("utf-8");
95
+ }
96
+ }
97
+ //# sourceMappingURL=cpix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cpix.js","sourceRoot":"","sources":["../../../src/shared/drm/cpix.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { EzDrmConfig } from "@norskvideo/norsk-studio/lib/shared/config";
2
+ export declare function ezdrmInit(config: EzDrmConfig | undefined): Promise<import("./cpix").CryptoDetails>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ezdrmInit = ezdrmInit;
4
+ const cpix_1 = require("./cpix");
5
+ const node_crypto_1 = require("node:crypto");
6
+ async function ezdrmInit(config) {
7
+ const token = config?.token;
8
+ if (!token) {
9
+ throw new Error("Missing Token for EZDRM authentication");
10
+ }
11
+ const encryptionKeyIds = { audio: (0, node_crypto_1.randomUUID)(), video: (0, node_crypto_1.randomUUID)() };
12
+ const ezdrmEndpoint = "https://cpix.ezdrm.com/KeyGenerator/cpix2.aspx";
13
+ const params = new URLSearchParams({
14
+ k: `empty,audio1=${encryptionKeyIds.audio},video1=${encryptionKeyIds.video}`,
15
+ c: "norskStudio",
16
+ t: token,
17
+ }).toString();
18
+ const url = `${ezdrmEndpoint}?${params}`;
19
+ const response_inflight = await fetch(url);
20
+ if (!response_inflight.ok) {
21
+ throw new Error(response_inflight.status + " " + response_inflight.statusText);
22
+ }
23
+ const response = await response_inflight.text();
24
+ return (0, cpix_1.parseCpix)({ cpix: response, encryptionKeyIds, token: config?.pX });
25
+ }
26
+ //# sourceMappingURL=ezdrm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ezdrm.js","sourceRoot":"","sources":["../../../src/shared/drm/ezdrm.ts"],"names":[],"mappings":";;AAIA,8BAsBC;AAzBD,iCAAmC;AACnC,6CAAyC;AAElC,KAAK,UAAU,SAAS,CAAC,MAA+B;IAC7D,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,CAAC;IAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,gBAAgB,GAAG,EAAE,KAAK,EAAE,IAAA,wBAAU,GAAE,EAAE,KAAK,EAAE,IAAA,wBAAU,GAAE,EAAE,CAAC;IACtE,MAAM,aAAa,GAAG,gDAAgD,CAAC;IACvE,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QACjC,CAAC,EAAE,gBAAgB,gBAAgB,CAAC,KAAK,WAAW,gBAAgB,CAAC,KAAK,EAAE;QAC5E,CAAC,EAAE,aAAa;QAChB,CAAC,EAAE,KAAK;KACT,CAAC,CAAC,QAAQ,EAAE,CAAC;IAEd,MAAM,GAAG,GAAG,GAAG,aAAa,IAAI,MAAM,EAAE,CAAC;IAEzC,MAAM,iBAAiB,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,GAAG,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACjF,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAChD,OAAO,IAAA,gBAAS,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;AAC5E,CAAC"}
@@ -4,31 +4,31 @@ const result = ({ Z }) => ({
4
4
  receiveLatency: {
5
5
  help: "The latency value in the receiving direction of the socket (SRTO_RCVLATENCY)",
6
6
  hint: {
7
- type: "numeric", validation: Z.optional(Z.number())
7
+ type: "numeric", optional: true, validation: Z.optional(Z.number())
8
8
  },
9
9
  },
10
10
  peerLatency: {
11
11
  help: "The latency value provided by the sender side as a minimum value for the receiver (SRTO_PEERLATENCY)",
12
12
  hint: {
13
- type: "numeric", validation: Z.optional(Z.number())
13
+ type: "numeric", optional: true, validation: Z.optional(Z.number())
14
14
  }
15
15
  },
16
16
  inputBandwidth: {
17
- help: "Input bandwidth (SRTO_INPUTBW xxx",
17
+ help: "Input bandwidth (SRTO_INPUTBW)",
18
18
  hint: {
19
- type: "numeric", validation: Z.optional(Z.number())
19
+ type: "numeric", optional: true, validation: Z.optional(Z.number())
20
20
  }
21
21
  },
22
22
  overheadBandwidth: {
23
23
  help: "Overhead bandwidth (SRTO_OHEADBW)",
24
24
  hint: {
25
- type: "numeric", validation: Z.optional(Z.number())
25
+ type: "numeric", optional: true, validation: Z.optional(Z.number())
26
26
  }
27
27
  },
28
28
  maxBandwidth: {
29
29
  help: "Max bandwidth (SRTO_MAXBW)",
30
30
  hint: {
31
- type: "numeric", validation: Z.optional(Z.number())
31
+ type: "numeric", optional: true, validation: Z.optional(Z.number())
32
32
  }
33
33
  },
34
34
  });
@@ -1 +1 @@
1
- {"version":3,"file":"srt-socket-options.js","sourceRoot":"","sources":["../../src/shared/srt-socket-options.ts"],"names":[],"mappings":";;AAGA,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,EAAc,EAA6B,EAAE,CAAC,CAAC;IAChE,cAAc,EAAE;QACd,IAAI,EAAE,8EAA8E;QACpF,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpD;KACF;IACD,WAAW,EAAE;QACX,IAAI,EAAE,sGAAsG;QAC5G,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpD;KACF;IACD,cAAc,EAAE;QACd,IAAI,EAAE,mCAAmC;QACzC,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpD;KACF;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,mCAAmC;QACzC,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpD;KACF;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,4BAA4B;QAClC,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpD;KACF;CACF,CACA,CAAC;AAEF,kBAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"srt-socket-options.js","sourceRoot":"","sources":["../../src/shared/srt-socket-options.ts"],"names":[],"mappings":";;AAGA,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,EAAc,EAA6B,EAAE,CAAC,CAAC;IAChE,cAAc,EAAE;QACd,IAAI,EAAE,8EAA8E;QACpF,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpE;KACF;IACD,WAAW,EAAE;QACX,IAAI,EAAE,sGAAsG;QAC5G,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpE;KACF;IACD,cAAc,EAAE;QACd,IAAI,EAAE,gCAAgC;QACtC,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpE;KACF;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,mCAAmC;QACzC,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpE;KACF;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,4BAA4B;QAClC,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACpE;KACF;CACF,CACA,CAAC;AAEF,kBAAe,MAAM,CAAC"}
@@ -85,26 +85,34 @@ describe("Auto CMAF Output", () => {
85
85
  return { doSubscribe, setSources, ...result };
86
86
  }
87
87
  async function awaitCompleteManifest(url, expectedStreams) {
88
- return new Promise((r) => {
89
- const i = setInterval(async () => {
90
- const request = await (0, node_fetch_1.default)(url);
91
- if (request.ok) {
92
- const hls = await request.text();
93
- const parsed = HLS.parse(hls);
94
- if (parsed.isMasterPlaylist) {
95
- const master = parsed;
96
- const current = master.variants.reduce((acc, v) => {
97
- acc.add(v.uri);
98
- v.audio.forEach((a) => { if (a.uri)
99
- acc.add(a.uri); });
100
- return acc;
101
- }, new Set());
102
- if (current.size === expectedStreams) {
103
- clearInterval(i);
104
- r(master);
88
+ return new Promise((resolve) => {
89
+ const checkManifest = async () => {
90
+ try {
91
+ const request = await (0, node_fetch_1.default)(url);
92
+ if (request.ok) {
93
+ const hls = await request.text();
94
+ const parsed = HLS.parse(hls);
95
+ if (parsed.isMasterPlaylist) {
96
+ const master = parsed;
97
+ const current = master.variants.reduce((acc, v) => {
98
+ acc.add(v.uri);
99
+ v.audio.forEach((a) => { if (a.uri)
100
+ acc.add(a.uri); });
101
+ return acc;
102
+ }, new Set());
103
+ if (current.size === expectedStreams) {
104
+ clearInterval(intervalId);
105
+ resolve(master);
106
+ }
105
107
  }
106
108
  }
107
109
  }
110
+ catch (error) {
111
+ console.error("Error checking manifest:", error);
112
+ }
113
+ };
114
+ const intervalId = setInterval(() => {
115
+ void checkManifest();
108
116
  }, 10.0);
109
117
  });
110
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"auto-cmaf.js","sourceRoot":"","sources":["../../src/test/auto-cmaf.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-cmaf.js","sourceRoot":"","sources":["../../src/test/auto-cmaf.ts"],"names":[],"mappings":"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"}
@@ -117,6 +117,7 @@ describe("Browser Overlay with restart", () => {
117
117
  ]);
118
118
  await (0, util_1.waitForCondition)(() => sink.streamCount() == 1, 10000.0);
119
119
  await sourceOne.close();
120
+ browser.subscribe([]);
120
121
  await (0, util_1.waitForCondition)(() => sink.streamCount() == 0, 10000.0);
121
122
  const sourceTwo = await (0, sources_1.videoAndAudio)(norsk, 'sourceTwo', videoOptsTwo);
122
123
  browser.subscribe([new runtime_types_1.StudioNodeSubscriptionSource(sourceTwo, (0, sources_1.testSourceDescription)(), {
@@ -1 +1 @@
1
- {"version":3,"file":"browser-overlay.js","sourceRoot":"","sources":["../../src/test/browser-overlay.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAA8C;AAC9C,2BAAkC;AAElC,6EAA4G;AAC5G,wFAA0E;AAC1E,gDAAwB;AACxB,+FAAgE;AAEhE,6EAAuG;AAEvG,yEAAuH;AAEvH,4EAAkE;AAClE,sFAA+G;AAC/G,wFAAoG;AACpG,mEAA4E;AAE5E,KAAK,UAAU,cAAc;IAC3B,MAAM,OAAO,GAAG,IAAA,sBAAY,GAAE,CAAC;IAC/B,MAAM,IAAA,eAAW,EAAC,OAAO,CAAC,CAAC;IAC3B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,KAAK,UAAU,YAAY;QACzB,MAAM,OAAO,GAAG,MAAM,cAAc,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,qBAAW,EAAE;aAC3B,OAAO,CACN,IAAI,yBAAe,CAChB,SAAS,EACR,IAAA,cAAkB,EAAC,iCAAkB,CAAC,EACtC;YACE,GAAG,EAAE,uBAAuB;SAC7B,CACF,CAAC,KAAK,EAAE,CAAC;aACb,KAAK,EAAE,CAAC;QAEX,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,cAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACnG,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,KAAK,GAAsB,SAAS,CAAC;IAEzC,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,KAAK,EAAE,KAAK,EAAE,CAAC;IACvB,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,QAAQ,GAAG,MAAM,YAAY,EAAE,CAAC;QACtC,KAAK,GAAG,MAAM,iBAAK,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAE,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAmB,CAAC;QAE/D,MAAM,SAAS,GAAG;YAChB,UAAU,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACvC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;SACtC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAa,EAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAE/D,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,4CAA4B,CAAC,MAAM,EACxD,IAAA,+BAAqB,GAAE,EACvB;gBACE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC;aAC5C,CAAC;SACH,CAAC,CAAA;QAGF,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAA,oCAA4B,EAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;SAClE,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,KAAK,UAAU,YAAY;QACzB,MAAM,OAAO,GAAG,MAAM,cAAc,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,qBAAW,EAAE;aAC3B,OAAO,CACN,IAAI,yBAAe,CAChB,SAAS,EACR,IAAA,cAAkB,EAAC,iCAAkB,CAAC,EACtC;YACE,GAAG,EAAE,uBAAuB;SAC7B,CACF,CAAC,KAAK,EAAE,CAAC;aACb,KAAK,EAAE,CAAC;QAEX,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,cAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACnG,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,KAAK,GAAsB,SAAS,CAAC;IAEzC,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,KAAK,EAAE,KAAK,EAAE,CAAC;IACvB,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,QAAQ,GAAG,MAAM,YAAY,EAAE,CAAC;QACtC,KAAK,GAAG,MAAM,iBAAK,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAE,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAmB,CAAC;QAC/D,MAAM,IAAI,GAAG,IAAI,iBAAS,CAAC,KAAc,EAAE,MAAM,CAAC,CAAC;QACnD,MAAM,IAAI,CAAC,WAAW,CAAC;QAEvB,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,4CAA4B,CAAC,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,EAC3E,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,IAAA,cAAkB,EAAC,iCAAkB,CAAoC,CAAC;SACvI,CAAC,CAAA;QAEF,MAAM,YAAY,GAAG;YACnB,UAAU,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACvC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;SACtC,CAAA;QAED,MAAM,YAAY,GAAG;YACnB,UAAU,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACvC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE;SACtC,CAAA;QAGD,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAa,EAAC,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QAExE,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,4CAA4B,CAAC,SAAS,EAC3D,IAAA,+BAAqB,GAAE,EACvB;gBACE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC;aAC5C,CAAC;SACH,CAAC,CAAA;QACF,MAAM,IAAA,uBAAgB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/D,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAExB,MAAM,IAAA,uBAAgB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAE/D,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAa,EAAC,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QAExE,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,4CAA4B,CAAC,SAAS,EAC3D,IAAA,+BAAqB,GAAE,EACvB;gBACE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC;aAC5C,CAAC;SACH,CAAC,CAAA;QAGF,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,MAAM,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC;YAC7F,IAAA,oCAA4B,EAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC;SACrE,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"browser-overlay.js","sourceRoot":"","sources":["../../src/test/browser-overlay.ts"],"names":[],"mappings":"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"}