@pinuts/bsr-uikit-relaunch 0.3.2 → 0.3.5

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.
@@ -0,0 +1,4 @@
1
+ export default WrappedMultiSelectField;
2
+ declare function WrappedMultiSelectField(props: any): React.JSX.Element;
3
+ import React from 'react';
4
+ //# sourceMappingURL=MultiSelectField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiSelectField.d.ts","sourceRoot":"","sources":["../../../src/items/MultiSelectField/MultiSelectField.jsx"],"names":[],"mappings":";AAuOA,wEAMC;kBA7OqD,OAAO"}
@@ -0,0 +1,165 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+ var _reactI18next = require("react-i18next");
10
+ var _react2 = require("@ariakit/react");
11
+ var _formBuilder = require("@pinuts/form-builder");
12
+ var _useGetOptionList = _interopRequireDefault(require("../../hooks/useGetOptionList.js"));
13
+ var _index = require("../../utils/index.js");
14
+ var _FormFieldChildPropTypes = _interopRequireDefault(require("../FormFieldWrapper/FormFieldChildPropTypes.jsx"));
15
+ var _FormFieldWrapper = _interopRequireDefault(require("../FormFieldWrapper/FormFieldWrapper.jsx"));
16
+ var _withFieldGroup = _interopRequireDefault(require("../../hooks/withFieldGroup.jsx"));
17
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
19
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
20
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } // form-builder
21
+ const {
22
+ useFormikContext
23
+ } = _formBuilder.formik;
24
+ const toArray = value => {
25
+ if (Array.isArray(value)) return value;
26
+ if (value === undefined || value === null || value === '') return [];
27
+ return [value];
28
+ };
29
+ const MultiSelectField = _ref => {
30
+ let {
31
+ className,
32
+ options,
33
+ emptyOptionLabel,
34
+ skipOptions,
35
+ inputProps = {},
36
+ field = {},
37
+ onChange = () => {},
38
+ value,
39
+ isInvalid,
40
+ readOnly,
41
+ disabled,
42
+ viewMode,
43
+ ariaAttributes = {},
44
+ allowCustom,
45
+ dark,
46
+ disableDropdown,
47
+ doSubmitOnChange,
48
+ placeholder
49
+ } = _ref;
50
+ const [t] = (0, _reactI18next.useTranslation)();
51
+ const {
52
+ submitForm
53
+ } = useFormikContext();
54
+ const [searchInput, setSearchInput] = (0, _react.useState)('');
55
+ const inputOptions = (0, _useGetOptionList.default)(options, emptyOptionLabel, skipOptions);
56
+ const selectedValues = (0, _react.useMemo)(() => toArray(value), [value]);
57
+ const translateLabel = (0, _react.useCallback)(function () {
58
+ let label = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
59
+ return !label.includes(':') && !label.includes('<') ? t(label) : label;
60
+ }, [t]);
61
+ const selectedOptions = (0, _react.useMemo)(() => selectedValues.map(val => inputOptions.find(opt => opt.value === val) || {
62
+ value: val,
63
+ label: val
64
+ }), [selectedValues, inputOptions]);
65
+ const filteredOptions = (0, _react.useMemo)(() => {
66
+ const search = searchInput.trim().toLowerCase();
67
+ if (!search) return inputOptions;
68
+ return inputOptions.filter(opt => translateLabel(opt.label).toString().toLowerCase().includes(search));
69
+ }, [inputOptions, searchInput, translateLabel]);
70
+ const triggerChange = (0, _react.useCallback)(next => {
71
+ onChange(next);
72
+ if (doSubmitOnChange) submitForm();
73
+ }, [onChange, doSubmitOnChange, submitForm]);
74
+ const handleSelectionChange = (0, _react.useCallback)(next => {
75
+ triggerChange(Array.isArray(next) ? next : toArray(next));
76
+ setSearchInput('');
77
+ }, [triggerChange]);
78
+ const removeValue = (0, _react.useCallback)(val => triggerChange(selectedValues.filter(v => v !== val)), [triggerChange, selectedValues]);
79
+ const clearAll = (0, _react.useCallback)(() => triggerChange([]), [triggerChange]);
80
+ const onInputKeyDown = (0, _react.useCallback)(event => {
81
+ const {
82
+ key,
83
+ currentTarget
84
+ } = event;
85
+ const isCaretAtStart = currentTarget.selectionStart === 0 && currentTarget.selectionEnd === 0;
86
+ if (key === 'Backspace' && isCaretAtStart && selectedValues.length > 0) {
87
+ triggerChange(selectedValues.slice(0, -1));
88
+ return;
89
+ }
90
+ if (allowCustom && (key === 'Enter' || key === ',')) {
91
+ const typed = currentTarget.value.trim();
92
+ if (typed && !selectedValues.includes(typed)) {
93
+ event.preventDefault();
94
+ triggerChange([...selectedValues, typed]);
95
+ setSearchInput('');
96
+ }
97
+ }
98
+ }, [allowCustom, selectedValues, triggerChange]);
99
+ if (viewMode) {
100
+ return selectedOptions.map(opt => translateLabel(opt.label)).join(', ');
101
+ }
102
+ const wrapperClassNames = (0, _index.getFormControlClassNames)(isInvalid, readOnly, disabled, className, ['multiSelectField', dark && 'dark', field.className].filter(Boolean));
103
+ return /*#__PURE__*/_react.default.createElement(_react2.ComboboxProvider, {
104
+ value: searchInput,
105
+ setValue: setSearchInput,
106
+ selectedValue: selectedValues,
107
+ setSelectedValue: handleSelectionChange,
108
+ defaultSelectedValue: [],
109
+ resetValueOnSelect: true
110
+ }, /*#__PURE__*/_react.default.createElement("div", {
111
+ className: wrapperClassNames
112
+ }, /*#__PURE__*/_react.default.createElement("div", {
113
+ className: "multiSelectField__row"
114
+ }, selectedOptions.map(opt => /*#__PURE__*/_react.default.createElement("button", {
115
+ key: opt.value,
116
+ type: "button",
117
+ className: "multiSelectField__tag",
118
+ onClick: () => removeValue(opt.value),
119
+ disabled: readOnly || disabled,
120
+ "aria-label": t('aria.deleteField', {
121
+ label: translateLabel(opt.label)
122
+ })
123
+ }, translateLabel(opt.label), /*#__PURE__*/_react.default.createElement("span", {
124
+ className: "multiSelectField__tagRemove",
125
+ "aria-hidden": "true"
126
+ }, "\u2715"))), /*#__PURE__*/_react.default.createElement(_react2.Combobox, _extends({
127
+ autoSelect: true,
128
+ placeholder: placeholder,
129
+ onKeyDown: onInputKeyDown
130
+ }, ariaAttributes, inputProps))), selectedValues.length > 0 && !readOnly && !disabled && /*#__PURE__*/_react.default.createElement(_react2.ComboboxCancel, {
131
+ className: "multiSelectField__cancel",
132
+ onClick: clearAll,
133
+ "aria-label": t('aria.deleteAll')
134
+ })), !disableDropdown && filteredOptions.length > 0 && /*#__PURE__*/_react.default.createElement(_react2.ComboboxPopover, {
135
+ portal: true,
136
+ sameWidth: true,
137
+ gutter: 4,
138
+ className: "multiSelectFieldPopover"
139
+ }, filteredOptions.map(opt => /*#__PURE__*/_react.default.createElement(_react2.ComboboxItem, {
140
+ key: opt.value,
141
+ value: opt.value,
142
+ focusOnHover: true
143
+ }, translateLabel(opt.label)))));
144
+ };
145
+ MultiSelectField.propTypes = {
146
+ ..._FormFieldChildPropTypes.default,
147
+ options: _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.shape({
148
+ value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
149
+ label: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object])
150
+ }), _propTypes.default.string])).isRequired,
151
+ emptyOptionLabel: _propTypes.default.string,
152
+ skipOptions: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.string), _propTypes.default.string]),
153
+ allowCustom: _propTypes.default.bool,
154
+ dark: _propTypes.default.bool,
155
+ disableDropdown: _propTypes.default.bool,
156
+ doSubmitOnChange: _propTypes.default.bool,
157
+ placeholder: _propTypes.default.string
158
+ };
159
+ const HigherOrderMultiSelectField = (0, _withFieldGroup.default)(MultiSelectField);
160
+ const WrappedMultiSelectField = props => {
161
+ return /*#__PURE__*/_react.default.createElement(_FormFieldWrapper.default, props, /*#__PURE__*/_react.default.createElement(HigherOrderMultiSelectField, props));
162
+ };
163
+ (0, _formBuilder.registerComponent)('MultiSelectField', WrappedMultiSelectField);
164
+ (0, _formBuilder.registerComponent)('MultiSelectFieldBasic', HigherOrderMultiSelectField);
165
+ var _default = exports.default = WrappedMultiSelectField;
@@ -107,7 +107,7 @@ const CalendarEventPicker = _ref => {
107
107
  startAccessor: "start",
108
108
  endAccessor: "start",
109
109
  style: {
110
- 'min-height': 480
110
+ 'minHeight': 480
111
111
  },
112
112
  views: [_reactBigCalendar.Views.MONTH, _reactBigCalendar.Views.DAY],
113
113
  components: {
@@ -28,8 +28,8 @@ const CalendarToolbar = _ref => {
28
28
  }, /*#__PURE__*/_react.default.createElement(_Icon.default, {
29
29
  icon: "ChevronLeft",
30
30
  className: "mr-2",
31
- width: 16,
32
- height: 16,
31
+ width: '16',
32
+ height: '16',
33
33
  stroke: "currentColor"
34
34
  }), /*#__PURE__*/_react.default.createElement("span", null, "zur\xFCck")), /*#__PURE__*/_react.default.createElement("h4", {
35
35
  className: "rbc-toolbar-label text-dark"
@@ -40,8 +40,8 @@ const CalendarToolbar = _ref => {
40
40
  }, /*#__PURE__*/_react.default.createElement("span", null, "weiter"), /*#__PURE__*/_react.default.createElement(_Icon.default, {
41
41
  icon: "ChevronRight",
42
42
  className: "ml-2",
43
- width: 16,
44
- height: 16,
43
+ width: '16',
44
+ height: '16',
45
45
  stroke: "currentColor"
46
46
  })));
47
47
  };
