@chayns-components/core 5.0.0-beta.15 → 5.0.0-beta.153

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.
Files changed (159) hide show
  1. package/README.md +3 -9
  2. package/lib/components/accordion/Accordion.d.ts +41 -2
  3. package/lib/components/accordion/Accordion.js +73 -75
  4. package/lib/components/accordion/Accordion.js.map +1 -1
  5. package/lib/components/accordion/Accordion.styles.d.ts +3 -2
  6. package/lib/components/accordion/Accordion.styles.js +67 -26
  7. package/lib/components/accordion/Accordion.styles.js.map +1 -1
  8. package/lib/components/accordion/accordion-body/AccordionBody.d.ts +13 -2
  9. package/lib/components/accordion/accordion-body/AccordionBody.js +19 -11
  10. package/lib/components/accordion/accordion-body/AccordionBody.js.map +1 -1
  11. package/lib/components/accordion/accordion-body/AccordionBody.styles.d.ts +4 -1
  12. package/lib/components/accordion/accordion-body/AccordionBody.styles.js +15 -10
  13. package/lib/components/accordion/accordion-body/AccordionBody.styles.js.map +1 -1
  14. package/lib/components/accordion/accordion-content/AccordionContent.d.ts +16 -2
  15. package/lib/components/accordion/accordion-content/AccordionContent.js +13 -11
  16. package/lib/components/accordion/accordion-content/AccordionContent.js.map +1 -1
  17. package/lib/components/accordion/accordion-content/AccordionContent.styles.d.ts +2 -1
  18. package/lib/components/accordion/accordion-content/AccordionContent.styles.js +24 -14
  19. package/lib/components/accordion/accordion-content/AccordionContent.styles.js.map +1 -1
  20. package/lib/components/accordion/accordion-group/AccordionGroup.d.ts +10 -2
  21. package/lib/components/accordion/accordion-group/AccordionGroup.js +31 -44
  22. package/lib/components/accordion/accordion-group/AccordionGroup.js.map +1 -1
  23. package/lib/components/accordion/accordion-head/AccordionHead.d.ts +5 -2
  24. package/lib/components/accordion/accordion-head/AccordionHead.js +74 -58
  25. package/lib/components/accordion/accordion-head/AccordionHead.js.map +1 -1
  26. package/lib/components/accordion/accordion-head/AccordionHead.styles.d.ts +9 -1
  27. package/lib/components/accordion/accordion-head/AccordionHead.styles.js +138 -45
  28. package/lib/components/accordion/accordion-head/AccordionHead.styles.js.map +1 -1
  29. package/lib/components/accordion/accordion-intro/AccordionIntro.d.ts +9 -0
  30. package/lib/components/accordion/accordion-intro/AccordionIntro.js +21 -0
  31. package/lib/components/accordion/accordion-intro/AccordionIntro.js.map +1 -0
  32. package/lib/components/accordion/accordion-intro/AccordionIntro.styles.d.ts +1 -0
  33. package/lib/components/accordion/accordion-intro/AccordionIntro.styles.js +13 -0
  34. package/lib/components/accordion/accordion-intro/AccordionIntro.styles.js.map +1 -0
  35. package/lib/components/accordion/utils.js +10 -12
  36. package/lib/components/accordion/utils.js.map +1 -1
  37. package/lib/components/badge/Badge.d.ts +9 -1
  38. package/lib/components/badge/Badge.js +12 -12
  39. package/lib/components/badge/Badge.js.map +1 -1
  40. package/lib/components/badge/Badge.styles.d.ts +4 -1
  41. package/lib/components/badge/Badge.styles.js +22 -15
  42. package/lib/components/badge/Badge.styles.js.map +1 -1
  43. package/lib/components/button/Button.d.ts +2 -2
  44. package/lib/components/button/Button.js +12 -20
  45. package/lib/components/button/Button.js.map +1 -1
  46. package/lib/components/button/Button.styles.js +46 -23
  47. package/lib/components/button/Button.styles.js.map +1 -1
  48. package/lib/components/checkbox/Checkbox.d.ts +25 -0
  49. package/lib/components/checkbox/Checkbox.js +44 -0
  50. package/lib/components/checkbox/Checkbox.js.map +1 -0
  51. package/lib/components/checkbox/Checkbox.styles.d.ts +6 -0
  52. package/lib/components/checkbox/Checkbox.styles.js +131 -0
  53. package/lib/components/checkbox/Checkbox.styles.js.map +1 -0
  54. package/lib/components/color-scheme-provider/ColorSchemeProvider.d.ts +2 -2
  55. package/lib/components/color-scheme-provider/ColorSchemeProvider.js +44 -81
  56. package/lib/components/color-scheme-provider/ColorSchemeProvider.js.map +1 -1
  57. package/lib/components/color-scheme-provider/font.d.ts +6 -0
  58. package/lib/components/color-scheme-provider/font.js +59 -0
  59. package/lib/components/color-scheme-provider/font.js.map +1 -0
  60. package/lib/components/context-menu/ContextMenu.d.ts +51 -0
  61. package/lib/components/context-menu/ContextMenu.js +154 -0
  62. package/lib/components/context-menu/ContextMenu.js.map +1 -0
  63. package/lib/components/context-menu/ContextMenu.styles.d.ts +1 -0
  64. package/lib/components/context-menu/ContextMenu.styles.js +13 -0
  65. package/lib/components/context-menu/ContextMenu.styles.js.map +1 -0
  66. package/lib/components/context-menu/constants/alignment.d.ts +8 -0
  67. package/lib/components/context-menu/constants/alignment.js +17 -0
  68. package/lib/components/context-menu/constants/alignment.js.map +1 -0
  69. package/lib/components/context-menu/context-menu-content/ContextMenuContent.d.ts +10 -0
  70. package/lib/components/context-menu/context-menu-content/ContextMenuContent.js +78 -0
  71. package/lib/components/context-menu/context-menu-content/ContextMenuContent.js.map +1 -0
  72. package/lib/components/context-menu/context-menu-content/ContextMenuContent.styles.d.ts +11 -0
  73. package/lib/components/context-menu/context-menu-content/ContextMenuContent.styles.js +117 -0
  74. package/lib/components/context-menu/context-menu-content/ContextMenuContent.styles.js.map +1 -0
  75. package/lib/components/grid-image/GridImage.d.ts +2 -2
  76. package/lib/components/grid-image/GridImage.js +15 -52
  77. package/lib/components/grid-image/GridImage.js.map +1 -1
  78. package/lib/components/grid-image/GridImage.styles.d.ts +3 -3
  79. package/lib/components/grid-image/GridImage.styles.js +83 -39
  80. package/lib/components/grid-image/GridImage.styles.js.map +1 -1
  81. package/lib/components/icon/Icon.d.ts +3 -3
  82. package/lib/components/icon/Icon.js +22 -34
  83. package/lib/components/icon/Icon.js.map +1 -1
  84. package/lib/components/icon/Icon.styles.d.ts +1 -1
  85. package/lib/components/icon/Icon.styles.js +62 -40
  86. package/lib/components/icon/Icon.styles.js.map +1 -1
  87. package/lib/components/icon/utils.js +2 -5
  88. package/lib/components/icon/utils.js.map +1 -1
  89. package/lib/components/input/Input.d.ts +37 -0
  90. package/lib/components/input/Input.js +75 -0
  91. package/lib/components/input/Input.js.map +1 -0
  92. package/lib/components/input/Input.styles.d.ts +7 -0
  93. package/lib/components/input/Input.styles.js +71 -0
  94. package/lib/components/input/Input.styles.js.map +1 -0
  95. package/lib/components/list/List.d.ts +1 -1
  96. package/lib/components/list/List.js +26 -63
  97. package/lib/components/list/List.js.map +1 -1
  98. package/lib/components/list/list-item/ListItem.d.ts +11 -2
  99. package/lib/components/list/list-item/ListItem.js +37 -51
  100. package/lib/components/list/list-item/ListItem.js.map +1 -1
  101. package/lib/components/list/list-item/ListItem.styles.js +44 -26
  102. package/lib/components/list/list-item/ListItem.styles.js.map +1 -1
  103. package/lib/components/list/list-item/list-item-body/ListItemBody.d.ts +1 -2
  104. package/lib/components/list/list-item/list-item-body/ListItemBody.js +8 -8
  105. package/lib/components/list/list-item/list-item-body/ListItemBody.js.map +1 -1
  106. package/lib/components/list/list-item/list-item-body/ListItemBody.styles.js +3 -9
  107. package/lib/components/list/list-item/list-item-body/ListItemBody.styles.js.map +1 -1
  108. package/lib/components/list/list-item/list-item-content/ListItemContent.js +4 -7
  109. package/lib/components/list/list-item/list-item-content/ListItemContent.js.map +1 -1
  110. package/lib/components/list/list-item/list-item-content/ListItemContent.styles.js +8 -11
  111. package/lib/components/list/list-item/list-item-content/ListItemContent.styles.js.map +1 -1
  112. package/lib/components/list/list-item/list-item-head/ListItemHead.d.ts +3 -2
  113. package/lib/components/list/list-item/list-item-head/ListItemHead.js +45 -91
  114. package/lib/components/list/list-item/list-item-head/ListItemHead.js.map +1 -1
  115. package/lib/components/list/list-item/list-item-head/ListItemHead.styles.d.ts +2 -11
  116. package/lib/components/list/list-item/list-item-head/ListItemHead.styles.js +89 -79
  117. package/lib/components/list/list-item/list-item-head/ListItemHead.styles.js.map +1 -1
  118. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.d.ts +6 -0
  119. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.js +23 -0
  120. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.js.map +1 -0
  121. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.d.ts +1 -0
  122. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.js +32 -0
  123. package/lib/components/list/list-item/list-item-head/list-item-icon/ListItemIcon.styles.js.map +1 -0
  124. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.d.ts +7 -0
  125. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.js +44 -0
  126. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.js.map +1 -0
  127. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.d.ts +10 -0
  128. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.js +52 -0
  129. package/lib/components/list/list-item/list-item-head/list-item-image/ListItemImage.styles.js.map +1 -0
  130. package/lib/components/mention-finder/MentionFinder.d.ts +31 -0
  131. package/lib/components/mention-finder/MentionFinder.js +140 -0
  132. package/lib/components/mention-finder/MentionFinder.js.map +1 -0
  133. package/lib/components/mention-finder/MentionFinder.styles.d.ts +5 -0
  134. package/lib/components/mention-finder/MentionFinder.styles.js +94 -0
  135. package/lib/components/mention-finder/MentionFinder.styles.js.map +1 -0
  136. package/lib/components/mention-finder/constants/alignment.d.ts +4 -0
  137. package/lib/components/mention-finder/constants/alignment.js +13 -0
  138. package/lib/components/mention-finder/constants/alignment.js.map +1 -0
  139. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.d.ts +10 -0
  140. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.js +32 -0
  141. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.js.map +1 -0
  142. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.styles.d.ts +8 -0
  143. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.styles.js +100 -0
  144. package/lib/components/mention-finder/mention-finder-item/MentionFinderItem.styles.js.map +1 -0
  145. package/lib/components/small-wait-cursor/SmallWaitCursor.d.ts +22 -0
  146. package/lib/components/small-wait-cursor/SmallWaitCursor.js +34 -0
  147. package/lib/components/small-wait-cursor/SmallWaitCursor.js.map +1 -0
  148. package/lib/components/small-wait-cursor/SmallWaitCursor.styles.d.ts +13 -0
  149. package/lib/components/small-wait-cursor/SmallWaitCursor.styles.js +72 -0
  150. package/lib/components/small-wait-cursor/SmallWaitCursor.styles.js.map +1 -0
  151. package/lib/hooks/uuid.js +2 -21
  152. package/lib/hooks/uuid.js.map +1 -1
  153. package/lib/index.d.ts +9 -0
  154. package/lib/index.js +70 -25
  155. package/lib/index.js.map +1 -1
  156. package/lib/types/chayns.d.ts +59 -0
  157. package/lib/types/chayns.js +14 -0
  158. package/lib/types/chayns.js.map +1 -0
  159. package/package.json +22 -18
