@pixerate/editor 0.123.0 → 0.124.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 (116) hide show
  1. package/dist/agent/index.cjs +2 -2
  2. package/dist/agent/index.cjs.map +1 -1
  3. package/dist/agent/index.js +3 -3
  4. package/dist/animation/index.d.cts +2 -1
  5. package/dist/animation/index.d.ts +2 -1
  6. package/dist/animation-editor/index.cjs.map +1 -1
  7. package/dist/animation-editor/index.d.cts +11 -733
  8. package/dist/animation-editor/index.d.ts +11 -733
  9. package/dist/animation-editor/index.js.map +1 -1
  10. package/dist/{bezier-C-W9LFyD.d.cts → bezier-CBzKKDjl.d.cts} +2 -66
  11. package/dist/{bezier-DQZE5dxA.d.ts → bezier-CWv6LQal.d.ts} +2 -66
  12. package/dist/{brushstrokeRender-M4S65DHT.cjs → brushstrokeRender-EELTV7U4.cjs} +8 -8
  13. package/dist/{brushstrokeRender-M4S65DHT.cjs.map → brushstrokeRender-EELTV7U4.cjs.map} +1 -1
  14. package/dist/{brushstrokeRender-CDDRSV2W.js → brushstrokeRender-LRV7GXGD.js} +3 -3
  15. package/dist/canvas/index.cjs +6 -6
  16. package/dist/canvas/index.d.cts +10 -6
  17. package/dist/canvas/index.d.ts +10 -6
  18. package/dist/canvas/index.js +1 -1
  19. package/dist/{chunk-TVXFHE4T.js → chunk-64PYNEHJ.js} +45 -12
  20. package/dist/chunk-64PYNEHJ.js.map +1 -0
  21. package/dist/{chunk-2IW3BWRT.cjs → chunk-7LQO6OHH.cjs} +2 -2
  22. package/dist/{chunk-2IW3BWRT.cjs.map → chunk-7LQO6OHH.cjs.map} +1 -1
  23. package/dist/chunk-IOXKXQNW.cjs +178 -0
  24. package/dist/chunk-IOXKXQNW.cjs.map +1 -0
  25. package/dist/{chunk-SMJGE7HM.cjs → chunk-IWSMDQE5.cjs} +523 -39
  26. package/dist/chunk-IWSMDQE5.cjs.map +1 -0
  27. package/dist/{chunk-KMBC4HNV.js → chunk-J67OLQUQ.js} +2 -2
  28. package/dist/{chunk-6CJRDJCU.cjs → chunk-PEHYWUVV.cjs} +176 -111
  29. package/dist/chunk-PEHYWUVV.cjs.map +1 -0
  30. package/dist/chunk-TGKT5QAB.js +178 -0
  31. package/dist/chunk-TGKT5QAB.js.map +1 -0
  32. package/dist/chunk-TK53AB4Q.cjs +215 -0
  33. package/dist/chunk-TK53AB4Q.cjs.map +1 -0
  34. package/dist/chunk-VFAKN46Z.js +215 -0
  35. package/dist/chunk-VFAKN46Z.js.map +1 -0
  36. package/dist/{chunk-6ZBR4J62.js → chunk-WATAQ2Z2.js} +79 -14
  37. package/dist/chunk-WATAQ2Z2.js.map +1 -0
  38. package/dist/{chunk-IPFRWILU.js → chunk-YVVSTD3B.js} +499 -15
  39. package/dist/chunk-YVVSTD3B.js.map +1 -0
  40. package/dist/{chunk-RLRUAPBJ.cjs → chunk-Z6OUCS2K.cjs} +47 -14
  41. package/dist/chunk-Z6OUCS2K.cjs.map +1 -0
  42. package/dist/effects/index.cjs +588 -0
  43. package/dist/effects/index.cjs.map +1 -0
  44. package/dist/effects/index.d.cts +131 -0
  45. package/dist/effects/index.d.ts +131 -0
  46. package/dist/effects/index.js +588 -0
  47. package/dist/effects/index.js.map +1 -0
  48. package/dist/evaluate-2S3vSPLy.d.cts +55 -0
  49. package/dist/evaluate-CfmT6xA3.d.ts +55 -0
  50. package/dist/{export-DfjzHAJI.d.ts → export-8RnlngAv.d.ts} +534 -128
  51. package/dist/{export-Dv0-ZVrV.d.ts → export-BzSRXyH6.d.cts} +390 -5
  52. package/dist/{export-Dv0-ZVrV.d.cts → export-DM3h7QEI.d.ts} +390 -5
  53. package/dist/{export-lU5qSpHE.d.cts → export-TqXMOlDt.d.cts} +534 -128
  54. package/dist/flair-CxB3fOcU.d.ts +739 -0
  55. package/dist/flair-D7BxyBwL.d.cts +739 -0
  56. package/dist/gradient-KDfCvhuj.d.cts +66 -0
  57. package/dist/gradient-KDfCvhuj.d.ts +66 -0
  58. package/dist/helpers-777mC6dc.d.cts +253 -0
  59. package/dist/helpers-DX2_7L5t.d.ts +253 -0
  60. package/dist/image-editor/index.cjs +1307 -805
  61. package/dist/image-editor/index.cjs.map +1 -1
  62. package/dist/image-editor/index.d.cts +39 -182
  63. package/dist/image-editor/index.d.ts +39 -182
  64. package/dist/image-editor/index.js +508 -6
  65. package/dist/image-editor/index.js.map +1 -1
  66. package/dist/{opentype-p8Xxf-Wh.d.ts → opentype-14PDI5D2.d.ts} +1 -1
  67. package/dist/{opentype-BV7wWatY.d.cts → opentype-D80AVmMu.d.cts} +1 -1
  68. package/dist/paint/index.cjs +2 -2
  69. package/dist/paint/index.d.cts +32 -10
  70. package/dist/paint/index.d.ts +32 -10
  71. package/dist/paint/index.js +1 -1
  72. package/dist/paint-editor/index.cjs +10 -8
  73. package/dist/paint-editor/index.cjs.map +1 -1
  74. package/dist/paint-editor/index.d.cts +11 -5
  75. package/dist/paint-editor/index.d.ts +11 -5
  76. package/dist/paint-editor/index.js +4 -2
  77. package/dist/paint-editor/index.js.map +1 -1
  78. package/dist/parameters/index.d.cts +4 -184
  79. package/dist/parameters/index.d.ts +4 -184
  80. package/dist/{pathfinder-IxcyhO00.d.cts → pathfinder-C0UoFypx.d.cts} +1 -1
  81. package/dist/{pathfinder-StVChJOT.d.ts → pathfinder-DjISxkUv.d.ts} +1 -1
  82. package/dist/{player-DrcP2xqj.d.cts → player-CBtEoU2x.d.cts} +2 -54
  83. package/dist/{player-DV4Jujdq.d.ts → player-cGLrngL_.d.ts} +2 -54
  84. package/dist/{svg-BtND4TJu.d.cts → svg-BDrjRnL1.d.cts} +3 -2
  85. package/dist/{svg-BfVXG7hL.d.ts → svg-C-vZ3q50.d.ts} +3 -2
  86. package/dist/tools/index.cjs +2 -2
  87. package/dist/tools/index.cjs.map +1 -1
  88. package/dist/tools/index.js +3 -3
  89. package/dist/tools-C7JtLYzo.d.ts +126 -0
  90. package/dist/tools-DHKGHiSK.d.cts +126 -0
  91. package/dist/{types-fuXEme9j.d.ts → types-BcX7sCsn.d.ts} +2 -2
  92. package/dist/{types-DJF3Ghn5.d.cts → types-CznabG7m.d.cts} +2 -2
  93. package/dist/types-D3-J3TFf.d.ts +185 -0
  94. package/dist/types-DMcf_z4J.d.cts +185 -0
  95. package/dist/vector/index.d.cts +10 -10
  96. package/dist/vector/index.d.ts +10 -10
  97. package/dist/video-editor/index.cjs +749 -277
  98. package/dist/video-editor/index.cjs.map +1 -1
  99. package/dist/video-editor/index.d.cts +265 -138
  100. package/dist/video-editor/index.d.ts +265 -138
  101. package/dist/video-editor/index.js +490 -18
  102. package/dist/video-editor/index.js.map +1 -1
  103. package/dist/{warp-BjmAgQwq.d.cts → warp-CH9MM435.d.cts} +1 -1
  104. package/dist/{warp-Ca5fedzS.d.ts → warp-k_PdtXOG.d.ts} +1 -1
  105. package/package.json +6 -1
  106. package/skills/pixerate-image-editor/SKILL.md +7 -0
  107. package/skills/pixerate-image-editor/references/provider-effects.md +35 -0
  108. package/skills/pixerate-video-editor/SKILL.md +39 -1
  109. package/dist/chunk-6CJRDJCU.cjs.map +0 -1
  110. package/dist/chunk-6ZBR4J62.js.map +0 -1
  111. package/dist/chunk-IPFRWILU.js.map +0 -1
  112. package/dist/chunk-RLRUAPBJ.cjs.map +0 -1
  113. package/dist/chunk-SMJGE7HM.cjs.map +0 -1
  114. package/dist/chunk-TVXFHE4T.js.map +0 -1
  115. /package/dist/{brushstrokeRender-CDDRSV2W.js.map → brushstrokeRender-LRV7GXGD.js.map} +0 -0
  116. /package/dist/{chunk-KMBC4HNV.js.map → chunk-J67OLQUQ.js.map} +0 -0
