hyperframes 0.8.180 → 0.8.183
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/bin/hyperframes.mjs +3 -1
- package/dist/{add-HUVEWSVU.js → add-HW3ZGR36.js} +22 -22
- package/dist/{animatedGifPrep-V6GJQOEB.js → animatedGifPrep-EPLN37ZN.js} +13 -13
- package/dist/api.js +28 -28
- package/dist/{asset-ZGQHDMIO.js → asset-TOASKL3Z.js} +3 -3
- package/dist/{assetCataloger-MZWCOV6C.js → assetCataloger-PZN5HYG2.js} +15 -13
- package/dist/{audio-XDWHLNIW.js → audio-F5OIQVJO.js} +29 -29
- package/dist/{auth-VIV3M7S6.js → auth-YVQLRS3T.js} +4 -4
- package/dist/{autoUpdate-R32XDL42.js → autoUpdate-EG4ZFW4D.js} +2 -2
- package/dist/{backgroundChecks-A2N6EVCP.js → backgroundChecks-WINNQVR2.js} +3 -3
- package/dist/backgroundChecksWorker.js +3 -3
- package/dist/{batchRender-3AYDQRBI.js → batchRender-PASZTMEE.js} +7 -7
- package/dist/{beats-2O423Z6Q.js → beats-KGIOEBLW.js} +12 -12
- package/dist/{benchmark-YXP3PTZP.js → benchmark-ZNY2L7HN.js} +24 -24
- package/dist/{browser-M47BNOTJ.js → browser-REAO7RU4.js} +20 -20
- package/dist/{bundleWithLocalizedFonts-GCIHOMIU.js → bundleWithLocalizedFonts-OAYLYC4W.js} +2 -2
- package/dist/{capture-IV3Y2MT4.js → capture-IK6GWQDD.js} +8 -5
- package/dist/{capture-BT2ZXN5P.js → capture-WOSF276U.js} +49 -41
- package/dist/{captureCompositionFrame-BMZEKPOU.js → captureCompositionFrame-DDZNKYRE.js} +21 -20
- package/dist/{captureTimeout-K2JNVVCI.js → captureTimeout-RIMG6IYH.js} +1 -1
- package/dist/{catalog-GI6P22KI.js → catalog-AKTXS7OJ.js} +42 -42
- package/dist/{catch-up-QS6HUHAO.js → catch-up-O3VZMPVE.js} +15 -15
- package/dist/check-6E46NIWI.js +116 -0
- package/dist/checkBrowser-UNZHQFNH.js +117 -0
- package/dist/{chunk-ST2ARHQ5.js → chunk-3BA2GP4H.js} +5 -5
- package/dist/{chunk-7Z6AARJR.js → chunk-3OLIGYWN.js} +3 -3
- package/dist/{chunk-OR5WCFWZ.js → chunk-3Q47QC46.js} +2 -2
- package/dist/{chunk-Q2ASTBSG.js → chunk-4FQKS7BJ.js} +16 -14
- package/dist/{chunk-G2ZMCNRN.js → chunk-4UFJWRHG.js} +527 -283
- package/dist/{chunk-537IYAEE.js → chunk-4UMPIPCQ.js} +9 -1
- package/dist/{chunk-65CLIHK2.js → chunk-5MBLWFLM.js} +1 -1
- package/dist/{chunk-UVEQLDKB.js → chunk-5OGDBU4G.js} +3 -2
- package/dist/{chunk-L3YOGIPG.js → chunk-66LREXGS.js} +1 -1
- package/dist/{chunk-W4SLIGGM.js → chunk-73LTCCZI.js} +249 -161
- package/dist/{chunk-GZVP4TWN.js → chunk-7JAD4MEW.js} +1 -1
- package/dist/{chunk-NAMGMP3R.js → chunk-7KVVNF7B.js} +1 -1
- package/dist/{chunk-GK2FIKIQ.js → chunk-ADDHW2FS.js} +214 -37
- package/dist/{chunk-WUQUR33W.js → chunk-AKFADCMS.js} +1 -1
- package/dist/{chunk-2VJNKE7C.js → chunk-ANR6WOC3.js} +1 -1
- package/dist/{chunk-L527FLMV.js → chunk-ATMDOUNN.js} +2 -2
- package/dist/{chunk-ZJPCQBU7.js → chunk-B2SZZFWW.js} +4 -4
- package/dist/{chunk-TO6JNTML.js → chunk-BP4VNTZL.js} +13 -8
- package/dist/{chunk-3YXTFXT7.js → chunk-CAHTO62O.js} +8 -8
- package/dist/{chunk-MPWLGNM2.js → chunk-CGK4XZ2J.js} +1 -1
- package/dist/{chunk-NOXGG4C7.js → chunk-CJYAJ3QM.js} +37 -33
- package/dist/{chunk-F5VMPELS.js → chunk-COTLNID2.js} +16 -16
- package/dist/{chunk-E24HSMZV.js → chunk-CYBXXSC4.js} +65 -14
- package/dist/{chunk-NZZYJOMJ.js → chunk-CZUAX3BV.js} +6 -5
- package/dist/{chunk-K7RGIADJ.js → chunk-DEORFAWP.js} +12 -12
- package/dist/{chunk-GV5R5B7Q.js → chunk-DGECWPTL.js} +1 -1
- package/dist/{chunk-BRHI7EIA.js → chunk-DKPNNYBZ.js} +4 -0
- package/dist/{chunk-R46P7TGY.js → chunk-DLC2FICN.js} +7 -7
- package/dist/{chunk-D3ZWBHZP.js → chunk-DYAPHNV6.js} +3 -2
- package/dist/{chunk-RGHQID2E.js → chunk-EHSBBBR2.js} +5 -3
- package/dist/{chunk-IWTRHPTP.js → chunk-EVAQPW6O.js} +8 -8
- package/dist/{chunk-S3RYRF3W.js → chunk-F6WHPHLF.js} +1 -1
- package/dist/chunk-FG4BBFZI.js +122 -0
- package/dist/{chunk-V6MQP32U.js → chunk-GAGMLVCV.js} +2 -2
- package/dist/chunk-GMNHAOMJ.js +3805 -0
- package/dist/{chunk-KIO3R4QN.js → chunk-GPE3WWTO.js} +16 -6
- package/dist/{chunk-ULWZYLCV.js → chunk-GTE5WZAM.js} +72 -140
- package/dist/{chunk-2JDLESMS.js → chunk-HLBODNGW.js} +1 -1
- package/dist/{chunk-KMAAOHLO.js → chunk-HRPWRZGF.js} +1 -1
- package/dist/{chunk-UPFUC4DB.js → chunk-HTIUNMTP.js} +1 -1
- package/dist/{chunk-FCUTQM2P.js → chunk-IC2WYONA.js} +5 -5
- package/dist/{chunk-VE3OKVSD.js → chunk-ITSLKUQM.js} +2 -2
- package/dist/{chunk-YJDB4FLT.js → chunk-JQYJXUJW.js} +1 -1
- package/dist/{chunk-PBN6GBJE.js → chunk-JVBRJMOP.js} +14 -1
- package/dist/{chunk-XH262OWN.js → chunk-K2Z5DZBS.js} +1 -1
- package/dist/{chunk-RHWJKSGH.js → chunk-KANNRHY7.js} +1 -1
- package/dist/{chunk-Y5APFFMD.js → chunk-KRFAX5JK.js} +1 -1
- package/dist/{chunk-4J7DHVN2.js → chunk-LBWRQ4XA.js} +1 -1
- package/dist/{chunk-MQOE5RE4.js → chunk-MIZDJVPZ.js} +9 -9
- package/dist/{chunk-32GKETR7.js → chunk-MMQ52NIZ.js} +74 -0
- package/dist/chunk-MOEGCMKI.js +180 -0
- package/dist/{chunk-E6RPWJVC.js → chunk-NAUKCKCJ.js} +5 -1
- package/dist/{chunk-JBCU6NR5.js → chunk-NZ3BE2QE.js} +56 -55
- package/dist/{chunk-VKMP3IVR.js → chunk-O7N3A7PE.js} +2 -2
- package/dist/{chunk-3QENZQSL.js → chunk-OH56PXFH.js} +5 -5
- package/dist/{chunk-H4YZZ2VQ.js → chunk-PFD25NAC.js} +1 -1
- package/dist/{check-HE5E4Q7Q.js → chunk-Q6UYKWBG.js} +198 -142
- package/dist/{chunk-3DKN5WKL.js → chunk-QH3T4WI2.js} +77 -6
- package/dist/{chunk-RGXAN3YU.js → chunk-QX4GGPMY.js} +2 -2
- package/dist/{chunk-A3NFBMYX.js → chunk-R6OV4J4K.js} +6 -6
- package/dist/{chunk-LL5VQ4WS.js → chunk-RZXUQR42.js} +2 -2
- package/dist/{chunk-SEMOZNVE.js → chunk-SAQYJLI6.js} +1 -1
- package/dist/{chunk-55P7GDT6.js → chunk-TJB4GAV6.js} +2 -2
- package/dist/{checkBrowser-BHLYP3YW.js → chunk-TOHA5NAU.js} +187 -114
- package/dist/{chunk-RXQHSGAQ.js → chunk-TXGZZKDF.js} +2 -2
- package/dist/{chunk-KZ3VI5K6.js → chunk-U5YVWG5W.js} +3 -3
- package/dist/{chunk-ICMXC3MI.js → chunk-U6RXZNZE.js} +31 -18
- package/dist/{chunk-XO6CWU7D.js → chunk-UNOSCGBG.js} +2 -2
- package/dist/{chunk-NXYBR4QX.js → chunk-VAK7A2N6.js} +16 -16
- package/dist/{chunk-OFY6JTZC.js → chunk-VDJO4DJ7.js} +2 -2
- package/dist/{chunk-LBQFLUIY.js → chunk-VFBAKPRC.js} +9 -49
- package/dist/{chunk-K3KANDZQ.js → chunk-VH5KESLX.js} +1 -1
- package/dist/{chunk-22QHO26F.js → chunk-W64L7IFS.js} +1 -1
- package/dist/{chunk-4IEH6EAC.js → chunk-WT4PYV2J.js} +4 -6
- package/dist/{chunk-XFCLWWL3.js → chunk-X3IA5RYH.js} +2 -2
- package/dist/{chunk-UZOZ2W2E.js → chunk-XAQDR5Y5.js} +2 -2
- package/dist/{chunk-BI52RNRW.js → chunk-XJHKJXT4.js} +103 -20
- package/dist/{chunk-HFZ4UILX.js → chunk-XOVHO3TT.js} +25 -14
- package/dist/{chunk-VARUKXOZ.js → chunk-XR5BSEUF.js} +7 -15
- package/dist/{chunk-IZM562YJ.js → chunk-Z4R35NJS.js} +4 -4
- package/dist/{chunk-AMX53HVX.js → chunk-ZFO3A3QL.js} +2 -2
- package/dist/{clean-TQOW24OF.js → clean-WNEIVBF3.js} +40 -40
- package/dist/cli.js +68 -64
- package/dist/{cloud-7TOVPUMY.js → cloud-6GSSDCJL.js} +4 -4
- package/dist/{cloudrun-2BKGY53X.js → cloudrun-4NEJRE4T.js} +8 -8
- package/dist/commands/layout-audit.browser.js +15 -4
- package/dist/commands/motion-signature.browser.js +52 -0
- package/dist/{compare-WDV3Q6WC.js → compare-2JWQ5ABA.js} +50 -47
- package/dist/{compiler-U3W6CJW7.js → compiler-27KQD7KW.js} +6 -6
- package/dist/{component-U66GBIUO.js → component-HCRET3MH.js} +4 -4
- package/dist/{compositions-Y63YGLCE.js → compositions-HTSQ6SUJ.js} +28 -29
- package/dist/{contactSheet-27SRU7A4.js → contactSheet-CAGMKI3E.js} +3 -1
- package/dist/{delete-TBAIAD7M.js → delete-GHQ5UYM7.js} +9 -9
- package/dist/{deploy-BIWOSWS3.js → deploy-I3Z3NAVA.js} +11 -11
- package/dist/{destroy-QBLMYDBF.js → destroy-4B5HW5FH.js} +5 -5
- package/dist/{deterministicFonts-L7YEEFGI.js → deterministicFonts-JFLSSKRB.js} +2 -2
- package/dist/{dist-2FMTAVGL.js → dist-SENYPQGW.js} +4 -4
- package/dist/{dist-VO7OXOFK.js → dist-WRDLWRMS.js} +5 -5
- package/dist/{docs-MPOM3PHH.js → docs-UEWLIP6D.js} +1 -1
- package/dist/{doctor-GC4REGB6.js → doctor-UGFVQZHI.js} +27 -27
- package/dist/{events-PUUP24FT.js → events-BLJGWMNP.js} +9 -9
- package/dist/{events-4NMQVUZR.js → events-YS4OVX3I.js} +6 -6
- package/dist/{feedback-BIDXK7TE.js → feedback-AZ3SJ5HF.js} +35 -35
- package/dist/{ffmpeg-2VJDEWQQ.js → ffmpeg-2AECXG7V.js} +15 -15
- package/dist/{figma-THMXYLMU.js → figma-DRYIJQHV.js} +3 -3
- package/dist/fontLocalizeCli.js +23 -23
- package/dist/{get-5T4B7ERH.js → get-DDEAOFPB.js} +9 -9
- package/dist/{gpuPolicy-GLUATV5I.js → gpuPolicy-UDJT2MQK.js} +13 -13
- package/dist/{grade-compare-2A65YEHZ.js → grade-compare-LJKK5NSY.js} +55 -50
- package/dist/{help-JFBDXFRC.js → help-TQBGYOID.js} +1 -1
- package/dist/{history-OJEWFWMS.js → history-5TOOCF2Y.js} +15 -15
- package/dist/hyperframe.manifest.json +1 -1
- package/dist/hyperframe.runtime.iife.js +17 -17
- package/dist/hyperframes-player.global.js +8 -3
- package/dist/{info-KJZBU3SZ.js → info-ENI5MP4W.js} +20 -20
- package/dist/{init-6V4ELU4Z.js → init-JXPXWV3G.js} +68 -68
- package/dist/{inspect-WGBZZUZU.js → inspect-WZNYQ5AB.js} +45 -44
- package/dist/{installer-EPRSH6QI.js → installer-3SGRBLJW.js} +7 -7
- package/dist/{keyframes-57LYKC2M.js → keyframes-HEOC4CT4.js} +16 -16
- package/dist/{lambda-5P5X2X5E.js → lambda-2VHQ4AL2.js} +15 -15
- package/dist/{layout-PM2VAUT2.js → layout-7WEUNO6T.js} +45 -44
- package/dist/{lint-DXS6QRYZ.js → lint-5YMAF3L7.js} +23 -23
- package/dist/{lintProject-ARKJXDQF.js → lintProject-C2ONSH2U.js} +4 -4
- package/dist/{list-6IBSX7FU.js → list-BIE3X7CO.js} +10 -10
- package/dist/{login-RY3PWK44.js → login-YDIGJWCG.js} +7 -7
- package/dist/{logout-DKJANASY.js → logout-DDC4QLVK.js} +3 -3
- package/dist/{manager-N3COY6BJ.js → manager-D2UV6RDQ.js} +16 -16
- package/dist/{manager-V2QCCPOJ.js → manager-UHWEKPXC.js} +8 -3
- package/dist/{media-treatment-3HEZR7ZS.js → media-treatment-FSKHPMWA.js} +33 -33
- package/dist/{media-use-4XXGABIL.js → media-use-JBN57JE3.js} +1 -1
- package/dist/{models-FEULJWSX.js → models-COEK6LXG.js} +24 -24
- package/dist/{motionShot-BZTEIZEO.js → motionShot-HYZ2ZGJQ.js} +28 -26
- package/dist/{normalize-audio-O4X4LPLK.js → normalize-audio-UXR6WQ7Q.js} +12 -12
- package/dist/{open-H3MX4TI2.js → open-OFT2GIDG.js} +24 -24
- package/dist/{parakeetRunner-5ABMPCI6.js → parakeetRunner-4NZ3QXS3.js} +25 -25
- package/dist/{pipeline-RJ4DOVWX.js → pipeline-ZKE54JMG.js} +18 -18
- package/dist/{play-3PBKEZIX.js → play-2VG77FT6.js} +39 -38
- package/dist/{policies-5NTZOHJA.js → policies-XXNGXWHV.js} +1 -1
- package/dist/{preflight-3RABQJT3.js → preflight-QTWDIM5C.js} +18 -18
- package/dist/{present-6SNRG3GI.js → present-OONXQLJG.js} +33 -33
- package/dist/{preview-LSDFCJ3H.js → preview-6RZJFU76.js} +49 -49
- package/dist/{producer-SUZDRXHJ.js → producer-6YM3UH3B.js} +1 -1
- package/dist/{progress-I37JB7R4.js → progress-NHJIHAAG.js} +2 -2
- package/dist/{projectConfig-5QCNTGQT.js → projectConfig-YMW4P2X6.js} +9 -9
- package/dist/{publication-2QT7VVE2.js → publication-SEINUAPZ.js} +5 -5
- package/dist/{publish-53EBL7OO.js → publish-KZBTBWFO.js} +27 -27
- package/dist/{refresh-MGCVWX56.js → refresh-RXTOPRBB.js} +3 -3
- package/dist/{remove-background-4G4MX5WK.js → remove-background-BIQNMIR7.js} +31 -31
- package/dist/{render-RXKUYTYI.js → render-65K3K6SD.js} +31 -31
- package/dist/{render-SKY6FKYB.js → render-FIH37HJA.js} +101 -96
- package/dist/{render-75CRB3BW.js → render-LW76HOMJ.js} +8 -8
- package/dist/{render-batch-CEVWUYBP.js → render-batch-POLEEYD4.js} +8 -8
- package/dist/renderSetupWorker.js +12 -9
- package/dist/{resolver-4ICE2AT6.js → resolver-O2SED3XB.js} +7 -7
- package/dist/{screenshotCapture-HXEZ3TNJ.js → screenshotCapture-UBY6TT75.js} +33 -6
- package/dist/{sherpa-TMX3WBTM.js → sherpa-HTFFFTVQ.js} +24 -24
- package/dist/{sites-3ZBYB5X4.js → sites-MAVH57MO.js} +2 -2
- package/dist/skills/hyperframes/references/review-loop.md +1 -1
- package/dist/{skills-MCWFAGIP.js → skills-J6MBGS5O.js} +17 -17
- package/dist/{skillsUpdateCheck-NXOI35BW.js → skillsUpdateCheck-ZAXNLBF3.js} +3 -3
- package/dist/{snapshot-ESZMKQ6J.js → snapshot-TL7TTFS6.js} +72 -71
- package/dist/{src-XRTZOBO5.js → src-EL6HGIS4.js} +35 -26
- package/dist/{src-GYYWBQXJ.js → src-Z5H5N5T4.js} +19 -19
- package/dist/{state-KAXGHF77.js → state-ORRPOLMQ.js} +2 -2
- package/dist/{staticProjectServer-GYPUQGI7.js → staticProjectServer-EO7X7RAY.js} +20 -20
- package/dist/{status-BV7QAUQD.js → status-CM7IQTU2.js} +6 -6
- package/dist/studio/assets/{hyperframes-player-1wdLVP-x.js → hyperframes-player-hz_VqxBZ.js} +7 -2
- package/dist/studio/assets/{index-CaWPPTQ1.js → index-CV_ojgp5.js} +1 -1
- package/dist/studio/assets/{index-mdtW0Ug-.js → index-S1ceEagc.js} +71 -71
- package/dist/studio/index.html +1 -1
- package/dist/{studio-api-IXGX5ZFI.js → studio-api-CUZDC5B3.js} +17 -17
- package/dist/{studioServer-XVGYU6O3.js → studioServer-EZPRV43Y.js} +90 -84
- package/dist/{telemetry-E355EUDZ.js → telemetry-LFUVHARP.js} +10 -10
- package/dist/{telemetry-CQYHCCPL.js → telemetry-QG5AANZ4.js} +1 -1
- package/dist/{timeline-VWH6WSD7.js → timeline-GSH743JE.js} +41 -41
- package/dist/{tokens-IOAVF4UI.js → tokens-3ZMPSH7B.js} +3 -3
- package/dist/{transcribe-EGUXJGD4.js → transcribe-4SHNDPWW.js} +47 -47
- package/dist/{transcribe-EJA7OOHH.js → transcribe-TV7JBZQS.js} +19 -19
- package/dist/{tts-EDK3QS7M.js → tts-A2WILYGN.js} +6 -6
- package/dist/{updateCheck-U2CVTKPF.js → updateCheck-W7FTFOQF.js} +2 -2
- package/dist/{upgrade-CWEKQ4JO.js → upgrade-7YYYNAPF.js} +3 -3
- package/dist/{urlDownloader-DY5BLAFA.js → urlDownloader-PQSUS2CP.js} +12 -12
- package/dist/{validate-XOMNMKD6.js → validate-GCHAEVXM.js} +39 -38
- package/dist/{video-22NN6OEH.js → video-KGN7NJS5.js} +16 -14
- package/dist/warmCheck.js +227 -0
- package/dist/warmCheckClient.js +139 -0
- package/package.json +4 -2
- package/dist/chunk-BAZ5LCR3.js +0 -3805
- package/dist/hyperframe-runtime.js +0 -1125
- package/dist/{chunk-B4VT6YU2.js → chunk-QGOYNPQT.js} +3 -3
- package/dist/{synthesize-I2C24XJ5.js → synthesize-PKTB5ATG.js} +1 -1
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
formatPreviewProxyBox,
|
|
10
10
|
hdrToSdrToneMapFilter,
|
|
11
11
|
parseFirstFrameColour
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-VFBAKPRC.js";
|
|
13
13
|
import {
|
|
14
14
|
decodeAuthoredAttribute,
|
|
15
15
|
scanHtmlOpeningTags
|
|
@@ -19,15 +19,15 @@ import {
|
|
|
19
19
|
realProjectRoot,
|
|
20
20
|
realpath
|
|
21
21
|
} from "./chunk-OFQWTKPW.js";
|
|
22
|
+
import {
|
|
23
|
+
findFfBinary
|
|
24
|
+
} from "./chunk-VAS6HQX3.js";
|
|
22
25
|
import {
|
|
23
26
|
cleanAssetUrl,
|
|
24
27
|
isRemoteOrInlineUrl,
|
|
25
28
|
isUnresolvedAssetPlaceholder,
|
|
26
29
|
resolveExistingLocalAsset
|
|
27
30
|
} from "./chunk-6BNTGNGD.js";
|
|
28
|
-
import {
|
|
29
|
-
findFfBinary
|
|
30
|
-
} from "./chunk-VAS6HQX3.js";
|
|
31
31
|
import {
|
|
32
32
|
rewriteAssetPath
|
|
33
33
|
} from "./chunk-BSQ7XANM.js";
|
|
@@ -337,7 +337,7 @@ async function scanProjectMediaCodecMap(projectDir, htmlSources, options = {}) {
|
|
|
337
337
|
return map;
|
|
338
338
|
}
|
|
339
339
|
|
|
340
|
-
// ../studio-server/dist/chunk-
|
|
340
|
+
// ../studio-server/dist/chunk-D5RQMNZQ.js
|
|
341
341
|
import { spawn } from "child_process";
|
|
342
342
|
import { createHash, randomUUID } from "crypto";
|
|
343
343
|
import { existsSync as existsSync2, renameSync, statSync as statSync2, unlinkSync as unlinkSync2, utimesSync } from "fs";
|
|
@@ -549,6 +549,13 @@ function getCanonicalProxyCachePath(source, variant, box) {
|
|
|
549
549
|
`${key}${PROXY_VARIANT_CONFIG[variant].extension}`
|
|
550
550
|
);
|
|
551
551
|
}
|
|
552
|
+
function getProxyCachePath(projectDir, absoluteSourcePath, variant = "h264", box) {
|
|
553
|
+
return getCanonicalProxyCachePath(
|
|
554
|
+
canonicalizeProxySource(projectDir, absoluteSourcePath),
|
|
555
|
+
variant,
|
|
556
|
+
box
|
|
557
|
+
);
|
|
558
|
+
}
|
|
552
559
|
var ProxyDroppedError = class extends ProxyTranscodeError {
|
|
553
560
|
constructor() {
|
|
554
561
|
super("media proxy copy dropped: every caller left", null, "");
|
|
@@ -864,7 +871,8 @@ async function resolveProxy(projectDir, absoluteSourcePath, variant = "h264", bo
|
|
|
864
871
|
if (options.priority) prioritize(entry.job);
|
|
865
872
|
return joinJob(entry.promise, entry.job, options.signal);
|
|
866
873
|
}
|
|
867
|
-
async function resolveProxies(projectDir, sources) {
|
|
874
|
+
async function resolveProxies(projectDir, sources, onSettled = () => {
|
|
875
|
+
}) {
|
|
868
876
|
const results = [];
|
|
869
877
|
let next = 0;
|
|
870
878
|
const worker = async () => {
|
|
@@ -877,6 +885,7 @@ async function resolveProxies(projectDir, sources) {
|
|
|
877
885
|
(value) => ({ status: "fulfilled", value }),
|
|
878
886
|
(reason) => ({ status: "rejected", reason })
|
|
879
887
|
);
|
|
888
|
+
onSettled();
|
|
880
889
|
}
|
|
881
890
|
};
|
|
882
891
|
const workers = Math.min(MAX_CONCURRENT_TRANSCODES, sources.length);
|
|
@@ -918,6 +927,7 @@ export {
|
|
|
918
927
|
ProxyCapacityError,
|
|
919
928
|
ProxyWaitTimeoutError,
|
|
920
929
|
waitForProxy,
|
|
930
|
+
getProxyCachePath,
|
|
921
931
|
proxyActivityMark,
|
|
922
932
|
resolveProxy,
|
|
923
933
|
resolveProxies
|
|
@@ -9,18 +9,15 @@ import {
|
|
|
9
9
|
isOneProcessOverPipe,
|
|
10
10
|
machServiceDenied,
|
|
11
11
|
oneProcessOverPipe,
|
|
12
|
+
pipeLaunchClosedOnMac,
|
|
12
13
|
sandboxDeniedRemediation
|
|
13
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-DKPNNYBZ.js";
|
|
14
15
|
import {
|
|
15
16
|
resolveCaptureBrowserGpuMode
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import {
|
|
18
|
-
isNavigationTimeoutError,
|
|
19
|
-
withRemainingBudget
|
|
20
|
-
} from "./chunk-RGHQID2E.js";
|
|
17
|
+
} from "./chunk-ZFO3A3QL.js";
|
|
21
18
|
import {
|
|
22
19
|
requestCliExit
|
|
23
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-JVBRJMOP.js";
|
|
24
21
|
import {
|
|
25
22
|
normalizeErrorMessage
|
|
26
23
|
} from "./chunk-KNU5COPB.js";
|
|
@@ -28,11 +25,61 @@ import {
|
|
|
28
25
|
processIsAlive
|
|
29
26
|
} from "./chunk-KGPLIH7B.js";
|
|
30
27
|
|
|
28
|
+
// src/browser/windowsChromeWatchdog.ts
|
|
29
|
+
import { spawn } from "child_process";
|
|
30
|
+
import { realpathSync } from "fs";
|
|
31
|
+
var SWEEP = `$b=[int]$env:HF_CHROME_PID; $x=$env:HF_CHROME_EXE; $t=[DateTimeOffset]::FromUnixTimeMilliseconds([int64]$env:HF_CHROME_SINCE).UtcDateTime; Get-CimInstance Win32_Process | Where-Object { ($_.ProcessId -eq $b -or $_.ParentProcessId -eq $b) -and $_.ExecutablePath -eq $x -and $_.CreationDate.ToUniversalTime() -ge $t } | ForEach-Object { Stop-Process -Id $_.ProcessId -Force -ErrorAction SilentlyContinue }`;
|
|
32
|
+
var WATCHDOG = `let clean = false;
|
|
33
|
+
const done = () => {
|
|
34
|
+
if (!clean) require("node:child_process").spawnSync("powershell.exe", ["-NoProfile", "-NonInteractive", "-Command", ${JSON.stringify(SWEEP)}], { windowsHide: true, timeout: 20000 });
|
|
35
|
+
process.exit(0);
|
|
36
|
+
};
|
|
37
|
+
process.stdin.on("data", (data) => { clean ||= String(data).includes("clean"); });
|
|
38
|
+
process.stdin.on("end", done);
|
|
39
|
+
process.stdin.on("error", done);`;
|
|
40
|
+
function executableOf(chrome) {
|
|
41
|
+
try {
|
|
42
|
+
return realpathSync.native(chrome.spawnfile);
|
|
43
|
+
} catch {
|
|
44
|
+
return void 0;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function watchChromeTree(chrome, launchedAt) {
|
|
48
|
+
const executable = process.platform === "win32" ? executableOf(chrome) : void 0;
|
|
49
|
+
if (!executable || chrome.pid === void 0) return void 0;
|
|
50
|
+
const watchdog = spawn(process.execPath, ["-e", WATCHDOG], {
|
|
51
|
+
detached: true,
|
|
52
|
+
env: {
|
|
53
|
+
...process.env,
|
|
54
|
+
HF_CHROME_PID: String(chrome.pid),
|
|
55
|
+
HF_CHROME_EXE: executable,
|
|
56
|
+
HF_CHROME_SINCE: String(launchedAt)
|
|
57
|
+
},
|
|
58
|
+
stdio: ["pipe", "ignore", "ignore"],
|
|
59
|
+
windowsHide: true
|
|
60
|
+
});
|
|
61
|
+
watchdog.on("error", () => {
|
|
62
|
+
});
|
|
63
|
+
watchdog.stdin?.on("error", () => {
|
|
64
|
+
});
|
|
65
|
+
watchdog.unref();
|
|
66
|
+
watchdog.stdin?.unref?.();
|
|
67
|
+
let released = false;
|
|
68
|
+
return {
|
|
69
|
+
release(clean) {
|
|
70
|
+
if (released) return;
|
|
71
|
+
released = true;
|
|
72
|
+
watchdog.stdin?.end(clean ? "clean" : "");
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
|
|
31
77
|
// src/browser/launch.ts
|
|
32
78
|
var BrowserCleanupError = class extends AggregateError {
|
|
33
79
|
};
|
|
34
80
|
var browsers = /* @__PURE__ */ new Set();
|
|
35
81
|
var closing = /* @__PURE__ */ new WeakMap();
|
|
82
|
+
var watchdogs = /* @__PURE__ */ new WeakMap();
|
|
36
83
|
var pending = /* @__PURE__ */ new Map();
|
|
37
84
|
var sessionCleanups = /* @__PURE__ */ new Set();
|
|
38
85
|
var CLOSE_GRACE_MS = 1e3;
|
|
@@ -83,7 +130,7 @@ async function launchManagedBrowser(puppeteer, options) {
|
|
|
83
130
|
try {
|
|
84
131
|
return await launchOwnedBrowser(puppeteer, sandboxed ? oneProcessOverPipe(options) : options);
|
|
85
132
|
} catch (error) {
|
|
86
|
-
const unnamedSeatbelt = !sandboxed && machServiceDenied(normalizeErrorMessage(error));
|
|
133
|
+
const unnamedSeatbelt = !sandboxed && (machServiceDenied(normalizeErrorMessage(error)) || pipeLaunchClosedOnMac(error));
|
|
87
134
|
if (!unnamedSeatbelt) throw withRemediation(error);
|
|
88
135
|
return launchOwnedBrowser(puppeteer, oneProcessOverPipe(options)).catch(
|
|
89
136
|
(retryError) => {
|
|
@@ -101,8 +148,9 @@ async function launchOwnedBrowser(puppeteer, options) {
|
|
|
101
148
|
ownSignals();
|
|
102
149
|
const abort = new AbortController();
|
|
103
150
|
const signal = options.signal ? AbortSignal.any([options.signal, abort.signal]) : abort.signal;
|
|
151
|
+
const launchedAt = Date.now();
|
|
104
152
|
const launch = untilLaunchOrAbort(
|
|
105
|
-
puppeteer.launch({ ...options, signal, handleSIGINT: false, handleSIGTERM: false }),
|
|
153
|
+
puppeteer.launch({ ...options, pipe: true, signal, handleSIGINT: false, handleSIGTERM: false }),
|
|
106
154
|
signal
|
|
107
155
|
);
|
|
108
156
|
const limit = options.timeout ?? LAUNCH_TIMEOUT_MS;
|
|
@@ -116,6 +164,8 @@ async function launchOwnedBrowser(puppeteer, options) {
|
|
|
116
164
|
const child = browser.process();
|
|
117
165
|
if (!child) throw new Error("A launched browser has no owned process.");
|
|
118
166
|
browsers.add(browser);
|
|
167
|
+
const watchdog = watchChromeTree(child, launchedAt);
|
|
168
|
+
if (watchdog) watchdogs.set(browser, watchdog);
|
|
119
169
|
child.once("exit", () => browsers.delete(browser));
|
|
120
170
|
return browser;
|
|
121
171
|
} finally {
|
|
@@ -166,9 +216,17 @@ async function rethrowAfterBrowserCleanup(browser, error) {
|
|
|
166
216
|
throw error;
|
|
167
217
|
}
|
|
168
218
|
async function closeBrowser(browser) {
|
|
219
|
+
let clean = false;
|
|
220
|
+
try {
|
|
221
|
+
clean = await closedWithoutKill(browser);
|
|
222
|
+
} finally {
|
|
223
|
+
watchdogs.get(browser)?.release(clean);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
async function closedWithoutKill(browser) {
|
|
169
227
|
const child = browser.process();
|
|
170
228
|
if (!child) throw new Error("A managed browser lost its owned process.");
|
|
171
|
-
if (child.exitCode !== null || child.signalCode !== null) return;
|
|
229
|
+
if (child.exitCode !== null || child.signalCode !== null) return false;
|
|
172
230
|
const exited = new Promise((resolve) => child.once("exit", () => resolve()));
|
|
173
231
|
let timer;
|
|
174
232
|
let poll;
|
|
@@ -180,7 +238,8 @@ async function closeBrowser(browser) {
|
|
|
180
238
|
browser.close().catch((error) => console.warn("Browser close failed:", error)),
|
|
181
239
|
grace
|
|
182
240
|
]);
|
|
183
|
-
|
|
241
|
+
const clean = child.exitCode !== null || child.signalCode !== null;
|
|
242
|
+
if (!clean) child.kill("SIGKILL");
|
|
184
243
|
clearTimeout(timer);
|
|
185
244
|
const exitLimit = new Promise((_, reject) => {
|
|
186
245
|
timer = setTimeout(
|
|
@@ -194,145 +253,18 @@ async function closeBrowser(browser) {
|
|
|
194
253
|
}, EXIT_POLL_MS);
|
|
195
254
|
});
|
|
196
255
|
await Promise.race([exited, goneBeforeExitEvent, exitLimit]);
|
|
256
|
+
return clean;
|
|
197
257
|
} finally {
|
|
198
258
|
clearTimeout(timer);
|
|
199
259
|
clearInterval(poll);
|
|
200
260
|
}
|
|
201
261
|
}
|
|
202
262
|
|
|
203
|
-
// src/capture/navigateForCapture.ts
|
|
204
|
-
import { TimeoutError } from "puppeteer-core";
|
|
205
|
-
var NETWORK_IDLE_ATTEMPT_MS = 3e4;
|
|
206
|
-
function networkIdleAttemptTimeoutMs(totalTimeoutMs) {
|
|
207
|
-
return Math.min(NETWORK_IDLE_ATTEMPT_MS, Math.max(0, totalTimeoutMs));
|
|
208
|
-
}
|
|
209
|
-
async function navigateForCapture(page, url, totalTimeoutMs) {
|
|
210
|
-
const networkIdleTimeoutMs = networkIdleAttemptTimeoutMs(totalTimeoutMs);
|
|
211
|
-
try {
|
|
212
|
-
const response2 = await page.goto(url, {
|
|
213
|
-
waitUntil: "networkidle2",
|
|
214
|
-
timeout: networkIdleTimeoutMs
|
|
215
|
-
});
|
|
216
|
-
return {
|
|
217
|
-
response: response2,
|
|
218
|
-
waitUntil: "networkidle2",
|
|
219
|
-
networkIdleTimeoutMs,
|
|
220
|
-
fellBackFromNetworkIdle: false
|
|
221
|
-
};
|
|
222
|
-
} catch (err) {
|
|
223
|
-
if (!isNavigationTimeoutError(err) || networkIdleTimeoutMs >= totalTimeoutMs) {
|
|
224
|
-
throw err;
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
const fallbackTimeoutMs = totalTimeoutMs - networkIdleTimeoutMs;
|
|
228
|
-
const response = await page.goto(url, {
|
|
229
|
-
waitUntil: "domcontentloaded",
|
|
230
|
-
timeout: fallbackTimeoutMs
|
|
231
|
-
});
|
|
232
|
-
return {
|
|
233
|
-
response,
|
|
234
|
-
waitUntil: "domcontentloaded",
|
|
235
|
-
networkIdleTimeoutMs,
|
|
236
|
-
fellBackFromNetworkIdle: true
|
|
237
|
-
};
|
|
238
|
-
}
|
|
239
|
-
var PUPPETEER_LAUNCH_DEFAULT_TIMEOUT_MS = 3e4;
|
|
240
|
-
var PAGE_LOAD_BLOCKING_TYPES = /* @__PURE__ */ new Set(["Document", "Script", "Stylesheet"]);
|
|
241
|
-
var NAMED_BLOCKING_REQUESTS = 3;
|
|
242
|
-
var SENT_OR_ANSWERED_WITHOUT_NETWORK = [
|
|
243
|
-
"Network.requestWillBeSentExtraInfo",
|
|
244
|
-
"Network.responseReceived"
|
|
245
|
-
];
|
|
246
|
-
async function gotoWhenSent(page, url, timeoutMs, coldChromeFirstRequestTimeoutMs = PUPPETEER_LAUNCH_DEFAULT_TIMEOUT_MS) {
|
|
247
|
-
const cdp = await page.createCDPSession();
|
|
248
|
-
try {
|
|
249
|
-
await cdp.send("Network.enable");
|
|
250
|
-
const sent = documentRequestSent(cdp);
|
|
251
|
-
const unfinished = unfinishedPageLoadRequests(cdp);
|
|
252
|
-
const navigation = page.goto(url, { waitUntil: "domcontentloaded", timeout: 0 });
|
|
253
|
-
const navigationAwaitedBelow = navigation.catch(() => void 0);
|
|
254
|
-
await withRemainingBudget(
|
|
255
|
-
Promise.race([sent, navigationAwaitedBelow]),
|
|
256
|
-
coldChromeFirstRequestTimeoutMs,
|
|
257
|
-
"sending the page request",
|
|
258
|
-
() => new TimeoutError(
|
|
259
|
-
`Navigation timeout: Chrome did not send the page request within ${coldChromeFirstRequestTimeoutMs} ms`
|
|
260
|
-
)
|
|
261
|
-
);
|
|
262
|
-
return await withRemainingBudget(
|
|
263
|
-
navigation,
|
|
264
|
-
timeoutMs,
|
|
265
|
-
"loading the page",
|
|
266
|
-
() => new TimeoutError(pageLoadTimeoutMessage(timeoutMs, url, unfinished()))
|
|
267
|
-
);
|
|
268
|
-
} finally {
|
|
269
|
-
await cdp.detach().catch(() => void 0);
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
function documentRequestSent(cdp) {
|
|
273
|
-
const documents = /* @__PURE__ */ new Set();
|
|
274
|
-
const sent = /* @__PURE__ */ new Set();
|
|
275
|
-
return new Promise((resolve) => {
|
|
276
|
-
const settle = (requestId) => {
|
|
277
|
-
if (documents.has(requestId) && sent.has(requestId)) resolve();
|
|
278
|
-
};
|
|
279
|
-
cdp.on("Network.requestWillBeSent", ({ requestId, type }) => {
|
|
280
|
-
if (type === "Document") documents.add(requestId);
|
|
281
|
-
settle(requestId);
|
|
282
|
-
});
|
|
283
|
-
for (const event of SENT_OR_ANSWERED_WITHOUT_NETWORK) {
|
|
284
|
-
cdp.on(event, ({ requestId }) => {
|
|
285
|
-
sent.add(requestId);
|
|
286
|
-
settle(requestId);
|
|
287
|
-
});
|
|
288
|
-
}
|
|
289
|
-
});
|
|
290
|
-
}
|
|
291
|
-
function unfinishedPageLoadRequests(cdp) {
|
|
292
|
-
const unfinished = /* @__PURE__ */ new Map();
|
|
293
|
-
cdp.on("Network.requestWillBeSent", ({ requestId, request, type }) => {
|
|
294
|
-
if (type && PAGE_LOAD_BLOCKING_TYPES.has(type)) unfinished.set(requestId, request.url);
|
|
295
|
-
});
|
|
296
|
-
for (const event of ["Network.loadingFinished", "Network.loadingFailed"]) {
|
|
297
|
-
cdp.on(event, ({ requestId }) => unfinished.delete(requestId));
|
|
298
|
-
}
|
|
299
|
-
return () => [...unfinished.values()];
|
|
300
|
-
}
|
|
301
|
-
function urlWithoutSecrets(raw) {
|
|
302
|
-
try {
|
|
303
|
-
const url = new URL(raw);
|
|
304
|
-
if (url.protocol !== "http:" && url.protocol !== "https:") return `${url.protocol}\u2026`;
|
|
305
|
-
return `${url.origin}${url.pathname}${url.search ? "?\u2026" : ""}`;
|
|
306
|
-
} catch {
|
|
307
|
-
return "(unreadable URL)";
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
function originOf(raw) {
|
|
311
|
-
try {
|
|
312
|
-
return new URL(raw).origin;
|
|
313
|
-
} catch {
|
|
314
|
-
return null;
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
function pageLoadTimeoutMessage(timeoutMs, pageUrl, waitingOn) {
|
|
318
|
-
const exceeded = `Navigation timeout of ${timeoutMs} ms exceeded`;
|
|
319
|
-
if (waitingOn.length === 0) return exceeded;
|
|
320
|
-
const named = waitingOn.slice(0, NAMED_BLOCKING_REQUESTS).map(urlWithoutSecrets).join(", ");
|
|
321
|
-
const unnamed = waitingOn.length - NAMED_BLOCKING_REQUESTS;
|
|
322
|
-
const more = unnamed > 0 ? ` and ${unnamed} more` : "";
|
|
323
|
-
const pageOrigin = new URL(pageUrl).origin;
|
|
324
|
-
const fromAnotherServer = waitingOn.some((request) => originOf(request) !== pageOrigin);
|
|
325
|
-
const advice = fromAnotherServer ? " A <script> or stylesheet from another server holds the page until it arrives; serve it from the project instead." : "";
|
|
326
|
-
return `${exceeded} while the page was still loading ${named}${more}.${advice}`;
|
|
327
|
-
}
|
|
328
|
-
|
|
329
263
|
export {
|
|
330
264
|
BrowserCleanupError,
|
|
331
265
|
resolveManagedGpuMode,
|
|
332
266
|
launchManagedBrowser,
|
|
333
267
|
registerBrowserSessionCleanup,
|
|
334
268
|
closeManagedBrowser,
|
|
335
|
-
rethrowAfterBrowserCleanup
|
|
336
|
-
navigateForCapture,
|
|
337
|
-
gotoWhenSent
|
|
269
|
+
rethrowAfterBrowserCleanup
|
|
338
270
|
};
|
|
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
downloadToFile
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-CZUAX3BV.js";
|
|
10
10
|
import {
|
|
11
11
|
CACHE_DIR,
|
|
12
12
|
PINNED_PACKAGES,
|
|
@@ -16,18 +16,18 @@ import {
|
|
|
16
16
|
pinnedPackageBesideCli,
|
|
17
17
|
runNpm,
|
|
18
18
|
sweepStaleStaging
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-QH3T4WI2.js";
|
|
20
20
|
import {
|
|
21
21
|
emitWords,
|
|
22
22
|
getPreparedWavDurationSeconds,
|
|
23
23
|
prepareWav
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-U5YVWG5W.js";
|
|
25
25
|
import {
|
|
26
26
|
stoppedByCancelSignal
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-QX4GGPMY.js";
|
|
28
28
|
import {
|
|
29
29
|
verifies
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-SAQYJLI6.js";
|
|
31
31
|
import {
|
|
32
32
|
PARAKEET_MODEL_LABEL,
|
|
33
33
|
SHERPA_ERROR_PREFIX,
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
} from "./chunk-K2FLNJVB.js";
|
|
10
10
|
import {
|
|
11
11
|
failCommand
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-JVBRJMOP.js";
|
|
13
13
|
import {
|
|
14
14
|
cssVariableName,
|
|
15
15
|
slugify
|
|
@@ -1278,7 +1278,7 @@ async function withFigmaErrors(command, fn) {
|
|
|
1278
1278
|
} catch (err) {
|
|
1279
1279
|
if (err instanceof Error) {
|
|
1280
1280
|
try {
|
|
1281
|
-
const { trackCommandFailure } = await import("./events-
|
|
1281
|
+
const { trackCommandFailure } = await import("./events-BLJGWMNP.js");
|
|
1282
1282
|
trackCommandFailure(
|
|
1283
1283
|
command,
|
|
1284
1284
|
err,
|
|
@@ -80,6 +80,10 @@ function registerRootExitCodeSanitizer(sanitizer) {
|
|
|
80
80
|
function sanitizeSuccessfulExitCode() {
|
|
81
81
|
rootExitCodeSanitizer?.();
|
|
82
82
|
}
|
|
83
|
+
async function outputWritten() {
|
|
84
|
+
const written = (stream) => new Promise((resolve) => stream.write("", () => resolve()));
|
|
85
|
+
await Promise.all([written(process.stdout), written(process.stderr)]);
|
|
86
|
+
}
|
|
83
87
|
function requestCliExit(exitCode = 0) {
|
|
84
88
|
if (!rootExitRequester) {
|
|
85
89
|
setCommandResult({
|
|
@@ -91,6 +95,13 @@ function requestCliExit(exitCode = 0) {
|
|
|
91
95
|
}
|
|
92
96
|
rootExitRequester(exitCode);
|
|
93
97
|
}
|
|
98
|
+
function isUnrefableTimer(timer) {
|
|
99
|
+
return typeof timer === "object" && timer !== null && "unref" in timer && typeof timer.unref === "function";
|
|
100
|
+
}
|
|
101
|
+
function scheduleCliExit(exitCode = 0) {
|
|
102
|
+
const timer = setTimeout(() => requestCliExit(exitCode), 100);
|
|
103
|
+
if (isUnrefableTimer(timer)) timer.unref();
|
|
104
|
+
}
|
|
94
105
|
|
|
95
106
|
export {
|
|
96
107
|
CliUsageError,
|
|
@@ -104,5 +115,7 @@ export {
|
|
|
104
115
|
registerRootExitRequester,
|
|
105
116
|
registerRootExitCodeSanitizer,
|
|
106
117
|
sanitizeSuccessfulExitCode,
|
|
107
|
-
|
|
118
|
+
outputWritten,
|
|
119
|
+
requestCliExit,
|
|
120
|
+
scheduleCliExit
|
|
108
121
|
};
|
|
@@ -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-DEORFAWP.js";
|
|
10
10
|
|
|
11
11
|
// src/telemetry/renderObservability.ts
|
|
12
12
|
function renderObservabilityTelemetryPayload(observability) {
|
|
@@ -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-RZXUQR42.js";
|
|
10
10
|
|
|
11
11
|
// src/registry/compatibility.ts
|
|
12
12
|
import { compareVersions } from "compare-versions";
|
|
@@ -4,13 +4,6 @@ import { dirname as __hf_dirname } from "node:path";
|
|
|
4
4
|
var require = __hf_createRequire(import.meta.url);
|
|
5
5
|
var __filename = __hf_fileURLToPath(import.meta.url);
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
|
-
import {
|
|
8
|
-
getFreeDiskMb
|
|
9
|
-
} from "./chunk-T6AGUTZJ.js";
|
|
10
|
-
import {
|
|
11
|
-
ensureBrowser,
|
|
12
|
-
findBrowser
|
|
13
|
-
} from "./chunk-E24HSMZV.js";
|
|
14
7
|
import {
|
|
15
8
|
FIRST_LAUNCH_TIMEOUT_MS,
|
|
16
9
|
chromeDepsInstallCommand,
|
|
@@ -18,10 +11,17 @@ import {
|
|
|
18
11
|
distroLabel,
|
|
19
12
|
getFFmpegInstallHint,
|
|
20
13
|
parseLddMissingLibs
|
|
21
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-OH56PXFH.js";
|
|
15
|
+
import {
|
|
16
|
+
ensureBrowser,
|
|
17
|
+
findBrowser
|
|
18
|
+
} from "./chunk-CYBXXSC4.js";
|
|
22
19
|
import {
|
|
23
20
|
runCancellableProcess
|
|
24
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-DYAPHNV6.js";
|
|
22
|
+
import {
|
|
23
|
+
getFreeDiskMb
|
|
24
|
+
} from "./chunk-T6AGUTZJ.js";
|
|
25
25
|
import {
|
|
26
26
|
FFMPEG_PATH_ENV,
|
|
27
27
|
FFPROBE_PATH_ENV,
|
|
@@ -830,6 +830,72 @@ function validateColorGradingContract(value) {
|
|
|
830
830
|
return issues;
|
|
831
831
|
}
|
|
832
832
|
|
|
833
|
+
// ../parsers/dist/mediaTiming.js
|
|
834
|
+
var COMPOSITION_ATTRIBUTES2 = Object.freeze({
|
|
835
|
+
start: "data-start",
|
|
836
|
+
duration: "data-duration",
|
|
837
|
+
trackIndex: "data-track-index",
|
|
838
|
+
derivedEnd: "data-end",
|
|
839
|
+
legacyTrack: "data-layer"
|
|
840
|
+
});
|
|
841
|
+
var CANONICAL_AUTHORED_TIMING_ATTRIBUTES2 = Object.freeze([
|
|
842
|
+
COMPOSITION_ATTRIBUTES2.start,
|
|
843
|
+
COMPOSITION_ATTRIBUTES2.duration,
|
|
844
|
+
COMPOSITION_ATTRIBUTES2.trackIndex
|
|
845
|
+
]);
|
|
846
|
+
var DERIVED_TIMING_ATTRIBUTES2 = Object.freeze([
|
|
847
|
+
COMPOSITION_ATTRIBUTES2.derivedEnd
|
|
848
|
+
]);
|
|
849
|
+
var LEGACY_TIMING_ATTRIBUTES2 = Object.freeze([
|
|
850
|
+
COMPOSITION_ATTRIBUTES2.derivedEnd,
|
|
851
|
+
COMPOSITION_ATTRIBUTES2.legacyTrack
|
|
852
|
+
]);
|
|
853
|
+
function parseNumeric2(value) {
|
|
854
|
+
if (value == null || value.trim() === "") return null;
|
|
855
|
+
const parsed = Number(value);
|
|
856
|
+
return Number.isFinite(parsed) ? parsed : null;
|
|
857
|
+
}
|
|
858
|
+
var nonNegative = (raw) => {
|
|
859
|
+
const value = parseNumeric2(raw);
|
|
860
|
+
return value !== null && value >= 0 ? value : null;
|
|
861
|
+
};
|
|
862
|
+
function readMediaOffsetSeconds(getAttr) {
|
|
863
|
+
return nonNegative(getAttr("data-playback-start")) ?? nonNegative(getAttr("data-media-start")) ?? 0;
|
|
864
|
+
}
|
|
865
|
+
var MEDIA_START_BASIS_ATTR = "data-hf-media-start-basis";
|
|
866
|
+
function readMediaStartBasis(value) {
|
|
867
|
+
return value?.trim().toLowerCase() === "global" ? "global" : "local";
|
|
868
|
+
}
|
|
869
|
+
function resolveAbsoluteMediaStartSeconds(input) {
|
|
870
|
+
return readMediaStartBasis(input.basis) === "global" ? input.authoredStart : input.hostStart + input.authoredStart;
|
|
871
|
+
}
|
|
872
|
+
function resolveMediaStartSeconds(input) {
|
|
873
|
+
if (!hasLiteralNestedStart(input)) return input.ordinaryStart();
|
|
874
|
+
return resolveAbsoluteMediaStartSeconds({
|
|
875
|
+
authoredStart: input.authoredStart,
|
|
876
|
+
hostStart: input.hostStart,
|
|
877
|
+
basis: input.basis
|
|
878
|
+
});
|
|
879
|
+
}
|
|
880
|
+
function isRootGlobalMediaStart(input) {
|
|
881
|
+
return hasLiteralNestedStart(input) && readMediaStartBasis(input.basis) === "global";
|
|
882
|
+
}
|
|
883
|
+
function hasLiteralNestedStart(input) {
|
|
884
|
+
return !input.hasAutoStart && input.authoredStart != null && input.hostStart !== 0;
|
|
885
|
+
}
|
|
886
|
+
function hostInPointSeconds(host) {
|
|
887
|
+
return readMediaOffsetSeconds((name) => host.getAttribute(name));
|
|
888
|
+
}
|
|
889
|
+
function compositionOriginSeconds(hostStart, host) {
|
|
890
|
+
return hostStart - hostInPointSeconds(host);
|
|
891
|
+
}
|
|
892
|
+
function cutToHostSlots(span, hosts) {
|
|
893
|
+
return hosts.reduce((kept, host) => {
|
|
894
|
+
const start = Math.max(kept.start, host.start);
|
|
895
|
+
return { start, end: Math.max(start, Math.min(kept.end, host.end)) };
|
|
896
|
+
}, span);
|
|
897
|
+
}
|
|
898
|
+
|
|
833
899
|
// ../parsers/dist/timeSpans.js
|
|
834
900
|
var instantTolerance = (time) => 4 * Number.EPSILON * Math.max(1, Math.abs(time));
|
|
835
901
|
function sameInstant(a, b) {
|
|
@@ -875,6 +941,14 @@ export {
|
|
|
875
941
|
COLOR_GRADING_LUT_KEYS,
|
|
876
942
|
isColorGradingVariableRef,
|
|
877
943
|
validateColorGradingContract,
|
|
944
|
+
MEDIA_START_BASIS_ATTR,
|
|
945
|
+
readMediaStartBasis,
|
|
946
|
+
resolveAbsoluteMediaStartSeconds,
|
|
947
|
+
resolveMediaStartSeconds,
|
|
948
|
+
isRootGlobalMediaStart,
|
|
949
|
+
hostInPointSeconds,
|
|
950
|
+
compositionOriginSeconds,
|
|
951
|
+
cutToHostSlots,
|
|
878
952
|
sameInstant,
|
|
879
953
|
spansOverlap,
|
|
880
954
|
spansShareTime,
|