@panneau/core 1.0.3-alpha.1 → 1.0.3

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/contexts.js CHANGED
@@ -20,6 +20,7 @@ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProp
20
20
  var reactRouter = require('react-router');
21
21
  var tracking = require('@folklore/tracking');
22
22
  var uuid = require('uuid');
23
+ var EventEmitter = require('wolfy87-eventemitter');
23
24
 
24
25
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
25
26
 
@@ -51,6 +52,7 @@ var uniqBy__default = /*#__PURE__*/_interopDefaultLegacy(uniqBy);
51
52
  var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
52
53
  var isObject__default = /*#__PURE__*/_interopDefaultLegacy(isObject);
53
54
  var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
55
+ var EventEmitter__default = /*#__PURE__*/_interopDefaultLegacy(EventEmitter);
54
56
 
55
57
  var MODALS_NAMESPACE = 'modals';
56
58
  var FIELDS_NAMESPACE = 'fields';
@@ -61,10 +63,10 @@ var DISPLAYS_NAMESPACE = 'displays';
61
63
  var PAGES_NAMESPACE = 'pages';
62
64
  var APP_NAMESPACE = 'app';
63
65
  var ComponentsContext = /*#__PURE__*/React__default["default"].createContext(null);
66
+
64
67
  /**
65
68
  * Hooks
66
69
  */
