unlayer-types 1.82.0 → 1.101.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 (2) hide show
  1. package/embed.d.ts +226 -109
  2. package/package.json +1 -1
package/embed.d.ts CHANGED
@@ -306,6 +306,13 @@ declare module "editor/themes/types" {
306
306
  backgroundColor?: ColorValue;
307
307
  textColor?: ColorValue;
308
308
  };
309
+ ':highlighted'?: {
310
+ backgroundColor?: ColorValue;
311
+ textColor?: ColorValue;
312
+ };
313
+ };
314
+ separator: {
315
+ borderColor?: ColorValue;
309
316
  };
310
317
  };
311
318
  input: {
@@ -1151,6 +1158,15 @@ declare module "state/types/types" {
1151
1158
  value: string;
1152
1159
  label: string;
1153
1160
  enabled?: boolean;
1161
+ highlight?: boolean;
1162
+ onClick?: (_option: {
1163
+ label?: string;
1164
+ value: string;
1165
+ }, _meta: object, done: (result: {
1166
+ value: string;
1167
+ }) => void) => void;
1168
+ } | {
1169
+ type: 'separator';
1154
1170
  };
1155
1171
  export interface LinkTypeField {
1156
1172
  name: string;
@@ -1177,6 +1193,7 @@ declare module "state/types/types" {
1177
1193
  target?: string;
1178
1194
  onClick?: string | Function;
1179
1195
  class?: string;
1196
+ download?: boolean;
1180
1197
  [key: string]: any;
1181
1198
  };
1182
1199
  fields?: LinkTypeField[];
@@ -1416,6 +1433,25 @@ declare module "engine/config/features" {
1416
1433
  text: string;
1417
1434
  }, callback: (text: string) => void) => void;
1418
1435
  }
