@contentful/experiences-visual-editor-react 2.0.0-dev-20250704T1052-fad2ef4.0 → 2.0.0-prerelease-20250703T1150-c529c88.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/dist/index.js +23 -41
- package/dist/index.js.map +1 -1
- package/dist/renderApp.js +23 -41
- package/dist/renderApp.js.map +1 -1
- package/package.json +5 -4
package/dist/index.js
CHANGED
|
@@ -12,8 +12,8 @@ import { v4 } from 'uuid';
|
|
|
12
12
|
import { createPortal } from 'react-dom';
|
|
13
13
|
import classNames from 'classnames';
|
|
14
14
|
|
|
15
|
-
var css_248z$
|
|
16
|
-
styleInject(css_248z$
|
|
15
|
+
var css_248z$4 = "html,\nbody {\n margin: 0;\n padding: 0;\n}\n\n/*\n * All of these variables are tokens from Forma-36 and should not be adjusted as these\n * are global variables that may affect multiple places.\n * As our customers may use other design libraries, we try to avoid overlapping global\n * variables by always using the prefix `--exp-builder-` inside this SDK.\n */\n\n:root {\n /* Color tokens from Forma 36: https://f36.contentful.com/tokens/color-system */\n --exp-builder-blue100: #e8f5ff;\n --exp-builder-blue200: #ceecff;\n --exp-builder-blue300: #98cbff;\n --exp-builder-blue400: #40a0ff;\n --exp-builder-blue500: #036fe3;\n --exp-builder-blue600: #0059c8;\n --exp-builder-blue700: #0041ab;\n --exp-builder-blue800: #003298;\n --exp-builder-blue900: #002a8e;\n --exp-builder-gray100: #f7f9fa;\n --exp-builder-gray200: #e7ebee;\n --exp-builder-gray300: #cfd9e0;\n --exp-builder-gray400: #aec1cc;\n --exp-builder-gray500: #67728a;\n --exp-builder-gray600: #5a657c;\n --exp-builder-gray700: #414d63;\n --exp-builder-gray800: #1b273a;\n --exp-builder-gray900: #111b2b;\n --exp-builder-purple600: #6c3ecf;\n --exp-builder-red200: #ffe0e0;\n --exp-builder-red800: #7f0010;\n --exp-builder-color-white: #ffffff;\n --exp-builder-glow-primary: 0px 0px 0px 3px #e8f5ff;\n\n /* RGB colors for applying opacity */\n --exp-builder-blue100-rgb: 232, 245, 255;\n --exp-builder-blue300-rgb: 152, 203, 255;\n\n /* Spacing tokens from Forma 36: https://f36.contentful.com/tokens/spacing */\n --exp-builder-spacing-s: 0.75rem;\n --exp-builder-spacing-2xs: 0.25rem;\n\n /* Typography tokens from Forma 36: https://f36.contentful.com/tokens/typography */\n --exp-builder-font-size-l: 1rem;\n --exp-builder-font-size-m: 0.875rem;\n --exp-builder-font-stack-primary: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial,\n sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;\n --exp-builder-line-height-condensed: 1.25;\n}\n";
|
|
16
|
+
styleInject(css_248z$4);
|
|
17
17
|
|
|
18
18
|
const INCOMING_EVENTS$1 = {
|
|
19
19
|
RequestEditorMode: 'requestEditorMode',
|
|
@@ -828,7 +828,13 @@ const ParameterDefinitionSchema$1 = z.object({
|
|
|
828
828
|
}),
|
|
829
829
|
})
|
|
830
830
|
.optional(),
|
|
831
|
-
contentTypes: z.
|
|
831
|
+
contentTypes: z.record(z.string(), z.object({
|
|
832
|
+
sys: z.object({
|
|
833
|
+
type: z.literal('Link'),
|
|
834
|
+
id: z.string(),
|
|
835
|
+
linkType: z.enum(['ContentType']),
|
|
836
|
+
}),
|
|
837
|
+
})),
|
|
832
838
|
passToNodes: z.array(PassToNodeSchema$1).optional(),
|
|
833
839
|
});
|
|
834
840
|
const ParameterDefinitionsSchema$1 = z.record(propertyKeySchema$1, ParameterDefinitionSchema$1);
|
|
@@ -848,7 +854,7 @@ const ComponentSettingsSchema$1 = z
|
|
|
848
854
|
variableDefinitions: ComponentVariablesSchema$1,
|
|
849
855
|
thumbnailId: z.enum(THUMBNAIL_IDS$1).optional(),
|
|
850
856
|
category: z.string().max(50, 'Category must contain at most 50 characters').optional(),
|
|
851
|
-
prebindingDefinitions: z.array(PrebindingDefinitionSchema$1).
|
|
857
|
+
prebindingDefinitions: z.array(PrebindingDefinitionSchema$1).max(1).optional(),
|
|
852
858
|
})
|
|
853
859
|
.strict();
|
|
854
860
|
z.object({
|
|
@@ -1093,10 +1099,7 @@ propertyName, resolveDesignTokens = true) => {
|
|
|
1093
1099
|
};
|
|
1094
1100
|
/** Overwrites the default value breakpoint by breakpoint. If a breakpoint
|
|
1095
1101
|
* is not overwritten, it will fall back to the default. */
|
|
1096
|
-
|
|
1097
|
-
if (!defaultValue || !overwriteValue) {
|
|
1098
|
-
return defaultValue ?? overwriteValue;
|
|
1099
|
-
}
|
|
1102
|
+
const mergeDesignValuesByBreakpoint = (defaultValue, overwriteValue) => {
|
|
1100
1103
|
const mergedValuesByBreakpoint = { ...defaultValue.valuesByBreakpoint };
|
|
1101
1104
|
for (const [breakpointId, value] of Object.entries(overwriteValue.valuesByBreakpoint)) {
|
|
1102
1105
|
if (!isValidBreakpointValue(value)) {
|
|
@@ -1108,7 +1111,7 @@ function mergeDesignValuesByBreakpoint(defaultValue, overwriteValue) {
|
|
|
1108
1111
|
type: 'DesignValue',
|
|
1109
1112
|
valuesByBreakpoint: mergedValuesByBreakpoint,
|
|
1110
1113
|
};
|
|
1111
|
-
}
|
|
1114
|
+
};
|
|
1112
1115
|
|
|
1113
1116
|
const CF_DEBUG_KEY$1 = 'cf_debug';
|
|
1114
1117
|
/**
|
|
@@ -3283,9 +3286,9 @@ const cloneDeepAsPOJO = (obj) => {
|
|
|
3283
3286
|
return JSON.parse(JSON.stringify(obj));
|
|
3284
3287
|
};
|
|
3285
3288
|
|
|
3286
|
-
var css_248z$
|
|
3289
|
+
var css_248z$3 = ".render-module_hitbox__l4ysJ {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 10px;\n z-index: 1000000;\n}\n\n.render-module_hitboxLower__tgsA1 {\n position: absolute;\n bottom: -20px;\n left: 0;\n width: 100%;\n height: 20px;\n z-index: 1000000;\n}\n\n.render-module_canvasBottomSpacer__JuxVh {\n position: absolute;\n width: 100%;\n height: 50px;\n}\n\n.render-module_container__-C3d7 {\n position: relative;\n display: flex;\n flex-direction: column;\n}\n\nbody {\n margin: 0;\n}\n\nhtml {\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n scrollbar-width: none; /* Firefox */\n}\n\nhtml::-webkit-scrollbar {\n display: none;\n}\n";
|
|
3287
3290
|
var styles$3 = {"hitbox":"render-module_hitbox__l4ysJ","hitboxLower":"render-module_hitboxLower__tgsA1","canvasBottomSpacer":"render-module_canvasBottomSpacer__JuxVh","container":"render-module_container__-C3d7"};
|
|
3288
|
-
styleInject(css_248z$
|
|
3291
|
+
styleInject(css_248z$3);
|
|
3289
3292
|
|
|
3290
3293
|
// TODO: In order to support integrations without React, we should extract this heavy logic into simple
|
|
3291
3294
|
// functions that we can reuse in other frameworks.
|
|
@@ -3452,9 +3455,6 @@ const useEditorStore = create((set, get) => ({
|
|
|
3452
3455
|
},
|
|
3453
3456
|
}));
|
|
3454
3457
|
|
|
3455
|
-
var css_248z$8 = "@import url(https://fonts.googleapis.com/css2?family=Archivo:ital,wght@0,400;0,500;0,600;1,400;1,600&display=swap);:root{--cf-color-white:#fff;--cf-color-black:#000;--cf-color-gray100:#f7f9fa;--cf-color-gray400:#aec1cc;--cf-color-gray400-rgb:174,193,204;--cf-spacing-0:0rem;--cf-spacing-1:0.125rem;--cf-spacing-2:0.25rem;--cf-spacing-3:0.375rem;--cf-spacing-4:0.5rem;--cf-spacing-5:0.625rem;--cf-spacing-6:0.75rem;--cf-spacing-7:0.875rem;--cf-spacing-8:1rem;--cf-spacing-9:1.25rem;--cf-spacing-10:1.5rem;--cf-spacing-11:1.75rem;--cf-spacing-12:2rem;--cf-spacing-13:2.25rem;--cf-text-xs:0.75rem;--cf-text-sm:0.875rem;--cf-text-base:1rem;--cf-text-lg:1.125rem;--cf-text-xl:1.25rem;--cf-text-2xl:1.5rem;--cf-text-3xl:2rem;--cf-text-4xl:2.75rem;--cf-font-light:300;--cf-font-normal:400;--cf-font-medium:500;--cf-font-semibold:600;--cf-font-bold:700;--cf-font-extra-bold:800;--cf-font-black:900;--cf-border-radius-none:0px;--cf-border-radius-sm:0.125rem;--cf-border-radius:0.25rem;--cf-border-radius-md:0.375rem;--cf-border-radius-lg:0.5rem;--cf-border-radius-xl:0.75rem;--cf-border-radius-2xl:1rem;--cf-border-radius-3xl:1.5rem;--cf-border-radius-full:9999px;--cf-font-family-sans:Archivo,Helvetica,Arial,sans-serif;--cf-font-family-serif:Georgia,Cambria,Times New Roman,Times,serif;--cf-max-width-full:100%;--cf-button-bg:var(--cf-color-black);--cf-button-color:var(--cf-color-white);--cf-text-color:var(--cf-color-black)}*{box-sizing:border-box}";
|
|
3456
|
-
styleInject(css_248z$8);
|
|
3457
|
-
|
|
3458
3458
|
/**
|
|
3459
3459
|
* These modes are ONLY intended to be internally used within the context of
|
|
3460
3460
|
* editing an experience inside of Contentful Studio. i.e. these modes
|
|
@@ -3472,21 +3472,6 @@ var PostMessageMethods$1;
|
|
|
3472
3472
|
PostMessageMethods["REQUESTED_ENTITIES"] = "REQUESTED_ENTITIES";
|
|
3473
3473
|
})(PostMessageMethods$1 || (PostMessageMethods$1 = {}));
|
|
3474
3474
|
|
|
3475
|
-
var css_248z$7 = ".cf-button:empty:before{content:\"\";display:inline-block}";
|
|
3476
|
-
styleInject(css_248z$7);
|
|
3477
|
-
|
|
3478
|
-
var css_248z$6 = ".cf-heading{white-space:pre-line}";
|
|
3479
|
-
styleInject(css_248z$6);
|
|
3480
|
-
|
|
3481
|
-
var css_248z$5 = ".cf-richtext{white-space:pre-line}.cf-richtext>:first-child{margin-top:0}.cf-richtext>:last-child{margin-bottom:0}";
|
|
3482
|
-
styleInject(css_248z$5);
|
|
3483
|
-
|
|
3484
|
-
var css_248z$4 = ".cf-text{white-space:pre-line}.cf-text-link .cf-text{margin:0}";
|
|
3485
|
-
styleInject(css_248z$4);
|
|
3486
|
-
|
|
3487
|
-
var css_248z$3 = "div.cf-placeholder-wrapper{position:relative}img.cf-placeholder-image{background-color:var(--cf-color-gray100);height:100%;outline:2px solid rgba(var(--cf-color-gray400-rgb),.5);outline-offset:-2px;width:100%}svg.cf-placeholder-icon{height:var(--cf-text-3xl);left:50%;max-height:100%;max-width:100%;position:absolute;top:50%;transform:translate(-50%,-50%);width:var(--cf-text-3xl)}svg.cf-placeholder-icon path{fill:var(--cf-color-gray400)}";
|
|
3488
|
-
styleInject(css_248z$3);
|
|
3489
|
-
|
|
3490
3475
|
/**
|
|
3491
3476
|
* These modes are ONLY intended to be internally used within the context of
|
|
3492
3477
|
* editing an experience inside of Contentful Studio. i.e. these modes
|
|
@@ -3814,7 +3799,13 @@ const ParameterDefinitionSchema = z.object({
|
|
|
3814
3799
|
}),
|
|
3815
3800
|
})
|
|
3816
3801
|
.optional(),
|
|
3817
|
-
contentTypes: z.
|
|
3802
|
+
contentTypes: z.record(z.string(), z.object({
|
|
3803
|
+
sys: z.object({
|
|
3804
|
+
type: z.literal('Link'),
|
|
3805
|
+
id: z.string(),
|
|
3806
|
+
linkType: z.enum(['ContentType']),
|
|
3807
|
+
}),
|
|
3808
|
+
})),
|
|
3818
3809
|
passToNodes: z.array(PassToNodeSchema).optional(),
|
|
3819
3810
|
});
|
|
3820
3811
|
const ParameterDefinitionsSchema = z.record(propertyKeySchema, ParameterDefinitionSchema);
|
|
@@ -3834,7 +3825,7 @@ const ComponentSettingsSchema = z
|
|
|
3834
3825
|
variableDefinitions: ComponentVariablesSchema,
|
|
3835
3826
|
thumbnailId: z.enum(THUMBNAIL_IDS).optional(),
|
|
3836
3827
|
category: z.string().max(50, 'Category must contain at most 50 characters').optional(),
|
|
3837
|
-
prebindingDefinitions: z.array(PrebindingDefinitionSchema).
|
|
3828
|
+
prebindingDefinitions: z.array(PrebindingDefinitionSchema).max(1).optional(),
|
|
3838
3829
|
})
|
|
3839
3830
|
.strict();
|
|
3840
3831
|
z.object({
|
|
@@ -4459,9 +4450,6 @@ var VisualEditorMode;
|
|
|
4459
4450
|
VisualEditorMode["InjectScript"] = "injectScript";
|
|
4460
4451
|
})(VisualEditorMode || (VisualEditorMode = {}));
|
|
4461
4452
|
|
|
4462
|
-
var css_248z$2$1 = ".contentful-container{display:flex;pointer-events:all;position:relative}.contentful-container::-webkit-scrollbar{display:none}.cf-single-column-wrapper{position:relative}.cf-container-wrapper{position:relative;width:100%}.contentful-container:after{align-items:center;bottom:0;color:var(--exp-builder-gray400);content:\"\";display:block;display:flex;font-family:var(--exp-builder-font-stack-primary);font-size:12px;justify-content:center;left:0;overflow-x:clip;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.contentful-section-label:after{content:\"Section\"}.contentful-container-label:after{content:\"Container\"}.contentful-container-link,.contentful-container-link:active,.contentful-container-link:focus-visible,.contentful-container-link:hover,.contentful-container-link:read-write,.contentful-container-link:visited{color:inherit;outline:unset;text-decoration:unset}";
|
|
4463
|
-
styleInject(css_248z$2$1);
|
|
4464
|
-
|
|
4465
4453
|
const Flex = forwardRef(({ id, children, onMouseEnter, onMouseUp, onMouseLeave, onMouseDown, onClick, flex, flexBasis, flexShrink, flexDirection, gap, justifyContent, justifyItems, justifySelf, alignItems, alignSelf, alignContent, order, flexWrap, flexGrow, className, cssStyles, ...props }, ref) => {
|
|
4466
4454
|
return (React.createElement("div", { id: id, ref: ref, style: {
|
|
4467
4455
|
display: 'flex',
|
|
@@ -4484,12 +4472,6 @@ const Flex = forwardRef(({ id, children, onMouseEnter, onMouseUp, onMouseLeave,
|
|
|
4484
4472
|
});
|
|
4485
4473
|
Flex.displayName = 'Flex';
|
|
4486
4474
|
|
|
4487
|
-
var css_248z$1$1 = ".cf-divider{display:contents;height:100%;position:relative;width:100%}.cf-divider hr{border:none}[data-ctfl-zone-id=root] .cf-divider:before{bottom:-5px;content:\"\";left:-5px;pointer-events:all;position:absolute;right:-5px;top:-5px}";
|
|
4488
|
-
styleInject(css_248z$1$1);
|
|
4489
|
-
|
|
4490
|
-
var css_248z$9 = ".cf-columns{display:flex;flex-direction:column;gap:24px;grid-template-columns:repeat(12,1fr);min-height:0;min-width:0}@media (min-width:768px){.cf-columns{display:grid}}.cf-single-column-wrapper{display:flex;position:relative}.cf-single-column{pointer-events:all}.cf-single-column-wrapper:after{align-items:center;bottom:0;color:var(--exp-builder-gray400);content:\"\";display:block;display:flex;font-family:var(--exp-builder-font-stack-primary);font-size:12px;justify-content:center;left:0;overflow-x:clip;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.cf-single-column-label:after{content:\"Column\"}";
|
|
4491
|
-
styleInject(css_248z$9);
|
|
4492
|
-
|
|
4493
4475
|
const ColumnWrapper = forwardRef((props, ref) => {
|
|
4494
4476
|
return (React.createElement("div", { ref: ref, ...props, style: {
|
|
4495
4477
|
...(props.style || {}),
|
|
@@ -5284,7 +5266,7 @@ const maybeMergePatternDefaultDesignValues = ({ variableName, variableMapping, n
|
|
|
5284
5266
|
parentPatternNode = findNodeById(parentPatternNode.data.pattern?.nodeId);
|
|
5285
5267
|
}
|
|
5286
5268
|
const mergedDesignValue = mergeDesignValuesByBreakpoint(exposedDefaultValue, variableMapping);
|
|
5287
|
-
return mergedDesignValue
|
|
5269
|
+
return mergedDesignValue.valuesByBreakpoint;
|
|
5288
5270
|
}
|
|
5289
5271
|
return variableMapping.valuesByBreakpoint;
|
|
5290
5272
|
};
|