@ignix-social/editor 0.1.7 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/NOTICE +7 -0
  2. package/licenses/torch_audioset-MIT.txt +21 -0
  3. package/package.json +1 -1
  4. package/patches/index.mjs +29 -0
  5. package/skills/ignix-editor/SKILL.md +3 -0
  6. package/src/analysis/audio-events.mjs +223 -0
  7. package/src/analysis/audioset-classes.json +1 -0
  8. package/src/analysis/runtime.mjs +9 -2
  9. package/src/analysis/serve.mjs +10 -0
  10. package/src/analysis/style.mjs +381 -0
  11. package/src/binaries.json +14 -0
  12. package/src/cli.mjs +38 -8
  13. package/src/runtime/ignix-frame.js +1 -1
  14. package/src/validate.mjs +10 -0
  15. package/vendor/hyperframes/UPSTREAM.json +2 -1
  16. package/vendor/hyperframes/dist/checkBrowser-RPMO4OW5.js +5 -5
  17. package/vendor/hyperframes/dist/chunk-2YN64IN5.js +1 -1
  18. package/vendor/hyperframes/dist/chunk-4PFZPP2N.js +3 -3
  19. package/vendor/hyperframes/dist/chunk-4THIAPBL.js +1 -1
  20. package/vendor/hyperframes/dist/chunk-EOVYQ3IG.js +1 -1
  21. package/vendor/hyperframes/dist/chunk-HWKCIWQT.js +2 -2
  22. package/vendor/hyperframes/dist/chunk-K2FTXJYH.js +6 -6
  23. package/vendor/hyperframes/dist/chunk-L3YOGIPG.js +1 -1
  24. package/vendor/hyperframes/dist/chunk-S7NPLFWV.js +1 -1
  25. package/vendor/hyperframes/dist/chunk-XUXGIA7H.js +1 -1
  26. package/vendor/hyperframes/dist/chunk-YQZNILVH.js +1 -1
  27. package/vendor/hyperframes/dist/chunk-Z6B37SNM.js +1 -1
  28. package/vendor/hyperframes/dist/chunk-ZMXUQLI2.js +1 -1
  29. package/vendor/hyperframes/dist/cli.js +1 -1
  30. package/vendor/hyperframes/dist/hyperframe-runtime.js +4 -4
  31. package/vendor/hyperframes/dist/hyperframe.manifest.json +1 -1
  32. package/vendor/hyperframes/dist/hyperframe.runtime.iife.js +4 -4
  33. package/vendor/hyperframes/dist/hyperframes-player.global.js +1 -1
@@ -610,7 +610,7 @@ function resolveConfig(overrides) {
610
610
  merged.enableStreamingEncode = false;
611
611
  merged.streamingEncodeAutoDisabledOnWin32Compound = true;
612
612
  console.error(
613
- "[hyperframes] Windows compound-workaround auto-detected \u2014 disabling streaming-encode (platform=win32, software-GPU forced, workers=1). Field signal ts=1784131903. Override: PRODUCER_ENABLE_STREAMING_ENCODE=true."
613
+ "[ignix-editor] Windows compound-workaround auto-detected \u2014 disabling streaming-encode (platform=win32, software-GPU forced, workers=1). Field signal ts=1784131903. Override: PRODUCER_ENABLE_STREAMING_ENCODE=true."
614
614
  );
615
615
  }
616
616
  if (merged.useDrawElement && merged.enablePageSideCompositing) {
@@ -1208,15 +1208,15 @@ function resolveBrowserGpuMode(mode, options = {}) {
1208
1208
  var _unverifiedHardwareGpuWarned = false;
1209
1209
  function buildUnverifiedHardwareGpuWarning(platform, cause) {
1210
1210
  if (cause === "probe-error") {
1211
- return "[hyperframes] browserGpuMode=hardware was requested, but the GPU probe could not run, so hardware acceleration is UNVERIFIED \u2014 if Chrome falls back to software WebGL the capture will run at CPU speed. Honouring the explicit request anyway.\n This is a probe failure, not evidence of a missing GPU: see the `browserGpuMode probe \u2192 software (probe failed ...)` line above for the underlying error, which usually means Chrome could not launch (bad HYPERFRAMES_BROWSER_PATH, missing shared libraries, or a denied sandbox) rather than a GPU problem.\n Run `hyperframes doctor` to check the Chrome install.";
1211
+ return "[ignix-editor] browserGpuMode=hardware was requested, but the GPU probe could not run, so hardware acceleration is UNVERIFIED \u2014 if Chrome falls back to software WebGL the capture will run at CPU speed. Honouring the explicit request anyway.\n This is a probe failure, not evidence of a missing GPU: see the `browserGpuMode probe \u2192 software (probe failed ...)` line above for the underlying error, which usually means Chrome could not launch (bad HYPERFRAMES_BROWSER_PATH, missing shared libraries, or a denied sandbox) rather than a GPU problem.\n Run `hyperframes doctor` to check the Chrome install.";
1212
1212
  }
1213
1213
  const remediation = platform === "linux" ? "Inside Docker, the container needs GPU passthrough: `--gpus all` with the NVIDIA Container Toolkit installed, or `--device /dev/dri` for Mesa/AMD/Intel. The image also needs the matching userspace driver + libEGL. Verify with `hyperframes render --browser-gpu` and watch for this warning disappearing." : "Check that the host exposes a GPU to this process and that the graphics drivers are installed.";
1214
- return `[hyperframes] browserGpuMode=hardware was requested, but the WebGL probe found no hardware GPU \u2014 Chrome will silently fall back to software WebGL and the capture will run at CPU speed. Honouring the explicit request anyway.
1214
+ return `[ignix-editor] browserGpuMode=hardware was requested, but the WebGL probe found no hardware GPU \u2014 Chrome will silently fall back to software WebGL and the capture will run at CPU speed. Honouring the explicit request anyway.
1215
1215
  ${remediation}
1216
1216
  Pass --no-browser-gpu to select deterministic SwiftShader instead of waiting on a hardware path that is not there.`;
1217
1217
  }
1218
1218
  function logResolvedBrowserGpuMode(resolved, reason) {
1219
- console.error(`[hyperframes] browserGpuMode probe \u2192 ${resolved} (${reason})`);
1219
+ console.error(`[ignix-editor] browserGpuMode probe \u2192 ${resolved} (${reason})`);
1220
1220
  }
1221
1221
  function createBrowserLaunchFingerprint(chromeArgs, config) {
1222
1222
  const launchConfig = {
@@ -5264,9 +5264,9 @@ function isFontResourceError(type, text, locationUrl) {
5264
5264
  function formatConsoleDiagnostic(type, text, locationUrl) {
5265
5265
  const isFontLoadError = isFontResourceError(type, text, locationUrl);
5266
5266
  if (isFontLoadError) return { text: `[Browser] ${text}`, suppressHostLog: true };
5267
- if (text.startsWith("[hyperframes]")) {
5267
+ if (text.startsWith("[ignix-editor]")) {
5268
5268
  return {
5269
- text: `[HyperFrames] ${text.slice("[hyperframes]".length).trim()}`,
5269
+ text: `[HyperFrames] ${text.slice("[ignix-editor]".length).trim()}`,
5270
5270
  suppressHostLog: false
5271
5271
  };
5272
5272
  }
@@ -36,7 +36,7 @@ async function runPostRenderStepAsync(label, fn, sink = defaultErrorSink) {
36
36
  }
37
37
  function reportPostRenderStepFailure(label, err, sink) {
38
38
  const message = err instanceof Error ? err.message : String(err);
39
- sink(` [hyperframes] Post-render step '${label}' failed (render already succeeded): ${message}`);
39
+ sink(` [ignix-editor] Post-render step '${label}' failed (render already succeeded): ${message}`);
40
40
  sanitizeSuccessfulExitCode();
41
41
  }
42
42
 
@@ -215,7 +215,7 @@ function stampFileHfIds(filePath) {
215
215
  }
216
216
  return normalized;
217
217
  } catch (err) {
218
- console.warn("[hyperframes] stampFileHfIds: failed to stamp ids:", err);
218
+ console.warn("[ignix-editor] stampFileHfIds: failed to stamp ids:", err);
219
219
  return null;
220
220
  } finally {
221
221
  if (fd !== null) closeSync(fd);
@@ -123,7 +123,7 @@ function warnSeedBackfillFailed(error) {
123
123
  seedBackfillWarned = true;
124
124
  if (telemetryRuntimeOverride() !== null) return;
125
125
  console.warn(
126
- `[hyperframes] Could not persist telemetry config${error ? `: ${error}` : ""}. Canary cohort assignment will not be stable across runs.`
126
+ `[ignix-editor] Could not persist telemetry config${error ? `: ${error}` : ""}. Canary cohort assignment will not be stable across runs.`
127
127
  );
128
128
  }
129
129
  function backfillBucketSeed(config) {
@@ -132,7 +132,7 @@ async function openSettledCompositionPage(html, url, options) {
132
132
  ${remediation}`, { cause: launchError });
133
133
  }
134
134
  console.warn(
135
- `[hyperframes] Managed chrome-headless-shell crashed at launch; retrying once with system Chrome at ${systemBrowser.executablePath}.`
135
+ `[ignix-editor] Managed chrome-headless-shell crashed at launch; retrying once with system Chrome at ${systemBrowser.executablePath}.`
136
136
  );
137
137
  try {
138
138
  chromeBrowser = await launch(systemBrowser.executablePath);
@@ -155,7 +155,7 @@ var afterFontsFallback = () => `document.addEventListener("DOMContentLoaded", fu
155
155
  var T = "${AFTER_FONTS_SCRIPT_TYPE}";
156
156
  var all = [].slice.call(document.querySelectorAll('${AFTER_FONTS_SCRIPTS}'));
157
157
  if (!all.length) return;
158
- console.warn("[hyperframes] the runtime has no web-font gate; composition scripts run without waiting for fonts");
158
+ console.warn("[ignix-editor] the runtime has no web-font gate; composition scripts run without waiting for fonts");
159
159
  var late = function (el) { return el.type !== T || el.matches('${DEFERRED_FILE}'); };
160
160
  var queue = all.filter(function (el) { return !late(el); }).concat(all.filter(late));
161
161
  (function next() {
@@ -5265,7 +5265,7 @@ function collectRenderMedia(html) {
5265
5265
  }
5266
5266
 
5267
5267
  // ../core/dist/generated/position-edits-render-inline.js
5268
- var POSITION_EDITS_RENDER_IIFE = '"use strict";(()=>{function T(){return globalThis}function P(e,t){if(typeof window>"u")return;let o=T(),r=o.__hf?.onSwallowed;if(r)try{r({label:e,error:t})}catch(s){}(o.__hfDebug||o.__HYPERFRAMES_DEBUG)&&console.debug(`[hyperframes] ${e} swallowed:`,t)}var x=null;function R(e,t){if(x)try{x({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(o){P("runtime.analytics.site1",o)}}var W="http://www.w3.org/1999/xhtml";function N(e){return e!=null&&e.nodeType===1}function _(e){return N(e)&&(e.namespaceURI===W||e.namespaceURI==="http://www.w3.org/2000/svg")}var w="data-hf-edit-base-x",y="data-hf-edit-base-y",m="data-hf-edit-original-translate",k=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},O=e=>{let t=[],o=0,r="";for(let s of e.trim())s==="("&&(o+=1),s===")"&&(o=Math.max(0,o-1)),/\\s/.test(s)&&o===0?(r&&t.push(r),r=""):r+=s;return r&&t.push(r),t},L=/^-?(?:\\d+(?:\\.\\d+)?|\\.\\d+)px$/,E=(e,t)=>L.test(e)&&L.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,V=(e,t,o)=>{if(!e||e==="none")return`${t} ${o}`;let[r,s,a]=O(e);if(r===void 0)return`${t} ${o}`;if(s===void 0)return`${E(r,t)} ${o}`;let i=a===void 0?"":` ${a}`;return`${E(r,t)} ${E(s,o)}${i}`},j=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},G=e=>{let t=e.style.getPropertyValue("translate").trim();if(t)return t==="none"?"":t;try{let o=e.ownerDocument.defaultView,r=o?o.getComputedStyle(e).getPropertyValue("translate").trim():"";return r==="none"?"":r}catch{return""}},b=new WeakMap;function B(e,t){let o=b.get(e);if(!t?.force&&o!==void 0&&e.style.getPropertyValue("translate")!==o){R("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=k(e.getAttribute("data-x"))-k(e.getAttribute(w)),s=k(e.getAttribute("data-y"))-k(e.getAttribute(y));e.hasAttribute(m)||e.setAttribute(m,G(e)),o===void 0&&j(e);let a=e.getAttribute(m)??"",i=V(a,`${r}px`,`${s}px`);e.style.setProperty("translate",i),b.set(e,e.style.getPropertyValue("translate"))}function S(e,t){let o=e.querySelectorAll(`[${m}]:not([${w}]):not([${y}])`);for(let a=0;a<o.length;a++){let i=o[a];if(i===void 0||!_(i))continue;let g=i.getAttribute(m)??"";g===""?i.style.removeProperty("translate"):i.style.setProperty("translate",g),i.removeAttribute(m),b.delete(i)}let r=e.querySelectorAll(`[${w}], [${y}]`),s=0;for(let a=0;a<r.length;a++){let i=r[a];i===void 0||!_(i)||(B(i,t),s+=1)}return s}var $="__hfPositionEditsSeekReapplyWrapped",D=new WeakSet,M=new WeakMap,H=new WeakMap;function F(e){let t=e,o=()=>{try{S(t.document)}catch{}},r=n=>typeof n=="function"&&(D.has(n)||!!n[$]),s=n=>{D.add(n);try{Object.defineProperty(n,$,{value:!0})}catch{}},a=n=>{if(typeof n!="function"||r(n))return n;let l=function(...u){let d=n.apply(this,u);return o(),d};return s(l),l},i=(n,l)=>{let u=M.get(n);if(u?.has(l))return!0;let d=Object.getOwnPropertyDescriptor(n,l);if(d?.configurable===!1){let c=n[l];return typeof c=="function"&&(n[l]=a(c),o()),!1}let p=n[l],f=d?.set;return Object.defineProperty(n,l,{configurable:!0,enumerable:d?.enumerable??!0,get:()=>p,set:c=>{p=a(c),f?.call(n,c)}}),p=a(p),u??(u=new Set),u.add(l),M.set(n,u),o(),!0},g=(n,l)=>{let u=H.get(t),d=Object.getOwnPropertyDescriptor(t,n);if(!u?.has(n)){if(d?.configurable===!1){let c=t[n];return c?i(c,l):!1}let f=t[n];Object.defineProperty(t,n,{configurable:!0,enumerable:d?.enumerable??!0,get:()=>f,set:c=>{f=c,f&&i(f,l)}}),u??(u=new Set),u.add(n),H.set(t,u)}let p=t[n];return p?i(p,l):!1},v=()=>{let n=g("__hf","seek"),l=g("__player","renderSeek");return n&&l};if(v())return;let h=120,A=t.setInterval(()=>{if(v()){t.clearInterval(A);return}h-=1,h<=0&&t.clearInterval(A)},50)}function I(){document.querySelector(`[${w}], [${y}]`)&&(S(document),F(window))}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",I,{once:!0}):I();})();\n';
5268
+ var POSITION_EDITS_RENDER_IIFE = '"use strict";(()=>{function T(){return globalThis}function P(e,t){if(typeof window>"u")return;let o=T(),r=o.__hf?.onSwallowed;if(r)try{r({label:e,error:t})}catch(s){}(o.__hfDebug||o.__HYPERFRAMES_DEBUG)&&console.debug(`[ignix-editor] ${e} swallowed:`,t)}var x=null;function R(e,t){if(x)try{x({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(o){P("runtime.analytics.site1",o)}}var W="http://www.w3.org/1999/xhtml";function N(e){return e!=null&&e.nodeType===1}function _(e){return N(e)&&(e.namespaceURI===W||e.namespaceURI==="http://www.w3.org/2000/svg")}var w="data-hf-edit-base-x",y="data-hf-edit-base-y",m="data-hf-edit-original-translate",k=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},O=e=>{let t=[],o=0,r="";for(let s of e.trim())s==="("&&(o+=1),s===")"&&(o=Math.max(0,o-1)),/\\s/.test(s)&&o===0?(r&&t.push(r),r=""):r+=s;return r&&t.push(r),t},L=/^-?(?:\\d+(?:\\.\\d+)?|\\.\\d+)px$/,E=(e,t)=>L.test(e)&&L.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,V=(e,t,o)=>{if(!e||e==="none")return`${t} ${o}`;let[r,s,a]=O(e);if(r===void 0)return`${t} ${o}`;if(s===void 0)return`${E(r,t)} ${o}`;let i=a===void 0?"":` ${a}`;return`${E(r,t)} ${E(s,o)}${i}`},j=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},G=e=>{let t=e.style.getPropertyValue("translate").trim();if(t)return t==="none"?"":t;try{let o=e.ownerDocument.defaultView,r=o?o.getComputedStyle(e).getPropertyValue("translate").trim():"";return r==="none"?"":r}catch{return""}},b=new WeakMap;function B(e,t){let o=b.get(e);if(!t?.force&&o!==void 0&&e.style.getPropertyValue("translate")!==o){R("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=k(e.getAttribute("data-x"))-k(e.getAttribute(w)),s=k(e.getAttribute("data-y"))-k(e.getAttribute(y));e.hasAttribute(m)||e.setAttribute(m,G(e)),o===void 0&&j(e);let a=e.getAttribute(m)??"",i=V(a,`${r}px`,`${s}px`);e.style.setProperty("translate",i),b.set(e,e.style.getPropertyValue("translate"))}function S(e,t){let o=e.querySelectorAll(`[${m}]:not([${w}]):not([${y}])`);for(let a=0;a<o.length;a++){let i=o[a];if(i===void 0||!_(i))continue;let g=i.getAttribute(m)??"";g===""?i.style.removeProperty("translate"):i.style.setProperty("translate",g),i.removeAttribute(m),b.delete(i)}let r=e.querySelectorAll(`[${w}], [${y}]`),s=0;for(let a=0;a<r.length;a++){let i=r[a];i===void 0||!_(i)||(B(i,t),s+=1)}return s}var $="__hfPositionEditsSeekReapplyWrapped",D=new WeakSet,M=new WeakMap,H=new WeakMap;function F(e){let t=e,o=()=>{try{S(t.document)}catch{}},r=n=>typeof n=="function"&&(D.has(n)||!!n[$]),s=n=>{D.add(n);try{Object.defineProperty(n,$,{value:!0})}catch{}},a=n=>{if(typeof n!="function"||r(n))return n;let l=function(...u){let d=n.apply(this,u);return o(),d};return s(l),l},i=(n,l)=>{let u=M.get(n);if(u?.has(l))return!0;let d=Object.getOwnPropertyDescriptor(n,l);if(d?.configurable===!1){let c=n[l];return typeof c=="function"&&(n[l]=a(c),o()),!1}let p=n[l],f=d?.set;return Object.defineProperty(n,l,{configurable:!0,enumerable:d?.enumerable??!0,get:()=>p,set:c=>{p=a(c),f?.call(n,c)}}),p=a(p),u??(u=new Set),u.add(l),M.set(n,u),o(),!0},g=(n,l)=>{let u=H.get(t),d=Object.getOwnPropertyDescriptor(t,n);if(!u?.has(n)){if(d?.configurable===!1){let c=t[n];return c?i(c,l):!1}let f=t[n];Object.defineProperty(t,n,{configurable:!0,enumerable:d?.enumerable??!0,get:()=>f,set:c=>{f=c,f&&i(f,l)}}),u??(u=new Set),u.add(n),H.set(t,u)}let p=t[n];return p?i(p,l):!1},v=()=>{let n=g("__hf","seek"),l=g("__player","renderSeek");return n&&l};if(v())return;let h=120,A=t.setInterval(()=>{if(v()){t.clearInterval(A);return}h-=1,h<=0&&t.clearInterval(A)},50)}function I(){document.querySelector(`[${w}], [${y}]`)&&(S(document),F(window))}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",I,{once:!0}):I();})();\n';
5269
5269
  function getPositionEditsRenderScript() {
5270
5270
  return POSITION_EDITS_RENDER_IIFE;
5271
5271
  }
@@ -415,7 +415,7 @@ function emitCliErrorEvent(kind, error) {
415
415
  }
416
416
  function reportPostRenderTerminationEvent(label, kind, error) {
417
417
  process.stderr.write(
418
- ` [hyperframes] Post-render ${label} (render already succeeded): ${error.message}
418
+ ` [ignix-editor] Post-render ${label} (render already succeeded): ${error.message}
419
419
  `
420
420
  );
421
421
  emitCliErrorEvent(kind, error);