@micromag/core 0.3.144 → 0.3.150

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/es/components.js CHANGED
@@ -11,7 +11,7 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
11
11
  import { faAngleLeft } from '@fortawesome/free-solid-svg-icons/faAngleLeft';
12
12
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
13
13
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
14
- import { useFieldsManager, useFieldComponent, FieldContextProvider, withModals, useModals, useUppy, withPanels, usePanels, ScreenSizeProvider, useScreenComponent, ScreenProvider, useScreenRenderContext, useScreenSize } from '@micromag/core/contexts';
14
+ import { useFieldsManager, useFieldComponent, FieldContextProvider, withModals, useModals, useUppy, withPanels, usePanels, ScreenSizeProvider, useScreenComponent, ScreenProvider, VisitorProvider, useScreenRenderContext, useScreenSize } from '@micromag/core/contexts';
15
15
  import { useForm, useDocumentEvent, useIntersectionObserver, useResizeObserver } from '@micromag/core/hooks';
16
16
  import _objectSpread from '@babel/runtime/helpers/objectSpread2';
17
17
  import get from 'lodash/get';
@@ -2999,6 +2999,10 @@ PropTypes$1.shape({
2999
2999
  url: PropTypes$1.string
3000
3000
  })
3001
3001
  });
3002
+ PropTypes$1.shape({
3003
+ id: PropTypes$1.oneOfType([PropTypes$1.string, PropTypes$1.number]),
3004
+ name: PropTypes$1.string
3005
+ });
3002
3006
 
3003
3007
  /* eslint-disable react/no-array-index-key */
3004
3008
  var propTypes$d = {
@@ -3682,6 +3686,10 @@ var Screen = function Screen(_ref) {
3682
3686
  data: screen,
3683
3687
  renderContext: renderContext,
3684
3688
  screenState: screenState
3689
+ }, /*#__PURE__*/React.createElement(VisitorProvider, {
3690
+ visitor: {
3691
+ id: 'editor'
3692
+ }
3685
3693
  }, ScreenComponent !== null ? /*#__PURE__*/React.createElement("div", {
3686
3694
  className: classNames([styles$7.container, _defineProperty({}, className, className !== null)])
3687
3695
  }, /*#__PURE__*/React.createElement(ScreenComponent, Object.assign({}, screen, {
@@ -3694,7 +3702,7 @@ var Screen = function Screen(_ref) {
3694
3702
  getMediaRef: getMediaRef
3695
3703
  }))) : /*#__PURE__*/React.createElement("div", {
3696
3704
  className: className
3697
- }, component));
3705
+ }, component)));
3698
3706
  };
3699
3707
 
3700
3708
  Screen.propTypes = propTypes$9;
