@dhis2-ui/select 9.11.0 → 9.11.1-beta.2

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 (169) hide show
  1. package/build/cjs/index.js +0 -6
  2. package/build/cjs/locales/index.js +3 -69
  3. package/build/cjs/multi-select/__tests__/multi-select.test.js +1 -7
  4. package/build/cjs/multi-select/__tests__/selection-list.test.js +7 -18
  5. package/build/cjs/multi-select/features/accepts_blur_cb/index.js +1 -2
  6. package/build/cjs/multi-select/features/accepts_focus_cb/index.js +1 -2
  7. package/build/cjs/multi-select/features/accepts_initial_focus/index.js +1 -2
  8. package/build/cjs/multi-select/features/accepts_loading/index.js +0 -1
  9. package/build/cjs/multi-select/features/accepts_max_height/index.js +1 -2
  10. package/build/cjs/multi-select/features/accepts_placeholder/index.js +0 -1
  11. package/build/cjs/multi-select/features/accepts_prefix/index.js +0 -1
  12. package/build/cjs/multi-select/features/allows_invalid_options/index.js +0 -1
  13. package/build/cjs/multi-select/features/allows_selecting/index.js +2 -3
  14. package/build/cjs/multi-select/features/can_be_cleared/index.js +1 -2
  15. package/build/cjs/multi-select/features/can_be_disabled/index.js +0 -1
  16. package/build/cjs/multi-select/features/can_be_empty/index.js +0 -1
  17. package/build/cjs/multi-select/features/can_be_filtered/index.js +0 -1
  18. package/build/cjs/multi-select/features/can_be_opened_and_closed/index.js +0 -1
  19. package/build/cjs/multi-select/features/common/index.js +2 -3
  20. package/build/cjs/multi-select/features/duplicate_option_values/index.js +0 -1
  21. package/build/cjs/multi-select/features/menu_width_matches_input/index.js +1 -2
  22. package/build/cjs/multi-select/features/position/index.js +4 -5
  23. package/build/cjs/multi-select/features/position.feature +0 -1
  24. package/build/cjs/multi-select/features/shows_selections/index.js +0 -1
  25. package/build/cjs/multi-select/filterable-menu.js +1 -8
  26. package/build/cjs/multi-select/index.js +0 -1
  27. package/build/cjs/multi-select/input.js +6 -19
  28. package/build/cjs/multi-select/menu.js +16 -23
  29. package/build/cjs/multi-select/multi-select.e2e.stories.js +675 -0
  30. package/build/cjs/multi-select/multi-select.js +4 -21
  31. package/build/cjs/multi-select/{multi-select.stories.js → multi-select.prod.stories.js} +62 -101
  32. package/build/cjs/multi-select/selection-list.js +10 -18
  33. package/build/cjs/multi-select-field/__tests__/multi-select-field.test.js +1 -7
  34. package/build/cjs/multi-select-field/features/accepts_help_text/index.js +0 -1
  35. package/build/cjs/multi-select-field/features/accepts_label/index.js +0 -1
  36. package/build/cjs/multi-select-field/features/accepts_validation_text/index.js +0 -1
  37. package/build/cjs/multi-select-field/features/can_be_required/index.js +0 -1
  38. package/build/cjs/multi-select-field/features/has_default_clear_text/index.js +0 -1
  39. package/build/cjs/multi-select-field/features/has_default_empty_text/index.js +0 -1
  40. package/build/cjs/multi-select-field/features/has_default_filter_nomatch_text/index.js +0 -1
  41. package/build/cjs/multi-select-field/features/has_default_filter_placeholder/index.js +0 -1
  42. package/build/cjs/multi-select-field/features/has_default_loading_text/index.js +0 -1
  43. package/build/cjs/multi-select-field/index.js +0 -1
  44. package/build/cjs/multi-select-field/multi-select-field.e2e.stories.js +89 -0
  45. package/build/cjs/multi-select-field/multi-select-field.js +10 -51
  46. package/build/cjs/multi-select-field/{multi-select-field.stories.js → multi-select-field.prod.stories.js} +31 -39
  47. package/build/cjs/multi-select-option/index.js +0 -1
  48. package/build/cjs/multi-select-option/multi-select-option.js +4 -14
  49. package/build/cjs/select/__tests__/select.test.js +1 -7
  50. package/build/cjs/select/debounce/debounce.js +1 -8
  51. package/build/cjs/select/debounce/debounce.spec.js +0 -1
  52. package/build/cjs/select/empty.js +2 -9
  53. package/build/cjs/select/filter-input.js +3 -11
  54. package/build/cjs/select/filterable-menu.js +15 -29
  55. package/build/cjs/select/index.js +0 -8
  56. package/build/cjs/select/input-clear-button.js +3 -11
  57. package/build/cjs/select/input-placeholder.js +2 -11
  58. package/build/cjs/select/input-prefix.js +2 -11
  59. package/build/cjs/select/input-wrapper.js +2 -11
  60. package/build/cjs/select/loading.js +3 -12
  61. package/build/cjs/select/menu-wrapper.js +4 -13
  62. package/build/cjs/select/no-match.js +2 -9
  63. package/build/cjs/select/option-helpers.js +9 -18
  64. package/build/cjs/select/select.js +23 -69
  65. package/build/cjs/single-select/__tests__/selection.test.js +7 -18
  66. package/build/cjs/single-select/__tests__/single-select.test.js +1 -7
  67. package/build/cjs/single-select/features/accepts_blur_cb/index.js +1 -2
  68. package/build/cjs/single-select/features/accepts_focus_cb/index.js +1 -2
  69. package/build/cjs/single-select/features/accepts_initial_focus/index.js +1 -2
  70. package/build/cjs/single-select/features/accepts_loading/index.js +0 -1
  71. package/build/cjs/single-select/features/accepts_max_height/index.js +1 -2
  72. package/build/cjs/single-select/features/accepts_placeholder/index.js +0 -1
  73. package/build/cjs/single-select/features/accepts_prefix/index.js +0 -1
  74. package/build/cjs/single-select/features/allows_invalid_options/index.js +0 -1
  75. package/build/cjs/single-select/features/allows_selecting/index.js +2 -3
  76. package/build/cjs/single-select/features/can_be_cleared/index.js +1 -2
  77. package/build/cjs/single-select/features/can_be_disabled/index.js +0 -1
  78. package/build/cjs/single-select/features/can_be_empty/index.js +0 -1
  79. package/build/cjs/single-select/features/can_be_filtered/index.js +0 -1
  80. package/build/cjs/single-select/features/can_be_opened_and_closed/index.js +0 -1
  81. package/build/cjs/single-select/features/common/index.js +2 -3
  82. package/build/cjs/single-select/features/duplicate_option_values/index.js +0 -1
  83. package/build/cjs/single-select/features/menu_width_matches_input/index.js +1 -2
  84. package/build/cjs/single-select/features/position/index.js +3 -4
  85. package/build/cjs/single-select/features/shows_selections/index.js +0 -1
  86. package/build/cjs/single-select/filterable-menu.js +1 -8
  87. package/build/cjs/single-select/index.js +0 -1
  88. package/build/cjs/single-select/input.js +6 -19
  89. package/build/cjs/single-select/menu.js +12 -21
  90. package/build/cjs/single-select/selection.js +5 -17
  91. package/build/cjs/single-select/single-select.e2e.stories.js +633 -0
  92. package/build/cjs/single-select/single-select.js +4 -25
  93. package/build/cjs/single-select/{single-select.stories.js → single-select.prod.stories.js} +58 -95
  94. package/build/cjs/single-select-field/__tests__/single-select-field.test.js +1 -7
  95. package/build/cjs/single-select-field/features/accepts_help_text/index.js +0 -1
  96. package/build/cjs/single-select-field/features/accepts_label/index.js +0 -1
  97. package/build/cjs/single-select-field/features/accepts_validation_text/index.js +0 -1
  98. package/build/cjs/single-select-field/features/can_be_required/index.js +0 -1
  99. package/build/cjs/single-select-field/features/has_default_clear_text/index.js +0 -1
  100. package/build/cjs/single-select-field/features/has_default_empty_text/index.js +0 -1
  101. package/build/cjs/single-select-field/features/has_default_filter_nomatch_text/index.js +0 -1
  102. package/build/cjs/single-select-field/features/has_default_filter_placeholder/index.js +0 -1
  103. package/build/cjs/single-select-field/features/has_default_loading_text/index.js +0 -1
  104. package/build/cjs/single-select-field/index.js +0 -1
  105. package/build/cjs/single-select-field/single-select-field.e2e.stories.js +89 -0
  106. package/build/cjs/single-select-field/single-select-field.js +10 -51
  107. package/build/cjs/single-select-field/{single-select-field.stories.js → single-select-field.prod.stories.js} +31 -39
  108. package/build/cjs/single-select-option/index.js +0 -1
  109. package/build/cjs/single-select-option/single-select-option.js +2 -10
  110. package/build/es/multi-select/__tests__/selection-list.test.js +6 -3
  111. package/build/es/multi-select/features/accepts_blur_cb/index.js +1 -1
  112. package/build/es/multi-select/features/accepts_focus_cb/index.js +1 -1
  113. package/build/es/multi-select/features/accepts_initial_focus/index.js +1 -1
  114. package/build/es/multi-select/features/accepts_max_height/index.js +1 -1
  115. package/build/es/multi-select/features/allows_selecting/index.js +2 -2
  116. package/build/es/multi-select/features/can_be_cleared/index.js +1 -1
  117. package/build/es/multi-select/features/common/index.js +2 -2
  118. package/build/es/multi-select/features/menu_width_matches_input/index.js +1 -1
  119. package/build/es/multi-select/features/position/index.js +4 -4
  120. package/build/es/multi-select/features/position.feature +0 -1
  121. package/build/es/multi-select/filterable-menu.js +0 -2
  122. package/build/es/multi-select/input.js +5 -9
  123. package/build/es/multi-select/menu.js +15 -17
  124. package/build/es/multi-select/{multi-select.stories.e2e.js → multi-select.e2e.stories.js} +74 -42
  125. package/build/es/multi-select/multi-select.js +3 -9
  126. package/build/es/multi-select/{multi-select.stories.js → multi-select.prod.stories.js} +40 -24
  127. package/build/es/multi-select/selection-list.js +9 -12
  128. package/build/es/multi-select-field/{multi-select-field.stories.e2e.js → multi-select-field.e2e.stories.js} +18 -9
  129. package/build/es/multi-select-field/multi-select-field.js +4 -35
  130. package/build/es/multi-select-field/{multi-select-field.stories.js → multi-select-field.prod.stories.js} +19 -9
  131. package/build/es/multi-select-option/multi-select-option.js +3 -5
  132. package/build/es/select/debounce/debounce.js +1 -6
  133. package/build/es/select/empty.js +1 -3
  134. package/build/es/select/filter-input.js +2 -4
  135. package/build/es/select/filterable-menu.js +12 -15
  136. package/build/es/select/input-clear-button.js +2 -4
  137. package/build/es/select/input-placeholder.js +1 -5
  138. package/build/es/select/input-prefix.js +1 -5
  139. package/build/es/select/input-wrapper.js +1 -3
  140. package/build/es/select/loading.js +2 -2
  141. package/build/es/select/menu-wrapper.js +3 -5
  142. package/build/es/select/no-match.js +1 -3
  143. package/build/es/select/option-helpers.js +10 -6
  144. package/build/es/select/select.js +22 -51
  145. package/build/es/single-select/__tests__/selection.test.js +6 -3
  146. package/build/es/single-select/features/accepts_blur_cb/index.js +1 -1
  147. package/build/es/single-select/features/accepts_focus_cb/index.js +1 -1
  148. package/build/es/single-select/features/accepts_initial_focus/index.js +1 -1
  149. package/build/es/single-select/features/accepts_max_height/index.js +1 -1
  150. package/build/es/single-select/features/allows_selecting/index.js +2 -2
  151. package/build/es/single-select/features/can_be_cleared/index.js +1 -1
  152. package/build/es/single-select/features/common/index.js +2 -2
  153. package/build/es/single-select/features/menu_width_matches_input/index.js +1 -1
  154. package/build/es/single-select/features/position/index.js +3 -3
  155. package/build/es/single-select/input.js +5 -9
  156. package/build/es/single-select/menu.js +11 -15
  157. package/build/es/single-select/selection.js +4 -9
  158. package/build/es/single-select/{single-select.stories.e2e.js → single-select.e2e.stories.js} +68 -38
  159. package/build/es/single-select/single-select.js +3 -13
  160. package/build/es/single-select/{single-select.stories.js → single-select.prod.stories.js} +37 -24
  161. package/build/es/single-select-field/{single-select-field.stories.e2e.js → single-select-field.e2e.stories.js} +18 -9
  162. package/build/es/single-select-field/single-select-field.js +4 -35
  163. package/build/es/single-select-field/{single-select-field.stories.js → single-select-field.prod.stories.js} +19 -9
  164. package/build/es/single-select-option/single-select-option.js +1 -3
  165. package/package.json +18 -18
  166. package/build/cjs/multi-select/multi-select.stories.e2e.js +0 -618
  167. package/build/cjs/multi-select-field/multi-select-field.stories.e2e.js +0 -73
  168. package/build/cjs/single-select/single-select.stories.e2e.js +0 -579
  169. package/build/cjs/single-select-field/single-select-field.stories.e2e.js +0 -73
