@panneau/modal-medias-picker 3.0.184 → 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 -16
  2. package/lib/index.js +28 -16
  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,23 +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,
92
- withoutButtons: true
102
+ multiple: multiple,
103
+ onMediaFormOpen: onMediaFormOpen,
104
+ onMediaFormClose: onMediaFormClose
93
105
  })) : /*#__PURE__*/React.createElement(MediasPickerContainer, Object.assign({}, props, {
94
106
  resource: resource,
95
- onSelectionChange: onSelectionChange,
96
- onChange: onChange,
107
+ onChange: onSelectionChange,
97
108
  onClose: onClose,
98
- multipleSelection: multiple,
99
- withoutButtons: true
109
+ multiple: multiple,
110
+ onMediaFormOpen: onMediaFormOpen,
111
+ onMediaFormClose: onMediaFormClose
100
112
  })));
101
113
  }
102
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,23 +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,
96
- withoutButtons: true
106
+ multiple: multiple,
107
+ onMediaFormOpen: onMediaFormOpen,
108
+ onMediaFormClose: onMediaFormClose
97
109
  })) : /*#__PURE__*/React.createElement(medias.MediasPickerContainer, Object.assign({}, props, {
98
110
  resource: resource,
99
- onSelectionChange: onSelectionChange,
100
- onChange: onChange,
111
+ onChange: onSelectionChange,
101
112
  onClose: onClose,
102
- multipleSelection: multiple,
103
- withoutButtons: true
113
+ multiple: multiple,
114
+ onMediaFormOpen: onMediaFormOpen,
115
+ onMediaFormClose: onMediaFormClose
104
116
  })));
105
117
  }
106
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.184",
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.184",
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": "1d2948618d41595e4c6a40a72f1d9f196cf369ef"
67
+ "gitHead": "28e6bd3e2185ae5ad5f0962f9883d1777d6a25aa"
68
68
  }