@pixerate/editor 0.129.0 → 0.131.0

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 (62) hide show
  1. package/dist/animation-editor/index.cjs +55 -55
  2. package/dist/animation-editor/index.d.cts +5 -5
  3. package/dist/animation-editor/index.d.ts +5 -5
  4. package/dist/animation-editor/index.js +2 -2
  5. package/dist/{bezier-DP4NnJp3.d.ts → bezier-0IHDCvv_.d.ts} +1 -1
  6. package/dist/{bezier-CvgQiYRg.d.cts → bezier-oCBfrGDG.d.cts} +1 -1
  7. package/dist/canvas/index.d.cts +7 -7
  8. package/dist/canvas/index.d.ts +7 -7
  9. package/dist/{chunk-A6KHMKI4.js → chunk-ECVI5QRE.js} +2 -2
  10. package/dist/{chunk-ROZFX4QI.js → chunk-IEYXYMRQ.js} +556 -13
  11. package/dist/chunk-IEYXYMRQ.js.map +1 -0
  12. package/dist/{chunk-BEGEWQHD.cjs → chunk-OYPJGGF3.cjs} +36 -36
  13. package/dist/{chunk-BEGEWQHD.cjs.map → chunk-OYPJGGF3.cjs.map} +1 -1
  14. package/dist/{chunk-XLUYXUBD.cjs → chunk-SUJ4U6V2.cjs} +82 -82
  15. package/dist/{chunk-XLUYXUBD.cjs.map → chunk-SUJ4U6V2.cjs.map} +1 -1
  16. package/dist/{chunk-F7Q2NE2Y.js → chunk-YQJWLB3G.js} +2 -2
  17. package/dist/{chunk-ORE334I6.cjs → chunk-YYJKIESX.cjs} +619 -76
  18. package/dist/chunk-YYJKIESX.cjs.map +1 -0
  19. package/dist/effects/index.d.cts +4 -4
  20. package/dist/effects/index.d.ts +4 -4
  21. package/dist/{export-DRzNhrdx.d.cts → export-BRixPkeT.d.cts} +3 -3
  22. package/dist/{export-Cbr9IqpJ.d.cts → export-CfAogLEr.d.cts} +1 -1
  23. package/dist/{export-DotEEyXj.d.ts → export-CkDz9XuC.d.ts} +3 -3
  24. package/dist/{export-ClPKUB-v.d.ts → export-Crl82sbE.d.ts} +1 -1
  25. package/dist/{helpers-CPWcK504.d.ts → helpers-BCd2-PAR.d.ts} +67 -3
  26. package/dist/{helpers-C5aAd44p.d.cts → helpers-CoIeXQnW.d.cts} +67 -3
  27. package/dist/image-editor/index.cjs +606 -606
  28. package/dist/image-editor/index.d.cts +8 -8
  29. package/dist/image-editor/index.d.ts +8 -8
  30. package/dist/image-editor/index.js +2 -2
  31. package/dist/{opentype-BOewaGQx.d.cts → opentype-BDahNRTe.d.cts} +2 -2
  32. package/dist/{opentype-sQrF3Ry1.d.ts → opentype-BQFEvy-t.d.ts} +2 -2
  33. package/dist/paint-editor/index.cjs +7 -7
  34. package/dist/paint-editor/index.d.cts +5 -5
  35. package/dist/paint-editor/index.d.ts +5 -5
  36. package/dist/paint-editor/index.js +2 -2
  37. package/dist/{pathfinder-CnkW7zLI.d.cts → pathfinder-01ZgAwqV.d.cts} +1 -1
  38. package/dist/{pathfinder-BwJx0_zM.d.ts → pathfinder-DaVdT8jq.d.ts} +1 -1
  39. package/dist/{pool-CTrtciaN.d.ts → pool-D2A3WTt9.d.ts} +1 -1
  40. package/dist/{pool-C7GtrL34.d.cts → pool-D6a45MoE.d.cts} +1 -1
  41. package/dist/{svg-C4LlFnEw.d.cts → svg-CcDz7Zq2.d.cts} +2 -2
  42. package/dist/{svg-CUzZa0EO.d.ts → svg-DELNVerw.d.ts} +2 -2
  43. package/dist/{tools-BpCmUNxb.d.cts → tools-BFvkFnRj.d.cts} +1 -1
  44. package/dist/{tools-AugT22z3.d.ts → tools-D7ws-OKL.d.ts} +1 -1
  45. package/dist/vector/index.cjs +1149 -1017
  46. package/dist/vector/index.cjs.map +1 -1
  47. package/dist/vector/index.d.cts +106 -10
  48. package/dist/vector/index.d.ts +106 -10
  49. package/dist/vector/index.js +142 -10
  50. package/dist/vector/index.js.map +1 -1
  51. package/dist/video-editor/index.d.cts +4 -4
  52. package/dist/video-editor/index.d.ts +4 -4
  53. package/dist/{warp-CIsO617e.d.ts → warp-2N9wkOkL.d.ts} +2 -2
  54. package/dist/{warp-D62N_5VK.d.cts → warp-DErXW5rz.d.cts} +2 -2
  55. package/package.json +2 -2
  56. package/skills/pixerate-image-editor/SKILL.md +1 -1
  57. package/skills/pixerate-vector/SKILL.md +8 -1
  58. package/skills/pixerate-vector/references/commands.md +20 -0
  59. package/dist/chunk-ORE334I6.cjs.map +0 -1
  60. package/dist/chunk-ROZFX4QI.js.map +0 -1
  61. /package/dist/{chunk-A6KHMKI4.js.map → chunk-ECVI5QRE.js.map} +0 -0
  62. /package/dist/{chunk-F7Q2NE2Y.js.map → chunk-YQJWLB3G.js.map} +0 -0