@@ -39,15 +39,9 @@ Object.defineProperty(exports, "SingleSelectOption", {
39
39
  return _index6.SingleSelectOption;
40
40
  }
41
41
  });
42
-
43
42
  var _index = require("./multi-select/index.js");
44
-
45
43
  var _index2 = require("./multi-select-field/index.js");
46
-
47
44
  var _index3 = require("./multi-select-option/index.js");
48
-
49
45
  var _index4 = require("./single-select/index.js");
50
-
51
46
  var _index5 = require("./single-select-field/index.js");
52
-
53
47
  var _index6 = require("./single-select-option/index.js");
@@ -4,73 +4,39 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _d2I18n = _interopRequireDefault(require("@dhis2/d2-i18n"));
9
-
10
8
  var _translations = _interopRequireDefault(require("./ar/translations.json"));
11
-
12
9
  var _translations2 = _interopRequireDefault(require("./ar_IQ/translations.json"));
13
-
14
10
  var _translations3 = _interopRequireDefault(require("./ckb/translations.json"));
15
-
16
11
  var _translations4 = _interopRequireDefault(require("./cs/translations.json"));
17
-
18
12
  var _translations5 = _interopRequireDefault(require("./da/translations.json"));
19
-
20
13
  var _translations6 = _interopRequireDefault(require("./en/translations.json"));
