@entur/chip 0.9.1-beta.3 → 0.9.1-beta.4
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/dist/ActionChip.d.ts +18 -0
- package/dist/ChoiceChip.d.ts +20 -0
- package/dist/ChoiceChipGroup.d.ts +16 -0
- package/dist/ChoiceChipGroupContext.d.ts +9 -0
- package/dist/FilterChip.d.ts +27 -0
- package/dist/TagChip.d.ts +18 -0
- package/dist/chip.cjs.development.js +234 -0
- package/dist/chip.cjs.development.js.map +1 -0
- package/dist/chip.cjs.production.min.js +2 -0
- package/dist/chip.cjs.production.min.js.map +1 -0
- package/dist/chip.esm.js +218 -227
- package/dist/chip.esm.js.map +1 -1
- package/dist/index.d.ts +6 -98
- package/dist/index.js +8 -0
- package/dist/styles.css +224 -204
- package/package.json +15 -25
- package/dist/chip.cjs.js +0 -235
- package/dist/chip.cjs.js.map +0 -1
package/dist/chip.esm.js
CHANGED
|
@@ -1,235 +1,226 @@
|
|
|
1
|
-
import { warnAboutMissingStyles } from
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import { warnAboutMissingStyles } from '@entur/utils';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import cx from 'classnames';
|
|
4
|
+
import { LoadingDots } from '@entur/loader';
|
|
5
|
+
import { CloseSmallIcon } from '@entur/icons';
|
|
6
|
+
import { Fieldset } from '@entur/form';
|
|
7
|
+
|
|
8
|
+
function _extends() {
|
|
9
|
+
return _extends = Object.assign ? Object.assign.bind() : function (n) {
|
|
10
|
+
for (var e = 1; e < arguments.length; e++) {
|
|
11
|
+
var t = arguments[e];
|
|
12
|
+
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
13
|
+
}
|
|
14
|
+
return n;
|
|
15
|
+
}, _extends.apply(null, arguments);
|
|
16
|
+
}
|
|
17
|
+
function _objectWithoutPropertiesLoose(r, e) {
|
|
18
|
+
if (null == r) return {};
|
|
19
|
+
var t = {};
|
|
20
|
+
for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
|
|
21
|
+
if (-1 !== e.indexOf(n)) continue;
|
|
22
|
+
t[n] = r[n];
|
|
23
|
+
}
|
|
24
|
+
return t;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
var ChoiceChipGroupContext = /*#__PURE__*/React.createContext(null);
|
|
28
|
+
var ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;
|
|
29
|
+
var useChoiceChipGroupContext = function useChoiceChipGroupContext() {
|
|
30
|
+
var context = React.useContext(ChoiceChipGroupContext);
|
|
12
31
|
if (!context) {
|
|
13
|
-
throw new Error(
|
|
14
|
-
"You need to wrap your ChoiceChips in a ChoiceChipGroup-component"
|
|
15
|
-
);
|
|
32
|
+
throw new Error('You need to wrap your ChoiceChips in a ChoiceChipGroup-component');
|
|
16
33
|
}
|
|
17
34
|
return context;
|
|
18
35
|
};
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
}
|
|
99
|
-
return /* @__PURE__ */ jsx(Fragment, { children: actionChip });
|
|
36
|
+
|
|
37
|
+
var _excluded$4 = ["className", "children", "value", "disabled", "style", "size"];
|
|
38
|
+
var ChoiceChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
39
|
+
var className = _ref.className,
|
|
40
|
+
children = _ref.children,
|
|
41
|
+
value = _ref.value,
|
|
42
|
+
_ref$disabled = _ref.disabled,
|
|
43
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
44
|
+
style = _ref.style,
|
|
45
|
+
_ref$size = _ref.size,
|
|
46
|
+
size = _ref$size === void 0 ? 'medium' : _ref$size,
|
|
47
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
|
|
48
|
+
var childrenArray = React.Children.toArray(children);
|
|
49
|
+
var hasLeadingIcon = childrenArray.length > 1 && typeof childrenArray[0] !== 'string';
|
|
50
|
+
var hasTrailingIcon = childrenArray.length > 1 && typeof childrenArray[childrenArray.length - 1] !== 'string';
|
|
51
|
+
var classList = cx(className, 'eds-chip', "eds-chip--size-" + size, {
|
|
52
|
+
'eds-chip--disabled': disabled,
|
|
53
|
+
'eds-chip--leading-icon': hasLeadingIcon,
|
|
54
|
+
'eds-chip--trailing-icon': hasTrailingIcon
|
|
55
|
+
});
|
|
56
|
+
var _useChoiceChipGroupCo = useChoiceChipGroupContext(),
|
|
57
|
+
name = _useChoiceChipGroupCo.name,
|
|
58
|
+
selectedValue = _useChoiceChipGroupCo.value,
|
|
59
|
+
onChange = _useChoiceChipGroupCo.onChange;
|
|
60
|
+
return React.createElement("label", {
|
|
61
|
+
className: "eds-choice-chip",
|
|
62
|
+
style: style
|
|
63
|
+
}, React.createElement("input", _extends({
|
|
64
|
+
className: "eds-choice-chip__input",
|
|
65
|
+
type: "radio",
|
|
66
|
+
name: name,
|
|
67
|
+
ref: ref,
|
|
68
|
+
value: value,
|
|
69
|
+
disabled: disabled,
|
|
70
|
+
checked: selectedValue === value,
|
|
71
|
+
onChange: onChange,
|
|
72
|
+
"aria-disabled": disabled
|
|
73
|
+
}, rest)), React.createElement("div", {
|
|
74
|
+
className: classList
|
|
75
|
+
}, children));
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
var _excluded$3 = ["children", "className", "loading", "size"];
|
|
79
|
+
var ActionChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
80
|
+
var children = _ref.children,
|
|
81
|
+
className = _ref.className,
|
|
82
|
+
_ref$loading = _ref.loading,
|
|
83
|
+
loading = _ref$loading === void 0 ? false : _ref$loading,
|
|
84
|
+
_ref$size = _ref.size,
|
|
85
|
+
size = _ref$size === void 0 ? 'medium' : _ref$size,
|
|
86
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
|
|
87
|
+
var childrenArray = React.Children.toArray(children);
|
|
88
|
+
var hasLeadingIcon = childrenArray.length > 1 && typeof childrenArray[0] !== 'string';
|
|
89
|
+
var hasTrailingIcon = childrenArray.length > 1 && typeof childrenArray[childrenArray.length - 1] !== 'string';
|
|
90
|
+
var ariaLabelValue = function ariaLabelValue() {
|
|
91
|
+
if (rest['aria-label']) return rest['aria-label'];
|
|
92
|
+
if (loading) return ariaLabelWhenLoading;
|
|
93
|
+
return undefined;
|
|
94
|
+
};
|
|
95
|
+
var ariaLabelWhenLoading = childrenArray.filter(function (child) {
|
|
96
|
+
return typeof child === 'string';
|
|
97
|
+
}).join(' ');
|
|
98
|
+
var classList = cx(className, 'eds-chip', 'eds-action-chip', "eds-chip--size-" + size, {
|
|
99
|
+
'eds-chip--leading-icon': hasLeadingIcon,
|
|
100
|
+
'eds-chip--trailing-icon': hasTrailingIcon,
|
|
101
|
+
'eds-action-chip--disabled': rest.disabled
|
|
102
|
+
});
|
|
103
|
+
var actionChip = React.createElement("button", _extends({
|
|
104
|
+
className: classList,
|
|
105
|
+
ref: ref,
|
|
106
|
+
"aria-busy": loading,
|
|
107
|
+
"aria-label": ariaLabelValue(),
|
|
108
|
+
type: "button"
|
|
109
|
+
}, rest), loading ? React.createElement(LoadingDots, {
|
|
110
|
+
className: "eds-action-chip__loading-dots"
|
|
111
|
+
}) : children);
|
|
112
|
+
if (rest.disabled) {
|
|
113
|
+
return React.createElement("div", {
|
|
114
|
+
className: "eds-action-chip--disabled__wrapper"
|
|
115
|
+
}, actionChip);
|
|
100
116
|
}
|
|
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
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
);
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
(
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
children: [
|
|
183
|
-
/* @__PURE__ */ jsx("span", { className: "eds-filter-chip__icon", children: /* @__PURE__ */ jsx(CheckboxIcon, {}) }),
|
|
184
|
-
children
|
|
185
|
-
]
|
|
186
|
-
}
|
|
187
|
-
)
|
|
188
|
-
] });
|
|
189
|
-
}
|
|
190
|
-
);
|
|
191
|
-
const CheckboxIcon = () => {
|
|
192
|
-
return /* @__PURE__ */ jsx(
|
|
193
|
-
"svg",
|
|
194
|
-
{
|
|
195
|
-
className: "eds-filter-chip-icon",
|
|
196
|
-
width: "16",
|
|
197
|
-
height: "16",
|
|
198
|
-
viewBox: "0 0 16 16",
|
|
199
|
-
fill: "none",
|
|
200
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
201
|
-
children: /* @__PURE__ */ jsx(
|
|
202
|
-
"path",
|
|
203
|
-
{
|
|
204
|
-
className: "eds-filter-chip-icon__path",
|
|
205
|
-
d: "M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325",
|
|
206
|
-
stroke: "#181C56",
|
|
207
|
-
strokeWidth: "2"
|
|
208
|
-
}
|
|
209
|
-
)
|
|
210
|
-
}
|
|
211
|
-
);
|
|
117
|
+
return React.createElement(React.Fragment, null, actionChip);
|
|
118
|
+
});
|
|
119
|
+
|
|
120
|
+
var _excluded$2 = ["children", "className", "onClose", "closeButtonAriaLabel", "size"];
|
|
121
|
+
var TagChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
122
|
+
var children = _ref.children,
|
|
123
|
+
className = _ref.className,
|
|
124
|
+
onClose = _ref.onClose,
|
|
125
|
+
closeButtonAriaLabel = _ref.closeButtonAriaLabel,
|
|
126
|
+
_ref$size = _ref.size,
|
|
127
|
+
size = _ref$size === void 0 ? 'medium' : _ref$size,
|
|
128
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
129
|
+
var childrenArray = React.Children.toArray(children);
|
|
130
|
+
var hasLeadingIcon = childrenArray.length > 1 && typeof childrenArray[0] !== 'string';
|
|
131
|
+
var hasTrailingIcon = childrenArray.length > 1 && typeof childrenArray[childrenArray.length - 1] !== 'string';
|
|
132
|
+
var selectedCloseLabel = closeButtonAriaLabel != null ? closeButtonAriaLabel : 'Fjern ' + (children == null ? void 0 : children.toString());
|
|
133
|
+
return React.createElement("div", _extends({
|
|
134
|
+
className: cx('eds-chip', 'eds-tag-chip', "eds-chip--size-" + size, className, {
|
|
135
|
+
'eds-chip--leading-icon': hasLeadingIcon,
|
|
136
|
+
'eds-chip--trailing-icon': hasTrailingIcon
|
|
137
|
+
})
|
|
138
|
+
}, rest), children, React.createElement("button", {
|
|
139
|
+
className: "eds-tag-chip__close-button",
|
|
140
|
+
type: "button",
|
|
141
|
+
onClick: onClose,
|
|
142
|
+
"aria-label": selectedCloseLabel,
|
|
143
|
+
ref: ref
|
|
144
|
+
}, React.createElement(CloseSmallIcon, {
|
|
145
|
+
"aria-hidden": true
|
|
146
|
+
})));
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
var _excluded$1 = ["className", "children", "value", "disabled", "name", "style", "size"];
|
|
150
|
+
var FilterChip = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
151
|
+
var className = _ref.className,
|
|
152
|
+
children = _ref.children,
|
|
153
|
+
value = _ref.value,
|
|
154
|
+
_ref$disabled = _ref.disabled,
|
|
155
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
156
|
+
name = _ref.name,
|
|
157
|
+
style = _ref.style,
|
|
158
|
+
_ref$size = _ref.size,
|
|
159
|
+
size = _ref$size === void 0 ? 'medium' : _ref$size,
|
|
160
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
161
|
+
var childrenArray = React.Children.toArray(children);
|
|
162
|
+
var hasLeadingIcon = childrenArray.length > 1 && typeof childrenArray[0] !== 'string';
|
|
163
|
+
var hasTrailingIcon = childrenArray.length > 1 && typeof childrenArray[childrenArray.length - 1] !== 'string';
|
|
164
|
+
var classList = cx(className, 'eds-filter-chip');
|
|
165
|
+
return React.createElement("label", {
|
|
166
|
+
className: classList,
|
|
167
|
+
style: style
|
|
168
|
+
}, React.createElement("input", _extends({
|
|
169
|
+
className: "eds-filter-chip__input",
|
|
170
|
+
type: "checkbox",
|
|
171
|
+
name: name,
|
|
172
|
+
ref: ref,
|
|
173
|
+
value: value,
|
|
174
|
+
disabled: disabled
|
|
175
|
+
}, rest)), React.createElement("div", {
|
|
176
|
+
className: cx('eds-chip', "eds-chip--size-" + size, {
|
|
177
|
+
'eds-chip--leading-icon': hasLeadingIcon,
|
|
178
|
+
'eds-chip--trailing-icon': hasTrailingIcon
|
|
179
|
+
})
|
|
180
|
+
}, React.createElement("span", {
|
|
181
|
+
className: "eds-filter-chip__icon"
|
|
182
|
+
}, React.createElement(CheckboxIcon, null)), children));
|
|
183
|
+
});
|
|
184
|
+
var CheckboxIcon = function CheckboxIcon() {
|
|
185
|
+
return React.createElement("svg", {
|
|
186
|
+
className: "eds-filter-chip-icon",
|
|
187
|
+
width: "16",
|
|
188
|
+
height: "16",
|
|
189
|
+
viewBox: "0 0 16 16",
|
|
190
|
+
fill: "none",
|
|
191
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
192
|
+
}, React.createElement("path", {
|
|
193
|
+
className: "eds-filter-chip-icon__path",
|
|
194
|
+
d: "M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325",
|
|
195
|
+
stroke: "#181C56",
|
|
196
|
+
strokeWidth: "2"
|
|
197
|
+
}));
|
|
212
198
|
};
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
199
|
+
|
|
200
|
+
var _excluded = ["name", "value", "children", "onChange", "label"];
|
|
201
|
+
var ChoiceChipGroup = function ChoiceChipGroup(_ref) {
|
|
202
|
+
var name = _ref.name,
|
|
203
|
+
value = _ref.value,
|
|
204
|
+
children = _ref.children,
|
|
205
|
+
onChange = _ref.onChange,
|
|
206
|
+
label = _ref.label,
|
|
207
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
208
|
+
var contextValue = React.useMemo(function () {
|
|
209
|
+
return {
|
|
210
|
+
name: name,
|
|
211
|
+
value: value,
|
|
212
|
+
onChange: onChange
|
|
213
|
+
};
|
|
214
|
+
}, [name, value, onChange]);
|
|
215
|
+
return React.createElement(ChoiceChipGroupContextProvider, {
|
|
216
|
+
value: contextValue
|
|
217
|
+
}, React.createElement(Fieldset, _extends({
|
|
218
|
+
className: "eds-choice-chips-group",
|
|
219
|
+
label: label
|
|
220
|
+
}, rest), children));
|
|
234
221
|
};
|
|
222
|
+
|
|
223
|
+
warnAboutMissingStyles('chip', 'form');
|
|
224
|
+
|
|
225
|
+
export { ActionChip, ChoiceChip, ChoiceChipGroup, FilterChip, TagChip };
|
|
235
226
|
//# sourceMappingURL=chip.esm.js.map
|
package/dist/chip.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip.esm.js","sources":["../src/ChoiceChipGroupContext.tsx","../src/ChoiceChip.tsx","../src/ActionChip.tsx","../src/TagChip.tsx","../src/FilterChip.tsx","../src/ChoiceChipGroup.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\n\ntype ChoiceChipGroupContextProps = {\n name: string;\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n value: string | null;\n};\n\nconst ChoiceChipGroupContext =\n React.createContext<ChoiceChipGroupContextProps | null>(null);\n\nexport const ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;\n\nexport const useChoiceChipGroupContext: () => ChoiceChipGroupContextProps =\n () => {\n const context = React.useContext(ChoiceChipGroupContext);\n if (!context) {\n throw new Error(\n 'You need to wrap your ChoiceChips in a ChoiceChipGroup-component',\n );\n }\n return context;\n };\n","import React from 'react';\nimport cx from 'classnames';\nimport { useChoiceChipGroupContext } from './ChoiceChipGroupContext';\nimport './BaseChip.scss';\nimport './ChoiceChip.scss';\n\nexport type ChoiceChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om Choicechip er deaktivert eller ikke\n * @default false\n */\n disabled?: boolean;\n /** Label til ChoiceChip */\n children?: React.ReactNode;\n /** Verdien til ChoiceChip */\n value: string;\n /** Størrelsen på chip\n * @default 'medium'\n */\n size?: 'small' | 'medium';\n} & Omit<\n React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n 'value' | 'size'\n>;\n\nexport const ChoiceChip = React.forwardRef<HTMLInputElement, ChoiceChipProps>(\n (\n {\n className,\n children,\n value,\n disabled = false,\n style,\n size = 'medium',\n ...rest\n },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const classList = cx(className, 'eds-chip', `eds-chip--size-${size}`, {\n 'eds-chip--disabled': disabled,\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n });\n const {\n name,\n value: selectedValue,\n onChange,\n } = useChoiceChipGroupContext();\n return (\n <label className=\"eds-choice-chip\" style={style}>\n <input\n className=\"eds-choice-chip__input\"\n type=\"radio\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n checked={selectedValue === value}\n onChange={onChange}\n aria-disabled={disabled}\n {...rest}\n />\n <div className={classList}>{children}</div>\n </label>\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseChip.scss';\nimport './ActionChip.scss';\n\nexport type ActionChipProps = {\n /** Teksten som vises i ActionChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Om chip-en er opptatt, f.eks med å oppdatere informasjon\n * @default false\n */\n loading?: boolean;\n /** Størrelsen på chip\n * @default 'medium'\n */\n size?: 'small' | 'medium';\n} & React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n>;\n\nexport const ActionChip = React.forwardRef<HTMLButtonElement, ActionChipProps>(\n (\n { children, className, loading = false, size = 'medium', ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelValue = () => {\n if (rest['aria-label']) return rest['aria-label'];\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const classList = classNames(\n className,\n 'eds-chip',\n 'eds-action-chip',\n `eds-chip--size-${size}`,\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n 'eds-action-chip--disabled': rest.disabled,\n },\n );\n\n const actionChip = (\n <button\n className={classList}\n ref={ref}\n aria-busy={loading}\n aria-label={ariaLabelValue()}\n type=\"button\"\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-action-chip__loading-dots\" />\n ) : (\n children\n )}\n </button>\n );\n\n if (rest.disabled) {\n return (\n <div className=\"eds-action-chip--disabled__wrapper\">{actionChip}</div>\n );\n }\n return <>{actionChip}</>;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { CloseSmallIcon } from '@entur/icons';\nimport './BaseChip.scss';\nimport './TagChip.scss';\n\nexport type TagChipProps = {\n /** Teksten som vises i TagChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback for når man klikker på krysset */\n onClose: () => void;\n /** Skjermlesertekst for X-knappen */\n closeButtonAriaLabel?: string;\n /** Størrelsen på chip\n * @default 'medium'\n */\n size?: 'small' | 'medium';\n};\n\nexport const TagChip = React.forwardRef<HTMLButtonElement, TagChipProps>(\n (\n {\n children,\n className,\n onClose,\n closeButtonAriaLabel,\n size = 'medium',\n ...rest\n },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const selectedCloseLabel =\n closeButtonAriaLabel ?? 'Fjern ' + children?.toString();\n\n return (\n <div\n className={classNames(\n 'eds-chip',\n 'eds-tag-chip',\n `eds-chip--size-${size}`,\n className,\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n },\n )}\n {...rest}\n >\n {children}\n <button\n className=\"eds-tag-chip__close-button\"\n type=\"button\"\n onClick={onClose}\n aria-label={selectedCloseLabel}\n ref={ref}\n >\n <CloseSmallIcon aria-hidden />\n </button>\n </div>\n );\n },\n);\n","import React from 'react';\nimport cx from 'classnames';\nimport './BaseChip.scss';\nimport './FilterChip.scss';\n\nexport type FilterChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label til FilterChip */\n children?: React.ReactNode;\n /** Verdien til FilterChip */\n value: string;\n /** Størrelsen på chip\n * @default 'medium'\n */\n size?: 'small' | 'medium';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'size'>;\n\nexport const FilterChip = React.forwardRef<HTMLInputElement, FilterChipProps>(\n (\n {\n className,\n children,\n value,\n disabled = false,\n name,\n style,\n size = 'medium',\n ...rest\n },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const classList = cx(className, 'eds-filter-chip');\n\n return (\n <label className={classList} style={style}>\n <input\n className=\"eds-filter-chip__input\"\n type=\"checkbox\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n {...rest}\n />\n <div\n className={cx('eds-chip', `eds-chip--size-${size}`, {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n })}\n >\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </div>\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325\"\n stroke=\"#181C56\"\n strokeWidth=\"2\"\n />\n </svg>\n );\n};\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\n\nimport './ChoiceChipGroup.scss';\n\nexport type ChoiceChipGroupProps = {\n /** Navnet til ChoiceChipsGroup */\n name: string;\n /** Verdien til den valgte ChoiceChipen */\n value: string | null;\n /** ChoiceChip-komponentene sendes inn som children */\n children: React.ReactNode;\n /** En callback som blir kalles hver gang en ChoiceChip klikkes på */\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Labelen til ChoiceChip-gruppen. */\n label?: React.ReactNode;\n [key: string]: any;\n};\n\nexport const ChoiceChipGroup: React.FC<ChoiceChipGroupProps> = ({\n name,\n value,\n children,\n onChange,\n label,\n ...rest\n}) => {\n const contextValue = React.useMemo(\n () => ({ name, value, onChange }),\n [name, value, onChange],\n );\n return (\n <ChoiceChipGroupContextProvider value={contextValue}>\n <Fieldset className=\"eds-choice-chips-group\" label={label} {...rest}>\n {children}\n </Fieldset>\n </ChoiceChipGroupContextProvider>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('chip', 'form');\n\nexport * from './ChoiceChip';\nexport * from './ActionChip';\nexport * from './TagChip';\nexport * from './FilterChip';\nexport * from './ChoiceChipGroup';\n"],"names":["classNames"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chip.esm.js","sources":["../src/ChoiceChipGroupContext.tsx","../src/ChoiceChip.tsx","../src/ActionChip.tsx","../src/TagChip.tsx","../src/FilterChip.tsx","../src/ChoiceChipGroup.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\n\ntype ChoiceChipGroupContextProps = {\n name: string;\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n value: string | null;\n};\n\nconst ChoiceChipGroupContext =\n React.createContext<ChoiceChipGroupContextProps | null>(null);\n\nexport const ChoiceChipGroupContextProvider = ChoiceChipGroupContext.Provider;\n\nexport const useChoiceChipGroupContext: () => ChoiceChipGroupContextProps =\n () => {\n const context = React.useContext(ChoiceChipGroupContext);\n if (!context) {\n throw new Error(\n 'You need to wrap your ChoiceChips in a ChoiceChipGroup-component',\n );\n }\n return context;\n };\n","import React from 'react';\nimport cx from 'classnames';\nimport { useChoiceChipGroupContext } from './ChoiceChipGroupContext';\nimport './BaseChip.scss';\nimport './ChoiceChip.scss';\n\nexport type ChoiceChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om Choicechip er deaktivert eller ikke\n * @default false\n */\n disabled?: boolean;\n /** Label til ChoiceChip */\n children?: React.ReactNode;\n /** Verdien til ChoiceChip */\n value: string;\n /** Størrelsen på chip\n * @default 'medium'\n */\n size?: 'small' | 'medium';\n} & Omit<\n React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n 'value' | 'size'\n>;\n\nexport const ChoiceChip = React.forwardRef<HTMLInputElement, ChoiceChipProps>(\n (\n {\n className,\n children,\n value,\n disabled = false,\n style,\n size = 'medium',\n ...rest\n },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const classList = cx(className, 'eds-chip', `eds-chip--size-${size}`, {\n 'eds-chip--disabled': disabled,\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n });\n const {\n name,\n value: selectedValue,\n onChange,\n } = useChoiceChipGroupContext();\n return (\n <label className=\"eds-choice-chip\" style={style}>\n <input\n className=\"eds-choice-chip__input\"\n type=\"radio\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n checked={selectedValue === value}\n onChange={onChange}\n aria-disabled={disabled}\n {...rest}\n />\n <div className={classList}>{children}</div>\n </label>\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseChip.scss';\nimport './ActionChip.scss';\n\nexport type ActionChipProps = {\n /** Teksten som vises i ActionChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Om chip-en er opptatt, f.eks med å oppdatere informasjon\n * @default false\n */\n loading?: boolean;\n /** Størrelsen på chip\n * @default 'medium'\n */\n size?: 'small' | 'medium';\n} & React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n>;\n\nexport const ActionChip = React.forwardRef<HTMLButtonElement, ActionChipProps>(\n (\n { children, className, loading = false, size = 'medium', ...rest },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelValue = () => {\n if (rest['aria-label']) return rest['aria-label'];\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const classList = classNames(\n className,\n 'eds-chip',\n 'eds-action-chip',\n `eds-chip--size-${size}`,\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n 'eds-action-chip--disabled': rest.disabled,\n },\n );\n\n const actionChip = (\n <button\n className={classList}\n ref={ref}\n aria-busy={loading}\n aria-label={ariaLabelValue()}\n type=\"button\"\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-action-chip__loading-dots\" />\n ) : (\n children\n )}\n </button>\n );\n\n if (rest.disabled) {\n return (\n <div className=\"eds-action-chip--disabled__wrapper\">{actionChip}</div>\n );\n }\n return <>{actionChip}</>;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport { CloseSmallIcon } from '@entur/icons';\nimport './BaseChip.scss';\nimport './TagChip.scss';\n\nexport type TagChipProps = {\n /** Teksten som vises i TagChip */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback for når man klikker på krysset */\n onClose: () => void;\n /** Skjermlesertekst for X-knappen */\n closeButtonAriaLabel?: string;\n /** Størrelsen på chip\n * @default 'medium'\n */\n size?: 'small' | 'medium';\n};\n\nexport const TagChip = React.forwardRef<HTMLButtonElement, TagChipProps>(\n (\n {\n children,\n className,\n onClose,\n closeButtonAriaLabel,\n size = 'medium',\n ...rest\n },\n ref: React.Ref<HTMLButtonElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const selectedCloseLabel =\n closeButtonAriaLabel ?? 'Fjern ' + children?.toString();\n\n return (\n <div\n className={classNames(\n 'eds-chip',\n 'eds-tag-chip',\n `eds-chip--size-${size}`,\n className,\n {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n },\n )}\n {...rest}\n >\n {children}\n <button\n className=\"eds-tag-chip__close-button\"\n type=\"button\"\n onClick={onClose}\n aria-label={selectedCloseLabel}\n ref={ref}\n >\n <CloseSmallIcon aria-hidden />\n </button>\n </div>\n );\n },\n);\n","import React from 'react';\nimport cx from 'classnames';\nimport './BaseChip.scss';\nimport './FilterChip.scss';\n\nexport type FilterChipProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label til FilterChip */\n children?: React.ReactNode;\n /** Verdien til FilterChip */\n value: string;\n /** Størrelsen på chip\n * @default 'medium'\n */\n size?: 'small' | 'medium';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'size'>;\n\nexport const FilterChip = React.forwardRef<HTMLInputElement, FilterChipProps>(\n (\n {\n className,\n children,\n value,\n disabled = false,\n name,\n style,\n size = 'medium',\n ...rest\n },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const classList = cx(className, 'eds-filter-chip');\n\n return (\n <label className={classList} style={style}>\n <input\n className=\"eds-filter-chip__input\"\n type=\"checkbox\"\n name={name}\n ref={ref}\n value={value}\n disabled={disabled}\n {...rest}\n />\n <div\n className={cx('eds-chip', `eds-chip--size-${size}`, {\n 'eds-chip--leading-icon': hasLeadingIcon,\n 'eds-chip--trailing-icon': hasTrailingIcon,\n })}\n >\n <span className=\"eds-filter-chip__icon\">\n <CheckboxIcon />\n </span>\n {children}\n </div>\n </label>\n );\n },\n);\n\nconst CheckboxIcon: React.FC = () => {\n return (\n <svg\n className=\"eds-filter-chip-icon\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className=\"eds-filter-chip-icon__path\"\n d=\"M1.71283 7.10801L5.6464 11.1377C5.84098 11.3371 6.16095 11.339 6.35786 11.1419L14.2916 3.20325\"\n stroke=\"#181C56\"\n strokeWidth=\"2\"\n />\n </svg>\n );\n};\n","import React from 'react';\nimport { ChoiceChipGroupContextProvider } from './ChoiceChipGroupContext';\nimport { Fieldset } from '@entur/form';\n\nimport './ChoiceChipGroup.scss';\n\nexport type ChoiceChipGroupProps = {\n /** Navnet til ChoiceChipsGroup */\n name: string;\n /** Verdien til den valgte ChoiceChipen */\n value: string | null;\n /** ChoiceChip-komponentene sendes inn som children */\n children: React.ReactNode;\n /** En callback som blir kalles hver gang en ChoiceChip klikkes på */\n onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Labelen til ChoiceChip-gruppen. */\n label?: React.ReactNode;\n [key: string]: any;\n};\n\nexport const ChoiceChipGroup: React.FC<ChoiceChipGroupProps> = ({\n name,\n value,\n children,\n onChange,\n label,\n ...rest\n}) => {\n const contextValue = React.useMemo(\n () => ({ name, value, onChange }),\n [name, value, onChange],\n );\n return (\n <ChoiceChipGroupContextProvider value={contextValue}>\n <Fieldset className=\"eds-choice-chips-group\" label={label} {...rest}>\n {children}\n </Fieldset>\n </ChoiceChipGroupContextProvider>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('chip', 'form');\n\nexport * from './ChoiceChip';\nexport * from './ActionChip';\nexport * from './TagChip';\nexport * from './FilterChip';\nexport * from './ChoiceChipGroup';\n"],"names":["ChoiceChipGroupContext","React","createContext","ChoiceChipGroupContextProvider","Provider","useChoiceChipGroupContext","context","useContext","Error","ChoiceChip","forwardRef","_ref","ref","className","children","value","_ref$disabled","disabled","style","_ref$size","size","rest","_objectWithoutPropertiesLoose","_excluded","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","classList","cx","_useChoiceChipGroupCo","name","selectedValue","onChange","createElement","_extends","type","checked","ActionChip","_ref$loading","loading","ariaLabelValue","ariaLabelWhenLoading","undefined","filter","child","join","classNames","actionChip","LoadingDots","Fragment","TagChip","onClose","closeButtonAriaLabel","selectedCloseLabel","toString","onClick","CloseSmallIcon","FilterChip","CheckboxIcon","width","height","viewBox","fill","xmlns","d","stroke","strokeWidth","ChoiceChipGroup","label","contextValue","useMemo","Fieldset","warnAboutMissingStyles"],"mappings":"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"}
|