@laerdal/life-react-components 1.0.1-dev.22.full → 1.0.1-dev.29.full

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 (176) hide show
  1. package/dist/esm/Banners/Banner.js +11 -8
  2. package/dist/esm/Banners/Banner.js.map +1 -1
  3. package/dist/esm/Button/Anchor.js +76 -0
  4. package/dist/esm/Button/Anchor.js.map +1 -0
  5. package/dist/esm/Button/BackButton.js +1 -1
  6. package/dist/esm/Button/BackButton.js.map +1 -1
  7. package/dist/esm/Button/Button.js +46 -19
  8. package/dist/esm/Button/Button.js.map +1 -1
  9. package/dist/esm/Button/DualFunctionButton.js +111 -0
  10. package/dist/esm/Button/DualFunctionButton.js.map +1 -0
  11. package/dist/esm/Button/Iconbutton.js +21 -1
  12. package/dist/esm/Button/Iconbutton.js.map +1 -1
  13. package/dist/esm/Button/__tests__/Button.test.js +2 -1
  14. package/dist/esm/Button/__tests__/Button.test.js.map +1 -1
  15. package/dist/esm/Button/index.js +1 -0
  16. package/dist/esm/Button/index.js.map +1 -1
  17. package/dist/esm/Dropdown/BasicDropdown.js +60 -127
  18. package/dist/esm/Dropdown/BasicDropdown.js.map +1 -1
  19. package/dist/esm/Dropdown/ChipDropdownInput.js +41 -132
  20. package/dist/esm/Dropdown/ChipDropdownInput.js.map +1 -1
  21. package/dist/esm/Dropdown/CommonStyling.js +20 -15
  22. package/dist/esm/Dropdown/CommonStyling.js.map +1 -1
  23. package/dist/esm/Dropdown/DropdownButton.js +2 -2
  24. package/dist/esm/Dropdown/DropdownButton.js.map +1 -1
  25. package/dist/esm/Dropdown/DropdownContent.js +424 -0
  26. package/dist/esm/Dropdown/DropdownContent.js.map +1 -0
  27. package/dist/esm/Dropdown/DropdownFilter.js +42 -151
  28. package/dist/esm/Dropdown/DropdownFilter.js.map +1 -1
  29. package/dist/esm/GlobalNavigationBar/UserMenu/UserMenu.js +15 -17
  30. package/dist/esm/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  31. package/dist/esm/InputFields/Checkbox.js +19 -10
  32. package/dist/esm/InputFields/Checkbox.js.map +1 -1
  33. package/dist/esm/InputFields/QuickSearch.js +22 -12
  34. package/dist/esm/InputFields/QuickSearch.js.map +1 -1
  35. package/dist/esm/InputFields/RadioButton.js +18 -11
  36. package/dist/esm/InputFields/RadioButton.js.map +1 -1
  37. package/dist/esm/InputFields/components/SearchBarInput.js +1 -1
  38. package/dist/esm/InputFields/components/SearchBarInput.js.map +1 -1
  39. package/dist/esm/Modals/ModalDialog.js +14 -14
  40. package/dist/esm/Modals/ModalDialog.js.map +1 -1
  41. package/dist/esm/Modals/ModalStyles.js +3 -2
  42. package/dist/esm/Modals/ModalStyles.js.map +1 -1
  43. package/dist/esm/Paginator/Paginator.js +18 -8
  44. package/dist/esm/Paginator/Paginator.js.map +1 -1
  45. package/dist/esm/Paginator/__tests__/Paginator.test.js +1 -1
  46. package/dist/esm/Paginator/__tests__/Paginator.test.js.map +1 -1
  47. package/dist/esm/Table/Table.js +2 -1
  48. package/dist/esm/Table/Table.js.map +1 -1
  49. package/dist/esm/Tabs/TabLink.js +1 -1
  50. package/dist/esm/Tabs/TabLink.js.map +1 -1
  51. package/dist/esm/Toasters/Toast.js +2 -1
  52. package/dist/esm/Toasters/Toast.js.map +1 -1
  53. package/dist/esm/types.js +8 -0
  54. package/dist/esm/types.js.map +1 -1
  55. package/dist/js/Banners/Banner.js +13 -11
  56. package/dist/js/Banners/Banner.js.map +1 -1
  57. package/dist/js/Button/Anchor.d.ts +7 -0
  58. package/dist/js/Button/Anchor.js +66 -0
  59. package/dist/js/Button/Anchor.js.map +1 -0
  60. package/dist/js/Button/BackButton.js +1 -1
  61. package/dist/js/Button/BackButton.js.map +1 -1
  62. package/dist/js/Button/Button.d.ts +4 -1
  63. package/dist/js/Button/Button.js +44 -18
  64. package/dist/js/Button/Button.js.map +1 -1
  65. package/dist/js/Button/DualFunctionButton.d.ts +12 -0
  66. package/dist/js/Button/DualFunctionButton.js +148 -0
  67. package/dist/js/Button/DualFunctionButton.js.map +1 -0
  68. package/dist/js/Button/Iconbutton.d.ts +1 -0
  69. package/dist/js/Button/Iconbutton.js +23 -3
  70. package/dist/js/Button/Iconbutton.js.map +1 -1
  71. package/dist/js/Button/__tests__/Button.test.js +3 -1
  72. package/dist/js/Button/__tests__/Button.test.js.map +1 -1
  73. package/dist/js/Button/index.d.ts +1 -0
  74. package/dist/js/Button/index.js +8 -0
  75. package/dist/js/Button/index.js.map +1 -1
  76. package/dist/js/Dropdown/BasicDropdown.d.ts +9 -2
  77. package/dist/js/Dropdown/BasicDropdown.js +67 -133
  78. package/dist/js/Dropdown/BasicDropdown.js.map +1 -1
  79. package/dist/js/Dropdown/ChipDropdownInput.js +45 -138
  80. package/dist/js/Dropdown/ChipDropdownInput.js.map +1 -1
  81. package/dist/js/Dropdown/CommonStyling.d.ts +6 -2
  82. package/dist/js/Dropdown/CommonStyling.js +17 -6
  83. package/dist/js/Dropdown/CommonStyling.js.map +1 -1
  84. package/dist/js/Dropdown/DropdownButton.js +1 -1
  85. package/dist/js/Dropdown/DropdownButton.js.map +1 -1
  86. package/dist/js/Dropdown/DropdownContent.d.ts +45 -0
  87. package/dist/js/Dropdown/DropdownContent.js +476 -0
  88. package/dist/js/Dropdown/DropdownContent.js.map +1 -0
  89. package/dist/js/Dropdown/DropdownFilter.js +59 -186
  90. package/dist/js/Dropdown/DropdownFilter.js.map +1 -1
  91. package/dist/js/GlobalNavigationBar/UserMenu/UserMenu.js +7 -17
  92. package/dist/js/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  93. package/dist/js/InputFields/Checkbox.d.ts +5 -3
  94. package/dist/js/InputFields/Checkbox.js +16 -9
  95. package/dist/js/InputFields/Checkbox.js.map +1 -1
  96. package/dist/js/InputFields/QuickSearch.js +24 -6
  97. package/dist/js/InputFields/QuickSearch.js.map +1 -1
  98. package/dist/js/InputFields/RadioButton.d.ts +4 -2
  99. package/dist/js/InputFields/RadioButton.js +15 -10
  100. package/dist/js/InputFields/RadioButton.js.map +1 -1
  101. package/dist/js/InputFields/components/SearchBarInput.js +1 -1
  102. package/dist/js/InputFields/components/SearchBarInput.js.map +1 -1
  103. package/dist/js/Modals/ModalDialog.d.ts +2 -1
  104. package/dist/js/Modals/ModalDialog.js +15 -14
  105. package/dist/js/Modals/ModalDialog.js.map +1 -1
  106. package/dist/js/Modals/ModalStyles.d.ts +4 -3
  107. package/dist/js/Modals/ModalStyles.js +4 -2
  108. package/dist/js/Modals/ModalStyles.js.map +1 -1
  109. package/dist/js/Paginator/Paginator.js +7 -5
  110. package/dist/js/Paginator/Paginator.js.map +1 -1
  111. package/dist/js/Paginator/__tests__/Paginator.test.js +1 -1
  112. package/dist/js/Paginator/__tests__/Paginator.test.js.map +1 -1
  113. package/dist/js/Table/Table.js +3 -1
  114. package/dist/js/Table/Table.js.map +1 -1
  115. package/dist/js/Tabs/TabLink.js +1 -1
  116. package/dist/js/Tabs/TabLink.js.map +1 -1
  117. package/dist/js/Toasters/Toast.js +1 -1
  118. package/dist/js/Toasters/Toast.js.map +1 -1
  119. package/dist/js/types.d.ts +5 -0
  120. package/dist/js/types.js +10 -1
  121. package/dist/js/types.js.map +1 -1
  122. package/dist/umd/Banners/Banner.js +11 -8
  123. package/dist/umd/Banners/Banner.js.map +1 -1
  124. package/dist/umd/Button/Anchor.js +201 -0
  125. package/dist/umd/Button/Anchor.js.map +1 -0
  126. package/dist/umd/Button/BackButton.js +1 -1
  127. package/dist/umd/Button/BackButton.js.map +1 -1
  128. package/dist/umd/Button/Button.js +48 -22
  129. package/dist/umd/Button/Button.js.map +1 -1
  130. package/dist/umd/Button/DualFunctionButton.js +237 -0
  131. package/dist/umd/Button/DualFunctionButton.js.map +1 -0
  132. package/dist/umd/Button/Iconbutton.js +21 -1
  133. package/dist/umd/Button/Iconbutton.js.map +1 -1
  134. package/dist/umd/Button/__tests__/Button.test.js +5 -5
  135. package/dist/umd/Button/__tests__/Button.test.js.map +1 -1
  136. package/dist/umd/Button/index.js +10 -4
  137. package/dist/umd/Button/index.js.map +1 -1
  138. package/dist/umd/Dropdown/BasicDropdown.js +64 -131
  139. package/dist/umd/Dropdown/BasicDropdown.js.map +1 -1
  140. package/dist/umd/Dropdown/ChipDropdownInput.js +44 -134
  141. package/dist/umd/Dropdown/ChipDropdownInput.js.map +1 -1
  142. package/dist/umd/Dropdown/CommonStyling.js +23 -19
  143. package/dist/umd/Dropdown/CommonStyling.js.map +1 -1
  144. package/dist/umd/Dropdown/DropdownButton.js +1 -1
  145. package/dist/umd/Dropdown/DropdownButton.js.map +1 -1
  146. package/dist/umd/Dropdown/DropdownContent.js +458 -0
  147. package/dist/umd/Dropdown/DropdownContent.js.map +1 -0
  148. package/dist/umd/Dropdown/DropdownFilter.js +47 -155
  149. package/dist/umd/Dropdown/DropdownFilter.js.map +1 -1
  150. package/dist/umd/GlobalNavigationBar/UserMenu/UserMenu.js +18 -21
  151. package/dist/umd/GlobalNavigationBar/UserMenu/UserMenu.js.map +1 -1
  152. package/dist/umd/InputFields/Checkbox.js +22 -14
  153. package/dist/umd/InputFields/Checkbox.js.map +1 -1
  154. package/dist/umd/InputFields/QuickSearch.js +22 -12
  155. package/dist/umd/InputFields/QuickSearch.js.map +1 -1
  156. package/dist/umd/InputFields/RadioButton.js +21 -15
  157. package/dist/umd/InputFields/RadioButton.js.map +1 -1
  158. package/dist/umd/InputFields/components/SearchBarInput.js +1 -1
  159. package/dist/umd/InputFields/components/SearchBarInput.js.map +1 -1
  160. package/dist/umd/Modals/ModalDialog.js +17 -18
  161. package/dist/umd/Modals/ModalDialog.js.map +1 -1
  162. package/dist/umd/Modals/ModalStyles.js +6 -6
  163. package/dist/umd/Modals/ModalStyles.js.map +1 -1
  164. package/dist/umd/Paginator/Paginator.js +18 -8
  165. package/dist/umd/Paginator/Paginator.js.map +1 -1
  166. package/dist/umd/Paginator/__tests__/Paginator.test.js +1 -1
  167. package/dist/umd/Paginator/__tests__/Paginator.test.js.map +1 -1
  168. package/dist/umd/Table/Table.js +5 -5
  169. package/dist/umd/Table/Table.js.map +1 -1
  170. package/dist/umd/Tabs/TabLink.js +1 -1
  171. package/dist/umd/Tabs/TabLink.js.map +1 -1
  172. package/dist/umd/Toasters/Toast.js +1 -1
  173. package/dist/umd/Toasters/Toast.js.map +1 -1
  174. package/dist/umd/types.js +8 -0
  175. package/dist/umd/types.js.map +1 -1
  176. package/package.json +1 -1
@@ -17,6 +17,8 @@ var _SystemIcons = require("../icons/systemicons/SystemIcons");
17
17
 
18
18
  var _styles = require("../styles");
19
19
 
20
+ var _types = require("../types");
21
+
20
22
  var _typography = require("../styles/typography");
21
23
 
22
24
  var _templateObject;
@@ -29,13 +31,13 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
29
31
 
30
32
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
31
33
 
32
- var StyledCheckBox = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ", "\n cursor: pointer;\n\n color: ", ";\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ", ";\n }\n }\n\n .label {\n user-select: none;\n cursor: inherit;\n }\n\n &.small {\n ", "\n }\n\n &.medium {\n ", "\n }\n\n &.large {\n ", "\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ", ";\n box-shadow: 0 0 8px ", ", 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ", ";\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ", ";\n\n svg {\n color: ", ";\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ", ";\n box-shadow: none;\n\n svg {\n color: ", ";\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ", ";\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ", ";\n }\n\n .icon svg {\n color: ", ";\n }\n }\n"])), function (props) {
34
+ var StyledCheckBox = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ", "\n cursor: pointer;\n\n color: ", ";\n\n .pointerTransparent {\n pointer-events: none;\n }\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ", ";\n }\n }\n\n .label {\n user-select: none;\n cursor: inherit;\n }\n\n &.small {\n ", "\n }\n\n &.medium {\n ", "\n }\n\n &.large {\n ", "\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ", ";\n box-shadow: 0 0 8px ", ", 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ", ";\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ", ";\n\n svg {\n color: ", ";\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ", ";\n box-shadow: none;\n\n svg {\n color: ", ";\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ", ";\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ", ";\n }\n\n .icon svg {\n color: ", ";\n }\n }\n"])), function (props) {
33
35
  return props.margin ? "margin: ".concat(props.margin, ";") : '';
34
36
  }, _styles.COLORS.black, function (props) {
35
37
  return props.selected ? _styles.COLORS.primary_500 : props.showWarning ? _styles.COLORS.warning_400 : _styles.COLORS.neutral_600;
36
38
  }, (0, _typography.ComponentSStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.black), (0, _typography.ComponentMStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.black), (0, _typography.ComponentLStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.black), _styles.COLORS.white, _styles.COLORS.primary_500, _styles.COLORS.neutral_600, _styles.COLORS.primary_20, _styles.COLORS.primary_700, _styles.COLORS.primary_100, _styles.COLORS.primary_800, _styles.COLORS.neutral_300, _styles.COLORS.white, _styles.COLORS.neutral_300);
37
39
 
