@contentful/experiences-components-react 1.39.0 → 1.40.0-alpha-20250604T1545-078bcac.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.d.ts CHANGED
@@ -1,9 +1,8 @@
1
- import { ComponentDefinition, OptimizedImageAsset, ExperienceTreeNode, ExperienceDataSource, ExperienceUnboundValues, StyleProps, DragWrapperProps, ResolveDesignValueType } from '@contentful/experiences-core/types';
2
- import React$1, { RefObject, CSSProperties, SyntheticEvent } from 'react';
1
+ import { ComponentDefinition, OptimizedImageAsset, StructureComponentProps, StyleProps } from '@contentful/experiences-core/types';
2
+ import React, { HTMLAttributes } from 'react';
3
3
  import { Document } from '@contentful/rich-text-types';
4
- import { EntityStore } from '@contentful/experiences-core';
5
4
 
6
- interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement> {
5
+ interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
7
6
  /**
8
7
  * The URL to navigate to when the button is clicked. When provided, the button will be wrapped in an anchor tag.
9
8
  * @default undefined
@@ -60,13 +59,13 @@ interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement> {
60
59
  * <Button>Go</Button>
61
60
  * ```
62
61
  */
63
- children?: React$1.ReactNode;
62
+ children?: React.ReactNode;
64
63
  }
65
- declare const Button: React$1.FC<ButtonProps>;
64
+ declare const Button: React.FC<ButtonProps>;
66
65
 
67
66
  declare const ButtonComponentDefinition: ComponentDefinition;
68
67
 
