Socket
Socket
Sign inDemoInstall

@os-design/core

Package Overview
Dependencies
Maintainers
1
Versions
478
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@os-design/core - npm Package Compare versions

Comparing version 1.0.169 to 1.0.170

dist/cjs/ListItemActions/index.js

73

dist/cjs/ListItem/index.js

@@ -7,14 +7,13 @@ "use strict";

});
exports["default"] = exports.ListItemContainer = void 0;
var _react = _interopRequireWildcard(require("react"));
exports["default"] = void 0;
var _styled = _interopRequireDefault(require("@emotion/styled"));
var _styles = require("@os-design/styles");
var _utils = require("@os-design/utils");
var _theming = require("@os-design/theming");
var _ListItemContent = _interopRequireDefault(require("./ListItemContent"));
var _excluded = ["title", "description", "left", "right", "actions", "onTouchStart", "onTouchMove", "onTouchEnd"];
var _templateObject;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var _react = _interopRequireWildcard(require("react"));
var _ListItemActions = _interopRequireDefault(require("../ListItemActions"));
var _excluded = ["title", "description", "left", "right"];
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }

@@ -24,5 +23,24 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }

function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
var ListItemContainer = _styled["default"].div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: relative;\n box-sizing: border-box;\n min-height: 4em;\n overflow: hidden;\n\n display: flex;\n align-items: center;\n\n &:not(:last-of-type) {\n border-bottom: 1px solid ", ";\n }\n\n @media (hover: hover) {\n // Hide actions by default\n & > nav {\n opacity: 0;\n }\n\n // Display actions either on focus, or on hover\n &:hover,\n &:focus-within {\n & > nav {\n opacity: 1;\n }\n }\n }\n\n ", ";\n"])), function (p) {
var Container = (0, _styled["default"])(_ListItemActions["default"])(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n box-sizing: border-box;\n min-height: 4em;\n overflow: hidden;\n\n display: flex;\n align-items: center;\n\n &:not(:last-of-type) {\n border-bottom: 1px solid ", ";\n }\n\n ", ";\n"])), function (p) {
return (0, _theming.clr)(p.theme.listItemColorBorder);
}, (0, _styles.horizontalPaddingStyles)());
var Content = _styled["default"].div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n overflow: hidden;\n"])));
var Title = _styled["default"].div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n color: ", ";\n font-weight: 500;\n ", ";\n"])), function (p) {
return (0, _theming.clr)(p.theme.colorText);
}, _styles.ellipsisStyles);
var Description = _styled["default"].div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n color: ", ";\n font-size: ", "em;\n ", ";\n"])), function (p) {
return (0, _theming.clr)(p.theme.listItemColorDescription);
}, function (p) {
return p.theme.sizes.small;
}, _styles.ellipsisStyles);
var LeftAddon = _styled["default"].div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n color: ", ";\n padding-right: ", "em;\n"])), function (p) {
return (0, _theming.clr)(p.theme.colorText);
}, function (p) {
return p.theme.listItemAddonPaddingHorizontal;
});
var RightAddon = _styled["default"].div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n color: ", ";\n margin-left: auto;\n padding-left: ", "em;\n"])), function (p) {
return (0, _theming.clr)(p.theme.colorText);
}, function (p) {
return p.theme.listItemAddonPaddingHorizontal;
});

@@ -32,3 +50,2 @@ /**

*/
exports.ListItemContainer = ListItemContainer;
var ListItem = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {

@@ -39,40 +56,6 @@ var title = _ref.title,

right = _ref.right,
_ref$actions = _ref.actions,
actions = _ref$actions === void 0 ? [] : _ref$actions,
_ref$onTouchStart = _ref.onTouchStart,
_onTouchStart = _ref$onTouchStart === void 0 ? function () {} : _ref$onTouchStart,
_ref$onTouchMove = _ref.onTouchMove,
_onTouchMove = _ref$onTouchMove === void 0 ? function () {} : _ref$onTouchMove,
_ref$onTouchEnd = _ref.onTouchEnd,
_onTouchEnd = _ref$onTouchEnd === void 0 ? function () {} : _ref$onTouchEnd,
rest = _objectWithoutProperties(_ref, _excluded);
var touchDevice = (0, _react.useMemo)(function () {
return (0, _utils.isTouchDevice)();
}, []);
var _useSwipe = (0, _utils.useSwipe)(),
opened = _useSwipe.opened,
handlers = _useSwipe.handlers;
return /*#__PURE__*/_react["default"].createElement(ListItemContainer, _extends({}, rest, {
onTouchStart: function onTouchStart(e) {
handlers.onTouchStart(e);
_onTouchStart(e);
},
onTouchMove: function onTouchMove(e) {
handlers.onTouchMove(e);
_onTouchMove(e);
},
onTouchEnd: function onTouchEnd(e) {
handlers.onTouchEnd(e);
_onTouchEnd(e);
},
return /*#__PURE__*/_react["default"].createElement(Container, _extends({}, rest, {
ref: ref
}), /*#__PURE__*/_react["default"].createElement(_ListItemContent["default"], {
title: title,
description: description,
left: left,
right: right,
actions: actions,
hasSwipe: touchDevice,
opened: opened
}));
}), left && /*#__PURE__*/_react["default"].createElement(LeftAddon, null, left), /*#__PURE__*/_react["default"].createElement(Content, null, /*#__PURE__*/_react["default"].createElement(Title, null, title), description && /*#__PURE__*/_react["default"].createElement(Description, null, description)), right && /*#__PURE__*/_react["default"].createElement(RightAddon, null, right));
});

