Skip to content

Commit 464f438

Browse files
changes for v1.107 (#322)
1 parent 7c8ddc7 commit 464f438

File tree

2 files changed

+85
-23
lines changed

2 files changed

+85
-23
lines changed

plugin-api-standalone.d.ts

Lines changed: 43 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1673,6 +1673,11 @@ interface LayoutMixin extends DimensionAndPositionMixin, AutoLayoutChildrenMixin
16731673
resizeWithoutConstraints(width: number, height: number): void
16741674
rescale(scale: number): void
16751675
}
1676+
interface AspectRatioLockMixin {
1677+
readonly targetAspectRatio: Vector | null
1678+
lockAspectRatio(): void
1679+
unlockAspectRatio(): void
1680+
}
16761681
interface BlendMixin extends MinimalBlendMixin {
16771682
isMask: boolean
16781683
maskType: MaskType
@@ -1818,6 +1823,7 @@ interface BaseFrameMixin
18181823
ExportMixin,
18191824
IndividualStrokesMixin,
18201825
AutoLayoutMixin,
1826+
AspectRatioLockMixin,
18211827
AnnotationsMixin,
18221828
DevStatusMixin {
18231829
readonly detachedInfo: DetachedInfo | null
@@ -2134,7 +2140,8 @@ interface GroupNode
21342140
DeprecatedBackgroundMixin,
21352141
BlendMixin,
21362142
LayoutMixin,
2137-
ExportMixin {
2143+
ExportMixin,
2144+
AspectRatioLockMixin {
21382145
readonly type: 'GROUP'
21392146
clone(): GroupNode
21402147
}
@@ -2148,25 +2155,41 @@ interface RectangleNode
21482155
CornerMixin,
21492156
RectangleCornerMixin,
21502157
IndividualStrokesMixin,
2151-
AnnotationsMixin {
2158+
AnnotationsMixin,
2159+
AspectRatioLockMixin {
21522160
readonly type: 'RECTANGLE'
21532161
clone(): RectangleNode
21542162
}
21552163
interface LineNode extends DefaultShapeMixin, ConstraintMixin, AnnotationsMixin {
21562164
readonly type: 'LINE'
21572165
clone(): LineNode
21582166
}
2159-
interface EllipseNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
2167+
interface EllipseNode
2168+
extends DefaultShapeMixin,
2169+
ConstraintMixin,
2170+
CornerMixin,
2171+
AnnotationsMixin,
2172+
AspectRatioLockMixin {
21602173
readonly type: 'ELLIPSE'
21612174
clone(): EllipseNode
21622175
arcData: ArcData
21632176
}
2164-
interface PolygonNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
2177+
interface PolygonNode
2178+
extends DefaultShapeMixin,
2179+
ConstraintMixin,
2180+
CornerMixin,
2181+
AnnotationsMixin,
2182+
AspectRatioLockMixin {
21652183
readonly type: 'POLYGON'
21662184
clone(): PolygonNode
21672185
pointCount: number
21682186
}
2169-
interface StarNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
2187+
interface StarNode
2188+
extends DefaultShapeMixin,
2189+
ConstraintMixin,
2190+
CornerMixin,
2191+
AnnotationsMixin,
2192+
AspectRatioLockMixin {
21702193
readonly type: 'STAR'
21712194
clone(): StarNode
21722195
pointCount: number
@@ -2177,15 +2200,17 @@ interface VectorNode
21772200
ConstraintMixin,
21782201
CornerMixin,
21792202
VectorLikeMixin,
2180-
AnnotationsMixin {
2203+
AnnotationsMixin,
2204+
AspectRatioLockMixin {
21812205
readonly type: 'VECTOR'
21822206
clone(): VectorNode
21832207
}
21842208
interface TextNode
21852209
extends DefaultShapeMixin,
21862210
ConstraintMixin,
21872211
NonResizableTextMixin,
2188-
AnnotationsMixin {
2212+
AnnotationsMixin,
2213+
AspectRatioLockMixin {
21892214
readonly type: 'TEXT'
21902215
clone(): TextNode
21912216
textAlignHorizontal: 'LEFT' | 'CENTER' | 'RIGHT' | 'JUSTIFIED'
@@ -2269,7 +2294,8 @@ interface BooleanOperationNode
22692294
extends DefaultShapeMixin,
22702295
ChildrenMixin,
22712296
CornerMixin,
2272-
ContainerMixin {
2297+
ContainerMixin,
2298+
AspectRatioLockMixin {
22732299
readonly type: 'BOOLEAN_OPERATION'
22742300
clone(): BooleanOperationNode
22752301
booleanOperation: 'UNION' | 'INTERSECT' | 'SUBTRACT' | 'EXCLUDE'
@@ -2282,7 +2308,11 @@ interface StickyNode extends OpaqueNodeMixin, MinimalFillsMixin, MinimalBlendMix
22822308
isWideWidth: boolean
22832309
clone(): StickyNode
22842310
}
2285-
interface StampNode extends DefaultShapeMixin, ConstraintMixin, StickableMixin {
2311+
interface StampNode
2312+
extends DefaultShapeMixin,
2313+
ConstraintMixin,
2314+
StickableMixin,
2315+
AspectRatioLockMixin {
22862316
readonly type: 'STAMP'
22872317
clone(): StampNode
22882318
getAuthorAsync(): Promise<BaseUser | null>
@@ -2317,11 +2347,12 @@ interface HighlightNode
23172347
ConstraintMixin,
23182348
CornerMixin,
23192349
VectorLikeMixin,
2320-
StickableMixin {
2350+
StickableMixin,
2351+
AspectRatioLockMixin {
23212352
readonly type: 'HIGHLIGHT'
23222353
clone(): HighlightNode
23232354
}
2324-
interface WashiTapeNode extends DefaultShapeMixin, StickableMixin {
2355+
interface WashiTapeNode extends DefaultShapeMixin, StickableMixin, AspectRatioLockMixin {
23252356
readonly type: 'WASHI_TAPE'
23262357
clone(): WashiTapeNode
23272358
}
@@ -2678,4 +2709,4 @@ interface FindAllCriteria<T extends NodeType[]> {
26782709
}
26792710

26802711
// prettier-ignore
2681-
export { ArgFreeEventType, PluginAPI, VersionHistoryResult, VariablesAPI, LibraryVariableCollection, LibraryVariable, TeamLibraryAPI, PaymentStatus, PaymentsAPI, ClientStorageAPI, NotificationOptions, NotifyDequeueReason, NotificationHandler, ShowUIOptions, UIPostMessageOptions, OnMessageProperties, MessageEventHandler, UIAPI, UtilAPI, ColorPalette, ColorPalettes, ConstantsAPI, CodegenEvent, CodegenPreferences, CodegenPreferencesEvent, CodegenResult, CodegenAPI, DevResource, DevResourceWithNodeId, LinkPreviewEvent, PlainTextElement, LinkPreviewResult, AuthEvent, DevResourceOpenEvent, AuthResult, VSCodeAPI, DevResourcesAPI, TimerAPI, ViewportAPI, TextReviewAPI, ParameterValues, SuggestionResults, ParameterInputEvent, ParametersAPI, RunParametersEvent, OpenDevResourcesEvent, RunEvent, DropEvent, DropItem, DropFile, DocumentChangeEvent, StyleChangeEvent, StyleChange, BaseDocumentChange, BaseNodeChange, RemovedNode, CreateChange, DeleteChange, PropertyChange, BaseStyleChange, StyleCreateChange, StyleDeleteChange, StylePropertyChange, DocumentChange, NodeChangeProperty, NodeChangeEvent, NodeChange, StyleChangeProperty, TextReviewEvent, TextReviewRange, Transform, Vector, Rect, RGB, RGBA, FontName, TextCase, TextDecoration, TextDecorationStyle, TextDecorationOffset, TextDecorationThickness, TextDecorationColor, OpenTypeFeature, ArcData, DropShadowEffect, InnerShadowEffect, BlurEffect, Effect, ConstraintType, Constraints, ColorStop, ImageFilters, SolidPaint, GradientPaint, ImagePaint, VideoPaint, Paint, Guide, RowsColsLayoutGrid, GridLayoutGrid, LayoutGrid, ExportSettingsConstraints, ExportSettingsImage, ExportSettingsSVGBase, ExportSettingsSVG, ExportSettingsSVGString, ExportSettingsPDF, ExportSettingsREST, ExportSettings, WindingRule, VectorVertex, VectorSegment, VectorRegion, VectorNetwork, VectorPath, VectorPaths, LetterSpacing, LineHeight, LeadingTrim, HyperlinkTarget, TextListOptions, BlendMode, MaskType, Font, TextStyleOverrideType, StyledTextSegment, Reaction, VariableDataType, ExpressionFunction, Expression, VariableValueWithExpression, VariableData, ConditionalBlock, DevStatus, Action, SimpleTransition, DirectionalTransition, Transition, Trigger, Navigation, Easing, EasingFunctionBezier, EasingFunctionSpring, OverflowDirection, OverlayPositionType, OverlayBackground, OverlayBackgroundInteraction, PublishStatus, ConnectorEndpointPosition, ConnectorEndpointPositionAndEndpointNodeId, ConnectorEndpointEndpointNodeIdAndMagnet, ConnectorEndpoint, ConnectorStrokeCap, BaseNodeMixin, PluginDataMixin, DevResourcesMixin, DevStatusMixin, SceneNodeMixin, VariableBindableNodeField, VariableBindableTextField, VariableBindablePaintField, VariableBindablePaintStyleField, VariableBindableColorStopField, VariableBindableEffectField, VariableBindableEffectStyleField, VariableBindableLayoutGridField, VariableBindableGridStyleField, VariableBindableComponentPropertyField, VariableBindableComponentPropertyDefinitionField, StickableMixin, ChildrenMixin, ConstraintMixin, DimensionAndPositionMixin, LayoutMixin, BlendMixin, ContainerMixin, DeprecatedBackgroundMixin, StrokeCap, StrokeJoin, HandleMirroring, AutoLayoutMixin, AutoLayoutChildrenMixin, InferredAutoLayoutResult, DetachedInfo, MinimalStrokesMixin, IndividualStrokesMixin, MinimalFillsMixin, GeometryMixin, CornerMixin, RectangleCornerMixin, ExportMixin, FramePrototypingMixin, VectorLikeMixin, ReactionMixin, DocumentationLink, PublishableMixin, DefaultShapeMixin, BaseFrameMixin, DefaultFrameMixin, OpaqueNodeMixin, MinimalBlendMixin, Annotation, AnnotationProperty, AnnotationPropertyType, AnnotationsMixin, Measurement, MeasurementSide, MeasurementOffset, MeasurementsMixin, VariantMixin, ComponentPropertiesMixin, NonResizableTextMixin, TextSublayerNode, DocumentNode, ExplicitVariableModesMixin, PageNode, FrameNode, GroupNode, SliceNode, RectangleNode, LineNode, EllipseNode, PolygonNode, StarNode, VectorNode, TextNode, ComponentPropertyType, InstanceSwapPreferredValue, ComponentPropertyOptions, ComponentPropertyDefinitions, ComponentSetNode, ComponentNode, ComponentProperties, InstanceNode, BooleanOperationNode, StickyNode, StampNode, TableNode, TableCellNode, HighlightNode, WashiTapeNode, ShapeWithTextNode, CodeBlockNode, LabelSublayerNode, ConnectorNode, VariableResolvedDataType, VariableAlias, VariableValue, VariableScope, CodeSyntaxPlatform, Variable, VariableCollection, WidgetNode, EmbedData, EmbedNode, LinkUnfurlData, LinkUnfurlNode, MediaData, MediaNode, SectionNode, BaseNode, SceneNode, NodeType, StyleType, InheritedStyleField, StyleConsumers, BaseStyleMixin, PaintStyle, TextStyle, EffectStyle, GridStyle, BaseStyle, Image, Video, BaseUser, User, ActiveUser, FindAllCriteria }
2712+
export { ArgFreeEventType, PluginAPI, VersionHistoryResult, VariablesAPI, LibraryVariableCollection, LibraryVariable, TeamLibraryAPI, PaymentStatus, PaymentsAPI, ClientStorageAPI, NotificationOptions, NotifyDequeueReason, NotificationHandler, ShowUIOptions, UIPostMessageOptions, OnMessageProperties, MessageEventHandler, UIAPI, UtilAPI, ColorPalette, ColorPalettes, ConstantsAPI, CodegenEvent, CodegenPreferences, CodegenPreferencesEvent, CodegenResult, CodegenAPI, DevResource, DevResourceWithNodeId, LinkPreviewEvent, PlainTextElement, LinkPreviewResult, AuthEvent, DevResourceOpenEvent, AuthResult, VSCodeAPI, DevResourcesAPI, TimerAPI, ViewportAPI, TextReviewAPI, ParameterValues, SuggestionResults, ParameterInputEvent, ParametersAPI, RunParametersEvent, OpenDevResourcesEvent, RunEvent, DropEvent, DropItem, DropFile, DocumentChangeEvent, StyleChangeEvent, StyleChange, BaseDocumentChange, BaseNodeChange, RemovedNode, CreateChange, DeleteChange, PropertyChange, BaseStyleChange, StyleCreateChange, StyleDeleteChange, StylePropertyChange, DocumentChange, NodeChangeProperty, NodeChangeEvent, NodeChange, StyleChangeProperty, TextReviewEvent, TextReviewRange, Transform, Vector, Rect, RGB, RGBA, FontName, TextCase, TextDecoration, TextDecorationStyle, TextDecorationOffset, TextDecorationThickness, TextDecorationColor, OpenTypeFeature, ArcData, DropShadowEffect, InnerShadowEffect, BlurEffect, Effect, ConstraintType, Constraints, ColorStop, ImageFilters, SolidPaint, GradientPaint, ImagePaint, VideoPaint, Paint, Guide, RowsColsLayoutGrid, GridLayoutGrid, LayoutGrid, ExportSettingsConstraints, ExportSettingsImage, ExportSettingsSVGBase, ExportSettingsSVG, ExportSettingsSVGString, ExportSettingsPDF, ExportSettingsREST, ExportSettings, WindingRule, VectorVertex, VectorSegment, VectorRegion, VectorNetwork, VectorPath, VectorPaths, LetterSpacing, LineHeight, LeadingTrim, HyperlinkTarget, TextListOptions, BlendMode, MaskType, Font, TextStyleOverrideType, StyledTextSegment, Reaction, VariableDataType, ExpressionFunction, Expression, VariableValueWithExpression, VariableData, ConditionalBlock, DevStatus, Action, SimpleTransition, DirectionalTransition, Transition, Trigger, Navigation, Easing, EasingFunctionBezier, EasingFunctionSpring, OverflowDirection, OverlayPositionType, OverlayBackground, OverlayBackgroundInteraction, PublishStatus, ConnectorEndpointPosition, ConnectorEndpointPositionAndEndpointNodeId, ConnectorEndpointEndpointNodeIdAndMagnet, ConnectorEndpoint, ConnectorStrokeCap, BaseNodeMixin, PluginDataMixin, DevResourcesMixin, DevStatusMixin, SceneNodeMixin, VariableBindableNodeField, VariableBindableTextField, VariableBindablePaintField, VariableBindablePaintStyleField, VariableBindableColorStopField, VariableBindableEffectField, VariableBindableEffectStyleField, VariableBindableLayoutGridField, VariableBindableGridStyleField, VariableBindableComponentPropertyField, VariableBindableComponentPropertyDefinitionField, StickableMixin, ChildrenMixin, ConstraintMixin, DimensionAndPositionMixin, LayoutMixin, AspectRatioLockMixin, BlendMixin, ContainerMixin, DeprecatedBackgroundMixin, StrokeCap, StrokeJoin, HandleMirroring, AutoLayoutMixin, AutoLayoutChildrenMixin, InferredAutoLayoutResult, DetachedInfo, MinimalStrokesMixin, IndividualStrokesMixin, MinimalFillsMixin, GeometryMixin, CornerMixin, RectangleCornerMixin, ExportMixin, FramePrototypingMixin, VectorLikeMixin, ReactionMixin, DocumentationLink, PublishableMixin, DefaultShapeMixin, BaseFrameMixin, DefaultFrameMixin, OpaqueNodeMixin, MinimalBlendMixin, Annotation, AnnotationProperty, AnnotationPropertyType, AnnotationsMixin, Measurement, MeasurementSide, MeasurementOffset, MeasurementsMixin, VariantMixin, ComponentPropertiesMixin, NonResizableTextMixin, TextSublayerNode, DocumentNode, ExplicitVariableModesMixin, PageNode, FrameNode, GroupNode, SliceNode, RectangleNode, LineNode, EllipseNode, PolygonNode, StarNode, VectorNode, TextNode, ComponentPropertyType, InstanceSwapPreferredValue, ComponentPropertyOptions, ComponentPropertyDefinitions, ComponentSetNode, ComponentNode, ComponentProperties, InstanceNode, BooleanOperationNode, StickyNode, StampNode, TableNode, TableCellNode, HighlightNode, WashiTapeNode, ShapeWithTextNode, CodeBlockNode, LabelSublayerNode, ConnectorNode, VariableResolvedDataType, VariableAlias, VariableValue, VariableScope, CodeSyntaxPlatform, Variable, VariableCollection, WidgetNode, EmbedData, EmbedNode, LinkUnfurlData, LinkUnfurlNode, MediaData, MediaNode, SectionNode, BaseNode, SceneNode, NodeType, StyleType, InheritedStyleField, StyleConsumers, BaseStyleMixin, PaintStyle, TextStyle, EffectStyle, GridStyle, BaseStyle, Image, Video, BaseUser, User, ActiveUser, FindAllCriteria }

plugin-api.d.ts

Lines changed: 42 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1669,6 +1669,11 @@ interface LayoutMixin extends DimensionAndPositionMixin, AutoLayoutChildrenMixin
16691669
resizeWithoutConstraints(width: number, height: number): void
16701670
rescale(scale: number): void
16711671
}
1672+
interface AspectRatioLockMixin {
1673+
readonly targetAspectRatio: Vector | null
1674+
lockAspectRatio(): void
1675+
unlockAspectRatio(): void
1676+
}
16721677
interface BlendMixin extends MinimalBlendMixin {
16731678
isMask: boolean
16741679
maskType: MaskType
@@ -1814,6 +1819,7 @@ interface BaseFrameMixin
18141819
ExportMixin,
18151820
IndividualStrokesMixin,
18161821
AutoLayoutMixin,
1822+
AspectRatioLockMixin,
18171823
AnnotationsMixin,
18181824
DevStatusMixin {
18191825
readonly detachedInfo: DetachedInfo | null
@@ -2130,7 +2136,8 @@ interface GroupNode
21302136
DeprecatedBackgroundMixin,
21312137
BlendMixin,
21322138
LayoutMixin,
2133-
ExportMixin {
2139+
ExportMixin,
2140+
AspectRatioLockMixin {
21342141
readonly type: 'GROUP'
21352142
clone(): GroupNode
21362143
}
@@ -2144,25 +2151,41 @@ interface RectangleNode
21442151
CornerMixin,
21452152
RectangleCornerMixin,
21462153
IndividualStrokesMixin,
2147-
AnnotationsMixin {
2154+
AnnotationsMixin,
2155+
AspectRatioLockMixin {
21482156
readonly type: 'RECTANGLE'
21492157
clone(): RectangleNode
21502158
}
21512159
interface LineNode extends DefaultShapeMixin, ConstraintMixin, AnnotationsMixin {
21522160
readonly type: 'LINE'
21532161
clone(): LineNode
21542162
}
2155-
interface EllipseNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
2163+
interface EllipseNode
2164+
extends DefaultShapeMixin,
2165+
ConstraintMixin,
2166+
CornerMixin,
2167+
AnnotationsMixin,
2168+
AspectRatioLockMixin {
21562169
readonly type: 'ELLIPSE'
21572170
clone(): EllipseNode
21582171
arcData: ArcData
21592172
}
2160-
interface PolygonNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
2173+
interface PolygonNode
2174+
extends DefaultShapeMixin,
2175+
ConstraintMixin,
2176+
CornerMixin,
2177+
AnnotationsMixin,
2178+
AspectRatioLockMixin {
21612179
readonly type: 'POLYGON'
21622180
clone(): PolygonNode
21632181
pointCount: number
21642182
}
2165-
interface StarNode extends DefaultShapeMixin, ConstraintMixin, CornerMixin, AnnotationsMixin {
2183+
interface StarNode
2184+
extends DefaultShapeMixin,
2185+
ConstraintMixin,
2186+
CornerMixin,
2187+
AnnotationsMixin,
2188+
AspectRatioLockMixin {
21662189
readonly type: 'STAR'
21672190
clone(): StarNode
21682191
pointCount: number
@@ -2173,15 +2196,17 @@ interface VectorNode
21732196
ConstraintMixin,
21742197
CornerMixin,
21752198
VectorLikeMixin,
2176-
AnnotationsMixin {
2199+
AnnotationsMixin,
2200+
AspectRatioLockMixin {
21772201
readonly type: 'VECTOR'
21782202
clone(): VectorNode
21792203
}
21802204
interface TextNode
21812205
extends DefaultShapeMixin,
21822206
ConstraintMixin,
21832207
NonResizableTextMixin,
2184-
AnnotationsMixin {
2208+
AnnotationsMixin,
2209+
AspectRatioLockMixin {
21852210
readonly type: 'TEXT'
21862211
clone(): TextNode
21872212
textAlignHorizontal: 'LEFT' | 'CENTER' | 'RIGHT' | 'JUSTIFIED'
@@ -2265,7 +2290,8 @@ interface BooleanOperationNode
22652290
extends DefaultShapeMixin,
22662291
ChildrenMixin,
22672292
CornerMixin,
2268-
ContainerMixin {
2293+
ContainerMixin,
2294+
AspectRatioLockMixin {
22692295
readonly type: 'BOOLEAN_OPERATION'
22702296
clone(): BooleanOperationNode
22712297
booleanOperation: 'UNION' | 'INTERSECT' | 'SUBTRACT' | 'EXCLUDE'
@@ -2278,7 +2304,11 @@ interface StickyNode extends OpaqueNodeMixin, MinimalFillsMixin, MinimalBlendMix
22782304
isWideWidth: boolean
22792305
clone(): StickyNode
22802306
}
2281-
interface StampNode extends DefaultShapeMixin, ConstraintMixin, StickableMixin {
2307+
interface StampNode
2308+
extends DefaultShapeMixin,
2309+
ConstraintMixin,
2310+
StickableMixin,
2311+
AspectRatioLockMixin {
22822312
readonly type: 'STAMP'
22832313
clone(): StampNode
22842314
getAuthorAsync(): Promise<BaseUser | null>
@@ -2313,11 +2343,12 @@ interface HighlightNode
23132343
ConstraintMixin,
23142344
CornerMixin,
23152345
VectorLikeMixin,
2316-
StickableMixin {
2346+
StickableMixin,
2347+
AspectRatioLockMixin {
23172348
readonly type: 'HIGHLIGHT'
23182349
clone(): HighlightNode
23192350
}
2320-
interface WashiTapeNode extends DefaultShapeMixin, StickableMixin {
2351+
interface WashiTapeNode extends DefaultShapeMixin, StickableMixin, AspectRatioLockMixin {
23212352
readonly type: 'WASHI_TAPE'
23222353
clone(): WashiTapeNode
23232354
}

0 commit comments

Comments
 (0)