@activecollab/components 1.0.168 → 1.0.171
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/dist/cjs/components/Button/AddToListButton/Styles.js +1 -1
- package/dist/cjs/components/Button/AddToListButton/Styles.js.map +1 -1
- package/dist/cjs/components/ComboBox/ComboBox.js +35 -13
- package/dist/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/dist/cjs/components/Entity/EntityCard.js +15 -28
- package/dist/cjs/components/Entity/EntityCard.js.map +1 -1
- package/dist/cjs/components/Entity/EntityGroup.js +13 -13
- package/dist/cjs/components/Entity/EntityGroup.js.map +1 -1
- package/dist/cjs/components/Entity/EntityProperty.js +14 -2
- package/dist/cjs/components/Entity/EntityProperty.js.map +1 -1
- package/dist/cjs/components/Entity/Styles.js +2 -6
- package/dist/cjs/components/Entity/Styles.js.map +1 -1
- package/dist/cjs/components/Entity/index.js.map +1 -1
- package/dist/esm/components/Button/AddToListButton/Styles.js +1 -1
- package/dist/esm/components/Button/AddToListButton/Styles.js.map +1 -1
- package/dist/esm/components/ComboBox/ComboBox.d.ts +2 -0
- package/dist/esm/components/ComboBox/ComboBox.d.ts.map +1 -1
- package/dist/esm/components/ComboBox/ComboBox.js +32 -13
- package/dist/esm/components/ComboBox/ComboBox.js.map +1 -1
- package/dist/esm/components/Entity/EntityCard.d.ts +8 -9
- package/dist/esm/components/Entity/EntityCard.d.ts.map +1 -1
- package/dist/esm/components/Entity/EntityCard.js +17 -29
- package/dist/esm/components/Entity/EntityCard.js.map +1 -1
- package/dist/esm/components/Entity/EntityGroup.d.ts +5 -0
- package/dist/esm/components/Entity/EntityGroup.d.ts.map +1 -1
- package/dist/esm/components/Entity/EntityGroup.js +9 -11
- package/dist/esm/components/Entity/EntityGroup.js.map +1 -1
- package/dist/esm/components/Entity/EntityProperty.d.ts +0 -1
- package/dist/esm/components/Entity/EntityProperty.d.ts.map +1 -1
- package/dist/esm/components/Entity/EntityProperty.js +7 -2
- package/dist/esm/components/Entity/EntityProperty.js.map +1 -1
- package/dist/esm/components/Entity/Styles.d.ts.map +1 -1
- package/dist/esm/components/Entity/Styles.js +2 -6
- package/dist/esm/components/Entity/Styles.js.map +1 -1
- package/dist/esm/components/Entity/index.d.ts +6 -7
- package/dist/esm/components/Entity/index.d.ts.map +1 -1
- package/dist/esm/components/Entity/index.js.map +1 -1
- package/dist/index.js +168 -165
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -20,7 +20,7 @@ StyledText.displayName = "StyledText";
|
|
|
20
20
|
var StyledAddCrossIcon = (0, _styledComponents.default)(_.AddCrossIcon).withConfig({
|
|
21
21
|
displayName: "Styles__StyledAddCrossIcon",
|
|
22
22
|
componentId: "sc-1fx7urq-1"
|
|
23
|
-
})(["fill:var(--page-paper-main);background:var(--color-primary);border-radius:30px;padding:
|
|
23
|
+
})(["fill:var(--page-paper-main);background:var(--color-primary);border-radius:30px;padding:7px;box-sizing:content-box;"]);
|
|
24
24
|
exports.StyledAddCrossIcon = StyledAddCrossIcon;
|
|
25
25
|
StyledAddCrossIcon.displayName = "StyledAddCrossIcon";
|
|
26
26
|
var StyledAddToListButton = (0, _styledComponents.default)("button").withConfig({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Button/AddToListButton/Styles.ts"],"names":["StyledText","Body2","displayName","StyledAddCrossIcon","AddCrossIcon","StyledAddToListButton"],"mappings":";;;;;;;AAAA;;AACA;;;;AAEO,IAAMA,UAAU,GAAG,+BAAOC,OAAP,CAAH;AAAA;AAAA;AAAA,8EAAhB;;AAMPD,UAAU,CAACE,WAAX,GAAyB,YAAzB;AAEO,IAAMC,kBAAkB,GAAG,+BAAOC,cAAP,CAAH;AAAA;AAAA;AAAA,0HAAxB;;AAOPD,kBAAkB,CAACD,WAAnB,GAAiC,oBAAjC;AAEO,IAAMG,qBAAqB,GAAG,+BAAO,QAAP,CAAH;AAAA;AAAA;AAAA,mgBA0B5BL,UA1B4B,EAqC5BG,kBArC4B,CAA3B;;AA6CPE,qBAAqB,CAACH,WAAtB,GAAoC,uBAApC","sourcesContent":["import styled from \"styled-components\";\nimport { AddCrossIcon, Body2 } from \"../..\";\n\nexport const StyledText = styled(Body2)`\n transition: ease 0.3s all;\n color: var(--color-primary);\n position: relative;\n`;\n\nStyledText.displayName = \"StyledText\";\n\nexport const StyledAddCrossIcon = styled(AddCrossIcon)`\n fill: var(--page-paper-main);\n background: var(--color-primary);\n border-radius: 30px;\n padding:
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Button/AddToListButton/Styles.ts"],"names":["StyledText","Body2","displayName","StyledAddCrossIcon","AddCrossIcon","StyledAddToListButton"],"mappings":";;;;;;;AAAA;;AACA;;;;AAEO,IAAMA,UAAU,GAAG,+BAAOC,OAAP,CAAH;AAAA;AAAA;AAAA,8EAAhB;;AAMPD,UAAU,CAACE,WAAX,GAAyB,YAAzB;AAEO,IAAMC,kBAAkB,GAAG,+BAAOC,cAAP,CAAH;AAAA;AAAA;AAAA,0HAAxB;;AAOPD,kBAAkB,CAACD,WAAnB,GAAiC,oBAAjC;AAEO,IAAMG,qBAAqB,GAAG,+BAAO,QAAP,CAAH;AAAA;AAAA;AAAA,mgBA0B5BL,UA1B4B,EAqC5BG,kBArC4B,CAA3B;;AA6CPE,qBAAqB,CAACH,WAAtB,GAAoC,uBAApC","sourcesContent":["import styled from \"styled-components\";\nimport { AddCrossIcon, Body2 } from \"../..\";\n\nexport const StyledText = styled(Body2)`\n transition: ease 0.3s all;\n color: var(--color-primary);\n position: relative;\n`;\n\nStyledText.displayName = \"StyledText\";\n\nexport const StyledAddCrossIcon = styled(AddCrossIcon)`\n fill: var(--page-paper-main);\n background: var(--color-primary);\n border-radius: 30px;\n padding: 7px;\n box-sizing: content-box;\n`;\nStyledAddCrossIcon.displayName = \"StyledAddCrossIcon\";\n\nexport const StyledAddToListButton = styled(\"button\")`\n display: flex;\n justify-content: center;\n gap: 12px;\n align-items: center;\n height: 32px;\n padding: 4px 16px 4px 4px;\n position: relative;\n background: none;\n border: none;\n cursor: pointer;\n\n &:before {\n content: \"\";\n display: block;\n height: 2px;\n width: 0%;\n position: absolute;\n left: 16px;\n background: var(--color-primary);\n transition: ease 0.3s all;\n border-radius: 30px;\n opacity: 0;\n }\n\n &:hover {\n ${StyledText} {\n color: var(--page-paper-main);\n }\n\n &:before {\n height: 32px;\n width: 100%;\n left: 0;\n opacity: 1;\n }\n\n ${StyledAddCrossIcon} {\n fill: var(--page-paper-main);\n transform: rotate(90deg);\n transition: ease 0.3s;\n }\n }\n`;\n\nStyledAddToListButton.displayName = \"StyledAddToListButton\";\n"],"file":"Styles.js"}
|
|
@@ -47,7 +47,13 @@ var _Trigger = require("../Trigger");
|
|
|
47
47
|
|
|
48
48
|
var _Typography = require("../Typography/Typography");
|
|
49
49
|
|
|
50
|
-
var
|
|
50
|
+
var _helpers = require("../../helpers");
|
|
51
|
+
|
|
52
|
+
var _ConditionWrapper = require("../../helpers/ConditionWrapper/ConditionWrapper");
|
|
53
|
+
|
|
54
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
55
|
+
|
|
56
|
+
var _excluded = ["options", "selected", "loading", "loadingText", "onChange", "placeholder", "handleEmptyAction", "disabled", "size", "invalid", "type", "renderChip", "forceCloseMenu", "renderOption", "limitChips", "hiddenNumberText", "inPortal", "inputWrapperClassName"];
|
|
51
57
|
|
|
52
58
|
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); }
|
|
53
59
|
|
|
@@ -74,7 +80,7 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
|
74
80
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
75
81
|
|
|
76
82
|
var ComboBox = function ComboBox(_ref) {
|
|
77
|
-
var _comboBoxRef$
|
|
83
|
+
var _comboBoxRef$current2, _comboBoxRef$current3;
|
|
78
84
|
|
|
79
85
|
var _ref$options = _ref.options,
|
|
80
86
|
options = _ref$options === void 0 ? [] : _ref$options,
|
|
@@ -100,6 +106,9 @@ var ComboBox = function ComboBox(_ref) {
|
|
|
100
106
|
_ref$limitChips = _ref.limitChips,
|
|
101
107
|
limitChips = _ref$limitChips === void 0 ? 2 : _ref$limitChips,
|
|
102
108
|
hiddenNumberText = _ref.hiddenNumberText,
|
|
109
|
+
_ref$inPortal = _ref.inPortal,
|
|
110
|
+
inPortal = _ref$inPortal === void 0 ? false : _ref$inPortal,
|
|
111
|
+
inputWrapperClassName = _ref.inputWrapperClassName,
|
|
103
112
|
prop = _objectWithoutProperties(_ref, _excluded);
|
|
104
113
|
|
|
105
114
|
var selectedName = (0, _react.useMemo)(function () {
|
|
@@ -145,14 +154,21 @@ var ComboBox = function ComboBox(_ref) {
|
|
|
145
154
|
var handleRef = (0, _useForkRef.default)(setChildNode, elementRef);
|
|
146
155
|
var wrapperRef = (0, _react.useRef)(null);
|
|
147
156
|
var chipWrapper = (0, _react.useRef)(null);
|
|
157
|
+
var comboBoxRef = (0, _react.useRef)(null);
|
|
148
158
|
|
|
149
159
|
var _useState5 = (0, _react.useState)(false),
|
|
150
160
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
151
161
|
open = _useState6[0],
|
|
152
162
|
setOpen = _useState6[1];
|
|
153
163
|
|
|
154
|
-
(0, _useOnClickOutside.useOnClickOutside)(wrapperRef, function () {
|
|
155
|
-
|
|
164
|
+
(0, _useOnClickOutside.useOnClickOutside)(wrapperRef, function (e) {
|
|
165
|
+
var _comboBoxRef$current;
|
|
166
|
+
|
|
167
|
+
if (e.target && (_comboBoxRef$current = comboBoxRef.current) !== null && _comboBoxRef$current !== void 0 && _comboBoxRef$current.contains(e.target)) {
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
setOpen(false);
|
|
156
172
|
});
|
|
157
173
|
var handleOnKeyDown = (0, _react.useCallback)(function (e) {
|
|
158
174
|
if (e.key === "Escape" && open) {
|
|
@@ -223,7 +239,6 @@ var ComboBox = function ComboBox(_ref) {
|
|
|
223
239
|
var handleMouseDown = (0, _react.useCallback)(function (e) {
|
|
224
240
|
e.preventDefault();
|
|
225
241
|
}, []);
|
|
226
|
-
var comboBoxRef = (0, _react.useRef)(null);
|
|
227
242
|
var handleBlur = (0, _react.useCallback)(function () {
|
|
228
243
|
setValue(selectedName);
|
|
229
244
|
}, [selectedName]);
|
|
@@ -324,12 +339,12 @@ var ComboBox = function ComboBox(_ref) {
|
|
|
324
339
|
var showXIcon = Array.isArray(selected) && type === "multiple" && selected.length > 0;
|
|
325
340
|
var hasSelected = type === "multiple" && Array.isArray(selected) && selected.length > 0;
|
|
326
341
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
327
|
-
className: "c-combo-box"
|
|
328
|
-
ref: wrapperRef
|
|
342
|
+
className: "c-combo-box"
|
|
329
343
|
}, type === "multiple" ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_StyledStyledInputWrapper, {
|
|
330
344
|
$size: size,
|
|
331
345
|
$invalid: invalid,
|
|
332
|
-
|
|
346
|
+
ref: comboBoxRef,
|
|
347
|
+
className: (0, _classnames.default)("c-combo-box-input-wrapper", inputWrapperClassName),
|
|
333
348
|
onClick: function onClick() {
|
|
334
349
|
var _elementRef$current;
|
|
335
350
|
|
|
@@ -365,7 +380,7 @@ var ComboBox = function ComboBox(_ref) {
|
|
|
365
380
|
}, /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxCloseSmallIcon, null)), /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxCollapseExpandSingleIcon, {
|
|
366
381
|
$open: open
|
|
367
382
|
}))))) : /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxInput, {
|
|
368
|
-
className: "c-combo-box-input",
|
|
383
|
+
className: (0, _classnames.default)("c-combo-box-input", inputWrapperClassName),
|
|
369
384
|
onBlur: handleBlur,
|
|
370
385
|
onFocus: onOpen,
|
|
371
386
|
wrapRef: comboBoxRef,
|
|
@@ -389,19 +404,26 @@ var ComboBox = function ComboBox(_ref) {
|
|
|
389
404
|
}, /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxCloseSmallIcon, null)) : null, /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxCollapseExpandSingleIcon, {
|
|
390
405
|
$open: open
|
|
391
406
|
})) : null
|
|
392
|
-
}), !disabled ? /*#__PURE__*/_react.default.createElement(
|
|
407
|
+
}), !disabled ? /*#__PURE__*/_react.default.createElement(_ConditionWrapper.ConditionalWrapper, {
|
|
408
|
+
condition: inPortal,
|
|
409
|
+
wrap: function wrap(children) {
|
|
410
|
+
return /*#__PURE__*/_react.default.createElement(_helpers.Portal, null, children);
|
|
411
|
+
}
|
|
412
|
+
}, /*#__PURE__*/_react.default.createElement(_Popper.Popper, {
|
|
393
413
|
anchorEl: comboBoxRef.current,
|
|
394
414
|
open: open,
|
|
395
415
|
placement: "bottom",
|
|
396
416
|
style: {
|
|
397
|
-
zIndex: 10
|
|
417
|
+
zIndex: 10,
|
|
418
|
+
width: (_comboBoxRef$current2 = comboBoxRef.current) === null || _comboBoxRef$current2 === void 0 ? void 0 : _comboBoxRef$current2.clientWidth
|
|
398
419
|
},
|
|
420
|
+
ref: wrapperRef,
|
|
399
421
|
strategy: "fixed"
|
|
400
422
|
}, /*#__PURE__*/_react.default.createElement(_reactRemoveScroll.RemoveScroll, {
|
|
401
423
|
noIsolation: true,
|
|
402
424
|
allowPinchZoom: true
|
|
403
425
|
}, /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxList, {
|
|
404
|
-
$width: (_comboBoxRef$
|
|
426
|
+
$width: (_comboBoxRef$current3 = comboBoxRef.current) === null || _comboBoxRef$current3 === void 0 ? void 0 : _comboBoxRef$current3.clientWidth
|
|
405
427
|
}, /*#__PURE__*/_react.default.createElement(_Autocomplete.Autocomplete, _extends({}, prop, {
|
|
406
428
|
inputEl: childNode,
|
|
407
429
|
selected: selected,
|
|
@@ -410,7 +432,7 @@ var ComboBox = function ComboBox(_ref) {
|
|
|
410
432
|
options: options,
|
|
411
433
|
type: type,
|
|
412
434
|
handleEmptyAction: emptyAction
|
|
413
|
-
}))))) : null);
|
|
435
|
+
})))))) : null);
|
|
414
436
|
};
|
|
415
437
|
|
|
416
438
|
exports.ComboBox = ComboBox;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"names":["ComboBox","options","selected","loading","loadingText","onChange","placeholder","handleEmptyAction","disabled","size","invalid","type","renderChip","forceCloseMenu","renderOption","limitChips","hiddenNumberText","prop","selectedName","value","map","v","find","q","id","name","setValue","handleOnChange","e","target","childNode","setChildNode","elementRef","handleRef","wrapperRef","chipWrapper","open","setOpen","handleOnKeyDown","key","stopPropagation","focus","blur","emptyAction","handleChange","selectedValue","onOpen","handleRenderOption","option","props","image","color","textColor","handleDeselect","handleMouseDown","preventDefault","comboBoxRef","handleBlur","renderChipAdornment","index","avatarProps","leftAdornment","undefined","Array","isArray","includes","newSelected","filter","item","autoSize","length","startAdornment","elements","total","forEach","isGrouped","push","groupedOptions","o","_index","hidden","splice","showXIcon","hasSelected","current","display","flex","alignSelf","width","zIndex","clientWidth","displayName"],"mappings":"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","sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport { RadioButton } from \"../RadioButton\";\nimport { Autocomplete } from \"../Autocomplete\";\nimport { Button } from \"../Button/Button\";\nimport {\n IAutocompleteProps,\n isOptionGroup,\n} from \"../Autocomplete/Autocomplete\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Popper } from \"../Popper\";\nimport { IOptionGroupProps, IOptionItemProps } from \"../Select\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { SpinnerLoader } from \"../Loaders/Spinner/SpinnerLoader\";\nimport { OptionContent } from \"../Select/OptionContent/OptionContent\";\nimport {\n StyledComboBoxCloseSmallIcon,\n StyledComboBoxCollapseExpandSingleIcon,\n StyledComboBoxInput,\n StyledComboBoxList,\n StyledChipWrapper,\n} from \"./Styles\";\nimport { InputSize } from \"../Input/types\";\nimport { InputAdornment } from \"../Input/InputAdornment\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Chip } from \"../Chip\";\nimport { StyledInput, StyledInputWrapper } from \"../Input/Styles\";\nimport { useOnClickOutside } from \"../../hooks/useOnClickOutside\";\nimport { Avatar, IAvatar } from \"../Avatar\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\nimport tw from \"twin.macro\";\n\nexport interface IComboBoxProps\n extends Omit<IAutocompleteProps, \"handleChange\" | \"inputEl\"> {\n /** Set combobox in to loading state */\n loading?: boolean;\n /** Text to display while in loading state */\n loadingText?: string;\n /** onChange callback */\n onChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** disable Input element */\n disabled?: boolean;\n /** Combobox size */\n size?: InputSize;\n /** Invalid state */\n invalid?: boolean;\n /** Render Chip */\n renderChip?: <T extends IOptionItemProps>(\n item: T,\n key?: string | number\n ) => JSX.Element;\n /** Close menu on change */\n forceCloseMenu?: boolean;\n /** Limit chips */\n limitChips?: number;\n /** Hidden number text */\n hiddenNumberText?: (hidden: number) => string;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n placeholder,\n handleEmptyAction,\n disabled = false,\n size = \"regular\",\n invalid = false,\n type = \"single\",\n renderChip,\n forceCloseMenu = type === \"single\",\n renderOption,\n limitChips = 2,\n hiddenNumberText,\n ...prop\n}) => {\n const selectedName = useMemo(() => {\n let value = \"\";\n if (!selected) {\n return value;\n }\n options.map((v) => {\n if ((v as IOptionGroupProps)?.options) {\n return (v as IOptionGroupProps).options.find((q) => {\n if (q.id === selected) {\n value = q.name;\n return;\n }\n });\n } else {\n if (v.id === selected) {\n value = v.name;\n return;\n }\n }\n });\n return value;\n }, [options, selected]);\n const [value, setValue] = useState(selectedName);\n const handleOnChange = useCallback((e) => setValue(e.target.value), []);\n const [childNode, setChildNode] = useState<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(setChildNode, elementRef);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const chipWrapper = useRef<HTMLDivElement>(null);\n\n const [open, setOpen] = useState(false);\n\n useOnClickOutside(wrapperRef, () => setOpen(false));\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n e.stopPropagation();\n }\n if (e.key === \"Enter\" && type === \"multiple\") {\n setValue(\"\");\n }\n },\n [open, selectedName, type]\n );\n\n useEffect(() => {\n open && childNode?.focus();\n !open && childNode?.blur();\n }, [childNode, open]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n const emptyAction = useCallback(\n (v) => {\n handleEmptyAction?.(v);\n setOpen(false);\n },\n [handleEmptyAction]\n );\n\n const handleChange = useCallback(\n (selectedValue) => {\n onChange?.(selectedValue);\n if (forceCloseMenu) {\n setOpen(false);\n }\n },\n [forceCloseMenu, onChange]\n );\n\n const onOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n }\n }, [disabled]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n if (type === \"multiple\") {\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <Checkbox {...props} />\n </>\n );\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <RadioButton {...props} />\n </>\n );\n },\n [type, renderOption]\n );\n\n const handleDeselect = useCallback(\n (e) => {\n e.stopPropagation();\n if (type === \"multiple\") {\n onChange?.([]);\n } else {\n onChange?.(\"\");\n }\n\n setOpen(false);\n },\n [type, onChange]\n );\n\n const handleMouseDown = useCallback((e) => {\n e.preventDefault();\n }, []);\n\n const comboBoxRef = useRef<HTMLDivElement | null>(null);\n\n const handleBlur = useCallback(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n const renderChipAdornment = useCallback(\n (option, index) => {\n if (typeof renderChip === \"function\") {\n return renderChip(option, index);\n }\n const avatarProps: Partial<IAvatar> = {\n size: 18,\n };\n switch (size) {\n case \"big\":\n avatarProps.size = 22;\n break;\n case \"small\":\n avatarProps.size = 14;\n break;\n }\n const leftAdornment = option.image ? (\n <Avatar\n css={`\n ${tw`tw-my-0.5`}\n ${tw`tw-mr-0.5`}\n `}\n url={option.image}\n {...avatarProps}\n />\n ) : undefined;\n\n return (\n <Chip\n className={\"c-combo-box-chip\"}\n leftAdornment={leftAdornment}\n label={option.name}\n key={index}\n onClose={\n !disabled\n ? (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (Array.isArray(selected) && selected.includes(option.id)) {\n if (typeof onChange === \"function\") {\n const newSelected = selected.filter(\n (item) => item !== option.id\n );\n onChange(newSelected);\n }\n }\n }\n : undefined\n }\n size={size}\n />\n );\n },\n [disabled, onChange, renderChip, selected, size]\n );\n\n const autoSize = useMemo(() => {\n if (\n type === \"multiple\" &&\n open &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n return \"auto\";\n }\n return size;\n }, [open, selected, size, type]);\n\n const startAdornment = useMemo(() => {\n if (type === \"multiple\" && Array.isArray(selected) && selected.length > 0) {\n const elements: JSX.Element[] = [];\n let total = 0;\n options.forEach((option, index) => {\n const isGrouped = isOptionGroup(option);\n if (selected.includes(option.id) && !isGrouped) {\n total = total + 1;\n elements.push(renderChipAdornment(option, index));\n } else if (isGrouped) {\n const groupedOptions = option.options.filter((o) =>\n selected.includes(o.id)\n );\n total = total + groupedOptions.length;\n if (groupedOptions.length > 0) {\n groupedOptions.forEach((o, _index) => {\n elements.push(renderChipAdornment(o, `${index}_${_index}`));\n });\n }\n }\n });\n let hidden = 0;\n if (!open && limitChips > 0 && elements.length > limitChips) {\n hidden = elements.splice(\n limitChips,\n elements.length - limitChips\n ).length;\n }\n\n return (\n <Fragment>\n {elements}\n {hidden > 0 && (\n <Typography\n variant={\n size === \"small\"\n ? \"Caption 1\"\n : size === \"regular\"\n ? \"Body 2\"\n : \"Body 1\"\n }\n css={`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n `}\n >\n {typeof hiddenNumberText === \"function\"\n ? hiddenNumberText(hidden)\n : `+${hidden}`}\n </Typography>\n )}\n </Fragment>\n );\n }\n return undefined;\n }, [\n type,\n selected,\n options,\n open,\n limitChips,\n hiddenNumberText,\n renderChipAdornment,\n size,\n ]);\n\n const showXIcon =\n Array.isArray(selected) && type === \"multiple\" && selected.length > 0;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n return (\n <div className=\"c-combo-box\" ref={wrapperRef}>\n {type === \"multiple\" ? (\n <>\n <StyledInputWrapper\n $size={size}\n $invalid={invalid}\n css={`\n display: flex;\n justify-content: space-between;\n flex: 1;\n height: ${autoSize === \"auto\" ? \"auto\" : undefined};\n `}\n className={\"c-combo-box-input-wrapper\"}\n onClick={() => {\n elementRef.current?.focus();\n }}\n >\n <StyledChipWrapper\n $autoSize={autoSize}\n $open={open}\n ref={chipWrapper}\n >\n {startAdornment}\n <StyledInput\n className={\"c-combo-box-input\"}\n onBlur={handleBlur}\n onFocus={onOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n disabled={disabled}\n $size={size}\n $loading={loading}\n style={{\n display: \"flex\",\n flex: 1,\n alignSelf: \"center\",\n width: autoSize === \"auto\" ? \"auto\" : \"100%\",\n }}\n />\n </StyledChipWrapper>\n {!disabled && (\n <>\n {loading ? (\n <SpinnerLoader />\n ) : (\n <>\n {showXIcon && (\n <Trigger\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n data-testid={\"deselect-all\"}\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </>\n )}\n </>\n )}\n </StyledInputWrapper>\n </>\n ) : (\n <StyledComboBoxInput\n className={\"c-combo-box-input\"}\n onBlur={handleBlur}\n onFocus={onOpen}\n wrapRef={comboBoxRef}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n invalid={invalid}\n $loading={loading}\n startAdornment={startAdornment}\n endAdornment={\n !disabled ? (\n <InputAdornment disablePointerEvents={disabled}>\n {loading ? (\n <SpinnerLoader />\n ) : selected ? (\n <Button\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </Button>\n ) : null}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </InputAdornment>\n ) : null\n }\n />\n )}\n\n {!disabled ? (\n <Popper\n anchorEl={comboBoxRef.current}\n open={open}\n placement=\"bottom\"\n style={{ zIndex: 10 }}\n strategy={\"fixed\"}\n >\n <RemoveScroll noIsolation allowPinchZoom>\n <StyledComboBoxList $width={comboBoxRef.current?.clientWidth}>\n <Autocomplete\n {...prop}\n inputEl={childNode}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n type={type}\n handleEmptyAction={emptyAction}\n />\n </StyledComboBoxList>\n </RemoveScroll>\n </Popper>\n ) : null}\n </div>\n );\n};\n\nComboBox.displayName = \"ComboBox\";\n"],"file":"ComboBox.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"names":["ComboBox","options","selected","loading","loadingText","onChange","placeholder","handleEmptyAction","disabled","size","invalid","type","renderChip","forceCloseMenu","renderOption","limitChips","hiddenNumberText","inPortal","inputWrapperClassName","prop","selectedName","value","map","v","find","q","id","name","setValue","handleOnChange","e","target","childNode","setChildNode","elementRef","handleRef","wrapperRef","chipWrapper","comboBoxRef","open","setOpen","current","contains","handleOnKeyDown","key","stopPropagation","focus","blur","emptyAction","handleChange","selectedValue","onOpen","handleRenderOption","option","props","image","color","textColor","handleDeselect","handleMouseDown","preventDefault","handleBlur","renderChipAdornment","index","avatarProps","leftAdornment","undefined","Array","isArray","includes","newSelected","filter","item","autoSize","length","startAdornment","elements","total","forEach","isGrouped","push","groupedOptions","o","_index","hidden","splice","showXIcon","hasSelected","display","flex","alignSelf","width","children","zIndex","clientWidth","displayName"],"mappings":"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","sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport { RadioButton } from \"../RadioButton\";\nimport { Autocomplete } from \"../Autocomplete\";\nimport { Button } from \"../Button/Button\";\nimport {\n IAutocompleteProps,\n isOptionGroup,\n} from \"../Autocomplete/Autocomplete\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Popper } from \"../Popper\";\nimport { IOptionGroupProps, IOptionItemProps } from \"../Select\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { SpinnerLoader } from \"../Loaders/Spinner/SpinnerLoader\";\nimport { OptionContent } from \"../Select/OptionContent/OptionContent\";\nimport {\n StyledComboBoxCloseSmallIcon,\n StyledComboBoxCollapseExpandSingleIcon,\n StyledComboBoxInput,\n StyledComboBoxList,\n StyledChipWrapper,\n} from \"./Styles\";\nimport { InputSize } from \"../Input/types\";\nimport { InputAdornment } from \"../Input/InputAdornment\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Chip } from \"../Chip\";\nimport { StyledInput, StyledInputWrapper } from \"../Input/Styles\";\nimport { useOnClickOutside } from \"../../hooks/useOnClickOutside\";\nimport { Avatar, IAvatar } from \"../Avatar\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\nimport tw from \"twin.macro\";\nimport { Portal } from \"../../helpers\";\nimport { ConditionalWrapper } from \"../../helpers/ConditionWrapper/ConditionWrapper\";\nimport classNames from \"classnames\";\n\nexport interface IComboBoxProps\n extends Omit<IAutocompleteProps, \"handleChange\" | \"inputEl\"> {\n /** Set combobox in to loading state */\n loading?: boolean;\n /** Text to display while in loading state */\n loadingText?: string;\n /** onChange callback */\n onChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** disable Input element */\n disabled?: boolean;\n /** Combobox size */\n size?: InputSize;\n /** Invalid state */\n invalid?: boolean;\n /** Render Chip */\n renderChip?: <T extends IOptionItemProps>(\n item: T,\n key?: string | number\n ) => JSX.Element;\n /** Close menu on change */\n forceCloseMenu?: boolean;\n /** Limit chips */\n limitChips?: number;\n /** Hidden number text */\n hiddenNumberText?: (hidden: number) => string;\n /** Render Autocomplete in <Portal> */\n inPortal?: boolean;\n /** inputWrapperClassName */\n inputWrapperClassName?: string;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n placeholder,\n handleEmptyAction,\n disabled = false,\n size = \"regular\",\n invalid = false,\n type = \"single\",\n renderChip,\n forceCloseMenu = type === \"single\",\n renderOption,\n limitChips = 2,\n hiddenNumberText,\n inPortal = false,\n inputWrapperClassName,\n ...prop\n}) => {\n const selectedName = useMemo(() => {\n let value = \"\";\n if (!selected) {\n return value;\n }\n options.map((v) => {\n if ((v as IOptionGroupProps)?.options) {\n return (v as IOptionGroupProps).options.find((q) => {\n if (q.id === selected) {\n value = q.name;\n return;\n }\n });\n } else {\n if (v.id === selected) {\n value = v.name;\n return;\n }\n }\n });\n return value;\n }, [options, selected]);\n const [value, setValue] = useState(selectedName);\n const handleOnChange = useCallback((e) => setValue(e.target.value), []);\n const [childNode, setChildNode] = useState<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(setChildNode, elementRef);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const chipWrapper = useRef<HTMLDivElement>(null);\n const comboBoxRef = useRef<HTMLDivElement | null>(null);\n\n const [open, setOpen] = useState(false);\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n e.stopPropagation();\n }\n if (e.key === \"Enter\" && type === \"multiple\") {\n setValue(\"\");\n }\n },\n [open, selectedName, type]\n );\n\n useEffect(() => {\n open && childNode?.focus();\n !open && childNode?.blur();\n }, [childNode, open]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n const emptyAction = useCallback(\n (v) => {\n handleEmptyAction?.(v);\n setOpen(false);\n },\n [handleEmptyAction]\n );\n\n const handleChange = useCallback(\n (selectedValue) => {\n onChange?.(selectedValue);\n if (forceCloseMenu) {\n setOpen(false);\n }\n },\n [forceCloseMenu, onChange]\n );\n\n const onOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n }\n }, [disabled]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n if (type === \"multiple\") {\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <Checkbox {...props} />\n </>\n );\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <RadioButton {...props} />\n </>\n );\n },\n [type, renderOption]\n );\n\n const handleDeselect = useCallback(\n (e) => {\n e.stopPropagation();\n if (type === \"multiple\") {\n onChange?.([]);\n } else {\n onChange?.(\"\");\n }\n\n setOpen(false);\n },\n [type, onChange]\n );\n\n const handleMouseDown = useCallback((e) => {\n e.preventDefault();\n }, []);\n\n const handleBlur = useCallback(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n const renderChipAdornment = useCallback(\n (option, index) => {\n if (typeof renderChip === \"function\") {\n return renderChip(option, index);\n }\n const avatarProps: Partial<IAvatar> = {\n size: 18,\n };\n switch (size) {\n case \"big\":\n avatarProps.size = 22;\n break;\n case \"small\":\n avatarProps.size = 14;\n break;\n }\n const leftAdornment = option.image ? (\n <Avatar\n css={`\n ${tw`tw-my-0.5`}\n ${tw`tw-mr-0.5`}\n `}\n url={option.image}\n {...avatarProps}\n />\n ) : undefined;\n\n return (\n <Chip\n className={\"c-combo-box-chip\"}\n leftAdornment={leftAdornment}\n label={option.name}\n key={index}\n onClose={\n !disabled\n ? (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (Array.isArray(selected) && selected.includes(option.id)) {\n if (typeof onChange === \"function\") {\n const newSelected = selected.filter(\n (item) => item !== option.id\n );\n onChange(newSelected);\n }\n }\n }\n : undefined\n }\n size={size}\n />\n );\n },\n [disabled, onChange, renderChip, selected, size]\n );\n\n const autoSize = useMemo(() => {\n if (\n type === \"multiple\" &&\n open &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n return \"auto\";\n }\n return size;\n }, [open, selected, size, type]);\n\n const startAdornment = useMemo(() => {\n if (type === \"multiple\" && Array.isArray(selected) && selected.length > 0) {\n const elements: JSX.Element[] = [];\n let total = 0;\n options.forEach((option, index) => {\n const isGrouped = isOptionGroup(option);\n if (selected.includes(option.id) && !isGrouped) {\n total = total + 1;\n elements.push(renderChipAdornment(option, index));\n } else if (isGrouped) {\n const groupedOptions = option.options.filter((o) =>\n selected.includes(o.id)\n );\n total = total + groupedOptions.length;\n if (groupedOptions.length > 0) {\n groupedOptions.forEach((o, _index) => {\n elements.push(renderChipAdornment(o, `${index}_${_index}`));\n });\n }\n }\n });\n let hidden = 0;\n if (!open && limitChips > 0 && elements.length > limitChips) {\n hidden = elements.splice(\n limitChips,\n elements.length - limitChips\n ).length;\n }\n\n return (\n <Fragment>\n {elements}\n {hidden > 0 && (\n <Typography\n variant={\n size === \"small\"\n ? \"Caption 1\"\n : size === \"regular\"\n ? \"Body 2\"\n : \"Body 1\"\n }\n css={`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n `}\n >\n {typeof hiddenNumberText === \"function\"\n ? hiddenNumberText(hidden)\n : `+${hidden}`}\n </Typography>\n )}\n </Fragment>\n );\n }\n return undefined;\n }, [\n type,\n selected,\n options,\n open,\n limitChips,\n hiddenNumberText,\n renderChipAdornment,\n size,\n ]);\n\n const showXIcon =\n Array.isArray(selected) && type === \"multiple\" && selected.length > 0;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n return (\n <div className=\"c-combo-box\">\n {type === \"multiple\" ? (\n <>\n <StyledInputWrapper\n $size={size}\n $invalid={invalid}\n ref={comboBoxRef}\n css={`\n display: flex;\n justify-content: space-between;\n flex: 1;\n height: ${autoSize === \"auto\" ? \"auto\" : undefined};\n `}\n className={classNames(\n \"c-combo-box-input-wrapper\",\n inputWrapperClassName\n )}\n onClick={() => {\n elementRef.current?.focus();\n }}\n >\n <StyledChipWrapper\n $autoSize={autoSize}\n $open={open}\n ref={chipWrapper}\n >\n {startAdornment}\n <StyledInput\n className={\"c-combo-box-input\"}\n onBlur={handleBlur}\n onFocus={onOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n disabled={disabled}\n $size={size}\n $loading={loading}\n style={{\n display: \"flex\",\n flex: 1,\n alignSelf: \"center\",\n width: autoSize === \"auto\" ? \"auto\" : \"100%\",\n }}\n />\n </StyledChipWrapper>\n {!disabled && (\n <>\n {loading ? (\n <SpinnerLoader />\n ) : (\n <>\n {showXIcon && (\n <Trigger\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n data-testid={\"deselect-all\"}\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </>\n )}\n </>\n )}\n </StyledInputWrapper>\n </>\n ) : (\n <StyledComboBoxInput\n className={classNames(\"c-combo-box-input\", inputWrapperClassName)}\n onBlur={handleBlur}\n onFocus={onOpen}\n wrapRef={comboBoxRef}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n invalid={invalid}\n $loading={loading}\n startAdornment={startAdornment}\n endAdornment={\n !disabled ? (\n <InputAdornment disablePointerEvents={disabled}>\n {loading ? (\n <SpinnerLoader />\n ) : selected ? (\n <Button\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </Button>\n ) : null}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </InputAdornment>\n ) : null\n }\n />\n )}\n\n {!disabled ? (\n <ConditionalWrapper\n condition={inPortal}\n wrap={(children) => <Portal>{children}</Portal>}\n >\n <Popper\n anchorEl={comboBoxRef.current}\n open={open}\n placement=\"bottom\"\n style={{\n zIndex: 10,\n width: comboBoxRef.current?.clientWidth,\n }}\n ref={wrapperRef}\n strategy={\"fixed\"}\n >\n <RemoveScroll noIsolation allowPinchZoom>\n <StyledComboBoxList $width={comboBoxRef.current?.clientWidth}>\n <Autocomplete\n {...prop}\n inputEl={childNode}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n type={type}\n handleEmptyAction={emptyAction}\n />\n </StyledComboBoxList>\n </RemoveScroll>\n </Popper>\n </ConditionalWrapper>\n ) : null}\n </div>\n );\n};\n\nComboBox.displayName = \"ComboBox\";\n"],"file":"ComboBox.js"}
|
|
@@ -11,11 +11,11 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _Styles = require("./Styles");
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _Card = require("../Card");
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _EntityGroup = require("./EntityGroup");
|
|
17
17
|
|
|
18
|
-
var _excluded = ["children", "
|
|
18
|
+
var _excluded = ["children", "isCollection", "background", "className", "as"];
|
|
19
19
|
|
|
20
20
|
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); }
|
|
21
21
|
|
|
@@ -27,43 +27,30 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
|
27
27
|
|
|
28
28
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
29
29
|
|
|
30
|
-
var EntityCard = function
|
|
30
|
+
var EntityCard = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
31
31
|
var children = _ref.children,
|
|
32
|
-
actions = _ref.actions,
|
|
33
|
-
_ref$renderAs = _ref.renderAs,
|
|
34
|
-
renderAs = _ref$renderAs === void 0 ? "grid" : _ref$renderAs,
|
|
35
32
|
isCollection = _ref.isCollection,
|
|
36
33
|
background = _ref.background,
|
|
37
34
|
className = _ref.className,
|
|
38
|
-
|
|
35
|
+
as = _ref.as,
|
|
39
36
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
40
37
|
|
|
38
|
+
var _useContext = (0, _react.useContext)(_EntityGroup.EntityGroupContext),
|
|
39
|
+
renderAs = _useContext.renderAs;
|
|
40
|
+
|
|
41
41
|
var paperType = renderAs === "grid" ? "paper-1" : "paper-2";
|
|
42
|
-
var
|
|
43
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
44
|
-
|
|
45
|
-
wrap: function wrap(children) {
|
|
46
|
-
return /*#__PURE__*/_react.default.createElement(WrapperElement, rest, children);
|
|
47
|
-
}
|
|
48
|
-
}, /*#__PURE__*/_react.default.createElement(_Styles.StyledEntityCard, _extends({
|
|
42
|
+
var Component = as || _Card.Card;
|
|
43
|
+
return /*#__PURE__*/_react.default.createElement(_Styles.StyledEntityCard, _extends({
|
|
44
|
+
as: Component,
|
|
49
45
|
$renderAs: renderAs,
|
|
50
46
|
$background: background,
|
|
51
47
|
paperType: paperType,
|
|
52
48
|
className: className,
|
|
53
49
|
$isCollection: isCollection
|
|
54
|
-
}, rest
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
return null;
|
|
62
|
-
}), actions && /*#__PURE__*/_react.default.createElement(_Styles.StyledEntityActions, {
|
|
63
|
-
$renderAs: renderAs
|
|
64
|
-
}, actions)));
|
|
65
|
-
};
|
|
66
|
-
|
|
50
|
+
}, rest, {
|
|
51
|
+
ref: ref
|
|
52
|
+
}), children);
|
|
53
|
+
});
|
|
67
54
|
exports.EntityCard = EntityCard;
|
|
68
55
|
EntityCard.displayName = "EntityCard";
|
|
69
56
|
//# sourceMappingURL=EntityCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Entity/EntityCard.tsx"],"names":["EntityCard","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Entity/EntityCard.tsx"],"names":["EntityCard","ref","children","isCollection","background","className","as","rest","EntityGroupContext","renderAs","paperType","Component","Card","displayName"],"mappings":";;;;;;;;;AAAA;;AAOA;;AAEA;;AAKA;;;;;;;;;;;;;;AAsBO,IAAMA,UAAsD,gBACjE,uBACE,gBASEC,GATF,EAUK;AAAA,MARDC,QAQC,QARDA,QAQC;AAAA,MAPDC,YAOC,QAPDA,YAOC;AAAA,MANDC,UAMC,QANDA,UAMC;AAAA,MALDC,SAKC,QALDA,SAKC;AAAA,MAJDC,EAIC,QAJDA,EAIC;AAAA,MAHEC,IAGF;;AACH,oBAAqB,uBAAWC,+BAAX,CAArB;AAAA,MAAQC,QAAR,eAAQA,QAAR;;AACA,MAAMC,SAAS,GAAGD,QAAQ,KAAK,MAAb,GAAsB,SAAtB,GAAkC,SAApD;AACA,MAAME,SAAS,GAAGL,EAAE,IAAIM,UAAxB;AACA,sBACE,6BAAC,wBAAD;AACE,IAAA,EAAE,EAAED,SADN;AAEE,IAAA,SAAS,EAAEF,QAFb;AAGE,IAAA,WAAW,EAAEL,UAHf;AAIE,IAAA,SAAS,EAAEM,SAJb;AAKE,IAAA,SAAS,EAAEL,SALb;AAME,IAAA,aAAa,EAAEF;AANjB,KAOMI,IAPN;AAQE,IAAA,GAAG,EAAEN;AARP,MAUGC,QAVH,CADF;AAcD,CA7BH,CADK;;AAiCPF,UAAU,CAACa,WAAX,GAAyB,YAAzB","sourcesContent":["import React, {\n BaseHTMLAttributes,\n CSSProperties,\n forwardRef,\n ReactElement,\n useContext,\n} from \"react\";\nimport { StyledEntityCard } from \"./Styles\";\n\nimport { Card, ICardProps } from \"../Card\";\nimport {\n PolymorphicComponentPropsWithRef,\n PolymorphicRef,\n} from \"../../utils/types\";\nimport { EntityGroupContext } from \"./EntityGroup\";\n\nexport interface IEntityCardProps\n extends ICardProps,\n BaseHTMLAttributes<HTMLElement> {\n /** ClassName to add on Card */\n className?: string;\n /** Show as group of Cards on grid */\n isCollection?: boolean;\n /** Background color to override for Card */\n background?: string;\n /** CSSProperties to override for Card */\n style?: CSSProperties;\n}\n\nexport type EntityCardProps<C extends React.ElementType> =\n PolymorphicComponentPropsWithRef<C, IEntityCardProps>;\n\nexport type EntityComponent = <C extends React.ElementType = typeof Card>(\n props: EntityCardProps<C>\n) => ReactElement | null;\n\nexport const EntityCard: EntityComponent & { displayName?: string } =\n forwardRef(\n <C extends React.ElementType = typeof Card>(\n {\n children,\n isCollection,\n background,\n className,\n as,\n ...rest\n }: EntityCardProps<C>,\n ref?: PolymorphicRef<C>\n ) => {\n const { renderAs } = useContext(EntityGroupContext);\n const paperType = renderAs === \"grid\" ? \"paper-1\" : \"paper-2\";\n const Component = as || Card;\n return (\n <StyledEntityCard\n as={Component}\n $renderAs={renderAs}\n $background={background}\n paperType={paperType}\n className={className}\n $isCollection={isCollection}\n {...rest}\n ref={ref}\n >\n {children}\n </StyledEntityCard>\n );\n }\n );\n\nEntityCard.displayName = \"EntityCard\";\n"],"file":"EntityCard.js"}
|
|
@@ -3,14 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.EntityGroup = void 0;
|
|
6
|
+
exports.EntityGroupContext = exports.EntityGroup = void 0;
|
|
7
7
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
10
10
|
var _Styles = require("./Styles");
|
|
11
11
|
|
|
12
|
-
var _EntityCard = require("./EntityCard");
|
|
13
|
-
|
|
14
12
|
var _excluded = ["children", "gap", "renderAs"];
|
|
15
13
|
|
|
16
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -21,6 +19,12 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
|
21
19
|
|
|
22
20
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
23
21
|
|
|
22
|
+
var EntityGroupContext = /*#__PURE__*/_react.default.createContext({
|
|
23
|
+
renderAs: "grid"
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
exports.EntityGroupContext = EntityGroupContext;
|
|
27
|
+
|
|
24
28
|
var EntityGroup = function EntityGroup(_ref) {
|
|
25
29
|
var children = _ref.children,
|
|
26
30
|
gap = _ref.gap,
|
|
@@ -28,18 +32,14 @@ var EntityGroup = function EntityGroup(_ref) {
|
|
|
28
32
|
renderAs = _ref$renderAs === void 0 ? "grid" : _ref$renderAs,
|
|
29
33
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
30
34
|
|
|
31
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
35
|
+
return /*#__PURE__*/_react.default.createElement(EntityGroupContext.Provider, {
|
|
36
|
+
value: {
|
|
37
|
+
renderAs: renderAs
|
|
38
|
+
}
|
|
39
|
+
}, /*#__PURE__*/_react.default.createElement(_Styles.StyledEntityGroup, _extends({
|
|
32
40
|
$renderAs: renderAs,
|
|
33
41
|
$gap: gap
|
|
34
|
-
}, rest),
|
|
35
|
-
if ( /*#__PURE__*/_react.default.isValidElement(child) && child.type === _EntityCard.EntityCard) {
|
|
36
|
-
return /*#__PURE__*/_react.default.cloneElement(child, {
|
|
37
|
-
renderAs: renderAs
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
return null;
|
|
42
|
-
}));
|
|
42
|
+
}, rest), children));
|
|
43
43
|
};
|
|
44
44
|
|
|
45
45
|
exports.EntityGroup = EntityGroup;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Entity/EntityGroup.tsx"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Entity/EntityGroup.tsx"],"names":["EntityGroupContext","React","createContext","renderAs","EntityGroup","children","gap","rest","displayName"],"mappings":";;;;;;;AAAA;;AACA;;;;;;;;;;;;AAWO,IAAMA,kBAAkB,gBAAGC,eAAMC,aAAN,CAAyC;AACzEC,EAAAA,QAAQ,EAAE;AAD+D,CAAzC,CAA3B;;;;AAIA,IAAMC,WAAwC,GAAG,SAA3CA,WAA2C,OAKlD;AAAA,MAJJC,QAII,QAJJA,QAII;AAAA,MAHJC,GAGI,QAHJA,GAGI;AAAA,2BAFJH,QAEI;AAAA,MAFJA,QAEI,8BAFO,MAEP;AAAA,MADDI,IACC;;AACJ,sBACE,6BAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAE;AAAEJ,MAAAA,QAAQ,EAAEA;AAAZ;AAApC,kBACE,6BAAC,yBAAD;AAAmB,IAAA,SAAS,EAAEA,QAA9B;AAAwC,IAAA,IAAI,EAAEG;AAA9C,KAAuDC,IAAvD,GACGF,QADH,CADF,CADF;AAOD,CAbM;;;AAePD,WAAW,CAACI,WAAZ,GAA0B,aAA1B","sourcesContent":["import React, { HTMLAttributes } from \"react\";\nimport { StyledEntityGroup } from \"./Styles\";\n\nexport interface IEntityGroupProps\n extends Pick<HTMLAttributes<HTMLDivElement>, \"className\" | \"style\"> {\n gap?: number;\n renderAs?: \"grid\" | \"list\";\n}\n\ninterface IEntityGroupContext {\n renderAs: \"grid\" | \"list\";\n}\nexport const EntityGroupContext = React.createContext<IEntityGroupContext>({\n renderAs: \"grid\",\n});\n\nexport const EntityGroup: React.FC<IEntityGroupProps> = ({\n children,\n gap,\n renderAs = \"grid\",\n ...rest\n}) => {\n return (\n <EntityGroupContext.Provider value={{ renderAs: renderAs }}>\n <StyledEntityGroup $renderAs={renderAs} $gap={gap} {...rest}>\n {children}\n </StyledEntityGroup>\n </EntityGroupContext.Provider>\n );\n};\n\nEntityGroup.displayName = \"EntityGroup\";\n"],"file":"EntityGroup.js"}
|
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports.EntityProperty = void 0;
|
|
7
9
|
|
|
8
|
-
var _react =
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
11
|
|
|
10
12
|
var _Styles = require("./Styles");
|
|
11
13
|
|
|
12
14
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
15
|
|
|
16
|
+
var _EntityGroup = require("./EntityGroup");
|
|
17
|
+
|
|
14
18
|
var _excluded = ["listOrder", "listWidth", "visibleFromBreakpoint", "className"];
|
|
15
19
|
|
|
16
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
21
|
|
|
22
|
+
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); }
|
|
23
|
+
|
|
24
|
+
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; }
|
|
25
|
+
|
|
18
26
|
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); }
|
|
19
27
|
|
|
20
28
|
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; }
|
|
@@ -28,12 +36,16 @@ var EntityProperty = function EntityProperty(_ref) {
|
|
|
28
36
|
className = _ref.className,
|
|
29
37
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
30
38
|
|
|
39
|
+
var _useContext = (0, _react.useContext)(_EntityGroup.EntityGroupContext),
|
|
40
|
+
renderAs = _useContext.renderAs;
|
|
41
|
+
|
|
31
42
|
return /*#__PURE__*/_react.default.createElement(_Styles.StyledEntityProperty, _extends({
|
|
32
43
|
className: (0, _classnames.default)("c-entity-property", className)
|
|
33
44
|
}, props, {
|
|
34
45
|
$order: listOrder,
|
|
35
46
|
$width: listWidth,
|
|
36
|
-
$visibleFromBreakpoint: visibleFromBreakpoint
|
|
47
|
+
$visibleFromBreakpoint: visibleFromBreakpoint,
|
|
48
|
+
$renderAs: renderAs
|
|
37
49
|
}));
|
|
38
50
|
};
|
|
39
51
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Entity/EntityProperty.tsx"],"names":["EntityProperty","listOrder","listWidth","visibleFromBreakpoint","className","props","displayName"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Entity/EntityProperty.tsx"],"names":["EntityProperty","listOrder","listWidth","visibleFromBreakpoint","className","props","EntityGroupContext","renderAs","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;AAUO,IAAMA,cAAkD,GAAG,SAArDA,cAAqD,OAM5D;AAAA,MALJC,SAKI,QALJA,SAKI;AAAA,MAJJC,SAII,QAJJA,SAII;AAAA,MAHJC,qBAGI,QAHJA,qBAGI;AAAA,MAFJC,SAEI,QAFJA,SAEI;AAAA,MADDC,KACC;;AACJ,oBAAqB,uBAAWC,+BAAX,CAArB;AAAA,MAAQC,QAAR,eAAQA,QAAR;;AACA,sBACE,6BAAC,4BAAD;AACE,IAAA,SAAS,EAAE,yBAAW,mBAAX,EAAgCH,SAAhC;AADb,KAEMC,KAFN;AAGE,IAAA,MAAM,EAAEJ,SAHV;AAIE,IAAA,MAAM,EAAEC,SAJV;AAKE,IAAA,sBAAsB,EAAEC,qBAL1B;AAME,IAAA,SAAS,EAAEI;AANb,KADF;AAUD,CAlBM;;;AAoBPP,cAAc,CAACQ,WAAf,GAA6B,gBAA7B","sourcesContent":["import React, { HTMLAttributes, useContext } from \"react\";\nimport { StyledEntityProperty } from \"./Styles\";\nimport classNames from \"classnames\";\nimport { EntityGroupContext } from \"./EntityGroup\";\n\nexport type VisibleFromBreakpoint = \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\";\nexport interface IEntityCardPropertyProps\n extends HTMLAttributes<HTMLDivElement> {\n listOrder?: number;\n listWidth?: string | number;\n visibleFromBreakpoint?: VisibleFromBreakpoint;\n}\n\nexport const EntityProperty: React.FC<IEntityCardPropertyProps> = ({\n listOrder,\n listWidth,\n visibleFromBreakpoint,\n className,\n ...props\n}) => {\n const { renderAs } = useContext(EntityGroupContext);\n return (\n <StyledEntityProperty\n className={classNames(\"c-entity-property\", className)}\n {...props}\n $order={listOrder}\n $width={listWidth}\n $visibleFromBreakpoint={visibleFromBreakpoint}\n $renderAs={renderAs}\n />\n );\n};\n\nEntityProperty.displayName = \"EntityProperty\";\n"],"file":"EntityProperty.js"}
|
|
@@ -20,14 +20,12 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
20
20
|
var StyledEntityCard = (0, _styledComponents.default)(_Card.Card).withConfig({
|
|
21
21
|
displayName: "Styles__StyledEntityCard",
|
|
22
22
|
componentId: "sc-bjeea8-0"
|
|
23
|
-
})(["line-height:1.375;", " ", " ", " ", "
|
|
23
|
+
})(["line-height:1.375;", " ", " ", " ", ""], function (_ref) {
|
|
24
24
|
var $renderAs = _ref.$renderAs;
|
|
25
25
|
return $renderAs === "list" && (0, _styledComponents.css)(["display:flex;flex-direction:row;align-items:center;min-height:48px;margin-bottom:4px;justify-content:space-between;padding:0 16px 0 16px;"]);
|
|
26
26
|
}, function (_ref2) {
|
|
27
27
|
var $renderAs = _ref2.$renderAs;
|
|
28
28
|
return $renderAs === "grid" && (0, _styledComponents.css)(["display:flex;flex-direction:column;position:relative;padding:20px 24px;height:280px;"]);
|
|
29
|
-
}, function (props) {
|
|
30
|
-
return props.$gap && (0, _styledComponents.css)(["gap:", "px;"], props.$gap);
|
|
31
29
|
}, function (props) {
|
|
32
30
|
return props.$background && (0, _styledComponents.css)(["background-color:", ";"], props.$background);
|
|
33
31
|
}, function (_ref3) {
|
|
@@ -94,14 +92,12 @@ StyledEntityProperty.displayName = "StyledEntityProperty";
|
|
|
94
92
|
var StyledEntityGroup = (0, _styledComponents.default)("div").withConfig({
|
|
95
93
|
displayName: "Styles__StyledEntityGroup",
|
|
96
94
|
componentId: "sc-bjeea8-2"
|
|
97
|
-
})(["", " ", "
|
|
95
|
+
})(["", " ", ""], function (_ref11) {
|
|
98
96
|
var $renderAs = _ref11.$renderAs,
|
|
99
97
|
$gap = _ref11.$gap;
|
|
100
98
|
return $renderAs === "grid" && (0, _styledComponents.css)(["display:grid;grid-gap:", ";grid-template-columns:repeat(auto-fill,minmax(260px,1fr));"], $gap ? "".concat($gap, "px") : "initial");
|
|
101
99
|
}, function (props) {
|
|
102
100
|
return props.$renderAs === "list" && (0, _styledComponents.css)(["display:flex;flex-direction:column;"]);
|
|
103
|
-
}, function (props) {
|
|
104
|
-
return props.$gap && props.$renderAs === "list" && (0, _styledComponents.css)(["", "{gap:", "px;}"], StyledEntityCard, props.$gap);
|
|
105
101
|
});
|
|
106
102
|
exports.StyledEntityGroup = StyledEntityGroup;
|
|
107
103
|
StyledEntityGroup.displayName = "StyledEntityGroup";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Entity/Styles.ts"],"names":["StyledEntityCard","Card","$renderAs","css","props","$
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Entity/Styles.ts"],"names":["StyledEntityCard","Card","$renderAs","css","props","$background","$isCollection","PaperStyles","displayName","StyledEntityProperty","$width","$order","$visibleFromBreakpoint","StyledEntityGroup","$gap","StyledEntityActions"],"mappings":"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","sourcesContent":["import styled, { css } from \"styled-components\";\nimport { Card } from \"../Card\";\nimport { PaperStyles } from \"../Paper/Styles\";\nimport { VisibleFromBreakpoint } from \"./EntityProperty\";\nimport tw from \"twin.macro\";\n\nexport const StyledEntityCard = styled(Card)<{\n $renderAs: string;\n $gap?: number;\n $background?: string;\n $isCollection?: boolean;\n}>`\n line-height: 1.375;\n ${({ $renderAs }) =>\n $renderAs === \"list\" &&\n css`\n display: flex;\n flex-direction: row;\n align-items: center;\n min-height: 48px;\n margin-bottom: 4px;\n justify-content: space-between;\n padding: 0 16px 0 16px;\n `}\n\n ${({ $renderAs }) =>\n $renderAs === \"grid\" &&\n css`\n display: flex;\n flex-direction: column;\n position: relative;\n padding: 20px 24px;\n height: 280px;\n `}\n\n\n ${(props) =>\n props.$background &&\n css`\n background-color: ${props.$background};\n `}\n\n ${({ $isCollection, $background }) =>\n $isCollection &&\n css`\n &::after {\n display: block;\n content: \"\";\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n left: 0;\n transform: rotate(-3deg);\n z-index: -1;\n ${PaperStyles};\n background-color: ${$background};\n }\n `}\n`;\nStyledEntityCard.displayName = \"StyledEntityCard\";\n\nexport const StyledEntityProperty = styled(\"div\")<{\n $renderAs?: string;\n $order?: number;\n $width?: number | string;\n $visibleFromBreakpoint?: VisibleFromBreakpoint;\n}>`\n ${({ $renderAs, $width }) =>\n $renderAs === \"list\" &&\n css`\n display: flex;\n align-items: center;\n min-width: 24px;\n flex: ${$width ? \"unset\" : 1};\n `}\n\n ${(props) =>\n props.$renderAs === \"list\" &&\n props.$order &&\n css`\n order: ${props.$order};\n `}\n\n ${(props) =>\n props.$renderAs === \"list\" &&\n props.$width &&\n css`\n width: ${props.$width};\n `}\n ${({ $visibleFromBreakpoint }) =>\n $visibleFromBreakpoint &&\n css`\n ${tw`tw-hidden`}\n `}\n ${({ $visibleFromBreakpoint }) =>\n $visibleFromBreakpoint === \"sm\" &&\n css`\n ${tw`sm:tw-flex`}\n `}\n ${({ $visibleFromBreakpoint }) =>\n $visibleFromBreakpoint === \"md\" &&\n css`\n ${tw`md:tw-flex`}\n `}\n ${({ $visibleFromBreakpoint }) =>\n $visibleFromBreakpoint === \"lg\" &&\n css`\n ${tw`lg:tw-flex`}\n `}\n ${({ $visibleFromBreakpoint }) =>\n $visibleFromBreakpoint === \"xl\" &&\n css`\n ${tw`xl:tw-flex`}\n `}\n ${({ $visibleFromBreakpoint }) =>\n $visibleFromBreakpoint === \"2xl\" &&\n css`\n ${tw`2xl:tw-flex`}\n `}\n`;\n\nStyledEntityProperty.displayName = \"StyledEntityProperty\";\n\nexport const StyledEntityGroup = styled(\"div\")<{\n $renderAs: string;\n $gap?: number;\n}>`\n ${({ $renderAs, $gap }) =>\n $renderAs === \"grid\" &&\n css`\n display: grid;\n grid-gap: ${$gap ? `${$gap}px` : \"initial\"};\n grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));\n `}\n ${(props) =>\n props.$renderAs === \"list\" &&\n css`\n display: flex;\n flex-direction: column;\n `}\n`;\nStyledEntityGroup.displayName = \"StyledEntityGroup\";\n\nexport const StyledEntityActions = styled(\"div\")<{ $renderAs?: string }>`\n display: flex;\n flex-direction: column;\n align-items: center;\n\n ${({ $renderAs }) =>\n $renderAs === \"grid\" &&\n css`\n position: absolute;\n right: 16px;\n top: 20px;\n `}\n\n ${({ $renderAs }) =>\n $renderAs === \"list\" &&\n css`\n justify-self: flex-end;\n `}\n`;\n"],"file":"Styles.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Entity/index.ts"],"names":["Entity","Group","EntityGroup","Card","EntityCard","Property","EntityProperty"],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Entity/index.ts"],"names":["Entity","Group","EntityGroup","Card","EntityCard","Property","EntityProperty"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAQO,IAAMA,MAAe,GAAG;AAC7BC,EAAAA,KAAK,EAAEC,wBADsB;AAE7BC,EAAAA,IAAI,EAAEC,sBAFuB;AAG7BC,EAAAA,QAAQ,EAAEC;AAHmB,CAAxB","sourcesContent":["import { EntityGroup } from \"./EntityGroup\";\nimport { EntityCard } from \"./EntityCard\";\nimport { EntityProperty } from \"./EntityProperty\";\n\nexport interface IEntity {\n Group: typeof EntityGroup;\n Card: typeof EntityCard;\n Property: typeof EntityProperty;\n}\n\nexport const Entity: IEntity = {\n Group: EntityGroup,\n Card: EntityCard,\n Property: EntityProperty,\n};\n"],"file":"index.js"}
|
|
@@ -8,7 +8,7 @@ StyledText.displayName = "StyledText";
|
|
|
8
8
|
export var StyledAddCrossIcon = styled(AddCrossIcon).withConfig({
|
|
9
9
|
displayName: "Styles__StyledAddCrossIcon",
|
|
10
10
|
componentId: "sc-1fx7urq-1"
|
|
11
|
-
})(["fill:var(--page-paper-main);background:var(--color-primary);border-radius:30px;padding:
|
|
11
|
+
})(["fill:var(--page-paper-main);background:var(--color-primary);border-radius:30px;padding:7px;box-sizing:content-box;"]);
|
|
12
12
|
StyledAddCrossIcon.displayName = "StyledAddCrossIcon";
|
|
13
13
|
export var StyledAddToListButton = styled("button").withConfig({
|
|
14
14
|
displayName: "Styles__StyledAddToListButton",
|