69
- interface HeadingProps extends React$1.HTMLAttributes<HTMLHeadingElement> {
68
+ interface HeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {
70
69
  /**
71
70
  * The text to display in the heading. If not provided, children will be used instead.
72
71
  * @default undefined
@@ -86,7 +85,7 @@ interface HeadingProps extends React$1.HTMLAttributes<HTMLHeadingElement> {
86
85
  * <Heading>My Heading</Heading>
87
86
  * ```
88
87
  */
89
- children?: React$1.ReactNode;
88
+ children?: React.ReactNode;
90
89
  /**
91
90
  * The type of heading to render
92
91
  * @default h1
@@ -98,11 +97,11 @@ interface HeadingProps extends React$1.HTMLAttributes<HTMLHeadingElement> {
98
97
  */
99
98
  type?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
100
99
  }
101
- declare const Heading: React$1.FC<HeadingProps>;
100
+ declare const Heading: React.FC<HeadingProps>;
102
101
 
103
102
  declare const HeadingComponentDefinition: ComponentDefinition;
104
103
 
105
- interface RichTextProps extends Omit<React$1.HTMLAttributes<HTMLElement>, 'value'> {
104
+ interface RichTextProps extends Omit<React.HTMLAttributes<HTMLElement>, 'value'> {
106
105
  /**
107
106
  * Renders the text in a specific HTML tag.
108
107
  * @default p
@@ -132,11 +131,11 @@ interface RichTextProps extends Omit<React$1.HTMLAttributes<HTMLElement>, 'value
132
131
  */
133
132
  value: Document;
134
133
  }
135
- declare const RichText: React$1.FC<RichTextProps>;
134
+ declare const RichText: React.FC<RichTextProps>;
136
135
 
137
136
  declare const RichTextComponentDefinition: ComponentDefinition;
138
137
 
139
- interface TextProps extends React$1.HTMLAttributes<HTMLElement> {
138
+ interface TextProps extends React.HTMLAttributes<HTMLElement> {
140
139
  /**
141
140
  * The URL to navigate to when the text is clicked. When provided, the text will be wrapped in an anchor tag.
142
141
  * @default undefined
@@ -194,7 +193,7 @@ interface TextProps extends React$1.HTMLAttributes<HTMLElement> {
194
193
  * <Text>My Text</Text>
195
194
  * ```
196
195
  */
197
- children?: React$1.ReactNode;
196
+ children?: React.ReactNode;
198
197
  /**
199
198
  * Renders the text in a specific HTML tag.
200
199
  * @default p
@@ -206,38 +205,24 @@ interface TextProps extends React$1.HTMLAttributes<HTMLElement> {
206
205
  */
207
206
  as?: 'p' | 'span' | 'div' | 'label' | 'caption' | 'small' | 'strong' | 'em';
208
207
  }
209
- declare const Text: React$1.FC<TextProps>;
208
+ declare const Text: React.FC<TextProps>;
210
209
 
211
210
  declare const TextComponentDefinition: ComponentDefinition;
212
211
 
213
- interface ImageProps extends React$1.ImgHTMLAttributes<HTMLImageElement> {
212
+ interface ImageProps extends React.ImgHTMLAttributes<HTMLImageElement> {
214
213
  cfImageAsset?: OptimizedImageAsset | string;
215
214
  }
216
- declare const Image: React$1.FC<ImageProps>;
215
+ declare const Image: React.FC<ImageProps>;
217
216
 
218
217
  declare const ImageComponentDefinition: ComponentDefinition;
219
218
 
220
- type ContentfulContainerAsHyperlinkProps<EditorMode = boolean> = (EditorMode extends true ? {
221
- editorMode?: EditorMode;
222
- node: ExperienceTreeNode;
223
- dataSource?: ExperienceDataSource;
224
- unboundValues?: ExperienceUnboundValues;
225
- resolveDesignValue?: any;
226
- entityStore?: RefObject<EntityStore>;
227
- areEntitiesFetched?: boolean;
228
- renderDropzone: (node: ExperienceTreeNode, props?: Record<string, any>) => React$1.ReactNode;
229
- } : {
230
- editorMode: EditorMode;
231
- }) & {
232
- children?: React$1.ReactNode;
219
+ type ContentfulContainerAsHyperlinkProps = StructureComponentProps<{
233
220
  className?: string;
234
221
  cfHyperlink?: StyleProps['cfHyperlink'];
235
222
  cfOpenInNewTab?: StyleProps['cfOpenInNewTab'];
236
- WrapperComponent?: React$1.ElementType;
237
- dragProps?: DragWrapperProps;
238
- };
223
+ }>;
239
224
 
240
- declare const ContentfulContainer: React$1.FC<ContentfulContainerAsHyperlinkProps>;
225
+ declare const ContentfulContainer: React.FC<ContentfulContainerAsHyperlinkProps>;
241
226
 
242
227
  declare const containerDefinition: ComponentDefinition;
243
228
  declare const sectionDefinition: ComponentDefinition;
@@ -246,71 +231,31 @@ type ContentfulDividerProps = {
246
231
  className?: string;
247
232
  dragProps?: unknown;
248
233
  };
249
- declare const ContentfulDivider: ({ className, dragProps: _, ...props }: ContentfulDividerProps) => React$1.JSX.Element;
234
+ declare const ContentfulDivider: ({ className, dragProps: _, ...props }: ContentfulDividerProps) => React.JSX.Element;
250
235
 
251
236
  declare const dividerDefinition: ComponentDefinition;
252
237
 
253
- interface ColumnsBaseProps {
254
- editorMode: boolean;
238
+ type ColumnsProps = StructureComponentProps<{
255
239
  className?: string;
256
- children?: React.ReactNode;
257
- }
258
- interface ColumnsEditorModeProps extends ColumnsBaseProps {
259
- editorMode: true;
260
- cfColumns: string;
261
- node: ExperienceTreeNode;
262
- renderDropzone: (node: ExperienceTreeNode, props?: Record<string, unknown>) => React.ReactNode;
263
- dragProps?: unknown;
264
- }
265
- interface ColumnsDeliveryModeProps extends ColumnsBaseProps {
266
- editorMode: false;
267
- }
268
- interface SingleColumnEditorModeProps extends ColumnsBaseProps {
269
- editorMode: true;
270
- node: ExperienceTreeNode;
271
- renderDropzone: (node: ExperienceTreeNode, props?: Record<string, unknown>) => React.ReactNode;
272
- cfColumnSpan: string;
273
- dragProps?: unknown;
274
- ['data-ctfl-draggable-id']: string;
275
- style?: CSSProperties;
276
- className: string;
277
- onMouseOver: (e: SyntheticEvent<Element, Event>) => void;
278
- onMouseOut: (e: SyntheticEvent<Element, Event>) => void;
279
- onMouseDown: (e: SyntheticEvent<Element, Event>) => void;
280
- onMouseUp: (e: SyntheticEvent<Element, Event>) => void;
281
- onClick: (e: SyntheticEvent<Element, Event>) => void;
282
- }
283
- interface SingleColumnDeliveryModeProps extends ColumnsBaseProps {
284
- editorMode: false;
285
- }
286
- type ColumnsProps = ColumnsEditorModeProps | ColumnsDeliveryModeProps;
287
- type SingleColumnProps = SingleColumnEditorModeProps | SingleColumnDeliveryModeProps;
240
+ }>;
241
+ declare const Columns: ({ className, children, ...otherProps }: ColumnsProps) => React.JSX.Element;
288
242
 
289
- declare const Columns: React$1.FC<ColumnsProps>;
290
-
291
- declare const SingleColumn: React$1.FC<SingleColumnProps>;
243
+ type SingleColumnProps = StructureComponentProps<{
244
+ className?: string;
245
+ }>;
246
+ declare const SingleColumn: React.FC<SingleColumnProps>;
292
247
 
293
248
  declare const columnsDefinition: ComponentDefinition;
294
249
  declare const singleColumnDefinition: ComponentDefinition;
295
250
 
296
- type AssemblyProps<EditorMode = boolean> = EditorMode extends true ? {
297
- children?: React$1.ReactNode;
298
- className?: string;
299
- cfHyperlink?: StyleProps['cfHyperlink'];
300
- cfOpenInNewTab?: StyleProps['cfOpenInNewTab'];
301
- editorMode?: EditorMode;
302
- node: ExperienceTreeNode;
303
- resolveDesignValue?: ResolveDesignValueType;
304
- dragProps?: Record<string, any>;
305
- renderDropzone: (node: ExperienceTreeNode, props?: Record<string, any>) => React$1.ReactNode;
306
- } : Record<string, any>;
307
- declare const Assembly: React$1.FC<AssemblyProps>;
251
+ type AssemblyProps = StructureComponentProps<HTMLAttributes<HTMLDivElement>>;
252
+ declare const Assembly: React.FC<AssemblyProps>;
308
253
 
309
254
  interface CarouselProps {
310
255
  className?: string;
311
- children?: React$1.ReactNode;
256
+ children?: React.ReactNode;
312
257
  }
313
- declare const Carousel: React$1.FC<CarouselProps>;
258
+ declare const Carousel: React.FC<CarouselProps>;
314
259
 
315
260
  declare const carouselDefinition: ComponentDefinition;
316
261
 
package/dist/index.js CHANGED
@@ -9,6 +9,7 @@ import 'md5';
9
9
  var css_248z$8 = "/* Initially added with PR #253 for each component, this is now a global setting\n * It is recommended on MDN to use this as a default for layouting.\n*/\n* {\n box-sizing: border-box;\n}\n";
10
10
  styleInject(css_248z$8);
11
11
 
12
+ /** @deprecated will be removed when dropping backward compatibility for old DND */
12
13
  /**
13
14
  * These modes are ONLY intended to be internally used within the context of
14
15
  * editing an experience inside of Contentful Studio. i.e. these modes
@@ -1611,7 +1612,7 @@ var VisualEditorMode;
1611
1612
  VisualEditorMode["InjectScript"] = "injectScript";
1612
1613
  })(VisualEditorMode || (VisualEditorMode = {}));
1613
1614
 
1614
- var css_248z$2 = ".contentful-container {\n position: relative;\n display: flex;\n box-sizing: border-box;\n pointer-events: all;\n}\n\n.contentful-container::-webkit-scrollbar {\n display: none; /* Safari and Chrome */\n}\n\n.cf-single-column-wrapper {\n position: relative;\n}\n\n.cf-container-wrapper {\n position: relative;\n width: 100%;\n}\n\n.contentful-container:after {\n content: '';\n display: block;\n position: absolute;\n pointer-events: none;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow-x: clip;\n font-family: var(--exp-builder-font-stack-primary);\n font-size: 12px;\n color: var(--exp-builder-gray400);\n z-index: 1;\n}\n\n.contentful-section-label:after {\n content: 'Section';\n}\n\n.contentful-container-label:after {\n content: 'Container';\n}\n\n/* used by ContentfulSectionAsHyperlink.tsx */\n\n.contentful-container-link,\n.contentful-container-link:active,\n.contentful-container-link:visited,\n.contentful-container-link:hover,\n.contentful-container-link:read-write,\n.contentful-container-link:focus-visible {\n color: inherit;\n text-decoration: unset;\n outline: unset;\n}\n";
1615
+ var css_248z$2 = ".contentful-container {\n position: relative;\n display: flex;\n box-sizing: border-box;\n pointer-events: all;\n}\n\n.contentful-container::-webkit-scrollbar {\n display: none; /* Safari and Chrome */\n}\n\n.cf-container-wrapper {\n position: relative;\n width: 100%;\n}\n\n.contentful-container:after {\n content: '';\n display: block;\n position: absolute;\n pointer-events: none;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow-x: clip;\n font-family: var(--exp-builder-font-stack-primary);\n font-size: 12px;\n color: var(--exp-builder-gray400);\n z-index: 1;\n}\n\n.contentful-section-label:after {\n content: 'Section';\n}\n\n.contentful-container-label:after {\n content: 'Container';\n}\n\n/* used by ContentfulSectionAsHyperlink.tsx */\n\n.contentful-container-link,\n.contentful-container-link:active,\n.contentful-container-link:visited,\n.contentful-container-link:hover,\n.contentful-container-link:read-write,\n.contentful-container-link:focus-visible {\n color: inherit;\n text-decoration: unset;\n outline: unset;\n}\n";
1615
1616
  styleInject(css_248z$2);
1616
1617
 
1617
1618
  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) => {
@@ -1636,31 +1637,29 @@ const Flex = forwardRef(({ id, children, onMouseEnter, onMouseUp, onMouseLeave,
1636
1637
  });
1637
1638
  Flex.displayName = 'Flex';
1638
1639
 
1639
- /* eslint-disable */ /* TODO: fix eslint errors */
1640
+ function extractRenderProps(props) {
1641
+ if (props.editorMode) {
1642
+ const { editorMode, node, children, ...renderProps } = props;
1643
+ return renderProps;
1644
+ }
1645
+ const { editorMode, children, ...renderProps } = props;
1646
+ return renderProps;
1647
+ }
1648
+
1640
1649
  const ContentfulContainerAsHyperlink = (props) => {
1641
- const { cfHyperlink, cfOpenInNewTab, editorMode, className, children } = props;
1642
- if (editorMode === false) {
1643
- let anchorTagProps = {};
1644
- if (cfOpenInNewTab) {
1645
- anchorTagProps = {
1646
- target: '_blank',
1647
- rel: 'noopener noreferrer',
1648
- };
1650
+ const { cfHyperlink, cfOpenInNewTab, editorMode, className, children, ...otherProps } = props;
1651
+ const eventHandlingProps = editorMode === true ? { onClick: stopEventPropagation } : {};
1652
+ const anchorTagProps = cfOpenInNewTab
1653
+ ? {
1654
+ target: '_blank',
1655
+ rel: 'noopener noreferrer',
1649
1656
  }
1650
- return (React.createElement("a", { className: combineClasses(className, 'contentful-container', 'contentful-container-link'), href: cfHyperlink, ...anchorTagProps }, children));
1651
- }
1652
- const { renderDropzone, node } = props;
1653
- const stopPropagationInEditorMode = (e) => {
1654
- e.stopPropagation();
1655
- e.preventDefault();
1656
- };
1657
- return renderDropzone(node, {
1658
- ['data-test-id']: 'contentful-container',
1659
- className: combineClasses(className, 'contentful-container', 'contentful-container-link'),
1660
- zoneId: node.data.id,
1661
- WrapperComponent: 'a',
1662
- onClick: stopPropagationInEditorMode,
1663
- });
1657
+ : {};
1658
+ return (React.createElement("a", { className: combineClasses(className, 'contentful-container', 'contentful-container-link'), href: cfHyperlink, ...anchorTagProps, ...eventHandlingProps, ...extractRenderProps(otherProps) }, children));
1659
+ };
1660
+ const stopEventPropagation = (event) => {
1661
+ event.stopPropagation();
1662
+ event.preventDefault();
1664
1663
  };
1665
1664
 
1666
1665
  /* eslint-disable */
@@ -1669,21 +1668,14 @@ const ContentfulContainer = (props) => {
1669
1668
  if (cfHyperlink) {
1670
1669
  return React.createElement(ContentfulContainerAsHyperlink, { ...props }, children);
1671
1670
  }
1672
- if (editorMode === false) {
1671
+ if (!editorMode) {
1673
1672
  return (React.createElement(Flex, { "data-test-id": "contentful-container", className: combineClasses(className, 'contentful-container') }, children));
1674
1673
  }
1675
1674
  // Extract properties that are only available in editor mode
1676
- const { renderDropzone, node, dragProps = {}, ...editorModeProps } = props;
1675
+ const { node } = props;
1677
1676
  const isEmpty = !node.children.length;
1678
1677
  const isSection = node.data.blockId === CONTENTFUL_COMPONENTS$1.section.id;
1679
- return renderDropzone(node, {
1680
- ...editorModeProps,
1681
- ['data-test-id']: 'contentful-container',
1682
- id: 'ContentfulContainer',
1683
- className: combineClasses('contentful-container', className, isEmpty ? (isSection ? 'contentful-section-label' : 'contentful-container-label') : ''),
1684
- WrapperComponent: Flex,
1685
- dragProps,
1686
- });
1678
+ return (React.createElement(Flex, { "data-test-id": "contentful-container", ...extractRenderProps(props), className: combineClasses(className, 'contentful-container', isEmpty ? (isSection ? 'contentful-section-label' : 'contentful-container-label') : '') }, children));
1687
1679
  };
1688
1680
 
1689
1681
  const containerDefinition = {
@@ -1707,7 +1699,7 @@ const sectionDefinition = {
1707
1699
  },
1708
1700
  };
1709
1701
 
1710
- var css_248z$1 = ".cf-divider {\n display: contents;\n position: relative;\n width: 100%;\n height: 100%;\n}\n\n.cf-divider hr {\n border: none;\n}\n\n/* For the editor mode add this 10px tolerance to make it easier picking up the divider component.\n * Using the DND zone as precondition makes sure that we don't render this pseudo element in delivery. */\n\n[data-ctfl-zone-id='root'] .cf-divider::before {\n content: \"\";\n position: absolute;\n top: -5px;\n left: -5px;\n bottom: -5px;\n right: -5px;\n pointer-events: all;\n}\n";
1702
+ var css_248z$1 = ".cf-divider {\n display: contents;\n position: relative;\n width: 100%;\n height: 100%;\n}\n\n.cf-divider hr {\n border: none;\n}\n";
1711
1703
  styleInject(css_248z$1);
1712
1704
 
1713
1705
  const ContentfulDivider = ({ className = '',
@@ -1728,48 +1720,25 @@ const dividerDefinition = {
1728
1720
  },
1729
1721
  };
1730
1722
 
1731
- var css_248z = ".cf-columns {\n display: flex;\n gap: 24px;\n grid-template-columns: repeat(12, 1fr);\n flex-direction: column;\n min-height: 0; /* NEW */\n min-width: 0; /* NEW; needed for Firefox */\n}\n\n@media (min-width: 768px) {\n .cf-columns {\n display: grid;\n }\n}\n\n.cf-single-column-wrapper {\n position: relative;\n display: flex;\n}\n\n.cf-single-column {\n pointer-events: all;\n}\n\n.cf-single-column-wrapper:after {\n content: '';\n display: block;\n position: absolute;\n pointer-events: none;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow-x: clip;\n font-family: var(--exp-builder-font-stack-primary);\n font-size: 12px;\n color: var(--exp-builder-gray400);\n z-index: 1;\n}\n\n.cf-single-column-label:after {\n content: 'Column';\n}\n";
1723
+ var css_248z = ".cf-columns {\n display: flex;\n gap: 24px;\n grid-template-columns: repeat(12, 1fr);\n flex-direction: column;\n min-height: 0; /* NEW */\n min-width: 0; /* NEW; needed for Firefox */\n}\n\n@media (min-width: 768px) {\n .cf-columns {\n display: grid;\n }\n}\n\n.cf-single-column-wrapper {\n position: relative;\n}\n\n.cf-single-column-wrapper:after {\n content: '';\n display: block;\n position: absolute;\n pointer-events: none;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow-x: clip;\n font-family: var(--exp-builder-font-stack-primary);\n font-size: 12px;\n color: var(--exp-builder-gray400);\n z-index: 1;\n}\n\n.cf-single-column-label:after {\n content: 'Column';\n}\n";
1732
1724
  styleInject(css_248z);
1733
1725
 
1734
- const ColumnWrapper = forwardRef((props, ref) => {
1735
- return (React.createElement("div", { ref: ref, ...props, style: {
1736
- ...(props.style || {}),
1726
+ const Columns = ({ className, children, ...otherProps }) => {
1727
+ return (React.createElement("div", { className: combineClasses(className, 'cf-columns'), style: {
1737
1728
  display: 'grid',
1738
1729
  gridTemplateColumns: 'repeat(12, [col-start] 1fr)',
1739
- } }, props.children));
1740
- });
1741
- ColumnWrapper.displayName = 'ColumnWrapper';
1742
- const Columns = (props) => {
1743
- const { editorMode, className, children } = props;
1744
- if (!editorMode) {
1745
- return (React.createElement(ColumnWrapper, { className: combineClasses(className, 'cf-columns') }, children));
1746
- }
1747
- const { node, renderDropzone, dragProps = {}, ...rest } = props;
1748
- return renderDropzone(node, {
1749
- ...rest,
1750
- ['data-test-id']: 'contentful-columns',
1751
- id: 'ContentfulContainer',
1752
- className: combineClasses('cf-columns', className),
1753
- WrapperComponent: ColumnWrapper,
1754
- dragProps,
1755
- });
1730
+ }, ...extractRenderProps(otherProps) }, children));
1756
1731
  };
1757
1732
 
1758
1733
  const SingleColumn = (props) => {
1759
- const { className, editorMode, children } = props;
1760
- if (editorMode === false) {
1761
- return React.createElement(Flex, { className: className }, children);
1734
+ const { className, editorMode } = props;
1735
+ if (!editorMode) {
1736
+ return React.createElement(Flex, { className: className }, props.children);
1762
1737
  }
1763
- const { renderDropzone, node, className: _className, dragProps = {}, cfColumnSpan, editorMode: edit, ...editorProps } = props;
1738
+ const { node, children } = props;
1764
1739
  const isEmpty = !node.children.length;
1765
- return renderDropzone(node, {
1766
- ['data-test-id']: 'contentful-single-column',
1767
- id: 'ContentfulSingleColumn',
1768
- className: combineClasses('cf-single-column-wrapper', className, isEmpty ? 'cf-single-column-label' : ''),
1769
- WrapperComponent: Flex,
1770
- dragProps,
1771
- ...editorProps,
1772
- });
1740
+ const mixedClassName = combineClasses('cf-single-column-wrapper', className, isEmpty ? 'cf-single-column-label' : '');
1741
+ return (React.createElement(Flex, { ...extractRenderProps(props), className: mixedClassName }, children));
1773
1742
  };
1774
1743
 
1775
1744
  const columnsDefinition = {
@@ -1791,18 +1760,7 @@ const singleColumnDefinition = {
1791
1760
  };
1792
1761
 
1793
1762
  const assemblyStyle = { display: 'contents' };
1794
- // Feel free to do any magic as regards variable definitions for assemblies
1795
- // Or if this isn't necessary by the time we figure that part out, we can bid this part farewell
1796
1763
  const Assembly = (props) => {
1797
- if (props.editorMode) {
1798
- const { node, dragProps, ...editorModeProps } = props;
1799
- return props.renderDropzone(node, {
1800
- ...editorModeProps,
1801
- ['data-test-id']: 'contentful-assembly',
1802
- className: props.className,
1803
- dragProps,
1804
- });
1805
- }
1806
1764
  // Using a display contents so assembly content/children
1807
1765
  // can appear as if they are direct children of the div wrapper's parent
1808
1766
  return React.createElement("div", { "data-test-id": "assembly", ...props, style: assemblyStyle });