@@ -79,0 +62,0 @@ ListItem.displayName = 'ListItem';

@@ -8,15 +8,12 @@ "use strict";

exports["default"] = void 0;
var _react = _interopRequireWildcard(require("react"));
var _styled = _interopRequireDefault(require("@emotion/styled"));
var _utils = require("@os-design/utils");
var _styles = require("@os-design/styles");
var _theming = require("@os-design/theming");
var _styles = require("@os-design/styles");
var _react2 = require("@emotion/react");
var _ListItem = require("../ListItem");
var _ListItemContent = _interopRequireDefault(require("../ListItem/ListItemContent"));
var _excluded = ["title", "description", "left", "right", "actions", "as", "onMouseDown", "onTouchStart", "onTouchMove", "onTouchEnd"];
var _templateObject, _templateObject2;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var _react = _interopRequireWildcard(require("react"));
var _ListItem = _interopRequireDefault(require("../ListItem"));
var _excluded = ["title", "description", "left", "right", "actions"];
var _templateObject;
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }

@@ -32,8 +29,11 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }

function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
var actionsBgStyles = function actionsBgStyles(p) {
return !p.touchDevice && (0, _react2.css)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n & > nav {\n background: linear-gradient(\n to right,\n ", ",\n ", "\n ", "em\n );\n }\n "])), (0, _theming.clr)([].concat(_toConsumableArray(p.theme.listItemColorBgHover.slice(0, 3)), [0])), (0, _theming.clr)(p.theme.listItemColorBgHover), p.theme.listItemActionsPaddingLeft);
};
var StyledLink = (0, _styled["default"])(_ListItem.ListItemContainer.withComponent('a'), (0, _utils.omitEmotionProps)('touchDevice', 'as'))(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n ", ";\n cursor: pointer;\n text-decoration: none;\n\n @media (hover: hover) {\n &:hover,\n &:focus-within {\n background-color: ", ";\n }\n }\n\n ", ";\n"])), _styles.resetFocusStyles, function (p) {
var Link = _styled["default"].a(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n ", ";\n\n cursor: pointer;\n text-decoration: none;\n\n @media (hover: hover) {\n &:hover,\n &:focus-within {\n & > div {\n background-color: ", ";\n\n & > nav {\n background: linear-gradient(\n to right,\n ", ",\n ", "\n ", "em\n );\n }\n }\n }\n }\n"])), _styles.resetFocusStyles, function (p) {
return (0, _theming.clr)(p.theme.listItemColorBgHover);
}, actionsBgStyles);
}, function (p) {
return (0, _theming.clr)([].concat(_toConsumableArray(p.theme.listItemColorBgHover.slice(0, 3)), [0]));
}, function (p) {
return (0, _theming.clr)(p.theme.listItemColorBgHover);
}, function (p) {
return p.theme.listItemActionsPaddingLeft;
});