@@ -1,11 +1,11 @@
1
- import { V as VideoProject, a as VideoAnimatable, b as VideoAsset, c as VideoAssetProxy, d as VideoClip, e as VideoClipAnimation, f as VideoClipEffect, g as VideoEffectRef, h as VideoEffectValues, i as VideoGrade, j as VideoGradeLut, k as VideoKeyframes, l as VideoMarker, m as VideoSequence, n as VideoTrack, o as VideoTranscriptWord, p as VideoTransform, q as VideoTransition, v as videoKeysOf, r as VideoTrackKind, s as VideoPlacementMode, t as VideoKeyframeProperty, u as VideoKey, w as VideoMediaClip, x as VideoEffectsEngine, y as VideoLayer, z as VideoFrame, A as VideoRect, B as VideoEffectPlace, C as VideoFfmpegOptions, D as VideoFfmpegExport, E as VideoEdlOptions, F as VideoFadeCurve, G as VideoFit, H as VideoBlendMode, I as VideoAssetKind, J as VideoClipAnimationEffect, K as VideoTransitionType } from '../export-Cbr9IqpJ.cjs';
2
- export { L as VIDEO_BLEND_MODES, M as VIDEO_CLIP_ANIMATION_EFFECTS, N as VIDEO_CLIP_TYPES, O as VIDEO_EASE_NAMES, P as VIDEO_EFFECT_PLACES, Q as VIDEO_FADE_CURVES, R as VIDEO_FITS, S as VIDEO_KEYFRAME_LIMITS, T as VIDEO_KEYFRAME_PROPERTIES, U as VIDEO_PLACEMENT_MODES, W as VIDEO_TRANSFORM_PROPERTIES, X as VIDEO_TRANSITION_TYPES, Y as VIDEO_WIPE_DIRECTIONS, Z as VideoAudioSource, _ as VideoClipType, $ as VideoColorClip, a0 as VideoEase, a1 as VideoEffectClip, a2 as VideoEffectJob, a3 as VideoEffectUse, a4 as VideoEffectsEngineOptions, a5 as VideoLayerEffect, a6 as VideoLoudnessMeasurement, a7 as VideoLoudnessTarget, a8 as VideoSequenceClip, a9 as VideoTextClip, aa as VideoWipeDirection, ab as checkVideoEffectPlace, ac as checkVideoEffectValues, ad as ffmpegFilterValue, ae as isVideoKeyframes, af as mixEffectPixels, ag as overEffectPixels, ah as parseVideoLoudnessMeasurement, ai as placeVideoRect, aj as removeVideoKey, ak as retimeVideoAnimatable, al as setVideoKey, am as sortVideoKeys, an as splitVideoAnimatable, ao as toVideoEdl, ap as toVideoFfmpeg, aq as toVideoLoudnessMeasure, ar as videoClipEffectUses, as as videoClipSoundGain, at as videoEaseBezier, au as videoEaseProgress, av as videoEffectFrameTime, aw as videoEffectLayerKey, ax as videoEffectValuesAt, ay as videoFadeCurveGain, az as videoFfmpegUnsupportedEffects, aA as videoFrameAt, aB as videoFrameLeafLayers, aC as videoKeyframeBreakpoints, aD as videoKeyframeFfmpegExpr, aE as videoLayersUseEffects, aF as videoLayersWithoutTransitionEffects, aG as videoProjectEffects, aH as videoShellQuote, aI as videoTextStyle, aJ as videoTitleFrame, aK as videoTransformAt, aL as videoTransitionAudioCurve, aM as videoTransitionEase, aN as videoValueAt } from '../export-Cbr9IqpJ.cjs';
1
+ import { V as VideoProject, a as VideoAnimatable, b as VideoAsset, c as VideoAssetProxy, d as VideoClip, e as VideoClipAnimation, f as VideoClipEffect, g as VideoEffectRef, h as VideoEffectValues, i as VideoGrade, j as VideoGradeLut, k as VideoKeyframes, l as VideoMarker, m as VideoSequence, n as VideoTrack, o as VideoTranscriptWord, p as VideoTransform, q as VideoTransition, v as videoKeysOf, r as VideoTrackKind, s as VideoPlacementMode, t as VideoKeyframeProperty, u as VideoKey, w as VideoMediaClip, x as VideoEffectsEngine, y as VideoLayer, z as VideoFrame, A as VideoRect, B as VideoEffectPlace, C as VideoFfmpegOptions, D as VideoFfmpegExport, E as VideoEdlOptions, F as VideoFadeCurve, G as VideoFit, H as VideoBlendMode, I as VideoAssetKind, J as VideoClipAnimationEffect, K as VideoTransitionType } from '../export-CfAogLEr.cjs';
2
+ export { L as VIDEO_BLEND_MODES, M as VIDEO_CLIP_ANIMATION_EFFECTS, N as VIDEO_CLIP_TYPES, O as VIDEO_EASE_NAMES, P as VIDEO_EFFECT_PLACES, Q as VIDEO_FADE_CURVES, R as VIDEO_FITS, S as VIDEO_KEYFRAME_LIMITS, T as VIDEO_KEYFRAME_PROPERTIES, U as VIDEO_PLACEMENT_MODES, W as VIDEO_TRANSFORM_PROPERTIES, X as VIDEO_TRANSITION_TYPES, Y as VIDEO_WIPE_DIRECTIONS, Z as VideoAudioSource, _ as VideoClipType, $ as VideoColorClip, a0 as VideoEase, a1 as VideoEffectClip, a2 as VideoEffectJob, a3 as VideoEffectUse, a4 as VideoEffectsEngineOptions, a5 as VideoLayerEffect, a6 as VideoLoudnessMeasurement, a7 as VideoLoudnessTarget, a8 as VideoSequenceClip, a9 as VideoTextClip, aa as VideoWipeDirection, ab as checkVideoEffectPlace, ac as checkVideoEffectValues, ad as ffmpegFilterValue, ae as isVideoKeyframes, af as mixEffectPixels, ag as overEffectPixels, ah as parseVideoLoudnessMeasurement, ai as placeVideoRect, aj as removeVideoKey, ak as retimeVideoAnimatable, al as setVideoKey, am as sortVideoKeys, an as splitVideoAnimatable, ao as toVideoEdl, ap as toVideoFfmpeg, aq as toVideoLoudnessMeasure, ar as videoClipEffectUses, as as videoClipSoundGain, at as videoEaseBezier, au as videoEaseProgress, av as videoEffectFrameTime, aw as videoEffectLayerKey, ax as videoEffectValuesAt, ay as videoFadeCurveGain, az as videoFfmpegUnsupportedEffects, aA as videoFrameAt, aB as videoFrameLeafLayers, aC as videoKeyframeBreakpoints, aD as videoKeyframeFfmpegExpr, aE as videoLayersUseEffects, aF as videoLayersWithoutTransitionEffects, aG as videoProjectEffects, aH as videoShellQuote, aI as videoTextStyle, aJ as videoTitleFrame, aK as videoTransformAt, aL as videoTransitionAudioCurve, aM as videoTransitionEase, aN as videoValueAt } from '../export-CfAogLEr.cjs';
3
3
  import { A as AnimationPlayer, C as Clock } from '../player-CmbY3218.cjs';
