@overtone-art/canvas-editor-core 0.8.4 → 0.8.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +9 -69
- package/dist/index.d.ts +9 -69
- package/dist/index.global.js +53 -53
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +294 -123
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +282 -111
- package/dist/index.mjs.map +1 -1
- package/dist/node.d.mts +1 -1
- package/dist/node.d.ts +1 -1
- package/dist/{types-BeaEHTFc.d.mts → types-F2GH3dcU.d.mts} +73 -2
- package/dist/{types-BeaEHTFc.d.ts → types-F2GH3dcU.d.ts} +73 -2
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Canvas, FabricObject, Point, ImageFormat, Group
|
|
2
|
-
import {
|
|
3
|
-
export { B as BLEND_GROUPS, a as BLEND_MODES, D as DEFAULT_PATTERN_CONFIG,
|
|
1
|
+
import { Canvas, FabricObject, Point, ImageFormat, Group } from 'fabric';
|
|
2
|
+
import { f as EditorEvents, v as LayerType, t as LayerMeta, L as LayerData, a3 as SerializedLayer, V as PatternConfig, W as PatternLocks, a9 as TextCurveConfig, aa as TextCurveInput, ad as TextWrapMode, ac as TextOverflow, A as MaskPresetId, a4 as ShapeMaskPresetId, ae as TextureMaskPresetId, ag as Unit, T as MockupPrintArea, P as MockupConfig, i as FontDefinition, w as LicenseConfig, y as LicenseStatus, $ as ProjectState, M as MaskBrushOptions, z as MaskPoint, J as MaskRefinementProvider, H as MaskRefinementPrompt, N as MaskRefinementResult, r as LayerMaskEntry, j as GradientConfig, s as LayerMaskMode, E as EditorConfig, a5 as ShapePlugin, c as BlendMode, a7 as TemplateDefinition, I as ImageAdjustments, g as EditorState, a1 as SemanticExportOptions, a6 as SvgExportOptions, Z as PrintifyPositioning, U as NormalizedLayerPosition, Y as PositioningAdapter, o as ImageProviderResult, p as ImageSearchOptions, q as ImageSearchResult, F as FileAdapter, n as ImageProvider, a2 as SerializedBackgroundImageOptions, b as BackgroundImageOptions, a0 as ResizeOptions, e as DpiIssue, u as LayerShadowConfig, C as CanvasSizePreset, Q as MockupDisplacement } from './types-F2GH3dcU.mjs';
|
|
3
|
+
export { B as BLEND_GROUPS, a as BLEND_MODES, D as DEFAULT_GRADIENT_CONFIG, d as DEFAULT_PATTERN_CONFIG, h as ExportFormat, G as GradientBox, k as GradientKind, l as GradientStop, m as ImageAttribution, x as LicensePayload, K as MaskRefinementRequest, O as MockupBlendMode, R as MockupDisplacementChannel, S as MockupOverlay, X as PatternState, _ as ProjectPage, a8 as TemplateParameter, ab as TextCurveShape, af as TileMode, ah as angleFromCoords, ai as blendModeLabel, aj as blendModeOf, ak as blendOperation, al as linearCoords, am as readGradientConfig, an as toFabricGradient } from './types-F2GH3dcU.mjs';
|
|
4
4
|
|
|
5
5
|
type EventHandler<T> = (data: T) => void;
|
|
6
6
|
declare class EventEmitter<TEvents extends {} = Record<string, unknown>> {
|
|
@@ -959,6 +959,11 @@ declare abstract class MaskStackStore {
|
|
|
959
959
|
constructor(canvas: Canvas, layers: LayerManager, history: HistoryManager, events: EventEmitter<EditorEvents>);
|
|
960
960
|
list(target: string): LayerMaskEntry[];
|
|
961
961
|
get(target: string, maskId: string): LayerMaskEntry | undefined;
|
|
962
|
+
/** Repaint a gradient mask without replacing or re-fitting its geometry. */
|
|
963
|
+
setGradient(target: string, maskId: string, gradient: GradientConfig, options?: {
|
|
964
|
+
meta?: Record<string, unknown>;
|
|
965
|
+
save?: boolean;
|
|
966
|
+
}): boolean;
|
|
962
967
|
/** Every target that currently carries at least one mask. */
|
|
963
968
|
targets(): string[];
|
|
964
969
|
/** The box a mask is fitted to, in the space the stack is composed in. */
|
|
@@ -1169,71 +1174,6 @@ declare function fitToBox(object: FabricObject, box: {
|
|
|
1169
1174
|
*/
|
|
1170
1175
|
declare function unwrapGroup(group: Group): FabricObject[];
|
|
1171
1176
|
|
|
1172
|
-
type GradientKind = 'linear' | 'radial';
|
|
1173
|
-
interface GradientStop {
|
|
1174
|
-
/** `#rrggbb`. Alpha lives in `opacity`, so a colour input stays a colour input. */
|
|
1175
|
-
color: string;
|
|
1176
|
-
/** 0…1. */
|
|
1177
|
-
opacity: number;
|
|
1178
|
-
/** 0…1 along the gradient line. */
|
|
1179
|
-
position: number;
|
|
1180
|
-
}
|
|
1181
|
-
interface GradientConfig {
|
|
1182
|
-
kind: GradientKind;
|
|
1183
|
-
/** Degrees, CSS convention: 0 paints towards the top, 90 towards the right. Linear only. */
|
|
1184
|
-
angle: number;
|
|
1185
|
-
/** 0…1 of the layer box. Radial only. */
|
|
1186
|
-
center: {
|
|
1187
|
-
x: number;
|
|
1188
|
-
y: number;
|
|
1189
|
-
};
|
|
1190
|
-
/** 0…1 of the layer box. An ellipse, because percentage units follow the box. Radial only. */
|
|
1191
|
-
radius: number;
|
|
1192
|
-
/** At least two, ascending by position. */
|
|
1193
|
-
stops: GradientStop[];
|
|
1194
|
-
}
|
|
1195
|
-
/** The layer's UNSCALED box — the space fabric paints a percentage filler in. */
|
|
1196
|
-
interface GradientBox {
|
|
1197
|
-
width: number;
|
|
1198
|
-
height: number;
|
|
1199
|
-
}
|
|
1200
|
-
declare const DEFAULT_GRADIENT_CONFIG: GradientConfig;
|
|
1201
|
-
/**
|
|
1202
|
-
* Endpoints of the gradient line, in percentage space.
|
|
1203
|
-
*
|
|
1204
|
-
* fabric paints a percentage filler through `ctx.transform(width, 0, 0, height, …)`
|
|
1205
|
-
* (`_applyPatternGradientTransform`), so the space is the unit box under a
|
|
1206
|
-
* NON-UNIFORM scale — not a rotation. Drawing the line naively there would put
|
|
1207
|
-
* the gradient's iso-lines at some angle other than the one asked for. These
|
|
1208
|
-
* endpoints are solved the other way round: `v` is the direction whose iso-lines
|
|
1209
|
-
* land perpendicular to `angle` in the box, and `length` is the CSS gradient-line
|
|
1210
|
-
* length, which is what makes the run cover the box corners at every angle.
|
|
1211
|
-
*
|
|
1212
|
-
* A consequence, and the reason the test asserts it: at angles that are not
|
|
1213
|
-
* axis-aligned in a non-square box the endpoints sit OUTSIDE 0…1. Clamping them
|
|
1214
|
-
* would shorten the run and bunch the stops.
|
|
1215
|
-
*/
|
|
1216
|
-
declare function linearCoords(angle: number, box: GradientBox): {
|
|
1217
|
-
x1: number;
|
|
1218
|
-
y1: number;
|
|
1219
|
-
x2: number;
|
|
1220
|
-
y2: number;
|
|
1221
|
-
};
|
|
1222
|
-
/** Inverse of {@link linearCoords}. */
|
|
1223
|
-
declare function angleFromCoords(coords: {
|
|
1224
|
-
x1: number;
|
|
1225
|
-
y1: number;
|
|
1226
|
-
x2: number;
|
|
1227
|
-
y2: number;
|
|
1228
|
-
}, box: GradientBox): number;
|
|
1229
|
-
declare function toFabricGradient(config: GradientConfig, box: GradientBox): Gradient<'linear'> | Gradient<'radial'>;
|
|
1230
|
-
/**
|
|
1231
|
-
* The config an object's gradient fill was built from, or null when the fill is
|
|
1232
|
-
* flat. This is the ONLY reader: `fill` is the single source of truth, so a
|
|
1233
|
-
* panel never has to be told what it is already looking at.
|
|
1234
|
-
*/
|
|
1235
|
-
declare function readGradientConfig(object: FabricObject): GradientConfig | null;
|
|
1236
|
-
|
|
1237
1177
|
declare class CanvasEditor {
|
|
1238
1178
|
readonly canvas: Canvas;
|
|
1239
1179
|
readonly layers: LayerManager;
|
|
@@ -1595,4 +1535,4 @@ declare class AnnotationOverlay {
|
|
|
1595
1535
|
*/
|
|
1596
1536
|
declare function displaceRgba(source: Uint8ClampedArray, map: Uint8ClampedArray, width: number, height: number, options: Omit<MockupDisplacement, 'image'>): Uint8ClampedArray;
|
|
1597
1537
|
|
|
1598
|
-
export { type AddMaskOptions, AnnotationOverlay, type AnnotationPrimitive, BackgroundImageOptions, BlendMode, CANVAS_MASK_TARGET, CANVAS_SIZE_PRESETS, CanvasEditor, type CanvasRenderingProtocol, CanvasSizePreset, type CoverPlacement, CropController, type CurvePath,
|
|
1538
|
+
export { type AddMaskOptions, AnnotationOverlay, type AnnotationPrimitive, BackgroundImageOptions, BlendMode, CANVAS_MASK_TARGET, CANVAS_SIZE_PRESETS, CanvasEditor, type CanvasRenderingProtocol, CanvasSizePreset, type CoverPlacement, CropController, type CurvePath, DEFAULT_LAYER_SHADOW, DEFAULT_SELECTION_STYLE, DEFAULT_TEXT_CURVE, DpiIssue, EditorConfig, EditorEvents, EditorState, EventEmitter, FileAdapter, FontDefinition, FontRegistry, GradientConfig, HistoryManager, ImageAdjustments, ImageProvider, ImageProviderResult, ImageSearchOptions, ImageSearchResult, Layer, LayerData, LayerManager, LayerMaskEntry, LayerMaskManager, LayerMaskMode, LayerMeta, LayerShadowConfig, LayerType, LicenseConfig, LicenseManager, LicenseStatus, MAX_MASK_LAYERS, MaskBrushOptions, MaskController, type MaskPerformanceSample, MaskPoint, MaskPresetId, MaskPresetManager, MaskRefinementError, type MaskRefinementErrorCode, MaskRefinementPrompt, MaskRefinementProvider, MaskRefinementResult, MockupConfig, MockupDisplacement, MockupPrintArea, NormalizedLayerPosition, PatternConfig, PatternLocks, PatternManager, type PatternOrigin, type PngExportOptions, PositioningAdapter, PrintifyPositioning, ProjectManager, ProjectState, ResizeOptions, SHAPE_MASK_BOX, SHAPE_MASK_IDS, type SelectionStyle, SemanticExportOptions, SerializedBackgroundImageOptions, SerializedLayer, ShapeMaskPresetId, ShapePlugin, SnapManager, SvgExportOptions, TEXTURE_MASK_IDS, TEXTURE_MASK_SIZE, TemplateDefinition, type TemplateLayerSpec, TextCurveConfig, TextCurveInput, TextCurveManager, TextOverflow, TextWrapManager, TextWrapMode, type TextWrapState, TextureMaskPresetId, type TileDrawSize, type TilePlacement, TiledPatternObject, Unit, UnitConverter, type ViewportTransform, applyAspectLock, applyLayerShadow, applyObjectSelectionStyle, applySelectionStyle, applyTextWrapToObject, buildCurveLinePaths, buildCurvePathData, clamp, clearTextureMaskCache, composeMaskGroup, computeCoverPlacement, computePrintAreaClip, computeTilePositions, deserializeEditor, displaceRgba, drawTiles, escapeXml, explodeTemplateSvg, exportDataURL, exportMockup, exportPNG, exportPrintArea, exportSVG, fitTextWidth, fitToBox, generateId, isCssColor, isMaskPresetId, isShapeMaskId, isTextureMaskId, needsAbsoluteSpace, normalizeTextCurve, preWrapWordSplit, readLayerShadow, readTextWrap, renderTextureMask, resetTransform, restoreLocks, round2, sanitizeSvg, serializeEditor, shapeMaskPathData, textPathCurve, textPathSpec, toCanvasSpace, toHostSpace, unwrapGroup };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Canvas, FabricObject, Point, ImageFormat, Group
|
|
2
|
-
import {
|
|
3
|
-
export { B as BLEND_GROUPS, a as BLEND_MODES, D as DEFAULT_PATTERN_CONFIG,
|
|
1
|
+
import { Canvas, FabricObject, Point, ImageFormat, Group } from 'fabric';
|
|
2
|
+
import { f as EditorEvents, v as LayerType, t as LayerMeta, L as LayerData, a3 as SerializedLayer, V as PatternConfig, W as PatternLocks, a9 as TextCurveConfig, aa as TextCurveInput, ad as TextWrapMode, ac as TextOverflow, A as MaskPresetId, a4 as ShapeMaskPresetId, ae as TextureMaskPresetId, ag as Unit, T as MockupPrintArea, P as MockupConfig, i as FontDefinition, w as LicenseConfig, y as LicenseStatus, $ as ProjectState, M as MaskBrushOptions, z as MaskPoint, J as MaskRefinementProvider, H as MaskRefinementPrompt, N as MaskRefinementResult, r as LayerMaskEntry, j as GradientConfig, s as LayerMaskMode, E as EditorConfig, a5 as ShapePlugin, c as BlendMode, a7 as TemplateDefinition, I as ImageAdjustments, g as EditorState, a1 as SemanticExportOptions, a6 as SvgExportOptions, Z as PrintifyPositioning, U as NormalizedLayerPosition, Y as PositioningAdapter, o as ImageProviderResult, p as ImageSearchOptions, q as ImageSearchResult, F as FileAdapter, n as ImageProvider, a2 as SerializedBackgroundImageOptions, b as BackgroundImageOptions, a0 as ResizeOptions, e as DpiIssue, u as LayerShadowConfig, C as CanvasSizePreset, Q as MockupDisplacement } from './types-F2GH3dcU.js';
|
|
3
|
+
export { B as BLEND_GROUPS, a as BLEND_MODES, D as DEFAULT_GRADIENT_CONFIG, d as DEFAULT_PATTERN_CONFIG, h as ExportFormat, G as GradientBox, k as GradientKind, l as GradientStop, m as ImageAttribution, x as LicensePayload, K as MaskRefinementRequest, O as MockupBlendMode, R as MockupDisplacementChannel, S as MockupOverlay, X as PatternState, _ as ProjectPage, a8 as TemplateParameter, ab as TextCurveShape, af as TileMode, ah as angleFromCoords, ai as blendModeLabel, aj as blendModeOf, ak as blendOperation, al as linearCoords, am as readGradientConfig, an as toFabricGradient } from './types-F2GH3dcU.js';
|
|
4
4
|
|
|
5
5
|
type EventHandler<T> = (data: T) => void;
|
|
6
6
|
declare class EventEmitter<TEvents extends {} = Record<string, unknown>> {
|
|
@@ -959,6 +959,11 @@ declare abstract class MaskStackStore {
|
|
|
959
959
|
constructor(canvas: Canvas, layers: LayerManager, history: HistoryManager, events: EventEmitter<EditorEvents>);
|
|
960
960
|
list(target: string): LayerMaskEntry[];
|
|
961
961
|
get(target: string, maskId: string): LayerMaskEntry | undefined;
|
|
962
|
+
/** Repaint a gradient mask without replacing or re-fitting its geometry. */
|
|
963
|
+
setGradient(target: string, maskId: string, gradient: GradientConfig, options?: {
|
|
964
|
+
meta?: Record<string, unknown>;
|
|
965
|
+
save?: boolean;
|
|
966
|
+
}): boolean;
|
|
962
967
|
/** Every target that currently carries at least one mask. */
|
|
963
968
|
targets(): string[];
|
|
964
969
|
/** The box a mask is fitted to, in the space the stack is composed in. */
|
|
@@ -1169,71 +1174,6 @@ declare function fitToBox(object: FabricObject, box: {
|
|
|
1169
1174
|
*/
|
|
1170
1175
|
declare function unwrapGroup(group: Group): FabricObject[];
|
|
1171
1176
|
|
|
1172
|
-
type GradientKind = 'linear' | 'radial';
|
|
1173
|
-
interface GradientStop {
|
|
1174
|
-
/** `#rrggbb`. Alpha lives in `opacity`, so a colour input stays a colour input. */
|
|
1175
|
-
color: string;
|
|
1176
|
-
/** 0…1. */
|
|
1177
|
-
opacity: number;
|
|
1178
|
-
/** 0…1 along the gradient line. */
|
|
1179
|
-
position: number;
|
|
1180
|
-
}
|
|
1181
|
-
interface GradientConfig {
|
|
1182
|
-
kind: GradientKind;
|
|
1183
|
-
/** Degrees, CSS convention: 0 paints towards the top, 90 towards the right. Linear only. */
|
|
1184
|
-
angle: number;
|
|
1185
|
-
/** 0…1 of the layer box. Radial only. */
|
|
1186
|
-
center: {
|
|
1187
|
-
x: number;
|
|
1188
|
-
y: number;
|
|
1189
|
-
};
|
|
1190
|
-
/** 0…1 of the layer box. An ellipse, because percentage units follow the box. Radial only. */
|
|
1191
|
-
radius: number;
|
|
1192
|
-
/** At least two, ascending by position. */
|
|
1193
|
-
stops: GradientStop[];
|
|
1194
|
-
}
|
|
1195
|
-
/** The layer's UNSCALED box — the space fabric paints a percentage filler in. */
|
|
1196
|
-
interface GradientBox {
|
|
1197
|
-
width: number;
|
|
1198
|
-
height: number;
|
|
1199
|
-
}
|
|
1200
|
-
declare const DEFAULT_GRADIENT_CONFIG: GradientConfig;
|
|
1201
|
-
/**
|
|
1202
|
-
* Endpoints of the gradient line, in percentage space.
|
|
1203
|
-
*
|
|
1204
|
-
* fabric paints a percentage filler through `ctx.transform(width, 0, 0, height, …)`
|
|
1205
|
-
* (`_applyPatternGradientTransform`), so the space is the unit box under a
|
|
1206
|
-
* NON-UNIFORM scale — not a rotation. Drawing the line naively there would put
|
|
1207
|
-
* the gradient's iso-lines at some angle other than the one asked for. These
|
|
1208
|
-
* endpoints are solved the other way round: `v` is the direction whose iso-lines
|
|
1209
|
-
* land perpendicular to `angle` in the box, and `length` is the CSS gradient-line
|
|
1210
|
-
* length, which is what makes the run cover the box corners at every angle.
|
|
1211
|
-
*
|
|
1212
|
-
* A consequence, and the reason the test asserts it: at angles that are not
|
|
1213
|
-
* axis-aligned in a non-square box the endpoints sit OUTSIDE 0…1. Clamping them
|
|
1214
|
-
* would shorten the run and bunch the stops.
|
|
1215
|
-
*/
|
|
1216
|
-
declare function linearCoords(angle: number, box: GradientBox): {
|
|
1217
|
-
x1: number;
|
|
1218
|
-
y1: number;
|
|
1219
|
-
x2: number;
|
|
1220
|
-
y2: number;
|
|
1221
|
-
};
|
|
1222
|
-
/** Inverse of {@link linearCoords}. */
|
|
1223
|
-
declare function angleFromCoords(coords: {
|
|
1224
|
-
x1: number;
|
|
1225
|
-
y1: number;
|
|
1226
|
-
x2: number;
|
|
1227
|
-
y2: number;
|
|
1228
|
-
}, box: GradientBox): number;
|
|
1229
|
-
declare function toFabricGradient(config: GradientConfig, box: GradientBox): Gradient<'linear'> | Gradient<'radial'>;
|
|
1230
|
-
/**
|
|
1231
|
-
* The config an object's gradient fill was built from, or null when the fill is
|
|
1232
|
-
* flat. This is the ONLY reader: `fill` is the single source of truth, so a
|
|
1233
|
-
* panel never has to be told what it is already looking at.
|
|
1234
|
-
*/
|
|
1235
|
-
declare function readGradientConfig(object: FabricObject): GradientConfig | null;
|
|
1236
|
-
|
|
1237
1177
|
declare class CanvasEditor {
|
|
1238
1178
|
readonly canvas: Canvas;
|
|
1239
1179
|
readonly layers: LayerManager;
|
|
@@ -1595,4 +1535,4 @@ declare class AnnotationOverlay {
|
|
|
1595
1535
|
*/
|
|
1596
1536
|
declare function displaceRgba(source: Uint8ClampedArray, map: Uint8ClampedArray, width: number, height: number, options: Omit<MockupDisplacement, 'image'>): Uint8ClampedArray;
|
|
1597
1537
|
|
|
1598
|
-
export { type AddMaskOptions, AnnotationOverlay, type AnnotationPrimitive, BackgroundImageOptions, BlendMode, CANVAS_MASK_TARGET, CANVAS_SIZE_PRESETS, CanvasEditor, type CanvasRenderingProtocol, CanvasSizePreset, type CoverPlacement, CropController, type CurvePath,
|
|
1538
|
+
export { type AddMaskOptions, AnnotationOverlay, type AnnotationPrimitive, BackgroundImageOptions, BlendMode, CANVAS_MASK_TARGET, CANVAS_SIZE_PRESETS, CanvasEditor, type CanvasRenderingProtocol, CanvasSizePreset, type CoverPlacement, CropController, type CurvePath, DEFAULT_LAYER_SHADOW, DEFAULT_SELECTION_STYLE, DEFAULT_TEXT_CURVE, DpiIssue, EditorConfig, EditorEvents, EditorState, EventEmitter, FileAdapter, FontDefinition, FontRegistry, GradientConfig, HistoryManager, ImageAdjustments, ImageProvider, ImageProviderResult, ImageSearchOptions, ImageSearchResult, Layer, LayerData, LayerManager, LayerMaskEntry, LayerMaskManager, LayerMaskMode, LayerMeta, LayerShadowConfig, LayerType, LicenseConfig, LicenseManager, LicenseStatus, MAX_MASK_LAYERS, MaskBrushOptions, MaskController, type MaskPerformanceSample, MaskPoint, MaskPresetId, MaskPresetManager, MaskRefinementError, type MaskRefinementErrorCode, MaskRefinementPrompt, MaskRefinementProvider, MaskRefinementResult, MockupConfig, MockupDisplacement, MockupPrintArea, NormalizedLayerPosition, PatternConfig, PatternLocks, PatternManager, type PatternOrigin, type PngExportOptions, PositioningAdapter, PrintifyPositioning, ProjectManager, ProjectState, ResizeOptions, SHAPE_MASK_BOX, SHAPE_MASK_IDS, type SelectionStyle, SemanticExportOptions, SerializedBackgroundImageOptions, SerializedLayer, ShapeMaskPresetId, ShapePlugin, SnapManager, SvgExportOptions, TEXTURE_MASK_IDS, TEXTURE_MASK_SIZE, TemplateDefinition, type TemplateLayerSpec, TextCurveConfig, TextCurveInput, TextCurveManager, TextOverflow, TextWrapManager, TextWrapMode, type TextWrapState, TextureMaskPresetId, type TileDrawSize, type TilePlacement, TiledPatternObject, Unit, UnitConverter, type ViewportTransform, applyAspectLock, applyLayerShadow, applyObjectSelectionStyle, applySelectionStyle, applyTextWrapToObject, buildCurveLinePaths, buildCurvePathData, clamp, clearTextureMaskCache, composeMaskGroup, computeCoverPlacement, computePrintAreaClip, computeTilePositions, deserializeEditor, displaceRgba, drawTiles, escapeXml, explodeTemplateSvg, exportDataURL, exportMockup, exportPNG, exportPrintArea, exportSVG, fitTextWidth, fitToBox, generateId, isCssColor, isMaskPresetId, isShapeMaskId, isTextureMaskId, needsAbsoluteSpace, normalizeTextCurve, preWrapWordSplit, readLayerShadow, readTextWrap, renderTextureMask, resetTransform, restoreLocks, round2, sanitizeSvg, serializeEditor, shapeMaskPathData, textPathCurve, textPathSpec, toCanvasSpace, toHostSpace, unwrapGroup };
|