@panneau/core 1.0.0-alpha.19 → 1.0.0-alpha.193

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
@@ -14,12 +14,12 @@ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
14
14
  var isObject = require('lodash/isObject');
15
15
  var fetch = require('@folklore/fetch');
16
16
  var services = require('@folklore/services');
17
+ var reactIntl = require('react-intl');
17
18
  var utils = require('@panneau/core/utils');
18
19
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
19
20
  var reactRouter = require('react-router');
20
21
  var tracking = require('@folklore/tracking');
21
22
  var uuid = require('uuid');
22
- var reactIntl = require('react-intl');
23
23
 
24
24
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
25
25
 
@@ -280,6 +280,7 @@ var routes = PropTypes__default['default'].shape({
280
280
  'resources.show': PropTypes__default['default'].string.isRequired,
281
281
  'resources.edit': PropTypes__default['default'].string.isRequired,
282
282
  'resources.update': PropTypes__default['default'].string.isRequired,
283
+ 'resources.delete': PropTypes__default['default'].string.isRequired,
283
284
  'resources.destroy': PropTypes__default['default'].string.isRequired
284
285
  });
285
286
  var intl = PropTypes__default['default'].shape({
@@ -294,8 +295,9 @@ var pages = PropTypes__default['default'].objectOf(page);
294
295
  var field = PropTypes__default['default'].shape({
295
296
  // type: PropTypes.string.isRequired,
296
297
  name: PropTypes__default['default'].isRequired,
297
- component: PropTypes__default['default'].string.isRequired,
298
- label: PropTypes__default['default'].isRequired
298
+ type: PropTypes__default['default'].string,
299
+ component: PropTypes__default['default'].string,
300
+ label: PropTypes__default['default'].node
299
301
  });
300
302
  var fields = PropTypes__default['default'].arrayOf(field);
301
303
  var form = PropTypes__default['default'].shape({
@@ -306,11 +308,10 @@ var form = PropTypes__default['default'].shape({
306
308
  PropTypes__default['default'].arrayOf(form);
307
309
  var resource = PropTypes__default['default'].shape({
308
310
  id: PropTypes__default['default'].string.isRequired,
309
- label: PropTypes__default['default'].string.isRequired,
311
+ name: PropTypes__default['default'].string.isRequired,
310
312
  intl: intl,
311
313
  fields: fields,
312
314
  forms: PropTypes__default['default'].shape({}),
313
- has_routes: PropTypes__default['default'].bool,
314
315
  shows_in_navbar: PropTypes__default['default'].bool
315
316
  });
316
317
  var resources = PropTypes__default['default'].arrayOf(resource);
@@ -347,6 +348,11 @@ var formError = PropTypes__default['default'].shape({
347
348
  message: PropTypes__default['default'].string
348
349
  });
349
350
  PropTypes__default['default'].arrayOf(formError);
351
+ PropTypes__default['default'].shape({
352
+ tus: PropTypes__default['default'].object
353
+ }); // eslint-disable-line
354
+
355
+ PropTypes__default['default'].string;
350
356
 
351
357
  /* eslint-disable react/jsx-props-no-spreading */
352
358
  var DefinitionContext = /*#__PURE__*/React__default['default'].createContext(null);
@@ -379,11 +385,11 @@ var FieldsContext = /*#__PURE__*/React__default['default'].createContext(null);
379
385
  var useFieldsManager = function useFieldsManager() {
380
386
  return React.useContext(FieldsContext);
381
387
  };
382
- var useFieldDefinition = function useFieldDefinition(id) {
388
+ var useField = function useField(id) {
383
389
  var manager = useFieldsManager();
384
390
  return manager.getDefinition(id);
385
391
  };
386
- var useFieldDefinitions = function useFieldDefinitions() {
392
+ var useFields = function useFields() {
387
393
  var manager = useFieldsManager();
388
394
  return manager.getDefinitions();
389
395
  };
@@ -745,41 +751,43 @@ GoogleMapsClientProvider.propTypes = propTypes$8;
745
751
  GoogleMapsClientProvider.defaultProps = defaultProps$8;
746
752
 
747
753
  /* eslint-disable react/jsx-props-no-spreading */
748
- var LocalesContext = /*#__PURE__*/React__default['default'].createContext(null);
749
- var useLocalesContext = function useLocalesContext() {
750
- return React.useContext(LocalesContext);
751
- };
752
- var useLocale = function useLocale() {
753
- var _useLocalesContext = useLocalesContext(),
754
- _useLocalesContext$lo = _useLocalesContext.locale,
755
- locale = _useLocalesContext$lo === void 0 ? null : _useLocalesContext$lo;
756
-
757
- return locale;
758
- };
754
+ var defaultLocales = ['en', 'fr'];
755
+ var LocalesContext = /*#__PURE__*/React__default['default'].createContext({
756
+ locales: defaultLocales
757
+ });
759
758
  var useLocales = function useLocales() {
760
- var _useLocalesContext2 = useLocalesContext(),
761
- _useLocalesContext2$l = _useLocalesContext2.locales,
762
- locales = _useLocalesContext2$l === void 0 ? [] : _useLocalesContext2$l;
759
+ var _useContext = React.useContext(LocalesContext),
760
+ locales = _useContext.locales;
763
761
 
764
762
  return locales;
765
763
  };
764
+ var useOtherLocales = function useOtherLocales() {
765
+ var _useLocales = useLocales(),
766
+ locales = _useLocales.locales;
767
+
768
+ var _useIntl = reactIntl.useIntl(),
769
+ locale = _useIntl.locale;
770
+
771
+ var otherLocales = React.useMemo(function () {
772
+ return locales.filter(function (it) {
773
+ return it !== locale;
774
+ });
775
+ }, [locales, locale]);
776
+ return otherLocales;
777
+ };
766
778
  var propTypes$7 = {
767
779
  locales: PropTypes__default['default'].arrayOf(PropTypes__default['default'].string),
768
- locale: PropTypes__default['default'].string,
769
780
  children: PropTypes__default['default'].node.isRequired
770
781
  };
771
782
  var defaultProps$7 = {
772
- locales: [],
773
- locale: 'fr'
783
+ locales: []
774
784
  };
775
785
  var LocalesProvider = function LocalesProvider(_ref) {
776
786
  var locales = _ref.locales,
777
- locale = _ref.locale,
778
787
  children = _ref.children;
779
788
  return /*#__PURE__*/React__default['default'].createElement(LocalesContext.Provider, {
780
789
  value: {
781
- locales: locales,
782
- locale: locale
790
+ locales: locales
783
791
  }
784
792
  }, children);
785
793
  };
@@ -1283,70 +1291,6 @@ var useUppyLocale = function useUppyLocale(locale) {
1283
1291
 
1284
1292
  var packagesCache$1 = {};
1285
1293
  var defaultPackagesMap$1 = {
1286
- transloadit: function transloadit() {
1287
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/transloadit')); });
1288
- },
1289
- tus: function tus() {
1290
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/tus')); });
1291
- },
1292
- xhr: function xhr() {
1293
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/xhr-upload')); });
1294
- }
1295
- };
1296
-
1297
- var useUppyTransport = function useUppyTransport(transport) {
1298
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1299
- _ref$packagesMap = _ref.packagesMap,
1300
- packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap$1 : _ref$packagesMap;
1301
-
1302
- // transport
1303
- var _useState = React.useState({
1304
- "package": packagesCache$1[transport] || null
1305
- }),
1306
- _useState2 = _slicedToArray__default['default'](_useState, 2),
1307
- loadedPackage = _useState2[0]["package"],
1308
- setLoadedPackage = _useState2[1];
1309
-
1310
- var packageLoader = packagesMap[transport] || null;
1311
- React.useEffect(function () {
1312
- var canceled = false;
1313
-
1314
- if (loadedPackage !== null || packageLoader === null) {
1315
- return function () {
1316
- canceled = true;
1317
- };
1318
- }
1319
-
1320
- packageLoader().then(function (_ref2) {
1321
- var pack = _ref2["default"],
1322
- others = _objectWithoutProperties__default['default'](_ref2, ["default"]);
1323
-
1324
- var dep = Object.keys(others).reduce(function (map, key) {
1325
- map[key] = others[key]; // eslint-disable-line no-param-reassign
1326
-
1327
- return map;
1328
- }, pack);
1329
- packagesCache$1[transport] = dep;
1330
-
1331
- if (!canceled) {
1332
- setLoadedPackage({
1333
- "package": dep
1334
- });
1335
- }
1336
- });
1337
- return function () {
1338
- canceled = true;
1339
- };
1340
- }, [packageLoader, loadedPackage, setLoadedPackage]);
1341
- return loadedPackage;
1342
- };
1343
-
1344
- /**
1345
- * Locale loader
1346
- */
1347
-
1348
- var packagesCache = {};
1349
- var defaultPackagesMap = {
1350
1294
  webcam: function webcam() {
1351
1295
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/webcam')); });
1352
1296
  },
@@ -1367,12 +1311,12 @@ var defaultPackagesMap = {
1367
1311
  var useUppySources = function useUppySources(sources) {
1368
1312
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1369
1313
  _ref$packagesMap = _ref.packagesMap,
1370
- packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap : _ref$packagesMap;
1314
+ packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap$1 : _ref$packagesMap;
1371
1315
 
1372
1316
  // transport
1373
1317
  var _useState = React.useState({
1374
1318
  packages: sources.reduce(function (map, source) {
1375
- var sourcePackage = packagesCache[source] || null;
1319
+ var sourcePackage = packagesCache$1[source] || null;
1376
1320
 
1377
1321
  if (sourcePackage === null) {
1378
1322
  return map;
@@ -1422,7 +1366,7 @@ var useUppySources = function useUppySources(sources) {
1422
1366
  return otherMap;
1423
1367
  }, pack)));
1424
1368
  }, {});
1425
- packagesCache = _objectSpread__default['default'](_objectSpread__default['default']({}, packagesCache), newLoadedPackages);
1369
+ packagesCache$1 = _objectSpread__default['default'](_objectSpread__default['default']({}, packagesCache$1), newLoadedPackages);
1426
1370
 
1427
1371
  if (!canceled) {
1428
1372
  setLoadedPackages({
@@ -1437,6 +1381,70 @@ var useUppySources = function useUppySources(sources) {
1437
1381
  return sourcesToLoad.length === 0 ? loadedPackages : null;
1438
1382
  };
1439
1383
 
1384
+ /**
1385
+ * Locale loader
1386
+ */
1387
+
1388
+ var packagesCache = {};
1389
+ var defaultPackagesMap = {
1390
+ transloadit: function transloadit() {
1391
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/transloadit')); });
1392
+ },
1393
+ tus: function tus() {
1394
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/tus')); });
1395
+ },
1396
+ xhr: function xhr() {
1397
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@uppy/xhr-upload')); });
1398
+ }
1399
+ };
1400
+
1401
+ var useUppyTransport = function useUppyTransport(transport) {
1402
+ var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1403
+ _ref$packagesMap = _ref.packagesMap,
1404
+ packagesMap = _ref$packagesMap === void 0 ? defaultPackagesMap : _ref$packagesMap;
1405
+
1406
+ // transport
1407
+ var _useState = React.useState({
1408
+ "package": packagesCache[transport] || null
1409
+ }),
1410
+ _useState2 = _slicedToArray__default['default'](_useState, 2),
1411
+ loadedPackage = _useState2[0]["package"],
1412
+ setLoadedPackage = _useState2[1];
1413
+
1414
+ var packageLoader = packagesMap[transport] || null;
1415
+ React.useEffect(function () {
1416
+ var canceled = false;
1417
+
1418
+ if (loadedPackage !== null || packageLoader === null) {
1419
+ return function () {
1420
+ canceled = true;
1421
+ };
1422
+ }
1423
+
1424
+ packageLoader().then(function (_ref2) {
1425
+ var pack = _ref2["default"],
1426
+ others = _objectWithoutProperties__default['default'](_ref2, ["default"]);
1427
+
1428
+ var dep = Object.keys(others).reduce(function (map, key) {
1429
+ map[key] = others[key]; // eslint-disable-line no-param-reassign
1430
+
1431
+ return map;
1432
+ }, pack);
1433
+ packagesCache[transport] = dep;
1434
+
1435
+ if (!canceled) {
1436
+ setLoadedPackage({
1437
+ "package": dep
1438
+ });
1439
+ }
1440
+ });
1441
+ return function () {
1442
+ canceled = true;
1443
+ };
1444
+ }, [packageLoader, loadedPackage, setLoadedPackage]);
1445
+ return loadedPackage;
1446
+ };
1447
+
1440
1448
  var convertToMedia = function convertToMedia(it) {
1441
1449
  // console.log('upload', it);
1442
1450
  var type = it.data.type.split('/')[0];
@@ -1492,13 +1500,36 @@ var useUppy = function useUppy() {
1492
1500
  var _ref2$extension = _ref2.extension,
1493
1501
  extension = _ref2$extension === void 0 ? null : _ref2$extension;
1494
1502
  return "".concat(uuid.v1()).concat(extension !== null ? ".".concat(extension) : '');
1495
- } : _ref$getFileName;
1503
+ } : _ref$getFileName,
1504
+ _ref$meta = _ref.meta,
1505
+ meta = _ref$meta === void 0 ? null : _ref$meta,
1506
+ _ref$allowMultipleUpl = _ref.allowMultipleUploads,
1507
+ allowMultipleUploads = _ref$allowMultipleUpl === void 0 ? false : _ref$allowMultipleUpl,
1508
+ _ref$maxNumberOfFiles = _ref.maxNumberOfFiles,
1509
+ maxNumberOfFiles = _ref$maxNumberOfFiles === void 0 ? 1 : _ref$maxNumberOfFiles,
1510
+ _ref$allowedFileTypes = _ref.allowedFileTypes,
1511
+ allowedFileTypes = _ref$allowedFileTypes === void 0 ? null : _ref$allowedFileTypes,
1512
+ _ref$autoProceed = _ref.autoProceed,
1513
+ autoProceed = _ref$autoProceed === void 0 ? false : _ref$autoProceed,
1514
+ _ref$debug = _ref.debug,
1515
+ debug = _ref$debug === void 0 ? false : _ref$debug;
1496
1516
 
1497
1517
  var _ref3 = React.useContext(UppyContext) || null,
1498
- _ref3$uppy = _ref3.uppy,
1499
- uppy = _ref3$uppy === void 0 ? null : _ref3$uppy,
1518
+ buildUppy = _ref3.buildUppy,
1500
1519
  transport = _ref3.transport;
1501
1520
 
1521
+ var uppy = React.useMemo(function () {
1522
+ return buildUppy !== null ? buildUppy({
1523
+ meta: meta,
1524
+ allowMultipleUploads: allowMultipleUploads,
1525
+ restrictions: {
1526
+ maxNumberOfFiles: maxNumberOfFiles,
1527
+ allowedFileTypes: allowedFileTypes
1528
+ },
1529
+ autoProceed: autoProceed,
1530
+ debug: debug
1531
+ }) : null;
1532
+ }, [buildUppy, meta, allowMultipleUploads, debug, maxNumberOfFiles, allowedFileTypes, autoProceed]);
1502
1533
  React.useEffect(function () {
1503
1534
  if (uppy === null) {
1504
1535
  return function () {};
@@ -1550,6 +1581,13 @@ var useUppy = function useUppy() {
1550
1581
  uppy.off('upload', onUpload);
1551
1582
  };
1552
1583
  }, [uppy]);
1584
+ React.useEffect(function () {
1585
+ return function () {
1586
+ if (uppy !== null) {
1587
+ uppy.close();
1588
+ }
1589
+ };
1590
+ }, [uppy]);
1553
1591
  return uppy;
1554
1592
  };
1555
1593
  var propTypes = {
@@ -1557,11 +1595,6 @@ var propTypes = {
1557
1595
  transport: PropTypes__default['default'].oneOf(['xhr', 'transloadit', 'tus']),
1558
1596
  locale: PropTypes__default['default'].string,
1559
1597
  sources: PropTypes__default['default'].arrayOf(PropTypes__default['default'].oneOf(['webcam', 'facebook', 'instagram', 'dropbox', 'google-drive'])),
1560
- meta: PropTypes__default['default'].object,
1561
- // eslint-disable-line react/forbid-prop-types
1562
- maxNumberOfFiles: PropTypes__default['default'].number,
1563
- allowedFileTypes: PropTypes__default['default'].arrayOf(PropTypes__default['default'].string),
1564
- autoProceed: PropTypes__default['default'].bool,
1565
1598
  transloadit: PropTypes__default['default'].shape({
1566
1599
  key: PropTypes__default['default'].string.isRequired,
1567
1600
  templateId: PropTypes__default['default'].string,
@@ -1579,13 +1612,9 @@ var propTypes = {
1579
1612
  })])
1580
1613
  };
1581
1614
  var defaultProps = {
1582
- transport: 'xhr',
1615
+ transport: null,
1583
1616
  locale: null,
1584
- sources: ['webcam', 'facebook', 'instagram', 'dropbox', 'google-drive'],
1585
- meta: null,
1586
- maxNumberOfFiles: 30,
1587
- allowedFileTypes: null,
1588
- autoProceed: false,
1617
+ sources: null,
1589
1618
  transloadit: null,
1590
1619
  companion: null,
1591
1620
  tus: null,
@@ -1593,110 +1622,130 @@ var defaultProps = {
1593
1622
  };
1594
1623
  var UppyProvider = function UppyProvider(_ref5) {
1595
1624
  var children = _ref5.children,
1596
- transport = _ref5.transport,
1597
- locale = _ref5.locale,
1598
- sources = _ref5.sources,
1599
- meta = _ref5.meta,
1600
- maxNumberOfFiles = _ref5.maxNumberOfFiles,
1601
- allowedFileTypes = _ref5.allowedFileTypes,
1602
- autoProceed = _ref5.autoProceed,
1603
- transloadit = _ref5.transloadit,
1604
- companion = _ref5.companion,
1605
- tus = _ref5.tus,
1606
- xhr = _ref5.xhr;
1607
- var previousUppyContext = React.useContext(UppyContext) || null;
1608
- var uppyAlreadyExists = previousUppyContext !== null;
1609
- var Uppy = useUppyCore();
1610
- var uppyTransport = useUppyTransport(transport);
1611
- var uppySources = useUppySources(sources);
1625
+ providedTransport = _ref5.transport,
1626
+ providedLocale = _ref5.locale,
1627
+ providedSources = _ref5.sources,
1628
+ providedTransloadit = _ref5.transloadit,
1629
+ providedCompanion = _ref5.companion,
1630
+ providedTus = _ref5.tus,
1631
+ providedXhr = _ref5.xhr;
1612
1632
 
1613
1633
  var _useIntl = reactIntl.useIntl(),
1614
1634
  intlLocale = _useIntl.locale;
1615
1635
 
1636
+ var _ref6 = React.useContext(UppyContext) || {},
1637
+ _ref6$transport = _ref6.transport,
1638
+ contextTransport = _ref6$transport === void 0 ? null : _ref6$transport,
1639
+ _ref6$locale = _ref6.locale,
1640
+ contextLocale = _ref6$locale === void 0 ? null : _ref6$locale,
1641
+ _ref6$sources = _ref6.sources,
1642
+ contextSources = _ref6$sources === void 0 ? null : _ref6$sources,
1643
+ _ref6$transloadit = _ref6.transloadit,
1644
+ contextTransloadit = _ref6$transloadit === void 0 ? null : _ref6$transloadit,
1645
+ _ref6$companion = _ref6.companion,
1646
+ contextCompanion = _ref6$companion === void 0 ? null : _ref6$companion,
1647
+ _ref6$tus = _ref6.tus,
1648
+ contextTus = _ref6$tus === void 0 ? null : _ref6$tus,
1649
+ _ref6$xhr = _ref6.xhr,
1650
+ contextXhr = _ref6$xhr === void 0 ? null : _ref6$xhr;
1651
+
1652
+ var transport = providedTransport || contextTransport || 'xhr';
1653
+ var locale = providedLocale || contextLocale || intlLocale;
1654
+ var sources = providedSources || contextSources || ['webcam', 'facebook', 'instagram', 'dropbox', 'google-drive'];
1655
+ var transloadit = providedTransloadit || contextTransloadit;
1656
+ var companion = providedCompanion || contextCompanion;
1657
+ var tus = providedTus || contextTus;
1658
+ var xhr = providedXhr || contextXhr;
1659
+ var Uppy = useUppyCore();
1660
+ var uppyTransport = useUppyTransport(transport);
1661
+ var uppySources = useUppySources(sources);
1616
1662
  var uppyLocale = useUppyLocale(locale || intlLocale);
1617
- var uppy = React.useMemo(function () {
1618
- if (uppyAlreadyExists || Uppy === null || uppyLocale === null || uppyTransport === null || uppySources === null) {
1663
+ var buildUppy = React.useMemo(function () {
1664
+ if (Uppy === null || uppyLocale === null || uppyTransport === null || uppySources === null) {
1619
1665
  return null;
1620
1666
  }
1621
1667
 
1622
- var newUppy = new Uppy({
1623
- meta: meta,
1624
- restrictions: {
1625
- maxNumberOfFiles: maxNumberOfFiles,
1626
- allowedFileTypes: allowedFileTypes
1627
- },
1628
- autoProceed: autoProceed,
1629
- locale: uppyLocale
1630
- });
1631
-
1632
- if (transport === 'transloadit') {
1633
- var key = transloadit.key,
1634
- templateId = transloadit.templateId,
1635
- _transloadit$waitForE = transloadit.waitForEncoding,
1636
- waitForEncoding = _transloadit$waitForE === void 0 ? true : _transloadit$waitForE,
1637
- opts = _objectWithoutProperties__default['default'](transloadit, ["key", "templateId", "waitForEncoding"]);
1638
-
1639
- newUppy.use(uppyTransport, {
1640
- params: _objectSpread__default['default']({
1641
- auth: {
1642
- key: key
1643
- },
1644
- template_id: templateId
1645
- }, opts),
1646
- waitForEncoding: waitForEncoding
1647
- });
1648
- } else if (transport === 'tus') {
1649
- newUppy.use(uppyTransport, _objectSpread__default['default']({
1650
- endpoint: '/tus',
1651
- resume: true,
1652
- retryDelays: [0, 1000, 3000, 5000]
1653
- }, tus));
1654
- } else if (transport === 'xhr') {
1655
- newUppy.use(uppyTransport, _objectSpread__default['default']({
1656
- endpoint: isString__default['default'](xhr) ? xhr : '/upload'
1657
- }, isObject__default['default'](xhr) ? xhr : null));
1658
- }
1668
+ return function () {
1669
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1670
+
1671
+ var _ref7 = opts || {},
1672
+ _ref7$sources = _ref7.sources,
1673
+ customSources = _ref7$sources === void 0 ? sources : _ref7$sources,
1674
+ uppyOpts = _objectWithoutProperties__default['default'](_ref7, ["sources"]);
1675
+
1676
+ var newUppy = new Uppy(_objectSpread__default['default']({
1677
+ locale: uppyLocale
1678
+ }, uppyOpts));
1679
+
1680
+ if (transport === 'transloadit') {
1681
+ var key = transloadit.key,
1682
+ templateId = transloadit.templateId,
1683
+ _transloadit$waitForE = transloadit.waitForEncoding,
1684
+ waitForEncoding = _transloadit$waitForE === void 0 ? true : _transloadit$waitForE,
1685
+ transloaditOpts = _objectWithoutProperties__default['default'](transloadit, ["key", "templateId", "waitForEncoding"]);
1686
+
1687
+ newUppy.use(uppyTransport, {
1688
+ params: _objectSpread__default['default']({
1689
+ auth: {
1690
+ key: key
1691
+ },
1692
+ template_id: templateId
1693
+ }, transloaditOpts),
1694
+ waitForEncoding: waitForEncoding
1695
+ });
1696
+ } else if (transport === 'tus') {
1697
+ newUppy.use(uppyTransport, _objectSpread__default['default']({
1698
+ endpoint: '/tus',
1699
+ resume: true,
1700
+ retryDelays: [0, 1000, 3000, 5000]
1701
+ }, tus));
1702
+ } else if (transport === 'xhr') {
1703
+ newUppy.use(uppyTransport, _objectSpread__default['default']({
1704
+ endpoint: isString__default['default'](xhr) ? xhr : '/upload'
1705
+ }, isObject__default['default'](xhr) ? xhr : null));
1706
+ }
1659
1707
 
1660
- if (transport === 'transloadit' || companion !== null) {
1661
- newUppy = sources.reduce(function (currentUppy, sourceId) {
1662
- var source = uppySources[sourceId] || null;
1708
+ if (transport === 'transloadit' || companion !== null) {
1709
+ return customSources.reduce(function (currentUppy, sourceId) {
1710
+ var source = uppySources[sourceId] || null;
1663
1711
 
1664
- if (source === null) {
1665
- return currentUppy;
1666
- }
1712
+ if (source === null) {
1713
+ return currentUppy;
1714
+ }
1667
1715
 
1668
- var _ref6 = companion || {
1669
- url: uppyTransport.COMPANION || null,
1670
- allowedHosts: uppyTransport.COMPANION_PATTERN || null
1671
- },
1672
- companionUrl = _ref6.url,
1673
- companionAllowedHosts = _ref6.allowedHosts;
1674
-
1675
- return newUppy.use(source, {
1676
- id: sourceId,
1677
- companionUrl: companionUrl,
1678
- companionAllowedHosts: companionAllowedHosts
1679
- });
1680
- }, newUppy);
1681
- }
1716
+ var _ref8 = companion || {
1717
+ url: uppyTransport.COMPANION || null,
1718
+ allowedHosts: uppyTransport.COMPANION_PATTERN || null
1719
+ },
1720
+ companionUrl = _ref8.url,
1721
+ companionAllowedHosts = _ref8.allowedHosts;
1682
1722
 
1683
- return newUppy;
1684
- }, [uppyAlreadyExists, Uppy, uppyLocale, uppyTransport, uppySources, meta, maxNumberOfFiles, allowedFileTypes, autoProceed, transport, transloadit, tus, companion, sources]);
1685
- React.useEffect(function () {
1686
- return function () {
1687
- if (uppy !== null) {
1688
- uppy.close();
1723
+ return newUppy.use(source, {
1724
+ id: sourceId,
1725
+ companionUrl: companionUrl,
1726
+ companionAllowedHosts: companionAllowedHosts
1727
+ });
1728
+ }, newUppy);
1689
1729
  }
1730
+
1731
+ return newUppy;
1690
1732
  };
1691
- }, [uppy]);
1692
- var finalUppyContext = React.useMemo(function () {
1693
- return previousUppyContext || {
1694
- uppy: uppy,
1695
- transport: transport
1696
- };
1697
- }, [previousUppyContext, uppy, transport]);
1733
+ }, [Uppy, uppyLocale, uppyTransport, uppySources, transport, sources, transloadit, companion, tus, xhr]);
1698
1734
  return /*#__PURE__*/React__default['default'].createElement(UppyContext.Provider, {
1699
- value: finalUppyContext
1735
+ value: {
1736
+ transport: transport,
1737
+ locale: locale,
1738
+ sources: sources,
1739
+ transloadit: transloadit,
1740
+ companion: companion,
1741
+ tus: tus,
1742
+ xhr: xhr,
1743
+ Uppy: Uppy,
1744
+ uppyTransport: uppyTransport,
1745
+ uppySources: uppySources,
1746
+ uppyLocale: uppyLocale,
1747
+ buildUppy: buildUppy
1748
+ }
1700
1749
  }, children);
1701
1750
  };
1702
1751
  UppyProvider.propTypes = propTypes;
@@ -1728,6 +1777,7 @@ exports.GoogleKeysProvider = GoogleKeysProvider;
1728
1777
  exports.GoogleMapsClientContext = GoogleMapsClientContext;
1729
1778
  exports.GoogleMapsClientProvider = GoogleMapsClientProvider;
1730
1779
  exports.LISTS_NAMESPACE = LISTS_NAMESPACE;
1780
+ exports.LocalesContext = LocalesContext;
1731
1781
  exports.LocalesProvider = LocalesProvider;
1732
1782
  exports.MODALS_NAMESPACE = MODALS_NAMESPACE;
1733
1783
  exports.ModalsContext = ModalsContext;
@@ -1752,9 +1802,9 @@ exports.useDefinitionContext = useDefinitionContext;
1752
1802
  exports.useDisplayComponent = useDisplayComponent;
1753
1803
  exports.useDisplaysComponents = useDisplaysComponents;
1754
1804
  exports.useDisplaysComponentsManager = useDisplaysComponentsManager;
1805
+ exports.useField = useField;
1755
1806
  exports.useFieldComponent = useFieldComponent;
1756
- exports.useFieldDefinition = useFieldDefinition;
1757
- exports.useFieldDefinitions = useFieldDefinitions;
1807
+ exports.useFields = useFields;
1758
1808
  exports.useFieldsComponents = useFieldsComponents;
1759
1809
  exports.useFieldsComponentsManager = useFieldsComponentsManager;
1760
1810
  exports.useFieldsManager = useFieldsManager;
@@ -1775,13 +1825,12 @@ exports.useGoogleMapsClient = useGoogleMapsClient;
1775
1825
  exports.useListComponent = useListComponent;
1776
1826
  exports.useListsComponents = useListsComponents;
1777
1827
  exports.useListsComponentsManager = useListsComponentsManager;
1778
- exports.useLocale = useLocale;
1779
1828
  exports.useLocales = useLocales;
1780
- exports.useLocalesContext = useLocalesContext;
1781
1829
  exports.useModalComponent = useModalComponent;
1782
1830
  exports.useModals = useModals;
1783
1831
  exports.useModalsComponents = useModalsComponents;
1784
1832
  exports.useModalsComponentsManager = useModalsComponentsManager;
1833
+ exports.useOtherLocales = useOtherLocales;
1785
1834
  exports.usePanels = usePanels;
1786
1835
  exports.usePanneau = usePanneau;
1787
1836
  exports.usePanneauAuth = usePanneauAuth;