mulmocast 2.2.4 → 2.2.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/lib/cli/commands/tool/info/builder.js +1 -1
- package/lib/cli/commands/tool/info/handler.js +20 -2
- package/lib/cli/commands/tool/info/index.d.ts +1 -1
- package/lib/cli/commands/tool/info/index.js +1 -1
- package/lib/slide/blocks.js +21 -28
- package/lib/slide/index.d.ts +3 -2
- package/lib/slide/index.js +1 -1
- package/lib/slide/layouts/big_quote.js +4 -4
- package/lib/slide/layouts/columns.js +3 -5
- package/lib/slide/layouts/comparison.js +3 -5
- package/lib/slide/layouts/funnel.js +3 -5
- package/lib/slide/layouts/grid.js +3 -8
- package/lib/slide/layouts/matrix.js +2 -2
- package/lib/slide/layouts/split.js +3 -3
- package/lib/slide/layouts/stats.js +5 -18
- package/lib/slide/layouts/table.js +2 -4
- package/lib/slide/layouts/timeline.js +3 -13
- package/lib/slide/layouts/title.js +3 -3
- package/lib/slide/render.d.ts +15 -1
- package/lib/slide/render.js +45 -3
- package/lib/slide/schema.d.ts +103 -0
- package/lib/slide/schema.js +32 -0
- package/lib/slide/utils.d.ts +27 -1
- package/lib/slide/utils.js +38 -10
- package/lib/types/schema.d.ts +410 -0
- package/lib/types/schema.js +2 -1
- package/lib/types/slide.d.ts +103 -0
- package/lib/types/slide.js +32 -0
- package/lib/utils/context.d.ts +155 -0
- package/lib/utils/image_plugins/slide.js +50 -2
- package/package.json +1 -1
- package/scripts/test/branding/banner.jpg +0 -0
- package/scripts/test/branding/logo.svg +3 -0
- package/scripts/test/test_slide_branding.json +107 -0
package/lib/types/schema.d.ts
CHANGED
|
@@ -2881,6 +2881,47 @@ export declare const mulmoImageAssetSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
2881
2881
|
layout: z.ZodLiteral<"funnel">;
|
|
2882
2882
|
}, z.core.$strip>], "layout">;
|
|
2883
2883
|
reference: z.ZodOptional<z.ZodString>;
|
|
2884
|
+
branding: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
2885
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
2886
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
2887
|
+
kind: z.ZodLiteral<"url">;
|
|
2888
|
+
url: z.ZodURL;
|
|
2889
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
2890
|
+
kind: z.ZodLiteral<"base64">;
|
|
2891
|
+
data: z.ZodString;
|
|
2892
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
2893
|
+
kind: z.ZodLiteral<"path">;
|
|
2894
|
+
path: z.ZodString;
|
|
2895
|
+
}, z.core.$strict>], "kind">;
|
|
2896
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
2897
|
+
"top-left": "top-left";
|
|
2898
|
+
"top-right": "top-right";
|
|
2899
|
+
"bottom-left": "bottom-left";
|
|
2900
|
+
"bottom-right": "bottom-right";
|
|
2901
|
+
}>>;
|
|
2902
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
2903
|
+
}, z.core.$strict>>;
|
|
2904
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
2905
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
2906
|
+
kind: z.ZodLiteral<"url">;
|
|
2907
|
+
url: z.ZodURL;
|
|
2908
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
2909
|
+
kind: z.ZodLiteral<"base64">;
|
|
2910
|
+
data: z.ZodString;
|
|
2911
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
2912
|
+
kind: z.ZodLiteral<"path">;
|
|
2913
|
+
path: z.ZodString;
|
|
2914
|
+
}, z.core.$strict>], "kind">;
|
|
2915
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
2916
|
+
contain: "contain";
|
|
2917
|
+
cover: "cover";
|
|
2918
|
+
fill: "fill";
|
|
2919
|
+
auto: "auto";
|
|
2920
|
+
}>>;
|
|
2921
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
2922
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
2923
|
+
}, z.core.$strip>>;
|
|
2924
|
+
}, z.core.$strict>>>;
|
|
2884
2925
|
}, z.core.$strict>]>;
|
|
2885
2926
|
export declare const mulmoAudioAssetSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
2886
2927
|
type: z.ZodLiteral<"audio">;
|
|
@@ -3048,6 +3089,47 @@ export declare const mulmoSlideParamsSchema: z.ZodObject<{
|
|
|
3048
3089
|
mono: z.ZodString;
|
|
3049
3090
|
}, z.core.$strip>;
|
|
3050
3091
|
}, z.core.$strip>;
|
|
3092
|
+
branding: z.ZodOptional<z.ZodObject<{
|
|
3093
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
3094
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
3095
|
+
kind: z.ZodLiteral<"url">;
|
|
3096
|
+
url: z.ZodURL;
|
|
3097
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
3098
|
+
kind: z.ZodLiteral<"base64">;
|
|
3099
|
+
data: z.ZodString;
|
|
3100
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
3101
|
+
kind: z.ZodLiteral<"path">;
|
|
3102
|
+
path: z.ZodString;
|
|
3103
|
+
}, z.core.$strict>], "kind">;
|
|
3104
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
3105
|
+
"top-left": "top-left";
|
|
3106
|
+
"top-right": "top-right";
|
|
3107
|
+
"bottom-left": "bottom-left";
|
|
3108
|
+
"bottom-right": "bottom-right";
|
|
3109
|
+
}>>;
|
|
3110
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
3111
|
+
}, z.core.$strict>>;
|
|
3112
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
3113
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
3114
|
+
kind: z.ZodLiteral<"url">;
|
|
3115
|
+
url: z.ZodURL;
|
|
3116
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
3117
|
+
kind: z.ZodLiteral<"base64">;
|
|
3118
|
+
data: z.ZodString;
|
|
3119
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
3120
|
+
kind: z.ZodLiteral<"path">;
|
|
3121
|
+
path: z.ZodString;
|
|
3122
|
+
}, z.core.$strict>], "kind">;
|
|
3123
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
3124
|
+
contain: "contain";
|
|
3125
|
+
cover: "cover";
|
|
3126
|
+
fill: "fill";
|
|
3127
|
+
auto: "auto";
|
|
3128
|
+
}>>;
|
|
3129
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
3130
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
3131
|
+
}, z.core.$strip>>;
|
|
3132
|
+
}, z.core.$strict>>;
|
|
3051
3133
|
}, z.core.$strict>;
|
|
3052
3134
|
export declare const beatAudioParamsSchema: z.ZodObject<{
|
|
3053
3135
|
padding: z.ZodOptional<z.ZodNumber>;
|
|
@@ -5848,6 +5930,47 @@ export declare const mulmoBeatSchema: z.ZodObject<{
|
|
|
5848
5930
|
layout: z.ZodLiteral<"funnel">;
|
|
5849
5931
|
}, z.core.$strip>], "layout">;
|
|
5850
5932
|
reference: z.ZodOptional<z.ZodString>;
|
|
5933
|
+
branding: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
5934
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
5935
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
5936
|
+
kind: z.ZodLiteral<"url">;
|
|
5937
|
+
url: z.ZodURL;
|
|
5938
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
5939
|
+
kind: z.ZodLiteral<"base64">;
|
|
5940
|
+
data: z.ZodString;
|
|
5941
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
5942
|
+
kind: z.ZodLiteral<"path">;
|
|
5943
|
+
path: z.ZodString;
|
|
5944
|
+
}, z.core.$strict>], "kind">;
|
|
5945
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
5946
|
+
"top-left": "top-left";
|
|
5947
|
+
"top-right": "top-right";
|
|
5948
|
+
"bottom-left": "bottom-left";
|
|
5949
|
+
"bottom-right": "bottom-right";
|
|
5950
|
+
}>>;
|
|
5951
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
5952
|
+
}, z.core.$strict>>;
|
|
5953
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
5954
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
5955
|
+
kind: z.ZodLiteral<"url">;
|
|
5956
|
+
url: z.ZodURL;
|
|
5957
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
5958
|
+
kind: z.ZodLiteral<"base64">;
|
|
5959
|
+
data: z.ZodString;
|
|
5960
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
5961
|
+
kind: z.ZodLiteral<"path">;
|
|
5962
|
+
path: z.ZodString;
|
|
5963
|
+
}, z.core.$strict>], "kind">;
|
|
5964
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
5965
|
+
contain: "contain";
|
|
5966
|
+
cover: "cover";
|
|
5967
|
+
fill: "fill";
|
|
5968
|
+
auto: "auto";
|
|
5969
|
+
}>>;
|
|
5970
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
5971
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
5972
|
+
}, z.core.$strip>>;
|
|
5973
|
+
}, z.core.$strict>>>;
|
|
5851
5974
|
}, z.core.$strict>]>>;
|
|
5852
5975
|
audio: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
|
|
5853
5976
|
type: z.ZodLiteral<"audio">;
|
|
@@ -6554,6 +6677,47 @@ export declare const mulmoPresentationStyleSchema: z.ZodObject<{
|
|
|
6554
6677
|
mono: z.ZodString;
|
|
6555
6678
|
}, z.core.$strip>;
|
|
6556
6679
|
}, z.core.$strip>;
|
|
6680
|
+
branding: z.ZodOptional<z.ZodObject<{
|
|
6681
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
6682
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
6683
|
+
kind: z.ZodLiteral<"url">;
|
|
6684
|
+
url: z.ZodURL;
|
|
6685
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
6686
|
+
kind: z.ZodLiteral<"base64">;
|
|
6687
|
+
data: z.ZodString;
|
|
6688
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
6689
|
+
kind: z.ZodLiteral<"path">;
|
|
6690
|
+
path: z.ZodString;
|
|
6691
|
+
}, z.core.$strict>], "kind">;
|
|
6692
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
6693
|
+
"top-left": "top-left";
|
|
6694
|
+
"top-right": "top-right";
|
|
6695
|
+
"bottom-left": "bottom-left";
|
|
6696
|
+
"bottom-right": "bottom-right";
|
|
6697
|
+
}>>;
|
|
6698
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
6699
|
+
}, z.core.$strict>>;
|
|
6700
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
6701
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
6702
|
+
kind: z.ZodLiteral<"url">;
|
|
6703
|
+
url: z.ZodURL;
|
|
6704
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
6705
|
+
kind: z.ZodLiteral<"base64">;
|
|
6706
|
+
data: z.ZodString;
|
|
6707
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
6708
|
+
kind: z.ZodLiteral<"path">;
|
|
6709
|
+
path: z.ZodString;
|
|
6710
|
+
}, z.core.$strict>], "kind">;
|
|
6711
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
6712
|
+
contain: "contain";
|
|
6713
|
+
cover: "cover";
|
|
6714
|
+
fill: "fill";
|
|
6715
|
+
auto: "auto";
|
|
6716
|
+
}>>;
|
|
6717
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
6718
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
6719
|
+
}, z.core.$strip>>;
|
|
6720
|
+
}, z.core.$strict>>;
|
|
6557
6721
|
}, z.core.$strict>>;
|
|
6558
6722
|
captionParams: z.ZodOptional<z.ZodObject<{
|
|
6559
6723
|
lang: z.ZodOptional<z.ZodString>;
|
|
@@ -6968,6 +7132,47 @@ export declare const mulmoScriptSchema: z.ZodObject<{
|
|
|
6968
7132
|
mono: z.ZodString;
|
|
6969
7133
|
}, z.core.$strip>;
|
|
6970
7134
|
}, z.core.$strip>;
|
|
7135
|
+
branding: z.ZodOptional<z.ZodObject<{
|
|
7136
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
7137
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
7138
|
+
kind: z.ZodLiteral<"url">;
|
|
7139
|
+
url: z.ZodURL;
|
|
7140
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
7141
|
+
kind: z.ZodLiteral<"base64">;
|
|
7142
|
+
data: z.ZodString;
|
|
7143
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
7144
|
+
kind: z.ZodLiteral<"path">;
|
|
7145
|
+
path: z.ZodString;
|
|
7146
|
+
}, z.core.$strict>], "kind">;
|
|
7147
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
7148
|
+
"top-left": "top-left";
|
|
7149
|
+
"top-right": "top-right";
|
|
7150
|
+
"bottom-left": "bottom-left";
|
|
7151
|
+
"bottom-right": "bottom-right";
|
|
7152
|
+
}>>;
|
|
7153
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
7154
|
+
}, z.core.$strict>>;
|
|
7155
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
7156
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
7157
|
+
kind: z.ZodLiteral<"url">;
|
|
7158
|
+
url: z.ZodURL;
|
|
7159
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
7160
|
+
kind: z.ZodLiteral<"base64">;
|
|
7161
|
+
data: z.ZodString;
|
|
7162
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
7163
|
+
kind: z.ZodLiteral<"path">;
|
|
7164
|
+
path: z.ZodString;
|
|
7165
|
+
}, z.core.$strict>], "kind">;
|
|
7166
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
7167
|
+
contain: "contain";
|
|
7168
|
+
cover: "cover";
|
|
7169
|
+
fill: "fill";
|
|
7170
|
+
auto: "auto";
|
|
7171
|
+
}>>;
|
|
7172
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
7173
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
7174
|
+
}, z.core.$strip>>;
|
|
7175
|
+
}, z.core.$strict>>;
|
|
6971
7176
|
}, z.core.$strict>>;
|
|
6972
7177
|
captionParams: z.ZodOptional<z.ZodObject<{
|
|
6973
7178
|
lang: z.ZodOptional<z.ZodString>;
|
|
@@ -9516,6 +9721,47 @@ export declare const mulmoScriptSchema: z.ZodObject<{
|
|
|
9516
9721
|
layout: z.ZodLiteral<"funnel">;
|
|
9517
9722
|
}, z.core.$strip>], "layout">;
|
|
9518
9723
|
reference: z.ZodOptional<z.ZodString>;
|
|
9724
|
+
branding: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
9725
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
9726
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
9727
|
+
kind: z.ZodLiteral<"url">;
|
|
9728
|
+
url: z.ZodURL;
|
|
9729
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9730
|
+
kind: z.ZodLiteral<"base64">;
|
|
9731
|
+
data: z.ZodString;
|
|
9732
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9733
|
+
kind: z.ZodLiteral<"path">;
|
|
9734
|
+
path: z.ZodString;
|
|
9735
|
+
}, z.core.$strict>], "kind">;
|
|
9736
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
9737
|
+
"top-left": "top-left";
|
|
9738
|
+
"top-right": "top-right";
|
|
9739
|
+
"bottom-left": "bottom-left";
|
|
9740
|
+
"bottom-right": "bottom-right";
|
|
9741
|
+
}>>;
|
|
9742
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
9743
|
+
}, z.core.$strict>>;
|
|
9744
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
9745
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
9746
|
+
kind: z.ZodLiteral<"url">;
|
|
9747
|
+
url: z.ZodURL;
|
|
9748
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9749
|
+
kind: z.ZodLiteral<"base64">;
|
|
9750
|
+
data: z.ZodString;
|
|
9751
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9752
|
+
kind: z.ZodLiteral<"path">;
|
|
9753
|
+
path: z.ZodString;
|
|
9754
|
+
}, z.core.$strict>], "kind">;
|
|
9755
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
9756
|
+
contain: "contain";
|
|
9757
|
+
cover: "cover";
|
|
9758
|
+
fill: "fill";
|
|
9759
|
+
auto: "auto";
|
|
9760
|
+
}>>;
|
|
9761
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
9762
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
9763
|
+
}, z.core.$strip>>;
|
|
9764
|
+
}, z.core.$strict>>>;
|
|
9519
9765
|
}, z.core.$strict>]>>;
|
|
9520
9766
|
audio: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
|
|
9521
9767
|
type: z.ZodLiteral<"audio">;
|
|
@@ -10297,6 +10543,47 @@ export declare const mulmoStudioSchema: z.ZodObject<{
|
|
|
10297
10543
|
mono: z.ZodString;
|
|
10298
10544
|
}, z.core.$strip>;
|
|
10299
10545
|
}, z.core.$strip>;
|
|
10546
|
+
branding: z.ZodOptional<z.ZodObject<{
|
|
10547
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
10548
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
10549
|
+
kind: z.ZodLiteral<"url">;
|
|
10550
|
+
url: z.ZodURL;
|
|
10551
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
10552
|
+
kind: z.ZodLiteral<"base64">;
|
|
10553
|
+
data: z.ZodString;
|
|
10554
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
10555
|
+
kind: z.ZodLiteral<"path">;
|
|
10556
|
+
path: z.ZodString;
|
|
10557
|
+
}, z.core.$strict>], "kind">;
|
|
10558
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
10559
|
+
"top-left": "top-left";
|
|
10560
|
+
"top-right": "top-right";
|
|
10561
|
+
"bottom-left": "bottom-left";
|
|
10562
|
+
"bottom-right": "bottom-right";
|
|
10563
|
+
}>>;
|
|
10564
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
10565
|
+
}, z.core.$strict>>;
|
|
10566
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
10567
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
10568
|
+
kind: z.ZodLiteral<"url">;
|
|
10569
|
+
url: z.ZodURL;
|
|
10570
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
10571
|
+
kind: z.ZodLiteral<"base64">;
|
|
10572
|
+
data: z.ZodString;
|
|
10573
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
10574
|
+
kind: z.ZodLiteral<"path">;
|
|
10575
|
+
path: z.ZodString;
|
|
10576
|
+
}, z.core.$strict>], "kind">;
|
|
10577
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
10578
|
+
contain: "contain";
|
|
10579
|
+
cover: "cover";
|
|
10580
|
+
fill: "fill";
|
|
10581
|
+
auto: "auto";
|
|
10582
|
+
}>>;
|
|
10583
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
10584
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
10585
|
+
}, z.core.$strip>>;
|
|
10586
|
+
}, z.core.$strict>>;
|
|
10300
10587
|
}, z.core.$strict>>;
|
|
10301
10588
|
captionParams: z.ZodOptional<z.ZodObject<{
|
|
10302
10589
|
lang: z.ZodOptional<z.ZodString>;
|
|
@@ -12845,6 +13132,47 @@ export declare const mulmoStudioSchema: z.ZodObject<{
|
|
|
12845
13132
|
layout: z.ZodLiteral<"funnel">;
|
|
12846
13133
|
}, z.core.$strip>], "layout">;
|
|
12847
13134
|
reference: z.ZodOptional<z.ZodString>;
|
|
13135
|
+
branding: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
13136
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
13137
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
13138
|
+
kind: z.ZodLiteral<"url">;
|
|
13139
|
+
url: z.ZodURL;
|
|
13140
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
13141
|
+
kind: z.ZodLiteral<"base64">;
|
|
13142
|
+
data: z.ZodString;
|
|
13143
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
13144
|
+
kind: z.ZodLiteral<"path">;
|
|
13145
|
+
path: z.ZodString;
|
|
13146
|
+
}, z.core.$strict>], "kind">;
|
|
13147
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
13148
|
+
"top-left": "top-left";
|
|
13149
|
+
"top-right": "top-right";
|
|
13150
|
+
"bottom-left": "bottom-left";
|
|
13151
|
+
"bottom-right": "bottom-right";
|
|
13152
|
+
}>>;
|
|
13153
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
13154
|
+
}, z.core.$strict>>;
|
|
13155
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
13156
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
13157
|
+
kind: z.ZodLiteral<"url">;
|
|
13158
|
+
url: z.ZodURL;
|
|
13159
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
13160
|
+
kind: z.ZodLiteral<"base64">;
|
|
13161
|
+
data: z.ZodString;
|
|
13162
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
13163
|
+
kind: z.ZodLiteral<"path">;
|
|
13164
|
+
path: z.ZodString;
|
|
13165
|
+
}, z.core.$strict>], "kind">;
|
|
13166
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
13167
|
+
contain: "contain";
|
|
13168
|
+
cover: "cover";
|
|
13169
|
+
fill: "fill";
|
|
13170
|
+
auto: "auto";
|
|
13171
|
+
}>>;
|
|
13172
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
13173
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
13174
|
+
}, z.core.$strip>>;
|
|
13175
|
+
}, z.core.$strict>>>;
|
|
12848
13176
|
}, z.core.$strict>]>>;
|
|
12849
13177
|
audio: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
|
|
12850
13178
|
type: z.ZodLiteral<"audio">;
|
|
@@ -13562,6 +13890,47 @@ export declare const mulmoPromptTemplateSchema: z.ZodObject<{
|
|
|
13562
13890
|
mono: z.ZodString;
|
|
13563
13891
|
}, z.core.$strip>;
|
|
13564
13892
|
}, z.core.$strip>;
|
|
13893
|
+
branding: z.ZodOptional<z.ZodObject<{
|
|
13894
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
13895
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
13896
|
+
kind: z.ZodLiteral<"url">;
|
|
13897
|
+
url: z.ZodURL;
|
|
13898
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
13899
|
+
kind: z.ZodLiteral<"base64">;
|
|
13900
|
+
data: z.ZodString;
|
|
13901
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
13902
|
+
kind: z.ZodLiteral<"path">;
|
|
13903
|
+
path: z.ZodString;
|
|
13904
|
+
}, z.core.$strict>], "kind">;
|
|
13905
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
13906
|
+
"top-left": "top-left";
|
|
13907
|
+
"top-right": "top-right";
|
|
13908
|
+
"bottom-left": "bottom-left";
|
|
13909
|
+
"bottom-right": "bottom-right";
|
|
13910
|
+
}>>;
|
|
13911
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
13912
|
+
}, z.core.$strict>>;
|
|
13913
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
13914
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
13915
|
+
kind: z.ZodLiteral<"url">;
|
|
13916
|
+
url: z.ZodURL;
|
|
13917
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
13918
|
+
kind: z.ZodLiteral<"base64">;
|
|
13919
|
+
data: z.ZodString;
|
|
13920
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
13921
|
+
kind: z.ZodLiteral<"path">;
|
|
13922
|
+
path: z.ZodString;
|
|
13923
|
+
}, z.core.$strict>], "kind">;
|
|
13924
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
13925
|
+
contain: "contain";
|
|
13926
|
+
cover: "cover";
|
|
13927
|
+
fill: "fill";
|
|
13928
|
+
auto: "auto";
|
|
13929
|
+
}>>;
|
|
13930
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
13931
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
13932
|
+
}, z.core.$strip>>;
|
|
13933
|
+
}, z.core.$strict>>;
|
|
13565
13934
|
}, z.core.$strict>>;
|
|
13566
13935
|
captionParams: z.ZodOptional<z.ZodObject<{
|
|
13567
13936
|
lang: z.ZodOptional<z.ZodString>;
|
|
@@ -13970,6 +14339,47 @@ export declare const mulmoPromptTemplateFileSchema: z.ZodObject<{
|
|
|
13970
14339
|
mono: z.ZodString;
|
|
13971
14340
|
}, z.core.$strip>;
|
|
13972
14341
|
}, z.core.$strip>;
|
|
14342
|
+
branding: z.ZodOptional<z.ZodObject<{
|
|
14343
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
14344
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
14345
|
+
kind: z.ZodLiteral<"url">;
|
|
14346
|
+
url: z.ZodURL;
|
|
14347
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
14348
|
+
kind: z.ZodLiteral<"base64">;
|
|
14349
|
+
data: z.ZodString;
|
|
14350
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
14351
|
+
kind: z.ZodLiteral<"path">;
|
|
14352
|
+
path: z.ZodString;
|
|
14353
|
+
}, z.core.$strict>], "kind">;
|
|
14354
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
14355
|
+
"top-left": "top-left";
|
|
14356
|
+
"top-right": "top-right";
|
|
14357
|
+
"bottom-left": "bottom-left";
|
|
14358
|
+
"bottom-right": "bottom-right";
|
|
14359
|
+
}>>;
|
|
14360
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
14361
|
+
}, z.core.$strict>>;
|
|
14362
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
14363
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
14364
|
+
kind: z.ZodLiteral<"url">;
|
|
14365
|
+
url: z.ZodURL;
|
|
14366
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
14367
|
+
kind: z.ZodLiteral<"base64">;
|
|
14368
|
+
data: z.ZodString;
|
|
14369
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
14370
|
+
kind: z.ZodLiteral<"path">;
|
|
14371
|
+
path: z.ZodString;
|
|
14372
|
+
}, z.core.$strict>], "kind">;
|
|
14373
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
14374
|
+
contain: "contain";
|
|
14375
|
+
cover: "cover";
|
|
14376
|
+
fill: "fill";
|
|
14377
|
+
auto: "auto";
|
|
14378
|
+
}>>;
|
|
14379
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
14380
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
14381
|
+
}, z.core.$strip>>;
|
|
14382
|
+
}, z.core.$strict>>;
|
|
13973
14383
|
}, z.core.$strict>>;
|
|
13974
14384
|
captionParams: z.ZodOptional<z.ZodObject<{
|
|
13975
14385
|
lang: z.ZodOptional<z.ZodString>;
|
package/lib/types/schema.js
CHANGED
|
@@ -2,7 +2,7 @@ import { z } from "zod";
|
|
|
2
2
|
import { htmlLLMProvider, provider2TTSAgent, provider2ImageAgent, provider2MovieAgent, defaultProviders, provider2SoundEffectAgent } from "./provider2agent.js";
|
|
3
3
|
import { currentMulmoScriptVersion } from "./const.js";
|
|
4
4
|
import { mulmoVideoFilterSchema } from "./schema_video_filter.js";
|
|
5
|
-
import { mulmoSlideMediaSchema, slideThemeSchema } from "./slide.js";
|
|
5
|
+
import { mulmoSlideMediaSchema, slideThemeSchema, slideBrandingSchema } from "./slide.js";
|
|
6
6
|
// Re-export video filter schema
|
|
7
7
|
export { mulmoVideoFilterSchema } from "./schema_video_filter.js";
|
|
8
8
|
// Re-export slide schema
|
|
@@ -304,6 +304,7 @@ export const textSlideParamsSchema = z
|
|
|
304
304
|
export const mulmoSlideParamsSchema = z
|
|
305
305
|
.object({
|
|
306
306
|
theme: slideThemeSchema,
|
|
307
|
+
branding: slideBrandingSchema.optional(),
|
|
307
308
|
})
|
|
308
309
|
.strict();
|
|
309
310
|
export const beatAudioParamsSchema = z
|
package/lib/types/slide.d.ts
CHANGED
|
@@ -4351,6 +4351,66 @@ export declare const funnelSlideSchema: z.ZodObject<{
|
|
|
4351
4351
|
}, z.core.$strip>>;
|
|
4352
4352
|
layout: z.ZodLiteral<"funnel">;
|
|
4353
4353
|
}, z.core.$strip>;
|
|
4354
|
+
export declare const slideBrandingLogoSchema: z.ZodObject<{
|
|
4355
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
4356
|
+
kind: z.ZodLiteral<"url">;
|
|
4357
|
+
url: z.ZodURL;
|
|
4358
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4359
|
+
kind: z.ZodLiteral<"base64">;
|
|
4360
|
+
data: z.ZodString;
|
|
4361
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4362
|
+
kind: z.ZodLiteral<"path">;
|
|
4363
|
+
path: z.ZodString;
|
|
4364
|
+
}, z.core.$strict>], "kind">;
|
|
4365
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
4366
|
+
"top-left": "top-left";
|
|
4367
|
+
"top-right": "top-right";
|
|
4368
|
+
"bottom-left": "bottom-left";
|
|
4369
|
+
"bottom-right": "bottom-right";
|
|
4370
|
+
}>>;
|
|
4371
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
4372
|
+
}, z.core.$strict>;
|
|
4373
|
+
export declare const slideBrandingSchema: z.ZodObject<{
|
|
4374
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
4375
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
4376
|
+
kind: z.ZodLiteral<"url">;
|
|
4377
|
+
url: z.ZodURL;
|
|
4378
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4379
|
+
kind: z.ZodLiteral<"base64">;
|
|
4380
|
+
data: z.ZodString;
|
|
4381
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4382
|
+
kind: z.ZodLiteral<"path">;
|
|
4383
|
+
path: z.ZodString;
|
|
4384
|
+
}, z.core.$strict>], "kind">;
|
|
4385
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
4386
|
+
"top-left": "top-left";
|
|
4387
|
+
"top-right": "top-right";
|
|
4388
|
+
"bottom-left": "bottom-left";
|
|
4389
|
+
"bottom-right": "bottom-right";
|
|
4390
|
+
}>>;
|
|
4391
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
4392
|
+
}, z.core.$strict>>;
|
|
4393
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
4394
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
4395
|
+
kind: z.ZodLiteral<"url">;
|
|
4396
|
+
url: z.ZodURL;
|
|
4397
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4398
|
+
kind: z.ZodLiteral<"base64">;
|
|
4399
|
+
data: z.ZodString;
|
|
4400
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4401
|
+
kind: z.ZodLiteral<"path">;
|
|
4402
|
+
path: z.ZodString;
|
|
4403
|
+
}, z.core.$strict>], "kind">;
|
|
4404
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
4405
|
+
contain: "contain";
|
|
4406
|
+
cover: "cover";
|
|
4407
|
+
fill: "fill";
|
|
4408
|
+
auto: "auto";
|
|
4409
|
+
}>>;
|
|
4410
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
4411
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
4412
|
+
}, z.core.$strip>>;
|
|
4413
|
+
}, z.core.$strict>;
|
|
4354
4414
|
export declare const slideLayoutSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
4355
4415
|
title: z.ZodString;
|
|
4356
4416
|
subtitle: z.ZodOptional<z.ZodString>;
|
|
@@ -8985,6 +9045,47 @@ export declare const mulmoSlideMediaSchema: z.ZodObject<{
|
|
|
8985
9045
|
layout: z.ZodLiteral<"funnel">;
|
|
8986
9046
|
}, z.core.$strip>], "layout">;
|
|
8987
9047
|
reference: z.ZodOptional<z.ZodString>;
|
|
9048
|
+
branding: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
9049
|
+
logo: z.ZodOptional<z.ZodObject<{
|
|
9050
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
9051
|
+
kind: z.ZodLiteral<"url">;
|
|
9052
|
+
url: z.ZodURL;
|
|
9053
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9054
|
+
kind: z.ZodLiteral<"base64">;
|
|
9055
|
+
data: z.ZodString;
|
|
9056
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9057
|
+
kind: z.ZodLiteral<"path">;
|
|
9058
|
+
path: z.ZodString;
|
|
9059
|
+
}, z.core.$strict>], "kind">;
|
|
9060
|
+
position: z.ZodDefault<z.ZodEnum<{
|
|
9061
|
+
"top-left": "top-left";
|
|
9062
|
+
"top-right": "top-right";
|
|
9063
|
+
"bottom-left": "bottom-left";
|
|
9064
|
+
"bottom-right": "bottom-right";
|
|
9065
|
+
}>>;
|
|
9066
|
+
width: z.ZodDefault<z.ZodNumber>;
|
|
9067
|
+
}, z.core.$strict>>;
|
|
9068
|
+
backgroundImage: z.ZodOptional<z.ZodObject<{
|
|
9069
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
9070
|
+
kind: z.ZodLiteral<"url">;
|
|
9071
|
+
url: z.ZodURL;
|
|
9072
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9073
|
+
kind: z.ZodLiteral<"base64">;
|
|
9074
|
+
data: z.ZodString;
|
|
9075
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
9076
|
+
kind: z.ZodLiteral<"path">;
|
|
9077
|
+
path: z.ZodString;
|
|
9078
|
+
}, z.core.$strict>], "kind">;
|
|
9079
|
+
size: z.ZodOptional<z.ZodEnum<{
|
|
9080
|
+
contain: "contain";
|
|
9081
|
+
cover: "cover";
|
|
9082
|
+
fill: "fill";
|
|
9083
|
+
auto: "auto";
|
|
9084
|
+
}>>;
|
|
9085
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
9086
|
+
bgOpacity: z.ZodOptional<z.ZodNumber>;
|
|
9087
|
+
}, z.core.$strip>>;
|
|
9088
|
+
}, z.core.$strict>>>;
|
|
8988
9089
|
}, z.core.$strict>;
|
|
8989
9090
|
export type AccentColorKey = z.infer<typeof accentColorKeySchema>;
|
|
8990
9091
|
export type SlideThemeColors = z.infer<typeof slideThemeColorsSchema>;
|
|
@@ -9027,4 +9128,6 @@ export type TableCellValue = z.infer<typeof tableCellValueSchema>;
|
|
|
9027
9128
|
export type TableSlide = z.infer<typeof tableSlideSchema>;
|
|
9028
9129
|
export type FunnelStage = z.infer<typeof funnelStageSchema>;
|
|
9029
9130
|
export type FunnelSlide = z.infer<typeof funnelSlideSchema>;
|
|
9131
|
+
export type SlideBrandingLogo = z.infer<typeof slideBrandingLogoSchema>;
|
|
9132
|
+
export type SlideBranding = z.infer<typeof slideBrandingSchema>;
|
|
9030
9133
|
export type MulmoSlideMedia = z.infer<typeof mulmoSlideMediaSchema>;
|
package/lib/types/slide.js
CHANGED
|
@@ -358,6 +358,37 @@ export const funnelSlideSchema = z.object({
|
|
|
358
358
|
callout: calloutBarSchema.optional(),
|
|
359
359
|
});
|
|
360
360
|
// ═══════════════════════════════════════════════════════════
|
|
361
|
+
// Branding — logo & background image overlay
|
|
362
|
+
// ═══════════════════════════════════════════════════════════
|
|
363
|
+
/**
|
|
364
|
+
* Media source for branding assets (self-contained definition to avoid
|
|
365
|
+
* circular dependency with src/types/schema.ts).
|
|
366
|
+
*/
|
|
367
|
+
const slideMediaSourceSchema = z.discriminatedUnion("kind", [
|
|
368
|
+
z.object({ kind: z.literal("url"), url: z.url() }).strict(),
|
|
369
|
+
z.object({ kind: z.literal("base64"), data: z.string().min(1) }).strict(),
|
|
370
|
+
z.object({ kind: z.literal("path"), path: z.string().min(1) }).strict(),
|
|
371
|
+
]);
|
|
372
|
+
const slideBackgroundImageSourceSchema = z.object({
|
|
373
|
+
source: slideMediaSourceSchema,
|
|
374
|
+
size: z.enum(["cover", "contain", "fill", "auto"]).optional(),
|
|
375
|
+
opacity: z.number().min(0).max(1).optional(),
|
|
376
|
+
bgOpacity: z.number().min(0).max(1).optional(),
|
|
377
|
+
});
|
|
378
|
+
export const slideBrandingLogoSchema = z
|
|
379
|
+
.object({
|
|
380
|
+
source: slideMediaSourceSchema,
|
|
381
|
+
position: z.enum(["top-left", "top-right", "bottom-left", "bottom-right"]).default("top-right"),
|
|
382
|
+
width: z.number().positive().default(120),
|
|
383
|
+
})
|
|
384
|
+
.strict();
|
|
385
|
+
export const slideBrandingSchema = z
|
|
386
|
+
.object({
|
|
387
|
+
logo: slideBrandingLogoSchema.optional(),
|
|
388
|
+
backgroundImage: slideBackgroundImageSourceSchema.optional(),
|
|
389
|
+
})
|
|
390
|
+
.strict();
|
|
391
|
+
// ═══════════════════════════════════════════════════════════
|
|
361
392
|
// Slide Union & Media Schema
|
|
362
393
|
// ═══════════════════════════════════════════════════════════
|
|
363
394
|
export const slideLayoutSchema = z.discriminatedUnion("layout", [
|
|
@@ -380,5 +411,6 @@ export const mulmoSlideMediaSchema = z
|
|
|
380
411
|
theme: slideThemeSchema.optional(),
|
|
381
412
|
slide: slideLayoutSchema,
|
|
382
413
|
reference: z.string().optional(),
|
|
414
|
+
branding: slideBrandingSchema.nullable().optional(),
|
|
383
415
|
})
|
|
384
416
|
.strict();
|