@primer/components 0.0.0-2021829202552 → 0.0.0-2021829233555
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/CHANGELOG.md +1 -1
- package/dist/browser.esm.js +250 -290
- package/dist/browser.esm.js.map +1 -1
- package/dist/browser.umd.js +318 -358
- package/dist/browser.umd.js.map +1 -1
- package/lib/FilteredActionList/FilteredActionList.js +31 -6
- package/lib/Overlay.d.ts +1 -2
- package/lib/Overlay.js +5 -10
- package/lib/SelectMenu/SelectMenu.d.ts +2 -8
- package/lib/TextInput.d.ts +3 -6
- package/lib/TextInput.js +10 -9
- package/lib/hooks/useOverlay.d.ts +1 -2
- package/lib/hooks/useOverlay.js +6 -11
- package/lib/index.d.ts +0 -2
- package/lib/index.js +0 -16
- package/lib/utils/types.d.ts +0 -3
- package/lib-esm/FilteredActionList/FilteredActionList.js +31 -4
- package/lib-esm/Overlay.d.ts +1 -2
- package/lib-esm/Overlay.js +5 -8
- package/lib-esm/SelectMenu/SelectMenu.d.ts +2 -8
- package/lib-esm/TextInput.d.ts +3 -6
- package/lib-esm/TextInput.js +9 -8
- package/lib-esm/hooks/useOverlay.d.ts +1 -2
- package/lib-esm/hooks/useOverlay.js +6 -11
- package/lib-esm/index.d.ts +0 -2
- package/lib-esm/index.js +0 -2
- package/lib-esm/utils/types.d.ts +0 -3
- package/package.json +4 -7
- package/lib/Autocomplete/Autocomplete.d.ts +0 -31
- package/lib/Autocomplete/Autocomplete.js +0 -60
- package/lib/Autocomplete/AutocompleteContext.d.ts +0 -14
- package/lib/Autocomplete/AutocompleteContext.js +0 -11
- package/lib/Autocomplete/AutocompleteInput.d.ts +0 -9
- package/lib/Autocomplete/AutocompleteInput.js +0 -148
- package/lib/Autocomplete/AutocompleteMenu.d.ts +0 -70
- package/lib/Autocomplete/AutocompleteMenu.js +0 -252
- package/lib/Autocomplete/index.d.ts +0 -2
- package/lib/Autocomplete/index.js +0 -15
- package/lib/Badge/Badge.d.ts +0 -8
- package/lib/Badge/Badge.js +0 -59
- package/lib/Badge/BadgeState.d.ts +0 -13
- package/lib/Badge/BadgeState.js +0 -51
- package/lib/Badge/_badgeStyleUtils.d.ts +0 -3
- package/lib/Badge/_badgeStyleUtils.js +0 -39
- package/lib/TextInputTokens.d.ts +0 -43
- package/lib/TextInputTokens.js +0 -237
- package/lib/Token/Token.d.ts +0 -14
- package/lib/Token/Token.js +0 -75
- package/lib/Token/TokenBase.d.ts +0 -16
- package/lib/Token/TokenBase.js +0 -90
- package/lib/Token/TokenLabel.d.ts +0 -14
- package/lib/Token/TokenLabel.js +0 -135
- package/lib/Token/TokenProfile.d.ts +0 -7
- package/lib/Token/TokenProfile.js +0 -50
- package/lib/Token/_RemoveTokenButton.d.ts +0 -3
- package/lib/Token/_RemoveTokenButton.js +0 -45
- package/lib/Token/_tokenButtonUtils.d.ts +0 -10
- package/lib/Token/_tokenButtonUtils.js +0 -42
- package/lib/_UnstyledTextInput.d.ts +0 -2
- package/lib/_UnstyledTextInput.js +0 -20
- package/lib/utils/scrollIntoViewingArea.d.ts +0 -1
- package/lib/utils/scrollIntoViewingArea.js +0 -39
- package/lib-esm/Autocomplete/Autocomplete.d.ts +0 -31
- package/lib-esm/Autocomplete/Autocomplete.js +0 -40
- package/lib-esm/Autocomplete/AutocompleteContext.d.ts +0 -14
- package/lib-esm/Autocomplete/AutocompleteContext.js +0 -2
- package/lib-esm/Autocomplete/AutocompleteInput.d.ts +0 -9
- package/lib-esm/Autocomplete/AutocompleteInput.js +0 -129
- package/lib-esm/Autocomplete/AutocompleteMenu.d.ts +0 -70
- package/lib-esm/Autocomplete/AutocompleteMenu.js +0 -226
- package/lib-esm/Autocomplete/index.d.ts +0 -2
- package/lib-esm/Autocomplete/index.js +0 -1
- package/lib-esm/Badge/Badge.d.ts +0 -8
- package/lib-esm/Badge/Badge.js +0 -44
- package/lib-esm/Badge/BadgeState.d.ts +0 -13
- package/lib-esm/Badge/BadgeState.js +0 -40
- package/lib-esm/Badge/_badgeStyleUtils.d.ts +0 -3
- package/lib-esm/Badge/_badgeStyleUtils.js +0 -29
- package/lib-esm/TextInputTokens.d.ts +0 -43
- package/lib-esm/TextInputTokens.js +0 -210
- package/lib-esm/Token/Token.d.ts +0 -14
- package/lib-esm/Token/Token.js +0 -56
- package/lib-esm/Token/TokenBase.d.ts +0 -16
- package/lib-esm/Token/TokenBase.js +0 -70
- package/lib-esm/Token/TokenLabel.d.ts +0 -14
- package/lib-esm/Token/TokenLabel.js +0 -115
- package/lib-esm/Token/TokenProfile.d.ts +0 -7
- package/lib-esm/Token/TokenProfile.js +0 -29
- package/lib-esm/Token/_RemoveTokenButton.d.ts +0 -3
- package/lib-esm/Token/_RemoveTokenButton.js +0 -30
- package/lib-esm/Token/_tokenButtonUtils.d.ts +0 -10
- package/lib-esm/Token/_tokenButtonUtils.js +0 -26
- package/lib-esm/_UnstyledTextInput.d.ts +0 -2
- package/lib-esm/_UnstyledTextInput.js +0 -7
- package/lib-esm/utils/scrollIntoViewingArea.d.ts +0 -1
- package/lib-esm/utils/scrollIntoViewingArea.js +0 -30
@@ -1,252 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.default = void 0;
|
7
|
-
|
8
|
-
var _react = _interopRequireWildcard(require("react"));
|
9
|
-
|
10
|
-
var _ActionList = require("../ActionList");
|
11
|
-
|
12
|
-
var _hooks = require("../hooks");
|
13
|
-
|
14
|
-
var _useFocusZone = require("../hooks/useFocusZone");
|
15
|
-
|
16
|
-
var _Overlay = _interopRequireDefault(require("../Overlay"));
|
17
|
-
|
18
|
-
var _ = require("../");
|
19
|
-
|
20
|
-
var _Portal = require("../Portal");
|
21
|
-
|
22
|
-
var _AutocompleteContext = require("./AutocompleteContext");
|
23
|
-
|
24
|
-
var _useCombinedRefs = require("../hooks/useCombinedRefs");
|
25
|
-
|
26
|
-
var _octiconsReact = require("@primer/octicons-react");
|
27
|
-
|
28
|
-
var _uniqueId = require("../utils/uniqueId");
|
29
|
-
|
30
|
-
var _scrollIntoViewingArea = require("../utils/scrollIntoViewingArea");
|
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 (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
|
-
const DROPDOWN_PORTAL_CONTAINER_NAME = '__listcontainerportal__';
|
39
|
-
|
40
|
-
const getDefaultSortFn = isItemSelectedFn => (itemIdA, itemIdB) => isItemSelectedFn(itemIdA) === isItemSelectedFn(itemIdB) ? 0 : isItemSelectedFn(itemIdA) ? -1 : 1;
|
41
|
-
|
42
|
-
function getDefaultItemFilter(filterValue) {
|
43
|
-
return function (item, _i) {
|
44
|
-
var _item$text;
|
45
|
-
|
46
|
-
return Boolean((_item$text = item.text) === null || _item$text === void 0 ? void 0 : _item$text.toLowerCase().startsWith(filterValue.toLowerCase()));
|
47
|
-
};
|
48
|
-
}
|
49
|
-
|
50
|
-
// TODO: consider making 'aria-labelledby' required
|
51
|
-
function getDefaultOnItemSelectFn(setInputValueFn) {
|
52
|
-
if (setInputValueFn) {
|
53
|
-
return function ({
|
54
|
-
text = ''
|
55
|
-
}) {
|
56
|
-
setInputValueFn(text);
|
57
|
-
};
|
58
|
-
}
|
59
|
-
|
60
|
-
return ({
|
61
|
-
text
|
62
|
-
}) => {
|
63
|
-
console.error(`getDefaultOnItemSelectFn could not be called with ${text} because a function to set the text input was undefined`);
|
64
|
-
};
|
65
|
-
}
|
66
|
-
|
67
|
-
function AutocompleteMenu(props) {
|
68
|
-
const {
|
69
|
-
activeDescendantRef,
|
70
|
-
id,
|
71
|
-
inputRef,
|
72
|
-
inputValue = '',
|
73
|
-
setAutocompleteSuggestion,
|
74
|
-
setShowMenu,
|
75
|
-
setInputValue,
|
76
|
-
setIsMenuDirectlyActivated,
|
77
|
-
showMenu
|
78
|
-
} = (0, _react.useContext)(_AutocompleteContext.AutocompleteContext);
|
79
|
-
const {
|
80
|
-
items,
|
81
|
-
selectedItemIds,
|
82
|
-
sortOnCloseFn,
|
83
|
-
onItemSelect = getDefaultOnItemSelectFn(setInputValue),
|
84
|
-
onItemDeselect,
|
85
|
-
emptyStateText,
|
86
|
-
addNewItem,
|
87
|
-
loading,
|
88
|
-
selectionVariant,
|
89
|
-
filterFn = getDefaultItemFilter(inputValue),
|
90
|
-
width,
|
91
|
-
height,
|
92
|
-
maxHeight,
|
93
|
-
menuAnchorRef,
|
94
|
-
"aria-labelledby": ariaLabelledBy
|
95
|
-
} = props;
|
96
|
-
const listContainerRef = (0, _react.useRef)(null);
|
97
|
-
const scrollContainerRef = (0, _react.useRef)(null);
|
98
|
-
const [highlightedItem, setHighlightedItem] = (0, _react.useState)();
|
99
|
-
const [sortedItemIds, setSortedItemIds] = (0, _react.useState)(items.map(({
|
100
|
-
id
|
101
|
-
}) => id));
|
102
|
-
const {
|
103
|
-
floatingElementRef,
|
104
|
-
position
|
105
|
-
} = (0, _hooks.useAnchoredPosition)({
|
106
|
-
side: 'outside-bottom',
|
107
|
-
align: 'start',
|
108
|
-
anchorElementRef: menuAnchorRef ? menuAnchorRef : inputRef
|
109
|
-
}, [showMenu, selectedItemIds]);
|
110
|
-
const combinedOverlayRef = (0, _useCombinedRefs.useCombinedRefs)(scrollContainerRef, floatingElementRef);
|
111
|
-
|
112
|
-
const closeOptionList = () => {
|
113
|
-
setShowMenu && setShowMenu(false);
|
114
|
-
};
|
115
|
-
|
116
|
-
const isItemSelected = itemId => selectedItemIds.includes(itemId);
|
117
|
-
|
118
|
-
const selectableItems = items.map(selectableItem => ({ ...selectableItem,
|
119
|
-
role: "option",
|
120
|
-
id: selectableItem.id,
|
121
|
-
selected: selectionVariant === 'multiple' ? isItemSelected(selectableItem.id) : undefined,
|
122
|
-
onAction: (item, e) => {
|
123
|
-
const handleItemSelection = () => {
|
124
|
-
onItemSelect(item, e);
|
125
|
-
|
126
|
-
if (selectionVariant === 'multiple') {
|
127
|
-
setInputValue && setInputValue('');
|
128
|
-
setAutocompleteSuggestion && setAutocompleteSuggestion('');
|
129
|
-
}
|
130
|
-
};
|
131
|
-
|
132
|
-
if (item.selected) {
|
133
|
-
onItemDeselect && onItemDeselect(item, e);
|
134
|
-
} else {
|
135
|
-
handleItemSelection();
|
136
|
-
}
|
137
|
-
|
138
|
-
if (selectionVariant === 'single') {
|
139
|
-
var _inputRef$current;
|
140
|
-
|
141
|
-
setShowMenu && setShowMenu(false);
|
142
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.setSelectionRange(inputRef.current.value.length, inputRef.current.value.length);
|
143
|
-
}
|
144
|
-
}
|
145
|
-
}));
|
146
|
-
const itemSortOrderData = sortedItemIds.reduce((acc, curr, i) => {
|
147
|
-
acc[curr] = i;
|
148
|
-
return acc;
|
149
|
-
}, {});
|
150
|
-
const sortedAndFilteredItemsToRender = selectableItems.filter((item, i) => filterFn(item, i)).sort((a, b) => itemSortOrderData[a.id] - itemSortOrderData[b.id]);
|
151
|
-
const allItemsToRender = [// sorted and filtered selectable items
|
152
|
-
...sortedAndFilteredItemsToRender, // menu item used for creating a token from whatever is in the text input
|
153
|
-
...(addNewItem ? [{ ...addNewItem,
|
154
|
-
leadingVisual: () => /*#__PURE__*/_react.default.createElement(_octiconsReact.PlusIcon, null),
|
155
|
-
onAction: (item, e) => {
|
156
|
-
// TODO: make it possible to pass a leadingVisual when using `addNewItem`
|
157
|
-
addNewItem.handleAddItem({ ...item,
|
158
|
-
id: item.id || (0, _uniqueId.uniqueId)(),
|
159
|
-
leadingVisual: undefined
|
160
|
-
});
|
161
|
-
|
162
|
-
if (selectionVariant === 'multiple') {
|
163
|
-
setInputValue && setInputValue('');
|
164
|
-
setAutocompleteSuggestion && setAutocompleteSuggestion('');
|
165
|
-
}
|
166
|
-
}
|
167
|
-
}] : [])];
|
168
|
-
(0, _useFocusZone.useFocusZone)({
|
169
|
-
containerRef: listContainerRef,
|
170
|
-
focusOutBehavior: 'wrap',
|
171
|
-
focusableElementFilter: element => {
|
172
|
-
return !(element instanceof HTMLInputElement);
|
173
|
-
},
|
174
|
-
activeDescendantFocus: inputRef,
|
175
|
-
onActiveDescendantChanged: (current, _previous, directlyActivated) => {
|
176
|
-
console.log('onActiveDescendantChanged', current === null || current === void 0 ? void 0 : current.textContent);
|
177
|
-
|
178
|
-
if (activeDescendantRef) {
|
179
|
-
activeDescendantRef.current = current || null;
|
180
|
-
}
|
181
|
-
|
182
|
-
if (current) {
|
183
|
-
const selectedItem = selectableItems.find(item => item.id.toString() === (current === null || current === void 0 ? void 0 : current.dataset.id));
|
184
|
-
setHighlightedItem(selectedItem);
|
185
|
-
setIsMenuDirectlyActivated && setIsMenuDirectlyActivated(directlyActivated);
|
186
|
-
}
|
187
|
-
|
188
|
-
if (current && scrollContainerRef.current && directlyActivated) {
|
189
|
-
(0, _scrollIntoViewingArea.scrollIntoViewingArea)(current, scrollContainerRef.current);
|
190
|
-
}
|
191
|
-
}
|
192
|
-
});
|
193
|
-
(0, _react.useEffect)(() => {
|
194
|
-
var _highlightedItem$text;
|
195
|
-
|
196
|
-
if (!setAutocompleteSuggestion) {
|
197
|
-
return;
|
198
|
-
}
|
199
|
-
|
200
|
-
if (highlightedItem !== null && highlightedItem !== void 0 && (_highlightedItem$text = highlightedItem.text) !== null && _highlightedItem$text !== void 0 && _highlightedItem$text.startsWith(inputValue) && !selectedItemIds.includes(highlightedItem.id)) {
|
201
|
-
setAutocompleteSuggestion(highlightedItem.text);
|
202
|
-
} else {
|
203
|
-
setAutocompleteSuggestion('');
|
204
|
-
}
|
205
|
-
}, [highlightedItem, inputValue]);
|
206
|
-
(0, _react.useEffect)(() => {
|
207
|
-
setSortedItemIds([...sortedItemIds].sort(sortOnCloseFn ? sortOnCloseFn : getDefaultSortFn(isItemSelected)));
|
208
|
-
}, [showMenu]);
|
209
|
-
|
210
|
-
if (listContainerRef.current) {
|
211
|
-
(0, _Portal.registerPortalRoot)(listContainerRef.current, DROPDOWN_PORTAL_CONTAINER_NAME);
|
212
|
-
}
|
213
|
-
|
214
|
-
return /*#__PURE__*/_react.default.createElement(_Overlay.default, {
|
215
|
-
returnFocusRef: inputRef,
|
216
|
-
preventFocusOnOpen: true,
|
217
|
-
onClickOutside: closeOptionList,
|
218
|
-
onEscape: closeOptionList,
|
219
|
-
ref: combinedOverlayRef,
|
220
|
-
top: position === null || position === void 0 ? void 0 : position.top,
|
221
|
-
left: position === null || position === void 0 ? void 0 : position.left,
|
222
|
-
width: width,
|
223
|
-
height: height,
|
224
|
-
maxHeight: maxHeight,
|
225
|
-
visibility: showMenu ? 'visible' : 'hidden'
|
226
|
-
}, loading ? /*#__PURE__*/_react.default.createElement(_.Box, {
|
227
|
-
p: 3,
|
228
|
-
display: "flex",
|
229
|
-
justifyContent: "center"
|
230
|
-
}, /*#__PURE__*/_react.default.createElement(_.Spinner, null)) : /*#__PURE__*/_react.default.createElement("div", {
|
231
|
-
ref: listContainerRef
|
232
|
-
}, allItemsToRender.length ? /*#__PURE__*/_react.default.createElement(_ActionList.ActionList, {
|
233
|
-
selectionVariant: "multiple" // have to typecast to `ItemProps` because we have an extra property
|
234
|
-
// on `items` for Autocomplete: `metadata`
|
235
|
-
,
|
236
|
-
items: allItemsToRender,
|
237
|
-
role: "listbox",
|
238
|
-
id: `${id}-listbox`,
|
239
|
-
"aria-labelledby": ariaLabelledBy
|
240
|
-
}) : /*#__PURE__*/_react.default.createElement(_.Box, {
|
241
|
-
p: 3
|
242
|
-
}, emptyStateText)));
|
243
|
-
}
|
244
|
-
|
245
|
-
AutocompleteMenu.displayName = "AutocompleteMenu";
|
246
|
-
AutocompleteMenu.defaultProps = {
|
247
|
-
emptyStateText: 'No selectable options',
|
248
|
-
selectionVariant: 'single'
|
249
|
-
};
|
250
|
-
AutocompleteMenu.displayName = 'AutocompleteMenu';
|
251
|
-
var _default = AutocompleteMenu;
|
252
|
-
exports.default = _default;
|
@@ -1,15 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
Object.defineProperty(exports, "default", {
|
7
|
-
enumerable: true,
|
8
|
-
get: function () {
|
9
|
-
return _Autocomplete.default;
|
10
|
-
}
|
11
|
-
});
|
12
|
-
|
13
|
-
var _Autocomplete = _interopRequireDefault(require("./Autocomplete"));
|
14
|
-
|
15
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
package/lib/Badge/Badge.d.ts
DELETED
@@ -1,8 +0,0 @@
|
|
1
|
-
import { BadgeSizeKeys } from './_badgeStyleUtils';
|
2
|
-
declare type BadgeColorOptions = 'default' | 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger';
|
3
|
-
interface Props {
|
4
|
-
color?: BadgeColorOptions;
|
5
|
-
variant?: BadgeSizeKeys;
|
6
|
-
}
|
7
|
-
declare const Badge: import("styled-components").StyledComponent<"span", any, Props, never>;
|
8
|
-
export default Badge;
|
package/lib/Badge/Badge.js
DELETED
@@ -1,59 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.default = void 0;
|
7
|
-
|
8
|
-
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
9
|
-
|
10
|
-
var _constants = require("../constants");
|
11
|
-
|
12
|
-
var _badgeStyleUtils = require("./_badgeStyleUtils");
|
13
|
-
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
|
-
|
16
|
-
const badgeColorMap = {
|
17
|
-
default: {
|
18
|
-
borderColor: (0, _constants.get)('colors.border.default')
|
19
|
-
},
|
20
|
-
primary: {
|
21
|
-
borderColor: (0, _constants.get)('colors.fg.default')
|
22
|
-
},
|
23
|
-
secondary: {
|
24
|
-
borderColor: (0, _constants.get)('colors.border.muted'),
|
25
|
-
textColor: (0, _constants.get)('colors.fg.muted')
|
26
|
-
},
|
27
|
-
info: {
|
28
|
-
borderColor: (0, _constants.get)('colors.accent.fg'),
|
29
|
-
textColor: (0, _constants.get)('colors.accent.fg')
|
30
|
-
},
|
31
|
-
success: {
|
32
|
-
borderColor: (0, _constants.get)('colors.success.fg'),
|
33
|
-
textColor: (0, _constants.get)('colors.success.emphasis')
|
34
|
-
},
|
35
|
-
warning: {
|
36
|
-
borderColor: (0, _constants.get)('colors.attention.fg'),
|
37
|
-
textColor: (0, _constants.get)('colors.attention.emphasis')
|
38
|
-
},
|
39
|
-
danger: {
|
40
|
-
borderColor: (0, _constants.get)('colors.danger.fg'),
|
41
|
-
textColor: (0, _constants.get)('colors.danger.emphasis')
|
42
|
-
}
|
43
|
-
};
|
44
|
-
|
45
|
-
const Badge = _styledComponents.default.span.withConfig({
|
46
|
-
displayName: "Badge",
|
47
|
-
componentId: "sc-15t9m5z-0"
|
48
|
-
})(["align-items:center;background-color:transparent;border-width:1px;border-radius:999px;border-style:solid;border-color:", ";color:", ";display:inline-flex;font-weight:", ";line-height:1;white-space:nowrap;", ";"], ({
|
49
|
-
color = 'default'
|
50
|
-
}) => badgeColorMap[color].borderColor, ({
|
51
|
-
color = 'default'
|
52
|
-
}) => badgeColorMap[color].textColor, (0, _constants.get)('fontWeights.bold'), _badgeStyleUtils.badgeVariants);
|
53
|
-
|
54
|
-
Badge.defaultProps = {
|
55
|
-
variant: 'sm',
|
56
|
-
color: 'default'
|
57
|
-
};
|
58
|
-
var _default = Badge;
|
59
|
-
exports.default = _default;
|
@@ -1,13 +0,0 @@
|
|
1
|
-
/// <reference types="react" />
|
2
|
-
import { IconProps } from '@primer/octicons-react';
|
3
|
-
import { BadgeSizeKeys } from './_badgeStyleUtils';
|
4
|
-
declare type BadgeStateColorOptions = 'default' | 'open' | 'merged' | 'closed';
|
5
|
-
interface Props {
|
6
|
-
color?: BadgeStateColorOptions;
|
7
|
-
icon?: React.ComponentType<{
|
8
|
-
size?: IconProps['size'];
|
9
|
-
}>;
|
10
|
-
variant?: BadgeSizeKeys;
|
11
|
-
}
|
12
|
-
declare const BadgeState: React.FC<Props>;
|
13
|
-
export default BadgeState;
|
package/lib/Badge/BadgeState.js
DELETED
@@ -1,51 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.default = void 0;
|
7
|
-
|
8
|
-
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
9
|
-
|
10
|
-
var _constants = require("../constants");
|
11
|
-
|
12
|
-
var _badgeStyleUtils = require("./_badgeStyleUtils");
|
13
|
-
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
|
-
|
16
|
-
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
17
|
-
|
18
|
-
const badgeStateColorMap = {
|
19
|
-
default: (0, _constants.get)('colors.neutral.emphasis'),
|
20
|
-
open: (0, _constants.get)('colors.success.emphasis'),
|
21
|
-
merged: (0, _constants.get)('colors.done.emphasis'),
|
22
|
-
closed: (0, _constants.get)('colors.danger.emphasis')
|
23
|
-
}; // const badgeStateIconSizeMap: Record<BadgeSizeKeys, number> = {
|
24
|
-
// 'sm':
|
25
|
-
// };
|
26
|
-
|
27
|
-
const StyledBadgeState = _styledComponents.default.span.withConfig({
|
28
|
-
displayName: "BadgeState__StyledBadgeState",
|
29
|
-
componentId: "sc-5hwzjt-0"
|
30
|
-
})(["align-items:center;background-color:", ";border-radius:999px;color:", ";display:inline-flex;font-weight:", ";gap:", ";line-height:1;white-space:nowrap;", ";"], ({
|
31
|
-
color = 'default'
|
32
|
-
}) => badgeStateColorMap[color], (0, _constants.get)('colors.fg.onEmphasis'), (0, _constants.get)('fontWeights.bold'), (0, _constants.get)('space.1'), _badgeStyleUtils.badgeVariants);
|
33
|
-
|
34
|
-
const BadgeState = ({
|
35
|
-
children,
|
36
|
-
icon: IconComponent,
|
37
|
-
variant,
|
38
|
-
...rest
|
39
|
-
}) => /*#__PURE__*/React.createElement(StyledBadgeState, _extends({
|
40
|
-
variant: variant
|
41
|
-
}, rest), IconComponent ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IconComponent, {
|
42
|
-
size: variant === 'sm' ? 12 : 'small'
|
43
|
-
}), children) : children);
|
44
|
-
|
45
|
-
BadgeState.displayName = "BadgeState";
|
46
|
-
BadgeState.defaultProps = {
|
47
|
-
variant: 'lg',
|
48
|
-
color: 'default'
|
49
|
-
};
|
50
|
-
var _default = BadgeState;
|
51
|
-
exports.default = _default;
|
@@ -1,39 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.badgeVariants = exports.badgeSizes = void 0;
|
7
|
-
|
8
|
-
var _styledSystem = require("styled-system");
|
9
|
-
|
10
|
-
// TODO: consider moving to Primitives
|
11
|
-
const badgeSizes = {
|
12
|
-
sm: 20,
|
13
|
-
md: 24,
|
14
|
-
lg: 32
|
15
|
-
};
|
16
|
-
exports.badgeSizes = badgeSizes;
|
17
|
-
const badgeVariants = (0, _styledSystem.variant)({
|
18
|
-
variants: {
|
19
|
-
sm: {
|
20
|
-
fontSize: 0,
|
21
|
-
height: `${badgeSizes.sm}px`,
|
22
|
-
paddingLeft: 2,
|
23
|
-
paddingRight: 2
|
24
|
-
},
|
25
|
-
md: {
|
26
|
-
fontSize: 0,
|
27
|
-
height: `${badgeSizes.md}px`,
|
28
|
-
paddingLeft: 2,
|
29
|
-
paddingRight: 2
|
30
|
-
},
|
31
|
-
lg: {
|
32
|
-
fontSize: 1,
|
33
|
-
height: `${badgeSizes.lg}px`,
|
34
|
-
paddingLeft: 3,
|
35
|
-
paddingRight: 3
|
36
|
-
}
|
37
|
-
}
|
38
|
-
});
|
39
|
-
exports.badgeVariants = badgeVariants;
|
package/lib/TextInputTokens.d.ts
DELETED
@@ -1,43 +0,0 @@
|
|
1
|
-
import React, { ComponentPropsWithoutRef } from 'react';
|
2
|
-
import { ComponentProps, MandateProps } from './utils/types';
|
3
|
-
import Token, { TokenProps } from './Token/Token';
|
4
|
-
import TokenLabel, { TokenLabelProps } from './Token/TokenLabel';
|
5
|
-
import TokenProfile, { TokenProfileProps } from './Token/TokenProfile';
|
6
|
-
import { TokenSizeKeys } from './Token/TokenBase';
|
7
|
-
import { TextInputProps } from './TextInput';
|
8
|
-
declare type AnyTokenProps = Partial<TokenProps & TokenLabelProps & TokenProfileProps>;
|
9
|
-
declare type TokenDatum = MandateProps<AnyTokenProps, 'id' | 'text'>;
|
10
|
-
declare type TextInputWithTokensInternalProps = {
|
11
|
-
/**
|
12
|
-
* The array of tokens to render
|
13
|
-
*/
|
14
|
-
tokens: TokenDatum[];
|
15
|
-
/**
|
16
|
-
* The function that gets called when a token is removed
|
17
|
-
*/
|
18
|
-
onTokenRemove: (tokenId: string | number) => void;
|
19
|
-
/**
|
20
|
-
* The component used to render each token
|
21
|
-
*/
|
22
|
-
tokenComponent?: React.ComponentType<ComponentPropsWithoutRef<typeof Token> | ComponentPropsWithoutRef<typeof TokenLabel> | ComponentPropsWithoutRef<typeof TokenProfile>>;
|
23
|
-
/**
|
24
|
-
* The maximum height of the component. If the content in the input exceeds this height,
|
25
|
-
* it will scroll vertically
|
26
|
-
*/
|
27
|
-
maxHeight?: React.CSSProperties['maxHeight'];
|
28
|
-
/**
|
29
|
-
* Whether tokens should render inline horizontally. By default, tokens wrap to new lines.
|
30
|
-
*/
|
31
|
-
preventTokenWrapping?: boolean;
|
32
|
-
/**
|
33
|
-
* The size of the tokens
|
34
|
-
*/
|
35
|
-
tokenSizeVariant?: TokenSizeKeys;
|
36
|
-
/**
|
37
|
-
* Whether the remove buttons should be rendered in the tokens
|
38
|
-
*/
|
39
|
-
hideTokenRemoveButtons?: boolean;
|
40
|
-
} & TextInputProps;
|
41
|
-
declare const TextInputWithTokens: React.ForwardRefExoticComponent<Pick<TextInputWithTokensInternalProps, string | number | symbol> & React.RefAttributes<HTMLInputElement>>;
|
42
|
-
export declare type TextInputWithTokensProps = ComponentProps<typeof TextInputWithTokens>;
|
43
|
-
export default TextInputWithTokens;
|