@@ -48,42 +48,7 @@ /**

right = _ref.right,
_ref$actions = _ref.actions,
actions = _ref$actions === void 0 ? [] : _ref$actions,
as = _ref.as,
_ref$onMouseDown = _ref.onMouseDown,
_onMouseDown = _ref$onMouseDown === void 0 ? function () {} : _ref$onMouseDown,
_ref$onTouchStart = _ref.onTouchStart,
_onTouchStart = _ref$onTouchStart === void 0 ? function () {} : _ref$onTouchStart,
_ref$onTouchMove = _ref.onTouchMove,
_onTouchMove = _ref$onTouchMove === void 0 ? function () {} : _ref$onTouchMove,
_ref$onTouchEnd = _ref.onTouchEnd,
_onTouchEnd = _ref$onTouchEnd === void 0 ? function () {} : _ref$onTouchEnd,
actions = _ref.actions,
rest = _objectWithoutProperties(_ref, _excluded);
var touchDevice = (0, _react.useMemo)(function () {
return (0, _utils.isTouchDevice)();
}, []);
var _useSwipe = (0, _utils.useSwipe)(),
opened = _useSwipe.opened,
handlers = _useSwipe.handlers;
return /*#__PURE__*/_react["default"].createElement(StyledLink, _extends({
touchDevice: touchDevice,
as: as
}, rest, {
onMouseDown: function onMouseDown(e) {
_onMouseDown(e);
e.preventDefault();
},
onTouchStart: function onTouchStart(e) {
handlers.onTouchStart(e);
_onTouchStart(e);
},
onTouchMove: function onTouchMove(e) {
handlers.onTouchMove(e);
_onTouchMove(e);
},
onTouchEnd: function onTouchEnd(e) {
handlers.onTouchEnd(e);
_onTouchEnd(e);
},
return /*#__PURE__*/_react["default"].createElement(Link, _extends({}, rest, {
ref: ref
}), /*#__PURE__*/_react["default"].createElement(_ListItemContent["default"], {
}), /*#__PURE__*/_react["default"].createElement(_ListItem["default"], {
title: title,

@@ -93,5 +58,3 @@ description: description,

right: right,
actions: actions,
hasSwipe: touchDevice,
opened: opened
actions: actions
}));

@@ -98,0 +61,0 @@ });

@@ -8,14 +8,13 @@ "use strict";

exports["default"] = void 0;
var _react = _interopRequireWildcard(require("react"));
var _styled = _interopRequireDefault(require("@emotion/styled"));
var _styles = require("@os-design/styles");
var _theming = require("@os-design/theming");
var _react = _interopRequireWildcard(require("react"));
var _List = _interopRequireDefault(require("../List"));
var _Skeleton = _interopRequireDefault(require("../Skeleton"));
var _List = _interopRequireDefault(require("../List"));
var _ListItemContent = require("../ListItem/ListItemContent");
var _excluded = ["hasDescription", "titleWidth", "descriptionWidth", "itemCount", "left", "right"];
var _templateObject, _templateObject2, _templateObject3;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }

@@ -32,2 +31,12 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }

});
var LeftAddon = _styled["default"].div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n color: ", ";\n padding-right: ", "em;\n"])), function (p) {
return (0, _theming.clr)(p.theme.colorText);
}, function (p) {
return p.theme.listItemAddonPaddingHorizontal;
});
var RightAddon = _styled["default"].div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n color: ", ";\n margin-left: auto;\n padding-left: ", "em;\n"])), function (p) {
return (0, _theming.clr)(p.theme.colorText);
}, function (p) {
return p.theme.listItemAddonPaddingHorizontal;
});

@@ -53,7 +62,7 @@ /**

style: style
}, left && /*#__PURE__*/_react["default"].createElement(_ListItemContent.LeftAddon, null, left), /*#__PURE__*/_react["default"].createElement(Content, null, /*#__PURE__*/_react["default"].createElement(_Skeleton["default"], {
}, left && /*#__PURE__*/_react["default"].createElement(LeftAddon, null, left), /*#__PURE__*/_react["default"].createElement(Content, null, /*#__PURE__*/_react["default"].createElement(_Skeleton["default"], {
width: titleWidth
}), hasDescription && /*#__PURE__*/_react["default"].createElement(DescriptionSkeleton, {
width: descriptionWidth
})), right && /*#__PURE__*/_react["default"].createElement(_ListItemContent.RightAddon, null, right));
})), right && /*#__PURE__*/_react["default"].createElement(RightAddon, null, right));
}, [descriptionWidth, hasDescription, left, right, titleWidth]);