@@ -4,13 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.getStackSizeFactor = void 0;
7
-
8
- var getStackSizeFactor = function getStackSizeFactor(icon) {
7
+ const getStackSizeFactor = icon => {
9
8
  var _icon$match;
10
-
11
- var sizeFactorString = (_icon$match = icon.match(/fa-stack-([\d])x/)) === null || _icon$match === void 0 ? void 0 : _icon$match[1];
9
+ const sizeFactorString = (_icon$match = icon.match(/fa-stack-([\d])x/)) === null || _icon$match === void 0 ? void 0 : _icon$match[1];
12
10
  return typeof sizeFactorString === 'string' ? parseInt(sizeFactorString, 10) : undefined;
13
11
  };
14
-
15
12
  exports.getStackSizeFactor = getStackSizeFactor;
16
13
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/icon/utils.ts"],"names":["getStackSizeFactor","icon","sizeFactorString","match","parseInt","undefined"],"mappings":";;;;;;;AAAO,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,IAAD,EAAkB;AAAA;;AAChD,MAAMC,gBAAgB,kBAAGD,IAAI,CAACE,KAAL,CAAW,kBAAX,CAAH,gDAAG,YAAiC,CAAjC,CAAzB;AAEA,SAAO,OAAOD,gBAAP,KAA4B,QAA5B,GAAuCE,QAAQ,CAACF,gBAAD,EAAmB,EAAnB,CAA/C,GAAwEG,SAA/E;AACH,CAJM","sourcesContent":["export const getStackSizeFactor = (icon: string) => {\n const sizeFactorString = icon.match(/fa-stack-([\\d])x/)?.[1];\n\n return typeof sizeFactorString === 'string' ? parseInt(sizeFactorString, 10) : undefined;\n};\n"],"file":"utils.js"}
1
+ {"version":3,"file":"utils.js","names":["getStackSizeFactor","icon","_icon$match","sizeFactorString","match","parseInt","undefined","exports"],"sources":["../../../src/components/icon/utils.ts"],"sourcesContent":["export const getStackSizeFactor = (icon: string) => {\n const sizeFactorString = icon.match(/fa-stack-([\\d])x/)?.[1];\n\n return typeof sizeFactorString === 'string' ? parseInt(sizeFactorString, 10) : undefined;\n};\n"],"mappings":";;;;;;AAAO,MAAMA,kBAAkB,GAAIC,IAAY,IAAK;EAAA,IAAAC,WAAA;EAChD,MAAMC,gBAAgB,IAAAD,WAAA,GAAGD,IAAI,CAACG,KAAK,CAAC,kBAAkB,CAAC,cAAAF,WAAA,uBAA9BA,WAAA,CAAiC,CAAC,CAAC;EAE5D,OAAO,OAAOC,gBAAgB,KAAK,QAAQ,GAAGE,QAAQ,CAACF,gBAAgB,EAAE,EAAE,CAAC,GAAGG,SAAS;AAC5F,CAAC;AAACC,OAAA,CAAAP,kBAAA,GAAAA,kBAAA"}
@@ -0,0 +1,37 @@
1
+ import { ChangeEventHandler, FC, FocusEventHandler, HTMLInputTypeAttribute, KeyboardEventHandler } from 'react';
2
+ export type InputProps = {
3
+ /**
4
+ * Disables the input so that it cannot be changed anymore
5
+ */
6
+ isDisabled?: boolean;
7
+ /**
8
+ * Function that is executed when the input field loses focus
9
+ */
10
+ onBlur?: FocusEventHandler<HTMLInputElement>;
11
+ /**
12
+ * Function that is executed when the text of the input changes
13
+ */
14
+ onChange?: ChangeEventHandler<HTMLInputElement>;
15
+ /**
16
+ * Function that is executed when the input field is focused
17
+ */
18
+ onFocus?: FocusEventHandler<HTMLInputElement>;
19
+ /**
20
+ * Function that is executed when a letter is pressed
21
+ */
22
+ onKeyDown?: KeyboardEventHandler<HTMLInputElement>;
23
+ /**
24
+ * Placeholder for the input field
25
+ */
26
+ placeholder?: string;
27
+ /**
28
+ * Input type set for input element (e.g. 'text', 'number' or 'password')
29
+ */
30
+ type?: HTMLInputTypeAttribute;
31
+ /**
32
+ * Value if the input field should be controlled
33
+ */
34
+ value?: string;
35
+ };
36
+ declare const Input: FC<InputProps>;
37
+ export default Input;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _Input = require("./Input.styles");
9
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10
+ 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; }
11
+ const Input = _ref => {
12
+ let {
13
+ isDisabled,
14
+ onBlur,
15
+ onChange,
16
+ onFocus,
17
+ onKeyDown,
18
+ placeholder,
19
+ type = 'text',
20
+ value
21
+ } = _ref;
22
+ const [hasValue, setHasValue] = (0, _react.useState)(typeof value === 'string' && value !== '');
23
+ const handleInputFieldChange = (0, _react.useCallback)(event => {
24
+ setHasValue(event.target.value !== '');
25
+ if (typeof onChange === 'function') {
26
+ onChange(event);
27
+ }
28
+ }, [onChange]);
29
+ (0, _react.useEffect)(() => {
30
+ if (typeof value === 'string') {
31
+ setHasValue(value !== '');
32
+ }
33
+ }, [value]);
34
+ const labelPosition = (0, _react.useMemo)(() => {
35
+ if (hasValue) {
36
+ return {
37
+ bottom: -8,
38
+ right: -6
39
+ };
40
+ }
41
+ return {
42
+ left: 0,
43
+ top: 0
44
+ };
45
+ }, [hasValue]);
46
+ return /*#__PURE__*/_react.default.createElement(_Input.StyledInput, {
47
+ className: "beta-chayns-input",
48
+ isDisabled: isDisabled
49
+ }, /*#__PURE__*/_react.default.createElement(_Input.StyledInputContent, null, /*#__PURE__*/_react.default.createElement(_Input.StyledInputField, {
50
+ disabled: isDisabled,
51
+ onBlur: onBlur,
52
+ onChange: handleInputFieldChange,
53
+ onFocus: onFocus,
54
+ onKeyDown: onKeyDown,
55
+ value: value,
56
+ type: type
57
+ }), /*#__PURE__*/_react.default.createElement(_Input.StyledMotionInputLabel, {
58
+ animate: {
59
+ scale: hasValue ? 0.6 : 1
60
+ },
61
+ layout: true,
62
+ style: {
63
+ ...labelPosition,
64
+ originX: 1,
65
+ originY: 1
66
+ },
67
+ transition: {
68
+ type: 'tween'
69
+ }
70
+ }, placeholder)));
71
+ };
72
+ Input.displayName = 'Input';
73
+ var _default = Input;
74
+ exports.default = _default;
75
+ //# sourceMappingURL=Input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.js","names":["_react","_interopRequireWildcard","require","_Input","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Input","_ref","isDisabled","onBlur","onChange","onFocus","onKeyDown","placeholder","type","value","hasValue","setHasValue","useState","handleInputFieldChange","useCallback","event","target","useEffect","labelPosition","useMemo","bottom","right","left","top","createElement","StyledInput","className","StyledInputContent","StyledInputField","disabled","StyledMotionInputLabel","animate","scale","layout","style","originX","originY","transition","displayName","_default","exports"],"sources":["../../../src/components/input/Input.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n ChangeEventHandler,\n FC,\n FocusEventHandler,\n HTMLInputTypeAttribute,\n KeyboardEventHandler,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport {\n StyledInput,\n StyledInputContent,\n StyledInputField,\n StyledMotionInputLabel,\n} from './Input.styles';\n\nexport type InputProps = {\n /**\n * Disables the input so that it cannot be changed anymore\n */\n isDisabled?: boolean;\n /**\n * Function that is executed when the input field loses focus\n */\n onBlur?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the text of the input changes\n */\n onChange?: ChangeEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when the input field is focused\n */\n onFocus?: FocusEventHandler<HTMLInputElement>;\n /**\n * Function that is executed when a letter is pressed\n */\n onKeyDown?: KeyboardEventHandler<HTMLInputElement>;\n /**\n * Placeholder for the input field\n */\n placeholder?: string;\n /**\n * Input type set for input element (e.g. 'text', 'number' or 'password')\n */\n type?: HTMLInputTypeAttribute;\n /**\n * Value if the input field should be controlled\n */\n value?: string;\n};\n\nconst Input: FC<InputProps> = ({\n isDisabled,\n onBlur,\n onChange,\n onFocus,\n onKeyDown,\n placeholder,\n type = 'text',\n value,\n}) => {\n const [hasValue, setHasValue] = useState(typeof value === 'string' && value !== '');\n\n const handleInputFieldChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n setHasValue(event.target.value !== '');\n\n if (typeof onChange === 'function') {\n onChange(event);\n }\n },\n [onChange]\n );\n\n useEffect(() => {\n if (typeof value === 'string') {\n setHasValue(value !== '');\n }\n }, [value]);\n\n const labelPosition = useMemo(() => {\n if (hasValue) {\n return { bottom: -8, right: -6 };\n }\n\n return { left: 0, top: 0 };\n }, [hasValue]);\n\n return (\n <StyledInput className=\"beta-chayns-input\" isDisabled={isDisabled}>\n <StyledInputContent>\n <StyledInputField\n disabled={isDisabled}\n onBlur={onBlur}\n onChange={handleInputFieldChange}\n onFocus={onFocus}\n onKeyDown={onKeyDown}\n value={value}\n type={type}\n />\n <StyledMotionInputLabel\n animate={{ scale: hasValue ? 0.6 : 1 }}\n layout\n style={{ ...labelPosition, originX: 1, originY: 1 }}\n transition={{ type: 'tween' }}\n >\n {placeholder}\n </StyledMotionInputLabel>\n </StyledInputContent>\n </StyledInput>\n );\n};\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { InputProps } from './Input';
2
+ export declare const StyledInput: import("styled-components").StyledComponent<"div", any, Pick<InputProps, "isDisabled"> & {
3
+ theme: import("../color-scheme-provider/ColorSchemeProvider").Theme;
4
+ }, never>;
5
+ export declare const StyledInputContent: import("styled-components").StyledComponent<"div", any, {}, never>;
6
+ export declare const StyledInputField: import("styled-components").StyledComponent<"input", any, {}, never>;
7
+ export declare const StyledMotionInputLabel: import("styled-components").StyledComponent<import("framer-motion").ForwardRefComponent<HTMLLabelElement, import("framer-motion").HTMLMotionProps<"label">>, any, {}, never>;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StyledMotionInputLabel = exports.StyledInputField = exports.StyledInputContent = exports.StyledInput = void 0;
7
+ var _framerMotion = require("framer-motion");
8
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ const StyledInput = _styledComponents.default.div`
11
+ align-items: center;
12
+ background-color: ${_ref => {
13
+ let {
14
+ theme
15
+ } = _ref;
16
+ return theme['100'];
17
+ }};
18
+ border: 1px solid rgba(160, 160, 160, 0.3);
19
+ border-radius: 3px;
20
+ color: ${_ref2 => {
21
+ let {
22
+ theme
23
+ } = _ref2;
24
+ return theme['006'];
25
+ }};
26
+ display: flex;
27
+ justify-content: space-between;
28
+ min-height: 42px;
29
+ opacity: ${_ref3 => {
30
+ let {
31
+ isDisabled
32
+ } = _ref3;
33
+ return isDisabled ? 0.5 : 1;
34
+ }};
35
+ padding: 8px 10px;
36
+ transition: opacity 0.3s ease;
37
+ width: 100%;
38
+
39
+ &:not(&:first-child) {
40
+ margin-top: 8px;
41
+ }
42
+ `;
43
+ exports.StyledInput = StyledInput;
44
+ const StyledInputContent = _styledComponents.default.div`
45
+ display: flex;
46
+ flex: 1 1 auto;
47
+ flex-direction: column;
48
+ position: relative;
49
+ min-width: 0;
50
+ `;
51
+ exports.StyledInputContent = StyledInputContent;
52
+ const StyledInputField = _styledComponents.default.input`
53
+ background: none;
54
+ border: none;
55
+ color: ${_ref4 => {
56
+ let {
57
+ theme
58
+ } = _ref4;
59
+ return theme.text;
60
+ }};
61
+ padding: 0;
62
+ `;
63
+ exports.StyledInputField = StyledInputField;
64
+ const StyledMotionInputLabel = (0, _styledComponents.default)(_framerMotion.motion.label)`
65
+ line-height: 1.15;
66
+ pointer-events: none;
67
+ position: absolute;
68
+ user-select: none;
69
+ `;
70
+ exports.StyledMotionInputLabel = StyledMotionInputLabel;
71
+ //# sourceMappingURL=Input.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.styles.js","names":["_framerMotion","require","_styledComponents","_interopRequireDefault","obj","__esModule","default","StyledInput","styled","div","_ref","theme","_ref2","_ref3","isDisabled","exports","StyledInputContent","StyledInputField","input","_ref4","text","StyledMotionInputLabel","motion","label"],"sources":["../../../src/components/input/Input.styles.ts"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled from 'styled-components';\nimport type { WithTheme } from '../color-scheme-provider/ColorSchemeProvider';\nimport type { InputProps } from './Input';\n\ntype StyledInputProps = WithTheme<Pick<InputProps, 'isDisabled'>>;\n\nexport const StyledInput = styled.div<StyledInputProps>`\n align-items: center;\n background-color: ${({ theme }: StyledInputProps) => theme['100']};\n border: 1px solid rgba(160, 160, 160, 0.3);\n border-radius: 3px;\n color: ${({ theme }: StyledInputProps) => theme['006']};\n display: flex;\n justify-content: space-between;\n min-height: 42px;\n opacity: ${({ isDisabled }) => (isDisabled ? 0.5 : 1)};\n padding: 8px 10px;\n transition: opacity 0.3s ease;\n width: 100%;\n\n &:not(&:first-child) {\n margin-top: 8px;\n }\n`;\n\nexport const StyledInputContent = styled.div`\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n position: relative;\n min-width: 0;\n`;\n\nexport const StyledInputField = styled.input`\n background: none;\n border: none;\n color: ${({ theme }: StyledInputProps) => theme.text};\n padding: 0;\n`;\n\nexport const StyledMotionInputLabel = styled(motion.label)`\n line-height: 1.15;\n pointer-events: none;\n position: absolute;\n user-select: none;\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAuC,SAAAE,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAMhC,MAAMG,WAAW,GAAGC,yBAAM,CAACC,GAAsB;AACxD;AACA,wBAAwBC,IAAA;EAAA,IAAC;IAAEC;EAAwB,CAAC,GAAAD,IAAA;EAAA,OAAKC,KAAK,CAAC,KAAK,CAAC;AAAA,CAAC;AACtE;AACA;AACA,aAAaC,KAAA;EAAA,IAAC;IAAED;EAAwB,CAAC,GAAAC,KAAA;EAAA,OAAKD,KAAK,CAAC,KAAK,CAAC;AAAA,CAAC;AAC3D;AACA;AACA;AACA,eAAeE,KAAA;EAAA,IAAC;IAAEC;EAAW,CAAC,GAAAD,KAAA;EAAA,OAAMC,UAAU,GAAG,GAAG,GAAG,CAAC;AAAA,CAAE;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAACC,OAAA,CAAAR,WAAA,GAAAA,WAAA;AAEK,MAAMS,kBAAkB,GAAGR,yBAAM,CAACC,GAAI;AAC7C;AACA;AACA;AACA;AACA;AACA,CAAC;AAACM,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AAEK,MAAMC,gBAAgB,GAAGT,yBAAM,CAACU,KAAM;AAC7C;AACA;AACA,aAAaC,KAAA;EAAA,IAAC;IAAER;EAAwB,CAAC,GAAAQ,KAAA;EAAA,OAAKR,KAAK,CAACS,IAAI;AAAA,CAAC;AACzD;AACA,CAAC;AAACL,OAAA,CAAAE,gBAAA,GAAAA,gBAAA;AAEK,MAAMI,sBAAsB,GAAG,IAAAb,yBAAM,EAACc,oBAAM,CAACC,KAAK,CAAE;AAC3D;AACA;AACA;AACA;AACA,CAAC;AAACR,OAAA,CAAAM,sBAAA,GAAAA,sBAAA"}
@@ -8,7 +8,7 @@ interface IListContext {
8
8
  }) => void;
9
9
  }
10
10
  export declare const ListContext: React.Context<IListContext>;
11
- declare type ListProps = {
11
+ type ListProps = {
12
12
  /**
13
13
  * The items of the list
14
14
  */
@@ -1,90 +1,53 @@
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
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.default = exports.ListContext = void 0;
9
-
10
7
  var _react = _interopRequireWildcard(require("react"));
11
-
12
- 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); }
13
-
14
- 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; }
15
-
16
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
17
-
18
- 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."); }
19
-
20
- 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); }
21
-
22
- 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; }
23
-
24
- 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; }
25
-
26
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
27
-
28
- var ListContext = /*#__PURE__*/_react.default.createContext({
29
- incrementExpandableItemCount: function incrementExpandableItemCount() {
30
- return function () {};
31
- },
8
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
9
+ 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; }
10
+ const ListContext = /*#__PURE__*/_react.default.createContext({
11
+ incrementExpandableItemCount: () => () => {},
32
12
  isAnyItemExpandable: false,
33
13
  openItemUuid: undefined,
34
- updateOpenItemUuid: function updateOpenItemUuid() {}
14
+ updateOpenItemUuid: () => {}
35
15
  });
36
-
37
16
  exports.ListContext = ListContext;
38
17
  ListContext.displayName = 'ListContext';
39
-
40
- var List = function List(_ref) {
41
- var children = _ref.children;
42
-
43
- var _useState = (0, _react.useState)(undefined),
44
- _useState2 = _slicedToArray(_useState, 2),
45
- openItemUuid = _useState2[0],
46
- setOpenItemUuid = _useState2[1];
47
-
48
- var _useState3 = (0, _react.useState)(0),
49
- _useState4 = _slicedToArray(_useState3, 2),
50
- expandableItemCount = _useState4[0],
51
- setExpandableItemCount = _useState4[1];
52
-
53
- var updateOpenItemUuid = (0, _react.useCallback)(function (uuid) {
54
- var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
55
- shouldOnlyOpen = _ref2.shouldOnlyOpen;
56
-
57
- setOpenItemUuid(function (currentOpenItemUuid) {
18
+ const List = _ref => {
19
+ let {
20
+ children
21
+ } = _ref;
22
+ const [openItemUuid, setOpenItemUuid] = (0, _react.useState)(undefined);
23
+ const [expandableItemCount, setExpandableItemCount] = (0, _react.useState)(0);
24
+ const updateOpenItemUuid = (0, _react.useCallback)(function (uuid) {
25
+ let {
26
+ shouldOnlyOpen
27
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
28
+ setOpenItemUuid(currentOpenItemUuid => {
58
29
  if (currentOpenItemUuid === uuid && shouldOnlyOpen !== true) {
59
30
  return undefined;
60
31
  }
61
-
62
32
  return uuid;
63
33
  });
64
34
  }, [setOpenItemUuid]);
65
- var incrementExpandableItemCount = (0, _react.useCallback)(function () {
66
- setExpandableItemCount(function (count) {
67
- return count + 1;
68
- });
69
- return function () {
70
- setExpandableItemCount(function (count) {
71
- return count - 1;
72
- });
35
+ const incrementExpandableItemCount = (0, _react.useCallback)(() => {
36
+ setExpandableItemCount(count => count + 1);
37
+ return () => {
38
+ setExpandableItemCount(count => count - 1);
73
39
  };
74
40
  }, [setExpandableItemCount]);
75
- var providerValue = (0, _react.useMemo)(function () {
76
- return {
77
- isAnyItemExpandable: expandableItemCount > 0,
78
- updateOpenItemUuid: updateOpenItemUuid,
79
- openItemUuid: openItemUuid,
80
- incrementExpandableItemCount: incrementExpandableItemCount
81
- };
82
- }, [expandableItemCount, incrementExpandableItemCount, openItemUuid, updateOpenItemUuid]);
41
+ const providerValue = (0, _react.useMemo)(() => ({
42
+ isAnyItemExpandable: expandableItemCount > 0,
43
+ updateOpenItemUuid,
44
+ openItemUuid,
45
+ incrementExpandableItemCount
46
+ }), [expandableItemCount, incrementExpandableItemCount, openItemUuid, updateOpenItemUuid]);
83
47
  return /*#__PURE__*/_react.default.createElement(ListContext.Provider, {
84
48
  value: providerValue
85
49
  }, children);
86
50
  };
87
-
88
51
  List.displayName = 'List';
89
52
  var _default = List;
90
53
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/list/List.tsx"],"names":["ListContext","React","createContext","incrementExpandableItemCount","isAnyItemExpandable","openItemUuid","undefined","updateOpenItemUuid","displayName","List","children","setOpenItemUuid","expandableItemCount","setExpandableItemCount","uuid","shouldOnlyOpen","currentOpenItemUuid","count","providerValue"],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;AASO,IAAMA,WAAW,gBAAGC,eAAMC,aAAN,CAAkC;AACzDC,EAAAA,4BAA4B,EAAE;AAAA,WAAM,YAAM,CAAE,CAAd;AAAA,GAD2B;AAEzDC,EAAAA,mBAAmB,EAAE,KAFoC;AAGzDC,EAAAA,YAAY,EAAEC,SAH2C;AAIzDC,EAAAA,kBAAkB,EAAE,8BAAM,CAAE;AAJ6B,CAAlC,CAApB;;;AAOPP,WAAW,CAACQ,WAAZ,GAA0B,aAA1B;;AASA,IAAMC,IAAmB,GAAG,SAAtBA,IAAsB,OAAkB;AAAA,MAAfC,QAAe,QAAfA,QAAe;;AAC1C,kBAAwC,qBAAuCJ,SAAvC,CAAxC;AAAA;AAAA,MAAOD,YAAP;AAAA,MAAqBM,eAArB;;AACA,mBAAsD,qBAAiB,CAAjB,CAAtD;AAAA;AAAA,MAAOC,mBAAP;AAAA,MAA4BC,sBAA5B;;AAEA,MAAMN,kBAAkB,GAAG,wBACvB,UAACO,IAAD,EAAmC;AAAA,oFAAP,EAAO;AAAA,QAA1BC,cAA0B,SAA1BA,cAA0B;;AAC/BJ,IAAAA,eAAe,CAAC,UAACK,mBAAD,EAAyB;AACrC,UAAIA,mBAAmB,KAAKF,IAAxB,IAAgCC,cAAc,KAAK,IAAvD,EAA6D;AACzD,eAAOT,SAAP;AACH;;AAED,aAAOQ,IAAP;AACH,KANc,CAAf;AAOH,GATsB,EAUvB,CAACH,eAAD,CAVuB,CAA3B;AAaA,MAAMR,4BAA4B,GAAG,wBAAY,YAAM;AACnDU,IAAAA,sBAAsB,CAAC,UAACI,KAAD;AAAA,aAAWA,KAAK,GAAG,CAAnB;AAAA,KAAD,CAAtB;AAEA,WAAO,YAAM;AACTJ,MAAAA,sBAAsB,CAAC,UAACI,KAAD;AAAA,eAAWA,KAAK,GAAG,CAAnB;AAAA,OAAD,CAAtB;AACH,KAFD;AAGH,GANoC,EAMlC,CAACJ,sBAAD,CANkC,CAArC;AAQA,MAAMK,aAAa,GAAG,oBAClB;AAAA,WAAO;AACHd,MAAAA,mBAAmB,EAAEQ,mBAAmB,GAAG,CADxC;AAEHL,MAAAA,kBAAkB,EAAlBA,kBAFG;AAGHF,MAAAA,YAAY,EAAZA,YAHG;AAIHF,MAAAA,4BAA4B,EAA5BA;AAJG,KAAP;AAAA,GADkB,EAOlB,CAACS,mBAAD,EAAsBT,4BAAtB,EAAoDE,YAApD,EAAkEE,kBAAlE,CAPkB,CAAtB;AAUA,sBAAO,6BAAC,WAAD,CAAa,QAAb;AAAsB,IAAA,KAAK,EAAEW;AAA7B,KAA6CR,QAA7C,CAAP;AACH,CApCD;;AAsCAD,IAAI,CAACD,WAAL,GAAmB,MAAnB;eAEeC,I","sourcesContent":["import React, { FC, ReactNode, useCallback, useMemo, useState } from 'react';\n\ninterface IListContext {\n incrementExpandableItemCount: () => () => void;\n isAnyItemExpandable: boolean;\n openItemUuid: string | undefined;\n updateOpenItemUuid: (uuid: string, options?: { shouldOnlyOpen?: boolean }) => void;\n}\n\nexport const ListContext = React.createContext<IListContext>({\n incrementExpandableItemCount: () => () => {},\n isAnyItemExpandable: false,\n openItemUuid: undefined,\n updateOpenItemUuid: () => {},\n});\n\nListContext.displayName = 'ListContext';\n\ntype ListProps = {\n /**\n * The items of the list\n */\n children: ReactNode;\n};\n\nconst List: FC<ListProps> = ({ children }) => {\n const [openItemUuid, setOpenItemUuid] = useState<IListContext['openItemUuid']>(undefined);\n const [expandableItemCount, setExpandableItemCount] = useState<number>(0);\n\n const updateOpenItemUuid = useCallback<IListContext['updateOpenItemUuid']>(\n (uuid, { shouldOnlyOpen } = {}) => {\n setOpenItemUuid((currentOpenItemUuid) => {\n if (currentOpenItemUuid === uuid && shouldOnlyOpen !== true) {\n return undefined;\n }\n\n return uuid;\n });\n },\n [setOpenItemUuid]\n );\n\n const incrementExpandableItemCount = useCallback(() => {\n setExpandableItemCount((count) => count + 1);\n\n return () => {\n setExpandableItemCount((count) => count - 1);\n };\n }, [setExpandableItemCount]);\n\n const providerValue = useMemo<IListContext>(\n () => ({\n isAnyItemExpandable: expandableItemCount > 0,\n updateOpenItemUuid,\n openItemUuid,\n incrementExpandableItemCount,\n }),\n [expandableItemCount, incrementExpandableItemCount, openItemUuid, updateOpenItemUuid]\n );\n\n return <ListContext.Provider value={providerValue}>{children}</ListContext.Provider>;\n};\n\nList.displayName = 'List';\n\nexport default List;\n"],"file":"List.js"}
1
+ {"version":3,"file":"List.js","names":["_react","_interopRequireWildcard","require","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ListContext","React","createContext","incrementExpandableItemCount","isAnyItemExpandable","openItemUuid","undefined","updateOpenItemUuid","exports","displayName","List","_ref","children","setOpenItemUuid","useState","expandableItemCount","setExpandableItemCount","useCallback","uuid","shouldOnlyOpen","arguments","length","currentOpenItemUuid","count","providerValue","useMemo","createElement","Provider","value","_default"],"sources":["../../../src/components/list/List.tsx"],"sourcesContent":["import React, { FC, ReactNode, useCallback, useMemo, useState } from 'react';\n\ninterface IListContext {\n incrementExpandableItemCount: () => () => void;\n isAnyItemExpandable: boolean;\n openItemUuid: string | undefined;\n updateOpenItemUuid: (uuid: string, options?: { shouldOnlyOpen?: boolean }) => void;\n}\n\nexport const ListContext = React.createContext<IListContext>({\n incrementExpandableItemCount: () => () => {},\n isAnyItemExpandable: false,\n openItemUuid: undefined,\n updateOpenItemUuid: () => {},\n});\n\nListContext.displayName = 'ListContext';\n\ntype ListProps = {\n /**\n * The items of the list\n */\n children: ReactNode;\n};\n\nconst List: FC<ListProps> = ({ children }) => {\n const [openItemUuid, setOpenItemUuid] = useState<IListContext['openItemUuid']>(undefined);\n const [expandableItemCount, setExpandableItemCount] = useState<number>(0);\n\n const updateOpenItemUuid = useCallback<IListContext['updateOpenItemUuid']>(\n (uuid, { shouldOnlyOpen } = {}) => {\n setOpenItemUuid((currentOpenItemUuid) => {\n if (currentOpenItemUuid === uuid && shouldOnlyOpen !== true) {\n return undefined;\n }\n\n return uuid;\n });\n },\n [setOpenItemUuid]\n );\n\n const incrementExpandableItemCount = useCallback(() => {\n setExpandableItemCount((count) => count + 1);\n\n return () => {\n setExpandableItemCount((count) => count - 1);\n };\n }, [setExpandableItemCount]);\n\n const providerValue = useMemo<IListContext>(\n () => ({\n isAnyItemExpandable: expandableItemCount > 0,\n updateOpenItemUuid,\n openItemUuid,\n incrementExpandableItemCount,\n }),\n [expandableItemCount, incrementExpandableItemCount, openItemUuid, updateOpenItemUuid]\n );\n\n return <ListContext.Provider value={providerValue}>{children}</ListContext.Provider>;\n};\n\nList.displayName = 'List';\n\nexport default List;\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { FC, MouseEventHandler, ReactNode, TouchEventHandler } from 'react';
2
- declare type ListItemProps = {
2
+ type ListItemProps = {
3
3
  /**
4
4
  * The content of the `ListItem` body. When the `ListItem` has children,
5
5
  * it can be opened and also gets an icon as an indicator automatically.
@@ -15,7 +15,7 @@ declare type ListItemProps = {
15
15
  * of the header. Multiple icons are stacked. See the `Icon` component
16
16
  * documentation for more information.
17
17
  */
18
- icons?: [string, ...string[]];
18
+ icons?: string[];
19
19
  /**
20
20
  * A list of image URLs that are displayed on the left side of the header.
21
21
  * If multiple URLs are passed, the image is assembled from the first three
@@ -26,6 +26,10 @@ declare type ListItemProps = {
26
26
  * This can be used to automatically expand the `ListItem` during the first render.
27
27
  */
28
28
  isDefaultOpen?: boolean;
29
+ /**
30
+ * This overrides the internal opening state of the item and makes it controlled.
31
+ */
32
+ isOpen?: boolean;
29
33
  /**
30
34
  * Function to be executed when the header of the `ListItem` was clicked
31
35
  */
@@ -35,6 +39,11 @@ declare type ListItemProps = {
35
39
  * 400 milliseconds.
36
40
  */
37
41
  onLongPress?: TouchEventHandler<HTMLDivElement>;
42
+ /**
43
+ * Elements that are displayed on the left side of the header. If multiple
44
+ * elements are specified, they are displayed one aside the other.
45
+ */
46
+ leftElements?: [ReactNode, ...ReactNode[]];
38
47
  /**
39
48
  * Elements that are displayed on the right side of the header. If multiple
40
49
  * elements are specified, they are displayed one below the other.
@@ -1,103 +1,89 @@
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
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.default = void 0;
9
-
10
7
  var _framerMotion = require("framer-motion");
11
-
12
8
  var _react = _interopRequireWildcard(require("react"));
13
-
14
9
  var _uuid = require("../../../hooks/uuid");
15
-
16
10
  var _List = require("../List");
17
-
18
11
  var _ListItemBody = _interopRequireDefault(require("./list-item-body/ListItemBody"));
19
-
20
12
  var _ListItemHead = _interopRequireDefault(require("./list-item-head/ListItemHead"));
21
-
22
13
  var _ListItem = require("./ListItem.styles");
23
-
24
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
-
26
- 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); }
27
-
28
- 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; }
29
-
30
- var ListItem = function ListItem(_ref) {
31
- var children = _ref.children,
32
- hoverItem = _ref.hoverItem,
33
- icons = _ref.icons,
34
- images = _ref.images,
35
- isDefaultOpen = _ref.isDefaultOpen,
36
- onClick = _ref.onClick,
37
- onLongPress = _ref.onLongPress,
38
- rightElements = _ref.rightElements,
39
- subtitle = _ref.subtitle,
40
- shouldShowRoundImage = _ref.shouldShowRoundImage,
41
- title = _ref.title;
42
-
43
- var _useContext = (0, _react.useContext)(_List.ListContext),
44
- incrementExpandableItemCount = _useContext.incrementExpandableItemCount,
45
- isAnyItemExpandable = _useContext.isAnyItemExpandable,
46
- openItemUuid = _useContext.openItemUuid,
47
- updateOpenItemUuid = _useContext.updateOpenItemUuid;
48
-
49
- var uuid = (0, _uuid.useUuid)();
50
- var isExpandable = children !== undefined;
51
- var isOpen = openItemUuid === uuid;
52
- var handleHeadClick = (0, _react.useCallback)(function (event) {
15
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
16
+ 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; }
17
+ const ListItem = _ref => {
18
+ let {
19
+ children,
20
+ hoverItem,
21
+ icons,
22
+ images,
23
+ isDefaultOpen,
24
+ isOpen,
25
+ onClick,
26
+ onLongPress,
27
+ leftElements,
28
+ rightElements,
29
+ subtitle,
30
+ shouldShowRoundImage,
31
+ title
32
+ } = _ref;
33
+ const {
34
+ incrementExpandableItemCount,
35
+ isAnyItemExpandable,
36
+ openItemUuid,
37
+ updateOpenItemUuid
38
+ } = (0, _react.useContext)(_List.ListContext);
39
+ const uuid = (0, _uuid.useUuid)();
40
+ const isExpandable = children !== undefined;
41
+ const isItemOpen = isOpen !== null && isOpen !== void 0 ? isOpen : openItemUuid === uuid;
42
+ const handleHeadClick = (0, _react.useCallback)(event => {
53
43
  if (isExpandable) {
54
44
  updateOpenItemUuid(uuid);
55
45
  }
56
-
57
46
  if (typeof onClick === 'function') {
58
47
  onClick(event);
59
48
  }
60
49
  }, [isExpandable, onClick, updateOpenItemUuid, uuid]);
61
- (0, _react.useEffect)(function () {
50
+ (0, _react.useEffect)(() => {
62
51
  if (isExpandable) {
63
52
  // The incrementExpandableItemCount function returns an cleanup
64
53
  // function to decrement expandableItemCount if component unmounts
65
54
  return incrementExpandableItemCount();
66
55
  }
67
-
68
56
  return undefined;
69
57
  }, [incrementExpandableItemCount, isExpandable]);
70
- (0, _react.useEffect)(function () {
58
+ (0, _react.useEffect)(() => {
71
59
  if (isDefaultOpen) {
72
60
  updateOpenItemUuid(uuid, {
73
61
  shouldOnlyOpen: true
74
62
  });
75
63
  }
76
64
  }, [isDefaultOpen, updateOpenItemUuid, uuid]);
77
- return /*#__PURE__*/_react.default.createElement(_framerMotion.MotionConfig, {
78
- transition: {
79
- duration: 0.3
80
- }
81
- }, /*#__PURE__*/_react.default.createElement(_ListItem.StyledListItem, {
65
+ return /*#__PURE__*/_react.default.createElement(_ListItem.StyledListItem, {
82
66
  className: "beta-chayns-list-item",
83
67
  isClickable: typeof onClick === 'function' || isExpandable,
84
- isOpen: isOpen
68
+ isOpen: isItemOpen
85
69
  }, /*#__PURE__*/_react.default.createElement(_ListItemHead.default, {
86
70
  hoverItem: hoverItem,
87
71
  icons: icons,
88
72
  images: images,
89
73
  isAnyItemExpandable: isAnyItemExpandable,
90
74
  isExpandable: isExpandable,
91
- isOpen: isOpen,
75
+ isOpen: isItemOpen,
92
76
  onClick: handleHeadClick,
93
77
  onLongPress: onLongPress,
78
+ leftElements: leftElements,
94
79
  rightElements: rightElements,
95
80
  subtitle: subtitle,
96
81
  shouldShowRoundImage: shouldShowRoundImage,
97
82
  title: title
98
- }), /*#__PURE__*/_react.default.createElement(_framerMotion.AnimatePresence, null, isOpen && /*#__PURE__*/_react.default.createElement(_ListItemBody.default, null, children))));
83
+ }), /*#__PURE__*/_react.default.createElement(_framerMotion.AnimatePresence, {
84
+ initial: false
85
+ }, isExpandable && isItemOpen && /*#__PURE__*/_react.default.createElement(_ListItemBody.default, null, children)));
99
86
  };
100
-
101
87
  ListItem.displayName = 'ListItem';
102
88
  var _default = ListItem;
103
89
  exports.default = _default;