@adobe/ccweb-add-on-sdk-types 1.12.0 → 1.14.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adobe/ccweb-add-on-sdk-types",
3
- "version": "1.12.0",
3
+ "version": "1.14.0",
4
4
  "author": "Adobe",
5
5
  "license": "MIT",
6
6
  "description": "Type definitions for Adobe Creative Cloud Web Add-on SDK.",
@@ -38,14 +38,15 @@
38
38
  "url": "https://github.com/adobe/create-ccweb-add-on"
39
39
  },
40
40
  "dependencies": {
41
- "tslib": "2.6.2",
42
- "gl-matrix": "3.3.0"
41
+ "tslib": "2.7.0",
42
+ "gl-matrix": "3.3.0",
43
+ "@swc/helpers": "0.5.12"
43
44
  },
44
45
  "devDependencies": {
45
- "@types/node": "16.18.36",
46
+ "@types/node": "18.18.2",
46
47
  "prettier": "2.8.0",
47
48
  "ts-node": "10.9.2",
48
- "typescript": "5.4.5"
49
+ "typescript": "5.7.3"
49
50
  },
50
51
  "scripts": {
51
52
  "clean": "",
@@ -83,7 +83,9 @@ declare namespace ApiConstants {
83
83
  TextAlignment,
84
84
  TextType,
85
85
  EditorEvent,
86
- VisualEffectType
86
+ VisualEffectType,
87
+ ParagraphListType,
88
+ OrderedListNumbering
87
89
  };
88
90
  }
89
91
 