@@ -60,0 +69,0 @@ return /*#__PURE__*/_react["default"].createElement(_List["default"], _extends({

function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
import React, { forwardRef, useMemo } from 'react';
import styled from '@emotion/styled';
import { horizontalPaddingStyles } from '@os-design/styles';
import { isTouchDevice, useSwipe } from '@os-design/utils';
import { ellipsisStyles, horizontalPaddingStyles } from '@os-design/styles';
import { clr } from '@os-design/theming';
import ListItemContent from './ListItemContent';
export const ListItemContainer = styled.div`
position: relative;
import React, { forwardRef } from 'react';
import ListItemActions from '../ListItemActions';
const Container = styled(ListItemActions)`
box-sizing: border-box;

@@ -21,19 +19,26 @@ min-height: 4em;

@media (hover: hover) {
// Hide actions by default
& > nav {
opacity: 0;
}
// Display actions either on focus, or on hover
&:hover,
&:focus-within {
& > nav {
opacity: 1;
}
}
}
${horizontalPaddingStyles()};
`;
const Content = styled.div`
overflow: hidden;
`;
const Title = styled.div`
color: ${p => clr(p.theme.colorText)};
font-weight: 500;
${ellipsisStyles};
`;
const Description = styled.div`
color: ${p => clr(p.theme.listItemColorDescription)};
font-size: ${p => p.theme.sizes.small}em;
${ellipsisStyles};
`;
const LeftAddon = styled.div`
color: ${p => clr(p.theme.colorText)};
padding-right: ${p => p.theme.listItemAddonPaddingHorizontal}em;
`;
const RightAddon = styled.div`
color: ${p => clr(p.theme.colorText)};
margin-left: auto;
padding-left: ${p => p.theme.listItemAddonPaddingHorizontal}em;
`;

@@ -48,39 +53,8 @@ /**

right,
actions = [],
onTouchStart = () => {},
onTouchMove = () => {},
onTouchEnd = () => {},
...rest
}, ref) => {
const touchDevice = useMemo(() => isTouchDevice(), []);
const {
opened,
handlers
} = useSwipe();
return /*#__PURE__*/React.createElement(ListItemContainer, _extends({}, rest, {
onTouchStart: e => {
handlers.onTouchStart(e);
onTouchStart(e);
},
onTouchMove: e => {
handlers.onTouchMove(e);
onTouchMove(e);
},
onTouchEnd: e => {
handlers.onTouchEnd(e);
onTouchEnd(e);
},
ref: ref
}), /*#__PURE__*/React.createElement(ListItemContent, {
title: title,
description: description,
left: left,
right: right,
actions: actions,
hasSwipe: touchDevice,
opened: opened
}));
});
}, ref) => /*#__PURE__*/React.createElement(Container, _extends({}, rest, {
ref: ref
}), left && /*#__PURE__*/React.createElement(LeftAddon, null, left), /*#__PURE__*/React.createElement(Content, null, /*#__PURE__*/React.createElement(Title, null, title), description && /*#__PURE__*/React.createElement(Description, null, description)), right && /*#__PURE__*/React.createElement(RightAddon, null, right)));
ListItem.displayName = 'ListItem';
export default ListItem;
//# sourceMappingURL=index.js.map
function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
import React, { forwardRef, useMemo } from 'react';
import styled from '@emotion/styled';
import { isTouchDevice, omitEmotionProps, useSwipe } from '@os-design/utils';
import { resetFocusStyles } from '@os-design/styles';
import { clr } from '@os-design/theming';
import { resetFocusStyles } from '@os-design/styles';
import { css } from '@emotion/react';
import { ListItemContainer } from '../ListItem';
import ListItemContent from '../ListItem/ListItemContent';
const actionsBgStyles = p => !p.touchDevice && css`
& > nav {
background: linear-gradient(
to right,
${clr([...p.theme.listItemColorBgHover.slice(0, 3), 0])},
${clr(p.theme.listItemColorBgHover)}
${p.theme.listItemActionsPaddingLeft}em
);
}
`;
const StyledLink = styled(ListItemContainer.withComponent('a'), omitEmotionProps('touchDevice', 'as'))`
import React, { forwardRef } from 'react';
import ListItem from '../ListItem';
const Link = styled.a`
${resetFocusStyles};
cursor: pointer;

@@ -28,7 +16,16 @@ text-decoration: none;

&:focus-within {
background-color: ${p => clr(p.theme.listItemColorBgHover)};
& > div {
background-color: ${p => clr(p.theme.listItemColorBgHover)};
& > nav {
background: linear-gradient(
to right,
${p => clr([...p.theme.listItemColorBgHover.slice(0, 3), 0])},
${p => clr(p.theme.listItemColorBgHover)}
${p => p.theme.listItemActionsPaddingLeft}em
);
}
}
}
}
${actionsBgStyles};
`;

@@ -44,48 +41,15 @@

right,
actions = [],
as,
onMouseDown = () => {},
onTouchStart = () => {},
onTouchMove = () => {},
onTouchEnd = () => {},
actions,
...rest
}, ref) => {
const touchDevice = useMemo(() => isTouchDevice(), []);
const {
opened,
handlers
} = useSwipe();
return /*#__PURE__*/React.createElement(StyledLink, _extends({
touchDevice: touchDevice,
as: as
}, rest, {
onMouseDown: e => {
onMouseDown(e);
e.preventDefault();
},
onTouchStart: e => {
handlers.onTouchStart(e);
onTouchStart(e);
},
onTouchMove: e => {
handlers.onTouchMove(e);
onTouchMove(e);
},
onTouchEnd: e => {
handlers.onTouchEnd(e);
onTouchEnd(e);
},
ref: ref
}), /*#__PURE__*/React.createElement(ListItemContent, {
title: title,
description: description,
left: left,
right: right,
actions: actions,
hasSwipe: touchDevice,
opened: opened
}));
});
}, ref) => /*#__PURE__*/React.createElement(Link, _extends({}, rest, {
ref: ref
}), /*#__PURE__*/React.createElement(ListItem, {
title: title,
description: description,
left: left,
right: right,
actions: actions
})));
ListItemLink.displayName = 'ListItemLink';
export default ListItemLink;
//# sourceMappingURL=index.js.map
function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
import React, { forwardRef, useCallback } from 'react';
import styled from '@emotion/styled';
import { horizontalPaddingStyles } from '@os-design/styles';
import { clr } from '@os-design/theming';
import React, { forwardRef, useCallback } from 'react';
import List from '../List';
import Skeleton from '../Skeleton';
import List from '../List';
import { LeftAddon, RightAddon } from '../ListItem/ListItemContent';
const ListItem = styled.div`

@@ -30,2 +29,11 @@ width: 100%;

`;
const LeftAddon = styled.div`
color: ${p => clr(p.theme.colorText)};
padding-right: ${p => p.theme.listItemAddonPaddingHorizontal}em;
`;
const RightAddon = styled.div`
color: ${p => clr(p.theme.colorText)};
margin-left: auto;
padding-left: ${p => p.theme.listItemAddonPaddingHorizontal}em;
`;