67
-
68
70
  var useComponentsManager = function useComponentsManager() {
69
71
  var namespace = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
70
72
  var manager = React.useContext(ComponentsContext);
@@ -82,20 +84,18 @@ var useComponents = function useComponents() {
82
84
  var useComponent = function useComponent(name) {
83
85
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
84
86
  var namespace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
85
-
86
87
  if (!isString__default["default"](name)) {
87
88
  return name || defaultComponent;
88
89
  }
89
-
90
90
  var manager = useComponentsManager(namespace);
91
91
  return React.useMemo(function () {
92
92
  return manager.getComponent(name) || defaultComponent;
93
93
  }, [manager, name, defaultComponent]);
94
94
  };
95
+
95
96
  /**
96
97
  * Fields hooks
97
98
  */
98
-
99
99
  var useFieldsComponentsManager = function useFieldsComponentsManager() {
100
100
  return useComponentsManager(FIELDS_NAMESPACE);
101
101
  };
@@ -107,10 +107,10 @@ var useFieldComponent = function useFieldComponent(name) {
107
107
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
108
108
  return useComponent(name, defaultComponent, FIELDS_NAMESPACE);
109
109
  };
110
+
110
111
  /**
111
112
  * Forms hooks
112
113
  */
113
-
114
114
  var useFormsComponentsManager = function useFormsComponentsManager() {
115
115
  return useComponentsManager(FORMS_NAMESPACE);
116
116
  };
@@ -122,10 +122,10 @@ var useFormComponent = function useFormComponent(name) {
122
122
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
123
123
  return useComponent(name, defaultComponent, FORMS_NAMESPACE);
124
124
  };
125
+
125
126
  /**
126
127
  * Modals hooks
127
128
  */
128
-
129
129
  var useModalsComponentsManager = function useModalsComponentsManager() {
130
130
  return useComponentsManager(MODALS_NAMESPACE);
131
131
  };
@@ -137,10 +137,10 @@ var useModalComponent = function useModalComponent(name) {
137
137
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
138
138
  return useComponent(name, defaultComponent, MODALS_NAMESPACE);
139
139
  };
140
+
140
141
  /**
141
142
  * Filters hooks
142
143
  */
143
-
144
144
  var useFiltersComponentsManager = function useFiltersComponentsManager() {
145
145
  return useComponentsManager(FILTERS_NAMESPACE);
146
146
  };
@@ -152,10 +152,10 @@ var useFilterComponent = function useFilterComponent(name) {
152
152
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
153
153
  return useComponent(name, defaultComponent, FILTERS_NAMESPACE);
154
154
  };
155
+
155
156
  /**
156
157
  * Lists hooks
157
158
  */
158
-
159
159
  var useListsComponentsManager = function useListsComponentsManager() {
160
160
  return useComponentsManager(LISTS_NAMESPACE);
161
161
  };
@@ -167,10 +167,10 @@ var useListComponent = function useListComponent(name) {
167
167
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
168
168
  return useComponent(name, defaultComponent, LISTS_NAMESPACE);
169
169
  };
170
+
170
171
  /**
171
172
  * Displays hooks
172
173
  */
173
-
174
174
  var useDisplaysComponentsManager = function useDisplaysComponentsManager() {
175
175
  return useComponentsManager(DISPLAYS_NAMESPACE);
176
176
  };
@@ -182,10 +182,10 @@ var useDisplayComponent = function useDisplayComponent(name) {
182
182
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
183
183
  return useComponent(name, defaultComponent, DISPLAYS_NAMESPACE);
184
184
  };
185
+
185
186
  /**
186
187
  * Pages hooks
187
188
  */
188
-
189
189
  var usePagesComponentsManager = function usePagesComponentsManager() {
190
190
  return useComponentsManager(PAGES_NAMESPACE);
191
191
  };
@@ -197,10 +197,10 @@ var usePageComponent = function usePageComponent(name) {
197
197
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
198
198
  return useComponent(name, defaultComponent, PAGES_NAMESPACE);
199
199
  };
200
+
200
201
  /**
201
202
  * App hooks
202
203
  */
203
-
204
204
  var useAppComponentsManager = function useAppComponentsManager() {
205
205
  return useComponentsManager(APP_NAMESPACE);
206
206
  };
@@ -212,10 +212,10 @@ var useAppComponent = function useAppComponent(name) {
212
212
  var defaultComponent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
213
213
  return useComponent(name, defaultComponent, APP_NAMESPACE);
214
214
  };
215
+
215
216
  /**
216
217
  * Provider
217
218
  */
218
-
219
219
  var propTypes$f = {
220
220
  children: PropTypes__default["default"].node.isRequired,
221
221
  namespace: PropTypes__default["default"].string,
@@ -229,9 +229,9 @@ var defaultProps$f = {
229
229
  };
230
230
  var ComponentsProvider = function ComponentsProvider(_ref) {
231
231
  var components = _ref.components,
232
- manager = _ref.manager,
233
- namespace = _ref.namespace,
234
- children = _ref.children;
232
+ manager = _ref.manager,
233
+ namespace = _ref.namespace,
234
+ children = _ref.children;
235
235
  var previousManager = useComponentsManager() || null;
236
236
  var finalManager = React.useMemo(function () {
237
237
  return new core.ComponentsManager(_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, previousManager !== null ? previousManager.getComponents() : null), manager !== null ? manager.getComponents() : null), new core.ComponentsManager(components).addNamespace(namespace).getComponents()));
@@ -249,10 +249,10 @@ var message = PropTypes__default["default"].shape({
249
249
  });
250
250
  var label = PropTypes__default["default"].oneOfType([message, PropTypes__default["default"].node]);
251
251
  PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]);
252
+
252
253
  /**
253
254
  * Core
254
255
  */
255
-
256
256
  var menuItem = PropTypes__default["default"].shape({
257
257
  id: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]),
258
258
  label: label,
@@ -291,10 +291,10 @@ var tableColumn = PropTypes__default["default"].shape({
291
291
  columnClassName: PropTypes__default["default"].string
292
292
  });
293
293
  PropTypes__default["default"].arrayOf(tableColumn);
294
+
294
295
  /**
295
296
  * Panneau Definitions
296
297
  */
297
-
298
298
  var routes = PropTypes__default["default"].shape({
299
299
  'resources.index': PropTypes__default["default"].string.isRequired,
300
300
  'resources.create': PropTypes__default["default"].string.isRequired,
@@ -341,15 +341,17 @@ var panneauDefinition = PropTypes__default["default"].shape({
341
341
  resources: resources,
342
342
  routes: routes,
343
343
  pages: pages,
344
- intl: intl // intl,
345
-
344
+ intl: intl
345
+ // intl,
346
346
  });
347
+
347
348
  var definition = PropTypes__default["default"].shape({
348
- name: PropTypes__default["default"].string // resources,
349
+ name: PropTypes__default["default"].string
350
+ // resources,
349
351
  // routes,
350
352
  // intl,
351
-
352
353
  });
354
+
353
355
  var item = PropTypes__default["default"].shape({
354
356
  id: PropTypes__default["default"].string.isRequired
355
357
  });
@@ -382,9 +384,8 @@ var useDefinitionContext = function useDefinitionContext() {
382
384
  };
383
385
  var useDefinition = function useDefinition() {
384
386
  var _useDefinitionContext = useDefinitionContext(),
385
- _useDefinitionContext2 = _useDefinitionContext.definition,
386
- definition = _useDefinitionContext2 === void 0 ? null : _useDefinitionContext2;
387
-
387
+ _useDefinitionContext2 = _useDefinitionContext.definition,
388
+ definition = _useDefinitionContext2 === void 0 ? null : _useDefinitionContext2;
388
389
  return definition;
389
390
  };
390
391
  var propTypes$e = {
@@ -394,7 +395,7 @@ var propTypes$e = {
394
395
  var defaultProps$e = {};
395
396
  var DefinitionProvider = function DefinitionProvider(_ref) {
396
397
  var definition = _ref.definition,
397
- children = _ref.children;
398
+ children = _ref.children;
398
399
  return /*#__PURE__*/React__default["default"].createElement(DefinitionContext.Provider, {
399
400
  value: definition
400
401
  }, children);
@@ -425,8 +426,8 @@ var defaultProps$d = {
425
426
  };
426
427
  var FieldsProvider = function FieldsProvider(_ref) {
427
428
  var fields = _ref.fields,
428
- manager = _ref.manager,
429
- children = _ref.children;
429
+ manager = _ref.manager,
430
+ children = _ref.children;
430
431
  var previousManager = useFieldsManager() || null;
431
432
  var finalManager = React.useMemo(function () {
432
433
  var newFields = uniqBy__default["default"]([].concat(_toConsumableArray__default["default"](fields || []), _toConsumableArray__default["default"](manager !== null ? manager.getDefinitions() : []), _toConsumableArray__default["default"](previousManager !== null ? previousManager.getDefinitions() : [])), function (_ref2) {
@@ -462,18 +463,16 @@ var useGoogleKeys = function useGoogleKeys() {
462
463
  var propTypes$c = {
463
464
  children: PropTypes__default["default"].node.isRequired,
464
465
  apiKey: PropTypes__default["default"].string // .isRequired,
465
-
466
466
  };
467
+
467
468
  var defaultProps$c = {
468
469
  apiKey: null
469
470
  };
470
471
  var GoogleKeysProvider = function GoogleKeysProvider(_ref) {
471
472
  var children = _ref.children,
472
- apiKey = _ref.apiKey;
473
-
473
+ apiKey = _ref.apiKey;
474
474
  var _useGoogleKeys = useGoogleKeys(),
475
- previousApiKey = _useGoogleKeys.apiKey;
476
-
475
+ previousApiKey = _useGoogleKeys.apiKey;
477
476
  return /*#__PURE__*/React__default["default"].createElement(GoogleKeysContext.Provider, {
478
477
  value: {
479
478
  apiKey: apiKey || previousApiKey
@@ -490,27 +489,22 @@ var FontsContext = /*#__PURE__*/React__default["default"].createContext({
490
489
  });
491
490
  var useGoogleFonts = function useGoogleFonts() {
492
491
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
493
- _ref$disabled = _ref.disabled,
494
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
495
- _ref$setFonts = _ref.setFonts,
496
- setFonts = _ref$setFonts === void 0 ? null : _ref$setFonts;
497
-
492
+ _ref$disabled = _ref.disabled,
493
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
494
+ _ref$setFonts = _ref.setFonts,
495
+ setFonts = _ref$setFonts === void 0 ? null : _ref$setFonts;
498
496
  var _useGoogleKeys = useGoogleKeys(),
499
- apiKey = _useGoogleKeys.apiKey;
500
-
497
+ apiKey = _useGoogleKeys.apiKey;
501
498
  var _useState = React.useState(null),
502
- _useState2 = _slicedToArray__default["default"](_useState, 2),
503
- googleFonts = _useState2[0],
504
- setGoogleFonts = _useState2[1];
505
-
499
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
500
+ googleFonts = _useState2[0],
501
+ setGoogleFonts = _useState2[1];
506
502
  React.useEffect(function () {
507
503
  var canceled = false;
508
-
509
504
  if (apiKey !== null && !disabled) {
510
505
  fetch.getJSON("https://www.googleapis.com/webfonts/v1/webfonts?key=".concat(apiKey, "&sort=popularity")).then(function (_ref2) {
511
506
  var _ref2$items = _ref2.items,
512
- items = _ref2$items === void 0 ? [] : _ref2$items;
513
-
507
+ items = _ref2$items === void 0 ? [] : _ref2$items;
514
508
  if (!canceled) {
515
509
  var newFonts = items.map(function (it) {
516
510
  return {
@@ -519,7 +513,6 @@ var useGoogleFonts = function useGoogleFonts() {
519
513
  variants: it.variants
520
514
  };
521
515
  });
522
-
523
516
  if (setFonts !== null) {
524
517
  setFonts(newFonts);
525
518
  } else {
@@ -528,7 +521,6 @@ var useGoogleFonts = function useGoogleFonts() {
528
521
  }
529
522
  });
530
523
  }
531
-
532
524
  return function () {
533
525
  canceled = true;
534
526
  };
@@ -537,19 +529,17 @@ var useGoogleFonts = function useGoogleFonts() {
537
529
  };
538
530
  var useFonts = function useFonts() {
539
531
  var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
540
- _ref3$withoutGoogleFo = _ref3.withoutGoogleFonts,
541
- withoutGoogleFonts = _ref3$withoutGoogleFo === void 0 ? false : _ref3$withoutGoogleFo;
542
-
532
+ _ref3$withoutGoogleFo = _ref3.withoutGoogleFonts,
533
+ withoutGoogleFonts = _ref3$withoutGoogleFo === void 0 ? false : _ref3$withoutGoogleFo;
543
534
  var _useContext = React.useContext(FontsContext),
544
- _useContext$setGoogle = _useContext.setGoogleFonts,
545
- setGoogleFonts = _useContext$setGoogle === void 0 ? null : _useContext$setGoogle,
546
- _useContext$systemFon = _useContext.systemFonts,
547
- systemFonts = _useContext$systemFon === void 0 ? null : _useContext$systemFon,
548
- _useContext$googleFon = _useContext.googleFonts,
549
- googleFonts = _useContext$googleFon === void 0 ? null : _useContext$googleFon,
550
- _useContext$customFon = _useContext.customFonts,
551
- customFonts = _useContext$customFon === void 0 ? null : _useContext$customFon;
552
-
535
+ _useContext$setGoogle = _useContext.setGoogleFonts,
536
+ setGoogleFonts = _useContext$setGoogle === void 0 ? null : _useContext$setGoogle,
537
+ _useContext$systemFon = _useContext.systemFonts,
538
+ systemFonts = _useContext$systemFon === void 0 ? null : _useContext$systemFon,
539
+ _useContext$googleFon = _useContext.googleFonts,
540
+ googleFonts = _useContext$googleFon === void 0 ? null : _useContext$googleFon,
541
+ _useContext$customFon = _useContext.customFonts,
542
+ customFonts = _useContext$customFon === void 0 ? null : _useContext$customFon;
553
543
  useGoogleFonts({
554
544
  disabled: withoutGoogleFonts || googleFonts !== null && googleFonts.length > 0,
555
545
  setFonts: setGoogleFonts
@@ -574,21 +564,18 @@ var defaultProps$b = {
574
564
  };
575
565
  var FontsProvider = function FontsProvider(_ref4) {
576
566
  var systemFonts = _ref4.systemFonts,
577
- customFonts = _ref4.customFonts,
578
- children = _ref4.children;
579
-
567
+ customFonts = _ref4.customFonts,
568
+ children = _ref4.children;
580
569
  var _useFonts = useFonts(),
581
- _useFonts$systemFonts = _useFonts.systemFonts,
582
- previousSystemFonts = _useFonts$systemFonts === void 0 ? null : _useFonts$systemFonts,
583
- _useFonts$googleFonts = _useFonts.googleFonts,
584
- previousGoogleFonts = _useFonts$googleFonts === void 0 ? null : _useFonts$googleFonts,
585
- previousCustomFonts = _useFonts.customFonts;
586
-
570
+ _useFonts$systemFonts = _useFonts.systemFonts,
571
+ previousSystemFonts = _useFonts$systemFonts === void 0 ? null : _useFonts$systemFonts,
572
+ _useFonts$googleFonts = _useFonts.googleFonts,
573
+ previousGoogleFonts = _useFonts$googleFonts === void 0 ? null : _useFonts$googleFonts,
574
+ previousCustomFonts = _useFonts.customFonts;
587
575
  var _useState3 = React.useState(null),
588
- _useState4 = _slicedToArray__default["default"](_useState3, 2),
589
- googleFonts = _useState4[0],
590
- setGoogleFonts = _useState4[1];
591
-
576
+ _useState4 = _slicedToArray__default["default"](_useState3, 2),
577
+ googleFonts = _useState4[0],
578
+ setGoogleFonts = _useState4[1];
592
579
  var fonts = React.useMemo(function () {
593
580
  return {
594
581
  systemFonts: uniqBy__default["default"]([].concat(_toConsumableArray__default["default"](previousSystemFonts || []), _toConsumableArray__default["default"](systemFonts || [])), function (font) {
@@ -617,14 +604,12 @@ var useForm = function useForm() {
617
604
  };
618
605
  var useFormValue = function useFormValue() {
619
606
  var _useForm = useForm(),
620
- value = _useForm.value;
621
-
607
+ value = _useForm.value;
622
608
  return value;
623
609
  };
624
610
  var useFormSetValue = function useFormSetValue() {
625
611
  var _useForm2 = useForm(),
626
- setValue = _useForm2.setValue;
627
-
612
+ setValue = _useForm2.setValue;
628
613
  return setValue;
629
614
  };
630
615
  var propTypes$a = {
@@ -636,8 +621,8 @@ var propTypes$a = {
636
621
  var defaultProps$a = {};
637
622
  var FormProvider = function FormProvider(_ref) {
638
623
  var value = _ref.value,
639
- setValue = _ref.setValue,
640
- children = _ref.children;
624
+ setValue = _ref.setValue,
625
+ children = _ref.children;
641
626
  return /*#__PURE__*/React__default["default"].createElement(FormContext.Provider, {
642
627
  value: {
643
628
  value: value,
@@ -655,12 +640,11 @@ var useGoogleApiClient = function useGoogleApiClient() {
655
640
  var withGoogleApiClient = function withGoogleApiClient(WrappedComponent) {
656
641
  var getDisplayName = function getDisplayName(_ref) {
657
642
  var _ref$displayName = _ref.displayName,
658
- displayName = _ref$displayName === void 0 ? null : _ref$displayName,
659
- _ref$name = _ref.name,
660
- name = _ref$name === void 0 ? null : _ref$name;
643
+ displayName = _ref$displayName === void 0 ? null : _ref$displayName,
644
+ _ref$name = _ref.name,
645
+ name = _ref$name === void 0 ? null : _ref$name;
661
646
  return displayName || name || 'Component';
662
647
  };
663
-
664
648
  var WithGoogleApiClientComponent = function WithGoogleApiClientComponent(props) {
665
649
  return /*#__PURE__*/React__default["default"].createElement(GoogleApiClientContext.Consumer, null, function (client) {
666
650
  return /*#__PURE__*/React__default["default"].createElement(WrappedComponent, Object.assign({
@@ -668,7 +652,6 @@ var withGoogleApiClient = function withGoogleApiClient(WrappedComponent) {
668
652
  }, props));
669
653
  });
670
654
  };
671
-
672
655
  WithGoogleApiClientComponent.displayName = "WithGoogleApiClient(".concat(getDisplayName(WrappedComponent), ")");
673
656
  return WithGoogleApiClientComponent;
674
657
  };
@@ -678,15 +661,12 @@ var propTypes$9 = {
678
661
  var defaultProps$9 = {};
679
662
  var GoogleApiClientProvider = function GoogleApiClientProvider(_ref2) {
680
663
  var children = _ref2.children;
681
-
682
664
  var _useGoogleKeys = useGoogleKeys(),
683
- apiKey = _useGoogleKeys.apiKey;
684
-
665
+ apiKey = _useGoogleKeys.apiKey;
685
666
  var _useState = React.useState(null),
686
- _useState2 = _slicedToArray__default["default"](_useState, 2),
687
- client = _useState2[0],
688
- setClient = _useState2[1];
689
-
667
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
668
+ client = _useState2[0],
669
+ setClient = _useState2[1];
690
670
  React.useEffect(function () {
691
671
  services.loadGoogleApi().then(function (gapi) {
692
672
  return gapi.client.init({
@@ -712,12 +692,11 @@ var useGoogleMapsClient = function useGoogleMapsClient() {
712
692
  var withGoogleMapsClient = function withGoogleMapsClient(WrappedComponent) {
713
693
  var getDisplayName = function getDisplayName(_ref) {
714
694
  var _ref$displayName = _ref.displayName,
715
- displayName = _ref$displayName === void 0 ? null : _ref$displayName,
716
- _ref$name = _ref.name,
717
- name = _ref$name === void 0 ? null : _ref$name;
695
+ displayName = _ref$displayName === void 0 ? null : _ref$displayName,
696
+ _ref$name = _ref.name,
697
+ name = _ref$name === void 0 ? null : _ref$name;
718
698
  return displayName || name || 'Component';
719
699
  };
720
-
721
700
  var WithGoogleMapsClientComponent = function WithGoogleMapsClientComponent(props) {
722
701
  return /*#__PURE__*/React__default["default"].createElement(GoogleMapsClientContext.Consumer, null, function (client) {
723
702
  return /*#__PURE__*/React__default["default"].createElement(WrappedComponent, Object.assign({
@@ -725,7 +704,6 @@ var withGoogleMapsClient = function withGoogleMapsClient(WrappedComponent) {
725
704
  }, props));
726
705
  });
727
706
  };
728
-
729
707
  WithGoogleMapsClientComponent.displayName = "WithGoogleMapsClient(".concat(getDisplayName(WrappedComponent), ")");
730
708
  return WithGoogleMapsClientComponent;
731
709
  };
@@ -740,19 +718,15 @@ var defaultProps$8 = {
740
718
  };
741
719
  var GoogleMapsClientProvider = function GoogleMapsClientProvider(_ref2) {
742
720
  var children = _ref2.children,
743
- locale = _ref2.locale,
744
- libraries = _ref2.libraries;
745
-
721
+ locale = _ref2.locale,
722
+ libraries = _ref2.libraries;
746
723
  var _useGoogleKeys = useGoogleKeys(),
747
- apiKey = _useGoogleKeys.apiKey;
748
-
724
+ apiKey = _useGoogleKeys.apiKey;
749
725
  var exisitingClient = useGoogleMapsClient();
750
-
751
726
  var _useState = React.useState(exisitingClient),
752
- _useState2 = _slicedToArray__default["default"](_useState, 2),
753
- client = _useState2[0],
754
- setClient = _useState2[1];
755
-
727
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
728
+ client = _useState2[0],
729
+ setClient = _useState2[1];
756
730
  React.useEffect(function () {
757
731
  if (exisitingClient === null) {
758
732
  services.loadGoogleMaps({
@@ -778,17 +752,14 @@ var LocalesContext = /*#__PURE__*/React__default["default"].createContext({
778
752
  });
779
753
  var useLocales = function useLocales() {
780
754
  var _useContext = React.useContext(LocalesContext),
781
- locales = _useContext.locales;
782
-
755
+ locales = _useContext.locales;
783
756
  return locales;
784
757
  };
785
758
  var useOtherLocales = function useOtherLocales() {
786
759
  var _useLocales = useLocales(),
787
- locales = _useLocales.locales;
788
-
760
+ locales = _useLocales.locales;
789
761
  var _useIntl = reactIntl.useIntl(),
790
- locale = _useIntl.locale;
791
-
762
+ locale = _useIntl.locale;
792
763
  var otherLocales = React.useMemo(function () {
793
764
  return locales.filter(function (it) {
794
765
  return it !== locale;
@@ -805,7 +776,7 @@ var defaultProps$7 = {
805
776
  };
806
777
  var LocalesProvider = function LocalesProvider(_ref) {
807
778
  var locales = _ref.locales,
808
- children = _ref.children;
779
+ children = _ref.children;
809
780
  return /*#__PURE__*/React__default["default"].createElement(LocalesContext.Provider, {
810
781
  value: {
811
782
  locales: locales
@@ -825,10 +796,10 @@ var withModals = function withModals(WrappedComponent) {
825
796
  var WithModalsComponent = function WithModalsComponent(props) {
826
797
  return /*#__PURE__*/React__default["default"].createElement(ModalsContext.Consumer, null, function (_ref) {
827
798
  var modals = _ref.modals,
828
- container = _ref.container,
829
- setContainer = _ref.setContainer,
830
- register = _ref.register,
831
- unregister = _ref.unregister;
799
+ container = _ref.container,
800
+ setContainer = _ref.setContainer,
801
+ register = _ref.register,
802
+ unregister = _ref.unregister;
832
803
  return /*#__PURE__*/React__default["default"].createElement(WrappedComponent, Object.assign({
833
804
  modalsContainer: container,
834
805
  setModalsContainer: setContainer,
@@ -838,32 +809,28 @@ var withModals = function withModals(WrappedComponent) {
838
809
  }, props));
839
810
  });
840
811
  };
841
-
842
812
  WithModalsComponent.displayName = "WithModals(".concat(utils.getDisplayName(WrappedComponent), ")");
843
813
  return WithModalsComponent;
844
814
  };
845
815
  var propTypes$6 = {
846
816
  children: PropTypes__default["default"].node.isRequired,
847
817
  container: PropTypes__default["default"].object // eslint-disable-line
848
-
849
818
  };
819
+
850
820
  var defaultProps$6 = {
851
821
  container: null
852
822
  };
853
823
  var ModalsProvider = function ModalsProvider(_ref2) {
854
824
  var children = _ref2.children,
855
- initialContainer = _ref2.container;
856
-
825
+ initialContainer = _ref2.container;
857
826
  var _useState = React.useState(initialContainer),
858
- _useState2 = _slicedToArray__default["default"](_useState, 2),
859
- container = _useState2[0],
860
- setContainer = _useState2[1];
861
-
827
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
828
+ container = _useState2[0],
829
+ setContainer = _useState2[1];
862
830
  var _useState3 = React.useState([]),
863
- _useState4 = _slicedToArray__default["default"](_useState3, 2),
864
- modals = _useState4[0],
865
- setModals = _useState4[1];
866
-
831
+ _useState4 = _slicedToArray__default["default"](_useState3, 2),
832
+ modals = _useState4[0],
833
+ setModals = _useState4[1];
867
834
  var modalsRef = React.useRef(modals);
868
835
  var register = React.useCallback(function (id) {
869
836
  var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
@@ -880,7 +847,6 @@ var ModalsProvider = function ModalsProvider(_ref2) {
880
847
  var modalId = _ref3.id;
881
848
  return modalId === id;
882
849
  });
883
-
884
850
  if (foundIndex !== -1) {
885
851
  var newModals = currentModals.filter(function (_ref4) {
886
852
  var modalId = _ref4.id;
@@ -913,10 +879,10 @@ var withPanels = function withPanels(WrappedComponent) {
913
879
  var WithPanelsComponent = function WithPanelsComponent(props) {
914
880
  return /*#__PURE__*/React__default["default"].createElement(PanelsContext.Consumer, null, function (_ref) {
915
881
  var panels = _ref.panels,
916
- setContainer = _ref.setContainer,
917
- container = _ref.container,
918
- register = _ref.register,
919
- unregister = _ref.unregister;
882
+ setContainer = _ref.setContainer,
883
+ container = _ref.container,
884
+ register = _ref.register,
885
+ unregister = _ref.unregister;
920
886
  return /*#__PURE__*/React__default["default"].createElement(WrappedComponent, Object.assign({
921
887
  panelsContainer: container,
922
888
  setPanelsContainer: setContainer,
@@ -926,32 +892,28 @@ var withPanels = function withPanels(WrappedComponent) {
926
892
  }, props));
927
893
  });
928
894
  };
929
-
930
895
  WithPanelsComponent.displayName = "WithPanels(".concat(utils.getDisplayName(WrappedComponent), ")");
931
896
  return WithPanelsComponent;
932
897
  };
933
898
  var propTypes$5 = {
934
899
  children: PropTypes__default["default"].node.isRequired,
935
900
  container: PropTypes__default["default"].object // eslint-disable-line
936
-
937
901
  };
902
+
938
903
  var defaultProps$5 = {
939
904
  container: null
940
905
  };
941
906
  var PanelsProvider = function PanelsProvider(_ref2) {
942
907
  var children = _ref2.children,
943
- initialContainer = _ref2.container;
944
-
908
+ initialContainer = _ref2.container;
945
909
  var _useState = React.useState(initialContainer),
946
- _useState2 = _slicedToArray__default["default"](_useState, 2),
947
- container = _useState2[0],
948
- setContainer = _useState2[1];
949
-
910
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
911
+ container = _useState2[0],
912
+ setContainer = _useState2[1];
950
913
  var _useState3 = React.useState([]),
951
- _useState4 = _slicedToArray__default["default"](_useState3, 2),
952
- panels = _useState4[0],
953
- setPanels = _useState4[1];
954
-
914
+ _useState4 = _slicedToArray__default["default"](_useState3, 2),
915
+ panels = _useState4[0],
916
+ setPanels = _useState4[1];
955
917
  var panelsRef = React.useRef(panels);
956
918
  var register = React.useCallback(function (id) {
957
919
  var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
@@ -968,7 +930,6 @@ var PanelsProvider = function PanelsProvider(_ref2) {
968
930
  var modalId = _ref3.id;
969
931
  return modalId === id;
970
932
  });
971
-
972
933
  if (foundIndex !== -1) {
973
934
  var newPanels = currentPanels.filter(function (_ref4) {
974
935
  var modalId = _ref4.id;
@@ -998,9 +959,8 @@ var usePanneau = function usePanneau() {
998
959
  };
999
960
  var usePanneauResources = function usePanneauResources() {
1000
961
  var _ref = usePanneau() || {},
1001
- _ref$resources = _ref.resources,
1002
- resources = _ref$resources === void 0 ? [] : _ref$resources;
1003
-
962
+ _ref$resources = _ref.resources,
963
+ resources = _ref$resources === void 0 ? [] : _ref$resources;
1004
964
  return resources;
1005
965
  };
1006
966
  var usePanneauResource = function usePanneauResource(id) {
@@ -1011,13 +971,11 @@ var usePanneauResource = function usePanneauResource(id) {
1011
971
  };
1012
972
  var usePanneauColorScheme = function usePanneauColorScheme() {
1013
973
  var _ref2 = usePanneau() || {},
1014
- _ref2$theme = _ref2.theme,
1015
- theme = _ref2$theme === void 0 ? {} : _ref2$theme;
1016
-
974
+ _ref2$theme = _ref2.theme,
975
+ theme = _ref2$theme === void 0 ? {} : _ref2$theme;
1017
976
  var _ref3 = theme || {},
1018
- _ref3$colorScheme = _ref3.colorScheme,
1019
- colorScheme = _ref3$colorScheme === void 0 ? 'light' : _ref3$colorScheme;
1020
-
977
+ _ref3$colorScheme = _ref3.colorScheme,
978
+ colorScheme = _ref3$colorScheme === void 0 ? 'light' : _ref3$colorScheme;
1021
979
  return colorScheme === 'dark' ? {
1022
980
  background: 'dark',
1023
981
  text: 'light'
@@ -1028,45 +986,37 @@ var usePanneauColorScheme = function usePanneauColorScheme() {
1028
986
  };
1029
987
  var usePanneauComponents = function usePanneauComponents() {
1030
988
  var _ref4 = usePanneau() || {},
1031
- _ref4$components = _ref4.components,
1032
- components = _ref4$components === void 0 ? {} : _ref4$components;
1033
-
989
+ _ref4$components = _ref4.components,
990
+ components = _ref4$components === void 0 ? {} : _ref4$components;
1034
991
  return components;
1035
992
  };
1036
993
  var usePanneauComponent = function usePanneauComponent(namespace, name) {
1037
994
  var _ref5 = usePanneau() || {},
1038
- _ref5$components = _ref5.components,
1039
- components = _ref5$components === void 0 ? {} : _ref5$components;
1040
-
995
+ _ref5$components = _ref5.components,
996
+ components = _ref5$components === void 0 ? {} : _ref5$components;
1041
997
  var path = namespace !== null ? "".concat(namespace, ".").concat(name) : name || null;
1042
998
  var component = components[path] || null;
1043
-
1044
999
  if (isString__default["default"](component)) {
1045
1000
  return component;
1046
1001
  }
1047
-
1048
1002
  if (isObject__default["default"](component) && isString__default["default"](component === null || component === void 0 ? void 0 : component.componnent)) {
1049
1003
  // eslint-disable-next-line no-unused-vars
1050
1004
  component.component;
1051
- _objectWithoutProperties__default["default"](component, _excluded$3);
1052
-
1005
+ _objectWithoutProperties__default["default"](component, _excluded$3);
1053
1006
  return component.component;
1054
1007
  }
1055
-
1056
1008
  return null;
1057
1009
  };
1058
1010
  var usePanneauAuth = function usePanneauAuth() {
1059
1011
  var _ref6 = usePanneau() || {},
1060
- _ref6$auth = _ref6.auth,
1061
- auth = _ref6$auth === void 0 ? {} : _ref6$auth;
1062
-
1012
+ _ref6$auth = _ref6.auth,
1013
+ auth = _ref6$auth === void 0 ? {} : _ref6$auth;
1063
1014
  return auth;
1064
1015
  };
1065
1016
  var usePanneauSettings = function usePanneauSettings() {
1066
1017
  var _ref7 = usePanneau() || {},
1067
- _ref7$settings = _ref7.settings,
1068
- settings = _ref7$settings === void 0 ? {} : _ref7$settings;
1069
-
1018
+ _ref7$settings = _ref7.settings,
1019
+ settings = _ref7$settings === void 0 ? {} : _ref7$settings;
1070
1020
  return settings;
1071
1021
  };
1072
1022
  var propTypes$4 = {
@@ -1076,7 +1026,7 @@ var propTypes$4 = {
1076
1026
  var defaultProps$4 = {};
1077
1027
  var PanneauProvider = function PanneauProvider(_ref8) {
1078
1028
  var definition = _ref8.definition,
1079
- children = _ref8.children;
1029
+ children = _ref8.children;
1080
1030
  return /*#__PURE__*/React__default["default"].createElement(PanneauContext.Provider, {
1081
1031
  value: definition
1082
1032
  }, children);
@@ -1096,7 +1046,7 @@ var propTypes$3 = {
1096
1046
  var defaultProps$3 = {};
1097
1047
  var ResourceProvider = function ResourceProvider(_ref) {
1098
1048
  var resource = _ref.resource,
1099
- children = _ref.children;
1049
+ children = _ref.children;
1100
1050
  return /*#__PURE__*/React__default["default"].createElement(ResourceContext.Provider, {
1101
1051
  value: resource
1102
1052
  }, children);
@@ -1108,18 +1058,16 @@ ResourceProvider.defaultProps = defaultProps$3;
1108
1058
  var RoutesContext = /*#__PURE__*/React__default["default"].createContext(null);
1109
1059
  var useRoutes = function useRoutes() {
1110
1060
  var _useContext = React.useContext(RoutesContext),
1111
- routes = _useContext.routes;
1112
-
1061
+ routes = _useContext.routes;
1113
1062
  return routes;
1114
1063
  };
1115
1064
  var useUrlGenerator = function useUrlGenerator() {
1116
1065
  var _useContext2 = React.useContext(RoutesContext),
1117
- routes = _useContext2.routes,
1118
- basePath = _useContext2.basePath;
1119
-
1066
+ routes = _useContext2.routes,
1067
+ basePath = _useContext2.basePath;
1120
1068
  var urlGenerator = React.useCallback(function (key, data) {
1121
- var url = reactRouter.generatePath(routes[key], data); // console.log('urlGenerator', basePath, routes[key], url, data);
1122
-
1069
+ var url = reactRouter.generatePath(routes[key], data);
1070
+ // console.log('urlGenerator', basePath, routes[key], url, data);
1123
1071
  return basePath !== null ? "".concat(basePath.replace(/\/$/, ''), "/").concat(url.replace(/^\//, '')) : url;
1124
1072
  }, [reactRouter.generatePath, routes, basePath]);
1125
1073
  return urlGenerator;
@@ -1131,18 +1079,15 @@ var useRoutePush = function useRoutePush() {
1131
1079
  for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
1132
1080
  args[_key - 2] = arguments[_key];
1133
1081
  }
1134
-
1135
1082
  if (isString__default["default"](route)) {
1136
1083
  var _history;
1137
-
1138
1084
  (_history = history).push.apply(_history, [url(route, data)].concat(args));
1139
1085
  } else {
1140
1086
  var _ref = route || {},
1141
- _ref$pathname = _ref.pathname,
1142
- pathname = _ref$pathname === void 0 ? null : _ref$pathname,
1143
- _ref$search = _ref.search,
1144
- search = _ref$search === void 0 ? null : _ref$search;
1145
-
1087
+ _ref$pathname = _ref.pathname,
1088
+ pathname = _ref$pathname === void 0 ? null : _ref$pathname,
1089
+ _ref$search = _ref.search,
1090
+ search = _ref$search === void 0 ? null : _ref$search;
1146
1091
  navigate.apply(void 0, [{
1147
1092
  pathname: url(pathname, data),
1148
1093
  search: search
@@ -1171,8 +1116,8 @@ var defaultProps$2 = {
1171
1116
  };
1172
1117
  var RoutesProvider = function RoutesProvider(_ref2) {
1173
1118
  var routes = _ref2.routes,
1174
- basePath = _ref2.basePath,
1175
- children = _ref2.children;
1119
+ basePath = _ref2.basePath,
1120
+ children = _ref2.children;
1176
1121
  return /*#__PURE__*/React__default["default"].createElement(RoutesContext.Provider, {
1177
1122
  value: {
1178
1123
  routes: routes,
@@ -1196,14 +1141,13 @@ var defaultProps$1 = {
1196
1141
  };
1197
1142
  var TrackingProvider = function TrackingProvider(_ref) {
1198
1143
  var variables = _ref.variables,
1199
- children = _ref.children;
1144
+ children = _ref.children;
1200
1145
  var contextTracking = useTracking() || null;
1201
1146
  var tracking$1 = React.useMemo(function () {
1202
1147
  if (contextTracking !== null) {
1203
1148
  contextTracking.setVariables(variables);
1204
1149
  return contextTracking;
1205
1150
  }
1206
-
1207
1151
  return new core.Tracking({
1208
1152
  variables: variables
1209
1153
  });
@@ -1218,31 +1162,61 @@ TrackingProvider.defaultProps = defaultProps$1;
1218
1162
  /**
1219
1163
  * Locale loader
1220
1164
  */
1165
+ var loaders = {};
1166
+ var events = new EventEmitter__default["default"]();
1167
+ function loadPackage(name, loader) {
1168
+ if (typeof loaders[name] === 'undefined') {
1169
+ loaders[name] = {
1170
+ loader: loader().then(function (response) {
1171
+ loaders[name].loader = null;
1172
+ loaders[name].loaded = true;
1173
+ loaders[name].resource = response;
1174
+ events.emit("loaded:".concat(name), response);
1175
+ return response;
1176
+ }),
1177
+ loaded: false,
1178
+ resource: null
1179
+ };
1180
+ }
1181
+ return new Promise(function (resolve) {
1182
+ var _ref = loaders[name] || {},
1183
+ _ref$loaded = _ref.loaded,
1184
+ loaded = _ref$loaded === void 0 ? false : _ref$loaded,
1185
+ resource = _ref.resource;
1186
+ if (loaded === true) {
1187
+ resolve(resource);
1188
+ } else {
1189
+ events.once("loaded:".concat(name), function (response) {
1190
+ resolve(response);
1191
+ });
1192
+ }
1193
+ });
1194
+ }
1221
1195
 
1196
+ /**
1197
+ * Locale loader
1198
+ */
1222
1199
  var packageCache = null;
1223
-
1224
1200
  var useUppyCore = function useUppyCore() {
1225
1201
  // transport
1226
1202
  var _useState = React.useState({
1227
- "package": packageCache
1228
- }),
1229
- _useState2 = _slicedToArray__default["default"](_useState, 2),
1230
- loadedPackage = _useState2[0]["package"],
1231
- setLoadedPackage = _useState2[1];
1232
-
1203
+ "package": packageCache
1204
+ }),
1205
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
1206
+ loadedPackage = _useState2[0]["package"],
1207
+ setLoadedPackage = _useState2[1];
1233
1208
  React.useEffect(function () {
1234
1209
  var canceled = false;
1235
-
1236
1210
  if (loadedPackage !== null) {
1237
1211
  return function () {
1238
1212
  canceled = true;
1239
1213
  };
1240
1214
  }
1241
-
1242
- Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/core')); }).then(function (_ref) {
1215
+ loadPackage('@uppy/core', function () {
1216
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/core')); });
1217
+ }).then(function (_ref) {
1243
1218
  var Uppy = _ref["default"];
1244
1219
  packageCache = Uppy;
1245
-
1246
1220
  if (!canceled) {
1247
1221
  setLoadedPackage({
1248
1222
  "package": Uppy
@@ -1259,42 +1233,39 @@ var useUppyCore = function useUppyCore() {
1259
1233
  /**
1260
1234
  * Locale loader
1261
1235
  */
1262
-
1263
1236
  var packagesCache$2 = {};
1264
1237
  var defaultPackagesMap$2 = {
1265
1238
  fr: function fr() {
1266
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/locales/lib/fr_FR')); });
1239
+ return loadPackage('@uppy/locales/lib/fr_FR', function () {
1240
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/locales/lib/fr_FR')); });
1241
+ });
1267
1242
  },
1268
1243
  en: function en() {
1269
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/locales/lib/en_US')); });
1244
+ return loadPackage('@uppy/locales/lib/en_US', function () {
1245
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/locales/lib/en_US')); });
1246
+ });
1270
1247
  }
1271
1248
  };
1272
-
1273
1249
  var useUppyLocale = function useUppyLocale(locale) {
1274
1250
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1275
- _ref$packagesMap = _ref.packagesMap,
1276
- packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap$2 : _ref$packagesMap;
1277
-
1251
+ _ref$packagesMap = _ref.packagesMap,
1252
+ packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap$2 : _ref$packagesMap;
1278
1253
  var _useState = React.useState({
1279
- "package": packagesCache$2[locale] || null
1280
- }),
1281
- _useState2 = _slicedToArray__default["default"](_useState, 2),
1282
- loadedPackage = _useState2[0]["package"],
1283
- setLoadedPackage = _useState2[1];
1284
-
1254
+ "package": packagesCache$2[locale] || null
1255
+ }),
1256
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
1257
+ loadedPackage = _useState2[0]["package"],
1258
+ setLoadedPackage = _useState2[1];
1285
1259
  var packageLoader = packagesMap[locale] || null;
1286
1260
  React.useEffect(function () {
1287
1261
  var canceled = false;
1288
-
1289
1262
  if (loadedPackage !== null || packageLoader === null) {
1290
1263
  return function () {
1291
1264
  canceled = true;
1292
1265
  };
1293
1266
  }
1294
-
1295
1267
  packageLoader().then(function (_ref2) {
1296
1268
  var dep = _ref2["default"];
1297
-
1298
1269
  // packagesCache[locale] = dep;
1299
1270
  if (!canceled) {
1300
1271
  setLoadedPackage({
@@ -1310,55 +1281,59 @@ var useUppyLocale = function useUppyLocale(locale) {
1310
1281
  };
1311
1282
 
1312
1283
  var _excluded$2 = ["default"];
1284
+
1313
1285
  /**
1314
1286
  * Locale loader
1315
1287
  */
1316
-
1317
1288
  var packagesCache$1 = {};
1318
1289
  var defaultPackagesMap$1 = {
1319
1290
  webcam: function webcam() {
1320
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/webcam')); });
1291
+ return loadPackage('@uppy/webcam', function () {
1292
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/webcam')); });
1293
+ });
1321
1294
  },
1322
1295
  facebook: function facebook() {
1323
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/facebook')); });
1296
+ return loadPackage('@uppy/facebook', function () {
1297
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/facebook')); });
1298
+ });
1324
1299
  },
1325
1300
  instagram: function instagram() {
1326
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/instagram')); });
1301
+ return loadPackage('@uppy/instagram', function () {
1302
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/instagram')); });
1303
+ });
1327
1304
  },
1328
1305
  dropbox: function dropbox() {
1329
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/dropbox')); });
1306
+ return loadPackage('@uppy/dropbox', function () {
1307
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/dropbox')); });
1308
+ });
1330
1309
  },
1331
1310
  'google-drive': function googleDrive() {
1332
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/google-drive')); });
1311
+ return loadPackage('@uppy/google-drive', function () {
1312
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/google-drive')); });
1313
+ });
1333
1314
  }
1334
1315
  };
1335
-
1336
1316
  var useUppySources = function useUppySources(sources) {
1337
1317
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1338
- _ref$packagesMap = _ref.packagesMap,
1339
- packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap$1 : _ref$packagesMap;
1340
-
1318
+ _ref$packagesMap = _ref.packagesMap,
1319
+ packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap$1 : _ref$packagesMap;
1341
1320
  // transport
1342
1321
  var _useState = React.useState({
1343
- packages: sources.reduce(function (map, source) {
1344
- var sourcePackage = packagesCache$1[source] || null;
1345
-
1346
- if (sourcePackage === null) {
1347
- return map;
1348
- }
1349
-
1350
- return _objectSpread__default["default"](_objectSpread__default["default"]({}, map), {}, _defineProperty__default["default"]({}, source, sourcePackage));
1351
- }, null)
1352
- }),
1353
- _useState2 = _slicedToArray__default["default"](_useState, 2),
1354
- loadedPackages = _useState2[0].packages,
1355
- setLoadedPackages = _useState2[1];
1356
-
1322
+ packages: sources.reduce(function (map, source) {
1323
+ var sourcePackage = packagesCache$1[source] || null;
1324
+ if (sourcePackage === null) {
1325
+ return map;
1326
+ }
1327
+ return _objectSpread__default["default"](_objectSpread__default["default"]({}, map), {}, _defineProperty__default["default"]({}, source, sourcePackage));
1328
+ }, null)
1329
+ }),
1330
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
1331
+ loadedPackages = _useState2[0].packages,
1332
+ setLoadedPackages = _useState2[1];
1357
1333
  var sourcesToLoad = React.useMemo(function () {
1358
1334
  if (loadedPackages === null) {
1359
1335
  return sources;
1360
1336
  }
1361
-
1362
1337
  var sourcesLoaded = Object.keys(loadedPackages);
1363
1338
  return sources.filter(function (source) {
1364
1339
  return sourcesLoaded.indexOf(source) === -1;
@@ -1366,13 +1341,11 @@ var useUppySources = function useUppySources(sources) {
1366
1341
  }, [sources, loadedPackages]);
1367
1342
  React.useEffect(function () {
1368
1343
  var canceled = false;
1369
-
1370
1344
  if (sourcesToLoad.length === 0) {
1371
1345
  return function () {
1372
1346
  canceled = true;
1373
1347
  };
1374
1348
  }
1375
-
1376
1349
  Promise.all(sourcesToLoad.map(function (source) {
1377
1350
  return packagesMap[source] || null;
1378
1351
  }).filter(function (it) {
@@ -1382,17 +1355,14 @@ var useUppySources = function useUppySources(sources) {
1382
1355
  })).then(function (packagesLoaded) {
1383
1356
  var newLoadedPackages = sourcesToLoad.reduce(function (map, source, index) {
1384
1357
  var _packagesLoaded$index = packagesLoaded[index],
1385
- pack = _packagesLoaded$index["default"],
1386
- others = _objectWithoutProperties__default["default"](_packagesLoaded$index, _excluded$2);
1387
-
1358
+ pack = _packagesLoaded$index["default"],
1359
+ others = _objectWithoutProperties__default["default"](_packagesLoaded$index, _excluded$2);
1388
1360
  return _objectSpread__default["default"](_objectSpread__default["default"]({}, map), {}, _defineProperty__default["default"]({}, source, Object.keys(others).reduce(function (otherMap, key) {
1389
1361
  otherMap[key] = others[key]; // eslint-disable-line no-param-reassign
1390
-
1391
1362
  return otherMap;
1392
1363
  }, pack)));
1393
1364
  }, {});
1394
1365
  packagesCache$1 = _objectSpread__default["default"](_objectSpread__default["default"]({}, packagesCache$1), newLoadedPackages);
1395
-
1396
1366
  if (!canceled) {
1397
1367
  setLoadedPackages({
1398
1368
  packages: newLoadedPackages
@@ -1407,57 +1377,55 @@ var useUppySources = function useUppySources(sources) {
1407
1377
  };
1408
1378
 
1409
1379
  var _excluded$1 = ["default"];
1380
+
1410
1381
  /**
1411
1382
  * Locale loader
1412
1383
  */
1413
-
1414
1384
  var packagesCache = {};
1415
1385
  var defaultPackagesMap = {
1416
1386
  transloadit: function transloadit() {
1417
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/transloadit')); });
1387
+ return loadPackage('@uppy/transloadit', function () {
1388
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/transloadit')); });
1389
+ });
1418
1390
  },
1419
1391
  tus: function tus() {
1420
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/tus')); });
1392
+ return loadPackage('@uppy/tus', function () {
1393
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/tus')); });
1394
+ });
1421
1395
  },
1422
1396
  xhr: function xhr() {
1423
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/xhr-upload')); });
1397
+ return loadPackage('@uppy/xhr-upload', function () {
1398
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/xhr-upload')); });
1399
+ });
1424
1400
  }
1425
1401
  };
1426
-
1427
1402
  var useUppyTransport = function useUppyTransport(transport) {
1428
1403
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1429
- _ref$packagesMap = _ref.packagesMap,
1430
- packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap : _ref$packagesMap;
1431
-
1404
+ _ref$packagesMap = _ref.packagesMap,
1405
+ packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap : _ref$packagesMap;
1432
1406
  // transport
1433
1407
  var _useState = React.useState({
1434
- "package": packagesCache[transport] || null
1435
- }),
1436
- _useState2 = _slicedToArray__default["default"](_useState, 2),
1437
- loadedPackage = _useState2[0]["package"],
1438
- setLoadedPackage = _useState2[1];
1439
-
1408
+ "package": packagesCache[transport] || null
1409
+ }),
1410
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
1411
+ loadedPackage = _useState2[0]["package"],
1412
+ setLoadedPackage = _useState2[1];
1440
1413
  var packageLoader = packagesMap[transport] || null;
1441
1414
  React.useEffect(function () {
1442
1415
  var canceled = false;
1443
-
1444
1416
  if (loadedPackage !== null || packageLoader === null) {
1445
1417
  return function () {
1446
1418
  canceled = true;
1447
1419
  };
1448
1420
  }
1449
-
1450
1421
  packageLoader().then(function (_ref2) {
1451
1422
  var pack = _ref2["default"],
1452
- others = _objectWithoutProperties__default["default"](_ref2, _excluded$1);
1453
-
1423
+ others = _objectWithoutProperties__default["default"](_ref2, _excluded$1);
1454
1424
  var dep = Object.keys(others).reduce(function (map, key) {
1455
1425
  map[key] = others[key]; // eslint-disable-line no-param-reassign
1456
-
1457
1426
  return map;
1458
1427
  }, pack);
1459
1428
  packagesCache[transport] = dep;
1460
-
1461
1429
  if (!canceled) {
1462
1430
  setLoadedPackage({
1463
1431
  "package": dep
@@ -1492,7 +1460,6 @@ var convertToMedia = function convertToMedia(it) {
1492
1460
  })
1493
1461
  };
1494
1462
  };
1495
-
1496
1463
  var getTransloaditMediasFromResponse = function getTransloaditMediasFromResponse(response) {
1497
1464
  return response.successful.map(function (it) {
1498
1465
  var transloadit = response.transloadit.find(function (subIt) {
@@ -1515,37 +1482,35 @@ var getTransloaditMediasFromResponse = function getTransloaditMediasFromResponse
1515
1482
  };
1516
1483
 
1517
1484
  var _excluded = ["sources"],
1518
- _excluded2 = ["key", "templateId", "waitForEncoding"];
1485
+ _excluded2 = ["key", "templateId", "waitForEncoding"];
1519
1486
  var UppyContext = /*#__PURE__*/React__default["default"].createContext(null);
1520
1487
  var useUppy = function useUppy() {
1521
1488
  var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1522
- _ref$onComplete = _ref.onComplete,
1523
- onComplete = _ref$onComplete === void 0 ? null : _ref$onComplete,
1524
- _ref$onFail = _ref.onFail,
1525
- onFail = _ref$onFail === void 0 ? null : _ref$onFail,
1526
- _ref$getFileName = _ref.getFileName,
1527
- getFileName = _ref$getFileName === void 0 ? function (_ref2) {
1528
- var _ref2$extension = _ref2.extension,
1489
+ _ref$onComplete = _ref.onComplete,
1490
+ onComplete = _ref$onComplete === void 0 ? null : _ref$onComplete,
1491
+ _ref$onFail = _ref.onFail,
1492
+ onFail = _ref$onFail === void 0 ? null : _ref$onFail,
1493
+ _ref$getFileName = _ref.getFileName,
1494
+ getFileName = _ref$getFileName === void 0 ? function (_ref2) {
1495
+ var _ref2$extension = _ref2.extension,
1529
1496
  extension = _ref2$extension === void 0 ? null : _ref2$extension;
1530
- return "".concat(uuid.v1()).concat(extension !== null ? ".".concat(extension) : '');
1531
- } : _ref$getFileName,
1532
- _ref$meta = _ref.meta,
1533
- meta = _ref$meta === void 0 ? null : _ref$meta,
1534
- _ref$allowMultipleUpl = _ref.allowMultipleUploads,
1535
- allowMultipleUploads = _ref$allowMultipleUpl === void 0 ? false : _ref$allowMultipleUpl,
1536
- _ref$maxNumberOfFiles = _ref.maxNumberOfFiles,
1537
- maxNumberOfFiles = _ref$maxNumberOfFiles === void 0 ? 1 : _ref$maxNumberOfFiles,
1538
- _ref$allowedFileTypes = _ref.allowedFileTypes,
1539
- allowedFileTypes = _ref$allowedFileTypes === void 0 ? null : _ref$allowedFileTypes,
1540
- _ref$autoProceed = _ref.autoProceed,
1541
- autoProceed = _ref$autoProceed === void 0 ? false : _ref$autoProceed,
1542
- _ref$debug = _ref.debug,
1543
- debug = _ref$debug === void 0 ? false : _ref$debug;
1544
-
1497
+ return "".concat(uuid.v1()).concat(extension !== null ? ".".concat(extension) : '');
1498
+ } : _ref$getFileName,
1499
+ _ref$meta = _ref.meta,
1500
+ meta = _ref$meta === void 0 ? null : _ref$meta,
1501
+ _ref$allowMultipleUpl = _ref.allowMultipleUploads,
1502
+ allowMultipleUploads = _ref$allowMultipleUpl === void 0 ? false : _ref$allowMultipleUpl,
1503
+ _ref$maxNumberOfFiles = _ref.maxNumberOfFiles,
1504
+ maxNumberOfFiles = _ref$maxNumberOfFiles === void 0 ? 1 : _ref$maxNumberOfFiles,
1505
+ _ref$allowedFileTypes = _ref.allowedFileTypes,
1506
+ allowedFileTypes = _ref$allowedFileTypes === void 0 ? null : _ref$allowedFileTypes,
1507
+ _ref$autoProceed = _ref.autoProceed,
1508
+ autoProceed = _ref$autoProceed === void 0 ? false : _ref$autoProceed,
1509
+ _ref$debug = _ref.debug,
1510
+ debug = _ref$debug === void 0 ? false : _ref$debug;
1545
1511
  var _ref3 = React.useContext(UppyContext) || null,
1546
- buildUppy = _ref3.buildUppy,
1547
- transport = _ref3.transport;
1548
-
1512
+ buildUppy = _ref3.buildUppy,
1513
+ transport = _ref3.transport;
1549
1514
  var uppy = React.useMemo(function () {
1550
1515
  return buildUppy !== null ? buildUppy({
1551
1516
  meta: meta,
@@ -1562,23 +1527,19 @@ var useUppy = function useUppy() {
1562
1527
  if (uppy === null) {
1563
1528
  return function () {};
1564
1529
  }
1565
-
1566
1530
  var onUppyComplete = function onUppyComplete(response) {
1567
1531
  var _response$successful = response.successful,
1568
- successful = _response$successful === void 0 ? [] : _response$successful,
1569
- _response$failed = response.failed,
1570
- failed = _response$failed === void 0 ? null : _response$failed;
1532
+ successful = _response$successful === void 0 ? [] : _response$successful,
1533
+ _response$failed = response.failed,
1534
+ failed = _response$failed === void 0 ? null : _response$failed;
1571
1535
  var finalSuccessful = transport === 'transloadit' ? getTransloaditMediasFromResponse(response) : successful;
1572
-
1573
1536
  if (onComplete !== null) {
1574
1537
  onComplete(finalSuccessful);
1575
1538
  }
1576
-
1577
1539
  if (onFail !== null) {
1578
1540
  onFail(failed);
1579
1541
  }
1580
1542
  };
1581
-
1582
1543
  uppy.on('complete', onUppyComplete);
1583
1544
  return function () {
1584
1545
  uppy.off('complete', onUppyComplete);
@@ -1588,14 +1549,12 @@ var useUppy = function useUppy() {
1588
1549
  if (uppy === null) {
1589
1550
  return function () {};
1590
1551
  }
1591
-
1592
1552
  var onUpload = function onUpload(_ref4) {
1593
1553
  var _ref4$fileIDs = _ref4.fileIDs,
1594
- ids = _ref4$fileIDs === void 0 ? [] : _ref4$fileIDs;
1554
+ ids = _ref4$fileIDs === void 0 ? [] : _ref4$fileIDs;
1595
1555
  ids.forEach(function (id) {
1596
1556
  var file = uppy.getFile(id);
1597
1557
  var newName = getFileName(file);
1598
-
1599
1558
  if (newName !== null) {
1600
1559
  uppy.setFileMeta(id, {
1601
1560
  name: newName
@@ -1603,7 +1562,6 @@ var useUppy = function useUppy() {
1603
1562
  }
1604
1563
  });
1605
1564
  };
1606
-
1607
1565
  uppy.on('upload', onUpload);
1608
1566
  return function () {
1609
1567
  uppy.off('upload', onUpload);
@@ -1652,34 +1610,31 @@ var defaultProps = {
1652
1610
  };
1653
1611
  var UppyProvider = function UppyProvider(_ref5) {
1654
1612
  var id = _ref5.id,
1655
- children = _ref5.children,
1656
- providedTransport = _ref5.transport,
1657
- providedLocale = _ref5.locale,
1658
- providedSources = _ref5.sources,
1659
- providedTransloadit = _ref5.transloadit,
1660
- providedCompanion = _ref5.companion,
1661
- providedTus = _ref5.tus,
1662
- providedXhr = _ref5.xhr;
1663
-
1613
+ children = _ref5.children,
1614
+ providedTransport = _ref5.transport,
1615
+ providedLocale = _ref5.locale,
1616
+ providedSources = _ref5.sources,
1617
+ providedTransloadit = _ref5.transloadit,
1618
+ providedCompanion = _ref5.companion,
1619
+ providedTus = _ref5.tus,
1620
+ providedXhr = _ref5.xhr;
1664
1621
  var _useIntl = reactIntl.useIntl(),
1665
- intlLocale = _useIntl.locale;
1666
-
1622
+ intlLocale = _useIntl.locale;
1667
1623
  var _ref6 = React.useContext(UppyContext) || {},
1668
- _ref6$transport = _ref6.transport,
1669
- contextTransport = _ref6$transport === void 0 ? null : _ref6$transport,
1670
- _ref6$locale = _ref6.locale,
1671
- contextLocale = _ref6$locale === void 0 ? null : _ref6$locale,
1672
- _ref6$sources = _ref6.sources,
1673
- contextSources = _ref6$sources === void 0 ? null : _ref6$sources,
1674
- _ref6$transloadit = _ref6.transloadit,
1675
- contextTransloadit = _ref6$transloadit === void 0 ? null : _ref6$transloadit,
1676
- _ref6$companion = _ref6.companion,
1677
- contextCompanion = _ref6$companion === void 0 ? null : _ref6$companion,
1678
- _ref6$tus = _ref6.tus,
1679
- contextTus = _ref6$tus === void 0 ? null : _ref6$tus,
1680
- _ref6$xhr = _ref6.xhr,
1681
- contextXhr = _ref6$xhr === void 0 ? null : _ref6$xhr;
1682
-
1624
+ _ref6$transport = _ref6.transport,
1625
+ contextTransport = _ref6$transport === void 0 ? null : _ref6$transport,
1626
+ _ref6$locale = _ref6.locale,
1627
+ contextLocale = _ref6$locale === void 0 ? null : _ref6$locale,
1628
+ _ref6$sources = _ref6.sources,
1629
+ contextSources = _ref6$sources === void 0 ? null : _ref6$sources,
1630
+ _ref6$transloadit = _ref6.transloadit,
1631
+ contextTransloadit = _ref6$transloadit === void 0 ? null : _ref6$transloadit,
1632
+ _ref6$companion = _ref6.companion,
1633
+ contextCompanion = _ref6$companion === void 0 ? null : _ref6$companion,
1634
+ _ref6$tus = _ref6.tus,
1635
+ contextTus = _ref6$tus === void 0 ? null : _ref6$tus,
1636
+ _ref6$xhr = _ref6.xhr,
1637
+ contextXhr = _ref6$xhr === void 0 ? null : _ref6$xhr;
1683
1638
  var transport = providedTransport || contextTransport || 'xhr';
1684
1639
  var locale = providedLocale || contextLocale || intlLocale;
1685
1640
  var sources = providedSources || contextSources || ['webcam', 'facebook', 'instagram', 'dropbox', 'google-drive'];
@@ -1695,27 +1650,22 @@ var UppyProvider = function UppyProvider(_ref5) {
1695
1650
  if (Uppy === null || uppyLocale === null || uppyTransport === null || uppySources === null) {
1696
1651
  return null;
1697
1652
  }
1698
-
1699
1653
  return function () {
1700
1654
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1701
-
1702
1655
  var _ref7 = opts || {},
1703
- _ref7$sources = _ref7.sources,
1704
- customSources = _ref7$sources === void 0 ? sources : _ref7$sources,
1705
- uppyOpts = _objectWithoutProperties__default["default"](_ref7, _excluded);
1706
-
1656
+ _ref7$sources = _ref7.sources,
1657
+ customSources = _ref7$sources === void 0 ? sources : _ref7$sources,
1658
+ uppyOpts = _objectWithoutProperties__default["default"](_ref7, _excluded);
1707
1659
  var newUppy = new Uppy(_objectSpread__default["default"]({
1708
1660
  id: id,
1709
1661
  locale: uppyLocale
1710
1662
  }, uppyOpts));
1711
-
1712
1663
  if (transport === 'transloadit') {
1713
1664
  var key = transloadit.key,
1714
- templateId = transloadit.templateId,
1715
- _transloadit$waitForE = transloadit.waitForEncoding,
1716
- waitForEncoding = _transloadit$waitForE === void 0 ? true : _transloadit$waitForE,
1717
- transloaditOpts = _objectWithoutProperties__default["default"](transloadit, _excluded2);
1718
-
1665
+ templateId = transloadit.templateId,
1666
+ _transloadit$waitForE = transloadit.waitForEncoding,
1667
+ waitForEncoding = _transloadit$waitForE === void 0 ? true : _transloadit$waitForE,
1668
+ transloaditOpts = _objectWithoutProperties__default["default"](transloadit, _excluded2);
1719
1669
  newUppy.use(uppyTransport, {
1720
1670
  params: _objectSpread__default["default"]({
1721
1671
  auth: {
@@ -1736,22 +1686,18 @@ var UppyProvider = function UppyProvider(_ref5) {
1736
1686
  endpoint: isString__default["default"](xhr) ? xhr : '/upload'
1737
1687
  }, isObject__default["default"](xhr) ? xhr : null));
1738
1688
  }
1739
-
1740
1689
  if (transport === 'transloadit' || companion !== null) {
1741
1690
  return customSources.reduce(function (currentUppy, sourceId) {
1742
1691
  var source = uppySources[sourceId] || null;
1743
-
1744
1692
  if (source === null) {
1745
1693
  return currentUppy;
1746
1694
  }
1747
-
1748
1695
  var _ref8 = companion || {
1749
- url: uppyTransport.COMPANION || null,
1750
- allowedHosts: uppyTransport.COMPANION_PATTERN || null
1751
- },
1752
- companionUrl = _ref8.url,
1753
- companionAllowedHosts = _ref8.allowedHosts;
1754
-
1696
+ url: uppyTransport.COMPANION || null,
1697
+ allowedHosts: uppyTransport.COMPANION_PATTERN || null
1698
+ },
1699
+ companionUrl = _ref8.url,
1700
+ companionAllowedHosts = _ref8.allowedHosts;
1755
1701
  return newUppy.use(source, {
1756
1702
  id: sourceId,
1757
1703
  companionUrl: companionUrl,
@@ -1759,7 +1705,6 @@ var UppyProvider = function UppyProvider(_ref5) {
1759
1705
  });
1760
1706
  }, newUppy);
1761
1707
  }
1762
-
1763
1708
  return newUppy;
1764
1709
  };
1765
1710
  }, [id, Uppy, uppyLocale, uppyTransport, uppySources, transport, sources, transloadit, companion, tus, xhr]);