hyperframes 0.8.163 → 0.8.165
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/dist/{add-Y7BGO2MK.js → add-BLRBZAGL.js} +11 -11
- package/dist/{animatedGifPrep-NUU6VMFL.js → animatedGifPrep-RUAAVWKD.js} +5 -5
- package/dist/api.js +11 -11
- package/dist/{asset-OONPCZS5.js → asset-CUOKGHNC.js} +2 -2
- package/dist/{assetCataloger-YWJRJK23.js → assetCataloger-Q3XAZG6E.js} +27 -7
- package/dist/{audio-KPTXNHDC.js → audio-ATUKENOR.js} +10 -10
- package/dist/{auth-UKXSZ4WA.js → auth-35QVUP4B.js} +1 -1
- package/dist/{autoUpdate-4MRUONUQ.js → autoUpdate-QZVDWGCT.js} +2 -2
- package/dist/{backgroundChecks-X5M7Z6L7.js → backgroundChecks-GKAWNOV2.js} +3 -3
- package/dist/backgroundChecksWorker.js +3 -3
- package/dist/{batchRender-GJ65EZ26.js → batchRender-PNKBYEOS.js} +3 -3
- package/dist/{beats-EQNT7OZE.js → beats-CY6XDF4U.js} +4 -4
- package/dist/{benchmark-WXWALVZJ.js → benchmark-5OBCLZRC.js} +8 -8
- package/dist/{browser-ZSNFVRC3.js → browser-AGXQ6HYY.js} +3 -3
- package/dist/{bundleWithLocalizedFonts-O3BXZLCD.js → bundleWithLocalizedFonts-GVCKOKSP.js} +2 -2
- package/dist/{capture-JFFYE7XM.js → capture-TB42HJVE.js} +2 -2
- package/dist/{capture-TKWJBFGC.js → capture-VG7BW5QT.js} +311 -97
- package/dist/{catalog-LK5MNUQY.js → catalog-WTXUEMVX.js} +11 -11
- package/dist/{catch-up-ISTWIF6K.js → catch-up-EPUK6WTD.js} +4 -4
- package/dist/{check-YVEBXKNY.js → check-66HPXBCQ.js} +30 -30
- package/dist/{checkBrowser-OJAXYTRD.js → checkBrowser-I327FSWS.js} +27 -27
- package/dist/{chunk-2ALJMIFW.js → chunk-2V64IUIF.js} +13 -2
- package/dist/{chunk-3E3VMAAM.js → chunk-4LRBRDMH.js} +1 -1
- package/dist/{chunk-AXATVUCD.js → chunk-4NXWAN56.js} +3 -3
- package/dist/{chunk-ULAB77ZO.js → chunk-4S6L6ZQS.js} +1 -1
- package/dist/{chunk-NGKM64BP.js → chunk-5CTORVUM.js} +17 -2
- package/dist/{chunk-R64V3KQN.js → chunk-5EAE2NWA.js} +8 -8
- package/dist/{chunk-HQMWZNO2.js → chunk-5UMNID4E.js} +1 -1
- package/dist/{chunk-LMHXUDSR.js → chunk-5XDKAENM.js} +1 -1
- package/dist/{chunk-3KY7FUSS.js → chunk-6H3MEHBU.js} +2 -2
- package/dist/{chunk-QXAXCRK5.js → chunk-A7YMSQP3.js} +6 -6
- package/dist/{chunk-D5PUMG2P.js → chunk-BQPLA2CT.js} +1 -1
- package/dist/{chunk-LHETZ63N.js → chunk-DW2J5OF5.js} +1 -1
- package/dist/{chunk-43H7XDO6.js → chunk-EAZAXMXQ.js} +2 -2
- package/dist/{chunk-WMXOKTGO.js → chunk-GSTCWKRK.js} +7 -7
- package/dist/{chunk-WJVDUUH2.js → chunk-H2GSWTQL.js} +2 -2
- package/dist/{chunk-H46R2BND.js → chunk-H3NA7GPR.js} +1 -1
- package/dist/{chunk-GD7VU7CY.js → chunk-I7OPJAEF.js} +1 -1
- package/dist/{chunk-OZUYK6IS.js → chunk-ILIXTGYN.js} +1 -1
- package/dist/{chunk-3TKNBY6K.js → chunk-IREQABWS.js} +2 -2
- package/dist/{chunk-O2CXBATN.js → chunk-JQVJJVLZ.js} +2 -2
- package/dist/{chunk-Z6P5OVCF.js → chunk-JQYIIHT7.js} +1 -1
- package/dist/{chunk-TQMJKZS5.js → chunk-KCXPNNLX.js} +1 -1
- package/dist/{chunk-QGYAHDOR.js → chunk-L3NVOQ6H.js} +2 -2
- package/dist/{chunk-74H5SHQL.js → chunk-LRYMM3RC.js} +3 -3
- package/dist/chunk-MJBSLVYP.js +3795 -0
- package/dist/{chunk-2XIPB4MP.js → chunk-NECSL55O.js} +1 -1
- package/dist/{chunk-OFD2XWIQ.js → chunk-NN327EY4.js} +179 -2
- package/dist/{chunk-SQN7N27A.js → chunk-OH4CQYW4.js} +3 -3
- package/dist/{chunk-H3JGPRWA.js → chunk-OORRE54E.js} +1 -1
- package/dist/{chunk-ZVOCFUPA.js → chunk-OZ4Y7WVO.js} +9 -9
- package/dist/{chunk-JYR3YAAK.js → chunk-QLJ4JNI6.js} +1 -1
- package/dist/{chunk-M4237QMQ.js → chunk-QNDCWFYS.js} +1 -1
- package/dist/{chunk-4LXWLCIX.js → chunk-QPBCHU7U.js} +1 -1
- package/dist/{chunk-CXVBPW5F.js → chunk-QSC4ITQW.js} +6 -6
- package/dist/{chunk-NZ7K76Y2.js → chunk-R4G7F7YU.js} +1 -1
- package/dist/{chunk-5K5YH6M7.js → chunk-RE2KNYKQ.js} +1 -1
- package/dist/{chunk-23IS5QVP.js → chunk-S3JEDUNJ.js} +1 -1
- package/dist/{chunk-54E2ELUA.js → chunk-TMEWJQVK.js} +9 -9
- package/dist/{chunk-BHGIBGUZ.js → chunk-TYMKBTLM.js} +1 -1
- package/dist/{chunk-H45RC6HN.js → chunk-VSYVO2SM.js} +1 -1
- package/dist/{chunk-VG3ZMY2H.js → chunk-VUEANSCG.js} +2 -2
- package/dist/{chunk-AFPGUKMN.js → chunk-VXARHSXF.js} +4 -4
- package/dist/{chunk-JEW5CCRU.js → chunk-W2BHDUYF.js} +2 -2
- package/dist/{chunk-NU4PDQ6G.js → chunk-WDKP7A2Z.js} +1 -1
- package/dist/{chunk-A356JY2J.js → chunk-WQSNNJXF.js} +2 -2
- package/dist/{chunk-OGGPNDGO.js → chunk-XHNGDL3T.js} +2 -2
- package/dist/{chunk-42AER3PM.js → chunk-XVYG2KAZ.js} +1 -1
- package/dist/{chunk-DSXDYQQV.js → chunk-Z3CVO4CI.js} +1 -1
- package/dist/{chunk-Z6VBXCYN.js → chunk-ZXRY7WF7.js} +2 -2
- package/dist/{clean-PGEA3UPT.js → clean-FKIGFRM4.js} +11 -11
- package/dist/cli.js +68 -60
- package/dist/{cloud-SAODZ2PK.js → cloud-O74STYXN.js} +4 -4
- package/dist/{cloudrun-RMBT2JQK.js → cloudrun-2KQNAVOM.js} +3 -3
- package/dist/{compare-R7X7LXCX.js → compare-ZXW6IBF2.js} +22 -22
- package/dist/{compiler-RKH75FZH.js → compiler-H7SJMAFW.js} +2 -2
- package/dist/{component-DTVCMTLX.js → component-GTT2E2R5.js} +3 -3
- package/dist/{compositions-UXS2ISGS.js → compositions-TO7VZSKL.js} +9 -9
- package/dist/{delete-LIGHRH4L.js → delete-6KKNCUHV.js} +2 -2
- package/dist/{dist-P5OHBFEV.js → dist-EJ447S2S.js} +2 -2
- package/dist/{doctor-6VR5JUWZ.js → doctor-GE2YZFNS.js} +7 -7
- package/dist/{dotEnv-AECLXQSO.js → dotEnv-64S3VKGH.js} +3 -1
- package/dist/{events-ZQFIOH5Z.js → events-GTJQ2NS4.js} +3 -3
- package/dist/{events-YP2MRCPP.js → events-N5QB2EQ5.js} +2 -2
- package/dist/{feedback-47UEIUOO.js → feedback-TTDIVRMR.js} +6 -6
- package/dist/{figma-ZTHHEDY5.js → figma-QJD7QIBS.js} +3 -3
- package/dist/fontLocalizeCli.js +7 -7
- package/dist/{get-EZGQNT7G.js → get-HPGDZS6A.js} +2 -2
- package/dist/{gpuPolicy-SYV7N237.js → gpuPolicy-JBDYSZCG.js} +5 -5
- package/dist/{grade-compare-SEFOAA4E.js → grade-compare-RNKCA2OW.js} +22 -22
- package/dist/{help-WIZONGVE.js → help-TMEEQMW6.js} +1 -1
- package/dist/{history-PE45CSGA.js → history-IWQZODW7.js} +6 -6
- package/dist/hyperframe-runtime.js +55 -55
- package/dist/hyperframe.manifest.json +1 -1
- package/dist/hyperframe.runtime.iife.js +55 -55
- package/dist/hyperframes-player.global.js +1 -1
- package/dist/{info-WIRSMQKB.js → info-BENI5M6S.js} +7 -7
- package/dist/{init-N26RW4YN.js → init-V4JOXM6D.js} +20 -20
- package/dist/{inspect-XHQUASDV.js → inspect-KYXOEWZG.js} +23 -23
- package/dist/{installer-QWK7EA5M.js → installer-ENOHPI7Q.js} +4 -4
- package/dist/{keyframes-RNTYYHMK.js → keyframes-KF6NCYS7.js} +6 -6
- package/dist/{lambda-LQHGF3LK.js → lambda-ADYJVVLI.js} +4 -4
- package/dist/{layout-YRCKPNAO.js → layout-HE2XOXZK.js} +23 -23
- package/dist/{lint-HLOZHJVM.js → lint-2WB5YQFS.js} +6 -6
- package/dist/{list-X7NTQB32.js → list-A7X7ZABW.js} +2 -2
- package/dist/{login-S7PVNUEB.js → login-34OXIBKE.js} +4 -4
- package/dist/{media-treatment-465Y6CWE.js → media-treatment-3E2CKBSG.js} +8 -8
- package/dist/{models-J2FZXHMD.js → models-ALPVGDK6.js} +8 -8
- package/dist/{motionShot-K6OBEZ2N.js → motionShot-T6DXN7KR.js} +11 -11
- package/dist/{normalize-audio-VODIXLAC.js → normalize-audio-MYX2N2RO.js} +4 -4
- package/dist/{open-K5OZGYJ7.js → open-M3PMRVL6.js} +4 -4
- package/dist/{parakeetRunner-NDIU5PKO.js → parakeetRunner-C66W5P7B.js} +8 -8
- package/dist/{pipeline-UKGI44NN.js → pipeline-U3HEOOZZ.js} +5 -5
- package/dist/{play-QOXKOZ6L.js → play-6CXYYN52.js} +16 -16
- package/dist/{present-7CVCJIS3.js → present-EX22OY23.js} +12 -12
- package/dist/{preview-HX5F6RGT.js → preview-B7XPMWON.js} +15 -15
- package/dist/{producer-66MQWVVQ.js → producer-LDLXR52P.js} +1 -1
- package/dist/{projectConfig-EVBNJKPS.js → projectConfig-2SVKN4YT.js} +6 -6
- package/dist/{publication-F6BOBZMI.js → publication-3T5VTHXO.js} +2 -2
- package/dist/{publish-6KTQDKL6.js → publish-WBYZG2TW.js} +7 -7
- package/dist/{remove-background-TJTKY3YM.js → remove-background-ZJS6HUH3.js} +6 -6
- package/dist/{render-XS22VQHC.js → render-GCFI4N55.js} +8 -8
- package/dist/{render-TRU75TVB.js → render-GI4EBVS7.js} +21 -21
- package/dist/{render-X4MWSR5L.js → render-NZYRGJC3.js} +3 -3
- package/dist/{render-batch-VKFOIMV5.js → render-batch-IDH2C2QN.js} +3 -3
- package/dist/{resolver-VGAM26OR.js → resolver-47WJVTQ4.js} +4 -4
- package/dist/{sherpa-3OI5VMCY.js → sherpa-UMAIW3NM.js} +7 -7
- package/dist/{skills-RKDR4AXV.js → skills-REXUOLDS.js} +5 -5
- package/dist/{skillsUpdateCheck-QWIERB7M.js → skillsUpdateCheck-QQ7YHDR5.js} +3 -3
- package/dist/{snapshot-SSSF334Y.js → snapshot-DKIQFLM3.js} +25 -25
- package/dist/{src-LZXECBBQ.js → src-DDDI6VWK.js} +4 -4
- package/dist/{src-RQPKPFRO.js → src-LC5LYWZG.js} +6 -6
- package/dist/{staticProjectServer-DMG2CER4.js → staticProjectServer-32H6UI47.js} +12 -12
- package/dist/studio/assets/{hyperframes-player-oCk9rjq9.js → hyperframes-player-9o0UqKMR.js} +1 -1
- package/dist/studio/assets/{index-BOQPXBQ0.js → index-CIOtrzQ5.js} +1 -1
- package/dist/studio/assets/{index-DK2wgdLx.js → index-DFRwKDBl.js} +4 -4
- package/dist/studio/index.html +1 -1
- package/dist/{studio-api-KRPBPUYQ.js → studio-api-YWAIWT5E.js} +6 -6
- package/dist/{studioServer-KWNULEM4.js → studioServer-KOKXJB6Z.js} +34 -34
- package/dist/{telemetry-4G6CD3X7.js → telemetry-DBQXOBME.js} +3 -3
- package/dist/{timeline-TKPBJ4EP.js → timeline-5PE4CEGG.js} +13 -13
- package/dist/{tokens-TX7THSB7.js → tokens-ZZWACFHQ.js} +2 -2
- package/dist/{transcribe-7DBONX4C.js → transcribe-6SEEGBLP.js} +12 -12
- package/dist/{transcribe-HOLKYWY5.js → transcribe-H7QVFZYN.js} +6 -6
- package/dist/{updateCheck-64D7B73Z.js → updateCheck-JJ2GNQTZ.js} +2 -2
- package/dist/{upgrade-MXQDGGYO.js → upgrade-FF5AAL2L.js} +2 -2
- package/dist/{urlDownloader-Z435W35E.js → urlDownloader-6MKRSOEN.js} +4 -4
- package/dist/{validate-5ZNGP5QO.js → validate-MMDRABM5.js} +17 -17
- package/dist/{video-62JJK3XL.js → video-2FEI2LLZ.js} +5 -5
- package/package.json +1 -1
- package/dist/chunk-ZJO4SLHC.js +0 -3795
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
} from "./chunk-AWDFDFI3.js";
|
|
15
15
|
import {
|
|
16
16
|
isBlockedNetworkHost
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-WQSNNJXF.js";
|
|
18
18
|
import {
|
|
19
19
|
DOMParser,
|
|
20
20
|
parseHTML
|
|
@@ -23,6 +23,180 @@ import {
|
|
|
23
23
|
// src/capture/userAgent.ts
|
|
24
24
|
var CAPTURE_USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36";
|
|
25
25
|
|
|
26
|
+
// src/capture/publicNetwork.ts
|
|
27
|
+
import { lookup } from "dns/promises";
|
|
28
|
+
import { isIP } from "net";
|
|
29
|
+
import { request as httpRequest } from "http";
|
|
30
|
+
import { request as httpsRequest } from "https";
|
|
31
|
+
function ipv4Number(address) {
|
|
32
|
+
return address.split(".").reduce((value, octet) => value * 256 + Number(octet), 0);
|
|
33
|
+
}
|
|
34
|
+
var NON_PUBLIC_IPV4 = [
|
|
35
|
+
["0.0.0.0", 8],
|
|
36
|
+
["10.0.0.0", 8],
|
|
37
|
+
["100.64.0.0", 10],
|
|
38
|
+
["127.0.0.0", 8],
|
|
39
|
+
["169.254.0.0", 16],
|
|
40
|
+
["172.16.0.0", 12],
|
|
41
|
+
["192.0.0.0", 16],
|
|
42
|
+
["192.88.99.0", 24],
|
|
43
|
+
["192.168.0.0", 16],
|
|
44
|
+
["198.18.0.0", 15],
|
|
45
|
+
["198.51.100.0", 24],
|
|
46
|
+
["203.0.113.0", 24],
|
|
47
|
+
["224.0.0.0", 3]
|
|
48
|
+
];
|
|
49
|
+
var NON_PUBLIC_RANGES = NON_PUBLIC_IPV4.map(([network, prefix]) => ({
|
|
50
|
+
start: ipv4Number(network),
|
|
51
|
+
end: ipv4Number(network) + 2 ** (32 - prefix)
|
|
52
|
+
}));
|
|
53
|
+
function isPublicIPv4(address) {
|
|
54
|
+
if (isIP(address) !== 4) return false;
|
|
55
|
+
const value = ipv4Number(address);
|
|
56
|
+
return !NON_PUBLIC_RANGES.some(({ start, end }) => value >= start && value < end);
|
|
57
|
+
}
|
|
58
|
+
async function resolvePublicAddress(hostname) {
|
|
59
|
+
const host = hostname.toLowerCase().replace(/\.$/, "");
|
|
60
|
+
if (isIP(host) === 4) {
|
|
61
|
+
if (!isPublicIPv4(host)) throw new Error("Capture requires a public IPv4 address");
|
|
62
|
+
return host;
|
|
63
|
+
}
|
|
64
|
+
if (!host.includes(".") || !/^[a-z0-9.-]+$/.test(host) || /(?:^|\.)(?:localhost|local|internal|home|lan|test|invalid|example)$/.test(host) || host.split(".").some((label) => !label || label.startsWith("-") || label.endsWith("-"))) {
|
|
65
|
+
throw new Error("Capture requires a public hostname");
|
|
66
|
+
}
|
|
67
|
+
let timer;
|
|
68
|
+
try {
|
|
69
|
+
const answers = await Promise.race([
|
|
70
|
+
lookup(host, { all: true, family: 4, verbatim: true }),
|
|
71
|
+
new Promise((_resolve, reject) => {
|
|
72
|
+
timer = setTimeout(() => reject(new Error("Capture DNS timed out")), 1e4);
|
|
73
|
+
timer.unref();
|
|
74
|
+
})
|
|
75
|
+
]);
|
|
76
|
+
if (!answers[0] || answers.some((answer) => answer.family !== 4 || !isPublicIPv4(answer.address))) {
|
|
77
|
+
throw new Error("Capture DNS returned a non-public address");
|
|
78
|
+
}
|
|
79
|
+
const first = answers[0];
|
|
80
|
+
if (!first) throw new Error("Capture DNS returned no address");
|
|
81
|
+
return first.address;
|
|
82
|
+
} finally {
|
|
83
|
+
clearTimeout(timer);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
async function publicRequest(url, init = {}) {
|
|
87
|
+
const target = new URL(url);
|
|
88
|
+
if (!["http:", "https:"].includes(target.protocol) || target.username || target.password) {
|
|
89
|
+
throw new Error("Capture requires an HTTP(S) URL without credentials");
|
|
90
|
+
}
|
|
91
|
+
const method = (init.method ?? "GET").toUpperCase();
|
|
92
|
+
if (!["GET", "HEAD"].includes(method) || init.body != null) {
|
|
93
|
+
throw new Error("Capture asset requests support only GET and HEAD without a body");
|
|
94
|
+
}
|
|
95
|
+
const signal = init.signal ?? AbortSignal.timeout(3e4);
|
|
96
|
+
signal.throwIfAborted();
|
|
97
|
+
const address = await new Promise((resolve, reject) => {
|
|
98
|
+
const onAbort = () => reject(signal.reason);
|
|
99
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
100
|
+
resolvePublicAddress(target.hostname).then(resolve, reject).finally(() => signal.removeEventListener("abort", onAbort));
|
|
101
|
+
});
|
|
102
|
+
signal.throwIfAborted();
|
|
103
|
+
const headers = new Headers(init.headers);
|
|
104
|
+
for (const name of [
|
|
105
|
+
"connection",
|
|
106
|
+
"proxy-authorization",
|
|
107
|
+
"proxy-connection",
|
|
108
|
+
"transfer-encoding",
|
|
109
|
+
"upgrade",
|
|
110
|
+
"content-length"
|
|
111
|
+
])
|
|
112
|
+
headers.delete(name);
|
|
113
|
+
headers.set("host", target.host);
|
|
114
|
+
headers.set("accept-encoding", "identity");
|
|
115
|
+
return new Promise((resolve, reject) => {
|
|
116
|
+
const request = target.protocol === "https:" ? httpsRequest : httpRequest;
|
|
117
|
+
const req = request(
|
|
118
|
+
{
|
|
119
|
+
protocol: target.protocol,
|
|
120
|
+
hostname: address,
|
|
121
|
+
port: target.port || void 0,
|
|
122
|
+
path: `${target.pathname}${target.search}`,
|
|
123
|
+
method,
|
|
124
|
+
headers: Object.fromEntries(headers),
|
|
125
|
+
agent: false,
|
|
126
|
+
servername: target.hostname,
|
|
127
|
+
rejectUnauthorized: true,
|
|
128
|
+
signal
|
|
129
|
+
},
|
|
130
|
+
(incoming) => {
|
|
131
|
+
try {
|
|
132
|
+
resolve(assetResponse(incoming, req, method));
|
|
133
|
+
} catch (error) {
|
|
134
|
+
incoming.destroy();
|
|
135
|
+
reject(error);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
);
|
|
139
|
+
req.once("error", reject);
|
|
140
|
+
req.end();
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
function responseHeaders(incoming) {
|
|
144
|
+
const headers = new Headers();
|
|
145
|
+
for (const [name, value] of Object.entries(incoming.headers)) {
|
|
146
|
+
if (value === void 0) continue;
|
|
147
|
+
for (const item of Array.isArray(value) ? value : [value]) headers.append(name, item);
|
|
148
|
+
}
|
|
149
|
+
return headers;
|
|
150
|
+
}
|
|
151
|
+
function assetResponse(incoming, req, method) {
|
|
152
|
+
incoming.on("error", () => {
|
|
153
|
+
});
|
|
154
|
+
const headers = responseHeaders(incoming);
|
|
155
|
+
const encoding = headers.get("content-encoding")?.toLowerCase();
|
|
156
|
+
if (encoding && encoding !== "identity") {
|
|
157
|
+
throw new Error("Capture server ignored identity content encoding");
|
|
158
|
+
}
|
|
159
|
+
const status = incoming.statusCode ?? 502;
|
|
160
|
+
if (method === "HEAD" || [204, 205, 304].includes(status)) {
|
|
161
|
+
incoming.resume();
|
|
162
|
+
return new Response(null, { status, headers });
|
|
163
|
+
}
|
|
164
|
+
return new Response(responseBody(incoming, req), { status, headers });
|
|
165
|
+
}
|
|
166
|
+
function responseBody(incoming, req) {
|
|
167
|
+
let finished = false;
|
|
168
|
+
return new ReadableStream({
|
|
169
|
+
start(controller) {
|
|
170
|
+
incoming.on("data", (chunk) => {
|
|
171
|
+
if (finished) return;
|
|
172
|
+
controller.enqueue(chunk);
|
|
173
|
+
incoming.pause();
|
|
174
|
+
});
|
|
175
|
+
incoming.once("end", () => {
|
|
176
|
+
if (finished) return;
|
|
177
|
+
finished = true;
|
|
178
|
+
controller.close();
|
|
179
|
+
});
|
|
180
|
+
const fail = (error) => {
|
|
181
|
+
if (finished) return;
|
|
182
|
+
finished = true;
|
|
183
|
+
controller.error(error);
|
|
184
|
+
};
|
|
185
|
+
incoming.once("error", fail);
|
|
186
|
+
incoming.once("aborted", () => fail(new Error("Capture response aborted")));
|
|
187
|
+
incoming.pause();
|
|
188
|
+
},
|
|
189
|
+
pull() {
|
|
190
|
+
incoming.resume();
|
|
191
|
+
},
|
|
192
|
+
cancel() {
|
|
193
|
+
finished = true;
|
|
194
|
+
incoming.destroy();
|
|
195
|
+
req.destroy();
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
|
|
26
200
|
// src/capture/assetDownloader.ts
|
|
27
201
|
import { join, extname } from "path";
|
|
28
202
|
import { createHash as createHash2 } from "crypto";
|
|
@@ -781,10 +955,12 @@ async function safeFetch(url, init) {
|
|
|
781
955
|
let current = url;
|
|
782
956
|
for (let hop = 0; hop <= MAX_FETCH_REDIRECTS; hop++) {
|
|
783
957
|
if (isPrivateUrl(current)) return null;
|
|
784
|
-
const res = await
|
|
958
|
+
const res = await publicRequest(current, { ...init, redirect: "manual" });
|
|
785
959
|
if (res.status >= 300 && res.status < 400) {
|
|
786
960
|
const loc = res.headers.get("location");
|
|
787
961
|
if (!loc) return res;
|
|
962
|
+
await res.body?.cancel().catch(() => {
|
|
963
|
+
});
|
|
788
964
|
try {
|
|
789
965
|
current = new URL(loc, current).toString();
|
|
790
966
|
} catch {
|
|
@@ -852,6 +1028,7 @@ function deriveAssetName(parsedUrl, catalog, isPoster, idx, usedNames) {
|
|
|
852
1028
|
}
|
|
853
1029
|
|
|
854
1030
|
export {
|
|
1031
|
+
resolvePublicAddress,
|
|
855
1032
|
CAPTURE_USER_AGENT,
|
|
856
1033
|
noDrops,
|
|
857
1034
|
mergeDrops,
|
|
@@ -32,21 +32,21 @@ import {
|
|
|
32
32
|
import {
|
|
33
33
|
getUpdateMeta,
|
|
34
34
|
withMeta
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-JQYIIHT7.js";
|
|
36
36
|
import {
|
|
37
37
|
CONFIG_PATH,
|
|
38
38
|
withFileLock
|
|
39
39
|
} from "./chunk-XUXGIA7H.js";
|
|
40
40
|
import {
|
|
41
41
|
VERSION
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-VUEANSCG.js";
|
|
43
43
|
import {
|
|
44
44
|
OPTIONAL_PACKAGES,
|
|
45
45
|
installedOptionalPackageVersion
|
|
46
46
|
} from "./chunk-3DKN5WKL.js";
|
|
47
47
|
import {
|
|
48
48
|
resolveExtractCacheDir
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-WQSNNJXF.js";
|
|
50
50
|
import {
|
|
51
51
|
normalizeErrorMessage
|
|
52
52
|
} from "./chunk-KNU5COPB.js";
|
|
@@ -9,17 +9,17 @@ import {
|
|
|
9
9
|
resolveCliChromeGpuMode,
|
|
10
10
|
seekCompositionTimeline,
|
|
11
11
|
waitForRuntimeReady
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-A7YMSQP3.js";
|
|
13
13
|
import {
|
|
14
14
|
launchManagedBrowser,
|
|
15
15
|
resolveManagedGpuMode
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-2V64IUIF.js";
|
|
17
17
|
import {
|
|
18
18
|
resolveCompositionViewportFromHtml
|
|
19
19
|
} from "./chunk-FH7WODJH.js";
|
|
20
20
|
import {
|
|
21
21
|
resolveProject
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-WDKP7A2Z.js";
|
|
23
23
|
import {
|
|
24
24
|
defineCommand
|
|
25
25
|
} from "./chunk-S3S4TGEH.js";
|
|
@@ -33,7 +33,7 @@ import {
|
|
|
33
33
|
import {
|
|
34
34
|
printDeprecationNotice,
|
|
35
35
|
withMeta
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-JQYIIHT7.js";
|
|
37
37
|
import {
|
|
38
38
|
decodeWellFormedEscapes
|
|
39
39
|
} from "./chunk-BSQ7XANM.js";
|
|
@@ -228,7 +228,7 @@ function extractCompositionErrorsFromLint(lintResult) {
|
|
|
228
228
|
async function localizeRemoteAssets(html) {
|
|
229
229
|
let dir;
|
|
230
230
|
try {
|
|
231
|
-
const { loadProducer } = await import("./producer-
|
|
231
|
+
const { loadProducer } = await import("./producer-LDLXR52P.js");
|
|
232
232
|
const { localizeRemoteMediaSources, localizeRemoteImageSources, localizeRemoteFontFaces } = await loadProducer();
|
|
233
233
|
dir = mkdtempSync(join(tmpdir(), "hf-validate-assets-"));
|
|
234
234
|
const assetDir = dir;
|
|
@@ -249,9 +249,9 @@ async function localizeRemoteAssets(html) {
|
|
|
249
249
|
}
|
|
250
250
|
async function validateInBrowser(project, opts) {
|
|
251
251
|
const projectDir = project.dir;
|
|
252
|
-
const { bundleToSingleHtml } = await import("./compiler-
|
|
252
|
+
const { bundleToSingleHtml } = await import("./compiler-H7SJMAFW.js");
|
|
253
253
|
const { ensureBrowser } = await import("./manager-HEUPD2YB.js");
|
|
254
|
-
const { serveStaticProjectHtml } = await import("./staticProjectServer-
|
|
254
|
+
const { serveStaticProjectHtml } = await import("./staticProjectServer-32H6UI47.js");
|
|
255
255
|
const { lintProject } = await import("./lintProject-BGDYHF3F.js");
|
|
256
256
|
const lintResult = await lintProject(projectDir);
|
|
257
257
|
const compositionErrors = extractCompositionErrorsFromLint(lintResult);
|
|
@@ -273,9 +273,9 @@ async function validateInBrowser(project, opts) {
|
|
|
273
273
|
try {
|
|
274
274
|
const browser = await ensureBrowser();
|
|
275
275
|
const puppeteer = await import("puppeteer-core");
|
|
276
|
-
const { buildChromeArgs, analyzeClipMediaFit } = await import("./src-
|
|
276
|
+
const { buildChromeArgs, analyzeClipMediaFit } = await import("./src-DDDI6VWK.js");
|
|
277
277
|
const requestedGpuMode = resolveCliChromeGpuMode();
|
|
278
|
-
const { assertWebGpuAdapterAvailable, compositionRequiresWebGpu, resolveLocalWebGpu } = await import("./gpuPolicy-
|
|
278
|
+
const { assertWebGpuAdapterAvailable, compositionRequiresWebGpu, resolveLocalWebGpu } = await import("./gpuPolicy-JBDYSZCG.js");
|
|
279
279
|
const resolvedGpuMode = await resolveManagedGpuMode(requestedGpuMode, browser.executablePath);
|
|
280
280
|
const requiresWebGpu = compositionRequiresWebGpu(html);
|
|
281
281
|
const { gpuConfig, softwareWebGpu } = resolveLocalWebGpu(resolvedGpuMode, requiresWebGpu);
|
|
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
VERSION
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-VUEANSCG.js";
|
|
10
10
|
|
|
11
11
|
// src/registry/compatibility.ts
|
|
12
12
|
import { compareVersions } from "compare-versions";
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
splitElementInHtml,
|
|
20
20
|
unwrapElementsFromHtml,
|
|
21
21
|
wrapElementsInHtml
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-BQPLA2CT.js";
|
|
23
23
|
import {
|
|
24
24
|
MEDIA_LINK_ATTR,
|
|
25
25
|
relinkSplitHalves
|
|
@@ -54,7 +54,7 @@ import {
|
|
|
54
54
|
scanProjectMediaCodecMap,
|
|
55
55
|
shouldPrewarmProxy,
|
|
56
56
|
waitForProxy
|
|
57
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-RE2KNYKQ.js";
|
|
58
58
|
import {
|
|
59
59
|
MAX_WINDOW_IDLE_MS,
|
|
60
60
|
STUDIO_SIGNATURE_MANIFEST_PATHS,
|
|
@@ -103,7 +103,7 @@ import {
|
|
|
103
103
|
} from "./chunk-EOVYQ3IG.js";
|
|
104
104
|
import {
|
|
105
105
|
addScenePartsManifest
|
|
106
|
-
} from "./chunk-
|
|
106
|
+
} from "./chunk-XVYG2KAZ.js";
|
|
107
107
|
import {
|
|
108
108
|
ensureHfIds,
|
|
109
109
|
stampHfIdsInPlace
|
|
@@ -117,7 +117,7 @@ import {
|
|
|
117
117
|
parseFps,
|
|
118
118
|
parsePreviewProxyBox,
|
|
119
119
|
sameInstant
|
|
120
|
-
} from "./chunk-
|
|
120
|
+
} from "./chunk-R4G7F7YU.js";
|
|
121
121
|
import {
|
|
122
122
|
AFTER_FONTS_SCRIPT_TYPE,
|
|
123
123
|
RUNTIME_BOOTSTRAP_ATTR,
|
|
@@ -131,7 +131,7 @@ import {
|
|
|
131
131
|
resolveRateSpec,
|
|
132
132
|
sourceTimeAt,
|
|
133
133
|
stripEmbeddedRuntimeScripts
|
|
134
|
-
} from "./chunk-
|
|
134
|
+
} from "./chunk-MJBSLVYP.js";
|
|
135
135
|
import {
|
|
136
136
|
HTML_ATTRIBUTE_ENTITIES,
|
|
137
137
|
MagicString,
|
|
@@ -5495,7 +5495,7 @@ async function prepareGsapMutationScript(c, res, firstMutation) {
|
|
|
5495
5495
|
let block = extractGsapScriptBlock(html);
|
|
5496
5496
|
if (!block && (firstMutation.type === "add" || firstMutation.type === "add-with-keyframes")) {
|
|
5497
5497
|
const compId = html.match(/data-composition-id="([^"]+)"/)?.[1] ?? "main";
|
|
5498
|
-
const { GSAP_CDN } = await import("./dist-
|
|
5498
|
+
const { GSAP_CDN } = await import("./dist-EJ447S2S.js");
|
|
5499
5499
|
const bootstrap = [
|
|
5500
5500
|
`<script src="${GSAP_CDN}"></script>`,
|
|
5501
5501
|
"<script>",
|
|
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
shouldTrack
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-NECSL55O.js";
|
|
10
10
|
|
|
11
11
|
// src/telemetry/renderObservability.ts
|
|
12
12
|
function renderObservabilityTelemetryPayload(observability) {
|
|
@@ -10,20 +10,20 @@ import {
|
|
|
10
10
|
seekCompositionTimeline,
|
|
11
11
|
waitForCompositionFonts,
|
|
12
12
|
waitForRuntimeReady
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-A7YMSQP3.js";
|
|
14
14
|
import {
|
|
15
15
|
launchManagedBrowser,
|
|
16
16
|
resolveManagedGpuMode
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-2V64IUIF.js";
|
|
18
18
|
import {
|
|
19
19
|
resolveDiagnosticNavigationTimeoutMs
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-OORRE54E.js";
|
|
21
21
|
import {
|
|
22
22
|
resolveProject
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-WDKP7A2Z.js";
|
|
24
24
|
import {
|
|
25
25
|
serveStaticProjectHtml
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-4NXWAN56.js";
|
|
27
27
|
import {
|
|
28
28
|
defineCommand
|
|
29
29
|
} from "./chunk-S3S4TGEH.js";
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
import {
|
|
38
38
|
printDeprecationNotice,
|
|
39
39
|
withMeta
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-JQYIIHT7.js";
|
|
41
41
|
import {
|
|
42
42
|
normalizeErrorMessage
|
|
43
43
|
} from "./chunk-KNU5COPB.js";
|
|
@@ -708,7 +708,7 @@ async function collectTweenBoundaries(page) {
|
|
|
708
708
|
});
|
|
709
709
|
}
|
|
710
710
|
async function bundleProjectHtml(projectDir) {
|
|
711
|
-
const { bundleToSingleHtml } = await import("./compiler-
|
|
711
|
+
const { bundleToSingleHtml } = await import("./compiler-H7SJMAFW.js");
|
|
712
712
|
return bundleToSingleHtml(projectDir);
|
|
713
713
|
}
|
|
714
714
|
async function alignViewportToComposition(page, url) {
|
|
@@ -730,13 +730,13 @@ async function alignViewportToComposition(page, url) {
|
|
|
730
730
|
async function runLayoutAudit(projectDir, opts) {
|
|
731
731
|
const { ensureBrowser } = await import("./manager-HEUPD2YB.js");
|
|
732
732
|
const puppeteer = await import("puppeteer-core");
|
|
733
|
-
const { buildChromeArgs } = await import("./src-
|
|
733
|
+
const { buildChromeArgs } = await import("./src-DDDI6VWK.js");
|
|
734
734
|
const {
|
|
735
735
|
assertWebGpuAdapterAvailable,
|
|
736
736
|
compositionRequiresWebGpu,
|
|
737
737
|
resolveLocalBrowserGpuMode,
|
|
738
738
|
resolveLocalWebGpu
|
|
739
|
-
} = await import("./gpuPolicy-
|
|
739
|
+
} = await import("./gpuPolicy-JBDYSZCG.js");
|
|
740
740
|
const html = await bundleProjectHtml(projectDir);
|
|
741
741
|
const server = await serveStaticProjectHtml(
|
|
742
742
|
projectDir,
|
|
@@ -6,8 +6,8 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
|
|
8
8
|
// src/version.ts
|
|
9
|
-
var VERSION = true ? "0.8.
|
|
10
|
-
var PRODUCER_VERSION = true ? "0.8.
|
|
9
|
+
var VERSION = true ? "0.8.165" : "0.0.0-dev";
|
|
10
|
+
var PRODUCER_VERSION = true ? "0.8.165" : "0.0.0-dev";
|
|
11
11
|
|
|
12
12
|
export {
|
|
13
13
|
VERSION,
|
|
@@ -6,21 +6,21 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
parakeetRunner
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-4LRBRDMH.js";
|
|
10
10
|
import {
|
|
11
11
|
DecodeCancelled,
|
|
12
12
|
prepareSherpaWav,
|
|
13
13
|
sherpaUnsupportedReason,
|
|
14
14
|
transcribeWithSherpa
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-JQVJJVLZ.js";
|
|
16
16
|
import {
|
|
17
17
|
initialModelForLanguage,
|
|
18
18
|
transcribe
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-H3NA7GPR.js";
|
|
20
20
|
import {
|
|
21
21
|
createRenderCancellationScope,
|
|
22
22
|
stoppedByCancelSignal
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-5XDKAENM.js";
|
|
24
24
|
import {
|
|
25
25
|
formatSrt,
|
|
26
26
|
formatVtt,
|
|
@@ -6,10 +6,10 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
getMimeType
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-QSC4ITQW.js";
|
|
10
10
|
import {
|
|
11
11
|
injectTagsAtHeadStart
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-MJBSLVYP.js";
|
|
13
13
|
|
|
14
14
|
// src/utils/compositionServer.ts
|
|
15
15
|
import { createHash } from "crypto";
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
renderFrameIdForRenderId,
|
|
31
31
|
resolveAuthoredTimingWindow,
|
|
32
32
|
toFps
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-R4G7F7YU.js";
|
|
34
34
|
import {
|
|
35
35
|
AUDIO_GROUP_RENDER_ID_ATTR,
|
|
36
36
|
COLOR_GRADING_SOURCE_HIDDEN_ATTR,
|
|
@@ -59,7 +59,7 @@ import {
|
|
|
59
59
|
shiftRateLane,
|
|
60
60
|
sourceTimeAt,
|
|
61
61
|
timeAtSourceTime
|
|
62
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-MJBSLVYP.js";
|
|
63
63
|
import {
|
|
64
64
|
clampAudioGain,
|
|
65
65
|
isAudibleVideoElement
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
typeDirPath,
|
|
21
21
|
updateRecord,
|
|
22
22
|
withFigmaErrors
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-ILIXTGYN.js";
|
|
24
24
|
import {
|
|
25
25
|
defineCommand
|
|
26
26
|
} from "./chunk-S3S4TGEH.js";
|
|
@@ -229,7 +229,7 @@ var asset_default = defineCommand({
|
|
|
229
229
|
rendered > 0 ? `(${results.length} nodes, ${rendered} rendered in 1 figma request)` : `(${results.length} nodes, all reused from cache \u2014 no figma request)`
|
|
230
230
|
);
|
|
231
231
|
}
|
|
232
|
-
const { trackFigmaImport } = await import("./telemetry-
|
|
232
|
+
const { trackFigmaImport } = await import("./telemetry-DBQXOBME.js");
|
|
233
233
|
trackFigmaImport({
|
|
234
234
|
phase: "asset",
|
|
235
235
|
reused: results.every((r) => r.reused),
|
|
@@ -7,7 +7,7 @@ var __dirname = __hf_dirname(__filename);
|
|
|
7
7
|
import {
|
|
8
8
|
resolveConfig,
|
|
9
9
|
usesSoftwareWebGpu
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-WQSNNJXF.js";
|
|
11
11
|
|
|
12
12
|
// src/browser/gpuPolicy.ts
|
|
13
13
|
function resolveLocalBrowserGpuMode(browserGpuArg, envMode = process.env.PRODUCER_BROWSER_GPU_MODE) {
|
|
@@ -17,7 +17,7 @@ function resolveLocalBrowserGpuMode(browserGpuArg, envMode = process.env.PRODUCE
|
|
|
17
17
|
return "auto";
|
|
18
18
|
}
|
|
19
19
|
async function resolveCaptureBrowserGpuMode(requestedMode, chromePath, probeLifecycle) {
|
|
20
|
-
const { resolveBrowserGpuMode } = await import("./src-
|
|
20
|
+
const { resolveBrowserGpuMode } = await import("./src-DDDI6VWK.js");
|
|
21
21
|
return resolveBrowserGpuMode(requestedMode, { chromePath, probeLifecycle });
|
|
22
22
|
}
|
|
23
23
|
function resolveLocalWebGpu(browserGpuMode, requiresWebGpu) {
|