21
-
22
14
  var _translations7 = _interopRequireDefault(require("./es/translations.json"));
23
-
24
15
  var _translations8 = _interopRequireDefault(require("./es_419/translations.json"));
25
-
26
16
  var _translations9 = _interopRequireDefault(require("./fr/translations.json"));
27
-
28
17
  var _translations10 = _interopRequireDefault(require("./id/translations.json"));
29
-
30
18
  var _translations11 = _interopRequireDefault(require("./km/translations.json"));
31
-
32
19
  var _translations12 = _interopRequireDefault(require("./lo/translations.json"));
33
-
34
20
  var _translations13 = _interopRequireDefault(require("./my/translations.json"));
35
-
36
21
  var _translations14 = _interopRequireDefault(require("./nb/translations.json"));
37
-
38
22
  var _translations15 = _interopRequireDefault(require("./nl/translations.json"));
39
-
40
23
  var _translations16 = _interopRequireDefault(require("./prs/translations.json"));
41
-
42
24
  var _translations17 = _interopRequireDefault(require("./ps/translations.json"));
43
-
44
25
  var _translations18 = _interopRequireDefault(require("./pt/translations.json"));
45
-
46
26
  var _translations19 = _interopRequireDefault(require("./pt_BR/translations.json"));
47
-
48
27
  var _translations20 = _interopRequireDefault(require("./ru/translations.json"));
49
-
50
28
  var _translations21 = _interopRequireDefault(require("./sv/translations.json"));
51
-
52
29
  var _translations22 = _interopRequireDefault(require("./tet/translations.json"));
53
-
54
30
  var _translations23 = _interopRequireDefault(require("./tg/translations.json"));
55
-
56
31
  var _translations24 = _interopRequireDefault(require("./uk/translations.json"));
57
-
58
32
  var _translations25 = _interopRequireDefault(require("./ur/translations.json"));
59
-
60
33
  var _translations26 = _interopRequireDefault(require("./uz_Latn/translations.json"));
61
-
62
34
  var _translations27 = _interopRequireDefault(require("./uz_UZ_Cyrl/translations.json"));
63
-
64
35
  var _translations28 = _interopRequireDefault(require("./uz_UZ_Latn/translations.json"));
65
-
66
36
  var _translations29 = _interopRequireDefault(require("./vi/translations.json"));
67
-
68
37
  var _translations30 = _interopRequireDefault(require("./zh/translations.json"));
69
-
70
38
  var _translations31 = _interopRequireDefault(require("./zh_CN/translations.json"));
71
-
72
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
73
-
39
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
74
40
  //------------------------------------------------------------------------------
75
41
  // <auto-generated>
76
42
  // This code was generated by d2-i18n-generate.
@@ -79,69 +45,37 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
79
45
  // the code is regenerated.
80
46
  // </auto-generated>
81
47
  //------------------------------------------------------------------------------
82
- const namespace = 'default';
83
48
 
49
+ const namespace = 'default';
84
50
  _d2I18n.default.addResources('ar', namespace, _translations.default);
85
-
86
51
  _d2I18n.default.addResources('ar_IQ', namespace, _translations2.default);
87
-
88
52
  _d2I18n.default.addResources('ckb', namespace, _translations3.default);
89
-
90
53
  _d2I18n.default.addResources('cs', namespace, _translations4.default);
91
-
92
54
  _d2I18n.default.addResources('da', namespace, _translations5.default);
93
-
94
55
  _d2I18n.default.addResources('en', namespace, _translations6.default);
95
-
96
56
  _d2I18n.default.addResources('es', namespace, _translations7.default);
97
-
98
57
  _d2I18n.default.addResources('es_419', namespace, _translations8.default);
99
-
100
58
  _d2I18n.default.addResources('fr', namespace, _translations9.default);
101
-
102
59
  _d2I18n.default.addResources('id', namespace, _translations10.default);
103
-
104
60
  _d2I18n.default.addResources('km', namespace, _translations11.default);
105
-
106
61
  _d2I18n.default.addResources('lo', namespace, _translations12.default);