@@ -1,191 +1,11 @@
1
- import { b as AnimationEasing } from '../easing-lM0Xo9Ni.cjs';
1
+ import { a as ParameterValue, b as ParameterError, c as ParameterSchema, d as ParameterChoiceOption, N as NumberParameterField, P as ParameterField, e as ParameterCondition, f as ParameterValues, C as ChoiceParameterField, g as ParameterSchemaItem, h as ParameterGroup, V as VectorParameterField, i as ParameterKeyframes, j as ParameterTrack, k as ParameterKeyState, l as ParameterKeyframe, m as ParameterPreset } from '../types-DMcf_z4J.cjs';
2
+ export { B as BooleanParameterField, n as ColorParameterField, I as ImageParameterField, o as ParameterConditionTest, p as ParameterEasing, q as ParameterFieldType, r as ParameterImageOption, T as TextParameterField } from '../types-DMcf_z4J.cjs';
2
3
  import { J as JsonSchema } from '../schema-Di0CS6Pe.cjs';
3
4
  import { H as HistoryManager } from '../HistoryManager-DeQQMBCj.cjs';
4
5
  import { C as CommandSpec } from '../registry-CaR7LC6W.cjs';
6
+ import { b as AnimationEasing } from '../easing-lM0Xo9Ni.cjs';
5
7
  import '../types-DsiXGmjo.cjs';
6
8
 
