@k-int/stripes-kint-components 1.7.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/es/index.js +51 -8
  3. package/es/lib/ActionList/ActionList.js +48 -28
  4. package/es/lib/ActionList/ActionListFieldArray.js +56 -16
  5. package/es/lib/CustomProperties/Config/CustomPropertiesLookup.js +198 -0
  6. package/es/lib/CustomProperties/Config/CustomPropertiesSettings.js +326 -0
  7. package/es/lib/CustomProperties/Config/CustomPropertiesView.js +166 -0
  8. package/es/lib/CustomProperties/Config/CustomPropertyForm.js +360 -0
  9. package/es/lib/CustomProperties/Config/index.js +41 -0
  10. package/es/lib/EditableRefdataList/EditableRefdataList.js +0 -1
  11. package/es/lib/FormModal/FormModal.js +126 -0
  12. package/es/lib/{TypeDown → FormModal}/index.js +2 -2
  13. package/es/lib/NoResultsMessage/NoResultsMessage.js +1 -1
  14. package/es/lib/SASQRoute/SASQRoute.js +15 -11
  15. package/es/lib/SASQViewComponent/SASQViewComponent.js +6 -3
  16. package/es/lib/Typedown/Typedown.js +50 -18
  17. package/es/lib/constants/customProperties.js +60 -0
  18. package/es/lib/hooks/index.js +16 -0
  19. package/es/lib/hooks/useCustomProperties.js +122 -0
  20. package/es/lib/hooks/useMutateCustomProperties.js +143 -0
  21. package/es/lib/utils/generateKiwtQueryParams.js +51 -8
  22. package/junit.xml +40 -40
  23. package/package.json +5 -3
  24. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionList.js.html +47 -26
  25. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionListFieldArray.js.html +122 -8
  26. package/src/artifacts/coverage-jest/lcov-report/ActionList/index.html +10 -10
  27. package/src/artifacts/coverage-jest/lcov-report/ActionList/index.js.html +1 -1
  28. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertiesLookup.js.html +418 -0
  29. package/src/artifacts/coverage-jest/lcov-report/{TypeDown/TypeDown.js.html → CustomProperties/Config/CustomPropertiesSettings.js.html} +268 -232
  30. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertiesView.js.html +535 -0
  31. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertyForm.js.html +973 -0
  32. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/index.html +176 -0
  33. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/index.js.html +97 -0
  34. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/EditableRefdataList.js.html +2 -5
  35. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/index.html +1 -1
  36. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/index.js.html +1 -1
  37. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/EditableSettingsList.js.html +1 -1
  38. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/EditableSettingsListFieldArray.js.html +1 -1
  39. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/EditSettingValue.js.html +1 -1
  40. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/RenderSettingValue.js.html +1 -1
  41. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/SettingField.js.html +1 -1
  42. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/index.html +1 -1
  43. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/index.js.html +1 -1
  44. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/index.html +1 -1
  45. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/index.js.html +1 -1
  46. package/src/artifacts/coverage-jest/lcov-report/FormModal/FormModal.js.html +298 -0
  47. package/src/artifacts/coverage-jest/lcov-report/{TypeDown → FormModal}/index.html +14 -14
  48. package/src/artifacts/coverage-jest/lcov-report/{TypeDown → FormModal}/index.js.html +4 -4
  49. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/NoResultsMessage.js.html +3 -3
  50. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/index.html +1 -1
  51. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/index.js.html +1 -1
  52. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/QueryTypedown.js.html +1 -1
  53. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/index.html +1 -1
  54. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/index.js.html +1 -1
  55. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/RefdataButtons.js.html +3 -3
  56. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/index.html +1 -1
  57. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/index.js.html +1 -1
  58. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/SASQLookupComponent.js.html +1 -1
  59. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/index.html +1 -1
  60. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/index.js.html +1 -1
  61. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/SASQRoute.js.html +43 -16
  62. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/index.html +1 -1
  63. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/index.js.html +1 -1
  64. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/SASQViewComponent.js.html +6 -3
  65. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/index.html +1 -1
  66. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/index.js.html +1 -1
  67. package/src/artifacts/coverage-jest/lcov-report/SearchField/SearchField.js.html +1 -1
  68. package/src/artifacts/coverage-jest/lcov-report/SearchField/index.html +1 -1
  69. package/src/artifacts/coverage-jest/lcov-report/SearchField/index.js.html +1 -1
  70. package/src/artifacts/coverage-jest/lcov-report/SettingPage/SettingPage.js.html +1 -1
  71. package/src/artifacts/coverage-jest/lcov-report/SettingPage/SettingPagePane.js.html +1 -1
  72. package/src/artifacts/coverage-jest/lcov-report/SettingPage/index.html +1 -1
  73. package/src/artifacts/coverage-jest/lcov-report/SettingPage/index.js.html +1 -1
  74. package/src/artifacts/coverage-jest/lcov-report/Typedown/Typedown.js.html +150 -21
  75. package/src/artifacts/coverage-jest/lcov-report/Typedown/index.html +7 -7
  76. package/src/artifacts/coverage-jest/lcov-report/Typedown/index.js.html +1 -1
  77. package/src/artifacts/coverage-jest/lcov-report/constants/customProperties.js.html +112 -0
  78. package/src/artifacts/coverage-jest/lcov-report/constants/eventCodes.js.html +1 -1
  79. package/src/artifacts/coverage-jest/lcov-report/constants/index.html +18 -3
  80. package/src/artifacts/coverage-jest/lcov-report/contexts/SettingsContext.js.html +1 -1
  81. package/src/artifacts/coverage-jest/lcov-report/contexts/index.html +1 -1
  82. package/src/artifacts/coverage-jest/lcov-report/contexts/index.js.html +1 -1
  83. package/src/artifacts/coverage-jest/lcov-report/hooks/index.html +35 -5
  84. package/src/artifacts/coverage-jest/lcov-report/hooks/index.js.html +8 -2
  85. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/index.html +1 -1
  86. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/index.js.html +1 -1
  87. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useSettingSection.js.html +1 -1
  88. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useSettings.js.html +1 -1
  89. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/index.html +1 -1
  90. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/index.js.html +1 -1
  91. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedown.js.html +1 -1
  92. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedownData.js.html +1 -1
  93. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedownToggle.js.html +1 -1
  94. package/src/artifacts/coverage-jest/lcov-report/hooks/useActiveElement.js.html +1 -1
  95. package/src/artifacts/coverage-jest/lcov-report/hooks/useCustomProperties.js.html +313 -0
  96. package/src/artifacts/coverage-jest/lcov-report/hooks/useHelperApp.js.html +1 -1
  97. package/src/artifacts/coverage-jest/lcov-report/hooks/useKiwtFieldArray.js.html +1 -1
  98. package/src/artifacts/coverage-jest/lcov-report/hooks/useKiwtSASQuery.js.html +1 -1
  99. package/src/artifacts/coverage-jest/lcov-report/hooks/useLocalStorageState.js.html +1 -1
  100. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateCustomProperties.js.html +271 -0
  101. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateRefdataValue.js.html +1 -1
  102. package/src/artifacts/coverage-jest/lcov-report/hooks/useQIndex.js.html +1 -1
  103. package/src/artifacts/coverage-jest/lcov-report/hooks/useRefdata.js.html +1 -1
  104. package/src/artifacts/coverage-jest/lcov-report/hooks/useTemplates.js.html +1 -1
  105. package/src/artifacts/coverage-jest/lcov-report/index.html +62 -47
  106. package/src/artifacts/coverage-jest/lcov-report/utils/buildUrl.js.html +1 -1
  107. package/src/artifacts/coverage-jest/lcov-report/utils/generateKiwtQuery.js.html +1 -1
  108. package/src/artifacts/coverage-jest/lcov-report/utils/generateKiwtQueryParams.js.html +174 -12
  109. package/src/artifacts/coverage-jest/lcov-report/utils/index.html +17 -17
  110. package/src/artifacts/coverage-jest/lcov-report/utils/index.js.html +1 -1
  111. package/src/artifacts/coverage-jest/lcov-report/utils/refdataOptions.js.html +1 -1
  112. package/src/artifacts/coverage-jest/lcov-report/utils/renderHelpText.js.html +1 -1
  113. package/src/artifacts/coverage-jest/lcov-report/utils/selectorSafe.js.html +1 -1
  114. package/src/artifacts/coverage-jest/lcov-report/utils/sortByLabel.js.html +1 -1
  115. package/src/artifacts/coverage-jest/lcov-report/utils/toCamelCase.js.html +1 -1
  116. package/src/artifacts/coverage-jest/lcov.info +841 -348
  117. package/src/index.js +14 -4
  118. package/src/lib/ActionList/ActionList.js +30 -23
  119. package/src/lib/ActionList/ActionListFieldArray.js +40 -2
  120. package/src/lib/ActionList/README.md +4 -1
  121. package/src/lib/CustomProperties/Config/CustomPropertiesLookup.js +111 -0
  122. package/src/lib/CustomProperties/Config/CustomPropertiesSettings.js +240 -0
  123. package/src/lib/CustomProperties/Config/CustomPropertiesView.js +150 -0
  124. package/src/lib/CustomProperties/Config/CustomPropertyForm.js +296 -0
  125. package/src/lib/CustomProperties/Config/index.js +4 -0
  126. package/src/lib/EditableRefdataList/EditableRefdataList.js +0 -1
  127. package/src/lib/FormModal/FormModal.js +71 -0
  128. package/src/lib/FormModal/index.js +1 -0
  129. package/src/lib/NoResultsMessage/NoResultsMessage.js +2 -2
  130. package/src/lib/SASQRoute/SASQRoute.js +23 -14
  131. package/src/lib/SASQViewComponent/SASQViewComponent.js +2 -1
  132. package/src/lib/Typedown/Typedown.js +56 -13
  133. package/src/lib/constants/customProperties.js +9 -0
  134. package/src/lib/hooks/index.js +2 -0
  135. package/src/lib/hooks/useCustomProperties.js +76 -0
  136. package/src/lib/hooks/useMutateCustomProperties.js +62 -0
  137. package/src/lib/utils/generateKiwtQueryParams.js +58 -4
  138. package/styles/TypeDown.css +7 -0
  139. package/translations/stripes-kint-components/en.json +49 -1
  140. package/es/lib/TypeDown/TypeDown.js +0 -251
  141. package/src/lib/TypeDown/README.md +0 -1
  142. package/src/lib/TypeDown/TypeDown.js +0 -228
  143. package/src/lib/TypeDown/index.js +0 -1
