@chayns-components/core 5.0.0-beta.25 → 5.0.0-beta.29
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/lib/components/accordion/Accordion.js +1 -1
- package/lib/components/accordion/Accordion.styles.js +1 -1
- package/lib/components/accordion/accordion-group/AccordionGroup.js +1 -1
- package/lib/components/accordion/accordion-head/AccordionHead.js +1 -1
- package/lib/components/accordion/accordion-head/AccordionHead.styles.js +1 -1
- package/lib/components/color-scheme-provider/ColorSchemeProvider.js +3 -3
- package/lib/components/context-menu/ContextMenu.d.ts +2 -2
- package/lib/components/context-menu/ContextMenu.js +79 -35
- package/lib/components/context-menu/ContextMenu.js.map +1 -1
- package/lib/components/context-menu/context-menu-content/ContextMenuContent.styles.js +1 -1
- package/lib/components/grid-image/GridImage.js +1 -1
- package/lib/components/icon/Icon.d.ts +1 -1
- package/lib/components/icon/Icon.js.map +1 -1
- package/lib/components/icon/Icon.styles.js +1 -1
- package/lib/components/list/List.js +1 -1
- package/lib/components/list/list-item/ListItem.d.ts +9 -0
- package/lib/components/list/list-item/ListItem.js +9 -6
- package/lib/components/list/list-item/ListItem.js.map +1 -1
- package/lib/components/list/list-item/ListItem.styles.js +1 -1
- package/lib/components/list/list-item/list-item-body/ListItemBody.js +1 -1
- package/lib/components/list/list-item/list-item-body/ListItemBody.js.map +1 -1
- package/lib/components/list/list-item/list-item-head/ListItemHead.d.ts +1 -0
- package/lib/components/list/list-item/list-item-head/ListItemHead.js +18 -36
- package/lib/components/list/list-item/list-item-head/ListItemHead.js.map +1 -1
- package/lib/components/list/list-item/list-item-head/ListItemHead.styles.d.ts +0 -10
- package/lib/components/list/list-item/list-item-head/ListItemHead.styles.js +15 -45
- package/lib/components/list/list-item/list-item-head/ListItemHead.styles.js.map +1 -1
- package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.d.ts +6 -0
- package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.js +27 -0
- package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.js.map +1 -0
- package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.d.ts +1 -0
- package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.js +25 -0
- package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.js.map +1 -0
- package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.d.ts +7 -0
- package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.js +72 -0
- package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.js.map +1 -0
- package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.d.ts +10 -0
- package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.js +35 -0
- package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.js.map +1 -0
- package/lib/types/chayns.d.ts +56 -0
- package/lib/types/chayns.js +15 -0
- package/lib/types/chayns.js.map +1 -0
- package/package.json +15 -15
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -9,10 +9,12 @@ exports.default = void 0;
|
|
|
9
9
|
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
|
12
|
-
var _GridImage = _interopRequireDefault(require("../../../grid-image/GridImage"));
|
|
13
|
-
|
|
14
12
|
var _Icon = _interopRequireDefault(require("../../../icon/Icon"));
|
|
15
13
|
|
|
14
|
+
var _ListItemIcon = _interopRequireDefault(require("./list-item-icon/ListItemIcon"));
|
|
15
|
+
|
|
16
|
+
var _ListItemImage = _interopRequireDefault(require("./list-item-image/ListItemImage"));
|
|
17
|
+
|
|
16
18
|
var _ListItemHead = require("./ListItemHead.styles");
|
|
17
19
|
|
|
18
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -45,22 +47,15 @@ var ListItemHead = function ListItemHead(_ref) {
|
|
|
45
47
|
rightElements = _ref.rightElements,
|
|
46
48
|
subtitle = _ref.subtitle,
|
|
47
49
|
shouldShowRoundImage = _ref.shouldShowRoundImage,
|
|
48
|
-
title = _ref.title
|
|
50
|
+
title = _ref.title,
|
|
51
|
+
leftElements = _ref.leftElements;
|
|
49
52
|
|
|
50
53
|
var _useState = (0, _react.useState)(false),
|
|
51
54
|
_useState2 = _slicedToArray(_useState, 2),
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
var _useState3 = (0, _react.useState)(false),
|
|
56
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
57
|
-
shouldShowHoverItem = _useState4[0],
|
|
58
|
-
setShouldShowHoverItem = _useState4[1];
|
|
55
|
+
shouldShowHoverItem = _useState2[0],
|
|
56
|
+
setShouldShowHoverItem = _useState2[1];
|
|
59
57
|
|
|
60
58
|
var longPressTimeoutRef = (0, _react.useRef)();
|
|
61
|
-
var handleImageLoaded = (0, _react.useCallback)(function () {
|
|
62
|
-
setHasLoadedImage(true);
|
|
63
|
-
}, []);
|
|
64
59
|
var handleMouseEnter = (0, _react.useCallback)(function () {
|
|
65
60
|
return setShouldShowHoverItem(true);
|
|
66
61
|
}, []);
|
|
@@ -79,33 +74,20 @@ var ListItemHead = function ListItemHead(_ref) {
|
|
|
79
74
|
}, []);
|
|
80
75
|
var iconOrImageElement = (0, _react.useMemo)(function () {
|
|
81
76
|
if (icons) {
|
|
82
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
83
|
-
icons: icons
|
|
84
|
-
size: 22
|
|
85
|
-
}));
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
if (images && images[0] && images[1] && images[2]) {
|
|
89
|
-
var gridImages = [images[0], images[1], images[2]];
|
|
90
|
-
return /*#__PURE__*/_react.default.createElement(_GridImage.default, {
|
|
91
|
-
images: gridImages,
|
|
92
|
-
shouldShowRoundImage: shouldShowRoundImage,
|
|
93
|
-
size: 40
|
|
77
|
+
return /*#__PURE__*/_react.default.createElement(_ListItemIcon.default, {
|
|
78
|
+
icons: icons
|
|
94
79
|
});
|
|
95
80
|
}
|
|
96
81
|
|
|
97
|
-
if (images
|
|
98
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
onLoad: handleImageLoaded,
|
|
103
|
-
src: images[0]
|
|
104
|
-
}));
|
|
82
|
+
if (images) {
|
|
83
|
+
return /*#__PURE__*/_react.default.createElement(_ListItemImage.default, {
|
|
84
|
+
images: images,
|
|
85
|
+
shouldShowRoundImage: !!shouldShowRoundImage
|
|
86
|
+
});
|
|
105
87
|
}
|
|
106
88
|
|
|
107
89
|
return undefined;
|
|
108
|
-
}, [
|
|
90
|
+
}, [icons, images, shouldShowRoundImage]);
|
|
109
91
|
return /*#__PURE__*/_react.default.createElement(_ListItemHead.StyledListItemHead, {
|
|
110
92
|
className: "beta-chayns-list-item-head",
|
|
111
93
|
isClickable: typeof onClick === 'function' || isExpandable,
|
|
@@ -124,7 +106,7 @@ var ListItemHead = function ListItemHead(_ref) {
|
|
|
124
106
|
}
|
|
125
107
|
}, isExpandable && /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
126
108
|
icons: ['fa fa-chevron-right']
|
|
127
|
-
})), iconOrImageElement, /*#__PURE__*/_react.default.createElement(_ListItemHead.StyledListItemHeadContent, {
|
|
109
|
+
})), leftElements, iconOrImageElement, /*#__PURE__*/_react.default.createElement(_ListItemHead.StyledListItemHeadContent, {
|
|
128
110
|
isIconOrImageGiven: iconOrImageElement !== undefined,
|
|
129
111
|
isOpen: isOpen
|
|
130
112
|
}, /*#__PURE__*/_react.default.createElement(_ListItemHead.StyledListItemHeadTitle, null, /*#__PURE__*/_react.default.createElement(_ListItemHead.StyledListItemHeadTitleText, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/list/list-item/list-item-head/ListItemHead.tsx"],"names":["ListItemHead","hoverItem","icons","images","isAnyItemExpandable","isExpandable","isOpen","onClick","onLongPress","rightElements","subtitle","shouldShowRoundImage","title","hasLoadedImage","setHasLoadedImage","shouldShowHoverItem","setShouldShowHoverItem","longPressTimeoutRef","handleImageLoaded","handleMouseEnter","handleMouseLeave","handleTouchStart","event","current","window","setTimeout","handleTouchEnd","clearTimeout","iconOrImageElement","gridImages","undefined","rotate","type","length","marginLeft","opacity","width","duration","displayName"],"mappings":";;;;;;;;;AAAA;;AAUA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAgCA,IAAMA,YAAmC,GAAG,SAAtCA,YAAsC,OAatC;AAAA,MAZFC,SAYE,QAZFA,SAYE;AAAA,MAXFC,KAWE,QAXFA,KAWE;AAAA,MAVFC,MAUE,QAVFA,MAUE;AAAA,MATFC,mBASE,QATFA,mBASE;AAAA,MARFC,YAQE,QARFA,YAQE;AAAA,MAPFC,MAOE,QAPFA,MAOE;AAAA,MANFC,OAME,QANFA,OAME;AAAA,MALFC,WAKE,QALFA,WAKE;AAAA,MAJFC,aAIE,QAJFA,aAIE;AAAA,MAHFC,QAGE,QAHFA,QAGE;AAAA,MAFFC,oBAEE,QAFFA,oBAEE;AAAA,MADFC,KACE,QADFA,KACE;;AACF,kBAA4C,qBAAS,KAAT,CAA5C;AAAA;AAAA,MAAOC,cAAP;AAAA,MAAuBC,iBAAvB;;AACA,mBAAsD,qBAAS,KAAT,CAAtD;AAAA;AAAA,MAAOC,mBAAP;AAAA,MAA4BC,sBAA5B;;AAEA,MAAMC,mBAAmB,GAAG,oBAA5B;AAEA,MAAMC,iBAAiB,GAAG,wBAAY,YAAM;AACxCJ,IAAAA,iBAAiB,CAAC,IAAD,CAAjB;AACH,GAFyB,EAEvB,EAFuB,CAA1B;AAIA,MAAMK,gBAAgB,GAAG,wBAAY;AAAA,WAAMH,sBAAsB,CAAC,IAAD,CAA5B;AAAA,GAAZ,EAAgD,EAAhD,CAAzB;AAEA,MAAMI,gBAAgB,GAAG,wBAAY;AAAA,WAAMJ,sBAAsB,CAAC,KAAD,CAA5B;AAAA,GAAZ,EAAiD,EAAjD,CAAzB;AAEA,MAAMK,gBAAgB,GAAG,wBACrB,UAACC,KAAD,EAAW;AACPL,IAAAA,mBAAmB,CAACM,OAApB,GAA8BC,MAAM,CAACC,UAAP,CAAkB,YAAM;AAClD,UAAI,OAAOjB,WAAP,KAAuB,UAA3B,EAAuC;AACnCA,QAAAA,WAAW,CAACc,KAAD,CAAX;AACH;AACJ,KAJ6B,EAI3B,GAJ2B,CAA9B;AAKH,GAPoB,EAQrB,CAACd,WAAD,CARqB,CAAzB;AAWA,MAAMkB,cAAc,GAAG,wBAAY,YAAM;AACrCC,IAAAA,YAAY,CAACV,mBAAmB,CAACM,OAArB,CAAZ;AACH,GAFsB,EAEpB,EAFoB,CAAvB;AAIA,MAAMK,kBAAkB,GAAG,oBAAQ,YAAM;AACrC,QAAI1B,KAAJ,EAAW;AACP,0BACI,6BAAC,oCAAD,qBACI,6BAAC,aAAD;AAAM,QAAA,KAAK,EAAEA,KAAb;AAAoB,QAAA,IAAI,EAAE;AAA1B,QADJ,CADJ;AAKH;;AAED,QAAIC,MAAM,IAAIA,MAAM,CAAC,CAAD,CAAhB,IAAuBA,MAAM,CAAC,CAAD,CAA7B,IAAoCA,MAAM,CAAC,CAAD,CAA9C,EAAmD;AAC/C,UAAM0B,UAAU,GAAG,CAAC1B,MAAM,CAAC,CAAD,CAAP,EAAYA,MAAM,CAAC,CAAD,CAAlB,EAAuBA,MAAM,CAAC,CAAD,CAA7B,CAAnB;AAEA,0BACI,6BAAC,kBAAD;AACI,QAAA,MAAM,EAAE0B,UADZ;AAEI,QAAA,oBAAoB,EAAElB,oBAF1B;AAGI,QAAA,IAAI,EAAE;AAHV,QADJ;AAOH;;AAED,QAAIR,MAAM,IAAIA,MAAM,CAAC,CAAD,CAApB,EAAyB;AACrB,0BACI,6BAAC,4CAAD;AAAgC,QAAA,oBAAoB,EAAEQ;AAAtD,sBACI,6BAAC,qCAAD;AACI,QAAA,QAAQ,EAAE,CAACE,cADf;AAEI,QAAA,MAAM,EAAEK,iBAFZ;AAGI,QAAA,GAAG,EAAEf,MAAM,CAAC,CAAD;AAHf,QADJ,CADJ;AASH;;AAED,WAAO2B,SAAP;AACH,GAlC0B,EAkCxB,CAACZ,iBAAD,EAAoBL,cAApB,EAAoCX,KAApC,EAA2CC,MAA3C,EAAmDQ,oBAAnD,CAlCwB,CAA3B;AAoCA,sBACI,6BAAC,gCAAD;AACI,IAAA,SAAS,EAAC,4BADd;AAEI,IAAA,WAAW,EAAE,OAAOJ,OAAP,KAAmB,UAAnB,IAAiCF,YAFlD;AAGI,IAAA,OAAO,EAAEE,OAHb;AAII,IAAA,YAAY,EAAEY,gBAJlB;AAKI,IAAA,YAAY,EAAEC,gBALlB;AAMI,IAAA,YAAY,EAAE,OAAOZ,WAAP,KAAuB,UAAvB,GAAoCa,gBAApC,GAAuDS,SANzE;AAOI,IAAA,UAAU,EAAE,OAAOtB,WAAP,KAAuB,UAAvB,GAAoCkB,cAApC,GAAqDI;AAPrE,KASK1B,mBAAmB,iBAChB,6BAAC,+CAAD;AACI,IAAA,OAAO,EAAE;AAAE2B,MAAAA,MAAM,EAAEzB,MAAM,GAAG,EAAH,GAAQ;AAAxB,KADb;AAEI,IAAA,OAAO,EAAE,KAFb;AAGI,IAAA,UAAU,EAAE;AAAE0B,MAAAA,IAAI,EAAE;AAAR;AAHhB,KAKK3B,YAAY,iBAAI,6BAAC,aAAD;AAAM,IAAA,KAAK,EAAE,CAAC,qBAAD;AAAb,IALrB,CAVR,EAkBKuB,kBAlBL,eAmBI,6BAAC,uCAAD;AACI,IAAA,kBAAkB,EAAEA,kBAAkB,KAAKE,SAD/C;AAEI,IAAA,MAAM,EAAExB;AAFZ,kBAII,6BAAC,qCAAD,qBACI,6BAAC,yCAAD;AAA6B,IAAA,SAAS,EAAC;AAAvC,KACKM,KADL,CADJ,EAIKH,aAAa,IAAIA,aAAa,CAACwB,MAAd,GAAuB,CAAxC,IAA6CxB,aAAa,CAAC,CAAD,CAA1D,iBACG,6BAAC,+CAAD,QACKA,aAAa,CAAC,CAAD,CADlB,CALR,CAJJ,EAcKC,QAAQ,iBACL,6BAAC,wCAAD,qBACI,6BAAC,4CAAD;AAAgC,IAAA,SAAS,EAAC;AAA1C,KACKA,QADL,CADJ,EAIKD,aAAa,IAAIA,aAAa,CAACwB,MAAd,GAAuB,CAAxC,IAA6CxB,aAAa,CAAC,CAAD,CAA1D,iBACG,6BAAC,kDAAD,QACKA,aAAa,CAAC,CAAD,CADlB,CALR,CAfR,CAnBJ,EA8CK,CAAAA,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAEwB,MAAf,MAA0B,CAA1B,iBACG,6BAAC,4CAAD,QAAiCxB,aAAa,CAAC,CAAD,CAA9C,CA/CR,EAiDKR,SAAS,iBACN,6BAAC,+CAAD;AACI,IAAA,OAAO,EAAE;AACLiC,MAAAA,UAAU,EAAEnB,mBAAmB,GAAG,CAAH,GAAO,CADjC;AAELoB,MAAAA,OAAO,EAAEpB,mBAAmB,GAAG,CAAH,GAAO,CAF9B;AAGLqB,MAAAA,KAAK,EAAErB,mBAAmB,GAAG,MAAH,GAAY;AAHjC,KADb;AAMI,IAAA,OAAO,EAAE,KANb;AAOI,IAAA,UAAU,EAAE;AAAEsB,MAAAA,QAAQ,EAAE,IAAZ;AAAkBL,MAAAA,IAAI,EAAE;AAAxB;AAPhB,KASK/B,SATL,CAlDR,CADJ;AAiEH,CA/ID;;AAiJAD,YAAY,CAACsC,WAAb,GAA2B,cAA3B;eAEetC,Y","sourcesContent":["import React, {\n FC,\n MouseEventHandler,\n ReactNode,\n TouchEventHandler,\n useCallback,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport GridImage from '../../../grid-image/GridImage';\nimport Icon from '../../../icon/Icon';\nimport {\n StyledListItemHead,\n StyledListItemHeadBottomRightElement,\n StyledListItemHeadContent,\n StyledListItemHeadIcon,\n StyledListItemHeadImage,\n StyledListItemHeadImageWrapper,\n StyledListItemHeadRightElement,\n StyledListItemHeadSubtitle,\n StyledListItemHeadSubtitleText,\n StyledListItemHeadTitle,\n StyledListItemHeadTitleText,\n StyledListItemHeadTopRightElement,\n StyledMotionListItemHeadHoverItem,\n StyledMotionListItemHeadIndicator,\n} from './ListItemHead.styles';\n\ntype ListItemHeadProps = {\n hoverItem?: ReactNode;\n icons?: string[];\n images?: string[];\n isAnyItemExpandable: boolean;\n isExpandable: boolean;\n isOpen: boolean;\n onClick?: MouseEventHandler<HTMLDivElement>;\n onLongPress?: TouchEventHandler<HTMLDivElement>;\n rightElements?: [ReactNode, ...ReactNode[]];\n subtitle?: ReactNode;\n shouldShowRoundImage?: boolean;\n title: ReactNode;\n};\n\nconst ListItemHead: FC<ListItemHeadProps> = ({\n hoverItem,\n icons,\n images,\n isAnyItemExpandable,\n isExpandable,\n isOpen,\n onClick,\n onLongPress,\n rightElements,\n subtitle,\n shouldShowRoundImage,\n title,\n}) => {\n const [hasLoadedImage, setHasLoadedImage] = useState(false);\n const [shouldShowHoverItem, setShouldShowHoverItem] = useState(false);\n\n const longPressTimeoutRef = useRef<number>();\n\n const handleImageLoaded = useCallback(() => {\n setHasLoadedImage(true);\n }, []);\n\n const handleMouseEnter = useCallback(() => setShouldShowHoverItem(true), []);\n\n const handleMouseLeave = useCallback(() => setShouldShowHoverItem(false), []);\n\n const handleTouchStart = useCallback<TouchEventHandler<HTMLDivElement>>(\n (event) => {\n longPressTimeoutRef.current = window.setTimeout(() => {\n if (typeof onLongPress === 'function') {\n onLongPress(event);\n }\n }, 400);\n },\n [onLongPress]\n );\n\n const handleTouchEnd = useCallback(() => {\n clearTimeout(longPressTimeoutRef.current);\n }, []);\n\n const iconOrImageElement = useMemo(() => {\n if (icons) {\n return (\n <StyledListItemHeadIcon>\n <Icon icons={icons} size={22} />\n </StyledListItemHeadIcon>\n );\n }\n\n if (images && images[0] && images[1] && images[2]) {\n const gridImages = [images[0], images[1], images[2]];\n\n return (\n <GridImage\n images={gridImages}\n shouldShowRoundImage={shouldShowRoundImage}\n size={40}\n />\n );\n }\n\n if (images && images[0]) {\n return (\n <StyledListItemHeadImageWrapper shouldShowRoundImage={shouldShowRoundImage}>\n <StyledListItemHeadImage\n isHidden={!hasLoadedImage}\n onLoad={handleImageLoaded}\n src={images[0]}\n />\n </StyledListItemHeadImageWrapper>\n );\n }\n\n return undefined;\n }, [handleImageLoaded, hasLoadedImage, icons, images, shouldShowRoundImage]);\n\n return (\n <StyledListItemHead\n className=\"beta-chayns-list-item-head\"\n isClickable={typeof onClick === 'function' || isExpandable}\n onClick={onClick}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onTouchStart={typeof onLongPress === 'function' ? handleTouchStart : undefined}\n onTouchEnd={typeof onLongPress === 'function' ? handleTouchEnd : undefined}\n >\n {isAnyItemExpandable && (\n <StyledMotionListItemHeadIndicator\n animate={{ rotate: isOpen ? 90 : 0 }}\n initial={false}\n transition={{ type: 'tween' }}\n >\n {isExpandable && <Icon icons={['fa fa-chevron-right']} />}\n </StyledMotionListItemHeadIndicator>\n )}\n {iconOrImageElement}\n <StyledListItemHeadContent\n isIconOrImageGiven={iconOrImageElement !== undefined}\n isOpen={isOpen}\n >\n <StyledListItemHeadTitle>\n <StyledListItemHeadTitleText className=\"ellipsis\">\n {title}\n </StyledListItemHeadTitleText>\n {rightElements && rightElements.length > 1 && rightElements[0] && (\n <StyledListItemHeadTopRightElement>\n {rightElements[0]}\n </StyledListItemHeadTopRightElement>\n )}\n </StyledListItemHeadTitle>\n {subtitle && (\n <StyledListItemHeadSubtitle>\n <StyledListItemHeadSubtitleText className=\"ellipsis\">\n {subtitle}\n </StyledListItemHeadSubtitleText>\n {rightElements && rightElements.length > 1 && rightElements[1] && (\n <StyledListItemHeadBottomRightElement>\n {rightElements[1]}\n </StyledListItemHeadBottomRightElement>\n )}\n </StyledListItemHeadSubtitle>\n )}\n </StyledListItemHeadContent>\n {rightElements?.length === 1 && (\n <StyledListItemHeadRightElement>{rightElements[0]}</StyledListItemHeadRightElement>\n )}\n {hoverItem && (\n <StyledMotionListItemHeadHoverItem\n animate={{\n marginLeft: shouldShowHoverItem ? 8 : 0,\n opacity: shouldShowHoverItem ? 1 : 0,\n width: shouldShowHoverItem ? 'auto' : 0,\n }}\n initial={false}\n transition={{ duration: 0.15, type: 'tween' }}\n >\n {hoverItem}\n </StyledMotionListItemHeadHoverItem>\n )}\n </StyledListItemHead>\n );\n};\n\nListItemHead.displayName = 'ListItemHead';\n\nexport default ListItemHead;\n"],"file":"ListItemHead.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/list/list-item/list-item-head/ListItemHead.tsx"],"names":["ListItemHead","hoverItem","icons","images","isAnyItemExpandable","isExpandable","isOpen","onClick","onLongPress","rightElements","subtitle","shouldShowRoundImage","title","leftElements","shouldShowHoverItem","setShouldShowHoverItem","longPressTimeoutRef","handleMouseEnter","handleMouseLeave","handleTouchStart","event","current","window","setTimeout","handleTouchEnd","clearTimeout","iconOrImageElement","undefined","rotate","type","length","marginLeft","opacity","width","duration","displayName"],"mappings":"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","sourcesContent":["import React, {\n FC,\n MouseEventHandler,\n ReactNode,\n TouchEventHandler,\n useCallback,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Icon from '../../../icon/Icon';\nimport ListItemIcon from './list-item-icon/ListItemIcon';\nimport ListItemImage from './list-item-image/ListItemImage';\nimport {\n StyledListItemHead,\n StyledListItemHeadBottomRightElement,\n StyledListItemHeadContent,\n StyledListItemHeadRightElement,\n StyledListItemHeadSubtitle,\n StyledListItemHeadSubtitleText,\n StyledListItemHeadTitle,\n StyledListItemHeadTitleText,\n StyledListItemHeadTopRightElement,\n StyledMotionListItemHeadHoverItem,\n StyledMotionListItemHeadIndicator,\n} from './ListItemHead.styles';\n\ntype ListItemHeadProps = {\n hoverItem?: ReactNode;\n icons?: string[];\n images?: string[];\n isAnyItemExpandable: boolean;\n isExpandable: boolean;\n isOpen: boolean;\n onClick?: MouseEventHandler<HTMLDivElement>;\n onLongPress?: TouchEventHandler<HTMLDivElement>;\n rightElements?: [ReactNode, ...ReactNode[]];\n subtitle?: ReactNode;\n leftElements?: ReactNode;\n shouldShowRoundImage?: boolean;\n title: ReactNode;\n};\n\nconst ListItemHead: FC<ListItemHeadProps> = ({\n hoverItem,\n icons,\n images,\n isAnyItemExpandable,\n isExpandable,\n isOpen,\n onClick,\n onLongPress,\n rightElements,\n subtitle,\n shouldShowRoundImage,\n title,\n leftElements,\n}) => {\n const [shouldShowHoverItem, setShouldShowHoverItem] = useState(false);\n\n const longPressTimeoutRef = useRef<number>();\n\n const handleMouseEnter = useCallback(() => setShouldShowHoverItem(true), []);\n\n const handleMouseLeave = useCallback(() => setShouldShowHoverItem(false), []);\n\n const handleTouchStart = useCallback<TouchEventHandler<HTMLDivElement>>(\n (event) => {\n longPressTimeoutRef.current = window.setTimeout(() => {\n if (typeof onLongPress === 'function') {\n onLongPress(event);\n }\n }, 400);\n },\n [onLongPress]\n );\n\n const handleTouchEnd = useCallback(() => {\n clearTimeout(longPressTimeoutRef.current);\n }, []);\n\n const iconOrImageElement = useMemo(() => {\n if (icons) {\n return <ListItemIcon icons={icons} />;\n }\n\n if (images) {\n return <ListItemImage images={images} shouldShowRoundImage={!!shouldShowRoundImage} />;\n }\n\n return undefined;\n }, [icons, images, shouldShowRoundImage]);\n\n return (\n <StyledListItemHead\n className=\"beta-chayns-list-item-head\"\n isClickable={typeof onClick === 'function' || isExpandable}\n onClick={onClick}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onTouchStart={typeof onLongPress === 'function' ? handleTouchStart : undefined}\n onTouchEnd={typeof onLongPress === 'function' ? handleTouchEnd : undefined}\n >\n {isAnyItemExpandable && (\n <StyledMotionListItemHeadIndicator\n animate={{ rotate: isOpen ? 90 : 0 }}\n initial={false}\n transition={{ type: 'tween' }}\n >\n {isExpandable && <Icon icons={['fa fa-chevron-right']} />}\n </StyledMotionListItemHeadIndicator>\n )}\n {leftElements}\n {iconOrImageElement}\n <StyledListItemHeadContent\n isIconOrImageGiven={iconOrImageElement !== undefined}\n isOpen={isOpen}\n >\n <StyledListItemHeadTitle>\n <StyledListItemHeadTitleText className=\"ellipsis\">\n {title}\n </StyledListItemHeadTitleText>\n {rightElements && rightElements.length > 1 && rightElements[0] && (\n <StyledListItemHeadTopRightElement>\n {rightElements[0]}\n </StyledListItemHeadTopRightElement>\n )}\n </StyledListItemHeadTitle>\n {subtitle && (\n <StyledListItemHeadSubtitle>\n <StyledListItemHeadSubtitleText className=\"ellipsis\">\n {subtitle}\n </StyledListItemHeadSubtitleText>\n {rightElements && rightElements.length > 1 && rightElements[1] && (\n <StyledListItemHeadBottomRightElement>\n {rightElements[1]}\n </StyledListItemHeadBottomRightElement>\n )}\n </StyledListItemHeadSubtitle>\n )}\n </StyledListItemHeadContent>\n {rightElements?.length === 1 && (\n <StyledListItemHeadRightElement>{rightElements[0]}</StyledListItemHeadRightElement>\n )}\n {hoverItem && (\n <StyledMotionListItemHeadHoverItem\n animate={{\n marginLeft: shouldShowHoverItem ? 8 : 0,\n opacity: shouldShowHoverItem ? 1 : 0,\n width: shouldShowHoverItem ? 'auto' : 0,\n }}\n initial={false}\n transition={{ duration: 0.15, type: 'tween' }}\n >\n {hoverItem}\n </StyledMotionListItemHeadHoverItem>\n )}\n </StyledListItemHead>\n );\n};\n\nListItemHead.displayName = 'ListItemHead';\n\nexport default ListItemHead;\n"],"file":"ListItemHead.js"}
|
|
@@ -4,16 +4,6 @@ export declare const StyledListItemHead: import("styled-components").StyledCompo
|
|
|
4
4
|
theme: import("../../../color-scheme-provider/ColorSchemeProvider").Theme;
|
|
5
5
|
}, never>;
|
|
6
6
|
export declare const StyledMotionListItemHeadIndicator: import("styled-components").StyledComponent<import("framer-motion").ForwardRefComponent<HTMLDivElement, import("framer-motion").HTMLMotionProps<"div">>, any, {}, never>;
|
|
7
|
-
export declare const StyledListItemHeadIcon: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
8
|
-
export declare const StyledListItemHeadImageWrapper: import("styled-components").StyledComponent<"div", any, {
|
|
9
|
-
shouldShowRoundImage?: boolean | undefined;
|
|
10
|
-
} & {
|
|
11
|
-
theme: import("../../../color-scheme-provider/ColorSchemeProvider").Theme;
|
|
12
|
-
}, never>;
|
|
13
|
-
declare type StyledListItemHeadImageProps = {
|
|
14
|
-
isHidden: boolean;
|
|
15
|
-
};
|
|
16
|
-
export declare const StyledListItemHeadImage: import("styled-components").StyledComponent<"img", any, StyledListItemHeadImageProps, never>;
|
|
17
7
|
declare type StyledListItemHeadContentProps = {
|
|
18
8
|
isIconOrImageGiven: boolean;
|
|
19
9
|
isOpen: boolean;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.StyledMotionListItemHeadIndicator = exports.StyledMotionListItemHeadHoverItem = exports.StyledListItemHeadTopRightElement = exports.StyledListItemHeadTitleText = exports.StyledListItemHeadTitle = exports.StyledListItemHeadSubtitleText = exports.StyledListItemHeadSubtitle = exports.StyledListItemHeadRightElement = exports.
|
|
8
|
+
exports.StyledMotionListItemHeadIndicator = exports.StyledMotionListItemHeadHoverItem = exports.StyledListItemHeadTopRightElement = exports.StyledListItemHeadTitleText = exports.StyledListItemHeadTitle = exports.StyledListItemHeadSubtitleText = exports.StyledListItemHeadSubtitle = exports.StyledListItemHeadRightElement = exports.StyledListItemHeadContent = exports.StyledListItemHeadBottomRightElement = exports.StyledListItemHead = void 0;
|
|
9
9
|
|
|
10
10
|
var _framerMotion = require("framer-motion");
|
|
11
11
|
|
|
12
12
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
13
13
|
|
|
14
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12
|
|
14
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
15
15
|
|
|
16
16
|
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); }
|
|
17
17
|
|
|
@@ -31,73 +31,43 @@ exports.StyledListItemHead = StyledListItemHead;
|
|
|
31
31
|
var StyledMotionListItemHeadIndicator = (0, _styledComponents.default)(_framerMotion.motion.div)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n align-items: center;\n display: flex;\n flex: 0 0 auto;\n height: 26px;\n justify-content: center;\n width: 26px;\n"])));
|
|
32
32
|
exports.StyledMotionListItemHeadIndicator = StyledMotionListItemHeadIndicator;
|
|
33
33
|
|
|
34
|
-
var
|
|
35
|
-
var
|
|
36
|
-
return theme['text-rgb'];
|
|
37
|
-
}, function (_ref4) {
|
|
38
|
-
var theme = _ref4.theme;
|
|
39
|
-
return theme['009-rgb'];
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
exports.StyledListItemHeadIcon = StyledListItemHeadIcon;
|
|
43
|
-
|
|
44
|
-
var StyledListItemHeadImageWrapper = _styledComponents.default.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n background-color: rgba(\n ", ",\n 0.1\n );\n border-radius: ", ";\n box-shadow: 0 0 0 1px\n rgba(", ", 0.08) inset;\n flex: 0 0 auto;\n height: 40px;\n overflow: hidden;\n transition: border-radius 0.3s ease;\n width: 40px;\n"])), function (_ref5) {
|
|
45
|
-
var theme = _ref5.theme;
|
|
46
|
-
return theme['text-rgb'];
|
|
47
|
-
}, function (_ref6) {
|
|
48
|
-
var shouldShowRoundImage = _ref6.shouldShowRoundImage;
|
|
49
|
-
return shouldShowRoundImage ? '50%' : undefined;
|
|
50
|
-
}, function (_ref7) {
|
|
51
|
-
var theme = _ref7.theme;
|
|
52
|
-
return theme['009-rgb'];
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
exports.StyledListItemHeadImageWrapper = StyledListItemHeadImageWrapper;
|
|
56
|
-
|
|
57
|
-
var StyledListItemHeadImage = _styledComponents.default.img(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n height: 100%;\n object-fit: cover;\n opacity: ", ";\n transition: opacity 0.4s ease;\n width: 100%;\n"])), function (_ref8) {
|
|
58
|
-
var isHidden = _ref8.isHidden;
|
|
59
|
-
return isHidden ? 0 : 1;
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
exports.StyledListItemHeadImage = StyledListItemHeadImage;
|
|
63
|
-
|
|
64
|
-
var StyledListItemHeadContent = _styledComponents.default.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n font-weight: ", ";\n justify-content: center;\n line-height: normal;\n margin-left: ", ";\n min-width: 0;\n"])), function (_ref9) {
|
|
65
|
-
var isOpen = _ref9.isOpen;
|
|
34
|
+
var StyledListItemHeadContent = _styledComponents.default.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n font-weight: ", ";\n justify-content: center;\n line-height: normal;\n margin-left: ", ";\n min-width: 0;\n"])), function (_ref3) {
|
|
35
|
+
var isOpen = _ref3.isOpen;
|
|
66
36
|
return isOpen ? 'bold' : 'normal';
|
|
67
|
-
}, function (
|
|
68
|
-
var isIconOrImageGiven =
|
|
37
|
+
}, function (_ref4) {
|
|
38
|
+
var isIconOrImageGiven = _ref4.isIconOrImageGiven;
|
|
69
39
|
return isIconOrImageGiven ? '10px' : undefined;
|
|
70
40
|
});
|
|
71
41
|
|
|
72
42
|
exports.StyledListItemHeadContent = StyledListItemHeadContent;
|
|
73
43
|
|
|
74
|
-
var StyledListItemHeadTitle = _styledComponents.default.div(
|
|
44
|
+
var StyledListItemHeadTitle = _styledComponents.default.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n align-items: center;\n display: flex;\n justify-content: space-between;\n"])));
|
|
75
45
|
|
|
76
46
|
exports.StyledListItemHeadTitle = StyledListItemHeadTitle;
|
|
77
47
|
|
|
78
|
-
var StyledListItemHeadTitleText = _styledComponents.default.span(
|
|
48
|
+
var StyledListItemHeadTitleText = _styledComponents.default.span(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n flex: 1 1 auto;\n min-width: 0;\n"])));
|
|
79
49
|
|
|
80
50
|
exports.StyledListItemHeadTitleText = StyledListItemHeadTitleText;
|
|
81
51
|
|
|
82
|
-
var StyledListItemHeadSubtitle = _styledComponents.default.div(
|
|
52
|
+
var StyledListItemHeadSubtitle = _styledComponents.default.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n align-items: center;\n display: flex;\n justify-content: space-between;\n margin-top: 2px;\n opacity: 0.75;\n"])));
|
|
83
53
|
|
|
84
54
|
exports.StyledListItemHeadSubtitle = StyledListItemHeadSubtitle;
|
|
85
55
|
|
|
86
|
-
var StyledListItemHeadSubtitleText = _styledComponents.default.span(
|
|
56
|
+
var StyledListItemHeadSubtitleText = _styledComponents.default.span(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n flex: 1 1 auto;\n font-size: 85%;\n min-width: 0;\n"])));
|
|
87
57
|
|
|
88
58
|
exports.StyledListItemHeadSubtitleText = StyledListItemHeadSubtitleText;
|
|
89
59
|
|
|
90
|
-
var StyledListItemHeadTopRightElement = _styledComponents.default.div(
|
|
60
|
+
var StyledListItemHeadTopRightElement = _styledComponents.default.div(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n flex: 0 0 auto;\n font-size: 85%;\n margin-left: 8px;\n opacity: 0.75;\n"])));
|
|
91
61
|
|
|
92
62
|
exports.StyledListItemHeadTopRightElement = StyledListItemHeadTopRightElement;
|
|
93
63
|
|
|
94
|
-
var StyledListItemHeadBottomRightElement = _styledComponents.default.div(
|
|
64
|
+
var StyledListItemHeadBottomRightElement = _styledComponents.default.div(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n flex: 0 0 auto;\n margin-left: 8px;\n font-size: 85%;\n"])));
|
|
95
65
|
|
|
96
66
|
exports.StyledListItemHeadBottomRightElement = StyledListItemHeadBottomRightElement;
|
|
97
67
|
|
|
98
|
-
var StyledListItemHeadRightElement = _styledComponents.default.div(
|
|
68
|
+
var StyledListItemHeadRightElement = _styledComponents.default.div(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n flex: 0 0 auto;\n margin-left: 8px;\n"])));
|
|
99
69
|
|
|
100
70
|
exports.StyledListItemHeadRightElement = StyledListItemHeadRightElement;
|
|
101
|
-
var StyledMotionListItemHeadHoverItem = (0, _styledComponents.default)(_framerMotion.motion.div)(
|
|
71
|
+
var StyledMotionListItemHeadHoverItem = (0, _styledComponents.default)(_framerMotion.motion.div)(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n overflow: hidden;\n"])));
|
|
102
72
|
exports.StyledMotionListItemHeadHoverItem = StyledMotionListItemHeadHoverItem;
|
|
103
73
|
//# sourceMappingURL=ListItemHead.styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/list/list-item/list-item-head/ListItemHead.styles.ts"],"names":["StyledListItemHead","styled","div","theme","text","isClickable","css","StyledMotionListItemHeadIndicator","motion","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/list/list-item/list-item-head/ListItemHead.styles.ts"],"names":["StyledListItemHead","styled","div","theme","text","isClickable","css","StyledMotionListItemHeadIndicator","motion","StyledListItemHeadContent","isOpen","isIconOrImageGiven","undefined","StyledListItemHeadTitle","StyledListItemHeadTitleText","span","StyledListItemHeadSubtitle","StyledListItemHeadSubtitleText","StyledListItemHeadTopRightElement","StyledListItemHeadBottomRightElement","StyledListItemHeadRightElement","StyledMotionListItemHeadHoverItem"],"mappings":";;;;;;;;;AAAA;;AACA;;;;;;;;;;AAOO,IAAMA,kBAAkB,GAAGC,0BAAOC,GAAV,+LAElB;AAAA,MAAGC,KAAH,QAAGA,KAAH;AAAA,SAAwCA,KAAK,CAACC,IAA9C;AAAA,CAFkB,EAOzB;AAAA,MAAGC,WAAH,SAAGA,WAAH;AAAA,SACEA,WAAW,QACXC,qBADW,gHADb;AAAA,CAPyB,CAAxB;;;AAcA,IAAMC,iCAAiC,GAAG,+BAAOC,qBAAON,GAAd,CAAH,+MAAvC;;;AAcA,IAAMO,yBAAyB,GAAGR,0BAAOC,GAAV,2QAInB;AAAA,MAAGQ,MAAH,SAAGA,MAAH;AAAA,SAAiBA,MAAM,GAAG,MAAH,GAAY,QAAnC;AAAA,CAJmB,EAOnB;AAAA,MAAGC,kBAAH,SAAGA,kBAAH;AAAA,SAA6BA,kBAAkB,GAAG,MAAH,GAAYC,SAA3D;AAAA,CAPmB,CAA/B;;;;AAWA,IAAMC,uBAAuB,GAAGZ,0BAAOC,GAAV,4JAA7B;;;;AAMA,IAAMY,2BAA2B,GAAGb,0BAAOc,IAAV,iHAAjC;;;;AAKA,IAAMC,0BAA0B,GAAGf,0BAAOC,GAAV,sMAAhC;;;;AAQA,IAAMe,8BAA8B,GAAGhB,0BAAOc,IAAV,sIAApC;;;;AAMA,IAAMG,iCAAiC,GAAGjB,0BAAOC,GAAV,8JAAvC;;;;AAOA,IAAMiB,oCAAoC,GAAGlB,0BAAOC,GAAV,4IAA1C;;;;AAMA,IAAMkB,8BAA8B,GAAGnB,0BAAOC,GAAV,uHAApC;;;AAKA,IAAMmB,iCAAiC,GAAG,+BAAOb,qBAAON,GAAd,CAAH,kGAAvC","sourcesContent":["import { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\nimport type { WithTheme } from '../../../color-scheme-provider/ColorSchemeProvider';\n\ntype StyledListItemHeadProps = WithTheme<{\n isClickable: boolean;\n}>;\n\nexport const StyledListItemHead = styled.div<StyledListItemHeadProps>`\n align-items: center;\n color: ${({ theme }: StyledListItemHeadProps) => theme.text};\n display: flex;\n height: 64px;\n padding: 12px 9px;\n\n ${({ isClickable }) =>\n isClickable &&\n css`\n cursor: pointer;\n `}\n`;\n\nexport const StyledMotionListItemHeadIndicator = styled(motion.div)`\n align-items: center;\n display: flex;\n flex: 0 0 auto;\n height: 26px;\n justify-content: center;\n width: 26px;\n`;\n\ntype StyledListItemHeadContentProps = {\n isIconOrImageGiven: boolean;\n isOpen: boolean;\n};\n\nexport const StyledListItemHeadContent = styled.div<StyledListItemHeadContentProps>`\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n font-weight: ${({ isOpen }) => (isOpen ? 'bold' : 'normal')};\n justify-content: center;\n line-height: normal;\n margin-left: ${({ isIconOrImageGiven }) => (isIconOrImageGiven ? '10px' : undefined)};\n min-width: 0;\n`;\n\nexport const StyledListItemHeadTitle = styled.div`\n align-items: center;\n display: flex;\n justify-content: space-between;\n`;\n\nexport const StyledListItemHeadTitleText = styled.span`\n flex: 1 1 auto;\n min-width: 0;\n`;\n\nexport const StyledListItemHeadSubtitle = styled.div`\n align-items: center;\n display: flex;\n justify-content: space-between;\n margin-top: 2px;\n opacity: 0.75;\n`;\n\nexport const StyledListItemHeadSubtitleText = styled.span`\n flex: 1 1 auto;\n font-size: 85%;\n min-width: 0;\n`;\n\nexport const StyledListItemHeadTopRightElement = styled.div`\n flex: 0 0 auto;\n font-size: 85%;\n margin-left: 8px;\n opacity: 0.75;\n`;\n\nexport const StyledListItemHeadBottomRightElement = styled.div`\n flex: 0 0 auto;\n margin-left: 8px;\n font-size: 85%;\n`;\n\nexport const StyledListItemHeadRightElement = styled.div`\n flex: 0 0 auto;\n margin-left: 8px;\n`;\n\nexport const StyledMotionListItemHeadHoverItem = styled(motion.div)`\n overflow: hidden;\n`;\n"],"file":"ListItemHead.styles.js"}
|
|
@@ -0,0 +1,27 @@
|
|
|
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 _Icon = _interopRequireDefault(require("../../../../icon/Icon"));
|
|
11
|
+
|
|
12
|
+
var _ListItemIcon = require("./ListItemIcon.styles");
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
var ListItemIcon = function ListItemIcon(_ref) {
|
|
17
|
+
var icons = _ref.icons;
|
|
18
|
+
return /*#__PURE__*/_react.default.createElement(_ListItemIcon.StyledListItemIcon, null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
19
|
+
icons: icons,
|
|
20
|
+
size: 22
|
|
21
|
+
}));
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
ListItemIcon.displayName = 'ListItemIcon';
|
|
25
|
+
var _default = ListItemIcon;
|
|
26
|
+
exports.default = _default;
|
|
27
|
+
//# sourceMappingURL=ListItemIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.tsx"],"names":["ListItemIcon","icons","displayName"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;AAMA,IAAMA,YAAyC,GAAG,SAA5CA,YAA4C,OAAe;AAAA,MAAZC,KAAY,QAAZA,KAAY;AAC7D,sBACI,6BAAC,gCAAD,qBACI,6BAAC,aAAD;AAAM,IAAA,KAAK,EAAEA,KAAb;AAAoB,IAAA,IAAI,EAAE;AAA1B,IADJ,CADJ;AAKH,CAND;;AAQAD,YAAY,CAACE,WAAb,GAA2B,cAA3B;eAEeF,Y","sourcesContent":["import React from 'react';\nimport Icon from '../../../../icon/Icon';\nimport { StyledListItemIcon } from './ListItemIcon.styles';\n\ntype ListItemIconProps = {\n icons: string[];\n};\n\nconst ListItemIcon: React.FC<ListItemIconProps> = ({ icons }) => {\n return (\n <StyledListItemIcon>\n <Icon icons={icons} size={22} />\n </StyledListItemIcon>\n );\n};\n\nListItemIcon.displayName = 'ListItemIcon';\n\nexport default ListItemIcon;\n"],"file":"ListItemIcon.js"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const StyledListItemIcon: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.StyledListItemIcon = void 0;
|
|
7
|
+
|
|
8
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
|
+
|
|
10
|
+
var _templateObject;
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
15
|
+
|
|
16
|
+
var StyledListItemIcon = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n align-items: center;\n background-color: rgba(", ", 0.1);\n box-shadow: 0 0 0 1px rgba(", ", 0.08)\n inset;\n display: flex;\n flex: 0 0 auto;\n height: 40px;\n justify-content: center;\n margin-right: 10px;\n width: 40px;\n"])), function (_ref) {
|
|
17
|
+
var theme = _ref.theme;
|
|
18
|
+
return theme['text-rgb'];
|
|
19
|
+
}, function (_ref2) {
|
|
20
|
+
var theme = _ref2.theme;
|
|
21
|
+
return theme['009-rgb'];
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
exports.StyledListItemIcon = StyledListItemIcon;
|
|
25
|
+
//# sourceMappingURL=ListItemIcon.styles.js.map
|
package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.ts"],"names":["StyledListItemIcon","styled","div","theme"],"mappings":";;;;;;;AAAA;;;;;;;;AAKO,IAAMA,kBAAkB,GAAGC,0BAAOC,GAAV,2UAEF;AAAA,MAAGC,KAAH,QAAGA,KAAH;AAAA,SAAwCA,KAAK,CAAC,UAAD,CAA7C;AAAA,CAFE,EAGE;AAAA,MAAGA,KAAH,SAAGA,KAAH;AAAA,SAAwCA,KAAK,CAAC,SAAD,CAA7C;AAAA,CAHF,CAAxB","sourcesContent":["import styled from 'styled-components';\nimport type { WithTheme } from '../../../../color-scheme-provider/ColorSchemeProvider';\n\ntype StyledListItemIconProps = WithTheme<unknown>;\n\nexport const StyledListItemIcon = styled.div`\n align-items: center;\n background-color: rgba(${({ theme }: StyledListItemIconProps) => theme['text-rgb']}, 0.1);\n box-shadow: 0 0 0 1px rgba(${({ theme }: StyledListItemIconProps) => theme['009-rgb']}, 0.08)\n inset;\n display: flex;\n flex: 0 0 auto;\n height: 40px;\n justify-content: center;\n margin-right: 10px;\n width: 40px;\n`;\n"],"file":"ListItemIcon.styles.js"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
12
|
+
var _GridImage = _interopRequireDefault(require("../../../../grid-image/GridImage"));
|
|
13
|
+
|
|
14
|
+
var _ListItemImage = require("./ListItemImage.styles");
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
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); }
|
|
19
|
+
|
|
20
|
+
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; }
|
|
21
|
+
|
|
22
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
23
|
+
|
|
24
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
25
|
+
|
|
26
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
27
|
+
|
|
28
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
29
|
+
|
|
30
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_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; }
|
|
31
|
+
|
|
32
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
33
|
+
|
|
34
|
+
var ListItemImage = function ListItemImage(_ref) {
|
|
35
|
+
var images = _ref.images,
|
|
36
|
+
shouldShowRoundImage = _ref.shouldShowRoundImage;
|
|
37
|
+
|
|
38
|
+
var _useState = (0, _react.useState)(false),
|
|
39
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
40
|
+
hasLoadedImage = _useState2[0],
|
|
41
|
+
setHasLoadedImage = _useState2[1];
|
|
42
|
+
|
|
43
|
+
var handleImageLoaded = (0, _react.useCallback)(function () {
|
|
44
|
+
setHasLoadedImage(true);
|
|
45
|
+
}, []);
|
|
46
|
+
|
|
47
|
+
if (images && images[0] && images[1] && images[2]) {
|
|
48
|
+
var gridImages = [images[0], images[1], images[2]];
|
|
49
|
+
return /*#__PURE__*/_react.default.createElement(_GridImage.default, {
|
|
50
|
+
images: gridImages,
|
|
51
|
+
shouldShowRoundImage: shouldShowRoundImage,
|
|
52
|
+
size: 40
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
if (images && images[0]) {
|
|
57
|
+
return /*#__PURE__*/_react.default.createElement(_ListItemImage.StyledListItemHeadImageWrapper, {
|
|
58
|
+
shouldShowRoundImage: shouldShowRoundImage
|
|
59
|
+
}, /*#__PURE__*/_react.default.createElement(_ListItemImage.StyledListItemHeadImage, {
|
|
60
|
+
isHidden: !hasLoadedImage,
|
|
61
|
+
onLoad: handleImageLoaded,
|
|
62
|
+
src: images[0]
|
|
63
|
+
}));
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
return null;
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
ListItemImage.displayName = 'ListItemImage';
|
|
70
|
+
var _default = ListItemImage;
|
|
71
|
+
exports.default = _default;
|
|
72
|
+
//# sourceMappingURL=ListItemImage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/components/list/list-item/list-item-head/list-item-image/ListItemImage.tsx"],"names":["ListItemImage","images","shouldShowRoundImage","hasLoadedImage","setHasLoadedImage","handleImageLoaded","gridImages","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,aAA2C,GAAG,SAA9CA,aAA8C,OAAsC;AAAA,MAAnCC,MAAmC,QAAnCA,MAAmC;AAAA,MAA3BC,oBAA2B,QAA3BA,oBAA2B;;AACtF,kBAA4C,qBAAS,KAAT,CAA5C;AAAA;AAAA,MAAOC,cAAP;AAAA,MAAuBC,iBAAvB;;AACA,MAAMC,iBAAiB,GAAG,wBAAY,YAAM;AACxCD,IAAAA,iBAAiB,CAAC,IAAD,CAAjB;AACH,GAFyB,EAEvB,EAFuB,CAA1B;;AAIA,MAAIH,MAAM,IAAIA,MAAM,CAAC,CAAD,CAAhB,IAAuBA,MAAM,CAAC,CAAD,CAA7B,IAAoCA,MAAM,CAAC,CAAD,CAA9C,EAAmD;AAC/C,QAAMK,UAAU,GAAG,CAACL,MAAM,CAAC,CAAD,CAAP,EAAYA,MAAM,CAAC,CAAD,CAAlB,EAAuBA,MAAM,CAAC,CAAD,CAA7B,CAAnB;AAEA,wBACI,6BAAC,kBAAD;AAAW,MAAA,MAAM,EAAEK,UAAnB;AAA+B,MAAA,oBAAoB,EAAEJ,oBAArD;AAA2E,MAAA,IAAI,EAAE;AAAjF,MADJ;AAGH;;AAED,MAAID,MAAM,IAAIA,MAAM,CAAC,CAAD,CAApB,EAAyB;AACrB,wBACI,6BAAC,6CAAD;AAAgC,MAAA,oBAAoB,EAAEC;AAAtD,oBACI,6BAAC,sCAAD;AACI,MAAA,QAAQ,EAAE,CAACC,cADf;AAEI,MAAA,MAAM,EAAEE,iBAFZ;AAGI,MAAA,GAAG,EAAEJ,MAAM,CAAC,CAAD;AAHf,MADJ,CADJ;AASH;;AAED,SAAO,IAAP;AACH,CA3BD;;AA6BAD,aAAa,CAACO,WAAd,GAA4B,eAA5B;eAEeP,a","sourcesContent":["import React, { useCallback, useState } from 'react';\nimport GridImage from '../../../../grid-image/GridImage';\nimport { StyledListItemHeadImage, StyledListItemHeadImageWrapper } from './ListItemImage.styles';\n\ntype ListItemImageProps = {\n images: string[];\n shouldShowRoundImage: boolean;\n};\n\nconst ListItemImage: React.FC<ListItemImageProps> = ({ images, shouldShowRoundImage }) => {\n const [hasLoadedImage, setHasLoadedImage] = useState(false);\n const handleImageLoaded = useCallback(() => {\n setHasLoadedImage(true);\n }, []);\n\n if (images && images[0] && images[1] && images[2]) {\n const gridImages = [images[0], images[1], images[2]];\n\n return (\n <GridImage images={gridImages} shouldShowRoundImage={shouldShowRoundImage} size={40} />\n );\n }\n\n if (images && images[0]) {\n return (\n <StyledListItemHeadImageWrapper shouldShowRoundImage={shouldShowRoundImage}>\n <StyledListItemHeadImage\n isHidden={!hasLoadedImage}\n onLoad={handleImageLoaded}\n src={images[0]}\n />\n </StyledListItemHeadImageWrapper>\n );\n }\n\n return null;\n};\n\nListItemImage.displayName = 'ListItemImage';\n\nexport default ListItemImage;\n"],"file":"ListItemImage.js"}
|
package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const StyledListItemHeadImageWrapper: import("styled-components").StyledComponent<"div", any, {
|
|
2
|
+
shouldShowRoundImage?: boolean | undefined;
|
|
3
|
+
} & {
|
|
4
|
+
theme: import("../../../../color-scheme-provider/ColorSchemeProvider").Theme;
|
|
5
|
+
}, never>;
|
|
6
|
+
declare type StyledListItemHeadImageProps = {
|
|
7
|
+
isHidden: boolean;
|
|
8
|
+
};
|
|
9
|
+
export declare const StyledListItemHeadImage: import("styled-components").StyledComponent<"img", any, StyledListItemHeadImageProps, never>;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.StyledListItemHeadImageWrapper = exports.StyledListItemHeadImage = void 0;
|
|
7
|
+
|
|
8
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
|
+
|
|
10
|
+
var _templateObject, _templateObject2;
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
15
|
+
|
|
16
|
+
var StyledListItemHeadImageWrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n background-color: rgba(\n ", ",\n 0.1\n );\n border-radius: ", ";\n box-shadow: 0 0 0 1px\n rgba(", ", 0.08) inset;\n flex: 0 0 auto;\n height: 40px;\n overflow: hidden;\n transition: border-radius 0.3s ease;\n width: 40px;\n"])), function (_ref) {
|
|
17
|
+
var theme = _ref.theme;
|
|
18
|
+
return theme['text-rgb'];
|
|
19
|
+
}, function (_ref2) {
|
|
20
|
+
var shouldShowRoundImage = _ref2.shouldShowRoundImage;
|
|
21
|
+
return shouldShowRoundImage ? '50%' : undefined;
|
|
22
|
+
}, function (_ref3) {
|
|
23
|
+
var theme = _ref3.theme;
|
|
24
|
+
return theme['009-rgb'];
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
exports.StyledListItemHeadImageWrapper = StyledListItemHeadImageWrapper;
|
|
28
|
+
|
|
29
|
+
var StyledListItemHeadImage = _styledComponents.default.img(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n height: 100%;\n object-fit: cover;\n opacity: ", ";\n transition: opacity 0.4s ease;\n width: 100%;\n"])), function (_ref4) {
|
|
30
|
+
var isHidden = _ref4.isHidden;
|
|
31
|
+
return isHidden ? 0 : 1;
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
exports.StyledListItemHeadImage = StyledListItemHeadImage;
|
|
35
|
+
//# sourceMappingURL=ListItemImage.styles.js.map
|
package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.ts"],"names":["StyledListItemHeadImageWrapper","styled","div","theme","shouldShowRoundImage","undefined","StyledListItemHeadImage","img","isHidden"],"mappings":";;;;;;;AAAA;;;;;;;;AAOO,IAAMA,8BAA8B,GAAGC,0BAAOC,GAAV,0VAEjC;AAAA,MAAGC,KAAH,QAAGA,KAAH;AAAA,SAAoDA,KAAK,CAAC,UAAD,CAAzD;AAAA,CAFiC,EAKtB;AAAA,MAAGC,oBAAH,SAAGA,oBAAH;AAAA,SAA+BA,oBAAoB,GAAG,KAAH,GAAWC,SAA9D;AAAA,CALsB,EAO5B;AAAA,MAAGF,KAAH,SAAGA,KAAH;AAAA,SAAoDA,KAAK,CAAC,SAAD,CAAzD;AAAA,CAP4B,CAApC;;;;AAmBA,IAAMG,uBAAuB,GAAGL,0BAAOM,GAAV,+LAGrB;AAAA,MAAGC,QAAH,SAAGA,QAAH;AAAA,SAAmBA,QAAQ,GAAG,CAAH,GAAO,CAAlC;AAAA,CAHqB,CAA7B","sourcesContent":["import styled from 'styled-components';\nimport type { WithTheme } from '../../../../color-scheme-provider/ColorSchemeProvider';\n\ntype StyledListItemHeadImageWrapperProps = WithTheme<{\n shouldShowRoundImage?: boolean;\n}>;\n\nexport const StyledListItemHeadImageWrapper = styled.div<StyledListItemHeadImageWrapperProps>`\n background-color: rgba(\n ${({ theme }: StyledListItemHeadImageWrapperProps) => theme['text-rgb']},\n 0.1\n );\n border-radius: ${({ shouldShowRoundImage }) => (shouldShowRoundImage ? '50%' : undefined)};\n box-shadow: 0 0 0 1px\n rgba(${({ theme }: StyledListItemHeadImageWrapperProps) => theme['009-rgb']}, 0.08) inset;\n flex: 0 0 auto;\n height: 40px;\n overflow: hidden;\n transition: border-radius 0.3s ease;\n width: 40px;\n`;\n\ntype StyledListItemHeadImageProps = {\n isHidden: boolean;\n};\n\nexport const StyledListItemHeadImage = styled.img<StyledListItemHeadImageProps>`\n height: 100%;\n object-fit: cover;\n opacity: ${({ isHidden }) => (isHidden ? 0 : 1)};\n transition: opacity 0.4s ease;\n width: 100%;\n`;\n"],"file":"ListItemImage.styles.js"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
let chayns: Chayns;
|
|
3
|
+
}
|
|
4
|
+
export interface Chayns {
|
|
5
|
+
dialog: Dialog;
|
|
6
|
+
env: Env;
|
|
7
|
+
}
|
|
8
|
+
export interface Dialog {
|
|
9
|
+
select(config: {
|
|
10
|
+
title?: string;
|
|
11
|
+
message?: string;
|
|
12
|
+
list: Array<SelectDialogItem>;
|
|
13
|
+
multiselect?: boolean;
|
|
14
|
+
type?: SelectType;
|
|
15
|
+
preventCloseOnClick?: boolean;
|
|
16
|
+
buttons?: DialogButton[];
|
|
17
|
+
selectAllButton?: string;
|
|
18
|
+
}): Promise<SelectDialogResult>;
|
|
19
|
+
}
|
|
20
|
+
declare enum ButtonText {
|
|
21
|
+
Cancel = "Abbrechen",
|
|
22
|
+
No = "Nein",
|
|
23
|
+
Ok = "OK",
|
|
24
|
+
Yes = "Ja"
|
|
25
|
+
}
|
|
26
|
+
export declare enum ButtonType {
|
|
27
|
+
Cancel = -1,
|
|
28
|
+
Negative = 0,
|
|
29
|
+
Positive = 1
|
|
30
|
+
}
|
|
31
|
+
export interface DialogButton {
|
|
32
|
+
text: ButtonText | string;
|
|
33
|
+
buttonType: ButtonType | number;
|
|
34
|
+
collapseTime?: number;
|
|
35
|
+
textColor?: string;
|
|
36
|
+
backgroundColor?: string;
|
|
37
|
+
}
|
|
38
|
+
export interface SelectDialogItem {
|
|
39
|
+
name: string;
|
|
40
|
+
value: string | number;
|
|
41
|
+
isSelected?: boolean;
|
|
42
|
+
}
|
|
43
|
+
export interface SelectDialogResult {
|
|
44
|
+
buttonType: ButtonType | number;
|
|
45
|
+
selection: Array<SelectDialogItem>;
|
|
46
|
+
}
|
|
47
|
+
declare enum SelectType {
|
|
48
|
+
Default = 0,
|
|
49
|
+
Icon = 1,
|
|
50
|
+
IconAndText
|
|
51
|
+
}
|
|
52
|
+
export interface Env {
|
|
53
|
+
isMobile: boolean;
|
|
54
|
+
isTablet: boolean;
|
|
55
|
+
}
|
|
56
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ButtonType = void 0;
|
|
7
|
+
var ButtonType;
|
|
8
|
+
exports.ButtonType = ButtonType;
|
|
9
|
+
|
|
10
|
+
(function (ButtonType) {
|
|
11
|
+
ButtonType[ButtonType["Cancel"] = -1] = "Cancel";
|
|
12
|
+
ButtonType[ButtonType["Negative"] = 0] = "Negative";
|
|
13
|
+
ButtonType[ButtonType["Positive"] = 1] = "Positive";
|
|
14
|
+
})(ButtonType || (exports.ButtonType = ButtonType = {}));
|
|
15
|
+
//# sourceMappingURL=chayns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/types/chayns.ts"],"names":["ButtonType"],"mappings":";;;;;;IA6BYA,U;;;WAAAA,U;AAAAA,EAAAA,U,CAAAA,U;AAAAA,EAAAA,U,CAAAA,U;AAAAA,EAAAA,U,CAAAA,U;GAAAA,U,0BAAAA,U","sourcesContent":["declare global {\n let chayns: Chayns;\n}\n\nexport interface Chayns {\n dialog: Dialog;\n env: Env;\n}\n\nexport interface Dialog {\n select(config: {\n title?: string;\n message?: string;\n list: Array<SelectDialogItem>;\n multiselect?: boolean;\n type?: SelectType;\n preventCloseOnClick?: boolean;\n buttons?: DialogButton[];\n selectAllButton?: string;\n }): Promise<SelectDialogResult>;\n}\n\ndeclare enum ButtonText {\n Cancel = 'Abbrechen',\n No = 'Nein',\n Ok = 'OK',\n Yes = 'Ja',\n}\n\nexport enum ButtonType {\n Cancel = -1,\n Negative = 0,\n Positive = 1,\n}\n\nexport interface DialogButton {\n text: ButtonText | string;\n buttonType: ButtonType | number;\n collapseTime?: number;\n textColor?: string;\n backgroundColor?: string;\n}\n\nexport interface SelectDialogItem {\n name: string;\n value: string | number;\n isSelected?: boolean;\n}\n\nexport interface SelectDialogResult {\n buttonType: ButtonType | number;\n selection: Array<SelectDialogItem>;\n}\n\ndeclare enum SelectType {\n Default = 0,\n Icon = 1,\n IconAndText,\n}\n\nexport interface Env {\n isMobile: boolean;\n isTablet: boolean;\n}\n"],"file":"chayns.js"}
|