7
- /**
8
- * Types for the schema-driven parameters editor: the control panel of an effect, shader,
9
- * generator or component. A `ParameterSchema` lists fields (optionally in groups); a
10
- * `ParametersController` holds their values with validation, undo, presets and keyframes.
11
- */
12
- /** A parameter's value. `number` / `int`: a number; `boolean`; `choice`: an option value;
13
- * `color`: `#rrggbb` (or `#rrggbbaa` with `alpha`); `vector`: 2–4 numbers; `image` / `text`: a string. */
14
- type ParameterValue = number | boolean | string | number[];
15
- /** Parameter id → value. */
16
- type ParameterValues = Record<string, ParameterValue>;
17
- type ParameterFieldType = 'number' | 'int' | 'boolean' | 'choice' | 'color' | 'vector' | 'image' | 'text';
18
- /**
19
- * One test in a `showIf` condition: a literal (equal to), an array (one of), or an object
20
- * whose keys must all hold.
21
- */
22
- type ParameterConditionTest = string | number | boolean | readonly (string | number | boolean)[] | {
23
- eq?: ParameterValue;
24
- ne?: ParameterValue;
25
- in?: readonly (string | number | boolean)[];
26
- notIn?: readonly (string | number | boolean)[];
27
- gt?: number;
28
- gte?: number;
29
- lt?: number;
30
- lte?: number;
31
- /** `true`: the value is truthy (non-zero, non-empty); `false`: falsy. */
32
- truthy?: boolean;
33
- };
34
- /**
35
- * When a field or group is shown. An object maps other parameter ids to tests, all of which
36
- * must hold (`{ mode: 'advanced', count: { gte: 2 } }`); a function gets every value.
37
- * Hidden fields keep their values.
38
- */
39
- type ParameterCondition = {
40
- readonly [id: string]: ParameterConditionTest;
41
- } | ((values: Readonly<ParameterValues>) => boolean);
42
- interface ParameterFieldBase<TValue extends ParameterValue> {
43
- /** Unique id across the schema (also the key in `values`). */
44
- id: string;
45
- /** Display name (default: the id made readable, `flowSpeed` → "Flow speed"). */
46
- label?: string;
47
- /** Help text shown under the label and given to agents. */
48
- description?: string;
49
- default: TValue;
50
- showIf?: ParameterCondition;
51
- /** Include in `randomize()` (default `true`; image and text fields are never randomised). */
52
- randomize?: boolean;
53
- /** Shown but not editable from the panel (agents and code can still set it). */
54
- readOnly?: boolean;
55
- }
56
- interface NumberParameterField extends ParameterFieldBase<number> {
57
- type: 'number' | 'int';
58
- min?: number;
59
- max?: number;
60
- /** Slider / spinner step (default: 1 for `int`, 1/100 of the range otherwise). */
61
- step?: number;
62
- /** Unit shown after the value (`px`, `%`, `°`, `ms`). */
63
- unit?: string;
64
- /** `slider` (slider plus number box; the default when `min` and `max` are set) or `input` (number box only). */
65
- control?: 'slider' | 'input';
66
- /** Decimal places shown (default: from `step`). */
67
- decimals?: number;
68
- }
69
- interface BooleanParameterField extends ParameterFieldBase<boolean> {
70
- type: 'boolean';
71
- }
72
- interface ParameterChoiceOption {
73
- value: string | number;
74
- label?: string;
75
- description?: string;
76
- }
77
- interface ChoiceParameterField extends ParameterFieldBase<string | number> {
78
- type: 'choice';
79
- options: readonly (string | number | ParameterChoiceOption)[];
80
- /** `select` (dropdown, the default) or `segmented` (buttons; best for 2–4 options). */
81
- control?: 'select' | 'segmented';
82
- }
83
- interface ColorParameterField extends ParameterFieldBase<string> {
84
- type: 'color';
85
- /** Values carry alpha as `#rrggbbaa` (default `false`: `#rrggbb`). */
86
- alpha?: boolean;
87
- /** Colours offered as swatches. */
88
- swatches?: readonly string[];
89
- }
90
- interface VectorParameterField extends ParameterFieldBase<number[]> {
91
- type: 'vector';
92
- /** Number of components, 2–4 (default: the default's length). */
93
- size?: 2 | 3 | 4;
94
- /** Bounds for every component, or one per component. */
95
- min?: number | readonly number[];
96
- max?: number | readonly number[];
97
- step?: number;
98
- unit?: string;
99
- /** Component labels (default `x`, `y`, `z`, `w`). */
100
- labels?: readonly string[];
101
- decimals?: number;
102
- }
103
- interface ParameterImageOption {
104
- url: string;
105
- label?: string;
106
- }
107
- interface ImageParameterField extends ParameterFieldBase<string> {
108
- type: 'image';
109
- /** Suggested assets shown as thumbnails. */
110
- options?: readonly ParameterImageOption[];
111
- /** File types offered by the picker's file button, e.g. `image/*`. */
112
- accept?: string;
113
- }
114
- interface TextParameterField extends ParameterFieldBase<string> {
115
- type: 'text';
116
- multiline?: boolean;
117
- maxLength?: number;
118
- minLength?: number;
119
- /** Regular expression (unicode) the whole value must match. */
120
- pattern?: string;
121
- placeholder?: string;
122
- }
123
- type ParameterField = NumberParameterField | BooleanParameterField | ChoiceParameterField | ColorParameterField | VectorParameterField | ImageParameterField | TextParameterField;
124
- /** A collapsible group of fields (groups may nest). */
125
- interface ParameterGroup {
126
- type: 'group';
127
- /** Unique id (used for its collapsed state). */
128
- id: string;
129
- label?: string;
130
- description?: string;
131
- /** Starts collapsed (default `false`). */
132
- collapsed?: boolean;
133
- showIf?: ParameterCondition;
134
- fields: readonly ParameterSchemaItem[];
135
- }
136
- type ParameterSchemaItem = ParameterField | ParameterGroup;
137
- /** A named set of values. Fields a preset leaves out go back to their defaults when applied. */
138
- interface ParameterPreset {
139
- name: string;
140
- values: Partial<ParameterValues>;
141
- description?: string;
142
- /** Comes from the schema: cannot be overwritten or deleted. */
143
- builtIn?: boolean;
144
- }
145
- interface ParameterSchema {
146
- title?: string;
147
- fields: readonly ParameterSchemaItem[];
148
- /** Built-in presets. */
149
- presets?: readonly ParameterPreset[];
150
- }
151
- /** One error, shaped like `validateJsonSchema`'s: `path` is `/<id>` (or `/<id>/<index>`). */
152
- interface ParameterError {
153
- path: string;
154
- /** The parameter's id. */
155
- id: string;
156
- /** A sentence naming the field, e.g. "Speed must be at most 4." */
157
- message: string;
158
- }
159
- /** Easing of a keyframe segment (the `AnimationEasing` of `@pixerate/editor/animation`). */
160
- type ParameterEasing = AnimationEasing;
161
- /** One keyframe, shaped like `AnimationKeyframe` from `@pixerate/editor/animation`. */
162
- interface ParameterKeyframe<TValue = ParameterValue> {
163
- /** Time in milliseconds. */
164
- time: number;
165
- value: TValue;
166
- /** Easing of the segment leaving this keyframe. */
167
- easing?: ParameterEasing;
168
- }
169
- /** A parameter's keyframes, shaped like `AnimationTrack` from `@pixerate/editor/animation` (which it accepts). */
170
- interface ParameterTrack<TValue = ParameterValue> {
171
- keyframes: ParameterKeyframe<TValue>[];
172
- enabled?: boolean;
173
- }
174
- /**
175
- * Where a parameter's keyframes live: an effect document, a canvas node, or
176
- * `createParameterKeyframeStore()`. The controller reads and writes whole tracks so a
177
- * keyframe toggle is one undo step.
178
- */
179
- interface ParameterKeyframes {
180
- getTrack(id: string): ParameterTrack<any> | undefined;
181
- /** Replaces a track; `undefined` (or no keyframes) removes it. */
182
- setTrack(id: string, track: ParameterTrack<any> | undefined): void;
183
- /** Called when tracks change from outside the controller. */
184
- subscribe?(listener: () => void): () => void;
185
- }
186
- /** `keyed`: a keyframe sits at the current time; `animated`: keyframes elsewhere; `none`. */
187
- type ParameterKeyState = 'none' | 'animated' | 'keyed';
188
-
189
9
  /** `flowSpeed`, `flow_speed` or `uFlowSpeed` → "Flow speed". */
190
10
  declare function humanizeParameterId(id: string): string;
191
11
  /** The label shown for a field or group. */
@@ -622,4 +442,4 @@ declare function createRangeMapper(options?: RangeMapperOptions): RangeMapper;
622
442
  */
623
443
  declare function mapRange(value: number, from: readonly [number, number], to: readonly [number, number], options?: Omit<RangeMapperOptions, 'from' | 'to'>): number;
624
444
 
625
- export { type ApplyPresetOptions, type BooleanParameterField, type ChoiceParameterField, type ColorParameterField, type ImageParameterField, type NumberParameterField, PARAMETER_KEY_TOLERANCE, type ParameterActionResult, type ParameterChoiceOption, type ParameterCoercion, type ParameterCommandOptions, type ParameterCondition, type ParameterConditionTest, type ParameterEasing, type ParameterError, type ParameterField, type ParameterFieldType, type ParameterGroup, type ParameterImageOption, type ParameterKeyState, type ParameterKeyframe, type ParameterKeyframeStore, type ParameterKeyframes, type ParameterListing, type ParameterPreset, type ParameterSchema, ParameterSchemaError, type ParameterSchemaItem, type ParameterSetResult, type ParameterSetValuesResult, type ParameterTrack, type ParameterValue, type ParameterValues, ParametersController, type ParametersControllerOptions, type ParametersSnapshot, type ParametersState, type RandomizeParametersOptions, type RangeMapper, type RangeMapperOptions, type SetParameterOptions, type ShaderControlLike, type ShaderControlType, type ShaderControlValue, type TextParameterField, type VectorParameterField, checkParameterSchema, choiceOptionLabel, clampParameterNumber, cloneValue, coerceParameterValue, createParameterCommands, createParameterKeyframeStore, createParametersController, createRangeMapper, evaluateParameterCondition, findParameterKeyframe, formatParameterNumber, formatParameterValue, getChoiceOptions, getParameterDefaults, getParameterFields, getParameterGroups, getParameterKeyState, getParameterVisibility, hexToRgba01, humanizeParameterId, isParameterGroup, isSliderField, mapRange, normalizeHexColor, parameterDecimals, parameterFieldFromShaderControl, parameterFieldToJsonSchema, parameterLabel, parameterSchemaFromShaderControls, parameterSchemaToJsonSchema, parameterStep, parameterValueFromShaderControl, parameterValuesEqual, parseParameterNumberInput, rgba01ToHex, seededRandom, shaderControlValue, validateParameterValue, validateParameterValues, vectorComponentField, vectorSize, withParameterKeyframe, withoutParameterKeyframe };
445
+ export { type ApplyPresetOptions, ChoiceParameterField, NumberParameterField, PARAMETER_KEY_TOLERANCE, type ParameterActionResult, ParameterChoiceOption, type ParameterCoercion, type ParameterCommandOptions, ParameterCondition, ParameterError, ParameterField, ParameterGroup, ParameterKeyState, ParameterKeyframe, type ParameterKeyframeStore, ParameterKeyframes, type ParameterListing, ParameterPreset, ParameterSchema, ParameterSchemaError, ParameterSchemaItem, type ParameterSetResult, type ParameterSetValuesResult, ParameterTrack, ParameterValue, ParameterValues, ParametersController, type ParametersControllerOptions, type ParametersSnapshot, type ParametersState, type RandomizeParametersOptions, type RangeMapper, type RangeMapperOptions, type SetParameterOptions, type ShaderControlLike, type ShaderControlType, type ShaderControlValue, VectorParameterField, checkParameterSchema, choiceOptionLabel, clampParameterNumber, cloneValue, coerceParameterValue, createParameterCommands, createParameterKeyframeStore, createParametersController, createRangeMapper, evaluateParameterCondition, findParameterKeyframe, formatParameterNumber, formatParameterValue, getChoiceOptions, getParameterDefaults, getParameterFields, getParameterGroups, getParameterKeyState, getParameterVisibility, hexToRgba01, humanizeParameterId, isParameterGroup, isSliderField, mapRange, normalizeHexColor, parameterDecimals, parameterFieldFromShaderControl, parameterFieldToJsonSchema, parameterLabel, parameterSchemaFromShaderControls, parameterSchemaToJsonSchema, parameterStep, parameterValueFromShaderControl, parameterValuesEqual, parseParameterNumberInput, rgba01ToHex, seededRandom, shaderControlValue, validateParameterValue, validateParameterValues, vectorComponentField, vectorSize, withParameterKeyframe, withoutParameterKeyframe };
@@ -1,191 +1,11 @@
1
- import { b as AnimationEasing } from '../easing-lM0Xo9Ni.js';
1
+ import { a as ParameterValue, b as ParameterError, c as ParameterSchema, d as ParameterChoiceOption, N as NumberParameterField, P as ParameterField, e as ParameterCondition, f as ParameterValues, C as ChoiceParameterField, g as ParameterSchemaItem, h as ParameterGroup, V as VectorParameterField, i as ParameterKeyframes, j as ParameterTrack, k as ParameterKeyState, l as ParameterKeyframe, m as ParameterPreset } from '../types-D3-J3TFf.js';
2
+ export { B as BooleanParameterField, n as ColorParameterField, I as ImageParameterField, o as ParameterConditionTest, p as ParameterEasing, q as ParameterFieldType, r as ParameterImageOption, T as TextParameterField } from '../types-D3-J3TFf.js';
2
3
  import { J as JsonSchema } from '../schema-Di0CS6Pe.js';
3
4
  import { H as HistoryManager } from '../HistoryManager-DWSLd6Tf.js';
4
5
  import { C as CommandSpec } from '../registry-rVtFJjRM.js';
6
+ import { b as AnimationEasing } from '../easing-lM0Xo9Ni.js';
5
7
  import '../types-DsiXGmjo.js';
6
8
 
7
- /**
8
- * Types for the schema-driven parameters editor: the control panel of an effect, shader,
9
- * generator or component. A `ParameterSchema` lists fields (optionally in groups); a
10
- * `ParametersController` holds their values with validation, undo, presets and keyframes.
11
- */
12
- /** A parameter's value. `number` / `int`: a number; `boolean`; `choice`: an option value;
13
- * `color`: `#rrggbb` (or `#rrggbbaa` with `alpha`); `vector`: 2–4 numbers; `image` / `text`: a string. */
14
- type ParameterValue = number | boolean | string | number[];
15
- /** Parameter id → value. */
16
- type ParameterValues = Record<string, ParameterValue>;
17
- type ParameterFieldType = 'number' | 'int' | 'boolean' | 'choice' | 'color' | 'vector' | 'image' | 'text';
18
- /**
19
- * One test in a `showIf` condition: a literal (equal to), an array (one of), or an object
20
- * whose keys must all hold.
21
- */
22
- type ParameterConditionTest = string | number | boolean | readonly (string | number | boolean)[] | {
23
- eq?: ParameterValue;
24
- ne?: ParameterValue;
25
- in?: readonly (string | number | boolean)[];
26
- notIn?: readonly (string | number | boolean)[];
27
- gt?: number;
28
- gte?: number;
29
- lt?: number;
30
- lte?: number;
31
- /** `true`: the value is truthy (non-zero, non-empty); `false`: falsy. */
32
- truthy?: boolean;
33
- };
34
- /**
35
- * When a field or group is shown. An object maps other parameter ids to tests, all of which
36
- * must hold (`{ mode: 'advanced', count: { gte: 2 } }`); a function gets every value.
37
- * Hidden fields keep their values.
38
- */
39
- type ParameterCondition = {
40
- readonly [id: string]: ParameterConditionTest;
41
- } | ((values: Readonly<ParameterValues>) => boolean);
42
- interface ParameterFieldBase<TValue extends ParameterValue> {
43
- /** Unique id across the schema (also the key in `values`). */
44
- id: string;
45
- /** Display name (default: the id made readable, `flowSpeed` → "Flow speed"). */
46
- label?: string;
47
- /** Help text shown under the label and given to agents. */
48
- description?: string;
49
- default: TValue;
50
- showIf?: ParameterCondition;
51
- /** Include in `randomize()` (default `true`; image and text fields are never randomised). */
52
- randomize?: boolean;
53
- /** Shown but not editable from the panel (agents and code can still set it). */
54
- readOnly?: boolean;
55
- }
56
- interface NumberParameterField extends ParameterFieldBase<number> {
57
- type: 'number' | 'int';
58
- min?: number;
59
- max?: number;
60
- /** Slider / spinner step (default: 1 for `int`, 1/100 of the range otherwise). */
61
- step?: number;
62
- /** Unit shown after the value (`px`, `%`, `°`, `ms`). */
63
- unit?: string;
64
- /** `slider` (slider plus number box; the default when `min` and `max` are set) or `input` (number box only). */
65
- control?: 'slider' | 'input';
66
- /** Decimal places shown (default: from `step`). */
67
- decimals?: number;
68
- }
69
- interface BooleanParameterField extends ParameterFieldBase<boolean> {
70
- type: 'boolean';
71
- }
72
- interface ParameterChoiceOption {
73
- value: string | number;
74
- label?: string;
75
- description?: string;
76
- }
77
- interface ChoiceParameterField extends ParameterFieldBase<string | number> {
78
- type: 'choice';
79
- options: readonly (string | number | ParameterChoiceOption)[];
80
- /** `select` (dropdown, the default) or `segmented` (buttons; best for 2–4 options). */
81
- control?: 'select' | 'segmented';
82
- }
83
- interface ColorParameterField extends ParameterFieldBase<string> {
84
- type: 'color';
85
- /** Values carry alpha as `#rrggbbaa` (default `false`: `#rrggbb`). */
86
- alpha?: boolean;
87
- /** Colours offered as swatches. */
88
- swatches?: readonly string[];
89
- }
90
- interface VectorParameterField extends ParameterFieldBase<number[]> {
91
- type: 'vector';
92
- /** Number of components, 2–4 (default: the default's length). */
93
- size?: 2 | 3 | 4;
94
- /** Bounds for every component, or one per component. */
95
- min?: number | readonly number[];
96
- max?: number | readonly number[];
97
- step?: number;
98
- unit?: string;
99
- /** Component labels (default `x`, `y`, `z`, `w`). */
100
- labels?: readonly string[];
101
- decimals?: number;
102
- }
103
- interface ParameterImageOption {
104
- url: string;
105
- label?: string;
106
- }
107
- interface ImageParameterField extends ParameterFieldBase<string> {
108
- type: 'image';
109
- /** Suggested assets shown as thumbnails. */
110
- options?: readonly ParameterImageOption[];
111
- /** File types offered by the picker's file button, e.g. `image/*`. */
112
- accept?: string;
113
- }
114
- interface TextParameterField extends ParameterFieldBase<string> {
115
- type: 'text';
116
- multiline?: boolean;
117
- maxLength?: number;
118
- minLength?: number;
119
- /** Regular expression (unicode) the whole value must match. */
120
- pattern?: string;
121
- placeholder?: string;
122
- }
123
- type ParameterField = NumberParameterField | BooleanParameterField | ChoiceParameterField | ColorParameterField | VectorParameterField | ImageParameterField | TextParameterField;
124
- /** A collapsible group of fields (groups may nest). */
125
- interface ParameterGroup {
126
- type: 'group';
127
- /** Unique id (used for its collapsed state). */
128
- id: string;
129
- label?: string;
130
- description?: string;
131
- /** Starts collapsed (default `false`). */
132
- collapsed?: boolean;
133
- showIf?: ParameterCondition;
134
- fields: readonly ParameterSchemaItem[];
135
- }
136
- type ParameterSchemaItem = ParameterField | ParameterGroup;
137
- /** A named set of values. Fields a preset leaves out go back to their defaults when applied. */
138
- interface ParameterPreset {
139
- name: string;
140
- values: Partial<ParameterValues>;
141
- description?: string;
142
- /** Comes from the schema: cannot be overwritten or deleted. */
143
- builtIn?: boolean;
144
- }
145
- interface ParameterSchema {
146
- title?: string;
147
- fields: readonly ParameterSchemaItem[];
148
- /** Built-in presets. */
149
- presets?: readonly ParameterPreset[];
150
- }
151
- /** One error, shaped like `validateJsonSchema`'s: `path` is `/<id>` (or `/<id>/<index>`). */
152
- interface ParameterError {
153
- path: string;
154
- /** The parameter's id. */
155
- id: string;
156
- /** A sentence naming the field, e.g. "Speed must be at most 4." */
157
- message: string;
158
- }
159
- /** Easing of a keyframe segment (the `AnimationEasing` of `@pixerate/editor/animation`). */
160
- type ParameterEasing = AnimationEasing;
161
- /** One keyframe, shaped like `AnimationKeyframe` from `@pixerate/editor/animation`. */
162
- interface ParameterKeyframe<TValue = ParameterValue> {
163
- /** Time in milliseconds. */
164
- time: number;
165
- value: TValue;
166
- /** Easing of the segment leaving this keyframe. */
167
- easing?: ParameterEasing;
168
- }
169
- /** A parameter's keyframes, shaped like `AnimationTrack` from `@pixerate/editor/animation` (which it accepts). */
170
- interface ParameterTrack<TValue = ParameterValue> {
171
- keyframes: ParameterKeyframe<TValue>[];
172
- enabled?: boolean;
173
- }
174
- /**
175
- * Where a parameter's keyframes live: an effect document, a canvas node, or
176
- * `createParameterKeyframeStore()`. The controller reads and writes whole tracks so a
177
- * keyframe toggle is one undo step.
178
- */
179
- interface ParameterKeyframes {
180
- getTrack(id: string): ParameterTrack<any> | undefined;
181
- /** Replaces a track; `undefined` (or no keyframes) removes it. */
182
- setTrack(id: string, track: ParameterTrack<any> | undefined): void;
183
- /** Called when tracks change from outside the controller. */
184
- subscribe?(listener: () => void): () => void;
185
- }
186
- /** `keyed`: a keyframe sits at the current time; `animated`: keyframes elsewhere; `none`. */
187
- type ParameterKeyState = 'none' | 'animated' | 'keyed';
188
-
189
9
  /** `flowSpeed`, `flow_speed` or `uFlowSpeed` → "Flow speed". */
190
10
  declare function humanizeParameterId(id: string): string;
191
11
  /** The label shown for a field or group. */
@@ -622,4 +442,4 @@ declare function createRangeMapper(options?: RangeMapperOptions): RangeMapper;
622
442
  */
623
443
  declare function mapRange(value: number, from: readonly [number, number], to: readonly [number, number], options?: Omit<RangeMapperOptions, 'from' | 'to'>): number;
624
444
 
625
- export { type ApplyPresetOptions, type BooleanParameterField, type ChoiceParameterField, type ColorParameterField, type ImageParameterField, type NumberParameterField, PARAMETER_KEY_TOLERANCE, type ParameterActionResult, type ParameterChoiceOption, type ParameterCoercion, type ParameterCommandOptions, type ParameterCondition, type ParameterConditionTest, type ParameterEasing, type ParameterError, type ParameterField, type ParameterFieldType, type ParameterGroup, type ParameterImageOption, type ParameterKeyState, type ParameterKeyframe, type ParameterKeyframeStore, type ParameterKeyframes, type ParameterListing, type ParameterPreset, type ParameterSchema, ParameterSchemaError, type ParameterSchemaItem, type ParameterSetResult, type ParameterSetValuesResult, type ParameterTrack, type ParameterValue, type ParameterValues, ParametersController, type ParametersControllerOptions, type ParametersSnapshot, type ParametersState, type RandomizeParametersOptions, type RangeMapper, type RangeMapperOptions, type SetParameterOptions, type ShaderControlLike, type ShaderControlType, type ShaderControlValue, type TextParameterField, type VectorParameterField, checkParameterSchema, choiceOptionLabel, clampParameterNumber, cloneValue, coerceParameterValue, createParameterCommands, createParameterKeyframeStore, createParametersController, createRangeMapper, evaluateParameterCondition, findParameterKeyframe, formatParameterNumber, formatParameterValue, getChoiceOptions, getParameterDefaults, getParameterFields, getParameterGroups, getParameterKeyState, getParameterVisibility, hexToRgba01, humanizeParameterId, isParameterGroup, isSliderField, mapRange, normalizeHexColor, parameterDecimals, parameterFieldFromShaderControl, parameterFieldToJsonSchema, parameterLabel, parameterSchemaFromShaderControls, parameterSchemaToJsonSchema, parameterStep, parameterValueFromShaderControl, parameterValuesEqual, parseParameterNumberInput, rgba01ToHex, seededRandom, shaderControlValue, validateParameterValue, validateParameterValues, vectorComponentField, vectorSize, withParameterKeyframe, withoutParameterKeyframe };
445
+ export { type ApplyPresetOptions, ChoiceParameterField, NumberParameterField, PARAMETER_KEY_TOLERANCE, type ParameterActionResult, ParameterChoiceOption, type ParameterCoercion, type ParameterCommandOptions, ParameterCondition, ParameterError, ParameterField, ParameterGroup, ParameterKeyState, ParameterKeyframe, type ParameterKeyframeStore, ParameterKeyframes, type ParameterListing, ParameterPreset, ParameterSchema, ParameterSchemaError, ParameterSchemaItem, type ParameterSetResult, type ParameterSetValuesResult, ParameterTrack, ParameterValue, ParameterValues, ParametersController, type ParametersControllerOptions, type ParametersSnapshot, type ParametersState, type RandomizeParametersOptions, type RangeMapper, type RangeMapperOptions, type SetParameterOptions, type ShaderControlLike, type ShaderControlType, type ShaderControlValue, VectorParameterField, checkParameterSchema, choiceOptionLabel, clampParameterNumber, cloneValue, coerceParameterValue, createParameterCommands, createParameterKeyframeStore, createParametersController, createRangeMapper, evaluateParameterCondition, findParameterKeyframe, formatParameterNumber, formatParameterValue, getChoiceOptions, getParameterDefaults, getParameterFields, getParameterGroups, getParameterKeyState, getParameterVisibility, hexToRgba01, humanizeParameterId, isParameterGroup, isSliderField, mapRange, normalizeHexColor, parameterDecimals, parameterFieldFromShaderControl, parameterFieldToJsonSchema, parameterLabel, parameterSchemaFromShaderControls, parameterSchemaToJsonSchema, parameterStep, parameterValueFromShaderControl, parameterValuesEqual, parseParameterNumberInput, rgba01ToHex, seededRandom, shaderControlValue, validateParameterValue, validateParameterValues, vectorComponentField, vectorSize, withParameterKeyframe, withoutParameterKeyframe };
@@ -1,5 +1,5 @@
1
1
  import { P as Point } from './brushTypes-IG7ZZjIN.cjs';
2
- import { B as BezierPath, P as PolygonBooleanOperation, a as BezierPathInput, b as PolygonFillRule, c as BezierSegment, d as BezierContour } from './bezier-C-W9LFyD.cjs';
2
+ import { B as BezierPath, P as PolygonBooleanOperation, a as BezierPathInput, b as PolygonFillRule, c as BezierSegment, d as BezierContour } from './bezier-CBzKKDjl.cjs';
3
3
 
