@elliemae/ds-search-field 2.2.0-alpha.5 → 2.2.0-beta.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.
- package/cjs/DSSearchField.js +165 -129
- package/cjs/impl/DSSeachFieldImpl.js +157 -126
- package/cjs/impl/components/AdvanceSearchOption/AdvanceSearchOption.js +25 -43
- package/cjs/impl/components/LookupIndicator/LookupIndicator.js +33 -49
- package/cjs/impl/components/ModalSearchField/DataGridSearch.js +93 -83
- package/cjs/impl/components/ModalSearchField/ModalSearchField.js +82 -93
- package/cjs/index.js +12 -37
- package/esm/DSSearchField.js +152 -97
- package/esm/impl/DSSeachFieldImpl.js +147 -96
- package/esm/impl/components/AdvanceSearchOption/AdvanceSearchOption.js +18 -14
- package/esm/impl/components/LookupIndicator/LookupIndicator.js +26 -20
- package/esm/impl/components/ModalSearchField/DataGridSearch.js +83 -53
- package/esm/impl/components/ModalSearchField/ModalSearchField.js +75 -64
- package/esm/index.js +2 -12
- package/package.json +9 -9
- package/types/DSSearchField.d.ts +1 -29
- package/cjs/DSSearchField.js.map +0 -7
- package/cjs/impl/DSSeachFieldImpl.js.map +0 -7
- package/cjs/impl/components/AdvanceSearchOption/AdvanceSearchOption.js.map +0 -7
- package/cjs/impl/components/LookupIndicator/LookupIndicator.js.map +0 -7
- package/cjs/impl/components/ModalSearchField/DataGridSearch.js.map +0 -7
- package/cjs/impl/components/ModalSearchField/ModalSearchField.js.map +0 -7
- package/cjs/index.js.map +0 -7
- package/esm/DSSearchField.js.map +0 -7
- package/esm/impl/DSSeachFieldImpl.js.map +0 -7
- package/esm/impl/components/AdvanceSearchOption/AdvanceSearchOption.js.map +0 -7
- package/esm/impl/components/LookupIndicator/LookupIndicator.js.map +0 -7
- package/esm/impl/components/ModalSearchField/DataGridSearch.js.map +0 -7
- package/esm/impl/components/ModalSearchField/ModalSearchField.js.map +0 -7
- package/esm/index.js.map +0 -7
package/cjs/DSSearchField.js
CHANGED
|
@@ -1,133 +1,169 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
6
|
+
require('react');
|
|
7
|
+
var reactDesc = require('react-desc');
|
|
8
|
+
var dsTabs = require('@elliemae/ds-tabs');
|
|
9
|
+
var DSSeachFieldImpl = require('./impl/DSSeachFieldImpl.js');
|
|
10
|
+
var ModalSearchField = require('./impl/components/ModalSearchField/ModalSearchField.js');
|
|
11
|
+
|
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
|
+
|
|
14
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
15
|
+
|
|
16
|
+
const DSSearchField = _ref => {
|
|
17
|
+
let {
|
|
18
|
+
containerProps = {},
|
|
19
|
+
onChange = () => null,
|
|
20
|
+
searchOptionLabel = 'Advanced Search',
|
|
21
|
+
placeholder = 'Select field',
|
|
22
|
+
modalSize = 'x-large',
|
|
23
|
+
modalTitle = 'Search Field ID',
|
|
24
|
+
tabsAnimated = true,
|
|
25
|
+
tabsEnableMouseEvents = true,
|
|
26
|
+
tabType = dsTabs.TabTypes.NORMAL,
|
|
27
|
+
tabData = [],
|
|
28
|
+
searchGrid = false,
|
|
29
|
+
searchFilters = true,
|
|
30
|
+
confirmLabel = 'Apply',
|
|
31
|
+
rejectLabel = 'Cancel',
|
|
32
|
+
modalType = 'confirm',
|
|
33
|
+
onConfirmField = () => null,
|
|
34
|
+
onRejectField = () => null,
|
|
35
|
+
onTabChange = () => null,
|
|
36
|
+
appElement = '#root',
|
|
37
|
+
value = null,
|
|
38
|
+
additionalInfo = null,
|
|
39
|
+
displayProperty = 'name',
|
|
40
|
+
dropdownOptions = [],
|
|
41
|
+
customDataGridOptions = {},
|
|
42
|
+
customDropdownOptions = {},
|
|
43
|
+
useLookupIndicator = true,
|
|
44
|
+
searchable = false
|
|
45
|
+
} = _ref;
|
|
46
|
+
return /*#__PURE__*/_jsx__default["default"](DSSeachFieldImpl["default"], {
|
|
47
|
+
additionalInfo: additionalInfo,
|
|
48
|
+
appElement: appElement,
|
|
49
|
+
searchable: searchable,
|
|
50
|
+
confirmLabel: confirmLabel,
|
|
51
|
+
containerProps: containerProps,
|
|
52
|
+
customDataGridOptions: customDataGridOptions,
|
|
53
|
+
customDropdownOptions: customDropdownOptions,
|
|
54
|
+
displayProperty: displayProperty,
|
|
55
|
+
dropdownOptions: dropdownOptions,
|
|
56
|
+
modalSize: modalSize,
|
|
57
|
+
modalTitle: modalTitle,
|
|
58
|
+
modalType: modalType,
|
|
59
|
+
onChange: onChange,
|
|
60
|
+
onConfirmField: onConfirmField,
|
|
61
|
+
onRejectField: onRejectField,
|
|
62
|
+
onTabChange: onTabChange,
|
|
63
|
+
placeholder: placeholder,
|
|
64
|
+
rejectLabel: rejectLabel,
|
|
65
|
+
searchFilters: searchFilters,
|
|
66
|
+
searchGrid: searchGrid,
|
|
67
|
+
searchOptionLabel: searchOptionLabel,
|
|
68
|
+
tabData: tabData,
|
|
69
|
+
tabsAnimated: tabsAnimated,
|
|
70
|
+
tabsEnableMouseEvents: tabsEnableMouseEvents,
|
|
71
|
+
tabType: tabType,
|
|
72
|
+
useLookupIndicator: useLookupIndicator,
|
|
73
|
+
value: value
|
|
74
|
+
});
|
|
11
75
|
};
|
|
12
|
-
|
|
13
|
-
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(module2))
|
|
15
|
-
if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
|
|
16
|
-
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return target;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (module2, isNodeMode) => {
|
|
21
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
22
|
-
};
|
|
23
|
-
var __toCommonJS = /* @__PURE__ */ ((cache) => {
|
|
24
|
-
return (module2, temp) => {
|
|
25
|
-
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
26
|
-
};
|
|
27
|
-
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
28
|
-
var DSSearchField_exports = {};
|
|
29
|
-
__export(DSSearchField_exports, {
|
|
30
|
-
DSModalSearchField: () => import_DSSeachFieldImpl.DSModalSearchField,
|
|
31
|
-
DSSearchFieldWithSchema: () => DSSearchFieldWithSchema,
|
|
32
|
-
default: () => DSSearchField_default
|
|
33
|
-
});
|
|
34
|
-
var React = __toESM(require("react"));
|
|
35
|
-
var import_react = __toESM(require("react"));
|
|
36
|
-
var import_react_desc = require("react-desc");
|
|
37
|
-
var import_ds_tabs = require("@elliemae/ds-tabs");
|
|
38
|
-
var import_DSSeachFieldImpl = __toESM(require("./impl/DSSeachFieldImpl"));
|
|
39
|
-
const DSSearchField = ({
|
|
40
|
-
containerProps = {},
|
|
41
|
-
onChange = () => null,
|
|
42
|
-
searchOptionLabel = "Advanced Search",
|
|
43
|
-
placeholder = "Select field",
|
|
44
|
-
modalSize = "x-large",
|
|
45
|
-
modalTitle = "Search Field ID",
|
|
46
|
-
tabsAnimated = true,
|
|
47
|
-
tabsEnableMouseEvents = true,
|
|
48
|
-
tabType = import_ds_tabs.TabTypes.NORMAL,
|
|
49
|
-
tabData = [],
|
|
50
|
-
searchGrid = false,
|
|
51
|
-
searchFilters = true,
|
|
52
|
-
confirmLabel = "Apply",
|
|
53
|
-
rejectLabel = "Cancel",
|
|
54
|
-
modalType = "confirm",
|
|
55
|
-
onConfirmField = () => null,
|
|
56
|
-
onRejectField = () => null,
|
|
57
|
-
onTabChange = () => null,
|
|
58
|
-
appElement = "#root",
|
|
59
|
-
value = null,
|
|
60
|
-
additionalInfo = null,
|
|
61
|
-
displayProperty = "name",
|
|
62
|
-
dropdownOptions = [],
|
|
63
|
-
customDataGridOptions = {},
|
|
64
|
-
customDropdownOptions = {},
|
|
65
|
-
useLookupIndicator = true,
|
|
66
|
-
searchable = false
|
|
67
|
-
}) => /* @__PURE__ */ import_react.default.createElement(import_DSSeachFieldImpl.default, {
|
|
68
|
-
additionalInfo,
|
|
69
|
-
appElement,
|
|
70
|
-
searchable,
|
|
71
|
-
confirmLabel,
|
|
72
|
-
containerProps,
|
|
73
|
-
customDataGridOptions,
|
|
74
|
-
customDropdownOptions,
|
|
75
|
-
displayProperty,
|
|
76
|
-
dropdownOptions,
|
|
77
|
-
modalSize,
|
|
78
|
-
modalTitle,
|
|
79
|
-
modalType,
|
|
80
|
-
onChange,
|
|
81
|
-
onConfirmField,
|
|
82
|
-
onRejectField,
|
|
83
|
-
onTabChange,
|
|
84
|
-
placeholder,
|
|
85
|
-
rejectLabel,
|
|
86
|
-
searchFilters,
|
|
87
|
-
searchGrid,
|
|
88
|
-
searchOptionLabel,
|
|
89
|
-
tabData,
|
|
90
|
-
tabsAnimated,
|
|
91
|
-
tabsEnableMouseEvents,
|
|
92
|
-
tabType,
|
|
93
|
-
useLookupIndicator,
|
|
94
|
-
value
|
|
95
|
-
});
|
|
76
|
+
|
|
96
77
|
const props = {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
78
|
+
/*
|
|
79
|
+
Enable the user to search on combobox
|
|
80
|
+
*/
|
|
81
|
+
searchable: reactDesc.PropTypes.bool.description('Enable the user to search on combobox'),
|
|
82
|
+
|
|
83
|
+
/** inject props to wrapper */
|
|
84
|
+
containerProps: reactDesc.PropTypes.object.description('inject props to wrapper'),
|
|
85
|
+
|
|
86
|
+
/** change handler */
|
|
87
|
+
onChange: reactDesc.PropTypes.func.description('change handler'),
|
|
88
|
+
|
|
89
|
+
/** search option label */
|
|
90
|
+
searchOptionLabel: reactDesc.PropTypes.string.description('search option label'),
|
|
91
|
+
|
|
92
|
+
/** placeholder for search input */
|
|
93
|
+
placeholder: reactDesc.PropTypes.string.description('placeholder for search input'),
|
|
94
|
+
|
|
95
|
+
/** search modal size */
|
|
96
|
+
modalSize: reactDesc.PropTypes.oneOf(['x-large', 'large', 'medium']).description('search modal size'),
|
|
97
|
+
|
|
98
|
+
/** search modal title */
|
|
99
|
+
modalTitle: reactDesc.PropTypes.string.description('search modal title'),
|
|
100
|
+
|
|
101
|
+
/** animate modal tabs */
|
|
102
|
+
tabsAnimated: reactDesc.PropTypes.bool.description('animate modal tabs'),
|
|
103
|
+
|
|
104
|
+
/** enable mouse event on tabs */
|
|
105
|
+
tabsEnableMouseEvents: reactDesc.PropTypes.bool.description('enable mouse event on tabs'),
|
|
106
|
+
|
|
107
|
+
/** tab types on modal */
|
|
108
|
+
tabType: reactDesc.PropTypes.oneOf([dsTabs.TabTypes.NORMAL, dsTabs.TabTypes.SUBTABS]).description('tab types on modal'),
|
|
109
|
+
|
|
110
|
+
/** data for modal tabs */
|
|
111
|
+
tabData: reactDesc.PropTypes.array.description('data for modal tabs'),
|
|
112
|
+
|
|
113
|
+
/** use search grid */
|
|
114
|
+
searchGrid: reactDesc.PropTypes.bool.description('use search grid'),
|
|
115
|
+
|
|
116
|
+
/** add search filters */
|
|
117
|
+
searchFilters: reactDesc.PropTypes.bool.description('add search filters'),
|
|
118
|
+
|
|
119
|
+
/** confirm modal label */
|
|
120
|
+
confirmLabel: reactDesc.PropTypes.string.description('confirm modal label'),
|
|
121
|
+
|
|
122
|
+
/** reject modal label */
|
|
123
|
+
rejectLabel: reactDesc.PropTypes.string.description('reject modal label'),
|
|
124
|
+
|
|
125
|
+
/** modal type */
|
|
126
|
+
modalType: reactDesc.PropTypes.oneOf(['alert', 'confirm']).description('modal type'),
|
|
127
|
+
|
|
128
|
+
/** on confirm handler */
|
|
129
|
+
onConfirmField: reactDesc.PropTypes.func.description('on confirm handler'),
|
|
130
|
+
|
|
131
|
+
/** on cancel handler */
|
|
132
|
+
onRejectField: reactDesc.PropTypes.func.description('on cancel handler'),
|
|
133
|
+
|
|
134
|
+
/** tab change handler */
|
|
135
|
+
onTabChange: reactDesc.PropTypes.func.description('tab change handler'),
|
|
136
|
+
|
|
137
|
+
/** app element */
|
|
138
|
+
appElement: reactDesc.PropTypes.string.description('app element'),
|
|
139
|
+
|
|
140
|
+
/** value for search */
|
|
141
|
+
value: reactDesc.PropTypes.string.description('value for search'),
|
|
142
|
+
|
|
143
|
+
/** additional info */
|
|
144
|
+
additionalInfo: reactDesc.PropTypes.object.description('additional info'),
|
|
145
|
+
|
|
146
|
+
/** display property */
|
|
147
|
+
displayProperty: reactDesc.PropTypes.string.description('display property'),
|
|
148
|
+
|
|
149
|
+
/** options for dropdown */
|
|
150
|
+
dropdownOptions: reactDesc.PropTypes.arrayOf(reactDesc.PropTypes.shape({
|
|
151
|
+
label: reactDesc.PropTypes.string,
|
|
152
|
+
value: reactDesc.PropTypes.string
|
|
153
|
+
})).description('options for dropdown'),
|
|
154
|
+
|
|
155
|
+
/** pass down props for datagrid in modal */
|
|
156
|
+
customDataGridOptions: reactDesc.PropTypes.object.description('pass down props for datagrid in modal'),
|
|
157
|
+
|
|
158
|
+
/** custom props for dropdown */
|
|
159
|
+
customDropdownOptions: reactDesc.PropTypes.object.description('custom props for dropdown'),
|
|
160
|
+
|
|
161
|
+
/** enable lookup */
|
|
162
|
+
useLookupIndicator: reactDesc.PropTypes.bool.description('enable lookup')
|
|
127
163
|
};
|
|
128
|
-
|
|
129
|
-
const DSSearchFieldWithSchema = (0, import_react_desc.describe)(DSSearchField);
|
|
164
|
+
const DSSearchFieldWithSchema = reactDesc.describe(DSSearchField);
|
|
130
165
|
DSSearchFieldWithSchema.propTypes = props;
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
166
|
+
|
|
167
|
+
exports.DSModalSearchField = ModalSearchField;
|
|
168
|
+
exports.DSSearchFieldWithSchema = DSSearchFieldWithSchema;
|
|
169
|
+
exports["default"] = DSSearchField;
|
|
@@ -1,106 +1,129 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
});
|
|
33
|
-
var React = __toESM(require("react"));
|
|
34
|
-
var import_react = __toESM(require("react"));
|
|
35
|
-
var import_react_select = require("react-select");
|
|
36
|
-
var import_ds_classnames = require("@elliemae/ds-classnames");
|
|
37
|
-
var import_ds_form = require("@elliemae/ds-form");
|
|
38
|
-
var import_ModalSearchField = __toESM(require("./components/ModalSearchField/ModalSearchField"));
|
|
39
|
-
var import_AdvanceSearchOption = __toESM(require("./components/AdvanceSearchOption/AdvanceSearchOption"));
|
|
40
|
-
var import_LookupIndicator = __toESM(require("./components/LookupIndicator/LookupIndicator"));
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
6
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
7
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
8
|
+
require('core-js/modules/esnext.async-iterator.find.js');
|
|
9
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
10
|
+
require('core-js/modules/esnext.iterator.find.js');
|
|
11
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
12
|
+
require('core-js/modules/esnext.iterator.filter.js');
|
|
13
|
+
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
14
|
+
require('core-js/modules/esnext.iterator.for-each.js');
|
|
15
|
+
var react = require('react');
|
|
16
|
+
var reactSelect = require('react-select');
|
|
17
|
+
var dsClassnames = require('@elliemae/ds-classnames');
|
|
18
|
+
var dsForm = require('@elliemae/ds-form');
|
|
19
|
+
var ModalSearchField = require('./components/ModalSearchField/ModalSearchField.js');
|
|
20
|
+
var AdvanceSearchOption = require('./components/AdvanceSearchOption/AdvanceSearchOption.js');
|
|
21
|
+
var LookupIndicator = require('./components/LookupIndicator/LookupIndicator.js');
|
|
22
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
23
|
+
|
|
24
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
25
|
+
|
|
26
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
27
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
28
|
+
|
|
29
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
30
|
+
|
|
31
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
41
32
|
const advanceOption = {
|
|
42
|
-
className:
|
|
43
|
-
label:
|
|
44
|
-
value:
|
|
33
|
+
className: 'advanced-search-option',
|
|
34
|
+
label: 'Advanced search',
|
|
35
|
+
value: 'search-field-advance-option',
|
|
45
36
|
isAdvance: true
|
|
46
37
|
};
|
|
47
|
-
const {
|
|
48
|
-
|
|
38
|
+
const {
|
|
39
|
+
cssClassName,
|
|
40
|
+
classNameElement,
|
|
41
|
+
classNameModifier,
|
|
42
|
+
classNameBlock
|
|
43
|
+
} = dsClassnames.convertPropToCssClassName('query-builder-addon-search-field');
|
|
44
|
+
|
|
45
|
+
class DSSearchFieldImpl extends react.Component {
|
|
49
46
|
constructor(props) {
|
|
50
47
|
super(props);
|
|
48
|
+
|
|
51
49
|
this.onChange = () => {
|
|
52
50
|
const {
|
|
53
51
|
selected: id,
|
|
54
52
|
additionalInfo: [row]
|
|
55
53
|
} = this.state;
|
|
56
|
-
const {
|
|
54
|
+
const {
|
|
55
|
+
onChange
|
|
56
|
+
} = this.props;
|
|
57
57
|
onChange(id, row);
|
|
58
58
|
};
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
const
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
59
|
+
|
|
60
|
+
this.onChangeDropdown = value => {
|
|
61
|
+
const {
|
|
62
|
+
dropdownOptions
|
|
63
|
+
} = this.props;
|
|
64
|
+
const selected = dropdownOptions.find(op => op.value === value);
|
|
65
|
+
const {
|
|
66
|
+
onChange,
|
|
67
|
+
displayProperty
|
|
68
|
+
} = this.props;
|
|
69
|
+
if (selected) onChange(value, {
|
|
70
|
+
[displayProperty]: selected.label
|
|
71
|
+
});
|
|
65
72
|
};
|
|
66
|
-
|
|
73
|
+
|
|
74
|
+
this.onKeyDown = event => {
|
|
67
75
|
setTimeout(() => {
|
|
68
|
-
const {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
76
|
+
const {
|
|
77
|
+
keycode
|
|
78
|
+
} = event;
|
|
79
|
+
const {
|
|
80
|
+
value
|
|
81
|
+
} = this.props;
|
|
82
|
+
if (value && keycode === 13) this.handleCloseModal();
|
|
72
83
|
}, 0);
|
|
73
84
|
};
|
|
85
|
+
|
|
74
86
|
this.handleSelect = (selectedRow, rows) => {
|
|
75
|
-
let selected = selectedRow;
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
if (selected.id)
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
selected
|
|
82
|
-
|
|
83
|
-
|
|
87
|
+
let selected = selectedRow; // fix new datagrid callback format
|
|
88
|
+
|
|
89
|
+
if (!selected) return;
|
|
90
|
+
if (selected.id) selected = selected.id;else if (selected[0] && selected[0].id) selected = selected[0].id;
|
|
91
|
+
const additionalInfo = rows.filter(row => selected === row.id);
|
|
92
|
+
this.setState({
|
|
93
|
+
selected,
|
|
94
|
+
additionalInfo
|
|
95
|
+
});
|
|
84
96
|
};
|
|
97
|
+
|
|
85
98
|
this.handleConfirm = () => {
|
|
86
|
-
const {
|
|
99
|
+
const {
|
|
100
|
+
onConfirmField
|
|
101
|
+
} = this.props;
|
|
87
102
|
this.onChange();
|
|
88
103
|
this.handleCloseModal();
|
|
89
104
|
onConfirmField();
|
|
90
105
|
};
|
|
106
|
+
|
|
91
107
|
this.handleReject = () => {
|
|
92
|
-
const {
|
|
108
|
+
const {
|
|
109
|
+
onRejectField
|
|
110
|
+
} = this.props;
|
|
93
111
|
this.handleCloseModal();
|
|
94
112
|
onRejectField();
|
|
95
113
|
};
|
|
114
|
+
|
|
96
115
|
this.handleOpenModal = () => {
|
|
97
|
-
this.setState({
|
|
116
|
+
this.setState({
|
|
117
|
+
openModal: true
|
|
118
|
+
});
|
|
98
119
|
};
|
|
120
|
+
|
|
99
121
|
this.handleCloseModal = () => this.setState({
|
|
100
122
|
openModal: false,
|
|
101
123
|
selected: [],
|
|
102
124
|
additionalInfo: []
|
|
103
125
|
});
|
|
126
|
+
|
|
104
127
|
advanceOption.label = props.searchOptionLabel;
|
|
105
128
|
this.state = {
|
|
106
129
|
openModal: false,
|
|
@@ -108,6 +131,7 @@ class DSSearchFieldImpl extends import_react.Component {
|
|
|
108
131
|
additionalInfo: []
|
|
109
132
|
};
|
|
110
133
|
}
|
|
134
|
+
|
|
111
135
|
render() {
|
|
112
136
|
const {
|
|
113
137
|
placeholder,
|
|
@@ -135,78 +159,85 @@ class DSSearchFieldImpl extends import_react.Component {
|
|
|
135
159
|
containerProps,
|
|
136
160
|
searchable
|
|
137
161
|
} = this.props;
|
|
138
|
-
const {
|
|
162
|
+
const {
|
|
163
|
+
openModal
|
|
164
|
+
} = this.state;
|
|
139
165
|
let options = [...dropdownOptions, advanceOption];
|
|
140
166
|
let displayValue = !value ? placeholder : value;
|
|
141
|
-
if (additionalInfo && additionalInfo[displayProperty])
|
|
142
|
-
|
|
143
|
-
|
|
167
|
+
if (additionalInfo && additionalInfo[displayProperty]) displayValue = additionalInfo[displayProperty];
|
|
168
|
+
const defaultoption = {
|
|
169
|
+
value,
|
|
170
|
+
label: displayValue
|
|
171
|
+
};
|
|
144
172
|
const customComponents = {
|
|
145
|
-
Option:
|
|
146
|
-
|
|
173
|
+
Option: props => {
|
|
174
|
+
// return <AdvanceSearchOption onAdvanceSearchClick={this.handleOpenModal} />
|
|
175
|
+
props.innerProps.className = 'em-ds-combobox__option';
|
|
176
|
+
|
|
147
177
|
if (props.data.isAdvance) {
|
|
148
178
|
props.innerProps.onClick = this.handleOpenModal;
|
|
149
|
-
props.innerProps.className =
|
|
179
|
+
props.innerProps.className = "".concat(props.innerProps.className, " ").concat(advanceOption.className);
|
|
150
180
|
}
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
});
|
|
181
|
+
|
|
182
|
+
return /*#__PURE__*/jsxRuntime.jsx(reactSelect.components.Option, _objectSpread({}, props));
|
|
154
183
|
},
|
|
155
184
|
IndicatorSeparator: () => null,
|
|
156
|
-
NoOptionsMessage:
|
|
185
|
+
NoOptionsMessage: props => /*#__PURE__*/jsxRuntime.jsx(AdvanceSearchOption, _objectSpread({
|
|
157
186
|
advanceSearchLabel: searchOptionLabel,
|
|
158
|
-
onAdvanceSearchClick: this.handleOpenModal
|
|
159
|
-
|
|
160
|
-
})
|
|
187
|
+
onAdvanceSearchClick: this.handleOpenModal
|
|
188
|
+
}, props))
|
|
161
189
|
};
|
|
190
|
+
|
|
162
191
|
if (useLookupIndicator) {
|
|
163
192
|
customComponents.DropdownIndicator = () => null;
|
|
164
193
|
}
|
|
165
|
-
|
|
194
|
+
|
|
195
|
+
if (!options.find(o => o.value === defaultoption.value)) {
|
|
166
196
|
options = [defaultoption, ...options];
|
|
167
197
|
}
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
className:
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
198
|
+
|
|
199
|
+
return /*#__PURE__*/jsxRuntime.jsxs("div", _objectSpread(_objectSpread({}, containerProps), {}, {
|
|
200
|
+
className: "".concat(cssClassName),
|
|
201
|
+
children: [/*#__PURE__*/_jsx__default["default"]("div", {
|
|
202
|
+
className: "".concat(classNameBlock('container-selector'))
|
|
203
|
+
}, void 0, /*#__PURE__*/jsxRuntime.jsx(dsForm.DSComboBox2, _objectSpread({
|
|
204
|
+
className: "".concat(classNameElement('dropdown-field-selector')),
|
|
205
|
+
components: customComponents,
|
|
206
|
+
onChange: this.onChangeDropdown,
|
|
207
|
+
onKeyDown: this.onKeyDown,
|
|
208
|
+
options: options,
|
|
209
|
+
value: value,
|
|
210
|
+
searchable: searchable
|
|
211
|
+
}, customDropdownOptions)), useLookupIndicator && /*#__PURE__*/_jsx__default["default"](LookupIndicator, {
|
|
212
|
+
buttonType: "text",
|
|
213
|
+
className: "".concat(classNameElement('btn-selector'), " ").concat(!value ? classNameModifier('btn-placeholder', 'btn-selector') : ''),
|
|
214
|
+
onAdvanceSearchClick: this.handleOpenModal
|
|
215
|
+
})), /*#__PURE__*/_jsx__default["default"](ModalSearchField, {
|
|
216
|
+
appElement: appElement,
|
|
217
|
+
confirmLabel: confirmLabel,
|
|
218
|
+
customDataGridOptions: customDataGridOptions,
|
|
219
|
+
handleSelect: this.handleSelect,
|
|
220
|
+
isOpen: openModal,
|
|
221
|
+
modalSize: modalSize,
|
|
222
|
+
modalTitle: modalTitle,
|
|
223
|
+
modalType: modalType,
|
|
224
|
+
onClose: this.handleCloseModal,
|
|
225
|
+
onConfirmField: this.handleConfirm,
|
|
226
|
+
onRejectField: this.handleReject,
|
|
227
|
+
onTabChange: onTabChange,
|
|
228
|
+
placeholder: placeholder,
|
|
229
|
+
rejectLabel: rejectLabel,
|
|
230
|
+
searchFilters: searchFilters,
|
|
231
|
+
searchGrid: searchGrid,
|
|
232
|
+
tabData: tabData,
|
|
233
|
+
tabsAnimated: tabsAnimated,
|
|
234
|
+
tabsEnableMouseEvents: tabsEnableMouseEvents,
|
|
235
|
+
tabType: tabType
|
|
236
|
+
})]
|
|
207
237
|
}));
|
|
208
238
|
}
|
|
239
|
+
|
|
209
240
|
}
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
241
|
+
|
|
242
|
+
exports.DSModalSearchField = ModalSearchField;
|
|
243
|
+
exports["default"] = DSSearchFieldImpl;
|