package/es/contexts.js CHANGED
@@ -134,13 +134,13 @@ var useElementComponent = function useElementComponent(name) {
134
134
  * Provider
135
135
  */
136
136
 
137
- var propTypes$i = {
137
+ var propTypes$j = {
138
138
  children: PropTypes.node.isRequired,
139
139
  namespace: PropTypes.string,
140
140
  manager: PropTypes.instanceOf(ComponentsManager),
141
141
  components: PropTypes.objectOf(PropTypes.oneOfType([PropTypes.object, PropTypes.func]))
142
142
  };
143
- var defaultProps$i = {
143
+ var defaultProps$j = {
144
144
  namespace: null,
145
145
  components: {},
146
146
  manager: null
@@ -158,8 +158,8 @@ var ComponentsProvider = function ComponentsProvider(_ref) {
158
158
  value: finalManager
159
159
  }, children);
160
160
  };
161
- ComponentsProvider.propTypes = propTypes$i;
162
- ComponentsProvider.defaultProps = defaultProps$i;
161
+ ComponentsProvider.propTypes = propTypes$j;
162
+ ComponentsProvider.defaultProps = defaultProps$j;
163
163
 
164
164
  var FieldsContext = /*#__PURE__*/React.createContext(null);
165
165
  var useFieldsManager = function useFieldsManager() {
@@ -169,12 +169,12 @@ var useFieldDefinition = function useFieldDefinition(id) {
169
169
  var manager = useFieldsManager();
170
170
  return manager.getDefinition(id);
171
171
  };
172
- var propTypes$h = {
172
+ var propTypes$i = {
173
173
  fields: PropTypes$1.fieldDefinitions,
174
174
  manager: PropTypes.instanceOf(FieldsManager),
175
175
  children: PropTypes.node.isRequired
176
176
  };
177
- var defaultProps$h = {
177
+ var defaultProps$i = {
178
178
  fields: null,
179
179
  manager: null
180
180
  };
@@ -204,21 +204,21 @@ var FieldsProvider = function FieldsProvider(_ref) {
204
204
  components: components
205
205
  }, children));
206
206
  };
207
- FieldsProvider.propTypes = propTypes$h;
208
- FieldsProvider.defaultProps = defaultProps$h;
207
+ FieldsProvider.propTypes = propTypes$i;
208
+ FieldsProvider.defaultProps = defaultProps$i;
209
209
 
210
210
  var ScreensContext = /*#__PURE__*/React.createContext(new ScreensManager());
211
211
  var useScreensManager = function useScreensManager() {
212
212
  return useContext(ScreensContext);
213
213
  };
214
- var propTypes$g = {
214
+ var propTypes$h = {
215
215
  screens: PropTypes$1.screenDefinitions,
216
216
  namespaces: PropTypes.arrayOf(PropTypes.string),
217
217
  filterNamespaces: PropTypes.bool,
218
218
  manager: PropTypes.instanceOf(ScreensManager),
219
219
  children: PropTypes.node.isRequired
220
220
  };
221
- var defaultProps$g = {
221
+ var defaultProps$h = {
222
222
  screens: null,
223
223
  namespaces: null,
224
224
  filterNamespaces: false,
@@ -276,8 +276,8 @@ var ScreensProvider = function ScreensProvider(_ref) {
276
276
  components: components
277
277
  }, children));
278
278
  };
279
- ScreensProvider.propTypes = propTypes$g;
280
- ScreensProvider.defaultProps = defaultProps$g;
279
+ ScreensProvider.propTypes = propTypes$h;
280
+ ScreensProvider.defaultProps = defaultProps$h;
281
281
 
282
282
  var StoryContext = /*#__PURE__*/React.createContext(null);
283
283
  var useStoryContext = function useStoryContext() {
@@ -287,11 +287,11 @@ var useStory = function useStory() {
287
287
  var story = useStoryContext();
288
288
  return story;
289
289
  };
290
- var propTypes$f = {
290
+ var propTypes$g = {
291
291
  story: PropTypes.oneOfType([PropTypes$1.story, PropTypes$1.theme]),
292
292
  children: PropTypes.node.isRequired
293
293
  };
294
- var defaultProps$f = {
294
+ var defaultProps$g = {
295
295
  story: null
296
296
  };
297
297
  var StoryProvider = function StoryProvider(_ref) {
@@ -301,8 +301,8 @@ var StoryProvider = function StoryProvider(_ref) {
301
301
  value: story
302
302
  }, children);
303
303
  };
304
- StoryProvider.propTypes = propTypes$f;
305
- StoryProvider.defaultProps = defaultProps$f;
304
+ StoryProvider.propTypes = propTypes$g;
305
+ StoryProvider.defaultProps = defaultProps$g;
306
306
 
307
307
  var EditorContext = /*#__PURE__*/React.createContext(null);
308
308
  var useEditor = function useEditor() {
@@ -317,10 +317,10 @@ var useGetColors = function useGetColors() {
317
317
 
318
318
  return getColors;
319
319
  };
320
- var propTypes$e = {
320
+ var propTypes$f = {
321
321
  children: PropTypes.node.isRequired
322
322
  };
323
- var defaultProps$e = {};
323
+ var defaultProps$f = {};
324
324
  var EditorProvider = function EditorProvider(_ref2) {
325
325
  var children = _ref2.children;
326
326
  var story = useStory();
@@ -345,20 +345,20 @@ var EditorProvider = function EditorProvider(_ref2) {
345
345
  }
346
346
  }, children);
347
347
  };
348
- EditorProvider.propTypes = propTypes$e;
349
- EditorProvider.defaultProps = defaultProps$e;
348
+ EditorProvider.propTypes = propTypes$f;
349
+ EditorProvider.defaultProps = defaultProps$f;
350
350
 
351
351
  /* eslint-disable react/jsx-props-no-spreading */
352
352
  var FieldContext = /*#__PURE__*/React.createContext(null);
353
353
  var useFieldContext = function useFieldContext() {
354
354
  return useContext(FieldContext);
355
355
  };
356
- var propTypes$d = {
356
+ var propTypes$e = {
357
357
  context: PropTypes.any,
358
358
  // eslint-disable-line react/forbid-prop-types
359
359
  children: PropTypes.node.isRequired
360
360
  };
361
- var defaultProps$d = {
361
+ var defaultProps$e = {
362
362
  context: null
363
363
  };
364
364
  var FieldContextProvider = function FieldContextProvider(_ref) {
@@ -368,8 +368,8 @@ var FieldContextProvider = function FieldContextProvider(_ref) {
368
368
  value: context
369
369
  }, children);
370
370
  };
371
- FieldContextProvider.propTypes = propTypes$d;
372
- FieldContextProvider.defaultProps = defaultProps$d;
371
+ FieldContextProvider.propTypes = propTypes$e;
372
+ FieldContextProvider.defaultProps = defaultProps$e;
373
373
 
374
374
  /* eslint-disable react/jsx-props-no-spreading */
375
375
  var GoogleKeysContext = /*#__PURE__*/React.createContext({
@@ -378,12 +378,12 @@ var GoogleKeysContext = /*#__PURE__*/React.createContext({
378
378
  var useGoogleKeys = function useGoogleKeys() {
379
379
  return useContext(GoogleKeysContext);
380
380
  };
381
- var propTypes$c = {
381
+ var propTypes$d = {
382
382
  children: PropTypes.node.isRequired,
383
383
  apiKey: PropTypes.string // .isRequired,
384
384
 
385
385
  };
386
- var defaultProps$c = {
386
+ var defaultProps$d = {
387
387
  apiKey: null
388
388
  };
389
389
  var GoogleKeysProvider = function GoogleKeysProvider(_ref) {
@@ -402,8 +402,8 @@ var GoogleKeysProvider = function GoogleKeysProvider(_ref) {
402
402
  value: value
403
403
  }, children);
404
404
  };
405
- GoogleKeysProvider.propTypes = propTypes$c;
406
- GoogleKeysProvider.defaultProps = defaultProps$c;
405
+ GoogleKeysProvider.propTypes = propTypes$d;
406
+ GoogleKeysProvider.defaultProps = defaultProps$d;
407
407
 
408
408
  var FontsContext = /*#__PURE__*/React.createContext({
409
409
  systemFonts: null,
@@ -485,12 +485,12 @@ var useFonts = function useFonts() {
485
485
  }, [systemFonts, googleFonts, customFonts]);
486
486
  return fonts;
487
487
  };
488
- var propTypes$b = {
488
+ var propTypes$c = {
489
489
  children: PropTypes.node.isRequired,
490
490
  systemFonts: PropTypes$1.fonts,
491
491
  customFonts: PropTypes$1.fonts
492
492
  };
493
- var defaultProps$b = {
493
+ var defaultProps$c = {
494
494
  systemFonts: ['Arial', 'Courier New', 'Georgia', 'Times New Roman', 'Verdana'],
495
495
  customFonts: null
496
496
  };
@@ -529,8 +529,8 @@ var FontsProvider = function FontsProvider(_ref4) {
529
529
  value: fonts
530
530
  }, children);
531
531
  };
532
- FontsProvider.propTypes = propTypes$b;
533
- FontsProvider.defaultProps = defaultProps$b;
532
+ FontsProvider.propTypes = propTypes$c;
533
+ FontsProvider.defaultProps = defaultProps$c;
534
534
 
535
535
  var GoogleApiClientContext = /*#__PURE__*/React.createContext(null);
536
536
  var useGoogleApiClient = function useGoogleApiClient() {
@@ -556,10 +556,10 @@ var withGoogleApiClient = function withGoogleApiClient(WrappedComponent) {
556
556
  WithGoogleApiClientComponent.displayName = "WithGoogleApiClient(".concat(getDisplayName(WrappedComponent), ")");
557
557
  return WithGoogleApiClientComponent;
558
558
  };
559
- var propTypes$a = {
559
+ var propTypes$b = {
560
560
  children: PropTypes.node.isRequired
561
561
  };
562
- var defaultProps$a = {};
562
+ var defaultProps$b = {};
563
563
  var GoogleApiClientProvider = function GoogleApiClientProvider(_ref2) {
564
564
  var children = _ref2.children;
565
565
 
@@ -586,8 +586,8 @@ var GoogleApiClientProvider = function GoogleApiClientProvider(_ref2) {
586
586
  value: client
587
587
  }, children);
588
588
  };
589
- GoogleApiClientProvider.propTypes = propTypes$a;
590
- GoogleApiClientProvider.defaultProps = defaultProps$a;
589
+ GoogleApiClientProvider.propTypes = propTypes$b;
590
+ GoogleApiClientProvider.defaultProps = defaultProps$b;
591
591
 
592
592
  var GoogleMapsClientContext = /*#__PURE__*/React.createContext(null);
593
593
  var useGoogleMapsClient = function useGoogleMapsClient() {
@@ -613,12 +613,12 @@ var withGoogleMapsClient = function withGoogleMapsClient(WrappedComponent) {
613
613
  WithGoogleMapsClientComponent.displayName = "WithGoogleMapsClient(".concat(getDisplayName(WrappedComponent), ")");
614
614
  return WithGoogleMapsClientComponent;
615
615
  };
616
- var propTypes$9 = {
616
+ var propTypes$a = {
617
617
  children: PropTypes.node.isRequired,
618
618
  locale: PropTypes.string,
619
619
  libraries: PropTypes.arrayOf(PropTypes.string)
620
620
  };
621
- var defaultProps$9 = {
621
+ var defaultProps$a = {
622
622
  locale: 'fr',
623
623
  libraries: null
624
624
  };
@@ -652,8 +652,8 @@ var GoogleMapsClientProvider = function GoogleMapsClientProvider(_ref2) {
652
652
  value: client
653
653
  }, children);
654
654
  };
655
- GoogleMapsClientProvider.propTypes = propTypes$9;
656
- GoogleMapsClientProvider.defaultProps = defaultProps$9;
655
+ GoogleMapsClientProvider.propTypes = propTypes$a;
656
+ GoogleMapsClientProvider.defaultProps = defaultProps$a;
657
657
 
658
658
  var ModalsContext = /*#__PURE__*/React.createContext({
659
659
  container: null
@@ -682,12 +682,12 @@ var withModals = function withModals(WrappedComponent) {
682
682
  WithModalsComponent.displayName = "WithModals(".concat(getDisplayName(WrappedComponent), ")");
683
683
  return WithModalsComponent;
684
684
  };
685
- var propTypes$8 = {
685
+ var propTypes$9 = {
686
686
  children: PropTypes.node.isRequired,
687
687
  container: PropTypes.object // eslint-disable-line
688
688
 
689
689
  };
690
- var defaultProps$8 = {
690
+ var defaultProps$9 = {
691
691
  container: null
692
692
  };
693
693
  var ModalsProvider = function ModalsProvider(_ref2) {
@@ -743,8 +743,8 @@ var ModalsProvider = function ModalsProvider(_ref2) {
743
743
  value: value
744
744
  }, children);
745
745
  };
746
- ModalsProvider.propTypes = propTypes$8;
747
- ModalsProvider.defaultProps = defaultProps$8;
746
+ ModalsProvider.propTypes = propTypes$9;
747
+ ModalsProvider.defaultProps = defaultProps$9;
748
748
 
749
749
  var PanelsContext = /*#__PURE__*/React.createContext({
750
750
  container: null
@@ -773,12 +773,12 @@ var withPanels = function withPanels(WrappedComponent) {
773
773
  WithPanelsComponent.displayName = "WithPanels(".concat(getDisplayName(WrappedComponent), ")");
774
774
  return WithPanelsComponent;
775
775
  };
776
- var propTypes$7 = {
776
+ var propTypes$8 = {
777
777
  children: PropTypes.node.isRequired,
778
778
  container: PropTypes.object // eslint-disable-line
779
779
 
780
780
  };
781
- var defaultProps$7 = {
781
+ var defaultProps$8 = {
782
782
  container: null
783
783
  };
784
784
  var PanelsProvider = function PanelsProvider(_ref2) {
@@ -834,8 +834,8 @@ var PanelsProvider = function PanelsProvider(_ref2) {
834
834
  value: value
835
835
  }, children);
836
836
  };
837
- PanelsProvider.propTypes = propTypes$7;
838
- PanelsProvider.defaultProps = defaultProps$7;
837
+ PanelsProvider.propTypes = propTypes$8;
838
+ PanelsProvider.defaultProps = defaultProps$8;
839
839
 
840
840
  /* eslint-disable react/jsx-props-no-spreading */
841
841
  var RoutesContext = /*#__PURE__*/React.createContext(null);
@@ -889,13 +889,13 @@ var useRouteBack = function useRouteBack() {
889
889
  }, [history, url]);
890
890
  return back;
891
891
  };
892
- var propTypes$6 = {
892
+ var propTypes$7 = {
893
893
  children: PropTypes.node.isRequired,
894
894
  routes: PropTypes.objectOf(PropTypes.string),
895
895
  // .isRequired,
896
896
  basePath: PropTypes.string
897
897
  };
898
- var defaultProps$6 = {
898
+ var defaultProps$7 = {
899
899
  routes: null,
900
900
  basePath: null
901
901
  };
@@ -913,8 +913,8 @@ var RoutesProvider = function RoutesProvider(_ref2) {
913
913
  value: value
914
914
  }, children);
915
915
  };
916
- RoutesProvider.propTypes = propTypes$6;
917
- RoutesProvider.defaultProps = defaultProps$6;
916
+ RoutesProvider.propTypes = propTypes$7;
917
+ RoutesProvider.defaultProps = defaultProps$7;
918
918
 
919
919
  var ScreenContext = /*#__PURE__*/React.createContext({
920
920
  data: null,
@@ -975,14 +975,14 @@ var useScreenState = function useScreenState() {
975
975
 
976
976
  return screenState;
977
977
  };
978
- var propTypes$5 = {
978
+ var propTypes$6 = {
979
979
  children: PropTypes.node.isRequired,
980
980
  data: PropTypes$1.screen,
981
981
  definition: PropTypes$1.screenDefinition,
982
982
  renderContext: PropTypes$1.renderContext,
983
983
  screenState: PropTypes.string
984
984
  };
985
- var defaultProps$5 = {
985
+ var defaultProps$6 = {
986
986
  data: null,
987
987
  definition: null,
988
988
  renderContext: null,
@@ -1028,8 +1028,8 @@ var ScreenProvider = function ScreenProvider(_ref6) {
1028
1028
  value: value
1029
1029
  }, children);
1030
1030
  };
1031
- ScreenProvider.propTypes = propTypes$5;
1032
- ScreenProvider.defaultProps = defaultProps$5;
1031
+ ScreenProvider.propTypes = propTypes$6;
1032
+ ScreenProvider.defaultProps = defaultProps$6;
1033
1033
 
1034
1034
  /* eslint-disable react/jsx-props-no-spreading */
1035
1035
  var ScreenSizeContext = /*#__PURE__*/React.createContext({
@@ -1043,11 +1043,11 @@ var ScreenSizeContext = /*#__PURE__*/React.createContext({
1043
1043
  var useScreenSize = function useScreenSize() {
1044
1044
  return useContext(ScreenSizeContext);
1045
1045
  };
1046
- var propTypes$4 = {
1046
+ var propTypes$5 = {
1047
1047
  children: PropTypes.node.isRequired,
1048
1048
  size: PropTypes$1.screenSize
1049
1049
  };
1050
- var defaultProps$4 = {
1050
+ var defaultProps$5 = {
1051
1051
  size: {}
1052
1052
  }; // Note: this is done to avoid excessive renders on the screens that use the context
1053
1053
 
@@ -1065,17 +1065,17 @@ var ScreenSizeProvider = function ScreenSizeProvider(_ref) {
1065
1065
  value: currentSize
1066
1066
  }, children);
1067
1067
  };
1068
- ScreenSizeProvider.propTypes = propTypes$4;
1069
- ScreenSizeProvider.defaultProps = defaultProps$4;
1068
+ ScreenSizeProvider.propTypes = propTypes$5;
1069
+ ScreenSizeProvider.defaultProps = defaultProps$5;
1070
1070
 
1071
1071
  var useTracking = function useTracking() {
1072
1072
  return useContext(TrackingContext);
1073
1073
  };
1074
- var propTypes$3 = {
1074
+ var propTypes$4 = {
1075
1075
  children: PropTypes.node.isRequired,
1076
1076
  variables: PropTypes$1.trackingVariables
1077
1077
  };
1078
- var defaultProps$3 = {
1078
+ var defaultProps$4 = {
1079
1079
  variables: null
1080
1080
  };
1081
1081
  var TrackingProvider = function TrackingProvider(_ref) {
@@ -1091,8 +1091,8 @@ var TrackingProvider = function TrackingProvider(_ref) {
1091
1091
  tracking: tracking
1092
1092
  }, children);
1093
1093
  };
1094
- TrackingProvider.propTypes = propTypes$3;
1095
- TrackingProvider.defaultProps = defaultProps$3;
1094
+ TrackingProvider.propTypes = propTypes$4;
1095
+ TrackingProvider.defaultProps = defaultProps$4;
1096
1096
 
1097
1097
  var _excluded$3 = ["Uppy"];
1098
1098
  /**
@@ -1500,7 +1500,7 @@ var useUppy = function useUppy() {
1500
1500
  }, [uppy]);
1501
1501
  return uppy;
1502
1502
  };
1503
- var propTypes$2 = {
1503
+ var propTypes$3 = {
1504
1504
  children: PropTypes.node.isRequired,
1505
1505
  transport: PropTypes.oneOf(['xhr', 'transloadit', 'tus']),
1506
1506
  locale: PropTypes.string,
@@ -1521,7 +1521,7 @@ var propTypes$2 = {
1521
1521
  endpoint: PropTypes.string.isRequired
1522
1522
  })])
1523
1523
  };
1524
- var defaultProps$2 = {
1524
+ var defaultProps$3 = {
1525
1525
  transport: null,
1526
1526
  locale: null,
1527
1527
  sources: null,
@@ -1661,8 +1661,8 @@ var UppyProvider = function UppyProvider(_ref5) {
1661
1661
  value: value
1662
1662
  }, children);
1663
1663
  };
1664
- UppyProvider.propTypes = propTypes$2;
1665
- UppyProvider.defaultProps = defaultProps$2;
1664
+ UppyProvider.propTypes = propTypes$3;
1665
+ UppyProvider.defaultProps = defaultProps$3;
1666
1666
 
1667
1667
  var defaultValue$1 = {
1668
1668
  userInteracted: false
@@ -1671,10 +1671,10 @@ var UserInteractionContext = /*#__PURE__*/React.createContext(defaultValue$1);
1671
1671
  var useUserInteracted = function useUserInteracted() {
1672
1672
  return useContext(UserInteractionContext).userInteracted;
1673
1673
  };
1674
- var propTypes$1 = {
1674
+ var propTypes$2 = {
1675
1675
  children: PropTypes.node.isRequired
1676
1676
  };
1677
- var defaultProps$1 = {};
1677
+ var defaultProps$2 = {};
1678
1678
  var UserInteractionProvider = function UserInteractionProvider(_ref) {
1679
1679
  var children = _ref.children;
1680
1680
 
@@ -1716,8 +1716,8 @@ var UserInteractionProvider = function UserInteractionProvider(_ref) {
1716
1716
  value: value
1717
1717
  }, children);
1718
1718
  };
1719
- UserInteractionProvider.propTypes = propTypes$1;
1720
- UserInteractionProvider.defaultProps = defaultProps$1;
1719
+ UserInteractionProvider.propTypes = propTypes$2;
1720
+ UserInteractionProvider.defaultProps = defaultProps$2;
1721
1721
 
1722
1722
  var defaultValue = {
1723
1723
  events: new EventEmitter(),
@@ -1756,7 +1756,7 @@ var useViewerInteraction = function useViewerInteraction() {
1756
1756
  enableInteraction: enableInteraction
1757
1757
  };
1758
1758
  };
1759
- var propTypes = {
1759
+ var propTypes$1 = {
1760
1760
  children: PropTypes.node.isRequired,
1761
1761
  events: PropTypes.instanceOf(EventEmitter),
1762
1762
  menuVisible: PropTypes.bool,
@@ -1767,7 +1767,7 @@ var propTypes = {
1767
1767
  enableInteraction: PropTypes.func
1768
1768
  };
1769
1769
 
1770
- var defaultProps = _objectSpread({}, defaultValue);
1770
+ var defaultProps$1 = _objectSpread({}, defaultValue);
1771
1771
 
1772
1772
  var ViewerProvider = function ViewerProvider(_ref) {
1773
1773
  var children = _ref.children,
@@ -1793,7 +1793,62 @@ var ViewerProvider = function ViewerProvider(_ref) {
1793
1793
  value: value
1794
1794
  }, children);
1795
1795
  };
1796
- ViewerProvider.propTypes = propTypes;
1797
- ViewerProvider.defaultProps = defaultProps;
1796
+ ViewerProvider.propTypes = propTypes$1;
1797
+ ViewerProvider.defaultProps = defaultProps$1;
1798
+
1799
+ var VisitorContext = /*#__PURE__*/React.createContext();
1800
+ var useVisitorContext = function useVisitorContext() {
1801
+ var _useContext = useContext(VisitorContext),
1802
+ visitor = _useContext.visitor,
1803
+ setVisitor = _useContext.setVisitor;
1804
+
1805
+ return {
1806
+ visitor: visitor,
1807
+ setVisitor: setVisitor
1808
+ };
1809
+ };
1810
+ var useVisitor = function useVisitor() {
1811
+ var _useContext2 = useContext(VisitorContext),
1812
+ visitor = _useContext2.visitor;
1813
+
1814
+ return visitor;
1815
+ };
1816
+ var useSetVisitor = function useSetVisitor() {
1817
+ var _useContext3 = useContext(VisitorContext),
1818
+ setVisitor = _useContext3.setVisitor;
1819
+
1820
+ return setVisitor;
1821
+ };
1822
+ var propTypes = {
1823
+ children: PropTypes.node.isRequired,
1824
+ visitor: PropTypes$1.visitor
1825
+ };
1826
+ var defaultProps = {
1827
+ visitor: null
1828
+ };
1829
+ var VisitorProvider = function VisitorProvider(_ref) {
1830
+ var initialVisitor = _ref.visitor,
1831
+ children = _ref.children;
1832
+
1833
+ var _useState = useState(initialVisitor),
1834
+ _useState2 = _slicedToArray(_useState, 2),
1835
+ visitor = _useState2[0],
1836
+ setVisitor = _useState2[1];
1837
+
1838
+ useEffect(function () {
1839
+ setVisitor(initialVisitor);
1840
+ }, [initialVisitor, setVisitor]);
1841
+ var value = useMemo(function () {
1842
+ return {
1843
+ visitor: visitor,
1844
+ setVisitor: setVisitor
1845
+ };
1846
+ }, [visitor, setVisitor]);
1847
+ return /*#__PURE__*/React.createElement(VisitorContext.Provider, {
1848
+ value: value
1849
+ }, children);
1850
+ };
1851
+ VisitorProvider.propTypes = propTypes;
1852
+ VisitorProvider.defaultProps = defaultProps;
1798
1853
 
1799
- export { ComponentsContext, ComponentsProvider, ELEMENTS_NAMESPACE, EditorContext, EditorProvider, FIELDS_NAMESPACE, FORMS_NAMESPACE, FieldContext, FieldContextProvider, FieldsContext, FieldsProvider, FontsContext, FontsProvider, GoogleApiClientContext, GoogleApiClientProvider, GoogleKeysContext, GoogleKeysProvider, GoogleMapsClientContext, GoogleMapsClientProvider, MODALS_NAMESPACE, ModalsContext, ModalsProvider, PanelsContext, PanelsProvider, RoutesContext, RoutesProvider, SCREENS_NAMESPACE, ScreenContext, ScreenProvider, ScreenSizeContext, ScreenSizeProvider, ScreensContext, ScreensProvider, StoryContext, StoryProvider, TrackingProvider, UppyContext, UppyProvider, UserInteractionContext, UserInteractionProvider, ViewerContext, ViewerProvider, useComponent, useComponents, useComponentsManager, useEditor, useElementComponent, useElementsComponents, useElementsComponentsManager, useFieldComponent, useFieldContext, useFieldDefinition, useFieldsComponents, useFieldsComponentsManager, useFieldsManager, useFonts, useFormComponent, useFormsComponents, useFormsComponentsManager, useGetColors, useGoogleApiClient, useGoogleFonts, useGoogleKeys, useGoogleMapsClient, useModalComponent, useModals, useModalsComponents, useModalsComponentsManager, usePanels, useRouteBack, useRoutePush, useRoutes, useScreen, useScreenComponent, useScreenData, useScreenDefinition, useScreenRenderContext, useScreenSize, useScreenState, useScreensComponents, useScreensComponentsManager, useScreensManager, useStory, useStoryContext, useTracking, useUppy, useUrlGenerator, useUserInteracted, useViewer, useViewerEvents, useViewerInteraction, useViewerNavigation, withGoogleApiClient, withGoogleMapsClient, withModals, withPanels };
1854
+ export { ComponentsContext, ComponentsProvider, ELEMENTS_NAMESPACE, EditorContext, EditorProvider, FIELDS_NAMESPACE, FORMS_NAMESPACE, FieldContext, FieldContextProvider, FieldsContext, FieldsProvider, FontsContext, FontsProvider, GoogleApiClientContext, GoogleApiClientProvider, GoogleKeysContext, GoogleKeysProvider, GoogleMapsClientContext, GoogleMapsClientProvider, MODALS_NAMESPACE, ModalsContext, ModalsProvider, PanelsContext, PanelsProvider, RoutesContext, RoutesProvider, SCREENS_NAMESPACE, ScreenContext, ScreenProvider, ScreenSizeContext, ScreenSizeProvider, ScreensContext, ScreensProvider, StoryContext, StoryProvider, TrackingProvider, UppyContext, UppyProvider, UserInteractionContext, UserInteractionProvider, ViewerContext, ViewerProvider, VisitorContext, VisitorProvider, useComponent, useComponents, useComponentsManager, useEditor, useElementComponent, useElementsComponents, useElementsComponentsManager, useFieldComponent, useFieldContext, useFieldDefinition, useFieldsComponents, useFieldsComponentsManager, useFieldsManager, useFonts, useFormComponent, useFormsComponents, useFormsComponentsManager, useGetColors, useGoogleApiClient, useGoogleFonts, useGoogleKeys, useGoogleMapsClient, useModalComponent, useModals, useModalsComponents, useModalsComponentsManager, usePanels, useRouteBack, useRoutePush, useRoutes, useScreen, useScreenComponent, useScreenData, useScreenDefinition, useScreenRenderContext, useScreenSize, useScreenState, useScreensComponents, useScreensComponentsManager, useScreensManager, useSetVisitor, useStory, useStoryContext, useTracking, useUppy, useUrlGenerator, useUserInteracted, useViewer, useViewerEvents, useViewerInteraction, useViewerNavigation, useVisitor, useVisitorContext, withGoogleApiClient, withGoogleMapsClient, withModals, withPanels };
package/es/index.js CHANGED
@@ -582,6 +582,10 @@ var authorElement = PropTypes$1.shape({
582
582
  url: PropTypes$1.string
583
583
  })
584
584
  });
585
+ var visitor = PropTypes$1.shape({
586
+ id: PropTypes$1.oneOfType([PropTypes$1.string, PropTypes$1.number]),
587
+ name: PropTypes$1.string
588
+ });
585
589
 
586
590
  var PropTypes = /*#__PURE__*/Object.freeze({
587
591
  __proto__: null,
@@ -721,7 +725,8 @@ var PropTypes = /*#__PURE__*/Object.freeze({
721
725
  paymentItem: paymentItem,
722
726
  paymentItems: paymentItems,
723
727
  pageMetadata: pageMetadata,
724
- authorElement: authorElement
728
+ authorElement: authorElement,
729
+ visitor: visitor
725
730
  });
726
731
 
727
732
  var sortedColors = function sortedColors(colors) {
package/lib/components.js CHANGED
@@ -3040,6 +3040,10 @@ PropTypes__default["default"].shape({
3040
3040
  url: PropTypes__default["default"].string
3041
3041
  })
3042
3042
  });
3043
+ PropTypes__default["default"].shape({
3044
+ id: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number]),
3045
+ name: PropTypes__default["default"].string
3046
+ });
3043
3047
 
3044
3048
  /* eslint-disable react/no-array-index-key */
3045
3049
  var propTypes$d = {
@@ -3723,6 +3727,10 @@ var Screen = function Screen(_ref) {
3723
3727
  data: screen,
3724
3728
  renderContext: renderContext,
3725
3729
  screenState: screenState
3730
+ }, /*#__PURE__*/React__default["default"].createElement(contexts.VisitorProvider, {
3731
+ visitor: {
3732
+ id: 'editor'
3733
+ }
3726
3734
  }, ScreenComponent !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
3727
3735
  className: classNames__default["default"]([styles$7.container, _defineProperty__default["default"]({}, className, className !== null)])
3728
3736
  }, /*#__PURE__*/React__default["default"].createElement(ScreenComponent, Object.assign({}, screen, {
@@ -3735,7 +3743,7 @@ var Screen = function Screen(_ref) {
3735
3743
  getMediaRef: getMediaRef
3736
3744
  }))) : /*#__PURE__*/React__default["default"].createElement("div", {
3737
3745
  className: className
3738
- }, component));
3746
+ }, component)));
3739
3747
  };
3740
3748
 
3741
3749
  Screen.propTypes = propTypes$9;