4
4
  import { b as AnimationLoopMode } from '../evaluate-BsxYieLN.cjs';
5
5
  import { H as HistoryManager } from '../HistoryManager-DeQQMBCj.cjs';
6
- import { v as EffectsSlot, E as EffectProvider, f as EffectDescription, e as EffectValue } from '../helpers-C5aAd44p.cjs';
6
+ import { v as EffectsSlot, E as EffectProvider, f as EffectDescription, e as EffectValue } from '../helpers-CoIeXQnW.cjs';
7
7
  import { a as AgentToolProvider } from '../registry-BqA1AZt0.cjs';
8
- import { A as AppliedEffectInfo } from '../tools-BpCmUNxb.cjs';
8
+ import { A as AppliedEffectInfo } from '../tools-BFvkFnRj.cjs';
9
9
  import '../easing-lM0Xo9Ni.cjs';
10
10
  import '../types-DsiXGmjo.cjs';
11
11
  import '../schema-Di0CS6Pe.cjs';
@@ -1,11 +1,11 @@
1
- import { V as VideoProject, a as VideoAnimatable, b as VideoAsset, c as VideoAssetProxy, d as VideoClip, e as VideoClipAnimation, f as VideoClipEffect, g as VideoEffectRef, h as VideoEffectValues, i as VideoGrade, j as VideoGradeLut, k as VideoKeyframes, l as VideoMarker, m as VideoSequence, n as VideoTrack, o as VideoTranscriptWord, p as VideoTransform, q as VideoTransition, v as videoKeysOf, r as VideoTrackKind, s as VideoPlacementMode, t as VideoKeyframeProperty, u as VideoKey, w as VideoMediaClip, x as VideoEffectsEngine, y as VideoLayer, z as VideoFrame, A as VideoRect, B as VideoEffectPlace, C as VideoFfmpegOptions, D as VideoFfmpegExport, E as VideoEdlOptions, F as VideoFadeCurve, G as VideoFit, H as VideoBlendMode, I as VideoAssetKind, J as VideoClipAnimationEffect, K as VideoTransitionType } from '../export-ClPKUB-v.js';
2
- export { L as VIDEO_BLEND_MODES, M as VIDEO_CLIP_ANIMATION_EFFECTS, N as VIDEO_CLIP_TYPES, O as VIDEO_EASE_NAMES, P as VIDEO_EFFECT_PLACES, Q as VIDEO_FADE_CURVES, R as VIDEO_FITS, S as VIDEO_KEYFRAME_LIMITS, T as VIDEO_KEYFRAME_PROPERTIES, U as VIDEO_PLACEMENT_MODES, W as VIDEO_TRANSFORM_PROPERTIES, X as VIDEO_TRANSITION_TYPES, Y as VIDEO_WIPE_DIRECTIONS, Z as VideoAudioSource, _ as VideoClipType, $ as VideoColorClip, a0 as VideoEase, a1 as VideoEffectClip, a2 as VideoEffectJob, a3 as VideoEffectUse, a4 as VideoEffectsEngineOptions, a5 as VideoLayerEffect, a6 as VideoLoudnessMeasurement, a7 as VideoLoudnessTarget, a8 as VideoSequenceClip, a9 as VideoTextClip, aa as VideoWipeDirection, ab as checkVideoEffectPlace, ac as checkVideoEffectValues, ad as ffmpegFilterValue, ae as isVideoKeyframes, af as mixEffectPixels, ag as overEffectPixels, ah as parseVideoLoudnessMeasurement, ai as placeVideoRect, aj as removeVideoKey, ak as retimeVideoAnimatable, al as setVideoKey, am as sortVideoKeys, an as splitVideoAnimatable, ao as toVideoEdl, ap as toVideoFfmpeg, aq as toVideoLoudnessMeasure, ar as videoClipEffectUses, as as videoClipSoundGain, at as videoEaseBezier, au as videoEaseProgress, av as videoEffectFrameTime, aw as videoEffectLayerKey, ax as videoEffectValuesAt, ay as videoFadeCurveGain, az as videoFfmpegUnsupportedEffects, aA as videoFrameAt, aB as videoFrameLeafLayers, aC as videoKeyframeBreakpoints, aD as videoKeyframeFfmpegExpr, aE as videoLayersUseEffects, aF as videoLayersWithoutTransitionEffects, aG as videoProjectEffects, aH as videoShellQuote, aI as videoTextStyle, aJ as videoTitleFrame, aK as videoTransformAt, aL as videoTransitionAudioCurve, aM as videoTransitionEase, aN as videoValueAt } from '../export-ClPKUB-v.js';
1
+ import { V as VideoProject, a as VideoAnimatable, b as VideoAsset, c as VideoAssetProxy, d as VideoClip, e as VideoClipAnimation, f as VideoClipEffect, g as VideoEffectRef, h as VideoEffectValues, i as VideoGrade, j as VideoGradeLut, k as VideoKeyframes, l as VideoMarker, m as VideoSequence, n as VideoTrack, o as VideoTranscriptWord, p as VideoTransform, q as VideoTransition, v as videoKeysOf, r as VideoTrackKind, s as VideoPlacementMode, t as VideoKeyframeProperty, u as VideoKey, w as VideoMediaClip, x as VideoEffectsEngine, y as VideoLayer, z as VideoFrame, A as VideoRect, B as VideoEffectPlace, C as VideoFfmpegOptions, D as VideoFfmpegExport, E as VideoEdlOptions, F as VideoFadeCurve, G as VideoFit, H as VideoBlendMode, I as VideoAssetKind, J as VideoClipAnimationEffect, K as VideoTransitionType } from '../export-Crl82sbE.js';
2
+ export { L as VIDEO_BLEND_MODES, M as VIDEO_CLIP_ANIMATION_EFFECTS, N as VIDEO_CLIP_TYPES, O as VIDEO_EASE_NAMES, P as VIDEO_EFFECT_PLACES, Q as VIDEO_FADE_CURVES, R as VIDEO_FITS, S as VIDEO_KEYFRAME_LIMITS, T as VIDEO_KEYFRAME_PROPERTIES, U as VIDEO_PLACEMENT_MODES, W as VIDEO_TRANSFORM_PROPERTIES, X as VIDEO_TRANSITION_TYPES, Y as VIDEO_WIPE_DIRECTIONS, Z as VideoAudioSource, _ as VideoClipType, $ as VideoColorClip, a0 as VideoEase, a1 as VideoEffectClip, a2 as VideoEffectJob, a3 as VideoEffectUse, a4 as VideoEffectsEngineOptions, a5 as VideoLayerEffect, a6 as VideoLoudnessMeasurement, a7 as VideoLoudnessTarget, a8 as VideoSequenceClip, a9 as VideoTextClip, aa as VideoWipeDirection, ab as checkVideoEffectPlace, ac as checkVideoEffectValues, ad as ffmpegFilterValue, ae as isVideoKeyframes, af as mixEffectPixels, ag as overEffectPixels, ah as parseVideoLoudnessMeasurement, ai as placeVideoRect, aj as removeVideoKey, ak as retimeVideoAnimatable, al as setVideoKey, am as sortVideoKeys, an as splitVideoAnimatable, ao as toVideoEdl, ap as toVideoFfmpeg, aq as toVideoLoudnessMeasure, ar as videoClipEffectUses, as as videoClipSoundGain, at as videoEaseBezier, au as videoEaseProgress, av as videoEffectFrameTime, aw as videoEffectLayerKey, ax as videoEffectValuesAt, ay as videoFadeCurveGain, az as videoFfmpegUnsupportedEffects, aA as videoFrameAt, aB as videoFrameLeafLayers, aC as videoKeyframeBreakpoints, aD as videoKeyframeFfmpegExpr, aE as videoLayersUseEffects, aF as videoLayersWithoutTransitionEffects, aG as videoProjectEffects, aH as videoShellQuote, aI as videoTextStyle, aJ as videoTitleFrame, aK as videoTransformAt, aL as videoTransitionAudioCurve, aM as videoTransitionEase, aN as videoValueAt } from '../export-Crl82sbE.js';
3
3
  import { A as AnimationPlayer, C as Clock } from '../player-BK2kKbfd.js';
