@panneau/medias 3.0.61
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/assets/css/styles.css +0 -0
- package/es/index.js +134 -0
- package/lib/index.js +150 -0
- package/package.json +66 -0
File without changes
|
package/es/index.js
ADDED
@@ -0,0 +1,134 @@
|
|
1
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
2
|
+
import React, { useContext, useMemo } from 'react';
|
3
|
+
import PropTypes from 'prop-types';
|
4
|
+
import classNames from 'classnames';
|
5
|
+
import { usePanneauResource } from '@panneau/core/contexts';
|
6
|
+
import { useApi } from '@panneau/data';
|
7
|
+
|
8
|
+
/* eslint-disable react/jsx-props-no-spreading */
|
9
|
+
var MediasApiContext = /*#__PURE__*/React.createContext(null);
|
10
|
+
var useMediasApi = function useMediasApi() {
|
11
|
+
return useContext(MediasApiContext);
|
12
|
+
};
|
13
|
+
var apiPropTypes = PropTypes.shape({
|
14
|
+
get: PropTypes.func.isRequired,
|
15
|
+
create: PropTypes.func.isRequired,
|
16
|
+
find: PropTypes.func.isRequired,
|
17
|
+
update: PropTypes.func.isRequired,
|
18
|
+
"delete": PropTypes.func.isRequired
|
19
|
+
});
|
20
|
+
var propTypes$3 = {
|
21
|
+
api: apiPropTypes,
|
22
|
+
children: PropTypes.node.isRequired
|
23
|
+
};
|
24
|
+
var defaultProps$3 = {
|
25
|
+
api: null
|
26
|
+
};
|
27
|
+
function MediasApiProvider(_ref) {
|
28
|
+
var providedApi = _ref.api,
|
29
|
+
children = _ref.children;
|
30
|
+
var previousApi = useMediasApi();
|
31
|
+
var api = useMemo(function () {
|
32
|
+
return providedApi || previousApi;
|
33
|
+
}, [providedApi, previousApi]);
|
34
|
+
return /*#__PURE__*/React.createElement(MediasApiContext.Provider, {
|
35
|
+
value: api
|
36
|
+
}, children);
|
37
|
+
}
|
38
|
+
MediasApiProvider.propTypes = propTypes$3;
|
39
|
+
MediasApiProvider.defaultProps = defaultProps$3;
|
40
|
+
|
41
|
+
var styles = {};
|
42
|
+
|
43
|
+
/* eslint-disable react/jsx-props-no-spreading, react/no-array-index-key */
|
44
|
+
var propTypes$2 = {
|
45
|
+
className: PropTypes.string
|
46
|
+
};
|
47
|
+
var defaultProps$2 = {
|
48
|
+
className: null
|
49
|
+
};
|
50
|
+
function MediasBrowser(_ref) {
|
51
|
+
var className = _ref.className;
|
52
|
+
return /*#__PURE__*/React.createElement("div", {
|
53
|
+
className: classNames([styles.container, className])
|
54
|
+
}, "M\xE9dias");
|
55
|
+
}
|
56
|
+
MediasBrowser.propTypes = propTypes$2;
|
57
|
+
MediasBrowser.defaultProps = defaultProps$2;
|
58
|
+
|
59
|
+
var _excluded$1 = ["api"];
|
60
|
+
var propTypes$1 = {
|
61
|
+
api: apiPropTypes
|
62
|
+
};
|
63
|
+
var defaultProps$1 = {
|
64
|
+
api: null
|
65
|
+
};
|
66
|
+
function MediasBrowserContainer(_ref) {
|
67
|
+
var api = _ref.api,
|
68
|
+
props = _objectWithoutProperties(_ref, _excluded$1);
|
69
|
+
return /*#__PURE__*/React.createElement(MediasApiProvider, {
|
70
|
+
api: api
|
71
|
+
}, /*#__PURE__*/React.createElement(MediasBrowser, props));
|
72
|
+
}
|
73
|
+
MediasBrowserContainer.propTypes = propTypes$1;
|
74
|
+
MediasBrowserContainer.defaultProps = defaultProps$1;
|
75
|
+
|
76
|
+
var _excluded = ["resource"];
|
77
|
+
var propTypes = {
|
78
|
+
resource: PropTypes.string
|
79
|
+
};
|
80
|
+
var defaultProps = {
|
81
|
+
resource: 'medias'
|
82
|
+
};
|
83
|
+
function MediasResourceBrowser(_ref) {
|
84
|
+
var resourceId = _ref.resource,
|
85
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
86
|
+
var resource = usePanneauResource(resourceId);
|
87
|
+
var api = useApi();
|
88
|
+
var mediasApi = useMemo(function () {
|
89
|
+
return {
|
90
|
+
get: function get() {
|
91
|
+
var _api$resources;
|
92
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
93
|
+
args[_key] = arguments[_key];
|
94
|
+
}
|
95
|
+
return (_api$resources = api.resources).get.apply(_api$resources, [resource].concat(args));
|
96
|
+
},
|
97
|
+
find: function find() {
|
98
|
+
var _api$resources2;
|
99
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
100
|
+
args[_key2] = arguments[_key2];
|
101
|
+
}
|
102
|
+
return (_api$resources2 = api.resources).find.apply(_api$resources2, [resource].concat(args));
|
103
|
+
},
|
104
|
+
create: function create() {
|
105
|
+
var _api$resources3;
|
106
|
+
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
107
|
+
args[_key3] = arguments[_key3];
|
108
|
+
}
|
109
|
+
return (_api$resources3 = api.resources).create.apply(_api$resources3, [resource].concat(args));
|
110
|
+
},
|
111
|
+
update: function update() {
|
112
|
+
var _api$resources4;
|
113
|
+
for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
114
|
+
args[_key4] = arguments[_key4];
|
115
|
+
}
|
116
|
+
return (_api$resources4 = api.resources).update.apply(_api$resources4, [resource].concat(args));
|
117
|
+
},
|
118
|
+
"delete": function _delete() {
|
119
|
+
var _api$resources5;
|
120
|
+
for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
|
121
|
+
args[_key5] = arguments[_key5];
|
122
|
+
}
|
123
|
+
return (_api$resources5 = api.resources)["delete"].apply(_api$resources5, [resource].concat(args));
|
124
|
+
}
|
125
|
+
};
|
126
|
+
}, [api, resource]);
|
127
|
+
return /*#__PURE__*/React.createElement(MediasBrowserContainer, Object.assign({
|
128
|
+
api: mediasApi
|
129
|
+
}, props));
|
130
|
+
}
|
131
|
+
MediasResourceBrowser.propTypes = propTypes;
|
132
|
+
MediasResourceBrowser.defaultProps = defaultProps;
|
133
|
+
|
134
|
+
export { MediasApiProvider, MediasBrowser, MediasResourceBrowser, apiPropTypes, MediasBrowserContainer as default, useMediasApi };
|
package/lib/index.js
ADDED
@@ -0,0 +1,150 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
4
|
+
|
5
|
+
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
6
|
+
var React = require('react');
|
7
|
+
var PropTypes = require('prop-types');
|
8
|
+
var classNames = require('classnames');
|
9
|
+
var contexts = require('@panneau/core/contexts');
|
10
|
+
var data = require('@panneau/data');
|
11
|
+
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
13
|
+
|
14
|
+
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
15
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
16
|
+
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
17
|
+
var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
18
|
+
|
19
|
+
/* eslint-disable react/jsx-props-no-spreading */
|
20
|
+
var MediasApiContext = /*#__PURE__*/React__default["default"].createContext(null);
|
21
|
+
var useMediasApi = function useMediasApi() {
|
22
|
+
return React.useContext(MediasApiContext);
|
23
|
+
};
|
24
|
+
var apiPropTypes = PropTypes__default["default"].shape({
|
25
|
+
get: PropTypes__default["default"].func.isRequired,
|
26
|
+
create: PropTypes__default["default"].func.isRequired,
|
27
|
+
find: PropTypes__default["default"].func.isRequired,
|
28
|
+
update: PropTypes__default["default"].func.isRequired,
|
29
|
+
"delete": PropTypes__default["default"].func.isRequired
|
30
|
+
});
|
31
|
+
var propTypes$3 = {
|
32
|
+
api: apiPropTypes,
|
33
|
+
children: PropTypes__default["default"].node.isRequired
|
34
|
+
};
|
35
|
+
var defaultProps$3 = {
|
36
|
+
api: null
|
37
|
+
};
|
38
|
+
function MediasApiProvider(_ref) {
|
39
|
+
var providedApi = _ref.api,
|
40
|
+
children = _ref.children;
|
41
|
+
var previousApi = useMediasApi();
|
42
|
+
var api = React.useMemo(function () {
|
43
|
+
return providedApi || previousApi;
|
44
|
+
}, [providedApi, previousApi]);
|
45
|
+
return /*#__PURE__*/React__default["default"].createElement(MediasApiContext.Provider, {
|
46
|
+
value: api
|
47
|
+
}, children);
|
48
|
+
}
|
49
|
+
MediasApiProvider.propTypes = propTypes$3;
|
50
|
+
MediasApiProvider.defaultProps = defaultProps$3;
|
51
|
+
|
52
|
+
var styles = {};
|
53
|
+
|
54
|
+
/* eslint-disable react/jsx-props-no-spreading, react/no-array-index-key */
|
55
|
+
var propTypes$2 = {
|
56
|
+
className: PropTypes__default["default"].string
|
57
|
+
};
|
58
|
+
var defaultProps$2 = {
|
59
|
+
className: null
|
60
|
+
};
|
61
|
+
function MediasBrowser(_ref) {
|
62
|
+
var className = _ref.className;
|
63
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
64
|
+
className: classNames__default["default"]([styles.container, className])
|
65
|
+
}, "M\xE9dias");
|
66
|
+
}
|
67
|
+
MediasBrowser.propTypes = propTypes$2;
|
68
|
+
MediasBrowser.defaultProps = defaultProps$2;
|
69
|
+
|
70
|
+
var _excluded$1 = ["api"];
|
71
|
+
var propTypes$1 = {
|
72
|
+
api: apiPropTypes
|
73
|
+
};
|
74
|
+
var defaultProps$1 = {
|
75
|
+
api: null
|
76
|
+
};
|
77
|
+
function MediasBrowserContainer(_ref) {
|
78
|
+
var api = _ref.api,
|
79
|
+
props = _objectWithoutProperties__default["default"](_ref, _excluded$1);
|
80
|
+
return /*#__PURE__*/React__default["default"].createElement(MediasApiProvider, {
|
81
|
+
api: api
|
82
|
+
}, /*#__PURE__*/React__default["default"].createElement(MediasBrowser, props));
|
83
|
+
}
|
84
|
+
MediasBrowserContainer.propTypes = propTypes$1;
|
85
|
+
MediasBrowserContainer.defaultProps = defaultProps$1;
|
86
|
+
|
87
|
+
var _excluded = ["resource"];
|
88
|
+
var propTypes = {
|
89
|
+
resource: PropTypes__default["default"].string
|
90
|
+
};
|
91
|
+
var defaultProps = {
|
92
|
+
resource: 'medias'
|
93
|
+
};
|
94
|
+
function MediasResourceBrowser(_ref) {
|
95
|
+
var resourceId = _ref.resource,
|
96
|
+
props = _objectWithoutProperties__default["default"](_ref, _excluded);
|
97
|
+
var resource = contexts.usePanneauResource(resourceId);
|
98
|
+
var api = data.useApi();
|
99
|
+
var mediasApi = React.useMemo(function () {
|
100
|
+
return {
|
101
|
+
get: function get() {
|
102
|
+
var _api$resources;
|
103
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
104
|
+
args[_key] = arguments[_key];
|
105
|
+
}
|
106
|
+
return (_api$resources = api.resources).get.apply(_api$resources, [resource].concat(args));
|
107
|
+
},
|
108
|
+
find: function find() {
|
109
|
+
var _api$resources2;
|
110
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
111
|
+
args[_key2] = arguments[_key2];
|
112
|
+
}
|
113
|
+
return (_api$resources2 = api.resources).find.apply(_api$resources2, [resource].concat(args));
|
114
|
+
},
|
115
|
+
create: function create() {
|
116
|
+
var _api$resources3;
|
117
|
+
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
118
|
+
args[_key3] = arguments[_key3];
|
119
|
+
}
|
120
|
+
return (_api$resources3 = api.resources).create.apply(_api$resources3, [resource].concat(args));
|
121
|
+
},
|
122
|
+
update: function update() {
|
123
|
+
var _api$resources4;
|
124
|
+
for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
125
|
+
args[_key4] = arguments[_key4];
|
126
|
+
}
|
127
|
+
return (_api$resources4 = api.resources).update.apply(_api$resources4, [resource].concat(args));
|
128
|
+
},
|
129
|
+
"delete": function _delete() {
|
130
|
+
var _api$resources5;
|
131
|
+
for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
|
132
|
+
args[_key5] = arguments[_key5];
|
133
|
+
}
|
134
|
+
return (_api$resources5 = api.resources)["delete"].apply(_api$resources5, [resource].concat(args));
|
135
|
+
}
|
136
|
+
};
|
137
|
+
}, [api, resource]);
|
138
|
+
return /*#__PURE__*/React__default["default"].createElement(MediasBrowserContainer, Object.assign({
|
139
|
+
api: mediasApi
|
140
|
+
}, props));
|
141
|
+
}
|
142
|
+
MediasResourceBrowser.propTypes = propTypes;
|
143
|
+
MediasResourceBrowser.defaultProps = defaultProps;
|
144
|
+
|
145
|
+
exports.MediasApiProvider = MediasApiProvider;
|
146
|
+
exports.MediasBrowser = MediasBrowser;
|
147
|
+
exports.MediasResourceBrowser = MediasResourceBrowser;
|
148
|
+
exports.apiPropTypes = apiPropTypes;
|
149
|
+
exports["default"] = MediasBrowserContainer;
|
150
|
+
exports.useMediasApi = useMediasApi;
|
package/package.json
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
{
|
2
|
+
"name": "@panneau/medias",
|
3
|
+
"version": "3.0.61",
|
4
|
+
"description": "",
|
5
|
+
"keywords": [
|
6
|
+
"javascript"
|
7
|
+
],
|
8
|
+
"homepage": "https://github.com/folkloreinc/panneau-js",
|
9
|
+
"repository": {
|
10
|
+
"type": "git",
|
11
|
+
"url": "git+https://github.com/folkloreinc/panneau-js.git"
|
12
|
+
},
|
13
|
+
"author": {
|
14
|
+
"name": "Folklore",
|
15
|
+
"email": "info@folklore.email"
|
16
|
+
},
|
17
|
+
"contributors": [
|
18
|
+
{
|
19
|
+
"name": "David Mongeau-Petitpas",
|
20
|
+
"email": "dmp@folklore.email"
|
21
|
+
},
|
22
|
+
{
|
23
|
+
"name": "Nicolas Roy-Bourdages",
|
24
|
+
"email": "nrb@folklore.email"
|
25
|
+
},
|
26
|
+
{
|
27
|
+
"name": "Julien Carignan",
|
28
|
+
"email": "jc@folklore.email"
|
29
|
+
},
|
30
|
+
{
|
31
|
+
"name": "Théo Gjini",
|
32
|
+
"email": "tg@folklore.email"
|
33
|
+
}
|
34
|
+
],
|
35
|
+
"license": "ISC",
|
36
|
+
"main": "lib/index.js",
|
37
|
+
"module": "es/index.js",
|
38
|
+
"files": [
|
39
|
+
"lib",
|
40
|
+
"es",
|
41
|
+
"assets"
|
42
|
+
],
|
43
|
+
"scripts": {
|
44
|
+
"prepare": "../../scripts/prepare-package.sh"
|
45
|
+
},
|
46
|
+
"devDependencies": {
|
47
|
+
"react": "^16.8.0 || ^17.0.0 || ^18.0.0",
|
48
|
+
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
|
49
|
+
},
|
50
|
+
"peerDependencies": {
|
51
|
+
"react": "^16.8.0 || ^17.0.0 || ^18.0.0",
|
52
|
+
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
|
53
|
+
},
|
54
|
+
"dependencies": {
|
55
|
+
"@babel/runtime": "^7.12.5",
|
56
|
+
"@panneau/core": "^3.0.45",
|
57
|
+
"@panneau/data": "^3.0.45",
|
58
|
+
"classnames": "^2.2.6",
|
59
|
+
"lodash": "^4.17.21",
|
60
|
+
"prop-types": "^15.7.2"
|
61
|
+
},
|
62
|
+
"publishConfig": {
|
63
|
+
"access": "public"
|
64
|
+
},
|
65
|
+
"gitHead": "833cbcda8089671ff2b56d0e73faf5bdd6c903e9"
|
66
|
+
}
|