@@ -1,251 +0,0 @@
1
- "use strict";
2
-
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _react = _interopRequireWildcard(require("react"));
11
-
12
- var _propTypes = _interopRequireDefault(require("prop-types"));
13
-
14
- var _classnames = _interopRequireDefault(require("classnames"));
15
-
16
- var _get = _interopRequireDefault(require("lodash/get"));
17
-
18
- var _components = require("@folio/stripes/components");
19
-
20
- var _interactionStyles = require("@folio/stripes-components/lib/sharedStyles/interactionStyles.css");
21
-
22
- var _SearchField = _interopRequireDefault(require("../SearchField"));
23
-
24
- var _TypeDown = _interopRequireDefault(require("../../../styles/TypeDown.css"));
25
-
26
- var _typedownHooks = require("../hooks/typedownHooks");
27
-
28
- var _selectorSafe = _interopRequireDefault(require("../utils/selectorSafe"));
29
-
30
- var _jsxRuntime = require("react/jsx-runtime");
31
-
32
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
-
34
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
-
36
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
-
38
- (function () {
39
- var enterModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.enterModule : undefined;
40
- enterModule && enterModule(module);
41
- })();
42
-
43
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
44
-
45
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
46
-
47
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
48
-
49
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
50
-
51
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
52
-
53
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
54
-
55
- var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) {
56
- return a;
57
- };
58
-
59
- /* @deprecated
60
- * Replaced by Typedown and QueryTypedown.
61
- */
62
- var TypeDown = function TypeDown(_ref) {
63
- var input = _ref.input,
64
- meta = _ref.meta,
65
- onChange = _ref.onChange,
66
- path = _ref.path,
67
- pathMutator = _ref.pathMutator,
68
- _ref$renderFooter = _ref.renderFooter,
69
- renderFooter = _ref$renderFooter === void 0 ? null : _ref$renderFooter,
70
- _ref$renderListItem = _ref.renderListItem,
71
- renderListItem = _ref$renderListItem === void 0 ? null : _ref$renderListItem,
72
- _ref$uniqueIdentifica = _ref.uniqueIdentificationPath,
73
- uniqueIdentificationPath = _ref$uniqueIdentifica === void 0 ? 'id' : _ref$uniqueIdentifica;
74
- (0, _react.useEffect)(function () {
75
- if (process.env.NODE_ENV === 'development') {
76
- // eslint-disable-next-line no-console
77
- console.warn('TypeDown component is deprecated, you likely want either Typedown or QueryTypedown');
78
- }
79
- }, []);
80
- var selectedUniqueId = (0, _get.default)(input.value, uniqueIdentificationPath);
81
-
82
- var _useState = (0, _react.useState)(pathMutator(null, path)),
83
- _useState2 = _slicedToArray(_useState, 2),
84
- callPath = _useState2[0],
85
- setCallPath = _useState2[1];
86
-
87
- var data = (0, _typedownHooks.useTypedownData)(callPath); // Hook to set up all the essentials
88
-
89
- var _useTypedown = (0, _typedownHooks.useTypedown)(input.name),
90
- _useTypedown$refs = _useTypedown.refs,
91
- listRef = _useTypedown$refs.listRef,
92
- triggerRef = _useTypedown$refs.triggerRef,
93
- overlayRef = _useTypedown$refs.overlayRef,
94
- footerRef = _useTypedown$refs.footerRef,
95
- _useTypedown$handlers = _useTypedown.handlers,
96
- handleNextFocus = _useTypedown$handlers.handleNextFocus,
97
- listKeyDownHandler = _useTypedown$handlers.listKeyDownHandler,
98
- searchFieldKeyDownHandler = _useTypedown$handlers.searchFieldKeyDownHandler,
99
- _useTypedown$variable = _useTypedown.variables,
100
- open = _useTypedown$variable.open,
101
- portal = _useTypedown$variable.portal,
102
- resizeRef = _useTypedown$variable.resizeRef,
103
- searchWidth = _useTypedown$variable.searchWidth;
104
-
105
- var renderItem = (0, _react.useCallback)(function (option) {
106
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
107
- className: _TypeDown.default.listItem,
108
- children: renderListItem ? renderListItem(option) : (0, _get.default)(option, uniqueIdentificationPath)
109
- });
110
- }, [renderListItem, uniqueIdentificationPath]);
111
- var handleChange = (0, _react.useCallback)(function (value) {
112
- input.onChange(value);
113
-
114
- if (typeof onChange === 'function') {
115
- onChange(value);
116
- }
117
- }, [input, onChange]);
118
- var dropDown = (0, _react.useCallback)(function () {
119
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
120
- className: _TypeDown.default.dropdownMenu,
121
- id: "typedown-parent-".concat((0, _selectorSafe.default)(input.name), "-menu"),
122
- style: {
123
- '--searchWidth': "".concat(searchWidth, "px")
124
- },
125
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
126
- ref: listRef,
127
- className: _TypeDown.default.listContainer,
128
- id: "typedown-list",
129
- children: data !== null && data !== void 0 && data.length ? data === null || data === void 0 ? void 0 : data.map(function (d, index) {
130
- var isSelected = (0, _get.default)(input.value, uniqueIdentificationPath) === (0, _get.default)(d, uniqueIdentificationPath);
131
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
132
- className: (0, _classnames.default)(_interactionStyles.interactionStyles, _TypeDown.default.fullWidth, _TypeDown.default.menuButton),
133
- "data-selected": isSelected,
134
- id: "typedown-button-[".concat(index, "]"),
135
- onClick: function onClick() {
136
- handleChange(d);
137
- handleNextFocus();
138
- },
139
- onKeyDown: listKeyDownHandler,
140
- type: "button",
141
- children: renderItem(d)
142
- }, "typedown-button-[".concat(index, "]"));
143
- }) :
144
- /*#__PURE__*/
145
- // TODO test this
146
- (0, _jsxRuntime.jsx)(_components.EndOfList, {})
147
- }), renderFooter && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
148
- ref: footerRef,
149
- className: _TypeDown.default.footer,
150
- id: "typedown-footer",
151
- children: renderFooter()
152
- })]
153
- });
154
- }, [data, footerRef, handleChange, handleNextFocus, input, listKeyDownHandler, listRef, renderFooter, renderItem, searchWidth, uniqueIdentificationPath]);
155
-
156
- var renderSearchField = function renderSearchField() {
157
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
158
- ref: triggerRef,
159
- id: "typedown-parent-".concat((0, _selectorSafe.default)(input.name), "-searchField"),
160
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SearchField.default // Pass meta through so correct styling gets applied to the TextField
161
- , {
162
- id: "typedown-searchField",
163
- marginBottom0: true,
164
- meta: meta,
165
- onChange: function onChange(e) {
166
- setCallPath(pathMutator(e.target.value, path));
167
- },
168
- onKeyDown: searchFieldKeyDownHandler
169
- })
170
- });
171
- };
172
-
173
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
174
- ref: resizeRef,
175
- children: [renderSearchField(), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Popper, {
176
- anchorRef: triggerRef,
177
- className: (0, _classnames.default)(_TypeDown.default.dropdown, _TypeDown.default.fullWidth),
178
- isOpen: open,
179
- modifiers: {
180
- flip: {
181
- boundariesElement: 'viewport',
182
- padding: 10
183
- },
184
- preventOverflow: {
185
- boundariesElement: 'viewport',
186
- padding: 10
187
- }
188
- },
189
- overlayProps: {
190
- 'ref': overlayRef,
191
- 'tabIndex': '-1',
192
- 'onClick': function onClick(e) {
193
- e.stopPropagation();
194
- } // prevent propagation of click events
195
-
196
- },
197
- overlayRef: overlayRef,
198
- portal: portal,
199
- children: dropDown()
200
- }, "typedown-menu-toggle"), selectedUniqueId && !open && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
201
- className: (0, _classnames.default)(_TypeDown.default.selected, _TypeDown.default.selectedDisplay),
202
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
203
- className: _TypeDown.default.selectedItem,
204
- children: renderItem(input.value)
205
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.IconButton, {
206
- className: _TypeDown.default.clearItem,
207
- icon: "times-circle-solid",
208
- onClick: function onClick() {
209
- return handleChange();
210
- }
211
- })]
212
- })]
213
- });
214
- };
215
-
216
- __signature__(TypeDown, "useEffect{}\nuseState{[callPath, setCallPath](pathMutator(null, path))}\nuseTypedownData{data}\nuseTypedown{{\n refs: {\n listRef,\n triggerRef,\n overlayRef,\n footerRef\n },\n handlers: {\n handleNextFocus,\n listKeyDownHandler,\n searchFieldKeyDownHandler\n },\n variables: {\n open,\n portal,\n resizeRef,\n searchWidth\n }\n }}\nuseCallback{renderItem}\nuseCallback{handleChange}\nuseCallback{dropDown}", function () {
217
- return [_typedownHooks.useTypedownData, _typedownHooks.useTypedown];
218
- });
219
-
220
- TypeDown.propTypes = {
221
- input: _propTypes.default.object,
222
- meta: _propTypes.default.object,
223
- onChange: _propTypes.default.func,
224
- path: _propTypes.default.string,
225
- pathMutator: _propTypes.default.func,
226
- renderFooter: _propTypes.default.func,
227
- renderListItem: _propTypes.default.func,
228
- uniqueIdentificationPath: _propTypes.default.string
229
- };
230
- var _default = TypeDown;
231
- var _default2 = _default;
232
- exports.default = _default2;
233
- ;
234
-
235
- (function () {
236
- var reactHotLoader = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default : undefined;
237
-
238
- if (!reactHotLoader) {
239
- return;
240
- }
241
-
242
- reactHotLoader.register(TypeDown, "TypeDown", "/home/ethan/FolioModules/stripes-kint-components/src/lib/TypeDown/TypeDown.js");
243
- reactHotLoader.register(_default, "default", "/home/ethan/FolioModules/stripes-kint-components/src/lib/TypeDown/TypeDown.js");
244
- })();
245
-
246
- ;
247
-
248
- (function () {
249
- var leaveModule = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.leaveModule : undefined;
250
- leaveModule && leaveModule(module);
251
- })();
@@ -1 +0,0 @@
1
- DEPRECATED - DO NOT USE. You probably want Typedown
@@ -1,228 +0,0 @@
1
- import React, { useCallback, useEffect, useState } from 'react';
2
- import PropTypes from 'prop-types';
3
- import classnames from 'classnames';
4
-
5
- import get from 'lodash/get';
6
-
7
- import { EndOfList, IconButton, Popper } from '@folio/stripes/components';
8
-
9
- // eslint-disable-next-line import/no-extraneous-dependencies
10
- import { interactionStyles } from '@folio/stripes-components/lib/sharedStyles/interactionStyles.css';
11
-
12
- import SearchField from '../SearchField';
13
- import css from '../../../styles/TypeDown.css';
14
-
15
- import { useTypedown, useTypedownData } from '../hooks/typedownHooks';
16
- import selectorSafe from '../utils/selectorSafe';
17
-
18
- /* @deprecated
19
- * Replaced by Typedown and QueryTypedown.
20
- */
21
- const TypeDown = ({
22
- input,
23
- meta,
24
- onChange,
25
- path,
26
- pathMutator,
27
- renderFooter = null,
28
- renderListItem = null,
29
- uniqueIdentificationPath = 'id'
30
- }) => {
31
- useEffect(() => {
32
- if (process.env.NODE_ENV === 'development') {
33
- // eslint-disable-next-line no-console
34
- console.warn('TypeDown component is deprecated, you likely want either Typedown or QueryTypedown');
35
- }
36
- }, []);
37
-
38
- const selectedUniqueId = get(input.value, uniqueIdentificationPath);
39
-
40
- const [callPath, setCallPath] = useState(pathMutator(null, path));
41
- const data = useTypedownData(callPath);
42
-
43
- // Hook to set up all the essentials
44
- const {
45
- refs: {
46
- listRef,
47
- triggerRef,
48
- overlayRef,
49
- footerRef
50
- },
51
- handlers: {
52
- handleNextFocus,
53
- listKeyDownHandler,
54
- searchFieldKeyDownHandler
55
- },
56
- variables: {
57
- open,
58
- portal,
59
- resizeRef,
60
- searchWidth
61
- }
62
- } = useTypedown(input.name);
63
-
64
- const renderItem = useCallback((option) => (
65
- <div
66
- className={css.listItem}
67
- >
68
- {renderListItem ?
69
- renderListItem(option) :
70
- get(option, uniqueIdentificationPath)
71
- }
72
- </div>
73
- ), [renderListItem, uniqueIdentificationPath]);
74
-
75
- const handleChange = useCallback(value => {
76
- input.onChange(value);
77
-
78
- if (typeof onChange === 'function') {
79
- onChange(value);
80
- }
81
- }, [input, onChange]);
82
-
83
- const dropDown = useCallback(() => {
84
- return (
85
- <div
86
- className={css.dropdownMenu}
87
- id={`typedown-parent-${selectorSafe(input.name)}-menu`}
88
- style={{ '--searchWidth': `${searchWidth}px` }}
89
- >
90
- <div
91
- ref={listRef}
92
- className={css.listContainer}
93
- id="typedown-list"
94
- >
95
- {data?.length ? data?.map((d, index) => {
96
- const isSelected = get(input.value, uniqueIdentificationPath) === get(d, uniqueIdentificationPath);
97
- return (
98
- <button
99
- key={`typedown-button-[${index}]`}
100
- className={classnames(
101
- interactionStyles,
102
- css.fullWidth,
103
- css.menuButton
104
- )}
105
- data-selected={isSelected}
106
- id={`typedown-button-[${index}]`}
107
- onClick={() => {
108
- handleChange(d);
109
- handleNextFocus();
110
- }}
111
- onKeyDown={listKeyDownHandler}
112
- type="button"
113
- >
114
- {renderItem(d)}
115
- </button>
116
- );
117
- }) :
118
- // TODO test this
119
- <EndOfList />
120
- }
121
- </div>
122
- {renderFooter &&
123
- <div
124
- ref={footerRef}
125
- className={css.footer}
126
- id="typedown-footer"
127
- >
128
- {renderFooter()}
129
- </div>
130
- }
131
- </div>
132
- );
133
- }, [
134
- data,
135
- footerRef,
136
- handleChange,
137
- handleNextFocus,
138
- input,
139
- listKeyDownHandler,
140
- listRef,
141
- renderFooter,
142
- renderItem,
143
- searchWidth,
144
- uniqueIdentificationPath
145
- ]);
146
-
147
- const renderSearchField = () => {
148
- return (
149
- <div
150
- ref={triggerRef}
151
- id={`typedown-parent-${selectorSafe(input.name)}-searchField`}
152
- >
153
- <SearchField
154
- // Pass meta through so correct styling gets applied to the TextField
155
- id="typedown-searchField"
156
- marginBottom0
157
- meta={meta}
158
- onChange={e => {
159
- setCallPath(pathMutator(e.target.value, path));
160
- }}
161
- onKeyDown={searchFieldKeyDownHandler}
162
- />
163
- </div>
164
- );
165
- };
166
-
167
- return (
168
- <div
169
- ref={resizeRef}
170
- >
171
- {renderSearchField()}
172
- <Popper
173
- key="typedown-menu-toggle"
174
- anchorRef={triggerRef}
175
- className={classnames(
176
- css.dropdown,
177
- css.fullWidth
178
- )}
179
- isOpen={open}
180
- modifiers={{
181
- flip: { boundariesElement: 'viewport', padding: 10 },
182
- preventOverflow: { boundariesElement: 'viewport', padding: 10 }
183
- }}
184
- overlayProps={{
185
- 'ref': overlayRef,
186
- 'tabIndex': '-1',
187
- 'onClick': (e) => { e.stopPropagation(); } // prevent propagation of click events
188
- }}
189
- overlayRef={overlayRef}
190
- portal={portal}
191
- >
192
- {dropDown()}
193
- </Popper>
194
- {selectedUniqueId && !open &&
195
- <div
196
- className={classnames(
197
- css.selected,
198
- css.selectedDisplay
199
- )}
200
- >
201
- <div
202
- className={css.selectedItem}
203
- >
204
- {renderItem(input.value)}
205
- </div>
206
- <IconButton
207
- className={css.clearItem}
208
- icon="times-circle-solid"
209
- onClick={() => handleChange()}
210
- />
211
- </div>
212
- }
213
- </div>
214
- );
215
- };
216
-
217
- TypeDown.propTypes = {
218
- input: PropTypes.object,
219
- meta: PropTypes.object,
220
- onChange: PropTypes.func,
221
- path: PropTypes.string,
222
- pathMutator: PropTypes.func,
223
- renderFooter: PropTypes.func,
224
- renderListItem: PropTypes.func,
225
- uniqueIdentificationPath: PropTypes.string
226
- };
227
-
228
- export default TypeDown;
@@ -1 +0,0 @@
1
- export { default } from './TypeDown';