@unlayer/types 1.386.2 → 1.386.3
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/README.md +10 -3
- package/dist/editor/editor.d.ts +19 -21
- package/dist/tools/button.d.ts +0 -1
- package/dist/tools/form.d.ts +0 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -33,13 +33,20 @@ type PopupDesign = JSONTemplate<'popup'>; // body.values has popupPosition
|
|
|
33
33
|
type EmailBody = BodyValues<'email'>; // has preheaderText, lacks popupPosition
|
|
34
34
|
type PopupBody = BodyValues<'popup'>; // has popupPosition, lacks preheaderText
|
|
35
35
|
|
|
36
|
-
//
|
|
37
|
-
declare const unlayer: UnlayerEditor
|
|
38
|
-
unlayer.exportHtml
|
|
36
|
+
// The Unlayer instance propagates its display mode to method typings:
|
|
37
|
+
declare const unlayer: UnlayerEditor<'email'>;
|
|
38
|
+
unlayer.exportHtml((result) => {
|
|
39
39
|
const html = result.html;
|
|
40
40
|
const preheaderText = result.design.body.values.preheaderText; // typed, email-only field
|
|
41
41
|
});
|
|
42
42
|
|
|
43
|
+
// Alternatively, you can use the display mode generic on the method:
|
|
44
|
+
unlayer.exportHtml<'popup'>((result) => {
|
|
45
|
+
const popupBackgroundColor = result.design.body.values.popupBackgroundColor; // available on popup mode
|
|
46
|
+
// @ts-expect-error
|
|
47
|
+
const preheaderText = result.design.body.values.preheaderText; // not available on popup mode
|
|
48
|
+
});
|
|
49
|
+
|
|
43
50
|
// Example of fully typed json manipulation
|
|
44
51
|
function handleDesign(design: JSONTemplate) {
|
|
45
52
|
for (const row of design.body.rows) {
|
package/dist/editor/editor.d.ts
CHANGED
|
@@ -201,7 +201,7 @@ declare class Frame {
|
|
|
201
201
|
receiveMessage(event: any): void;
|
|
202
202
|
}
|
|
203
203
|
|
|
204
|
-
declare class EditorClass {
|
|
204
|
+
declare class EditorClass<TClassDisplayMode extends DisplayMode | undefined = undefined> {
|
|
205
205
|
frame: Frame | null;
|
|
206
206
|
constructor(config?: Config);
|
|
207
207
|
init(config?: Config): void;
|
|
@@ -239,14 +239,14 @@ declare class EditorClass {
|
|
|
239
239
|
setTextDirection(textDirection: TextDirection | null): void;
|
|
240
240
|
setTranslations(translations: Translations): void;
|
|
241
241
|
loadBlank(bodyValues?: object): void;
|
|
242
|
-
loadDesign<TDisplayMode extends DisplayMode | undefined =
|
|
243
|
-
saveDesign<TDisplayMode extends DisplayMode | undefined =
|
|
244
|
-
exportHtml<TDisplayMode extends DisplayMode | undefined =
|
|
245
|
-
exportLiveHtml<TDisplayMode extends DisplayMode | undefined =
|
|
246
|
-
exportPlainText<TDisplayMode extends DisplayMode | undefined =
|
|
247
|
-
exportImage<TDisplayMode extends DisplayMode | undefined =
|
|
248
|
-
exportPdf<TDisplayMode extends DisplayMode | undefined =
|
|
249
|
-
exportZip<TDisplayMode extends DisplayMode | undefined =
|
|
242
|
+
loadDesign<TDisplayMode extends DisplayMode | undefined = TClassDisplayMode>(design: JSONTemplate<TDisplayMode>): void;
|
|
243
|
+
saveDesign<TDisplayMode extends DisplayMode | undefined = TClassDisplayMode>(callback: (data: JSONTemplate<TDisplayMode>) => void, options?: SaveDesignOptions): void;
|
|
244
|
+
exportHtml<TDisplayMode extends DisplayMode | undefined = TClassDisplayMode>(callback: (data: ExportHtmlResult<TDisplayMode>) => void, options?: ExportHtmlOptions): void;
|
|
245
|
+
exportLiveHtml<TDisplayMode extends DisplayMode | undefined = TClassDisplayMode>(callback: (data: ExportLiveHtmlResult<TDisplayMode>) => void, options?: ExportLiveHtmlOptions): void;
|
|
246
|
+
exportPlainText<TDisplayMode extends DisplayMode | undefined = TClassDisplayMode>(callback: (data: ExportPlainTextResult<TDisplayMode>) => void, options?: ExportPlainTextOptions): void;
|
|
247
|
+
exportImage<TDisplayMode extends DisplayMode | undefined = TClassDisplayMode>(callback: (data: ExportFromApiResult<TDisplayMode>) => void, options?: ExportImageFromApiOptions): void;
|
|
248
|
+
exportPdf<TDisplayMode extends DisplayMode | undefined = TClassDisplayMode>(callback: (data: ExportFromApiResult<TDisplayMode>) => void, options?: ExportPdfFromApiOptions): void;
|
|
249
|
+
exportZip<TDisplayMode extends DisplayMode | undefined = TClassDisplayMode>(callback: (data: ExportFromApiResult<TDisplayMode>) => void, options?: ExportZipFromApiOptions): void;
|
|
250
250
|
setAppearance(appearance: DeepPartial<AppearanceConfig>): void;
|
|
251
251
|
setTheme(theme: AppearanceConfig['theme']): void;
|
|
252
252
|
setBodyValues(bodyValues: Partial<BodyValues>, bodyId?: number): void;
|
|
@@ -256,7 +256,7 @@ declare class EditorClass {
|
|
|
256
256
|
showPreview(payload: {
|
|
257
257
|
device?: Device;
|
|
258
258
|
resolution?: number;
|
|
259
|
-
}): void;
|
|
259
|
+
} | Device): void;
|
|
260
260
|
hidePreview(): void;
|
|
261
261
|
canUndo(callback: (result: boolean) => void): void;
|
|
262
262
|
canRedo(callback: (result: boolean) => void): void;
|
|
@@ -284,11 +284,19 @@ declare class EditorClass {
|
|
|
284
284
|
}
|
|
285
285
|
|
|
286
286
|
declare class Embed extends EditorClass {
|
|
287
|
-
createEditor(config: Config): EditorClass
|
|
287
|
+
createEditor<TDisplayMode extends DisplayMode | undefined = undefined>(config: Config): EditorClass<TDisplayMode>;
|
|
288
288
|
}
|
|
289
289
|
|
|
290
290
|
declare const _default: Embed;
|
|
291
291
|
|
|
292
|
+
export type UnlayerEditor<TDisplayMode extends DisplayMode | undefined = undefined> = EditorClass<TDisplayMode>;
|
|
293
|
+
|
|
294
|
+
export type UnlayerEmbed<TDisplayMode extends DisplayMode | undefined = undefined> = Omit<Embed, keyof EditorClass> & EditorClass<TDisplayMode>;
|
|
295
|
+
|
|
296
|
+
export type UnlayerOptions<TDisplayMode extends DisplayMode | undefined = undefined> = Omit<Config, 'displayMode'> & {
|
|
297
|
+
displayMode?: TDisplayMode extends undefined ? DisplayMode : TDisplayMode;
|
|
298
|
+
};
|
|
299
|
+
|
|
292
300
|
// ───────────────────────────────────────────────────────────────────────────
|
|
293
301
|
// Other
|
|
294
302
|
// ───────────────────────────────────────────────────────────────────────────
|
|
@@ -455,13 +463,3 @@ export interface WidgetConfig {
|
|
|
455
463
|
mount: WidgetMountFn;
|
|
456
464
|
render: WidgetRenderFn;
|
|
457
465
|
}
|
|
458
|
-
|
|
459
|
-
// ───────────────────────────────────────────────────────────────────────────
|
|
460
|
-
// Main Exports
|
|
461
|
-
// ───────────────────────────────────────────────────────────────────────────
|
|
462
|
-
|
|
463
|
-
export type UnlayerEmbed = typeof _default;
|
|
464
|
-
|
|
465
|
-
export type UnlayerOptions = Parameters<UnlayerEmbed['createEditor']>[0];
|
|
466
|
-
|
|
467
|
-
export type UnlayerEditor = InstanceType<typeof EditorClass>;
|
package/dist/tools/button.d.ts
CHANGED
package/dist/tools/form.d.ts
CHANGED
|
@@ -81,7 +81,6 @@ export type FormValues<
|
|
|
81
81
|
labelAlign: "left" | "center" | "right" | "justify";
|
|
82
82
|
labelPadding: `${number}px` | `${number}px ${number}px` | `${number}px ${number}px ${number}px` | `${number}px ${number}px ${number}px ${number}px`;
|
|
83
83
|
buttonColors: {
|
|
84
|
-
[x: string]: unknown;
|
|
85
84
|
color?: string;
|
|
86
85
|
backgroundColor?: string;
|
|
87
86
|
hoverColor?: string;
|