4
4
  import { b as AnimationLoopMode } from '../evaluate-BbCeF6pt.js';
5
5
  import { H as HistoryManager } from '../HistoryManager-DWSLd6Tf.js';
6
- import { v as EffectsSlot, E as EffectProvider, f as EffectDescription, e as EffectValue } from '../helpers-CPWcK504.js';
6
+ import { v as EffectsSlot, E as EffectProvider, f as EffectDescription, e as EffectValue } from '../helpers-BCd2-PAR.js';
7
7
  import { a as AgentToolProvider } from '../registry-D-4fit9C.js';
8
- import { A as AppliedEffectInfo } from '../tools-AugT22z3.js';
8
+ import { A as AppliedEffectInfo } from '../tools-D7ws-OKL.js';
9
9
  import '../easing-lM0Xo9Ni.js';
10
10
  import '../types-DsiXGmjo.js';
11
11
  import '../schema-Di0CS6Pe.js';
@@ -1,4 +1,4 @@
1
- import { B as BezierPath } from './bezier-DP4NnJp3.js';
1
+ import { B as BezierPath } from './bezier-0IHDCvv_.js';
2
2
  import { W as WarpStyle, a as WarpMesh, V as Vec2, B as Box } from './types-CwMPoRMU.js';
3
3
 
4
4
  /**
@@ -345,4 +345,4 @@ declare function warpMeshEditPoints(m: WarpMesh): {
345
345
  /** The mesh's grid lines (patch borders) as cubics `[p0, p1, p2, p3]`. */
346
346
  declare function warpMeshGridCurves(m: WarpMesh): Vec2[][];
347
347
 
348
- export { warpPresetGrid as A, warpPresetMesh as B, type TextAlign as C, DEFAULT_AUTO_LEADING as D, DEFAULT_TEXT_STYLE as E, type LaidChar as F, TEXT_ALIGNS as G, caretAt as H, fitParagraphRuns as I, fitRuns as J, fontOf as K, type LaidFragment as L, layoutText as M, paragraphRanges as N, restyleRange as O, type ParagraphRun as P, spliceRuns as Q, styleAt as R, textIndexAt as S, type TextShaper as T, type WarpPreset as W, type TextFont as a, type TextRun as b, type ParagraphStyle as c, type TextStyle as d, type TextLayout as e, type LaidLine as f, WARP_STYLES as g, WARP_STYLE_LABELS as h, dragWarpMeshPoint as i, evalWarpMesh as j, fitWarpMesh as k, isValidWarpMesh as l, mapWarpMeshPoints as m, removeWarpMeshSplitV as n, resizeWarpMesh as o, pullWarpMesh as p, splitWarpMeshV as q, removeWarpMeshSplitU as r, splitWarpMeshU as s, identityWarpMesh as t, warpMeshControlBounds as u, warpMeshEditPoints as v, warpMeshColumns as w, warpMeshGridCurves as x, warpMeshParamAt as y, warpMeshRows as z };
348
+ export { textIndexAt as A, warpMeshEditPoints as B, warpMeshGridCurves as C, DEFAULT_AUTO_LEADING as D, warpMeshParamAt as E, warpPresetMesh as F, fitWarpMesh as G, isValidWarpMesh as H, mapWarpMeshPoints as I, removeWarpMeshSplitU as J, removeWarpMeshSplitV as K, type LaidFragment as L, splitWarpMeshU as M, splitWarpMeshV as N, warpMeshColumns as O, type ParagraphRun as P, warpMeshControlBounds as Q, warpMeshRows as R, warpPresetGrid as S, type TextShaper as T, type WarpPreset as W, type TextFont as a, type TextRun as b, type ParagraphStyle as c, type TextStyle as d, type TextLayout as e, type TextAlign as f, DEFAULT_TEXT_STYLE as g, type LaidChar as h, type LaidLine as i, TEXT_ALIGNS as j, WARP_STYLES as k, WARP_STYLE_LABELS as l, caretAt as m, dragWarpMeshPoint as n, evalWarpMesh as o, fitParagraphRuns as p, fitRuns as q, fontOf as r, identityWarpMesh as s, layoutText as t, paragraphRanges as u, pullWarpMesh as v, resizeWarpMesh as w, restyleRange as x, spliceRuns as y, styleAt as z };
@@ -1,4 +1,4 @@
1
- import { B as BezierPath } from './bezier-CvgQiYRg.cjs';
1
+ import { B as BezierPath } from './bezier-oCBfrGDG.cjs';
2
2
  import { W as WarpStyle, a as WarpMesh, V as Vec2, B as Box } from './types-CwMPoRMU.cjs';
3
3
 
4
4
  /**
@@ -345,4 +345,4 @@ declare function warpMeshEditPoints(m: WarpMesh): {
345
345
  /** The mesh's grid lines (patch borders) as cubics `[p0, p1, p2, p3]`. */
346
346
  declare function warpMeshGridCurves(m: WarpMesh): Vec2[][];
347
347
 
348
- export { warpPresetGrid as A, warpPresetMesh as B, type TextAlign as C, DEFAULT_AUTO_LEADING as D, DEFAULT_TEXT_STYLE as E, type LaidChar as F, TEXT_ALIGNS as G, caretAt as H, fitParagraphRuns as I, fitRuns as J, fontOf as K, type LaidFragment as L, layoutText as M, paragraphRanges as N, restyleRange as O, type ParagraphRun as P, spliceRuns as Q, styleAt as R, textIndexAt as S, type TextShaper as T, type WarpPreset as W, type TextFont as a, type TextRun as b, type ParagraphStyle as c, type TextStyle as d, type TextLayout as e, type LaidLine as f, WARP_STYLES as g, WARP_STYLE_LABELS as h, dragWarpMeshPoint as i, evalWarpMesh as j, fitWarpMesh as k, isValidWarpMesh as l, mapWarpMeshPoints as m, removeWarpMeshSplitV as n, resizeWarpMesh as o, pullWarpMesh as p, splitWarpMeshV as q, removeWarpMeshSplitU as r, splitWarpMeshU as s, identityWarpMesh as t, warpMeshControlBounds as u, warpMeshEditPoints as v, warpMeshColumns as w, warpMeshGridCurves as x, warpMeshParamAt as y, warpMeshRows as z };
348
+ export { textIndexAt as A, warpMeshEditPoints as B, warpMeshGridCurves as C, DEFAULT_AUTO_LEADING as D, warpMeshParamAt as E, warpPresetMesh as F, fitWarpMesh as G, isValidWarpMesh as H, mapWarpMeshPoints as I, removeWarpMeshSplitU as J, removeWarpMeshSplitV as K, type LaidFragment as L, splitWarpMeshU as M, splitWarpMeshV as N, warpMeshColumns as O, type ParagraphRun as P, warpMeshControlBounds as Q, warpMeshRows as R, warpPresetGrid as S, type TextShaper as T, type WarpPreset as W, type TextFont as a, type TextRun as b, type ParagraphStyle as c, type TextStyle as d, type TextLayout as e, type TextAlign as f, DEFAULT_TEXT_STYLE as g, type LaidChar as h, type LaidLine as i, TEXT_ALIGNS as j, WARP_STYLES as k, WARP_STYLE_LABELS as l, caretAt as m, dragWarpMeshPoint as n, evalWarpMesh as o, fitParagraphRuns as p, fitRuns as q, fontOf as r, identityWarpMesh as s, layoutText as t, paragraphRanges as u, pullWarpMesh as v, resizeWarpMesh as w, restyleRange as x, spliceRuns as y, styleAt as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pixerate/editor",
3
- "version": "0.129.0",
3
+ "version": "0.131.0",
4
4
  "description": "UI-agnostic rich text and media editing core library",
5
5
  "author": "Pixerate",
6
6
  "license": "MIT",
@@ -191,7 +191,7 @@
191
191
  "@tiptap/extension-underline": "^2.11.5",
192
192
  "@tiptap/starter-kit": "^2.11.5",
193
193
  "@tiptap/suggestion": "^2.11.5",
194
- "markdown-it": "^15.0.2",
194
+ "markdown-it": "^15.0.3",
195
195
  "markdown-it-task-lists": "^2.1.1",
196
196
  "prosemirror-markdown": "^1.13.8"
197
197
  },
@@ -396,7 +396,7 @@ in the source frame at the document's bit depth, colour mode and profile. Read
396
396
  | `dodge` | Lighten what `points` cover, most in `range` shadows \| midtones \| highlights, at `exposure` 0..1 (overlaps in one stroke never exceed it); `protectTones` keeps hue and saturation. Alpha kept. One undo step. Returns the layer, channel, `bounds` and dabs. |
397
397
  | `burn` | As `dodge`, darkening. |
398
398
  | `sponge` | Desaturate (`mode` desaturate, default) or saturate what `points` cover; `vibrance` damps clipping; passes compound, `brush.flow` sets each pass's strength. Pixels only. One undo step. Returns the layer, channel, `bounds` and dabs. |
399
- | `get_retouch_options` | Read-only. The retouching defaults (`aligned`, `sample`, `spotType`, `range`, `exposure`, `protectTones`, `spongeMode`, `vibrance`, `strength`) and the `cloneSource` `{x, y, offset}` or null. Call before a clone or heal stroke without `source`. |
399
+ | `get_retouch_options` | Read-only. The retouching defaults (`aligned`, `sample`, `spotType`, `range`, `exposure`, `protectTones`, `spongeMode`, `vibrance`, `strength`) and the `cloneSource` `{x, y, offset}` or null (an aligned stroke samples at the brush plus `offset`; the editors show it as a crosshair). Call before a clone or heal stroke without `source`. |
400
400
  | `set_retouch_options` | Set those defaults (view state, not an undo step); each stroke tool can override them per call. Changing `aligned` clears the kept offset. Returns the options. |
401
401
  | `set_clone_source` | Set the clone source `{x, y}` in document px (the Alt-click), or remove it with `clear: true`. View state. The next `clone_stamp` / `heal_brush` fixes the offset from its first point. Returns the source. |
402
402
  | `fill_pixels` | Fill the selection (or the canvas without one / with `useSelection: false`) on pixels or a mask with `color`, `opacity`, `blend`. Returns the changed bounds. |
@@ -325,6 +325,13 @@ the browser's shaper they are kept but not drawn until outlines are available.
325
325
  | `vector.enterSymmetry` | Hand the canvas to the user drawing inside a symmetry group (pen, pencil, shapes, text go in, mirrored live). Returns `{ id }`. |
326
326
  | `vector.exitSymmetry` | Stop drawing inside it. |
327
327
 
328
+ ### Lenses
329
+
330
+ | Command | Use it to |
331
+ | --- | --- |
332
+ | `vector.setLens` | Make closed paths lenses (`type` magnify, fisheye, brighten, invert, tintedGrayscale, colorAdd, colorLimit, heatMap, wireframe, transparency; `amount`, `color`) or change them. What is below shows changed inside the outline and follows every edit; bounds stay the lens's own. Use for loupes, callouts, "X-ray" wireframes, duotone windows. Returns `{ lenses: [{ id, lens }] }`. |
333
+ | `vector.removeLens` | Make lenses plain paths again. Returns `{ ids }`. |
334
+
328
335
  ### Masks and clipping
329
336
 
330
337
  | Command | Use it to |
@@ -343,7 +350,7 @@ contents whole while you work, without losing the mask.
343
350
 
344
351
  | Command | Use it to |
345
352
  | --- | --- |
346
- | `vector.addEffect` | Add a live path effect `type` (trim, roundCorners, puckerBloat, twist, zigzag, wiggle, offset, merge, repeater, envelope, contour: concentric steps blending to end colours, blockShadow: the shape swept along an angle under it, a long shadow when endOpacity fades, extrude: shaded side faces making the shape a solid, parallel or toward a vanishing point) with `params` to `ids`, at `index` in the stack (default last). Effects apply top to bottom. Returns `{ effects: [{ nodeId, effectId }] }`. |
353
+ | `vector.addEffect` | Add a live path effect `type` (trim, roundCorners, puckerBloat, twist, zigzag, wiggle, offset, merge, repeater, envelope, contour: concentric steps blending to end colours, blockShadow: the shape swept along an angle under it, a long shadow when endOpacity fades, extrude: shaded side faces making the shape a solid, parallel or toward a vanishing point, bevel: a shaded chiselled edge inside the shape) with `params` to `ids`, at `index` in the stack (default last). Effects apply top to bottom. Returns `{ effects: [{ nodeId, effectId }] }`. |
347
354
  | `vector.updateEffect` | Change effect `effectId` on `nodeId`: `params` (merged), `enabled`, or move it to `index` (0 applies first). Returns the node's effect stack. |