1436
+ export type ColorGroup = {} & ({
1437
+ id: 'brand_colors' | 'common_colors' | 'template_colors';
1438
+ label?: string;
1439
+ colors?: string[];
1440
+ default?: boolean;
1441
+ } | {
1442
+ id?: never;
1443
+ label: string;
1444
+ colors: string[];
1445
+ default?: boolean;
1446
+ });
1447
+ export interface ColorPicker {
1448
+ /** @deprecated Use colors: string[] or colors: [{ id: "common_colors", label: 'Common Colors', colors: string[] }] instead */
1449
+ presets?: string[];
1450
+ /** @deprecated Use colors: [{ id: "brand_colors", label: 'Brand Colors', colors: string[] }] instead */
1451
+ brandColors?: string[];
1452
+ colors?: string[] | ColorGroup[];
1453
+ limit?: number;
1454
+ }
1419
1455
  export interface Features {
1420
1456
  audit?: boolean;
1421
1457
  blocks?: boolean;
@@ -1448,9 +1484,7 @@ declare module "engine/config/features" {
1448
1484
  defaultFontSize?: string;
1449
1485
  customButtons?: TextEditorCustomButton[];
1450
1486
  };
1451
- colorPicker?: {
1452
- presets?: string[];
1453
- };
1487
+ colorPicker?: ColorPicker;
1454
1488
  legacy?: {
1455
1489
  disableHoverButtonColors?: boolean;
1456
1490
  };
@@ -1472,7 +1506,9 @@ declare module "engine/config/features" {
1472
1506
  sendTestEmail?: boolean;
1473
1507
  }
1474
1508
  export function setFeatures(newFeatures: Features): void;
1475
- export function setOverrideFeatures(overrideFeatures: Features): void;
1509
+ export function setOverrideFeatures(overrideFeatures: Features, options?: {
1510
+ deepmerge?: boolean;
1511
+ }): void;
1476
1512
  export function overrideFeatures(newOverrideFeatures: Features): void;
1477
1513
  export function getFeatures(): Features;
1478
1514
  export function getFeature(path: string | string[]): any;
@@ -1642,6 +1678,7 @@ declare module "embed/Config" {
1642
1678
  export interface ExportHtmlOptions {
1643
1679
  amp?: boolean;
1644
1680
  cleanup?: boolean;
1681
+ inlineStyles?: boolean;
1645
1682
  textDirection?: TextDirection;
1646
1683
  isPreview?: boolean;
1647
1684
  language?: string;
@@ -1911,6 +1948,10 @@ declare module "editor/design-system/components/Tooltip" {
1911
1948
  }
1912
1949
  export function Tooltip(props: TooltipProps): JSX.Element;
1913
1950
  }
1951
+ declare module "editor/helpers/intl" {
1952
+ import { IntlShape } from 'react-intl';
1953
+ export function getIntlLabel<Label extends any>(intl: IntlShape, label: string | Label): string | Label;
1954
+ }
1914
1955
  declare module "editor/design-system/components/Dropdown" {
1915
1956
  import React from 'react';
1916
1957
  import * as Ariakit from '@ariakit/react';
@@ -1945,6 +1986,7 @@ declare module "editor/design-system/components/Dropdown" {
1945
1986
  caret?: boolean;
1946
1987
  disabled?: boolean;
1947
1988
  fallbackLabel?: string;
1989
+ id?: string;
1948
1990
  label?: React.ReactNode;
1949
1991
  multi?: boolean;
1950
1992
  triggerLabel?: string | React.ReactNode;
@@ -2290,9 +2332,6 @@ declare module "editor/components/common/ImageUploadButton" {
2290
2332
  }
2291
2333
  export const ImageUploadButton: React.ForwardRefExoticComponent<ImageUploadButtonProps & React.RefAttributes<ImageUploadButtonInstance>>;
2292
2334
  }
2293
- declare module "engine/tools/content/image" {
2294
- export const DEFAULT_IMAGE_PLACEHOLDER = "https://cdn.tools.unlayer.com/image/placeholder.png";
2295
- }
2296
2335
  declare module "editor/design-system/components/Progress" {
2297
2336
  export interface ProgressBarProps {
2298
2337
  progress: number;
@@ -2304,90 +2343,13 @@ declare module "editor/design-system/components/Progress" {
2304
2343
  }
2305
2344
  export function Progress(props: ProgressBarProps): JSX.Element;
2306
2345
  }
2307
- declare module "engine/tools/content/carousel" {
2308
- export const DEFAULT_CAROUSEL_PLACEHOLDER = "https://cdn.tools.unlayer.com/carousel/placeholder.png";
2309
- }
2310
- declare module "editor/components/common/Dropzone" {
2311
- import React from 'react';
2312
- import { DropzoneOptions } from 'react-dropzone';
2313
- export interface DropzoneProps {
2314
- children?: React.ReactNode;
2315
- disabled?: boolean;
2316
- isUploading?: boolean;
2317
- maxSize?: number;
2318
- options?: DropzoneOptions;
2319
- uploadProgress?: number;
2320
- imageUrl?: string;
2321
- imageWidth?: number;
2322
- imageHeight?: number;
2323
- imageSize?: number;
2324
- imageName?: string;
2325
- isEditImageButtonDisabled?: boolean;
2326
- onEditImageClick?: () => void;
2327
- shouldRender?: {
2328
- dropzone?: boolean;
2329
- editImageButton?: boolean;
2330
- imageInfo?: boolean;
2331
- };
2332
- }
2333
- export function Dropzone(props: DropzoneProps): JSX.Element;
2334
- }
2335
- declare module "editor/components/common/ImageUploadErrorMessage" {
2336
- import { IntlShape } from 'react-intl';
2337
- export interface ImageUploadErrorMessageProps {
2338
- error: Error | boolean | null | undefined;
2339
- maxSize?: number;
2340
- onClick?: () => void;
2341
- }
2342
- export function getImageUploadErrorMessage(error: ImageUploadErrorMessageProps['error'], { maxSize, intl }: {
2343
- maxSize: number;
2344
- intl: IntlShape;
2345
- }): any;
2346
- export function ImageUploadErrorMessage(props: ImageUploadErrorMessageProps): JSX.Element;
2347
- }
2348
- declare module "editor/components/editors/ImageUploader" {
2349
- import { RefObject } from 'react';
2350
- import { DropEvent, FileRejection } from 'react-dropzone';
2351
- import { ImageUploadButtonInstance, ImageUploadButtonProps } from "editor/components/common/ImageUploadButton";
2352
- import { Location } from "state/types/types";
2353
- export interface ImageUploaderProps {
2354
- disabled?: boolean;
2355
- shouldRender: {
2356
- dropzone?: boolean;
2357
- editImageButton?: boolean;
2358
- /** @deprecated Use editImageButton instead */
2359
- effects?: boolean;
2360
- imageInfo?: boolean;
2361
- moreImages?: boolean;
2362
- stockImages?: boolean;
2363
- uploadButton?: boolean;
2364
- userUploads?: boolean;
2365
- };
2366
- label: string;
2367
- optionName: string;
2368
- location: Location;
2369
- maxSize: number;
2370
- intl: any;
2371
- onDropAccepted: (files: File[]) => void;
2372
- onDropRejected: (fileRejections: FileRejection[], event: DropEvent) => void;
2373
- isUploading?: boolean;
2374
- uploadProgress?: number;
2375
- imageUrl?: string;
2376
- imageWidth?: number;
2377
- imageHeight?: number;
2378
- imageSize?: number;
2379
- togglePixieModal: () => void;
2380
- imageExists?: boolean;
2381
- error: boolean | Error | null;
2382
- onImageSelect: ImageUploadButtonProps['onImageSelect'];
2383
- onImageUpload: ImageUploadButtonProps['onImageUpload'];
2384
- onUploadProgressChange: ImageUploadButtonProps['onUploadProgressChange'];
2385
- onUploadStatusChange: ImageUploadButtonProps['onUploadStatusChange'];
2386
- onErrorChange: (error: Error | null) => void;
2387
- imageUploadButtonRef: RefObject<ImageUploadButtonInstance>;
2388
- showError?: boolean;
2389
- }
2390
- export const ImageUploader: ({ disabled, shouldRender: _shouldRender, label, optionName, location, maxSize, intl, onDropAccepted, onDropRejected, isUploading, uploadProgress, imageUrl, imageWidth, imageHeight, imageSize, togglePixieModal, imageExists, error, onImageSelect, onImageUpload, onUploadProgressChange, onUploadStatusChange, onErrorChange, imageUploadButtonRef, showError, ...restProps }: ImageUploaderProps) => JSX.Element;
2346
+ declare module "engine/utils/explodePaddingsOrMargins" {
2347
+ export function explodePaddingsOrMargins(value: number | string | undefined): {
2348
+ top: number | undefined;
2349
+ right: number | undefined;
2350
+ bottom: number | undefined;
2351
+ left: number | undefined;
2352
+ };
2391
2353
  }
2392
2354
  declare module "editor/components/editors/common/WidgetLabel" {
2393
2355
  import React from 'react';
@@ -2421,6 +2383,56 @@ declare module "editor/components/editors/common/WidgetLabel" {
2421
2383
  showResetButton: boolean;
2422
2384
  };
2423
2385
  }
2386
+ declare module "editor/design-system/components/ToggleSwitch" {
2387
+ import React from 'react';
2388
+ export interface ToggleSwitchProps {
2389
+ children?: React.ReactNode;
2390
+ className?: string;
2391
+ disabled?: boolean;
2392
+ isChecked: boolean;
2393
+ left?: React.ReactNode;
2394
+ onChange: (isChecked: boolean) => void;
2395
+ right?: React.ReactNode;
2396
+ toggleLeft?: React.ReactNode;
2397
+ size?: number;
2398
+ style?: React.CSSProperties;
2399
+ }
2400
+ export const ToggleSwitch: React.ForwardRefExoticComponent<ToggleSwitchProps & React.RefAttributes<HTMLLabelElement>>;
2401
+ }
2402
+ declare module "editor/components/editors/AutoWidthEditor" {
2403
+ import { EditorProps } from "editor/components/editors/types";
2404
+ import { WidgetLabelProps } from "editor/components/editors/common/WidgetLabel";
2405
+ import { Device } from "state/types/types";
2406
+ export interface AutoWidthEditorValue {
2407
+ autoWidth?: boolean;
2408
+ width?: number | string;
2409
+ }
2410
+ export type AutoWidthEditorProps = EditorProps<AutoWidthEditorValue> & {
2411
+ widgetParams?: {
2412
+ hint?: string | {
2413
+ id: string;
2414
+ defaultValue: string;
2415
+ };
2416
+ };
2417
+ };
2418
+ export interface AutoWidthEditorBaseProps extends Pick<AutoWidthEditorProps, 'value' | 'defaultValue' | 'disabled' | 'isLockedByStyleGuide'> {
2419
+ defaultWidthIsCalculated?: boolean;
2420
+ deviceName?: Device;
2421
+ widgetLabelProps: Omit<WidgetLabelProps, 'defaultValue' | 'onReset'>;
2422
+ handlers: {
2423
+ onToggleAutoWidth: (autoWidth: AutoWidthEditorValue['autoWidth']) => void;
2424
+ onChangeWidth: (width: number) => void;
2425
+ onReset: NonNullable<WidgetLabelProps['onReset']>;
2426
+ };
2427
+ }
2428
+ export const AutoWidthEditorBase: (props: AutoWidthEditorBaseProps) => JSX.Element;
2429
+ }
2430
+ declare module "engine/tools/content/carousel" {
2431
+ export const DEFAULT_CAROUSEL_PLACEHOLDER = "https://cdn.tools.unlayer.com/carousel/placeholder.png";
2432
+ }
2433
+ declare module "engine/tools/content/image" {
2434
+ export const DEFAULT_IMAGE_PLACEHOLDER = "https://cdn.tools.unlayer.com/image/placeholder.png";
2435
+ }
2424
2436
  declare module "editor/themes/helpers" {
2425
2437
  import { Theme } from "editor/themes/types";
2426
2438
  export function parseThemeValues<T extends Theme>(theme: T): T;
@@ -2485,22 +2497,6 @@ declare module "editor/components/editors/pixie/pixie.umd" {
2485
2497
  };
2486
2498
  export = _exports;
2487
2499
  }
2488
- declare module "editor/design-system/components/ToggleSwitch" {
2489
- import React from 'react';
2490
- export interface ToggleSwitchProps {
2491
- children?: React.ReactNode;
2492
- className?: string;
2493
- disabled?: boolean;
2494
- isChecked: boolean;
2495
- left?: React.ReactNode;
2496
- onChange: (isChecked: boolean) => void;
2497
- right?: React.ReactNode;
2498
- toggleLeft?: React.ReactNode;
2499
- size?: number;
2500
- style?: React.CSSProperties;
2501
- }
2502
- export const ToggleSwitch: React.ForwardRefExoticComponent<ToggleSwitchProps & React.RefAttributes<HTMLLabelElement>>;
2503
- }
2504
2500
  declare module "editor/design-system/components/Popover" {
2505
2501
  import React from 'react';
2506
2502
  import * as Ariakit from '@ariakit/react';
@@ -2654,6 +2650,120 @@ declare module "editor/components/editors/pixie/PixieImageEditor" {
2654
2650
  const PixieImageEditor: (props: PixieImageEditorProps) => JSX.Element;
2655
2651
  export default PixieImageEditor;
2656
2652
  }
2653
+ declare module "editor/components/editors/ImageEditor" {
2654
+ import { EditorProps } from "editor/components/editors/types";
2655
+ export type ImageEditorValue = {
2656
+ url: string;
2657
+ width?: number;
2658
+ height?: number;
2659
+ autoWidth?: boolean;
2660
+ maxWidth?: string;
2661
+ optimistic?: boolean;
2662
+ };
2663
+ export type ImageEditorProps = EditorProps<ImageEditorValue> & {
2664
+ widgetParams?: {
2665
+ shouldRender?: {
2666
+ dropzone?: boolean;
2667
+ editImageButton?: boolean;
2668
+ /** @deprecated Use editImageButton instead */
2669
+ effects?: boolean;
2670
+ moreImages?: boolean;
2671
+ stockImages?: boolean;
2672
+ uploadButton?: boolean;
2673
+ url?: boolean;
2674
+ userUploads?: boolean;
2675
+ width?: boolean;
2676
+ } | false;
2677
+ hint?: string | {
2678
+ id: string;
2679
+ defaultValue: string;
2680
+ };
2681
+ };
2682
+ };
2683
+ export function isDefaultImage(imageUrl: string | undefined): boolean;
2684
+ }
2685
+ declare module "editor/components/common/Dropzone" {
2686
+ import React from 'react';
2687
+ import { DropzoneOptions } from 'react-dropzone';
2688
+ export interface DropzoneProps {
2689
+ children?: React.ReactNode;
2690
+ disabled?: boolean;
2691
+ isUploading?: boolean;
2692
+ maxSize?: number;
2693
+ options?: DropzoneOptions;
2694
+ uploadProgress?: number;
2695
+ imageUrl?: string;
2696
+ imageWidth?: number;
2697
+ imageHeight?: number;
2698
+ imageSize?: number;
2699
+ imageName?: string;
2700
+ isEditImageButtonDisabled?: boolean;
2701
+ onEditImageClick?: () => void;
2702
+ shouldRender?: {
2703
+ dropzone?: boolean;
2704
+ editImageButton?: boolean;
2705
+ imageInfo?: boolean;
2706
+ };
2707
+ }
2708
+ export function Dropzone(props: DropzoneProps): JSX.Element;
2709
+ }
2710
+ declare module "editor/components/common/ImageUploadErrorMessage" {
2711
+ import { IntlShape } from 'react-intl';
2712
+ export interface ImageUploadErrorMessageProps {
2713
+ error: Error | boolean | null | undefined;
2714
+ maxSize?: number;
2715
+ onClick?: () => void;
2716
+ }
2717
+ export function getImageUploadErrorMessage(error: ImageUploadErrorMessageProps['error'], { maxSize, intl }: {
2718
+ maxSize: number;
2719
+ intl: IntlShape;
2720
+ }): any;
2721
+ export function ImageUploadErrorMessage(props: ImageUploadErrorMessageProps): JSX.Element;
2722
+ }
2723
+ declare module "editor/components/editors/ImageUploader" {
2724
+ import { RefObject } from 'react';
2725
+ import { DropEvent, FileRejection } from 'react-dropzone';
2726
+ import { ImageUploadButtonInstance, ImageUploadButtonProps } from "editor/components/common/ImageUploadButton";
2727
+ import { Location } from "state/types/types";
2728
+ export interface ImageUploaderProps {
2729
+ disabled?: boolean;
2730
+ shouldRender: {
2731
+ dropzone?: boolean;
2732
+ editImageButton?: boolean;
2733
+ /** @deprecated Use editImageButton instead */
2734
+ effects?: boolean;
2735
+ imageInfo?: boolean;
2736
+ moreImages?: boolean;
2737
+ stockImages?: boolean;
2738
+ uploadButton?: boolean;
2739
+ userUploads?: boolean;
2740
+ };
2741
+ label: string;
2742
+ optionName: string;
2743
+ location: Location;
2744
+ maxSize: number;
2745
+ intl: any;
2746
+ onDropAccepted: (files: File[]) => void;
2747
+ onDropRejected: (fileRejections: FileRejection[], event: DropEvent) => void;
2748
+ isUploading?: boolean;
2749
+ uploadProgress?: number;
2750
+ imageUrl?: string;
2751
+ imageWidth?: number;
2752
+ imageHeight?: number;
2753
+ imageSize?: number;
2754
+ togglePixieModal: () => void;
2755
+ imageExists?: boolean;
2756
+ error: boolean | Error | null;
2757
+ onImageSelect: ImageUploadButtonProps['onImageSelect'];
2758
+ onImageUpload: ImageUploadButtonProps['onImageUpload'];
2759
+ onUploadProgressChange: ImageUploadButtonProps['onUploadProgressChange'];
2760
+ onUploadStatusChange: ImageUploadButtonProps['onUploadStatusChange'];
2761
+ onErrorChange: (error: Error | null) => void;
2762
+ imageUploadButtonRef: RefObject<ImageUploadButtonInstance>;
2763
+ showError?: boolean;
2764
+ }
2765
+ export const ImageUploader: ({ disabled, shouldRender: _shouldRender, label, optionName, location, maxSize, intl, onDropAccepted, onDropRejected, isUploading, uploadProgress, imageUrl, imageWidth, imageHeight, imageSize, togglePixieModal, imageExists, error, onImageSelect, onImageUpload, onUploadProgressChange, onUploadStatusChange, onErrorChange, imageUploadButtonRef, showError, ...restProps }: ImageUploaderProps) => JSX.Element;
2766
+ }
2657
2767
  declare module "editor/components/editors/BackgroundImageEditor" {
2658
2768
  import { EditorProps } from "editor/components/editors/types";
2659
2769
  import { Position } from "engine/utils/position";
@@ -2737,15 +2847,21 @@ declare module "embed/Editor" {
2737
2847
  import { BodyValues } from "engine/options/bodies";
2738
2848
  import { Locale, TextDirection } from "engine/config/intl";
2739
2849
  import { DeepPartial } from "editor/components/editors/types";
2850
+ import { ColorPicker } from "engine/config/features";
2740
2851
  export const LATEST_VERSION: string;
2741
2852
  export const STABLE_VERSION: string;
2742
- export const DEFAULT_VERSION: string;
2853
+ export const ENV_VERSION: string;
2743
2854
  export class Editor {
2744
2855
  frame: Frame | null;
2745
2856
  constructor(config?: Config);
2746
2857
  init(config?: Config): void;
2747
2858
  destroy(): void;
2748
- version: string | undefined;
2859
+ versions: {
2860
+ current: string;
2861
+ latest: string;
2862
+ stable: string;
2863
+ };
2864
+ get version(): string;
2749
2865
  loadEditor(config: Config): void;
2750
2866
  renderEditor(config: Config): void;
2751
2867
  initEditor(config: Config): void;
@@ -2805,6 +2921,7 @@ declare module "embed/Editor" {
2805
2921
  clearValidators(): void;
2806
2922
  setCurrentLanguage(language: string): void;
2807
2923
  setLanguages(languages: Language[]): void;
2924
+ setColorPickerConfig(colorPickerConfig: ColorPicker): void;
2808
2925
  registerContainerExporter(): void;
2809
2926
  registerItemExporter(): void;
2810
2927
  registerTool(): void;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "unlayer-types",
3
- "version": "1.82.0",
3
+ "version": "1.101.0",
4
4
  "license": "MIT"
5
5
  }