@@ -9,6 +9,7 @@ import FormFieldWrapper from './FormFieldWrapper/FormFieldWrapper.jsx';
9
9
  import GroupInputField from './GroupInputField/GroupInputField.jsx';
10
10
  import Icon from '../assets/Icon.jsx';
11
11
  import FormBuilderIcon from './Icon/Icon.jsx';
12
+ import MultiSelectField from './MultiSelectField/MultiSelectField.jsx';
12
13
  import NumberInputField from './NumberInputField/NumberInputField.jsx';
13
14
  import SelectField from './SelectField/SelectField.jsx';
14
15
  import StaticAlert from './StaticAlert/StaticAlert.jsx';
@@ -31,5 +32,5 @@ import EventDatePicker from './eventWizardItems/EventDatePicker/EventDatePicker.
31
32
  import FormTitle from './eventWizardItems/FormTitle/FormTitle.jsx';
32
33
  import Intro from './eventWizardItems/Intro/Intro.jsx';
33
34
  import Required from './eventWizardItems/Required/Required.jsx';
34
- export { Button, BSRAddressSelector, SubmitButton, DateInputField, DropDownButton, FieldLabel, FormFieldChildPropTypes, FormFieldWrapper, GroupInputField, Icon, FormBuilderIcon, NumberInputField, SelectField, StaticAlert, Tag, TextBox, TextAreaField, TextInputField, Toast, Title, ToggleSwitchField, SectionSpinner, ArrayFieldset, FieldsetWrapper, BootstrapInputGroupField, BSRGridRow, BSRGridColumn, BSRGridRowCols, EventPicker, EventDatePicker, FormTitle, Intro, Required };
35
+ export { Button, BSRAddressSelector, SubmitButton, DateInputField, DropDownButton, FieldLabel, FormFieldChildPropTypes, FormFieldWrapper, GroupInputField, Icon, FormBuilderIcon, MultiSelectField, NumberInputField, SelectField, StaticAlert, Tag, TextBox, TextAreaField, TextInputField, Toast, Title, ToggleSwitchField, SectionSpinner, ArrayFieldset, FieldsetWrapper, BootstrapInputGroupField, BSRGridRow, BSRGridColumn, BSRGridRowCols, EventPicker, EventDatePicker, FormTitle, Intro, Required };
35
36
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/items/index.js"],"names":[],"mappings":"mBAKmB,qBAAqB;+BAHT,6CAA6C;yBAInD,2BAA2B;2BACzB,qCAAqC;2BACrC,qCAAqC;uBACzC,6BAA6B;oCAChB,gDAAgD;6BACvD,yCAAyC;4BAC1C,uCAAuC;iBAClD,oBAAoB;4BACT,iBAAiB;6BAGhB,yCAAyC;wBAC9C,+BAA+B;wBAC/B,+BAA+B;gBAfvC,eAAe;oBAkBX,uBAAuB;0BACjB,mCAAmC;2BAClC,qCAAqC;kBAG9C,mBAAmB;kBADnB,mBAAmB;8BAEP,2CAA2C;2BAP9C,qCAAqC;0BAStC,mCAAmC;4BACjC,uCAAuC;qCAN9B,yDAAyD;uBAOvE,uBAAuB;0BACpB,0BAA0B;2BACzB,2BAA2B;wBAC9B,gDAAgD;4BAC5C,wDAAwD;sBAC9D,4CAA4C;kBAChD,oCAAoC;qBACjC,0CAA0C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/items/index.js"],"names":[],"mappings":"mBAKmB,qBAAqB;+BAHT,6CAA6C;yBAInD,2BAA2B;2BACzB,qCAAqC;2BACrC,qCAAqC;uBACzC,6BAA6B;oCAChB,gDAAgD;6BACvD,yCAAyC;4BAC1C,uCAAuC;iBAClD,oBAAoB;4BACT,iBAAiB;6BAGhB,yCAAyC;6BACzC,yCAAyC;wBAC9C,+BAA+B;wBAC/B,+BAA+B;gBAhBvC,eAAe;oBAmBX,uBAAuB;0BACjB,mCAAmC;2BAClC,qCAAqC;kBAG9C,mBAAmB;kBADnB,mBAAmB;8BAEP,2CAA2C;2BAP9C,qCAAqC;0BAStC,mCAAmC;4BACjC,uCAAuC;qCAN9B,yDAAyD;uBAOvE,uBAAuB;0BACpB,0BAA0B;2BACzB,2BAA2B;wBAC9B,gDAAgD;4BAC5C,wDAAwD;sBAC9D,4CAA4C;kBAChD,oCAAoC;qBACjC,0CAA0C"}
@@ -123,6 +123,12 @@ Object.defineProperty(exports, "Intro", {
123
123
  return _Intro.default;
124
124
  }
125
125
  });
