@contentful/experiences-components-react 1.42.3-prerelease-20250701T0855-59fc0e2.0 → 1.42.4-prerelease-20250702T1207-37b3bfc.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 CHANGED
@@ -1,3 +1,4 @@
1
+ import styleInject from 'style-inject';
1
2
  import React, { forwardRef } from 'react';
2
3
  import { documentToReactComponents } from '@contentful/rich-text-react-renderer';
3
4
  import { BLOCKS } from '@contentful/rich-text-types';
@@ -5,6 +6,9 @@ import { z } from 'zod';
5
6
  import 'lodash-es';
6
7
  import 'md5';
7
8
 
9
+ 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}";
10
+ styleInject(css_248z$8);
11
+
8
12
  /**
9
13
  * These modes are ONLY intended to be internally used within the context of
10
14
  * editing an experience inside of Contentful Studio. i.e. these modes
@@ -77,6 +81,9 @@ function combineClasses(...classes) {
77
81
  .join(' ');
78
82
  }
79
83
 
84
+ var css_248z$7 = ".cf-button:empty:before{content:\"\";display:inline-block}";
85
+ styleInject(css_248z$7);
86
+
80
87
  const Button = ({ children, className, label, onClick, onNavigate, target, url, ...props }) => {
81
88
  const classes = combineClasses('cf-button', className);
82
89
  const handleClick = (event) => {
@@ -189,6 +196,9 @@ const ButtonComponentDefinition = {
189
196
  },
190
197
  };
191
198
 
199
+ var css_248z$6 = ".cf-heading{white-space:pre-line}";
200
+ styleInject(css_248z$6);
201
+
192
202
  const Heading = ({ children, className, text, type = 'h1', ...props }) => {
193
203
  const Tag = type;
194
204
  const classes = combineClasses('cf-heading', className);
@@ -275,6 +285,9 @@ const HeadingComponentDefinition = {
275
285
  },
276
286
  };
277
287
 
288
+ var css_248z$5 = ".cf-richtext{white-space:pre-line}.cf-richtext>:first-child{margin-top:0}.cf-richtext>:last-child{margin-bottom:0}";
289
+ styleInject(css_248z$5);
290
+
278
291
  const RichText = ({ as = 'p', className, value, ...props }) => {
279
292
  const Tag = as;
280
293
  return (React.createElement("div", { className: combineClasses('cf-richtext', className), ...props }, documentToReactComponents(value, {
@@ -362,6 +375,9 @@ const RichTextComponentDefinition = {
362
375
  },
363
376
  };
364
377
 
378
+ var css_248z$4 = ".cf-text{white-space:pre-line}.cf-text-link .cf-text{margin:0}";
379
+ styleInject(css_248z$4);
380
+
365
381
  const Text = ({ as = 'p', children, className, value, url, target, onNavigate, onClick, ...props }) => {
366
382
  const Tag = as;
367
383
  if (url) {
@@ -453,6 +469,9 @@ const TextComponentDefinition = {
453
469
  },
454
470
  };
455
471
 
472
+ 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)}";
473
+ styleInject(css_248z$3);
474
+
456
475
  const Image = ({ className = '', src, cfImageAsset, ...props }) => {
457
476
  if (!cfImageAsset && !src) {
458
477
  return (React.createElement("div", { className: combineClasses('cf-placeholder-wrapper', className) },
@@ -1389,13 +1408,7 @@ const ParameterDefinitionSchema = z.object({
1389
1408
  }),
1390
1409
  })
1391
1410
  .optional(),
1392
- contentTypes: z.record(z.string(), z.object({
1393
- sys: z.object({
1394
- type: z.literal('Link'),
1395
- id: z.string(),
1396
- linkType: z.enum(['ContentType']),
1397
- }),
1398
- })),
1411
+ contentTypes: z.array(z.string()),
1399
1412
  passToNodes: z.array(PassToNodeSchema).optional(),
1400
1413
  });
1401
1414
  const ParameterDefinitionsSchema = z.record(propertyKeySchema, ParameterDefinitionSchema);
@@ -1415,7 +1428,7 @@ const ComponentSettingsSchema = z
1415
1428
  variableDefinitions: ComponentVariablesSchema,
1416
1429
  thumbnailId: z.enum(THUMBNAIL_IDS).optional(),
1417
1430
  category: z.string().max(50, 'Category must contain at most 50 characters').optional(),
1418
- prebindingDefinitions: z.array(PrebindingDefinitionSchema).max(1).optional(),
1431
+ prebindingDefinitions: z.array(PrebindingDefinitionSchema).length(1).optional(),
1419
1432
  })
1420
1433
  .strict();
1421
1434
  z.object({
@@ -1627,6 +1640,9 @@ var VisualEditorMode;
1627
1640
  VisualEditorMode["InjectScript"] = "injectScript";
1628
1641
  })(VisualEditorMode || (VisualEditorMode = {}));
1629
1642
 
1643
+ var css_248z$2 = ".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}";
1644
+ styleInject(css_248z$2);
1645
+
1630
1646
  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) => {
1631
1647
  return (React.createElement("div", { id: id, ref: ref, style: {
1632
1648
  display: 'flex',
@@ -1720,6 +1736,9 @@ const sectionDefinition = {
1720
1736
  },
1721
1737
  };
1722
1738
 
1739
+ var css_248z$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}";
1740
+ styleInject(css_248z$1);
1741
+
1723
1742
  const ContentfulDivider = ({ className = '',
1724
1743
  // We have to exclude this explicitly from rendering as withComponentWrapper is not used
1725
1744
  dragProps: _, ...props }) => {
@@ -1738,6 +1757,9 @@ const dividerDefinition = {
1738
1757
  },
1739
1758
  };
1740
1759
 
1760
+ var css_248z = ".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\"}";
1761
+ styleInject(css_248z);
1762
+
1741
1763
  const ColumnWrapper = forwardRef((props, ref) => {
1742
1764
  return (React.createElement("div", { ref: ref, ...props, style: {
1743
1765
  ...(props.style || {}),