348
355
  | `vector.removeEffect` | Remove effect `effectId` from `nodeId`. |
349
356
  | `vector.envelope` | Warp with a live envelope: a `preset` (arc, arcLower, arcUpper, arch, bulge, shellLower, shellUpper, flag, wave, fish, rise, fisheye, inflate, squeeze, twist) with `bend`, `horizontal`, `vertical` (percent, -100 to 100) and `orientation`; or a `mesh` of `rows` x `columns` (1 to 16, optional control `points`); or `topObject: true` (top closed path becomes the envelope), `release: true`, `expand: true`. Reapplying changes an existing envelope. |
@@ -113,6 +113,7 @@ default below. Lengths are in the node's own units, angles degrees, percentages
113
113
  | contour | direction `inside`, steps 4, offset 6, fillColor `#ffffff`, strokeColor null, acceleration 0, join `round`, miterLimit 4 | CorelDRAW's Contour: each shape plus `steps` concentric copies `offset` apart (`center`: inward until the shape is used up), their fill and stroke blending to the end colours (null keeps the shape's colour); inside steps draw over the shape, outside ones under it. Acceleration −100…100 holds the colour back (positive) or rushes it (negative). Use for embossed badges, topographic lines and soft glows. |
114
114
  | blockShadow | angle 45 (degrees, 0 right, 90 down), distance 20, color `#1e293b` (null: the shape's own fill), opacity 100, endOpacity 100 (%) | CorelDRAW's Block Shadow: each shape swept `distance` along `angle` as one solid shape drawn under all of them. Set endOpacity below opacity (e.g. 0) with a long distance for a flat-design long shadow. The direction is in the node's own space, so it turns with the node. Put it last in the stack so it shadows the final shapes. |
115
115
  | extrude | mode `parallel`, angle 45, depth 30, vanishingPoint {x 0, y -300} (offset from the middle), toward 30 (%), color null (the shape's own fill), lightAngle -135 (light from the top left), shading 60 (%) | CorelDRAW's Extrude: one side face per edge (curves flattened), back to front, under the shape. Parallel moves the back `depth` along `angle`; perspective pulls it `toward` percent to the vanishing point. Faces lighten as they face the light and darken facing away. Use for 3D lettering, isometric blocks and buttons; put it last in the stack. |
116
+ | bevel | width 8, lightAngle -135 (light from the top left), shading 60 (%), color null (the shape's own paint as one colour) | CorelDRAW's Bevel: a band `width` wide inside the outline, one sloped face per edge shaded by the light, the middle flat in the shape's own paint, the stroke on top. Bounds do not change. Use for buttons, badges and chiselled lettering; combine with extrude for a bevelled solid. |
116
117
  | envelope | style `arc`, bend 50, horizontal 0, vertical 0, orientation `horizontal`, rows 2, columns 2, mesh null | Prefer `vector.envelope`. |
117
118
 
118
119
  Effects apply in stack order (index 0 first) to everything above them; effects after a repeater
@@ -160,3 +161,22 @@ fill; an unfilled stroked path takes part as the area its stroke paints. Pathfin
160
161
  `outline` also run on a single path; the other operations need two or more overlapping paths. Shape Builder
161
162
  `points` should come from `vector.shapeBuilderFaces` (`point` of each face) so a click lands
162
163
  inside the intended face.
164
+
165
+ ## Lenses
166
+
167
+ `vector.setLens` types, their `amount` and `color`. Missing values take these defaults; switching type resets to them.
168
+
169
+ | Type | amount (default) | color | What shows inside the lens |
170
+ | --- | --- | --- | --- |
171
+ | magnify | 1–20 times (2) | – | The backdrop scaled about the lens centre. |
172
+ | fisheye | −100…100 (50) | – | Bulged (positive) or pinched (negative); the lens edge stays put. |
173
+ | brighten | −100…100 % (40) | – | Lighter, or darker for negative amounts. |
174
+ | invert | 0–100 % strength (100) | – | Inverted colours. |
175
+ | tintedGrayscale | 0–100 % (100) | `#b45309` | Brightness as dark → tint → white (a duotone). |
176
+ | colorAdd | 0–100 % (50) | `#ff0000` | The colour added. |
177
+ | colorLimit | 0–100 % (100) | `#22c55e` | Only the colour let through. |
178
+ | heatMap | 0–100 % palette turn (0) | – | Brightness on a cold-to-hot palette. |
179
+ | wireframe | 0–100 % opacity (100) | `#0f172a` | Outlines only, 1 unit wide. |
180
+ | transparency | 0–100 % see-through (50) | – | The lens's own fill, see-through. |
181
+
182
+ The lens shows what is drawn before it (below it), follows edits there, and keeps its own bounds. Move it with `vector.transform` like any path. Remove it with `vector.removeLens`.