107
-
108
62
  _d2I18n.default.addResources('my', namespace, _translations13.default);
109
-
110
63
  _d2I18n.default.addResources('nb', namespace, _translations14.default);
111
-
112
64
  _d2I18n.default.addResources('nl', namespace, _translations15.default);
113
-
114
65
  _d2I18n.default.addResources('prs', namespace, _translations16.default);
115
-
116
66
  _d2I18n.default.addResources('ps', namespace, _translations17.default);
117
-
118
67
  _d2I18n.default.addResources('pt', namespace, _translations18.default);
119
-
120
68
  _d2I18n.default.addResources('pt_BR', namespace, _translations19.default);
121
-
122
69
  _d2I18n.default.addResources('ru', namespace, _translations20.default);
123
-
124
70
  _d2I18n.default.addResources('sv', namespace, _translations21.default);
125
-
126
71
  _d2I18n.default.addResources('tet', namespace, _translations22.default);
127
-
128
72
  _d2I18n.default.addResources('tg', namespace, _translations23.default);
129
-
130
73
  _d2I18n.default.addResources('uk', namespace, _translations24.default);
131
-
132
74
  _d2I18n.default.addResources('ur', namespace, _translations25.default);
133
-
134
75
  _d2I18n.default.addResources('uz_Latn', namespace, _translations26.default);
135
-
136
76
  _d2I18n.default.addResources('uz_UZ_Cyrl', namespace, _translations27.default);
137
-
138
77
  _d2I18n.default.addResources('uz_UZ_Latn', namespace, _translations28.default);
139
-
140
78
  _d2I18n.default.addResources('vi', namespace, _translations29.default);
141
-
142
79
  _d2I18n.default.addResources('zh', namespace, _translations30.default);
143
-
144
80
  _d2I18n.default.addResources('zh_CN', namespace, _translations31.default);
145
-
146
- var _default = _d2I18n.default;
147
- exports.default = _default;
81
+ var _default = exports.default = _d2I18n.default;
@@ -1,13 +1,9 @@
1
1
  "use strict";
2
2
 
3
3
  var _react = require("@testing-library/react");
4
-
5
4
  var _react2 = _interopRequireDefault(require("react"));
6
-
7
5
  var _multiSelect = require("../multi-select.js");
8
-
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
-
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
7
  describe('<MultiSelect />', () => {
12
8
  it('should call the onKeyDown callback when provided', () => {
13
9
  const onKeyDown = jest.fn();
@@ -15,13 +11,11 @@ describe('<MultiSelect />', () => {
15
11
  placeholder: "placeholder",
16
12
  onKeyDown: onKeyDown
17
13
  }));
18
-
19
14
  _react.fireEvent.keyDown(_react.screen.getByTestId('dhis2-uicore-multiselect-placeholder'), {
20
15
  key: 'Enter',
21
16
  code: 'Enter',
22
17
  charCode: 13
23
18
  });
24
-
25
19
  expect(onKeyDown).toHaveBeenCalledWith({
26
20
  selected: []
27
21
  }, expect.objectContaining({}));
@@ -1,43 +1,38 @@
1
1
  "use strict";
2
2
 
3
3
  var _react = require("@testing-library/react");
4
-
5
4
  var _react2 = _interopRequireDefault(require("react"));
6
-
7
5
  var _index = require("../../multi-select-option/index.js");
8
-
9
6
  var _selectionList = require("../selection-list.js");
10
-
11
7
  require("@testing-library/jest-dom");
12
-
13
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
-
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
9
  describe('<SelectionList />', () => {
16
10
  const env = process.env;
17
11
  beforeEach(() => {
18
12
  // Ensure process.env is also reset for cached modules
19
13
  jest.resetModules();
20
- process.env = { ...env
21
- }; // Allow spying on console.error and silence rendering errors
14
+ process.env = {
15
+ ...env
16
+ };
22
17
 
18
+ // Allow spying on console.error and silence rendering errors
23
19
  jest.spyOn(console, 'error').mockImplementation(() => {});
24
20
  });
25
21
  afterEach(() => {
26
22
  // Restore process.env to original state
27
- process.env = env; // Restore all mocks back to original values
23
+ process.env = env;
28
24
 
25
+ // Restore all mocks back to original values
29
26
  jest.restoreAllMocks();
30
27
  });
31
28
  describe('production', () => {
32
29
  it('should not throw an error for a selection that is not in the options', () => {
33
30
  process.env.NODE_ENV = 'production';
34
-
35
31
  const options = /*#__PURE__*/_react2.default.createElement(_index.MultiSelectOption, {
36
32
  key: "1",
37
33
  label: "one",
38
34
  value: "1"
39
35
  });
40
-
41
36
  const selected = ['value'];
42
37
  expect(() => {
43
38
  (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_selectionList.SelectionList, {
@@ -50,13 +45,11 @@ describe('<SelectionList />', () => {
50
45
  });
51
46
  it('should show the selection for a selection that is not in the options', () => {
52
47
  process.env.NODE_ENV = 'production';
53
-
54
48
  const options = /*#__PURE__*/_react2.default.createElement(_index.MultiSelectOption, {
55
49
  key: "1",
56
50
  label: "one",
57
51
  value: "1"
58
52
  });
59
-
60
53
  const selected = ['value'];
61
54
  const {
62
55
  getByText
@@ -70,13 +63,11 @@ describe('<SelectionList />', () => {
70
63
  });
71
64
  it('log an error for a selection that is not in the options', () => {
72
65
  process.env.NODE_ENV = 'production';
73
-
74
66
  const options = /*#__PURE__*/_react2.default.createElement(_index.MultiSelectOption, {
75
67
  key: "1",
76
68
  label: "one",
77
69
  value: "1"
78
70
  });
79
-
80
71
  const selected = ['value'];
81
72
  (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_selectionList.SelectionList, {
82
73
  selected: selected,
@@ -90,13 +81,11 @@ describe('<SelectionList />', () => {
90
81
  describe('not production', () => {
91
82
  it('should throw an error for a selection that is not in the options', () => {
92
83
  process.env.NODE_ENV = 'development';
93
-
94
84
  const options = /*#__PURE__*/_react2.default.createElement(_index.MultiSelectOption, {
95
85
  key: "1",
96
86
  label: "one",
97
87
  value: "1"
98
88
  });
99
-
100
89
  const selected = ['value'];
101
90
  expect(() => {
102
91
  (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_selectionList.SelectionList, {
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with onBlur handler is rendered', () => {
6
- cy.visitStory('MultiSelect', 'With onBlur');
5
+ cy.visitStory('MultiSelect', 'With on blur');
7
6
  });
8
7
  (0, _cypressCucumberPreprocessor.Then)('the onBlur handler is called', () => {
9
8
  cy.window().should(win => {
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with onFocus handler is rendered', () => {
6
- cy.visitStory('MultiSelect', 'With onFocus');
5
+ cy.visitStory('MultiSelect', 'With on focus');
7
6
  });
8
7
  (0, _cypressCucumberPreprocessor.Then)('the onFocus handler is called', () => {
9
8
  cy.window().should(win => {
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with initial focus is rendered', () => {
6
- cy.visitStory('MultiSelect', 'With initialFocus');
5
+ cy.visitStory('MultiSelect', 'With initial focus');
7
6
  });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with options and a loading flag is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With options and loading');
7
6
  });
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with more than ten options is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With more than ten options');
7
6
  });
8
7
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with more than three options and a 100px max-height is rendered', () => {
9
- cy.visitStory('MultiSelect', 'With more than three options and a 100px max-height');
8
+ cy.visitStory('MultiSelect', 'With more than three options and a 100 px max-height');
10
9
  });
11
10
  (0, _cypressCucumberPreprocessor.Then)('has the default max-height', () => {
12
11
  cy.get('[data-test="dhis2-uicore-select-menu-menuwrapper"]').should('have.css', 'max-height', '280px');
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with a placeholder and no selection is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With placeholder');
7
6
  });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with a prefix and no selection is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With prefix');
7
6
  });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with invalid options is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With invalid options');
7
6
  });
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with a disabled option and onChange handler is rendered', () => {
6
- cy.visitStory('MultiSelect', 'With disabled option and onChange');
5
+ cy.visitStory('MultiSelect', 'With disabled option and on change');
7
6
  });
8
7
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with custom options and onChange handler is rendered', () => {
9
- cy.visitStory('MultiSelect', 'With custom options and onChange');
8
+ cy.visitStory('MultiSelect', 'With custom options and on change');
10
9
  });
11
10
  (0, _cypressCucumberPreprocessor.When)('an option is clicked', () => {
12
11
  cy.contains('option one').click();
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a clearable MultiSelect with a selection and onchange handler is rendered', () => {
6
- cy.visitStory('MultiSelect', 'With clear button, selection and onChange');
5
+ cy.visitStory('MultiSelect', 'With clear button, selection and on change');
7
6
  });
8
7
  (0, _cypressCucumberPreprocessor.When)('the clear button is clicked', () => {
9
8
  cy.get('[data-test="dhis2-uicore-multiselect-clear"]').click();
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a disabled MultiSelect with options is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With options and disabled');
7
6
  });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('an empty MultiSelect is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'Empty');
7
6
  });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a filterable MultiSelect with options is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With filter field');
7
6
  });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with options is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With options');
7
6
  });
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with options and onChange handler is rendered', () => {
6
- cy.visitStory('MultiSelect', 'With options and onChange');
5
+ cy.visitStory('MultiSelect', 'With options and on change');
7
6
  });
8
7
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with options, a selection and onChange handler is rendered', () => {
9
- cy.visitStory('MultiSelect', 'With options, a selection and onChange');
8
+ cy.visitStory('MultiSelect', 'With options, a selection and on change');
10
9
  });
11
10
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect is rendered to which options can be added', () => {
12
11
  cy.visitStory('MultiSelect', 'With options that can be added to the input');
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with options with a duplicate value and this value is selected', () => {
6
5
  cy.visitStory('MultiSelect', 'With duplicate selected option values');
7
6
  });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with hidden sibling elements', () => {
6
5
  cy.visitStory('MultiSelect', 'Menu width changing');
7
6
  cy.get('[data-test="dhis2-uicore-multiselect"]').then($el => {
@@ -9,7 +8,7 @@ var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preproces
9
8
  });
10
9
  });
11
10
  (0, _cypressCucumberPreprocessor.When)('the button is clicked', () => {
12
- cy.get('button').click();
11
+ cy.get('[data-test="dhis2-uicore-button"]').click();
13
12
  });
14
13
  (0, _cypressCucumberPreprocessor.Then)('the siblings are displayed', () => {
15
14
  cy.get('.toggler').should('exist').and('have.length', 2);
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('there is enough space below the anchor to fit the MultiSelect menu', () => {
6
5
  cy.visitStory('MultiSelect', 'Default position');
7
6
  });
@@ -53,7 +52,7 @@ var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preproces
53
52
  const $menu = menus[0];
54
53
  const selectRect = $select.getBoundingClientRect();
55
54
  const menuRect = $menu.getBoundingClientRect();
56
- expect(menuRect.top).to.equal(selectRect.bottom);
55
+ expect(menuRect.top).to.be.closeTo(selectRect.bottom, 1);
57
56
  });
58
57
  });
59
58
  (0, _cypressCucumberPreprocessor.Then)('the bottom of the menu is aligned with the top of the input', () => {
@@ -67,7 +66,7 @@ var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preproces
67
66
  const $menu = menus[0];
68
67
  const selectRect = $select.getBoundingClientRect();
69
68
  const menuRect = $menu.getBoundingClientRect();
70
- expect(selectRect.top).to.equal(menuRect.bottom);
69
+ expect(selectRect.top).to.be.closeTo(menuRect.bottom, 1);
71
70
  });
72
71
  });
73
72
  (0, _cypressCucumberPreprocessor.Then)('it is rendered on top of the MultiSelect', () => {
@@ -96,7 +95,7 @@ var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preproces
96
95
  const $menu = menus[0];
97
96
  const selectRect = $select.getBoundingClientRect();
98
97
  const menuRect = $menu.getBoundingClientRect();
99
- expect(selectRect.left).to.equal(menuRect.left);
98
+ expect(selectRect.left).to.be.closeTo(menuRect.left, 1);
100
99
  });
101
100
  });