38
- var RadioButton = function RadioButton(_ref) {
40
+ var Checkbox = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
39
41
  var _size;
40
42
 
41
43
  var id = _ref.id,
@@ -43,6 +45,7 @@ var RadioButton = function RadioButton(_ref) {
43
45
  select = _ref.select,
44
46
  label = _ref.label,
45
47
  showWarning = _ref.showWarning,
48
+ iconPointerEventsTransparent = _ref.iconPointerEventsTransparent,
46
49
  disabled = _ref.disabled,
47
50
  margin = _ref.margin,
48
51
  size = _ref.size,
@@ -62,11 +65,13 @@ var RadioButton = function RadioButton(_ref) {
62
65
  select(!selected);
63
66
  };
64
67
 
65
- size = (_size = size) !== null && _size !== void 0 ? _size : 'medium';
68
+ size = (_size = size) !== null && _size !== void 0 ? _size : _types.Size.Medium;
69
+ console.log('size prop', size.toString().toLowerCase());
66
70
  return /*#__PURE__*/React.createElement(StyledCheckBox, {
67
71
  key: id,
72
+ ref: ref,
68
73
  disabled: disabled,
69
- className: size.concat(disabled ? ' disabled' : ''),
74
+ className: size.toString().toLowerCase().concat(disabled ? ' disabled' : ''),
70
75
  selected: selected,
71
76
  tabIndex: disabled ? -1 : 0,
72
77
  showWarning: showWarning,
@@ -80,18 +85,20 @@ var RadioButton = function RadioButton(_ref) {
80
85
  id: id,
81
86
  className: 'icon'
82
87
  }, selected ? /*#__PURE__*/React.createElement(_SystemIcons.CheckboxOn, {
88
+ className: iconPointerEventsTransparent ? "pointerTransparent" : "",
83
89
  size: "24px"
84
90
  }) : semiSelected ? /*#__PURE__*/React.createElement(_SystemIcons.CheckboxSemi, {
91
+ className: iconPointerEventsTransparent ? "pointerTransparent" : "",
85
92
  size: "24px"
86
93
  }) : /*#__PURE__*/React.createElement(_SystemIcons.CheckboxOff, {
94
+ className: iconPointerEventsTransparent ? "pointerTransparent" : "",
87
95
  size: "24px"
88
96
  })), label && /*#__PURE__*/React.createElement("label", {
89
97
  className: 'label',
90
98
  htmlFor: id
91
99
  }, label));
92
- };
93
-
94
- RadioButton.propTypes = {
100
+ });
101
+ Checkbox.propTypes = {
95
102
  id: _propTypes.default.string.isRequired,
96
103
  selected: _propTypes.default.bool.isRequired,
97
104
  select: _propTypes.default.func.isRequired,
@@ -99,9 +106,9 @@ RadioButton.propTypes = {
99
106
  showWarning: _propTypes.default.bool,
100
107
  disabled: _propTypes.default.bool,
101
108
  margin: _propTypes.default.string,
102
- size: _propTypes.default.oneOf(['small', 'medium', 'large']),
109
+ iconPointerEventsTransparent: _propTypes.default.bool,
103
110
  semiSelected: _propTypes.default.bool
104
111
  };
105
- var _default = RadioButton;
112
+ var _default = Checkbox;
106
113
  exports.default = _default;
107
114
  //# sourceMappingURL=Checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/InputFields/Checkbox.tsx"],"names":["StyledCheckBox","styled","div","props","margin","COLORS","black","selected","primary_500","showWarning","warning_400","neutral_600","ComponentTextStyle","Regular","white","primary_20","primary_700","primary_100","primary_800","neutral_300","RadioButton","id","select","label","disabled","size","semiSelected","onKeyPress","e","keyCode","handleClick","concat","preventDefault"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {CheckboxOff, CheckboxOn, CheckboxSemi} from '../icons/systemicons/SystemIcons';\nimport {COLORS, ComponentTextStyle} from '../styles';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling} from '../styles/typography';\n\nconst StyledCheckBox = styled.div<{ disabled?: boolean; showWarning?: boolean; selected?: boolean; margin?: string }>`\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ${props => (props.margin ? `margin: ${props.margin};` : '')}\n cursor: pointer;\n\n color: ${COLORS.black};\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ${props => (props.selected ? COLORS.primary_500 : props.showWarning ? COLORS.warning_400 : COLORS.neutral_600)};\n }\n }\n\n .label {\n user-select: none;\n cursor: inherit;\n }\n\n &.small {\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.medium {\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.large {\n ${ComponentLStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ${COLORS.white};\n box-shadow: 0 0 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ${COLORS.neutral_600};\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ${COLORS.primary_20};\n\n svg {\n color: ${COLORS.primary_700};\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ${COLORS.primary_100};\n box-shadow: none;\n\n svg {\n color: ${COLORS.primary_800};\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ${COLORS.neutral_300};\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ${COLORS.white};\n }\n\n .icon svg {\n color: ${COLORS.neutral_300};\n }\n }\n`;\n\ninterface Props {\n id: string;\n selected: boolean;\n select: (selected: boolean) => void;\n label?: string;\n showWarning?: boolean;\n disabled?: boolean;\n margin?: string;\n size?: 'small' | 'medium' | 'large';\n semiSelected?: boolean;\n}\n\nconst RadioButton: React.FunctionComponent<Props> = ({\n id,\n selected,\n select,\n label,\n showWarning,\n disabled,\n margin,\n size,\n semiSelected\n }: Props) => {\n const onKeyPress = (e: any) => {\n if (e.keyCode === 13 && !disabled) {\n select(!selected);\n }\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n select(!selected);\n };\n\n size = size ?? 'medium';\n\n return (\n <StyledCheckBox key={id}\n disabled={disabled}\n className={size.concat(disabled ? ' disabled' : '')}\n selected={selected}\n tabIndex={disabled ? -1 : 0}\n showWarning={showWarning}\n margin={margin}\n onClick={handleClick}\n onKeyDown={onKeyPress}\n onMouseDown={e => e.preventDefault()}>\n <div id={id} className={'icon'}>\n {\n selected\n ? <CheckboxOn size=\"24px\"/>\n : semiSelected\n ? <CheckboxSemi size=\"24px\"/>\n : <CheckboxOff size=\"24px\"/>\n }\n </div>\n {\n label &&\n (\n <label className={'label'}\n htmlFor={id}>\n {label}\n </label>\n )\n }\n </StyledCheckBox>\n );\n};\n\nexport default RadioButton;\n"],"file":"Checkbox.js"}
1
+ {"version":3,"sources":["../../../src/InputFields/Checkbox.tsx"],"names":["StyledCheckBox","styled","div","props","margin","COLORS","black","selected","primary_500","showWarning","warning_400","neutral_600","ComponentTextStyle","Regular","white","primary_20","primary_700","primary_100","primary_800","neutral_300","Checkbox","React","forwardRef","ref","id","select","label","iconPointerEventsTransparent","disabled","size","semiSelected","onKeyPress","e","keyCode","handleClick","Size","Medium","console","log","toString","toLowerCase","concat","preventDefault"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,IAAMA,cAAc,GAAGC,0BAAOC,GAAV,y7CAQhB,UAAAC,KAAK;AAAA,SAAKA,KAAK,CAACC,MAAN,qBAA0BD,KAAK,CAACC,MAAhC,SAA4C,EAAjD;AAAA,CARW,EAWTC,eAAOC,KAXE,EA4BL,UAAAH,KAAK;AAAA,SAAKA,KAAK,CAACI,QAAN,GAAiBF,eAAOG,WAAxB,GAAsCL,KAAK,CAACM,WAAN,GAAoBJ,eAAOK,WAA3B,GAAyCL,eAAOM,WAA3F;AAAA,CA5BA,EAsCd,mCAAkBC,2BAAmBC,OAArC,EAA8CR,eAAOC,KAArD,CAtCc,EA0Cd,mCAAkBM,2BAAmBC,OAArC,EAA8CR,eAAOC,KAArD,CA1Cc,EA8Cd,mCAAkBM,2BAAmBC,OAArC,EAA8CR,eAAOC,KAArD,CA9Cc,EAqDMD,eAAOS,KArDb,EAsDQT,eAAOG,WAtDf,EAyDHH,eAAOM,WAzDJ,EAgEMN,eAAOU,UAhEb,EAmEHV,eAAOW,WAnEJ,EA0EAX,eAAOY,WA1EP,EA8EHZ,eAAOa,WA9EJ,EAuFPb,eAAOc,WAvFA,EA+FMd,eAAOS,KA/Fb,EAmGLT,eAAOc,WAnGF,CAApB;;AAqHA,IAAMC,QAAQ,gBAAGC,KAAK,CAACC,UAAN,CAAwC,gBAWMC,GAXN,EAWc;AAAA;;AAAA,MAVhBC,EAUgB,QAVhBA,EAUgB;AAAA,MAThBjB,QASgB,QAThBA,QASgB;AAAA,MARhBkB,MAQgB,QARhBA,MAQgB;AAAA,MAPhBC,KAOgB,QAPhBA,KAOgB;AAAA,MANhBjB,WAMgB,QANhBA,WAMgB;AAAA,MALhBkB,4BAKgB,QALhBA,4BAKgB;AAAA,MAJhBC,QAIgB,QAJhBA,QAIgB;AAAA,MAHhBxB,MAGgB,QAHhBA,MAGgB;AAAA,MAFhByB,IAEgB,QAFhBA,IAEgB;AAAA,MADhBC,YACgB,QADhBA,YACgB;;AACrE,MAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,CAAD,EAAY;AAC7B,QAAIA,CAAC,CAACC,OAAF,KAAc,EAAd,IAAoB,CAACL,QAAzB,EAAmC;AACjCH,MAAAA,MAAM,CAAC,CAAClB,QAAF,CAAN;AACD;AACF,GAJD;;AAMA,MAAM2B,WAAW,GAAG,SAAdA,WAAc,GAAM;AACxB,QAAIN,QAAJ,EAAc;AACZ;AACD;;AACDH,IAAAA,MAAM,CAAC,CAAClB,QAAF,CAAN;AACD,GALD;;AAOAsB,EAAAA,IAAI,YAAGA,IAAH,yCAAWM,YAAKC,MAApB;AAEAC,EAAAA,OAAO,CAACC,GAAR,CAAY,WAAZ,EAAyBT,IAAI,CAACU,QAAL,GAAgBC,WAAhB,EAAzB;AACA,sBACE,oBAAC,cAAD;AAAgB,IAAA,GAAG,EAAEhB,EAArB;AACgB,IAAA,GAAG,EAAED,GADrB;AAEgB,IAAA,QAAQ,EAAEK,QAF1B;AAGgB,IAAA,SAAS,EAAEC,IAAI,CAACU,QAAL,GAAgBC,WAAhB,GAA8BC,MAA9B,CAAqCb,QAAQ,GAAG,WAAH,GAAiB,EAA9D,CAH3B;AAIgB,IAAA,QAAQ,EAAErB,QAJ1B;AAKgB,IAAA,QAAQ,EAAEqB,QAAQ,GAAG,CAAC,CAAJ,GAAQ,CAL1C;AAMgB,IAAA,WAAW,EAAEnB,WAN7B;AAOgB,IAAA,MAAM,EAAEL,MAPxB;AAQgB,IAAA,OAAO,EAAE8B,WARzB;AASgB,IAAA,SAAS,EAAEH,UAT3B;AAUgB,IAAA,WAAW,EAAE,qBAAAC,CAAC;AAAA,aAAIA,CAAC,CAACU,cAAF,EAAJ;AAAA;AAV9B,kBAWE;AAAK,IAAA,EAAE,EAAElB,EAAT;AAAa,IAAA,SAAS,EAAE;AAAxB,KAEIjB,QAAQ,gBACJ,oBAAC,uBAAD;AAAY,IAAA,SAAS,EAAEoB,4BAA4B,GAAG,oBAAH,GAA0B,EAA7E;AAAiF,IAAA,IAAI,EAAC;AAAtF,IADI,GAEJG,YAAY,gBACV,oBAAC,yBAAD;AAAc,IAAA,SAAS,EAAEH,4BAA4B,GAAG,oBAAH,GAA0B,EAA/E;AAAmF,IAAA,IAAI,EAAC;AAAxF,IADU,gBAEV,oBAAC,wBAAD;AAAa,IAAA,SAAS,EAAEA,4BAA4B,GAAG,oBAAH,GAA0B,EAA9E;AAAkF,IAAA,IAAI,EAAC;AAAvF,IANV,CAXF,EAqBID,KAAK,iBAEH;AAAO,IAAA,SAAS,EAAE,OAAlB;AACO,IAAA,OAAO,EAAEF;AADhB,KAEGE,KAFH,CAvBN,CADF;AAgCD,CA5DgB,CAAjB;;AAZEF,EAAAA,E;AACAjB,EAAAA,Q;AACAkB,EAAAA,M;AACAC,EAAAA,K;AACAjB,EAAAA,W;AACAmB,EAAAA,Q;AACAxB,EAAAA,M;AAEAuB,EAAAA,4B;AACAG,EAAAA,Y;;eAiEaV,Q","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {CheckboxOff, CheckboxOn, CheckboxSemi} from '../icons/systemicons/SystemIcons';\nimport {COLORS, ComponentTextStyle} from '../styles';\nimport { Size } from '../types';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling} from '../styles/typography';\n\nconst StyledCheckBox = styled.div<{ disabled?: boolean; showWarning?: boolean; selected?: boolean; margin?: string }>`\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ${props => (props.margin ? `margin: ${props.margin};` : '')}\n cursor: pointer;\n\n color: ${COLORS.black};\n\n .pointerTransparent {\n pointer-events: none;\n }\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ${props => (props.selected ? COLORS.primary_500 : props.showWarning ? COLORS.warning_400 : COLORS.neutral_600)};\n }\n }\n\n .label {\n user-select: none;\n cursor: inherit;\n }\n\n &.small {\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.medium {\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.large {\n ${ComponentLStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ${COLORS.white};\n box-shadow: 0 0 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ${COLORS.neutral_600};\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ${COLORS.primary_20};\n\n svg {\n color: ${COLORS.primary_700};\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ${COLORS.primary_100};\n box-shadow: none;\n\n svg {\n color: ${COLORS.primary_800};\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ${COLORS.neutral_300};\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ${COLORS.white};\n }\n\n .icon svg {\n color: ${COLORS.neutral_300};\n }\n }\n`;\n\ninterface Props {\n id: string;\n selected: boolean;\n select: (selected: boolean) => void;\n label?: string;\n showWarning?: boolean;\n disabled?: boolean;\n margin?: string;\n size?: Size;\n iconPointerEventsTransparent?: boolean;\n semiSelected?: boolean;\n}\n\nconst Checkbox = React.forwardRef<HTMLDivElement, Props>(({\n id,\n selected,\n select,\n label,\n showWarning,\n iconPointerEventsTransparent,\n disabled,\n margin,\n size,\n semiSelected\n }: Props, ref) => {\n const onKeyPress = (e: any) => {\n if (e.keyCode === 13 && !disabled) {\n select(!selected);\n }\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n select(!selected);\n };\n\n size = size ?? Size.Medium;\n\n console.log('size prop', size.toString().toLowerCase());\n return (\n <StyledCheckBox key={id}\n ref={ref}\n disabled={disabled}\n className={size.toString().toLowerCase().concat(disabled ? ' disabled' : '')}\n selected={selected}\n tabIndex={disabled ? -1 : 0}\n showWarning={showWarning}\n margin={margin}\n onClick={handleClick}\n onKeyDown={onKeyPress}\n onMouseDown={e => e.preventDefault()}>\n <div id={id} className={'icon'}>\n {\n selected\n ? <CheckboxOn className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n : semiSelected\n ? <CheckboxSemi className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n : <CheckboxOff className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>\n }\n </div>\n {\n label &&\n (\n <label className={'label'}\n htmlFor={id}>\n {label}\n </label>\n )\n }\n </StyledCheckBox>\n );\n});\n\nexport default Checkbox;\n"],"file":"Checkbox.js"}
@@ -47,7 +47,9 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
47
47
 
48
48
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
49
49
 
50
- var QuickSearchField = (0, _styledComponents.default)(_SearchField.StyledSearchField)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n box-shadow: none;\n width: 48px;\n ", "\n\n -webkit-transition: box-shadow 0.2s ease-in-out, width 0.2s ease-in-out;\n transition: box-shadow 0.2s ease-in-out, width 0.2s ease-in-out;\n\n input {\n ::placeholder {\n font-style: italic;\n color: ", ";\n }\n }\n\n &:focus-within {\n box-shadow: ", ";\n width: 100%;\n }\n &:hover {\n box-shadow: ", ";\n }\n"])), function (props) {
50
+ var QuickSearchField = (0, _styledComponents.default)(_SearchField.StyledSearchField)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: ", ";\n ", "\n -webkit-transition: box-shadow 0.2s ease-in-out, width 0.2s ease-in-out;\n transition: box-shadow 0.2s ease-in-out, width 0.2s ease-in-out;\n\n input {\n ::placeholder {\n font-style: italic;\n color: ", ";\n }\n }\n\n box-shadow: ", ";\n\n &:hover {\n box-shadow: ", ";\n }\n"])), function (props) {
51
+ return props.expanded ? '100%' : '48px';
52
+ }, function (props) {
51
53
  return props.margin ? "margin: ".concat(props.margin, ";") : '';
52
54
  }, _.COLORS.neutral_600, function (props) {
53
55
  return props.expanded ? "inset 0px 0px 0px 2px ".concat(_.COLORS.primary_800) : 'none !important';
@@ -83,12 +85,17 @@ var QuickSearch = function QuickSearch(_ref) {
83
85
 
84
86
  var handleClickOutside = function handleClickOutside(e) {
85
87
  if (searchFieldRef !== null && searchFieldRef !== void 0 && searchFieldRef.current && !searchFieldRef.current.contains(e.target)) {
86
- if (searchFieldVisible) {
88
+ if (searchFieldVisible && !(searchTerm !== null && searchTerm !== void 0 && searchTerm.length)) {
87
89
  setSearchFieldVisible(false);
88
90
  }
89
91
  }
90
92
  };
91
93
 
94
+ React.useEffect(function () {
95
+ if (searchTerm !== null && searchTerm !== void 0 && searchTerm.length) {
96
+ setSearchFieldVisible(true);
97
+ }
98
+ }, [searchTerm]);
92
99
  React.useEffect(function () {
93
100
  document.addEventListener('click', handleClickOutside);
94
101
  return function () {
@@ -109,7 +116,7 @@ var QuickSearch = function QuickSearch(_ref) {
109
116
  }
110
117
 
111
118
  if (e.key === 'Escape') {
112
- if (searchFieldVisible) {
119
+ if (searchFieldVisible && !(searchTerm !== null && searchTerm !== void 0 && searchTerm.length)) {
113
120
  setSearchFieldVisible(false);
114
121
  }
115
122
  }
@@ -119,6 +126,11 @@ var QuickSearch = function QuickSearch(_ref) {
119
126
  ref: searchFieldRef,
120
127
  expanded: searchFieldVisible,
121
128
  id: "".concat(id, "_main"),
129
+ onBlur: function onBlur(event) {
130
+ if (event.relatedTarget && searchFieldRef !== null && searchFieldRef !== void 0 && searchFieldRef.current && !searchFieldRef.current.contains(event.relatedTarget) && !searchTerm) {
131
+ setSearchFieldVisible(false);
132
+ }
133
+ },
122
134
  "data-testid": "".concat(id, "_main"),
123
135
  className: (searchTerm !== '' ? 'searchactive ' : '').concat(size ? size : ''),
124
136
  tabbedHere: tabbedHere,
@@ -146,8 +158,9 @@ var QuickSearch = function QuickSearch(_ref) {
146
158
  id: "".concat(id, "_Searchbutton"),
147
159
  variant: "secondary",
148
160
  shape: "circular",
161
+ tabIndex: searchFieldVisible ? -1 : 0,
149
162
  action: function action(e) {
150
- return searchFieldVisible ? enterSearch(e) : setSearchFieldVisible(!searchFieldVisible);
163
+ return searchFieldVisible ? enterSearch(e) : setSearchFieldVisible(searchFieldVisible ? false : true);
151
164
  }
152
165
  }, /*#__PURE__*/React.createElement(_SystemIcons.Search, {
153
166
  size: "24px",
@@ -156,12 +169,17 @@ var QuickSearch = function QuickSearch(_ref) {
156
169
  className: size ? size : '',
157
170
  role: "button",
158
171
  tabIndex: -1,
159
- hidden: searchTerm === '' || searchTerm === undefined
172
+ hidden: searchTerm === '' || searchTerm === undefined || !searchFieldVisible
160
173
  }, /*#__PURE__*/React.createElement(_Iconbutton.default, {
161
174
  id: "".concat(id, "_Clearicon"),
162
175
  variant: "secondary",
163
176
  shape: "circular",
164
- action: removeSearch
177
+ action: function action(e) {
178
+ var _searchFieldInputRef$2;
179
+
180
+ removeSearch(e);
181
+ searchFieldInputRef === null || searchFieldInputRef === void 0 ? void 0 : (_searchFieldInputRef$2 = searchFieldInputRef.current) === null || _searchFieldInputRef$2 === void 0 ? void 0 : _searchFieldInputRef$2.focus();
182
+ }
165
183
  }, /*#__PURE__*/React.createElement(_SystemIcons.Clear, {
166
184
  size: "24px",
167
185
  color: disabled ? _.COLORS.neutral_300 : _.COLORS.neutral_600
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/InputFields/QuickSearch.tsx"],"names":["QuickSearchField","StyledSearchField","props","margin","COLORS","neutral_600","expanded","primary_800","primary_700","QuickSearch","id","searchTerm","setSearchTerm","enterSearch","removeSearch","placeholder","performSearchLabel","disabled","onKeyDown","size","loading","searchFieldRef","React","useRef","searchFieldInputRef","useState","searchFieldVisible","setSearchFieldVisible","tabbedHere","setTabbedHere","handleClickOutside","e","current","contains","target","useEffect","document","addEventListener","removeEventListener","focus","handleKeyDown","key","concat","term","neutral_300","undefined"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,gBAAgB,GAAG,+BAAOC,8BAAP,CAAH,idAGlB,UAACC,KAAD;AAAA,SAAYA,KAAK,CAACC,MAAN,qBAA0BD,KAAK,CAACC,MAAhC,SAA4C,EAAxD;AAAA,CAHkB,EAWPC,SAAOC,WAXA,EAgBJ,UAACH,KAAD;AAAA,SAAYA,KAAK,CAACI,QAAN,mCAA0CF,SAAOG,WAAjD,IAAiE,iBAA7E;AAAA,CAhBI,EAoBJ,UAACL,KAAD;AAAA,SAAYA,KAAK,CAACI,QAAN,mCAA0CF,SAAOI,WAAjD,IAAiE,iBAA7E;AAAA,CApBI,CAAtB;;AAuCA,IAAMC,WAAsD,GAAG,SAAzDA,WAAyD,OAavC;AAAA,MAZtBC,EAYsB,QAZtBA,EAYsB;AAAA,MAXtBC,UAWsB,QAXtBA,UAWsB;AAAA,MAVtBC,cAUsB,QAVtBA,aAUsB;AAAA,MATtBC,WASsB,QATtBA,WASsB;AAAA,MARtBC,YAQsB,QARtBA,YAQsB;AAAA,MAPtBC,WAOsB,QAPtBA,WAOsB;AAAA,MANtBC,kBAMsB,QANtBA,kBAMsB;AAAA,MALtBC,QAKsB,QALtBA,QAKsB;AAAA,MAJtBC,SAIsB,QAJtBA,SAIsB;AAAA,MAHtBC,IAGsB,QAHtBA,IAGsB;AAAA,MAFtBhB,MAEsB,QAFtBA,MAEsB;AAAA,MADtBiB,OACsB,QADtBA,OACsB;AACtB,MAAMC,cAAc,GAAGC,KAAK,CAACC,MAAN,CAA6B,IAA7B,CAAvB;AACA,MAAMC,mBAAmB,GAAGF,KAAK,CAACC,MAAN,CAA+B,IAA/B,CAA5B;;AAEA,wBAAoDD,KAAK,CAACG,QAAN,CAAwB,KAAxB,CAApD;AAAA;AAAA,MAAOC,kBAAP;AAAA,MAA2BC,qBAA3B;;AACA,yBAAoCL,KAAK,CAACG,QAAN,CAAwB,KAAxB,CAApC;AAAA;AAAA,MAAOG,UAAP;AAAA,MAAmBC,aAAnB;;AAEA,MAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,CAAD,EAAY;AACrC,QAAIV,cAAc,SAAd,IAAAA,cAAc,WAAd,IAAAA,cAAc,CAAEW,OAAhB,IAA2B,CAACX,cAAc,CAACW,OAAf,CAAuBC,QAAvB,CAAgCF,CAAC,CAACG,MAAlC,CAAhC,EAA2E;AACzE,UAAIR,kBAAJ,EAAwB;AACtBC,QAAAA,qBAAqB,CAAC,KAAD,CAArB;AACD;AACF;AACF,GAND;;AAQAL,EAAAA,KAAK,CAACa,SAAN,CAAgB,YAAM;AACpBC,IAAAA,QAAQ,CAACC,gBAAT,CAA0B,OAA1B,EAAmCP,kBAAnC;AACA,WAAO,YAAM;AACXM,MAAAA,QAAQ,CAACE,mBAAT,CAA6B,OAA7B,EAAsCR,kBAAtC;AACD,KAFD;AAGD,GALD;AAOAR,EAAAA,KAAK,CAACa,SAAN,CAAgB,YAAM;AACpB,QAAIT,kBAAJ,EAAwB;AAAA;;AACtBF,MAAAA,mBAAmB,SAAnB,IAAAA,mBAAmB,WAAnB,qCAAAA,mBAAmB,CAAEQ,OAArB,gFAA8BO,KAA9B;AACD;AACF,GAJD,EAIG,CAACb,kBAAD,EAAqBF,mBAArB,EAA0Cd,EAA1C,CAJH;;AAMA,MAAM8B,aAAa,GAAG,SAAhBA,aAAgB,CAACT,CAAD,EAAY;AAChC,QAAIb,SAAJ,EAAe;AACbA,MAAAA,SAAS,CAACa,CAAD,CAAT;AACD;;AACD,QAAIA,CAAC,CAACU,GAAF,KAAU,QAAd,EAAwB;AACtB,UAAIf,kBAAJ,EAAwB;AACtBC,QAAAA,qBAAqB,CAAC,KAAD,CAArB;AACD;AACF;AACF,GATD;;AAWA,sBACE,oBAAC,gBAAD;AACE,IAAA,GAAG,EAAEN,cADP;AAEE,IAAA,QAAQ,EAAEK,kBAFZ;AAGE,IAAA,EAAE,YAAKhB,EAAL,UAHJ;AAIE,6BAAgBA,EAAhB,UAJF;AAKE,IAAA,SAAS,EAAE,CAACC,UAAU,KAAK,EAAf,GAAoB,eAApB,GAAsC,EAAvC,EAA2C+B,MAA3C,CAAkDvB,IAAI,GAAGA,IAAH,GAAU,EAAhE,CALb;AAME,IAAA,UAAU,EAAES,UANd;AAOE,IAAA,QAAQ,EAAE,CAAC,CAPb;AAQE,IAAA,MAAM,EAAEzB;AARV,KASGuB,kBAAkB,iBACjB,oBAAC,uBAAD;AACE,IAAA,WAAW,EAAET,QAAQ,GAAG,EAAH,GAAQF,WAD/B;AAEE,IAAA,EAAE,EAAEL,EAFN;AAGE,IAAA,GAAG,EAAEc,mBAHP;AAIE,IAAA,QAAQ,EAAEP,QAJZ;AAKE,IAAA,SAAS,EAAEuB,aALb;AAME,IAAA,IAAI,EAAErB,IANR;AAOE,IAAA,aAAa,EAAEU,aAPjB;AAQE,IAAA,aAAa,EAAE,uBAACc,IAAD;AAAA,aAAkB/B,cAAa,CAAC+B,IAAD,CAA/B;AAAA,KARjB;AASE,IAAA,UAAU,EAAEhC,UATd;AAUE,IAAA,WAAW,EAAEE;AAVf,IAVJ,eAuBE,oBAAC,0BAAD;AAAmB,IAAA,SAAS,EAAEM,IAAI,GAAGA,IAAH,GAAU,EAA5C;AAAgD,IAAA,IAAI,EAAC,QAArD;AAA8D,kBAAYH,kBAA1E;AAA8F,IAAA,QAAQ,EAAE,CAAC;AAAzG,kBACE,oBAAC,mBAAD;AACE,IAAA,EAAE,YAAKN,EAAL,kBADJ;AAEE,IAAA,OAAO,EAAC,WAFV;AAGE,IAAA,KAAK,EAAC,UAHR;AAIE,IAAA,MAAM,EAAE,gBAACqB,CAAD;AAAA,aAAQL,kBAAkB,GAAGb,WAAW,CAACkB,CAAD,CAAd,GAAoBJ,qBAAqB,CAAC,CAACD,kBAAF,CAAnE;AAAA;AAJV,kBAKE,oBAAC,mBAAD;AAAY,IAAA,IAAI,EAAC,MAAjB;AAAwB,IAAA,KAAK,EAAET,QAAQ,GAAGb,SAAOwC,WAAV,GAAwBxC,SAAOC;AAAtE,IALF,CADF,CAvBF,eAgCE,oBAAC,mBAAD;AAAY,IAAA,SAAS,EAAEc,IAAI,GAAGA,IAAH,GAAU,EAArC;AAAyC,IAAA,IAAI,EAAC,QAA9C;AAAuD,IAAA,QAAQ,EAAE,CAAC,CAAlE;AAAqE,IAAA,MAAM,EAAER,UAAU,KAAK,EAAf,IAAqBA,UAAU,KAAKkC;AAAjH,kBACE,oBAAC,mBAAD;AAAY,IAAA,EAAE,YAAKnC,EAAL,eAAd;AAAmC,IAAA,OAAO,EAAC,WAA3C;AAAuD,IAAA,KAAK,EAAC,UAA7D;AAAwE,IAAA,MAAM,EAAEI;AAAhF,kBACE,oBAAC,kBAAD;AAAW,IAAA,IAAI,EAAC,MAAhB;AAAuB,IAAA,KAAK,EAAEG,QAAQ,GAAGb,SAAOwC,WAAV,GAAwBxC,SAAOC;AAArE,IADF,CADF,CAhCF,EAqCGe,OAAO,IAAIM,kBAAX,iBACC,oBAAC,mBAAD;AAAY,IAAA,SAAS,EAAEP,IAAI,GAAGA,IAAH,GAAU,EAArC;AAAyC,IAAA,QAAQ,EAAE,CAAC;AAApD,kBACE,oBAAC,kBAAD;AAAkB,IAAA,IAAI,EAAC,OAAvB;AAA+B,IAAA,KAAK,EAAEf,SAAOC;AAA7C,IADF,CAtCJ,CADF;AA6CD,CAjGD;;;AAdEK,EAAAA,E;AACAC,EAAAA,U;AACAC,EAAAA,a;AACAC,EAAAA,W;AACAC,EAAAA,Y;AACAC,EAAAA,W;AACAC,EAAAA,kB;AACAC,EAAAA,Q;AACAC,EAAAA,S;AACAC,EAAAA,I,4BAAO,O,EAAU,Q;AACjBhB,EAAAA,M;AACAiB,EAAAA,O;;eAsGaX,W","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport IconButton from '../Button/Iconbutton';\nimport { SearchIconWrapper, StyledIcon } from './styling';\nimport { COLORS, LoadingIndicator } from '..';\nimport { Search as SearchIcon, Clear as ClearIcon } from '../icons/systemicons/SystemIcons';\nimport SearchBarInput from './components/SearchBarInput';\nimport { StyledSearchField } from './components/SearchField';\n\nconst QuickSearchField = styled(StyledSearchField)<{ expanded: boolean; margin?: string }>`\n box-shadow: none;\n width: 48px;\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n\n -webkit-transition: box-shadow 0.2s ease-in-out, width 0.2s ease-in-out;\n transition: box-shadow 0.2s ease-in-out, width 0.2s ease-in-out;\n\n input {\n ::placeholder {\n font-style: italic;\n color: ${COLORS.neutral_600};\n }\n }\n\n &:focus-within {\n box-shadow: ${(props) => (props.expanded ? `inset 0px 0px 0px 2px ${COLORS.primary_800}` : 'none !important')};\n width: 100%;\n }\n &:hover {\n box-shadow: ${(props) => (props.expanded ? `inset 0px 0px 0px 2px ${COLORS.primary_700}` : 'none !important')};\n }\n`;\n\ntype QuickSearchProps = {\n id: string;\n searchTerm?: string;\n setSearchTerm: (term: string) => void;\n enterSearch: (e: any) => void;\n removeSearch: (e: any) => void;\n placeholder?: string;\n performSearchLabel?: string;\n disabled?: boolean;\n onKeyDown?: (e: React.KeyboardEvent) => void;\n size?: 'small' | 'medium';\n margin?: string;\n loading?: boolean;\n};\n\nconst QuickSearch: React.FunctionComponent<QuickSearchProps> = ({\n id,\n searchTerm,\n setSearchTerm,\n enterSearch,\n removeSearch,\n placeholder,\n performSearchLabel,\n disabled,\n onKeyDown,\n size,\n margin,\n loading,\n}: QuickSearchProps) => {\n const searchFieldRef = React.useRef<HTMLDivElement>(null);\n const searchFieldInputRef = React.useRef<HTMLInputElement>(null);\n\n const [searchFieldVisible, setSearchFieldVisible] = React.useState<boolean>(false);\n const [tabbedHere, setTabbedHere] = React.useState<boolean>(false);\n\n const handleClickOutside = (e: any) => {\n if (searchFieldRef?.current && !searchFieldRef.current.contains(e.target)) {\n if (searchFieldVisible) {\n setSearchFieldVisible(false);\n }\n }\n };\n\n React.useEffect(() => {\n document.addEventListener('click', handleClickOutside);\n return () => {\n document.removeEventListener('click', handleClickOutside);\n };\n });\n\n React.useEffect(() => {\n if (searchFieldVisible) {\n searchFieldInputRef?.current?.focus();\n }\n }, [searchFieldVisible, searchFieldInputRef, id]);\n\n const handleKeyDown = (e: any) => {\n if (onKeyDown) {\n onKeyDown(e);\n }\n if (e.key === 'Escape') {\n if (searchFieldVisible) {\n setSearchFieldVisible(false);\n }\n }\n };\n\n return (\n <QuickSearchField\n ref={searchFieldRef}\n expanded={searchFieldVisible}\n id={`${id}_main`}\n data-testid={`${id}_main`}\n className={(searchTerm !== '' ? 'searchactive ' : '').concat(size ? size : '')}\n tabbedHere={tabbedHere}\n tabIndex={-1}\n margin={margin}>\n {searchFieldVisible && (\n <SearchBarInput\n placeholder={disabled ? '' : placeholder}\n id={id}\n ref={searchFieldInputRef}\n disabled={disabled}\n onKeyDown={handleKeyDown}\n size={size}\n setTabbedHere={setTabbedHere}\n setSearchTerm={(term: string) => setSearchTerm(term)}\n searchTerm={searchTerm}\n enterSearch={enterSearch}\n />\n )}\n <SearchIconWrapper className={size ? size : ''} role=\"button\" aria-label={performSearchLabel} tabIndex={-1}>\n <IconButton\n id={`${id}_Searchbutton`}\n variant=\"secondary\"\n shape=\"circular\"\n action={(e) => (searchFieldVisible ? enterSearch(e) : setSearchFieldVisible(!searchFieldVisible))}>\n <SearchIcon size=\"24px\" color={disabled ? COLORS.neutral_300 : COLORS.neutral_600} />\n </IconButton>\n </SearchIconWrapper>\n <StyledIcon className={size ? size : ''} role=\"button\" tabIndex={-1} hidden={searchTerm === '' || searchTerm === undefined}>\n <IconButton id={`${id}_Clearicon`} variant=\"secondary\" shape=\"circular\" action={removeSearch}>\n <ClearIcon size=\"24px\" color={disabled ? COLORS.neutral_300 : COLORS.neutral_600} />\n </IconButton>\n </StyledIcon>\n {loading && searchFieldVisible && (\n <StyledIcon className={size ? size : ''} tabIndex={-1}>\n <LoadingIndicator size=\"small\" color={COLORS.neutral_600} />\n </StyledIcon>\n )}\n </QuickSearchField>\n );\n};\n\nexport default QuickSearch;\n"],"file":"QuickSearch.js"}
1
+ {"version":3,"sources":["../../../src/InputFields/QuickSearch.tsx"],"names":["QuickSearchField","StyledSearchField","props","expanded","margin","COLORS","neutral_600","primary_800","primary_700","QuickSearch","id","searchTerm","setSearchTerm","enterSearch","removeSearch","placeholder","performSearchLabel","disabled","onKeyDown","size","loading","searchFieldRef","React","useRef","searchFieldInputRef","useState","searchFieldVisible","setSearchFieldVisible","tabbedHere","setTabbedHere","handleClickOutside","e","current","contains","target","length","useEffect","document","addEventListener","removeEventListener","focus","handleKeyDown","key","event","relatedTarget","concat","term","neutral_300","undefined"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,gBAAgB,GAAG,+BAAOC,8BAAP,CAAH,+YACX,UAACC,KAAD;AAAA,SAAYA,KAAK,CAACC,QAAN,GAAiB,MAAjB,GAA0B,MAAtC;AAAA,CADW,EAElB,UAACD,KAAD;AAAA,SAAYA,KAAK,CAACE,MAAN,qBAA0BF,KAAK,CAACE,MAAhC,SAA4C,EAAxD;AAAA,CAFkB,EASPC,SAAOC,WATA,EAaN,UAACJ,KAAD;AAAA,SAAYA,KAAK,CAACC,QAAN,mCAA0CE,SAAOE,WAAjD,IAAiE,iBAA7E;AAAA,CAbM,EAgBJ,UAACL,KAAD;AAAA,SAAYA,KAAK,CAACC,QAAN,mCAA0CE,SAAOG,WAAjD,IAAiE,iBAA7E;AAAA,CAhBI,CAAtB;;AAmCA,IAAMC,WAAsD,GAAG,SAAzDA,WAAyD,OAavC;AAAA,MAZtBC,EAYsB,QAZtBA,EAYsB;AAAA,MAXtBC,UAWsB,QAXtBA,UAWsB;AAAA,MAVtBC,cAUsB,QAVtBA,aAUsB;AAAA,MATtBC,WASsB,QATtBA,WASsB;AAAA,MARtBC,YAQsB,QARtBA,YAQsB;AAAA,MAPtBC,WAOsB,QAPtBA,WAOsB;AAAA,MANtBC,kBAMsB,QANtBA,kBAMsB;AAAA,MALtBC,QAKsB,QALtBA,QAKsB;AAAA,MAJtBC,SAIsB,QAJtBA,SAIsB;AAAA,MAHtBC,IAGsB,QAHtBA,IAGsB;AAAA,MAFtBf,MAEsB,QAFtBA,MAEsB;AAAA,MADtBgB,OACsB,QADtBA,OACsB;AACtB,MAAMC,cAAc,GAAGC,KAAK,CAACC,MAAN,CAA6B,IAA7B,CAAvB;AACA,MAAMC,mBAAmB,GAAGF,KAAK,CAACC,MAAN,CAA+B,IAA/B,CAA5B;;AAEA,wBAAoDD,KAAK,CAACG,QAAN,CAAwB,KAAxB,CAApD;AAAA;AAAA,MAAOC,kBAAP;AAAA,MAA2BC,qBAA3B;;AACA,yBAAoCL,KAAK,CAACG,QAAN,CAAwB,KAAxB,CAApC;AAAA;AAAA,MAAOG,UAAP;AAAA,MAAmBC,aAAnB;;AAEA,MAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,CAAD,EAAY;AACrC,QAAIV,cAAc,SAAd,IAAAA,cAAc,WAAd,IAAAA,cAAc,CAAEW,OAAhB,IAA2B,CAACX,cAAc,CAACW,OAAf,CAAuBC,QAAvB,CAAgCF,CAAC,CAACG,MAAlC,CAAhC,EAA2E;AACzE,UAAIR,kBAAkB,IAAI,EAACf,UAAD,aAACA,UAAD,eAACA,UAAU,CAAEwB,MAAb,CAA1B,EAA+C;AAC7CR,QAAAA,qBAAqB,CAAC,KAAD,CAArB;AACD;AACF;AACF,GAND;;AAQAL,EAAAA,KAAK,CAACc,SAAN,CAAgB,YAAM;AACpB,QAAIzB,UAAJ,aAAIA,UAAJ,eAAIA,UAAU,CAAEwB,MAAhB,EAAwB;AACtBR,MAAAA,qBAAqB,CAAC,IAAD,CAArB;AACD;AACF,GAJD,EAIG,CAAChB,UAAD,CAJH;AAMAW,EAAAA,KAAK,CAACc,SAAN,CAAgB,YAAM;AACpBC,IAAAA,QAAQ,CAACC,gBAAT,CAA0B,OAA1B,EAAmCR,kBAAnC;AACA,WAAO,YAAM;AACXO,MAAAA,QAAQ,CAACE,mBAAT,CAA6B,OAA7B,EAAsCT,kBAAtC;AACD,KAFD;AAGD,GALD;AAOAR,EAAAA,KAAK,CAACc,SAAN,CAAgB,YAAM;AACpB,QAAIV,kBAAJ,EAAwB;AAAA;;AACtBF,MAAAA,mBAAmB,SAAnB,IAAAA,mBAAmB,WAAnB,qCAAAA,mBAAmB,CAAEQ,OAArB,gFAA8BQ,KAA9B;AACD;AACF,GAJD,EAIG,CAACd,kBAAD,EAAqBF,mBAArB,EAA0Cd,EAA1C,CAJH;;AAMA,MAAM+B,aAAa,GAAG,SAAhBA,aAAgB,CAACV,CAAD,EAAY;AAChC,QAAIb,SAAJ,EAAe;AACbA,MAAAA,SAAS,CAACa,CAAD,CAAT;AACD;;AACD,QAAIA,CAAC,CAACW,GAAF,KAAU,QAAd,EAAwB;AACtB,UAAIhB,kBAAkB,IAAI,EAACf,UAAD,aAACA,UAAD,eAACA,UAAU,CAAEwB,MAAb,CAA1B,EAA+C;AAC7CR,QAAAA,qBAAqB,CAAC,KAAD,CAArB;AACD;AACF;AACF,GATD;;AAWA,sBACE,oBAAC,gBAAD;AACE,IAAA,GAAG,EAAEN,cADP;AAEE,IAAA,QAAQ,EAAEK,kBAFZ;AAGE,IAAA,EAAE,YAAKhB,EAAL,UAHJ;AAIE,IAAA,MAAM,EAAE,gBAACiC,KAAD,EAAgB;AACtB,UAAIA,KAAK,CAACC,aAAN,IAAuBvB,cAAvB,aAAuBA,cAAvB,eAAuBA,cAAc,CAAEW,OAAvC,IAAkD,CAACX,cAAc,CAACW,OAAf,CAAuBC,QAAvB,CAAgCU,KAAK,CAACC,aAAtC,CAAnD,IAA2G,CAACjC,UAAhH,EAA4H;AAC1HgB,QAAAA,qBAAqB,CAAC,KAAD,CAArB;AACD;AACF,KARH;AASE,6BAAgBjB,EAAhB,UATF;AAUE,IAAA,SAAS,EAAE,CAACC,UAAU,KAAK,EAAf,GAAoB,eAApB,GAAsC,EAAvC,EAA2CkC,MAA3C,CAAkD1B,IAAI,GAAGA,IAAH,GAAU,EAAhE,CAVb;AAWE,IAAA,UAAU,EAAES,UAXd;AAYE,IAAA,QAAQ,EAAE,CAAC,CAZb;AAaE,IAAA,MAAM,EAAExB;AAbV,KAcGsB,kBAAkB,iBACjB,oBAAC,uBAAD;AACE,IAAA,WAAW,EAAET,QAAQ,GAAG,EAAH,GAAQF,WAD/B;AAEE,IAAA,EAAE,EAAEL,EAFN;AAGE,IAAA,GAAG,EAAEc,mBAHP;AAIE,IAAA,QAAQ,EAAEP,QAJZ;AAKE,IAAA,SAAS,EAAEwB,aALb;AAME,IAAA,IAAI,EAAEtB,IANR;AAOE,IAAA,aAAa,EAAEU,aAPjB;AAQE,IAAA,aAAa,EAAE,uBAACiB,IAAD;AAAA,aAAkBlC,cAAa,CAACkC,IAAD,CAA/B;AAAA,KARjB;AASE,IAAA,UAAU,EAAEnC,UATd;AAUE,IAAA,WAAW,EAAEE;AAVf,IAfJ,eA4BE,oBAAC,0BAAD;AAAmB,IAAA,SAAS,EAAEM,IAAI,GAAGA,IAAH,GAAU,EAA5C;AAAgD,IAAA,IAAI,EAAC,QAArD;AAA8D,kBAAYH,kBAA1E;AAA8F,IAAA,QAAQ,EAAE,CAAC;AAAzG,kBACE,oBAAC,mBAAD;AACE,IAAA,EAAE,YAAKN,EAAL,kBADJ;AAEE,IAAA,OAAO,EAAC,WAFV;AAGE,IAAA,KAAK,EAAC,UAHR;AAIE,IAAA,QAAQ,EAAEgB,kBAAkB,GAAG,CAAC,CAAJ,GAAQ,CAJtC;AAKE,IAAA,MAAM,EAAE,gBAACK,CAAD;AAAA,aAAQL,kBAAkB,GAAGb,WAAW,CAACkB,CAAD,CAAd,GAAoBJ,qBAAqB,CAACD,kBAAkB,GAAG,KAAH,GAAW,IAA9B,CAAnE;AAAA;AALV,kBAME,oBAAC,mBAAD;AAAY,IAAA,IAAI,EAAC,MAAjB;AAAwB,IAAA,KAAK,EAAET,QAAQ,GAAGZ,SAAO0C,WAAV,GAAwB1C,SAAOC;AAAtE,IANF,CADF,CA5BF,eAsCE,oBAAC,mBAAD;AAAY,IAAA,SAAS,EAAEa,IAAI,GAAGA,IAAH,GAAU,EAArC;AAAyC,IAAA,IAAI,EAAC,QAA9C;AAAuD,IAAA,QAAQ,EAAE,CAAC,CAAlE;AAAqE,IAAA,MAAM,EAAER,UAAU,KAAK,EAAf,IAAqBA,UAAU,KAAKqC,SAApC,IAAiD,CAACtB;AAA/H,kBACE,oBAAC,mBAAD;AACE,IAAA,EAAE,YAAKhB,EAAL,eADJ;AAEE,IAAA,OAAO,EAAC,WAFV;AAGE,IAAA,KAAK,EAAC,UAHR;AAIE,IAAA,MAAM,EAAE,gBAACqB,CAAD,EAAO;AAAA;;AACbjB,MAAAA,YAAY,CAACiB,CAAD,CAAZ;AACAP,MAAAA,mBAAmB,SAAnB,IAAAA,mBAAmB,WAAnB,sCAAAA,mBAAmB,CAAEQ,OAArB,kFAA8BQ,KAA9B;AACD;AAPH,kBAQE,oBAAC,kBAAD;AAAW,IAAA,IAAI,EAAC,MAAhB;AAAuB,IAAA,KAAK,EAAEvB,QAAQ,GAAGZ,SAAO0C,WAAV,GAAwB1C,SAAOC;AAArE,IARF,CADF,CAtCF,EAkDGc,OAAO,IAAIM,kBAAX,iBACC,oBAAC,mBAAD;AAAY,IAAA,SAAS,EAAEP,IAAI,GAAGA,IAAH,GAAU,EAArC;AAAyC,IAAA,QAAQ,EAAE,CAAC;AAApD,kBACE,oBAAC,kBAAD;AAAkB,IAAA,IAAI,EAAC,OAAvB;AAA+B,IAAA,KAAK,EAAEd,SAAOC;AAA7C,IADF,CAnDJ,CADF;AA0DD,CApHD;;;AAdEI,EAAAA,E;AACAC,EAAAA,U;AACAC,EAAAA,a;AACAC,EAAAA,W;AACAC,EAAAA,Y;AACAC,EAAAA,W;AACAC,EAAAA,kB;AACAC,EAAAA,Q;AACAC,EAAAA,S;AACAC,EAAAA,I,4BAAO,O,EAAU,Q;AACjBf,EAAAA,M;AACAgB,EAAAA,O;;eAyHaX,W","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport IconButton from '../Button/Iconbutton';\nimport { SearchIconWrapper, StyledIcon } from './styling';\nimport { COLORS, LoadingIndicator } from '..';\nimport { Search as SearchIcon, Clear as ClearIcon } from '../icons/systemicons/SystemIcons';\nimport SearchBarInput from './components/SearchBarInput';\nimport { StyledSearchField } from './components/SearchField';\n\nconst QuickSearchField = styled(StyledSearchField)<{ expanded: boolean; margin?: string }>`\n width: ${(props) => (props.expanded ? '100%' : '48px')};\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n -webkit-transition: box-shadow 0.2s ease-in-out, width 0.2s ease-in-out;\n transition: box-shadow 0.2s ease-in-out, width 0.2s ease-in-out;\n\n input {\n ::placeholder {\n font-style: italic;\n color: ${COLORS.neutral_600};\n }\n }\n\n box-shadow: ${(props) => (props.expanded ? `inset 0px 0px 0px 2px ${COLORS.primary_800}` : 'none !important')};\n\n &:hover {\n box-shadow: ${(props) => (props.expanded ? `inset 0px 0px 0px 2px ${COLORS.primary_700}` : 'none !important')};\n }\n`;\n\ntype QuickSearchProps = {\n id: string;\n searchTerm?: string;\n setSearchTerm: (term: string) => void;\n enterSearch: (e: any) => void;\n removeSearch: (e: any) => void;\n placeholder?: string;\n performSearchLabel?: string;\n disabled?: boolean;\n onKeyDown?: (e: React.KeyboardEvent) => void;\n size?: 'small' | 'medium';\n margin?: string;\n loading?: boolean;\n};\n\nconst QuickSearch: React.FunctionComponent<QuickSearchProps> = ({\n id,\n searchTerm,\n setSearchTerm,\n enterSearch,\n removeSearch,\n placeholder,\n performSearchLabel,\n disabled,\n onKeyDown,\n size,\n margin,\n loading,\n}: QuickSearchProps) => {\n const searchFieldRef = React.useRef<HTMLDivElement>(null);\n const searchFieldInputRef = React.useRef<HTMLInputElement>(null);\n\n const [searchFieldVisible, setSearchFieldVisible] = React.useState<boolean>(false);\n const [tabbedHere, setTabbedHere] = React.useState<boolean>(false);\n\n const handleClickOutside = (e: any) => {\n if (searchFieldRef?.current && !searchFieldRef.current.contains(e.target)) {\n if (searchFieldVisible && !searchTerm?.length) {\n setSearchFieldVisible(false);\n }\n }\n };\n\n React.useEffect(() => {\n if (searchTerm?.length) {\n setSearchFieldVisible(true);\n }\n }, [searchTerm]);\n\n React.useEffect(() => {\n document.addEventListener('click', handleClickOutside);\n return () => {\n document.removeEventListener('click', handleClickOutside);\n };\n });\n\n React.useEffect(() => {\n if (searchFieldVisible) {\n searchFieldInputRef?.current?.focus();\n }\n }, [searchFieldVisible, searchFieldInputRef, id]);\n\n const handleKeyDown = (e: any) => {\n if (onKeyDown) {\n onKeyDown(e);\n }\n if (e.key === 'Escape') {\n if (searchFieldVisible && !searchTerm?.length) {\n setSearchFieldVisible(false);\n }\n }\n };\n\n return (\n <QuickSearchField\n ref={searchFieldRef}\n expanded={searchFieldVisible}\n id={`${id}_main`}\n onBlur={(event: any) => {\n if (event.relatedTarget && searchFieldRef?.current && !searchFieldRef.current.contains(event.relatedTarget) && !searchTerm) {\n setSearchFieldVisible(false);\n }\n }}\n data-testid={`${id}_main`}\n className={(searchTerm !== '' ? 'searchactive ' : '').concat(size ? size : '')}\n tabbedHere={tabbedHere}\n tabIndex={-1}\n margin={margin}>\n {searchFieldVisible && (\n <SearchBarInput\n placeholder={disabled ? '' : placeholder}\n id={id}\n ref={searchFieldInputRef}\n disabled={disabled}\n onKeyDown={handleKeyDown}\n size={size}\n setTabbedHere={setTabbedHere}\n setSearchTerm={(term: string) => setSearchTerm(term)}\n searchTerm={searchTerm}\n enterSearch={enterSearch}\n />\n )}\n <SearchIconWrapper className={size ? size : ''} role=\"button\" aria-label={performSearchLabel} tabIndex={-1}>\n <IconButton\n id={`${id}_Searchbutton`}\n variant=\"secondary\"\n shape=\"circular\"\n tabIndex={searchFieldVisible ? -1 : 0}\n action={(e) => (searchFieldVisible ? enterSearch(e) : setSearchFieldVisible(searchFieldVisible ? false : true))}>\n <SearchIcon size=\"24px\" color={disabled ? COLORS.neutral_300 : COLORS.neutral_600} />\n </IconButton>\n </SearchIconWrapper>\n <StyledIcon className={size ? size : ''} role=\"button\" tabIndex={-1} hidden={searchTerm === '' || searchTerm === undefined || !searchFieldVisible}>\n <IconButton\n id={`${id}_Clearicon`}\n variant=\"secondary\"\n shape=\"circular\"\n action={(e) => {\n removeSearch(e);\n searchFieldInputRef?.current?.focus();\n }}>\n <ClearIcon size=\"24px\" color={disabled ? COLORS.neutral_300 : COLORS.neutral_600} />\n </IconButton>\n </StyledIcon>\n {loading && searchFieldVisible && (\n <StyledIcon className={size ? size : ''} tabIndex={-1}>\n <LoadingIndicator size=\"small\" color={COLORS.neutral_600} />\n </StyledIcon>\n )}\n </QuickSearchField>\n );\n};\n\nexport default QuickSearch;\n"],"file":"QuickSearch.js"}
@@ -1,4 +1,5 @@
1
1
  import * as React from 'react';
2
+ import { Size } from '../types';
2
3
  interface Props {
3
4
  id: string;
4
5
  selected: boolean;
@@ -7,8 +8,9 @@ interface Props {
7
8
  additionalLabel?: string;
8
9
  showWarning?: boolean;
9
10
  disabled?: boolean;
11
+ iconPointerEventsTransparent?: boolean;
10
12
  margin?: string;
11
- size?: 'small' | 'medium' | 'large';
13
+ size?: Size;
12
14
  }
13
- declare const RadioButton: React.FunctionComponent<Props>;
15
+ declare const RadioButton: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
14
16
  export default RadioButton;
@@ -17,6 +17,8 @@ var _SystemIcons = require("../icons/systemicons/SystemIcons");
17
17
 
18
18
  var _styles = require("../styles");
19
19
 
20
+ var _types = require("../types");
21
+
20
22
  var _typography = require("../styles/typography");
21
23
 
22
24
  var _templateObject;
@@ -29,13 +31,13 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
29
31
 
30
32
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
31
33
 
32
- var StyledRadioButton = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ", "\n cursor: pointer;\n \n color: ", ";\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ", ";\n }\n }\n\n .label {\n user-select: none;\n display: flex;\n flex-direction: column;\n\n label{\n cursor: inherit;\n }\n\n span {\n ", "\n }\n }\n\n &.small {\n ", "\n }\n\n &.medium {\n ", "\n }\n\n &.large {\n ", "\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ", ";\n box-shadow: 0 0 8px ", ", 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ", ";\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ", ";\n\n svg {\n color: ", ";\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ", ";\n box-shadow: none;\n\n svg {\n color: ", ";\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ", ";\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ", ";\n }\n \n .icon svg {\n color: ", ";\n }\n }\n"])), function (props) {
34
+ var StyledRadioButton = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ", "\n cursor: pointer;\n \n color: ", ";\n\n .pointerTransparent {\n pointer-events: none;\n }\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ", ";\n }\n }\n\n .label {\n user-select: none;\n display: flex;\n flex-direction: column;\n\n label{\n cursor: inherit;\n }\n\n span {\n ", "\n }\n }\n\n &.small {\n ", "\n }\n\n &.medium {\n ", "\n }\n\n &.large {\n ", "\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ", ";\n box-shadow: 0 0 8px ", ", 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ", ";\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ", ";\n\n svg {\n color: ", ";\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ", ";\n box-shadow: none;\n\n svg {\n color: ", ";\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ", ";\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ", ";\n }\n \n .icon svg {\n color: ", ";\n }\n }\n"])), function (props) {
33
35
  return props.margin ? "margin: ".concat(props.margin, ";") : '';
34
36
  }, _styles.COLORS.black, function (props) {
35
37
  return props.selected ? _styles.COLORS.primary_500 : props.showWarning ? _styles.COLORS.warning_400 : _styles.COLORS.neutral_600;
36
38
  }, (0, _typography.ComponentXXSStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.black), (0, _typography.ComponentSStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.black), (0, _typography.ComponentMStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.black), (0, _typography.ComponentLStyling)(_styles.ComponentTextStyle.Regular, _styles.COLORS.black), _styles.COLORS.white, _styles.COLORS.primary_500, _styles.COLORS.neutral_600, _styles.COLORS.primary_20, _styles.COLORS.primary_700, _styles.COLORS.primary_100, _styles.COLORS.primary_800, _styles.COLORS.neutral_300, _styles.COLORS.white, _styles.COLORS.neutral_300);
37
39
 
38
- var RadioButton = function RadioButton(_ref) {
40
+ var RadioButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
39
41
  var _size;
40
42
 
41
43
  var id = _ref.id,
@@ -46,6 +48,7 @@ var RadioButton = function RadioButton(_ref) {
46
48
  select = _ref.select,
47
49
  disabled = _ref.disabled,
48
50
  margin = _ref.margin,
51
+ iconPointerEventsTransparent = _ref.iconPointerEventsTransparent,
49
52
  size = _ref.size;
50
53
 
51
54
  var onKeyPress = function onKeyPress(e) {
@@ -54,10 +57,11 @@ var RadioButton = function RadioButton(_ref) {
54
57
  }
55
58
  };
56
59
 
57
- size = (_size = size) !== null && _size !== void 0 ? _size : 'medium';
60
+ size = (_size = size) !== null && _size !== void 0 ? _size : _types.Size.Medium;
58
61
  return /*#__PURE__*/React.createElement(StyledRadioButton, {
59
62
  key: id,
60
63
  margin: margin,
64
+ ref: ref,
61
65
  onClick: function onClick() {
62
66
  return !disabled && select(!selected);
63
67
  },
@@ -66,24 +70,25 @@ var RadioButton = function RadioButton(_ref) {
66
70
  },
67
71
  onKeyDown: onKeyPress,
68
72
  disabled: disabled,
69
- className: size.concat(disabled ? ' disabled' : ''),
73
+ className: size.toString().toLowerCase().concat(disabled ? ' disabled' : ''),
70
74
  tabIndex: disabled ? -1 : 0,
71
75
  showWarning: showWarning,
72
76
  selected: selected
73
77
  }, /*#__PURE__*/React.createElement("div", {
74
78
  className: 'icon',
75
79
  id: id
76
- }, selected ? /*#__PURE__*/React.createElement(_SystemIcons.RadioButtonOn, {
80
+ }, selected && /*#__PURE__*/React.createElement(_SystemIcons.RadioButtonOn, {
81
+ className: iconPointerEventsTransparent ? "pointerTransparent" : "",
77
82
  size: "24px"
78
- }) : /*#__PURE__*/React.createElement(_SystemIcons.RadioButtonOff, {
83
+ }), !selected && /*#__PURE__*/React.createElement(_SystemIcons.RadioButtonOff, {
84
+ className: iconPointerEventsTransparent ? "pointerTransparent" : "",
79
85
  size: "24px"
80
86
  })), /*#__PURE__*/React.createElement("div", {
81
87
  className: 'label'
82
88
  }, label && /*#__PURE__*/React.createElement("label", {
83
89
  htmlFor: id
84
90
  }, label), additionalLabel !== undefined && /*#__PURE__*/React.createElement("span", null, additionalLabel)));
85
- };
86
-
91
+ });
87
92
  RadioButton.propTypes = {
88
93
  id: _propTypes.default.string.isRequired,
89
94
  selected: _propTypes.default.bool.isRequired,
@@ -92,8 +97,8 @@ RadioButton.propTypes = {
92
97
  additionalLabel: _propTypes.default.string,
93
98
  showWarning: _propTypes.default.bool,
94
99
  disabled: _propTypes.default.bool,
95
- margin: _propTypes.default.string,
96
- size: _propTypes.default.oneOf(['small', 'medium', 'large'])
100
+ iconPointerEventsTransparent: _propTypes.default.bool,
101
+ margin: _propTypes.default.string
97
102
  };
98
103
  var _default = RadioButton;
99
104
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/InputFields/RadioButton.tsx"],"names":["StyledRadioButton","styled","div","props","margin","COLORS","black","selected","primary_500","showWarning","warning_400","neutral_600","ComponentTextStyle","Regular","white","primary_20","primary_700","primary_100","primary_800","neutral_300","RadioButton","id","label","additionalLabel","select","disabled","size","onKeyPress","e","keyCode","preventDefault","concat","undefined"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,IAAMA,iBAAiB,GAAGC,0BAAOC,GAAV,4+CAQnB,UAAAC,KAAK;AAAA,SAAKA,KAAK,CAACC,MAAN,qBAA0BD,KAAK,CAACC,MAAhC,SAA4C,EAAjD;AAAA,CARc,EAWZC,eAAOC,KAXK,EAwBR,UAAAH,KAAK;AAAA,SAAKA,KAAK,CAACI,QAAN,GAAiBF,eAAOG,WAAxB,GAAsCL,KAAK,CAACM,WAAN,GAAoBJ,eAAOK,WAA3B,GAAyCL,eAAOM,WAA3F;AAAA,CAxBG,EAsCf,qCAAoBC,2BAAmBC,OAAvC,EAAgDR,eAAOC,KAAvD,CAtCe,EA2CjB,mCAAkBM,2BAAmBC,OAArC,EAA8CR,eAAOC,KAArD,CA3CiB,EA+CjB,mCAAkBM,2BAAmBC,OAArC,EAA8CR,eAAOC,KAArD,CA/CiB,EAmDjB,mCAAkBM,2BAAmBC,OAArC,EAA8CR,eAAOC,KAArD,CAnDiB,EA0DGD,eAAOS,KA1DV,EA2DKT,eAAOG,WA3DZ,EA8DNH,eAAOM,WA9DD,EAqEGN,eAAOU,UArEV,EAwENV,eAAOW,WAxED,EA+EHX,eAAOY,WA/EJ,EAmFNZ,eAAOa,WAnFD,EA4FVb,eAAOc,WA5FG,EAoGGd,eAAOS,KApGV,EAwGRT,eAAOc,WAxGC,CAAvB;;AAyHA,IAAMC,WAA2C,GAAG,SAA9CA,WAA8C,OAUc;AAAA;;AAAA,MATXC,EASW,QATXA,EASW;AAAA,MARXd,QAQW,QARXA,QAQW;AAAA,MAPXe,KAOW,QAPXA,KAOW;AAAA,MANXC,eAMW,QANXA,eAMW;AAAA,MALXd,WAKW,QALXA,WAKW;AAAA,MAJXe,MAIW,QAJXA,MAIW;AAAA,MAHXC,QAGW,QAHXA,QAGW;AAAA,MAFXrB,MAEW,QAFXA,MAEW;AAAA,MADXsB,IACW,QADXA,IACW;;AAChE,MAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,CAAD,EAAY;AAC7B,QAAIA,CAAC,CAACC,OAAF,KAAc,EAAd,IAAoB,CAACJ,QAAzB,EAAmC;AACjCD,MAAAA,MAAM,CAAC,CAACjB,QAAF,CAAN;AACD;AACF,GAJD;;AAMAmB,EAAAA,IAAI,YAAGA,IAAH,yCAAW,QAAf;AAEA,sBACE,oBAAC,iBAAD;AAAmB,IAAA,GAAG,EAAEL,EAAxB;AAA4B,IAAA,MAAM,EAAEjB,MAApC;AACmB,IAAA,OAAO,EAAE;AAAA,aAAM,CAACqB,QAAD,IAAaD,MAAM,CAAC,CAACjB,QAAF,CAAzB;AAAA,KAD5B;AAEmB,IAAA,WAAW,EAAE,qBAAAqB,CAAC;AAAA,aAAIA,CAAC,CAACE,cAAF,EAAJ;AAAA,KAFjC;AAGmB,IAAA,SAAS,EAAEH,UAH9B;AAImB,IAAA,QAAQ,EAAEF,QAJ7B;AAKmB,IAAA,SAAS,EAAEC,IAAI,CAACK,MAAL,CAAYN,QAAQ,GAAG,WAAH,GAAiB,EAArC,CAL9B;AAMmB,IAAA,QAAQ,EAAEA,QAAQ,GAAG,CAAC,CAAJ,GAAQ,CAN7C;AAOmB,IAAA,WAAW,EAAEhB,WAPhC;AAQmB,IAAA,QAAQ,EAAEF;AAR7B,kBASE;AAAK,IAAA,SAAS,EAAE,MAAhB;AAAwB,IAAA,EAAE,EAAEc;AAA5B,KACGd,QAAQ,gBAAG,oBAAC,0BAAD;AAAe,IAAA,IAAI,EAAC;AAApB,IAAH,gBAAkC,oBAAC,2BAAD;AAAgB,IAAA,IAAI,EAAC;AAArB,IAD7C,CATF,eAYE;AAAK,IAAA,SAAS,EAAE;AAAhB,KACGe,KAAK,iBAAI;AAAO,IAAA,OAAO,EAAED;AAAhB,KAAqBC,KAArB,CADZ,EAEGC,eAAe,KAAKS,SAApB,iBAAiC,kCAAOT,eAAP,CAFpC,CAZF,CADF;AAmBD,CAtCD;;;AAXEF,EAAAA,E;AACAd,EAAAA,Q;AACAiB,EAAAA,M;AACAF,EAAAA,K;AACAC,EAAAA,e;AACAd,EAAAA,W;AACAgB,EAAAA,Q;AACArB,EAAAA,M;AACAsB,EAAAA,I,4BAAO,O,EAAU,Q,EAAW,O;;eA2CfN,W","sourcesContent":["import * as React from 'react';\nimport styled, {css} from 'styled-components';\nimport {RadioButtonOff, RadioButtonOn} from '../icons/systemicons/SystemIcons';\nimport {COLORS, ComponentTextStyle} from '../styles';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentXXSStyling} from '../styles/typography';\n\nconst StyledRadioButton = styled.div<{ margin?: string, disabled?: boolean, showWarning?: boolean, selected?: boolean }>`\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ${props => (props.margin ? `margin: ${props.margin};` : '')}\n cursor: pointer;\n \n color: ${COLORS.black};\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ${props => (props.selected ? COLORS.primary_500 : props.showWarning ? COLORS.warning_400 : COLORS.neutral_600)};\n }\n }\n\n .label {\n user-select: none;\n display: flex;\n flex-direction: column;\n\n label{\n cursor: inherit;\n }\n\n span {\n ${ComponentXXSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n }\n\n &.small {\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.medium {\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.large {\n ${ComponentLStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ${COLORS.white};\n box-shadow: 0 0 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ${COLORS.neutral_600};\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ${COLORS.primary_20};\n\n svg {\n color: ${COLORS.primary_700};\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ${COLORS.primary_100};\n box-shadow: none;\n\n svg {\n color: ${COLORS.primary_800};\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ${COLORS.neutral_300};\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ${COLORS.white};\n }\n \n .icon svg {\n color: ${COLORS.neutral_300};\n }\n }\n`;\n\ninterface Props {\n id: string;\n selected: boolean;\n select: (selected: boolean) => void;\n label?: string;\n additionalLabel?: string;\n showWarning?: boolean;\n disabled?: boolean;\n margin?: string;\n size?: 'small' | 'medium' | 'large';\n}\n\nconst RadioButton: React.FunctionComponent<Props> = ({\n id,\n selected,\n label,\n additionalLabel,\n showWarning,\n select,\n disabled,\n margin,\n size\n }: Props) => {\n const onKeyPress = (e: any) => {\n if (e.keyCode === 13 && !disabled) {\n select(!selected);\n }\n };\n\n size = size ?? 'medium';\n\n return (\n <StyledRadioButton key={id} margin={margin}\n onClick={() => !disabled && select(!selected)}\n onMouseDown={e => e.preventDefault()}\n onKeyDown={onKeyPress}\n disabled={disabled}\n className={size.concat(disabled ? ' disabled' : '')}\n tabIndex={disabled ? -1 : 0}\n showWarning={showWarning}\n selected={selected}>\n <div className={'icon'} id={id}>\n {selected ? <RadioButtonOn size=\"24px\"/> : <RadioButtonOff size=\"24px\"/>}\n </div>\n <div className={'label'}>\n {label && <label htmlFor={id}>{label}</label>}\n {additionalLabel !== undefined && <span>{additionalLabel}</span>}\n </div>\n </StyledRadioButton>\n );\n};\n\nexport default RadioButton;\n"],"file":"RadioButton.js"}
1
+ {"version":3,"sources":["../../../src/InputFields/RadioButton.tsx"],"names":["StyledRadioButton","styled","div","props","margin","COLORS","black","selected","primary_500","showWarning","warning_400","neutral_600","ComponentTextStyle","Regular","white","primary_20","primary_700","primary_100","primary_800","neutral_300","RadioButton","React","forwardRef","ref","id","label","additionalLabel","select","disabled","iconPointerEventsTransparent","size","onKeyPress","e","keyCode","Size","Medium","preventDefault","toString","toLowerCase","concat","undefined"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled, {css} from 'styled-components';\nimport {RadioButtonOff, RadioButtonOn} from '../icons/systemicons/SystemIcons';\nimport {COLORS, ComponentTextStyle} from '../styles';\nimport { Size } from '../types';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentXXSStyling} from '../styles/typography';\n\nconst StyledRadioButton = styled.div<{ margin?: string, disabled?: boolean, showWarning?: boolean, selected?: boolean }>`\n display: flex;\n flex-direction: row;\n width: 100%;\n min-height: 48px;\n min-width: 48px;\n align-items: center;\n\n ${props => (props.margin ? `margin: ${props.margin};` : '')}\n cursor: pointer;\n \n color: ${COLORS.black};\n\n .pointerTransparent {\n pointer-events: none;\n }\n\n .icon {\n margin: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n\n svg {\n color: ${props => (props.selected ? COLORS.primary_500 : props.showWarning ? COLORS.warning_400 : COLORS.neutral_600)};\n }\n }\n\n .label {\n user-select: none;\n display: flex;\n flex-direction: column;\n\n label{\n cursor: inherit;\n }\n\n span {\n ${ComponentXXSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n }\n\n &.small {\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.medium {\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &.large {\n ${ComponentLStyling(ComponentTextStyle.Regular, COLORS.black)}\n }\n\n &:not(.disabled):focus {\n outline: none;\n\n .icon {\n background-color: ${COLORS.white};\n box-shadow: 0 0 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n\n svg {\n color: ${COLORS.neutral_600};\n }\n }\n }\n\n &:not(.disabled):hover {\n .icon {\n background-color: ${COLORS.primary_20};\n\n svg {\n color: ${COLORS.primary_700};\n }\n }\n }\n\n &:not(.disabled):active {\n .icon {\n background: ${COLORS.primary_100};\n box-shadow: none;\n\n svg {\n color: ${COLORS.primary_800};\n }\n }\n }\n\n &.disabled {\n box-shadow: none;\n cursor: not-allowed;\n\n color: ${COLORS.neutral_300};\n\n .icon,\n .label {\n pointer-events: none;\n }\n\n .icon{\n background-color: ${COLORS.white};\n }\n \n .icon svg {\n color: ${COLORS.neutral_300};\n }\n }\n`;\n\ninterface Props {\n id: string;\n selected: boolean;\n select: (selected: boolean) => void;\n label?: string;\n additionalLabel?: string;\n showWarning?: boolean;\n disabled?: boolean;\n iconPointerEventsTransparent?: boolean;\n margin?: string;\n size?: Size;\n}\n\nconst RadioButton = React.forwardRef<HTMLDivElement, Props>(({\n id,\n selected,\n label,\n additionalLabel,\n showWarning,\n select,\n disabled,\n margin,\n iconPointerEventsTransparent,\n size\n}: Props, ref) => {\n const onKeyPress = (e: any) => {\n if (e.keyCode === 13 && !disabled) {\n select(!selected);\n }\n };\n\n size = size ?? Size.Medium;\n\n return (\n <StyledRadioButton key={id} margin={margin}\n ref={ref}\n onClick={() => !disabled && select(!selected)}\n onMouseDown={e => e.preventDefault()}\n onKeyDown={onKeyPress}\n disabled={disabled}\n className={size.toString().toLowerCase().concat(disabled ? ' disabled' : '')}\n tabIndex={disabled ? -1 : 0}\n showWarning={showWarning}\n selected={selected}>\n <div className={'icon'} id={id}>\n { selected && <RadioButtonOn className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>}\n { !selected && <RadioButtonOff className={iconPointerEventsTransparent ? \"pointerTransparent\" : \"\"} size=\"24px\"/>}\n </div>\n <div className={'label'}>\n {label && <label htmlFor={id}>{label}</label>}\n {additionalLabel !== undefined && <span>{additionalLabel}</span>}\n </div>\n </StyledRadioButton>\n );\n});\n\nexport default RadioButton;\n"],"file":"RadioButton.js"}
@@ -63,7 +63,7 @@ var SearchBarInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
63
63
  id: id,
64
64
  "data-testid": id,
65
65
  className: size ? size : '',
66
- tabIndex: -1,
66
+ tabIndex: 0,
67
67
  disabled: disabled,
68
68
  onChange: function onChange(e) {
69
69
  return setSearchTerm(e.target.value);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/InputFields/components/SearchBarInput.tsx"],"names":["Search","styled","input","attrs","type","ComponentTextStyle","Regular","COLORS","black","Italic","neutral_500","BigSearch","neutral_600","BREAKPOINTS","MEDIUM","SearchBarInput","React","forwardRef","props","ref","id","searchTerm","setSearchTerm","enterSearch","placeholder","disabled","onKeyDown","size","setTabbedHere","onBlur","isPressingEnter","e","key","preventDefault","stopPropagation","target","value"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../../styles/index';\nimport {ComponentMStyling, ComponentSStyling} from '../../styles/typography';\n\nexport const Search = styled.input.attrs(() => ({ type: 'search' }))`\n appearance: none;\n width: calc(100% - 96px);\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n /* To prevent browser putting its own cross inside the search bar */\n ::-ms-clear {\n display: none;\n width: 0;\n height: 0;\n }\n ::-ms-reveal {\n display: none;\n width: 0;\n height: 0;\n }\n ::-webkit-search-decoration,\n ::-webkit-search-cancel-button,\n ::-webkit-search-results-button,\n ::-webkit-search-results-decoration {\n display: none;\n }\n\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_500)}\n }\n\n &:focus {\n outline-width: 0;\n }\n`;\n\nexport const BigSearch = styled(Search)`\n height: 32px;\n border-width: 0;\n margin-left: 50px;\n outline: none;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n ${BREAKPOINTS.MEDIUM} {\n ::placeholder {\n ${ComponentMStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &.small {\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &.medium {\n ::placeholder {\n ${ComponentMStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &:disabled {\n background: transparent;\n border: none;\n }\n`;\n\ntype SearchBarInputProps = {\n id: string;\n searchTerm?: string;\n setSearchTerm: (term: string) => void;\n enterSearch: (e: any) => void;\n placeholder?: string;\n disabled?: boolean;\n onKeyDown?: (e: React.KeyboardEvent) => void;\n size?: 'small' | 'medium';\n setTabbedHere: (tabbedHere: boolean) => void;\n onBlur?: (e: any) => void;\n};\n\nconst SearchBarInput = React.forwardRef<HTMLInputElement, SearchBarInputProps>((props: SearchBarInputProps, ref) => {\n const { id, searchTerm, setSearchTerm, enterSearch, placeholder, disabled, onKeyDown, size, setTabbedHere, onBlur } = props;\n const isPressingEnter = (e: any) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n e.stopPropagation();\n return true;\n }\n return false;\n };\n\n return (\n <BigSearch\n placeholder={disabled ? '' : placeholder}\n id={id}\n data-testid={id}\n className={size ? size : ''}\n tabIndex={-1}\n disabled={disabled}\n onChange={(e: any) => setSearchTerm(e.target.value)}\n value={searchTerm}\n ref={ref}\n onBlur={(e) => (onBlur ? onBlur(e) : setTabbedHere(false))}\n onKeyDown={onKeyDown}\n onKeyPress={(e: any) => (isPressingEnter(e) ? enterSearch(e) : null)}\n />\n );\n});\n\nexport default SearchBarInput;\n"],"file":"SearchBarInput.js"}
1
+ {"version":3,"sources":["../../../../src/InputFields/components/SearchBarInput.tsx"],"names":["Search","styled","input","attrs","type","ComponentTextStyle","Regular","COLORS","black","Italic","neutral_500","BigSearch","neutral_600","BREAKPOINTS","MEDIUM","SearchBarInput","React","forwardRef","props","ref","id","searchTerm","setSearchTerm","enterSearch","placeholder","disabled","onKeyDown","size","setTabbedHere","onBlur","isPressingEnter","e","key","preventDefault","stopPropagation","target","value"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../../styles/index';\nimport { ComponentMStyling, ComponentSStyling } from '../../styles/typography';\n\nexport const Search = styled.input.attrs(() => ({ type: 'search' }))`\n appearance: none;\n width: calc(100% - 96px);\n ${ComponentSStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n /* To prevent browser putting its own cross inside the search bar */\n ::-ms-clear {\n display: none;\n width: 0;\n height: 0;\n }\n ::-ms-reveal {\n display: none;\n width: 0;\n height: 0;\n }\n ::-webkit-search-decoration,\n ::-webkit-search-cancel-button,\n ::-webkit-search-results-button,\n ::-webkit-search-results-decoration {\n display: none;\n }\n\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_500)}\n }\n\n &:focus {\n outline-width: 0;\n }\n`;\n\nexport const BigSearch = styled(Search)`\n height: 32px;\n border-width: 0;\n margin-left: 50px;\n outline: none;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n ${BREAKPOINTS.MEDIUM} {\n ::placeholder {\n ${ComponentMStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &.small {\n ::placeholder {\n ${ComponentSStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &.medium {\n ::placeholder {\n ${ComponentMStyling(ComponentTextStyle.Italic, COLORS.neutral_600)}\n }\n }\n &:disabled {\n background: transparent;\n border: none;\n }\n`;\n\ntype SearchBarInputProps = {\n id: string;\n searchTerm?: string;\n setSearchTerm: (term: string) => void;\n enterSearch: (e: any) => void;\n placeholder?: string;\n disabled?: boolean;\n onKeyDown?: (e: React.KeyboardEvent) => void;\n size?: 'small' | 'medium';\n setTabbedHere: (tabbedHere: boolean) => void;\n onBlur?: (e: any) => void;\n};\n\nconst SearchBarInput = React.forwardRef<HTMLInputElement, SearchBarInputProps>((props: SearchBarInputProps, ref) => {\n const { id, searchTerm, setSearchTerm, enterSearch, placeholder, disabled, onKeyDown, size, setTabbedHere, onBlur } = props;\n const isPressingEnter = (e: any) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n e.stopPropagation();\n return true;\n }\n return false;\n };\n\n return (\n <BigSearch\n placeholder={disabled ? '' : placeholder}\n id={id}\n data-testid={id}\n className={size ? size : ''}\n tabIndex={0}\n disabled={disabled}\n onChange={(e: any) => setSearchTerm(e.target.value)}\n value={searchTerm}\n ref={ref}\n onBlur={(e) => (onBlur ? onBlur(e) : setTabbedHere(false))}\n onKeyDown={onKeyDown}\n onKeyPress={(e: any) => (isPressingEnter(e) ? enterSearch(e) : null)}\n />\n );\n});\n\nexport default SearchBarInput;\n"],"file":"SearchBarInput.js"}
@@ -1,11 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import { ButtonProps } from '../Button/Button';
3
+ import { Size } from '../types';
3
4
  interface ButtonAction extends Pick<ButtonProps, 'variant'> {
4
5
  action: () => void;
5
6
  text: string;
6
7
  }
7
8
  interface NewModalProps {
8
- size?: 'small' | 'medium' | 'large';
9
+ size?: Size;
9
10
  isModalOpen: boolean;
10
11
  closeModalAndClearInput: any;
11
12
  title?: string;
@@ -17,6 +17,8 @@ var _SystemIcons = require("../icons/systemicons/SystemIcons");
17
17
 
18
18
  var _styles = require("../styles");
19
19
 
20
+ var _types = require("../types");
21
+
20
22
  var _ModalContainer = _interopRequireDefault(require("./ModalContainer"));
21
23
 
22
24
  var _ModalStyles = require("./ModalStyles");
@@ -59,13 +61,13 @@ var ModalDialog = function ModalDialog(_ref) {
59
61
 
60
62
  var getMinWidth = function getMinWidth() {
61
63
  switch (size) {
62
- case 'small':
64
+ case _types.Size.Small:
63
65
  return '320px';
64
66
 
65
- case 'medium':
67
+ case _types.Size.Medium:
66
68
  return '400px';
67
69
 
68
- case 'large':
70
+ case _types.Size.Large:
69
71
  return '480px';
70
72
 
71
73
  default:
@@ -75,13 +77,13 @@ var ModalDialog = function ModalDialog(_ref) {
75
77
 
76
78
  var getMaxWidth = function getMaxWidth() {
77
79
  switch (size) {
78
- case 'small':
80
+ case _types.Size.Small:
79
81
  return '512px';
80
82
 
81
- case 'medium':
83
+ case _types.Size.Medium:
82
84
  return '400px';
83
85
 
84
- case 'large':
86
+ case _types.Size.Large:
85
87
  return '588px';
86
88
 
87
89
  default:
@@ -91,13 +93,13 @@ var ModalDialog = function ModalDialog(_ref) {
91
93
 
92
94
  var getImageHeight = function getImageHeight() {
93
95
  switch (size) {
94
- case 'small':
96
+ case _types.Size.Small:
95
97
  return 160;
96
98
 
97
- case 'medium':
99
+ case _types.Size.Medium:
98
100
  return 200;
99
101
 
100
- case 'large':
102
+ case _types.Size.Large:
101
103
  return 240;
102
104
 
103
105
  default:
@@ -107,13 +109,13 @@ var ModalDialog = function ModalDialog(_ref) {
107
109
 
108
110
  var getMarginBottom = function getMarginBottom() {
109
111
  switch (size) {
110
- case 'small':
112
+ case _types.Size.Small:
111
113
  return '16px';
112
114
 
113
- case 'medium':
115
+ case _types.Size.Medium:
114
116
  return '24px';
115
117
 
116
- case 'large':
118
+ case _types.Size.Large:
117
119
  return '32px';
118
120
 
119
121
  default:
@@ -233,7 +235,7 @@ var ModalDialog = function ModalDialog(_ref) {
233
235
  size: size
234
236
  }, buttons === null || buttons === void 0 ? void 0 : buttons.map(function (b) {
235
237
  return /*#__PURE__*/React.createElement(_Button.Button, {
236
- size: size === 'large' ? 'big' : size === 'medium' ? 'normal' : size,
238
+ size: size,
237
239
  onClick: b.action,
238
240
  variant: b.variant
239
241
  }, b.text);
@@ -242,7 +244,6 @@ var ModalDialog = function ModalDialog(_ref) {
242
244
 
243
245
  exports.ModalDialog = ModalDialog;
244
246
  ModalDialog.propTypes = {
245
- size: _propTypes.default.oneOf(['small', 'medium', 'large']),
246
247
  isModalOpen: _propTypes.default.bool.isRequired,
247
248
  closeModalAndClearInput: _propTypes.default.any.isRequired,
248
249
  title: _propTypes.default.string,