@@ -32,0 +40,0 @@ /**

import React from 'react';
import { ListItemContentProps } from './ListItemContent';
declare type JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;
export declare type ListItemProps = JsxDivProps & Omit<ListItemContentProps, 'hasSwipe' | 'opened'>;
export declare const ListItemContainer: import("@emotion/styled").StyledComponent<{
theme?: import("@emotion/react").Theme | undefined;
as?: React.ElementType<any> | undefined;
}, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
declare const ListItem: React.ForwardRefExoticComponent<JsxDivProps & Omit<ListItemContentProps, "opened" | "hasSwipe"> & React.RefAttributes<HTMLDivElement>>;
import { ListItemActionsProps } from '../ListItemActions';
export interface ListItemProps extends ListItemActionsProps {
title: string;
description?: string;
left?: React.ReactNode;
right?: React.ReactNode;
}
declare const ListItem: React.ForwardRefExoticComponent<ListItemProps & React.RefAttributes<HTMLDivElement>>;
export default ListItem;
//# sourceMappingURL=index.d.ts.map
import React from 'react';
import { ListItemContentProps } from '../ListItem/ListItemContent';
import { LinkProps, ReactRouterLinkProps } from '../Link';
import { ListItemProps } from '../ListItem';
declare type JsxAProps = Omit<JSX.IntrinsicElements['a'], 'ref'>;
export declare type ListItemLinkProps = JsxAProps & ReactRouterLinkProps & Pick<LinkProps, 'as'> & Omit<ListItemContentProps, 'hasSwipe' | 'opened'>;
declare const ListItemLink: React.ForwardRefExoticComponent<JsxAProps & ReactRouterLinkProps & Pick<LinkProps, "as"> & Omit<ListItemContentProps, "opened" | "hasSwipe"> & React.RefAttributes<HTMLAnchorElement>>;
export declare type ListItemLinkProps = JsxAProps & ReactRouterLinkProps & Pick<LinkProps, 'as'> & ListItemProps;
declare const ListItemLink: React.ForwardRefExoticComponent<JsxAProps & ReactRouterLinkProps & Pick<LinkProps, "as"> & ListItemProps & React.RefAttributes<HTMLAnchorElement>>;
export default ListItemLink;
//# sourceMappingURL=index.d.ts.map
{
"name": "@os-design/core",
"version": "1.0.169",
"version": "1.0.170",
"license": "UNLICENSED",

@@ -61,3 +61,3 @@ "repository": "git@gitlab.com:os-team/libs/os-design.git",

},
"gitHead": "94430262c8c667c197c9bcf09cdd9b69301c2a8b"
"gitHead": "f8f0c23877ffa6db63eaa33313df54cd0bd36df0"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc