@primer/components 0.0.0-202195162314 → 0.0.0-202195163539
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 +106 -120
- package/dist/browser.esm.js.map +1 -1
- package/dist/browser.umd.js +93 -107
- package/dist/browser.umd.js.map +1 -1
- package/lib/SelectMenu/SelectMenu.d.ts +8 -2
- package/lib/TextInput.d.ts +6 -3
- package/lib/TextInput.js +9 -10
- package/lib/TextInputWithTokens.d.ts +43 -0
- package/lib/TextInputWithTokens.js +236 -0
- package/lib/Token/Token.d.ts +2 -2
- package/lib/Token/Token.js +22 -34
- package/lib/Token/TokenBase.d.ts +3 -3
- package/lib/Token/TokenBase.js +20 -36
- package/lib/Token/TokenLabel.d.ts +14 -0
- package/lib/Token/{IssueLabelToken.js → TokenLabel.js} +28 -35
- package/lib/Token/{ProfileToken.d.ts → TokenProfile.d.ts} +3 -3
- package/lib/Token/{ProfileToken.js → TokenProfile.js} +7 -7
- package/lib/Token/_RemoveTokenButton.d.ts +2 -11
- package/lib/Token/_RemoveTokenButton.js +22 -53
- package/lib/Token/_tokenButtonUtils.d.ts +10 -0
- package/lib/Token/_tokenButtonUtils.js +42 -0
- package/lib/Token/index.d.ts +2 -2
- package/lib/Token/index.js +6 -6
- package/lib/_UnstyledTextInput.d.ts +2 -0
- package/lib/_UnstyledTextInput.js +20 -0
- package/lib/index.d.ts +2 -1
- package/lib/index.js +12 -4
- package/lib-esm/SelectMenu/SelectMenu.d.ts +8 -2
- package/lib-esm/TextInput.d.ts +6 -3
- package/lib-esm/TextInput.js +8 -9
- package/lib-esm/TextInputWithTokens.d.ts +43 -0
- package/lib-esm/TextInputWithTokens.js +209 -0
- package/lib-esm/Token/Token.d.ts +2 -2
- package/lib-esm/Token/Token.js +22 -33
- package/lib-esm/Token/TokenBase.d.ts +3 -3
- package/lib-esm/Token/TokenBase.js +20 -36
- package/lib-esm/Token/TokenLabel.d.ts +14 -0
- package/lib-esm/Token/{IssueLabelToken.js → TokenLabel.js} +28 -34
- package/lib-esm/Token/{ProfileToken.d.ts → TokenProfile.d.ts} +3 -3
- package/lib-esm/Token/{ProfileToken.js → TokenProfile.js} +7 -7
- package/lib-esm/Token/_RemoveTokenButton.d.ts +2 -11
- package/lib-esm/Token/_RemoveTokenButton.js +22 -52
- package/lib-esm/Token/_tokenButtonUtils.d.ts +10 -0
- package/lib-esm/Token/_tokenButtonUtils.js +26 -0
- package/lib-esm/Token/index.d.ts +2 -2
- package/lib-esm/Token/index.js +2 -2
- package/lib-esm/_UnstyledTextInput.d.ts +2 -0
- package/lib-esm/_UnstyledTextInput.js +7 -0
- package/lib-esm/index.d.ts +2 -1
- package/lib-esm/index.js +2 -1
- package/package.json +1 -1
- package/lib/Token/IssueLabelToken.d.ts +0 -14
- package/lib/Token/_TokenTextContainer.d.ts +0 -3
- package/lib/Token/_TokenTextContainer.js +0 -34
- package/lib-esm/Token/IssueLabelToken.d.ts +0 -14
- package/lib-esm/Token/_TokenTextContainer.d.ts +0 -3
- package/lib-esm/Token/_TokenTextContainer.js +0 -21
package/lib/Token/TokenBase.js
CHANGED
@@ -14,10 +14,10 @@ var _constants = require("../constants");
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
15
|
|
16
16
|
const tokenSizes = {
|
17
|
-
sm:
|
18
|
-
md:
|
19
|
-
lg:
|
20
|
-
xl:
|
17
|
+
sm: 16,
|
18
|
+
md: 20,
|
19
|
+
lg: 24,
|
20
|
+
xl: 32
|
21
21
|
};
|
22
22
|
exports.tokenSizes = tokenSizes;
|
23
23
|
const defaultTokenSize = 'md';
|
@@ -32,67 +32,51 @@ const isTokenInteractive = ({
|
|
32
32
|
|
33
33
|
exports.isTokenInteractive = isTokenInteractive;
|
34
34
|
const variants = (0, _styledSystem.variant)({
|
35
|
-
prop: 'size',
|
36
35
|
variants: {
|
37
36
|
sm: {
|
38
37
|
fontSize: 0,
|
39
38
|
gap: 1,
|
40
|
-
height: tokenSizes.sm
|
41
|
-
// without setting lineHeight to match height, the "x" appears vertically mis-aligned
|
42
|
-
lineHeight: tokenSizes.sm,
|
39
|
+
height: `${tokenSizes.sm}px`,
|
43
40
|
paddingLeft: 1,
|
44
|
-
paddingRight: 1
|
45
|
-
// need to explicitly set padding top and bottom to "0" to override default `<button>` element styles
|
46
|
-
// without setting these, the "x" appears vertically mis-aligned
|
47
|
-
paddingTop: 0,
|
48
|
-
paddingBottom: 0
|
41
|
+
paddingRight: 1
|
49
42
|
},
|
50
43
|
md: {
|
51
44
|
fontSize: 0,
|
52
45
|
gap: 1,
|
53
|
-
height: tokenSizes.md
|
54
|
-
lineHeight: tokenSizes.md,
|
46
|
+
height: `${tokenSizes.md}px`,
|
55
47
|
paddingLeft: 2,
|
56
|
-
paddingRight: 2
|
57
|
-
paddingTop: 0,
|
58
|
-
paddingBottom: 0
|
48
|
+
paddingRight: 2
|
59
49
|
},
|
60
50
|
lg: {
|
61
51
|
fontSize: 0,
|
62
52
|
gap: 2,
|
63
|
-
height: tokenSizes.lg
|
64
|
-
lineHeight: tokenSizes.lg,
|
53
|
+
height: `${tokenSizes.lg}px`,
|
65
54
|
paddingLeft: 2,
|
66
|
-
paddingRight: 2
|
67
|
-
paddingTop: 0,
|
68
|
-
paddingBottom: 0
|
55
|
+
paddingRight: 2
|
69
56
|
},
|
70
57
|
xl: {
|
71
58
|
fontSize: 1,
|
72
59
|
gap: 2,
|
73
|
-
height: tokenSizes.xl
|
74
|
-
lineHeight: tokenSizes.xl,
|
60
|
+
height: `${tokenSizes.xl}px`,
|
75
61
|
paddingLeft: 3,
|
76
|
-
paddingRight: 3
|
77
|
-
paddingTop: 0,
|
78
|
-
paddingBottom: 0
|
62
|
+
paddingRight: 3
|
79
63
|
}
|
80
64
|
}
|
81
65
|
});
|
82
66
|
|
83
67
|
const TokenBase = _styledComponents.default.span.attrs(({
|
84
68
|
text,
|
85
|
-
|
86
|
-
|
69
|
+
handleRemove,
|
70
|
+
onKeyUp
|
87
71
|
}) => ({
|
88
|
-
|
89
|
-
|
72
|
+
onKeyUp: e => {
|
73
|
+
onKeyUp && onKeyUp(e);
|
90
74
|
|
91
|
-
if ((
|
92
|
-
|
75
|
+
if ((e.key === 'Backspace' || e.key === 'Delete') && handleRemove) {
|
76
|
+
handleRemove();
|
93
77
|
}
|
94
78
|
},
|
95
|
-
'aria-label':
|
79
|
+
'aria-label': handleRemove ? `${text}, press backspace or delete to remove` : undefined
|
96
80
|
})).withConfig({
|
97
81
|
displayName: "TokenBase",
|
98
82
|
componentId: "opajvp-0"
|
@@ -100,7 +84,7 @@ const TokenBase = _styledComponents.default.span.attrs(({
|
|
100
84
|
|
101
85
|
TokenBase.defaultProps = {
|
102
86
|
as: 'span',
|
103
|
-
|
87
|
+
variant: defaultTokenSize
|
104
88
|
};
|
105
89
|
var _default = TokenBase;
|
106
90
|
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { TokenBaseProps } from './TokenBase';
|
3
|
+
export interface TokenLabelProps extends TokenBaseProps {
|
4
|
+
/**
|
5
|
+
* The color that corresponds to the label
|
6
|
+
*/
|
7
|
+
fillColor?: string;
|
8
|
+
/**
|
9
|
+
* Whether the remove button should be rendered in the token
|
10
|
+
*/
|
11
|
+
hideRemoveButton?: boolean;
|
12
|
+
}
|
13
|
+
declare const TokenLabel: React.ForwardRefExoticComponent<Pick<TokenLabelProps, "sizes" | "color" | "content" | "height" | "translate" | "width" | "hidden" | "children" | "value" | "cite" | "data" | "form" | "label" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "text" | "list" | "default" | "type" | "name" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "start" | "step" | "wrap" | "open" | "max" | "media" | "method" | "min" | "target" | "crossOrigin" | "href" | "classID" | "useMap" | "wmode" | "download" | "hrefLang" | "rel" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "src" | "autoFocus" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "manifest" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "srcSet" | "async" | "accept" | "capture" | "checked" | "maxLength" | "minLength" | "multiple" | "readOnly" | "required" | "challenge" | "keyType" | "keyParams" | "htmlFor" | "as" | "integrity" | "charSet" | "httpEquiv" | "high" | "low" | "optimum" | "reversed" | "selected" | "defer" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "rows" | "kind" | "srcLang" | "poster" | "variant" | "handleRemove" | "isSelected" | "hideRemoveButton" | "fillColor"> & React.RefAttributes<HTMLElement>>;
|
14
|
+
export default TokenLabel;
|
@@ -17,8 +17,6 @@ var _tinycolor = _interopRequireDefault(require("tinycolor2"));
|
|
17
17
|
|
18
18
|
var _ThemeProvider = require("../ThemeProvider");
|
19
19
|
|
20
|
-
var _TokenTextContainer = _interopRequireDefault(require("./_TokenTextContainer"));
|
21
|
-
|
22
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
23
21
|
|
24
22
|
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); }
|
@@ -42,34 +40,31 @@ const colorModeConfigs = {
|
|
42
40
|
}
|
43
41
|
};
|
44
42
|
const tokenBorderWidthPx = 1;
|
45
|
-
const
|
46
|
-
displayName: "
|
47
|
-
componentId: "
|
43
|
+
const StyledTokenLabel = (0, _styledComponents.default)(_TokenBase.default).withConfig({
|
44
|
+
displayName: "TokenLabel__StyledTokenLabel",
|
45
|
+
componentId: "sc-1bdmgzv-0"
|
48
46
|
})(["background-color:", ";border-width:", "px;border-style:solid;border-color:", ";color:", ";padding-right:", ";position:relative;", ""], props => props.bgColor, tokenBorderWidthPx, props => props.borderColor, props => props.textColor, props => !props.hideRemoveButton ? 0 : undefined, props => {
|
49
47
|
if (props.isSelected) {
|
50
48
|
return (0, _styledComponents.css)(["&:after{content:'';position:absolute;z-index:1;top:-2px;right:-2px;bottom:-2px;left:-2px;display:block;pointer-events:none;box-shadow:0 0 0 2px ", ";border-radius:999px;}"], props.bgColor);
|
51
49
|
}
|
52
50
|
});
|
53
|
-
const
|
51
|
+
const TokenTextContainer = (0, _styledComponents.default)('span').withConfig({
|
52
|
+
displayName: "TokenLabel__TokenTextContainer",
|
53
|
+
componentId: "sc-1bdmgzv-1"
|
54
|
+
})(["flex-grow:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;"]);
|
55
|
+
const TokenLabel = /*#__PURE__*/(0, _react.forwardRef)((props, forwardedRef) => {
|
54
56
|
const {
|
55
57
|
as,
|
56
58
|
fillColor,
|
57
|
-
|
59
|
+
handleRemove,
|
58
60
|
id,
|
59
61
|
isSelected,
|
60
62
|
ref,
|
61
63
|
text,
|
62
|
-
|
64
|
+
variant,
|
63
65
|
hideRemoveButton,
|
64
|
-
href,
|
65
|
-
onClick,
|
66
66
|
...rest
|
67
67
|
} = props;
|
68
|
-
const interactiveTokenProps = {
|
69
|
-
as,
|
70
|
-
href,
|
71
|
-
onClick
|
72
|
-
};
|
73
68
|
const {
|
74
69
|
colorScheme
|
75
70
|
} = (0, _ThemeProvider.useTheme)();
|
@@ -99,50 +94,48 @@ const IssueLabelToken = /*#__PURE__*/(0, _react.forwardRef)((props, forwardedRef
|
|
99
94
|
}
|
100
95
|
|
101
96
|
if (isSelected) {
|
102
|
-
bgColor = isFillColorDark ? (0, _tinycolor.default)(fillColor).lighten(10).toString()
|
97
|
+
bgColor = isFillColorDark ? (0, _tinycolor.default)(fillColor).lighten(10).toString() // TODO: darken more than 10 if the fillColor is really bright and doesn't darken well
|
103
98
|
// Examples of colors that don't darken well:
|
104
99
|
// - #a2eeef
|
105
100
|
// - #ffd78e
|
106
101
|
// - #a4f287
|
107
|
-
(0, _tinycolor.default)(fillColor).darken(10).toString();
|
102
|
+
: (0, _tinycolor.default)(fillColor).darken(10).toString();
|
108
103
|
}
|
109
104
|
}
|
110
105
|
|
111
|
-
const hasMultipleActionTargets = (0, _TokenBase.isTokenInteractive)(props) && Boolean(
|
106
|
+
const hasMultipleActionTargets = (0, _TokenBase.isTokenInteractive)(props) && Boolean(handleRemove) && !hideRemoveButton;
|
112
107
|
|
113
|
-
const
|
108
|
+
const handleRemoveClick = e => {
|
114
109
|
e.stopPropagation();
|
115
|
-
|
110
|
+
handleRemove && handleRemove();
|
116
111
|
};
|
117
112
|
|
118
|
-
return /*#__PURE__*/_react.default.createElement(
|
113
|
+
return /*#__PURE__*/_react.default.createElement(StyledTokenLabel // specific to labels
|
119
114
|
, _extends({
|
120
115
|
fillColor: fillColor,
|
121
116
|
bgColor: bgColor,
|
122
117
|
borderColor: borderColor,
|
123
118
|
textColor: textColor // common token props
|
124
119
|
,
|
125
|
-
|
126
|
-
|
120
|
+
as: as,
|
121
|
+
hideRemoveButton: hideRemoveButton || !handleRemove,
|
122
|
+
handleRemove: handleRemove,
|
127
123
|
id: id === null || id === void 0 ? void 0 : id.toString(),
|
128
124
|
isSelected: isSelected,
|
129
125
|
ref: forwardedRef,
|
130
126
|
text: text,
|
131
|
-
|
132
|
-
},
|
127
|
+
variant: variant
|
128
|
+
}, rest), /*#__PURE__*/_react.default.createElement(TokenTextContainer, null, text), !hideRemoveButton && handleRemove ? /*#__PURE__*/_react.default.createElement(_RemoveTokenButton.default, {
|
133
129
|
borderOffset: tokenBorderWidthPx,
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
position: 'relative',
|
140
|
-
zIndex: '1'
|
141
|
-
} : {}
|
130
|
+
parentTokenTag: as || 'span',
|
131
|
+
tabIndex: -1,
|
132
|
+
onClick: handleRemoveClick,
|
133
|
+
variant: variant,
|
134
|
+
"aria-hidden": hasMultipleActionTargets ? "true" : "false"
|
142
135
|
}) : null);
|
143
136
|
});
|
144
|
-
|
137
|
+
TokenLabel.defaultProps = {
|
145
138
|
fillColor: '#999'
|
146
139
|
};
|
147
|
-
var _default =
|
140
|
+
var _default = TokenLabel;
|
148
141
|
exports.default = _default;
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import { TokenBaseProps } from './TokenBase';
|
3
|
-
export interface
|
3
|
+
export interface TokenProfileProps extends TokenBaseProps {
|
4
4
|
avatarSrc: string;
|
5
5
|
}
|
6
|
-
declare const
|
7
|
-
export default
|
6
|
+
declare const TokenProfile: React.ForwardRefExoticComponent<Pick<TokenProfileProps, "sizes" | "color" | "content" | "height" | "translate" | "width" | "hidden" | "children" | "value" | "cite" | "data" | "form" | "label" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "text" | "list" | "default" | "type" | "name" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "start" | "step" | "wrap" | "open" | "max" | "media" | "method" | "min" | "target" | "crossOrigin" | "href" | "classID" | "useMap" | "wmode" | "download" | "hrefLang" | "rel" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "src" | "autoFocus" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "manifest" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "srcSet" | "async" | "accept" | "capture" | "checked" | "maxLength" | "minLength" | "multiple" | "readOnly" | "required" | "challenge" | "keyType" | "keyParams" | "htmlFor" | "as" | "integrity" | "charSet" | "httpEquiv" | "high" | "low" | "optimum" | "reversed" | "selected" | "defer" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "rows" | "kind" | "srcLang" | "poster" | "variant" | "handleRemove" | "isSelected" | "avatarSrc"> & React.RefAttributes<HTMLElement>>;
|
7
|
+
export default TokenProfile;
|
@@ -28,23 +28,23 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
28
28
|
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); }
|
29
29
|
|
30
30
|
const StyledToken = (0, _styledComponents.default)(_Token.default).withConfig({
|
31
|
-
displayName: "
|
32
|
-
componentId: "
|
31
|
+
displayName: "TokenProfile__StyledToken",
|
32
|
+
componentId: "sc-1vf9jhf-0"
|
33
33
|
})(["padding-left:", ";"], (0, _constants.get)('space.1'));
|
34
|
-
const
|
34
|
+
const TokenProfile = /*#__PURE__*/(0, _react.forwardRef)(({
|
35
35
|
avatarSrc,
|
36
36
|
id,
|
37
37
|
ref,
|
38
|
-
|
38
|
+
variant,
|
39
39
|
...rest
|
40
40
|
}, forwardedRef) => /*#__PURE__*/_react.default.createElement(StyledToken, _extends({
|
41
41
|
leadingVisual: () => /*#__PURE__*/_react.default.createElement(_.Avatar, {
|
42
42
|
src: avatarSrc,
|
43
|
-
size:
|
43
|
+
size: _TokenBase.tokenSizes[variant || _TokenBase.defaultTokenSize] - parseInt(_primitives.default.spacing.normal.spacer[1], 10) * 2
|
44
44
|
}),
|
45
|
-
|
45
|
+
variant: variant,
|
46
46
|
id: id === null || id === void 0 ? void 0 : id.toString(),
|
47
47
|
ref: forwardedRef
|
48
48
|
}, rest)));
|
49
|
-
var _default =
|
49
|
+
var _default = TokenProfile;
|
50
50
|
exports.default = _default;
|
@@ -1,12 +1,3 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
import { ComponentProps } from '../utils/types';
|
4
|
-
import { TokenSizeKeys } from './TokenBase';
|
5
|
-
interface TokenButtonProps {
|
6
|
-
borderOffset?: number;
|
7
|
-
size?: TokenSizeKeys;
|
8
|
-
isParentInteractive?: boolean;
|
9
|
-
}
|
10
|
-
declare const StyledTokenButton: import("styled-components").StyledComponent<"span", any, TokenButtonProps & SxProp, never>;
|
11
|
-
declare const RemoveTokenButton: React.FC<ComponentProps<typeof StyledTokenButton>>;
|
1
|
+
import { TokenButtonProps } from './_tokenButtonUtils';
|
2
|
+
declare const RemoveTokenButton: import("styled-components").StyledComponent<"span", any, TokenButtonProps, never>;
|
12
3
|
export default RemoveTokenButton;
|
@@ -9,67 +9,36 @@ var _octiconsReact = require("@primer/octicons-react");
|
|
9
9
|
|
10
10
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
11
11
|
|
12
|
-
var _styledSystem = require("styled-system");
|
13
|
-
|
14
|
-
var _constants = require("../constants");
|
15
|
-
|
16
|
-
var _sx = _interopRequireDefault(require("../sx"));
|
17
|
-
|
18
12
|
var _TokenBase = require("./TokenBase");
|
19
13
|
|
20
|
-
|
21
|
-
|
22
|
-
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); }
|
23
|
-
|
24
|
-
const variants = (0, _styledSystem.variant)({
|
25
|
-
prop: 'size',
|
26
|
-
variants: {
|
27
|
-
sm: {
|
28
|
-
height: _TokenBase.tokenSizes.sm,
|
29
|
-
width: _TokenBase.tokenSizes.sm
|
30
|
-
},
|
31
|
-
md: {
|
32
|
-
height: _TokenBase.tokenSizes.md,
|
33
|
-
width: _TokenBase.tokenSizes.md
|
34
|
-
},
|
35
|
-
lg: {
|
36
|
-
height: _TokenBase.tokenSizes.lg,
|
37
|
-
width: _TokenBase.tokenSizes.lg
|
38
|
-
},
|
39
|
-
xl: {
|
40
|
-
height: _TokenBase.tokenSizes.xl,
|
41
|
-
width: _TokenBase.tokenSizes.xl
|
42
|
-
}
|
43
|
-
}
|
44
|
-
});
|
45
|
-
|
46
|
-
const getTokenButtonIconSize = variant => parseInt(_TokenBase.tokenSizes[variant || _TokenBase.defaultTokenSize], 10) * 0.75;
|
14
|
+
var _tokenButtonUtils = require("./_tokenButtonUtils");
|
47
15
|
|
48
|
-
|
49
|
-
displayName: "_RemoveTokenButton__StyledTokenButton",
|
50
|
-
componentId: "sc-14lvcw1-0"
|
51
|
-
})(["background-color:transparent;font-family:inherit;color:currentColor;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;user-select:none;appearance:none;text-decoration:none;padding:0;transform:", ";align-self:baseline;border:0;border-radius:999px;&:hover,&:focus{background-color:", ";}&:active{background-color:", ";}", " ", ""], props => `translate(${props.borderOffset}px, -${props.borderOffset}px)`, (0, _constants.get)('colors.fade.fg10'), (0, _constants.get)('colors.fade.fg15'), variants, _sx.default);
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
52
17
|
|
53
|
-
const RemoveTokenButton = ({
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
18
|
+
const RemoveTokenButton = _styledComponents.default.span.attrs(({
|
19
|
+
borderOffset,
|
20
|
+
parentTokenTag,
|
21
|
+
variant,
|
22
|
+
parentTokenIsInteractive,
|
58
23
|
...rest
|
59
24
|
}) => {
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
}
|
25
|
+
delete rest.children;
|
26
|
+
return {
|
27
|
+
borderOffset,
|
28
|
+
as: parentTokenIsInteractive ? 'span' : 'button',
|
29
|
+
tabIndex: parentTokenIsInteractive ? -1 : undefined,
|
30
|
+
'aria-label': !parentTokenIsInteractive ? 'Remove token' : undefined,
|
31
|
+
children: /*#__PURE__*/React.createElement(_octiconsReact.XIcon, {
|
32
|
+
size: (0, _tokenButtonUtils.getTokenButtonIconSize)(variant)
|
33
|
+
})
|
34
|
+
};
|
35
|
+
}).withConfig({
|
36
|
+
displayName: "_RemoveTokenButton__RemoveTokenButton",
|
37
|
+
componentId: "sc-14lvcw1-0"
|
38
|
+
})(["", " ", " transform:", ";"], _tokenButtonUtils.tokenButtonStyles, _tokenButtonUtils.variants, props => `translate(${props.borderOffset}px, -${props.borderOffset}px)`);
|
69
39
|
|
70
|
-
RemoveTokenButton.displayName = "RemoveTokenButton";
|
71
40
|
RemoveTokenButton.defaultProps = {
|
72
|
-
|
41
|
+
variant: _TokenBase.defaultTokenSize
|
73
42
|
};
|
74
43
|
var _default = RemoveTokenButton;
|
75
44
|
exports.default = _default;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { TokenSizeKeys } from "./TokenBase";
|
2
|
+
export interface TokenButtonProps {
|
3
|
+
borderOffset?: number;
|
4
|
+
parentTokenTag: 'span' | 'button' | 'a';
|
5
|
+
variant?: TokenSizeKeys;
|
6
|
+
parentTokenIsInteractive?: boolean;
|
7
|
+
}
|
8
|
+
export declare const variants: (...args: any[]) => any;
|
9
|
+
export declare const tokenButtonStyles: import("styled-components").FlattenInterpolation<import("styled-components").ThemeProps<any>>;
|
10
|
+
export declare const getTokenButtonIconSize: (variant?: TokenSizeKeys | undefined) => number;
|
@@ -0,0 +1,42 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.getTokenButtonIconSize = exports.tokenButtonStyles = exports.variants = void 0;
|
7
|
+
|
8
|
+
var _styledComponents = require("styled-components");
|
9
|
+
|
10
|
+
var _styledSystem = require("styled-system");
|
11
|
+
|
12
|
+
var _constants = require("../constants");
|
13
|
+
|
14
|
+
var _TokenBase = require("./TokenBase");
|
15
|
+
|
16
|
+
const variants = (0, _styledSystem.variant)({
|
17
|
+
variants: {
|
18
|
+
sm: {
|
19
|
+
height: `${_TokenBase.tokenSizes.sm}px`,
|
20
|
+
width: `${_TokenBase.tokenSizes.sm}px`
|
21
|
+
},
|
22
|
+
md: {
|
23
|
+
height: `${_TokenBase.tokenSizes.md}px`,
|
24
|
+
width: `${_TokenBase.tokenSizes.md}px`
|
25
|
+
},
|
26
|
+
lg: {
|
27
|
+
height: `${_TokenBase.tokenSizes.lg}px`,
|
28
|
+
width: `${_TokenBase.tokenSizes.lg}px`
|
29
|
+
},
|
30
|
+
xl: {
|
31
|
+
height: `${_TokenBase.tokenSizes.xl}px`,
|
32
|
+
width: `${_TokenBase.tokenSizes.xl}px`
|
33
|
+
}
|
34
|
+
}
|
35
|
+
});
|
36
|
+
exports.variants = variants;
|
37
|
+
const tokenButtonStyles = (0, _styledComponents.css)(["background-color:transparent;font-family:inherit;color:currentColor;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;user-select:none;appearance:none;text-decoration:none;padding:0;align-self:baseline;border:0;border-radius:999px;&:hover,&:focus{background-color:", ";}&:active{background-color:", ";}"], (0, _constants.get)('colors.fade.fg10'), (0, _constants.get)('colors.fade.fg15'));
|
38
|
+
exports.tokenButtonStyles = tokenButtonStyles;
|
39
|
+
|
40
|
+
const getTokenButtonIconSize = variant => _TokenBase.tokenSizes[variant || _TokenBase.defaultTokenSize] * 0.75;
|
41
|
+
|
42
|
+
exports.getTokenButtonIconSize = getTokenButtonIconSize;
|
package/lib/Token/index.d.ts
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
export { default } from './Token';
|
2
|
-
export { default as
|
3
|
-
export { default as
|
2
|
+
export { default as TokenLabel } from './TokenLabel';
|
3
|
+
export { default as TokenProfile } from './TokenProfile';
|
package/lib/Token/index.js
CHANGED
@@ -9,23 +9,23 @@ Object.defineProperty(exports, "default", {
|
|
9
9
|
return _Token.default;
|
10
10
|
}
|
11
11
|
});
|
12
|
-
Object.defineProperty(exports, "
|
12
|
+
Object.defineProperty(exports, "TokenLabel", {
|
13
13
|
enumerable: true,
|
14
14
|
get: function () {
|
15
|
-
return
|
15
|
+
return _TokenLabel.default;
|
16
16
|
}
|
17
17
|
});
|
18
|
-
Object.defineProperty(exports, "
|
18
|
+
Object.defineProperty(exports, "TokenProfile", {
|
19
19
|
enumerable: true,
|
20
20
|
get: function () {
|
21
|
-
return
|
21
|
+
return _TokenProfile.default;
|
22
22
|
}
|
23
23
|
});
|
24
24
|
|
25
25
|
var _Token = _interopRequireDefault(require("./Token"));
|
26
26
|
|
27
|
-
var
|
27
|
+
var _TokenLabel = _interopRequireDefault(require("./TokenLabel"));
|
28
28
|
|
29
|
-
var
|
29
|
+
var _TokenProfile = _interopRequireDefault(require("./TokenProfile"));
|
30
30
|
|
31
31
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
@@ -0,0 +1,20 @@
|
|
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 _sx = _interopRequireDefault(require("./sx"));
|
11
|
+
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
13
|
+
|
14
|
+
const UnstyledTextInput = _styledComponents.default.input.withConfig({
|
15
|
+
displayName: "_UnstyledTextInput__UnstyledTextInput",
|
16
|
+
componentId: "sc-1jgl33s-0"
|
17
|
+
})(["border:0;font-size:inherit;font-family:inherit;background-color:transparent;-webkit-appearance:none;color:inherit;width:100%;&:focus{outline:0;}", ";"], _sx.default);
|
18
|
+
|
19
|
+
var _default = UnstyledTextInput;
|
20
|
+
exports.default = _default;
|
package/lib/index.d.ts
CHANGED
@@ -98,11 +98,12 @@ export { default as TabNav } from './TabNav';
|
|
98
98
|
export type { TabNavProps, TabNavLinkProps } from './TabNav';
|
99
99
|
export { default as TextInput } from './TextInput';
|
100
100
|
export type { TextInputProps } from './TextInput';
|
101
|
+
export { default as TextInputWithTokens } from './TextInputWithTokens';
|
101
102
|
export { default as Text } from './Text';
|
102
103
|
export type { TextProps } from './Text';
|
103
104
|
export { default as Timeline } from './Timeline';
|
104
105
|
export type { TimelineProps, TimelineBadgeProps, TimelineBodyProps, TimelineBreakProps, TimelineItemsProps } from './Timeline';
|
105
|
-
export { default as Token,
|
106
|
+
export { default as Token, TokenLabel, TokenProfile } from './Token';
|
106
107
|
export { default as Tooltip } from './Tooltip';
|
107
108
|
export type { TooltipProps } from './Tooltip';
|
108
109
|
export { default as Truncate } from './Truncate';
|
package/lib/index.js
CHANGED
@@ -429,6 +429,12 @@ Object.defineProperty(exports, "TextInput", {
|
|
429
429
|
return _TextInput.default;
|
430
430
|
}
|
431
431
|
});
|
432
|
+
Object.defineProperty(exports, "TextInputWithTokens", {
|
433
|
+
enumerable: true,
|
434
|
+
get: function () {
|
435
|
+
return _TextInputWithTokens.default;
|
436
|
+
}
|
437
|
+
});
|
432
438
|
Object.defineProperty(exports, "Text", {
|
433
439
|
enumerable: true,
|
434
440
|
get: function () {
|
@@ -447,16 +453,16 @@ Object.defineProperty(exports, "Token", {
|
|
447
453
|
return _Token.default;
|
448
454
|
}
|
449
455
|
});
|
450
|
-
Object.defineProperty(exports, "
|
456
|
+
Object.defineProperty(exports, "TokenLabel", {
|
451
457
|
enumerable: true,
|
452
458
|
get: function () {
|
453
|
-
return _Token.
|
459
|
+
return _Token.TokenLabel;
|
454
460
|
}
|
455
461
|
});
|
456
|
-
Object.defineProperty(exports, "
|
462
|
+
Object.defineProperty(exports, "TokenProfile", {
|
457
463
|
enumerable: true,
|
458
464
|
get: function () {
|
459
|
-
return _Token.
|
465
|
+
return _Token.TokenProfile;
|
460
466
|
}
|
461
467
|
});
|
462
468
|
Object.defineProperty(exports, "Tooltip", {
|
@@ -600,6 +606,8 @@ var _TabNav = _interopRequireDefault(require("./TabNav"));
|
|
600
606
|
|
601
607
|
var _TextInput = _interopRequireDefault(require("./TextInput"));
|
602
608
|
|
609
|
+
var _TextInputWithTokens = _interopRequireDefault(require("./TextInputWithTokens"));
|
610
|
+
|
603
611
|
var _Text = _interopRequireDefault(require("./Text"));
|
604
612
|
|
605
613
|
var _Timeline = _interopRequireDefault(require("./Timeline"));
|