@panneau/modal-medias-picker 3.0.185 → 3.0.186

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.
Files changed (3) hide show
  1. package/es/index.js +28 -14
  2. package/lib/index.js +28 -14
  3. package/package.json +3 -3
package/es/index.js CHANGED
@@ -7,9 +7,10 @@ import { FormattedMessage } from 'react-intl';
7
7
  import { MediasResourcePicker, MediasPickerContainer } from '@panneau/medias';
8
8
  import Dialog from '@panneau/modal-dialog';
9
9
 
10
- var _excluded = ["id", "resource", "title", "onChange", "onClose", "confirmButton", "cancelButton", "multiple"];
10
+ var _excluded = ["id", "value", "resource", "title", "onChange", "onClose", "confirmButton", "cancelButton", "multiple"];
11
11
  var propTypes = {
12
12
  id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
13
+ value: PropTypes.shape({}),
13
14
  resource: PropTypes.string,
14
15
  title: PropTypes.string,
15
16
  multiple: PropTypes.bool,
@@ -20,6 +21,7 @@ var propTypes = {
20
21
  };
21
22
  var defaultProps = {
22
23
  resource: null,
24
+ value: null,
23
25
  title: null,
24
26
  multiple: false,
25
27
  onChange: null,
@@ -29,6 +31,7 @@ var defaultProps = {
29
31
  };
30
32
  function MediasPickerModal(_ref) {
31
33
  var id = _ref.id,
34
+ value = _ref.value,
32
35
  resource = _ref.resource,
33
36
  title = _ref.title,
34
37
  onChange = _ref.onChange,
@@ -37,13 +40,13 @@ function MediasPickerModal(_ref) {
37
40
  cancelButton = _ref.cancelButton,
38
41
  multiple = _ref.multiple,
39
42
  props = _objectWithoutProperties(_ref, _excluded);
40
- var _useState = useState(null),
43
+ var _useState = useState(value),
41
44
  _useState2 = _slicedToArray(_useState, 2),
42
45
  selectedItems = _useState2[0],
43
46
  setSelectedItems = _useState2[1];
44
- var onConfirm = useCallback(function (items) {
47
+ var onConfirm = useCallback(function () {
45
48
  if (onChange !== null) {
46
- onChange(items);
49
+ onChange(selectedItems);
47
50
  }
48
51
  if (onClose !== null) {
49
52
  onClose();
@@ -52,12 +55,22 @@ function MediasPickerModal(_ref) {
52
55
  var onSelectionChange = useCallback(function (items) {
53
56
  setSelectedItems(items);
54
57
  }, [setSelectedItems]);
58
+ var _useState3 = useState(false),
59
+ _useState4 = _slicedToArray(_useState3, 2),
60
+ mediaFormOpen = _useState4[0],
61
+ setMediaFormOpen = _useState4[1];
62
+ var onMediaFormOpen = useCallback(function () {
63
+ setMediaFormOpen(true);
64
+ }, [setMediaFormOpen]);
65
+ var onMediaFormClose = useCallback(function () {
66
+ setMediaFormOpen(false);
67
+ }, [setMediaFormOpen]);
55
68
  return /*#__PURE__*/React.createElement(Dialog, {
56
69
  id: id || 'picker',
57
70
  size: "xl",
58
71
  onClose: onClose,
59
72
  title: title,
60
- buttons: [_objectSpread({
73
+ buttons: !mediaFormOpen ? [_objectSpread({
61
74
  id: 'cancel',
62
75
  name: 'cancel',
63
76
  label: /*#__PURE__*/React.createElement(FormattedMessage, {
@@ -80,21 +93,22 @@ function MediasPickerModal(_ref) {
80
93
  }]
81
94
  }),
82
95
  theme: 'primary',
83
- onClick: onConfirm,
84
- disabled: selectedItems === null || multiple && selectedItems.length === 0
85
- }, confirmButton)]
96
+ onClick: onConfirm
97
+ }, confirmButton)] : null
86
98
  }, resource !== null ? /*#__PURE__*/React.createElement(MediasResourcePicker, Object.assign({}, props, {
87
99
  resource: resource,
88
- onSelectionChange: onSelectionChange,
89
- onChange: onChange,
100
+ onChange: onSelectionChange,
90
101
  onClose: onClose,
91
- multipleSelection: multiple
102
+ multiple: multiple,
103
+ onMediaFormOpen: onMediaFormOpen,
104
+ onMediaFormClose: onMediaFormClose
92
105
  })) : /*#__PURE__*/React.createElement(MediasPickerContainer, Object.assign({}, props, {
93
106
  resource: resource,
94
- onSelectionChange: onSelectionChange,
95
- onChange: onChange,
107
+ onChange: onSelectionChange,
96
108
  onClose: onClose,
97
- multipleSelection: multiple
109
+ multiple: multiple,
110
+ onMediaFormOpen: onMediaFormOpen,
111
+ onMediaFormClose: onMediaFormClose
98
112
  })));
99
113
  }
100
114
  MediasPickerModal.propTypes = propTypes;
package/lib/index.js CHANGED
@@ -11,9 +11,10 @@ var reactIntl = require('react-intl');
11
11
  var medias = require('@panneau/medias');
12
12
  var Dialog = require('@panneau/modal-dialog');
13
13
 
14
- var _excluded = ["id", "resource", "title", "onChange", "onClose", "confirmButton", "cancelButton", "multiple"];
14
+ var _excluded = ["id", "value", "resource", "title", "onChange", "onClose", "confirmButton", "cancelButton", "multiple"];
15
15
  var propTypes = {
16
16
  id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
17
+ value: PropTypes.shape({}),
17
18
  resource: PropTypes.string,
18
19
  title: PropTypes.string,
19
20
  multiple: PropTypes.bool,
@@ -24,6 +25,7 @@ var propTypes = {
24
25
  };
25
26
  var defaultProps = {
26
27
  resource: null,
28
+ value: null,
27
29
  title: null,
28
30
  multiple: false,
29
31
  onChange: null,
@@ -33,6 +35,7 @@ var defaultProps = {
33
35
  };
34
36
  function MediasPickerModal(_ref) {
35
37
  var id = _ref.id,
38
+ value = _ref.value,
36
39
  resource = _ref.resource,
37
40
  title = _ref.title,
38
41
  onChange = _ref.onChange,
@@ -41,13 +44,13 @@ function MediasPickerModal(_ref) {
41
44
  cancelButton = _ref.cancelButton,
42
45
  multiple = _ref.multiple,
43
46
  props = _objectWithoutProperties(_ref, _excluded);
44
- var _useState = React.useState(null),
47
+ var _useState = React.useState(value),
45
48
  _useState2 = _slicedToArray(_useState, 2),
46
49
  selectedItems = _useState2[0],
47
50
  setSelectedItems = _useState2[1];
48
- var onConfirm = React.useCallback(function (items) {
51
+ var onConfirm = React.useCallback(function () {
49
52
  if (onChange !== null) {
50
- onChange(items);
53
+ onChange(selectedItems);
51
54
  }
52
55
  if (onClose !== null) {
53
56
  onClose();
@@ -56,12 +59,22 @@ function MediasPickerModal(_ref) {
56
59
  var onSelectionChange = React.useCallback(function (items) {
57
60
  setSelectedItems(items);
58
61
  }, [setSelectedItems]);
62
+ var _useState3 = React.useState(false),
63
+ _useState4 = _slicedToArray(_useState3, 2),
64
+ mediaFormOpen = _useState4[0],
65
+ setMediaFormOpen = _useState4[1];
66
+ var onMediaFormOpen = React.useCallback(function () {
67
+ setMediaFormOpen(true);
68
+ }, [setMediaFormOpen]);
69
+ var onMediaFormClose = React.useCallback(function () {
70
+ setMediaFormOpen(false);
71
+ }, [setMediaFormOpen]);
59
72
  return /*#__PURE__*/React.createElement(Dialog, {
60
73
  id: id || 'picker',
61
74
  size: "xl",
62
75
  onClose: onClose,
63
76
  title: title,
64
- buttons: [_objectSpread({
77
+ buttons: !mediaFormOpen ? [_objectSpread({
65
78
  id: 'cancel',
66
79
  name: 'cancel',
67
80
  label: /*#__PURE__*/React.createElement(reactIntl.FormattedMessage, {
@@ -84,21 +97,22 @@ function MediasPickerModal(_ref) {
84
97
  }]
85
98
  }),
86
99
  theme: 'primary',
87
- onClick: onConfirm,
88
- disabled: selectedItems === null || multiple && selectedItems.length === 0
89
- }, confirmButton)]
100
+ onClick: onConfirm
101
+ }, confirmButton)] : null
90
102
  }, resource !== null ? /*#__PURE__*/React.createElement(medias.MediasResourcePicker, Object.assign({}, props, {
91
103
  resource: resource,
92
- onSelectionChange: onSelectionChange,
93
- onChange: onChange,
104
+ onChange: onSelectionChange,
94
105
  onClose: onClose,
95
- multipleSelection: multiple
106
+ multiple: multiple,
107
+ onMediaFormOpen: onMediaFormOpen,
108
+ onMediaFormClose: onMediaFormClose
96
109
  })) : /*#__PURE__*/React.createElement(medias.MediasPickerContainer, Object.assign({}, props, {
97
110
  resource: resource,
98
- onSelectionChange: onSelectionChange,
99
- onChange: onChange,
111
+ onChange: onSelectionChange,
100
112
  onClose: onClose,
101
- multipleSelection: multiple
113
+ multiple: multiple,
114
+ onMediaFormOpen: onMediaFormOpen,
115
+ onMediaFormClose: onMediaFormClose
102
116
  })));
103
117
  }
104
118
  MediasPickerModal.propTypes = propTypes;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@panneau/modal-medias-picker",
3
- "version": "3.0.185",
3
+ "version": "3.0.186",
4
4
  "description": "Medias picker modal",
5
5
  "keywords": [
6
6
  "javascript"
@@ -47,7 +47,7 @@
47
47
  "dependencies": {
48
48
  "@babel/runtime": "^7.12.5",
49
49
  "@panneau/core": "^3.0.182",
50
- "@panneau/medias": "^3.0.185",
50
+ "@panneau/medias": "^3.0.186",
51
51
  "@panneau/modal-dialog": "^3.0.182",
52
52
  "@uppy/core": "^3.9.1",
53
53
  "@uppy/dashboard": "^3.7.3",
@@ -64,5 +64,5 @@
64
64
  "publishConfig": {
65
65
  "access": "public"
66
66
  },
67
- "gitHead": "d07cd67a86c77392ecaf3b2502b58ab4fb3e723b"
67
+ "gitHead": "28e6bd3e2185ae5ad5f0962f9883d1777d6a25aa"
68
68
  }