no-frills-ui 0.0.14-alpha.7 → 0.0.14-rc.0

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 (165) hide show
  1. package/README.md +2 -3
  2. package/dist/index.js +926 -795
  3. package/dist/index.js.map +1 -1
  4. package/lib-esm/components/Accordion/Accordion.d.ts +9 -13
  5. package/lib-esm/components/Accordion/Accordion.js +4 -10
  6. package/lib-esm/components/Accordion/Accordion.js.map +1 -0
  7. package/lib-esm/components/Accordion/AccordionStep.d.ts +22 -22
  8. package/lib-esm/components/Accordion/AccordionStep.js +41 -35
  9. package/lib-esm/components/Accordion/AccordionStep.js.map +1 -0
  10. package/lib-esm/components/Badge/Badge.d.ts +13 -16
  11. package/lib-esm/components/Badge/Badge.js +12 -21
  12. package/lib-esm/components/Badge/Badge.js.map +1 -0
  13. package/lib-esm/components/Button/ActionButton.d.ts +9 -5
  14. package/lib-esm/components/Button/ActionButton.js +20 -4
  15. package/lib-esm/components/Button/ActionButton.js.map +1 -0
  16. package/lib-esm/components/Button/Button.d.ts +9 -5
  17. package/lib-esm/components/Button/Button.js +19 -6
  18. package/lib-esm/components/Button/Button.js.map +1 -0
  19. package/lib-esm/components/Button/IconButton.d.ts +9 -5
  20. package/lib-esm/components/Button/IconButton.js +20 -4
  21. package/lib-esm/components/Button/IconButton.js.map +1 -0
  22. package/lib-esm/components/Button/LinkButton.d.ts +9 -5
  23. package/lib-esm/components/Button/LinkButton.js +20 -4
  24. package/lib-esm/components/Button/LinkButton.js.map +1 -0
  25. package/lib-esm/components/Button/RaisedButton.d.ts +9 -5
  26. package/lib-esm/components/Button/RaisedButton.js +20 -4
  27. package/lib-esm/components/Button/RaisedButton.js.map +1 -0
  28. package/lib-esm/components/Card/Card.d.ts +4 -6
  29. package/lib-esm/components/Card/Card.js +18 -4
  30. package/lib-esm/components/Card/Card.js.map +1 -0
  31. package/lib-esm/components/Chip/Chip.d.ts +2 -2
  32. package/lib-esm/components/Chip/Chip.js +17 -10
  33. package/lib-esm/components/Chip/Chip.js.map +1 -0
  34. package/lib-esm/components/ChipInput/ChipInput.d.ts +28 -39
  35. package/lib-esm/components/ChipInput/ChipInput.js +39 -39
  36. package/lib-esm/components/ChipInput/ChipInput.js.map +1 -0
  37. package/lib-esm/components/Dialog/AlertDialog.d.ts +11 -12
  38. package/lib-esm/components/Dialog/AlertDialog.js +5 -11
  39. package/lib-esm/components/Dialog/AlertDialog.js.map +1 -0
  40. package/lib-esm/components/Dialog/ConfirmDialog.d.ts +13 -14
  41. package/lib-esm/components/Dialog/ConfirmDialog.js +5 -12
  42. package/lib-esm/components/Dialog/ConfirmDialog.js.map +1 -0
  43. package/lib-esm/components/Dialog/Dialog.d.ts +8 -14
  44. package/lib-esm/components/Dialog/Dialog.js +13 -10
  45. package/lib-esm/components/Dialog/Dialog.js.map +1 -0
  46. package/lib-esm/components/Dialog/PromptDialog.d.ts +18 -19
  47. package/lib-esm/components/Dialog/PromptDialog.js +14 -21
  48. package/lib-esm/components/Dialog/PromptDialog.js.map +1 -0
  49. package/lib-esm/components/DragAndDrop/DragAndDrop.d.ts +37 -59
  50. package/lib-esm/components/DragAndDrop/DragAndDrop.js +26 -28
  51. package/lib-esm/components/DragAndDrop/DragAndDrop.js.map +1 -0
  52. package/lib-esm/components/DragAndDrop/DragItem.d.ts +2 -2
  53. package/lib-esm/components/DragAndDrop/DragItem.js +43 -40
  54. package/lib-esm/components/DragAndDrop/DragItem.js.map +1 -0
  55. package/lib-esm/components/DragAndDrop/types.d.ts +3 -3
  56. package/lib-esm/components/DragAndDrop/types.js +1 -0
  57. package/lib-esm/components/DragAndDrop/types.js.map +1 -0
  58. package/lib-esm/components/Drawer/Drawer.d.ts +24 -31
  59. package/lib-esm/components/Drawer/Drawer.js +50 -45
  60. package/lib-esm/components/Drawer/Drawer.js.map +1 -0
  61. package/lib-esm/components/Groups/Group.d.ts +6 -8
  62. package/lib-esm/components/Groups/Group.js +15 -12
  63. package/lib-esm/components/Groups/Group.js.map +1 -0
  64. package/lib-esm/components/Groups/GroupLabel.js +2 -1
  65. package/lib-esm/components/Groups/GroupLabel.js.map +1 -0
  66. package/lib-esm/components/Input/Checkbox.d.ts +12 -15
  67. package/lib-esm/components/Input/Checkbox.js +34 -29
  68. package/lib-esm/components/Input/Checkbox.js.map +1 -0
  69. package/lib-esm/components/Input/Dropdown.d.ts +8 -18
  70. package/lib-esm/components/Input/Dropdown.js +44 -18
  71. package/lib-esm/components/Input/Dropdown.js.map +1 -0
  72. package/lib-esm/components/Input/Input.d.ts +8 -3
  73. package/lib-esm/components/Input/Input.js +24 -22
  74. package/lib-esm/components/Input/Input.js.map +1 -0
  75. package/lib-esm/components/Input/Radio.d.ts +4 -8
  76. package/lib-esm/components/Input/Radio.js +20 -16
  77. package/lib-esm/components/Input/Radio.js.map +1 -0
  78. package/lib-esm/components/Input/RadioButton.d.ts +4 -8
  79. package/lib-esm/components/Input/RadioButton.js +19 -15
  80. package/lib-esm/components/Input/RadioButton.js.map +1 -0
  81. package/lib-esm/components/Input/Select.d.ts +6 -13
  82. package/lib-esm/components/Input/Select.js +26 -22
  83. package/lib-esm/components/Input/Select.js.map +1 -0
  84. package/lib-esm/components/Input/TextArea.d.ts +6 -13
  85. package/lib-esm/components/Input/TextArea.js +33 -27
  86. package/lib-esm/components/Input/TextArea.js.map +1 -0
  87. package/lib-esm/components/Input/Toggle.d.ts +4 -9
  88. package/lib-esm/components/Input/Toggle.js +15 -12
  89. package/lib-esm/components/Input/Toggle.js.map +1 -0
  90. package/lib-esm/components/Menu/Menu.d.ts +4 -14
  91. package/lib-esm/components/Menu/Menu.js +26 -17
  92. package/lib-esm/components/Menu/Menu.js.map +1 -0
  93. package/lib-esm/components/Menu/MenuContext.d.ts +4 -4
  94. package/lib-esm/components/Menu/MenuContext.js +2 -0
  95. package/lib-esm/components/Menu/MenuContext.js.map +1 -0
  96. package/lib-esm/components/Menu/MenuItem.d.ts +10 -4
  97. package/lib-esm/components/Menu/MenuItem.js +21 -6
  98. package/lib-esm/components/Menu/MenuItem.js.map +1 -0
  99. package/lib-esm/components/Modal/Modal.d.ts +17 -23
  100. package/lib-esm/components/Modal/Modal.js +38 -34
  101. package/lib-esm/components/Modal/Modal.js.map +1 -0
  102. package/lib-esm/components/Notification/Notification.d.ts +39 -34
  103. package/lib-esm/components/Notification/Notification.js +17 -39
  104. package/lib-esm/components/Notification/Notification.js.map +1 -0
  105. package/lib-esm/components/Notification/NotificationManager.d.ts +4 -4
  106. package/lib-esm/components/Notification/NotificationManager.js +19 -14
  107. package/lib-esm/components/Notification/NotificationManager.js.map +1 -0
  108. package/lib-esm/components/Notification/index.d.ts +1 -0
  109. package/lib-esm/components/Notification/style.d.ts +2 -3
  110. package/lib-esm/components/Notification/style.js +21 -20
  111. package/lib-esm/components/Notification/style.js.map +1 -0
  112. package/lib-esm/components/Notification/types.js +1 -0
  113. package/lib-esm/components/Notification/types.js.map +1 -0
  114. package/lib-esm/components/Popover/Popover.d.ts +21 -20
  115. package/lib-esm/components/Popover/Popover.js +44 -45
  116. package/lib-esm/components/Popover/Popover.js.map +1 -0
  117. package/lib-esm/components/Spinner/Spinner.d.ts +14 -15
  118. package/lib-esm/components/Spinner/Spinner.js +14 -14
  119. package/lib-esm/components/Spinner/Spinner.js.map +1 -0
  120. package/lib-esm/components/Stepper/Step.d.ts +15 -12
  121. package/lib-esm/components/Stepper/Step.js +12 -9
  122. package/lib-esm/components/Stepper/Step.js.map +1 -0
  123. package/lib-esm/components/Stepper/Stepper.d.ts +11 -17
  124. package/lib-esm/components/Stepper/Stepper.js +30 -27
  125. package/lib-esm/components/Stepper/Stepper.js.map +1 -0
  126. package/lib-esm/components/Tabs/Tab.d.ts +10 -16
  127. package/lib-esm/components/Tabs/Tab.js +1 -8
  128. package/lib-esm/components/Tabs/Tab.js.map +1 -0
  129. package/lib-esm/components/Tabs/Tabs.d.ts +11 -22
  130. package/lib-esm/components/Tabs/Tabs.js +43 -34
  131. package/lib-esm/components/Tabs/Tabs.js.map +1 -0
  132. package/lib-esm/components/Toast/Toast.d.ts +7 -7
  133. package/lib-esm/components/Toast/Toast.js +17 -15
  134. package/lib-esm/components/Toast/Toast.js.map +1 -0
  135. package/lib-esm/components/Toast/ToastStory.d.ts +21 -24
  136. package/lib-esm/components/Tooltip/Tooltip.d.ts +11 -14
  137. package/lib-esm/components/Tooltip/Tooltip.js +14 -23
  138. package/lib-esm/components/Tooltip/Tooltip.js.map +1 -0
  139. package/lib-esm/icons/CheckCircle.js +3 -2
  140. package/lib-esm/icons/CheckCircle.js.map +1 -0
  141. package/lib-esm/icons/Close.js +1 -0
  142. package/lib-esm/icons/Close.js.map +1 -0
  143. package/lib-esm/icons/DragIndicator.js +1 -0
  144. package/lib-esm/icons/DragIndicator.js.map +1 -0
  145. package/lib-esm/icons/ErrorOutline.js +3 -2
  146. package/lib-esm/icons/ErrorOutline.js.map +1 -0
  147. package/lib-esm/icons/ExpandMore.js +1 -0
  148. package/lib-esm/icons/ExpandMore.js.map +1 -0
  149. package/lib-esm/icons/FiberManualRecord.js +1 -0
  150. package/lib-esm/icons/FiberManualRecord.js.map +1 -0
  151. package/lib-esm/icons/Info.js +3 -2
  152. package/lib-esm/icons/Info.js.map +1 -0
  153. package/lib-esm/icons/ReportProblem.js +3 -2
  154. package/lib-esm/icons/ReportProblem.js.map +1 -0
  155. package/lib-esm/index.js +43 -0
  156. package/lib-esm/index.js.map +1 -0
  157. package/lib-esm/shared/LayerManager.d.ts +5 -4
  158. package/lib-esm/shared/LayerManager.js +125 -112
  159. package/lib-esm/shared/LayerManager.js.map +1 -0
  160. package/lib-esm/shared/constants.js +1 -0
  161. package/lib-esm/shared/constants.js.map +1 -0
  162. package/lib-esm/shared/styles.js +9 -8
  163. package/lib-esm/shared/styles.js.map +1 -0
  164. package/package.json +66 -31
  165. package/lib-esm/components/index.js +0 -42
@@ -1,6 +1,5 @@
1
1
  import { jsxs, jsx } from '@emotion/react/jsx-runtime';
2
2
  import React, { useState, useRef, useId, useCallback, useEffect } from 'react';
3
- import PropTypes from 'prop-types';
4
3
  import styled from '@emotion/styled';
5
4
  import Card from '../Card/Card.js';
6
5
 
@@ -11,7 +10,7 @@ var POPOVER_POSITION = /*#__PURE__*/ function(POPOVER_POSITION) {
11
10
  POPOVER_POSITION["BOTTOM_RIGHT"] = "BOTTOM_RIGHT";
12
11
  return POPOVER_POSITION;
13
12
  }({});
14
- const positionMap = {
13
+ const positionMap$2 = {
15
14
  ["TOP_LEFT"]: `
16
15
  bottom: calc(100% - 10px);
17
16
  left: 0;
@@ -30,25 +29,30 @@ const positionMap = {
30
29
  `
31
30
  };
32
31
  const PopoverDiv = /*#__PURE__*/ styled("div", {
33
- target: "e1oy1jnn0",
32
+ target: "ejcb1ps0",
34
33
  label: "PopoverDiv"
35
- })("position:relative;display:inline-flex;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvbm8tZnJpbGxzLXVpL25vLWZyaWxscy11aS9zcmMvY29tcG9uZW50cy9Qb3BvdmVyL1BvcG92ZXIudHN4Iiwic291cmNlcyI6WyIvaG9tZS9ydW5uZXIvd29yay9uby1mcmlsbHMtdWkvbm8tZnJpbGxzLXVpL3NyYy9jb21wb25lbnRzL1BvcG92ZXIvUG9wb3Zlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZUlkLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IENhcmQgfSBmcm9tICcuLi9DYXJkJztcblxuZXhwb3J0IGVudW0gUE9QT1ZFUl9QT1NJVElPTiB7XG4gICAgVE9QX0xFRlQgPSAnVE9QX0xFRlQnLFxuICAgIFRPUF9SSUdIVCA9ICdUT1BfUklHSFQnLFxuICAgIEJPVFRPTV9MRUZUID0gJ0JPVFRPTV9MRUZUJyxcbiAgICBCT1RUT01fUklHSFQgPSAnQk9UVE9NX1JJR0hUJyxcbn1cblxuaW50ZXJmYWNlIHRyYW5zbGF0ZSB7XG4gICAgeDogbnVtYmVyO1xuICAgIHk6IG51bWJlcjtcbn1cblxuY29uc3QgcG9zaXRpb25NYXAgPSB7XG4gICAgW1BPUE9WRVJfUE9TSVRJT04uVE9QX0xFRlRdOiBgXG4gICAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgYCxcbiAgICBbUE9QT1ZFUl9QT1NJVElPTi5UT1BfUklHSFRdOiBgXG4gICAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIGAsXG4gICAgW1BPUE9WRVJfUE9TSVRJT04uQk9UVE9NX1JJR0hUXTogYFxuICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgICByaWdodDogMDtcbiAgICBgLFxuICAgIFtQT1BPVkVSX1BPU0lUSU9OLkJPVFRPTV9MRUZUXTogYFxuICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIGAsXG59O1xuXG5jb25zdCBQb3BvdmVyRGl2ID0gc3R5bGVkLmRpdmBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5gO1xuXG5jb25zdCBQb3BwZXIgPSBzdHlsZWQoQ2FyZCk8eyBwb3NpdGlvbjogUE9QT1ZFUl9QT1NJVElPTjsgdHJhbnNsYXRlWDogbnVtYmVyOyB0cmFuc2xhdGVZOiBudW1iZXIgfT5gXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYW5pbWF0aW9uOiBlbnRlciAwLjNzIGxpbmVhcjtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeyhwcm9wcykgPT4gcHJvcHMudHJhbnNsYXRlWH1weCwgJHsocHJvcHMpID0+IHByb3BzLnRyYW5zbGF0ZVl9cHgpO1xuICAgICR7KHByb3BzKSA9PiBwb3NpdGlvbk1hcFtwcm9wcy5wb3NpdGlvbl19XG5cbiAgICAmLmNsb3Npbmcge1xuICAgICAgICAvKiBtYXgtaGVpZ2h0OiAwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47ICovXG4gICAgICAgIGFuaW1hdGlvbjogZXhpdCAwLjNzIGxpbmVhcjtcbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGVudGVyIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBleGl0IHtcbiAgICAgICAgdG8ge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuYDtcblxuY29uc3QgS0VZX0NPREVTID0ge1xuICAgIEVTQzogMjcsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBQb3BvdmVyKFxuICAgIHByb3BzOiBSZWFjdC5Qcm9wc1dpdGhDaGlsZHJlbjxQcm9wVHlwZXMuSW5mZXJQcm9wczx0eXBlb2YgUG9wb3Zlci5wcm9wVHlwZXM+Pixcbikge1xuICAgIGNvbnN0IFtvcGVuLCBzZXRPcGVuXSA9IHVzZVN0YXRlKHByb3BzLm9wZW4pO1xuICAgIGNvbnN0IFtjbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbdHJhbnNsYXRlLCBzZXRUcmFuc2xhdGVdID0gdXNlU3RhdGU8dHJhbnNsYXRlPih7IHg6IDAsIHk6IDAgfSk7XG4gICAgY29uc3QgcG9wcGVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PigpO1xuICAgIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4oKTtcbiAgICBjb25zdCB0cmlnZ2VyUmVmID0gdXNlUmVmPEhUTUxFbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gICAgY29uc3QgY2xvc2VUaW1lb3V0UmVmID0gdXNlUmVmPE5vZGVKUy5UaW1lb3V0IHwgbnVsbD4obnVsbCk7XG4gICAgY29uc3QgZm9jdXNUaW1lb3V0UmVmID0gdXNlUmVmPE5vZGVKUy5UaW1lb3V0IHwgbnVsbD4obnVsbCk7XG4gICAgY29uc3QgcG9wcGVySWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IHRyaWdnZXJJZCA9IHVzZUlkKCk7XG5cbiAgICBjb25zdCBjbG9zZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgLy8gQ2xlYXIgYW55IGV4aXN0aW5nIHRpbWVvdXRzIGZpcnN0XG4gICAgICAgIGlmIChjbG9zZVRpbWVvdXRSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGNsb3NlVGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZm9jdXNUaW1lb3V0UmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChmb2N1c1RpbWVvdXRSZWYuY3VycmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBzZXRDbG9zaW5nKHRydWUpO1xuICAgICAgICBjbG9zZVRpbWVvdXRSZWYuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2V0T3BlbihmYWxzZSk7XG4gICAgICAgICAgICBzZXRUcmFuc2xhdGUoeyB4OiAwLCB5OiAwIH0pO1xuXG4gICAgICAgICAgICBpZiAocHJvcHMub25DbG9zZSkge1xuICAgICAgICAgICAgICAgIHByb3BzLm9uQ2xvc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuXG4gICAgICAgICAgICAvLyBSZXN0b3JlIGZvY3VzIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQgYWZ0ZXIgYW5pbWF0aW9uIGNvbXBsZXRlc1xuICAgICAgICAgICAgZm9jdXNUaW1lb3V0UmVmLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHJpZ2dlclJlZi5jdXJyZW50ICYmIGRvY3VtZW50LmJvZHkuY29udGFpbnModHJpZ2dlclJlZi5jdXJyZW50KSkge1xuICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyUmVmLmN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9jdXNUaW1lb3V0UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICAgICAgfSwgNTApO1xuICAgICAgICAgICAgY2xvc2VUaW1lb3V0UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICB9LCAyODApO1xuICAgIH0sIFtwcm9wc10pO1xuXG4gICAgY29uc3Qga2V5dXBFdmVudEhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAgICAgKGU6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChwcm9wcy5jbG9zZU9uRXNjICYmIGUua2V5Q29kZSA9PT0gS0VZX0NPREVTLkVTQykge1xuICAgICAgICAgICAgICAgIGNsb3NlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIFtjbG9zZSwgcHJvcHMuY2xvc2VPbkVzY10sXG4gICAgKTtcblxuICAgIGNvbnN0IGNsaWNrT3V0c2lkZUhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAgICAgKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChjb250YWluZXJSZWYuY3VycmVudCAmJiAhY29udGFpbmVyUmVmLmN1cnJlbnQuY29udGFpbnMoZS50YXJnZXQgYXMgTm9kZSkpIHtcbiAgICAgICAgICAgICAgICBjbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBbY2xvc2VdLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiBHZXQgY2FsbGVkIG9uIHBvcG92ZXIgbW91bnQuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBrZXl1cEV2ZW50SGFuZGxlcik7XG5cbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywga2V5dXBFdmVudEhhbmRsZXIpO1xuICAgICAgICB9O1xuICAgIH0sIFtrZXl1cEV2ZW50SGFuZGxlcl0pO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKHByb3BzLm9wZW4pIHtcbiAgICAgICAgICAgIHNldE9wZW4odHJ1ZSk7XG4gICAgICAgICAgICAvLyBVc2UgcmVxdWVzdEFuaW1hdGlvbkZyYW1lIHRvIGFkZCBsaXN0ZW5lciBhZnRlciBjdXJyZW50IGV2ZW50IGxvb3BcbiAgICAgICAgICAgIGNvbnN0IHJhZklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGNsaWNrT3V0c2lkZUhhbmRsZXIpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmSWQpO1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgY2xpY2tPdXRzaWRlSGFuZGxlcik7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKG9wZW4pIHtcbiAgICAgICAgICAgICAgICBjbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSwgW3Byb3BzLm9wZW4sIG9wZW4sIGNsaWNrT3V0c2lkZUhhbmRsZXIsIGNsb3NlXSk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAob3Blbikge1xuICAgICAgICAgICAgY29uc3QgeyB0b3AsIGxlZnQsIHJpZ2h0IH0gPSBwb3BwZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IHBvcHBlclJlZi5jdXJyZW50LnNjcm9sbEhlaWdodDtcbiAgICAgICAgICAgIGNvbnN0IHZpZXdwb3J0V2lkdGggPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgICAgICAgICBjb25zdCB2aWV3cG9ydEhlaWdodCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgICAgICAgICBjb25zdCB0cmFuc2xhdGlvbiA9IHsgeDogMCwgeTogMCB9O1xuXG4gICAgICAgICAgICBpZiAocHJvcHMucG9zaXRpb24gPT09IFBPUE9WRVJfUE9TSVRJT04uQk9UVE9NX0xFRlQpIHtcbiAgICAgICAgICAgICAgICAvLyBvdmVyZmxvdyBjYW4gaGFwcGVuIGF0IGJvdHRvbSBhbmQgcmlnaHRcbiAgICAgICAgICAgICAgICBpZiAodmlld3BvcnRIZWlnaHQgLSB0b3AgLSBoZWlnaHQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uLnkgPSAtMSAqIChNYXRoLmFicyh2aWV3cG9ydEhlaWdodCAtIHRvcCAtIGhlaWdodCkgKyA1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHZpZXdwb3J0V2lkdGggLSByaWdodCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb24ueCA9IC0xICogKE1hdGguYWJzKHZpZXdwb3J0V2lkdGggLSByaWdodCkgKyA1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHByb3BzLnBvc2l0aW9uID09IFBPUE9WRVJfUE9TSVRJT04uQk9UVE9NX1JJR0hUKSB7XG4gICAgICAgICAgICAgICAgLy8gb3ZlcmZsb3cgY2FuIGhhcHBlbiBhdCBib3R0b20gYW5kIGxlZnRcbiAgICAgICAgICAgICAgICBpZiAodmlld3BvcnRIZWlnaHQgLSB0b3AgLSBoZWlnaHQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uLnkgPSAtMSAqIChNYXRoLmFicyh2aWV3cG9ydEhlaWdodCAtIHRvcCAtIGhlaWdodCkgKyA1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGxlZnQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uLnggPSBNYXRoLmFicyhsZWZ0KSArIDU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmIChwcm9wcy5wb3NpdGlvbiA9PT0gUE9QT1ZFUl9QT1NJVElPTi5UT1BfTEVGVCkge1xuICAgICAgICAgICAgICAgIC8vIG92ZXJmbG93IGNhbiBoYXBwZW4gYXQgdG9wIGFuZCByaWdodFxuICAgICAgICAgICAgICAgIGlmICh0b3AgLSBoZWlnaHQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uLnkgPSBNYXRoLmFicyh0b3AgLSBoZWlnaHQpICsgNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHZpZXdwb3J0V2lkdGggLSByaWdodCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb24ueCA9IC0xICogKE1hdGguYWJzKHZpZXdwb3J0V2lkdGggLSByaWdodCkgKyA1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIG92ZXJmbG93IGNhbiBoYXBwZW4gYXQgdG9wIGFuZCBsZWZ0XG4gICAgICAgICAgICAgICAgaWYgKHRvcCAtIGhlaWdodCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb24ueSA9IE1hdGguYWJzKHRvcCAtIGhlaWdodCkgKyA1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAobGVmdCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb24ueCA9IE1hdGguYWJzKGxlZnQpICsgNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBOb3RlIGl0IGNhbiBzdGlsbCBvdmVyZmxvdywgYnV0IGluIHRoYXQgY2FzZSBmaXR0aW5nIHBvcHBlciBpbnNpZGUgdGhlXG4gICAgICAgICAgICAvLyB3aW5kb3cgaXMgbm90IHBvc3NpYmxlLlxuICAgICAgICAgICAgc2V0VHJhbnNsYXRlKHRyYW5zbGF0aW9uKTtcbiAgICAgICAgICAgIHBvcHBlclJlZi5jdXJyZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9LCBbb3BlbiwgcHJvcHMucG9zaXRpb25dKTtcblxuICAgIC8qKlxuICAgICAqIENsZWFudXAgdGltZW91dHMgb24gdW5tb3VudFxuICAgICAqL1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoY2xvc2VUaW1lb3V0UmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQoY2xvc2VUaW1lb3V0UmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGZvY3VzVGltZW91dFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGZvY3VzVGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8UG9wb3ZlckRpdiByZWY9e2NvbnRhaW5lclJlZn0+XG4gICAgICAgICAgICB7UmVhY3QuY3JlYXRlRWxlbWVudChwcm9wcy5lbGVtZW50LCB7XG4gICAgICAgICAgICAgICAgcmVmOiB0cmlnZ2VyUmVmLFxuICAgICAgICAgICAgICAgIGlkOiB0cmlnZ2VySWQsXG4gICAgICAgICAgICAgICAgJ2FyaWEtZXhwYW5kZWQnOiBvcGVuLFxuICAgICAgICAgICAgICAgICdhcmlhLWhhc3BvcHVwJzogJ2RpYWxvZycsXG4gICAgICAgICAgICAgICAgJ2FyaWEtY29udHJvbHMnOiBwb3BwZXJJZCxcbiAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAge29wZW4gJiYgKFxuICAgICAgICAgICAgICAgIDxQb3BwZXJcbiAgICAgICAgICAgICAgICAgICAgZWxldmF0ZWRcbiAgICAgICAgICAgICAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e3RyaWdnZXJJZH1cbiAgICAgICAgICAgICAgICAgICAgaWQ9e3BvcHBlcklkfVxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbj17cHJvcHMucG9zaXRpb259XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZVg9e3RyYW5zbGF0ZS54fVxuICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGVZPXt0cmFuc2xhdGUueX1cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbG9zaW5nICYmICdjbG9zaW5nJ31cbiAgICAgICAgICAgICAgICAgICAgcmVmPXtwb3BwZXJSZWZ9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZS5uYXRpdmVFdmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgICAgICAgICAgICA8L1BvcHBlcj5cbiAgICAgICAgICAgICl9XG4gICAgICAgIDwvUG9wb3ZlckRpdj5cbiAgICApO1xufVxuXG5Qb3BvdmVyLnByb3BUeXBlcyA9IHtcbiAgICAvKiogT3BlbnMgdGhlIHBvcG92ZXIgKi9cbiAgICBvcGVuOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICAgIC8qKiBBbmNob3IgZWxlbWVudCBmb3IgdGhlIHBvcG92ZXIgKi9cbiAgICBlbGVtZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICAvKiogUG9zaXRpb24gb2YgdGhlIHBvcG92ZXIgYXJvdW5kIGFuY2hvciBlbGVtZW50ICovXG4gICAgcG9zaXRpb246IFByb3BUeXBlcy5vbmVPZihbXG4gICAgICAgIFBPUE9WRVJfUE9TSVRJT04uVE9QX0xFRlQsXG4gICAgICAgIFBPUE9WRVJfUE9TSVRJT04uVE9QX1JJR0hULFxuICAgICAgICBQT1BPVkVSX1BPU0lUSU9OLkJPVFRPTV9MRUZULFxuICAgICAgICBQT1BPVkVSX1BPU0lUSU9OLkJPVFRPTV9SSUdIVCxcbiAgICBdKSxcbiAgICAvKiogSWYgdGhlIHBvcG92ZXIgc2hvdWxkIGNsb3NlIG9uIGBlc2NgIGtleSBwcmVzcyAqL1xuICAgIGNsb3NlT25Fc2M6IFByb3BUeXBlcy5ib29sLFxuICAgIC8qKiBQb3BvdmVyIGNsb3NlIGNhbGxiYWNrICovXG4gICAgb25DbG9zZTogUHJvcFR5cGVzLmZ1bmMsXG59O1xuXG5Qb3BvdmVyLmRlZmF1bHRQcm9wcyA9IHtcbiAgICBjbG9zZU9uRXNjOiB0cnVlLFxuICAgIHBvc2l0aW9uOiBQT1BPVkVSX1BPU0lUSU9OLkJPVFRPTV9MRUZULFxufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQ21CIn0= */");
34
+ })("position:relative;display:inline-flex;");
36
35
  const Popper = /*#__PURE__*/ styled(Card, {
37
- target: "e1oy1jnn1",
36
+ target: "ejcb1ps1",
38
37
  label: "Popper"
39
- })("position:absolute;width:100%;min-width:200px;overflow:auto;animation:enter 0.3s linear;border-radius:3px;z-index:1;transform:translate(", (props)=>props.translateX, "px,", (props)=>props.translateY, "px);", (props)=>positionMap[props.position], " &.closing{animation:exit 0.3s linear;}@keyframes enter{from{max-height:0px;opacity:1;overflow:hidden;}to{max-height:300px;opacity:1;overflow:hidden;}}@keyframes exit{to{max-height:0px;opacity:1;overflow:hidden;}from{max-height:300px;opacity:1;overflow:hidden;}}", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvbm8tZnJpbGxzLXVpL25vLWZyaWxscy11aS9zcmMvY29tcG9uZW50cy9Qb3BvdmVyL1BvcG92ZXIudHN4Iiwic291cmNlcyI6WyIvaG9tZS9ydW5uZXIvd29yay9uby1mcmlsbHMtdWkvbm8tZnJpbGxzLXVpL3NyYy9jb21wb25lbnRzL1BvcG92ZXIvUG9wb3Zlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZUlkLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IENhcmQgfSBmcm9tICcuLi9DYXJkJztcblxuZXhwb3J0IGVudW0gUE9QT1ZFUl9QT1NJVElPTiB7XG4gICAgVE9QX0xFRlQgPSAnVE9QX0xFRlQnLFxuICAgIFRPUF9SSUdIVCA9ICdUT1BfUklHSFQnLFxuICAgIEJPVFRPTV9MRUZUID0gJ0JPVFRPTV9MRUZUJyxcbiAgICBCT1RUT01fUklHSFQgPSAnQk9UVE9NX1JJR0hUJyxcbn1cblxuaW50ZXJmYWNlIHRyYW5zbGF0ZSB7XG4gICAgeDogbnVtYmVyO1xuICAgIHk6IG51bWJlcjtcbn1cblxuY29uc3QgcG9zaXRpb25NYXAgPSB7XG4gICAgW1BPUE9WRVJfUE9TSVRJT04uVE9QX0xFRlRdOiBgXG4gICAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgYCxcbiAgICBbUE9QT1ZFUl9QT1NJVElPTi5UT1BfUklHSFRdOiBgXG4gICAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIGAsXG4gICAgW1BPUE9WRVJfUE9TSVRJT04uQk9UVE9NX1JJR0hUXTogYFxuICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgICByaWdodDogMDtcbiAgICBgLFxuICAgIFtQT1BPVkVSX1BPU0lUSU9OLkJPVFRPTV9MRUZUXTogYFxuICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIGAsXG59O1xuXG5jb25zdCBQb3BvdmVyRGl2ID0gc3R5bGVkLmRpdmBcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5gO1xuXG5jb25zdCBQb3BwZXIgPSBzdHlsZWQoQ2FyZCk8eyBwb3NpdGlvbjogUE9QT1ZFUl9QT1NJVElPTjsgdHJhbnNsYXRlWDogbnVtYmVyOyB0cmFuc2xhdGVZOiBudW1iZXIgfT5gXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYW5pbWF0aW9uOiBlbnRlciAwLjNzIGxpbmVhcjtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeyhwcm9wcykgPT4gcHJvcHMudHJhbnNsYXRlWH1weCwgJHsocHJvcHMpID0+IHByb3BzLnRyYW5zbGF0ZVl9cHgpO1xuICAgICR7KHByb3BzKSA9PiBwb3NpdGlvbk1hcFtwcm9wcy5wb3NpdGlvbl19XG5cbiAgICAmLmNsb3Npbmcge1xuICAgICAgICAvKiBtYXgtaGVpZ2h0OiAwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47ICovXG4gICAgICAgIGFuaW1hdGlvbjogZXhpdCAwLjNzIGxpbmVhcjtcbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGVudGVyIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBleGl0IHtcbiAgICAgICAgdG8ge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuYDtcblxuY29uc3QgS0VZX0NPREVTID0ge1xuICAgIEVTQzogMjcsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBQb3BvdmVyKFxuICAgIHByb3BzOiBSZWFjdC5Qcm9wc1dpdGhDaGlsZHJlbjxQcm9wVHlwZXMuSW5mZXJQcm9wczx0eXBlb2YgUG9wb3Zlci5wcm9wVHlwZXM+Pixcbikge1xuICAgIGNvbnN0IFtvcGVuLCBzZXRPcGVuXSA9IHVzZVN0YXRlKHByb3BzLm9wZW4pO1xuICAgIGNvbnN0IFtjbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbdHJhbnNsYXRlLCBzZXRUcmFuc2xhdGVdID0gdXNlU3RhdGU8dHJhbnNsYXRlPih7IHg6IDAsIHk6IDAgfSk7XG4gICAgY29uc3QgcG9wcGVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PigpO1xuICAgIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4oKTtcbiAgICBjb25zdCB0cmlnZ2VyUmVmID0gdXNlUmVmPEhUTUxFbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gICAgY29uc3QgY2xvc2VUaW1lb3V0UmVmID0gdXNlUmVmPE5vZGVKUy5UaW1lb3V0IHwgbnVsbD4obnVsbCk7XG4gICAgY29uc3QgZm9jdXNUaW1lb3V0UmVmID0gdXNlUmVmPE5vZGVKUy5UaW1lb3V0IHwgbnVsbD4obnVsbCk7XG4gICAgY29uc3QgcG9wcGVySWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IHRyaWdnZXJJZCA9IHVzZUlkKCk7XG5cbiAgICBjb25zdCBjbG9zZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgLy8gQ2xlYXIgYW55IGV4aXN0aW5nIHRpbWVvdXRzIGZpcnN0XG4gICAgICAgIGlmIChjbG9zZVRpbWVvdXRSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGNsb3NlVGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZm9jdXNUaW1lb3V0UmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChmb2N1c1RpbWVvdXRSZWYuY3VycmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBzZXRDbG9zaW5nKHRydWUpO1xuICAgICAgICBjbG9zZVRpbWVvdXRSZWYuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2V0T3BlbihmYWxzZSk7XG4gICAgICAgICAgICBzZXRUcmFuc2xhdGUoeyB4OiAwLCB5OiAwIH0pO1xuXG4gICAgICAgICAgICBpZiAocHJvcHMub25DbG9zZSkge1xuICAgICAgICAgICAgICAgIHByb3BzLm9uQ2xvc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuXG4gICAgICAgICAgICAvLyBSZXN0b3JlIGZvY3VzIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQgYWZ0ZXIgYW5pbWF0aW9uIGNvbXBsZXRlc1xuICAgICAgICAgICAgZm9jdXNUaW1lb3V0UmVmLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHJpZ2dlclJlZi5jdXJyZW50ICYmIGRvY3VtZW50LmJvZHkuY29udGFpbnModHJpZ2dlclJlZi5jdXJyZW50KSkge1xuICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyUmVmLmN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9jdXNUaW1lb3V0UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICAgICAgfSwgNTApO1xuICAgICAgICAgICAgY2xvc2VUaW1lb3V0UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICB9LCAyODApO1xuICAgIH0sIFtwcm9wc10pO1xuXG4gICAgY29uc3Qga2V5dXBFdmVudEhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAgICAgKGU6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChwcm9wcy5jbG9zZU9uRXNjICYmIGUua2V5Q29kZSA9PT0gS0VZX0NPREVTLkVTQykge1xuICAgICAgICAgICAgICAgIGNsb3NlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIFtjbG9zZSwgcHJvcHMuY2xvc2VPbkVzY10sXG4gICAgKTtcblxuICAgIGNvbnN0IGNsaWNrT3V0c2lkZUhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICAgICAgKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChjb250YWluZXJSZWYuY3VycmVudCAmJiAhY29udGFpbmVyUmVmLmN1cnJlbnQuY29udGFpbnMoZS50YXJnZXQgYXMgTm9kZSkpIHtcbiAgICAgICAgICAgICAgICBjbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBbY2xvc2VdLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiBHZXQgY2FsbGVkIG9uIHBvcG92ZXIgbW91bnQuXG4gICAgICovXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBrZXl1cEV2ZW50SGFuZGxlcik7XG5cbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywga2V5dXBFdmVudEhhbmRsZXIpO1xuICAgICAgICB9O1xuICAgIH0sIFtrZXl1cEV2ZW50SGFuZGxlcl0pO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKHByb3BzLm9wZW4pIHtcbiAgICAgICAgICAgIHNldE9wZW4odHJ1ZSk7XG4gICAgICAgICAgICAvLyBVc2UgcmVxdWVzdEFuaW1hdGlvbkZyYW1lIHRvIGFkZCBsaXN0ZW5lciBhZnRlciBjdXJyZW50IGV2ZW50IGxvb3BcbiAgICAgICAgICAgIGNvbnN0IHJhZklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGNsaWNrT3V0c2lkZUhhbmRsZXIpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUocmFmSWQpO1xuICAgICAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgY2xpY2tPdXRzaWRlSGFuZGxlcik7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKG9wZW4pIHtcbiAgICAgICAgICAgICAgICBjbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSwgW3Byb3BzLm9wZW4sIG9wZW4sIGNsaWNrT3V0c2lkZUhhbmRsZXIsIGNsb3NlXSk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAob3Blbikge1xuICAgICAgICAgICAgY29uc3QgeyB0b3AsIGxlZnQsIHJpZ2h0IH0gPSBwb3BwZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IHBvcHBlclJlZi5jdXJyZW50LnNjcm9sbEhlaWdodDtcbiAgICAgICAgICAgIGNvbnN0IHZpZXdwb3J0V2lkdGggPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgICAgICAgICBjb25zdCB2aWV3cG9ydEhlaWdodCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgICAgICAgICBjb25zdCB0cmFuc2xhdGlvbiA9IHsgeDogMCwgeTogMCB9O1xuXG4gICAgICAgICAgICBpZiAocHJvcHMucG9zaXRpb24gPT09IFBPUE9WRVJfUE9TSVRJT04uQk9UVE9NX0xFRlQpIHtcbiAgICAgICAgICAgICAgICAvLyBvdmVyZmxvdyBjYW4gaGFwcGVuIGF0IGJvdHRvbSBhbmQgcmlnaHRcbiAgICAgICAgICAgICAgICBpZiAodmlld3BvcnRIZWlnaHQgLSB0b3AgLSBoZWlnaHQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uLnkgPSAtMSAqIChNYXRoLmFicyh2aWV3cG9ydEhlaWdodCAtIHRvcCAtIGhlaWdodCkgKyA1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHZpZXdwb3J0V2lkdGggLSByaWdodCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb24ueCA9IC0xICogKE1hdGguYWJzKHZpZXdwb3J0V2lkdGggLSByaWdodCkgKyA1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHByb3BzLnBvc2l0aW9uID09IFBPUE9WRVJfUE9TSVRJT04uQk9UVE9NX1JJR0hUKSB7XG4gICAgICAgICAgICAgICAgLy8gb3ZlcmZsb3cgY2FuIGhhcHBlbiBhdCBib3R0b20gYW5kIGxlZnRcbiAgICAgICAgICAgICAgICBpZiAodmlld3BvcnRIZWlnaHQgLSB0b3AgLSBoZWlnaHQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uLnkgPSAtMSAqIChNYXRoLmFicyh2aWV3cG9ydEhlaWdodCAtIHRvcCAtIGhlaWdodCkgKyA1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGxlZnQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uLnggPSBNYXRoLmFicyhsZWZ0KSArIDU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmIChwcm9wcy5wb3NpdGlvbiA9PT0gUE9QT1ZFUl9QT1NJVElPTi5UT1BfTEVGVCkge1xuICAgICAgICAgICAgICAgIC8vIG92ZXJmbG93IGNhbiBoYXBwZW4gYXQgdG9wIGFuZCByaWdodFxuICAgICAgICAgICAgICAgIGlmICh0b3AgLSBoZWlnaHQgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uLnkgPSBNYXRoLmFicyh0b3AgLSBoZWlnaHQpICsgNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHZpZXdwb3J0V2lkdGggLSByaWdodCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb24ueCA9IC0xICogKE1hdGguYWJzKHZpZXdwb3J0V2lkdGggLSByaWdodCkgKyA1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIG92ZXJmbG93IGNhbiBoYXBwZW4gYXQgdG9wIGFuZCBsZWZ0XG4gICAgICAgICAgICAgICAgaWYgKHRvcCAtIGhlaWdodCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb24ueSA9IE1hdGguYWJzKHRvcCAtIGhlaWdodCkgKyA1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAobGVmdCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb24ueCA9IE1hdGguYWJzKGxlZnQpICsgNTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBOb3RlIGl0IGNhbiBzdGlsbCBvdmVyZmxvdywgYnV0IGluIHRoYXQgY2FzZSBmaXR0aW5nIHBvcHBlciBpbnNpZGUgdGhlXG4gICAgICAgICAgICAvLyB3aW5kb3cgaXMgbm90IHBvc3NpYmxlLlxuICAgICAgICAgICAgc2V0VHJhbnNsYXRlKHRyYW5zbGF0aW9uKTtcbiAgICAgICAgICAgIHBvcHBlclJlZi5jdXJyZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9LCBbb3BlbiwgcHJvcHMucG9zaXRpb25dKTtcblxuICAgIC8qKlxuICAgICAqIENsZWFudXAgdGltZW91dHMgb24gdW5tb3VudFxuICAgICAqL1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoY2xvc2VUaW1lb3V0UmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQoY2xvc2VUaW1lb3V0UmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGZvY3VzVGltZW91dFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGZvY3VzVGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8UG9wb3ZlckRpdiByZWY9e2NvbnRhaW5lclJlZn0+XG4gICAgICAgICAgICB7UmVhY3QuY3JlYXRlRWxlbWVudChwcm9wcy5lbGVtZW50LCB7XG4gICAgICAgICAgICAgICAgcmVmOiB0cmlnZ2VyUmVmLFxuICAgICAgICAgICAgICAgIGlkOiB0cmlnZ2VySWQsXG4gICAgICAgICAgICAgICAgJ2FyaWEtZXhwYW5kZWQnOiBvcGVuLFxuICAgICAgICAgICAgICAgICdhcmlhLWhhc3BvcHVwJzogJ2RpYWxvZycsXG4gICAgICAgICAgICAgICAgJ2FyaWEtY29udHJvbHMnOiBwb3BwZXJJZCxcbiAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAge29wZW4gJiYgKFxuICAgICAgICAgICAgICAgIDxQb3BwZXJcbiAgICAgICAgICAgICAgICAgICAgZWxldmF0ZWRcbiAgICAgICAgICAgICAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsbGVkYnk9e3RyaWdnZXJJZH1cbiAgICAgICAgICAgICAgICAgICAgaWQ9e3BvcHBlcklkfVxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbj17cHJvcHMucG9zaXRpb259XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZVg9e3RyYW5zbGF0ZS54fVxuICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGVZPXt0cmFuc2xhdGUueX1cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbG9zaW5nICYmICdjbG9zaW5nJ31cbiAgICAgICAgICAgICAgICAgICAgcmVmPXtwb3BwZXJSZWZ9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZS5uYXRpdmVFdmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtwcm9wcy5jaGlsZHJlbn1cbiAgICAgICAgICAgICAgICA8L1BvcHBlcj5cbiAgICAgICAgICAgICl9XG4gICAgICAgIDwvUG9wb3ZlckRpdj5cbiAgICApO1xufVxuXG5Qb3BvdmVyLnByb3BUeXBlcyA9IHtcbiAgICAvKiogT3BlbnMgdGhlIHBvcG92ZXIgKi9cbiAgICBvcGVuOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICAgIC8qKiBBbmNob3IgZWxlbWVudCBmb3IgdGhlIHBvcG92ZXIgKi9cbiAgICBlbGVtZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgICAvKiogUG9zaXRpb24gb2YgdGhlIHBvcG92ZXIgYXJvdW5kIGFuY2hvciBlbGVtZW50ICovXG4gICAgcG9zaXRpb246IFByb3BUeXBlcy5vbmVPZihbXG4gICAgICAgIFBPUE9WRVJfUE9TSVRJT04uVE9QX0xFRlQsXG4gICAgICAgIFBPUE9WRVJfUE9TSVRJT04uVE9QX1JJR0hULFxuICAgICAgICBQT1BPVkVSX1BPU0lUSU9OLkJPVFRPTV9MRUZULFxuICAgICAgICBQT1BPVkVSX1BPU0lUSU9OLkJPVFRPTV9SSUdIVCxcbiAgICBdKSxcbiAgICAvKiogSWYgdGhlIHBvcG92ZXIgc2hvdWxkIGNsb3NlIG9uIGBlc2NgIGtleSBwcmVzcyAqL1xuICAgIGNsb3NlT25Fc2M6IFByb3BUeXBlcy5ib29sLFxuICAgIC8qKiBQb3BvdmVyIGNsb3NlIGNhbGxiYWNrICovXG4gICAgb25DbG9zZTogUHJvcFR5cGVzLmZ1bmMsXG59O1xuXG5Qb3BvdmVyLmRlZmF1bHRQcm9wcyA9IHtcbiAgICBjbG9zZU9uRXNjOiB0cnVlLFxuICAgIHBvc2l0aW9uOiBQT1BPVkVSX1BPU0lUSU9OLkJPVFRPTV9MRUZULFxufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5Q2UifQ== */");
38
+ })("position:absolute;width:100%;min-width:200px;overflow:auto;animation:enter 0.3s linear;border-radius:3px;z-index:1;transform:translate(", (props)=>props.translateX, "px,", (props)=>props.translateY, "px);", (props)=>positionMap$2[props.position], " &.closing{animation:exit 0.3s linear;}@keyframes enter{from{max-height:0px;opacity:1;overflow:hidden;}to{max-height:300px;opacity:1;overflow:hidden;}}@keyframes exit{to{max-height:0px;opacity:1;overflow:hidden;}from{max-height:300px;opacity:1;overflow:hidden;}}");
40
39
  const KEY_CODES = {
41
40
  ESC: 27
42
41
  };