126
+ Object.defineProperty(exports, "MultiSelectField", {
127
+ enumerable: true,
128
+ get: function () {
129
+ return _MultiSelectField.default;
130
+ }
131
+ });
126
132
  Object.defineProperty(exports, "NumberInputField", {
127
133
  enumerable: true,
128
134
  get: function () {
@@ -213,6 +219,7 @@ var _FormFieldWrapper = _interopRequireDefault(require("./FormFieldWrapper/FormF
213
219
  var _GroupInputField = _interopRequireDefault(require("./GroupInputField/GroupInputField.jsx"));
214
220
  var _Icon = _interopRequireDefault(require("../assets/Icon.jsx"));
215
221
  var _Icon2 = _interopRequireDefault(require("./Icon/Icon.jsx"));
222
+ var _MultiSelectField = _interopRequireDefault(require("./MultiSelectField/MultiSelectField.jsx"));
216
223
  var _NumberInputField = _interopRequireDefault(require("./NumberInputField/NumberInputField.jsx"));
217
224
  var _SelectField = _interopRequireDefault(require("./SelectField/SelectField.jsx"));
218
225
  var _StaticAlert = _interopRequireDefault(require("./StaticAlert/StaticAlert.jsx"));
@@ -161,110 +161,182 @@
161
161
  background-color: $bsr-grey-100;
162
162
  }
163
163
 
164
- // Tags for MultiSelectField
165
- .tagGrid {
164
+ // MultiSelectField
165
+ .multiSelectField {
166
+ position: relative;
166
167
  display: flex;
167
- flex-direction: row;
168
168
  align-items: center;
169
- justify-content: flex-start;
170
169
  width: 100%;
171
- height: fit-content;
172
- min-height: 3rem;
173
- padding: 0;
170
+ min-height: 45px;
171
+ padding: ($base-gap) ($base-gap * 2);
172
+ gap: $base-gap;
173
+ background-color: $bsr-white-100;
174
+ border: $bsr-border-width-s solid $bsr-grey-100;
175
+ border-radius: $border-radius-sm;
176
+ font-family: "TradeGothicNext", "TradeGothicNextSR", sans-serif;
177
+ font-size: $inputField-font-size;
178
+ line-height: $inputField-line-height;
179
+ color: $bsr-black-90;
180
+ cursor: text;
174
181
 
175
- &.focused,
176
- &:focus-within,
177
- &:focus {
178
- box-shadow: $bsr-shadow-default !important;
179
- background-color: $white;
182
+ &:focus-within {
183
+ border-color: $bsr-black-90;
184
+ outline: $bsr-border-width-m solid $bsr-black-90;
180
185
  }
181
186
 
182
- .inputRow {
183
- width: 100%;
184
- overflow: auto;
187
+ &.error {
188
+ border-color: transparent;
189
+ outline: $bsr-border-width-l solid $bsr-border-color-error;
190
+ }
191
+
192
+ &.read-only,
193
+ &.disabled {
194
+ background-color: $bsr-black-10;
195
+ color: $bsr-black-60;
196
+ cursor: not-allowed;
197
+ }
198
+
199
+ &.dark {
200
+ background-color: $bsr-light-brown-100;
201
+ color: $bsr-white-100;
202
+ }
203
+
204
+ .multiSelectField__row {
185
205
  display: flex;
186
206
  flex-wrap: wrap;
187
- max-height: 3rem;
207
+ align-items: center;
208
+ flex: 1 1 auto;
209
+ gap: $base-gap;
210
+ min-width: 0;
211
+ }
188
212
 
189
- .tag {
190
- background-color: $bsr-grey-100;
191
- border: 0;
192
- border-radius: 1rem;
193
- margin-inline: 0.25rem;
194
- margin-block: 0.25rem;
213
+ .multiSelectField__tag {
214
+ display: inline-flex;
215
+ align-items: center;
216
+ gap: $base-gap;
217
+ margin: 0;
218
+ padding: 0 ($base-gap * 2);
219
+ min-height: calc(45px - #{$base-gap * 4});
220
+ background-color: $bsr-white-100;
221
+ color: $bsr-black-90;
222
+ border: $bsr-border-width-s solid $bsr-grey-100;
223
+ border-radius: $border-radius-lg * 2;
224
+ font-family: inherit;
225
+ font-size: inherit;
226
+ line-height: 1.2;
227
+ cursor: pointer;
228
+
229
+ &:hover,
230
+ &:focus-visible {
231
+ background-color: $bsr-black-10;
232
+ }
195
233
 
196
- &:first-child {
197
- margin-inline-start: 0.5rem;
198
- }
234
+ &:focus-visible {
235
+ outline: $bsr-border-width-m solid $bsr-black-90;
236
+ outline-offset: 1px;
199
237
  }
200
238
 
201
- .tagRemove {
202
- padding-inline-start: 0.5rem;
239
+ &:disabled {
240
+ cursor: default;
241
+ color: $bsr-black-40;
242
+ border-color: $bsr-black-40;
243
+ background-color: transparent;
244
+ }
245
+
246
+ .multiSelectField__tagRemove {
203
247
  font-weight: 600;
204
- font-size: 0.8rem;
248
+ font-size: 0.8em;
249
+ color: $bsr-grey-100;
205
250
  }
251
+ }
252
+
253
+ // input rendered by ariakit Combobox – neutralize global form input styles
254
+ input[role="combobox"] {
255
+ flex: 1 1 80px;
256
+ min-width: 80px;
257
+ width: auto;
258
+ margin: 0;
259
+ padding: 0 $base-gap;
260
+ background: transparent;
261
+ border: 0;
262
+ outline: 0;
263
+ color: inherit;
264
+ font: inherit;
265
+ line-height: inherit;
266
+ box-shadow: none;
206
267
 
207
- .combobox {
268
+ &:focus,
269
+ &:focus-visible,
270
+ &:active {
208
271
  border: 0;
209
- padding: 0.375rem 0.75rem;
210
- border-radius: 0.25rem;
211
- flex-grow: 1;
272
+ outline: 0;
273
+ box-shadow: none;
274
+ }
275
+ }
212
276
 
213
- &:focus,
214
- &:active,
215
- &:hover {
216
- outline: none;
217
- }
277
+ .multiSelectField__cancel {
278
+ flex-shrink: 0;
279
+ display: inline-flex;
280
+ align-items: center;
281
+ justify-content: center;
282
+ width: 24px;
283
+ height: 24px;
284
+ min-height: 0;
285
+ padding: 0;
286
+ margin: 0;
287
+ background: transparent;
288
+ border: 0;
289
+ color: $bsr-grey-100;
290
+ cursor: pointer;
291
+
292
+ &::before {
293
+ content: "✕";
294
+ font-size: 0.9em;
295
+ line-height: 1;
296
+ }
297
+
298
+ &:hover,
299
+ &:focus-visible {
300
+ color: $bsr-black-90;
301
+ }
302
+
303
+ svg {
304
+ display: none;
218
305
  }
219
306
  }
220
307
  }
221
308
 
222
- .comboboxMultiSelectPopover {
223
- position: relative;
224
- top: -2px;
225
- z-index: 10000;
309
+ .multiSelectFieldPopover {
310
+ z-index: 1000;
226
311
  display: flex;
227
312
  flex-direction: column;
228
- overflow: auto;
313
+ max-height: min(var(--popover-available-height, 320px), 320px);
314
+ overflow-y: auto;
229
315
  overscroll-behavior: contain;
230
- //border: 1px solid $popover-border-color !important;
231
- border-radius: $border-radius;
232
-
233
- background-color: $white;
234
- padding: 0.4rem;
235
- padding-top: 0.4rem;
236
- color: hsl(204 4% 0%);
237
- outline: 2px solid transparent;
238
- outline-offset: 2px;
239
- //box-shadow: $popover-box-shadow;
240
- //max-height: $popover-max-height;
241
-
242
- div[data-active-item="true"] {
243
- box-shadow: $bsr-shadow-default;
244
- border-color: $primary;
245
- outline: 0;
246
- }
316
+ padding: $base-gap;
317
+ background-color: $bsr-white-100;
318
+ border: $bsr-border-width-s solid $bsr-grey-100;
319
+ border-radius: $border-radius-sm;
320
+ box-shadow: $bsr-shadow-default;
321
+ font-family: "TradeGothicNext", "TradeGothicNextSR", sans-serif;
322
+ font-size: $inputField-font-size;
323
+ line-height: $inputField-line-height;
324
+ color: $bsr-black-90;
325
+
247
326
  div[role="option"] {
248
- font-weight: 600;
249
- border-radius: 0.25rem;
250
- padding: 0.25rem;
327
+ padding: ($base-gap * 2) ($base-gap * 3);
328
+ border-radius: $border-radius-sm;
329
+ cursor: pointer;
330
+ white-space: normal;
251
331
 
252
- &:focus,
253
- &:hover {
332
+ &:hover,
333
+ &[data-active-item] {
254
334
  background-color: $bsr-black-10;
255
- color: $bsr-black-90;
256
- cursor: pointer;
257
335
  }
258
336
 
259
337
  &[aria-selected="true"] {
260
- background-color: $primary;
261
- color: $white;
262
- border-color: $primary;
263
- outline: 0;
264
- }
265
-
266
- &:not(:last-child) {
267
- margin-bottom: 0.25rem;
338
+ background-color: $bsr-grey-100;
339
+ color: $bsr-white-100;
268
340
  }
269
341
  }
270
342
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pinuts/bsr-uikit-relaunch",
3
- "version": "0.3.2",
3
+ "version": "0.3.5",
4
4
  "private": false,
5
5
  "description": "BSR UI-KIT Relaunch",
6
6
  "main": "dist/index.js",