1 | "use strict";
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.default = void 0;
|
7 |
|
8 | var _react = _interopRequireDefault(require("react"));
|
9 |
|
10 | var _overrides = require("../helpers/overrides.js");
|
11 |
|
12 | var _constants = require("./constants.js");
|
13 |
|
14 | var _styledComponents = require("./styled-components.js");
|
15 |
|
16 | var _utils = require("./utils.js");
|
17 |
|
18 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
19 |
|
20 | function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
21 |
|
22 | function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
|
23 |
|
24 | function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
|
25 |
|
26 | function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
27 |
|
28 | function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
29 |
|
30 | var ListItem = _react.default.forwardRef(function (props, ref) {
|
31 | var _props$overrides = props.overrides,
|
32 | overrides = _props$overrides === void 0 ? {} : _props$overrides;
|
33 | var Artwork = props.artwork;
|
34 | var EndEnhancer = props.endEnhancer;
|
35 |
|
36 | var _getOverrides = (0, _overrides.getOverrides)(overrides.Root, _styledComponents.StyledRoot),
|
37 | _getOverrides2 = _slicedToArray(_getOverrides, 2),
|
38 | Root = _getOverrides2[0],
|
39 | rootProps = _getOverrides2[1];
|
40 |
|
41 | var _getOverrides3 = (0, _overrides.getOverrides)(overrides.ArtworkContainer, _styledComponents.StyledArtworkContainer),
|
42 | _getOverrides4 = _slicedToArray(_getOverrides3, 2),
|
43 | ArtworkContainer = _getOverrides4[0],
|
44 | artworkContainerProps = _getOverrides4[1];
|
45 |
|
46 | var _getOverrides5 = (0, _overrides.getOverrides)(overrides.Content, _styledComponents.StyledContent),
|
47 | _getOverrides6 = _slicedToArray(_getOverrides5, 2),
|
48 | Content = _getOverrides6[0],
|
49 | contentProps = _getOverrides6[1];
|
50 |
|
51 | var _getOverrides7 = (0, _overrides.getOverrides)(overrides.EndEnhancerContainer, _styledComponents.StyledEndEnhancerContainer),
|
52 | _getOverrides8 = _slicedToArray(_getOverrides7, 2),
|
53 | EndEnhancerContainer = _getOverrides8[0],
|
54 | endEnhancerContainerProps = _getOverrides8[1];
|
55 |
|
56 | var artworkSize = _react.default.useMemo(function () {
|
57 | if (typeof artworkSize === 'number') {
|
58 | return artworkSize;
|
59 | }
|
60 |
|
61 | if (props.sublist) {
|
62 | var size = props.artworkSize || _constants.ARTWORK_SIZES.SMALL;
|
63 |
|
64 | if (props.artworkSize === _constants.ARTWORK_SIZES.MEDIUM) {
|
65 | size = _constants.ARTWORK_SIZES.SMALL;
|
66 |
|
67 | if (process.env.NODE_ENV !== "production") {
|
68 | console.warn('When ListItem sublist prop is true, artworkSize MEDIUM is aliased to SMALL');
|
69 | }
|
70 | }
|
71 |
|
72 | return size;
|
73 | } else {
|
74 | return props.artworkSize || _constants.ARTWORK_SIZES.MEDIUM;
|
75 | }
|
76 | }, [props.artworkSize, props.sublist]);
|
77 |
|
78 | return (
|
79 | _react.default.createElement(Root, _extends({
|
80 | ref: ref
|
81 | }, rootProps), Artwork && _react.default.createElement(ArtworkContainer, _extends({
|
82 | $artworkSize: artworkSize,
|
83 | $sublist: Boolean(props.sublist)
|
84 | }, artworkContainerProps), _react.default.createElement(Artwork, {
|
85 | size: typeof artworkSize === 'number' ? artworkSize : (0, _utils.artworkSizeToValue)(artworkSize, Boolean(props.sublist))
|
86 | })), _react.default.createElement(Content, _extends({
|
87 | $mLeft: !Artwork,
|
88 | $sublist: !!props.sublist
|
89 | }, contentProps), props.children, EndEnhancer && _react.default.createElement(EndEnhancerContainer, endEnhancerContainerProps, _react.default.createElement(EndEnhancer, null))))
|
90 | );
|
91 | });
|
92 |
|
93 | ListItem.displayName = 'ListItem';
|
94 | var _default = ListItem;
|
95 | exports.default = _default; |
\ | No newline at end of file |