hyperframes 0.8.122 → 0.8.124
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-UDNFUHR7.js → add-KDN5JOAP.js} +14 -14
- package/dist/{animatedGifPrep-2EXOFDLI.js → animatedGifPrep-H6ZIMS3L.js} +5 -5
- package/dist/{asset-YFEFDXZV.js → asset-EJFBLFOA.js} +2 -2
- package/dist/{assetCataloger-NDJSFPJN.js → assetCataloger-3Z4RUM5K.js} +2 -2
- package/dist/{auth-22YSZLEK.js → auth-QUOT4AVB.js} +2 -2
- package/dist/{autoUpdate-4OUJ7O3D.js → autoUpdate-LM6YIFM4.js} +2 -2
- package/dist/{backgroundChecks-FP5AP654.js → backgroundChecks-PZEX77KC.js} +3 -3
- package/dist/backgroundChecksWorker.js +3 -3
- package/dist/{batchRender-ZXQVHWED.js → batchRender-SYREZLNM.js} +3 -3
- package/dist/{beats-AML5JHGX.js → beats-GAROPWZX.js} +11 -11
- package/dist/{benchmark-6LELU6ZT.js → benchmark-R27INLK2.js} +11 -11
- package/dist/{browser-5NUYM6P2.js → browser-UAMARUY3.js} +8 -8
- package/dist/{bundleWithLocalizedFonts-TSGE3UAO.js → bundleWithLocalizedFonts-SJFCS4WH.js} +2 -2
- package/dist/{capture-HFYBSASN.js → capture-42GHDJSH.js} +13 -18
- package/dist/{capture-33BJRABG.js → capture-NT33PXQT.js} +2 -2
- package/dist/{catalog-KZ2PUXHS.js → catalog-DDLMJXPU.js} +14 -14
- package/dist/{check-RJQIUSVM.js → check-IQJEGVTI.js} +30 -30
- package/dist/{checkBrowser-QQZCRUSY.js → checkBrowser-QDTOZNUM.js} +33 -33
- package/dist/{chunk-2CYCP3AY.js → chunk-2C5KGTYX.js} +1 -1
- package/dist/{chunk-Q4GCD5WE.js → chunk-2X6IXODS.js} +5 -5
- package/dist/{chunk-A6DWJRHP.js → chunk-4HC572SI.js} +2 -2
- package/dist/{chunk-ABMHBIWX.js → chunk-5JLKZMCL.js} +1 -1
- package/dist/{chunk-BGYDTAYR.js → chunk-5UQEHMDX.js} +4 -4
- package/dist/{chunk-FD5UEKRP.js → chunk-5WAPJM7Q.js} +1 -1
- package/dist/{chunk-OZ4V6VQ2.js → chunk-72BGWI35.js} +3 -3
- package/dist/{chunk-2BMZEUGD.js → chunk-73KQTPK5.js} +1 -1
- package/dist/{chunk-7T6RZSKP.js → chunk-AIAHR2KP.js} +7 -7
- package/dist/{chunk-SSOJUJFQ.js → chunk-AOJIC4Z6.js} +1 -1
- package/dist/{chunk-TV2LRJVK.js → chunk-BDERXFDQ.js} +2 -2
- package/dist/{chunk-DQKPTQEA.js → chunk-BTJLBKJM.js} +5 -5
- package/dist/{chunk-NKS75GFI.js → chunk-CMH5CSTH.js} +2 -2
- package/dist/{chunk-OQ6HLIYU.js → chunk-CQMEZZGB.js} +9 -9
- package/dist/{chunk-NUWXK2NW.js → chunk-CSACVU42.js} +1 -1
- package/dist/{chunk-EB5XYJBZ.js → chunk-E5BAQVYP.js} +1 -1
- package/dist/chunk-F6QGSVUR.js +3571 -0
- package/dist/{chunk-J22NAGNW.js → chunk-FFRD7C5Y.js} +91 -27
- package/dist/chunk-GULOKZLI.js +155 -0
- package/dist/{chunk-ZIPAUKTK.js → chunk-HHUXXGXS.js} +1 -1
- package/dist/{chunk-74G66BSC.js → chunk-HQWCFX5E.js} +1 -1
- package/dist/{chunk-OHJGKETC.js → chunk-JTOXXJ2V.js} +1 -1
- package/dist/{chunk-LQBR4IC7.js → chunk-KAG5RIH3.js} +1 -1
- package/dist/{chunk-C477PVA2.js → chunk-LHUITV7D.js} +1 -1
- package/dist/{chunk-VP4IJ3NC.js → chunk-LVXNXV7G.js} +1 -1
- package/dist/{chunk-ZTWFHWRR.js → chunk-M73S37KU.js} +1 -1
- package/dist/{chunk-NA2DKY3M.js → chunk-N2NKZH5T.js} +9 -9
- package/dist/{dotEnv-AI4SYVTX.js → chunk-NGKM64BP.js} +2 -2
- package/dist/{chunk-UQR6DWPM.js → chunk-O2UUDQIA.js} +3 -3
- package/dist/{chunk-QR77QVIT.js → chunk-ONB7D3WM.js} +2 -2
- package/dist/{chunk-5KTDZVF3.js → chunk-ORICANJF.js} +1 -1
- package/dist/{chunk-3VG4A22C.js → chunk-PLQ4HJOO.js} +1 -1
- package/dist/{chunk-JD3C44FP.js → chunk-PSUC7UH5.js} +1 -1
- package/dist/{chunk-Y6WM6GY3.js → chunk-RG4XNPAS.js} +1 -1
- package/dist/{chunk-KCJGTEJD.js → chunk-RGAOEDD7.js} +1 -1
- package/dist/{chunk-26LWC4RP.js → chunk-RPVBIUYA.js} +2 -2
- package/dist/{chunk-DNIJ7MH6.js → chunk-SR2PZ7YB.js} +2 -2
- package/dist/{chunk-EBODC6OT.js → chunk-TAVCXJDZ.js} +3 -3
- package/dist/{chunk-UUI2OMI7.js → chunk-UB7TKYHI.js} +1 -1
- package/dist/{chunk-KJHOYQ2T.js → chunk-UZKSKWYC.js} +2 -2
- package/dist/{chunk-X6SS5FWY.js → chunk-VFCR64GO.js} +7 -7
- package/dist/{chunk-XIZHC6UO.js → chunk-W777U57N.js} +1 -1
- package/dist/{chunk-JQPICVXM.js → chunk-W7MBO3OA.js} +2 -2
- package/dist/{chunk-MOPVB4VL.js → chunk-WCO25Y7W.js} +2 -2
- package/dist/{chunk-VFZICECI.js → chunk-ZXKQI3CL.js} +1 -1
- package/dist/{clean-QXMDWVYB.js → clean-JUJTGQLY.js} +14 -14
- package/dist/cli.js +53 -52
- package/dist/{cloud-WTPVHGBP.js → cloud-OTGRJ55X.js} +4 -4
- package/dist/{cloudrun-JFN7W6XI.js → cloudrun-MR2BDNIE.js} +3 -3
- package/dist/{compare-CCDZEHTS.js → compare-PI2BE6XG.js} +24 -24
- package/dist/{compiler-DNZFJIKO.js → compiler-534QUPGQ.js} +2 -2
- package/dist/{component-OSVQHEQJ.js → component-23F5FX7F.js} +3 -3
- package/dist/{compositions-CCMN5HAA.js → compositions-QBMBMSWK.js} +10 -10
- package/dist/{delete-ZE7Z7SDY.js → delete-OWPF7ECQ.js} +2 -2
- package/dist/{dist-Z7QP5AQY.js → dist-UBW5W3J6.js} +2 -2
- package/dist/{doctor-KKRGCPV3.js → doctor-ET66NXTR.js} +9 -9
- package/dist/dotEnv-AECLXQSO.js +14 -0
- package/dist/{events-WJKCFVF7.js → events-IF4ANAI4.js} +7 -7
- package/dist/{events-YN5EY7O7.js → events-YB7V7HKA.js} +8 -8
- package/dist/{feedback-DHLYWTNU.js → feedback-BXKESP4T.js} +9 -9
- package/dist/{figma-KCTT7ELR.js → figma-HNCCW27E.js} +3 -3
- package/dist/fontLocalizeCli.js +7 -7
- package/dist/{get-XCGOGN53.js → get-BFS6LW4G.js} +2 -2
- package/dist/{gpuPolicy-J5CPE3TK.js → gpuPolicy-NTPPP3CY.js} +5 -5
- package/dist/{grade-compare-FBX5S77X.js → grade-compare-ZODD5CA2.js} +24 -24
- package/dist/{help-6TQVEU2Q.js → help-PDKEUTLM.js} +3 -2
- package/dist/{history-PPDOAO2Z.js → history-DPCZXCFM.js} +14 -14
- package/dist/hyperframe-runtime.js +50 -50
- package/dist/hyperframe.manifest.json +1 -1
- package/dist/hyperframe.runtime.iife.js +50 -50
- package/dist/hyperframes-player.global.js +1 -1
- package/dist/{info-42EBGTUI.js → info-BZBRLNDJ.js} +10 -10
- package/dist/{init-SERRMFRH.js → init-24RQT53L.js} +21 -21
- package/dist/{inspect-6TEDC7QZ.js → inspect-UUJSVALX.js} +25 -25
- package/dist/{installer-C47R4ZSU.js → installer-3MYH2BBT.js} +4 -4
- package/dist/{keyframes-BNLMFEWU.js → keyframes-ZBT47ZXP.js} +11 -11
- package/dist/{lambda-DGWKFO3L.js → lambda-254KZLDB.js} +4 -4
- package/dist/{layout-PMYXB4ZJ.js → layout-D7VXT7ZZ.js} +25 -25
- package/dist/{lint-DDNL3QQ5.js → lint-CIMEKZSB.js} +11 -11
- package/dist/{list-VCELX3BO.js → list-WBRIEQZM.js} +2 -2
- package/dist/{login-WC4YD67C.js → login-PBKOV6TK.js} +4 -4
- package/dist/{media-treatment-4QGIOHQR.js → media-treatment-XIBOCHGF.js} +11 -11
- package/dist/{models-UTVBFNKD.js → models-7UT4RZUL.js} +6 -6
- package/dist/{motionShot-3WDJAW4C.js → motionShot-WB7E5FU7.js} +11 -11
- package/dist/{normalize-audio-ZXESA45N.js → normalize-audio-PMU2FXZA.js} +10 -10
- package/dist/open-AVSLHVOE.js +115 -0
- package/dist/{pipeline-DRXU55OB.js → pipeline-5E76S72B.js} +5 -5
- package/dist/{play-AUEOCKY3.js → play-SVTXUB2Z.js} +19 -19
- package/dist/{preflight-OJJZVHWE.js → preflight-LGJKUHUZ.js} +6 -6
- package/dist/{present-7JZQMSSU.js → present-NE6EYZY2.js} +15 -15
- package/dist/{preview-3AMXHHVS.js → preview-4EGR22E3.js} +27 -22
- package/dist/{producer-QI55RCFB.js → producer-2ZWSHMK3.js} +1 -1
- package/dist/{projectConfig-EJNHN452.js → projectConfig-VC5MAYSS.js} +6 -6
- package/dist/{publication-SH4OD64P.js → publication-YXOCJQ7B.js} +2 -2
- package/dist/{publish-2B5LKGKK.js → publish-GTXVX6O4.js} +7 -7
- package/dist/{remove-background-EJ4SPMBK.js → remove-background-VOBXCXXJ.js} +6 -6
- package/dist/{render-JRYEUEAR.js → render-4PBKSNC3.js} +41 -23
- package/dist/{render-Y4OQV7BU.js → render-BNUTBDFX.js} +3 -3
- package/dist/{render-GWIDYUYW.js → render-M446K7E4.js} +11 -11
- package/dist/{render-batch-3F43JEX2.js → render-batch-WJKUYKUZ.js} +3 -3
- package/dist/{renderCancellation-WUM56H5O.js → renderCancellation-QUEUCG6R.js} +5 -5
- package/dist/{resolver-WHBQ7QFS.js → resolver-3QPZA2X6.js} +4 -4
- package/dist/{sherpa-5OYOKOOP.js → sherpa-LQHE6MT7.js} +6 -6
- package/dist/skills/hyperframes/SKILL.md +9 -0
- package/dist/skills/hyperframes/references/brief-contract.md +1 -1
- package/dist/skills/hyperframes/references/review-loop.md +1 -1
- package/dist/skills/hyperframes-cli/SKILL.md +2 -1
- package/dist/skills/media-use/audio/references/tts.md +24 -7
- package/dist/skills/media-use/audio/scripts/heygen-tts.mjs +3 -2
- package/dist/skills/media-use/audio/scripts/heygen-tts.test.mjs +38 -0
- package/dist/skills/media-use/audio/scripts/heygen-voice.mjs +98 -0
- package/dist/skills/media-use/audio/scripts/heygen-voice.test.mjs +233 -0
- package/dist/skills/media-use/audio/scripts/lib/heygen.mjs +19 -5
- package/dist/skills/media-use/audio/scripts/lib/heygen.test.mjs +17 -0
- package/dist/skills/media-use/audio/scripts/lib/tts.mjs +2 -2
- package/dist/{skills-JKBN3CQS.js → skills-C6C23Z7M.js} +10 -10
- package/dist/{skillsUpdateCheck-KUYRATKA.js → skillsUpdateCheck-MR5TXEAX.js} +3 -3
- package/dist/{snapshot-M7FF5DBZ.js → snapshot-F5ZSC5FM.js} +25 -25
- package/dist/{src-7NUMTCMB.js → src-HP5DTGMY.js} +6 -6
- package/dist/{src-S7FSBDSO.js → src-WEETQ4CZ.js} +4 -4
- package/dist/{staticProjectServer-AQFAOUJX.js → staticProjectServer-REKZ3KBB.js} +13 -13
- package/dist/{status-55DDWDMV.js → status-DKHWOUB4.js} +5 -5
- package/dist/studio/assets/{hyperframes-player-DMzBHhbH.js → hyperframes-player-ColOZ_78.js} +1 -1
- package/dist/studio/assets/{index-B-YDp8hN.js → index-BuSTrK-Z.js} +146 -146
- package/dist/studio/assets/{index-CBRX2eZX.js → index-CVuUfURE.js} +1 -1
- package/dist/studio/assets/{index-t1LH6H5H.css → index-D11atkBt.css} +1 -1
- package/dist/studio/assets/{index-lyjhSEzi.js → index-jQEqFKMk.js} +1 -1
- package/dist/studio/index.html +2 -2
- package/dist/studio/index.js +1250 -1043
- package/dist/studio/index.js.map +1 -1
- package/dist/studio/styles.css +1 -1
- package/dist/{studio-api-7RBB3E3E.js → studio-api-SY5SFHZD.js} +7 -7
- package/dist/{studioServer-5FPPFWL6.js → studioServer-2ZWULGC5.js} +79 -37
- package/dist/{system-BQ72Y6YD.js → system-L7VMXFIG.js} +5 -5
- package/dist/{telemetry-OIX76XCZ.js → telemetry-XYNKPYSU.js} +8 -8
- package/dist/{timeline-JWDLDSVO.js → timeline-MYGD5OEC.js} +14 -14
- package/dist/{tokens-HZKAUSHK.js → tokens-6DZ73AXR.js} +2 -2
- package/dist/{transcribe-G2HSKAJN.js → transcribe-3BUOOE6P.js} +11 -11
- package/dist/{transcribe-AQSGSWXV.js → transcribe-F4DDIZJO.js} +6 -6
- package/dist/{tts-P3LIPIL5.js → tts-CGUXR7R4.js} +1 -1
- package/dist/{updateCheck-Y6ICSKXS.js → updateCheck-VH46SJ2X.js} +2 -2
- package/dist/{upgrade-XU35HZ7O.js → upgrade-J4MZ4MLN.js} +2 -2
- package/dist/{urlDownloader-V7FRXT7U.js → urlDownloader-PCRAON2D.js} +4 -4
- package/dist/{validate-J2D2ZRPB.js → validate-BOYSXZFW.js} +15 -15
- package/dist/{video-MZPB3UAC.js → video-GL7ZDEFL.js} +5 -5
- package/package.json +1 -1
- package/dist/chunk-C6MUZ4T2.js +0 -3541
- package/dist/{synthesize-K62TIZWI.js → synthesize-BDXNRYZN.js} +4 -4
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
splitElementInHtml,
|
|
22
22
|
unwrapElementsFromHtml,
|
|
23
23
|
wrapElementsInHtml
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-W7MBO3OA.js";
|
|
25
25
|
import {
|
|
26
26
|
atomicTempPath,
|
|
27
27
|
createFileAtomically,
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
measureAudio,
|
|
35
35
|
requiredFfmpeg,
|
|
36
36
|
resolveLocalAudioPath
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-RG4XNPAS.js";
|
|
38
38
|
import {
|
|
39
39
|
PROXY_PARAMS_VERSION,
|
|
40
40
|
PROXY_PENDING_RETRY_AFTER_SECONDS,
|
|
@@ -60,7 +60,7 @@ import {
|
|
|
60
60
|
shouldPrewarmProxy,
|
|
61
61
|
waitForProxy,
|
|
62
62
|
walkDir
|
|
63
|
-
} from "./chunk-
|
|
63
|
+
} from "./chunk-73KQTPK5.js";
|
|
64
64
|
import {
|
|
65
65
|
findTimelineScript,
|
|
66
66
|
parseGsapScriptAcorn
|
|
@@ -81,7 +81,7 @@ import {
|
|
|
81
81
|
motionPathPluginUrl,
|
|
82
82
|
parseFps,
|
|
83
83
|
sameInstant
|
|
84
|
-
} from "./chunk-
|
|
84
|
+
} from "./chunk-LVXNXV7G.js";
|
|
85
85
|
import {
|
|
86
86
|
MagicString,
|
|
87
87
|
VALID_CANVAS_RESOLUTIONS,
|
|
@@ -92,16 +92,17 @@ import {
|
|
|
92
92
|
addScenePartsManifest,
|
|
93
93
|
deferScriptsUntilFonts,
|
|
94
94
|
ensureHfIds
|
|
95
|
-
} from "./chunk-
|
|
95
|
+
} from "./chunk-KAG5RIH3.js";
|
|
96
96
|
import {
|
|
97
97
|
findStartTags,
|
|
98
|
+
hasCompositionOutsideTemplates,
|
|
98
99
|
injectTagsAtHeadStart,
|
|
99
100
|
insertBeforeCloseTag,
|
|
100
101
|
isFullHtmlDocument,
|
|
101
102
|
resolveRateSpec,
|
|
102
103
|
sourceTimeAt,
|
|
103
104
|
stripEmbeddedRuntimeScripts
|
|
104
|
-
} from "./chunk-
|
|
105
|
+
} from "./chunk-F6QGSVUR.js";
|
|
105
106
|
import {
|
|
106
107
|
ProjectRootMissingError,
|
|
107
108
|
folderGone,
|
|
@@ -219,7 +220,7 @@ function stampFileHfIds(filePath) {
|
|
|
219
220
|
}
|
|
220
221
|
}
|
|
221
222
|
|
|
222
|
-
// ../studio-server/dist/chunk-
|
|
223
|
+
// ../studio-server/dist/chunk-HY2KCPIA.js
|
|
223
224
|
import { randomUUID as randomUUID6 } from "crypto";
|
|
224
225
|
import { mkdir as mkdir2, readdir as readdir3, rm as rm3, rmdir, writeFile } from "fs/promises";
|
|
225
226
|
import {
|
|
@@ -881,8 +882,10 @@ function readLog(file, onUnreadable) {
|
|
|
881
882
|
return log;
|
|
882
883
|
}
|
|
883
884
|
function applyRecord(log, record) {
|
|
884
|
-
if (record.type === "baseline")
|
|
885
|
-
|
|
885
|
+
if (record.type === "baseline") {
|
|
886
|
+
log.baseline = new Map(Object.entries(record.files));
|
|
887
|
+
log.keepsLedger = record.keepsLedger === true;
|
|
888
|
+
} else if (record.type === "entry") log.entries.push(record.entry);
|
|
886
889
|
else if (record.pinned) log.pins.add(record.id);
|
|
887
890
|
else log.pins.delete(record.id);
|
|
888
891
|
}
|
|
@@ -903,7 +906,11 @@ function saveRecord(file, log, record) {
|
|
|
903
906
|
}
|
|
904
907
|
function writeLog(file, log) {
|
|
905
908
|
const records = [
|
|
906
|
-
{
|
|
909
|
+
{
|
|
910
|
+
type: "baseline",
|
|
911
|
+
files: Object.fromEntries(log.baseline),
|
|
912
|
+
...log.keepsLedger && { keepsLedger: true }
|
|
913
|
+
},
|
|
907
914
|
...log.entries.map((entry) => ({ type: "entry", entry })),
|
|
908
915
|
...[...log.pins].map((id) => ({ type: "pin", id, pinned: true }))
|
|
909
916
|
];
|
|
@@ -985,6 +992,19 @@ var OUTSIDE = { kind: "outside", name: "Outside" };
|
|
|
985
992
|
var OUTSIDE_LABEL = "Changed outside the app";
|
|
986
993
|
var RACY_MS = 2e3;
|
|
987
994
|
var statKey = (file, sweptAt) => sweptAt - Math.max(file.mtimeMs, file.ctimeMs) < RACY_MS ? "" : `${file.size}:${file.mtimeMs}:${file.ctimeMs}`;
|
|
995
|
+
var MEDIA_LEDGER = ".media/manifest.jsonl";
|
|
996
|
+
var KEPT_HIDDEN_PATHS = /* @__PURE__ */ new Set([...STUDIO_SIGNATURE_MANIFEST_PATHS, MEDIA_LEDGER]);
|
|
997
|
+
function isHistoryPath(path) {
|
|
998
|
+
if (KEPT_HIDDEN_PATHS.has(path)) return true;
|
|
999
|
+
return !path.split("/").some((segment) => segment.startsWith("."));
|
|
1000
|
+
}
|
|
1001
|
+
function withoutHiddenPaths(log) {
|
|
1002
|
+
for (const path of log.baseline.keys()) if (!isHistoryPath(path)) log.baseline.delete(path);
|
|
1003
|
+
for (const entry of log.entries)
|
|
1004
|
+
entry.files = entry.files.filter((file) => isHistoryPath(file.path));
|
|
1005
|
+
return log;
|
|
1006
|
+
}
|
|
1007
|
+
var historyFiles = (dir) => listProjectFiles(dir).filter((file) => isHistoryPath(file.path));
|
|
988
1008
|
var sameWho = (a, b) => a.kind === b.kind && a.name === b.name;
|
|
989
1009
|
function splitAt(change, at, kept) {
|
|
990
1010
|
if (at === change.after) return [change, null];
|
|
@@ -1128,7 +1148,8 @@ var Engine = class {
|
|
|
1128
1148
|
)
|
|
1129
1149
|
);
|
|
1130
1150
|
if (!log) return this.firstOpen();
|
|
1131
|
-
this.log = log;
|
|
1151
|
+
this.log = withoutHiddenPaths(log);
|
|
1152
|
+
if (!this.log.keepsLedger) await this.takeInUnnamedLedger();
|
|
1132
1153
|
const cache = this.readStatCache();
|
|
1133
1154
|
const last = this.log.entries.at(-1)?.id ?? START;
|
|
1134
1155
|
for (const [path, hash] of manifestAt(this.log, last) ?? []) {
|
|
@@ -1146,6 +1167,7 @@ var Engine = class {
|
|
|
1146
1167
|
const replaced = hashOfVersion(fileContentVersion(bytes));
|
|
1147
1168
|
if (!replaced || replaced === after) return;
|
|
1148
1169
|
const path = relative2(realDir, absPath).split(sep2).join("/");
|
|
1170
|
+
if (!isHistoryPath(path)) return;
|
|
1149
1171
|
this.overwritten.set(
|
|
1150
1172
|
path,
|
|
1151
1173
|
chainBackFrom(this.overwritten.get(path), replaced).set(after, replaced)
|
|
@@ -1176,14 +1198,23 @@ var Engine = class {
|
|
|
1176
1198
|
const { id, who, label, startedAt, lastWriteAt, idleMs } = closed;
|
|
1177
1199
|
this.windows.push({ id, who, label, startedAt, lastWriteAt, idleMs, changes: /* @__PURE__ */ new Map() });
|
|
1178
1200
|
}
|
|
1201
|
+
async takeInUnnamedLedger() {
|
|
1202
|
+
const named = (path) => this.log.entries.some((entry) => entry.files.some((file) => file.path === path));
|
|
1203
|
+
const listed = () => historyFiles(this.dir).some((file) => file.path === MEDIA_LEDGER);
|
|
1204
|
+
const hash = this.log.baseline.has(MEDIA_LEDGER) || named(MEDIA_LEDGER) || !listed() ? null : await this.storeIfPresent(MEDIA_LEDGER);
|
|
1205
|
+
if (hash !== null) this.log.baseline.set(MEDIA_LEDGER, hash);
|
|
1206
|
+
this.log.keepsLedger = true;
|
|
1207
|
+
this.persistLog();
|
|
1208
|
+
}
|
|
1179
1209
|
async firstOpen() {
|
|
1180
1210
|
const sweptAt = this.now();
|
|
1181
|
-
for (const file of
|
|
1211
|
+
for (const file of historyFiles(this.dir)) {
|
|
1182
1212
|
const hash = await this.storeIfPresent(file.path);
|
|
1183
1213
|
if (this.whereFolder() !== "here") throw this.replaced();
|
|
1184
1214
|
if (hash !== null) this.tracked.set(file.path, { hash, stat: statKey(file, sweptAt) });
|
|
1185
1215
|
}
|
|
1186
1216
|
this.log.baseline = this.manifest();
|
|
1217
|
+
this.log.keepsLedger = true;
|
|
1187
1218
|
this.persistLog();
|
|
1188
1219
|
this.saveStatCache();
|
|
1189
1220
|
}
|
|
@@ -1211,7 +1242,7 @@ var Engine = class {
|
|
|
1211
1242
|
if (this.whereFolder() !== "here") return;
|
|
1212
1243
|
const sweptAt = this.now();
|
|
1213
1244
|
const changedAt = (file) => Math.min(sweptAt, Math.max(file.mtimeMs, file.ctimeMs));
|
|
1214
|
-
const seen =
|
|
1245
|
+
const seen = historyFiles(this.dir);
|
|
1215
1246
|
const heard = new Map(this.overwritten);
|
|
1216
1247
|
const present = new Set(seen.map((file) => file.path));
|
|
1217
1248
|
const removed = [...this.tracked.keys()].filter((path) => !present.has(path)).map((path) => {
|
|
@@ -1409,7 +1440,8 @@ var Engine = class {
|
|
|
1409
1440
|
if (group) await this.commit(group);
|
|
1410
1441
|
}
|
|
1411
1442
|
async commit(group, extra = {}) {
|
|
1412
|
-
|
|
1443
|
+
const undoesEmptied = this.log.entries.find((entry2) => entry2.id === extra.undoes)?.files.length === 0;
|
|
1444
|
+
if (!group.changes.size && !undoesEmptied) return null;
|
|
1413
1445
|
const pending = this.pendingEntry(group);
|
|
1414
1446
|
const endedAt = Math.max(pending.endedAt, this.log.entries.at(-1)?.endedAt ?? 0);
|
|
1415
1447
|
const entry = { ...pending, endedAt, ...extra };
|
|
@@ -1467,7 +1499,9 @@ var Engine = class {
|
|
|
1467
1499
|
}
|
|
1468
1500
|
/** A watcher saw a write: one sweep per burst takes it in (a deleted folder is reported by its name alone). */
|
|
1469
1501
|
noteChange(path) {
|
|
1470
|
-
|
|
1502
|
+
const absolute = resolve3(this.dir, path);
|
|
1503
|
+
if (this.notedTimer || !affectsProjectSignature(this.dir, absolute)) return;
|
|
1504
|
+
if (!isHistoryPath(relative2(this.dir, absolute).split(sep2).join("/"))) return;
|
|
1471
1505
|
this.notedTimer = setTimeout(() => {
|
|
1472
1506
|
this.notedTimer = null;
|
|
1473
1507
|
this.background(() => this.sweep());
|
|
@@ -1628,7 +1662,7 @@ var Engine = class {
|
|
|
1628
1662
|
return stepTarget(
|
|
1629
1663
|
this.log.entries,
|
|
1630
1664
|
direction,
|
|
1631
|
-
(entry) => mine(entry.who) || everyone && !ofOpenTurn(entry)
|
|
1665
|
+
(entry) => entry.files.length > 0 && (mine(entry.who) || everyone && !ofOpenTurn(entry))
|
|
1632
1666
|
);
|
|
1633
1667
|
}
|
|
1634
1668
|
/** A pending group as the entry it becomes once committed (a window's part gets a fresh id). */
|
|
@@ -6586,7 +6620,7 @@ async function prepareGsapMutationScript(c, res, firstMutation) {
|
|
|
6586
6620
|
let block = extractGsapScriptBlock(html);
|
|
6587
6621
|
if (!block && (firstMutation.type === "add" || firstMutation.type === "add-with-keyframes")) {
|
|
6588
6622
|
const compId = html.match(/data-composition-id="([^"]+)"/)?.[1] ?? "main";
|
|
6589
|
-
const { GSAP_CDN } = await import("./dist-
|
|
6623
|
+
const { GSAP_CDN } = await import("./dist-UBW5W3J6.js");
|
|
6590
6624
|
const bootstrap = [
|
|
6591
6625
|
`<script src="${GSAP_CDN}"></script>`,
|
|
6592
6626
|
"<script>",
|
|
@@ -6595,8 +6629,9 @@ async function prepareGsapMutationScript(c, res, firstMutation) {
|
|
|
6595
6629
|
`window.__timelines["${compId}"] = tl;`,
|
|
6596
6630
|
"</script>"
|
|
6597
6631
|
].join("\n");
|
|
6598
|
-
|
|
6599
|
-
|
|
6632
|
+
const [first, second] = hasCompositionOutsideTemplates(html) ? ["body", "template"] : ["template", "body"];
|
|
6633
|
+
html = insertBeforeCloseTag(html, first, `${bootstrap}
|
|
6634
|
+
`) ?? insertBeforeCloseTag(html, second, `${bootstrap}
|
|
6600
6635
|
`) ?? `${html}
|
|
6601
6636
|
${bootstrap}`;
|
|
6602
6637
|
block = extractGsapScriptBlock(html);
|
|
@@ -8633,17 +8668,46 @@ function htmlHasMotionPathPlugin(html) {
|
|
|
8633
8668
|
}
|
|
8634
8669
|
function injectMotionPathPluginIfNeeded(html) {
|
|
8635
8670
|
if (!htmlUsesMotionPath(html) || htmlHasMotionPathPlugin(html)) return html;
|
|
8636
|
-
const
|
|
8637
|
-
|
|
8638
|
-
|
|
8639
|
-
const
|
|
8640
|
-
const
|
|
8641
|
-
|
|
8642
|
-
const end = html.indexOf(match[0]) + match[0].length;
|
|
8643
|
-
return html.slice(0, end) + "\n" + pluginTag + html.slice(end);
|
|
8671
|
+
const gsap = findGsapCoreScript(html);
|
|
8672
|
+
if (gsap) {
|
|
8673
|
+
const version = gsap.src.match(/gsap@([\d.]+)/)?.[1];
|
|
8674
|
+
const ordering = `${gsap.type ? ` type="${gsap.type}"` : ""}${gsap.defer ? " defer" : ""}`;
|
|
8675
|
+
const pluginTag = `<script${ordering} src="${motionPathPluginUrl(version)}"></script>`;
|
|
8676
|
+
return html.slice(0, gsap.end) + "\n" + pluginTag + html.slice(gsap.end);
|
|
8644
8677
|
}
|
|
8645
8678
|
return injectScriptTagIntoHead(html, GSAP_MOTION_PATH_CDN_SCRIPT);
|
|
8646
8679
|
}
|
|
8680
|
+
function isGsapCoreUrl(src) {
|
|
8681
|
+
const base = "http://localhost/";
|
|
8682
|
+
return URL.canParse(src, base) && /\/gsap(\.min)?\.js$/i.test(new URL(src, base).pathname);
|
|
8683
|
+
}
|
|
8684
|
+
function findGsapCoreScript(html) {
|
|
8685
|
+
const scripts = [...parseHTML(html).document.querySelectorAll("script")];
|
|
8686
|
+
const starts = findStartTags(html, "script");
|
|
8687
|
+
if (starts.length !== scripts.length) return null;
|
|
8688
|
+
const at = scripts.findIndex(
|
|
8689
|
+
(script) => isGsapCoreUrl(lowerCaseAttributes(script).get("src") ?? "")
|
|
8690
|
+
);
|
|
8691
|
+
if (at === -1) return null;
|
|
8692
|
+
const attributes = lowerCaseAttributes(scripts[at]);
|
|
8693
|
+
const end = scriptCloseEnd(html, starts[at]);
|
|
8694
|
+
if (end === 0) return null;
|
|
8695
|
+
return {
|
|
8696
|
+
src: attributes.get("src"),
|
|
8697
|
+
type: attributes.get("type") ?? null,
|
|
8698
|
+
defer: attributes.has("defer"),
|
|
8699
|
+
end
|
|
8700
|
+
};
|
|
8701
|
+
}
|
|
8702
|
+
function lowerCaseAttributes(el) {
|
|
8703
|
+
return new Map([...el.attributes].map((a) => [a.name.toLowerCase(), a.value]));
|
|
8704
|
+
}
|
|
8705
|
+
function scriptCloseEnd(html, start) {
|
|
8706
|
+
const close = /<\/script/gi;
|
|
8707
|
+
close.lastIndex = start;
|
|
8708
|
+
const closeAt = close.exec(html)?.index;
|
|
8709
|
+
return closeAt === void 0 ? 0 : html.indexOf(">", closeAt) + 1;
|
|
8710
|
+
}
|
|
8647
8711
|
function injectStudioMotionDependencies(html, manifestContent) {
|
|
8648
8712
|
const manifest = parseStudioMotionManifestContent(manifestContent);
|
|
8649
8713
|
if (!manifest.hasMotion) return html;
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { createRequire as __hf_createRequire } from "node:module";
|
|
2
|
+
import { fileURLToPath as __hf_fileURLToPath } from "node:url";
|
|
3
|
+
import { dirname as __hf_dirname } from "node:path";
|
|
4
|
+
var require = __hf_createRequire(import.meta.url);
|
|
5
|
+
var __filename = __hf_fileURLToPath(import.meta.url);
|
|
6
|
+
var __dirname = __hf_dirname(__filename);
|
|
7
|
+
|
|
8
|
+
// src/utils/desktopApp.ts
|
|
9
|
+
import { spawn, spawnSync } from "child_process";
|
|
10
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
11
|
+
import { homedir } from "os";
|
|
12
|
+
import { basename, isAbsolute, join, relative, win32 } from "path";
|
|
13
|
+
var DESKTOP_BUNDLE_IDS = ["dev.hyperframes.desktop", "dev.hyperframes.desktop.canary"];
|
|
14
|
+
var DESKTOP_APP_NAMES = ["HyperFrames.app", "HyperFrames Canary.app"];
|
|
15
|
+
var APP_NAMES = ["HyperFrames", "HyperFrames Canary"];
|
|
16
|
+
var STUDIO_PAGE = "https://hyperframes.dev/studio";
|
|
17
|
+
var DOWNLOADS = {
|
|
18
|
+
darwin: `${STUDIO_PAGE}/download`,
|
|
19
|
+
linux: `${STUDIO_PAGE}/download?os=linux`
|
|
20
|
+
};
|
|
21
|
+
var desktopDownloadUrl = (platform = process.platform) => DOWNLOADS[platform] ?? null;
|
|
22
|
+
var downloadHint = (url) => `Keep editing by chatting with Framey in the HyperFrames desktop app \u2192 ${url}`;
|
|
23
|
+
var HANDOFF_READY = process.platform === "darwin";
|
|
24
|
+
var AGENT_HANDOFF_FILE = join(".hyperframes", "agent-handoff.json");
|
|
25
|
+
function agentSession(env = process.env) {
|
|
26
|
+
if (env.CLAUDE_CODE_SESSION_ID)
|
|
27
|
+
return { engine: "claude", sessionId: env.CLAUDE_CODE_SESSION_ID };
|
|
28
|
+
if (env.CODEX_THREAD_ID) return { engine: "codex", sessionId: env.CODEX_THREAD_ID };
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
var openWithBundle = (bundleId, dir) => spawnSync("open", ["-b", bundleId, dir], { stdio: "ignore" }).status === 0;
|
|
32
|
+
function launchApp(executable, dir) {
|
|
33
|
+
try {
|
|
34
|
+
const child = spawn(executable, [dir], { detached: true, stdio: "ignore" });
|
|
35
|
+
child.on("error", () => {
|
|
36
|
+
});
|
|
37
|
+
child.unref();
|
|
38
|
+
return true;
|
|
39
|
+
} catch {
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
var readText = (path) => {
|
|
44
|
+
try {
|
|
45
|
+
return readFileSync(path, "utf8");
|
|
46
|
+
} catch {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
function launcherAppImage(text) {
|
|
51
|
+
try {
|
|
52
|
+
const launcher = JSON.parse(text ?? "null");
|
|
53
|
+
return typeof launcher === "object" && launcher !== null && "appImage" in launcher && typeof launcher.appImage === "string" ? launcher.appImage : null;
|
|
54
|
+
} catch {
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
function desktopApps({
|
|
59
|
+
platform = process.platform,
|
|
60
|
+
env = process.env,
|
|
61
|
+
home = homedir(),
|
|
62
|
+
exists = existsSync,
|
|
63
|
+
read = readText
|
|
64
|
+
} = {}) {
|
|
65
|
+
if (platform !== "win32" && platform !== "linux") return null;
|
|
66
|
+
const config = env.XDG_CONFIG_HOME || join(home, ".config");
|
|
67
|
+
const where = (name) => {
|
|
68
|
+
if (platform === "win32")
|
|
69
|
+
return env.LOCALAPPDATA ? win32.join(env.LOCALAPPDATA, "Programs", name, `${name}.exe`) : null;
|
|
70
|
+
const appImage = launcherAppImage(read(join(config, name, "launcher.json")));
|
|
71
|
+
return appImage && isAbsolute(appImage) ? appImage : null;
|
|
72
|
+
};
|
|
73
|
+
return APP_NAMES.flatMap((name, i) => {
|
|
74
|
+
const executable = where(name);
|
|
75
|
+
return executable && exists(executable) ? [{ executable, canary: i === 1 }] : [];
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function leaveHandoff(dir, session) {
|
|
79
|
+
if (!session) return null;
|
|
80
|
+
try {
|
|
81
|
+
mkdirSync(join(dir, ".hyperframes"), { recursive: true });
|
|
82
|
+
writeFileSync(join(dir, AGENT_HANDOFF_FILE), JSON.stringify(session));
|
|
83
|
+
return session;
|
|
84
|
+
} catch {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
function openInDesktop(dir, {
|
|
89
|
+
ready = HANDOFF_READY,
|
|
90
|
+
platform = process.platform,
|
|
91
|
+
open = openWithBundle,
|
|
92
|
+
launch = launchApp,
|
|
93
|
+
installed = () => desktopInstalled({ platform }),
|
|
94
|
+
env = process.env,
|
|
95
|
+
...where
|
|
96
|
+
} = {}) {
|
|
97
|
+
const notOpened = (reason) => ({
|
|
98
|
+
opened: false,
|
|
99
|
+
reason,
|
|
100
|
+
downloadUrl: desktopDownloadUrl(platform) ?? STUDIO_PAGE
|
|
101
|
+
});
|
|
102
|
+
const opened = (canary) => ({
|
|
103
|
+
opened: true,
|
|
104
|
+
app: canary ? "HyperFrames Canary" : "the HyperFrames desktop app",
|
|
105
|
+
handedOver: leaveHandoff(dir, agentSession(env))
|
|
106
|
+
});
|
|
107
|
+
if (!ready) return notOpened("handoff-unavailable");
|
|
108
|
+
if (platform === "darwin") {
|
|
109
|
+
const bundleId = DESKTOP_BUNDLE_IDS.find((id) => open(id, dir));
|
|
110
|
+
if (!bundleId) return notOpened(installed() ? "open-failed" : "not-installed");
|
|
111
|
+
return opened(bundleId.endsWith(".canary"));
|
|
112
|
+
}
|
|
113
|
+
const apps = desktopApps({ platform, env, ...where });
|
|
114
|
+
if (!apps) return notOpened("unsupported-platform");
|
|
115
|
+
if (!apps.length) return notOpened("not-installed");
|
|
116
|
+
const app = apps.find(({ executable }) => launch(executable, dir));
|
|
117
|
+
return app ? opened(app.canary) : notOpened("open-failed");
|
|
118
|
+
}
|
|
119
|
+
function openCommandFor(dir, cwd = process.cwd()) {
|
|
120
|
+
const shown = relative(cwd, dir) || ".";
|
|
121
|
+
return `hyperframes open ${/\s/.test(shown) ? JSON.stringify(shown) : shown}`;
|
|
122
|
+
}
|
|
123
|
+
var spotlightFinds = (bundleId) => spawnSync("mdfind", [`kMDItemCFBundleIdentifier == '${bundleId}'`], { encoding: "utf8" }).stdout?.split("\n").some((path) => path.endsWith(".app") && !basename(path).startsWith(".")) ?? false;
|
|
124
|
+
function desktopInstalled({
|
|
125
|
+
spotlight = spotlightFinds,
|
|
126
|
+
...where
|
|
127
|
+
} = {}) {
|
|
128
|
+
const { platform = process.platform, home = homedir(), exists = existsSync } = where;
|
|
129
|
+
if (platform !== "darwin") return (desktopApps(where)?.length ?? 0) > 0;
|
|
130
|
+
const folders = ["/Applications", join(home, "Applications")];
|
|
131
|
+
if (folders.some((folder) => DESKTOP_APP_NAMES.some((name) => exists(join(folder, name)))))
|
|
132
|
+
return true;
|
|
133
|
+
return DESKTOP_BUNDLE_IDS.some(spotlight);
|
|
134
|
+
}
|
|
135
|
+
function desktopHint(dir, {
|
|
136
|
+
env = process.env,
|
|
137
|
+
ready = HANDOFF_READY,
|
|
138
|
+
installed,
|
|
139
|
+
platform = process.platform
|
|
140
|
+
} = {}) {
|
|
141
|
+
if (env.HYPERFRAMES_DESKTOP_PROJECT) return null;
|
|
142
|
+
if (ready && (installed ?? desktopInstalled({ platform, env })))
|
|
143
|
+
return `Keep editing by chatting with Framey in the desktop app: ${openCommandFor(dir)}`;
|
|
144
|
+
const url = desktopDownloadUrl(platform);
|
|
145
|
+
return url ? downloadHint(url) : null;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
export {
|
|
149
|
+
desktopDownloadUrl,
|
|
150
|
+
downloadHint,
|
|
151
|
+
HANDOFF_READY,
|
|
152
|
+
openInDesktop,
|
|
153
|
+
desktopInstalled,
|
|
154
|
+
desktopHint
|
|
155
|
+
};
|
|
@@ -6,24 +6,24 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
serveStaticProjectHtml
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-TAVCXJDZ.js";
|
|
10
10
|
import {
|
|
11
11
|
resolveProject
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-5WAPJM7Q.js";
|
|
13
13
|
import {
|
|
14
14
|
AUDIT_SEEK_OPTIONS,
|
|
15
15
|
installPageFunctionGuard,
|
|
16
16
|
seekCompositionTimeline,
|
|
17
17
|
waitForCompositionFonts,
|
|
18
18
|
waitForRuntimeReady
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-2X6IXODS.js";
|
|
20
20
|
import {
|
|
21
21
|
launchManagedBrowser,
|
|
22
22
|
resolveManagedGpuMode
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-PLQ4HJOO.js";
|
|
24
24
|
import {
|
|
25
25
|
resolveDiagnosticNavigationTimeoutMs
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-LHUITV7D.js";
|
|
27
27
|
import {
|
|
28
28
|
c
|
|
29
29
|
} from "./chunk-ZTZA4UWZ.js";
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
import {
|
|
38
38
|
printDeprecationNotice,
|
|
39
39
|
withMeta
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-HQWCFX5E.js";
|
|
41
41
|
import {
|
|
42
42
|
normalizeErrorMessage
|
|
43
43
|
} from "./chunk-KNU5COPB.js";
|
|
@@ -670,7 +670,7 @@ async function collectTweenBoundaries(page) {
|
|
|
670
670
|
});
|
|
671
671
|
}
|
|
672
672
|
async function bundleProjectHtml(projectDir) {
|
|
673
|
-
const { bundleToSingleHtml } = await import("./compiler-
|
|
673
|
+
const { bundleToSingleHtml } = await import("./compiler-534QUPGQ.js");
|
|
674
674
|
return bundleToSingleHtml(projectDir);
|
|
675
675
|
}
|
|
676
676
|
async function alignViewportToComposition(page, url) {
|
|
@@ -692,8 +692,8 @@ async function alignViewportToComposition(page, url) {
|
|
|
692
692
|
async function runLayoutAudit(projectDir, opts) {
|
|
693
693
|
const { ensureBrowser } = await import("./manager-CT3D67CG.js");
|
|
694
694
|
const puppeteer = await import("puppeteer-core");
|
|
695
|
-
const { buildChromeArgs } = await import("./src-
|
|
696
|
-
const { assertWebGpuAdapterAvailable, compositionRequiresWebGpu, resolveLocalBrowserGpuMode } = await import("./gpuPolicy-
|
|
695
|
+
const { buildChromeArgs } = await import("./src-WEETQ4CZ.js");
|
|
696
|
+
const { assertWebGpuAdapterAvailable, compositionRequiresWebGpu, resolveLocalBrowserGpuMode } = await import("./gpuPolicy-NTPPP3CY.js");
|
|
697
697
|
const html = await bundleProjectHtml(projectDir);
|
|
698
698
|
const server = await serveStaticProjectHtml(
|
|
699
699
|
projectDir,
|
|
@@ -7,7 +7,6 @@ var __dirname = __hf_dirname(__filename);
|
|
|
7
7
|
import {
|
|
8
8
|
FEEDBACK_EMAIL_ENV
|
|
9
9
|
} from "./chunk-IGLEPPTN.js";
|
|
10
|
-
import "./chunk-M2WBOQ2Q.js";
|
|
11
10
|
|
|
12
11
|
// src/utils/dotEnv.ts
|
|
13
12
|
function valueOf(raw) {
|
|
@@ -31,9 +30,10 @@ function applyDotEnv(content, env) {
|
|
|
31
30
|
for (const entry of content.split("\n").map(entryOf)) {
|
|
32
31
|
if (!entry) continue;
|
|
33
32
|
const [key, value] = entry;
|
|
34
|
-
if (key && key !== FEEDBACK_EMAIL_ENV && !(key in env)) env[key] = value;
|
|
33
|
+
if (key && key.toUpperCase() !== FEEDBACK_EMAIL_ENV && !(key in env)) env[key] = value;
|
|
35
34
|
}
|
|
36
35
|
}
|
|
36
|
+
|
|
37
37
|
export {
|
|
38
38
|
applyDotEnv
|
|
39
39
|
};
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "./chunk-ZTZA4UWZ.js";
|
|
13
13
|
import {
|
|
14
14
|
getSystemMeta
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-E5BAQVYP.js";
|
|
16
16
|
import {
|
|
17
17
|
getInvocationId
|
|
18
18
|
} from "./chunk-54HJ63Q2.js";
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
evaluateCanary,
|
|
24
24
|
findCanary,
|
|
25
25
|
parseCanaryOverride
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-LVXNXV7G.js";
|
|
27
27
|
import {
|
|
28
28
|
hostAnswers
|
|
29
29
|
} from "./chunk-K4WIOZFP.js";
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
} from "./chunk-XUXGIA7H.js";
|
|
38
38
|
import {
|
|
39
39
|
VERSION
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-SR2PZ7YB.js";
|
|
41
41
|
|
|
42
42
|
// src/telemetry/transport.ts
|
|
43
43
|
import { spawn } from "child_process";
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
typeDirPath,
|
|
21
21
|
updateRecord,
|
|
22
22
|
withFigmaErrors
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-CSACVU42.js";
|
|
24
24
|
import {
|
|
25
25
|
defineCommand
|
|
26
26
|
} from "./chunk-S3S4TGEH.js";
|
|
@@ -221,7 +221,7 @@ var asset_default = defineCommand({
|
|
|
221
221
|
rendered > 0 ? `(${results.length} nodes, ${rendered} rendered in 1 figma request)` : `(${results.length} nodes, all reused from cache \u2014 no figma request)`
|
|
222
222
|
);
|
|
223
223
|
}
|
|
224
|
-
const { trackFigmaImport } = await import("./telemetry-
|
|
224
|
+
const { trackFigmaImport } = await import("./telemetry-XYNKPYSU.js");
|
|
225
225
|
trackFigmaImport({
|
|
226
226
|
phase: "asset",
|
|
227
227
|
reused: results.every((r) => r.reused),
|
|
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
|
|
|
6
6
|
var __dirname = __hf_dirname(__filename);
|
|
7
7
|
import {
|
|
8
8
|
resolveCaptureBrowserGpuMode
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-ZXKQI3CL.js";
|
|
10
10
|
import {
|
|
11
11
|
requestCliExit
|
|
12
12
|
} from "./chunk-PBN6GBJE.js";
|