102
101
  (0, _cypressCucumberPreprocessor.Then)('the Menu and the Input have an equal width', () => {
@@ -110,6 +109,6 @@ var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preproces
110
109
  const $menu = menus[0];
111
110
  const inputRect = $input.getBoundingClientRect();
112
111
  const menuRect = $menu.getBoundingClientRect();
113
- expect(inputRect.width).to.equal(menuRect.width);
112
+ expect(inputRect.width).to.be.closeTo(menuRect.width, 1);
114
113
  });
115
114
  });
@@ -44,4 +44,3 @@ Feature: Position of MultiSelect menu dropdown
44
44
  Then the Input remains the same height
45
45
  And the top of the menu is aligned with the bottom of the input
46
46
  And the left of the Menu is aligned with the left of the Input
47
-
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _cypressCucumberPreprocessor = require("@badeball/cypress-cucumber-preprocessor");
4
-
5
4
  (0, _cypressCucumberPreprocessor.Given)('a MultiSelect with options and a selection is rendered', () => {
6
5
  cy.visitStory('MultiSelect', 'With options and a selection');
7
6
  });
@@ -4,17 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.FilterableMenu = void 0;
7
-
8
7
  var _propTypes = _interopRequireDefault(require("prop-types"));
9
-
10
8
  var _react = _interopRequireDefault(require("react"));
11
-
12
9
  var _index = require("../select/index.js");
13
-
14
10
  var _menu = require("./menu.js");
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
12
  const FilterableMenu = _ref => {
19
13
  let {
20
14
  dataTest,
@@ -40,7 +34,6 @@ const FilterableMenu = _ref => {
40
34
  Menu: _menu.Menu
41
35
  });
42
36
  };
43
-
44
37
  exports.FilterableMenu = FilterableMenu;