43
- function Popover(props) {
44
- const [open, setOpen] = useState(props.open);
42
+ /**
43
+ * Popover Component
44
+ * @param props - Component props
45
+ * @param ref - Ref forwarded to the underlying HTMLDivElement
46
+ */ function PopoverComponent(props, ref) {
47
+ const { open: propsOpen, element, position = "BOTTOM_LEFT", closeOnEsc = true, onClose, children, ...rest } = props;
48
+ const [open, setOpen] = useState(propsOpen);
45
49
  const [closing, setClosing] = useState(false);
46
50
  const [translate, setTranslate] = useState({
47
51
  x: 0,
48
52
  y: 0
49
53
  });
50
- const popperRef = useRef();
51
- const containerRef = useRef();
54
+ const popperRef = useRef(null);
55
+ const containerRef = useRef(null);
52
56
  const triggerRef = useRef(null);
53
57
  const closeTimeoutRef = useRef(null);
54
58
  const focusTimeoutRef = useRef(null);
@@ -69,8 +73,8 @@ function Popover(props) {
69
73
  x: 0,
70
74
  y: 0
71
75
  });
72
- if (props.onClose) {
73
- props.onClose();
76
+ if (onClose) {
77
+ onClose();
74
78
  }
75
79
  setClosing(false);
76
80
  // Restore focus to the trigger element after animation completes
@@ -83,15 +87,15 @@ function Popover(props) {
83
87
  closeTimeoutRef.current = null;
84
88
  }, 280);
85
89
  }, [
86
- props
90
+ onClose
87
91
  ]);