4
4
  /**
5
5
  * Curve-preserving boolean operations (union, intersection, difference, xor and divide) on
@@ -1,5 +1,5 @@
1
1
  import { P as Point } from './brushTypes-IG7ZZjIN.js';
2
- import { B as BezierPath, P as PolygonBooleanOperation, a as BezierPathInput, b as PolygonFillRule, c as BezierSegment, d as BezierContour } from './bezier-DQZE5dxA.js';
2
+ import { B as BezierPath, P as PolygonBooleanOperation, a as BezierPathInput, b as PolygonFillRule, c as BezierSegment, d as BezierContour } from './bezier-CWv6LQal.js';
3
3
 
4
4
  /**
5
5
  * Curve-preserving boolean operations (union, intersection, difference, xor and divide) on
@@ -1,56 +1,4 @@
1
- import { b as AnimationEasing } from './easing-lM0Xo9Ni.cjs';
2
-
3
- /**
4
- * Keyframe tracks, independent of what they animate: each track is a list of keyframes
5
- * `{ time (ms), value, easing }`, where the easing governs the segment *leaving* the keyframe
6
- * (filmcraft / After Effects convention).
7
- */
8
- /** Keyframe times closer than this (ms) are the same time. */
9
- declare const ANIMATION_TIME_EPSILON = 0.000001;
10
- /** A keyframe value: a number, or a CSS colour for colour properties. */
11
- type AnimationValue = number | string;
12
- interface AnimationKeyframe {
13
- /** Time in milliseconds from the start of the timeline. */
14
- time: number;
15
- value: AnimationValue;
16
- /** Easing of the segment from this keyframe to the next (default `linear`). */
17
- easing?: AnimationEasing;
18
- }
19
- interface AnimationTrack {
20
- keyframes: AnimationKeyframe[];
21
- /** Disabled tracks keep their keyframes but do not animate (default `true`). */
22
- enabled?: boolean;
23
- }
24
- /** How a track's values interpolate: numbers linearly, colours in OKLab. */
25
- type AnimationValueType = 'number' | 'color';
26
- /** Whether `value` is a well-formed keyframe. */
27
- declare function isAnimationKeyframe(value: unknown): value is AnimationKeyframe;
28
- /**
29
- * Keyframes sorted by time, invalid entries dropped and duplicate times merged (the *later*
30
- * entry in the array wins, so appending a keyframe replaces one at the same time). Cached per
31
- * array (revalidated by element identity), so evaluating every frame does not re-sort; treat
32
- * keyframe objects as immutable.
33
- */
34
- declare function normalizeKeyframes(keyframes: readonly AnimationKeyframe[] | undefined | null): AnimationKeyframe[];
35
-
36
- /** How time past the end of the timeline maps back into it. */
37
- type AnimationLoopMode = 'none' | 'loop' | 'ping-pong';
38
- /**
39
- * Interpolates between two keyframe values: numbers linearly, colours in OKLab (premultiplied
40
- * alpha). Mismatched or unreadable values hold `from` until `t` reaches 1.
41
- */
42
- declare function interpolateAnimationValue(from: AnimationValue, to: AnimationValue, t: number, type?: AnimationValueType): AnimationValue;
43
- /**
44
- * A track's value at `time`. Before the first keyframe it holds the first value, after the
45
- * last the last value. Keyframes may be unsorted or share times (see `normalizeKeyframes`).
46
- * Returns `undefined` for a track without valid keyframes.
47
- */
48
- declare function evaluateTrack(track: AnimationTrack | readonly AnimationKeyframe[] | undefined | null, time: number, type?: AnimationValueType): AnimationValue | undefined;
49
- /**
50
- * Maps a running time onto the timeline `[0, duration]`: clamped (`none`), wrapped (`loop`)
51
- * or bounced (`ping-pong`).
52
- */
53
- declare function wrapAnimationTime(time: number, duration: number, loop?: AnimationLoopMode): number;
1
+ import { b as AnimationLoopMode } from './evaluate-2S3vSPLy.cjs';
54
2
 
55
3
  /**
56
4
  * The time source that animations (and canvas agent performances) play on.
@@ -190,4 +138,4 @@ declare class AnimationPlayer {
190
138
  }
191
139
  declare function createAnimationPlayer(options?: AnimationPlayerOptions): AnimationPlayer;
192
140
 
193
- export { ANIMATION_TIME_EPSILON as A, type Clock as C, ManualClock as M, type AnimationKeyframe as a, type AnimationLoopMode as b, AnimationPlayer as c, type AnimationPlayerOptions as d, type AnimationPlayerState as e, type AnimationTrack as f, type AnimationValue as g, type AnimationValueType as h, createAnimationPlayer as i, evaluateTrack as j, interpolateAnimationValue as k, isAnimationKeyframe as l, normalizeKeyframes as n, pageHidden as p, realClock as r, wrapAnimationTime as w };
141
+ export { AnimationPlayer as A, type Clock as C, ManualClock as M, type AnimationPlayerOptions as a, type AnimationPlayerState as b, createAnimationPlayer as c, pageHidden as p, realClock as r };
@@ -1,56 +1,4 @@
1
- import { b as AnimationEasing } from './easing-lM0Xo9Ni.js';
2
-
3
- /**
4
- * Keyframe tracks, independent of what they animate: each track is a list of keyframes
5
- * `{ time (ms), value, easing }`, where the easing governs the segment *leaving* the keyframe
6
- * (filmcraft / After Effects convention).
7
- */
8
- /** Keyframe times closer than this (ms) are the same time. */
9
- declare const ANIMATION_TIME_EPSILON = 0.000001;
10
- /** A keyframe value: a number, or a CSS colour for colour properties. */
11
- type AnimationValue = number | string;
12
- interface AnimationKeyframe {
13
- /** Time in milliseconds from the start of the timeline. */
14
- time: number;
15
- value: AnimationValue;
16
- /** Easing of the segment from this keyframe to the next (default `linear`). */
17
- easing?: AnimationEasing;
18
- }
19
- interface AnimationTrack {
20
- keyframes: AnimationKeyframe[];
21
- /** Disabled tracks keep their keyframes but do not animate (default `true`). */
22
- enabled?: boolean;
23
- }
24
- /** How a track's values interpolate: numbers linearly, colours in OKLab. */
25
- type AnimationValueType = 'number' | 'color';
26
- /** Whether `value` is a well-formed keyframe. */
27
- declare function isAnimationKeyframe(value: unknown): value is AnimationKeyframe;
28
- /**
29
- * Keyframes sorted by time, invalid entries dropped and duplicate times merged (the *later*
30
- * entry in the array wins, so appending a keyframe replaces one at the same time). Cached per
31
- * array (revalidated by element identity), so evaluating every frame does not re-sort; treat
32
- * keyframe objects as immutable.
33
- */
34
- declare function normalizeKeyframes(keyframes: readonly AnimationKeyframe[] | undefined | null): AnimationKeyframe[];
35
-
36
- /** How time past the end of the timeline maps back into it. */
37
- type AnimationLoopMode = 'none' | 'loop' | 'ping-pong';
38
- /**
39
- * Interpolates between two keyframe values: numbers linearly, colours in OKLab (premultiplied
40
- * alpha). Mismatched or unreadable values hold `from` until `t` reaches 1.
41
- */
42
- declare function interpolateAnimationValue(from: AnimationValue, to: AnimationValue, t: number, type?: AnimationValueType): AnimationValue;
43
- /**
44
- * A track's value at `time`. Before the first keyframe it holds the first value, after the
45
- * last the last value. Keyframes may be unsorted or share times (see `normalizeKeyframes`).
46
- * Returns `undefined` for a track without valid keyframes.
47
- */
48
- declare function evaluateTrack(track: AnimationTrack | readonly AnimationKeyframe[] | undefined | null, time: number, type?: AnimationValueType): AnimationValue | undefined;
49
- /**
50
- * Maps a running time onto the timeline `[0, duration]`: clamped (`none`), wrapped (`loop`)
51
- * or bounced (`ping-pong`).
52
- */
53
- declare function wrapAnimationTime(time: number, duration: number, loop?: AnimationLoopMode): number;
1
+ import { b as AnimationLoopMode } from './evaluate-CfmT6xA3.js';
54
2
 