@@ -104,7 +106,13 @@ declare interface ApiModuleExport {
104
106
  */
105
107
  export declare interface AreaTextLayout {
106
108
  type: TextType.area;
109
+ /**
110
+ * The width of the text node in pixels.
111
+ */
107
112
  width: number;
113
+ /**
114
+ * The height of the text node in pixels.
115
+ */
108
116
  height: number;
109
117
  }
110
118
 
@@ -193,6 +201,9 @@ export declare class ArtboardNode extends VisualNode implements IRectangularNode
193
201
  */
194
202
  export declare interface AutoHeightTextLayout {
195
203
  type: TextType.autoHeight;
204
+ /**
205
+ * The width of the text node in pixels.
206
+ */
196
207
  width: number;
197
208
  }
198
209
 
@@ -201,11 +212,6 @@ export declare interface AutoHeightTextLayout {
201
212
  */
202
213
  export declare class AvailableFont extends BaseFont {
203
214
  /**
204
- * <InlineAlert slots="text" variant="warning"/>
205
- *
206
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
207
- *
208
- * @experimental
209
215
  * Whether the font is a premium Adobe font.
210
216
  */
211
217
  get isPremium(): boolean;
@@ -213,11 +219,6 @@ export declare class AvailableFont extends BaseFont {
213
219
  }
214
220
 
215
221
  /**
216
- * <InlineAlert slots="text" variant="warning"/>
217
- *
218
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
219
- *
220
- * @experimental
221
222
  * Base character styles that can be applied to any range of characters.
222
223
  * Excludes font style, which differs between the getter-oriented {@link CharacterStyles} interface and the
223
224
  * setter-oriented {@link CharacterStylesInput}.
@@ -249,29 +250,14 @@ declare interface BaseCharacterStyles {
249
250
  */
250
251
  declare abstract class BaseFont {
251
252
  /**
252
- * <InlineAlert slots="text" variant="warning"/>
253
- *
254
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
255
- *
256
- * @experimental
257
253
  * The PostScript name of the font.
258
254
  */
259
255
  get postscriptName(): string;
260
256
  /**
261
- * <InlineAlert slots="text" variant="warning"/>
262
- *
263
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
264
- *
265
- * @experimental
266
257
  * The font family containing the font.
267
258
  */
268
259
  get family(): string;
269
260
  /**
270
- * <InlineAlert slots="text" variant="warning"/>
271
- *
272
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
273
- *
274
- * @experimental
275
261
  * The style of the font within the family.
276
262
  */
277
263
  get style(): string;
@@ -434,11 +420,6 @@ declare enum BlendMode {
434
420
  }
435
421
 
436
422
  /**
437
- * <InlineAlert slots="text" variant="warning"/>
438
- *
439
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
440
- *
441
- * @experimental
442
423
  * Text styles that can be applied to any range of characters, even a short span like a single word. (Contrast with
443
424
  * ParagraphStyles, which must be applied to an entire paragraph atomically).
444
425
  */
@@ -447,11 +428,6 @@ export declare interface CharacterStyles extends BaseCharacterStyles {
447
428
  }
448
429
 
449
430
  /**
450
- * <InlineAlert slots="text" variant="warning"/>
451
- *
452
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
453
- *
454
- * @experimental
455
431
  * Variant of {@link CharacterStyles} with all style fields optional, used for applyCharacterStyles(). When using that API,
456
432
  * any fields not specified are left unchanged, preserving the text's existing styles.
457
433
  *
@@ -463,11 +439,6 @@ export declare interface CharacterStylesInput extends Partial<BaseCharacterStyle
463
439
  }
464
440
 
465
441
  /**
466
- * <InlineAlert slots="text" variant="warning"/>
467
- *
468
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
469
- *
470
- * @experimental
471
442
  * A set of {@link CharacterStyles} along with the range of characters they apply to. Seen in the characterStyleRanges getter.
472
443
  *
473
444
  * Note that fonts returned by the getter are *not* guaranteed to be ones the user has rights to edit with, even though they
@@ -476,11 +447,6 @@ export declare interface CharacterStylesInput extends Partial<BaseCharacterStyle
476
447
  export declare interface CharacterStylesRange extends CharacterStyles, StyleRange {}
477
448
 
478
449
  /**
479
- * <InlineAlert slots="text" variant="warning"/>
480
- *
481
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
482
- *
483
- * @experimental
484
450
  * Variant of {@link CharacterStylesRange} with all style fields optional, along with the range of characters they apply to.
485
451
  * Used for the characterStyleRanges setter. When invoking the setter, any fields not specified are reset to their defaults.
486
452
  *
@@ -910,11 +876,6 @@ declare enum FillType {
910
876
  }
911
877
 
912
878
  /**
913
- * <InlineAlert slots="text" variant="warning"/>
914
- *
915
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
916
- *
917
- * @experimental
918
879
  * Represents a font in the document.
919
880
  *
920
881
  * Note: not every font encountered in the existing content is available for editing.
@@ -927,11 +888,6 @@ export declare type Font = AvailableFont | UnavailableFont;
927
888
  */
928
889
  export declare class Fonts {
929
890
  /**
930
- * <InlineAlert slots="text" variant="warning"/>
931
- *
932
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
933
- *
934
- * @experimental
935
891
  * Get an {@link AvailableFont} that exactly matches the given PostScript name, if any. Only fonts that the user has permission to use
936
892
  * for editing content are returned, so the result of this call is always safe to apply to a {@link TextContentModel}'s styles.
937
893
  *
@@ -1003,6 +959,9 @@ export declare class GroupNode extends Node implements ContainerNode {
1003
959
  */
1004
960
  set maskShape(mask: FillableNode | undefined);
1005
961
  /**
962
+ * {@inheritDoc VisualNode.boundsLocal}
963
+ *
964
+ * @returns
1006
965
  * Note: If this group has a maskShape, group's bounds are always identical to the maskShape's, regardless of the
1007
966
  * group's other content.
1008
967
  */
@@ -1866,11 +1825,6 @@ export declare class TextContentModel {
1866
1825
  */
1867
1826
  get id(): string;
1868
1827
  /**
1869
- * <InlineAlert slots="text" variant="warning"/>
1870
- *
1871
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
1872
- *
1873
- * @experimental
1874
1828
  * Get ordered list of all {@link TextNode}s that display this text content in the scenegraph. The text content
1875
1829
  * starts in the first {@link TextNode} "frame", and then flows into the second node once it has filled the first one. The ending of the
1876
1830
  * text content may not be visible at all, if the last {@link TextNode} "frame" is not large enough to accommodate it.
@@ -1884,11 +1838,6 @@ export declare class TextContentModel {
1884
1838
  get text(): string;
1885
1839
  set text(textContent: string);
1886
1840
  /**
1887
- * <InlineAlert slots="text" variant="warning"/>
1888
- *
1889
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
1890
- *
1891
- * @experimental
1892
1841
  * The character styles are applied to different ranges of this text content. When setting character styles, any style
1893
1842
  * properties that are not provided are reset to their defaults (contrast to {@link applyCharacterStyles} which
1894
1843
  * preserves the text's existing styles for any fields not specified). When *getting* styles, all fields are always
@@ -1925,11 +1874,6 @@ export declare class TextContentModel {
1925
1874
  */
1926
1875
  set paragraphStyleRanges(styles: readonly ParagraphStylesRangeInput[]);
1927
1876
  /**
1928
- * <InlineAlert slots="text" variant="warning"/>
1929
- *
1930
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
1931
- *
1932
- * @experimental
1933
1877
  * Apply one or more styles to the characters in the given range, leaving any style properties that were not specified
1934
1878
  * unchanged. Does not modify any styles in the text outside this range. Contrast to the {@link characterStyleRanges}
1935
1879
  * setter, which specifies new style range(s) for the entire text at once, and resets any unspecified properties back to
@@ -1981,6 +1925,24 @@ export declare class TextContentModel {
1981
1925
  * multi-frame text flows.
1982
1926
  */
1983
1927
  export declare class TextNode extends Node {
1928
+ /**
1929
+ * {@inheritDoc VisualNode.centerPointLocal}
1930
+ *
1931
+ * @returns
1932
+ * Note: The center of the orphaned TextNode may be different from the center of the node placed on a page. It is
1933
+ * recommended to use this property only when the node is placed on a page.
1934
+ *
1935
+ */
1936
+ get centerPointLocal(): Readonly<Point>;
1937
+ /**
1938
+ * {@inheritDoc VisualNode.topLeftLocal}
1939
+ *
1940
+ * @returns
1941
+ * Note: The top-left of the orphaned TextNode may be different from the top-left of the node placed on a
1942
+ * page. It is recommended to use this property only when the node is placed on a page.
1943
+ *
1944
+ */
1945
+ get topLeftLocal(): Readonly<Point>;
1984
1946
  /**
1985
1947
  * The model containing the complete text string and its styles, only part of which may be visible within the bounds of
1986
1948
  * this specific TextNode "frame." The full text content flow may be split across multiple frames, and/or it may be clipped if a
@@ -1994,11 +1956,6 @@ export declare class TextNode extends Node {
1994
1956
  */
1995
1957
  get fullContent(): TextContentModel;
1996
1958
  /**
1997
- * <InlineAlert slots="text" variant="warning"/>
1998
- *
1999
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
2000
- *
2001
- * @experimental
2002
1959
  * The next TextNode that text overflowing this node will spill into, if any. If undefined and this TextNode is fixed size
2003
1960
  * ({@link AreaTextLayout}), any text content that does not fit within this node's area will be clipped.
2004
1961
  *
@@ -2025,11 +1982,6 @@ export declare class TextNode extends Node {
2025
1982
  get textAlignment(): TextAlignment;
2026
1983
  set textAlignment(alignment: TextAlignment);
2027
1984
  /**
2028
- * <InlineAlert slots="text" variant="warning"/>
2029
- *
2030
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
2031
- *
2032
- * @experimental
2033
1985
  * @returns The list of visual effects applied to the TextNode.
2034
1986
  */
2035
1987
  get visualEffects(): readonly VisualEffectType[];
@@ -2156,11 +2108,6 @@ export declare class Viewport {
2156
2108
  export declare const viewport: ExpressViewport;
2157
2109
 
2158
2110
  /**
2159
- * <InlineAlert slots="text" variant="warning"/>
2160
- *
2161
- * **IMPORTANT:** This is currently ***experimental only*** and should not be used in any add-ons you will be distributing until it has been declared stable. To use it, you will first need to set the `experimentalApis` flag to `true` in the [`requirements`](../../../manifest/index.md#requirements) section of the `manifest.json`.
2162
- *
2163
- * @experimental
2164
2111
  * Visual effects that can be applied to a text node.
2165
2112
  */
2166
2113
  declare enum VisualEffectType {
@@ -2198,8 +2145,7 @@ export declare class VisualNode extends BaseNode {
2198
2145
  */
2199
2146
  get boundsLocal(): Readonly<Rect>;
2200
2147
  /**
2201
- * Position of the node's centerpoint in its own local coordinate space, i.e. the center of the boundsLocal
2202
- * box.
2148
+ * Position of the node's centerpoint in its own local coordinate space, i.e. the center of the boundsLocal box.
2203
2149
  */
2204
2150
  get centerPointLocal(): Readonly<Point>;
2205
2151
  /**
package/ui/ui-sdk.d.ts CHANGED
@@ -252,6 +252,22 @@ declare interface ApplicationBase {
252
252
  showModalDialog(dialogOptions: InputDialogOptions): Promise<InputDialogResult>;
253
253
  showModalDialog(dialogOptions: CustomDialogOptions): Promise<CustomDialogResult>;
254
254
 
255
+ /**
256
+ * @experimental - Experimental API
257
+ * Shows a color picker popover anchored to the specified element.
258
+ * The anchor element must be an instance of HTMLElement.
259
+ * Custom DOM events are dispatched on the anchor element when the color changes or the color picker closes.
260
+ * See {@link ColorPickerEvents} for more details.
261
+ * @param anchorElement - The HTML element to anchor the color picker to.
262
+ * @param options - Optional configuration options for customizing the color picker behavior and appearance.
263
+ */
264
+ showColorPicker(anchorElement: HTMLElement, options?: ColorPickerOptions): Promise<void>;
265
+ /**
266
+ * @experimental - Experimental API
267
+ * Hides the color picker popover if it is currently visible.
268
+ */
269
+ hideColorPicker(): Promise<void>;
270
+
255
271
  /**
256
272
  * Triggers/Starts the in-app monetization upgrade flow
257
273
  * @returns if the user is premium user or not
@@ -516,6 +532,78 @@ export declare interface ClientStorage {
516
532
  clear(): Promise<void>;
517
533
  }
518
534
 
535
+ /**
536
+ * @experimental - Experimental API
537
+ * Custom DOM events dispatched on the anchor element passed to `showColorPicker()` API.
538
+ */
539
+ export declare enum ColorPickerEvents {
540
+ /**
541
+ * Color change event dispatched when a color is selected.
542
+ * The event detail will contain a 'color' property of type string.
543
+ */
544
+ colorChange = "colorpicker-color-change",
545
+ /**
546
+ * Color picker closed event dispatched when the color picker is closed.
547
+ */
548
+ close = "colorpicker-close"
549
+ }
550
+
551
+ /**
552
+ * @experimental - Experimental API
553
+ * Options that can be passed to the `showColorPicker` API to customize the color picker's behavior and appearance.
554
+ */
555
+ export declare interface ColorPickerOptions {
556
+ /**
557
+ * Title text displayed in the color picker popover header.
558
+ * Default title is an empty string.
559
+ */
560
+ title?: string;
561
+ /**
562
+ * Initial color for the color picker, in 0xRRGGBB format.
563
+ * Default color is 0xFFFFFF (white).
564
+ */
565
+ initialColor?: number;
566
+ /**
567
+ * Placement of the color picker popover relative to the anchor element.
568
+ * Default placement is ColorPickerPlacement.left.
569
+ */
570
+ placement?: ColorPickerPlacement;
571
+ /**
572
+ * Controls whether the color picker popover should be temporarily hidden while using the EyeDropper tool.
573
+ * Default value is false.
574
+ */
575
+ eyedropperHidesPicker?: boolean;
576
+ /**
577
+ * Controls whether the transparency/alpha slider is shown in the color picker.
578
+ * Default value is false.
579
+ */
580
+ disableAlphaChannel?: boolean;
581
+ }
582
+
583
+ /**
584
+ * @experimental - Experimental API
585
+ * Denotes the placement of the color picker popover relative to its anchor element.
586
+ * Used in the placement option of `showColorPicker()` API.
587
+ */
588
+ export declare enum ColorPickerPlacement {
589
+ /**
590
+ * The color picker popover will be positioned above the anchor element.
591
+ */
592
+ top = "top",
593
+ /**
594
+ * The color picker popover will be positioned below the anchor element.
595
+ */
596
+ bottom = "bottom",
597
+ /**
598
+ * The color picker popover will be positioned to the left of the anchor element.
599
+ */
600
+ left = "left",
601
+ /**
602
+ * The color picker popover will be positioned to the right of the anchor element.
603
+ */
604
+ right = "right"
605
+ }
606
+
519
607
  declare namespace Constants {
520
608
  export {
521
609
  Range_2 as Range,
@@ -536,6 +624,8 @@ declare namespace Constants {
536
624
  PlatformEnvironment,
537
625
  DeviceClass,
538
626
  PlatformType,
627
+ ColorPickerPlacement,
628
+ ColorPickerEvents,
539
629
  AuthorizationStatus
540
630
  };
541
631
  }
package/.mocharc.json DELETED
@@ -1,5 +0,0 @@
1
- {
2
- "extension": ["ts"],
3
- "node-option": ["experimental-specifier-resolution=node", "loader=ts-node/esm", "no-warnings"],
4
- "spec": ["test/**/*.spec.ts"]
5
- }