hyperframes 0.8.142 → 0.8.144
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-YS2RCWEK.js → add-CWRTVGDB.js} +18 -17
- package/dist/{animatedGifPrep-SAMCDT7T.js → animatedGifPrep-JTOHIWI4.js} +15 -14
- package/dist/{asset-BLWC2NWB.js → asset-KU2Z4UFM.js} +4 -4
- package/dist/{assetCataloger-FVNBBRP3.js → assetCataloger-3CS2P7PA.js} +8 -7
- package/dist/{auth-DRZB7OAC.js → auth-IDSOIQWG.js} +1 -1
- package/dist/{autoUpdate-I5I3BOJK.js → autoUpdate-373B4BA2.js} +2 -2
- package/dist/{backgroundChecks-VR2QHGNY.js → backgroundChecks-53Q3NAMG.js} +3 -3
- package/dist/backgroundChecksWorker.js +3 -3
- package/dist/{batchRender-4YUHQI6X.js → batchRender-UKZA6BME.js} +11 -10
- package/dist/{beats-7OT7ALV3.js → beats-N5JGEOFR.js} +33 -28
- package/dist/{benchmark-Q2XQCRTR.js → benchmark-CUN3LN4V.js} +15 -14
- package/dist/{browser-7VAWQQZC.js → browser-NCZT5AP6.js} +40 -56
- package/dist/{bundleWithLocalizedFonts-DDMLLL2R.js → bundleWithLocalizedFonts-FWC7PE2D.js} +2 -2
- package/dist/{capture-HEJS6M5A.js → capture-QBLG3VJR.js} +26 -25
- package/dist/{capture-U7ABPKS5.js → capture-YLS32UHT.js} +2 -2
- package/dist/{catalog-DVJ3XPDN.js → catalog-HIWNAFHW.js} +19 -18
- package/dist/{catch-up-DF6AVSN2.js → catch-up-HGS7KIAC.js} +5 -5
- package/dist/{check-KXORRWAE.js → check-FH6UYYLO.js} +78 -66
- package/dist/{checkBrowser-J7HZJTRH.js → checkBrowser-RNWNOMCZ.js} +93 -41
- package/dist/{chunk-R2JEKLDZ.js → chunk-2DA2BBNY.js} +3 -3
- package/dist/{chunk-TQFG7HTI.js → chunk-3RM2ETQT.js} +0 -168
- package/dist/{chunk-YFT3BL7N.js → chunk-3VYNNWVA.js} +30 -12
- package/dist/{chunk-7FCDA4RH.js → chunk-3XTEXWNN.js} +8 -5
- package/dist/{chunk-PFCFR3KZ.js → chunk-442JNXRM.js} +1 -1
- package/dist/{chunk-BPZVDBHY.js → chunk-4LAR447G.js} +1 -1
- package/dist/{chunk-AM5L5YIA.js → chunk-4OA4LDTU.js} +1 -1
- package/dist/{chunk-DZEVA7DI.js → chunk-4OC7MQNB.js} +2 -2
- package/dist/{chunk-75JJVANE.js → chunk-54QISXOC.js} +3 -3
- package/dist/{chunk-FZK35GT4.js → chunk-5HJ343GH.js} +1 -1
- package/dist/{chunk-IDX52YJN.js → chunk-5VMR4WBS.js} +458 -159
- package/dist/{chunk-OSUKETIH.js → chunk-5WADG7PR.js} +1 -1
- package/dist/{chunk-JYYOAKHS.js → chunk-6IIGT7BX.js} +1 -1
- package/dist/{chunk-6UYZB4TY.js → chunk-7RAYSCYT.js} +4 -4
- package/dist/{chunk-WTMUCJ6Z.js → chunk-7SDCIWHQ.js} +11 -2
- package/dist/{chunk-LAOCA3MQ.js → chunk-A4Q7W4LV.js} +13 -8
- package/dist/{chunk-B6SMSALD.js → chunk-A53CBD24.js} +18 -12
- package/dist/{chunk-4PFZPP2N.js → chunk-A6S35NYA.js} +54 -16
- package/dist/{chunk-JOTLPC6S.js → chunk-AUBOF2PN.js} +1 -1
- package/dist/{chunk-WCJGTLPF.js → chunk-BHVFTYSI.js} +6 -3
- package/dist/chunk-BSQ7XANM.js +210 -0
- package/dist/{chunk-LCSMOLGX.js → chunk-BYSBRF24.js} +69 -8
- package/dist/{chunk-U7E736AJ.js → chunk-DDIVWXN7.js} +32 -14
- package/dist/{chunk-KOEWEFHK.js → chunk-DIRJ322I.js} +10 -5
- package/dist/{chunk-HMUF7FEO.js → chunk-EX6C672Y.js} +2 -2
- package/dist/{chunk-QGRFOOLE.js → chunk-F2SMS24Q.js} +288 -85
- package/dist/{chunk-5Z63TBTX.js → chunk-FH7WODJH.js} +1 -1
- package/dist/{chunk-XTLBLWOV.js → chunk-GEWKFRFI.js} +1 -1
- package/dist/{chunk-RVCWIIZ7.js → chunk-GV5R5B7Q.js} +1 -1
- package/dist/{chunk-TY6XOHEM.js → chunk-GZM2EFOE.js} +3 -3
- package/dist/chunk-GZVP4TWN.js +76 -0
- package/dist/{chunk-QXPCARFE.js → chunk-I5KY7EZP.js} +1 -1
- package/dist/{chunk-IW2CKH6A.js → chunk-IEIJRMLZ.js} +94 -59
- package/dist/chunk-IR35BCLK.js +13 -0
- package/dist/{chunk-JFKL3WAE.js → chunk-IWFLMU2N.js} +104 -19
- package/dist/{chunk-EFDXGAAD.js → chunk-JEHFZQYT.js} +1 -1
- package/dist/{chunk-IHFUKJOR.js → chunk-K2FLNJVB.js} +8 -2
- package/dist/{chunk-KDPYVTEU.js → chunk-KBB4RG6F.js} +6 -1
- package/dist/{chunk-LJAU4TPS.js → chunk-KFKZ3ISO.js} +2 -2
- package/dist/{sherpa-ZYTNFHD5.js → chunk-L5TUCXWR.js} +11 -44
- package/dist/{chunk-KYN364DU.js → chunk-LC3RQURJ.js} +7 -9
- package/dist/{chunk-IMY4QQTQ.js → chunk-LFX2HEYP.js} +8 -8
- package/dist/{chunk-PXSM4HPB.js → chunk-MAYCCGMQ.js} +12 -3
- package/dist/{chunk-OZUQF4NB.js → chunk-MQZVBHEY.js} +123 -8
- package/dist/{chunk-FWRNQOLT.js → chunk-MXNDKDFT.js} +3 -3
- package/dist/{chunk-A4KQZXZI.js → chunk-NE55C6S5.js} +4 -2
- package/dist/{chunk-GYE63V4P.js → chunk-NOPBBSLA.js} +24 -19
- package/dist/{chunk-H2X52H2N.js → chunk-NV4RXIQ7.js} +3 -3
- package/dist/{chunk-WGVOWWVK.js → chunk-OIDN7G42.js} +3 -3
- package/dist/{chunk-DPHJKWP5.js → chunk-OUSLVRO4.js} +107 -108
- package/dist/{chunk-JLKMWY2T.js → chunk-P6WH6QTV.js} +8 -5
- package/dist/{chunk-7M4KAPAA.js → chunk-PUGIRFPX.js} +2 -2
- package/dist/{chunk-6RAD4BCC.js → chunk-QATWIE4K.js} +2 -2
- package/dist/{chunk-D2KNWIQ6.js → chunk-QFSCCQIR.js} +1 -1
- package/dist/{chunk-XGMNQQTJ.js → chunk-RG3QWWIE.js} +1 -1
- package/dist/{chunk-MVTUV4TP.js → chunk-RI53TS2Y.js} +14 -6
- package/dist/{chunk-LQASVU3I.js → chunk-RVFEDAUV.js} +12 -4
- package/dist/{chunk-GK4AIFIH.js → chunk-SDYDNHEE.js} +34 -3
- package/dist/{chunk-WSGY5CDQ.js → chunk-SLCFKB3Y.js} +14 -10
- package/dist/{chunk-2NCHQUPX.js → chunk-SQLK7SJL.js} +1 -1
- package/dist/{chunk-PMRBLBUP.js → chunk-T42U2W2R.js} +14 -2
- package/dist/chunk-UPFUC4DB.js +136 -0
- package/dist/{chunk-IXCTG2WY.js → chunk-VYSUZEJG.js} +5 -5
- package/dist/chunk-WJB7WI4J.js +3753 -0
- package/dist/{chunk-YEIFI443.js → chunk-WPNE5NEP.js} +1 -1
- package/dist/{chunk-YHRZQJXH.js → chunk-XGFHYAYN.js} +265 -68
- package/dist/{chunk-LBKDQKWV.js → chunk-XU5GGV6R.js} +1 -1
- package/dist/{chunk-LTGGTEMA.js → chunk-Y6UPYWJS.js} +2 -2
- package/dist/{chunk-OKCR3JTO.js → chunk-YJXHMIZA.js} +13 -10
- package/dist/{chunk-JU6Y5TTZ.js → chunk-YUAXFWSQ.js} +3 -3
- package/dist/{chunk-TVCRUG2S.js → chunk-ZEUONDQG.js} +1 -1
- package/dist/{chunk-THXFSPLV.js → chunk-ZIRIDSDB.js} +1 -1
- package/dist/{chunk-6UM3R7PP.js → chunk-ZOA2SC4P.js} +129 -60
- package/dist/{clean-KTHTV5G5.js → clean-KPX27IKJ.js} +27 -26
- package/dist/cli.js +70 -160
- package/dist/{cloud-ARSZWALC.js → cloud-P7DAOISN.js} +4 -4
- package/dist/{cloudrun-NM7RXOCL.js → cloudrun-XM56TBOH.js} +13 -12
- package/dist/commands/contrast-audit.browser.js +60 -4
- package/dist/commands/layout-audit.browser.js +68 -0
- package/dist/{compare-CY4UO3RW.js → compare-F6YAFZZM.js} +37 -36
- package/dist/{compiler-VTH2D3ID.js → compiler-JZ4GNFMG.js} +16 -10
- package/dist/{component-FRUIAXIR.js → component-3CFOGIQA.js} +5 -5
- package/dist/{compositions-CUSY6ZYY.js → compositions-CPCMWF24.js} +38 -33
- package/dist/{delete-KT3VHP4L.js → delete-GYVKOKB6.js} +4 -4
- package/dist/{deterministicFonts-F6WIVL2W.js → deterministicFonts-U2BIMGPG.js} +3 -3
- package/dist/{dist-7SZU7MA7.js → dist-KDJTFJHA.js} +7 -6
- package/dist/{dist-2GC6XKRQ.js → dist-YPWQDWJ4.js} +42 -40
- package/dist/{doctor-4ROTBL5U.js → doctor-GWI3B6JT.js} +21 -20
- package/dist/{dom-IROKGVJI.js → dom-37K6YOH4.js} +2 -2
- package/dist/{events-QJDVMKSR.js → events-BRRUDPPT.js} +3 -3
- package/dist/{events-Q5PXT5UC.js → events-V2QFN4YM.js} +2 -2
- package/dist/{feedback-PQ7TWESA.js → feedback-CXMD7FWL.js} +14 -13
- package/dist/{ffmpeg-QIUFEFTY.js → ffmpeg-T5SH2EFJ.js} +3 -2
- package/dist/{figma-JN5DDBDS.js → figma-YABDWD66.js} +3 -3
- package/dist/fontLocalizeCli.js +18 -17
- package/dist/{get-KT6OTERO.js → get-L2SOQKHX.js} +4 -4
- package/dist/{gpuPolicy-LCBWVGEH.js → gpuPolicy-NBJNWHYS.js} +19 -16
- package/dist/{grade-compare-VS3RP73G.js → grade-compare-STXQPKYQ.js} +39 -38
- package/dist/{help-AD6FIZIO.js → help-4H6BSFLB.js} +2 -2
- package/dist/{history-ZRWYRY7R.js → history-4IQOLTHJ.js} +6 -6
- package/dist/hyperframe-runtime.js +56 -56
- package/dist/hyperframe.manifest.json +1 -1
- package/dist/hyperframe.runtime.iife.js +56 -56
- package/dist/hyperframes-player.global.js +3 -3
- package/dist/hyperframes-slideshow.global.js +23 -23
- package/dist/{info-WBBQA2AX.js → info-2CZOTNBC.js} +17 -16
- package/dist/{init-A2XBDFGF.js → init-6BXK42VS.js} +46 -46
- package/dist/{inspect-CLTZHA5O.js → inspect-VKU47TBH.js} +38 -37
- package/dist/{installer-WQDRVXH4.js → installer-T2BSSUDY.js} +11 -10
- package/dist/{keyframes-3FYOK6H6.js → keyframes-IEYVHRPI.js} +10 -10
- package/dist/{lambda-Y2PA2BGS.js → lambda-TIKG25CK.js} +12 -11
- package/dist/{layout-4KP5O7IJ.js → layout-XOI4PT7A.js} +38 -37
- package/dist/{lint-V4GRFHOJ.js → lint-DWCMVIX5.js} +14 -13
- package/dist/{lintProject-RG2KGAXB.js → lintProject-UBZ3TDHU.js} +7 -6
- package/dist/{list-OQ4VED6E.js → list-7GXKG5QM.js} +5 -5
- package/dist/{login-W47NKN5S.js → login-BQ5L2UHX.js} +4 -4
- package/dist/{manager-CT3D67CG.js → manager-BPSR6D3V.js} +2 -2
- package/dist/{manager-524RPYO7.js → manager-RFZNG5YT.js} +2 -2
- package/dist/{manager-DXB7JDHU.js → manager-YKMHR6LN.js} +9 -6
- package/dist/{media-treatment-HJYL3EME.js → media-treatment-IFB7OSZ3.js} +24 -22
- package/dist/{models-DYBAD2GQ.js → models-TY4PJ545.js} +68 -27
- package/dist/{motionShot-7NE2YBB3.js → motionShot-WXMFHICW.js} +33 -33
- package/dist/{normalize-IGLHCWTF.js → normalize-U3SL5VG3.js} +19 -8
- package/dist/{normalize-audio-INKCLMS2.js → normalize-audio-RFD776HQ.js} +10 -6
- package/dist/{open-TYC5THVY.js → open-7IXXGO2E.js} +5 -5
- package/dist/parakeetRunner-IHLYYMTZ.js +67 -0
- package/dist/{pipeline-EVKEPQEW.js → pipeline-TXKPLL2U.js} +20 -18
- package/dist/{play-QMZEM6X3.js → play-J2KP64UK.js} +31 -29
- package/dist/{preflight-Y5DN5D37.js → preflight-B4AFK3RG.js} +4 -4
- package/dist/{present-Y7IK3C4W.js → present-MHHNRVRA.js} +26 -25
- package/dist/{preview-5OQRYE6A.js → preview-CONUOFFQ.js} +28 -27
- package/dist/{producer-Q6G6JU7B.js → producer-ZI46K7HH.js} +1 -1
- package/dist/{projectConfig-RJN3DKDB.js → projectConfig-FGGVG5MV.js} +13 -12
- package/dist/{publication-QCPGGN3U.js → publication-TXFBMW6B.js} +8 -7
- package/dist/{publish-VZLFIGYY.js → publish-YZSPBFRD.js} +18 -17
- package/dist/{remove-background-TKOEHBA5.js → remove-background-4ATVLHLG.js} +22 -20
- package/dist/{render-KIIIF6PS.js → render-6FBYLYGJ.js} +20 -19
- package/dist/{render-XTXE5CRU.js → render-GFW5BPES.js} +13 -12
- package/dist/{render-X3NFNVEQ.js → render-MH4IUPWB.js} +41 -40
- package/dist/{render-batch-M55YZLZ5.js → render-batch-XUCZ2PUJ.js} +13 -12
- package/dist/{renderCancellation-X5BEHAZU.js → renderCancellation-XF7M7IUP.js} +18 -16
- package/dist/renderSetupWorker.js +37 -48
- package/dist/{resolver-GAMXRA42.js → resolver-W7AYCQGS.js} +10 -9
- package/dist/sherpa-LDUB5NLY.js +75 -0
- package/dist/sherpaWorker.js +2 -1
- package/dist/skills/hyperframes-cli/references/doctor-browser.md +24 -1
- package/dist/skills/hyperframes-cli/references/lint-validate-inspect.md +1 -1
- package/dist/skills/media-use/scripts/lib/cache.mjs +28 -14
- package/dist/skills/media-use/scripts/lib/cache.test.mjs +110 -0
- package/dist/skills/media-use/scripts/lib/duck.mjs +2 -1
- package/dist/skills/media-use/scripts/lib/duck.test.mjs +87 -0
- package/dist/skills/media-use/scripts/lib/probe.mjs +6 -1
- package/dist/skills/media-use/scripts/lib/probe.test.mjs +73 -0
- package/dist/skills/media-use/scripts/lib/words.mjs +1 -1
- package/dist/{skills-CZHVAD3J.js → skills-VENERS5X.js} +7 -7
- package/dist/{skillsUpdateCheck-6WLLX53A.js → skillsUpdateCheck-UXFYTACG.js} +3 -3
- package/dist/{slideshow-EJ4IMY6P.js → slideshow-4OJEPWNZ.js} +1 -1
- package/dist/{snapshot-K7BTJPYQ.js → snapshot-C6T74HTI.js} +44 -40
- package/dist/{src-YUW26JU5.js → src-FS5RSVEI.js} +17 -16
- package/dist/{src-3I3RH3V5.js → src-VUJ2FUFK.js} +18 -13
- package/dist/{staticProjectServer-IKCSGN2B.js → staticProjectServer-V2RZ4DWD.js} +23 -22
- package/dist/studio/assets/hyperframes-player-Bw_jIaSX.js +473 -0
- package/dist/studio/assets/{index-B-wffzRH.js → index-BVM9NuWl.js} +153 -153
- package/dist/studio/assets/{index-D3Vij9t1.js → index-Cj7W_c7p.js} +1 -1
- package/dist/studio/assets/{index-D5q2_7Gw.js → index-DyH9dT7b.js} +1 -1
- package/dist/studio/{chunk-TFLU2MGI.js → chunk-3GHTHPZD.js} +8 -1
- package/dist/studio/chunk-3GHTHPZD.js.map +1 -0
- package/dist/studio/{chunk-H2DUOXTF.js → chunk-G3EDKRZH.js} +3 -3
- package/dist/studio/{chunk-UYWON5AX.js → chunk-PEAKCOUW.js} +7 -3
- package/dist/studio/chunk-PEAKCOUW.js.map +1 -0
- package/dist/studio/{chunk-LOVBLSMR.js → chunk-Y2OHHNM2.js} +35 -19
- package/dist/studio/chunk-Y2OHHNM2.js.map +1 -0
- package/dist/studio/{domEditingLayers-KBTPQKGA.js → domEditingLayers-PYST4G45.js} +3 -3
- package/dist/studio/index.html +1 -1
- package/dist/studio/index.js +261 -230
- package/dist/studio/index.js.map +1 -1
- package/dist/studio/player.js +3 -3
- package/dist/studio/ui.d.ts +4 -5
- package/dist/studio/ui.js +1 -1
- package/dist/{studio-api-SQ3NXFSM.js → studio-api-TQE7KWKO.js} +22 -17
- package/dist/{studioServer-VVEO7XCH.js → studioServer-CYKSQK7L.js} +81 -64
- package/dist/{synthesize-77PTU6C5.js → synthesize-UCI4X5O7.js} +6 -6
- package/dist/{telemetry-FQDKR5XA.js → telemetry-A23PPRD6.js} +3 -3
- package/dist/{timeline-N6ZASFNE.js → timeline-T3QSGT3A.js} +143 -99
- package/dist/{tokens-2OIIBBCW.js → tokens-RT5HWA6C.js} +4 -4
- package/dist/{transcribe-7YTUCXDX.js → transcribe-FOLNOC5G.js} +116 -52
- package/dist/{transcribe-4F6MK73N.js → transcribe-HCF64LQK.js} +23 -20
- package/dist/{tts-TOHSPWEG.js → tts-B6AHFQEO.js} +6 -6
- package/dist/{updateCheck-AZ2COZFR.js → updateCheck-27PIP3AA.js} +2 -2
- package/dist/{upgrade-QAJEYB4X.js → upgrade-TVGXBUPJ.js} +2 -2
- package/dist/{urlDownloader-LSMFEO3R.js → urlDownloader-KBLBJKRL.js} +14 -13
- package/dist/{validate-GW5MDL36.js → validate-ZMYGK4QI.js} +40 -27
- package/dist/{video-PRNOKUK3.js → video-AVE5GIGM.js} +15 -14
- package/package.json +1 -1
- package/dist/chunk-J4UX3RS3.js +0 -3717
- package/dist/studio/assets/hyperframes-player-sAsRuV73.js +0 -473
- package/dist/studio/chunk-LOVBLSMR.js.map +0 -1
- package/dist/studio/chunk-TFLU2MGI.js.map +0 -1
- package/dist/studio/chunk-UYWON5AX.js.map +0 -1
- package/dist/{chunk-HBBJFK6I.js → chunk-APDLWWFG.js} +0 -0
- package/dist/{screenshotCapture-TEUIWXWN.js → screenshotCapture-3JXXUZND.js} +3 -3
- /package/dist/studio/{chunk-H2DUOXTF.js.map → chunk-G3EDKRZH.js.map} +0 -0
- /package/dist/studio/{domEditingLayers-KBTPQKGA.js.map → domEditingLayers-PYST4G45.js.map} +0 -0
|
@@ -53,8 +53,14 @@ function formatRenderPipelineDetail(input) {
|
|
|
53
53
|
return parts.length > 0 ? parts.join(" \xB7 ") : void 0;
|
|
54
54
|
}
|
|
55
55
|
function formatScreenshotFallbackHint(input) {
|
|
56
|
-
if (input.platform !== "linux" || input.requestedGpuMode !== "auto"
|
|
57
|
-
|
|
56
|
+
if (input.platform !== "linux" || input.requestedGpuMode !== "auto" && input.requestedGpuMode !== "hardware") {
|
|
57
|
+
return void 0;
|
|
58
|
+
}
|
|
59
|
+
if (input.captureMode !== "screenshot") return void 0;
|
|
60
|
+
if (input.browserGpuMode === "hardware") {
|
|
61
|
+
return "Screenshot capture (slower): BeginFrame did not run. Needs chrome-headless-shell and no --resolution upscale. A BeginFrame probe timeout can occur when browsers start together on one GPU; fewer --workers may help.";
|
|
62
|
+
}
|
|
63
|
+
if (input.browserGpuMode !== "software" || input.requestedGpuMode !== "auto") return void 0;
|
|
58
64
|
return "Screenshot capture (slower): BeginFrame did not run. Needs chrome-headless-shell and no --resolution upscale. Heavy compositions can stall on software GL.";
|
|
59
65
|
}
|
|
60
66
|
function label(name, value) {
|
|
@@ -4,6 +4,9 @@ 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
|
+
TRANSCRIPT_FILE
|
|
9
|
+
} from "./chunk-IR35BCLK.js";
|
|
7
10
|
|
|
8
11
|
// src/whisper/parakeet.ts
|
|
9
12
|
import { execFileSync } from "child_process";
|
|
@@ -11,6 +14,7 @@ import { existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync
|
|
|
11
14
|
import { homedir, tmpdir } from "os";
|
|
12
15
|
import { basename, extname, join } from "path";
|
|
13
16
|
var PARAKEET_MODEL_LABEL = "parakeet-tdt-0.6b-v3";
|
|
17
|
+
var PARAKEET_INSTALL_COMMAND = "hyperframes models install parakeet";
|
|
14
18
|
var SHERPA_RESULT_PREFIX = "HYPERFRAMES_PARAKEET_RESULT:";
|
|
15
19
|
var SHERPA_ERROR_PREFIX = "HYPERFRAMES_PARAKEET_ERROR:";
|
|
16
20
|
var SHERPA_WINDOW_PREFIX = "HYPERFRAMES_PARAKEET_WINDOW:";
|
|
@@ -204,7 +208,7 @@ function transcribeWithParakeet(inputPath, dir, options) {
|
|
|
204
208
|
}
|
|
205
209
|
function writeParakeetTranscript(dir, words) {
|
|
206
210
|
mkdirSync(dir, { recursive: true });
|
|
207
|
-
const transcriptPath = join(dir,
|
|
211
|
+
const transcriptPath = join(dir, TRANSCRIPT_FILE);
|
|
208
212
|
writeFileSync(transcriptPath, JSON.stringify(words, null, 2));
|
|
209
213
|
const durationSeconds = words.length > 0 ? words[words.length - 1].end : 0;
|
|
210
214
|
return {
|
|
@@ -219,6 +223,7 @@ function writeParakeetTranscript(dir, words) {
|
|
|
219
223
|
|
|
220
224
|
export {
|
|
221
225
|
PARAKEET_MODEL_LABEL,
|
|
226
|
+
PARAKEET_INSTALL_COMMAND,
|
|
222
227
|
SHERPA_RESULT_PREFIX,
|
|
223
228
|
SHERPA_ERROR_PREFIX,
|
|
224
229
|
SHERPA_WINDOW_PREFIX,
|
|
@@ -6,10 +6,10 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
errorBox
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-K2FLNJVB.js";
|
|
10
10
|
import {
|
|
11
11
|
trackCommandFailure
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-RG3QWWIE.js";
|
|
13
13
|
import {
|
|
14
14
|
failCommand
|
|
15
15
|
} from "./chunk-PBN6GBJE.js";
|
|
@@ -17,47 +17,16 @@ import {
|
|
|
17
17
|
runNpm,
|
|
18
18
|
sweepStaleStaging
|
|
19
19
|
} from "./chunk-3DKN5WKL.js";
|
|
20
|
-
import "./chunk-EOVYQ3IG.js";
|
|
21
20
|
import {
|
|
22
21
|
getPreparedWavDurationSeconds,
|
|
23
22
|
prepareWav
|
|
24
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-3XTEXWNN.js";
|
|
25
24
|
import {
|
|
26
25
|
emitWords
|
|
27
26
|
} from "./chunk-6IHWCZ3W.js";
|
|
28
27
|
import {
|
|
29
28
|
stoppedByCancelSignal
|
|
30
|
-
} from "./chunk-
|
|
31
|
-
import "./chunk-6BEFEWFB.js";
|
|
32
|
-
import "./chunk-PXSM4HPB.js";
|
|
33
|
-
import "./chunk-WCJGTLPF.js";
|
|
34
|
-
import "./chunk-TVCRUG2S.js";
|
|
35
|
-
import "./chunk-AMKC3AXA.js";
|
|
36
|
-
import "./chunk-IDX52YJN.js";
|
|
37
|
-
import "./chunk-DPHJKWP5.js";
|
|
38
|
-
import "./chunk-A4KQZXZI.js";
|
|
39
|
-
import "./chunk-USDEMXXL.js";
|
|
40
|
-
import "./chunk-YFT3BL7N.js";
|
|
41
|
-
import "./chunk-OZUQF4NB.js";
|
|
42
|
-
import "./chunk-DPVXBVLL.js";
|
|
43
|
-
import "./chunk-J4UX3RS3.js";
|
|
44
|
-
import "./chunk-VC76R6W2.js";
|
|
45
|
-
import "./chunk-YA62XGXS.js";
|
|
46
|
-
import "./chunk-OFQWTKPW.js";
|
|
47
|
-
import "./chunk-T76PLPD6.js";
|
|
48
|
-
import "./chunk-FXMKHHPO.js";
|
|
49
|
-
import "./chunk-RQVDTPGD.js";
|
|
50
|
-
import "./chunk-LAOCA3MQ.js";
|
|
51
|
-
import "./chunk-LCSMOLGX.js";
|
|
52
|
-
import "./chunk-TWWSYAKJ.js";
|
|
53
|
-
import "./chunk-IW2CKH6A.js";
|
|
54
|
-
import "./chunk-JFKL3WAE.js";
|
|
55
|
-
import "./chunk-HBBJFK6I.js";
|
|
56
|
-
import "./chunk-PJ3HDUCY.js";
|
|
57
|
-
import "./chunk-TQFG7HTI.js";
|
|
58
|
-
import "./chunk-GK4AIFIH.js";
|
|
59
|
-
import "./chunk-2PSPARWP.js";
|
|
60
|
-
import "./chunk-PMRBLBUP.js";
|
|
29
|
+
} from "./chunk-MXNDKDFT.js";
|
|
61
30
|
import {
|
|
62
31
|
PARAKEET_MODEL_LABEL,
|
|
63
32
|
SHERPA_ERROR_PREFIX,
|
|
@@ -65,10 +34,7 @@ import {
|
|
|
65
34
|
SHERPA_WINDOW_PREFIX,
|
|
66
35
|
mergeWindowsToWords,
|
|
67
36
|
writeParakeetTranscript
|
|
68
|
-
} from "./chunk-
|
|
69
|
-
import "./chunk-UOFAE5RF.js";
|
|
70
|
-
import "./chunk-3GXQPCJC.js";
|
|
71
|
-
import "./chunk-M2WBOQ2Q.js";
|
|
37
|
+
} from "./chunk-KBB4RG6F.js";
|
|
72
38
|
|
|
73
39
|
// src/whisper/sherpa.ts
|
|
74
40
|
import { execFile, spawn } from "child_process";
|
|
@@ -413,16 +379,17 @@ async function transcribeWithSherpa(wavPath, dir, options) {
|
|
|
413
379
|
});
|
|
414
380
|
return result;
|
|
415
381
|
}
|
|
382
|
+
|
|
416
383
|
export {
|
|
417
|
-
DecodeCancelled,
|
|
418
|
-
PARAKEET_MODEL_DIR,
|
|
419
384
|
SHERPA_RUNTIME_DIR,
|
|
420
|
-
|
|
385
|
+
PARAKEET_MODEL_DIR,
|
|
386
|
+
sherpaUnsupportedReason,
|
|
387
|
+
sherpaRuntimeLoadError,
|
|
388
|
+
sherpaPlatformPackage,
|
|
421
389
|
installSherpaRuntime,
|
|
422
|
-
prepareSherpaWav,
|
|
423
390
|
sherpaParakeetInstalled,
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
391
|
+
ensureParakeetModel,
|
|
392
|
+
DecodeCancelled,
|
|
393
|
+
prepareSherpaWav,
|
|
427
394
|
transcribeWithSherpa
|
|
428
395
|
};
|
|
@@ -10,16 +10,17 @@ import {
|
|
|
10
10
|
import {
|
|
11
11
|
ensureModel,
|
|
12
12
|
selectProviders
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-SQLK7SJL.js";
|
|
14
14
|
import {
|
|
15
15
|
findFFmpeg,
|
|
16
16
|
findFFprobe,
|
|
17
17
|
getFFmpegInstallHint
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-ZEUONDQG.js";
|
|
19
19
|
import {
|
|
20
20
|
DEFAULT_VP9_CPU_USED,
|
|
21
|
+
SDR_RGB_TO_BT709_FILTER,
|
|
21
22
|
renderProvenanceArgs
|
|
22
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-5VMR4WBS.js";
|
|
23
24
|
|
|
24
25
|
// src/background-removal/pipeline.ts
|
|
25
26
|
import { spawn } from "child_process";
|
|
@@ -202,7 +203,7 @@ function inferInputKind(inputPath) {
|
|
|
202
203
|
}
|
|
203
204
|
async function probeMedia(inputPath) {
|
|
204
205
|
const isImage = inferInputKind(inputPath) === "image";
|
|
205
|
-
const engine = await import("./src-
|
|
206
|
+
const engine = await import("./src-VUJ2FUFK.js");
|
|
206
207
|
const meta = await engine.extractMediaMetadata(inputPath);
|
|
207
208
|
if (isImage) {
|
|
208
209
|
return { width: meta.width, height: meta.height, fps: 0, frameCount: 1 };
|
|
@@ -228,6 +229,8 @@ function buildEncoderArgs(format, width, height, fps, outputPath, quality = DEFA
|
|
|
228
229
|
if (format === "webm") {
|
|
229
230
|
return [
|
|
230
231
|
...base,
|
|
232
|
+
"-vf",
|
|
233
|
+
SDR_RGB_TO_BT709_FILTER,
|
|
231
234
|
"-c:v",
|
|
232
235
|
"libvpx-vp9",
|
|
233
236
|
"-b:v",
|
|
@@ -244,11 +247,6 @@ function buildEncoderArgs(format, width, height, fps, outputPath, quality = DEFA
|
|
|
244
247
|
"0",
|
|
245
248
|
"-pix_fmt",
|
|
246
249
|
"yuva420p",
|
|
247
|
-
// Tag the output as BT.709 limited range so browsers use the same
|
|
248
|
-
// YUV→RGB matrix the source video was encoded with. Without these tags
|
|
249
|
-
// ffmpeg's default RGB→YUV conversion is BT.601, which causes a visible
|
|
250
|
-
// color shift (red/skin tones in particular) when the matted overlay is
|
|
251
|
-
// composited over the original mp4.
|
|
252
250
|
"-colorspace",
|
|
253
251
|
"bt709",
|
|
254
252
|
"-color_primaries",
|
|
@@ -7,29 +7,29 @@ var __dirname = __hf_dirname(__filename);
|
|
|
7
7
|
import {
|
|
8
8
|
RegistryCompatibilityError,
|
|
9
9
|
gateRegistryItemsCompatibility
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-4LAR447G.js";
|
|
11
11
|
import {
|
|
12
12
|
DEFAULT_PROJECT_CONFIG,
|
|
13
13
|
createProjectConfig,
|
|
14
14
|
loadProjectConfig,
|
|
15
15
|
projectConfigPath,
|
|
16
16
|
recordProjectRegistryItems
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-JEHFZQYT.js";
|
|
18
18
|
import {
|
|
19
19
|
resolveItemWithDependencies,
|
|
20
20
|
resolveItemsByTag
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-AUBOF2PN.js";
|
|
22
22
|
import {
|
|
23
23
|
InvalidVariableValuesError,
|
|
24
24
|
prepareItem,
|
|
25
25
|
publishItem
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-54QISXOC.js";
|
|
27
27
|
import {
|
|
28
28
|
DEFAULT_REGISTRY_URL
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-I5KY7EZP.js";
|
|
30
30
|
import {
|
|
31
31
|
trackRegistryItemAdded
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-RG3QWWIE.js";
|
|
33
33
|
import {
|
|
34
34
|
defineCommand
|
|
35
35
|
} from "./chunk-S3S4TGEH.js";
|
|
@@ -38,14 +38,14 @@ import {
|
|
|
38
38
|
} from "./chunk-PBN6GBJE.js";
|
|
39
39
|
import {
|
|
40
40
|
ITEM_TYPE_DIRS
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-3VYNNWVA.js";
|
|
42
42
|
import {
|
|
43
43
|
isProjectRootMissing,
|
|
44
44
|
realpath
|
|
45
45
|
} from "./chunk-OFQWTKPW.js";
|
|
46
46
|
import {
|
|
47
47
|
parseHTML
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-SDYDNHEE.js";
|
|
49
49
|
import {
|
|
50
50
|
c
|
|
51
51
|
} from "./chunk-ZTZA4UWZ.js";
|
|
@@ -6,14 +6,14 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
downloadFile
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-BHVFTYSI.js";
|
|
10
10
|
import {
|
|
11
11
|
findFFmpeg
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-ZEUONDQG.js";
|
|
13
13
|
|
|
14
14
|
// src/whisper/manager.ts
|
|
15
15
|
import { execFileSync } from "child_process";
|
|
16
|
-
import { existsSync, mkdirSync, rmSync } from "fs";
|
|
16
|
+
import { existsSync, mkdirSync, readdirSync, rmSync } from "fs";
|
|
17
17
|
import { homedir, platform } from "os";
|
|
18
18
|
import { join } from "path";
|
|
19
19
|
var MODELS_DIR = join(homedir(), ".cache", "hyperframes", "whisper", "models");
|
|
@@ -120,6 +120,14 @@ ${stderr.slice(-500)}`;
|
|
|
120
120
|
function findWhisper() {
|
|
121
121
|
return findFromEnv() ?? findFromSystem() ?? findBuiltBinary();
|
|
122
122
|
}
|
|
123
|
+
function listWhisperModels() {
|
|
124
|
+
if (!existsSync(MODELS_DIR)) return [];
|
|
125
|
+
return readdirSync(MODELS_DIR).flatMap((file) => {
|
|
126
|
+
const model = /^ggml-(.+)\.bin$/.exec(file)?.[1];
|
|
127
|
+
const path = join(MODELS_DIR, file);
|
|
128
|
+
return model && existsSync(path) ? [{ model, path }] : [];
|
|
129
|
+
}).sort((a, b) => a.model.localeCompare(b.model));
|
|
130
|
+
}
|
|
123
131
|
function getInstallInstructions() {
|
|
124
132
|
if (platform() === "darwin") {
|
|
125
133
|
return "brew install whisper-cpp";
|
|
@@ -190,6 +198,7 @@ export {
|
|
|
190
198
|
WhisperUnavailableError,
|
|
191
199
|
isWhisperUnavailable,
|
|
192
200
|
findWhisper,
|
|
201
|
+
listWhisperModels,
|
|
193
202
|
getInstallInstructions,
|
|
194
203
|
ensureWhisper,
|
|
195
204
|
ensureModel,
|
|
@@ -8,6 +8,9 @@ import {
|
|
|
8
8
|
require_lib,
|
|
9
9
|
require_main
|
|
10
10
|
} from "./chunk-DPVXBVLL.js";
|
|
11
|
+
import {
|
|
12
|
+
decodeHTMLAttribute
|
|
13
|
+
} from "./chunk-SDYDNHEE.js";
|
|
11
14
|
import {
|
|
12
15
|
ancestor,
|
|
13
16
|
full,
|
|
@@ -4623,13 +4626,29 @@ function trackKindOf(node) {
|
|
|
4623
4626
|
return { kind: "graphics", source: "tag" };
|
|
4624
4627
|
}
|
|
4625
4628
|
function decodeUrlPathVariants(path) {
|
|
4626
|
-
const
|
|
4627
|
-
|
|
4628
|
-
|
|
4629
|
-
|
|
4630
|
-
}
|
|
4631
|
-
|
|
4632
|
-
|
|
4629
|
+
const decoded = decodeWellFormedEscapes(path);
|
|
4630
|
+
return decoded === path ? [path] : [decoded, path];
|
|
4631
|
+
}
|
|
4632
|
+
function decodeWellFormedEscapes(path) {
|
|
4633
|
+
return path.replace(/(?:%[0-9A-Fa-f]{2})+/g, (run) => {
|
|
4634
|
+
try {
|
|
4635
|
+
return decodeURIComponent(run);
|
|
4636
|
+
} catch {
|
|
4637
|
+
return run;
|
|
4638
|
+
}
|
|
4639
|
+
});
|
|
4640
|
+
}
|
|
4641
|
+
function splitUrlSuffix(urlValue) {
|
|
4642
|
+
const queryIdx = urlValue.indexOf("?");
|
|
4643
|
+
const hashIdx = urlValue.indexOf("#");
|
|
4644
|
+
if (queryIdx < 0 && hashIdx < 0) return { basePath: urlValue, suffix: "" };
|
|
4645
|
+
let cutIdx = urlValue.length;
|
|
4646
|
+
if (queryIdx >= 0) cutIdx = Math.min(cutIdx, queryIdx);
|
|
4647
|
+
if (hashIdx >= 0) cutIdx = Math.min(cutIdx, hashIdx);
|
|
4648
|
+
return { basePath: urlValue.slice(0, cutIdx), suffix: urlValue.slice(cutIdx) };
|
|
4649
|
+
}
|
|
4650
|
+
function decodedUrlPath(url) {
|
|
4651
|
+
return decodeWellFormedEscapes(splitUrlSuffix(url).basePath);
|
|
4633
4652
|
}
|
|
4634
4653
|
function parseProgram2(script) {
|
|
4635
4654
|
try {
|
|
@@ -4805,6 +4824,98 @@ function resolveAliasDisplayName(alias) {
|
|
|
4805
4824
|
if (!slug) return void 0;
|
|
4806
4825
|
return CANONICAL_FONT_DISPLAY_NAMES[slug];
|
|
4807
4826
|
}
|
|
4827
|
+
function readAttributeValue(html, at) {
|
|
4828
|
+
while (/[\t\n\f\r ]/.test(html.charAt(at))) at++;
|
|
4829
|
+
const quote = ['"', "'"].includes(html.charAt(at)) ? html.charAt(at) : "";
|
|
4830
|
+
if (quote) at++;
|
|
4831
|
+
const valueStart = at;
|
|
4832
|
+
if (quote) {
|
|
4833
|
+
const closing = html.indexOf(quote, at);
|
|
4834
|
+
at = closing === -1 ? html.length : closing;
|
|
4835
|
+
} else {
|
|
4836
|
+
while (at < html.length && !/[\t\n\f\r >]/.test(html[at])) at++;
|
|
4837
|
+
}
|
|
4838
|
+
const valueEnd = at;
|
|
4839
|
+
const end = quote ? Math.min(valueEnd + 1, html.length) : valueEnd;
|
|
4840
|
+
return { value: html.slice(valueStart, valueEnd), valueStart, valueEnd, quote, end };
|
|
4841
|
+
}
|
|
4842
|
+
function readAttribute(html, start) {
|
|
4843
|
+
let at = start;
|
|
4844
|
+
while (at < html.length && !/[\t\n\f\r =/>]/.test(html[at])) at++;
|
|
4845
|
+
if (at === start) return null;
|
|
4846
|
+
const name = html.slice(start, at).toLowerCase();
|
|
4847
|
+
const nameEnd = at;
|
|
4848
|
+
while (/[\t\n\f\r ]/.test(html[at] ?? "")) at++;
|
|
4849
|
+
if (html[at] !== "=") return { kind: "boolean", name, start, end: nameEnd };
|
|
4850
|
+
return { kind: "value", name, start, ...readAttributeValue(html, at + 1) };
|
|
4851
|
+
}
|
|
4852
|
+
function readOpeningTag(html, start, name, at) {
|
|
4853
|
+
const attributes = [];
|
|
4854
|
+
while (at < html.length) {
|
|
4855
|
+
while (/[\t\n\f\r /]/.test(html[at] ?? "")) at++;
|
|
4856
|
+
if (at >= html.length || html[at] === ">") break;
|
|
4857
|
+
const attribute = readAttribute(html, at);
|
|
4858
|
+
if (attribute === null) {
|
|
4859
|
+
at++;
|
|
4860
|
+
continue;
|
|
4861
|
+
}
|
|
4862
|
+
attributes.push(attribute);
|
|
4863
|
+
at = attribute.end;
|
|
4864
|
+
}
|
|
4865
|
+
const closed = html[at] === ">";
|
|
4866
|
+
return {
|
|
4867
|
+
name: name.toLowerCase(),
|
|
4868
|
+
start,
|
|
4869
|
+
bodyEnd: at,
|
|
4870
|
+
end: closed ? at + 1 : at,
|
|
4871
|
+
closed,
|
|
4872
|
+
rawTextEnd: null,
|
|
4873
|
+
attributes
|
|
4874
|
+
};
|
|
4875
|
+
}
|
|
4876
|
+
function scanHtmlOpeningTags(html) {
|
|
4877
|
+
const tags = [];
|
|
4878
|
+
const opening = /<!--[\s\S]*?(?:--!?>|$)|<([a-z][^\t\n\f\r />]*)/gi;
|
|
4879
|
+
let match;
|
|
4880
|
+
while ((match = opening.exec(html)) !== null) {
|
|
4881
|
+
if (!match[1]) continue;
|
|
4882
|
+
const tag = readOpeningTag(html, match.index, match[1], opening.lastIndex);
|
|
4883
|
+
tags.push(tag);
|
|
4884
|
+
opening.lastIndex = tag.end;
|
|
4885
|
+
if ([
|
|
4886
|
+
"script",
|
|
4887
|
+
"style",
|
|
4888
|
+
"textarea",
|
|
4889
|
+
"title",
|
|
4890
|
+
"xmp",
|
|
4891
|
+
"iframe",
|
|
4892
|
+
"noembed",
|
|
4893
|
+
"noframes",
|
|
4894
|
+
"plaintext"
|
|
4895
|
+
].includes(tag.name)) {
|
|
4896
|
+
if (tag.name === "plaintext") {
|
|
4897
|
+
tag.rawTextEnd = html.length;
|
|
4898
|
+
break;
|
|
4899
|
+
}
|
|
4900
|
+
const closing = new RegExp(`</${tag.name}(?=[\\t\\n\\f\\r />])`, "gi");
|
|
4901
|
+
closing.lastIndex = tag.end;
|
|
4902
|
+
const end = closing.exec(html);
|
|
4903
|
+
tag.rawTextEnd = end?.index ?? html.length;
|
|
4904
|
+
opening.lastIndex = tag.rawTextEnd;
|
|
4905
|
+
}
|
|
4906
|
+
}
|
|
4907
|
+
return tags;
|
|
4908
|
+
}
|
|
4909
|
+
var HTML_ATTRIBUTE_ENTITIES = {
|
|
4910
|
+
"&": ["&"],
|
|
4911
|
+
'"': ["""],
|
|
4912
|
+
"'": ["'", "'"],
|
|
4913
|
+
"<": ["<"],
|
|
4914
|
+
">": [">"]
|
|
4915
|
+
};
|
|
4916
|
+
function decodeAuthoredAttribute(value) {
|
|
4917
|
+
return decodeHTMLAttribute(value);
|
|
4918
|
+
}
|
|
4808
4919
|
|
|
4809
4920
|
export {
|
|
4810
4921
|
MagicString,
|
|
@@ -4841,8 +4952,12 @@ export {
|
|
|
4841
4952
|
topLevelElements,
|
|
4842
4953
|
trackKindOf,
|
|
4843
4954
|
decodeUrlPathVariants,
|
|
4955
|
+
decodedUrlPath,
|
|
4844
4956
|
extractMediaSrcMutations,
|
|
4845
4957
|
FONT_ALIAS_MAP,
|
|
4846
4958
|
FONT_ALIAS_KEYS,
|
|
4847
|
-
resolveAliasDisplayName
|
|
4959
|
+
resolveAliasDisplayName,
|
|
4960
|
+
scanHtmlOpeningTags,
|
|
4961
|
+
HTML_ATTRIBUTE_ENTITIES,
|
|
4962
|
+
decodeAuthoredAttribute
|
|
4848
4963
|
};
|
|
@@ -6,15 +6,15 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
setHostHandlesSigint
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-5VMR4WBS.js";
|
|
10
10
|
import {
|
|
11
11
|
processAncestorSnapshot,
|
|
12
12
|
processIdentity,
|
|
13
13
|
processParentPid
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-A4Q7W4LV.js";
|
|
15
15
|
import {
|
|
16
16
|
processIsAlive
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-BYSBRF24.js";
|
|
18
18
|
|
|
19
19
|
// src/utils/renderCancellation.ts
|
|
20
20
|
var RENDER_CANCELLATION_SIGNALS = [
|
|
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
parseHTML
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-SDYDNHEE.js";
|
|
10
10
|
|
|
11
11
|
// ../parsers/dist/hfIds.js
|
|
12
12
|
var EXCLUDED_TAGS = /* @__PURE__ */ new Set([
|
|
@@ -101,7 +101,9 @@ function assignHfIds(body) {
|
|
|
101
101
|
});
|
|
102
102
|
}
|
|
103
103
|
function ensureHfIds(html) {
|
|
104
|
-
const wrapped =
|
|
104
|
+
const wrapped = !/^(?:<!doctype|<html[\s>/])/i.test(
|
|
105
|
+
html.replace(/^(?:\s|<!--(?:>|->|[\s\S]*?-->))*/, "")
|
|
106
|
+
);
|
|
105
107
|
const { document } = wrapped ? parseHTML(`<!DOCTYPE html><html><head></head><body>${html}</body></html>`) : parseHTML(html);
|
|
106
108
|
if (!document.body) return html;
|
|
107
109
|
assignHfIds(document.body);
|
|
@@ -6,20 +6,20 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
resolveProject
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-KFKZ3ISO.js";
|
|
10
10
|
import {
|
|
11
11
|
installPageFunctionGuard,
|
|
12
12
|
resolveCliChromeGpuMode,
|
|
13
13
|
seekCompositionTimeline,
|
|
14
14
|
waitForRuntimeReady
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-SLCFKB3Y.js";
|
|
16
16
|
import {
|
|
17
17
|
resolveCompositionViewportFromHtml
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-FH7WODJH.js";
|
|
19
19
|
import {
|
|
20
20
|
launchManagedBrowser,
|
|
21
21
|
resolveManagedGpuMode
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-5WADG7PR.js";
|
|
23
23
|
import {
|
|
24
24
|
defineCommand
|
|
25
25
|
} from "./chunk-S3S4TGEH.js";
|
|
@@ -27,10 +27,13 @@ import {
|
|
|
27
27
|
failCommand,
|
|
28
28
|
setCommandExitCode
|
|
29
29
|
} from "./chunk-PBN6GBJE.js";
|
|
30
|
+
import {
|
|
31
|
+
decodeWellFormedEscapes
|
|
32
|
+
} from "./chunk-BSQ7XANM.js";
|
|
30
33
|
import {
|
|
31
34
|
printDeprecationNotice,
|
|
32
35
|
withMeta
|
|
33
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-P6WH6QTV.js";
|
|
34
37
|
import {
|
|
35
38
|
normalizeErrorMessage
|
|
36
39
|
} from "./chunk-KNU5COPB.js";
|
|
@@ -70,6 +73,9 @@ function shouldIgnoreRequestFailure(url, errorText, resourceType) {
|
|
|
70
73
|
return false;
|
|
71
74
|
}
|
|
72
75
|
}
|
|
76
|
+
function projectPathOfUrl(url) {
|
|
77
|
+
return decodeWellFormedEscapes(new URL(url).pathname).replace(/^\//, "");
|
|
78
|
+
}
|
|
73
79
|
function shouldIgnoreHttpError(url, status) {
|
|
74
80
|
return status === 404 && isOptionalCaptionOverridesRequest(url);
|
|
75
81
|
}
|
|
@@ -222,7 +228,7 @@ function extractCompositionErrorsFromLint(lintResult) {
|
|
|
222
228
|
async function localizeRemoteAssets(html) {
|
|
223
229
|
let dir;
|
|
224
230
|
try {
|
|
225
|
-
const { loadProducer } = await import("./producer-
|
|
231
|
+
const { loadProducer } = await import("./producer-ZI46K7HH.js");
|
|
226
232
|
const { localizeRemoteMediaSources, localizeRemoteImageSources, localizeRemoteFontFaces } = await loadProducer();
|
|
227
233
|
dir = mkdtempSync(join(tmpdir(), "hf-validate-assets-"));
|
|
228
234
|
const assetDir = dir;
|
|
@@ -243,10 +249,10 @@ async function localizeRemoteAssets(html) {
|
|
|
243
249
|
}
|
|
244
250
|
async function validateInBrowser(project, opts) {
|
|
245
251
|
const projectDir = project.dir;
|
|
246
|
-
const { bundleToSingleHtml } = await import("./compiler-
|
|
247
|
-
const { ensureBrowser } = await import("./manager-
|
|
248
|
-
const { serveStaticProjectHtml } = await import("./staticProjectServer-
|
|
249
|
-
const { lintProject } = await import("./lintProject-
|
|
252
|
+
const { bundleToSingleHtml } = await import("./compiler-JZ4GNFMG.js");
|
|
253
|
+
const { ensureBrowser } = await import("./manager-BPSR6D3V.js");
|
|
254
|
+
const { serveStaticProjectHtml } = await import("./staticProjectServer-V2RZ4DWD.js");
|
|
255
|
+
const { lintProject } = await import("./lintProject-UBZ3TDHU.js");
|
|
250
256
|
const lintResult = await lintProject(projectDir);
|
|
251
257
|
const compositionErrors = extractCompositionErrorsFromLint(lintResult);
|
|
252
258
|
const html = await bundleToSingleHtml(projectDir);
|
|
@@ -267,18 +273,16 @@ async function validateInBrowser(project, opts) {
|
|
|
267
273
|
try {
|
|
268
274
|
const browser = await ensureBrowser();
|
|
269
275
|
const puppeteer = await import("puppeteer-core");
|
|
270
|
-
const { buildChromeArgs, analyzeClipMediaFit } = await import("./src-
|
|
276
|
+
const { buildChromeArgs, analyzeClipMediaFit } = await import("./src-VUJ2FUFK.js");
|
|
271
277
|
const requestedGpuMode = resolveCliChromeGpuMode();
|
|
272
|
-
const { assertWebGpuAdapterAvailable, compositionRequiresWebGpu } = await import("./gpuPolicy-
|
|
278
|
+
const { assertWebGpuAdapterAvailable, compositionRequiresWebGpu, resolveLocalWebGpu } = await import("./gpuPolicy-NBJNWHYS.js");
|
|
273
279
|
const resolvedGpuMode = await resolveManagedGpuMode(requestedGpuMode, browser.executablePath);
|
|
274
280
|
const requiresWebGpu = compositionRequiresWebGpu(html);
|
|
281
|
+
const { gpuConfig, softwareWebGpu } = resolveLocalWebGpu(resolvedGpuMode, requiresWebGpu);
|
|
275
282
|
const chromeBrowser = await launchManagedBrowser(puppeteer.default, {
|
|
276
283
|
headless: true,
|
|
277
284
|
executablePath: browser.executablePath,
|
|
278
|
-
args: buildChromeArgs(
|
|
279
|
-
{ ...viewport, captureMode: "screenshot", requiresWebGpu },
|
|
280
|
-
{ browserGpuMode: resolvedGpuMode }
|
|
281
|
-
)
|
|
285
|
+
args: buildChromeArgs({ ...viewport, captureMode: "screenshot", requiresWebGpu }, gpuConfig)
|
|
282
286
|
});
|
|
283
287
|
const page = await chromeBrowser.newPage();
|
|
284
288
|
await installPageFunctionGuard(page);
|
|
@@ -304,7 +308,7 @@ async function validateInBrowser(project, opts) {
|
|
|
304
308
|
if (url.includes("favicon") || url.startsWith("data:")) return;
|
|
305
309
|
const failureText = req.failure()?.errorText;
|
|
306
310
|
if (shouldIgnoreRequestFailure(url, failureText, req.resourceType())) return;
|
|
307
|
-
const path =
|
|
311
|
+
const path = projectPathOfUrl(url);
|
|
308
312
|
errors.push({
|
|
309
313
|
level: "error",
|
|
310
314
|
text: `Failed to load ${path}: ${failureText ?? "net::ERR_FAILED"}`,
|
|
@@ -316,7 +320,7 @@ async function validateInBrowser(project, opts) {
|
|
|
316
320
|
const url = res.url();
|
|
317
321
|
if (url.includes("favicon")) return;
|
|
318
322
|
if (shouldIgnoreHttpError(url, res.status())) return;
|
|
319
|
-
const path =
|
|
323
|
+
const path = projectPathOfUrl(url);
|
|
320
324
|
errors.push({ level: "error", text: `${res.status()} loading ${path}`, url });
|
|
321
325
|
}
|
|
322
326
|
});
|
|
@@ -328,7 +332,7 @@ async function validateInBrowser(project, opts) {
|
|
|
328
332
|
if (hinted) throw hinted;
|
|
329
333
|
throw err;
|
|
330
334
|
}
|
|
331
|
-
await assertWebGpuAdapterAvailable(page, requiresWebGpu);
|
|
335
|
+
await assertWebGpuAdapterAvailable(page, requiresWebGpu, softwareWebGpu);
|
|
332
336
|
await waitForRuntimeReady(page, opts.timeout ?? 3e3);
|
|
333
337
|
await new Promise((r) => setTimeout(r, opts.timeout ?? 3e3));
|
|
334
338
|
for (const w of await auditClipDurations(page, analyzeClipMediaFit, opts.timeout ?? 3e3)) {
|
|
@@ -469,6 +473,7 @@ export {
|
|
|
469
473
|
resolveNavigationTimeoutMs,
|
|
470
474
|
navigationTimeoutHint,
|
|
471
475
|
shouldIgnoreRequestFailure,
|
|
476
|
+
projectPathOfUrl,
|
|
472
477
|
shouldIgnoreHttpError,
|
|
473
478
|
raceMediaReady,
|
|
474
479
|
auditClipDurations,
|
|
@@ -7,14 +7,14 @@ var __dirname = __hf_dirname(__filename);
|
|
|
7
7
|
import {
|
|
8
8
|
trackLintReport,
|
|
9
9
|
trackLintRuleStreak
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-RG3QWWIE.js";
|
|
11
11
|
import {
|
|
12
12
|
shouldTrack
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-XU5GGV6R.js";
|
|
14
14
|
import {
|
|
15
15
|
LINT_RULE_COUNT,
|
|
16
16
|
LINT_RULE_GROUP_COUNTS
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-IEIJRMLZ.js";
|
|
18
18
|
|
|
19
19
|
// src/telemetry/lintStreaks.ts
|
|
20
20
|
import { createHash } from "crypto";
|
|
@@ -8,13 +8,13 @@ import {
|
|
|
8
8
|
DEFAULT_VP9_CPU_USED,
|
|
9
9
|
isHttpUrl,
|
|
10
10
|
runFfmpeg
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-5VMR4WBS.js";
|
|
12
12
|
import {
|
|
13
13
|
parseAnimatedGifMetadata
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-3VYNNWVA.js";
|
|
15
15
|
import {
|
|
16
16
|
parseHTML
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-SDYDNHEE.js";
|
|
18
18
|
|
|
19
19
|
// ../producer/src/services/animatedGifPrep.ts
|
|
20
20
|
import { createHash } from "crypto";
|