88
92
  const keyupEventHandler = useCallback((e)=>{
89
- if (props.closeOnEsc && e.keyCode === KEY_CODES.ESC) {
93
+ if (closeOnEsc && e.keyCode === KEY_CODES.ESC) {
90
94
  close();
91
95
  }
92
96
  }, [
93
97
  close,
94
- props.closeOnEsc
98
+ closeOnEsc
95
99
  ]);
96
100
  const clickOutsideHandler = useCallback((e)=>{
97
101
  if (containerRef.current && !containerRef.current.contains(e.target)) {
@@ -111,7 +115,7 @@ function Popover(props) {
111
115
  keyupEventHandler
112
116
  ]);
113
117
  useEffect(()=>{
114
- if (props.open) {
118
+ if (propsOpen) {
115
119
  setOpen(true);
116
120
  // Use requestAnimationFrame to add listener after current event loop
117
121
  const rafId = requestAnimationFrame(()=>{
@@ -127,22 +131,22 @@ function Popover(props) {
127
131
  }
128
132
  }
129
133
  }, [
130
- props.open,
134
+ propsOpen,
131
135
  open,
132
136
  clickOutsideHandler,
133
137
  close
134
138
  ]);
135
139
  useEffect(()=>{
136
140
  if (open) {
137
- const { top, left, right } = popperRef.current.getBoundingClientRect();
138
- const height = popperRef.current.scrollHeight;
141
+ const { top = 0, left = 0, right = 0 } = popperRef.current?.getBoundingClientRect() ?? {};
142
+ const height = popperRef.current?.scrollHeight ?? 0;
139
143
  const viewportWidth = document.documentElement.clientWidth;
140
144
  const viewportHeight = document.documentElement.clientHeight;
141
145
  const translation = {
142
146
  x: 0,
143
147
  y: 0
144
148
  };
145
- if (props.position === "BOTTOM_LEFT") {
149
+ if (position === "BOTTOM_LEFT") {
146
150
  // overflow can happen at bottom and right
147
151
  if (viewportHeight - top - height < 0) {
148
152
  translation.y = -1 * (Math.abs(viewportHeight - top - height) + 5);
@@ -150,7 +154,7 @@ function Popover(props) {
150
154
  if (viewportWidth - right < 0) {
151
155
  translation.x = -1 * (Math.abs(viewportWidth - right) + 5);
152
156
  }
153
- } else if (props.position == "BOTTOM_RIGHT") {
157
+ } else if (position == "BOTTOM_RIGHT") {
154
158
  // overflow can happen at bottom and left
155
159
  if (viewportHeight - top - height < 0) {
156
160
  translation.y = -1 * (Math.abs(viewportHeight - top - height) + 5);
@@ -158,7 +162,7 @@ function Popover(props) {
158
162
  if (left < 0) {
159
163
  translation.x = Math.abs(left) + 5;
160
164
  }
161
- } else if (props.position === "TOP_LEFT") {
165
+ } else if (position === "TOP_LEFT") {
162
166
  // overflow can happen at top and right
163
167
  if (top - height < 0) {
164
168
  translation.y = Math.abs(top - height) + 5;
@@ -178,11 +182,11 @@ function Popover(props) {
178
182
  // Note it can still overflow, but in that case fitting popper inside the
179
183
  // window is not possible.
180
184
  setTranslate(translation);
181
- popperRef.current.focus();
185
+ popperRef.current?.focus();
182
186
  }
183
187
  }, [
184
188
  open,
185
- props.position
189
+ position
186
190
  ]);
187
191
  /**
188
192
  * Cleanup timeouts on unmount
@@ -196,10 +200,19 @@ function Popover(props) {
196
200
  }
197
201
  };
198
202
  }, []);
203
+ const forwardRef = (node)=>{
204
+ containerRef.current = node;
205
+ if (typeof ref === 'function') {
206
+ ref(node);
207
+ } else if (ref) {
208
+ ref.current = node;
209
+ }
210
+ };
199
211
  return /*#__PURE__*/ jsxs(PopoverDiv, {
200
- ref: containerRef,
212
+ ref: forwardRef,
213
+ ...rest,
201
214
  children: [
202
- /*#__PURE__*/ React.createElement(props.element, {
215
+ /*#__PURE__*/ React.createElement(element, {
203
216
  ref: triggerRef,
204
217
  id: triggerId,
205
218
  'aria-expanded': open,
@@ -212,35 +225,21 @@ function Popover(props) {
212
225
  role: "dialog",
213
226
  "aria-labelledby": triggerId,
214
227
  id: popperId,
215
- position: props.position,
228
+ position: position,
216
229
  translateX: translate.x,
217
230
  translateY: translate.y,
218
- className: closing && 'closing',
231
+ className: closing ? 'closing' : '',
219
232
  ref: popperRef,
220
233
  onClick: (e)=>{
221
234
  e.stopPropagation();
222
235
  e.nativeEvent.stopImmediatePropagation();
223
236
  },
224
- children: props.children
237
+ children: children
225
238
  })
226
239
  ]
227
240
  });
228
241
  }
229
- Popover.propTypes = {
230
- /** Opens the popover */ open: PropTypes.bool.isRequired,
231
- /** Anchor element for the popover */ element: PropTypes.func,
232
- /** Position of the popover around anchor element */ position: PropTypes.oneOf([
233
- "TOP_LEFT",
234
- "TOP_RIGHT",
235
- "BOTTOM_LEFT",
236
- "BOTTOM_RIGHT"
237
- ]),
238
- /** If the popover should close on `esc` key press */ closeOnEsc: PropTypes.bool,
239
- /** Popover close callback */ onClose: PropTypes.func
240
- };
241
- Popover.defaultProps = {
242
- closeOnEsc: true,
243
- position: "BOTTOM_LEFT"
244
- };
242
+ const Popover = /*#__PURE__*/ React.forwardRef(PopoverComponent);
245
243
 
246
244
  export { POPOVER_POSITION, Popover as default };
245
+ //# sourceMappingURL=Popover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useId, useRef, useState } from 'react';\nimport styled from '@emotion/styled';\nimport { Card } from '../Card';\n\nexport enum POPOVER_POSITION {\n TOP_LEFT = 'TOP_LEFT',\n TOP_RIGHT = 'TOP_RIGHT',\n BOTTOM_LEFT = 'BOTTOM_LEFT',\n BOTTOM_RIGHT = 'BOTTOM_RIGHT',\n}\n\ninterface Translate {\n x: number;\n y: number;\n}\n\nconst positionMap = {\n [POPOVER_POSITION.TOP_LEFT]: `\n bottom: calc(100% - 10px);\n left: 0;\n `,\n [POPOVER_POSITION.TOP_RIGHT]: `\n bottom: calc(100% - 10px);\n right: 0;\n `,\n [POPOVER_POSITION.BOTTOM_RIGHT]: `\n top: calc(100% - 10px);\n right: 0;\n `,\n [POPOVER_POSITION.BOTTOM_LEFT]: `\n top: calc(100% - 10px);\n left: 0;\n `,\n};\n\nconst PopoverDiv = styled.div`\n position: relative;\n display: inline-flex;\n`;\n\nconst Popper = styled(Card)<{ position: POPOVER_POSITION; translateX: number; translateY: number }>`\n position: absolute;\n width: 100%;\n min-width: 200px;\n overflow: auto;\n animation: enter 0.3s linear;\n border-radius: 3px;\n z-index: 1;\n transform: translate(${(props) => props.translateX}px, ${(props) => props.translateY}px);\n ${(props) => positionMap[props.position]}\n\n &.closing {\n /* max-height: 0px;\n opacity: 0;\n overflow: hidden; */\n animation: exit 0.3s linear;\n }\n\n @keyframes enter {\n from {\n max-height: 0px;\n opacity: 1;\n overflow: hidden;\n }\n to {\n max-height: 300px;\n opacity: 1;\n overflow: hidden;\n }\n }\n\n @keyframes exit {\n to {\n max-height: 0px;\n opacity: 1;\n overflow: hidden;\n }\n from {\n max-height: 300px;\n opacity: 1;\n overflow: hidden;\n }\n }\n`;\n\nconst KEY_CODES = {\n ESC: 27,\n};\n\ntype PopoverProps = {\n /** Opens the popover */\n open: boolean;\n /** Anchor element for the popover */\n element: React.ElementType;\n /**\n * Position of the popover around anchor element\n * @default POPOVER_POSITION.BOTTOM_LEFT\n */\n position?: POPOVER_POSITION;\n /**\n * If the popover should close on `esc` key press\n * @default true\n */\n closeOnEsc?: boolean;\n /** Popover close callback */\n onClose?: () => void;\n};\n\n/**\n * Popover Component\n * @param props - Component props\n * @param ref - Ref forwarded to the underlying HTMLDivElement\n */\nfunction PopoverComponent(\n props: React.PropsWithChildren<PopoverProps>,\n ref: React.Ref<HTMLDivElement>,\n) {\n const {\n open: propsOpen,\n element,\n position = POPOVER_POSITION.BOTTOM_LEFT,\n closeOnEsc = true,\n onClose,\n children,\n ...rest\n } = props;\n\n const [open, setOpen] = useState<boolean>(propsOpen);\n const [closing, setClosing] = useState<boolean>(false);\n const [translate, setTranslate] = useState<Translate>({ x: 0, y: 0 });\n const popperRef = useRef<HTMLDivElement | null>(null);\n const containerRef = useRef<HTMLDivElement | null>(null);\n const triggerRef = useRef<HTMLElement | null>(null);\n const closeTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const focusTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const popperId = useId();\n const triggerId = useId();\n\n const close = useCallback(() => {\n // Clear any existing timeouts first\n if (closeTimeoutRef.current) {\n clearTimeout(closeTimeoutRef.current);\n }\n if (focusTimeoutRef.current) {\n clearTimeout(focusTimeoutRef.current);\n }\n\n setClosing(true);\n closeTimeoutRef.current = setTimeout(() => {\n setOpen(false);\n setTranslate({ x: 0, y: 0 });\n\n if (onClose) {\n onClose();\n }\n setClosing(false);\n\n // Restore focus to the trigger element after animation completes\n focusTimeoutRef.current = setTimeout(() => {\n if (triggerRef.current && document.body.contains(triggerRef.current)) {\n triggerRef.current.focus();\n }\n focusTimeoutRef.current = null;\n }, 50);\n closeTimeoutRef.current = null;\n }, 280);\n }, [onClose]);\n\n const keyupEventHandler = useCallback(\n (e: KeyboardEvent) => {\n if (closeOnEsc && e.keyCode === KEY_CODES.ESC) {\n close();\n }\n },\n [close, closeOnEsc],\n );\n\n const clickOutsideHandler = useCallback(\n (e: MouseEvent) => {\n if (containerRef.current && !containerRef.current.contains(e.target as Node)) {\n close();\n }\n },\n [close],\n );\n\n /**\n * Get called on popover mount.\n */\n useEffect(() => {\n document.addEventListener('keyup', keyupEventHandler);\n\n return () => {\n document.removeEventListener('keyup', keyupEventHandler);\n };\n }, [keyupEventHandler]);\n\n useEffect(() => {\n if (propsOpen) {\n setOpen(true);\n // Use requestAnimationFrame to add listener after current event loop\n const rafId = requestAnimationFrame(() => {\n document.addEventListener('click', clickOutsideHandler);\n });\n\n return () => {\n cancelAnimationFrame(rafId);\n document.removeEventListener('click', clickOutsideHandler);\n };\n } else {\n if (open) {\n close();\n }\n }\n }, [propsOpen, open, clickOutsideHandler, close]);\n\n useEffect(() => {\n if (open) {\n const {\n top = 0,\n left = 0,\n right = 0,\n } = popperRef.current?.getBoundingClientRect() ?? {};\n const height = popperRef.current?.scrollHeight ?? 0;\n const viewportWidth = document.documentElement.clientWidth;\n const viewportHeight = document.documentElement.clientHeight;\n const translation = { x: 0, y: 0 };\n\n if (position === POPOVER_POSITION.BOTTOM_LEFT) {\n // overflow can happen at bottom and right\n if (viewportHeight - top - height < 0) {\n translation.y = -1 * (Math.abs(viewportHeight - top - height) + 5);\n }\n if (viewportWidth - right < 0) {\n translation.x = -1 * (Math.abs(viewportWidth - right) + 5);\n }\n } else if (position == POPOVER_POSITION.BOTTOM_RIGHT) {\n // overflow can happen at bottom and left\n if (viewportHeight - top - height < 0) {\n translation.y = -1 * (Math.abs(viewportHeight - top - height) + 5);\n }\n if (left < 0) {\n translation.x = Math.abs(left) + 5;\n }\n } else if (position === POPOVER_POSITION.TOP_LEFT) {\n // overflow can happen at top and right\n if (top - height < 0) {\n translation.y = Math.abs(top - height) + 5;\n }\n if (viewportWidth - right < 0) {\n translation.x = -1 * (Math.abs(viewportWidth - right) + 5);\n }\n } else {\n // overflow can happen at top and left\n if (top - height < 0) {\n translation.y = Math.abs(top - height) + 5;\n }\n if (left < 0) {\n translation.x = Math.abs(left) + 5;\n }\n }\n // Note it can still overflow, but in that case fitting popper inside the\n // window is not possible.\n setTranslate(translation);\n popperRef.current?.focus();\n }\n }, [open, position]);\n\n /**\n * Cleanup timeouts on unmount\n */\n useEffect(() => {\n return () => {\n if (closeTimeoutRef.current) {\n clearTimeout(closeTimeoutRef.current);\n }\n if (focusTimeoutRef.current) {\n clearTimeout(focusTimeoutRef.current);\n }\n };\n }, []);\n\n const forwardRef = (node: HTMLDivElement | null) => {\n containerRef.current = node;\n\n if (typeof ref === 'function') {\n ref(node);\n } else if (ref) {\n (ref as React.MutableRefObject<HTMLDivElement | null>).current = node;\n }\n };\n\n return (\n <PopoverDiv ref={forwardRef} {...rest}>\n {React.createElement(element, {\n ref: triggerRef,\n id: triggerId,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n 'aria-controls': popperId,\n })}\n {open && (\n <Popper\n elevated\n tabIndex={0}\n role=\"dialog\"\n aria-labelledby={triggerId}\n id={popperId}\n position={position}\n translateX={translate.x}\n translateY={translate.y}\n className={closing ? 'closing' : ''}\n ref={popperRef}\n onClick={(e) => {\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n }}\n >\n {children}\n </Popper>\n )}\n </PopoverDiv>\n );\n}\n\nconst Popover = React.forwardRef(PopoverComponent);\nexport default Popover;\n"],"names":["POPOVER_POSITION","positionMap","PopoverDiv","styled","Popper","Card","props","translateX","translateY","position","KEY_CODES","ESC","PopoverComponent","ref","open","propsOpen","element","closeOnEsc","onClose","children","rest","setOpen","useState","closing","setClosing","translate","setTranslate","x","y","popperRef","useRef","containerRef","triggerRef","closeTimeoutRef","focusTimeoutRef","popperId","useId","triggerId","close","useCallback","current","clearTimeout","setTimeout","document","body","contains","focus","keyupEventHandler","e","keyCode","clickOutsideHandler","target","useEffect","addEventListener","removeEventListener","rafId","requestAnimationFrame","cancelAnimationFrame","top","left","right","getBoundingClientRect","height","scrollHeight","viewportWidth","documentElement","clientWidth","viewportHeight","clientHeight","translation","Math","abs","forwardRef","node","_jsxs","React","createElement","id","_jsx","elevated","tabIndex","role","aria-labelledby","className","onClick","stopPropagation","nativeEvent","stopImmediatePropagation","Popover"],"mappings":"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"}
@@ -1,16 +1,15 @@
1
- import PropTypes from 'prop-types';
2
- declare function Spinner(props: SpinnerProp): import("@emotion/react/jsx-runtime").JSX.Element;
3
- declare namespace Spinner {
4
- var propTypes: {
5
- /** Spinner's size */
6
- size: PropTypes.Requireable<number>;
7
- /** Accessible label for screen readers */
8
- label: PropTypes.Requireable<string>;
9
- };
10
- var defaultProps: {
11
- size: number;
12
- label: string;
13
- };
14
- }
15
- type SpinnerProp = PropTypes.InferProps<typeof Spinner.propTypes>;
1
+ import React from 'react';
2
+ type SpinnerProp = {
3
+ /**
4
+ * Spinner's size
5
+ * @default 30
6
+ */
7
+ size?: number;
8
+ /**
9
+ * Accessible label for screen readers
10
+ * @default 'Loading'
11
+ */
12
+ label?: string;
13
+ };
14
+ declare const Spinner: React.ForwardRefExoticComponent<SpinnerProp & React.RefAttributes<HTMLDivElement>>;
16
15
  export default Spinner;
@@ -1,29 +1,29 @@
1
1
  import { jsx } from '@emotion/react/jsx-runtime';
2
- import PropTypes from 'prop-types';
2
+ import React from 'react';
3
3
  import styled from '@emotion/styled';
4
4
  import { getThemeValue, THEME_NAME } from '../../shared/constants.js';
5
5
 
6
6
  const SpinnerDiv = /*#__PURE__*/ styled("div", {
7
- target: "e12p7es30",
7
+ target: "e14pfj3w0",
8
8
  label: "SpinnerDiv"
9
- })("border:4px solid ", getThemeValue(THEME_NAME.PRIMARY), ";border-top:4px solid ", getThemeValue(THEME_NAME.BORDER_LIGHT_COLOR), ";border-radius:50%;width:", (props)=>props.size, "px;height:", (props)=>props.size, "px;margin:0 auto;animation:spin 1s linear infinite;@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvbm8tZnJpbGxzLXVpL25vLWZyaWxscy11aS9zcmMvY29tcG9uZW50cy9TcGlubmVyL1NwaW5uZXIudHN4Iiwic291cmNlcyI6WyIvaG9tZS9ydW5uZXIvd29yay9uby1mcmlsbHMtdWkvbm8tZnJpbGxzLXVpL3NyYy9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IGdldFRoZW1lVmFsdWUsIFRIRU1FX05BTUUgfSBmcm9tICcuLi8uLi9zaGFyZWQvY29uc3RhbnRzJztcblxuY29uc3QgU3Bpbm5lckRpdiA9IHN0eWxlZC5kaXY8U3Bpbm5lclByb3A+YFxuICAgIGJvcmRlcjogNHB4IHNvbGlkICR7Z2V0VGhlbWVWYWx1ZShUSEVNRV9OQU1FLlBSSU1BUlkpfTtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgJHtnZXRUaGVtZVZhbHVlKFRIRU1FX05BTUUuQk9SREVSX0xJR0hUX0NPTE9SKX07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAkeyhwcm9wcykgPT4gcHJvcHMuc2l6ZX1weDtcbiAgICBoZWlnaHQ6ICR7KHByb3BzKSA9PiBwcm9wcy5zaXplfXB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG5cbiAgICBAa2V5ZnJhbWVzIHNwaW4ge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG5gO1xuXG5mdW5jdGlvbiBTcGlubmVyKHByb3BzOiBTcGlubmVyUHJvcCkge1xuICAgIGNvbnN0IHsgbGFiZWwsIC4uLnJlc3QgfSA9IHByb3BzO1xuICAgIHJldHVybiAoXG4gICAgICAgIDxTcGlubmVyRGl2XG4gICAgICAgICAgICB7Li4ucmVzdH1cbiAgICAgICAgICAgIHJvbGU9XCJzdGF0dXNcIlxuICAgICAgICAgICAgYXJpYS1sYWJlbD17bGFiZWx9XG4gICAgICAgICAgICBhcmlhLWxpdmU9XCJwb2xpdGVcIlxuICAgICAgICAgICAgYXJpYS1idXN5PVwidHJ1ZVwiXG4gICAgICAgIC8+XG4gICAgKTtcbn1cblxudHlwZSBTcGlubmVyUHJvcCA9IFByb3BUeXBlcy5JbmZlclByb3BzPHR5cGVvZiBTcGlubmVyLnByb3BUeXBlcz47XG5cblNwaW5uZXIucHJvcFR5cGVzID0ge1xuICAgIC8qKiBTcGlubmVyJ3Mgc2l6ZSAqL1xuICAgIHNpemU6IFByb3BUeXBlcy5udW1iZXIsXG4gICAgLyoqIEFjY2Vzc2libGUgbGFiZWwgZm9yIHNjcmVlbiByZWFkZXJzICovXG4gICAgbGFiZWw6IFByb3BUeXBlcy5zdHJpbmcsXG59O1xuXG5TcGlubmVyLmRlZmF1bHRQcm9wcyA9IHtcbiAgICBzaXplOiAzMCxcbiAgICBsYWJlbDogJ0xvYWRpbmcnLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgU3Bpbm5lcjtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJbUIifQ== */");
10
- function Spinner(props) {
11
- const { label, ...rest } = props;
9
+ })("border:4px solid ", getThemeValue(THEME_NAME.PRIMARY), ";border-top:4px solid ", getThemeValue(THEME_NAME.BORDER_LIGHT_COLOR), ";border-radius:50%;width:", (props)=>props.size, "px;height:", (props)=>props.size, "px;margin:0 auto;animation:spin 1s linear infinite;@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}");
10
+ /**
11
+ * Spinner Component
12
+ * @param props - Component props
13
+ * @param ref - Ref forwarded to the underlying HTMLDivElement
14
+ */ function SpinnerComponent(props, ref) {
15
+ const { label = 'Loading', size = 30, ...rest } = props;
12
16
  return /*#__PURE__*/ jsx(SpinnerDiv, {
13
17
  ...rest,
18
+ ref: ref,
19
+ size: size,
14
20
  role: "status",
15
- "aria-label": label,
21
+ "aria-label": label || undefined,
16
22
  "aria-live": "polite",
17
23
  "aria-busy": "true"
18
24
  });
19
25
  }
20
- Spinner.propTypes = {
21
- /** Spinner's size */ size: PropTypes.number,
22
- /** Accessible label for screen readers */ label: PropTypes.string
23
- };
24
- Spinner.defaultProps = {
25
- size: 30,
26
- label: 'Loading'
27
- };
26
+ const Spinner = /*#__PURE__*/ React.forwardRef(SpinnerComponent);
28
27
 
29
28
  export { Spinner as default };
29
+ //# sourceMappingURL=Spinner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spinner.js","sources":["../../../src/components/Spinner/Spinner.tsx"],"sourcesContent":["import React from 'react';\nimport styled from '@emotion/styled';\nimport { getThemeValue, THEME_NAME } from '../../shared/constants';\n\nconst SpinnerDiv = styled.div<SpinnerProp>`\n border: 4px solid ${getThemeValue(THEME_NAME.PRIMARY)};\n border-top: 4px solid ${getThemeValue(THEME_NAME.BORDER_LIGHT_COLOR)};\n border-radius: 50%;\n width: ${(props) => props.size}px;\n height: ${(props) => props.size}px;\n margin: 0 auto;\n animation: spin 1s linear infinite;\n\n @keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n`;\n\ntype SpinnerProp = {\n /**\n * Spinner's size\n * @default 30\n */\n size?: number;\n /**\n * Accessible label for screen readers\n * @default 'Loading'\n */\n label?: string;\n};\n\n/**\n * Spinner Component\n * @param props - Component props\n * @param ref - Ref forwarded to the underlying HTMLDivElement\n */\nfunction SpinnerComponent(props: SpinnerProp, ref: React.Ref<HTMLDivElement>) {\n const { label = 'Loading', size = 30, ...rest } = props;\n return (\n <SpinnerDiv\n {...rest}\n ref={ref}\n size={size}\n role=\"status\"\n aria-label={label || undefined}\n aria-live=\"polite\"\n aria-busy=\"true\"\n />\n );\n}\n\nconst Spinner = React.forwardRef<HTMLDivElement, SpinnerProp>(SpinnerComponent);\nexport default Spinner;\n"],"names":["SpinnerDiv","styled","getThemeValue","THEME_NAME","PRIMARY","BORDER_LIGHT_COLOR","props","size","SpinnerComponent","ref","label","rest","_jsx","role","aria-label","undefined","aria-live","aria-busy","Spinner","React","forwardRef"],"mappings":";;;;;AAIA,MAAMA,UAAAA,iBAAaC,MAAAA,CAAAA,KAAAA,EAAAA;;;AACKC,CAAAA,CAAAA,CAAAA,mBAAAA,EAAAA,aAAAA,CAAcC,UAAAA,CAAWC,OAAO,CAAA,EAAA,wBAAA,EAC5BF,aAAAA,CAAcC,WAAWE,kBAAkB,CAAA,EAAA,2BAAA,EAE1D,CAACC,KAAAA,GAAUA,MAAMC,IAAI,EAAA,YAAA,EACpB,CAACD,KAAAA,GAAUA,MAAMC,IAAI,EAAA,gIAAA,CAAA;AA2BnC;;;;AAIC,IACD,SAASC,gBAAAA,CAAiBF,KAAkB,EAAEG,GAA8B,EAAA;IACxE,MAAM,EAAEC,QAAQ,SAAS,EAAEH,OAAO,EAAE,EAAE,GAAGI,IAAAA,EAAM,GAAGL,KAAAA;AAClD,IAAA,qBACIM,GAAA,CAACZ,UAAAA,EAAAA;AACI,QAAA,GAAGW,IAAI;QACRF,GAAAA,EAAKA,GAAAA;QACLF,IAAAA,EAAMA,IAAAA;QACNM,IAAAA,EAAK,QAAA;AACLC,QAAAA,YAAAA,EAAYJ,KAAAA,IAASK,SAAAA;QACrBC,WAAAA,EAAU,QAAA;QACVC,WAAAA,EAAU;;AAGtB;AAEA,MAAMC,OAAAA,iBAAUC,KAAAA,CAAMC,UAAU,CAA8BZ,gBAAAA;;;;"}
@@ -1,17 +1,20 @@
1
1
  import React from 'react';
2
- interface StepProps {
3
- /** Name of the step to be displayed in the header */
2
+ declare const Step: React.ForwardRefExoticComponent<{
3
+ /**
4
+ * Name of the step to be displayed in the header
5
+ */
4
6
  name: string;
5
- /** Disables the step */
7
+ /**
8
+ * Disables the step
9
+ * @default false
10
+ */
6
11
  disabled?: boolean;
7
- /** Marks the step as completed */
12
+ /**
13
+ * Marks the step as completed
14
+ * @default false
15
+ */
8
16
  completed?: boolean;
9
- }
10
- declare function Step(props: React.PropsWithChildren<StepProps>): import("@emotion/react/jsx-runtime").JSX.Element;
11
- declare namespace Step {
12
- var defaultProps: {
13
- disabled: boolean;
14
- completed: boolean;
15
- };
16
- }
17
+ } & React.HTMLAttributes<HTMLDivElement> & {
18
+ children?: React.ReactNode | undefined;
19
+ } & React.RefAttributes<HTMLDivElement>>;
17
20
  export default Step;
@@ -1,21 +1,24 @@
1
1
  import { jsx } from '@emotion/react/jsx-runtime';
2
- import 'react';
2
+ import React from 'react';
3
3
  import styled from '@emotion/styled';
4
4
 
5
5
  const Container = /*#__PURE__*/ styled("div", {
6
- target: "eac2nqz0",
6
+ target: "e1v23xop0",
7
7
  label: "Container"
8
- })("flex:1;display:flex;flex-direction:column;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvbm8tZnJpbGxzLXVpL25vLWZyaWxscy11aS9zcmMvY29tcG9uZW50cy9TdGVwcGVyL1N0ZXAudHN4Iiwic291cmNlcyI6WyIvaG9tZS9ydW5uZXIvd29yay9uby1mcmlsbHMtdWkvbm8tZnJpbGxzLXVpL3NyYy9jb21wb25lbnRzL1N0ZXBwZXIvU3RlcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW50ZXJmYWNlIFN0ZXBQcm9wcyB7XG4gICAgLyoqIE5hbWUgb2YgdGhlIHN0ZXAgdG8gYmUgZGlzcGxheWVkIGluIHRoZSBoZWFkZXIgKi9cbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgLyoqIERpc2FibGVzIHRoZSBzdGVwICovXG4gICAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICAgIC8qKiBNYXJrcyB0aGUgc3RlcCBhcyBjb21wbGV0ZWQgKi9cbiAgICBjb21wbGV0ZWQ/OiBib29sZWFuO1xufVxuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICAgIGZsZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuYDtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gU3RlcChwcm9wczogUmVhY3QuUHJvcHNXaXRoQ2hpbGRyZW48U3RlcFByb3BzPikge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBjb25zdCB7IG5hbWUsIGRpc2FibGVkLCBjb21wbGV0ZWQsIC4uLnJlc3QgfSA9IHByb3BzO1xuICAgIHJldHVybiA8Q29udGFpbmVyIHsuLi5yZXN0fSAvPjtcbn1cblxuU3RlcC5kZWZhdWx0UHJvcHMgPSB7XG4gICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgIGNvbXBsZXRlZDogZmFsc2UsXG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVlrQiJ9 */");
9
- function Step(props) {
8
+ })("flex:1;display:flex;flex-direction:column;");
9
+ /**
10
+ * Step Component
11
+ * @param props - Component props
12
+ * @param ref - Ref forwarded to the underlying HTMLDivElement
13
+ */ function StepComponent(props, ref) {
10
14
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
11
15
  const { name, disabled, completed, ...rest } = props;
12
16
  return /*#__PURE__*/ jsx(Container, {
13
- ...rest
17
+ ...rest,
18
+ ref: ref
14
19
  });
15
20
  }
16
- Step.defaultProps = {
17
- disabled: false,
18
- completed: false
19
- };
21
+ const Step = /*#__PURE__*/ React.forwardRef(StepComponent);
20
22
 
21
23
  export { Step as default };
24
+ //# sourceMappingURL=Step.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Step.js","sources":["../../../src/components/Stepper/Step.tsx"],"sourcesContent":["import React from 'react';\nimport styled from '@emotion/styled';\n\nconst Container = styled.div`\n flex: 1;\n display: flex;\n flex-direction: column;\n`;\n\ntype StepProps = {\n /**\n * Name of the step to be displayed in the header\n */\n name: string;\n /**\n * Disables the step\n * @default false\n */\n disabled?: boolean;\n /**\n * Marks the step as completed\n * @default false\n */\n completed?: boolean;\n} & React.HTMLAttributes<HTMLDivElement>;\n\n/**\n * Step Component\n * @param props - Component props\n * @param ref - Ref forwarded to the underlying HTMLDivElement\n */\nfunction StepComponent(props: React.PropsWithChildren<StepProps>, ref: React.Ref<HTMLDivElement>) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { name, disabled, completed, ...rest } = props;\n return <Container {...rest} ref={ref} />;\n}\n\nconst Step = React.forwardRef(StepComponent);\nexport default Step;\n"],"names":["Container","styled","StepComponent","props","ref","name","disabled","completed","rest","_jsx","Step","React","forwardRef"],"mappings":";;;;AAGA,MAAMA,SAAAA,iBAAYC,MAAAA,CAAAA,KAAAA,EAAAA;;;;AAuBlB;;;;AAIC,IACD,SAASC,aAAAA,CAAcC,KAAyC,EAAEC,GAA8B,EAAA;;IAE5F,MAAM,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,SAAS,EAAE,GAAGC,IAAAA,EAAM,GAAGL,KAAAA;AAC/C,IAAA,qBAAOM,GAAA,CAACT,SAAAA,EAAAA;AAAW,QAAA,GAAGQ,IAAI;QAAEJ,GAAAA,EAAKA;;AACrC;AAEA,MAAMM,IAAAA,iBAAOC,KAAAA,CAAMC,UAAU,CAACV,aAAAA;;;;"}
@@ -1,19 +1,13 @@
1
- import { PropsWithChildren } from 'react';
2
- import PropTypes from 'prop-types';
3
- type StepperProps = PropsWithChildren<{
4
- active: number;
1
+ import React from 'react';
2
+ declare const Stepper: React.ForwardRefExoticComponent<{
3
+ /**
4
+ * Index of currently active step
5
+ * @default 0
6
+ */
7
+ active?: number;
8
+ /** Callback function for click event on a step */
5
9
  onStepClick?: (index: number) => void;
6
- }>;
7
- declare function Stepper(props: StepperProps): import("@emotion/react/jsx-runtime").JSX.Element;
8
- declare namespace Stepper {
9
- var propTypes: {
10
- /** Index of currently active step */
11
- active: PropTypes.Requireable<number>;
12
- /** Callback function for click event on a step */
13
- onStepClick: PropTypes.Requireable<(...args: any[]) => any>;
14
- };
15
- var defaultProps: {
16
- active: number;
17
- };
18
- }
10
+ } & {
11
+ children?: React.ReactNode | undefined;
12
+ } & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
19
13
  export default Stepper;