45
38
  FilterableMenu.propTypes = {
46
39
  dataTest: _propTypes.default.string.isRequired,
@@ -9,5 +9,4 @@ Object.defineProperty(exports, "MultiSelect", {
9
9
  return _multiSelect.MultiSelect;
10
10
  }
11
11
  });
12
-
13
12
  var _multiSelect = require("./multi-select.js");
@@ -4,25 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Input = void 0;
7
-
8
7
  var _style = _interopRequireDefault(require("styled-jsx/style"));
9
-
10
8
  var _propTypes = require("@dhis2/prop-types");
11
-
12
9
  var _uiConstants = require("@dhis2/ui-constants");
13
-
14
10
  var _classnames = _interopRequireDefault(require("classnames"));
15
-
16
11
  var _propTypes2 = _interopRequireDefault(require("prop-types"));
17
-
18
12
  var _react = _interopRequireDefault(require("react"));
19
-
20
13
  var _index = require("../select/index.js");
21
-
22
14
  var _selectionList = require("./selection-list.js");
23
-
24
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
-
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
26
16
  const Input = _ref => {
27
17
  let {
28
18
  selected,
@@ -38,7 +28,6 @@ const Input = _ref => {
38
28
  inputMaxHeight
39
29
  } = _ref;
40
30
  const hasSelection = selected.length > 0;
41
-
42
31
  const onClear = e => {
43
32
  const data = {
44
33
  selected: []
@@ -46,15 +35,14 @@ const Input = _ref => {
46
35
  e.stopPropagation();
47
36
  onChange(data, e);
48
37
  };
49
-
50
38
  return /*#__PURE__*/_react.default.createElement("div", {
51
39
  className: _style.default.dynamic([["64009541", [_uiConstants.colors.grey900]], ["1331770409", [inputMaxHeight]]]) + " " + ((0, _classnames.default)('root', className) || "")
52
40
  }, /*#__PURE__*/_react.default.createElement(_index.InputPrefix, {
53
41
  prefix: prefix,
54
- dataTest: "".concat(dataTest, "-prefix")
42
+ dataTest: `${dataTest}-prefix`
55
43
  }), !hasSelection && !prefix && /*#__PURE__*/_react.default.createElement(_index.InputPlaceholder, {
56
44
  placeholder: placeholder,
57
- dataTest: "".concat(dataTest, "-placeholder")
45
+ dataTest: `${dataTest}-placeholder`
58
46
  }), hasSelection && /*#__PURE__*/_react.default.createElement("div", {
59
47
  className: _style.default.dynamic([["64009541", [_uiConstants.colors.grey900]], ["1331770409", [inputMaxHeight]]]) + " " + "root-input"
60
48
  }, /*#__PURE__*/_react.default.createElement(_selectionList.SelectionList, {
@@ -67,16 +55,15 @@ const Input = _ref => {
67
55
  }, /*#__PURE__*/_react.default.createElement(_index.InputClearButton, {
68
56
  onClear: onClear,
69
57
  clearText: clearText,
70
- dataTest: "".concat(dataTest, "-clear")
58
+ dataTest: `${dataTest}-clear`
71
59
  })), /*#__PURE__*/_react.default.createElement(_style.default, {
72
60
  id: "64009541",
73
61
  dynamic: [_uiConstants.colors.grey900]
74
- }, [".root.__jsx-style-dynamic-selector{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:".concat(_uiConstants.colors.grey900, ";font-size:14px;line-height:16px;}"), ".root-input.__jsx-style-dynamic-selector{overflow-y:auto;-webkit-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:wrap;-ms-flex-flow:wrap;flex-flow:wrap;gap:4px;}", ".root-right.__jsx-style-dynamic-selector{margin-inline-start:auto;}"]), /*#__PURE__*/_react.default.createElement(_style.default, {
62
+ }, [`.root.__jsx-style-dynamic-selector{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:${_uiConstants.colors.grey900};font-size:14px;line-height:16px;}`, ".root-input.__jsx-style-dynamic-selector{overflow-y:auto;-webkit-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:wrap;-ms-flex-flow:wrap;flex-flow:wrap;gap:4px;}", ".root-right.__jsx-style-dynamic-selector{margin-inline-start:auto;}"]), /*#__PURE__*/_react.default.createElement(_style.default, {
75
63
  id: "1331770409",
76
64
  dynamic: [inputMaxHeight]
77
- }, [".root-input.__jsx-style-dynamic-selector{max-height:".concat(inputMaxHeight, ";}")]));
65
+ }, [`.root-input.__jsx-style-dynamic-selector{max-height:${inputMaxHeight};}`]));
78
66
  };
79
-
80
67
  exports.Input = Input;
81
68
  Input.defaultProps = {
82
69
  inputMaxHeight: '100px'