55
3
  /**
56
4
  * The time source that animations (and canvas agent performances) play on.
@@ -190,4 +138,4 @@ declare class AnimationPlayer {
190
138
  }
191
139
  declare function createAnimationPlayer(options?: AnimationPlayerOptions): AnimationPlayer;
192
140
 
193
- export { ANIMATION_TIME_EPSILON as A, type Clock as C, ManualClock as M, type AnimationKeyframe as a, type AnimationLoopMode as b, AnimationPlayer as c, type AnimationPlayerOptions as d, type AnimationPlayerState as e, type AnimationTrack as f, type AnimationValue as g, type AnimationValueType as h, createAnimationPlayer as i, evaluateTrack as j, interpolateAnimationValue as k, isAnimationKeyframe as l, normalizeKeyframes as n, pageHidden as p, realClock as r, wrapAnimationTime as w };
141
+ export { AnimationPlayer as A, type Clock as C, ManualClock as M, type AnimationPlayerOptions as a, type AnimationPlayerState as b, createAnimationPlayer as c, pageHidden as p, realClock as r };
@@ -1,5 +1,6 @@
1
- import { B as BezierPath, A as AffineMatrix, S as SvgGradientDef } from './bezier-C-W9LFyD.cjs';
2
- import { V as VectorEffectType, a as VectorEffectParamsMap, b as VectorPathNode, c as VectorFillRule, d as VectorBooleanOperation, e as VectorNode, f as VectorEffect, g as VectorGroupNode, h as VectorBounds, i as VectorWarpMesh, j as VectorInstanceNode, k as VectorFilterType, l as VectorFilterParamsMap, m as VectorFilter, n as VectorGradient, o as Vec2, p as VectorGradientUnits, q as VectorGradientSpread, r as VectorGradientType, s as VectorPaint, t as VectorMatrix, u as VectorGradientStop, v as VectorStrokeAlign, w as VectorSubpath, x as VectorDocument, y as VectorWidthPoint } from './types-DJF3Ghn5.cjs';
1
+ import { B as BezierPath, A as AffineMatrix } from './bezier-CBzKKDjl.cjs';
2
+ import { a as VectorEffectType, b as VectorEffectParamsMap, c as VectorPathNode, d as VectorFillRule, e as VectorBooleanOperation, f as VectorNode, g as VectorEffect, h as VectorGroupNode, i as VectorBounds, j as VectorWarpMesh, k as VectorInstanceNode, l as VectorFilterType, m as VectorFilterParamsMap, n as VectorFilter, o as VectorGradient, p as Vec2, q as VectorGradientUnits, r as VectorGradientSpread, s as VectorGradientType, t as VectorPaint, u as VectorMatrix, v as VectorGradientStop, w as VectorStrokeAlign, x as VectorSubpath, V as VectorDocument, y as VectorWidthPoint } from './types-CznabG7m.cjs';
3
+ import { S as SvgGradientDef } from './gradient-KDfCvhuj.cjs';
3
4
 
4
5
  /**
5
6
  * Live appearance: path effect stacks and live boolean groups, evaluated on demand while the
@@ -1,5 +1,6 @@
1
- import { B as BezierPath, A as AffineMatrix, S as SvgGradientDef } from './bezier-DQZE5dxA.js';
2
- import { V as VectorEffectType, a as VectorEffectParamsMap, b as VectorPathNode, c as VectorFillRule, d as VectorBooleanOperation, e as VectorNode, f as VectorEffect, g as VectorGroupNode, h as VectorBounds, i as VectorWarpMesh, j as VectorInstanceNode, k as VectorFilterType, l as VectorFilterParamsMap, m as VectorFilter, n as VectorGradient, o as Vec2, p as VectorGradientUnits, q as VectorGradientSpread, r as VectorGradientType, s as VectorPaint, t as VectorMatrix, u as VectorGradientStop, v as VectorStrokeAlign, w as VectorSubpath, x as VectorDocument, y as VectorWidthPoint } from './types-fuXEme9j.js';
1
+ import { B as BezierPath, A as AffineMatrix } from './bezier-CWv6LQal.js';
2
+ import { a as VectorEffectType, b as VectorEffectParamsMap, c as VectorPathNode, d as VectorFillRule, e as VectorBooleanOperation, f as VectorNode, g as VectorEffect, h as VectorGroupNode, i as VectorBounds, j as VectorWarpMesh, k as VectorInstanceNode, l as VectorFilterType, m as VectorFilterParamsMap, n as VectorFilter, o as VectorGradient, p as Vec2, q as VectorGradientUnits, r as VectorGradientSpread, s as VectorGradientType, t as VectorPaint, u as VectorMatrix, v as VectorGradientStop, w as VectorStrokeAlign, x as VectorSubpath, V as VectorDocument, y as VectorWidthPoint } from './types-BcX7sCsn.js';
3
+ import { S as SvgGradientDef } from './gradient-KDfCvhuj.js';
3
4
 
4
5
  /**
5
6
  * Live appearance: path effect stacks and live boolean groups, evaluated on demand while the
@@ -14,7 +14,6 @@
14
14
  var _chunkQIWFEEWGcjs = require('../chunk-QIWFEEWG.cjs');
15
15
 
16
16
 
17
- var _chunkRIWPYSKUcjs = require('../chunk-RIWPYSKU.cjs');
18
17
 
19
18
 
20
19
 
@@ -40,9 +39,10 @@ var _chunkRIWPYSKUcjs = require('../chunk-RIWPYSKU.cjs');
40
39
 
41
40
 
42
41
 
42
+ var _chunkEI2MOVQ3cjs = require('../chunk-EI2MOVQ3.cjs');
43
43
 
44
44
 
45
- var _chunkEI2MOVQ3cjs = require('../chunk-EI2MOVQ3.cjs');
45
+ var _chunkRIWPYSKUcjs = require('../chunk-RIWPYSKU.cjs');
46
46
 
47
47
 
48
48
 
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/editor/editor/packages/core/dist/tools/index.cjs"],"names":[],"mappings":"AAAA,0GAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wtGAAC","file":"/home/runner/work/editor/editor/packages/core/dist/tools/index.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/editor/editor/packages/core/dist/tools/index.cjs"],"names":[],"mappings":"AAAA,0GAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wtGAAC","file":"/home/runner/work/editor/editor/packages/core/dist/tools/index.cjs"}
@@ -12,9 +12,6 @@ import {
12
12
  createToolRegistry,
13
13
  toToolResult
14
14
  } from "../chunk-PTMIGXZ2.js";
15
- import {
16
- validateJsonSchema
17
- } from "../chunk-4FX5ACVG.js";
18
15
  import {
19
16
  CAPTURE_EXCLUDE_SELECTOR,
20
17
  CAPTURE_OVERLAY_SELECTORS,
@@ -43,6 +40,9 @@ import {
43
40
  elementToSvg,
44
41
  rasterizeElement
45
42
  } from "../chunk-O2W2SP3C.js";
43
+ import {
44
+ validateJsonSchema
45
+ } from "../chunk-4FX5ACVG.js";
46
46
  import {
47
47
  captureInputSchema,
48
48
  captureOutputSize,